Оказываeтся, я чуточку ошибся в расчётах когда планировал дизайн Регистрового Файла…
Если Logisim-схему рассматривать в ТТЛ-исполнении как есть на буферах, то потребуется:
К155ИР13 - 30 штук
К531АП4 - 60 штук
К555ИД6 - 6 штук
ЛА/ЛЕ/ЛИ - 7-8 штук
Но, если рассматривать вариант на мультиплексорах, то получается:
К155ИР13 - 30 штук
К155КП1 - 24 штуки
К555ИД6 - 3 штуки
Получается, 105 корпусов против 57, что вдвое меньше…
Почему-то я думал, что с буферами - экономнее.
Однако, наткнулся ещё на одно чудо Отечества - К1533ИР39, у которой не видно аналога. На двух корпусах можно выполнить весь Регистровый Файл и сэкономить практически на 50 микросхемах.
Правда, кристалл не такой уж доступный и снят с производства: Не во всяком регионе СНГ легко достать из-за охотников на драгмет…
Сейчас я пытаюсь отладить схему на мультиплексорах, а также - набросал дешифратор команд в Proteus, чтобы обойтись без ПЗУ и продемонстрировать простоту декодирования всех команд открытой комбинаторикой. Получается:
К155ЛА3 - 1 штука
К155ЛА4 - 4 штуки
К155ЛЕ1 - 1 штука
К155ЛЕ4 - 1 штука
К155ЛИ1 - 1 штука
К155ЛЛ1 - 1 штука
К155ЛН1 - 1 штука
К155ЛП5 - 1 штука
Пробная плата дешифратора на этих 11 микросхемах в Proteus получается примерно 50×70 - с кредитную карточку.
Чтобы переводить BCD-код, можно использовать ПР6, а в качестве АЛУ использовать ИК2, так как они менее запутанные, чем ИК4 или ИП3…
Как я уже сказал: Практически никакой из существующих процессоров инженерами не задумывался так, чтобы в дампе Hex-код напоминал аббревиатуры…
Напротив, во многих RISC'ах байт-код нужно либо жёстко зубрить, либо спихивать рутину на трансляторы…
Если даже этот блин и получился комом, то - я никак не инженер и специального образования не имею. К вопросу подходил как эстет-радиолюбитель и эстетически красивую таблицу команд увидел именно такой, а никак не иной.
(В том же i8086 код 00 означает ADD: Это как надо было инженерам обкуриться, чтобы обнулённая память состояла из операций сложения с вектором на память!? У i8080 код 00 - NOP, что более разумно. Хотя HLT - более логичнее: Попал в нули - остановись!)