Reduced Instruction Set Computing
З Вікіпедії, вільної енциклопедії
З Вікіпедії, вільної енциклопедії
RISC (англ. Reduced Instruction Set Computing — обчислення зі скороченим набором команд) — архітектура процесорів зі скороченим набором команд. Також відома як «архітектура load-store», позаяк система команд такої архітектури не включає арифметико-логічних операцій з операндами у пам'яті. Для будь-якого оброблення даних їх спочатку слід завантажити (англ. Load) в регістр, виконати необхідні операції, а тоді зберегти (англ. Store) назад у пам'ять.
Ця стаття не містить посилань на джерела. (лютий 2020) |
Найвідоміші представники: ARC[en], Alpha, Am29000[en], ARM, AVR, Blackfin[en], i860, i960, M88000[en], MIPS, PA-RISC, Power Architecture[en] (включаючи PowerPC), RISC-V, SuperH, та SPARC.
Основними рисами RISC архітектури є:
Поштовхом для розробки RISC архітектури стало те, що тогочасні (середина 1970-х) компілятори не використовували більшість команд із набору CISC та не могли скористатися перевагами багатьох типів складної адресації. Виконання складних інструкцій CISC вимагало багатьох процесорних тактів, а реалізація різних типів адресування та інструкцій, що реалізовують високорівневі операції, займала більшість площі процесорного кристалу та майже не використовувалась.
RISC-процесори вважаються швидшими та більш економічними, ніж CISC.[1]
В ранні часи комп'ютерної індустрії програми створювались мовою асемблера. Таке програмування вимагало потужних інструкцій, що реалізують часто вживані високорівневі алгоритми. Тому розробники процесорів намагались вмістити в свій продукт якомога більше інструкцій, що виконують максимальну кількість роботи. Також до інструкцій ставились вимоги по зручності використання та універсальності. В кожній інструкції розробники намагалися реалізувати всі можливі типи адресації, тобто інструкції могли однаково працювати з операндами, які знаходяться як в пам'яті так і в регістрах чи безпосередньо закодованих в інструкції. Реально введення такої універсальності призводило до того, що кожна дія мала в процесорі декілька реалізацій, розрахованих на різні типи адресування. Крім того, в ті часи пам'ять була дуже дорогою, тому інструкції зі змінною довжиною, що одночасно виконують завантаження операндів та обчислення, були вигідні з точки зору зменшення розміру програми.
Також процесори мали дуже малу кількість регістрів. Це було обумовлено двома причинами:
На противагу RISC, вищезазначену архітектуру називають CISC (англ. Complex Instruction Set Computing).
Ряд наукових досліджень середини 1970-х років довів, що тогочасні компілятори не використовували переваги складної адресації, а також те, що більшість процесорів мали надлишковий набір інструкцій. Також було доведено, що в багатьох випадках складні інструкції виконувались повільніше, ніж аналогічний по функціональності набір простіших інструкцій. Відомим прикладом цьому була інструкція INDEX
комп'ютера VAX, яка виконувалась повільніше за її реалізацію на базі циклу (але при цьому вона займала менше місця у пам'яті, що було важливо в ті часи). Також, складні інструкції менше підлягали оптимізації під конкретну задачу (наприклад, заміна множення та ділення операціями зсуву).
Метою створення RISC-архітектури були такі потреби:
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.