Цифровое оборудование

Главная > Как устроен процессор > Пример простой микропрограммы >
Меню:

Пример простой микропрограммы

Подпись: 	Регистр А + регистр В => регистр C
Адрес этой микрокоманды	0000
Адрес следующей микрокоманды 0-2	000
Выбор условия 0-2	000
Сброс регистра состояния	1
Выбор источника входа А 0-1	0
Выбор источника входа В 	0
Запрос шины	1
Чтение команды по шине	1
Чтение данных по шине	0
Запись по шине	0
Выбор сдвига 0-1	0
Функция АЛУ 0-4	00001
Запись результата в регистр А	0
Запись результата в регистр B	0
Запись в регистр А	1
Запись в регистр В	1
Запись в файл	1
Запись в счетчик команд	0
Запись в регистр состояния	1
Запись в регистр адреса шины	0
Запись в регистр данных шины	0
Теперь, глядя на эту схему можно попробовать написать простейшую команду в виде микрокоманд. Допустим, необходимо сложить регистр А с регистром В и записать в регистр С. Одновременно с извлечением микрокоманды, в первой половине такта произойдет считывание регистров А и В. Для выполнения сложения необходимо записать считанные данные в буферные регистры АЛУ,  для чего должны быть установлены управляющие сигналы «Запись в регистр А» и «Запись в регистр В». Поскольку к середине такта микрокоманда уже будет извлечена, и управляющие сигналы поступят на входы триггеров, формирующих управляющие импульсы, по отрицательному перепаду тактового сигнала будет сформирован положительный перепад управляющих импульсов, данные запишутся в буферные регистры и поступят на входы АЛУ. На входах АЛУ к этому моменту должен быть установлен код функции арифметического сложения – 00001.

Чтобы в процессе сложения не учитывался перенос, который мог возникнуть при выполнении предыдущей команды, должен быть установлен сигнал «Сброс регистра состояния», который в первой половине такта, сразу после извлечения микрокоманды положительным перепадом очистит регистр состояния. После этого, через время задержки срабатывания АЛУ, на его выходе появится результат сложения двух аргументов. Для того, чтобы этот результат был записан в регистровый файл, должен быть установлен сигнал записи в регистровый файл, который сформирует импульс записи на входах регистрового файла в конце такта. После этого можно приступить к извлечению следующей команды и увеличению счетчика команд. Для этого должны быть установлены сигналы «Чтение команды по шине» и «Запрос шины». Указывать адрес следующей микрокоманды нет необходимости, поскольку при получении следующей команды из памяти она автоматически будет записана в регистр команд, а регистр адреса микрокоманды будет принудительно установлен в начальное значение.



По рисункам видно, как организована передача данных между узлами процессора в первой и второй половине такта при выполнении однотактной команды. Синим цветом обозначены узлы – источники данных, красным – приемники данных. Зеленым цветом показано, как формируются при этом адреса регистров в регистровом файле.

Автор текста - Молчанов Н.Н.
Дополнительно:
Разделы:
Мехмат
Как устроен процессор
Как устроен компьютер
Как устроен фотоаппарат
Фото-термины
Как починить фотоаппарат
Электротехника и электробезопасность
Другие сайты:
Тойота-ФАК
Все об эксплуатации автомобилей марки "Тойота"
Фотобанк
Бесплатные высококачественные фотографии для полиграфии
Железная дорога
Коллекция масштабных моделей железнодорожного подвижного состава
Веб-камера
Веб-камера с возможностью управления установленная на 13-м этаже главного здания МГУ
МГУ в фотографиях
Большой архив фотографий главного здания МГУ
Отправить сообщение владельцу сайта можно здесь.