logo search
Лекции АКС и ОАУ иФВС-Ходотова Е

Тема 2.3. Взаимодействие элементов при работе микропроцессора

Система команд микропроцессора. Сегменты оперативной памяти. Исполнительный адрес

Работой МП управляет программа, записанная в ОП ЭВМ. Адрес очередной команды хранится в счетчике команд IP (Instruction Pointer) и в одном из сегментных регистров, чаще всего в CS. Каждый из них в реальном режиме имеет длину 16 бит, тогда как физический адрес ОП должен иметь длину 20 бит. Несогласованность длины машинного слова (16 бит) и длины физического адреса ОП (20 бит) приводит к тому, что в командах невозможно указать физический адрес ОП - его приходится формировать, собирать из разных регистров МП в процессе работы.

В реальном режиме вся ОП делится на сегменты (длина сегмента - 64 Кбайта). Адрес ОП разделяется на две части: номер сегмента в ОП (база сегмента) и номер ячейки внутри данного сегмента (смещение относительно начала сегмента). Базовый адрес сегмента образуется добавлением к номеру сегмента справа четырех нулей. Поскольку последние четыре разряда абсолютного (физического) адреса сегмента всегда нулевые, сегмент может начинаться не с любой ячейки ОП, а только с “параграфа” - начала 16-байтного блока ОП. В структуре микропроцессора имеется несколько регистров сегментов, например в i8086 - четыре:

С S - программный сегмент;

DS - сегмент данных (информационный сегмент);

SS - стековый сегмент;

ES - расширенный сегмент (дополнительный сегмент данных).

Номер ячейки внутри сегмента (смещение) называется также исполнительным адресом. В большинстве случаев в адресной части команды указывается именно исполнительный адрес - номер сегмента чаще всего подразумевается по умолчанию. Однако допускается указание и полного адреса ОП в виде префиксной структуры: “сегмент: смещение”. Если сегмент в команде не указывается, значит, работа ведется внутри текущего сегмента (характер выполняемой работы и какой из сегментных регистров определяет текущую базу сегмента, зависят от вида выполняемой команды).

Номер сегмента так же, как и смещение, имеет длину 2 байта. При вычислении физического адреса ОП сегмент и смещение суммируются, но сегмент перед суммированием сдвигается влево на 4 бита. В результате суммирования образуется физический адрес ОП длиной 20 бит.

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

Рис. Формирование физического адреса ОП в защищенном режиме

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

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

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

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

Все флаги младшего байта регистра устанавливаются арифмети­ческими или логическими операциями МП. Все флаги старших бай­тов, за исключением флага переполнения, устанавливаются программ­ным путем. Для этого в МП имеются команды установки флагов (STC, STD, STI), сброса (CLC, CLD, СП), инвертирования (CMC).

Генератор тактовых импульсов 

Он генерирует последовательность электрических импульсов; частота генерируемых импульсов определяет тактовую частоту машины.

Промежуток времени между соседними импульсами определяет время одного такта работы машины или просто такт работы машины.

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

Системная шина

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

Системная шина включает в себя: 

Системная шина обеспечивает три направления передачи информации

1)      Между микропроцессором и основной памятью

2)      Между микропроцессором и портами ввода – вывода внешних устройств

3)      Между основной памятью и портами ввода – вывода внешних устройств (в режиме прямого доступа к памяти)

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

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

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

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

Сопроцессор ввода-вывода за счёт параллельной работы с МП значительно ускоряет выполнение процедур ввода-вывода при обслуживании нескольких внешних устройств (дисплей, принтер, НЖМД, НГМД и др.); освобождает МП от обработки процедур ввода-вывода, в том числе реализует и режим прямого доступа к памяти.

Важнейшую роль играет в ПК контроллер прерываний.

Прерывание – временный останов выполнения одной программы в целях оперативного выполнения другой, в данный момент более важной (приоритетной) программы.           

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

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

Тема 2.4.Формы представления информации в ПК

Представление чисел в ПК: целые числа без знака, со знаком. Представление текстовой информации в ПК

Тема 2.4.1. Системы счисления

Разновидности систем счисления. Перевод чисел из одной системы счисления в другую

Тема 2.4.2. Логические элементы, цифровые устройства

Арифметические операции в позиционных системах счисления : сложение, вычитание, умножение и деление

Лабораторная работа № 3. Системы счисления: перевод чисел

Лабораторная работа № 4. Арифметические операции над двоичными числами

Лабораторная работа № 5. Логические основы работы ПК

Тема 2.5. Память ПК

Память. Виды памяти. Единицы измерения

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

Основными характеристиками ЗУ являются:

Основная память (ОП)

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

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

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

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

Байты могут объединяться в ячейки, которые называются также словами. Для каждого компьютера характерна определенная длина слова — два, четыре или восемь байтов. Это не исключает использования ячеек памяти другой длины (например, полуслово, двойное слово). Как правило, в одном машинном слове может быть представлено либо одно целое число, либо одна команда. Однако, допускаются переменные форматы представления информации. Разбиение памяти на слова для четырехбайтовых компьютеров представлено в таблице:

 

Байт 0

Байт 1

Байт 2

Байт 3

Байт 4

Байт 5

Байт 6

Байт 7

ПОЛУСЛОВО

ПОЛУСЛОВО

ПОЛУСЛОВО

ПОЛУСЛОВО

СЛОВО

СЛОВО

ДВОЙНОЕ СЛОВО

 Широко используются и более крупные производные единицы объема памяти: Килобайт, Мегабайт, Гигабайт, а также, в последнее время, Терабайт и Петабайт.

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

В состав внутренней памяти входят оперативная память, кэш-память и специальная память.

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

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

   1. Динамическая память (DRАМ) используется обычно в качестве оперативной памяти общего назначения, а также как память для видеоадаптера. Из применяемых в современных и перспективных ПК типов динамической памяти наиболее известны DRАМ и FРМ ОКАМ, ЕDО DRАМ и ВЕDО DRАМ, ЕDRАМ и СDRАМ, Synchronous DRАМ, DDR SDRАМ и SLDRАМ, видеопамять МDRАМ, VRАМ, WRАМ и SGRАМ, RDRАМ и некоторые другие.

   2. Статическая память (SRАМ) обычно применяется в качестве кэш-памяти второго уровня для кэширования основного объема ОЗУ.

    Статическая память выполняется обычно на основе ТТЛ-, КМОП- или БиКМОП-микросхеми по способу доступа к данным может быть как асинхронной, так и синхронной.Асинхронным назы¬вается доступ к данным, который можно осуществлять в произвольный момент времени. Асинхронная SRАМ применялась на материнских платах для третьего — пятого поколений процессоров. Время доступа к ячейкам такой памяти составляло от 15 (33 МГц) до 8 нс (66 МГц).

    Синхронная память обеспечивает доступ к данным не в произвольные моменты времени, а синхронно с тактовыми импульсами. В промежутках между ними память может готовить для доступа следующую порцию данных. В большинстве материнских плат пятого поколения используется разновидность синхронной памяти — пакетно-конвейерная SRАМ, для которой типичное время одиночной операции чтения/записи составляет 3 такта, а групповая операция занимает 3-1-1-1 такта при первом обращении и 1-1-1-1 при последующих обращениях, что обеспечивает ускорение доступа более чем на 25 %.

    3. Системы видеопамяти

   VRAM (Video RAM — видеоОЗУ) — так называемая двухпортовая DRАМ. Этот тип памяти обеспечивает доступ к данным со стороны сразу двух устройств, т. е. есть возможность одновременно пи¬сать данные в какую-либо ячейку памяти и одновременно с этим читать данные из какой-нибудь соседней ячейки.