- •394026 Воронеж, Московский проспект, 14 Оглавление
- •1. Принципы организации электронных вычислительных машин 23
- •2. Функциональная организация 37
- •3. Структурная организация электронных вычислительных машин 111
- •4. Организация процессоров 157
- •5. Организация операционных устройств 206
- •6. Организация памяти электронных вычислительных машин 264
- •Введение
- •1.Принципы организации электронных вычислительных машин
- •1.1Основные факторы, определяющие принципы организации электронных вычислительных машин
- •1.2Состав устройств, структура и порядок функционирования электронных вычислительных машин
- •1.3Основные технические характеристики вычислительного комплекса
- •2.2Режимы работы электронных вычислительных машин (организация вычислительных процессов)
- •2.3Средства мультипрограммирования
- •2.4Организация системы прерываний
- •2.5Многоуровневая организация памяти электронных вычислительных машин
- •2.6Средства защиты основной оперативной памяти
- •2.7Защита информации в персональных электронных вычислительных машинах ibm pc
- •2.8Машинные элементы информации
- •2.9Представление данных в электронных вычислительных машинах
- •2.9.1Представление чисел
- •2.9.2 Представление текстовой информации и логических значений
- •2.10 Форматы команд и машинные операции
- •2.11 Способы адресации информации в памяти электронных вычислительных машин
- •2.12 Организация адресного пространства внешней памяти. Виртуальная организация памяти
- •2.13 Особенности архитектуры персональных электронных вычислительных машин типа ibm pc
- •3.Структурная организация электронных вычислительных машин
- •3.1Понятие структурной организации электронных вычислительных машин
- •3.2Классы устройств электронных вычислительных машин
- •3.3Магистрально-модульный принцип построения электронных вычислительных машин. Понятие интерфейса
- •3.4Типовые конфигурации (структуры) однопроцессорных вычислительных комплексов
- •3.5Структуры мультипроцессорных и мультимашинных вычислительных комплексов
- •3.5.1Многомашинные вычислительные комплексы
- •3.5.2Мультипроцессорные вычислительные комплексы
- •3.5.3Мультипроцессорный вычислительный комплекс с раздельной памятью
- •3.6Нейрокомпьютеры
- •4.Организация процессоров
- •4.1Цикл выполнения команд
- •4.2Конвейерная организация процессоров
- •4.3Особенности организации современных процессоров
- •4.4 Эволюция способов организации процессоров
- •5.Организация операционных устройств
- •5.1Принцип микропрограммного управления (функциональная организация операционных устройств)
- •5.2Средства описания функций операционных устройств
- •5.3Структурная организация операционных устройств
- •5.4Функция и структура операционного автомата
- •5.5Организация работы операционных устройств во времени
- •5.6Структурный базис операционного автомата
- •5.7Организация операционного автомата
- •5.8Понятие микропроцессора
- •5.9Организация управляющего автомата
- •5.9.1Организация управляющего автомата с программируемой логикой управления
- •5.9.2Укрупненная структура управляющего автомата с программируемой логикой
- •5.9.3Управляющие автоматы с жесткой логикой управления
- •5.9.4С равнение характеристик управляющих автоматов с программируемой и жесткой логикой
- •6.Организация памяти электронных вычислительных машин
- •6.1Основные понятия
- •6.2Организация и основные характеристики запоминающих устройств
- •6.3Классификация запоминающих устройств
- •6.4Организация памяти первого уровня
- •6.5Организация адресных (сверхоперативных) запоминающих устройств
- •6.6Запоминающие устройства с ассоциативной организацией
- •6.7Организация кэш–памяти на основе ассоциативного запоминающего устройства (кэш с ассоциативной организацией)
- •6.8Организация стековых (магазинных) запоминающих устройств
- •6.9Организация памяти второго уровня (основной оперативной памяти)
- •6.10Организация памяти третьего уровня (внешней памяти)
- •6.10.1Классификация и основные характеристики внешних запоминающих устройств
- •6.10.2Организация накопителей на магнитных дисках
- •6.10.3 Организация накопителей на магнитной ленте
- •6.10.4 Организация оптических дисков
- •Библиографический список
5.4Функция и структура операционного автомата
Функция ОА считается заданной, если заданы (определены) три множества S,Y,X:
- S=DRI - множество слов , где D - множество входных слов ОА (в МП умножения - это два слова А и В); R - множество выходных слов-результатов (в нашем примере это слово С); I - множество внутренних слов (в примере с умножением это слово СЦ).
- Y={y1, ..., ym} - множество (список) микроопераций (в примере с умножением - это y1, ..., y7).
- X={x1, ..., xL} - множество (список) ЛУ (в примере это x1, x2,x3).
О бъединение производится по всем операциям ОУ:
В общем случае МО описывается выражением ym: Si:=m(Sj, Sn). Здесь: m - некоторая вычислимая функция (например, сумма), Si, Sn - её аргументы, Si - значение функции m, вычисленное при заданных значениях аргументов Sj = Sj* , Sn = Sn* (например: Sj* = 5, Sj* = 10, Sj= 5+10=15).
В общем случае ЛУ описывается выражением: xl:=l (Sj), где L - булева функция, Sj - аргумент функции l, xl - её значение при Sj=Sj*.
Пример: х2 = 1, если СЦ = 0, или х2 = 1,если СЦ 0.
Набор ЛУ X={x1, …, xL} отображает состояние ОА.
Следует отметить, что время не является аргументом функции ОА. Это означает, что функции ОА устанавливают только список действий Y и формируемых осведомительных сигналов X. Порядок выполнения МО и формируемых ЛУ в функциях ОА не указывается, отсутствует. Это означает, что функции ОА характеризуют только те средства, которые могут быть использованы для обработки информации, но не сам вычислительный процесс. Порядок выполнения МО - вычислительный процесс (динамику) задают микропрограммы операций множества F: МП1, …, МПG, реализуемые УА (совместно с ОА, разумеется). Следовательно, совокупность микропрограмм МП1, …, МПG задает функцию УА. Функция УА задана, если заданы (описаны, выбраны, разработаны) МП всех операций F={f1, …,fG}. Организацию УА рассмотрим позже. Алгоритмы выполнения операций в ОУ обычно задаются в форме граф-схем алгоритмов (ГСА). Именно ГСА (микропрограмма) задает вычислительный процесс во временном аспекте, как последовательность действий (шагов), ведущая к результату.
Определив функцию ОА, можно переходить к его структуре. Сначала продолжим пример с умножением. Для реализации умножения ОА должен выполнять следующие функции:
1) Sумн = А(0:15), В(0:15), С(0:15), СЦ(1:4)
2) Yумн - y1:С:=0; y2: СЦ:=15; y3: С:=С+А; y4: С.В:=SHR1(0.С.В); y5: СЦ:=СЦ-1; y6: С:=С+1; y7:С(0):=А(0)В(15);
3) Xумн - x1:В(15); x2:СЦ=0; x3:В(0).
Cтруктура ОА для операции умножения представлена на рисунке 5.5.
Рисунок 5.5
В общем случае структура ОА имеет вид, представленный на рисунке 5.6. ОА состоит из трех составных частей:
Рисунок 5.6
S - память ОА (для хранения слов S=S1, … ,SN),
Ф - множество (набор) комбинационных схем для реализации МО,
- набор КС для формирования осведомительных сигналов.
5.5Организация работы операционных устройств во времени
Самым простым способом организации работы ОУ во времени является синхронный способ, при котором функционирование ОУ осуществляется тактами. Такт - фиксированный отрезок времени. За один такт ОУ выполняет одну или несколько совместимых МО. Такт задается как период T (T=const) следования сигналов синхронизации С, вырабатываемых генератором тактовых импульсов (ГТИ) (рисунок 5.7):
Рисунок 5.7
Анализ структуры ОУ, представленной на рисунке 5.6, показывает, что выполнение микроопераций в ОУ состоит из следующих четырех этапов (стадий): 1) этап выработки управляющих сигналов ym Y в УА ; 2) этап выполнения МО схемами Ф ОА ; 3) этап формирования осведомительных сигналов xlX схемами ОА; 4) этап занесения результатов МО и осведомительных сигналов xl в память S ОА. Далее эта последовательность этапов периодически повторяется (рисунок 5.8).
Рисунок 5.8
Начало такта (начало последовательности этапов) обычно задается фронтом сигнала синхронизации С и привязывается к началу первого этапа. Отрицательный фронт сигнала С делит такт на две части - два микротакта - и обычно привязывается к началу четвертого этапа (занесение результатов в память S ОА).
В качестве примера рассмотрим МО сложения С:=С+В. Структура ОА, реализующего эту МО, и временная диаграмма его работы представлена на рисунке 5.9. Как видно из этого рисунка, на выполнение МО и формирование ЛУ отводится первая часть такта. Она задается единичным значением сигнала С. На занесение результатов - вторая часть такта, которая задается нулевым (низким) уровнем сигнала С. Т.о. сигналы, инициирующие выполнение МО, формируются по сигналу С, а сигналы занесения результатов -- по инверсному значению С - .
Тактовая организация работы ОУ вытекает из принципа микропрограммного управления: обработка информации сводится к выполнению МО и формированию осведомительных сигналов. Реализация МО и формирование ЛУ осуществляется комбинационными схемами, поэтому результаты с выходов КС необходимо сохранять для последующего использования.
Рисунок 5.9
Продолжительность такта Т при синхронной организации работы ОУ определяется, очевидно, суммой 1 +2 +3 +4 , которая определяется для наихудшего случая по формуле:
T=tУА+max(t1, …, tМ)+max(tx1, … ,txL)+tS. (5.1)
Здесь: 1 = tУА=const - время формирования управляющих сигналов Y в УА -является постоянным, обычно не зависит от того, какие управляющие сигналы уm вырабатываются в данном такте; 4 = tS=const - время занесения результатов. Также обычно является постоянным, например, время занесения в регистры можно считать одинаковым для всех регистров.
Время выполнения МО y1, ..., ym, а также время формирования осведомительных сигналов x1, …, xL в общем случае разное, поэтому продолжительность этапов 2, 3 определяется для наихудшего случая, т.е. как max от всех возможных значений.
Н едостатки синхронного способа очевидны – потери времени при выполнении действий, продолжительность которых меньше максимальных значений. Как устранить эту неэффективность? Можно использовать синхронный же способ, но не с постоянной длительностью такта, а с переменной: T=var. В этом случае все МО делятся на группы по времени их выполнения t1, ..., tМ, tx1, ... , txL: T1, T2, ..., Tk. Обычно k<M , т.к. есть разные МО, но примерно одинаковые по времени их выполнения. Например, логические операции И, ИЛИ и т.п. Таким образом, для каждой группы МО вводится свой такт из набора Т1, ... , Тk. Реализация синхронного способа с тактом Т= var усложняет структуру ОУ, в частности, ГТИ, который должен вырабатывать сигналы с интервалом, который зависит от выполняемых в данном такте МО и ЛУ.
Асинхронный способ при организации работы ОУ не применяется, т.к. его реализация требует очень больших затрат оборудования на выработку сигналов, свидетельствующих о фактическом завершении МО.
Время выполнения операций в ОУ определяется выражением:
tоп=nT. (5.2)
Здесь n – количество тактов, Т – продолжительность такта. Быстродействие ОУ определяется выражением
V=1/t (5.3),
т.е. зависит от продолжительности такта Т. Один из способов увеличения быстродействия ОУ – уменьшение Т. Продолжительность такта при синхронной организации работы ОУ можно уменьшить, если использовать конвейерный способ, при котором ОУ организуется в виде конвейерной цепочки (линии), состоящей из двух блоков: УА и ОА, работающих одновременно, параллельно, а не последовательно (рисунок 5.10):
Рисунок 5.10
При конвейерной организации этап выполнения i-й МО в ОА совмещается во времени (выполняется одновременно) с формированием управляющих сигналов для (i+1)–й МО в УА. В результате продолжительность такта работы ОУ определяется выражением:
Tk= max(TУА, ТОА), (5.4)
где ТОА= tвып+ tзанес.рез., ТУА=tформ+tзанес, т.е. может сократиться в два раза, если ТУА≈ТОА. Конвейерная организация требует дополнительных организационных усилий и затрат оборудования.