Попов И.И., Матвеев А.А., Максимов Н.В. Архитектура электронно-вычислительных машин и систем (2004) (1186255), страница 19
Текст из файла (страница 19)
3. Структурная схема ЭВМ 3-го поколения108Рис. 4. Структурная схема ПЭВМОднотипные ЦУ и устройства хранения данных могутиспользоваться в обоих типах машин. Известны примеры того, какфирмы, начавшие свою деятельность с производства управляющихмашин, совершенствуя свою продукцию, перешли к выпуску систем,которые в зависимости от конфигурации ВУ могут исполнять как рольуниверсальных, так и управляющих машин (Hewlett-Packard и DigitalEquipment Corporation).Структура абстрактного центрального устройства ЭВМТипичный ЦП включает в свой состав устройство управления исверхбыстродействующую регистровую память, используемую дляразмещения промежуточных результатов в процессе выполнениякоманд.Рис.
5. Структура абстрактного центрального устройства ЭВМ109Центральное устройство. ЦУ представляет основную компонентуЭВМ и, в свою очередь, включает ЦП - центральный процессор (centralprocessing unit - CPU) и ОП - оперативную (главную) память (mainstorage, core storage, random access memory - RAM).Процессор непосредственно реализует операции обработкиинформации и управления вычислительным процессом, осуществляявыборку машинных команд и данных из оперативной памяти и запись вОП, включение и отключение ВУ.Оперативная память предназначена для временного храненияданных и программ в процессе выполнения вычислительных илогических операций.ЦУ описывается следующими характеристиками:— длина машинного слова (разрядность, адресность);— система команд;— объем ОП;— быстродействие(тактоваячастотапроцессора,циклзаписи/считывания ОП).Рассмотрим порядок функционирования некоторого абстрактного(упрощенного) ЦУ (Рис.
5):— в соответствии с содержимым РАК УУ (адрес очередной команды)извлекает из ОП очередную команду и помещает ее в РК.Типичная команда содержит:— код операции (КОП) — характеризующий тип выполняемогодействия (сложение, вычитание и пр. чисел; сравнение строк;передача управления, обращение к ВУ и пр.);— номера индексного (ИР) и базисного (БР) регистров (в некоторыхмашинах - адреса слов, ячеек ОП, в которых размещенасоответствующая информация);— адреса операндов А1, А2 и т.д., участвующих в выполнении команды(чисел, строк, других команд программы).— осуществляется расшифровка КОП;— адреса А1, А2 и пр. помещаются в регистры адреса;— если в команде указаны ИР или БР, то их содержимое используетсядля модификации РА — фактически выбираются числа или команды,смещенные в ту или иную сторону по отношению к адресу,указанному в команде.
При этом ИР используются для текущегоизменения адреса, связанного с работой программы (например, приобработке массива чисел). БР используется для глобальногосмещения программы или данных в ОП;— по значениям РА осуществляется чтение чисел (строк) и помещениеих в РЧ;110— выполнение операции (арифметической, логической и пр.) ипомещение результата в РР.— запись результата по одному из адресов (если необходимо);— увеличение содержимого РАК на единицу (переход к следующейкоманде).Таково в общих чертах описание функционирования ЦУ.
Взаключение разговора о ЦУ сделаем несколько замечаний по поводуадресности команд ЦП, и ее связи с разрядностью ОП. Типичнаякоманда состоит из фиксированной части (КОП, ИР, БР) и адреснойчасти, в которой указаны адреса операндов.Системы КомандИзвестны одно-, двух- и трехадресные машины (системы команд).Очевидна связь таких параметров ЦУ, как длина адресногопространства, адресность, разрядность. Увеличение разрядностипозволяет увеличить адресность команды и длину адреса (т.е.
объемпамяти, доступной данной команде). Увеличение адресности, в своюочередь, приводит к повышению быстродействия обработки (за счетснижения числа требуемых команд).В трехадресной машине, например, сложение двух чисел требуетодной команды (извлечь число по А1, число по А2, сложить и записатьрезультат по А3). В двухадресной необходимы две команды (первая извлечь число по А1 и поместить в РЧ (или сумматор) , вторая - извлечьчисло по А1, сложить с содержимым РЧ и результат записать по А2).Легко видеть, что одноадресная машина потребует три команды.Поэтому неудивительно, что основная тенденция в развитии ЦУ ЭВМсостоит в увеличении разрядности.• Типовая структура трехадресной команды:КОПа1а2а3а2 и аЗ — адреса ячеек (регистров), где расположены, соответственно,первое и второе числа, участвующие в операции, a1 — адрес ячейки(регистра), куда следует поместить число, полученное в результатевыполнения операции.• Типовая структура двухадресной команды:КОПа1а2a1 - это обычно адрес ячейки (регистра), где хранится первое из чисел,участвующих в операции, и куда после завершения операции долженбыть записан результат операции; а2 - обычно адрес ячейки (регистра),где хранится второе участвующее в операции число.111• Типовая структура одноадресной команды:КОПа1где a1 в зависимости от модификации команды может обозначать либоадрес ячейки (регистра), в которой хранится одно из чисел,участвующих в операции, либо адрес ячейки (регистра), куда следуетпоместить число - результат операции.• Безадресная команда содержит только код операции, а информациядля нее должна быть заранее помещена в определенные регистрымашины.Наибольшее применение в нашли двухадресные команды.Пример трехадресной команды, записанной на языкесимволического кодирования:СЛ 1003 5102 0103Эту команду следует расшифровать так: сложить число,записанное в ячейке 0103 памяти, с числом, записанным в ячейке 5102, азатем результат (то есть сумму) поместить в ячейку 0103.Таким образом, программирование в машинных адресах требуетзнания системы команд конкретной ЭВМ и их адресности.
При этомреализация даже довольно несложных вычислений требует разложенияих на простые операции, что значительно увеличивает общий объемпрограммы и затрудняет ее чтение и отладку.В качестве примера рассмотрим последовательность реализациивычисления по формуле y = (a+b)2 - c/d.План последовательности машинных операций, выполнениекоторой приведет к нужному результату, в данном случае следующий:r1 = a + b; - операция сложенияr2 = r1*r1;- операция умноженияr3 = c/d;- операция деленияy = r2 – r3; - операция вычитанияСтоп.- завершение обработкиЗдесь количество переменных, необходимых для храненияпромежуточных результатов, связано с адресностью системы команд и стем, разрешено или нет в процессе вычислений изменять значенияисходных данных.Во время решения задачи программа и операнды (числа, надкоторыми производится операции) находятся в оперативной памяти(ОЗУ).
Быстродействие ОЗУ соизмеримо с быстродействием АЛУ. Впроцессе решения задачи АЛУ постоянно взаимодействует с ОЗУ,передавая в ОЗУ промежуточные и конечные результаты и получая изОЗУ операнды действия всех частей ЭВМ при решении задачиосуществляетсяподвоздействиемуправляющихсигналов,вырабатываемых устройством управления в соответствии с программой,записанной в ОЗУ.112ПЗУ предназначено для хранения стандартных программ, такихкак sin и cos, констант π, е.Существует еще сверх ОЗУ (СОЗУ), которое обладает малымобъемом и высоким быстродействием.
СОЗУ применяется длякратковременного хранения операндов и промежуточных результатов.Арифметико-логическое устройство (АЛУ)АЛУ предназначено для выполнения арифметическихилогических операций над операндами.АЛУ классифицируютсяследующим образом:1. По способу действий над операндами:— АЛУ последовательного действия;— параллельного действия.В последовательных АЛУ действия над операндами производятсяпоследовательно разряд за разрядом начиная с младшего.
Впараллельных АЛУ все разряды операндов обрабатываютсяодновременно.2. По виду обрабатываемых чисел АЛУ могут производитьоперации над двоичными числами с фиксированной или плавающейзапятой и над двоично- десятичными числами. В последнем случаекаждая десятичная цифра записывается четырьмя разрядами двоичногокода:19980001 1001 1001 1000АЛУ при действии над двоично-десятичными числами должнысодержать схему десятичной коррекции. Схема десятичной коррекциипреобразует полученный результат таким образом, чтобы каждыйдвоично-десятичный разряд не содержал цифру больше 9.При записи числа с фиксированной запятой запятая фиксируетсяпосле младшего разряда, если число целое, и перед старшим, если числоменьше 1.При записи чисел с плавающей запятой выделяется целая часть,которая называется мантиссой, и показатель степени, которыйхарактеризует положение запятой.3.
По организации действий над операндами:— блочные;— многофункциональные АЛУВ блочных АЛУ отдельные блоки предназначены для действийнад двоично-десятичными числами, отдельно для действий над числамис фиксированной запятой, отдельно с плавающей запятой.113В многофункциональных АЛУ одни и те же блоки обрабатываютчисла с фиксированной запятой, плавающей запятой и двоичнодесятичные числа.Рис. 6. Многофункциональное АЛУКлапаны К1 и К2 объединяют сумматоры 1,2 и 3 для действий надчислами с фиксированной запятой.Для действий над числами с плавающей запятой клапан К2объединяет сумматоры 2 и 3 для обработки мантисс, а клапан К1отсоединяет первый сумматор от второго.
Сумматор 1 обрабатываетпорядки.4. По структуре:— АЛУ с непосредственными связями;— многосвязные.В многосвязных АЛУ входы и выходы регистров приемников иисточников информации подсоединяются к одной шине. Распределениевходных и выходных сигналов происходит под действием управляющихсигналов.В АЛУ с непосредственной связью вход регистра приемникасвязан с выходом регистра источника операндов и регистра, в которомпроисходит обработка.Например, в этой схеме суммирование происходит так: операндыподаются в регистр 1.
Регистр 2 является накапливающим сумматоромили автоматом с памятью. Он суммирует слагаемые, поступающие вразные моменты времени и передает результат в регистр 3.Умножение в этом АЛУ происходит так: множимое помещают врегистр 4, множитель - в регистр 1. Регистры 2 и 3 являются кроме тогосдвигающими регистрами. В зависимости от содержимого разрядамножителя, множимое сдвигается на один разряд, если множительсодержит 1, и на два, если множитель содержит 0. Эти частныепроизведения суммируются в регистре 2.114Рис.