Особенно, если учесть, что изначально это был оригинальный процессор 1801ВЕ1 с собственной системой команд, но потом его микропрограмму заменили на эмулятор "Электроники 60", а от оригинального ВЕ1 остался только ВЕ-таймер по адресу 177706 ( и блок мультипроцессорной синхронизации по адресу 177700 ) и то лишь потому, что реализация там не была микропрограммной.
---------- Post added at 13:52 ---------- Previous post was at 12:47 ----------
Вопрос, почему процессор 1801ВМ1 является именно эмулятором LSI-11, а не самостоятельным процессором с системой команд PDP-11 достаточно важен, поэтому объясню подробнее.
1. При создании 1801ВМ1 был в точности скопирован встроенный в микрокод LSI-11 отладчик "Micro ODT", но из-за недостатка места в микрокоде ВМ1 - эмулятор Micro ODT LSI-11 был написан как отдельная программа для ПЗУ, поставлявшаяся в комплекте с процессором как "системное ПЗУ".
2. Микрокод 1801ВМ1 в точности повторяет все особенности микрокода LSI-11. Например, в LSI-11 команда MFPS ведёт себя с регистром-приёмником в точности как команда MOVB ( размножает старший бит байта ), а значит - использует микрокод MOVB, но при записи байта в память, в отличие от команды MOVB - команда MFPS сначала читает слово, а значит - не использует микрокод MOVB. Понять логику подобного решения трудно. Но процессор 1801ВМ1 повторяет все эти фокусы LSI-11 такт-в-такт.





Ответить с цитированием