Лекция 7 Внутренняя организация процессора


Лекция 7 Внутренняя организация процессора
Арифметико-логическое устройство (АЛУ): назначение и классификация.
389318585090Арифметико-логическое устройство (АЛУ) - это многофункциональное устройство, которое выполняет над входными числами различные арифметические и логические операции.
В общем случае многофункциональное АЛУ включает операционную часть (ОУ) и устройство управления (УУ), которое осуществляет вторичную дешифрацию кода команды и определяет выполняемую в АЛУ операцию.
.
Структура АЛУ
Набор выполняемых в АЛУ операций должен обладать функциональной полнотой. Чтобы обеспечить функциональную полноту достаточно четырех операций :обращение к памяти для записи/чтения данных;
инкремент/декремент;
сравнение (реализует возможность условного перехода);
останов работы устройства.
В первых процессорах количество операций ограничивалось шестнадцатью, теперь достигает нескольких сотен.
Количество выполняемых операций является важной характеристикой АЛУ.
Классификация АЛУ АЛУ можно классифицировать по ряду признаков приведенных ниже.
1. Классификация по способу представления данных
с фиксированной запятой;
с плавающей запятой.
2. Классификация по способу действия над операндами
·последовательные АЛУ где каждая операция выполняется последовательно над каждым разрядом;
·параллельные АЛУ операция выполняется над всеми разрядами данных одновременно;
·последовательно - параллельные АЛУ где слово данных делится на слоги обработка данных ведется параллельно над разрядами слога и последовательно над слогами.
3. Классификация по использованию систем счисления
двоичная;
двоично- десятичная;
восьмеричная;
шестнадцатеричная;
и т.д.
4. Классификация по характеру использования элементов и узлов
блочные - для выполнения отдельных арифметических операций в структуру АЛУ вводят специальные блоки что позволяет процесс обработки информации вести параллельно;
конвейерные- в конвейерных АЛУ операция разбивается на последовательность микроопераций выполняемых за одинаковые промежутки времени (такты) на разных ступенях конвейера что позволяет выполнять операцию над потоком операндов каждый такт;
многофункциональные- это универсальные АЛУ выполняющие множество операций в одном устройстве. В таких АЛУ требуется настройка на выполнение данной операции при помощи кода операции.
5.Классификация по временным характеристикам.
По временным характеристикам АЛУ делятся на:
синхронные- в синхронных АЛУ каждая операция выполняется за один такт.
асинхронные- не тактируемые АЛУ, обеспечивающие высокое быстродействие так как выполняются на комбинационных схемах.
6.Классификация по структуре устройства управления
АЛУ с жесткой логикой устройства управления;
АЛУ с микропрограммным управлением.
Основные функции и характеристики АЛУ
Основные функции АЛУ
Современные АЛУ выполняют
функции двоичной арифметики для данных в формате с фиксированной точкой;
функции двоичной арифметики для данных в формате с плавающей точкой;
функции арифметики двоично-десятичного представления данных;
логические операций (в том числе сдвиги арифметические и логические);
операции пересылки данных;
работу с символьными данными;
работу с графическими данными.
 
Основные характеристики АЛУ
Основные характеристики АЛУ можно разделить на количественные и качественные.
Количественные характеристики
Количественные характеристики определяют скорость выполнения операций время выполнения одной операции точность представления данных количество выполняемых операций.
Среднюю скорость выполнения операций Vср. в АЛУ можно определить как отношение N(T)- количества операций выполненных за отрезок времени Т к данному отрезку времени
Vср = N(T)/T
Среднее время которое АЛУ тратит на выполнение операции равно
Tср = 1/VсрТочность представления данных в АЛУ зависит от разрядной сетки АЛУ и выбранного формата данных.
Качественные характеристики АЛУ:
К качественным характеристикам АЛУ относятся
структурные особенности АЛУ;
форматы представления данных (с фиксированной или плавающей точкой);
способы кодирования данных.
Развитие структуры АЛУ
АЛУ первого поколения строились по принципу распределения микроопераций и их закрепления за отдельными элементами устройства для выполнения операций в регистрах они дополнялись логическими схемами. В АЛУ первого поколения использовался сумматор накапливающего типа. Сумматор накапливающего типа строится на триггерах и для выполнения операций в нем данные должны подаваться в виде импульсных сигналов последовательно например сначала подается первое слагаемое затем второе затем перенос из предыдущего (младшего) разряда. Понятно что такой сумматор не может обеспечить высокое быстродействие АЛУ. На рисунке показана структура АЛУ первого поколения.
 

структура АЛУ первого поколения
АЛУ имеет сложное устройство управления выполненное по жесткой схеме т.е. такое устройство формирует все управляющие сигналы при помощи специальных комбинационных схем. Операции выполняются над числами представленными в формате с фиксированной точкой.
В АЛУ 2-го поколения используется сумматор комбинационного типа обеспечивающий более высокое быстродействие по сравнению с сумматором накапливающего типа, большее количество регистров, используется формат данных с плавающей точкой для управления потоками данных введено большее количество мультиплексоров введены буферные регистры для связи с оперативной памятью но по прежнему много операций выполняется в регистрах.
АЛУ 3-го поколения выполняются на БИС и СБИС технология требует чтобы структура АЛУ была более однородной внутренняя структура делится на крупные блоки. Арифметико-логические операции выполняются в отдельном логико- суммирующем модуле соединение между блоками осуществляется с помощью внутреннего интерфейса используется 2-х и 3-х шинная организация. При интегральной технологии шины занимают большой объём кристалла но введение дополнительных связей повышает быстродействие АЛУ возможно выполнение операции за 1 такт. Достоинства АЛУ 3-го поколения в компактности, высокой надёжности, однородности структуры.
В современных АЛУ широко используются принципы временного и пространственного параллелизма при выполнении операций.Развивается 2 направления:
использование блочных АЛУ (пространственный параллелизм);
использование конвейерных АЛУ (временной параллелизм).
Интерфейсная часть МП
Интерфейсная часть МП предназначена для связи и согласования МП системной шиной ПК, а также для приема, предварительного анализа команд выполняемой программы и формирования полных адресов операндов и команд.
Интерфейсная часть включает в свой состав
адресные регистры микропроцессорная память (МПП),
узел формирования адреса,
блок регистров команд, являющийся буфером команд в МП,
внутреннюю интерфейсную шину МП
схемы управления шиной
схемы управления портами ввода-вывода.
Адресные регистры микропроцессорная память (МПП) - микропроцессорная память - память небольшой емкости, но чрезвычайно высокого быстродействия (время обращения к МПП, т. е. время, необходимое на поиск, запись или считывание информации из этой памяти, измеряется наносекундами - тысячными долями микросекунды) .
Она предназначена для кратковременного хранения, записи и выдачи информации, непосредственно в ближайшие такты работы машины участвующей в вычислениях, МПП используется для обеспечения высокого быстродействия машины, ибо основная память не всегда обеспечивает скорость записи, поиска и считывания информации, необходимую для эффективной работы быстродействующего микропроцессора.
Микропроцессорная память состоит из быстродействующих регистров с разрядностью не менее машинного слова. Количество и разрядность регистров в разных микропроцессорах различны: от 14 двухбайтных регистров у МП 8086 до нескольких десятков регистров разной длины у МП Pentium. Регистры микропроцессора делятся на регистры общего назначения и специальные.
Специальные регистры применяются для хранения различных адресов (адреса команды, например) , признаков результатов выполнения операций и режимов работы ПК (регистр флагов, например) и др.
Регистры общего назначения являются универсальными и могут использоваться для хранения любой информации, но некоторые из них тоже должны быть обязательно задействованы при выполнении ряда процедур.
Узел формирования адреса вычисляет полный исполнительный адрес ячейки памяти или регистра внешнего устройства по реквизитам, поступающим из регистра команд и регистров МПП. Он находится в интерфейсной части микропроцессора.
Кодовые шины данных, адреса и инструкций также являются частью внутреннего интерфейса микропроцессора; они сопрягаются с шинами системной магистрали с помощью соответствующих схем управления.
Порты ввода-вывода - это пункты системного интерфейса ПЭВМ, через которые микропроцессор обменивается данными с другими устройствами. Каждый порт, подобно ячейкам памяти, имеет свой адрес (номер). Порт устройства содержит аппаратуру сопряжения и два регистра памяти - для обмена данными и обмена управляющей информацией. Всего портов у микропроцессора может быть 65536. Многие типовые устройства (НЖМД, НГМД, клавиатура, принтер и др.) имеют постоянно закрепленные за ними порты ввода-вывода.
Схема управления шиной и портами использует для связи с портами кодовых шип инструкций (КШИ), адреса (КША) и данных (КШД) системной магистрали. Для организации обмена данными микропроцессор посылает по КШИ сигнал, который оповещает все устройства ввода-вывода, что адрес на КША является адресом порта, а затем посылает и сам адрес порта. То устройство, адрес порта которого совпадает с посланным по КША адресом, дает ответ о готовности, после чего по КШД осуществляется обмен данными.
Организация работы и функционирование процессора
Работа компьютера состоит из многих миллионов и даже миллиардов элементарных операций — машинных команд. Выполнение машинных команд предусмотрено в конструкции процессора. Для каждой команды в процессоре есть отвечающая за нее электронная микросхема. Все машинные команды делятся на группы в зависимости от класса выполняемой ими операции. Именно, команда выполняет действие одного из следующих типов:
перемещает блок информации из оперативной памяти в регистры процессора;
перемещает блок информации из регистров процессора в оперативную память компьютера;
получает блок информации извне через один из портов и помещает ее в регистр процессора;
выводит блок информации из регистра процессора через один из портов во внешнюю среду;
инициирует операцию вычисления, выполняемую процессором: операция совершается над величинами, хранящимися в регистрах процессора, и результат помещается в другие или те же регистры;
оповещает процессор о некоторой нештатной ситуации, называемой прерыванием: по этой команде процессор прекращает выполнение текущей программы и запускает другую программу, которая должна работать в случае прерывания данного типа.
Все содержательные операции совершаются непосредственно процессором над величинами, которые находятся в регистрах процессора. В частности, это арифметические и логические операции, а также операции преобразования. Эти операции фактически состоят из большого числа более мелких элементарных операций, каждая из которых производится над содержимым одного из разрядов одного из регистров. Многие из этих операций совершаются процессором параллельно (то есть одновременно). Для этого в компьютерах используется генератор тактовых импульсов, который синхронизирует работу различных частей компьютера. Каждая машинная команда состоит из определенного числа тактов. Один такт состоит из нескольких параллельно выполняемых операций. После выполнения всех тактов команды в одном из регистров процессора образуется правильный результат. Разные команды требуют различного количества тактов. В частности, число тактов при умножении чисел значительно больше, чем при сложении.
Основная функция любого процессора, ради которой он и создается, — это выполнение команд. Система команд, выполняемых процессором, представляет собой нечто подобное таблице истинности логических элементов или таблице режимов работы более сложных логических микросхем. То есть она определяет логику работу процессора и его реакцию на те или иные комбинации внешних событий.
Написание программ для микропроцессорной системы — важнейший и часто наиболее трудоемкий этап разработки такой системы. А для создания эффективных программ необходимо иметь хотя бы самое общее представление о системе команд используемого процессора. Самые компактные и быстрые программы и подпрограммы создаются на языке Ассемблер, использование которого без знания системы команд абсолютно невозможно, ведь язык Ассемблер представляет собой символьную запись цифровых кодов машинного языка, кодов команд процессора. Конечно, для разработки программного обеспечения существуют всевозможные программные средства. Пользоваться ими обычно можно и без знания системы команд процессора. Чаще всего применяются языки программирования высокого уровня, такие как Паскаль и Си. Однако знание системы команд и языка Ассемблер позволяет в несколько раз повысить эффективность некоторых наиболее важных частей программного обеспечения любой микропроцессорной системы — от микроконтроллера до персонального компьютера.
Каждая команда, выбираемая (читаемая) из памяти процессором, определяет алгоритм поведения процессора на ближайшие несколько тактов. Код команды говорит о том, какую операцию предстоит выполнить процессору и с какими операндами (то есть кодами данных), где взять исходную информацию для выполнения команды и куда поместить результат (если необходимо). Код команды может занимать от одного до нескольких байт, причем процессор узнает о том, сколько байт команды ему надо читать, из первого прочитанного им байта или слова. В процессоре код команды расшифровывается и преобразуется в набор микроопераций, выполняемых отдельными узлами процессора. Но разработчику микропроцессорных систем это знание не слишком важно, ему важен только результат выполнения той или иной команды.

Приложенные файлы

  • docx 25463111
    Размер файла: 96 kB Загрузок: 0

Добавить комментарий