Эмулятор БЭВМ
Содержание
- Существующие пользовательские интерфейсы
- Существующие микропрограммы
- Существующие наборы команд
- Ассемблер
- Отличия реализованной модели от оригинальной
- Интерпретация недокументированных особенностей БЭВМ
Существующие пользовательские интерфейсы
- Эмулятор БЭВМ для командной строки
- Графический интерфейс эмулятора
- Декомпилятор микропрограммы
- Альтернативный графический интерфейс эмулятора
Существующие микропрограммы
- Исходная микропрограмма
- Оптимизированная микропрограмма
- Расширенная микропрограмма
Существующие наборы команд
Набор команд определяется используемой микропрограммой.
На данный момент реализованы:
- Оригинальный набор команд
- Расширенный набор команд
Ассемблер
Разработан согласованный с используемыми в учебных пособиях обозначениями диалект ассемблера.
Отличия реализованной модели от оригинальной
- Для безадресных команд и команд ввода-вывода исполнение происходит на цикле исполнения.
- Регистр состояния является полноценным регистром, а не объединением однобитовых регистров.
- Из РС удалены 4 старших бита, отвечавших за отображение выполняемых циклов и выполнение операции ввода-вывода. РС, соответственно, теперь представляет собой 9-ти битный регистр.
- При выполнении команды TSF проверка состояния 6-ого бита РС и пропуск следующей команды реализованы на микропрограммном уровне, из-за чего во всех реализованных микропрограммах отличается адрес начала цикла прерывания.
- При выполнении любой операции ввода-вывода в 6-й бит РС записывается значение с шины состояние флага ВУ. Если выполнялась команда TSF, то будет открыт вентиль опроса флага соответствующего ВУ, и состояние этого флага по шине опроса флага попадёт в 6-й бит РС. Если выполнялась другая команда ввода-вывода, то все вентили опроса флага будут закрыты, и, следовательно, в 6-й бит РС будет записан 0. Таким образом, после выполнения любой команды ввода-вывода достаточно проверить 6-ой бит РС для определения необходимости пропуска следующей команды.
- Установка 5-ого бита РС использует состояние 4-ого бита РС и шины запрос прерывания. Состояние 6-ого бита РС при этом не используется.
- Для ОМК1 убрана возможность одновременной записи содержимого БР в А, РД, РА, РК.
- "Тактовый генератор" запускает операцию чтения из памяти микрокоманд в регистр микрокоманд.
- Увеличение содержимого СчМК на 1 инициируется при записи в него нулевого значения.
- Добавлены новые внешние устройства.
Интерпретация недокументированных особенностей БЭВМ
- Выполнение пультовых операций записывает в СчМК соответствующий адрес и, если не установлен режим потактового выполнения, записывает 1 в 8-й бит РС (Программа), запуская микропрограмму на выполнение. В противном случае выполняется один такт.
- У0 (HLT) подаётся на В0, который записывает 0 в 8-й бит РС. Также 8-й бит РС сбрасывается при включении потактового режима выполнения.
- Микропрограмма выполняется до тех пор, пока 8-й бит РС равен 1, т.е. пока не будет выполнена микрокоманда HLT или установлен режим потактового выполнения.