Раздел 2. Машинно-зависимые свойства операционных систем
Тема 2.1. Архитектурные особенности модели микропроцессорной системы IBM PC.
Архитектурой компьютера называется его описание на некотором общем уровне, включающее описание пользовательских возможностей программирования, системы команд, системы адресации, организации памяти и т.д. Архитектура определяет принципы действия, информационные связи и взаимное соединение основных логических узлов компьютера: процессора, оперативного ЗУ, внешних ЗУ и периферийных устройств. Общность архитектуры разных компьютеров обеспечивает их совместимость с точки зрения пользователя.
Персональный компьютер типа IBM PC имеет довольно традиционную архитектуру микропроцессорной системы и содержит все обычные функциональные узлы: процессор, постоянную и оперативную память, устройства ввода/вывода, системную шину, источник питания (рис. 1). Основные особенности архитектуры персональных компьютеров сводятся к принципам компоновки аппаратуры, а также к выбранному набору системных аппаратных средств.
Рис. 1. Архитектура персонального компьютера типа IBM PC
Важная особенность подобной архитектуры — ее открытость, то есть возможность включения в компьютер дополнительных устройств, причем как системных устройств, так и разнообразных плат расширения. Открытость предполагает также возможность простого встраивания программ пользователя на любом уровне программного обеспечения компьютера.
Процессор непосредственно реализует операции обработки информации и управления вычислительным процессом, осуществляя выборку машинных команд и данных из оперативной памяти и запись в ОП, включение и отключение ВУ. Основными блоками процессора являются:
• устройство управления (УУ) с интерфейсом процессора (системой сопряжения и связи процессора с другими узлами машины);
• арифметико-логическое устройство (АЛУ);
• процессорная память (внутренний кэш).
Микропроцессор, иначе, центральный процессор - Central Processing Unit (CPU) - функционально законченное программно- управляемое устройство обработки информации, выполненное в виде одной или нескольких больших (БИС) или сверхбольших (СБИС) интегральных схем.
Микропроцессор выполняет следующие функции:
1. чтение и дешифрацию команд из основной памяти;
2. чтение данных из ОП и регистров адаптеров внешних устройств;
3. прием и обработку запросов и команд от адаптеров на обслуживание ВУ;
4. обработку данных и их запись в ОП и регистры адаптеров ВУ;
5. выработку управляющих сигналов для всех прочих узлов и блоков ПК.
В большинстве машин реализованы принципы фон Неймана в следующем виде:
оперативная память (ОП) организована как совокупность машинных слов (МС) фиксированной длины или разрядности (имеется в виду количество двоичных единиц или бит, содержащихся в каждом МС). Например, ранние ПЭВМ имели разрядность 8, затем появились 16-разрядные, а затем — 32- и 64-разрядные машины. В свое время существовали также 45-разрядные (М-20, М-220), 35-разрядные (Минск-22, Минск-32) и др. машины;
ОП образует единое адресное пространство, адреса МС возрастают от младших к старшим;
В ОП размещаются как данные, так и программы, причем в области данных одно слово, как правило, соответствует одному числу, а в области программы — одной команде (машинной инструкции — минимальному и неделимому элементу программы);
команды выполняются в естественной последовательности (по возрастанию адресов в ОП), пока не встретится команда управления (условного/безусловного перехода, или ветвления — branch), в результате которой естественная последовательность нарушится;
ЦП может произвольно обращаться к любым адресам в ОП для выборки и/или записи в МС чисел или команд.
Команда (instruction) — описание операции, которую необходимо выполнить. Каждая команда начинается с кода операции (КОП), содержит необходимые адреса, характеризуется форматом, который определяет структуру команды, ее организацию, код, длину, метод расположения адресов. Длина различных команд может быть как одинаковой, так и разной.
Команды подразделяются на арифметические, логические, ввода/вывода, передачи данных. Каждая команда выполняется в компьютере за один либо несколько тактов.
Последовательность взаимосвязанных команд именуется макрокомандой. Использование макрокоманд упрощает программирование и обеспечивает механизм вставки добавлений в программы (см. далее макроассемблер, MASM).
Цикл процессора — период времени, за который осуществляется выполнение команды исходной программы в машинном виде; состоит из нескольких тактов.
Такт работы процессора — промежуток времени между соседними импульсами генератора тактовых импульсов, частота которых есть тактовая частота процессора. Эта частота является одной из основных характеристик компьютера и во многом определяет скорость его работы, поскольку каждая операция в вычислительной машине выполняется за определенное количество тактов. Выполнение короткой команды (арифметика с фиксированной точкой, логические операции), о которых речь здесь и пойдет, обычно занимает пять тактов:
выборка команды;
расшифровка кода операции (декодирование);
генерация адреса и выборка данных из памяти;
выполнение операции;
запись результата в память.
Процедура, соответствующая такту, реализуется определенной логической цепью (схемой) процессора, обычно именуемой микропрограммой.
Регистры — устройства, предназначенные для временного хранения данных ограниченного размера. Важной характеристикой регистра является высокая скорость приема и выдачи данных. Регистр состоит из разрядов, в которые можно быстро записывать, запоминать и считывать слово, команду, двоичное число и т. д. Обычно регистр имеет ту же разрядность, что и машинное слово. Регистр, накапливающий данные, именуют аккумулятором.
Регистр, обладающий способностью перемещать содержимое своих разрядов, называют сдвиговым. В этих регистрах за один такт хранимое слово поразрядно сдвигается на одну позицию. Сдвиговые регистры используются при обработке данных, кодировании и декодировании.
Некоторые регистры служат счетчиками. Счетчик является устройством, которое на своих выходах выдает (в двоичной форме) сумму числа импульсов, подаваемых на его единственный вход. Максимальное число импульсов, которое счетчик может подсчитать, называется его емкостью.
Регистры общего назначения (РОН) — (General Purpose Registers) — общее название для регистров, которые временно содержат данные, передаваемые или принимаемые из памяти.
Регистр команды (РК),(Instruction Register - IR) служит для размещения текущей команды, которая находится в нем в течение текущего цикла процессора.
Регистр (РАК), счетчик (СчАК) адреса команды (Program Counter — PC) — регистр, содержащий адрес текущей команды. Регистр адреса (числа) — РА(Ч) — содержит адрес одного из операндов выполняемой команды (регистров может быть несколько).
Регистр числа (РЧ) — содержит операнд выполняемой команды, РЧ также несколько.
Регистр результата (РР) — предназначается для хранения результата выполнения команды.
Сумматор — регистр, осуществляющий операции сложения (логического и арифметического двоичного) чисел или битовых строк, представленных в прямом или обратном коде (иногда РЧ и РР включают в состав сумматора).
Существуют и другие регистры, например, регистр состояния — Status Register (SR).Типичным содержанием SR является информация о результатах завершения команды (ноль, переполнение, деление на ноль, перенос и пр.). УУ использует информацию из SR для исполнения условных переходов (например, «в случае переполнения перейти по адресу 4170»).
Типичная команда содержит:
код операции (КОП) — характеризующий тип выполняемого действия (сложение, вычитание и пр. чисел; сравнение строк; передача управления, обращение к ВУ и пр.);
номера индексного (ИР) и базисного (БР) регистров (в некоторых машинах — адреса слов, ячеек ОП, в которых размещена соответствующая информация);
адреса операндов Al, A2 и т. д., участвующих в выполнении команды (чисел, строк, других команд программы).
Осуществляется расшифровка (декодирование) команды. Адреса Al, A2 и пр. помешаются в регистры адреса. Если в команде указаны ИР или БР, то их содержимое используется для модификации РА — фактически выбираются числа или команды, смещенные в ту или иную сторону по отношению к адресу, указанному в команде.
Контрольные вопросы
Что входит понятие архитектуры компьютера?
Регистры какой группы предоставляют доступ к некоторой дополнительной информации о состоянии МП и о результате выполнения последней арифметико-логической операции?
Что подразумевают под интерфейсами при рассмотрении общей схемы ЭВМ ?
Перечислить классы по функциональному назначению доступных регистров.
Особенностью какой группы регистров является то, что они могут использоваться при различных арифметико-логических операциях ?
За что "сегментные" регистры получили свое название?
Регистры какой группы предоставляют доступ к некоторой дополнительной информации о состоянии МП и о результате выполнения последней арифметико-логической операции?
Рассказать об организация памяти.
|