RISC и CISC процесори


Категория на документа: Други


Тава е по-кратко работно копие пригодeно за контролното- Не отговарям за възникнали грешки и неточности (А.Алeксиев)
CISC
Какво е CISC?
CISC, което е съкращение от Complex Instruction Set Computer - ( компютър с комплексен набор инструкции) - е философия за проектиране на чипове, които са лесни за програмиране и използват паметта ефективно. Всяка инструкция в такъв набор CISC може да изпълни серия от операции вътре в процесора. Това намалява броя на инструкциите, необходими за изпълнение на дадена програма, и позволява на програмиста да научи малък, но гъвкав набор от инструкции.
Ще се вгледаме по-отблизо в решенията, които са довели до CISC:
1. Използвайте микрокод-
Най-ранните процесори, са използвали логика, която може да декодира и изпълнява всяка инструкция в набор инструкции на процесора. Това работи добре за прост дизайн с малък брой регистри, но е направило изграждането на по-сложни архитектури много трудно, тъй като тази логика може да бъде трудна за изпълнение. Така че, дизайнерите сменят тактиката - построяват проста логика, контролираща пътя между различните елементи, и се използва опростена конструкция микрокод да контролира данните за пътя на логиката. Този тип на изпълнение е известно като микропрограмно изпълнение.
В микропрограмна система, централният процесор има някаква вградена памет (обикновено ROM), която съдържа групи от микрокод инструкции, които съответстват на всяка инструкция от машинен език. Когато инструкцията на машинен език пристига в централния процесор, процесорът изпълнява съответната серия от инструкции микрокода.
Понеже инструкциите могат да бъдат получени до 10 пъти по-бързо от местна ROM памет отколкото от основната памет, дизайнерите започват да поставят колкото могат повече инструкции като микрокод.
Някои реални предимства на използването на микрокод:
Тъй като микрокод паметта може да бъде много по-бърза от основната памет, наборът от инструкции може да бъдат приложен в микрокод, без да губи много скорост.
Някои машини са оптимизирани за научни изчисления, докато други са оптимизирани за бизнес компютри. Всички те споделят един и същ набор инструкции и програмите биха могли да бъдат лесно преместени от машина на машина без повторно компилиране.
2.Изграждане на "богати" комплекти от инструкции
Едно от последствията от използването на микропрограмен дизайн е, че дизайнерът може да изгради по-голяма функционалност във всяка инструкция. Това не само ще намали от общия брой на инструкции, необходими за изпълнение на програмата, което прави по-ефективно използването на бавната основна памет, но също така ще направи живота на програмиста на асемблер много по-лесен.
Скоро, дизайнерите подобряват техните набори с инструкции, насочени специално към програмист на асемблер. Тези подобрения включват операции за манипулация на низове, специални циклични конструкции, както и специални режими за индексиране чрез таблици в паметта.
3.Изграждане на високо ниво инструкции
След като дизайнерите започнали да строят инструкции, удобни за програмиста, следващата логична стъпка била да се изгради комплект инструкции, които съпоставят директно от високо ниво езици. Това не само опростява задачата на компилатора, а и също така позволява на компилаторите да генерират по-малко инструкции на ред на изходния код.
Съвременните CISC микропроцесори, като 68000, прилагат няколко такива инструкции, включително практики за създаване и премахване на стека рамки с една команда.

Характеристики на CISC дизайн
Ограниченията, които са довели до развитието на CISC
дават на CISC комплекта от инструкции, някои общи характеристики:
-Формат с две операнди, където инструкциите имат източник и дестинация. Възможни комбинации: регистър_регистър; регистър_памет; памет_регистър.
-Множество режими на адресиране, включително специализирани режими за индексиране чрез масиви
-Инструкции с променлива дължина, която често варира в зависимост от дължината на адресацията.
-Инструкции, които изискват няколко цикъла, за да се изпълнят.
Идеалната машина CISC
В една идеална CISC машина, всяка завършена инструкция ще изисква само един машинен цикъл (което означава, че всеки етап ще завърши в част от цикъл.) В действителност, това е максималната възможна скорост за една машина, която изпълнява 1 инструкция в даден момент .
Една реалистична машина CISC
В действителност, някои инструкции могат да изискват повече от един машинен цикъл. Въпреки това, CISC дизайн може да толерира това забавяне, тъй като идеята зад CISC е да се запази малък общия брой на циклите, като сложни неща се случват в рамките на всеки цикъл.
CISC и Classic Equation Performance
Обичайното уравнение за определяне на изпълнение е сума за всички инструкции на (броят на циклите на инструкции * време инструкция цикъл) = време за изпълнение.
Това позволява да се ускори процесора по 3 различни начина --- използване на по-малко инструкции за дадена задача, намаляване на броя на циклите за някои инструкции, или забързване на часовника (намаляване на времето на цикъла).
CISC се опитва да намали броя на инструкции за дадена програма

Общи характеристики на Хардуерните архитектури
• Комплексна логика за декодиране на инструкции
• Малък брой регистри за общо
предназначение
• Специално предназначени регистри
• "Състояние код" регистъра
Предимствата на CISC
• По време на първоначалното им развитие, CISC машините използват наличните технологии за оптимизиране на работата на компютъра.
• Лекотата на микрокодирането на нови инструкции позволява на дизайнерите да направят CISC машините съвместими: на новият компютър могат да се ползват същите програми каквито са се ползвали и при по-старият компютър, тъй като новият компютър ще съдържа надмножество на инструкциите на по-ранните компютри.
• Способността на всяка инструкция да става по-способна води до намаляване на броя на инструкции, които да бъдат използвани за изпълнение на дадена задача. Това прави по-ефективно използването на основната памет.
Понеже микропрограмни комплекти от инструкции могат да бъдат написани, за да съответстват на конструкции на езици от високо ниво, компилаторът не трябва да бъде толкова сложен.

Недостатъците на CISC
Все пак, дизайнерите след време разбрали, че CISC философията на дизайн има своите собствени проблеми:
• Предишните поколения процесори от фамилията се съдържат като подмножество във всяка нова версия --- така наборът инструкции става по сложен с всяко ново поколение.




Сподели линка с приятел:





Яндекс.Метрика
RISC и CISC процесори 9 out of 10 based on 2 ratings. 2 user reviews.