Сравнительный анализ архитектур 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 Кб (Скачать файл)

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

 

Базовый набор команд 32-разрядного процессора обеспечивает выполнение операций над операндами, которые находятся в регистре, памяти или непосредственно в команде. В набор входят безадресные, одно-, двух- и трехадресные команды. Процессор реализует следующие шесть типов двухадресных команд:

- регистр—регистр;

- память — регистр;

- непосредственный операнд  — регистр;

- регистр — память;

- память — память;

- непосредственный операнд  — память.

Операнды могут содержать 8, 16 или 32 разряда. Для реализации различных типов команд определены форматы, задающие порядок размещения информации о выполняемой операции и способах выбора операндов.

Общий формат команд

Обобщенный вид формата команды допускает наличие следующих полей: кода операции (1 или 2 байта); байтов адресации (О, 1 или 2 байта); байтов смещения (0, 1,2 или 4 байта); байтов непосредственных данных — операндов (0,1,2 или 4 байта). Команды содержат от 1 до 11 байт. Проведенные оценки показывают, что в среднем длина команды составляет 4 — 5 байт.

В процессоре осуществляются следующие способы адресации операндов:

- непосредственная адресация;

- регистровая адресация;

- косвенно-регистровая адресация;

- прямая адресация;

- базовая адресация;

- индексная адресация;

- базово-индексная адресация;

- базово-индексная адресация  со смещением.

 

 
1.3. Архитектура MISC

 

MISC-архитектура отличается наилучшей эффективностью и простотой в сравнении с CISC и RISC. Может содержать в себе блок RISC, обрабатывающий в себе от 10 базовых команд (+, -, /, *, if, else & etc), из которых формируются более сложные операции над значениями, методом ветвления полученных результатов в ПЗУ. С точки зрения быстродействия, время выполнения инструкции, скорость записи и передачи данных в память, сократилось бы в разы, так как не нужно было бы ожидать, пока заполнится и очистится конвейер, а выполнять всё "потоково" без задержек.

Причиной, по которой данная архитектура не стала популярной в компьютерных технологиях – сложность написания программ под различные процессоры. Ведь все нюансы по подбору методов вычисления и оптимизаций возлагались на плечи программистов. К тому же, с повышением сложности выполняемых задач, требовалось более сложное ПО, что тормозило бы развитие микропроцессорного рынка. Поэтому, было разумнее переложить и стандартизировать процессы выполнения стандартных формул (инструкций) на плечи процессорных специализированных блоков и написать программу «дирижёр», которая управляла бы этими процессами (как в CISC).

Тем не менее, если встроить в данные процессоры более совершенный блок инструкций, который декодировал бы их на аппаратном уровне, то равных по производительности\ энергоэффективности и простоте, данному процессору практически не нашлось бы.

Первая вариация данного процессора под названием MuP21, имеет вычислительную способность 100 MIPS, при техпроцессе 1.2 мкм, энергопотребление 50 мВт. Работает процессор на 100 мГц и количество транзисторов равно 7000 штук.

У Pentium 1 (60 МГц) с 3.1 млн. транзисторов, 0,8 мкм и до 15 ватт энергопотреблением, вычислительные возможности были примерно на том же уровне.

 

 

Рис.3 Схема архитектуры MISC

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2. Практическая часть

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

 

Двумя основными архитектурами набора команд, используемыми компьютерной промышленностью на современном этапе развития вычислительной техники, являются архитектуры CISC и RISC.

Таблица 1 “Сравнение характеристик RISC и CISC”

 

RISC

CISC

Основоположник,

модель

CDC6600 (Крэй)

IBM, IBM/360

Лидер, сегодня

Alpha, PowerPC, SPARC

x86

Рынок

Высокопроизводительные компьютеры (стоимость ПО не настолько существенна)

Персональные ЭВМ

(благодаря совместимости  с программным обеспечением младших  моделей, общая стоимость которого - в начале 90-х годов - составила  несколько миллиардов долларов  США)

Реализация

Аппаратная

Микропрограммная (интерпретация)

Число регистров общего назначения

большое

Небольшое

Формат команд

команды фиксированной длины и фиксированного формата

большое количество форматов команд различной разрядности

Адресация

простые методы адресации, трехадресный формат команд

большое количество методов адресации, преобладание двухадресного формата команд


 

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

Им нужна производительность усложненных вычислений. Целые вычисления работают с целыми числами, для представления которых требуется меньшее число бит. Следовательно, они требуют меньше процессорных действий. Большинство бизнес-приложений, которые обеспечивают число заказанных изделий или вычисляют количество товаров на складе, используют главным образом усложненные вычисления.

Таблица 2 “Сравнение достоинств и недостатков архитектур”

RISC

CISC

Достоинства

Недостатки

Достоинства

Недостатки

Облегчается конвейерная, суперскалярная и другие виды параллельной обработки, планирование загрузки, предвыборка, переупорядочивание и т.д.

Значительная загрузка локального интерфейса процессора( двунаправленная шина данных D, шина управления C, шина адреса A)

Возможность выполнять большое количество разный инструкций.

высокая стоимость аппаратной части;

Более эффективно используется площадь кристалла (больше памяти – РОН, кэш).

Сложность программирования.

 

сложности с распараллеливанием вычислений.

Быстрее выполняется декодирование и исполнение команд – соответственно, выше тактовая частота.

Затрачивается значительная доля времени на дешифрацию команды.

 

Для обеспечения высокой скорости работы нужен конвейер процессора с большим количеством ступеней




     

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

Технология CISC предпочтительна при решении большинства задач, так или иначе относящихся к серверам, поскольку требования к процессорам в данном случае легко предвидеть. С другой стороны, технология RISC предпочтительна в "непредсказуемых" случаях, например, при обслуживании баз данных и приложений.

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

 

2.2. Техническое задание

Введение

Настоящее техническое задание распространяется на разработку программы, определяющей количество элементов, равных регистру bl (результат помещается в регистр al).

 

Основание для разработки

  1. Программа разрабатывается на основе учебного плана кафедры  «Информатика и вычислительная техника» БФ СибГУТИ 2 курс.
  2. Наименование работы: «Сравнительный анализ архитектур»
  3. Исполнитель: студент группы И-121  Зубков М.В.
  4. Соисполнители: нет.

 

Назначение

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

 

Требования к программе или программному изделию.

  1. Требования к функциональным характеристикам:

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

- Сравнение элементов  массива со значением регистра bl;

- Вывод результата работы программы в регистр al;

 

 

  1. Требования к надежности:

   Возможность проверки  достоверности работы программы  на тестовом примере.

  1. Требования к составу и параметрам технических средств:

Программа должна быть доступна пользователям с такими операционными системами, как Windows 7, Windows XP.

Рекомендуемая конфигурация: Windows XP.

 

Требования к программной документации

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

    1. пояснительная записка, содержащая описание разработки.
    2. приложения, содержащие листинг программы.

 

2.3. Разработка  программы

Программа, определяющая сколько в массиве элементов равны регистру bl. Результат помещается в регистр al.

 

 

(MASM x64)

.model small

.stack 100h

.8086

.data

buff db 10,11,13,13,14,12,15,14

counter db 0

.code

start:

mov ax,@data       

mov ds,ax  

mov bl,14

mov cx,sizeof buff     ;размер  массива

mov si,offset buff     ;адрес  массива в si

@compare:              ;цикл сравнений

cmp bl,byte ptr [si]   ;сравнить содержимое регистра bl с элементом массива

jne @next              ;если не равно переход по  метке

inc [counter]          ;иначе увеличить счетчик на 1

@next:

inc si                 ;увеличить адрес массива на 1(сл.элемент)

loop @compare          ;выполнять цикл пока cx не равно 0

mov al,counter                      

mov ax,0C07h        ;ожидать нажатие клавиши   

int 21h        

mov ax, 4C00h       ;завершить выполнение программы 

int 21h

end start

 

 

 

 

(FASM x32)

Use32

org 100h

.data

buff db 10,11,13,13,14,12,15,14

counter db 0

.code

start:

mov ax,@data       

mov ds,ax  

mov bl,14

mov cx,sizeof buff     ;размер  массива

mov si,offset buff     ;адрес  массива в si

@compare:              ;цикл сравнений

cmp bl,byte ptr [si]   ;сравнить содержимое регистра bl с элементом массива

jne @next              ;если не равно переход по  метке

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