Сравнительный анализ архитектур RISC и CISC

Автор работы: Пользователь скрыл имя, 22 Июня 2014 в 21:54, курсовая работа

Краткое описание

Цель курсового проекта: В ходе выполнения данного курсового проекта необходимо рассмотреть существующие виды архитектур процессоров, охарактеризовать их преимущества и недостатки. Для достижения данной цели есть необходимость выделить следующие основные задачи:
1. Повторить и закрепить теоретический материал;
2. Детально рассмотреть какую-либо архитектуру;
3. Сравнить архитектуры RISC и CISC.

Содержание

Введение 3
1.Теоретическая часть 4
1.1 Архитектура RISC 4
1.2. Архитектура CISC 8
1.3. Архитектура MISC 11
1.3. Архитектура MISC 12
2. Практическая часть 14
2.1. Сравнительный анализ архитектур RISC и CISC 14
2.2. Техническое задание 16
2.3. Разработка программы 17
Заключение 19
Приложение А 20
Список литературы 22

Вложенные файлы: 1 файл

Kursach_Zub.doc

— 333.50 Кб (Скачать файл)

Федеральное агентство связи

Бурятский филиал

Государственного образовательного бюджетного учреждения

высшего профессионального образования

«СИБИРСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ

ТЕЛЕКОММУНИКАЦИЙ И ИНФОРМАТИКИ»

 

 

Кафедра информатики и вычислительной техники 

Допустить к защите

Зав.кафедрой: Рабданова В.В.

 

Сравнительный анализ

архитектур RISC и CISC

 

КУРСОВОЙ ПРОЕКТ

 

 

 

 

Пояснительная записка

БФ ФГОБУ СибГУТИ 230100.000 ПЗ

Руководитель    /Гарипова Г.Х./

Студент           /Зубков М.В./

 

 

Факультет: Информационных технологий

Группа: И- 121

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2014г.

Содержание:

 

 

 

 

 

Введение

 

На данном этапе научно-технического развития выбор аппаратной платформы и конфигурации системы представляет собой чрезвычайно сложную задачу. Это связано, в частности, с характером прикладных систем, который в значительной степени может определять рабочую нагрузку вычислительного комплекса в целом. Однако часто оказывается просто трудно с достаточной точностью предсказать саму нагрузку, особенно в случае, если система должна обслуживать несколько групп разнородных по своим потребностям пользователей. Следует отметить, что выбор той или иной аппаратной платформы и конфигурации определяется и рядом общих требований, которые предъявляются к характеристикам современных вычислительных систем. К ним относятся: отношение стоимость/производительность, надежность и отказоустойчивость, масштабируемость, совместимость и мобильность программного обеспечения. Основная задача при проектировании всего ряда моделей системы RISC заключалась в создании такой архитектуры, которая была бы одинаковой с точки зрения пользователя для всех моделей системы независимо от цены и производительности каждой из них. Огромные преимущества такого подхода, позволяющего сохранять существующий задел программного обеспечения при переходе на новые модели были быстро оценены как производителями компьютеров, так и пользователями и начиная с этого времени практически все фирмы-поставщики компьютерного оборудования взяли на вооружение эти принципы, поставляя серии совместимых компьютеров.

       Предмет  исследования: Архитектуры процессоров.

       Цель  курсового проекта: В ходе выполнения данного курсового проекта необходимо рассмотреть существующие виды архитектур процессоров, охарактеризовать их преимущества и недостатки.  Для достижения данной цели есть необходимость выделить следующие основные задачи:

  1. Повторить и закрепить теоретический материал;
  2. Детально рассмотреть какую-либо архитектуру;
  3. Сравнить архитектуры RISC и CISC.

 

 

 

 

 

1.Теоретическая часть

1.1 Архитектура  RISC

Идея RISC-архитектуры (Restricted (Reduced) Instruction Set Computer ) была выдвинута в 1975 году Джоном Коком из IBM Research и впервые реализованна в 1980 году. Суть концепции RISC заключается в сведении набора команд ВМ к наиболее употребительным простейшим командам. Это позволяет упростить схемотехнику процессора и добиться резкого сокращения времени выполнения каждой из «простых» команд. Более сложные команды реализуются как подпрограммы, составленные из быстрых «простых» команд. Проще говоря, это архитектура процессора, в которой быстродействие увеличивается за счет упрощения инструкций, чтобы их декодирование было более простым, а время выполнения - короче. В процессорах с RISC-архитектурой используется ограниченный набор быстрых команд. Каждая команда RISC-процессора должна выполняться за один машинный такт. Это облегчает повышение тактовой частоты и делает более эффективной суперскалярность (распараллеливание инструкций между несколькими исполнительными блоками). В таких микропроцессорах содержится меньшее количество транзисторов, что снижает их стоимость и энергопотребление. При этом, как правило, повышается их производительность. Архитектура RISC является основой современных высокопроизводительных ЭВМ.

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

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

Для технологии RISC характерна сравнительно простая структура устройства управления. Площадь, выделяемая на кристалле микросхемы для его реализации, существенно меньше. Как следствие, появляется возможность разместить на кристалле большое число регистров ЦП. Кроме того, остается больше места для других узлов ЦП и для дополнительных устройств: кэш-памяти, блока арифметики с плавающей запятой, части основной памяти, блока управления памятью, портов ввода/вывода. 
Унификация набора команд, ориентация на конвейерную обработку, унификация размера команд и длительности их выполнения, устранение периодов ожидания в конвейере - все эти факторы положительно сказываются на общем быстродействии.

Основными преимуществами RISC-архитектуры является наличие следующих свойств:

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

Универсальный формат всех микроопераций.

Равное время выполнения всех машинных команд.

Практически все операции пересылки данных осуществляются по маршруту регистр – регистр.

Недостатки RISC прямо связаны с некоторыми преимуществами этой архитектуры. Принципиальный недостаток - сокращенное число команд: на выполнение ряда функций приходится тратить несколько команд вместо одной в CISC. Это удлиняет код программы, увеличивает загрузку памяти и трафик команд между памятью и ЦП. Исследования показали, что RISC-программа в среднем на 30% длиннее CISC-программы, реализующей те же функции.

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

Рис. 1 Схема архитектуры RISC

 

Основой RISC-процессора служит арифметико-логическое устройство (АЛУ). По системному тактовому сигналу из памяти программ в соответствии с содержимым счетчика команд (Program Counter - PC) выбирается очередная команда и выполняется АЛУ. Во время выбора команды из памяти программ происходит выполнение предыдущей выбранной команды, что и позволяет достичь быстродействия 1 MIPS на 1 МГц.  
АЛУ подключено к регистрам общего назначения РОН (General Purpose Registers - GPR). Регистров общего назначения всего 32, они имеют байтовый формат, то есть каждый из них состоит из восьми бит. РОН находятся в начале адресного пространства оперативной памяти, но физически не являются ее частью. Поэтому к ним можно обращаться двумя способами (как к регистрам и как к памяти). Такое решение является особенностью AVR и повышает эффективность работы и производительность микроконтроллера.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Система команд включает 74 команды, которые можно разделить на 6 групп: загрузки/запоминания, операционные, переходов, работы с сопроцессором, управления системой и специальные.

Все команды имеют длину 32 бита и могут быть трех форматов:

I - команды с непосредственным  операндом и обращения к памяти

KOП(6);Rs(5);Rt(5);I(16), где Kg, R, - номера регистров, I - непосредственный операнд или смещение;

J - для команд переходов;

КОП (6); АДРЕС ПЕРЕХОДА (26);

R - для операционных команд;

КОП (6); Rs(5); Rt(5); Rd(5); Rl,(5); FUNC (6).

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

Команды загрузки/запоминания обеспечивают обмен данными между регистрами общего назначения и памятью. Адреса памяти формируются с использованием базового регистра и 16-разрядного смещения (1-формат).

Безусловные переходы выполняются либо по косвенному адресу (R-формат), либо по прямому адресу (J-формат). В последнем случае старшие биты адреса переходов добавляются из счетчика команд.

Команды управления системой обеспечивают работу с виртуальной памятью.

Команды работы с сопроцессором являются дополнительными, их форматы и состав зависят от типа используемого сопроцессора.

 

 

 

 

1.2. Архитектура  CISC

Основную идею CISC-архитектуры (Complete Instruction Set Computing)  отражает ее название - «полный набор команд». В данной архитектуре стремятся иметь отдельную машинную команду для каждого возможного (типового) действия по обработке данных. Основоположником CISC-архитектуры считается фирма IBM с архитектурой IBM/360. При этом подходе выполнение любой сколь угодно сложной команды из системы команд процессора реализовывается аппаратно внутри самого процессора. Исторически CISC-архитектура была одной из первых. Совершенствование процессоров шло по пути создания ВМ, способных выполнять как можно больше разных команд. Это упрощало работу программистов, которые писали программы на языке ассемблера (то есть практически на уровне машинных команд). Использование сложных команд позволяло сократить размер и время разработки программы.

 

В итоге сложились следующие черты организации CISC-процессоров:

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

 

CISC-подход, однако, привел  к тому, что некоторые команды  стало невозможно выполнять чисто  аппаратными средствами (при разумной  сложности таких средств). В результате  в процессорах появились блоки, «на лету» заменяющие наиболее сложные команды последовательностями из более простых команд. Мало того, практика показала, что многие сложные команды при написании программ оказывались просто невостребованны. Наконец, из-за высокой сложности команд и их обилия устройство управления ВМ приходилось строить только на основе программируемой логики, то есть с применением «медленной» управляющей памяти. Последнее обстоятельство существенно ограничивало возможности наращивания тактовой частоты процессора. Все эти факторы привели к повороту в сторону RISC-архитектуры.

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

 Именно поэтому ведущие  фирмы-производители ВМ (Intel, AMD, IBM и др.) в своих последних разработках, по-прежнему, не отказываются от CISC-подхода.

Рис.2 Схема архитектуры CISC

          Простейший идеальный CISC-процессор представлен на рисунке 1. Двумя центральными элементами в нем можно считать АЛУ и УУ, причем важность первого значительно выше. Однако наиважнейшими коммуникационными "магистралями" процессора, влияющих буквально на все происходящее в процессоре – это три шины: шина данных, шина адреса и шина управления.

        Центральным "вычислителем" является, вне сомнения, АЛУ. Данные в него подаются только из шины данных и, возможно, еще со счетчика повторенийцикла. Данные из АЛУ перед отправкой на шину накапливаются в аккумуляторе. Текущее состояние вычислений отслеживается в регистре флагов, из которого они считываются в шину данных. АЛУ также способно управлять стеком через регистры стека и адреса, напрямую управляющие запросами в шину адреса. Однако содержимое этих регистров также загружается из шины данных.

       Отметим, что стек в CISC-процессоре компенсирует недостаток регистров общего назначения – в стек можно записать содержимое любого РОН, также как и считать из него значение в любой РОН.

       Хотя "вычислителем" в процессоре является АЛУ, однако также вне всякого сомнения, для того, чтобы задавать последовательность операций в АЛУ необходимо устройство управления, которое по шине управления передает управляющие сигналы АЛУ. Собственно УУ работает, только получая инструкции после дешифратора команд, а последовательность команд задается программным счетчиком. В программном счетчике находится адрес следующейвыполняемой команды, поступающая на вход дешифратора команд и затем – в УУ. Данные в дешифратор и регистр программного счетчика загружаются пошине данных, а далее модифицируются по собственным алгоритмам.

Информация о работе Сравнительный анализ архитектур RISC и CISC