Микропроцессор

Материал из Гуру — мира словарей и энциклопедий
Перейти к: навигация, поиск

Микропроцессор — устройство, выполняющее алгоритмическую обработку информации, и, как правило, управление другими узлами компьютера или иной электронной системы. Представляет собой цифровую интегральную схему выполняющую последовательность инструкций — программу.

Устройство микропроцессора[править]

Основные узлы микропроцессора:

  • Устройство управления, выполняющее роль арбитра над прочими узлами: анализ и декодирование потока инструкций, передача их в функциональные устройства, синхронизация узлов.
  • Одно или несколько исполнительных устройств, производящих обработку данных: арифметические, логические, сдвиговые операции, пересылки, операции над числами с плавающей запятой и пр.
  • Регистровый файл, выполняющий роль хранилища входных, промежуточных и выходных данных для обработки, а также хранилища управляющей информации.
  • Устройство ввода-вывода, обеспечивающее выборку инструкций из памяти, обмен данными с памятью и внешними устройствами.

Микропроцессорные архитектуры[править]

По характеру исполняемого кода и организации устройства управления выделяется несколько типов архитектур:

  • Процессор со сложным набором инструкций, англ. CISC — Complex Instruction Set Computer. Эту архитектуру характеризует большое количество сложных инструкций, и как следствие сложное устройство управления. В ранних вариантах CISC-процессоров и процессоров для встроенных приложений характерны большие времена исполнения инструкций (от нескольких тактов до сотни), определяемые микрокодом устройства управления. Для высокопроизводительных суперскалярных процессоров свойственны глубокий анализ программы, внеочередное исполнение операций.
  • Процессор с упрощённым набором инструкций, англ. RISC — Reduced Instruction Set Computer. В этой архитектуре значительно более простое устройство управления. Большинство инструкций RISC-процессора сожержат одинаковое малое число операций (1, иногда 2-3), а сами командные слова в подавляющем числе случаев имеют одинаковую ширину (PowerPC, ARM), хотя бывают исключения (Coldfire). У суперскалярных процессоров — простейшая группировка инструкций без изменения порядка исполнения.
  • Процессор с явным параллелизмом, англ. EPIC — Explicitly Parallel Instruction Computer (-ing, термин ® Intel, HP). Отличается от прочих прежде всего тем, что последовательность и параллельность исполнения операций и их распределение по функциональным устройствам явно определены программой. Такие процессоры могут обладать большим количеством функциональных устройств без особого усложнения устройства управления и потерь эффективности. Обычно такие процессоры используют широкое командное слово, состоящее из нескольких слогов, определяющих поведение каждого функционального устройства в течение такта.
  • Процессор с минимальным набором инструкций, англ. MISC — Minimal Instruction Set Computer. Эта архитектура определяется прежде всего свехмалым количеством инструкций (несколько десятков), и почти все они нуль-операндные. Такой подход даёт возможность очень плотно упаковать код, выделив под одну инструкцию от 5 до 8 бит. Промежуточные данные в таком процессоре обычно хранятся на внутреннем стеке, и операции производятся над значениям на вершине стека. Эта архитектура тесно связана с идеологией программирования на языке Forth и обычно используется для исполнения программ, написанных на этом языке.
  • Процессор с изменяемым набором инструкций, англ. WISC — Writable Instruction Set Computer. Архитектура, позволяющая перепрограммировать себя, изменяя набор инструкций, подстраивая его под решаемую задачу.
  • Транспорт-управляемый процессор, англ. TTA — Transort Triggered Architecture. Архитектура изначально ответвилась от EPIC, но принципиально отличающаяся от остальных тем, что инструкции такого процессора кодируют функциональные операции, а так называемые транспорты — пересылки данных между функциональными устройствами и памятью в произволном порядке.

По способу хранения программ выделяется две архитектуры:

  • Архитектура фон Неймана. В процессорах этой архитектуры используется одна шина и одно устройство ввода-вывода для обращения к программе и данным.
  • Гарвардская архитектура. В процессорах этой архитектуры для выборки программ и обмена данным существуют отдельные шины и устройства ввода-вывода. Во встроенных микропроцессорах, микроконтроллерах и ПЦОС это также определяет существование двух независимых запоминающих устройств для хранения программ и данных. В центральных процессорах это определяет существование отдельного кэша инструкций и данных. За кэшем шины могут быть объединены в одну посредством мультиплексирования.

По организации регистрового файла ФУ можно выделить следующие типы процессоров.

  • Регистровая архитектура — характеризуется свободным доступом к регистрам для выборки всех аргументов и записи результата. Элементарны арифметико-логические операции в таких процессорах кодируются в двух-, или трёхоперандные инструкции (регистр+регистр→регистр, иногда регистр результата совпадает с источником одного из агрументов).
  • Аккумуляторная архитектура — из регистров выделяется один из несколько регистров-аккумуляторов. Регистр-аккумулятор является источником одного из аргументов и приёмником результата вычислений. Операции кодируются как правило в однооперандные инструкции (аккумулятор+операнд→аккумулятор). Такая архитектура характерная для многих CISC-процессоров (напр. Z80).
  • Стековая архитектура — определяется организацией регистрового файла в виде стека, и косвенной адресацией регистров через указатель стека, который определяет положение вершины стека, операции производятся над значениями на вершине стека и результат кладётся также на вершину. Арифметические операции кодируются в нуль-операндные инструкции. Стековая архитектура является неотъемлемой частью MISC-процессоров.

Функциональные направления[править]

По функциональной направленности микропроцессоры разделяются на:

  • Процессоры общего назначения. Такие процессоры могут достаточно эффективно решать широкий класс задач управления, вычислительных и пр. Именно процессоры этого класса используются в качестве центрального процессора в настольных рабочих станциях.
  • Процессоры цифровой обработки сигналов. Эти процессоры специализироаны под вычислительные задачи, связанные с цифровой обработкой сигналов. Функциональные устройства этих процессоров особенно эффективно выполняют характерные для этого класса задач операции: свёртки, фильтрации, перемножение векторов и матриц. В процессорах этого типа наиболее широко используется архитектура явного паралеллизма. Также важной особенностью ПЦОС является малая энергозатратность на единицу вычислительной мощности, что обеспечило их применение в таких устройствах, как плееры, мобильные телефоны, фото-, видеокамеры и пр.
  • Микроконтроллеры. Задачи микроконтроллеров связаны в первую очередь с управлением устройствами в реальном времени, что определило и основные свойства микропроцессорых ядер в них: широкий набор операций ввода-вывода, лёгкая предсказуемость поведения во времени, большая скорость реакции на прерывания. Это очень простые процессоры, большинство из них 8-битные, и интегрированы со специфической периферией: таймерами, контроллерами последовательных каналов связи, двунаправленными портами ввода-вывода. Они широко используются в разнообразных портативных устройствах.

История микропроцессоров[править]

Первым микропроцессором был i4004, 4-битный микропроцессор, представленный фирмой Intel 15 ноября 1971 г. Он состоял из 2300 транзисторов, работал на чаcтоте 108 кГц и предназначался для использования в микрокалькуляторах.


См. также[править]