Друга подобна би чела едно число от паметта, друго
от регистър и записвала резултата в паметта.
Тази философия в проектирането станала известна като CISC (Complex Instruction Set Computer)
Целта била да се реализират възможните вариации на дадена инструкция, като този принцип е известен като “orthogonality”
1964 Излиза Системата/360
1975 801 проект,иницииран от IBM’s Watson Research
Center
Такива процесори започват да се произвеждат през 1971 година от компанията Intel.
През 1978 година компанията пуска модела i8086, което
дава начало на производството на семейството
процесори x86. Не всички модели на това семейство могат да бъдат причислени към СISC процесорите, тъй като 486 процесорът имал комбинирана архитектура - CISC-процесор и RISC-ядро.
Моделът 486 става последния от семейството на x86, а
на смяна идва новото семейство на Pentium-ите.
Освен компанията Intel съществуват и други компании- гиганти, произвеждащи CISC-процесори, като AMD, Cyrix, IDT .
Технологията CISC (Complex Instruction Set Computer) е
свързана с традиционните процесори, при които се поддържат множество инструкции, изпълнявани за различно време. Това време е в зависимост от типа на инструкцията, дължината, метода за адресиране на операндите и пр.
Като правило в традиционният CISC-процесор инструкцията се реализира като група от няколко байта в паметта, като
управлението се извършва от микропрограмно устройство.
Последното извлича конкретна микропрограма,
съответстваща на изпълняваната инструкция след което реализира последователност от действия - елементарни операции, определяни от включените в микропрограмата микроинструкции.
Така всяка инструкция се изпълнява за различен брой стъпки (тактове) в зависимост от броя на микроинструкциите в тази микропрограма.
При тази технология се предполага, че по-голяма група инструкции ще бъде реализирана за
апаратно изпълнение (броят на машинните
команди в съвременните CISC микропроцесори е над 250).
Това прави електронната структура на микропроцесора доста по-сложна.
Командите са с различни формати, а
управлението на изпълнителните устройства в микропроцесора е сложно, което води до по- намаляване на производителността
(бързодействие) и недостиг на място върху
кристала за разполагане на други елементи като например кеш памет.
System/360
PDP-11
VAX
Motorola 68k
От този тип са микропроцесорите на Intel
използвани в РС системите, Z80 на фирмата Zilog, както и всички микропроцесори съвместими с Intel – AMD, Cyrix, Texas Instruments и др.
Микропроцесорите i8086/i8088 имат базова система команди, която се съдържа във всички следващи модификации от фамилията х86. Във
всяка модификация х86 се добавят нови команди, които разширяват базовата система, и се
обуславят от новите архитектурни решения
въвеждани във новите модели микропроцесори.
Ограниченията, които са довели до развитието
на CISC ( бавна памет и факта, че повечето ранни машини са били програмирани
на асемблер) дават на
CISC набора инструкции, някои общи характеристики:
A 2-операнд формат, където инструкциите имат източник и дестинация. Регистер до регистер , регистер до памет, и памет до регистер команди. Много видове
адресации за паметта, включително специализирани видове за масиви:
Променлива дължина която често варира според
адресацията
Инструкции, които често изискват многобройни цикли,
Включването на по-стари набори инструкции в новите поколения процесори допринася за нарастването на сложността.
Много от специализираните CISC инструкции не се използват достатъчно често за да оправдаят тяхното наличие.
Тъй като всички CISC команди се транслират от процесора в десетки или дори стотици
редове микрокод, те започват да се изпълнят по-бавно от еквивалентна последователност от по-прости команди, които обаче не се
нуждаят от такова транслиране.
За да се поддържат по-високи скорости на процесорите били необходими повече регистри, за които пък е нужно повече място в чипа, които може да се осигури с опростяване на архитектурата
Програмите изпълняват предимно последователност прости операции които биха могли да се изпълняват за single clock cycle
Стремежът към опростяване на инструкциите”reduced instructions” довел то резултат наречен ”reduced instruction set computer”(RISC)
История
1979 32-bit RISC микропроцесори (801) изобретени от Joel Birnbaum
В началото на 1990s IBM’s POWER (Performance Optimization With Enhanced RISC) архитектура въвежда w/ the RISC System/6k
AIM (Apple, IBM, Motorola) сформиран от алианса, дава резултати в
PowerPC.
Първите RISC проекти идват от IBM,Stanford и UC-Berkeley в края на 70-те и началото на 80-те. IBM 801, Stanford MIPS, и Berkeley RISC 1 и 2 били създадени с подобни философии
,наричани RISC. Някои характеристики на
дизайна са характерни за повечето RISC процесори:
RISC, или Reduced Instruction Set Computer, е
вид на микропроцесорна архитектура, която изпо лзва малък, високо оптимизиран набор от
инструкции, по-специализиран набор от инструкции, които често се срещат в други видове архитектури.
Един цикъл на изпълнение : RISC има CPI
(часовник за инструкции) на един цикъл. Това се дължи на оптимизиране на всяка инструкция на процесора и техника, наречена PIPELINING
Pipelining: техника, която дава възможност за едновременно изпълнение на части, или етапи, на инструкции за по-
ефективни процеси инструкции;
Apple iPods (custom ARM7TDMI SoC)
Apple iPhone (Samsung ARM1176JZF)
Palm and PocketPC PDAs and smartphones (Intel XScale family, Samsung SC32442 - ARM9)
Nintendo Game Boy Advance (ARM7)
Nintendo DS (ARM7, ARM9)
Sony Network Walkman (Sony in-house ARM based chip)
Some Nokia and Sony Ericsson mobile phones
Тази технология предполага, че изпълнителното устройство на микропроцесора работи с не голям брой машинни инструкции (например до 50), които имат еднакъв формат. По този начин, се реализират няколко предимства: схемата на микропроцесора е опростена (малко на брой устройства за обработка на
информацията); върху процесорната пластина се освобождава място за вграждане на по-голям обем бърза памет (кеш – памет); увеличава се бързодействието на микропроцесора поради еднородността на командите (инструкциите) и по-лесното им дешифриране.
За повишаване на производителността на RISC процесорите обикновено се работи с машинни думи с голяма дължина (над 64
бита) Недостатък на тези технологии са по-сложните процедури при изготвяне на програмното обезпечаване, поради необходимостта от разработване на алгоритми използващи по-малък брой и по-прости машинни команди
Представители на тази тенденция в микропроцесорните технологии
Тези микропроцесори се използват за вграждане в компютърни системи използвани като сървъри в компютърните мрежи, както и в КС от типа Macintosh на Apple.
RISC-процесорите работят с ограничено множество от
инструкции и се характеризират със следното:
броят на инструкциите и различните видове адресиране на
операндите са намалени (ограничени са до най-
необходимите) и са въведени явни команди за зареждане и
запис (Load/Store архитектура) на регистрите;
използват се прости инструкции с еднаква дължина, равна на дължината на машинната дума и общ формат (определя еднакъв и минимален брой тактове за изпълнение на
инструкциите);
операциите са от тип регистър-регистър с три адресна структура от типа (R1)+(R2)® R3, които се изпълняват за един машинен такт (това налага голям брой регистри);
премахва се микропрограмното управление (използва се
твърда логика за всяка инструкция);
комуникациите с паметта са на основата на инструкции за зареждане и съхраняване на данни;
При RISC-процесорите се търси ефективно
натоварване (запълване) на вътрешния конвейер, което води до по-висока производителност. За целта управляващото програмно осигуряване
трябва да поддържа ефективна конвейеризация на RISC-инструкциите, което се подпомага от
опростеното предварително извличане и изпълнение.
Равномерните по дължина инструкции водят до увеличено запълване на конвейера и оптимално използване на регистровата памет на процесора.
Докато различни процесори имат различен брой стъпки, те са
основно вариации на тези пет, които се използват в MIPS процесор R3000: