Итоги

Готово: «Звёздный урожай» и часы работают на памяти, которую вы собрали сами — 1 024 бита на защёлках, 256 слов по 4 бита, внутри процессора вместо примитива ram.

Что получилось

ЧастьИз чего
битDLatch первого набора + «кран» AND — 22 транзистора
строка WORD44 ячейки с общими «запиши» W и «выдай» R
RAM16x4DEC16 выбирает строку, AND(r, WE) — запись, ИЛИ — чтение
— 2 544 транзистора
RAM256x416 × RAM16x4: старшие биты адреса выбирают блок
— 41 840 транзисторов
окно записиAND3(oST, nCLK2, CPUCLK) — вторая фаза такта
двухфазный тактDFF-делитель CPUCLK / 2 → CLK2 для всех регистров

Три урока из одной памяти

  1. Память при включении — «что попало». Защёлки встают как придётся, и программа сама обнуляет то, что читает до записи. Так поступает любой настоящий компьютер при старте.
  2. Общий провод — не для идеальных ключей. Настоящие чипы сажают ячейки на общий провод и спасаются аналоговыми хитростями. В мире идеальных ключей надёжнее собрать чтение на вентилях И-ИЛИ.
  3. Окно записи не должно встречаться со сменой адреса. Примитив ram пишет мгновенно, на фронте. Памяти на защёлках нужно окно, а окну — своё время, отдельное от смены адреса. Отсюда две фазы такта — как φ1 и φ2 у Intel 8080 и MOS 6502.

Что дальше

  • ПЗУ из транзисторов. В процессоре остался последний примитив памяти — ПЗУ с программой. Его можно собрать матрицей: транзистор на пересечении строки и столбца — 1, нет транзистора — 0. Программа становится рисунком.
  • Больше памяти. 1 024 слова — это четыре RAM256x4 и ещё один уровень выбора блока. Схема та же; растёт только число транзисторов.