Ответить на тему  [ Сообщений: 6 ] 
 
Автор Сообщение

Зарегистрирован: 20 май 2013, 11:45
Сообщений: 18
Сообщение Цифровая археология 1801: тайна кристалла 030
Очень многие устройства, построенные на основе микропроцессоров серии 1801 содержат помимо собственно микропроцессора вспомогательные микросхемы той же самой 1801-ой серии. А именно - микросхемы 1801ВП1, и на них всех после обозначения ВП1 следует таинственное трехзначное число. Очень много лет назад мне пришлось работать с машиной ДВК, на центральной плате которой стояло несколько таких разноциферных 1801ВП1 и разобраться подробно с электрической схемой не было никакой возможности - потому что абсолютно не было доступной документации именно на эти микросхемы. При системном программировании на ДВК было большой загадкой как же именно отображается ПЗУ и ОЗУ в верхней области адресов, как определяется начальный адрес пуска процессора, как работает "секретный" пультовый режим и так далее. Нельзя сказать чтобы до сегодняшнего мне совсем уж плохо спалось без полного решения всех этих загадок, но решить их было бы все равно приятно. И вот, спустя почти 25 лет, время пришло - попался в интернете такой любопытный сайт c подробными фотографиями различных микросхем и стало ясно что сегодня черный ящик вполне возможно открыть даже "простому смертному".

Итак, краткое введение - микросхема 1801ВП1 представляет собой так называемым БМК - Базовый Матричный Кристалл. Изготавливается по n-МОП технологии по проектным нормам 3 микрона с одним слоем металла. Сначала изготавливают базовые пластины, которые содержат собственно транзисторы - представляют собой легированные области кремния и отдельный изолированный окислом слой поликремниевых затворов. Затем это все покрывается слоем оксида кремния и базовая пластина готова. В таком виде базовые пластины можно долго хранить или даже передать на другой завод, возможно с менее точным и простым оборудованием для выполнения финальных операций. Все микросхемы 1801ВП1, независимо от номера имеют одинаковую структуру и расположение транзисторов и изготавливаются на одних и теж же базовых пластинах. Различия между микросхемами появляются уже на последнем финишном этапе изготовления - в верхнем слое окисла методом фотолитографии вытравливают окна для доступа к нужным транзисторам и далее еще одной фотолитографией формируют металлический рисунок из алюминия. Вид этого рисунка и определяет электрическую схему. Понятно что эти рисунки пронумерованы и номер на микросхеме служит для точной идентификации типа. Такое вот банальное значение имеют три таинственных цифры после букв ВП1.

Вот так выглядит вскрытый кристалл 1801ВП1 под микроскопом - хорошо видно верхний алюминиевый слой.

Изображение


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


А вот тут уже можете посмотреть на полноразмерную (почти 100мб) и уменьшенную фотографии непосредственно кристалла ВП1-030.


27 сен 2013, 19:20
Профиль

Зарегистрирован: 20 май 2013, 11:45
Сообщений: 18
Сообщение Re: Цифровая археология: тайна кристалла 030
На фотографии отлично видно что транзисторы сформированы в мелкие группы - такие себе характерные прямоугольники, составляющие так называемую Базовую Ячейку. А сами ячейки упорядочены в большую матрицу - в столбцы и ряды. Некоторые подробности о базовых матричных кристаллах серии 1801 удалось найти в книге П.П.Мальцева - "Цифровые интегральные схемы", информации не очень много - всего лишь скудные пара страниц:

Изображение Изображение


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

Изображение


Мы (Voland тоже участвовал в слегка безумном мероприятии которое тут описывается) связались с BarsMonster (довольно известный декапер - это его коллекция микрофотографий высокого разрешения навела на мысли попробовать разобраться вплотную с 1801ВП1) и в итоге он любезно согласился сделать нам декап и фотографию кристалла. В качестве первого кандидата была выбрана версия -030. Она легко доставаемая и служит основой различных плат на микропроцессоре 1801ВМ1. Такой себе чип-компаньон для этого микропроцессора. Очень хотелось разобрать более сложную и таинственную 1801ВП1-128, но они на сегодня в реальном дефиците и это не самый удачный кандидат на апробацию технологии реверса.

И тут буквально началась "золотая лихорадка" - дыхание старой тайны захватило полностью и не отпускало. Фотография была положена как фоновое изображение в программу SprintLayout. Это несложная программка со скромным набором возможностей для разработки собственно печатных плат, но как векторный редактор она великолепна. Имеет развитый набор макросредств и отличные возможности Copy-Paste. Буквально за несколько вечеров удалось векторизовать картинку до состояния из которого уже возможно извлечь принципиальную схему. Далее данные в векторном формате (гербер - древний формат фотоплоттеров) были импортированы в PCAD-2004 и используя средства обратной аннотации была быстренько получена в нем же принципиальная схема. На этом "лафа" закончилась - дальше уже пришлось поработать головой чтобы привести эту схему в "человеческую" форму. При этом чувствовалось что схемотехника реально прошлого века - я очень давно не слышал о таких схемах как ripple counter. Так вот - в 1801ВП1-030 они встречаются. Собственно других счетчиков там и нет (smile).


Принципиальная электрическая схема 1801ВП1-030 - квинтэcсенция в формате PDF:
Комментарий к файлу: Принципиальная электрическая схема 1801ВП1-030
1801-030-sch.pdf [241.62 KiB]
Скачиваний: 1985


Несколько обнаруженных в ходе раскопок интересных фактов про 1801ВП1-030:
  • микросхема использует чуть более четверти объема матрицы ячеек - всего 168 из 600
  • микросхема содержит менее 300 цепей - по сложности это уступает многим простым современным радиолюбительским платам
  • присутствуют устаревшие (но простые) схемотехнические решения типа ripple counter
  • всего один внутренний регистр (декодируется по входу RSEL, поэтому необязательно имеет адрес 177716), этот регистр содержит всего два бита, все цепи AD[15:0] являются входами. Но как выходы служат только два из них - AD[3:2] - именно чтение регистра
  • выход nRPLY построен по схеме "открытый коллектор"
  • на шаблоне металлического слоя микросхемы присутствуют мелкие погрешности - остатки никуда не ведущих трасс. Все-таки по тем временам (когда оно разрабатывалось) шаблон занимал наверняка большой стол посередине большой комнаты и "глазками" найти такие "косячки" было сложно
  • обнаружен тестовый заводской режим - если одновременно подать активные низкие уровни на nDIN и nDOUT то на выходах адреса динамической памяти будет выдаваться значение, инкрементируемое с каждым тактом входной частоты, это позволяет быстро проверить частотные свойства конкретного экземпляра микросхемы
  • наконец стал понятен механизм запуска цикла регенерации динамической памяти (вопрос интересный, чуть дальше расскажу подробнее)

При наличии полноценной схемы в электронном формате несложно написать программку для получения списка цепей и трансляции его в Verilog HDL. Что и было немедленно сделано. Пришлось немного повозиться с написанием библиотечки функциональных ячеек и, гип-гип-ура, получили полноценную функциональную модель 1801ВП1-030 на Verilog HDL.

На всех этапах экстракции структуры производится непрерывный контроль. При начальной векторизации было допущено в общей сложности около сотни ошибок. Потом они все по мере продвижения проекта исправлялись. Например, PCAD имеет простенькие средства ERC (Electronic Rules Check). Грубо говоря, можно указать что вот этот вывод компонента является выходом, а вот этот - входом. Когда они объединяются в цепи ERC довольно быстро показывает цепи где конфликтуют два выхода, и какие цепи вообще не имеют выходов или входов. На этом этапе удалось выловить более 90 процентов ошибок векторизации и экстракции схемы. Далее при перерисовывании схемы в "человеческую" форму выявилось несколько смысловых ошибок, пришлось откатиться назад к фотографии и тщательно поизучать возможные варианты. К сожалению, фотографии разрешения 10К на 10К точек не всегда позволяют однозначно определить рисунок (а это и так склеено около 200 фотографий, огромный труд, еще раз спасибо BarsMonster), но в итоге все эти проблемы удалось решить. На этапе моделирования схемы средствами Verilog-симулятора ошибок восстановления схемы уже выявлено не было.

Ну и в завершение "вкусняшка" - несколько слов об алгоритме запуска цикла регенерации динамической оперативной памяти. 1801ВП1-030 поддерживает управление микросхемами типа 565РУ6, период регенерации которых должен составлять не более двух миллисекунд. 565РУ6 содержит 128 страниц, значит циклы регенерации должны осуществляться с периодом не более 2мс/128 = порядка 16 мкс. Микросхема -030 внутри содержит шестиразрядный счетчик. Цикл регенерации запускается каждые 64 такта входной частоты (кстати, из этого следует что сама входная частота не может быть менее 4МГц, иначе мы превысим период регенерации микросхем памяти). Каждые 64 такта счетчик выставляет запрос на регенерацию. Если в течение 32 тактов после момента выставления запроса выполняется цикл доступа к памяти со стороны внешних устройств (обычно это микропроцессор), то после окончания этого внешнего цикла будет немедленно запущен цикл регенерации. Это оправдано, так как после обращения к памяти процессор обычно тратит несколько тактов на обработку данных/команд внутри себя и следующее обращение к памяти, как правило, не будет следовать немедленно. Если же в течение 32 тактов после выставления запроса на регенерацию никто к динамической памяти не обращается, то микросхема 030 просто ждет. По истечении интервала в 32 такта запрос на регенерацию переводится на агрессивный уровень - регенерация будет запущена немедленно.

Подытоживая - в ходе "цифровых раскопок" было получено море удовольствия. Практический результат - можно сделать на FPGA полную функцинальную копию, например, платы МС1201.01. Весело наработана методика, скромный инструментарий и библиотеки для дальнейшего реверса других 1801ВП1 - это можно сделать очень быстро.

Комментарий к файлу: Описание 1801ВП1-030 на языке Verilog HDL
1801-030-hdl.rar [8.77 KiB]
Скачиваний: 1322


27 сен 2013, 19:42
Профиль

Зарегистрирован: 21 авг 2013, 01:19
Сообщений: 55
Сообщение Re: Цифровая археология: тайна кристалла 1801ВП1-030
Поздравляю с успешным мероприятием !
Я в 1993 г. делал ОП блоков ДОЗУ на М1801ВП1-030, М1801ВП1-034 и КР565РУ6 для БК10 - как положено, с КП7 и ВДМ1-8. И зеленых ставил
столько, сколько было в 1201.01. Сделал около 10 шт - пока компоненты не
закончились. Частоту ставил 4.608 - фактически то, что было.
Вроде не одной рекламации до сих пор не пришло - хотя, если чесно,
кабельный телефон полгода назад отключили за неуплату .... ( смайл ).
*
Теперь, когда к рулю пришли ( вырезано цензурой ), НИОКР начинают вести настоящие инженера 1-й категории - за свой счет...


27 сен 2013, 21:14
Профиль

Зарегистрирован: 20 янв 2014, 12:41
Сообщений: 4
Откуда: Россия
Сообщение Re: Цифровая археология 1801: тайна кристалла 030
"Скорее всего данный кристалл находился в керамическом корпусе под отдельной крышкой и не подвергался действию концентрированной кислоты при растворении пластика. Обратите внимание, что это не версия кристалла 030, это просто наиболее наглядная фотография слоя алюминия."

Нет. Это фотография кристалла КР1801ВП1 версии 037, извлеченного из пластикового корпуса.
Фотография самой микросхемы приведена там же.

https://radiopicture.listbb.ru/viewtopi ... &start=140

_________________
http://radiopicture.listbb.ru/index.php


20 янв 2014, 12:51
Профиль

Зарегистрирован: 20 май 2013, 11:45
Сообщений: 18
Сообщение Re: Цифровая археология 1801: тайна кристалла 030
Виктор_Ф писал(а):
Нет. Это фотография кристалла КР1801ВП1 версии 037, извлеченного из пластикового корпуса.
Фотография самой микросхемы приведена там же.
https://radiopicture.listbb.ru/viewtopi ... &start=140

Ваша фотография - да, это 037, но это другая фотография, а та на которую ссылается мой первый пост - 033. Причем золотые проволочки у нее не повреждены, почему я и решил что оно было в керамике.
Кстати, 037 у Вас выглядит очень аккуратно, не поделитесь секретом как декапили?
Я 1801ВП1 сначала обтачиваю гравером до пластинки размером 5*5мм, как раз по размеру металлической подложки, а сверху остается примерно 1мм компаунда, потом компаунд прокаливаю и он от кристалла сам отпадает, но кое-где остаются мелкие крошки сажи и иногда происходит перегрев кристалла - поликремний меняет цвет и немного усложняет реверс по фото.


21 янв 2014, 10:33
Профиль

Зарегистрирован: 20 янв 2014, 12:41
Сообщений: 4
Откуда: Россия
Сообщение Re: Цифровая археология 1801: тайна кристалла 030
Сначала я тоже стачивал на наждаке до тонкого слоя и затем грел горелкой. Выход годных оказался невелик.
Сейчас кипячу в каком то растворителе, который мне притащили. Не всякая пластмасса поддается и выход годных на уровне 50-70 процентов.
Занятие опасное если нет лаборатории. )))

_________________
http://radiopicture.listbb.ru/index.php


27 янв 2014, 08:21
Профиль
Показать сообщения за:  Сортировать по:  
Ответить на тему   [ Сообщений: 6 ] 

Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 3


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Powered by phpBB © 2000 - 2011 phpBB Group.
Design creat de Florea Cosmin Ionut | Translation by WebSok.Ru

закрыть

Советскому бытовому " БК-0011М" посвящается...


Вопреки всем скептикам и недоброжелателям, дело БК живет и развивается. Не за горами день, когда будет выпущен в свет "БК-0012 Pulsar" - расширенный FPGA-клон БК-0011М. Пока же на данном форуме Вы можете ознакомиться с репликами БК-0011М(-01), приставкой Booster-11, репликой контроллера SMK64 (а также его FPGA-клоном - SMK512), аппаратным эмулятором ПЗУ КР1801РЕ2Б, блоками расширения с процессорами ВМ2/ВМ3, и другими интересными материалами и работами.
Ведутся работы по отрисовке в 3D корпусов БК, МСТД, оригинальных клавиатуры, джойстика и мыши, но пока не удается найти их производство по приемлемой цене при малом тираже. Выполнено производство новодельных пленок для клавиатур БК-0011М.
Важным для возрождения БК и его сообщества является новый софт (игры и демо в особености), и они периодически появляются!
Удалось решить многие hard-задачи, но нет системных программистов, востребованных в проекте БК-0012, как минимум для тестирования. Требуется разработка полноценного Win32-компилятора Си в bin-файлы БК.
Релизован полноценный каталогизатор всего софта БК, с удобным интерфейсом. Осталось выполнить собственно большую задачу каталогизации.

Ждем ваших откликов, идей. Сообщайте о данном ресурсе всем, кто увлекался в прошлом БКшкой, присылайте их и свои e-mail для рассылки новостей из мира БК.

nimamov@mail.ru