Издательство ОмГТУ. 644050, г. Омск, пр. Мира, 11.

В. Ф. Нестерук

Организация ЭВМ и систем

Краткий конспект лекций

для дистанционной формы обучения

Омск 2005

УДК 004.2 (075)

ББК 32.97 я 73

Н 56

Рецензенты:

В. Т. Гиль, канд. техн. наук, доцент ОмА МВД России;

М. Ф. Шакиров, канд. техн. наук, доцент, зам. начальника Госсвязьнадзора

РФ по Омской области

Нестерук В. Ф.

Н 56 Организация ЭВМ и систем: Краткий конспект лекций для дистанционной формы обучения. – Омск: Изд-во ОмГТУ, 2005, 60 с.

Рассматривается история развития и классификация ЦВМ, основы теории микропрограммного управления, организация и методика проектирования операционных устройств с микропрограммным управлением на базе микропроцессорных средств, основы теории программного управления и способы адресации в командном цикле.

Предназначено для студентов направления 552800 дистанционной формы обучения.

Редактор Н. Н. Пацула

ИД № 06039 от 12.10.01

Свод. темплан 2005 г.

Подписано к печати 19.04.05. Формат Издательство ОмГТУ. 644050, г. Омск, пр. Мира, 11. - student2.ru 1/16. Бумага офсетная.

Отпечатано на дупликаторе. Усл. печ. л. 3,75. Уч-изд. л. 3,75.

_________________________Тираж 200 экз. Заказ 353. _______________________

Издательство ОмГТУ. 644050, г. Омск, пр. Мира, 11.

Типография ОмГТУ.

© В.Ф. Нестерук, 2005

© Омский государственный

технический университет, 2005

 
 
 

Назначение и классификация ЭВМ

Электронные вычислительные машины (ЭВМ) предназначены для автоматизации интеллектуальной и управленческой деятельности человека.

Различают следующие основные классы ЭВМ: аналоговые вычислительные машины (АВМ), цифровые вычислительные машины (ЦВМ) и гибридные – цифро-аналоговые (ЦАВМ) и аналого-цифровые (АЦВМ) вычислительные машины.

Так как предметом курса являются ЦВМ, то для машин других классов ниже будут даны только общие определения без подробного рассмотрения принципов их организации.

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

АВМ характеризуются высоким быстродействием – непрерывная выходная функция формируется с небольшим временным сдвигом, равным задержке на электронной цепи прохождения сигнала со входа на выход модели. Это качество позволяет использовать АВМ для управления технологическим оборудованием в реальном масштабе времени. В то же время, точность вычислений невысока, так как зависит от точности изготовления базовых функциональных элементов и в эквиваленте не превышает точности ЦВМ с двенадцатиразрядной двоичной сеткой.

ЦВМ относятся к машинам дискретного действия, для которых характерны дискретное представление данных (операндов и результатов) и дискретный ход вычислительного процесса. ЦВМ оперируют с цифровыми кодами чисел, преимущественно двоичными. Дискретность представления чисел определяется весом младшего разряда кода, а точность – половиной веса младшего разряда. Теоретически можно обеспечить любую требуемую точность, но на практике длина разрядной сетки цифровых машин не превышает 128 двоичных разрядов.

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

Гибридные вычислительные машины в зависимости от процентного соотношения цифровой и аналоговой частей в общем конструктиве подразделяются на ЦАВМ (преимущественная цифровая часть) и АЦВМ (преимущественная аналоговая часть). Эти машины используются в основном в системах управления в реальном масштабе времени и позволяют наиболее эффективно сочетать свойства аналоговых и цифровых вычислительных средств при решении конкретных задач.

Рассмотрим подробнее наиболее характерные признаки классификации ЦВМ.

По основным архитектурным признакам различают:

1. Классические машины, или машины фон-неймановского типа. Характеризуются наличием устройства командного управления, осуществляющего управление по хранимой в памяти ЦВМ программе (иначе – машины, управляемые контроллерами). Для машин данного типа характерно преимущественно упорядоченное исполнение команд программы.

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

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

Наибольшее распространение получили к настоящему времени машины, управляемые контроллерами. ЦВМ данного типа классифицируют по следующим параметрам.

По соотношению потоков данных и потоков команд:

- SISD (Single Instruction Single Data) - один поток команд, один поток данных;

- SIMD (Single Instruction Multiple Data) - один поток команд, много потоков данных;

- MISD (Multiple Instruction Single Data) - много потоков команд, один поток данных;

- MIMD (Multiple Instruction Multiple Data) - много потоков команд, много потоков данных.

К типу SISD относятся ЦВМ, содержащие одно операционное устройство, способное в соответствии с потоком команд обрабатывать поток данных, элементы которого поступают последовательно во времени (рис. 1 а).

ЦВМ типа SIMD (рис. 1 б) имеют несколько параллельно функционирующих операционных устройств, способных обрабатывать одновременно поступающие элементы соответствующих параллельных потоков данных под управлением общего потока команд.

В MISD машинах (рис. 1 в) одни и те же элементы общего потока данных обрабатываются одновременно в параллельно работающих операционных устройствах по командам соответствующих параллельных потоков команд.

Издательство ОмГТУ. 644050, г. Омск, пр. Мира, 11. - student2.ru Издательство ОмГТУ. 644050, г. Омск, пр. Мира, 11. - student2.ru Издательство ОмГТУ. 644050, г. Омск, пр. Мира, 11. - student2.ru Издательство ОмГТУ. 644050, г. Омск, пр. Мира, 11. - student2.ru

ЦВМ типа MIMD (рис. 1 г) имеют матрицу операционных устройств, каждая строка которой эквивалентна структуре типа SIMD, а столбец – структуре типа MISD.

По способу организации вычислительного процесса:

- последовательные;

- параллельные;

- конвейерные.

К последовательным относятся ЦВМ типа SISD, в которых очередная команда запускается на исполнение только после завершения операций по предыдущей команде .

Параллельные ЦВМ могут одновременно выполнять несколько очередных команд программы либо обрабатывать несколько потоков данных. К параллельным могут относиться машины типов SIMD, MISD и MIMD.

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

По количеству одновременно исполняемых программ:

- однопрограммные;

- многопрограммные (мультипрограммные).

В однопрограммных ЦВМ в активном состоянии может находиться только одна исполняемая программа, в то время как в многопрограммных – несколько исполняемых программ. Многопрограммный режим может осуществляться с разделением времени между отдельными программами, когда в текущий момент выполняется очередной фрагмент одной из программ, а в следующий момент – фрагмент другой программы, что создаёт видимость одновременного исполнения нескольких программ. В многопрограммных ЦВМ может использоваться и режим пакетной обработки, когда предварительно создаётся пакет готовых к исполнению программ и они выполняются в порядке своей очерёдности в пакете. У пользователя также создаётся эффект одновременного выполнения программ, так как отсутствуют промежуточные задержки на подготовку программ к исполнению.

По размерности массивов обрабатываемых данных:

- скалярные;

- суперскалярные;

- векторные.

Скалярные ЦВМ могут выполнять операции над скалярами – отдельными константами, текущими значениями переменной, текущими элементами массивов данных и т.п.

Суперскалярные ЦВМ имеют два и более скалярных операционных устройств и позволяют одновременно выполнять несколько очередных команд по обработке скаляров.

Векторные машины относятся к параллельным ЦВМ и способны выполнять однотипные операции сразу над вектором - множеством элементов массива.

По назначению:

- универсальные (общего назначения);

- специализированные.

Универсальные ЦВМ ориентированы на решение широкого круга задач и могут использоваться во многих областях человеческой деятельности. Однако применение подобных машин в конкретной области не всегда может быть экономически оправдано из-за неэффективного использования их возможностей. Они имеют избыточные аппаратные и программные средства.

Специализированные ЦВМ оптимизированы для решения конкретных задач в относительно узкой области, что определяет экономическую эффективность их применения.

ЦВМ различаются также по быстродействию, производительности, ёмкости основной памяти, габаритам, потребляемой мощности, надёжности, устойчивости к воздействию окружающей среды и прочим параметрам.

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

Производительность ЦВМ оценивается на конкретном множестве задач и может колебаться в существенных пределах для одной и той же машины в зависимости от решаемых задач.

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

Габариты ЦВМ отражаются в приставках микро- (размер небольшого чемодана, дипломата) и мини- (размер письменного стола). Машины больших габаритов относятся к большим ЦВМ. Размер лишь косвенно говорит о быстродействии и производительности. Например, может быть супермикроЭВМ – малых габаритов и высокой производительности.

Потребляемая мощность находится в прямой зависимости от используемой интегральной технологии и тактовых частот работы ЦВМ. Современные однокристальные процессоры имеют мощность до нескольких десятков ватт. В то же время процессоры наручных часов и калькуляторов имеют мощность в несколько микроватт.

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

Таблица 1

МО Описание
D1,C1, F1 Сброс регистра
D2, F2,C2 Запись в регистр
F3 Чтение с открытием выхода РгС
Ei i-я операция (i = 1 . . . k)

Микроопераций ОЧ

 

Каждая вершина ГСА (рис. 8) соответствует одному микрокомандному циклу, а весь граф соответствует микропрограмме. Отображение исходного алгоритма в ГСА неоднозначно и зависит от выбранных систем элементов и структуры. В нашем случае регистры требовали начального сброса (вершина 1). Ввод операндов разнесен на две вершины (2 и 3), что связано со структурой подключения входной шины, по которой невозможно сразу передать два параллельных операнда. В то же время, в 3-ей вершине ГСА, учитывая возможности элементов и узлов, ввод второго операнда совмещен с выполнением операции и фиксацией результата.

Каждая вершина ГСА содержит сигналы МО из поля микроинструкций соответствующей микрокоманды. Если этих сигналов несколько в микроинструкции, то говорят о совместных микрооперациях, которые могут быть выполнены в одном микрокомандном цикле. Если одна, то микрооперация несовместна и не реализуется в ОЧ в одном цикле с другими МО.

Пример реализации ОЧ для суммирования чисел с фиксированной

 
  Издательство ОмГТУ. 644050, г. Омск, пр. Мира, 11. - student2.ru

запятой в прямых кодах

Структурная схема алгоритма операции суммирования приведена на рис.9. В ней содержатся как операторные, так и условные вершины. Следовательно, в ОЧ кроме основного результата должны будут формироваться и сигналы логических условий.В качестве ЛУ могут быть использованы значения конкретных битов на входных и

Таблица 2 Таблица 3

Таблица 4

Микропрограмма операции суммирования

Адрес Мнемокод инструкции Примечание
00 0000 PОН0:=ШИНвх Ввод операнда А
00 0001 PОН1:=ШИНвх Ввод операнда В
00 0010 РР:=!PОН0+П (П=1) А = 0 ? Если да, то идти к 27
00 0011 РР:=!PОН1+П (П=1) В = 0 ? Если да, то идти к 29
00 0100 РР:=!П (П=1) РР = 0..0
00 0101 РР:=СЦП (РР+П) (П=1) РР = 10...0
00 0110 PОН3:=РР+П (П=0) Сохранение маски 10...0 в РОН3
00 0111 РР:=PОН0+П (П=0) Пересылка А
00 1000 РР:=!PОН3 and РР Выделение Ам
00 1001 PОН4:=РР+П (П=0) Сохранение Ам
00 1010 РР:=PОН1+П (П=0) Пересылка В
00 1011 РР:=!PОН3 and РР Выделение Вм
00 1100 PОН5:=РР+П (П=0) Сохранение Вм
00 1101 РР:=PОН0+П (П=0) Пересылка А
00 1110 РР:=PОН1 xor РР Сравнение знаков
00 1111 РР:=СЦЛ (РР+П) (П=0) Если !СД1 = 0, идти к 30
01 0000 РР:=PОН4+П (П=0) Пересылка Ам
01 0001 РР:=PОН5+РР+П (П=0) См = Ам + Вм
01 0010 PОН2:=РР+П (П=0) Сохранение См
01 0011 РР:=СЦЛ (РР+П) (П=0) Если !СД1=0, идти к 36
01 0100 РР:=PОН0+П (П=0) Пересылка А в РР

Продолжение табл. 4

01 0101 РР:=PОН3 and РР Формирование ЗнС
01 0110 PОН2:=PОН2 or РР Формирование С
01 0111 РРР:=!П (П=1) Сообщение «Переполнения нет»
01 1000 ШИНвых:=РРР+П(П=0) Вывод сообщения
01 1001 ШИНвых:=PОН2 Вывод С, "Конец"
01 1010 РР:=PОН1+П (П=0) Пересылка В в РР
01 1011 PОН2:=РР+П (П=0) Сохранение С, идти к 24 на вывод
01 1100 РР:=PОН0+П (П=0) Пересылка А в РР, идти к 28
01 1101 РР:=PОН4+П (П=0) Пересылка Ам в РР
01 1110 РР:=РР-PОН1-1+П (П=1) См = Ам – Вм
01 1111 PОН2:=РР+П (П=0) Сохранение См
10 0000 РР:=!РР+П (П=1) Если См = 0, идти к 37
10 0001 РР:=PОН2+П (П=0) Пересылка См в РР
10 0010 РР:=СЦЛ (РР+П) (П=0) Если !СД1=0, идти к 38, иначе к 21
10 0011 РРР:=!П (П=0) «Переполнение», идти к 25
10 0100 PОН2:=!П (П=1) С = 0, идти к 24
10 0101 РР:=PОН5+П (П=0) Пересылка Вм в РР
10 0110 РР:=РР-PОН4-1+П (П=1) См = Вм – Ам
10 0111 PОН2:=РР+П (П=0) Пересылка См
10 1000 РР:=PОН1+П (П=0) Пересылка В в РР, идти к 22

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

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

Пример интегрального контроллера синхронизации К583ВГ1

Контроллер (рис. 38) строится на базе двух ПЛМ (ПЛМ1, ПЛМ2), циклического 10-ти разрядного регистра сдвига (ЦРС), встроенного ГТИ, устройства управления (УУ) и устройства контроля (УК). ГТИ имеет входы Х1, Х2 для подключения внешнего резонатора или источника внешней опорной частоты и формирует тактовые импульсы CLKO с максимальной частотой 20 МГц. В пределах периода ГТИ возможна небольшая коррекция его длительности путем изменения потенциала на входе подстройки FRIG.

Для запуска контроллера выход CLKO подключается к входу CLKI, по сигналу CLR производится установка ЦРС в исходное состояние (0 в младшем разряде), и по сигналу старта STR осуществляется запуск циклического сдвига в ЦРС с тактовой частотой CLKI. Сигналы INT0 и INT1 позволяют приостанавливать сдвиг соответственно на четных и нечетных разрядах ЦРС.

Издательство ОмГТУ. 644050, г. Омск, пр. Мира, 11. - student2.ru Выходные шины ЦРС через ПЛМ1 подключаются к выходам полуфаз синхронизации !S0 – !S9. Эти импульсы являются унитарными инверсными импульсами, на базе которых с помощью внешних логических схем формируется требуемая картина распределения синхроимпульсов. Для циклического повторения i (i = 2…10) полуфаз выход !S(i–2) заводится на вход обратной связи CNT, что позволяет варьировать период Тмц в пределах от двух до десяти тактовых импульсов. Длительность Тмц контролируется на ПЛМ2, воздействующей на УК, для которого по входам OPT1, OPT0 и MD задаётся тип цикла и признак включения контроля. Несоответствие сопровождается формированием сигнала ошибки ERR.

Временная диаграмма работы контроллера синхронизации приведена на рис. 39. По положительным фронтам тактовых импульсов CLKI осуществляется установка и сброс инверсных сигналов полуфаз с чётным номером (!S0, !S2,…, !S8), а по отрицательным фронтам – полуфаз с нечётными номерами (!S1, !S3,…, !S9).

Соседние выходные полуфазы контроллера перекрываются на полпериода CLKI, что исключает появление импульсных помех при объединении сигналов на схемах дополнительной логики.

Для настройки контроллера на цикл выработки десяти полуфаз !S0, …, !S9, необходимо подключить ко входу обратной связи СNT выходной сигнал !S8. В этом случает период синхронизации Тмц = 5tCLKI = 250нс ( при tCLKI = 50нс).

В случае необходимости останова или растяжения периода синхронизации Тмц в определённый момент времени используются сигналы INT0 или INT1. На рис. 39 показано, как INT1 вызывает растяжение полуфазы !S3. Требуемые для синхронизации ОУ импульсы формируются из полуфаз путём объединения их на внешних логических схемах. Временные параметры импульсов синхронизации устройства будут обеспечиваться с точностью ±25нс.

Если для формирования временной диаграммы недостаточно 10 полуфаз, контроллеры соединяются последовательно - выход !S7 предыдущего подключается ко входу CNT последующего, а CLKO первого контроллера является тактовым импульсом и для всех остальных. Обратная связь обеспечивается подключением требуемого выхода !Si последнего из контроллеров ко входу CNT первого.

 
  Издательство ОмГТУ. 644050, г. Омск, пр. Мира, 11. - student2.ru

Адресации в командном цикле

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

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

Наибольшая гамма адресаций наблюдается при обращении к операндам. Особенно часто используются следующие адресации: прямая, относительная, базовая, косвенная, индексная, непосредственная, регистровая, автоинкрементная (декрементная), явная, неявная, комбинированная.

Прямая адресация предусматривает размещение в коде команды исполнительных адресов А (рис. 44 а) соответствующих операндов или результатов (исполнительные адреса).Достоинством адресации является наглядное представление адреса и максимальное быстродействие по выборке, так как адрес не требует преобразования, недостатком – большая размерность адресного поля, существенно увеличивающая длину команды.

 
  Издательство ОмГТУ. 644050, г. Омск, пр. Мира, 11. - student2.ru

Относительная адресация (рис. 44 б) предполагает формирование адреса по правилу (РС)+ΔА, где РС – содержимое программного счётчика, ΔА – число со знаком в том или ином коде (обычно в дополнительном) и обеспечивает адресацию в некоторой зоне относительно адреса текущей команды.

Текущее значение программного счётчика указывает на исполняемую команду, а величина ΔА в команде обычно невелика, и подобная адресация к данным используется в том случае, если эти данные размещаются в тексте программы либо в близлежащих областях.

Подобная адресация не обеспечивает большого оперативного диапазона, но при малом объёме данных позволяет существенно сократить длину команды. Кроме адресации к данным относительная адресация часто используется при организации условных и безусловных переходов, то есть при адресации к командам. Например, при отрицательном результате анализа будет осуществляться переход к адресу А+1 (команда 1), при положительном – к команде 2. Использование относительной адресации эффективно при достаточно высокой квалификации программиста.

Базовая адресация напоминает относительную, но вместо РС используется специальный базовый регистр BR, содержимое которого является указателем на определённый адрес памяти (указывает на начало той или иной страницы памяти). Исполнительный адрес формируется по правилу (BR)+ ΔАB, где ΔАB – непосред–ственное смещение, размещаемое в коде команды (рис. 45 а). В ряде случаев BR адресуется неявно (в коде команды на него нет ссылки), в других случаях указывается в команде в явном виде (IBM 360).

 
  Издательство ОмГТУ. 644050, г. Омск, пр. Мира, 11. - student2.ru

В отличие от относительной адресации, где текущий адрес определён однозначно, содержимое базового регистра можно изменять оперативно, что позволяет перемещаться по всему пространству памяти и при малых ΔАВ обеспечивать доступ к любой ячейке. Быстродействие адресации зависит от частоты перезагрузок BR, поэтому более эффективное программирование должно сопровождаться малым числом перезагрузок BR.

Косвенная адресация (рис. 45 б) предполагает использование промежуточных преобразований косвенного адреса (КА) в табличной памяти либо в блоке регистров. В качестве табличной памяти может быть выделена зона основной памяти либо специальной косвенной памяти (КП). Косвенное преобразование в КП используется для формирования исполнительного адреса обращения к ОП. Цели этого преобразования:

- снижение разрядности адресного поля m<<n;

- выполнение некоторых функциональных преобразований над содержимым поля КА (в этом случае разрядность может не сокращаться).

Приведённый пример характеризуется как одноуровневое косвенное преобразование. На практике может использоваться многоуровневое косвенное преобразование, когда выполняется каскадное преобразование КА в блоках КП и исполнительный адрес выбирается из последнего блока каскада.

Косвенная адресация сокращает разрядность поля КА по отношению к исполнительному адресу, если число ссылок в программе с передачей управления 2m << 2n – объёма памяти. Недостатком адресации является потеря быстродействия из-за промежуточных преобразований.

Индексная адресация является подвидом косвенной адресации, когда исполнительные адреса формируются в блоке индексных регистров. Адресация применяется при организации циклических процессов, связанных с обработкой массивов данных. В адресуемом по полю АИР кода команды (рис. 46 а) индексном регистре исполнительный адрес модифицируется как функция цикла на ±Δ при каждом проходе (в частном случае +1). Количество индексных регистров определяет мерность обрабатываемых массивов.

Непосредственная адресация предусматривает размещение операнда в адресном поле команды. Обычно используется для начальной загрузки регистров или ячеек памяти, но может применяться и в командах работы с непосредственным операндом, например, ANI A, #32h ~ A:= (A) & 32h.

 
  Издательство ОмГТУ. 644050, г. Омск, пр. Мира, 11. - student2.ru

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

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

При автоинкрементной адресации (рис. 46 б) текущий адрес формируется в виде модификации предыдущего адреса с использованием 2-х и более констант по принципу: A(i+1) = Ai + const. Например, при адресации к командам одна из констант соответствует естественному переходу, либо переходу по отрицательному результату анализа, а другие константы используются при иных результатах анализа. При логическом анализе константы могут быть +1 и +2. Адресация позволяет не использовать адресные поля и сократить длину кодов большинства команд. Для разрешения возможных конфликтных ситуаций, из-за малой величины констант, вводится команда безусловной передачи управления по определенному адресу.

Автоинкрементная адресация может использоваться как при адресации к командам, так и при адресации к данным. Во втором случае она напоминает индексную адресацию: адрес используемого операнда при очередном проходе (цикле) модифицируется на определенную константу. Небольшая величина констант (в пределах ±1, ±2, ±4) выбирается исходя из условий простоты аппаратной модификации содержимого источника адреса путём прямого подключения логических условий к счётным входам триггеров его младших разрядов.

Если константы используются со знаком «–», то адресация называется автодекрементной.

Сочетание нескольких адресаций из вышерассмотренных классифицируется как комбинированная адресация. Например, принудительно-автоинкрементная адресация, косвенно-регистровая адресация, базово-индексная адресация и т.п. В современных процессорах Intel x86 используется базово-индексная адресация со смещением и с шагом, когда исполнительный адрес формируется в виде суммы базового адреса, индексного адреса, непосредственного смещения и константы шага. Базовый адрес выбирается из базового регистра, индексный – из индексного, непосредственное смещение и признак размера шага – из кода команды. Дополнительно может быть задействовано содержимое РОН как смещение. Обычно в системе команд задействовано несколько адресаций, что создает определенное удобство как для разработчиков, так и для пользователей, позволяет повысить эффективность программирования и организации вычислительного процесса.

Библиографический список

1. Каган Б. М. Электронные вычислительные машины и системы: Учеб. пособие по специальностям «Автоматизир. системы управления», «Прикладная математика», «Электронные вычислительные машины». – 2-е изд., перераб. и доп. – М.: Энергоатомиздат, 1985. – 552 с.

2. Электронные цифровые вычислительные машины: Учеб. для вузов по специальности «ЭВМ» / К. Г. Самофалов, В. И. Корнейчук, В. П. Тарасенко; Под ред. К. Г. Самофалова. – Киев: Вища шк., 1976. – 480 с.

3. Принципы организации цифровых машин / С. А. Майоров, Г. И. Новиков. – Л.: Машиностроение, 1974. – 431 с.

4. Микропроцессоры и микроЭВМ в системах автоматического управления: Справ. / С. Т. Хвощ, Н. Н. Варлинский, Е. А. Попов; Под общ. ред. С. Т. Хвоща. – Л.: Машиностроение. Ленингр. отд-ние, 1987. – 640 с.

5. Микропроцессоры и микропроцессорные комплекты интегральных микросхем: Справ. / Б. Б. Абрайтис, Н. Н. Аверьянов, А. И. Белоус и др.; Под ред. В. А. Шахнова. – М.: Радио и связь, 1988. – Т. 1. – 368 с.

6. Нестерук В. Ф. Проектирование микропроцессорных систем: Учеб. пособие. – Омск: Изд-во ОмГТУ, 1996. – 64 с.

7. Нестерук В. Ф. Цифровые модели для компьютерных технологий обучения основам организации ЭВМ: Учеб. пособие. – Омск: Изд-во ОмГТУ, 2001. – 76 с.

8. Смирнов А. Д. Архитектура вычислительных систем. – М.: Энергия, 1973. – 386 с.

Содержание

Стр.

Назначение и классификация ЭВМ………………………………………………... 3

История развития электронных цифровых вычислительных машин……………. 8

Организация операционных устройств…………………………………………….15

Организация операционной части………………………………………………….16

Пример структурной организации ОЧ для выполнения логических операций…17

Пример реализации ОЧ для суммирования чисел с фиксированной

запятой в прямых кодах …………………………………………………………….19

Организация интегральной операционной части …………………………………22

Примеры реализации операций в интегральной ОЧ………………………………25

Аппаратное наращивание интегральной ОЧ………………………………………27

Организация управляющей части…………………………………………………. 29

Типовая структура управляющей части……………………………………………35

Пример структурной реализации БМУ серии К584 ВУ1…………………………36

Интерфейсные средства микроЭВМ………………………………………………. 41

Организация системы синхронизации……………………………………………...44

Организация микроЭВМ с микропрограммным управлением…………………...48

Типовые циклы функционирования микроЭВМ…………………………………..50

Организация командного управления……………………………………………...52

Форматы и адресность команд……………………………………………………...53

Адресации в командном цикле……………………………………………………...56

Библиографический список…………………………………………………………59

В. Ф. Нестерук

Организация ЭВМ и систем

Краткий конспект лекций

для дистанционной формы обучения

Омск 2005

УДК 004.2 (075)

ББК 32.97 я 73

Н 56

Рецензенты:

В. Т. Гиль, канд. техн. наук, доцент ОмА МВД России;

М. Ф. Шакиров, канд. техн. наук, доцент, зам. начальника Госсвязьнадзора

РФ по Омской области

Нестерук В. Ф.

Н 56 Организация ЭВМ и систем: Краткий конспект лекций для дистанционной формы обучения. – Омск: Изд-во ОмГТУ, 2005, 60 с.

Рассматривается история развития и классификация ЦВМ, основы теории микропрограммного управления, организация и методика проектирования операционных устройств с микропрограммным управлением на базе микропроцессорных средств, основы теории программного управления и способы адресации в командном цикле.

Предназначено для студентов направления 552800 дистанционной формы обу

Наши рекомендации