Мано машина - Mano machine
В Мано машина это компьютер теоретически описывается М. Моррис Мано. Он содержит центральное процессорное устройство, оперативная память, и шину ввода-вывода. Его ограниченный набор инструкций и небольшое адресное пространство ограничивают его использование в качестве Микроконтроллер. Но его можно легко расширить до 32-битного регистра накопителя и 28-битной адресации с использованием языка HDL, такого как Verilog или VHDL; И в то же время освободите место для новых инструкций.
Характеристики
Машина Mano во многом похожа на PDP-8, например, одно и то же адресное пространство, только один регистр накопителя и множество подобных инструкций. Машина Mano имеет сегмент разделяемой памяти данных / программ размером 4096x16, требующий 12-битной адресной шины. Шина данных - 16 бит. Имеются 8-битные шины ввода / вывода для внешней связи и соответствующие флаги прерывания.
Имеется один 16-битный регистр накопителя и однобитовые регистры (защелки) для дополнительного переноса и остановки системы.
Набор инструкций
Существует 25 инструкций, которые делятся на 3 категории: операции прямого / косвенного обращения к памяти, операции обращения к регистрам и операции ввода / вывода / прерывания.
Каждая инструкция имеет длину 16 бит [4 нибайта или 1 слово]. Это означает, что инструкции обращения к памяти содержат 4 бита данных кода операции и 12 разрядов, выделенных для адреса.
Бит 15 | Биты 14-12 | Биты 11-0 | Мнемонический | Описание |
---|---|---|---|---|
0 | 0 | (Прямой адрес) | И | И прямая память в аккумулятор |
0 | 1 | (Прямой адрес) | ДОБАВИТЬ | Добавить прямую память в аккумулятор (влияет на бит переноса) |
0 | 2 | (Прямой адрес) | LDA | Загрузить прямую память в аккумулятор |
0 | 3 | (Прямой адрес) | STA | Сохранить аккумулятор в прямую память |
0 | 4 | (Прямой адрес) | BUN | Безусловный переход к прямой памяти |
0 | 5 | (Прямой адрес) | BSA | Сохранение текущего программного счетчика для направления памяти и перехода по следующему адресу |
0 | 6 | (Прямой адрес) | ISZ | Увеличить значение в прямой памяти и пропустить следующую инструкцию, если сумма равна нулю |
1 | 0-6 | (Косвенный адрес) | Версии с косвенной адресацией приведенных выше инструкций | |
0 | 7 | 800 | CLA | Очистить аккумулятор |
0 | 7 | 400 | CLE | Очистить бит переноса |
0 | 7 | 200 | CMA | Дополняем аккумулятор |
0 | 7 | 100 | CME | Дополнить переносной бит |
0 | 7 | 080 | CIR | Циркуляция гидроаккумулятора справа (через переносное долото) |
0 | 7 | 040 | CIL | Циркуляционный аккумулятор слева (через бит) |
0 | 7 | 020 | INC | Аккумулятор приращения (не влияет на бит переноса) |
0 | 7 | 010 | СПА | Пропустить следующую инструкцию, если аккумулятор положительный |
0 | 7 | 008 | СНС | Пропустить следующую инструкцию, если аккумулятор отрицательный |
0 | 7 | 004 | SZA | Пропустить следующую инструкцию, если аккумулятор равен нулю |
0 | 7 | 002 | SZE | Пропустить следующую инструкцию, если бит переноса равен нулю |
0 | 7 | 001 | HLT | Остановите компьютер, сняв защелку битов остановки |
1 | 7 | 800 | INP | Ввод из символьной шины в аккумулятор |
1 | 7 | 400 | ИЗ | Вывод из аккумулятора в символьную шину |
1 | 7 | 200 | ЛЫЖИ | Пропустить следующую инструкцию, если установлен флаг ввода |
1 | 7 | 100 | ЮКО | Пропустить следующую инструкцию, если установлен флаг вывода |
1 | 7 | 080 | ИОН | Разрешить прерывания |
1 | 7 | 040 | ИОФ | Отключить прерывания |
Приложения к теории компьютерной оптимизации
Технические характеристики машины включают конечный автомат который определяет микрооперации процессора. Каноническая реализация конечного автомата является отличным кандидатом на сокращение, а также может быть повторно реализована как конвейерный процессор.
внешняя ссылка
- Сборщик машин / симулятор Мано Марка Рота
- Бинарные файлы MANOSIM и MANOASM и страница руководства
- Реализация машины Мано на VHDL Н. Нарасимхамурти
- Реализация машины Мано в Verilog от Грега Тумбса
- Симулятор Mano Machine в браузере (Java-апплет)
Рекомендации
Мано, М. Моррис (октябрь 1992 г.). Архитектура компьютерной системы (3-е изд.). Прентис-Холл. ISBN 0-13-175563-3.
Этот компьютерное железо статья - это заглушка. Вы можете помочь Википедии расширяя это. |