CISC архитектура

advertisement
CISC архитектура
Мокшин Павел, 12225
Наборы команд
• Набор команд (instruction set) – позволяет писать
программы
• Существует несколько архитектур набора команд: CISC,
RISC, VLIW и др.
Что такое CISC?
• CISC (англ. Complex Instruction Set Computing) –
«компьютер с полным набором команд»
• Архитектура получила такое название после появления
термина RISC (Reduced Instruction Set Computing)
Черты CISC
• Команды имеют разную длину и время исполнения
• Команды поддерживают несколько режимов адресации
• Многие команды работают напрямую с памятью, а не с
регистрами
• Поддерживаются структуры данных и команды,
характерные для языков программирования высокого
уровня
• Малое количество регистров общего назначения
Количество команд
• То что набор команд «сложный» не означает что команд
много
• У многих RISC процессоров не меньше команд, чем в CISC
• Например, у CISC процессора компьютера PDP-8 было
всего 8 основных команд:
000 – AND – AND the memory operand with AC.
001 – TAD – Two's complement ADd the memory operand to <L,AC> (a 12
bit signed value (AC) w. carry in L).
010 – ISZ – Increment the memory operand and Skip next instruction if result is
Zero.
011 – DCA – Deposit AC into the memory operand and Clear AC.
100 – JMS – JuMp to Subroutine (storing return address in first word of subroutine).
101 – JMP – JuMP.
110 – IOT – Input/Output Transfer.
111 – OPR – microcoded OPeRations
Почему CISC такой?
• Раньше программы писались на языках низкого уровня
(например, на ассемблере). Программы были большими и
труднопонимаемыми.
• Сложные команды, делающие сразу много действий,
позволяли сократить размер кода
• С появлением языков высокого уровня, процессоры стали
реализовывать инструкции, напрямую использовавшие
возможности этих языков
• Память была медленная и дорогая. CISC инструкции
спроектированы так, чтобы минимизировать количество
обращений в память
• Кроме того, размеры памяти были малы, компьютеры не
могли хранить большие программы
CISC и RISC подход
• Хотим умножить 2 числа в
ячейках 1:3 и 4:2, а
результат положить в 1:3
• Процессор имеет 4 регистра
A, B, C и D
CISC
• MUL 1:3, 4:2
RISC
• LOAD A, 1:3
LOAD B, 4:2
PROD A, B
STORE 1:3, A
Недостатки
• Сложность аппаратной части из-за различий в формате,
длине и времени исполнения команд
• Высокая стоимость
• Большинство компиляторов языков высокого уровня
использует от силы 20% команд из набора команд CISC
процессора
В настоящее время
• CISC переняла многие идеи от RISC архитектуры, такие как
конвейеризация, и в чистом виде уже не встречается
• Раньше все х86-процессоры являлись CISC-процессорами,
однако новые процессоры, начиная с Intel Pentium Pro,
являются CISC-процессорами с RISC-ядром. Они
непосредственно перед исполнением преобразуют CISCинструкции процессоров x86 в более простой набор
внутренних инструкций RISC
Спасибо за внимание!
Download