Принцип работы микропроцессора

Принцип работы микропроцессора.

Принцип работы микропроцессора. - изображение 1 - изображение 1

Что такое микропроцессоры? Устройство, назначение, основные характеристики - изображение 2 - изображение 2

В состав МП (рис. 1) входят арифметическо-логическое устройство, устройство управление и блок внутренних регистров.

Арифметическо-логическое устройство состоит из двоичного сумматора со схемами ускоренного переноса, сдвигающего регистры и регистров для временного хранения операндов. Обычно это устройство выполняет по командам несколько простейших операций: сложение, вычитание, сдвиг, пересылку, логическое сложение (ИЛИ), логическое умножение (И), сложение по модулю 2.

Устройство управления управляет работой АЛУ и внутренних регистров в процессе выполнения команды. Согласно коду операций, содержащемуся в команде, оно формирует внутренние сигналы управления блоками МП. Адресная часть команды совместно с сигналами управления используется для считывания данных из определенной ячейке памяти или для записи данных в ячейку. По сигналам УУ осуществляется выборка каждой новой, очередной команды.

Блок внутренних регистров БВР, расширяющий возможности АЛУ, служит внутренней памятью МП и используется для временного хранения данных и команд. Он также выполняет некоторые процедуры обработки информации.

На рисунке (2) приведена более подробная структурная схема однокристального МП. Здесь блок внутренних регистров содержит регистры общего назначения и специальные регистры: регистр-аккумулятор, буферный регистр адреса, буферный регистр данных, счетчик команд, стека, признаков.

Регистры общего назначения (РОН), число которых может изменятся от 4 до 64, определяют вычислительные возможности МП. Их функция – хранение операндов. Но могут выполнять также и роль регистров. Все РОН доступны программисту, который рассматривает их как сверхоперативное запоминающее устройство.

Регистр – аккумулятор («накопитель»), предназначен для временного хранения операнда или промежуточного результата действий производимой в АЛУ. Разрядность регистра равна разрядности информационного слова.

Буферный регистр адреса служит для приема и хранения адресной части выполняемой команды. Возможное количество адресов, определяется разрядностью регистра.

Буферный регистр данных используется для временного хранения выбранного из памяти слова перед передачей его во внешнюю шину данных. Его разрядность определяется количеством байт информационного слова.

Счетчик команд содержит адрес ячейки памяти, в которой помещены байты выполняемой команды.

Регистр команд принимает и хранит код очередной команды, адрес которой находится в счетчике команд. По сигналу УУ в него передается из регистра хранимая там информация.

Регистры стека делятся на стек и указатель стека. В МП стек – набор регистров, хранящих адреса команд возврата при обращении к подпрограммам или состояние внутренних регистров при обработке прерываний. Стек может быть выполнен не только на внутренних регистрах МП, составляя его часть, но и находиться в ОЗУ, занимая там отведенную для него зону. В последнем случае для обращения к нему необходим специальный регистр – указатель стека.

Указатель стека хранит адреса последней занятой ячейки стека, которую называют вершиной. Содержащее в указателе число указывает, где находится вершина стека. Когда в стек записывается очередное слово, то число в указателе стека соответственно увеличивается. Извлечение слова из стека сопровождается, наоборот, уменьшением числа, заполняющего указатель стека. Кроме такой процедуры предусматривается возможность считывания без разрушений содержимого любой ячейки стека при неизменном числе, хранимом в указателе стека.

Регистр признаков представляет собой набор триггеров – флажков. В зависимости от результатов операций, выполняемых АЛУ, каждый триггер устанавливается в состояние 0 или 1. Флажковые биты, определяющие содержимое регистра, индицируют условные признаки: нулевого результата, знака результата, перевыполнения и т. п. Эта информация, характеризующая состояние процессора, важна для выбора дальнейшего пути вычислений.

Рассмотрим более подробно основные части микропроцессора (рис. 2).

Что такое микропроцессоры? - фото 3 - изображение 3

Внутренняя шина данных соединяет собой основные части МП.

Шиной называют группу линий передачи информации, объединенных общим функциональным признаком. В микропроцессорной схеме используется три вида шин: данных, адресов и управления.

Разрядность внутренней шины данных т. е. количество передаваемых по ней одновременно (параллельно) битов числа соответствует разрядности слов, которыми оперирует МП. Очевидно, что разрядность внутренней и внешней шин данных должна быть одной и той же. У восьмиразрядного МП внутренняя шина данных состоит из восьми линий, по которым можно передавать последовательно восьмиразрядные слова – байты. Следует иметь в виду, что по шине данных передаются на только обрабатываемые АЛУ слова, но и командная информация. Следовательно, недостаточно высокая разрядность шины данных может ограничить состав (сложность) команд и их число. Поэтому разрядность шины данных относят к важным характеристикам микропроцессора – она в большей мере определяет его структуру (числа разрядов указаны на рисунке в скобках рядом с названиями блоков).

Шина данных МП работает в режиме двунаправленной передачи, т. е. по ней можно передавать слова в обоих направлениях, но не одновременно. В этом случае требуется применение специальных буферных схем и мультиплексного режима обмена данных между МП и внешней памятью. Мультиплексный режим (от английского слова multiple – многократный, множественный), иногда называемый многоточечным, - режим одновременного использования канала передачи большим числом абонентов с разделением во времени средств управления обменом.

Мультиплексор – устройство, которое выбирает данные от одного, двух (или более) входных информационных каналов и подает эти данные на свой выход. Схема мультиплексора состоит из двухвходовых логических элементов И – ИЛИ, управляемых распределителем импульсов. Промышленностью выпускаются мультиплексоры, которые могут входить в состав , а также в виде отдельных БИС (например, восьмивходовый одноразрядный; двухвходовый четырехразрядный; трехвходовый четырехразрядный и др.).

Демультиплексор – устройство, выполняющее противоположную мультиплексору функцию, - подает данные, подводимые к его входу, на один (или более) выходной информационный канал.

Мультиплексоры и демультиплексоры позволяют компоновать из микропроцессорных элементов микроЭВМ для любой длины машинного слова. Предположим, что задача обработки данных заключается в сложении двух операндов, каждый из которых представляет собой восьмиразрядное двоичное число – байт.

Восьмиразрядное арифметически – логическое устройство выполняет все арифметические и логические операции. На первый вход АЛУ поступает байт из восьмиразрядного аккумулятора, а на второй вход – из восьмиразрядного промежуточного регистра. Результат сложения указанных двух байтов передается с выхода АЛУ через внутреннюю шину данных в аккумулятор. Такая организация удовлетворяет одноадресной организации микропроцессора. Для нее характерно то, что один из операндов, участвующих в обработке, всегда находится в аккумуляторе, адрес которого задан неявно. Поэтому при выполнении операции сложения двух операндов требуется указывать только один адрес – второго операнда, содержащегося, например в одном из восьми регистров общего назначения (РОН). К АЛУ подключены регистр признаков, предназначенный для хранения и анализа признаков результата операции, и схема десятичной коррекции (на рис. 2 не показана), позволяющая проводить обработку данных в двоично-десятичном коде.

В состав микропроцессора входят также указатель стек, счетчик команд, буферный регистр адреса, ОЗУ. Первые два РОН – регистры W и Z – предназначены для кратковременного хранения данных во время выполнения команды (эти регистры недоступны программисту), остальные шесть РОН – регистры B, C, D, E, H и L – cлужат ячейками внутренней памяти, называемой сверхоперативным запоминающим устройством (СОЗУ). В них хранятся операнды, подлежащие обработки в АЛУ, результаты обработки данных, выполненных в АЛУ, и управляющие слова. В каждом регистре помещается один байт. Обращение к РОН – адресное. Попарное расположение регистров B и C, D и E, H и L дает возможность проводить обработку двухбайтовых слов, называемую обработкой “удвоенной точности”. Обмен данными с РОН (считывание и запись информации) осуществляется через мультиплексор, причем требуемый регистр выбирается с помощью селектора регистров по сигналу УУ.

В левой части рис. 2 расположены регистр команд, дешифратор кода операции и УУ (хотя дешифратор относится к УУ, он нарисован отдельно для большей наглядности). Стековый регистр адреса на рисунке отсутствует, так как стек представляет собой определенную зону ОЗУ.

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

Микропроцессор – это программно-управляемое устройство. Процедура выполняемой им обработки данных определяется программой, т. е. совокупностью команд. Команда делится на две части: код операции и адрес. В коде операции заключена информация о том, какая операция должна быть выполнена над данными, подлежащими обработке. Адрес указывает место, где расположены эти данные (в регистрах общего назначения микропроцессора, т. е. во внутренней или внешней памяти). Слово данных, подвергаемое обработке, представляет один байт. Команда может состоять из одного, двух или трех байтов, последовательно расположенных в памяти.

Первый байт команды содержит код операции. Считанный в начале интервала выполнения команды, называемого циклом команды, ее первый байт поступает по внутренней шине данных в регистр команд, где хранится в течение всего цикла. Дешифратор кода операции дешифрует содержимое регистра команд – определяет характер операции и адреса операндов. Эта информация подается в УУ, которое вырабатывает управляющие сигналы, направляемые в блоки микропроцессора, участвующие в выполнении данной команды.

В том случае, когда код операции непосредственно указывает адрес данных – объекта обработки, операция начинается сразу после считывания первого байта команды. Если же в команде содержится более одного байта, то остальные байты, несущие информацию об адресе ячейки памяти, где хранятся данные, передаются либо в буферный регистр адреса, либо в один из РОН только после завершения всей процедуры считывания команды или, иначе говоря, после получения полной информации о местонахождении операндов и о том, какая операция должна выполнятся, начинается операция.

Рассмотрим пример выполнения операции сложения двух операндов. Первый операнд хранится в аккумуляторе, второй в одном из РОН (его адрес указан в команде), откуда он передается в промежуточный регистр. Согласно коду операции АЛУ суммирует поступающие на его вход байты и выдает результат, который фиксируется в аккумуляторе. Этот результат можно использовать при дальнейших этапах обработки.

Наряду с многокристальными и однокристальными МП используются секционированные или разрядно-модульные МП. Основной их отличительной особенностью является то, что каждый модуль предназначен для обработки нескольких разрядов машинного слова, а слово в целом обрабатывается группой модулей или секций, соединенных между собой.

Архитектура микропроцессора (Architecture) – принцип его внутренней организации, общая структура, конкретная логическая структура отдельных устройств.

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

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

Макроархитектура микропроцессора - это система команд, типы обрабатываемых данных, режимы адресации и принципы работы микропроцессора.

В общем случае под архитектурой ЭВМ понимается абстрактное представление машины в терминах основных функциональных модулей, языка ЭВМ, структуры данных.

1. В соответствии с архитектурными особенностями, определяющими свойства системы команд, различают:

· Микропроцессоры с CISC архитектурой.

CISC (Complex Instruction Set Computer) - Компьютер со сложной системой команд. Исторически они первые и включают большое количество команд. Все микропроцессоры корпораций Intel (Integrated Electronics) и AMD (Advanced Micro Devices) относятся к категории CISC.

· Микропроцессоры с RISC архитектурой.

RISC (Reduced Instruction Set Computer) - Компьютер с сокращенной системой команд. Упрощена система команд и сокращена до такой степени, что каждая инструкция выполняется за единственный такт. Вследствие этого упростилась структура микропроцессора, и увеличилось его быстродействие.

Пример микропроцессора с RISC-аpхитектуpой - Power PC. Микропроцессор Power PC начал разрабатываться в 1981 году тремя фирмами: IBM, Motorola, Apple.

· Микропроцессоры с MISC архитектурой.

MISC (Minimum Instruction Set Computer) - Компьютер с минимальной системой команд. Последовательность простых инструкций объединяется в пакет, таким образом, программа преобразуется в небольшое количество длинных команд.

2. Разрядностьмаксимальное количество разрядов двоичного кода, которые могут обрабатываться или передаваться одновременно.

Современные микропроцессоры построены на 32-х битной архитектуре x86 или IA-32 (Intel Architecture 32 bit), но совсем скоро произойдет переход на более совершенную, производительную 64-х битную архитектуру IA-64 (Intel Architecture 64 bit). Фактически переход уже начался, этому свидетельствует массовый выпуск и выход в продажу в 2003 году нового микропроцессора Athlon 64 корпорации AMD (Advanced Micro Devices), этот микропроцессор примечателен тем, что может работать как с 32-х битными приложениями, так и с 64-х битными. Производительность 64-х битных микропроцессоров намного выше.

Принцип действия - фотография 4 - изображение 4

Разрядность микропроцессора обозначается m/n/k/ и включает:

m - разрядность внутренних регистров, определяет принадлежность к тому или иному классу процессоров;

n - разрядность шины данных, определяет скорость передачи информации;

k - разрядность шины адреса, определяет размер адресного пространства. (Например, микропроцессор i8088 характеризуется значениями m/n/k=16/8/20)

3. Объем адресуемой памяти – максимальный объем памяти, который может обслужить микропроцессор.

32-х разрядный микропроцессор может обслужить 64 Гб (4х109 байт) памяти, а 64-х разрядный микропроцессор может обслужить 64 Тб (64х1012 байт) памяти.

4. Набор дополнительных инструкций (Instruction Set) - применяются в современных CISC-микропроцессорах и способны значительно ускорить их работу. Естественно только при условии поддержки данных наборов со стороны приложения. Все традиционные современные процессоры поддерживают набор инструкций MMX, который был самым первым (разработан корпорацией Intel еще в 1997 году). MMX расшифровывается как MultiMedia eXtensions (мультимедийные расширения). Он представил дополнительные возможности, ориентированные на обработку цифрового изображения и звука. В основе технологии лежит концепция (микроархитектура) SIMD (Single Instruction Many Data – "одна команда, много данных"), когда при помощи одной инструкции одновременно обрабатывается несколько элементов данных. SSE, SSE2, 3DNow! - дальнейшее развитие этой идеи. Микропроцессоры Intel Pentium 3 поддерживают SSE, а Pentium 4 и AMD Athlon 64 еще и SSE2 (это относится и к соответствующим микропроцессорам Intel Celeron). Процессоры AMD Athlon и Duron поддерживают наборы инструкций 3DNow!Professional и MMX, в Athlon XP была добавлена поддержка SSE (на уровне микрокода ядра).

Технологический процесс производства (Process Technology) – техпроцесс определяет размеры элементов и соединений между ними в интегральной схеме. Измеряется в микрометрах (0,35 μm; 0,25 μm;…). Чем меньше число, тем меньше сам кристалл, следовательно, меньше потребляемая мощность и тепловыделение. А ведь тепловыделение сильно препятствует увеличению частоты, на которой работает микропроцессор. Где-то в 1997 году произошел переход с 0,25 μm на 0,18 μm технологию производства. А уже в 2001 году произошел переход на 0,13 μm технологию, что позволило намного увеличить частоту. Вот-вот произойдет переход на 0,09 μm.

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

1. Тактовая частота (Частота ядра) (Internal clock) – это количество электрических импульсов в секунду. Каждый импульс несет в себе некую информацию - это могут быть команды процессору или данные памяти. Тактовая частота задается кварцевым генератором - одним из блоков, расположенных на материнской плате. Тактовая частота кварцевого генератора выдерживается с очень высокой точностью и лежит в мега или гигагерцовом диапазоне. Один герц - один импульс, один мегагерц - один миллион импульсов, один гигагерц - тысяча мегагерц. Микропроцессор, работающий на тактовой частоте 800 МГц, выполняет 800 миллионов рабочих тактов в секунду. В зависимости от сложности обрабатываемой команды процессору для выполнения задачи необходимы сотни и тысячи тактов. Но для выполнения простых операций бывает достаточно одного такта. Чем выше тактовая частота ядра, тем выше скорость обработки данных. Современные микропроцессоры работают на частотах от 300 МГц до 4,7 ГГц.

2. Частота системной шины (System clock или Front Side Bus) – системная шина служит для связи микропроцессора с остальными устройствами. Микропроцессор имеет две частоты: тактовая частота ядра и частота системной шины. Чем выше частота системной шины, тем выше скорость передачи данных между микропроцессором и остальными устройствами. Частота системной шины современных микропроцессоров от 66 МГц до 266МГц.

3. Объем Кэш-памяти (Cache) – Кэш-память быстрая память малой емкости, используемая процессором для ускорения операций, требующих обращения к памяти. Кеш – промежуточное звено между микропроцессором и опретивной памятью. Различают несколько уровней кэша: кэш первого уровня (L1) - кэш команд (инструкций) которые предстоит исполнить, кэш первого уровня размещается на одном кристалле с процессором. Кэш второго уровня (L2) - кэш данных - используется для ускорения операций с данными (в первую очередь чтения). На общую производительность влияет размер кэша L2. Чем больше L2, тем дороже процессор, т.к. память для кэша еще очень дорога. Поэтому эффективнее увеличивать частоту кэша, а для этого он должен находиться как можно ближе к ядру процессора. Кэш-память может работать на частоте 1/4, 1/3, 1/2, 1/1 от частоты ядра. Современные микропроцессоры имеют кэш объемом от 8 Кб до 5Мб.

Предельно эксплуатационные параметры микропроцессоров:

1. Напряжение питания микропроцессора – величина питающего напряжения микропроцессоров зависит от технологического процесса и от частоты ядра. Чем меньше кристалл и ниже частота, тем меньше напряжение питания. Напряжение питания современных микропроцессоров от 0,5 В до 3,5 В, чаще всего от 1,2 В до 1,75 В.

2. Ток ядра – у современных микропроцессоров ток, протекающий через ядро от 1 А до 90 А.

3. Потребляемая мощность – зависит от величины питающего напряжения и от частоты ядра. Чем меньше напряжение питания и частота, тем меньше потребляемая мощность. Мощность современных микропроцессоров от 1Вт до 120 Вт. Чаще всего в пределах 40-70 Вт.

4. Максимальная температура нагрева кристалла – максимальная температура кристалла, при которой возможна стабильная работа микропроцессора. У современных микропроцессоров она колеблется в пределах от 60˚С до 95˚С.

Физические параметры микропроцессорв (Форм-фактор):

1. Тип, размеры корпуса

2. Размеры кристалла

3. Количество выводов

4. Форма расположения выводов

Что такое микропроцессоры? Устройство, назначение, основные характеристики

Шины - фотография 5 - изображение 5

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

Что такое микропроцессоры?

Компьютер, большой и не очень, функционально (в упрощенной форме) может быть представлен в виде блок-схемы, состоящей из трех основных частей:

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

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

Арифметико-логическое устройство и внутренние регистры - изображение 6 - изображение 6

Принцип действия

Назначение микропроцессора заключается в считывании каждой команды из памяти, ее декодировании и выполнении. ЦПУ обрабатывает данные согласно инструкциям программы в форме логических и арифметических операций. Информация извлекается из памяти или поступает из устройства ввода, и результат обработки сохраняется в памяти или доставляется на соответствующее устройство вывода так, как это указано в командах. Вот что такое микропроцессоры. Для выполнения всех указанных функций у них имеются различные функциональные блоки. Такая внутренняя или организационная структура ЦПУ, определяющая его работу, называется его архитектурой.

Типичная схема устройства микропроцессора представлена вашему вниманию на фото ниже.

Декодер, блок управления и память - фотография 7 - изображение 7

Шины

Микрокомпьютер оперирует двоичным кодом. Бинарная информация представлена двоичными цифрами, называемыми битами. Группа битов образует машинное слово (их количество зависит от конкретной реализации). Обычные размеры слова равны 4, 8, 12, 16, 32 и 64 бит. Байт и полубайт представляют собой набор из 8 и 4 бит соответственно.

Шины соединяют различные блоки устройства и позволяют им обмениваться машинными словами. Они выполнены в виде отдельного провода для каждого бита, что позволяет обмениваться всеми разрядами машинного слова одновременно. Обработка информации в ЦПУ также происходит параллельно. Таким образом, шины могут рассматриваться как магистрали передачи данных. Их ширина определяется количеством составляющих их сигнальных линий. По адресной шине ЦПУ передает адрес устройства ввода-вывода или ячейки памяти, к которой он хочет получить доступ. Этот адрес принимается всеми устройствами, подключенными к процессору. Но реагирует на него только то, которому был адресован запрос. Шина данных служит для отправки и приема информации из устройств ввода-вывода и памяти, в т. ч. команд. Очевидно, что она является двунаправленной, а адресная – однонаправленной. Шина управления используется для передачи и приема сигналов управления между микропроцессором и различными элементами системы.

Интерфейс - фотография 8 - изображение 8

Арифметико-логическое устройство и внутренние регистры

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

В состав микропроцессора обычно входит и ряд регистров. Они используются для временного хранения команд, данных и адресов во время выполнения программы. Например, у микропроцессора Intel 8085 имеется 8-битный аккумулятор (Acc), 6 8-битных регистров общего назначения (B, C, D, E, H и L), 8-разрядный регистр команд (IR), в котором хранится следующая исполняемая инструкция, 16-битный программный счетчик с адресом следующей команды, которую необходимо выбрать из памяти в IR, 16-битный указатель стека, регистр флагов, который сигнализирует о выполнении определенных условий, возникающих во время выполнения логических и арифметических операций, и некоторые другие специальные регистры для внутренних процессов, доступа к которым у программиста нет.

Декодер, блок управления и память

Расшифровывает каждую команду и управляет внешними и внутренними блоками, обеспечивая правильную логическую работу системы.

Для сохранения команд, данных и результатов вычислений требуется наличие полупроводниковых запоминающих устройств. Программа записывается в память, подключенную к микропроцессору через адресную шину и шины данных и управления (подобно устройствам ввода-вывода).

Передача информации - изображение 9 - изображение 9

Интерфейс

Если к ЦПУ необходимо подключить одно или несколько устройств ввода-вывода, то возникает необходимость в соответствующем интерфейсе. Он выполняет следующие 4 функции:

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

Передача информации

Обмен данными, который происходит между периферийным устройством и микрокомпьютером, относятся либо к их программной передаче, либо к прямому доступу к памяти.

В первом случае загруженная программа запрашивает систему ввода-вывода на передачу данных микропроцессору или из него. Как правило, информация поступает в аккумулятор, хотя другие внутренние регистры могут также участвовать. Программная передача обычно используется при пересылке небольшого объема данных относительно медленными устройствами ввода-вывода, например, периферийным умножителем, периферийным АЛУ и т. д. В таких случаях трансфер обычно производится пословно.

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

Интерфейсные устройства - фотография 10 - изображение 10

Интерфейсные устройства

Для разработки пользовательских интерфейсов доступно обширное аппаратное обеспечение. К нему относятся мультиплексоры и демультиплексоры, линейные драйверы и приемники, буферы, стабильные и моностабильные мультивибраторы, триггер-защелки, вентильные схемы, сдвиговые регистры и т. д. Есть и более сложные программируемые интерфейсы, функции которых можно изменить командой микропроцессора. Эти интерфейсы могут быть общего или специального назначения.

Языки программирования

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

На языке ассемблера команды, включая места хранения, представлены буквенно-цифровыми символами, называемыми мнемоническими. По сравнению с машинным языком их использование значительно облегчает написание программ. Однако если программа написана на таком мнемоническом языке, она должна быть переведена в инструкции, понятные машине, чтобы их можно было хранить и выполнять в микрокомпьютере. В основном одна команда ассемблера транслируется в одну команду машинного языка.

Писать программы на ассемблере очень утомительно и требует много времени. Поэтому широкое распространение получили языки высокого уровня, такие как Fortran, Cobol, Algol, Pascal, которые можно затем перевести на язык машины. В этом случае одному оператору обычно соответствует несколько инструкций машинного языка.

Языки программирования - фотография 11 - изображение 11

Набор команд микрокомпьютера

Основные характеристики микропроцессора также определяются набором инструкций. Обычно он состоит из 5 групп:

  1. Группа передачи данных. Данные команды помогают перемещать информацию между регистрами внутри микропроцессора, между памятью и регистром или ячейками памяти.
  2. Арифметическая группа позволяет складывать, вычитать, увеличивать или уменьшать данные в памяти или регистрах (например, сложить содержимое двух регистров ЦПУ).
  3. Логическая группа используется для операций И, ИЛИ, ИСКЛЮЧАЮЩЕГО ИЛИ, сравнения, циклического сдвига, дополнения данных в памяти или регистрах (например, чтобы пропустить через схему ИЛИ содержимое двух регистров микропроцессора).
  4. Группа ветвления включает безусловные и условные переходы, вызов подпрограмм и возвращение из них. Условные инструкции служат для того, чтобы определенная операция выполнялась только в случае выполнения определенного условия (например, если требуется перейти к конкретной команде, когда результат последнего вычисления был равен нулю). Они обеспечивают возможность программе самой принимать решения.
  5. Группа стека, ввода-вывода и управления микропроцессором производит передачу данных между ЦПУ и периферией, манипулирует стеком и изменяет внутренние флаги управления. Эти команды позволяют программисту остановить устройство, перевести его в нерабочее состояние, включить и отключить систему прерываний и т. д.

Инструкции, которые хранятся вместе с данными в памяти, могут иметь длину в 1 или несколько байт. Длинные команды хранятся в последовательных ячейках памяти, причем адрес первого байта всегда используется как адрес всей команды. Кроме того, первый байт всегда является кодом операции.

Набор команд микрокомпьютера - фото 12 - изображение 12

Хронология развития

О том, что такое микропроцессоры, мир узнал в 1971 г., когда американская корпорация Intel впервые анонсировала Intel 4004. Он был выполнен на одном кристалле и являлся 4-разрядным (т. е. работал одновременно с 4 битами данных). Воодушевленная успехом 4004, корпорация Intel представила усовершенствованную версию Intel 4040. Многие другие компании также анонсировали 4-битные микропроцессоры. Например, Rockwell International PPS4, NEC μCOM 4 и Toshiba T3472. Первое 8-разрядное ЦПУ было представлено в 1973 г. той же компанией. Это был Intel 8008, за которым последовала улучшенная версия 8030. Несколько других производителей последовали этому примеру. Наиболее известными 8-битными микропроцессорами стали Intel 8085, Motorola M6800, NEC μCOM85AF, National *SC/MP, Zilog Z80 и Fairchild F8.

Затем появились 12- и 16-битные ЦПУ. Примерами первых являются IM 6100 Intersil и Toshiba T3190, а вторых – Intel 8086, Texas Instruments TMS 9940 и 9980, Fairchild 9440, Motorola М68000, Zilog Z670,.

Изменения характеристик микропроцессора с 1971 года были направлены на совершенствование архитектуры, набора команд, увеличение быстродействия, упрощение требований к мощности и наращивание объема памяти и средств ввода-вывода в одном чипе.

Первые типы микропроцессоров (4004, 4040, 8008) базировались на PMOS-технологии, которая из-за ограничений скорости уступила место NMOS. Другими технологиями являются CMOS, TTL, DTL, RTL.

#факты | Как работает процессор компьютера?

Хронология развития - фото 13 - изображение 13

Вы читаете эти строки со смартфона, планшета или компьютера. Любое из этих устройств основано на микропроцессоре. Микропроцессор является «сердцем» любого компьютерного устройства. Существует много типов микропроцессоров, но все они решают одни и те же задачи. Сегодня мы поговорим о том, как процессор работает и какие задачи он выполняет. На первый взгляд все это представляется очевидным. Но очень многим пользователям было бы интересно углубить свои знания о важнейшем компоненте, обеспечивающем работу компьютера. Мы узнаем о том, как технология, основанная на простой цифровой логике, позволяет вашему компьютеру не только решать математические задачи, но и быть развлекательным центром. Как всего две цифры — единица и ноль — преобразуются в красочные игры и фильмы? Этот вопрос многие неоднократно задавали себе и будут рады получить на него ответ. Ведь даже в основе недавно рассмотренного нами процессора AMD Jaguar, на котором базируются новейшие игровые приставки, лежит та же древняя логика.

#факты | Как работает процессор компьютера? - изображение 14 - изображение 14

В англоязычной литературе микропроцессор часто называют CPU (central processing unit, [единым] модулем центрального процессора). Причина такого названия кроется в том, что современный процессор представляет собою единый чип. Первый микропроцессор в истории человечества был создан корпорацией Intel в далеком 1971 году.

Роль Intel в истории микропроцессорной индустрии

Роль Intel в истории микропроцессорной индустрии - фотография 15 - изображение 15

Речь идет о модели Intel 4004. Мощным он не был и умел выполнять только действия сложения и вычитания. Одновременно он мог обрабатывать всего четыре бита информации (то есть был 4-битным). Но для своего времени его появление стало значительным событием. Ведь весь процессор поместился в одном чипе. До появления Intel 4004, компьютеры базировались на целом наборе чипов или дискретных компонентов (транзисторов). Микропроцессор 4004 лег в основу одного из первых портативных калькуляторов.

Первым микропроцессором для домашних компьютеров стал представленный в 1974 году Intel 8080. Вся вычислительная мощность 8-битного компьютера помещалась в одном чипе. Но по-настоящему большое значение имел анонс процессора Intel 8088. Он появился в 1979 году и с 1981 года стал использоваться в первых массовых персональных компьютерах IBM PC.

Далее процессоры начали развиваться и обрастать мощью. Каждый, кто хоть немного знаком с историей микропроцессорной индустрии, помнит, что на смену 8088 пришли 80286. Затем настал черед 80386, за которым следовали 80486. Потом были несколько поколений «Пентиумов»: Pentium, Pentium II, III и Pentium 4. Все это «интеловские» процессоры, основанные на базовой конструкции 8088. Они обладали обратной совместимостью. Это значит, что Pentium 4 мог обработать любой фрагмент кода для 8088, но делал это со скоростью, возросшей примерно в пять тысяч раз. С тех пор прошло не так много лет, но успели смениться еще несколько поколений микропроцессоров.

Логика микропроцессора - изображение 16 - изображение 16

С 2004 года Intel начала предлагать многоядерные процессоры. Число используемых в них транзисторов возросло на миллионы. Но даже сейчас процессор подчиняется тем общим правилам, которые были созданы для ранних чипов. В таблице отражена история микропроцессоров Intel до 2004 года (включительно). Мы сделаем некоторые пояснения к тому, что означают отраженные в ней показатели:

  • Name (Название). Модель процессора
  • Date (Дата). Год, в который процессор был впервые представлен. Многие процессоры представляли многократно, каждый раз, когда повышалась их тактовая частота. Таким образом, очередная модификация чипа могла быть повторно анонсирована даже через несколько лет после появления на рынке первой его версии
  • Transistors (Количество транзисторов). Количество транзисторов в чипе. Вы можете видеть, что этот показатель неуклонно увеличивался
  • Microns (Ширина в микронах). Один микрон равен одной миллионной доле метра. Величина этого показателя определяется толщиной самого тонкого провода в чипе. Для сравнения, толщина человеческого волоса составляет 100 микрон
  • Clock speed (Тактовая частота). Максимальная скорость работы процессора
  • Data Width. «Битность» арифметико-логического устройства процессора (АЛУ, ALU). 8-битное АЛУ может слагать, вычитать, умножать и выполнять иные действия над двумя 8-битными числами. 32-битное АЛУ может работать с 32-битными числами. Чтобы сложить два 32-битных числа, восьмибитному АЛУ необходимо выполнить четыре инструкции. 32-битное АЛУ справится с этой задачей за одну инструкцию. Во многих (но не во всех) случаях ширина внешней шины данных совпадает с «битностью» АЛУ. Процессор 8088 обладал 16-битным АЛУ, но 8-битной шиной. Для поздних «Пентиумов» была характерна ситуация, когда шина была уже 64-битной, а АЛУ по-прежнему оставалось 32-битным
  • MIPS (Миллионов инструкций в секунду). Позволяет приблизительно оценить производительность процессора. Современные микропроцессоры выполняют настолько много разных задач, что этот показатель потерял свое первоначальное значение и может использоваться, в основном, для сравнения вычислительной мощности нескольких процессоров (как в данной таблице)

Существует непосредственная связь между тактовой частотой, а также количеством транзисторов и числом операций, выполняемых процессором за одну секунду. Например, тактовая частота процессора 8088 достигала 5 МГЦ, а производительность: всего 0,33 миллиона операций в секунду. То есть на выполнение одной инструкции требовалось порядка 15 тактов процессора. В 2004 году процессоры уже могли выполнять по две инструкции за один такт. Это улучшение было обеспечено увеличением количества процессоров в чипе.

Чип также называют интегральной микросхемой (или просто микросхемой). Чаще всего это маленькая и тонкая кремниевая пластинка, в которую «впечатаны» транзисторы. Чип, сторона которого достигает двух с половиной сантиметров, может содержать десятки миллионов транзисторов. Простейшие процессоры могут быть квадратиками со стороной всего в несколько миллиметров. И этого размера достаточно для нескольких тысяч транзисторов.

Логика микропроцессора

Память микропроцессора - изображение 17 - изображение 17

Чтобы понять, как работает микропроцессор, следует изучить логику, на которой он основан, а также познакомиться с языком ассемблера. Это родной язык микропроцессора.

Микропроцессор способен выполнять определенный набор машинных инструкций (команд). Оперируя этими командами, процессор выполняет три основные задачи:

  • C помощью своего арифметико-логического устройства, процессор выполняет математические действия: сложение, вычитание, умножение и деление. Современные микропроцессоры полностью поддерживают операции с плавающей точкой (с помощью специального арифметического процессора операций с плавающей точкой)
  • Микропроцессор способен перемещать данные из одного типа памяти в другой
  • Микропроцессор обладает способностью принимать решение и, на основании принятого им решения, «перепрыгивать», то есть переключаться на выполнение нового набора команд

Микропроцессор содержит:

  • Address bus (адресную шину). Ширина этой шины может составлять 8, 16 или 32 бита. Она занимается отправкой адреса в память
  • Data bus (шину данных): шириной 8, 16, 32 или 64 бита. Эта шина может отправлять данные в память или принимать их из памяти. Когда говорят о «битности» процессора, речь идет о ширине шины данных
  • Каналы RD (read, чтения) и WR (write, записи), обеспечивающие взаимодействие с памятью
  • Clock line (шина синхронизирующих импульсов), обеспечивающая такты процессора
  • Reset line (шина стирания, шина сброса), обнуляющая значение счетчика команд и перезапускающая выполнение инструкций

Поскольку информация достаточно сложна, будем исходить из того, что ширина обеих шин — и адресной и шины данных — составляет всего 8 бит. И кратко рассмотрим компоненты этого сравнительно простого микропроцессора:

  • Регистры A, B и C являются логическими микросхемами, используемыми для промежуточного хранения данных
  • Address latch (защелка адреса) подобна регистрам A, B и C
  • Счетчик команд является логической микросхемой (защелкой), способной приращивать значение на единицу за один шаг (если им получена соответствующая команда) и обнулять значение (при условии получения соответствующей команды)
  • ALU (арифметико-логическое устройство) может осуществлять между 8-битными числами действия сложения, вычитания, умножения и деления или выступать в роли обычного сумматора
  • Test register (тестовый регистр) является специальной защелкой, которая хранит результаты операций сравнения, производимых АЛУ. Обычно АЛУ сравнивает два числа и определяет, равны ли они или одно из них больше другого. Тестовый регистр способен также хранить бит переноса последнего действия сумматора. Он хранит эти значения в триггерной схеме. В дальнейшем эти значения могут использоваться дешифратором команд для принятия решений
  • Шесть блоков на диаграмме отмечены, как «3-State». Это буферы сортировки. Множество источников вывода могут быть соединены с проводом, но буфер сортировки позволяет только одному из них (в один момент времени) передавать значение: «0» или «1». Таким образом буфер сортировки умеет пропускать значения или перекрывать источнику вывода возможность передавать данные
  • Регистр команд (instruction register) и дешифратор команд (instruction decoder) держат все вышеперечисленные компоненты под контролем

На данной диаграмме не отображены линии управления дешифратора команд, которые можно выразить в виде следующих «приказов»:

  • «Регистру A принять значение, поступающее в настоящий момент от шины данных»
  • «Регистру B принять значение, поступающее в настоящий момент от шины данных»
  • «Регистру C принять значение, поступающее в настоящий момент от арифметико-логического устройства»
  • «Регистру счетчика команд принять значение, поступающее в настоящий момент от шины данных»
  • «Адресному регистру принять значение, поступающее в настоящий момент от шины данных»
  • «Регистру команд принять значение, поступающее в настоящий момент от шины данных»
  • «Счетчику команд увеличить значение [на единицу]»
  • «Счетчику команд обнулиться»
  • «Активировать один из из шести буферов сортировки» (шесть отдельных линий управления)
  • «Сообщить арифметико-логическому устройству, какую операцию ему выполнять»
  • «Тестовому регистру принять тестовые биты из АЛУ»
  • «Активировать RD (канал чтения)»
  • «Активировать WR (канал записи)»

В дешифратор команд поступают биты данных из тестового регистра, канала синхронизации, а также из регистра команд. Если максимально упростить описание задач дешифратора инструкций, то можно сказать, что именно этот модуль «подсказывает» процессору, что необходимо сделать в данный момент.

Память микропроцессора

Инструкции микропроцессора - изображение 18 - изображение 18

Знакомство с подробностями, касающимися компьютерной памяти и ее иерархии помогут лучше понять содержание этого раздела.

Выше мы писали о шинах (адресной и данных), а также о каналах чтения (RD) и записи (WR). Эти шины и каналы соединены с памятью: оперативной (ОЗУ, RAM) и постоянным запоминающим устройством (ПЗУ, ROM). В нашем примере рассматривается микропроцессор, ширина каждой из шин которого составляет 8 бит. Это значит, что он способен выполнять адресацию 256 байт (два в восьмой степени). В один момент времени он может считывать из памяти или записывать в нее 8 бит данных. Предположим, что этот простой микропроцессор располагает 128 байтами ПЗУ (начиная с адреса 0) или 128 байтами оперативной памяти (начиная с адреса 128).

Модуль постоянной памяти содержит определенный предварительно установленный постоянный набор байт. Адресная шина запрашивает у ПЗУ определенный байт, который следует передать шине данных. Когда канал чтения (RD) меняет свое состояние, модуль ПЗУ предоставляет запрошенный байт шине данных. То есть в данном случае возможно только чтение данных.

Из оперативной памяти процессор может не только считывать информацию, он способен также записывать в нее данные. В зависимости от того, чтение или запись осуществляется, сигнал поступает либо через канал чтения (RD), либо через канал записи (WR). К сожалению, оперативная память энергозависима. При отключении питания она теряет все размещенные в ней данные. По этой причине компьютеру необходимо энергонезависимое постоянное запоминающее устройство.

Более того, теоретически компьютер может обойтись и вовсе без оперативной памяти. Многие микроконтроллеры позволяют размещать необходимые байты данных непосредственно в чип процессора. Но без ПЗУ обойтись невозможно. В персональных компьютерах ПЗУ называется базовой системой ввода и вывода (БСВВ, BIOS, Basic Input/Output System). Свою работу при запуске микропроцессор начинает с выполнения команд, найденных им в BIOS.

Команды BIOS выполняют тестирование аппаратного обеспечения компьютера, а затем они обращаются к жесткому диску и выбирают загрузочный сектор. Этот загрузочный сектор является отдельной небольшой программой, которую BIOS сначала считывает с диска, а затем размещает в оперативной памяти. После этого микропроцессор начинает выполнять команды расположенного в ОЗУ загрузочного сектора. Программа загрузочного сектора сообщает микропроцессору о том, какие данные (предназначенные для последующего выполнения процессором) следует дополнительно переместить с жесткого диска в оперативную память. Именно так происходит процесс загрузки процессором операционной системы.

Инструкции микропроцессора

Работа микропроцессора на примере вычисления факториала - фотография 19 - изображение 19

Даже простейший микропроцессор способен обрабатывать достаточно большой набор инструкций. Набор инструкций является своего рода шаблоном. Каждая из этих загружаемых в регистр команд инструкций имеет свое значение. Людям непросто запомнить последовательность битов, поэтому каждая инструкция описывается в виде короткого слова, каждое из которых отражает определенную команду. Эти слова составляют язык ассемблера процессора. Ассемблер переводит эти слова на понятный процессору язык двоичных кодов.

Приведем список слов-команд языка ассемблера для условного простого процессора, который мы рассматриваем в качестве примера к нашему повествованию:

  • LOADA mem — Загрузить (load) регистр A из некоторого адреса памяти
  • LOADB mem — Загрузить (load) регистр B из некоторого адреса памяти
  • CONB con — Загрузить постоянное значение (constant value) в регистр B
  • SAVEB mem — Сохранить (save) значение регистра B в памяти по определенному адресу
  • SAVEC mem — Сохранить (save) значение регистра C в памяти по определенному адресу
  • ADD — Сложить (add) значения регистров A и B. Результат действия сохранить в регистре C
  • SUB — Вычесть (subtract) значение регистра B из значения регистра A. Результат действия сохранить в регистре C
  • MUL — Перемножить (multiply) значения регистров A и B. Результат действия сохранить в регистре C
  • DIV — Разделить (divide) значение регистра A на значение регистра B. Результат действия сохранить в регистре C
  • COM — Сравнить (compare) значения регистров A и B. Результат передать в тестовый регистр
  • JUMP addr — Перепрыгнуть (jump) к указанному адресу
  • JEQ addr — Если выполняется условие равенства значений двух регистров, перепрыгнуть (jump) к указанному адресу
  • JNEQ addr — Если условие равенства значений двух регистров не выполняется, перепрыгнуть (jump) к указанному адресу
  • JG addr — Если значение больше, перепрыгнуть (jump) к указанному адресу
  • JGE addr — Если значение больше или равно, перепрыгнуть (jump) к указанному адресу
  • JL addr — Если значение меньше, перепрыгнуть (jump) к указанному адресу
  • JLE addr — Если значение меньше или равно, перепрыгнуть (jump) к указанному адресу
  • STOP — Остановить (stop) выполнение

Английские слова, обозначающие выполняемые действия, в скобках приведены неспроста. Так мы можем видеть, что язык ассемблера (как и многие другие языки программирования) основан на английском языке, то есть на привычном средстве общения тех людей, которые создавали цифровые технологии.

Работа микропроцессора на примере вычисления факториала

Декодирование - фотография 20 - изображение 20

Рассмотрим работу микропроцессора на конкретном примере выполнения им простой программы, которая вычисляет факториал от числа «5». Сначала решим эту задачку «в тетради»:

факториал от 5 = 5! = 5 * 4 * 3 * 2 * 1 = 120

На языке программирования C этот фрагмент кода, выполняющего данное вычисление, будет выглядеть следующим образом:

a=1;f=1;while (a < = 5){ f = f * a; a = a + 1;}

Когда эта программа завершит свою работу, переменная f будет содержать значение факториала от пяти.

Компилятор C транслирует (то есть переводит) этот код в набор инструкций языка ассемблера. В рассматриваемом нами процессоре оперативная память начинается с адреса 128, а постоянная память (которая содержит язык ассемблера) начинается с адреса 0. Следовательно, на языке данного процессора эта программа будет выглядеть так:

// Предположим, что a по адресу 128// Предположим, что F по адресу 1290 CONB 1 // a=1;1 SAVEB 1282 CONB 1 // f=1;3 SAVEB 1294 LOADA 128 // if a > 5 the jump to 175 CONB 56 COM7 JG 178 LOADA 129 // f=f*a;9 LOADB 12810 MUL11 SAVEC 12912 LOADA 128 // a=a+1;13 CONB 114 ADD15 SAVEC 12816 JUMP 4 // loop back to if17 STOP

Теперь возникает следующий вопрос: а как же все эти команды выглядят в постоянной памяти? Каждая из этих инструкций должна быть представлена в виде двоичного числа. Чтобы упростить понимание материала, предположим, что каждая из команд языка ассемблера рассматриваемого нами процессора имеет уникальный номер:

  • LOADA — 1
  • LOADB — 2
  • CONB — 3
  • SAVEB — 4
  • SAVEC mem — 5
  • ADD — 6
  • SUB — 7
  • MUL — 8
  • DIV — 9
  • COM — 10
  • JUMP addr — 11
  • JEQ addr — 12
  • JNEQ addr — 13
  • JG addr — 14
  • JGE addr — 15
  • JL addr — 16
  • JLE addr — 17
  • STOP — 18

Будем считать эти порядковые номера кодами машинных команд (opcodes). Их еще называют кодами операций. При таком допущении, наша небольшая программа в постоянной памяти будет представлена в таком виде:

// Предположим, что a по адресу 128// Предположим, что F по адресу 129Addr машинная команда/значение0 3 // CONB 11 12 4 // SAVEB 1283 1284 3 // CONB 15 16 4 // SAVEB 1297 1298 1 // LOADA 1289 12810 3 // CONB 511 512 10 // COM13 14 // JG 1714 3115 1 // LOADA 12916 12917 2 // LOADB 12818 12819 8 // MUL20 5 // SAVEC 12921 12922 1 // LOADA 12823 12824 3 // CONB 125 126 6 // ADD27 5 // SAVEC 12828 12829 11 // JUMP 430 831 18 // STOP

Как вы заметили, семь строчек кода на языке C были преобразованы в 18 строчек на языке ассемблера. Они заняли в ПЗУ 32 байта.

Декодирование

Микропроцессоры: производительность и тенденции - фотография 21 - изображение 21

Разговор о декодировании придется начать c рассмотрения филологических вопросов. Увы, далеко не все компьютерные термины имеют однозначные соответствия в русском языке. Перевод терминологии зачастую шел стихийно, а поэтому один и тот же английский термин может переводиться на русский несколькими вариантами. Так и случилось с важнейшей составляющей микропроцессорной логики «instruction decoder». Компьютерные специалисты называют его и дешифратором команд и декодером инструкций. Ни одно из этих вариантов названия невозможно назвать ни более, ни менее «правильным», чем другое.

Дешифратор команд нужен для того, чтобы перевести каждый машинный код в набор сигналов, приводящих в действие различные компоненты микропроцессора. Если упростить суть его действий, то можно сказать, что именно он согласует «софт» и «железо».

Рассмотрим работу дешифратора команд на примере инструкции ADD, выполняющей действие сложения:

  • В течение первого цикла тактовой частоты процессора происходит загрузка команды. На этом этапе дешифратору команд необходимо: активировать буфер сортировки для счетчика команд; активировать канал чтения (RD); активировать защелку буфера сортировки на пропуск входных данных в регистр команд
  • В течение второго цикла тактовой частоты процессора команда ADD декодируется. На этом этапе арифметико-логическое устройство выполняет сложение и передает значение в регистр C
  • В течение третьего цикла тактовой частоты процессора счетчик команд увеличивает свое значение на единицу (теоретически, это действие пересекается с происходившим во время второго цикла)

Каждая команда может быть представлена в виде набора последовательно выполняемых операций, которые в определенном порядке манипулируют компонентами микропроцессора. То есть программные инструкции ведут ко вполне физическим изменениям: например, изменению положения защелки. Некоторые инструкции могут потребовать на свое выполнение двух или трех тактовых циклов процессора. Другим может потребоваться даже пять или шесть циклов.

Микропроцессоры: производительность и тенденции

64-битные процессоры - фото 22 - изображение 22

Количество транзисторов в процессоре является важным фактором, влияющим на его производительность. Как было показано ранее, в процессоре 8088 на выполнение одной инструкции требовалось 15 циклов тактовой частоты. А чтобы выполнить одну 16-битную операцию, уходило и вовсе порядка 80 циклов. Так был устроен умножитель АЛУ этого процессора. Чем больше транзисторов и чем мощнее умножитель АЛУ, тем больше всего успевает сделать процессор за один свой такт.

Многие транзисторы поддерживают технологию конвейеризации. В рамках конвейерной архитектуры происходит частичное наложение выполняемых инструкций друг на друга. Инструкция может требовать на свое выполнение все тех же пяти циклов, но если процессором одновременно обрабатываются пять команд (на разных этапах завершенности), то в среднем на выполнение одной инструкции потребуется один цикл тактовой частоты процессора.

Во многих современных процессорах дешифратор команд не один. И каждый из них поддерживает конвейеризацию. Это позволяет выполнять более одной инструкции за один такт процессора. Для реализации этой технологии требуется невероятное множество транзисторов.

64-битные процессоры

Цифровые устройства и микропроцессоры Лекция 1 Электронная система - фотография 23 - изображение 23

Хотя массовое распространение 64-битные процессоры получили лишь несколько лет назад, они существуют уже сравнительно давно: с 1992 года. И Intel, и AMD предлагают в настоящее время такие процессоры. 64-битным можно считать такой процессор, который обладает 64-битным арифметико-логическим устройством (АЛУ), 64-битными регистрами и 64-битными шинами.

Основная причина, по которой процессорам нужна 64-битность, состоит в том, что данная архитектура расширяет адресное пространство. 32-битные процессоры могут получать доступ только к двум или четырем гигабайтам оперативной памяти. Когда-то эти цифры казались гигантскими, но миновали годы и сегодня такой памятью никого уже не удивишь. Несколько лет назад память обычного компьютера составляла 256 или 512 мегабайт. В те времена четырехгигабайтный лимит мешал только серверам и машинам, на которых работают большие базы данных.

Но очень быстро оказалось, что даже обычным пользователям порой не хватает ни двух, ни даже четырех гигабайт оперативной памяти. 64-битных процессоров это досадное ограничение не касается. Доступное им адресное пространство в наши дни кажется бесконечным: два в шестьдесят четвертой степени байт, то есть что-то около миллиарда гигабайт. В обозримом будущем столь гигантской оперативной памяти не предвидится.

64-битная адресная шина, а также широкие и высокоскоростные шины данных соответствующих материнских плат, позволяют 64-битным компьютерам увеличить скорость ввода и вывода данных в процессе взаимодействия с такими устройствами, как жесткий диск и видеокарта. Эти новые возможности значительно увеличивают производительность современных вычислительных машин.

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

По материалам computer.howstuffworks.com

Цифровые устройства и микропроцессоры Лекция 1 Электронная система

Как работает процессор? - фотография 24 - изображение 24

Материалы ФГАОУ ВО «Санкт-Петербургский политехнический университет Петра Великого» взято здесь https://courses.openedu.ru/courses/course-v1:spbstu+CUMICR+f...Специально для ЛЛ

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

Два основных компонента процессора - изображение 25 - изображение 25

Аналоговый сигнал – это сигнал, уровень напряжения которого может принимать любое значение из некоторого диапазона, например, от 0 до 5 Вольт.Цифровой сигнал – это частный случай аналогового сигнала, который может принимать только два значения – высокий и низкий уровень, например, высокий уровень – 5 Вольт, низкий уровень – 0 Вольт. Цифровой сигнал в один момент времени может передавать один бит информации – 0 или 1. Обычно высокому уровню соответствует 1, низкому – 0.Цифровая шина – это набор цифровых сигналов, объединенных общей функцией. По цифровой шине в один момент времени может быть передано двоичное число, количество разрядов которого равно количеству проводов в шине. Исторически электронные системы разрабатывались для решения какой-то одной задачи. Для каждой новой задачи, даже если изменения были незначительными, приходилось заново разрабатывать и изготавливать систему, что дорого и занимает много времени. Поэтому было решено создать некий универсальный блок, который можно использовать для решения широкого круга задач.Так появились микропроцессорные системы.

Хранение информации — регистры и память - фото 26 - изображение 26

Микропроцессор – это микросхема, которая может выполнять одно из определенных действий, в зависимости от управляющей программы. То есть микропроцессор обладает универсальностью – при изменении условий задачи в ряде случаев можно внести изменения в программу, а конструктивно система не поменяется. Микропроцессор работает только с цифровыми шинами, для подключения аналоговых и цифровых сигналов необходимо использовать согласующие устройства. Микропроцессор состоит из арифметико-логического устройства, в котором и выполняются действия, указанные в программе. Это арифметические и логические действия с числами, которые передаются по цифровым шинам, подключенным кмикропроцессору. Схема управления выборкой команд определяет то действие, которое будетвыполнять арифметико-логическое устройство в данный момент в зависимости от программы. Логика управления осуществляет синхронизацию работы всех блоков.Регистры – это ячейки памяти, в которых хранятся данные для выполнения программы и некоторая служебная информация, необходимая для корректной работы микропроцессора.

Команды (инструкции) - изображение 27 - изображение 27

Рассмотрим схему подключения микропроцессора.

Тактирование процессора - фото 28 - изображение 28

Микропроцессору необходимо питание, напряжение лежит в диапазоне от 1,5 до 5 вольт. Общий провод или земля – это нулевой уровень напряжения, т.е. такой уровень, относительно которого отсчитываются все напряжения в системе. Тактовый сигнал представляет собой набор импульсов. После появления очередного импульса микропроцессор начинает выполнение очередного действия, указанного в программе и должен завершить его до прихода следующего импульса. Также тактовый сигнал обеспечивает синхронную работу всех блоков внутри микропроцессора. Сигнал сброса переводит микропроцессор в начальное состояние – т.е. в такое состояние, в котором микропроцессор оказывается при включении питания. Обмен информацией микропроцессора с другими устройствами в системе производится по трем шинам – шине адреса, шине данных и шине управления, которые через согласующий буфер объединяются в магистральную шину для удобства подключения других устройств. Шина адреса используется для выбора источника или получателя данных, по шине данных передаются собственно данные, шина управления обеспечивает синхронизацию и определяет, что именно происходит – запись или чтение данных.

Выполнение инструкций - фото 29 - изображение 29

Рассмотрим процесс обмена данными более подробно. Например, подключениеблока памяти к микропроцессору. Память состоит из ячеек, каждая из которых имеет собой уникальный адрес и в которую можно записать какое-либо число. Для того, чтобы записать число в память, микропроцессор выставляет на шине управления сигнал, соответствующий циклу записи, на шине адреса – адрес ячейки, к которую необходимо записать данные, а на шине данных – те данные, которые нужно записать. Блок память производить запись данных в соответствующую ячейку. Для того, чтобы считать данные, микропроцессор выставляет на шине управления сигнал, соответствующий циклу чтения, а на шине адреса – адрес ячейки памяти, из которой нужно считать данные. После этого блок памяти выдаст на шинуданных содержимое запрашиваемой ячейки.

Очень неграмотная лекция с кучей ошибок.

Как работает процессор?

Шина - изображение 30 - изображение 30

Инструмент проще, чем машина. Зачастую инструментом работают руками, а машину приводит в действие паровая сила или животное.

Чарльз Бэббидж

Компьютер тоже можно назвать машиной, только вместо паровой силы здесь электричество. Но программирование сделало компьютер таким же простым, как любой инструмент.

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

Два основных компонента процессора

Устройство управления

Устройство управления (УУ) помогает процессору контролировать и выполнять инструкции. УУ сообщает компонентам, что именно нужно делать. В соответствии с инструкциями он координирует работу с другими частями компьютера, включая второй основной компонент — арифметико-логическое устройство (АЛУ). Все инструкции вначале поступают именно на устройство управления.

Существует два типа реализации УУ:

  • УУ на жёсткой логике (англ. hardwired control units). Характер работы определяется внутренним электрическим строением — устройством печатной платы или кристалла. Соответственно, модификация такого УУ без физического вмешательства невозможна.
  • УУ с микропрограммным управлением (англ. microprogrammable control units). Может быть запрограммирован для тех или иных целей. Программная часть сохраняется в памяти УУ.

УУ на жёсткой логике быстрее, но УУ с микропрограммным управлением обладает более гибкой функциональностью.

Арифметико-логическое устройство

Это устройство, как ни странно, выполняет все арифметические и логические операции, например сложение, вычитание, логическое ИЛИ и т. п. АЛУ состоит из логических элементов, которые и выполняют эти операции.

Большинство логических элементов имеют два входа и один выход.

Ниже приведена схема полусумматора, у которой два входа и два выхода. A и B здесь являются входами, S — выходом, C — переносом (в старший разряд).

Кэш - фотография 31 - изображение 31

Хранение информации — регистры и память

Как говорилось ранее, процессор выполняет поступающие на него команды. Команды в большинстве случаев работают с данными, которые могут быть промежуточными, входными или выходными. Все эти данные вместе с инструкциями сохраняются в регистрах и памяти.

Регистры

Регистр — минимальная ячейка памяти данных. Регистры состоят из триггеров (англ. latches/flip-flops). Триггеры, в свою очередь, состоят из логических элементов и могут хранить в себе 1 бит информации.

Прим. перев. Триггеры могут быть синхронные и асинхронные. Асинхронные могут менять своё состояние в любой момент, а синхронные только во время положительного/отрицательного перепада на входе синхронизации.

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

  • RS-триггер: сохраняет своё состояние при нулевых уровнях на обоих входах и изменяет его при установке единице на одном из входов (Reset/Set — Сброс/Установка).
  • JK-триггер: идентичен RS-триггеру за исключением того, что при подаче единиц сразу на два входа триггер меняет своё состояние на противоположное (счётный режим).
  • T-триггер: меняет своё состояние на противоположное при каждом такте на его единственном входе.
  • D-триггер: запоминает состояние на входе в момент синхронизации. Асинхронные D-триггеры смысла не имеют.

Для хранения промежуточных данных ОЗУ не подходит, т. к. это замедлит работу процессора. Промежуточные данные отсылаются в регистры по шине. В них могут храниться команды, выходные данные и даже адреса ячеек памяти.

Загрузка

Память (ОЗУ)

ОЗУ (оперативное запоминающее устройство, англ. RAM) — это большая группа этих самых регистров, соединённых вместе. Память у такого хранилища непостоянная и данные оттуда пропадают при отключении питания. ОЗУ принимает адрес ячейки памяти, в которую нужно поместить данные, сами данные и флаг записи/чтения, который приводит в действие триггеры.

Прим. перев. Оперативная память бывает статической и динамической — SRAM и DRAM соответственно. В статической памяти ячейками являются триггеры, а в динамической — конденсаторы. SRAM быстрее, а DRAM дешевле.

Команды (инструкции)

Команды — это фактические действия, которые компьютер должен выполнять. Они бывают нескольких типов:

  • Арифметические: сложение, вычитание, умножение и т. д.
  • Логические: И (логическое умножение/конъюнкция), ИЛИ (логическое суммирование/дизъюнкция), отрицание и т. д.
  • Информационные: move, input, outptut, load и store.
  • Команды перехода: goto, if ... goto, call и return.
  • Команда останова: halt.

Прим. перев. На самом деле все арифметические операции в АЛУ могут быть созданы на основе всего двух: сложение и сдвиг. Однако чем больше базовых операций поддерживает АЛУ, тем оно быстрее.

Инструкции предоставляются компьютеру на языке ассемблера или генерируются компилятором высокоуровневых языков.

В процессоре инструкции реализуются на аппаратном уровне. За один такт одноядерный процессор может выполнить одну элементарную (базовую) инструкцию.

Группу инструкций принято называть набором команд (англ. instruction set).

Тактирование процессора

Быстродействие компьютера определяется тактовой частотой его процессора. Тактовая частота — количество тактов (соответственно и исполняемых команд) за секунду.

Частота нынешних процессоров измеряется в ГГц (Гигагерцы). 1 ГГц = 10⁹ Гц — миллиард операций в секунду.

Чтобы уменьшить время выполнения программы, нужно либо оптимизировать (уменьшить) её, либо увеличить тактовую частоту. У части процессоров есть возможность увеличить частоту (разогнать процессор), однако такие действия физически влияют на процессор и нередко вызывают перегрев и выход из строя.

Выполнение инструкций

Инструкции хранятся в ОЗУ в последовательном порядке. Для гипотетического процессора инструкция состоит из кода операции и адреса памяти/регистра. Внутри управляющего устройства есть два регистра инструкций, в которые загружается код команды и адрес текущей исполняемой команды. Ещё в процессоре есть дополнительные регистры, которые хранят в себе последние 4 бита выполненных инструкций.

Ниже рассмотрен пример набора команд, который суммирует два числа:

  1. LOAD_A 8. Это команда сохраняет в ОЗУ данные, скажем, <1100 1000>. Первые 4 бита — код операции. Именно он определяет инструкцию. Эти данные помещаются в регистры инструкций УУ. Команда декодируется в инструкцию load_A — поместить данные 1000 (последние 4 бита команды) в регистр A.
  2. LOAD_B 2. Ситуация, аналогичная прошлой. Здесь помещается число 2 (0010) в регистр B.
  3. ADD B A. Команда суммирует два числа (точнее прибавляет значение регистра B в регистр A). УУ сообщает АЛУ, что нужно выполнить операцию суммирования и поместить результат обратно в регистр A.
  4. STORE_A 23. Сохраняем значение регистра A в ячейку памяти с адресом 23.

Вот такие операции нужны, чтобы сложить два числа.

Шина

Все данные между процессором, регистрами, памятью и I/O-устройствами (устройствами ввода-вывода) передаются по шинам. Чтобы загрузить в память только что обработанные данные, процессор помещает адрес в шину адреса и данные в шину данных. Потом нужно дать разрешение на запись на шине управления.

Поток инструкций - изображение 32 - изображение 32

Кэш

У процессора есть механизм сохранения инструкций в кэш. Как мы выяснили ранее, за секунду процессор может выполнить миллиарды инструкций. Поэтому если бы каждая инструкция хранилась в ОЗУ, то её изъятие оттуда занимало бы больше времени, чем её обработка. Поэтому для ускорения работы процессор хранит часть инструкций и данных в кэше.

Если данные в кэше и памяти не совпадают, то они помечаются грязными битами (англ. dirty bit).

Поток инструкций

Современные процессоры могут параллельно обрабатывать несколько команд. Пока одна инструкция находится в стадии декодирования, процессор может успеть получить другую инструкцию.

Устройства микропроцессора - фотография 33 - изображение 33

Однако такое решение подходит только для тех инструкций, которые не зависят друг от друга.

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

Arduino: выбор платы, подключение и первая программа tproger.ru

Перевод статьи «How does a CPU work?»

Не смешно? А здесь смешно: @ithumor

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

Микропроцессорная техника: характеристики, функции и применение - фото 34 - изображение 34

Определение микропроцессора

УСТРОЙСТВО МИКРОПРОЦЕССОРА

Микропроцессор - центральное устройство (или комплекс устройств) ЭВМ (или вычислительной системы), которое выполняет арифметические и логические операции, заданные программой преобразования информации, управляет вычислительным процессом и координирует работу устройств системы (запоминающих, сортировальных, ввода — вывода, подготовки данных и др.). В вычислительной системе может быть несколько параллельно работающих процессоров; такие системы называют многопроцессорными. Наличие нескольких процессоров ускоряет выполнение одной большой или нескольких (в том числе взаимосвязанных) программ. Основными характеристиками микропроцессора являются быстродействие и разрядность. Быстродействие - это число выполняемых операций в секунду. Разрядность характеризует объём информации, который микропроцессор обрабатывает за одну операцию: 32-разрядный процессор за одну операцию обрабатывает 32 бит информации, 64-разрядный - 64 бита. Скорость работы микропроцессора во многом определяет быстродействие компьютера. Он выполняет всю обработку данных, поступающих в компьютер и хранящихся в его памяти, под управлением программы, также хранящейся в памяти. Персональные компьютеры оснащают центральными процессорами различных мощностей. Основные функции которых обработка данных по заданной программе путем выполнения арифметических и логических операций и программное управление работой устройств компьютера.

Устройство управления (УУ). Осуществляет координацию работы всех остальных устройств, выполняет функции управления устройствами, управляет вычислениями в компьютере.

Арифметико-логическое устройство (АЛУ). Так называется устройство для целочисленных операций. Арифметические операции, такие как сложение, умножение и деление, а также логические операции (OR, AND, ASL, ROL и др.) обрабатываются при помощи АЛУ. Эти операции составляют подавляющее большинство программного кода в большинстве программ. Все операции в АЛУ производятся в регистрах - специально отведенных ячейках АЛУ. В процессоре может быть несколько АЛУ. Каждое способно исполнять арифметические или логические операции независимо от других, что позволяет выполнять несколько операций одновременно. Арифметико-логическое устройствовыполняет арифметические и логические действия. Логические операции делятся на две простые операции: "Да" и "Нет" ("1" и "0"). Обычно эти два устройства выделяются чисто условно, конструктивно они не разделены.

AGU (Address Generation Unit) - устройство генерации адресов. Это устройство не менее важное, чем АЛУ, т.к. оно отвечает за корректную адресацию при загрузке или сохранении данных. Абсолютная адресация в программах используется только в редких исключениях. Как только берутся массивы данных, в программном коде используется косвенная адресация, заставляющая работать AGU.

Математический сопроцессор (FPU). Процессор может содержать несколько математических сопроцессоров. Каждый из них способен выполнять, по меньшей мере, одну операцию с плавающей точкой независимо от того, что делают другие АЛУ. Метод конвейерной обработки данных позволяет одному математическому сопроцессору выполнять несколько операций одновременно. Сопроцессор поддерживает высокоточные вычисления как целочисленные, так и с плавающей точкой и, кроме того, содержит набор полезных констант, ускоряющих вычисления. Сопроцессор работает параллельно с центральным процессором, обеспечивая, таким образом, высокую производительность. Система выполняет команды сопроцессора в том порядке, в котором они появляются в потоке. Математический сопроцессор персонального компьютера IBM PC позволяет ему выполнять скоростные арифметические и логарифмические операции, а также тригонометрические функции с высокой точностью.

Дешифратор инструкций (команд). Анализирует инструкции в целях выделения операндов и адресов, по которым размещаются результаты. Затем следует сообщение другому независимому устройству о том, что необходимо сделать для выполнения инструкции. Дешифратор допускает выполнение нескольких инструкций одновременно для загрузки всех исполняющих устройств.

Кэш-память. Особая высокоскоростная память процессора. Кэш используется в качестве буфера для ускорения обмена данными между процессором и оперативной памятью, а также для хранения копий инструкций и данных, которые недавно использовались процессором. Значения из кэш-памяти извлекаются напрямую, без обращения к основной памяти. При изучении особенностей работы программ было обнаружено, что они обращаются к тем или иным областям памяти с различной частотой, а именно: ячейки памяти, к которым программа обращалась недавно, скорее всего, будут использованы вновь. Предположим, что микропроцессор способен хранить копии этих инструкций в своей локальной памяти. В этом случае процессор сможет каждый раз использовать копию этих инструкций на протяжении всего цикла. Доступ к памяти понадобиться в самом начале. Для хранения этих инструкций необходим совсем небольшой объём памяти. Если инструкции в процессор поступают достаточно быстро, то микропроцессор не будет тратить время на ожидание. Таким образом экономиться время на выполнение инструкций. Но для самых быстродействующих микропроцессоров этого недостаточно. Решение данной проблемы заключается в улучшении организации памяти. Память внутри микропроцессора может работать со скоростью самого процессора.

Кэш первого уровня (L1 cache). Кэш-память, находящаяся внутри процессора. Она быстрее всех остальных типов памяти, но меньше по объёму. Хранит совсем недавно использованную информацию, которая может быть использована при выполнении коротких программных циклов.

Кэш второго уровня (L2 cache). Также находится внутри процессора. Информация, хранящаяся в ней, используется реже, чем информация, хранящаяся в кэш-памяти первого уровня, но зато по объёму памяти он больше. Также в настоящее время в процессорах используется кэш третьего уровня.

Основная память. Намного больше по объёму, чем кэш-память, и значительно менее быстродействующая.

Многоуровневая кэш-память позволяет снизить требования наиболее производительных микропроцессоров к быстродействию основной динамической памяти. Кэш-память, как известно, может достаточно сильно влиять на производительность процессора в зависимости от типа исполняемых операций, однако ее увеличение вовсе не обязательно принесет увеличение общей производительности работы процессора. Все зависит от того, насколько приложение оптимизировано под данную структуру и использует кэш, а также от того, помещаются ли различные сегменты программы в кэш целиком или кусками.

Шина- это канал пересылки данных, используемый совместно различными блоками системы. Шина может представлять собой набор проводящих линий в печатной плате, провода, припаянные к выводам разъемов, в которые вставляются печатные платы, либо плоский кабель. Информация передается по шине в виде групп битов. В состав шины для каждого бита слова может быть предусмотрена отдельная линия (параллельная шина), или все биты слова могут последовательно во времени использовать одну линию (последовательная шина). К шине может быть подключено много приемных устройств - получателей. Обычно данные на шине предназначаются только для одного из них. Сочетание управляющих и адресных сигналов, определяет для кого именно. Управляющая логика возбуждает специальные стробирующие сигналы, чтобы указать получателю, когда ему следует принимать данные. Получатели и отправители могут быть однонаправленными и двунаправленными. Различают несколько типов шин.

Шина данных. Служит для пересылки данных между процессором и памятью или процессором и устройствами ввода-вывода. Эти данные могут представлять собой как команды микропроцессора, так и информацию, которую он посылает в порты ввода-вывода или принимает оттуда.

Шина адресов. Используется ЦП для выбора требуемой ячейки памяти или устройства ввода-вывода путем установки на шине конкретного адреса, соответствующего одной из ячеек памяти или одного из элементов ввода-вывода, входящих в систему.

Шина управления. По ней передаются управляющие сигналы, предназначенные памяти и устройствам ввода-вывода. Эти сигналы указывают направление передачи данных (в процессор или из него).

BTB (Branch Target Buffer) - буфер целей ветвления. В этой таблице находятся все адреса, куда будет или может быть сделан переход. Процессоры Athlon еще используют таблицу истории ветвлений (BHT - Branch History Table), которая содержит адреса, по которым уже осуществлялись ветвления.

Регистры- это внутренняя память процессора. Представляют собой ряд специализированных дополнительных ячеек памяти, а также внутренние носители информации микропроцессора. Регистр является устройством временного хранения данных, числа или команды и используется с целью облегчения арифметических, логических и пересылочных операций. Над содержимым некоторых регистров специальные электронные схемы могут выполнять некоторые манипуляции. Например, "вырезать" отдельные части команды для последующего их использования или выполнять определенные арифметические операции над числами. Основным элементом регистра является электронная схема, называемая триггером, которая способна хранить одну двоичную цифру. Регистр представляет собой совокупность триггеров, связанных друг с другом определённым образом общей системой управления. Существует несколько типов регистров, отличающихся видом выполняемых операций.

Некоторые важные регистры имеют свои названия, например:

сумматор — регистр АЛУ, участвующий в выполнении каждой операции.

счетчик команд — регистр УУ, содержимое которого соответствует адресу очередной выполняемой команды; служит для автоматической выборки программы из последовательных ячеек памяти.

регистр команд — регистр УУ для хранения кода команды на период времени, необходимый для ее выполнения. Часть его разрядов используется для хранения кода операции, остальные — для хранения кодов адресов операндов.

Микропроцессорная техника: характеристики, функции и применение

Общее представление о микропроцессорах - фото 35 - изображение 35

За несколько десятков лет развития микропроцессор проделал путь от объекта применения в узкоспециализированных областях к товару широкой эксплуатации. Сегодня в том или ином виде данные устройства вместе с контроллерами применяются практически в любой сфере производства. В широком смысле микропроцессорная техника обеспечивает процессы управления и автоматизации, но в рамках этого направления формируются и утверждаются все новые области развития высокотехнологичных устройств вплоть до появления признаков искусственного интеллекта.

Общее представление о микропроцессорах

Для управления или контроля определенными процессами требуется соответствующая поддержка программного обеспечения на реальной технической базе. В этом качестве выступает одна или набор микросхем на базовых матричных кристаллах. Для практических нужд почти всегда используются модули chip-set, то есть наборы микросхем, которые связаны общей системой питания, сигналами, форматами информационной обработки и так далее. В научной интерпретации, как отмечается в теоретических основах микропроцессорной техники, такие устройства представляют собой место (основная память) для хранения операндов и команд в закодированном виде. Непосредственное управление реализуется на более высоком уровне, но также через интегральные схемы микропроцессора. Для этого используют контроллеры.

Архитектура - фотография 36 - изображение 36

Говорить о контроллерах можно только применительно к микрокомпьютерам или микро-ЭВМ, состоящим из микропроцессоров. Собственно, это и есть рабочая техника, в принципе способная выполнять те или иные операции или команды в рамках заданного алгоритма. Как отмечается в учебнике по микропроцессорной технике Ливенцова С. Н., под микроконтроллером следует понимать компьютер, ориентированный на выполнение логических операций в рамках управления оборудованием. Он базируется на тех же схемах, но с ограниченным вычислительным ресурсом. Задача микроконтроллера в большей степени заключается в реализации ответственных, но простых процедур без сложных схем. Впрочем, технологически примитивными такие устройства тоже нельзя назвать, так как на современных производствах микроконтроллеры могут одновременно управлять сотнями и даже тысячами операций одновременно, учитывая и косвенные параметры их выполнения. В целом логическая структура микроконтроллера проектируется с расчетом на мощность, универсальность и надежность.

Архитектура

Разработчики микропроцессорных устройств имеют дело с набором функциональных компонентов, которые в итоге образуют единый рабочий комплекс. Даже простая модель микрокомпьютера предусматривает использование целого ряда элементов, обеспечивающих выполнение поставленных перед машиной задач. Способ взаимодействия между этими компонентами, а также средства коммуникации с входными и выходными сигналами во многом и определяют архитектуру микропроцессора. Что касается самого понятия архитектуры, то оно выражается разными определениями. Это может быть набор технико-физических и эксплуатационных параметров, среди которых число регистров памяти, разрядность, быстродействие и так далее. Но, в соответствии с теоретическими основами микропроцессорной техники, под архитектурой в данном случае следует понимать логическую организацию функций, реализуемых в процессе взаимосвязанной работы аппаратной и программной начинки. Более конкретно архитектура микропроцессора отражает следующее:

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

Внешние интерфейсы

Внешние интерфейсы - фото 37 - изображение 37

Микропроцессор крайне редко рассматривается как изолированная система для выполнения односложных команд в статичном формате. Встречаются устройства, обрабатывающие один сигнал по заданной схеме, но чаще всего микропроцессорная техника работает с большим количеством коммуникационных связей от источников, которые и сами не являются линейными в плане обрабатываемых команд. Для организации взаимодействия со сторонней аппаратурой и источниками данных предусматриваются специальные форматы соединения – интерфейсы. Но для начала следует определить, с чем именно выполняется коммуникация. Как правило, в этом качестве выступают управляемые устройства, то есть на них от микропроцессора подается команда, а в режиме обратной связи могут поступать данные о статусе исполнительного органа.

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

Характеристики микропроцессора

К основным характеристикам микропроцессорных устройств можно отнести следующие:

  • Тактовая частота. Временной период, в течение которого происходит переключение компонентов вычислительной машины.
  • Разрядность. Число максимально возможных для одновременной обработки двоичных разрядов.
  • Архитектура. Конфигурация размещения и способы взаимодействия рабочих элементов микропроцессора.

О характере эксплуатационного процесса можно судить и по критериям регулярности с магистральностью. В первом случае речь идет о том, насколько в конкретной единице вычислительной микропроцессорной техники реализуем принцип закономерной повторяемости. Иными словами, каков условный процент дублирующих друг друга связей и рабочих элементов. Регулярность может применяться и в целом к структуре организации схемы в рамках одной системы обработки данных.

Характеристики микропроцессора - фото 38 - изображение 38

Магистральность же указывает на способ обмена данными между внутренними модулями системы, затрагивая также характер упорядочения связей. Объединяя принципы магистральности и регулярности, можно выработать стратегию создания унифицированных под определенный стандарт микропроцессоров. Такой подход имеет преимущество в виде облегчения коммуникационной организации на разных уровнях в плане взаимодействия через интерфейсы. С другой стороны, стандартизация не позволяет расширять возможности системы и повышать ее устойчивость перед внешними нагрузками.

Память в микропроцессорной технике

Хранение информации организуется с помощью специальных запоминающих устройств, выполненных из полупроводников. Это касается внутренней памяти, но также могут применяться внешние оптические и магнитные носители. Также элементы хранения данных на основе полупроводниковых материалов можно представить в качестве интегральных схем, которые включаются в состав микропроцессора. Такие ячейки памяти используются не только для хранения программ, но и для обслуживания памяти центрального процессора с контроллерами.

Память в микропроцессорной технике - фотография 39 - изображение 39

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

Функции

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

  • Чтение данных.
  • Обработка данных.
  • Обмен информацией с внутренней памятью, модулями или внешними подключенными устройствами.
  • Запись данных.
  • Ввод и вывод данных.

Значение каждой из вышеназванных операций определяется контекстом общей системы, в которой используется устройство. К примеру, в рамках арифметическо-логических операций электронная и микропроцессорная техника в результате обработки входной информации может представлять новую информацию, которая, в свою очередь, станет поводом для того или иного командного сигнала. Также стоит отметить внутренний функционал, за счет которого регулируются рабочие параметры самого процессора, контроллера, питания, исполнительных устройств и прочих модулей, работающих в рамках управляющей системы.

Производители устройств

Функции - изображение 40 - изображение 40

У истоков создания микропроцессорных устройств стояли инженеры компании Intel, выпустившие целую линейку 8-разрядных микроконтроллеров на платформе MCS-51, которые в некоторых сферах применяются и сегодня. Также многие другие изготовители использовали семейство x51 для собственных проектов уже в рамках развития новых поколений электроники и микропроцессорной техники, в числе представителей которой значатся и отечественные разработки наподобие однокристальной ЭВМ К1816ВЕ51.

Выйдя в сегмент более сложных процессоров, фирма Intel уступила место микроконтроллеров другим компаниям, в числе которых оказались Analog Device и Atmel. Принципиально новый взгляд на архитектуру микропроцессоров предлагают фирмы Zilog, Microchip, NEC и др. На сегодняшний день в контексте развития микропроцессорной техники можно рассматривать линейки x51, AVR и PIC как наиболее успешные. Если же говорить о тенденциях разработки, то в наши дни на первое место выходят требования к расширению спектра задач внутреннего управления, компактности и низкому энергопотреблению. Иными словами, микроконтроллеры становятся меньше и рациональнее с точки зрения обслуживания, но при этом наращивают мощностный потенциал.

Обслуживание техники на базе микропроцессора

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

  • Фиксация сбоев в процессе работы системы и их анализ с определением причин нарушения.
  • Предупреждение отказов устройства и его компонентов за счет назначенного регламентного обслуживания.
  • Устранение отказов устройства путем ремонта поврежденных элементов или их замены на исправные аналогичные детали.
  • Производство своевременного ремонта компонентов системы.

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

Применение микропроцессорной техники

Производители устройств - изображение 41 - изображение 41

Перед широким внедрением микропроцессоров в разных сферах промышленности, бытового и народного хозяйства стоит все меньше барьеров. Это вновь обуславливается оптимизацией данных устройств, их удешевлением и ростом потребности в элементах автоматизации. К областям наиболее распространенного использования таких устройств можно отнести:

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

Несколько слов в заключение

Обслуживание техники на базе микропроцессора - фотография 42 - изображение 42

Широкая аудитория потребителей не в полной мере может представить себе даже сегодняшние возможности микропроцессорной техники, но производители не стоят на месте и уже сейчас продумывают перспективные направления развития данной продукции. Например, все еще исправно поддерживается правило компьютерной индустрии, согласно которому каждые два года в схемах процессоров будет уменьшаться количество транзисторов. Но не только конструкционной оптимизацией могут похвастаться современные микропроцессоры. Специалисты также прогнозируют множество инноваций в части организации новой схемотехники, которая облегчит технологический подход к разработке процессоров и снизит их базовую стоимость.

Лекция 4 Алгоритм функционирования микропроцессора

Применение микропроцессорной техники - изображение 43 - изображение 43

Цели лекции: знакомство с принципом работы и алгоритмом функционирования микропроцессора КР580ВМ80А.

Принцип работы микропроцессора

Генератор тактовых импульсов (ГТИ) формирует две импульсные последовательности Фх и Фь необходимые для тактирова­ния работы микропроцессора. Импульсы двух последователь­ностей не должны перекрываться во времени и должны иметь амплитуду 12 В. ПЗУ может быть использовано для хранения программы, ОЗУ — для хранения данных.

Общий принцип функционирования микропроцессорной системы заключается в следующем. Из микропроцессора на шину адреса выда­ется адрес очередной команды. Считанная по этому адресу из памяти (например, из ПЗУ) команда поступает на шину данных и принимается в микропроцессор, где она исполняется. В счетчике команд микропро­цессора формируется адрес следующей команды. После исполнения данной команды на шину адреса поступает адрес следующей команды и т.д. При исполнении команды могут потребоваться дополнительные обращения к памяти для вызова в микропроцессор дополнительных байтов команды (в случае двух-, трех- байтовых команд), операндов или для записи в память числа, выдаваемого из микропроцессора. Рассмотрим подробнее процесс выполнения команды. Этот процесс разбивается на циклы, обозначаемые Ц1, Ц2, Ц3, Ц4, Ц5. В каждом цикле производится одно обращение микропроцессора к памяти или к устройству ввода или вывода (УВВ) (исключение составляет лишь вы­полнение команды DAD). В зависимости от типа команда может быть выполнена за один цикл (Ц), либо за два цикла (Ц1, Ц2), либо за три цикла и т.д. Самые длинные по времени исполнения команды выполняются в пять циклов.

Каждый цикл включает несколько тактов, обозначаемых Т1, Т2, Т3, Т4, Т5. Циклы могут содержать три, четыре такта, либо пять тактов. Первые три такта во всех циклах используются для организации обмена с памятью и УВВ, такты Т4 и Т5 (если они присутствуют в цикле) — для выполнения внутренних операций в микропроцессоре.

Отсчет тактов производится от положительных фронтов импульсов Ф. Рассмотрим цикл М. В такте Т содержимое счетчика команд выдается на шину адреса, адрес принимается памятью, где начинается процесс чтения байта команды из указанной ячейки. В такте Т2 прове­ряется наличие сигнала (уровня лог.1) на входе Готовность. Этот сигнал подается на вход микропроцессора через интервал времени, достаточный для завершения процесса чтения из памяти. Если на входе Готовность сигнал отсутствует (действует уровень лог.О), то микропро­цессор устанавливается в режим ожидания, в котором каждый следую­щий такт рассматривается как такт Т2 до тех пор, пока не появится сигнал на входе Готовность. С приходом этого сигнала микропроцес­сор выходит из режима ожидания, переходя в такт Т4. В этом такте выданный из памяти байт команды с шины данных принимается в микропроцессор, где он помещается в регистр команд. В такте Т4 ана­лизируется принятый байт команды и выясняется, нужны ли дополни­тельные обращения в оперативную память. Если такиз обращения не требуются (команда однобайтовая и операнды находятся в регистрах микропроцессора), то в этом же такте либо с использованием дополни­тельно такта Т5 выполняется предусматриваемая командой операция. Если необходимы дополнительные обращения в оперативную па­мять, то после такта Т4 цикл завершается и происходит переход к циклу М2. Пусть, например, команда однобайтовая, но в операции должен участвовать операнд, хранящийся в оперативной памяти. Тогда в цикле М2 происходят следующие процессы: в такте Т выдается адрес ячейки памяти, в такте Т2 проверяется наличие сигнала на входе Готов­ность (сигнала о том, что прошел интервал времени, достаточный для чтения из памяти). С появлением этого сигнала происходит переход к такту Тз, в котором выданное из памяти число с шины данных прини­мается в микропроцессор, и в этом же такте выполняется операция, предусматриваемая командой. При исполнении большинства команд в случаях, когда происходят дополнительные обращения к памяти, первый цикл Ц1 содержит четыре такта, в каждом следующем цикле содержится три такта и происходит одно дополнительное обращение к памяти.

Основные типы микропроцессоров: разновидности, архитектура/структура, 8-16-32 разрядные

Несколько слов в заключение - изображение 44 - изображение 44

Выпускаемые различными производи­телями процессоры делятся на отдельные типы в соответствии с используемыми классификационными признаками. Одним из важнейших признаков помимо вида архитектуры является функциональное назначение. По этому признаку, микро­процессоры разбивают на два больших класса:

  • процессоры общего назначения, или универсальные микропроцессоры;
  • специализированные процессоры, среди которых наиболее широкое распро­странение получили микроконтроллеры, цифровые сигнальные процессоры и медийные процессоры. Рассмотрим особенности этих процессоров.

Микропроцессоры общего назначения

Этот класс процессоров предназ­начен для решения широкого круга задач обработки разнообразной информации и находит применение в персональных компьютерах, рабочих станциях, серверах и других цифровых системах массового применения. К универсальным процессо­рам относят 32–разрядные микропроцессоры (хотя некоторые микропроцессоры этого класса имеют 64–разрядную или 128–разрядную структуру), которые изго­тавливаются по самой современной промышленной технологии, обеспечивающей максимальную частоту функционирования.

Большинство типов микропроцессоров этого класса имеют CISC–архитектуру, поскольку используют набор разноформатных команд с различными способами адресации.

В их внутренней структуре может содержаться RISC–ядро, выполня­ющее преобразование поступивших команд в   оследовательность простых RISC–операций. Некоторые типы микропроцессоров этого класса непосредственно реализует RISC–архитектуру.

В ряде последних разработок (Itanium РА8500) успешно используются прин­ципы VLIW–архитектуры.

Практически все современные универсальные микропроцессоры используют гарвардскую архитектуру с разделением потоков команд и данных при помощи отдельных блоков внутренней кэш–памяти. В большинстве случаев они имеют су­перскалярную структуру (несколько операционных устройств, осуществляющих одновременную обработку данных) с несколькими исполнительными конвейера­ми (до 10 в современных моделях), каждый из которых содержит до 20 ступеней.

Микроконтроллеры. Этот класс специализированных микропроцессоров ориентирован на применение в качестве устройств или систем управления, встраиваемых в разнообразную (в том числе и бытовую) аппаратуру. Номенкла­тура выпускаемых микроконтроллеров исчисляется несколькими тысячами типов, а общий годовой объем их выпуска составляет миллиарды экземпляров.

Особенностью микроконтроллеров является размещение на одном кристалле, помимо центрального процессора, внутренней памяти и большого набора пери­ферийных устройств.

В состав периферийных устройств обычно входят от одного до восьми 8–раз­рядных параллельных портов ввода–вывода данных, один или два последователь­ных порта, таймерный блок, аналого–цифровой преобразователь, а также такие специализированные устройства, как блок формирования сигналов с широтно–импульсной модуляцией, контроллер жидкокристаллического дисплея и ряд других. Благодаря использованию внутренней памяти и периферийных устройств реализуемые на базе микроконтроллеров системы управления содержат мини­мальное количество дополнительных компонентов.

Для удовлетворения запросов потребителей выпускается большая номенкла­тура микроконтроллеров, которые принято подразделять на 8–, 16– и 32–разрядные.

Лекция 4 Алгоритм функционирования микропроцессора - фотография 45 - изображение 45

Типы микропроцессоров: виды, 8-16-32х разрядные, команды, архитектура turion

8–разрядные микроконтроллеры

8–разрядные микроконтроллеры являются наиболее простыми и де­шевыми изделиями этого класса, ориентированными на использование в относи­тельно несложных устройствах массового выпуска. Микроконтроллеры этой груп­пы обычно выполняют относительно небольшой набор команд (50–100), исполь­зующих наиболее простые способы адресации. Основными областями их приме­нения являются промышленная автоматика, автомобильная электроника, измерительная техника, теле–, видео– и аудиотехника, средства связи, бытовая аппаратура.

Для 8–разрядных микроконтроллеров характерна гарвардская архитектура:

  • с отдельной внутренней памятью для хранения программ, в качестве которой используются масочно–программируемые ПЗУ (ROM), однократно програм­мируемое ПЗУ (PROM) или электрически репрограммируемое ПЗУ (EPROM, EEPROM или Flash) с объемом от нескольких единиц до десятков килобайт;
  • с отдельной внутренней памятью для хранения данных, в качестве которой используется регистровый блок, организованный в виде нескольких регист­ровых банков, или ОЗУ. Ее объем составляет от нескольких десятков байт до нескольких килобайт.

В случае необходимости имеется возможность дополнительно подключать внешнюю память команд и данных объемом до 64–256 Кбайт и более.

Для повышения производительности во многих моделях 8–разрядных микро­контроллеров реализованы принципы RISC–архитектуры, обеспечивающие вы­полнение большинства команд за один такт машинного времени.

16–разрядные микроконтроллеры

16–разрядные микроконтроллеры помимо повышенной разрядности обрабатываемых данных характеризуются:

  • более высокой производительностью;
  • расширенной системой команд и способов адресации;
  • увеличенным набором регистров и объемом адресуемой памяти;
  • возможностью расширения объема памяти программ и данных до нескольких мегабайт путем подключения внешних микросхем памяти;
  • программной совместимостью с 8–разрядными микроконтроллерами и други­ми возможностями.

Основные области применения — сложная промышленная автоматика, теле­коммуникационная аппаратура, медицинская и измерительная техника.

32–разрядные микроконтроллеры

32–разрядные микроконтроллеры ориентированы на применение в системах управления сложными объектами промышленной автоматики (сред­ствами комплексной автоматизации производства, робототехнические устрой­ствами, двигателями и др.), в контрольно–измерительной аппаратуре, телеком­муникационном оборудовании и других сложных устройствах. 32–разрядные микроконтроллеры содержат:

  • высокопроизводительный CISC– или RISC–процессор, соответствующий по своим возможностям младшим моделям микропроцессоров общего назначе­ния. Например, в микроконтроллерах компании Intel используется процессор i386, а в микроконтроллерах компании Motorola — процессор 680×0. Введе­ние этих процессоров в состав микроконтроллеров позволяет использовать в соответствующих системах управления огромный объем прикладного и си­стемного программного обеспечения, созданный ранее для соответствующих персональных компьютеров. Некоторые типы микроконтроллеров содержат несколько исполнительных конвейеров, образующих суперскалярную структуру;
  • внутреннюю память команд емкостью до десятков килобайт и память данных емкостью до нескольких килобайт;
  • средства для подключения внешней памяти объемом до 16 Мбайт и выше;
  • набор сложных периферийных устройств — таймерный процессор, коммуни­кационный процессор, модуль последовательного обмена и ряд других. Во внутренней структуре этих микроконтроллеров реализуется принстонская или гарвардская архитектура.

Цифровые сигнальные процессоры

Этот класс специализированных мик­ропроцессоров предназначен для цифровой обработки поступающих аналоговых сигналов в реальном времени. Архитектура цифровых сигнальных процессоров (ЦСП) ориентирована на быстрое выполнение последовательности операций ум­ножения–сложения с накоплением промежуточного результата в регистре–аккуму­ляторе, что обусловлено особенностью алгоритмов обработки аналоговых сигна­лов. Поэтому набор команд этих процессоров содержит специальные команды MAC (Multiplication with Accumulation — умножение с накоплением), реализующие эти операции.

Значение оцифрованного аналогового сигнала может быть представлено в виде числа с фиксированной или с плавающей точкой. В соответствии с этим ЦСП де­лятся на два класса:

  • на процессоры, обрабатывающие числа с фиксированной точкой. К этому классу относятся более простые и дешевые ЦСП, которые обычно обрабатывают 16– или 24–разрядные операнды, представленные в виде правильной дроби. Однако ограниченная разрядность в ряде случаев не позволяет обес­печить необходимую точность результатов;
  • на процессоры, обрабатывающие числа с плавающей точкой. Процессоры этого класса проводят вычисления над 32– и 40–разрядными операндами и обеспечивают более высокую точность результатов.

Для повышения производительности при выполнении специфических опера­ций обработки сигналов в большинстве ЦСП реализуется гарвардская архитекту­ра с использованием отдельных шин для передачи адресов, команд и данных. В ряде ЦСП нашли применение также некоторые черты

VLIW–архитектуры, для ко­торой характерно совмещение в одной команде нескольких операций. Такое со­вмещение обеспечивает обработку имеющихся данных и одновременную загруз­ку в исполнительный конвейер новых данных для последующей обработки.

Основные типы микропроцессоров: разновидности, архитектура/структура, 8-16-32 разрядные - изображение 46 - изображение 46

Типы микропроцессоров: виды, 8-16-32х разрядные, команды, архитектура turion

Медийные процессоры

Этот тип процессоров предназначен для обработки аудио–сигналов, графики, видеоизображений, а также для решения ряда комму­никационных задач в мультимедиа–компьютерах, игровых приставках, бытовых приборах и др.

Аппаратную поддержку операций с новыми типами данных, характерными для обработки видео– и звуковой информации обеспечивают универсальные процес­соры с мультимедийным расширением набора команд: Pentium ММХ, UltraSPARC, Cyrix 6х86МХ (М2), AMD–K6 и др. Однако, когда мультимедийные операции до­минируют над традиционными числовыми операциями, больший эффект дает ис­пользование мультимедийных микропроцессоров. Их архитектура представляет собой некоторый гибрид архитектурных решений сигнальных и универсальных процессоров. Производством медиа–процессоров заняты компании MicroUnity (процессор Mediaprocessor), Philips (TriMedia), Chromatic Research (Mpact Media Engine) и др.

Структура и режимы работы микропроцессорной системы

Микропроцес­сор в совокупности с модулями ввода и вывода информации, интерфейса и памя­ти образует простейшую микропроцессорную систему. Среди микропроцессор­ных систем важное место занимают системы общего назначения, которые пред­назначены для решения широкого круга различных задач по обработка информа­ции в цифровой форме согласно заданной программе.

Основные функции микропроцессорной системы сводятся к приему данных (информации) от внешнего устройства, их обработке с помощью микропроцессо­ра и выдаче результата обработки на внешнее устройство.

Рассмотрим в общих чертах особенности работы простейшей микропроцес­сорной системы (рис. 2.1.3), состоящей из центрального процессора, памяти и подсистемы ввода/вывода.

Микропроцессоры общего назначения - фото 47 - изображение 47

рис. 2.1.3 turion

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

Для обмена данными между центральным процессором и внешними устрой­ствами в подсистеме ввода/вывода предусмотрен контроллер обмена.

При программном обмене в контроллер обмена от центрального процессора, поступает информация о режиме обмена, содержащая код порта (регистра), на­правление обмена (от центрального процессора к внешнему устройству или от внешнего устройства к центральному процессору), число передаваемых бит, слу­жебные символы и другие данные.

Непосредственный обмен данными происходит под действием сигналов управ­ления, поступающих в контроллер обмена от центрального процессора и внешне­го устройства.

При обмене по инициативе внешнего устройства микропроцессор переводит­ся в состояние прерывания. Для этого внешнее устройство посылает в централь­ный процессор сигнал запроса на прерывание. В состоянии прерывания цент­ральный процессор прекращает выполнение основной программы и приступает к исполнению команд прерывающей программы, которая хранится в (оператив­ной) памяти и обеспечивает обмен данными, требуемый внешнему устройству. По окончании прерывающей программы центральный процессор возвращается к выполнению основной программы.

Описанные способы обеспечивают низкую скорость обмена.

Для увеличения скорости обмена используется режим прямого доступа к памяти, который реали­зуется с помощью контроллера прямого доступа к памяти. Этот режим иницииру­ется сигналом запроса на захват шин. После получения сигнала запроса цент­ральный процессор пересылает по шине данных в контроллер прямого доступа информацию, необходимую для управления обменом (адрес ячейки памяти, в ко­торой размещается первый байт записываемых или считываемых данных, общее число передаваемых байт, направление передачи и др.), и отключается от шины данных и шины адреса, предоставляя их контроллеру для организации обмена.

Обмен данными между внешним устройством и памятью осуществляется через контроллер. В процессе обмена контроллер прямого доступа к памяти выдает ад­реса ячеек памяти в шину адреса и сигналы чтения (записи) в шину управления. По завершении обмена центральный процессор получает сигнал от контроллера и переходит к выполнению основной программы.

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

8–разрядные микроконтроллеры - фото 48 - изображение 48

Структурная схема ЭВМ.

Глава 2. Лекция 2

Вычислительной называется техническая система способная выполнять действия посредством арифметических и логических операций.

ЭВМ (персональный компьютер (ПК)) – это универсальная вычислительная диалоговая система, реализованная на базе микропроцессорных средств, компактных внешних запоминающих устройств, способная выполнять последовательность операций над информацией определенной программы. В основе функционирования любой ЭВМ лежит архитектура.

Архитектура – это наиболее общие принципы построения ЭВМ, реализующие программное управление работой и взаимодействием основных ее функциональных узлов. В основе архитектуры современных ЭВМ лежат принципы, предложенные американским ученым и теоретиком вычислительной техники Джоном фон Нейманом.

ЭВМ состоит из системного блока, к которому подключаются монитор и клавиатура. В системном блоке находятся основные компоненты ЭВМ:

ВЗУ – внешние запоминающие устройства (жесткий диск, приводы CD/DVD/Blu-Ray, флэш-память); некоторые ВЗУ располагаются внутри системного блока и подключаются к контроллерам ВЗУ, а некоторые – снаружи системного блока и подключаются к портам ввода-вывода.

16–разрядные микроконтроллеры - фото 49 - изображение 49

Структура ЭВМ

ВК – видеокарта (видеоадаптер, видеоконтроллер) формирует изображение и передает его на монитор;

ИП – источник питания обеспечивает питание всех блоков ЭВМ по системной шине;

КВЗУ – контроллеры внешних запоминающих устройств управляют обменом информацией с ВЗУ;

КК – контроллер клавиатуры содержит буфер, в который помещаются вводимые символы, и обеспечивает передачу этих символов другим компонентам;

КПВВ – контроллеры портов ввода-вывода управляют обменом информацией с периферийными устройствами;

МП – микропроцессор выполняет команды программы, управляет взаимодействием всех компонент ЭВМ;

ОЗУ – оперативное запоминающее устройство хранит исходные данные и результаты обработки информации во время функционирования ЭВМ;

ПЗУ – постоянное запоминающее устройство хранит программы, выполняемые во время загрузки ЭВМ;

ПУ – периферийные устройства различного назначения: принтеры, сканнеры, манипуляторы «мышь» и др.;

СА – сетевой адаптер (карта) обеспечивает обмен информацией с локальными и глобальными компьютерными сетями.

К устройствам ввода информации относят клавиатуру и такие ПУ, как сканнеры, манипуляторы типа «мышь», джойстики, а к устройствам вывода информации – монитор и такие ПУ, как принтеры.

Современную архитектуру ЭВМ определяют следующие принципы.

1. Принцип программного управления. Обеспечивает автоматизацию процесса вычислений на ЭВМ. Согласно этому принципу, для решения каждой задачи составляется программа, которая определяет последовательность действий ЭВМ.

2. Принцип программы, сохраняемой в памяти. Согласно этому принципу, команды программы подаются, как и данные, в виде чисел и обрабатываются так же, как и числа, а сама программа перед выполнением загружается в ОЗУ, что ускоряет процесс ее выполнения.

3. Принцип произвольного доступа к памяти. В соответствии с этим принципом, элементы программ и данных могут записываться в произвольное место ОЗУ, что позволяет обратиться по любому заданному адресу (к конкретному участку памяти) без просмотра предыдущих.

Составные части ЭВМ образуют аппаратное обеспечение ЭВМ (hardware). Рассмотрим эти компоненты ЭВМ.

Микропроцессор (МП; CPU – Central Processing Unit (центральный обрабатывающий модуль)) – центральный блок ЭВМ, управляющий работой всех компонент ЭВМ и выполняющий операции над информацией. Операции производятся в регистрах, составляющих микропроцессорную память.

Основные функции МП:

- выполнение команд программы, расположенной в ОЗУ; команда состоит из кода, определяющего, что эта команда делает, и операндов, над которыми эта команда осуществляется;

- управление пересылкой информации между микропроцессорной памятью, ОЗУ и периферийными устройствами;

- обработка прерываний;

- управление компонентами ЭВМ.

Микропроцессор (рис. 8.2) состоит из следующих блоков:

АЛУ – арифметико-логическое устройство;

ДБ – другие блоки (математический сопроцессор, модуль предсказания ветвлений);

ДК – дешифратор команд;

ИМП – интерфейс микропроцессора;

Кэш L1 – кэш-память первого уровня;

Кэш L2 – кэш-память второго уровня;

МПП – микропроцессорная память;

РОН – регистры общего назначения;

РС – регистры смещений;

РФ – регистр флагов;

СР – сегментные регистры;

УС – устройство синхронизации;

УУ – устройство управления.

Рассмотрим назначение этих блоков МП.

Устройство управления (УУ) выполняет команды, поступающие в МП в следующей последовательности:

1) выборка из регистра-счетчика адреса ячейки ОЗУ, где хранится очередная команда программы;

32–разрядные микроконтроллеры - изображение 50 - изображение 50

Структура микропроцессора

2) выборка из ячеек ОЗУ кода очередной команды и приема считанной команды в регистр команд;

3) расшифровка кода команды дешифратором команды (ДК);

4) формирование полных адресов операндов;

5) выборка операндов из ОЗУ или МПП и выполнение заданной команды обработки этих операндов;

6) запись результатов команды в память;

7) формирование адреса следующей команды программы.

Для ускорения работы перечисленные действия выполняются параллельно: один блок выбирает команду, второй дешифрует, третий выполняет и т. д., образуя конвейер команд.

Команды, поступающие в УУ, временно хранятся в кэш-памяти первого уровня, освобождая шину для выполнения других операций. Размер кэш-памяти первого уровня 8-32 Кбайт.

Арифметико-логическое устройство (АЛУ) выполняет все арифметические (сложение, вычитание, умножение, деление) и логические (конъюнкция, дизъюнкция и др.) операции над целыми двоичными числами и символьной информацией.

Устройство синхронизации (УС) определяет дискретные интервалы времени – такты работы МП между выборками очередной команды. Частота, с которой осуществляется выборка команд, называется тактовой частотой.

Интерфейс МП (ИМП) предназначен для связи и согласования МП с системной шиной ЭВМ. Принятые команды и данные временно помещаются в кэш-память второго уровня. Размер кэш-памяти второго уровня – 256-2048 Кбайт. Ранее кэш-память второго уровня размещалась на материнской плате.

Микропроцессорная память (МПП) включает 14 основных двухбайтовых запоминающих регистров и множество (до 256) дополнительных регистров. Регистры – это быстродействующие ячейки памяти различного размера. Основные регистры можно разделить на 4 группы.

1. Регистры общего назначения (РОН, универсальные регистры): AX, BX, CX, DX. Можно работать с регистром целиком или отдельно с каждой его половинкой: регистром старшего (high) байта – AH, BH, и регистром младшего (low) байта – AL, BL, CL, DL. Например, структура регистра AX имеет вид

Цифровые сигнальные процессоры - фото 51 - изображение 51

Структура регистра AX

Универсальные регистры имеют свое предназначение:

АХ – регистр-аккумулятор, с его помощью осуществляется ввод-вывод данных в МП, а при выполнении операций умножения и деления АХ используется для хранения первого числа, участвующего в операции (множимого, делимого) и результата операций (произведения, частного) после ее завершения;

ВХ часто используется для хранения адреса базы в сегменте данных и начального адреса поля памяти при работе с массивами;

СХ – регистр-счетчик, используется как счетчик числа повторений при циклических операциях;

DX – используется как расширение регистра-аккумулятора при работе с 32-разрядными числами и при выполнении операции умножения и деления.

2. Сегментные регистры (СР) используются для хранения начальных адресов полей памяти (сегментов), отведенных в программах для хранения команд кода (регистр CS), данных (DS), стека (SS), дополнительной области памяти данных при обмене между сегментами (ES).

3. Регистры смещений (РС) IP, SP, ВР, SI, DI предназначены для хранения относительных адресов ячеек памяти внутри сегментов (смещений относительно начала сегментов).

4. Регистр флагов (РФ) FL содержит одноразрядные флаги, управляющие выполнением программы в ЭВМ. Флаги принимают значения 0 или 1. Значения флагов устанавливаются независимо друг от друга. Всего в регистре 9 флагов: 6 – статусные, отражающие результаты операций (флаги переноса, нуля, переполнения и др.); 3 – управляющие, определяющие режим выполнения программы (флаги пошагового выполнения программы, прерываний и направления обработки данных).

МПП – это память с самым меньшим временем доступа в ЭВМ.

Другие блоки (ДБ) – это блоки, ускоряющие работу МП. АЛУ производит действия только над двоичными целыми числами. Операции над числами с плавающей точкой выполняет математический сопроцессор, освобождая МП от выполнения этих операций. Блок предсказания ветвлений программы просматривает программу на несколько шагов вперед, чтобы определить дальнейшее направление выполнения программы. Вероятность предсказания 80-90%.

Работа МП состоит в выборке очередной команды и ее выполнения. В некоторых случаях выполнение программы необходимо прервать, например, в случае ошибки вычисления. Такие случаи называются прерываниями. Выделяют два типа прерываний:

1) внутри процессорные прерывания, возникающие из-за непреодолимого препятствия в выполнении программы, например, запись данных в запрещенную для записи область ОЗУ или переполнение результата при вычислениях;

2) прерывания от внешних устройств не являются фатальными или ошибочными; прерывания второго типа возникают, когда требует обмен данными с внешним устройством, например, приводом компакт-дисков, а он не готов.

Основными параметрами МП являются тактовая частота, разрядность и рабочее напряжение.

Тактовая частота определяет количество элементарных операций (тактов), выполняемых МП за единицу времени. Тактовая частота современных МП измеряется в ГГц (1 Гц соответствует выполнению одной операции за одну секунду, 1 ГГц = 109 Гц). Чем больше тактовая частота, тем больше команд может выполнить МП, и тем больше его производительность. Первые МП, использовавшиеся в персональных компьютерах, работали на частоте 4,77 МГц (1 МГц = 106 Гц). В настоящее время рабочие частоты современных МП превосходят 2 ГГц (2011 г.).

Разрядность процессора показывает, сколько бит данных МП может принять и обработать в своих регистрах за один такт. Разрядность процессора определяется разрядностью внутренней шины, то есть количеством проводников в шине, по которым передаются команды. Современные МП семейства Intel имеют 64 разряда.

Рабочее напряжение процессора обеспечивается материнской платой, поэтому разным маркам процессоров соответствуют разные материнские платы. Рабочее напряжение процессоров не превышает 3 В. Снижение рабочего напряжения позволяет уменьшить размеры МП, а также уменьшить тепловыделение в МП, что повышает его производительность без угрозы перегрева.

МП все время с момента включения до момента выключения выполняет команды. Если поток команд заканчивается, например, в случае простоя ЭВМ, то МП выполняет пустую команду NOP.

МИКРОПРОЦЕ́ССОР

Медийные процессоры - изображение 52 - изображение 52

МИКРОПРОЦЕ́ССОР (от мик­ро... и про­цес­сор), ин­те­граль­ная схе­ма (ИС), ко­то­рая реа­ли­зу­ет функ­ции цен­траль­но­го про­цес­со­ра (ЦП или про­сто про­цес­со­ра) ком­пь­ю­тер­ной сис­те­мы. Раз­ра­бот­ка М. ста­ла воз­мож­ной бла­го­да­ря раз­ви­тию по­лу­про­вод­ни­ко­вой тех­но­ло­гии, по­зво­лив­шей соз­дать боль­шое чис­ло тран­зи­сто­ров на од­ном крем­ние­вом кри­стал­ле (чи­пе). Реа­ли­за­ция ЦП на од­ной ИС име­ет ряд пре­иму­ществ по срав­не­нию с ЦП, ко­то­рый соз­дан на боль­шом чис­ле ИС: бóль­шая на­дёж­ность, мень­шая стои­мость, мень­шая по­треб­ляе­мая мощ­ность, бóль­шая ско­рость вы­пол­не­ния опе­ра­ций.

Функциональная блок-схема и назначение микропроцессора

Структура и режимы работы микропроцессорной системы - фото 53 - изображение 53

Блок-схема микропроцессора.

М. (рис.), как и типичный ЦП, содержит: арифметическое устройство (АУ), устройство управления (УУ), регистровый файл (РФ, набор регистров, предназначенных для временного хранения данных и результатов, реализован на самых быстрых запоминающих элементах; кэш-память использует более медленные элементы), кэш-команд (кэш-память для хранения команд) и кэш-данных. УУ управляет работой всего компьютера, который, кроме ЦП, включает осн. память (ОП) и устройство ввода-вывода. УУ через кэш-команды получает из ОП команды, дешифрирует их и передаёт на исполнение в АУ. Из РФ и кэш-данных в АУ поступают операнды (данные, над которыми производятся операции). Результат выполненной в АУ команды записывается в РФ. В кэш-данных также сохраняются уже использовавшиеся данные, т. к. они могут снова потребоваться. В УУ находятся спец. регистры, напр. PC (program counter – счётчик команд), содержащий адрес следующей команды, IR (instruction register – регистр команды), хранящий выполняемую команду.

По назначению М. разделяют на универсальные (предназначенные для решения широкого класса задач, напр. ЦП персонального компьютера) и специализированные (ориентированные на решение определённого класса задач). Среди специализир. М. можно выделить М. цифровой обработки сигналов (DSP – digital signal processor), графич. процессор (GPU – graphics processing unit), применяемый для обработки компьютерной графики, а также вычислительные сопроцессоры (напр., Weitek Abacus для вычислений с плавающей запятой, Intel Xeon Phi для универсальных высокопараллельных вычислений).

М. применяются в компьютерах, специализир. и бытовой радиоэлектронной аппаратуре, средствах автоматизации, телекоммуникации, на транспорте и др. Напр., в совр. самолёте действуют сотни М. Ок. 98% выпускаемых в мире М. используются во встроенных системах (embedded systems), представляющих собой специализир. компьютерные системы, которые обычно встраивают в управляемое устройство, аппарат (автомобиль, банкомат, стиральную машину, мобильный телефон и др.).

Историческая справка

На первенство в создании М. претендуют три проекта, завершившиеся почти одновременно. В 1968–70 компания «Garrett AiResearch» разработала М. для истребителя F-14A, который состоял из нескольких кристаллов, предназначался для вычисления скорости, высоты и положения крыльев (данные рассекречены в 1998). В сент. 1971 компания «Texas Instruments» анонсировала М. TMS1802NC для использования в калькуляторах (в 1973 фирма получила патент на М. на одном кристалле). Однако большинство специалистов в области вычислит. техники отдают первенство компании «Intel», объявившей в нояб. 1971 о создании М. Intel 4004 (на одном кристалле), который также разрабатывался для калькуляторов, но позднее стал позиционироваться как универсальный; одновременно обрабатывал 4 двоичных разряда, содержал 2300 транзисторов, работал на частоте 740 кГц, занимал на кристалле пл. 24 мм2, выполнял 60 тыс. операций в секунду (был в сотни раз менее производительным, чем большие вычислительные машины того времени). В 1972 появился 8-разрядный М. Intel 8008, который содержал 3500 транзисторов. М. RCA 1802 (1976) – первый М., стойкий к радиации, использовался в космич. зондах. В 1978 создан М. Intel 8086 (29 тыс. транзисторов), который был наиболее удачным 16-разрядным М. (положил начало семейству x86). Увеличение разрядности М. позволило увеличить адресное пространство доступной памяти и производительность компьютера. Версия 8088 этого М. использовалась в получившем широкое распространение персональном компьютере IBM PC. Первый 32-разрядный М. на одном кристалле был создан фирмой «AT&T Bell Laboratories» в 1980. В 1985 появился коммерчески успешный 32-разрядный М. Intel 386 (275 тыс. транзисторов). Первый коммерческий М. с 64-разрядной адресацией математической памяти выпущен в 1991 (MIPS Technologies R4000); выпускавшиеся ранее М. (напр., Intel i860, 1989) обладали возможностью выполнения 64-разрядных операций над данными, но были лишены 64-разрядной адресации. Первым 64-разрядным x86-совместимым М. стал выпущенный в 2003 AMD Opteron, реализующий архитектуру AMD64.

Основные технические характеристики и архитектура микропроцессора

Важными техническими характеристиками М. являются тактовая частота (частота синхронизирующих импульсов М.) и потребляемая мощность [у совр. М. от 1 (встраиваемые) до 200 Вт и более (серверные)]. Производительность М. в значит. степени определяется тактовой частотой; чем выше частота, тем выше производительность. Наиболее адекватной мерой производительности М. является время выполнения программы (чем оно меньше, тем выше производительность), которое определяется фор­му­лой $N {\cdot} CPI{/}F$, где $N$ – чис­ло ко­манд в про­грам­ме, $CPI$ – ср. вре­мя вы­пол­не­ния ко­ман­ды в так­тах (напр., для М. с так­то­вой ча­сто­той 1 ГГц вре­мя так­та 1 нс), $F$ – так­то­вая частота работы процессора. Для измерения производительности используются различные пакеты тестовых программ, напр. SPECmark (Standard Performance Evaluation Corporation’s benchmark – сводный показатель производительности группы SPEC); чем быстрее он выполняется, тем выше производительность микропроцессора. В разных сегментах рынка используются различные тесты; напр., для измерения производительности М. для встраиваемых применений часто используют тест CoreMark; для высокопроизводительных вычислений (HPC, High Performance Computing) – LINPAK.

Вы­де­ля­ют два осн. ти­па ар­хи­тек­ту­ры М. (см. Ар­хи­тек­ту­ра ЭВМ): CISC (com­plete instruction set computer) – ком­пь­ю­тер с пол­ным на­бо­ром ко­манд; RISC (re­duced instruction set computer) – с со­кра­щён­ным на­бо­ром ко­манд. Пер­вый ха­рак­те­ри­зу­ет­ся ис­поль­зо­ва­ни­ем в сис­те­ме ко­манд ком­пь­ю­те­ра боль­шо­го чис­ла слож­ных ко­манд, при этом по­вы­ше­ние про­из­во­ди­тель­но­сти по­лу­ча­ют за счёт умень­ше­ния чис­ла ко­манд $N$ в про­грам­ме. При соз­да­нии ар­хи­тек­ту­ры вто­ро­го ти­па ис­хо­ди­ли из то­го, что в про­цес­се ра­бо­ты ком­пь­ю­те­ра в осн. (до 90% вре­ме­ни ра­бо­ты) ис­поль­зу­ет­ся все­го 10% от об­ще­го чис­ла ко­манд сис­те­мы ко­манд ком­пь­ю­те­ра. В этом слу­чае по­вы­ше­ние про­из­во­ди­тель­но­сти дос­ти­га­ет­ся за счёт умень­ше­ния $CPI$ и уве­ли­че­ния $F$; для это­го в сис­те­му ко­манд вклю­ча­ют наи­бо­лее час­то при­ме­няе­мые ко­ман­ды, вы­пол­не­ние ко­то­рых ста­ра­ют­ся мак­си­маль­но ус­ко­рить. С сер. 1980-х гг. прак­ти­че­ски во всех М. ис­поль­зу­ют­ся осн. прин­ци­пы RISC-ар­хи­тек­ту­ры: тща­тель­но ото­бран­ная сис­те­ма ко­манд, про­стые ре­жи­мы ад­ре­са­ции, фик­си­ров. фор­мат ко­манд, опе­ра­ции вы­пол­ня­ют­ся над дан­ны­ми, раз­ме­щён­ны­ми в РФ (ту­да же от­прав­ля­ют­ся ре­зуль­та­ты), отд. кэш-па­мять для ко­манд и для дан­ных, при­ме­не­ние оп­ти­ми­зи­рую­ще­го ком­пи­ля­то­ра.

Наиболее производительные универсальные М. разрабатывают и производят компании «Intel», AMD, IBM и «Sun Microsystems» (своего произ-ва не имеет). В 2006 IBM начала произ-во М. Power6 с тактовой частотой 5 ГГц, в 2008 «Intel» сообщила о М. Tukwila с тактовой частотой 2,4 ГГц, который содержит 2,05·109 транзисторов. Ведущим рос. разработчиком М. является акционерное общество Московский центр SPARC-технологий («МЦСТ»). К его достижениям относятся М. МЦСТ-R500, совместимый с архитектурой SPARC (Scalable Processor ARChitecture – масштабируемая архитектура процессора), М. «Эльбрус-3М», основанный на отеч. архитектуре E2K. Осн. особенностями М. «Эльбрус-3М» являются: одновременный запуск на выполнение до 23 команд, аппаратная поддержка полной программной совместимости с архитектурой Intel на основе двоичной компиляции, аппаратная поддержка защищённости вычислений, рекордное соотношение производительности и потребляемой мощности. Несмотря на использование не самой передовой технологии и низкую тактовую частоту (300 МГц), за счёт архитектурных решений «Эльбрус-3М» сравним по производительности с М. Pentium 4 с тактовой частотой 2 ГГц фирмы «Intel».

Рост про­из­во­ди­тель­но­сти М. обу­слов­лен как ин­но­ва­ция­ми в ар­хи­тек­ту­ре М., так и со­вер­шен­ст­во­ва­ни­ем по­лу­про­вод­ни­ко­вой тех­но­ло­гии, уро­вень раз­ви­тия ко­то­рой оп­ре­де­ля­ет­ся т. н. ха­рак­тер­ным раз­ме­ром (рас­стоя­ни­ем от ис­то­ка до сто­ка тран­зи­сто­ра), ко­то­рый мо­жет обес­пе­чить дан­ная тех­но­ло­гия (чем рас­стоя­ние мень­ше, тем луч­ше ха­рак­те­ри­сти­ки тран­зи­сто­ра). Умень­ше­ние ли­ней­но­го раз­ме­ра тран­зи­сто­ра в $n$ раз при­во­дит к умень­ше­нию пло­ща­ди од­но­го тран­зи­сто­ра в $n^2$ раз, по­зво­ля­ет раз­мес­тить на кри­стал­ле то­го же раз­ме­ра в $n^2$ раз боль­ше тран­зи­сто­ров, уве­ли­чить их ско­рость в $n$ раз (т. е. по­вы­сить так­то­вую час­то­ту в $n$ раз), умень­шить по­треб­ляе­мую од­ним тран­зи­сто­ром мощ­ность в $n$ раз. В нач. 21 в. ис­поль­зу­ют­ся тех­но­ло­гии, по­зво­ляю­щие по­лу­чить ха­рак­тер­ный раз­мер 90 нм, 65 нм, 45 нм и мень­ше.

Уве­ли­че­ние так­то­вой час­то­ты дос­ти­га­ет­ся так­же за счёт умень­ше­ния чис­ла ло­гич. уров­ней в ста­ди­ях кон­вей­ер­ной об­ра­бот­ки (см. Кон­вей­ер в вы­чис­ли­тель­ной тех­ни­ке). Оп­ти­маль­ными с точ­ки зре­ния про­из­во­ди­тель­но­сти яв­ля­ют­ся 6–8 ло­гич. уров­ней FO4 (за ло­гич. уро­вень при­ни­ма­ет­ся ин­вер­тор с че­тырь­мя на­груз­ка­ми). Та­кой под­ход к ор­га­ни­за­ции М. на­зы­ва­ет­ся су­пер­кон­вей­ер­ным (super­pipeline).

Одно из осн. направлений повышения производительности – реализация принципа параллелизма в архитектуре М. (т. е. увеличение числа одновременно выполняемых команд). Одновременная подача на выполнение нескольких команд называется суперскалярной организацией М.; впервые такой подход применили в отеч. вычислит. комплексе «Эльбрус-1» (разработан в 1970-х гг.). При такой организации требуется наличие нескольких АУ, которые могут работать одновременно. В М. с архитектурой очень длинного командного слова (VLIW – very long instruction word) также одновременно запускается неск. АУ, но планированием работы занимается компилятор, в отличие от суперскалярной архитектуры, в которой это делает аппаратура. Иногда архитектуру VLIW называют также EPIC (Explicitly Parallel Instruction Computing) – технология обработки команд с явным параллелизмом.

Возможность реализации на одном кристалле большого числа транзисторов привела к созданию микроконтроллера, у которого, кроме ЦП, на кристалле могут быть размещены память, устройство ввода-вывода и периферийные устройства (т. е. это фактически небольшой, дешёвый специализир. управляющий компьютер). Система SoC (system-on-a-chip – система на кристалле) содержит на одном кристалле один или неск. микроконтроллеров, процессор, память, интерфейсы, аналого-цифровые и цифроаналоговые преобразователи. К её преимуществам по сравнению с реализацией этих функций на отд. кристаллах (на нескольких ИС) относятся меньший размер, бóльшая надёжность, бóльшая скорость, а также, благодаря использованию ранее разработанных модулей, сокращение времени разработки.

Многоядерные (multicore) процессоры состоят из нескольких процессоров (называемых процессорными ядрами), размещённых на одном кристалле, что приводит к повышению производительности за счёт распараллеливания задач. При этом требуется операционная система, которая может эффективно использовать неск. процессоров. Первым двухъядерным процессором был Power4 фирмы IBM (2001). Другим методом параллельного исполнения, поддерживаемым многими современными М., является одновременное многопоточное исполнение (англ. SMT – simultaneous multithreading), при котором размножается не всё ядро целиком, а лишь отдельные его структуры, включая архитектурное состояние; набор же исполняющих устройств остаётся неизменным. Многоядерные процессоры могут также реализовывать SMT внутри каждого из своих ядер.

Многоядерные процессоры выпускают фирмы «Intel» (Core 2 Duo, Xeon и др.), AMD (Athlon, Opteron, Turion и др.), «Sun Microsystems» (Niagara) и др. Напр., М. Intel Xeon E7 v3 содержит до 18 ядер по 2 потока в каждом (суммарно 36 потоков) с тактовой частотой до 2,5 ГГц (до 3,3 ГГц в пиковом режиме).

Производительность (в случае питания от батарей) и продолжительность работы М. в значит. степени ограничиваются потребляемой мощностью; она определяет скорость работы, используемую систему охлаждения, стоимость. Поэтому одной из важнейших задач при проектировании М. является сокращение их энергопотребления. Совр. М. – очень сложные электронные изделия (системы), которые невозможно проектировать без программных средств автоматизации проектирования. По совр. данным, ок. 70% трудозатрат в разработке М. занимает его верификация, т. е. проверка соответствия спроектированного М. его спецификации (см. Верификация в вычислительной технике).

Что такое микропроцессор

Микропроцессор - фото 54 - изображение 54

Микропроцессор - сердце любого компьютера. Микропроцессор с успехом применяется также и в бытовых электронных устройствах. Он незаметно завоевал весь мир. И сегодня на помощь человечеству пришла огромная армия таких электронных помощников.

Содержание статьи

  • Определение
  • Из истории

Определение

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

Микропроцессор выполнен в одном или нескольких взаимосвязанных между собой полупроводниковых кристаллах интегральных схем. Состоит из цепей управления, сумматоров, регистров, счетчиков команд и очень быстрой памяти малого объема.

Микропроцессор реализовывает следующие важнейшие функции:

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

Из истории

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

Первый 4-битный микропроцессор появился в 1970-х годах, и применение ему нашлось в электронном калькуляторе. В калькуляторах применялась двоично-десятичная арифметика. Вскоре микропроцессоры стали встраивать в другие устройства, например, принтеры, терминалы и различную автоматику.

В середине 1970-х годов уже 8-битные микропроцессоры с адресацией в 16-бит позволили сотворить первые бытовые микрокомпьютеры.В настоящее время один или же несколько микропроцессоров применяются в качестве вычислительного элемента буквально во всем - от мобильных устройств и мелких встраиваемых систем до огромных суперкомпьютеров и мейнфреймов.

Если посмотреть вокруг, то микропроцессоры буквально, везде: в электронных часах, в мобильных телефонах, в игровых приставках, в карманных электронных играх, в современных микроволновых печах, стиральных машинах, проигрывателях, лазерных дисках, калькуляторах. Даже современный автомобиль наполнен микропроцессорами, не говоря уже о пароходах, самолетах, поездах и т.п.

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

Некоторые авторы причисляют к микропроцессорам собственно устройства, осуществленные строго на одной микросхеме. Это определение расходится и с академическими источниками и с коммерческой практикой. Например, такие микропроцессоры, как AMD и Intel и в корпусах типа Pentium II и SECC, были реализованы на нескольких микросхемах.

В связи с очень небольшим распространением процессоров, которые не являются микропроцессорами, в бытовой практике термины «микропроцессор» и «процессор» почти равнозначны.

Источники:

Понравилась статья? Расскажите друзьям:
Оцените статью, для нас это очень важно:
Проголосовавших: 1 чел.
Средний рейтинг: 5 из 5.

Оставить комментарий:

Отправить

Полезные сервисы:

Опрос: Насколько Вам помогла информация на нашем сайте? (Кол-во голосов: 193)
Сразу все понял
Не до конца понял
Пришлось перечитывать несколько раз
Вообще не понял
Как я сюда попал?
Чтобы проголосовать, кликните на нужный вариант ответа. Результаты