С любовью к вам, Yandex.Direct
Размещение рекламы на форуме способствует его дальнейшему развитию
Ага. Причем сигнал записи длится один такт процессора и если отключать процессор на пол такта, то сигнал записи делится на две части. Надо триггер ставить. Устанавливается по спаду WR, сбрасывается по фронту F2.
---------- Post added at 10:56 ---------- Previous post was at 10:44 ----------
А что лучше смотрится в качестве счетчика адресов?
1) 27512 + 27512 + ИР23 + ИР23 + ИЕ5. У регистров есть Z-состояние, поэтому вместо мультиплексора адресов АП6+АП6.
2) ИЕ5 + ИЕ5 + ИЕ5 + ИЕ5 + 27128 + ТМ2. И мультиплексор на КП11 + КП11 + КП11 + КП11
В первом случае две жирных ПЗУ. Во втором случае на три корпуса больше. И не факт, что я найду ИР23.
---------- Post added at 11:00 ---------- Previous post was at 10:56 ----------
Соберу сегодня схему из ГФ24+процессора+озу+пзу и попробую отключать шину.
---------- Post added at 11:24 ---------- Previous post was at 11:00 ----------
ИЕ5 можно выкинуть.
В 16-битное ПЗУ (на паре 27512) будет записана последовательность адресов сканирования видеопамяти. В каждой ячейке ПЗУ будет записано, какой следующий адрес читать из памяти.
// Вывод первой строки
0000: 0001,0002,0003,0004,0005,0006,0007,0008,0009,000A, 000B,000C,000D,000E,000F,0010
0010: 0011,0012,0013,0014,0015,0016,0017,0018,0019,001A, 001B,001C,001D,001E,001F,0020
0020: 0021,0022,0023,0024,0025,0026,0027,0028,0029,002A, 002B,002C,002D,002E,002F,0020
0030: 0031,0032,0033,0034,0035,0036,0037,0038,0039,003A, 003B,003C,003D,003E,003F,4000
// Вывод второй строки
0040: 0041,0042,0043,0044,0045,0046,0047,0048,0049,004A, 004B,004C,004D,004E,004F,0050
// Обратный ход первой строки
4000: 4001,4002,4003,4004,4005,4006,4007,С008,С009,С0 0A,400B,400C,400D,400E,400F,0040
Адреса >=4000 вызывают гашение (то есть не выводятся на экране). Адреса >=8000 обрезаются до 15 бит, но этот обрезанный бит является синхроимпульсом.
312 строк по 80 байт - поместится в 32 Кб ПЗУ. Плюс один бит на синхроимпульсы.
(Это лишь один из вариантов.)
Последний раз редактировалось vinxru; 10.05.2012 в 14:18.
Мы на недопц просчитывали такой вариант, кстати. Причем, с возможностью программирования самим процессором. Небольшое усложнение узла записи данных, применение загружаемых счетчиков и/или программное управление сбросом/клоком и все. Можно делать любую развертку с любым положением и организацией экрана.
Собрал на этой нелепой доске процессор+пзу. Записал программу EI DI JMP 0. К выходу INTE подключил частотометр. Частота была.
Потом я подключил F2 (приведенное к 5 Вольтам) к выводу OE ПЗУ. Потом F2 инвертированное. Потом F1. Потом F1 инвертированное. Программа в любом случае не выполнялась.
Мне кажется, проще сделать как в специалисте. В первом такте цикла к памяти точно никакого обращения нет. Там только одна проблема: он происходит каждые 3-5 тактов, надо промежуточный регистр для данных ставить, ну и частота процессора должна быть достаточно высокой, чтобы видео успевало.
Последний раз редактировалось b2m; 11.05.2012 в 10:20.
Ага. Я вчера этот кусок схемы из Специалиста перерисовал.
Еще я думал над тем, что бы защелкивать в регистре данные для процессора. То есть по перепаду RD записать данные в регистр, а дальше можно делать с шиной всё что угодно. Но это еще несколько корпусов и надо всё проверять.
Есть делать по Специалисту, то потребуется лишь 2 корпуса. Триггер ТМ2, что бы задержать SYNC на один такт - это признак обращения к шине. И 8-битный регистр для временного хранения данных.
Частота процессора должна быть 2,6 Мгц. Процессор никогда не обращается к памяти два такта подряд, поэтому мы каждый такт делаем попытку записи. И гарантированно получаем данные каждые 1,3 Мгц.
1333333 МГц / (64 байта + 21 обратный ход) = 15686 Кгц
У специалиста
1000000 МГц / (48 байт + 16 обратный ход) = 15625 Кгц
---------- Post added at 11:05 ---------- Previous post was at 10:54 ----------
Но в таком включении, то есть когда шина непонятно когда шина свободна, счетчик на 2x27512 + 2xИР23 + 2xАП6 работать не будет. Ему нужна каждый такт свободная шина адреса. То есть надо ставить 4xАП6 или 4xКП11.
И эти 2 дополнительных корпуса уменьшают привлекательность этого счетчика.
1) 2x27512 + 2xИР23 + 4xКП11 = 8 корпусов
2) 4xИЕ5 + 27512 + ТМ2 + 4xКП11 = 10 корпусов (но занимают меньше места и сколько же ножек)
Последний раз редактировалось vinxru; 11.05.2012 в 11:14.
4xИЕ5 можно заменить на
ИЕ5 + 561ИЕ20 (HEF4040, MC14040)
2x27512 можно заменить на 28F100, 29F100 ( ...F200, ...F400, ...F800 - они все недорогие)
Такую память 16 разрядную часто можно найти на платах старых телефонных модемов под ISA шину и на управляющих платах струйных принтеров.
Также была мысль использовать 29F100 как ПЗУ на 64кб + дешифратор адресов на 8 выходов - у неё есть нога переключения режимов выходов на 8 и 16 бит, при 8 битном режиме неиспользуемые 8 выводов данных в Z состоянии - их использовать как ПЗУ. Постоянно подключенные 8 выводов данных использовать как дешифратор адресов - будет дешифрация с точностью до байта.
vinxru, большое спасибо за интересную тему, внимательно слежу за развитием.
Последний раз редактировалось AIS; 11.05.2012 в 12:02.
Был я вчера в нашем единственном магазине. Электрически стираемых ПЗУ нет, текстолита нет (есть галимый односторонний кривой гетинакс. Он в хлорном железе размокает, ибо картон), ИР23 нет (и аналогов), АП6 нет, монтажек больших нет.
(Эти микрухи у меня есть в палатах спектрумов. Просто распаивать не хотелось.)
Купил только пару ATMega8 за 250 рублей и обычных панелек по 15 рублей.
Надо через интернет заказывать, нафиг этот магазин.
P.S. Зато там появились мощные магниты всех форм и размеров. При мне два парня покупали их для сборки вечного двигателя.
Последний раз редактировалось vinxru; 11.05.2012 в 12:21.
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)