Организация процессоров
Операционная часть ARC соответствует операционной части М-процесора. Управляющая часть напоминает структуру управляющего автомата с программируемой логикой / /. Работу процессора коротко можно прокомментировать следующим образом.
Машинный цикл выполнения команды в общем случае (не для рассматриваемого процессора) включает:
1. Извлечение команды из памяти (IF - Instruction Fetch).
2. Декодирование команды (Instruction Decoding – ID).
3. Извлечение операндов из памяти или из регистров (MEM).
4. Выполнение (Execute - EX).
5. Запись результатов в память или регистр (Write Back – WB).
Для данного процессора обращение к памяти (MEM) и (WB) происходят только в 2 командах – ld и st. В остальных случаях все действия происходят с регистрами РОН. Поскольку у процессора ARC нет отдельного адресного операционного устройства, а режимы адресации предусматривают в том числе и косвенную адресацию, то этап выполнения EX в нем предшествует этапу обращения к памяти (MEM или WB) – на этом этапе необходимо вычислить окончательный адрес памяти, по которому будет обращение.
Машинный цикл выполнения команды реализуется микропрограммно – выполнение каждой команды начинается с нулевого адреса ПМП, где стоит микрокоманда обращения к памяти. После считывания команды идет ее декодирование – код операции в режиме декодирования (Decode) непосредственно используется для формирования адреса следующей микрокоманды – это будет адрес микроподпрограммы для реализации остальных этапов выполнения команды (исполнение и, возможно, обращение к памяти). На этапе исполнения в памяти микропрограмм реализуется собственно алгоритм выполнения каждой команды. Каждая микрокоманда в алгоритме при выполнении помещается в регистр микрокоманд и управляет пересылкой между регистрами, выполнением операций над ними и т.д. Все микрокоманды реализуются через АЛУ (например, пересылка из регистра 1 в регистр 2 может реализовываться как логическая операция «ИЛИ» в АЛУ с нулевым непосредственным значением для регистра 2 и записью результата в регистр 1).
|