240.98K
Категория: ЭлектроникаЭлектроника

Функциональная организация ЭВМ

1.

ФУНКЦИОНАЛЬНАЯ ОРГАНИЗАЦИЯ ЭВМ
Организация фон-неймановской ЭВМ
На функциональной схеме (рисунок 2.1) показаны типовые узлы каждого из основных
устройств ЭВМ, а также сигналы, инициирующие выполнение отдельных операций по
пересылке информации и ее обработке, необходимых для функционирования машины.

2.

Рис. 2.1 Функциональная схема ЭВМ

3.

Сокращения на рисунке 2.1:
МПА - микропрограммный автомат; СК - счетчик команд;
ДКОп - дешифратор кода операции; РК - регистр команд;
РКОп - регистр кода операции;
РА - регистр адреса;
УС - указатель стека;
РАП - регистр адреса памяти;
РДП - регистр данных памяти;
ОП - основная память;
РХ - регистр X;
P Y - регистр Y;
ОПБ - операционный блок;
РПрз - регистр признаков;
Акк - аккумулятор;
ДВВ - дешифратор номера порта ввода-вывода;
ПУ - периферийное устройство.

4.

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

5.

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

6.

В рассматриваемой ЭВМ любая команда занимает одну ячейку, поэтому содержимое СК
увеличивается на единицу, что обеспечивается подачей сигнала управления +1СК. По
завершении текущей команды адрес следующей команды программы всегда берется из
счетчика команд. Для изменения естественного порядка вычислений (перехода в иную
точку программы) достаточно занести в СК адрес точки перехода.
Хотя термин «счетчик команд» считается общепринятым, его нельзя признать вполне
удачным из-за того, что он создаст неверное впечатление о задачах данного узла. По этой
причине разработчики ЭВМ используют иные названия, в частности программный счетчик
(PC, Program Counter) или указатель команды (IP, Instruction Pointer).
Последнее определение представляется наиболее удачным, поскольку точнее отражает
назначение рассматриваемого узла УУ.

7.

Регистр команды
Счетчик команд определяет лишь местоположение команды в памяти, но не содержит
информации о том, что это за команда. Чтобы приступить к выполнению команды, ее
необходимо извлечь из памяти и разместить в регистре команды (РК). Этот этап носит
название выборки команды. Только с момента загрузки команды в РК она становится
«видимой» для процессора.
В РК команда хранится в течение всего времени ее выполнения. Любая команда содержит
два поля: поле кода операции и поле адресной части. Учитывая это обстоятельство, регистр
команды иногда рассматривают как совокупность двух регистров - регистра кода операции
(РКОп) и регистра адреса (РА), в которых хранятся соответствующие составляющие
команды.
Если команда занимает несколько последовательных ячеек, то код операции всегда
находится в том слове команды, которое извлекается из памяти первым, Это позволяет по
коду операции определить, требуются ли считывание из памяти и загрузка в РК остальных
слов команды. Собственно выполнение команды начинается только после занесения в РК
ее полного кода.

8.

Указатель стека
Указатель стека (УС) - это регистр, где хранится адрес вершины стека. В реальных
вычислительных машинах стек реализуется в виде участка основной памяти, обычно
расположенного в области наибольших адресов. Заполнение стека происходит в сторону
уменьшения адресов, при этом вершина стека - это ячейка, куда была произведена
последняя по времени запись.
Для хранения адреса такой ячейки и предназначен УС. При выполнении операции push
(занесение в стек) содержимое УС с помощью сигнала -1УС сначала уменьшается на
единицу, после чего используется в качестве адреса, по которому производится запись.
Соответствующая ячейка становится новой вершиной стека.
Считывание из стека (операция pop) происходит из ячейки, на которую указывает текущий
адрес в УС, после чего содержимое указателя стека сигналом +1УС увеличивается на
единицу. Таким образом, вершина стека опускается, а считанное слово считается
удаленным из стека. Хотя физически считанное слово и осталось в ячейке памяти, при
следующей записи в стек оно будет заменено новой информацией.

9.

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

10.

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

11.

При создании МПА с жесткой логикой выходные сигналы управления реализуются за счет
однажды соединенных между собой логических схем. Код операции, хранящийся в РК,
используется для определения того, какие сигналы управления и в какой
последовательности должны формироваться, при этом, с целью упрощения логики
управления, желательно иметь в УУ отдельный логический сигнал для каждого кода
операции (10, 1ь ..., Ik)- Это может быть реализовано с помощью дешифратора.
Дешифратор кода операции преобразует код j- й операции, поступающей из регистра
команды (РК), в единичный сигнал на j-м выходе.
Таким образом, название «жесткая логика» обусловлено тем, что каждой микропрограмме
здесь соответствует свой набор логических схем с фиксированными связями между ними.
При реализации простой системы команд узлы МПА с жесткой логикой экономичны и
позволяют обеспечить наибольшее быстродействие из всех возможных методов построения
МПА. Однако с возрастанием сложности системы команд соответственно усложняются и
схемы автоматов с жесткой логикой, в результате чего уменьшается их быстродействие.
Второй недостаток МПА с жесткой логикой - малая регулярность, а следовательно, и
большие трудности при размещении УУ такого типа на кристалле интегральной
микросхемы.
Отличительной особенностью микропрограммного автомата с программируемой логикой
является хранение микрокоманд в виде кодов в специализированном запоминающем
устройстве - памяти микропрограмм. Каждой команде ЭВМ в этом ЗУ в явной форме
соответствует микропрограмма, поэтому часто устройства управления, в состав которых
входит микропрограммный автомат с программируемой логикой, называют
микропрограммными.

12.

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

13.

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

14.

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

15.

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

16.

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

17.

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

18.

В состав системной магистрали входят:
- регистры-защелки, в которых запоминается передаваемая информация;
- шинные формирователи;
- шинные арбитры, определяющие очередность доступа к системной магистрали, и др.
Логика работы системной магистрали, количество разрядов (линий) в шинах данных,
адреса и управления, порядок разрешения конфликтных ситуаций, возникающих при
одновременном обращении различных устройств ЭВМ к системной магистрали,
образуют интерфейс системной шины.
Модель представления функционирования
представлена на рисунке 5.2.
ЭВМ
с
магистральной
архитектурой

19.

Начальный процесс. Управляющая работой ЭВМ программа перед началом выполнения
загружается в основную память (Рисунок 5.2, процесс 0). Адрес первой выполняемой
команды передается процессору и запоминается в счетчике команд.
Рис. 5.2 Процесс 0

20.

Процесс 1. Начало работы процессора заключается в том, что адрес из счетчика команд (в
котором всегда хранится адрес очередной команды) выставляется на шину адреса
системной магистрали. Одновременно на шину управления выдается команда «выборка из
ОП», которая воспринимается основной памятью (Рисунок 5.2, процесс 1).
Рис. 5.2 Процесс 1

21.

Процесс 2. Получив с шины управления системной магистрали команду, основная память
считывает адрес с шины адреса, находит ячейку с этим номером и ее содержимое
выставляет на шину данных, а на шину управления выставляет сигнал о выполнении
команд (Рисунок 5.2, процесс 2).
Рис. 5.2 Процесс 2

22.

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

23.

Рис. 5.2 Процессы 4,5,6

24.

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

25.

Процесс 8. Процессор, получив этот сигнал, начинает выборку очередной команды:
выставляет адрес из счетчика команд на шину адреса, формирует команду «выборка из
ОП» на шине управления и т.д.
В каждом цикле, получив команду в регистр команд и выделив код операции, процессор
определяет, к какому устройству она относится. Если команда должна выполняться
процессором, организуется ее выполнение по описанному циклу.
Если же команда предназначена для выполнения в другом устройстве ЭВМ, центральный
процессор (ЦП) передает ее соответствующему устройству.

26.

Процесс передачи команды другому устройству предусматривает следующие действия:
1. ЦП выставляет на шину адреса системной магистрали адрес интересующего его
устройства. По шинам управления передается сигнал «поиск устройства».
2. Все устройства, подключенные к системной магистрали, получив этот сигнал, читают
номер устройства с шины адреса и сравнивают его со своим номером. Устройства, для
которых эти номера не совпадают, на эту команду не реагируют.
3. Устройство с совпавшим номером вырабатывает сигнал отклика по шине управления.
4. ЦП, получив сигнал отклика, в простейшем случае выставляет имеющуюся у него
команду на шину данных и сопровождает ее по шине управления сигналом «передаю
команду».
5. Получив уведомление о приеме команды, ЦП переходит к выполнению следующей
своей команды, выставляя на шину адреса содержимое счетчика команд.

27.

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

28.

Для различных устройств могут использоваться разные логические последовательности
действий, поэтому интерфейсов ввода-вывода может в одной и той же ЭВМ использоваться
несколько. Если их удается свести к одному, универсальному, то такой интерфейс
называется стандартным.
Например, в ЭВМ типа IBM PC есть два стандартных интерфейса для связи ЦП с
внешними устройствами: параллельный (типа Centronics) и последовательный (типа RS232).
Интерфейсы постоянно совершенствуются, поэтому с появлением новых ЭВМ, новых
внешних устройств и даже нового программного обеспечения появляются и новые
интерфейсы.
Если продолжение выполнения основной программы центральным процессором при
обращении ЦП к внешнему устройству возможно только после завершения операции
ввода-вывода, то ЦП, запустив внешнее устройство, переходит в состояние ожидания и
находится в нем до тех пор, пока внешнее устройство не сообщит ему об окончании
обмена данными.
Это приводит к простою большинства устройств ЭВМ, так как в каждый момент времени
может работать только одно из них. Такой режим работы получил
название однопрограммного - в каждый момент времени все устройства находятся в
состоянии ожидания, и только одно устройство выполняет основную (и единственную)
программу.

29.

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