Тема 2.3
Тема
2.3. Классификация и типовая структура микропроцессоров
Организация работы и функционирование процессора. Микропроцессоры типа CISC, RISC, MISC. Характеристики и структура микропроцессора. Устройство управления, арифметико-логическое устройство, микропроцессорная память: назначение, упрощенные функциональные схемы.
Микропроцессор (МП) – это программно-управляемое электронное цифровое устройство, предназначенное для обработки цифровой информации и управления процессом этой обработки, выполненное на одной или нескольких интегральных схемах с высокой степенью интеграции электронных элементов.
Функции микропроцессора:
- вычисление адресов команд и операндов;
- выборка и дешифрация команд из основной памяти;
- выборка данных из основной памяти, регистров микропроцессорной памяти и регистров адаптеров внешних устройств;
- прием и обработка запросов и команд от адаптеров на обслуживание внешних устройств;
- обработка данных и их запись в основную память, регистры микропроцессорной памяти и регистры адаптеров внешних устройств;
- выработка управляющих сигналов для всех прочих узлов и блоков ПК;
- переход к следующей команде.
По числу больших интегральных схем (БИС) в микропроцессорном комплекте различают микропроцессоры однокристальные, многокристальные и многокристальные секционные.
Процессоры даже самых простых ЭВМ имеют сложную функциональную структуру, содержат большое количество электронных элементов и множество разветвленных связей. Изменять структуру процессора необходимо так, чтобы полная принципиальная схема или ее части имели количество элементов и связей, совместимое с возможностями БИС. При этом микропроцессоры приобретают внутреннюю магистральную архитектуру, т. е. в них к единой внутренней информационной магистрали подключаются все основные функциональные блоки (арифметико-логический, рабочих регистров, стека, прерываний, интерфейса, управления и синхронизации и др.).
Однокристальные микропроцессоры получаются при реализации всех аппаратных средств процессора в виде одной БИС или СБИС (сверхбольшой интегральной схемы). По мере увеличения степени интеграции элементов в кристалле и числа выводов корпуса параметры однокристальных микропроцессоров улучшаются. Однако возможности однокристальных микропроцессоров ограничены аппаратными ресурсами кристалла и корпуса. Для получения многокристального микропроцессора необходимо провести разбиение его логической структуры на функционально законченные части и реализовать их в виде БИС (СБИС). Функциональная законченность БИС многокристального микропроцессора означает, что его части выполняют заранее определенные функции и могут работать автономно.
На рис. 1.1,а показано функциональное разбиение структуры процессора при создании трехкристального микропроцессора (пунктирные линии), содержащего БИС операционного (ОП), БИС управляющего (УП) и БИС интерфейсного (ИП) процессоров.
реализации процессора в виде комплекта секционных БИС
Операционный процессор служит для обработки данных, управляющий процессор выполняет функции выборки, декодирования и вычисления адресов операндов и также генерирует последовательности микрокоманд. Автономность работы и большое быстродействие БИС УП позволяет выбирать команды из памяти с большей скоростью, чем скорость их исполнения БИС ОП. При этом в УП образуется очередь еще не исполненных команд, а также заранее подготавливаются те данные, которые потребуются ОП в следующих циклах работы. Такая опережающая выборка команд экономит время ОП на ожидание операндов, необходимых для выполнения команд программ. Интерфейсный процессор позволяет подключить память и периферийные средства к микропроцессору; он, по существу, является сложным контроллером для устройств ввода/вывода информации. БИС ИП выполняет также функции канала прямого доступа к памяти.
Выбираемые из памяти команды распознаются и выполняются каждой частью микропроцессора автономно, и поэтому может быть обеспечен режим одновременной работы всех БИС МП, т. е. конвейерный поточный режим исполнения последовательности команд программы (выполнение последовательности с небольшим временным сдвигом). Такой режим работы значительно повышает производительность микропроцессора.
Многокристальные секционные микропроцессоры получаются в том случае, когда в виде БИС реализуются части (секции) логической структуры процессора при функциональном разбиении ее вертикальными плоскостями (рис. 1,б). Для построения многоразрядных микропроцессоров при параллельном включении секций БИС в них добавляются средства "стыковки". Для создания высокопроизводительных многоразрядных микропроцессоров требуется столь много аппаратных средств, не реализуемых в доступных БИС, что может возникнуть необходимость еще и в функциональном разбиении структуры микропроцессора горизонтальными плоскостями. В результате рассмотренного функционального разделения структуры микропроцессора на функционально и конструктивно законченные части создаются условия реализации каждой из них в виде БИС. Все они образуют комплект секционных БИС МП.
Таким образом, микропроцессорная секция это БИС, предназначенная для обработки нескольких разрядов данных или выполнения определенных управляющих операций. Секционность БИС МП определяет возможность "наращивания" разрядности обрабатываемых данных или усложнения устройств управления микропроцессора при "параллельном" включении большего числа БИС.
Однокристальные и трехкристальные БИС МП, как правило, изготовляют на основе микроэлектронных технологий униполярных полупроводниковых приборов, а многокристальные секционные БИС МП на основе технологии биполярных полупроводниковых приборов. Использование многокристальных микропроцессорных высокоскоростных биполярных БИС, имеющих функциональную законченность при малой физической разрядности обрабатываемых данных и монтируемых в корпус с большим числом выводов, позволяет организовать разветвление связи в процессоре, а также осуществить конвейерные принципы обработки информации для повышения его производительности.
По назначению различают универсальные и специализированные микропроцессоры.
Универсальные микропроцессоры могут быть применены для решения широкого круга разнообразных задач. При этом их эффективная производительность слабо зависит от проблемной специфики решаемых задач. Специализация МП, т. е. его проблемная ориентация на ускоренное выполнение определенных функций позволяет резко увеличить эффективную производительность при решении только определенных задач.
Среди специализированных микропроцессоров можно выделить различные микроконтроллеры, ориентированные на выполнение сложных последовательностей логических операций, математические МП, предназначенные для повышения производительности при выполнении арифметических операций за счет, например, матричных методов их выполнения, МП для обработки данных в различных областях применений и т. д. С помощью специализированных МП можно эффективно решать новые сложные задачи параллельной обработки данных. Например, конволюция позволяет осуществить более сложную математическую обработку сигналов, чем широко используемые методы корреляции. Последние в основном сводятся к сравнению всего двух серий данных: входных, передаваемых формой сигнала, и фиксированных опорных и к определению их подобия. Конволюция дает возможность в реальном масштабе времени находить соответствие для сигналов изменяющейся формы путем сравнения их с различными эталонными сигналами, что, например, может позволить эффективно выделить полезный сигнал на фоне шума.Разработанные однокристальные конвольверы используются в устройствах опознавания образов в тех случаях, когда возможности сбора данных превосходят способности системы обрабатывать эти данные.
По виду обрабатываемых входных сигналов различают цифровые и аналоговые микропроцессоры. Сами микропроцессоры – цифровые устройства, однако, могут иметь встроенные аналого-цифровые и цифро-аналоговые преобразователи. Поэтому входные аналоговые сигналы передаются в МП через преобразователь в цифровой форме, обрабатываются и после обратного преобразования в аналоговую форму поступают на выход. С архитектурной точки зрения такие микропроцессоры представляют собой аналоговые функциональные преобразователи сигналов и называются аналоговыми микропроцессорами. Они выполняют функции любой аналоговой схемы (например, производят генерацию колебаний, модуляцию, смещение, фильтрацию, кодирование и декодирование сигналов в реальном масштабе времени и т. д., заменяя сложные схемы, состоящие из операционных усилителей, катушек индуктивности, конденсаторов и т. д.). При этом применение аналогового микропроцессора значительно повышает точность обработки аналоговых сигналов и их воспроизводимость, а также расширяет функциональные возможности за счет программной "настройки" цифровой части микропроцессора на различные алгоритмы обработки сигналов.
Обычно в составе однокристальных аналоговых МП имеется несколько каналов аналого-цифрового и цифро-аналогового преобразования. В аналоговом микропроцессоре разрядность обрабатываемых данных достигает 24 бит и более, большое значение уделяется увеличению скорости выполнения арифметических операций.
Отличительная черта аналоговых микропроцессоров способность к переработке большого объема числовых данных, т. е. к выполнению операций сложения и умножения с большой скоростью при необходимости даже за счет отказа от операций прерываний и переходов. Аналоговый сигнал, преобразованный в цифровую форму, обрабатывается в реальном масштабе времени и передается на выход обычно в аналоговой форме через цифро-аналоговый преобразователь. При этом согласно теореме Котельникова частота квантования аналогового сигнала должна вдвое превышать верхнюю частоту сигнала.
Одним из направлений дальнейшего совершенствования аналоговых микропроцессоров является повышение их универсальности и гибкости. Поэтому вместе с повышением скорости обработки большого объема цифровых данных будут развиваться средства обеспечения развитых вычислительных процессов обработки цифровой информации за счет реализации аппаратных блоков прерывания программ и программных переходов.
По характеру временной организации работы микропроцессоры делят на синхронные и асинхронные.
Синхронные микропроцессоры – микропроцессоры, в которых начало и конец выполнения операций задаются устройством управления (время выполнения операций в этом случае не зависит от вида выполняемых команд и величин операндов).
Асинхронные микропроцессоры позволяют начало выполнения каждой следующей операции определить по сигналу фактического окончания выполнения предыдущей операции. Для более эффективного использования каждого устройства микропроцессорной системы в состав асинхронно работающих устройств вводят электронные цепи, обеспечивающие автономное функционирование устройств. Закончив работу над какой-либо операцией, устройство вырабатывает сигнал запроса, означающий его готовность к выполнению следующей операции. При этом роль естественного распределителя работ принимает на себя память, которая в соответствии с заранее установленным приоритетом выполняет запросы остальных устройств по обеспечению их командной информацией и данными.
CISC (complex instruction set command) есть традиционная архитектура, в которой центральный процессор использует микропрограммы для выполнения исчерпывающего набора команд. Они могут иметь различную длину, методы адресации и требуют сложных электронных цепей для декодирования и исполнения. В течение долгих лет производители компьютеров разрабатывали и воплощали в изделиях все более сложные и полные системы команд. Однако анализ работы процессоров показал, что в течение примерно 80 % времени выполняется лишь 20 % большого набора команд. Поэтому была поставлена задача оптимизации выполнения небольшого по числу, но часто используемых команд.
В 1974 г. John Cocke (IBM Research) решил испробовать подход, который мог бы существенно уменьшить количество машинных команд в центральном процессоре. В середине 70-х это привело многих производителей компьютеров к пересмотру своих позиций и к разработке центрального процессора с весьма ограниченным набором команд.
RISC (redused instruction set command) – процессор, функционирующий с сокращенным набором команд. Так, в процессоре CISC для выполнения одной команды необходимо в большинстве случаев 10 и более тактов. Что же касается процессоров RISC, то они близки к тому, чтобы выполнять по одной команде в каждом такте. Следует также иметь в виду, что благодаря своей простоте процессоры RISC не патентуются. Это также способствует их быстрой разработке и широкому производству. Между тем, в сокращенный набор RISC вошли только наиболее часто используемые команды.
Первый процессор RISC был создан корпорацией IBM в 1979 г. И имел шифр IBM 801. В настоящее время процессоры RISC получили широкое распространение. Современные процессоры RISC характеризуются следующим:
· большинство команд выполняются за один такт процессора;
· отсутствуют макрокоманды, усложняющие структуру процессора и уменьшающие скорость его работы;
· взаимодействие с оперативной памятью ограничивается операциями пересылки данных;
· резко уменьшено число способов адресации памяти (не используется косвенная адресация);
· используется конвейер команд, позволяющий обрабатывать несколько из них одновременно;
· применяется высокоскоростная память.
Новый подход к архитектуре процессора значительно сократил площадь, требуемую для него на кристалле интегральной схемы. Это позволило резко увеличить число регистров. В современном процессоре RISC уже используется более 100 регистров. В результате процессор на 20 – 30 % реже обращается к оперативной памяти, что также повысило скорость обработки данных. Упростилась топология процессора, выполняемого в виде одной интегральной схемы, сократились сроки ее разработки, она стала дешевле.
Начиная с процессора Pentium, корпорация Intel начала внедрять элементы RISC-технологий в свои изделия.
MISC (minimum instruction set command) – процессор, работающий с минимальным набором длинных команд.
Увеличение разрядности процессоров привело к идее укладки нескольких команд в одно слово (связку, bound) размером 128 бит. Оперируя с одним словом, процессор получил возможность обрабатывать сразу несколько команд. Это позволило использовать возросшую производительность компьютера и его возможность обрабатывать одновременно несколько потоков данных.
Процессор MISC, как и процессор RISC? Характеризуется небольшим набором чаще всего встречающихся команд. Вместе с этим принцип команд VLIM обеспечивает выполнение группы команд за один цикл работы процессора. Порядок выполнения команд распределяется таким образом, чтобы в максимальной степени загрузить маршруты, по которым проходят потоки данных. Таким образом, архитектура MISC объединила вместе суперскалярную (многопоточную) и VLIM концепции. Компоненты процессора просты и работают с высокими скоростями.
VLIM (Very Length Instruction Memory) – процессор, работающий с системой команд сверхбольшой разрядности.
Идея технологии VLIM заключается в том, что создается специальный компилятор планирования, который перед выполнением прикладной программы проводит ее анализ, и по множеству ветвей последовательности операций определяет группу команд, которые могут выполняться параллельно. Каждая такая группа образует одну сверхдлинную команду. Это позволяет решать две важные задачи. Во-первых, в течение одного такта выполнять группу коротких («обычных») команд. Во-вторых, упростить структуру процессора. Этим технология VLIM отличается от суперскалярности. В последнем случае отбор групп одновременно выполняемых команд происходит непосредственно в ходе выполнения прикладной программы (а не заранее). Из-за чего усложняется структура процессора и замедляется скорость его работы.
2. Характеристики микропроцессоров
Микропроцессор характеризуется:
1) тактовой частотой: указывает, сколько элементарных операций (тактов) микропроцессор выполняет в 1 секунду. Тактовая частота измеряется в Мгц. Следует заметить, что разные модели МП выполняют одни и теже операции (например, сложение и умножение) за разное число тактов. Чем выше модель, тем, как правило, меньше тактов требуется для выполнения одних и тех же операций;
2) разрядностью, т. е. максимальным числом одновременно обрабатываемых двоичных разрядов.
Разрядность МП обозначается m/n/k/ и включает:
m – разрядность внутренних регистров, определяет принадлежность к тому или иному классу процессоров;
n – разрядность шины данных, определяет скорость передачи информации;
k – разрядность шины адреса, определяет размер адресного пространства.
Например, МП i8088 характеризуется значениями m/n/k=16/8/20;
3) объемом кэш-памяти, которая имеет два уровня: L1 – память 1-го уровня, находящаяся внутри основной микросхемы микропроцессора и работающая всегда на полной частоте микропроцессора; L2 – память 2-го уровня, кристалл, размещаемый на плате микропроцессора и связанный с ядром внутренней микропроцессорной шиной, может работать на полной или половинной частоте микропроцессора.
4) архитектурой. Понятие архитектуры микропроцессора включает в себя систему команд и способы адресации, возможность совмещения выполнения команд во времени, наличие дополнительных устройств в составе микропроцессора, принципы и режимы его работы. Выделяют понятия микроархитектуры и макроархитектуры.
Микроархитектура микропроцессора – это аппаратная организация и логическая структура микропроцессора, регистры, управляющие схемы, арифметико-логические устройства, запоминающие устройства и связывающие их информационные магистрали.
Макроархитектура – это система команд, типы обрабатываемых данных, режимы адресации и принципы работы микропроцессора.
3. Структура базового микропроцессора
Функционально микропроцессор можно разделить на две части (смотри рисунок):
- операционную (устройство управления и устройство обработки данных), содержащую арифметико-логическое устройство, микропроцессорную память (за исключением сегментных регистров), блок микропрограммного управления, объединенных в устройство обработки данных, и устройство управления;
- интерфейсную (или устройство связи с магистралью), содержащую блок сегментных регистров микропроцессорной памяти, блок регистров команд (регистры памяти для хранения кодов команд, выполняемых в ближайшие такты работы) и сумматор адреса.
Устройство обработки данных предназначено для выполнения команд. Устройство управления обеспечивает синхронизацию работы устройств микропроцессора, выработку управляющих сигналов и сигналов состояния для обмена с другими устройствами, анализ и соответствующую реакцию на сигналы других устройств ЭВМ.
Устройство связи с магистралью обеспечивает формирование физического адреса памяти и адреса внешнего устройства, выбор команд из памяти, обмен данными с запоминающими устройствами, внешними устройствами, другими процессорами по магистрали.
Обе части микропроцессора работают параллельно, причем интерфейсная часть опережает операционную, так что выборка очередной команды из памяти (ее запись в блок регистров команд и предварительный анализ) выполняется во время выполнения операционной частью предыдущей команды. Современные микропроцессоры имеют несколько групп регистров в интерфейсной части, работающих с различной степенью опережения, что позволяет выполнить операции в конвейерном режиме. Такая организация микропроцессора позволяет существенно повысить его эффективное быстродействие.
Рис. Упрощенная структурная схема
микропроцессора
(на примере i8086)
На внешних выводах микропроцессора широко используется принцип мультиплексирования сигналов – передача разных сигналов по общим линиям с разделением времени. Кроме того, одни и те же выводы могут использоваться для передачи разных сигналов в зависимости от режима (минимальный или максимальный).
В таблице ниже приведено описание внешних выводов МП i8086. При описании выводов косой чертой разделены сигналы, появляющиеся на выводе в разные моменты машинного цикла. В круглых скобках указаны сигналы, характерные только для максимального режима.