Бройдо В.Л. Вычислительные системы, сети и телекоммуникации (2002) (1186248), страница 25
Текст из файла (страница 25)
Архитектура 1А-64 не является ни 64-разрядным расширением архитектуры С18С, ни переработкой архитектуры ИВС.!А-64 представляет собоГГновую архитектуру, использующую длинные слова команд (1.1%), предикаты команд ((пзГгпсйоп ргес)1сайоп), устранение ветвлений (ЬгапсЬ е1пшпайоп), предварительную загрузку данных (зрссп!аг1ме!оа61п8) и другие ухипгрения для того, чтобы обеспечить больший параллелизм выполнения программ. По тем не менее 1А-64 — зто компромисс между С18С и К15С, попытка сделать их совместимыми; существует два реЖима декодирования команд — У1.1Ю и старый С15С. Программы автоматически переключаются в необходимый режим исполнения. Для работы с Ч1.1% операционные системы должны содержать и 64-разрядную часть на 1А-64, и старую 32-разрядную. Все новые МП создаются на основе технологий, обеспечивающих формирование элементов с линейным размером порядка 0,25 мкм и ниже (традиционные МП 80486 и Репе)цш использовали 0,8-мкм элементы).
Уменьшение размеров элементов обеспечивает возможность: увеличения тактовой частоты МП до сотен мегагерц и выше; гз уменьшения перегрева МП, что позволяет использовать пониженное напряжение питания 1 — 2 В (вместо 5 В). Физическая и функциональная структура микропроцессора Физическая структура микропроцессора достаточно сложна. Ядро процессора содержит главный управляющий модуль и исполняющие людули — блоки выполнения операций над целочисленными данными. К локальным управляющим схемам 114 Глава 5.
Микропроцессоры и системные платы относятся: блок плавающей точки, модуль предсказания ветвлений, модуль преобразования С15С инструкций во внутренний К15С микрокод, регистры микропроцессорной памяти (в МП типа ЪЧ 1% до 256 регистров), регистры кзш-памяти 1-го уровня (отдельно для данных и инструкций), шинный интерфейс и многое другое. В состав микропроцессора Репггцш обычно входят следующие физические компоненты: о Соте — ядро МП; а Ехесщюп ()п1г — исполняющий модуль; гз 1пгедег А(Л) — АЛ У для операций с целыми числами (с фиксированной запятой); гз Кея1згегз — регистры; 0 Р!оа0щ Ро(п1 11пй — блок для работы с числами с плавающей запятой; гз Рпшагу СасЬе — кзш первого уровня, в том числе кэш данных (1)ага СасЬе) и кэш команд (Сог1е СасЬе); а 1пзггпсаоп 1)есог(е апд Рге(ессЬ ()п(г и ВгапсЬ Ргег((стог — блоки декодирования инструкций, спекулятивного их исполнения и предсказания ветвлений; гз Вцз 1пгег(асе — интерфейсные шины, в том числе 64-битная (64-Ъ1г Впз) и 32- битная (32-Ыг Вцз) шины, и выход на системную шину к оперативной памяти (То 1(АМ).
Функционально МП можно разделить на две части: о операционную, содержащую устройство управления (УУ), арифметпко-логическое устройство (АЛУ) и микропроцессорную память (МПП) (за исключением нескольких адресных регистров); о интерфейсную, содержащую адресные регистры МПП; блок регистров команд— регистры памяти для хранения кодов команд, выполняемых в ближайшие такты работы машины; схемы управления шиной и портами. Обе части МП работают параллельно, причем интерфейсная часть опережает операционную, так что выборка очередной команды из памяти (ее запись в блок регистров когяапд и предварительный анализ) выполняется во время выполнения операционной частью предыдущей команды. Современные микропроцессоры имеют несколько групп регистров в интерфейсной части, работающих с различной степенью опережения, что позволяет выполнять операции в конвейерном режиме. Такая организация МП позволяет существенно повысить его аффективное быстродействие. Устройствоуправления Устройство управления (УУ) является функционально наиболее сложным устройством ПК вЂ” оно вырабатывает управляющие сигналы, поступающие по кодовым шинам инструкций (КШИ) во все блоки машины.
Упрощенная функциональная схема УУ показана на рис. 5.1. 115 Микропроцессоры Кодовая шина инструкций роцессорной мяти От тактов одевая на адреса Кодовая шина данных Рис. 5.1. Укрупненная функциональная схема УУ На рисунке представлены: ьз регистпр команд — запоминающий регистр, в котором хранится код команды: код выполняемой операции (КОП) и адреса операндов, участвующих в операции; регистр команд расположен в интсрфейспой части МП, в блоке регистров команд; дешифратор операций — логический блок, выбирающий в соответствии с поступающим из регистра команд КОП один нз множества име|ощихся у него выходов; ьз постоянное запоминающее устройство (ПЗУ) микропрогразьт~ хранит в своих ячейках управляющие сигналы (импульсы), необходимые дяя выполнения в блоках ПК процедур операций обработки информации; импульс по выбранному дешифратором операций всоответствии с КОП проводу считывает из ПЗУ микропрограмм необходимую последовательность управляющих сигналов; й узел формирования адреса (находится в интерфейсной части МП) — устройство, вычисляющее полный адрес ячейки памяти (регистра) по реквизитам, поступающим из регистра команд п регистров МПП; ГЗ кодовые шины данных, идреса и инструкций — часть внутретшей интерфейсной пщны микропроцессора.
В общем случае УУ формирует управляющие сигналы для выполнения следующих основных процедур: 0 выборки из регистра-ксчетчика адреса командые МПП адреса ячейки ОЗУ, где хранится очередная команда программы; выборки из ячеек ОЗУ кода очередной команды и приема считанной команды в регистр команд; расшифровки КОП и признаков выбранной команды; 116 Глава 5. Микропроцессоры н системные платы ° считывания из соответствующих расшифрованному КОП ячеек ПЗУ микропрограмм управляющих сигналов (импульсов), определяющих во всех блоках машины процедуры выполнения заданной операции, и пересылки управляющих сигналов в эти блоки; о считывания из регистра команд н регистров ЫПП отдельных составляющих адресов операндов (чисел), участвующих в вычислениях, н формирование полных адресов операндов; выборки операндов (по сформированным адресам) и выполнения заданной операции обработки этих операндов; О записи результатов операции в память; 2 формирования адреса следующей команды программы, Арифметику-логическое устройство Арифметика-логическое устройство (АЛУ) предназначено для выполнения арифметических и логических оцераций преобразовашия информации.
Функционально АЛУ (рпс. 5.2) состоит обычно из двух регистров, сумматора н схем управления (местного устройства управления). Кодовая шина инструкций Кодовая шина данных Рнс. влц Функциональная схема длу Сулсцатор — вычислительная схема, выполняющая процедуру сложения поступающих на ее вход двоичных кодов; сумматор имеет разрядность двойного машин- ного слова. Регистры — быстродействующие ячейки памяти различной длины: Регистр 1 (Рг1) имеет разрядность двойного слова, а Регистр 2 (Рг2) — разрядность слова. При выполнении операций в Рг1 помещается первое число, участвующее в операции, а по завершении операции — результат; в Рг2 — второе число, участвующее в операции (по завершении операции информация в нем не изменяется). Регистр 1 может и принимать информацию с кодовых шин данных, и выдавать информацшо на них; регистр 2 только получает информацию с этих шин.
Микропроцессоры 117 Схемы управления принимают по кодовым шинам инструкций управляющие сигналы от устройства управления и преобразуют их в сигналы для управления работой регистров и сумматора АЛУ. АЛУ выполняет арифметические операции «+», « — », « . » и «:» только над двоичной информацией с запятой, фиксированной после последнего разряда, то есть только над целыми двоичными чпсламп.
Выполнение операций над двоичными числами с плавающей запятой и над двоична-кодированными десятичными числами осуществляется с привлечением математического сопроцессора или по специально составленным программам. Рассмотрим в качестве примера выполнения команды умножения.
Перемножаются числа 1101 н 1011 (чпсла для простоты взяты 4-битными). Множимое находится в регистре 1, имеющем удвоенную по отношению к регистру 2 разрядное.гь; множитель находится в регистре 2. Операция умножения требует для своего выполнения нескольких талтов. В каждом талте число из регистра 1 проходит в сумматор (имеющий также удвоенную разрядность) только в том случае, если в младшем разряде регисгра 2 находится 1. В данном примере в первом такте число 1101 пройдез в сумматор, и в этом же первом такте число в регистре 1 сдвигается на один разряд влево, а число в регистре 2 на один разряд вправо. В конце такта после сдвигов в регистре 1 будет находиться число 11010, а в регистре 2 — число 101. Во втором такте число из регистра 1 пройдет в сумматор, так как младший разряд в регистре 2 равен 1; в конце такта числа в регистрах опять будут сдвинуты влево и вправо, так что в регистре 1 окажется число 110100, а в регистре 2 — число 10.
В третьем такте число пз регистра 1 не пройдет в >>у>иматор, так как младший разряд в регистре 2 равен 0; в конце такта числа в регистрах будут сдвинуты влево и вправо, так что в регистре 1 окажется число 1101000, а в регистре 2 — число 1. В третьем такте число из регистра 1 пройдет в сумматор, так как младший разряд в регистре 2 равен 1; в конце такта числа в регистрах будут сдвш>уты влево и вправо, так что в регистре 1 окажется число 11010000, а в регистре 2 — число О. Так как множитель в регистре 2 стал равным О, операция умножения заканчивается.
В результате в сумматор последователыш поступят и будут сложены числа: 1101, 11010, 1101000; их сумма 10001111 (143 десятичное) и будет равна произведению чисел 1101 х 1011 (13 х 11 десятичные). Микропроцессорная память Микропроцессорная память (МПП) базового МП 8088 включает в себя четырнадцать 2-байтовых запоминающих регистров. У МП 80286 и выше имеются дополнительные регистры, например у МП типа Ч1 1">>>> есть 256 регистров, из которых 128— регистры общего назначения. У МП 80386 и выше некоторые регистры, в том числе и регистры общего назначения, — 4-байтовые (у МП Репе>цш есть и 8-байтовые регистры).