Сховище керування — це частина блоку керування ЦП, де зберігається мікропрограма ЦП. Зазвичай доступ до нього здійснюється за допомогою . Застосування контрольного сховища, вміст якого є незмінним, відоме як постійна пам'ять (ROM) або сховище лише для читання (ROS); той вміст, який можна редагувати, відомий як змінне контрольне сховище (WCS).

Реалізація

Початкове використання Початкові сховища керування були реалізовані як діодна матриця, доступ до якої здійснювався через декодери адрес, форми постійної пам’яті. Ця традиція бере початок від матриці синхронізації програм на MIT Whirlwind, вперше описаної в 1947 році. Сучасні процесори НВІС натомість використовують матриці польових транзисторів для створення структур ПЗУ та/або PLA, що використовуються для керування процесором та його внутрішнім секвенсором у мікрокодованому застосуванні. IBM System/360 використовувала різноманітні методи: CCROS (Card Capacitor Read-Only Storage) на Модель 30, TROS (Transformer Read-Only Storage) на Модель 40 та BCROS (Balanced Capacitor Read-Only Storage) на Моделі 50, 65 і 67.

Змінні сховища Деякі комп’ютери створювалися з використанням «змінного мікрокоду» — замість того, щоб зберігати мікрокод у ПЗУ чи запрограмованій логіці, мікрокод зберігався в ОЗУ, що називається змінним сховищем керування або WCS. Такий комп'ютер іноді називають комп'ютером із записуваним набором інструкцій або WISC. Багато з цих машин були експериментальними лабораторними прототипами, такими як WISC CPU/16 і RTX 32P.

Оригінальні моделі System/360 мали сховище керування лише для читання, але пізніші System/360, System/370 і наступні моделі завантажували частину або всі свої мікропрограми з дискет чи інших DASD у змінне сховище керування, що складалося з надвисокошвидкісної оперативної пам'яті для читання та запису. Архітектура System/370 включала засіб під назвою Initial-Microprogram Load (IML або IMPL) , який можна було викликати у консолі, як частину Power On Reset (POR) або з іншого процесора в тісно пов’язаному багатопроцесорному комплексі. Це дозволило IBM легко виправляти дефекти мікропрограмування. Навіть якщо більша частина сховища керування зберігається в ПЗУ, постачальники комп’ютерів часто продають змінне сховище керування як опцію, що дозволяє клієнтам налаштовувати мікропрограму машини. Інші постачальники, наприклад IBM, використовують WCS для запуску мікрокоду для функцій емулятора та діагностики обладнання.

Інші комерційні машини, які використовували записуваний мікрокод, включають Burroughs Small Systems (1970-ті та 1980-ті роки), процесори Xerox у їхніх машинах Lisp та робочих станціях Xerox Star, сімейство DEC VAX 8800 («Nautilus») та машини Symbolics L та G. (1980-ті роки). Деякі машини DEC PDP-10 зберігали свій мікрокод у чіпах SRAM який зазвичай завантажувався під час увімкнення живлення через інший центральний процесор. Багато інших машин пропонували, як опцію, легкі для програмування користувачеві змінні сховища керування (включаючи міні-комп’ютери серій HP 2100, DEC PDP-11/60 і Varian Data Machines V-70). Mentec M11 і Mentec M1 зберігають свій мікрокод у чіпах SRAM, які завантажуються під час увімкнення через інший ЦП. Data General Eclipse MV/8000 («Eagle») мав записуваний контрольне сховище SRAM, завантажуваний під час увімкнення через інший ЦП.

WCS запропонував кілька переваг, включаючи легкість виправлення мікропрограми та, для певних поколінь обладнання, швидший доступ, ніж ПЗУ. Легким програмуванням, WCS дозволяв користувачеві оптимізувати машину для конкретних цілей.

Деякі конструкції ЦП збирають набір інструкцій у записувану оперативну пам’ять або флеш-пам’ять усередині ЦП (наприклад, процесор Rekursiv та Imsys Cjip), або FPGA (перенастроювані обчислення).

Кілька процесорів Intel у сімействі архітектури x86 мають мікрокод із можливістю запису , починаючи з Pentium Pro у 1995 році (2 pages) Це дозволило програмно виправити помилки в мікрокоді Intel Core 2 і мікрокоді Intel Xeon, замість того, щоб вимагати заміни всього чіпа. Такі виправлення можна встановити за допомогою Linux, FreeBSD, Microsoft Windows або BIOS материнської плати.

Сховище керування зазвичай має регістр на своїх виходах. Виходи, які повертаються до секвенсора для визначення наступної адреси, мають пройти через певний регістр, щоб запобігти створенню умови змагання. Don Lancaster. "TV Typewriter Cookbook". p. 62. (TV Typewriter) У більшості дизайнів усі інші біти також проходять через регістр. Це пояснюється тим, що машина працюватиме швидше, якщо виконання наступної мікрокоманди затримується на один цикл. Цей реєстр відомий як магістральний реєстр. Дуже часто виконання наступної мікрокоманди залежить від результату поточної мікрокоманди, яке не буде стабільним допоки поточний мікроцикл не завершиться. Можна помітити, що в будь-якому випадку всі виходи контрольного сховища потрапляють в один великий регістр. Раніше можна було придбати EPROM з цими реєстровими бітами на одній мікросхемі.

Тактовий сигнал, що визначає тактову частоту, яка є часом циклу системи, головним чином тактує цей регістр.

Список літератури

Подальше читання

(132 pages) (79 pages)