Просмотр полной версии : Буферизация в видеоадаптерах CGA, EGA и VGA
Уважаемые участники форума, мне интересно буферизуют ли видеоадаптеры CGA, EGA и VGA вывод на экран? То есть существует ли кроме программно доступного (для центрального процессора) видеобуфера какой-нибудь ещё буфер?
С одной стороны, вышеперечисленные видеоадаптеры позволяют писать в видеопамять в любое время, а не только во время вертикальной синхронизации, как, например, видеоконтроллер у Dendy. Что говорит в пользу НАЛИЧИЯ этого дополнительного буфера.
С другой стороны, если во время ГОРИЗОНТАЛЬНОЙ синхронизации менять содержимое видеопамяти, соответствующее следующей выводимой строке, то эти изменения будет отражаться на экране. Что говорит в пользу ОТСУТСТВИЯ этого дополнительного буфера.
Или там всё устроено гораздо сложнее?
Буфер это видеопамять и есть. Больше ничего (если не считать внутренние регистры самого контроллера).
CodeMaster
12.07.2024, 08:57
Или там всё устроено гораздо сложнее?
Двухпортовое ОЗУ?
LeoN65816
12.07.2024, 10:15
SoftCat, спроси у Яндекса "CGA и снег".
Думается у всех по-разному.
Но какой-то минимальный буфер, хотя бы на пару байт, есть у всех (кроме "CGA со снегом").
Обычно он внутри графического чипа. Но попадались и карты, у которых снаружи стоит чип SRAM.
Но какой-то минимальный буфер, хотя бы на пару байт, есть у всех (кроме "CGA со снегом").
В описании (https://minuszerodegrees.net/oa/OA%20-%20IBM%20Color%20Graphics%20Monitor%20Adapter%20(C GA).pdf) оригинального CGA на странице 4 есть Color/Graphics Monitor Adapter Block Diagram, на которой можно видеть
Processor Address->Address Latch
Processor Data->Input Buffer
Сами по себе от снега они не спасают при той организации записи, которая была в оригинальном CGA.
Думается у всех по-разному.
Но какой-то минимальный буфер, хотя бы на пару байт, есть у всех (кроме "CGA со снегом").
Обычно он внутри графического чипа. Но попадались и карты, у которых снаружи стоит чип SRAM.
Rio444, спасибо Вам за ответ. Так если центральный процессор займёт шину адреса у видеопамяти, то видеоконтроллер в этот момент туда доступа не будет иметь?
- - - Добавлено - - -
В описании (https://minuszerodegrees.net/oa/OA%20-%20IBM%20Color%20Graphics%20Monitor%20Adapter%20(C GA).pdf) оригинального CGA на странице 4 есть Color/Graphics Monitor Adapter Block Diagram, на которой можно видеть
Processor Address->Address Latch
Processor Data->Input Buffer
Сами по себе от снега они не спасают при той организации записи, которая была в оригинальном CGA.
ivagor, спасибо Вам за ответ. То есть получается, что у CGA буферизуются те данные, которые пишет в видеопамять центральный процессор?
получается, что у CGA буферизуются те данные, которые пишет в видеопамять центральный процессор?
Насколько знаю все видеоадаптеры для PC в той или иной мере буферизуют записываемые данные. В начале 2000х немного программировал графику и запись в видеопамять была намного (в разы или даже на порядки) быстрее чтения. Предполагаю, что у современных примерно аналогично.
Насколько знаю все видеоадаптеры для PC в той или иной мере буферизуют записываемые данные. В начале 2000х немного программировал графику и запись в видеопамять была намного (в разы или даже на порядки) быстрее чтения. Предполагаю, что у современных примерно аналогично.
Понятно.
У Электроники МС-1502 CGA-подобный адаптер, видеопамять располагается в обычном ОЗУ и вообще нет никакого "снега". У Правца 16 по-моему тоже на CGA нет никакого "снега". Наверное организовано так, что видеоконтроллер имеет более высокий приоритет, чем центральный процессор.
- - - Добавлено - - -
Двухпортовое ОЗУ?
CodeMaster, да, я уже посмотрел, что это такое. До Вашего сообщения я об этом не знал. Там должно быть либо по-настоящему двухпортовое ОЗУ, либо эмуляция частичной "двухпортовости" с обычным ОЗУ.
Там должно быть либо по-настоящему двухпортовое ОЗУ, либо эмуляция частичной "двухпортовости" с обычным ОЗУ.
Собственно у "настоящего" двухпортового ОЗУ то же самое - внутри обычное ОЗУ и дополнительные буфера на входе и выходе, чтобы обеспечить двухпортовость.
Где-то в даташитах есть внутренняя структура такого ОЗУ.
Собственно у "настоящего" двухпортового ОЗУ то же самое - внутри обычное ОЗУ и дополнительные буфера на входе и выходе, чтобы обеспечить двухпортовость.
Где-то в даташитах есть внутренняя структура такого ОЗУ.
Да, я догадался. Я имею ввиду, что у "ненастоящего" с одной шины данных можно только читать (для видеоконтроллера), а на другую можно только писать (для процессора). То есть упрощённая схема.
- - - Добавлено - - -
Я ещё увидел, что существуют арбитры шин. Наверное с их помощью и делается двух портовое ОЗУ.
LeoN65816
14.07.2024, 14:36
Собственно у "настоящего" двухпортового ОЗУ то же самое - внутри обычное ОЗУ и дополнительные буфера на входе и выходе, чтобы обеспечить двухпортовость.
Неверно...
У обычной SRAM бит памяти состоит из 4-х транзисторов. У двухпортовой - из 6-и транзисторов. У четырёхпортовой - из 10-и транзисторов.
Пруф (https://www.renesas.com/us/en/document/apn/253-introduction-multi-port-memories).
У обычной SRAM бит памяти состоит из 4-х транзисторов. У двухпортовой - из 6-и транзисторов.
С чего Вы взяли, что двух-портовая бывает только SRAM? :D
И на видеокартах её точно не использовали. Дороже обычной SRAM, которая тоже очень редко использовалась.
Типичные чипы на CL-GD542x https://html.alldatasheet.com/html-pdf/119342/NEC/UPD482234/56/1/UPD482234.html
Ещё можете посмотреть, что ставили на Матроксах миллениум. Если память не изменяет, там тоже двухпортовая.
SoftCat, спроси у Яндекса "CGA и снег".
LeoN65816, спасибо, про "снег" я знаю. Скажи, пожалуйста, а у CGA не двухпортовая ОЗУ?
а у CGA не двухпортовая ОЗУТам обычные чипы DRAM.
Два чипа 16Кх4 или 8 чипов 16Кх1.
На фотках в соседней теме их можно увидеть. Например TMS4416.
LeoN65816
14.07.2024, 15:24
LeoN65816, спасибо, про "снег" я знаю. Скажи, пожалуйста, а у CGA не двухпортовая ОЗУ?
Никак нет!
Двухпортовой в те времена ещё и "в природе не существовало"...
PS. SoftCat, а не бот ли ты? ;)
Никак нет!
Двухпортовой в те времена ещё и "в природе не существовало"...
PS. SoftCat, а не бот ли ты? ;)
За ответ спасибо.
А почему возникло подозрение насчёт бота? Тест Тьюринга я смогу пройти.
Powered by vBulletin® Version 4.2.5 Copyright © 2025 vBulletin Solutions, Inc. All rights reserved. Перевод: zCarot