Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Lection course.doc
Скачиваний:
8
Добавлен:
23.11.2019
Размер:
1.82 Mб
Скачать

Машины с сокращенным набором команд

Набор команд центрального процессорного устройства - операционного процессора микропроцессорных комплектов содержит от 90 до 303 команд (супермини-ЭВМ VAX 11/ 780). Компьютеры с сокращенным набором команд - КСНК, или, иначе RISC-процессоры (от Reduced instruction set computer) содержат 30 - 50 команд в наборе. Это достигается тем, что для выполнения наиболее часто встречающихся в алгоритмах микропрограммного управления переходов в устройство управления введены некоторые дополнительные средства.

Наиболее часто повторяющиеся переходы приведены на рис. 2.1.7.

а) безусловный переход от адреса А i по адресу А j ,

б) условный переход по адресу Aj при выполнении некоторого условия С и по адресу Ак при невыполнении этого условия,

в), г) выполнение циклов по условию - реализуется с использованием условного перехода по условию (в) или с помощью стека (г), то есть безадресной памяти,

д) выполнение циклов по заданному числу их повторений. Реализуется со счётчиком R числа повторений N, входящим в состав устройства управления,

е) условный переход к микропрограмме А j и возврат из неё по значениям условий С,

ж) условный переход к микропрограмме Аj и возврат из нее по счётчику количества циклов,

з) безусловный переход к микропрограмме Аj и возврат после её выполнения к основной программе,

Для выполнения этих переходов устройство управления должно содержать: средства мультиплексирования внутренних источников адреса (переходы типа а) - е) и и), регистр управления микропрограммного счётчика с инкрементором и детектором нуля (д), сумматор (в) - д), средства маскирования полей адреса (в зоне адреса в формате микрокоманды). Маскирование - логическая операция над байтом, словом или полем данных с целью модификации или выделения их части. Для этого битовая комбинация той же длины, что и выделяемая комбинация, генерируется и хранится в регистре, как маска. Маска используется для подавления некоторых разрядов данных, установки их в «0», для выявления признаков высокого приоритета в байтах состояния или в операциях обработки прерывания. Если сократить набор команд, можно снизить сложность и стоимость ЭВМ. У КСНК получается регулярная структура простых команд, поэтому комбинация из нескольких команд выполняется быстрее, чем одна, эквивалентная этой комбинации сложная команда. Такие ЭВМ работают быстрее, команда выполняется за один машинный цикл, тогда как в других машинах - за несколько машинных циклов. Большинство операций в КСНК - типа «регистр - регистр», а обращения к основной памяти происходят только для выполнения простых операций загрузки в регистр и занесения в память. Уменьшается число логических вентилей и объём микропрограммного ПЗУ, необходимых для декодирования и реализации сложных команд, поэтому размеры МП с RISC-архитектурой меньше и, соответственно, стоимость тоже ниже.

Рисунок 2.1.7 – Переходы в алгоритмах микропрограммного управления RISC.

Количество инструкций

Нередко часть «сокращённый набор команд» неверно понимается как минимизация количества инструкций в системе команд. В действительности, инструкций у многих RISC-процессоров больше, чем у CISC-процессоров.[6][7] Некоторые RISC-процессоры вроде INMOS Transputer (англ.) имеют наборы инструкций не меньшие, чем, например, у CISC IBM System/370; и наоборот — CISC-процессор DEC PDP-8 имеет только 8 основных и несколько расширенных инструкций.

На самом деле, термин «сокращённый» в названии описывает тот факт, что сокращён объём (и время) работы, выполняемый каждой отдельной инструкцией — как максимум один цикл доступа к памяти, — тогда как сложные инструкции CISC-процессоров могут требовать сотен циклов доступа к памяти для своего выполнения.

Некоторые архитектуры, специально разработанные для минимизации количества инструкций, сильно отличаются от классических RISC-архитектур и получили другие названия: Minimal instruction set computer (MISC), Zero instruction set computer (англ.) (ZISC), One instruction set computer (англ.) (OISC), Transport triggered architecture (англ.) (TTA) и т. п.

Процессоры, образующие «компьютеры с минимальным набором команд» (MISC), как и процессоры RISC, характеризуются небольшим числом чаще всего встречающихся команд. Вместе с этим, принцип «очень длинных командных слов» (VLIW) обеспечивает выполнение группы непротиворечивых команд за один цикл работы процессора. Порядок выполнения команд распределяется таким образом, чтобы в максимальной степени загрузить маршруты, по которым проходят потоки данных. Таким образом архитектура MISC объединила вместе суперскалярную и VLIW-концепции. Компоненты процессора просты и работают на высоких частотах.

Характерные особенности RISC-процессоров

- Фиксированная длина машинных инструкций (например, 32 бита) и простой формат команды.

- Специализированные команды для операций с памятью — чтения или записи. Операции вида «прочитать-изменить-записать» отсутствуют. Любые операции «изменить» выполняются только над содержимым регистров (т. н. архитектура load-and-store).

- Большое количество регистров общего назначения (32 и более).

- Отсутствие поддержки операций вида «изменить» над укороченными типами данных — байт, 16-битное слово. Так, например, система команд DEC Alpha содержала только операции над 64-битными словами, и требовала разработки и последующего вызова процедур для выполнения операций над байтами, 16- и 32-битными словами.

- Отсутствие микропрограмм внутри самого процессора. То, что в CISC процессоре исполняется микропрограммами, в RISC процессоре исполняется как обыкновенный (хотя и помещённый в специальное хранилище) машинный код, не отличающийся принципиально от кода ядра ОС и приложений. Так, например, обработка отказов страниц в DEC Alpha и интерпретация таблиц страниц содержалась в так называемом PALCode (Privileged Architecture Library), помещённом в ПЗУ. Заменой PALCode можно было превратить процессор Alpha из 64-битного в 32-битный, а также изменить порядок байтов в слове и формат входов таблиц страниц виртуальной памяти.

Как оказалось в начале 1990-х годов, RISC-архитектуры позволяют получить большую производительность, чем CISC, за счёт использования суперскалярного и VLIW-подхода, а также за счёт возможности серьёзного повышения тактовой частоты и упрощения кристалла с высвобождением площади под кэш, достигающую огромных емкостей. Также RISC-архитектуры позволили сильно снизить энергопотребление процессора за счёт уменьшения числа транзисторов. Первое время RISC-архитектуры с трудом принимались рынком из-за отсутствия программного обеспечения для них. Эта проблема была быстро решена переносом UNIX-подобных операционных систем (SunOS) на RISC-архитектуры.

В настоящее время многие архитектуры процессоров являются RISC-подобными, к примеру, ARM, DEC Alpha, SPARC, AVR, MIPS, POWER и PowerPC. Наиболее широко используемые в настольных компьютерах процессоры архитектуры x86 ранее являлись CISC-процессорами, однако новые процессоры, начиная с Intel 486DX, являются CISC-процессорами с RISC-ядром. Эти процессоры непосредственно перед исполнением преобразуют CISC-инструкции x86-процессоров в более простой набор внутренних инструкций RISC.

После того, как процессоры архитектуры x86 были переведены на суперскалярную RISC-архитектуру, можно сказать, что подавляющее большинство существующих ныне процессоров основаны на архитектуре RISC.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]