Способ управления буфером обратного магазинного типа видеосистемы

Изобретение относится к вычислительной технике. Его применение для графических систем, а также систем, в которых происходит передача данных между блоками, работающими с независимыми синхросигналами, обеспечивает достижение технического результата в виде уменьшения частоты записи и обеспечения возможности в больших пределах изменять время до начала перезаписи. Способ заключается в передаче данных через буфер между видеопамятью и трактом формирования изображения, в котором буфер разделяют на два блока для записи и чтения. Технический результат достигается благодаря тому, что запись в блоки производят пакетом, размер которого равен размеру буфера, причем запись в блоки производят за одно обращение к видеопамяти, а в отдельном блоке одновременно производят запись и/или чтение. 1 з.п. ф-лы.

 

Предлагаемое изобретение относится к вычислительной технике и может найти применение при разработке графических систем, а также при создании систем, в которых происходит передача данных между блоками, работающими с независимыми синхросигналами.

В графических контроллерах информация, выводимая на экран монитора, хранится в видеопамяти этого контроллера. Доступ к видеопамяти регулирует арбитр памяти, предоставляя возможность работать с ней одному из следующих устройств: контроллер регенерации памяти, буфер обратного магазинного типа, контроллер системной шины, графический ускоритель. Взаимодействие перечисленных выше устройств с видеопамятью осуществляется с помощью контроллера видеопамяти, работающего на максимальной частоте видеопамяти. Данные, считываемые из видеопамяти, передаются в тракт формирования изображения на экране монитора, работающего на частоте выбранного видеорежима. Контроллер видеопамяти и тракт формирования изображения на экране монитора работают на независимых частотах. Для синхронизации передачи данных между этими блоками используется буфер обратного магазинного типа.

В настоящее время известен ряд способов для управления процессом передачи данных через буфер обратного магазинного типа видеосистемы. Отличительной особенностью этих способов является то, что они используют не флаги заполненности, полученные на основе сравнения счетчиков записи и чтения, а абсолютные значения этих счетчиков для управления процессом передачи данных. Отказ от использования флагов заполненности объясняется тем, что когда два порта буфера обратного магазинного типа работают на независимых частотах, велика вероятность неправильного формирования флага и, следовательно, ошибки в передачи данных.

В графическом контроллере семейств CL-GD543X и CL-GD544X фирмы Cirrus Logic (Alpine Family CL-GD543X/'4X Technical Reference Manual, Cirrus Logic Inc, January 1996, pp 9-21) передача данных по этому способу построена следующим образом: в течение интервала времени, когда нет вывода изображения на экран (интервал гашения) буфер обратного магазинного типа полностью записывается; во время вывода информации на экран идет считывании данных из буфера обратного магазинного типа; когда будет считана ячейка буфера обратного магазинного типа, расположенная по определенному адресу (указанному конфигурационным регистром), выставляется запрос на перезапись содержимого буфера обратного магазинного типа и после получения сигнала подтверждения от контроллера памяти о готовности начать передачу, идет заполнение всего буфера обратного магазинного типа новыми данными. Параллельно счетчик чтения считывает оставшиеся ячейки и переходит на чтение ячеек с начального адреса; и так далее до тех пор, пока не будет передана через буфер обратного магазинного типа вся информация, соответствующая выводу на экран одной строки. Этот способ имеет следующие недостатки: а) индивидуальные настройки момента формирования запроса на перезапись под каждый видеорежим; б) изменение времени от момента формирования запроса на перезапись до момента начала перезаписи, возможно в небольших пределах, что приводит к потере гибкости системы арбитрации доступа к памяти.

Другой способ, используемый для управления буфером обратного магазинного типа графического контроллера, описан в патенте США 5,767,862 "Метод и аппаратура для самонастраивающегося видео FIFO" (US patent 5,767,862, Jun.16, 1998, "Method and Apparatus for Self-Throttling Video FIFO"). Этот способ отличается от описанного выше тем, что предусматривает автоматическую настройку момента формирования запроса на перезапись буфера обратного магазинного типа для каждого видеорежима. Недостаток этого способа - изменение времени от момента формирования запроса на перезапись до момента начала перезаписи, возможно, в небольших пределах.

Наиболее близким к предлагаемому способу является способ, предложенный в патенте США 6,047,339 "Буферизация данных, передаваемых между шинами, работающими на разной частоте" (US patent 6,047,339, Apr.4, 2000, "Buffering Data That Flows Between Buses Operating at Different Frequencies"). В этом способе буфер обратного магазинного типа делится на несколько блоков. Параллельно идет процесс записи и чтения. К отдельному блоку разрешен одновременно только один тип обращения: либо запись, либо чтение. Разрешение на запись либо чтение каждого блока определяется исходя из состояния флагов, информирующих о том, что этот блок уже считан либо уже записан. Такой способ не требует дополнительной настройки под каждый видеорежим. Недостаток этого способа состоит в том, что необходимо полностью записать считанный блок до того момента как он снова начнет считываться. Это приводит к увеличению минимальной частоты записи в буфер обратного магазинного типа по сравнению со способами, представленными выше.

Задача, на решение которой было направлено данное изобретение, состояла в разработке способа управления процессом передачи данных через буфер обратного магазинного типа со следующими характеристиками: а) меньшая минимальная частота записи по сравнению с последним из описанных способов; б) возможность изменять время от момента формирования запроса на перезапись до момента начала перезаписи, в больших пределах.

Указанная задача решается благодаря тому, что в способе управления буфером обратного магазинного типа видеосистемы, заключающемся в передаче данных через буфер между видеопамятью и трактом формирования изображения, причем буфер разделен по крайней мере на два блока, в которых производят запись и чтение, в каждый из блоков одинакового размера производят запись пакетом, размер которого кратен размеру блока, запись и чтение блоков осуществляют одновременно, при этом запись в оба блока производят за одно обращение к памяти, кроме того, запись блоков начинают не позже чтения последней ячейки второго блока, а к моменту окончания чтения первого блока запись блоков уже должна быть завершена.

Буфер обратного магазинного типа представляет собой два блока памяти в адресном пространстве контроллера, например, первый блок содержит ячейки памяти с адресами 0-7, а второй блок - ячейки с адресами 8-15. Данный буфер расположен между видеосистемой и трактом формирования изображения. Оба блока одинакового размера, причем размер пакета информации, записываемого в буфер, кратен размеру блока.

Передача данных по этому методу построена следующим образом: в течение интервала времени, когда нет вывода изображения на экран (интервал гашения) буфер обратного магазинного типа полностью записывается; во время вывода изображения на экран идет считывание данных из буфера; после считывания первого блока выставляется запрос к арбитру видеопамяти на перезапись первого блока, параллельно идет чтение второго блока, при этом запись должна начаться не позже чтения последней ячейки второго блока, причем к моменту начала чтения первого блока должна быть записана хотя бы одна его ячейка.

Надо отметить, что начавшаяся запись будет продолжаться до тех пор, пока не будут записаны оба блока, причем время записи должно быть меньше времени чтения первого блока.

Тем самым становится возможным снижение минимальной частоты записи, в частности при указанном количестве адресов, а также при количестве тактов синхросигнала записи от выставления запроса на перезапись буфера до момента начала записи в буфер (5 тактов) и при максимально возможной задержке в предоставлении арбитром доступа к памяти для перезаписи буфера (10 тактов) и при периоде синхросигнала чтения 40 нс снижение составит 25 МГц.

Что касается возможности изменять время от момента формирования запроса на перезапись до момента начала перезаписи, этот интервал времени увеличивается для приведенных выше данных на 7 тактов синхросигнала записи.

Отличительной особенностью предложенного способа является то, что в нем не запрещаются одновременное чтение и запись блока.

Таким образом, возможным становится следующая ситуация: после выставления запроса на перезапись блока пакетная запись новой информации в этот блок начнется одновременно с окончанием чтения следующего блока. Следовательно, арбитр может располагать большим временем на завершение операций с памятью того устройства, которое с ней работает до выставления запроса на перезапись. Эта прибавка во времени равна

TW(NF 0,5-1),

где TW - период синхросигнала записи;

NF - количество ячеек в буфере обратного магазинного типа.

А это увеличивает гибкость системы арбитрации доступа к памяти по сравнению с последним из описанных способов.

Кроме того, поскольку запись первого блока началась одновременно с окончанием чтения второго блока, то эта запись будет продолжаться до тех пор, пока не будет записан и второй блок. Запись должна завершиться раньше, чем начнет считываться второй блок. Следовательно, оба блока буфера обратного магазинного типа могут быть записаны за одно обращение к памяти. А это приводит к снижению минимальной частоты записи в буфер обратного магазинного типа по сравнению с последним из описанных способов. Уменьшение частоты синхросигнала записи рассчитывается следующим образом:

анализируется неравенство

NW+NMAX+1>NF-1

Если оно истинно, тогда разница в частотах получается из следующего уравнения:

FW1-FW2=(NF-2)/(TRNF).

Если же неравенство ложно, тогда разница в частотах получается из следующего уравнения:

FW1-FW2=2(NW+NMAX+1-NF0,5)/(TRNF),

где NW - количество тактов синхросигнала записи от выставления запроса на перезапись буфера обратного магазинного типа до момента начала записи в буфер обратного магазинного типа (при условии, что к моменту выставления запроса ни одно из устройств не работало с видеопамятью);

NMAX - максимально возможная задержка в предоставлении арбитром доступа к памяти для перезаписи буфера обратного магазинного типа;

TR - период синхросигнала чтения.

Таким образом, предложенный способ позволяет снизить минимальную частоту записи в буфер обратного магазинного типа и сделать систему арбитрации доступа к памяти более гибкой.

1. Способ управления буфером обратного магазинного типа видеосистемы, заключающийся в передаче данных через буфер между видеопамятью и трактом формирования изображения, при этом буфер разделяют по крайней мере на два блока и в этих блоках производят запись и чтение, отличающийся тем, что запись в эти блоки производят пакетом, размер которого равен размеру буфера, запись в указанные блоки производят за одно обращение к видеопамяти, а в отдельном блоке одновременно производят запись и/или чтение.

2. Способ по п.1, отличающийся тем, что запись блоков начинают не позже чтения последней ячейки последующего блока, причем к моменту начала чтения первого блока осуществляют запись по крайней мере одной его ячейки, а запись блоков завершают к моменту окончания чтения первого блока.



 

Похожие патенты:

Изобретение относится к системам обработки данных. .

Изобретение относится к системам обработки данных

Изобретение относится к доставке контента, в частности к его загрузке

Изобретение относится к планированию доступа к устройству хранения и более конкретно к предотвращению работы программы, которая выполняется, от монополизации доступа к запоминающему устройству

Изобретение относится к вычислительной технике, а конкретнее к механизмам для защищенной начальной загрузки операционной системы, которая препятствует мошенническим компонентам быть загруженным операционной системой и таким образом предотвращает разглашение системного ключа при несоответствующих обстоятельствах

Изобретение относится к области систем обработки данных, имеющих множество аппаратных режимов работы, а также к управлению доступом к памяти в зависимости от текущего аппаратного режима. Техническим результатом является обеспечение возможности осуществления процессором доступа к данным памяти даже в том случае, если эта возможность заблокирована в текущем режиме работы процессора. Устройство для обработки данных (2) включает в себя процессор (8), память (6) и схему (12) управления памятью. Процессор (8) работает во множестве аппаратных режимов, включающих в себя привилегированный режим и пользовательский режим. При работе в привилегированном режиме схема (12) управления памятью блокирует выборку команд процессором (8) из адресных зон (34, 38, 42) памяти в памяти (6), в которые можно производить запись в пользовательском режиме, если флаг безопасности в регистре (46) установлен таким образом, что указывает на то, что этот механизм блокировки действует. 4 н. и 9 з.п. ф-лы, 4 ил.

Изобретение относится к области обработки операций ввода-вывода в вычислительной среде. Техническим результатом является повышение эффективности связи с адаптерами вычислительной среды. Предложены команды, которые в прямой форме адресованы адаптерам. Информация, содержащаяся в команде, используется для направления команды в соответствующее местоположение в адаптере. 3 н. и 8 з.п. ф-лы, 31 ил.

Изобретение относится к области функциональных возможностей команд процессора компьютерной системы. Техническим результатом является повышение эффективности выполнения неделимых операций. В заявке описана команда разделенной загрузки/сохранения, при выполнении которой ЦП осуществляется доступ к операндам из двух разделенных ячеек памяти, и устанавливаются индикаторы кода условия, указывающие, был ли осуществлен неделимый доступ к двум операндам посредством блочно-параллельного заблокированного выбираемого обращения к операндам без промежуточных операций обращения к запоминающему устройству из других ЦП. При использовании упомянутой команды в форме разделенной загрузки пары доступом является загрузка, а разделенные данные хранятся в общих регистрах. 3 н. и 13 з.п. ф-лы, 19 ил.

Изобретение относится к области обработки данных. Техническим результатом является повышение эффективности загрузки данных в регистры. Способ выполнения машинной команды в центральном процессорном устройстве содержит получение процессором машинной команды для выполнения, причем машинная команда определена для выполнения компьютером согласно архитектуре компьютера и включает: по меньшей мере одно поле кода операции для предоставления кода операции, причем код операции идентифицирует операцию загрузки до границы блока; поле регистра, используемое для обозначения регистра, причем регистр включает первый операнд; по меньшей мере одно поле для обнаружения второго операнда в основной памяти; и указатель размера границы блока для указания заданной границы блока второго операнда; и выполнение машинной команды, включающее: загрузку переменного количества данных из блока второго операнда в первый операнд с обеспечением загрузки в первый операнд только данных, которые находятся внутри блока, причем загрузка из блока начинается с предоставляемого машинной командой начального адреса в блоке второго операнда и заканчивается на заданной границе блока второго операнда или до нее. 3 н. и 20 з.п. ф-лы, 16 ил.

Изобретение относится к области телекоммуникации, связи и передачи данных. Технический результат заключается в увеличении скорости в обработке сетевых заголовков, что повышает скорость и достигается за счет применения устройства приема и передачи данных с возможностью осуществления взаимодействия с OpenFlow контроллером. Указанное устройство содержит один или более сетевых интерфейсов, блок приема информации, блок первоначальной идентификации потока, блок обработки инструкций, блок реализации действий, блок обработки групповых действий, блок межмодульного взаимодействия, блок взаимодействия с контроллером, средство обмена информацией между блоками; причем один или более сетевых интерфейсов соединены с блоком приема информации, выход блока приема информации подключен к входу блока первоначальной идентификации потока, а вход блока приема информации подключен к выходу блока междумодульного взаимодействия, вход которого подключен к выходу блока обработки инструкций, при этом блок обработки инструкций соединен с блоком первоначальной идентификацией потока, а блок идентификации потока, в свою очередь, соединен с блоком междумодульного взаимодействия. Все перечисленные элементы находятся в едином конструктивном исполнении. 5 з.п. ф-лы, 3 ил.
Наверх