Сравнительный анализ архитектур RISC и CISC
Автор работы: Пользователь скрыл имя, 23 Июня 2014 в 08:28, курсовая работа
Краткое описание
Цель курсового проекта: В ходе выполнения данного курсового проекта необходимо рассмотреть существующие виды архитектур процессоров, охарактеризовать их преимущества и недостатки. Для достижения данной цели есть необходимость выделить следующие основные задачи:
Повторить и закрепить теоретический материал;
Детально рассмотреть какую-либо архитектуру;
Сравнить архитектуры RISC и CISC.
Содержание
Введение.3
1.Теоретическая часть.4
Понятие и основные виды архитектуры ЭВМ4
Архитектура CISC5
Архитектура MISC8
Архитектура RISC9
2. Практическая часть14
Сравнительный анализ архитектур RISC и CISC 14
Техническое задание 16
Разработка программы.17
Заключение19
Список использованной литературы20
Приложение21
Скриншоты21
Листинг программы22
Вложенные файлы: 1 файл
Курсовая по ЭВМ.docx
— 466.79 Кб (Скачать файл)Федеральное агентство связи
Бурятский филиал
Государственного образовательного бюджетного учреждения
высшего профессионального образования
«СИБИРСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ
ТЕЛЕКОММУНИКАЦИЙ И ИНФОРМАТИКИ»
Кафедра информатики и вычислительной техники
Допустить к защите
Зав. кафедрой_________
______Рабданова В.В.___
|
Сравнительный анализ | |
архитектур RISC и CISC |
КУРСОВАЯ РАБОТА
Пояснительная записка
БФ ФГОБУ СибГУТИ 230100.000 ПЗ
Руководитель /Гарипова Г. Х./
Студент /Самойлова Т. А. /
Факультет информационных технологий и экономики
Группа И- 121
2014г.
Содержание
Введение.3
1.Теоретическая часть.4
Понятие и основные виды архитектуры ЭВМ4
Архитектура CISC5
Архитектура MISC8
Архитектура RISC9
2. Практическая часть14
Сравнительный анализ архитектур RISC и CISC 14
Техническое задание 16
Разработка программы.17
Заключение19
Список использованной литературы20
Приложение21
Скриншоты21
Листинг программы22
Введение
На данном этапе научно-технического развития выбор аппаратной платформы и конфигурации системы представляет собой чрезвычайно сложную задачу. Это связано, в частности, с характером прикладных систем, который в значительной степени может определять рабочую нагрузку вычислительного комплекса в целом. Однако часто оказывается просто трудно с достаточной точностью предсказать саму нагрузку, особенно в случае, если система должна обслуживать несколько групп разнородных по своим потребностям пользователей. Следует отметить, что выбор той или иной аппаратной платформы и конфигурации определяется и рядом общих требований, которые предъявляются к характеристикам современных вычислительных систем. К ним относятся: отношение стоимость/ производительность, надежность и отказоустойчивость, масштабируемость, совместимость и мобильность программного обеспечения. Основная задача при проектировании всего ряда моделей системы RISC заключалась в создании такой архитектуры, которая была бы одинаковой с точки зрения пользователя для всех моделей системы независимо от цены и производительности каждой из них. Огромные преимущества такого подхода, позволяющего сохранять существующий задел программного обеспечения при переходе на новые модели были быстро оценены как производителями компьютеров, так и пользователями и начиная с этого времени практически все фирмы-поставщики компьютерного оборудования взяли на вооружение эти принципы, поставляя серии совместимых компьютеров.
Предмет исследования: Архитектуры процессоров.
Цель курсового проекта: В ходе выполнения данного курсового проекта необходимо рассмотреть существующие виды архитектур процессоров, охарактеризовать их преимущества и недостатки. Для достижения данной цели есть необходимость выделить следующие основные задачи:
Повторить и закрепить теоретический материал;
Детально рассмотреть какую-либо архитектуру;
Сравнить архитектуры RISC и CISC.
- Теоретическая часть.
Понятие и основные виды архитектуры ЭВМ.
Архитектура вычислительной машины (англ. сomputer architecture) – концептуальная структура вычислительной машины, определяющая проведение обработки информации и включающая методы преобразования информации в данные и принципы взаимодействия технических средств и программного обеспечения.
Среди архитектур персональных компьютеров выделяют:
- по разрядности интерфейсов
и машинных слов: 8-, 16-, 32-, 64-разрядные
(ряд ЭВМ имеет и иные разрядности);
- по особенностям набора регистров, формата команд и данных: CISC, RISC, MISC;
CISC (англ. Complex instruction set computing, компьютер
с полным набором команд) — концепция проектирования
процессоров, которая характеризуется
набором свойств;
RISC (англ. restricted (reduced) instruction set computer — компьютер с сокращённым набором команд) — архитектура процессора, в котором быстродействие увеличивается за счёт упрощения инструкций, чтобы их декодирование было более простым, а время выполнения — меньшим.
MISC (компьютер с минимальным набором команд, Minimal Instruction Set Computer) – архитектура для проектирования процессора, которая отличается наилучшей эффективностью и простотой в сравнении с CISC и RISC.
По количеству центральных процессоров: однопроцессорные, многопроцессорные, суперскалярные.
Архитектура современного персонального компьютера подразумевает такую логическую организациюаппаратных компонент компьютера, при которой все устройства связываются друг с другом через магистраль, включающую в себя шины данных, адресов и управления.
Важной составляющей частью архитектуры ЭВМ является система команд. Система команд ЭВМ включает:
- команды выполнения арифметических и логических операций
-команды управления (это, прежде всего команды условного и безусловного перехода, команды обращения к подпрограмме)
-команды передачи данных (копируют информацию из одного места в другое
-команды ввода и вывода информации для обмена с внешними устройствами
При построении системы команд для современных компьютеров существует два взаимно конкурирующих направления:
1. компьютер с полным набором команд CISC (Complex Instruction Set Computer)
2. компьютер с ограниченным набором - RISC (Reduced Instruction Set Computer).
Разделение возникло из-за того, что основную часть времени компьютеру приходится выполнять небольшую часть из своего набора команд, остальные же используются эпизодически . Таким образом, если существенно ограничить набор операций до наиболее простых и коротких, зато тщательно оптимизировать их, получится достаточно эффективная и быстродействующая RISC-машина. Правда за скорость придется платить необходимостью программной реализации «отброшенных» команд, но часто эта плата бывает оправданной: например, для научных расчетов или машинной графики быстродействие существенно важнее проблем программирования.
Архитектура CISC.
CISC (Complete Instruction Set Computer) – полный набор команд микропроцессора.
Состав и назначение их регистров существенно неоднородны, широкий набор команд усложняет декодирование инструкций, на что расходуются аппаратные ресурсы. Возрастает число тактов, необходимое для выполнения инструкций. К процессорам с полным набором инструкций относится семейство х86.
CISC-процессоры выполняют
большой набор команд с развитыми
возможностями адресации, давая
разработчику возможность выбрать
наиболее подходящую команду
для выполнения необходимой операции.
В применении к 8-разрядным МК
процессор с CISC-архитектурой может
иметь однобайтовый, двухбайтовый
и трехбайтовый (редко четырехбайтовый)
формат команд. Время выполнения
команды может составлять от 1
до 12 циклов. К МК с CISC-архитектурой
относятся МК фирмы Intel с ядром
MCS-51, которые поддерживаются в
настоящее время целым рядом
производителей, МК семейств НС05,
НС08 и НС11 фирмы Motorola и ряд других.
К типу CISC можно отнести практически все ВМ, выпускавшиеся до середины 80-х годов и значительную часть из выпускаемых в настоящее время.
Рис.1 схема процессора CISC.
Простейший идеальный CISC-процессор представлен на рисунке 1. Двумя центральными элементами в нем можно считать АЛУ и УУ, причем важность первого значительно выше. Однако наиважнейшими коммуникационными "магистралями" процессора, влияющих буквально на все происходящее в процессоре – это три шины: шина данных, шина адреса и шина управления.
Центральным "вычислителем" является АЛУ. Данные в него подаются только из шины данных и, возможно, еще со счетчика повторений цикла. Данные из АЛУ перед отправкой на шину накапливаются в аккумуляторе. Текущее состояние вычислений отслеживается в регистре флагов, из которого они считываются в шину данных. АЛУ также способно управлять стеком через регистры стека и адреса, напрямую управляющие запросами в шину адреса. Однако содержимое этих регистров также загружается из шины данных.
Отметим, что стек в CISC-процессоре компенсирует недостаток регистров общего назначения – в стек можно записать содержимое любого РОН, также как и считать из него значение в любой РОН.
Хотя "вычислителем" в процессоре является АЛУ, для того, чтобы задавать последовательность операций в АЛУ необходимо устройство управления, которое по шине управления передает управляющие сигналы АЛУ. Собственно УУ работает, только получая инструкции после дешифратора команд, а последовательность команд задается программным счетчиком. В программном счетчике находится адрес следующей выполняемой команды, поступающая на вход дешифратора команд и затем – в УУ. Данные в дешифратор и регистр программного счетчика загружаются по шине данных, а далее модифицируются по собственным алгоритмам.
Помимо основных каналов движения информации в CISC-процессоре, на рисунке 1 не показаны многие внутренние, "зашитые" в процессор взаимодействия, которые, не внося в схему ничего более значимого, только бы загромоздили бы ее.
Характерные для CISC способы решения проблемы семантического разрыва, вместе с тем ведут к усложнению архитектуры ВМ, главным образом устройства управления, что, в свою очередь, негативно сказывается на производительности в целом. Кроме того, в CISC очень сложно организовать эффективный конвейер команд, который, как уже отмечалось, является одним из наиболее перспективных путей повышения производительности ВМ. Все это заставило более внимательно проанализировать программы, получаемые после компиляции с ЯВУ. Был предпринят комплекс исследований, в результате которых обнаружились интересные закономерности:
Реализация сложных команд, эквивалентных операторам ЯВУ, требует увеличения емкости управляющей памяти в микропрограммном УУ. Микропрограмм - как их доля в общем объеме программы зачастую не превышает 0,2%.
В откомпилированной программе операторы ЯВУ реализуются в виде процедур (подпрограмм), поэтому на операции вызова процедуры и возврата из нее приходится от 15 до 45% вычислительной нагрузки.
При вызове процедуры вызывающая программа передает этой процедуре некоторое количество аргументов. 98% случаев число передаваемых аргументов не превышает шести. Примерно такое же положение сложилось и с параметрами, которые процедура возвращает вызывающей программе. Более 80% переменных, используемых программой, являются локальными, то есть создаются при входе в процедуру и уничтожаются при выходе из нее. Количество локальных переменных, создаваемых отдельной процедурой, в 92% случаев не превышает шести.
Почти половину операций в ходе вычислений составляет операция присваивания, сводящаяся к пересылке данных между регистрами, ячейками памяти или регистрами и памятью.
Чтобы машинный код CISC-компьютеров из-за сложных инструкций не разрастался до огромного размера, машинные инструкции в большинстве этих архитектур имели неоднородную структуру (разное расположение и размеры кода операции и ее операндов) и сильно отличающуюся длину (в x86, например, длина инструкций варьируется от 1 до 15 байт). Еще одной проблемой стало то, что при сохранении приемлемой сложности процессора многие инструкции, оказалось, принципиально невозможно выполнить "чисто аппаратно", и поздние CISC-процессоры были вынуждены обзавестись специальными блоками, которые "на лету" заменяли некоторые сложные команды на последовательности более простых. В результате все CISC-процессоры оказались весьма трудоемкими в проектировании и изготовлении.
К моменту расцвета CISC-архитектур стало ясно, что все эти конструкции изобретались в общем-то зря - исследования программного обеспечения того времени, проведенные IBM, наглядно показали, что даже программисты, пишущие на ассемблере, все эти "сверхвозможности" почти никогда не использовали, а компиляторы языков высокого уровня - и не пытались использовать.
К началу восьмидесятых годов классические CISC полностью исчерпали себя. Расширять набор инструкций в рамках этого подхода дальше не имело смысла, наоборот - технологи столкнулись с тем, что из-за высокой сложности CISC-процессоров оказалось трудно наращивать их тактовую частоту, а из-за "тормознутости" оперативной памяти тех времен, зашитые в память процессора расшифровки сложных инструкций зачастую работают медленнее, чем точно такие же цепочки команд, встречающиеся в основной программе. Короче говоря, стало очевидным, что CISC-процессоры нужно упрощать - и на свет появился RISC, Reduced Instruction Set Computer.
Для CISC-процессоров характерно:
- сравнительно небольшое число регистров общего назначения;
- большое количество машинных команд, некоторые из которых нагружены семантически аналогично операторам высокоуровневых языков программирования и выполняются за много тактов;
- большое количество методов адресации;
- большое количество форматов команд различной разрядности;
- преобладание двухадресного формата команд;
наличие команд обработки типа регистр-память.
Недостатки архитектуры CISC.
- высокая стоимость аппаратной части;
- сложности с распараллеливанием вычислений.