Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ЭВМ семинары 2006.doc
Скачиваний:
61
Добавлен:
20.05.2014
Размер:
1.86 Mб
Скачать

Функционирование программируемого процессора

Основой работы любого компьютера является последовательность «выборка – декодирование - исполнение». Особенности в функционировании процессора определяется используемой системой команд. Первоначально команда содержала следующую информацию:

  1. КОП – код операции, которую должен выполнить процессор (сложение, вычитание и т.д.);

  2. адреса двух операндов – аргументов операции;

  3. адрес ячейки памяти, в которую должен быть помещен результат операции;

  4. адрес следующей команды.

Такая команда, состоящая из пяти полей имеет следующий вид в двухбайтовом формате:

15 12 11 9 8 6 5 3 2 0

КОП Адрес 1-го операнда Адрес 2-го операнда Адрес результата Адрес следующей

команды

Структура процессора, отвечающая этой системе команд, может иметь следующий вид:

Y4

ОПY3

Следующая команда

Вычитаемое

Разность

Исполняемая команда

КОП 1 2 3 4

2 байта

Уменьшаемое

АдресY2

Y1

Коп 1 2 3 4

Чтение

Y7

Y5Y6 Регистр команд

Устройство

управления

Y10

АЛУ

Y11

Y8 Y12

Аккумулятор

Запись

Y9

Простой процессор, работающий с четырехадресной командой

Алгоритм работы

Рассмотрим алгоритм работы этого устройства на примере выполнения операции «Вычитание» после того, как в его регистр команд была переписана из ОП выполняемая команда:

  • поле «КОП» регистра команд связано с УУ, поэтому последнее получит приказ на выполнение операции «Вычитание» и перейдет в режим генерации управляющих импульсов;

  • одновременно подачей сигналов Y1,Y5,Y10 иY8 обеспечивается пересылка из памяти численного значения уменьшаемого, прохождения его через АЛУ (сигналY10) и запись в аккумулятор;

  • следующий тактовый импульс инициирует сигналы Y2,Y5,Y6, иY11, что приводит к пересылке из памяти численного значения вычитаемого, к выполнению операции вычитания (сигналY11), т.е. из содержимого аккумулятора (уменьшаемое) вычитается значение вычитаемого, по сигналуY8 производится запись полученной разности в аккумулятор вместо уменьшаемого;

  • следующий тактовый импульс инициирует сигналы Y3,Y9 которые обеспечат пересылку результата операции в требуемую ячейку памяти, на которую указывает предпоследнее поле команды:

  • наконец в следующем такте с помощью сигналов Y4 иY7 будет произведена перепись в регистр команд следующей команды программы.

Рассмотренная архитектура процессора и реализованная им четырехадресная команда кажутся вполне естественными, более того, очевидными.

Действительно, без усложнения доступа к содержимому ячеек памяти нельзя одновременно получить из нее оба операнда и, следовательно, первый операнд приходится сохранять в буферном регистре – аккумуляторе (он может аккумулировать, накапливать слагаемые в процессе получения некоторой суммы). Нужен и регистр для хранения исполняемой команды. Поясним этот момент.

Когда команда хранится в одной ячейке памяти, то не существует возможности считывания из памяти отдельных полей команды и, следовательно, необходим буфер для временного хранения исполняемой команды – регистр команд. Ну а появление трех шин: шины адреса, шины чтения(данных и команд), шины записи – кажутся нам вполне естественным. Все так, но подобная архитектура обладает массой недостатков, более того - она просто не работоспособна.