Нет, ни на что не похоже, своя разработка. Тем более, что вывод в порты реализован стандартно, через IN/OUT.
Mick, стал я делать пересылку блоков, загадка появилась: как оно работает, если оно запрещает работу канала, который выдаёт данные для контроллера дисплея? Нет, он, конечно, ждёт прерывания от контроллера (начало кадрового импульса), но для пересылки 2000 байт (экрана) ПДП нужно, как я полагаю, 16000 тактов (по 4 такта на чтение и запись байта). При этом он постоянно занимает шину данных и адреса, т.к. запрос на чтение/запись приходит сразу, как появилось подтверждение в другом канале. Т.е. процессор простаивает, это подтверждается тем, что в мониторе после разрешения работы каналов 0 и 1 нет никакого ожидания завершения процесса пересылки.
Теперь посчитаем:
Количество знакомест в строке с учётом обратного хода 80+26=106
Пиксельклок 20МГц/2 = 10МГц, время строки 106*6/10МГц = 63,6 мкс!
Тактовая частота 20МГц/9 = 2222222Гц
Время пересылки 16000/2222222Гц = 7200 мкс
Количество строк, которые за это время "нарисуются": 7200/63,6 = 113,2!
Если количество видимых строк 25*10=250 и комп соблюдает частоту кадров 50Гц, т.е. общее кол-во строк 20000мкс/63,6мкс=314,46, то на кадровый СИ приходится только 64 с половиной строки, т.е. по любому меньше 113.
Если, конечно, на чтение и запись ПДП тратит всего по 2 такта (что странно, т.к. он должен выдать старший байт адреса, младший, а потом уже считать/записать значение), то пересылка экрана укладывается в имеющееся время и простой ПДП в канале для контроллера дисплея останется незамеченным.
И так, и эдак крутил временнУю диаграмму ВТ57 - не может он за два такта пересылку байта делать. Четыре такта, хоть тресни.
Кадровый СИ тоже интересно сделан. ВГ75 может максимум 4 строки текста отвести для КСИ, т.е. в нашем случае это максимум 40 сканлиний, а нужно 64,5! Судя по всему, КСИ задерживается при помощи канала 0 таймера, но всех тонкостей я так и не понял. Есть триггер, блокирующий запрос данных от ВТ57, и ВГ75, судя по всему, будет ждать, пока данные не будут доступны. Этот триггер устанавливается кадровым СИ, но по схеме это означает не блокировать, а снять блокировку. А кем этот триггер сбрасывается - неизвестно, число на схеме нечитаемое. Тоже вот, загадка.
По поводу буфера: да 80, строчнному СИ данные не нужны.
Последний раз редактировалось b2m; 23.02.2009 в 18:53.
Ещё одна интересная вещь. Кажется, я понял, зачем кадровый СИ задерживается с помощью таймера: это таким образом решена проблема верхнего и нижнего полей! ВГ75 после vrtc гасит изображение, что как раз подходит для полей. На эту мысль меня натолкнуло то, что я понял, нафига стоит аж два одновибратора на пути строчных СИ: один оттягивает начало строчного СИ, а второй регулирует его длинну. Таким образом получаются левое и правое поле, а их размер можно даже регулировать переменным резистором.
Mick, перечитал твоё последнее сообщение, и мне теперь показалось, что ты не совсем понял, что подразумевается под "пересылкой блоков". Нет, это не передача символов из памяти экрана контроллеру ВГ75, там это сделано стандартно - довольно часто и всего по нескольку байт. Этим занимается 2-ой канал ПДП (3-тий используется при этом для повторной инициализации счётчиков). Под пересылкой блоков я понимаю работу 0-го и 1-го каналов ПДП, которые работают синхронно и передают байты через регистр (на схеме ниже ВТ57, первый хранит старший байт адреса, а второй - пересылаемые данные).
Пересылка блоков используется для сдвига экрана (скролл), а также для доступа к расширенной памяти.
Последний раз редактировалось b2m; 24.02.2009 в 16:28. Причина: Добавлено сообщение
С любовью к вам, Yandex.Direct
Размещение рекламы на форуме способствует его дальнейшему развитию
Добавил ПК Юниор в эмулятор на сайте.
Я набрался наглости и сконвертировал все доступные сейчас материалы в формат DJVU, схему собрал по листам в единый файл. К сожалению, края некоторых листов отсутствуют, так что она имеет небольшие дырки .
Выложено здесь: http://www.emuverse.ru/wiki/Юниор
Схему я тоже соединял в один файл, и даже дорисовал некоторые фрагменты (надеюсь правильно). Выложено тут: http://bashkiria-2m.narod.ru/images/Unior.png
Я свою тоже подлечил, восстановить удалось почти все.
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)