Лекции по Вычислительным машинам, системам и сетям   

1. Электронные вычислительные машины общего назначения

1.4. RISC- и CISC - процессоры

Начиная с 50-х и до середины 80-х гг. XX века развитие архитектуры процессоров усложнялось в основном за счет развития технологии, а не за счет принципиально новых идей. Система машинных команд процессоров также постоянно усложнялась, что было обусловлено стремлением обеспечить поддержку новых сложных языков высокого уровня (ЯВУ). Все разработанные за этот период процессоры относятся к типу CISC (common instruction set computer – «процессор с полным набором команд»). В середине 80-х этот путь развития был поставлен под сомнение, что привело к появлению RISC-процессоров (reduce instruction set computer – «процессор с сокращенным набором команд»). Рассмотрим причины, которые привели к этому повороту.

С уменьшением стоимости аппаратной части CISC-процессоров увеличивались затраты на программное обеспечение. Помимо высокой стоимости и неудобств в использовании, к недостаткам программного обеспечения относится наличие элемента ненадежности: для всех программ характерно выявление все новых и новых ошибок даже после нескольких лет эксплуатации. Фирмы решали эту проблему путем создания все более сложных ЯВУ, которые помогали программистам избегать ошибок.

Этот подход породил другую проблему ‑ «семантичес-кий разрыв», которая заключается в существенном различии между операторами ЯВУ и машинными командами процессоров. Разрыв привел к неэффективному выполнению операторов, чрезмерному объему программ и сложности компиляторов. Пришлось искать архитектурные решения, направленные на устранение этого разрыва.

К основным особенностям CISC-архитектур относятся:

     - использование сложных машинных команд;

     - большое число используемых способов адресации;

- аппаратная реализация некоторых операторов ЯВУ.

     Эти особенности способствуют достижению целей:

     - облегчение труда разработчиков компиляторов;

     - повышение эффективности выполнения операторов;

     - обеспечение базы для использования гораздо более изощренных ЯВУ.

     Этот подход также породил сомнения у разработчиков, и они провели анализ программ, написанных на ЯВУ. Выяснилось, что 2/3 операторов ‑ простейшие операторы вида А = В. Был сделан вывод, что подгонка системы команд под ЯВУ не самая лучшая стратегия. Гораздо более эффективным может оказаться путь оптимизации наиболее часто встречающихся в программах операторов.

Обобщение этих и других исследований привело к тому, что были сформулированы три принципиальные особенности архитектуры RISC-процессоров:

     - использование большого числа (до нескольких сотен) внутренних регистров, с целью снижения числа обращений к ОП;

     - использование эффективного конвейера команд, эффективность которого обеспечивается простотой форматов машинных команд;

     - использование сокращенного набора машинных команд, что и позволяет использовать их простые форматы.

     Существует много подходов к построению RISC-процессоров, однако у них у всех есть общие характеристики:

     - одна машинная команда выполняется за один машинный цикл, что позволяет реализовать большинство машинных команд аппаратным образом и, следовательно, обеспечить более высокое быстродействие, по сравнению с CISC-процессорами, в которых большинство команд требуют использования микропрограмм;

     - большинство операций имеют тип «регистр ‑ регистр», что позволяет упростить УУ и повысить быстродействие;

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

     - применяются простые форматы машинных команд.

     Обычно используется один или несколько (два-три) формата. Все команды имеют фиксированную длину и фиксированное расположение полей. Этот подход дает возможность легко реализовать конвейер команд, упростить УУ и повысить быстродействие процессора.

Выпускаемые в настоящее время процессоры сочетают в своей архитектуре особенности RISC- и CISC- процессоров.



*****
Новосибирск © 2009-2017 Банк лекций siblec.ru
Лекции для преподавателей и студентов. Формальные, технические, естественные, общественные, гуманитарные, и другие науки.