Сравнительный анализ архитектур 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 Кб (Скачать файл)Им нужна производительность усложненных вычислений. Целые вычисления работают с целыми числами, для представления которых требуется меньшее число бит. Следовательно, они требуют меньше процессорных действий. Большинство бизнес-приложений, которые обеспечивают число заказанных изделий или вычисляют количество товаров на складе, используют главным образом усложненные вычисления.
Таблица 2. Достоинства и недостатки архитектур RISC и CISC.
RISC |
CISC | ||
Достоинства |
Недостатки |
Достоинства |
Недостатки |
Облегчается конвейерная, суперскалярная и другие виды параллельной обработки, планирование загрузки, предвыборка, переупорядочивание и т.д. |
Значительная загрузка локального интерфейса процессора (двунаправленная шина данных D, шина управления C, шина адреса A) |
Возможность выполнять большое количество разных инструкций. |
высокая стоимость аппаратной части; |
Более эффективно используется площадь кристалла (больше памяти – РОН, кэш). |
Сложность программирования. |
сложности с распараллеливанием вычислений. | |
Быстрее выполняется декодирование и исполнение команд – соответственно, выше тактовая частота. |
Затрачивается значительная доля времени на дешифрацию команды. |
Для обеспечения высокой скорости работы нужен конвейер процессора с большим количеством ступеней | |
Технология RISC не всегда подходит для применения в тех случаях, когда набор задач ограничен. Например, для сетевого оборудования встроенные вычислительные средства RISC, как правило, не подходят, поскольку большинство ситуаций, в которых вы можете оказаться, можно предвидеть, а использование для их решения множества небольших команд замедляет работу устройства. Технология CISC предпочтительна при решении большинства задач, так или иначе относящихся к серверам, поскольку требования к процессорам в данном случае легко предвидеть. С другой стороны, технология RISC предпочтительна в "непредсказуемых" случаях, например, при обслуживании баз данных и приложений.
Технология RISC не всегда подходит для применения в тех случаях, когда набор задач ограничен. Например, для сетевого оборудования встроенные вычислительные средства RISC, как правило, не подходят, поскольку большинство ситуаций, в которых вы можете оказаться, можно предвидеть, а использование для их решения множества небольших команд замедляет работу устройства. Технология CISC предпочтительна при решении большинства задач, так или иначе относящихся к серверам, поскольку требования к процессорам в данном случае легко предвидеть. С другой стороны, технология RISC предпочтительна в "непредсказуемых" случаях, например, при обслуживании баз данных и приложений.
Но все же CISC постепенно исчерпывает себя и немного тормозит развитие вычислительных способностей современных систем. К тому же, CISC процессоры сложны в проектировании и дороги в производстве и имеют проблемы с полноценным распараллеливанием вычислений (приходится постоянно оптимизировать софт).
Техническое задание
Введение
Настоящее техническое задание распространяется на разработку программы умножение двух чисел на языке ассемблера под архитектуры RISC и CISC. Настоящая программа предназначена для оценки преимуществ и недостатков каждой из этих архитектур.
Основание для разработки
Программа разрабатывается на основе учебного плана кафедры «Информатика и вычислительная техника» БФ СибГУТИ 2 курс.
Наименование работы: «Сравнительный анализ архитектур»
Исполнитель: студент группы И-121 Самойлова Т.А.
Соисполнители: нет.
Назначение
Настоящая программа предназначена для оценки преимуществ и недостатков каждой из архитектур персональных компьютеров RISC и CISC, а также для закрепления навыков программирования на языке ассемблера.
Требования к программе или программному изделию.
Требования к функциональным характеристикам:
Программа должна обеспечить возможность выполнения следующих функций:
- Умножение двух чисел;
- Вывод результата работы программы;
Требования к надежности:
Возможность проверки достоверности работы программы на тестовом примере.
Требования к составу и параметрам технических средств:
Программа должна быть доступна пользователям с такими операционными системами, как Windows 7, Windows XP.
Рекомендуемая конфигурация: Windows XP.
Требования к программной документации
Разрабатываемая программа должна быть самодокументирована, то есть содержать необходимые комментарии.
Разрабатываемая программа должна быть сопровождена справочной информацией о структуре и более подробным описанием некоторых особенностей разработки.
В состав сопровождающей документации должны входить:
пояснительная записка, содержащая описание разработки.
приложения, содержащие листинг программы и соответствующие скриншоты.
Разработка программ.
Программа умножения двух чисел написанная под архитектуру CISC на языке ассемблер.
.model small ;Модель памяти
.stack 100h ;Установка размера стека
.data ;Начало сегмента данных программы
a dw 6
b dw 3
c dw 0
.code ;Начало сегмента кода
start:
mov ax,a ;записываем в регистр ax значение переменной a
mov di,b ;записываем в регистр di значение переменной b
mul di ;умножаем
mov c,ax ;записываем результат в переменную c
mov ah, 09h ; функция вывода
mov dx,offset c ; вывод результата
int 21h
end start ;конец
Программа умножения двух чисел написанная под архитектуру CISC на языке программирования C++ с ассемблерной вставкой.
#include <iostream.h>
#include <conio.h>
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
void main()
{int a=0, b=0, c=0; //начало программы, объявление переменных
clrscr(); //функция очистки экрана
cout<<"vvedite a=";
cin>>a;
cout<<"vvedite b="; //
cin>>b; // ввод чисел
asm{ //ассемблерная вставка, позволяет выполнить код //на языке ассемблера прямо в программе turbo c
mov ax,a //записываем в регистр ax значение переменной a
di,b
//записываем в регистр di значение b
mul di // умножаем
mov c,ax // записываем результат в переменную с
} //конец выполнения кода на языке ассемблера
cout<<a<<"/"<<b<<"= "; //вывод результата
cout<<c;
getch();} //конец основной программы
Программа умножения двух чисел, написанная под архитектуру RISC.
in a, Dec считывание первого числа a.
in b, Dec считывание второго числа b.
mul c, a, b вычислить произведение c =a *b.
out c, Dec напечатать содержимое с
lc d, '\n' записать код символа в d
out d, ASCII напечатать содержимое d, как ASCII
hlt стоп
Заключение.
В данной курсовой работе рассмотрены архитектуры RISC и CISC. Был проведен сравнительный анализ этих архитектур.
RISC архитектуры имеют значительно упрощенную структуру по сравнению с СISC архитектуры. Это обусловлено меньшим набором операций, которые используются в процессоре. Меньше набор команд меньше элементов нужно для их реализации, меньше площадь на кристалле, также упрощается управляющий блок. В специализированных процессорах для каждой конкретной задачи необходим свой определенный набор команд, значит целесообразно использовать именно RISC архитектуру микропроцессора.
Так с помощью использования специализированных RISC процессоров можно ускорить выполнения ряда задач, в мире наблюдается тенденция на распространения использования подобных процессоров.
Можно предположить, что число задач, решаемых подобным образом будет увеличиваться, как будет увеличиваться и количество типов процессоров, предназначенных для их решения.
CISC постепенно исчерпывает себя
и немного тормозит развитие вычислительных
способностей современных систем. К тому
же, CISC процессоры сложны в проектировании и дороги в производстве и имеют проблемы с полноценным распараллеливанием вычислений (приходится постоянно оптимизировать софт).
Список используемой литературы.
.
- «В помощь студентам», http://studentpmr.ru/?p=21309
- Каган Б.М. «Электронно-вычислительные машины и системы» Москва «Радио и связь»2011г.
- Новиков Ю.В. , Скоробогатов П.К. «Основы микропроцессорной техники». 2009
- Пирогов В. Ю, «Assembler учебный курс» Москва Издатель Молгачева С.В. 2001
- «Сайт учебные материалы»http://gendocs.ru/
v6210/%D0%BF%D1%80% D0%BE%D1%86%D0%B5%D1%81%D1%81% D0%BE%D1%80%D1%8B_risc_%D0%B8_ cisc - Смирнов А.Д. «Архитектура вычислительных систем» Москва «Радио и связь» 2010 г.
- Самоучители по ассемблеру в задачах и примерах, самоучитель по Tasm 3.0.
- «Учебные материалы для студент
ов», http://studdi.ru/lection/ avs/ lection3.html - «Форум программистов и сисадминов », http://www.cyberforum.ru/
- Цилькер Б.Я., Орлов С.А. «Организация ЭВМ и систем». Спб.: Питер 2009
Приложение.
Скриншоты.
Рисунок 1. Результат работы программ
Листинг программы.
Файл cisc.asm
.model small
.stack 100h
.data
x dw 6
y dw 3
z dw 0
.code
mov ax,x
mov di,y
div di
mov z,ax
mov ah, 09h
mov dx,offset z
int 21h
end start
Файл kurs.cpp.
#include <iostream.h>
#include <conio.h>
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
void main()
{int a=0, b=0, c=0;
clrscr();
cout<<"vvedite a=";
cin>>a;
cout<<"vvedite b=";
cin>>b;
asm{
mov ax,a
mov di,b
mul di
mov c,ax
}
cout<<"rezultat";
cout<<a<<"*"<<b<<"= ";
cout<<c;
getch();}
Файл risc.asm