
Сообщение от
HardWareMan
Вот этот кусочек:

Если предыдущая догадка верна и внизу здесь IR, а над ним дешифрация, то можно предположить, что каждая секция дешифратора это отдельный машинный цикл?
В Z80 каждый выход декодера (здесь это горизонтальные линии металлизации) это какая-то инструкция или группа по маске, например, 00xxx101 - декремент регистра, или 00xx1001 - add HL,RR. Они дополнительно группируются, а потом уже около сотни многовходовых элементов, на которые заведены в том числе циклы и такты. Их выходы это уже и есть (почти) управляющие сигналы АЛУ, регистров и прочего. "Секции" в нём тоже есть, но это, видимо, просто питание так заведено на дешифратор.
---------- Post added at 17:07 ---------- Previous post was at 16:38 ----------

Сообщение от
Titus
...убедительная просьба не переводить полученные данные только во всякие Verilog'и, а выкладывать еще и принципиальные схемы.
Согласен. Схема наглядней Verilog'а, но всё-таки в тексте таскать туда-сюда куски схемы мне показалось проще. Поэтому в конце я (или может кто-то другой) всё равно переведу в схему, но она не будет один в один как на кристалле, там есть много мест, в которых можно повысить наглядность и читаемость. Например, тот же счётчик циклов. У него очень закрученные условия инкремента/сброса, но в результате упростил до (условно) "(цикл1 И такт3 И выход_декодера) ИЛИ (цикл2 И такт4 И выход_декодера) ИЛИ ...". То есть изначально оно наверное так и было, но её "сжали" чтобы было меньше транзисторов.
---------- Post added at 17:14 ---------- Previous post was at 17:07 ----------

Сообщение от
HardWareMan
Мне проще понимать "тактируемый D триггер" (например 555ИР23) и "прозрачная защелка" (555ИР22). Первый работает строго по перепаду, второй прозрачен всегда, пока действует условие и защелкивает когда условие не действует.
Z80 в основном построен на "прозрачных защёлках", описываю их так:
Код:
always @(*) if (clk)
begin
...
end
iverilog (симулятор такой) понимает правильно, Quartus вроде тоже.