Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | ||
|
С развитием вычислительной техники появлялись различные архитектуры системы команд (АСК), некоторые из них становились основными на каком-то этапе. Сложившуюся на настоящий момент ситуацию в области архитектуры команд иллюстрирует рисунок.
При анализе/выборе архитектуры команд существенны два момента. Первый - это состав операций, выполняемых вычислительной машиной, и их сложность. Второй - место хранения операндов, что влияет на количество и длину адресов в адресной части команды.
Современная технология программирования ориентирована на языки высокого уровня (ЯВУ), главная цель которых - облегчить процесс программирования. Переход к ЯВУ, однако, породил серьезную проблему: сложные операторы, характерные для ЯВУ, существенно отличаются от простых машинных операций, реализуемых в большинстве вычислительных машин. Проблема получила название семантическою разрыва, а ее следствием становится недостаточно эффективное выполнение программ на ЭВМ. Пытаясь преодолеть семантический разрыв, разработчики вычислительных машин в настоящее время выбирают один из трех подходов и, соответственно, один из трех типов АСК:
· архитектуру с полным набором команд: CISC (Complex Instruction Set Соmputer);
· архитектуру с сокращенным набором команд: RISC (Reduced Instruction Set Compllter);
· архитектуру с командными словами сверхбольшой длины: VLIW (Vегу Long Instruction Word)
В вычислительных машинах типа CISC проблема семантического разрыва решается за счет расширения системы команд, дополнения ее сложными командами, семантически аналогичными операторам ЯВУ.
Основоположником СISС-архитектуры считается компания IBM, которая начала применять данный подход с семейства машин IBM 360 и продолжает его в своих мощных современных универсальных ЭВМ, таких, как IBM ES/9000. Аналогичный подход характерен и для компании Intel в ее микропроцессорах серии 8086 и Pentium. Эта архитектура является практическим стандартом для рынка микрокомпьютеров.
Для СISС-архитектуры типичны:
· наличие в процессоре сравнительно небольшого числа регистров общего назначения;
· большое количество машинных команд, некоторые из них аппаратно реализуют сложные операторы ЯВУ;
· широкое использование микропрограммирования;
· разнообразие способов адресации операндов;
· разная временная структура выполнения команд;
· множество форматов команд различной разрядности (Pentium - длина команды 1-10 байт);
· преобладание двухадресного формата команд;
· наличие команд, где обработка совмещается с обращением к памяти.
Рассмотренный способ решения проблемы семантического разрыва вместе с тем ведет к усложнению аппаратуры ЭВМ, главным образом, устройства управления, что, в свою очередь, негативно сказывается на производительности ЭВМ в целом. Это заставило более внимательно проанализировать программы, получаемые после компиляции с ЯВУ. Был предпринят комплекс исследований, в результате которых обнаружилось, что доля дополнительных команд, эквивалентных операторам ЯВУ, в общем объеме программ не превышает 10-20%, а для некоторых наиболее сложных команд даже 0,2%. В то же время объем аппаратных средств, требуемых для реализации дополнительных команд, возрастает весьма существенно. Так, емкость микропрограммной памяти при поддержании сложных команд может увеличиваться на 60%.
Детальный анализ результатов упомянутых исследований привел к появлению RISC-архитектуры. Термин RISC впервые был использован Д. Паттерсоном и Д. Дитцелем в 1980 году. Идея заключается в ограничении списка команд ЭВМ наиболее часто используемыми простейшими командами, оперирующими данными, размещенными только в регистрах процессорах. Сложные команды ЯВУ выполняются набором простых, число которых больше чем в СISC, но время их выполнения меньше.
Основные особенности RISC-архитектуры:
· небольшое число команд с простым декодированием;
· резко уменьшено количество форматов команд;
· почти все команды выполняются за один такт;
· ограничено количество способов адресации;
· длинный регистровый файл, что позволяет большему объему данных храниться в регистрах на процессорном кристалле большее время и упрощает работу компилятора по распределению регистров под переменные;
· обращение к памяти допускается лишь с помощью специальных команд чтения и записи;
· используются трехадресные команды, что помимо упрощения дешифрации дает возможность сохранять большее число переменных в регистрах без их последующей перезагрузки
· эффективно загружен конвейер команд.
·
· Типы и форматы операндов
· Машинные команды оперируют данными, которые в этом случае принято называть операндами. К наиболее общим (базовым) типам операндов можно отнести:
· - адреса;
· - числа;
· - символы;
· - логические данные.
Для каждого типа данных в ВМ предусмотрены определенные форматы.
Среди цифровых данных можно выделить две группы:
- целые типы, используемые для представления целых чисел.
- вещественные типы для представления рациональных чисел.
Дата публикования: 2015-09-17; Прочитано: 1235 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!