Skip to content

emu-russia/ula

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

60 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ZX Spectrum ULA 6C001

Восстановление нетлиста спектрумовской юлы (ревизия чипа - S-ULA6C001 6790-VII).

ula6c001

Все разделы пока на русском, но особо тут пока нет ничего, можно спокойно использовать DeepL для перевода.

Datasets

  • Оригинальные датасеты были получены из дискорда Silicon Pr0n, фотографии сделаны 4e71: https://reversing.pl/storage/ZX_ULA.jpg и использованы с разрешения автора
  • Исходное изображение было уменьшено в 4 раза (т.к. топология не требует большого разрешения) и маски частично восстановлены для получения Master изображения: ZX_ULA_sm.jpg. Также тут: https://drive.google.com/file/d/1--3bO9DbVKPTjt3Om8gvpYQBYHB_Lc9T/view?usp=sharing

Процесс исследования

  1. Исходное изображение
  2. Векторизация и определение базовых элементов (ulabase.v)
  3. Получение нетлиста (утилита Deroute)
  4. Экспорт нетлиста в верилог (утилита Deroute)
  5. Получение схемы чипа в популярной EDA (Xilinx PlanAhead, грузим верилог она сама рисует схему)
  6. Вдумчивый анализ, дробление нетлиста на под-модули, названия сигналов, повторить с пункта 4 (необязательно)

Дробление схемы полученной из нетлиста обратно на модули

В целом аннотирование схемы завершено и вырисовывается следующая картина:

ula6c001_annotated

Примечание

Вот эти инверторы я НЕ включал в основной нетлист, т.к. они являются частью peripheral cells:

peri_cell_nots

Однако, для получения сигнала /AE (address enable) один такой инвертор был использован (сами разработчики чипа задействовали peripheral cell для основной логики, выше также имеется pullup в ячейке /WE):

peri_cell_nots_ae

Reference

Releases

No releases published

Packages

No packages published