Архитектура ЦП
Компьютер с минимальным набором инструкций ( MISC ) — это архитектура центрального процессора (ЦП), обычно в форме микропроцессора , с очень небольшим числом базовых операций и соответствующих кодов операций , которые вместе образуют набор инструкций . Такие наборы обычно основаны на стеке, а не на регистрах, чтобы уменьшить размер спецификаторов операндов .
Такая архитектура стековой машины по своей сути проще, поскольку все инструкции работают с самыми верхними записями стека.
Одним из результатов архитектуры стека является общий меньший набор инструкций, что позволяет использовать меньший и более быстрый блок декодирования инструкций с более быстрой общей обработкой отдельных инструкций.
Характеристики и философия дизайна
Отдельно от определения стека архитектуры MISC, архитектура MISC определяется количеством поддерживаемых инструкций.
- Обычно минимальный набор инструкций компьютера рассматривается как имеющий 32 или менее инструкций, [1] [2] [3] где инструкции типа NOP, RESET и CPUID обычно не учитываются по общему мнению из-за их фундаментальной природы.
- 32 инструкции рассматриваются как максимально допустимое количество инструкций для MISC [ кем? ] , хотя 16 или 8 инструкций ближе к тому, что подразумевается под «минимальным количеством инструкций».
- Процессор MISC не может иметь ноль инструкций, поскольку это компьютер с нулевым набором инструкций .
- Процессор MISC не может иметь одну инструкцию, поскольку это компьютер с одним набором инструкций . [4]
- Реализованные инструкции ЦП по умолчанию не должны поддерживать широкий набор входов, поэтому обычно это означает 8-битный или 16-битный ЦП.
- Если ЦП имеет бит NX , его, скорее всего, можно рассматривать как компьютер со сложным набором команд (CISC) или компьютер с сокращенным набором команд (RISC).
- Микросхемы MISC обычно не имеют какой-либо аппаратной защиты памяти, если только для конкретного приложения не требуется такая функция.
- Если у ЦП есть подсистема микрокода , это исключает его из категории MISC.
- Единственный режим адресации , который [ кем? – Обсудить ] считается приемлемым для ЦП MISC, – это загрузка/сохранение , такой же, как и для ЦП компьютеров с сокращенным набором команд (RISC).
- Процессоры MISC обычно могут иметь от 64 КБ до 4 ГБ доступной адресуемой памяти, но большинство конструкций MISC имеют объем менее 1 мегабайта.
Кроме того, конвейеры инструкций MISC, как правило, очень просты. Конвейеры инструкций , предсказание ветвлений , выполнение вне очереди , переименование регистров и спекулятивное выполнение в целом исключают ЦП из классификации как архитектура MISC. [ необходима цитата ]
В то время как 1-битные ЦП в остальном устарели (и не были ни MISC, ни OISC), первый компьютер на углеродных нанотрубках был 1-битным компьютером с одним набором команд и имел всего 178 транзисторов, и, таким образом, вероятно, являлся самым низкоуровневым (или следующим по сложности) ЦП, произведенным до сих пор (по количеству транзисторов ).
История
Некоторые из первых цифровых компьютеров, оснащенных наборами команд, по современному определению были компьютерами с минимальным набором команд.
Среди этих различных компьютеров только ILLIAC и ORDVAC имели совместимые наборы инструкций.
- Manchester Baby (Манчестерский университет, Англия) осуществил первый успешный запуск сохраненной программы 21 июня 1948 года.
- Электронный автоматический вычислитель с задержкой хранения (EDSAC, Кембриджский университет , Англия) был первым практическим электронным компьютером с хранимой программой (май 1949 г.)
- Manchester Mark 1 ( Университет Виктории в Манчестере , Англия), разработанный на основе Baby (июнь 1949 г.)
- Автоматический компьютер для научных и промышленных исследований Содружества ( CSIRAC , Council for Scientific and Industrial Research ), Австралия (ноябрь 1949 г.)
- Электронный дискретный автоматический компьютер ( EDVAC , Баллистическая исследовательская лаборатория , Вычислительная лаборатория на Абердинском испытательном полигоне, 1951 г.)
- Дискретный автоматический вычислитель артиллерийского вооружения ( ORDVAC , Университет Иллинойса в Урбане-Шампейне ) на Абердинском испытательном полигоне, штат Мэриленд (завершен в ноябре 1951 г.) [5]
- Машина IAS в Принстонском университете (январь 1952 г.)
- MANIAC I в Лос-Аламосской научной лаборатории (март 1952 г.)
- Первый испытательный запуск МЭСМ состоялся в Киеве 6 ноября 1950 года.
- Иллинойсский автоматический компьютер ( ILLIAC ) в Иллинойсском университете (сентябрь 1952 г.)
Ранние компьютеры с хранимой программой
- IBM SSEC обладал способностью обрабатывать инструкции как данные и был публично продемонстрирован 27 января 1948 года. Эта способность была заявлена в патенте США, выданном 28 апреля 1953 года. [6] Однако он был частично электромеханическим, а не полностью электронным. На практике инструкции считывались с бумажной ленты из-за ее ограниченной памяти. [7]
- Manchester Baby , разработанный Университетом Виктории в Манчестере , был первым полностью электронным компьютером, который запускал сохраненную программу. Он запускал программу факторизации в течение 52 минут 21 июня 1948 года, после запуска простой программы деления и программы, показывающей, что два числа являются взаимно простыми .
- Электронный числовой интегратор и вычислитель ( ENIAC ) был модифицирован для работы в качестве примитивного компьютера с хранимой программой только для чтения (использующего таблицы функций для программной памяти (ПЗУ)) и был продемонстрирован в таком качестве 16 сентября 1948 года, выполняя программу Адель Голдстайн для фон Неймана.
- Двоичный автоматический компьютер ( BINAC ) выполнил несколько тестовых программ в феврале, марте и апреле 1949 года, хотя работа была завершена только в сентябре 1949 года.
- Manchester Mark 1 был разработан на основе проекта Baby. Промежуточная версия Mark 1 была доступна для запуска программ в апреле 1949 года, но была завершена только в октябре 1949 года.
- Электронный автоматический вычислитель с задержкой хранения (EDSAC) запустил свою первую программу 6 мая 1949 года.
- Электронный дискретный автоматический компьютер ( EDVAC ) был доставлен в августе 1949 года, но у него возникли неполадки, из-за которых его не вводили в постоянную эксплуатацию до 1951 года.
- Автоматический компьютер для научных и промышленных исследований Содружества ( CSIRAC , ранее CSIR Mk I) запустил свою первую программу в ноябре 1949 года.
- В апреле 1950 года был продемонстрирован стандартный восточный автоматический компьютер ( SEAC ).
- Pilot ACE провел свою первую программу 10 мая 1950 года и был продемонстрирован в декабре 1950 года.
- Разработка стандартного западного автоматического компьютера ( SWAC ) была завершена в июле 1950 года.
- Строительство «Вихря» было завершено в декабре 1950 года, а в апреле 1951 года он был введен в эксплуатацию.
- Первый ERA Atlas (позднее коммерческий ERA 1101/UNIVAC 1101) был установлен в декабре 1950 года.
Недостатки дизайна
Недостатком MISC является то, что инструкции, как правило, имеют больше последовательных зависимостей, что снижает общий параллелизм на уровне инструкций .
Архитектуры MISC имеют много общего с некоторыми особенностями некоторых языков программирования , такими как использование стека в Forth и виртуальная машина Java . Оба слабы в обеспечении полного параллелизма на уровне инструкций . Однако можно использовать слияние макроопераций как средство выполнения общих фраз инструкций как отдельных шагов (например, ADD, FETCH для выполнения одного индексированного чтения памяти).
Известные процессоры
Вероятно, наиболее коммерчески успешным MISC была оригинальная архитектура транспьютера INMOS , не имевшая блока с плавающей точкой . Однако многие 8-битные микроконтроллеры для встраиваемых компьютерных приложений можно отнести к MISC.
Каждый космический аппарат STEREO включает в себя два процессора P24 MISC и два процессора CPU24 MISC. [8] [9] [10] [11]
Смотрите также
Ссылки
- ^ Тинг, Чен-Хансон; Мур, Чарльз Х. (1995). "MuP21: Высокопроизводительный процессор MISC". UltraTechnology . Offete Enterprises.
- ^ Патент США 5481743A, Бакстер, Майкл А., «Архитектура компьютера с минимальным набором инструкций и метод множественной выдачи инструкций», опубликован 02.01.1996, выдан 02.01.1996, передан Apple
- ^ Халверсон, Ричард-младший; Лью, Арт (1995). Компьютер с минимальным набором команд на базе ПЛИС (технический отчет). Кафедра информационных и компьютерных наук, Гавайский университет. стр. 23. ICS-TR-94-28.
- ^ Kong, JH; Ang, L.-M.; Seng, KP (2010). «Процессор AES с минимальным набором инструкций, использующий архитектуру Гарварда». 2010 3-я Международная конференция по компьютерным наукам и информационным технологиям . С. 65–69. doi :10.1109/ICCSIT.2010.5564522. ISBN 978-1-4244-5540-9.
- ^ Робертсон, Джеймс Э. (1955). Illiac Design Techniques: номер отчета UIUCDCS-R-1955-146 (Отчет). Урбана–Шампейн , Иллинойс: Лаборатория цифровых компьютеров, Университет Иллинойса в Урбане–Шампейне.
- ↑ Патент США 2636672, Гамильтон, Фрэнсис Э.; Хьюз, Эрнест С. младший и Роули, Рассел А. и др., «Электронный калькулятор с выборочной последовательностью», выдан 28 апреля 1953 г., передан IBM
- ^ Грош, Герберт Р. Дж. (1991). Компьютер: кусочки жизни. Книги третьего тысячелетия. ISBN 978-0-8873-3085-8.
- ^ Мевальдт, РА; Коэн, КМС; Кук, У.Р.; Каммингс, А.С.; и др. «3.5.2 Минимальный набор команд компьютера (MISC)». Телескоп с низким энергопотреблением (LET) и центральная электроника SEP для миссии STEREO (PDF) (Отчет). стр. 20.
- ^ Расселл, CT, ред. (2008). Миссия STEREO. Springer. ISBN 978-0-387-09649-0.
- ^ Ting, CH; Cook, WR (2001). Руководство пользователя микропроцессора P24 MISC (технический отчет). Технология eMAST. STEREO-CIT-005.A.
- ^ Руководство пользователя микропроцессора CPU24 (технический отчет). NASA. Октябрь 2003 г. Версия 5 Actel для Stereo HET.
Внешние ссылки