Бытовой ретро-компьютер своими руками http://forum.pk-fpga.ru/ |
|
Цифровая археология 1801: Северный мост 119 http://forum.pk-fpga.ru/viewtopic.php?f=43&t=5603 |
Страница 1 из 1 |
Автор: | Vslav [ 02 сен 2017, 21:53 ] | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Заголовок сообщения: | Цифровая археология 1801: Северный мост 119 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
1801ВП1-119 представляет собой микросхему-компаньон для микропроцессора 1801ВМ3. Основным функционалом, который выполняет 1801ВП1-119, является контроллер динамической памяти и сопряжение процессора с остальными устройствами системной платы, поэтому микросхему условно можно назвать "северным мостом чипсета" в рамках современной терминологии. Массово применялся этот "северный мост" в составе плат микроЭВМ типа МС1201.03 и МС1201.04. На структурных схемах этих плат микросхема 1801ВП1-119 обозначена как "блок управления" и выполняет следующие функции:
Процесс реверс-инжиниринга для данной микросхемы был выполнен по стандартному маршруту для матриц 1801ВП1, поэтому нет смысла останавливаться на нем особо. Фотография кристалла 1801ВП1-119 в полном разрешении: (97MБайт) Зеркало Фотография кристалла 1801ВП1-119 в половинном разрешении: (24MБайт) Зеркало Архив со схемой, HDL-исходниками и материалами для моделирования: здесь Поскольку в Сети не было обнаружено подробное описание цоколевки, а схемы плат МС1201.0x не полностью отображают особенности, признано целесообразным привести цоколевку микросхемы по результатам реверса: 1 - CLK, основной тактовый сигнал, используется для тактирования внутренней машины состояний, состояние меняется как по фронтам, так и по срезам 2 - RCLK, запрос на цикл регенерации памяти, про фронту на этом входе будет активирован внутренний запрос на цикл регенерации 3 - nHLTM, признак пультового режима. При обращении к DRAM в пультовом режиме вход DEF (признак некорректируемой ошибки) игнорируется 4 - DEF, признак некорректируемой ошибки DRAM. Фронт на данном входе при активном цикле (на выходе nLA низкий) и не в пультовом режиме (на входе nHLTM высокий), и не зависимо от сигнала DCE, вызывает блокировку генерации nRPLY (nFRPLY генерируется всегда) и возникает тайм-аут обращения по шине. 5 - nSACK, признак доступа внешнего контроллера. Блокирует выработку активного nESYNCx и nFRPLY, влияет на nOUT 6 - nLA, строб адреса, активен при активном nSYNC или nRPLY 7 - nESYNC, выход синхронизации nSYNC, активируется по срезу CLK, далее подается на nSSYNC процессора, неактивен при nSACK (доступ внешнего агента к памяти и устройствам системной платы) 8 - nESYNCO, копия сигнала nESYNC, открытый коллектор 9 - nFRPLY, выдается при чтении процессором по фронту CLK при активном nCAS (примерно полтакта CLK после nCAS) 10 - nIN, разрешение трансляции данных с МПИ на внутреннюю шину платы. Активен при чтении с внешних устройств и записи внешним контроллером. 11 - nOUT, разрешение трансляции внутренней шины платы на МПИ. Активен почти всегда, кроме записи данных внешним контроллером. 12 - DCE, высокий уровень разрешает коррекцию ошибок. Влияет на выработку S0, S1, CB0, CB1, nWEC и nRB. 13 - S0, управление режимом 555ВЖ1 14 - S1, управление режимом 555ВЖ1 15 - не используется 16 - nRB, разрешение буферов прочитанных данных. Используется при записи байта с предварительным чтение комплементарного байта для формирования полного записываемого слова. 17 - CB0, запись младшего байта буфера 18 - CB1, запись старшего байта буфера 19 - nA0, младший разряд адреса, в том числе используется для разрешения nSRAM 20 - nA11, разряд адреса, используется для выбора nSROM/nCSx 21 - земля 22 - nA12, разряд адреса, используется для выбора nSROM/nCSx 23 - nSEL, низкий уровень генерируется процессором при обращении к системной памяти в режиме пульта, разрешает активацию nSROM и nCSx 24 - nSROM, выборка системного ПЗУ 25 - nCS0, разрешением младшего байта системного статического ОЗУ 26 - nCS1, разрешением младшего байта системного статического ОЗУ 27 - nDCLO, системный сброс 28 - nWEC, запись слова контрольных разрядов в DRAM 29 - nWE, запись слова данных в DRAM 30 - nRAS0, строб младшей половины DRAM, выбор определяется входом nA19 31 - nRAS1, строб старшей половины DRAM, выбор определяется входом nA19 32 - nCAS, общий строб всей DRAM 33 - nA19, адрес, старший разряд области DRAM, определяет nRAS0/nRAS1 34 - nTA, процессор начинает цикл чтения низким уровнем на этой линии 35 - nA20, адрес, используется для дешифрации области DRAM (обращение к младшему мегабайту) 36 - nA21, адрес, используется для дешифрации области DRAM (обращение к младшему мегабайту) 37 - nDOUT 38 - nDIN 39 - nRPLY, генерируется как ответ при обращении к динамическому и статическому ОЗУ, ПЗУ 40 - nWTBT 41 - nSYNC 42 - +5V, питание В ходе моделирования выявлены следующие особенности работы микросхемы:
Микросхема 1801ВП1-119 использует всего 236 ячеек матрицы, однако при реверсе возникли сложности. Схема содержит очень много триггеров, cделанных на отдельных ячейках типа ИЛИ-НЕ, с большим количеством обратных связей, что препятствовало линейному распознаванию схемы. Но в итоге удалось справится с сортировкой ячеек. Типовой триггер в составе ВП1-119 выглядит так: Для определения логики работы триггер был промоделирован в logisim (материалы могут быть найдены в архиве): Данная схема представляет собой синхронный D-триггер с запоминанием инвертированных данных nIN по срезу на тактовом входе CLK. Также имеется асинхронный сброс RST, при высоком уровне на котором триггер постоянно находится в состоянии низкого уровня. Данные триггеры служат основой внутреннего автомата состояний контроллера динамической памяти, все события происходят по фронтам и срезам, а не по уровням сигналов. Далее приведены диаграммы для различных циклов обращения со стороны процессора. Также все диаграммы могут быть найдены в прилагаемом архиве в папке Images. Диаграммы получены как при моделировании, так и сняты логическим анализатором с реальной платы МС1201.03. Циклы обращения к статическому ОЗУ (моделирование): Цикл регенерации (реальная плата и моделирование): Циклы на реальной плате с отключенной коррекцией ошибок: Смоделированные циклы с отключенной коррекцией ошибок: Циклы на реальной плате с включенной коррекцией ошибок: Смоделированные циклы с отключенной коррекцией ошибок: |
Страница 1 из 1 | Часовой пояс: UTC + 3 часа |
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |