- •Часть 1
- •Раздел 1. Этапы развития и эволюция интеллектуальных свойств эвм
- •Тема 1.1. Этапы развития эвм. Особенности традиционных и интеллектуальных эвм
- •Тема 1.2. Эволюция интеллектуальных свойств эвм
- •Раздел 2. Информационные основы построения эвм
- •Тема 2.1. Системы счисления. Формы представления, виды кодирования и форматы чисел, применяемые в эвм
- •2.1.1. Системы счисления, применяемые в эвм
- •2.1.2. Формы представления чисел в эвм
- •2.1.3. Кодирование чисел в эвм
- •2.1.4. Форматы данных, применяемые в эвм
- •Тема 2.2. Выполнение арифметических операций в эвм
- •2.2.1. Выполнение операций сложения/вычитания чисел, представленных в форме с фиксированной точкой
- •2.2.2. Выполнение операций умножения чисел, представленных в форме с фиксированной точкой
- •2.2.3. Выполнение операций деления чисел, представленных в форме с фиксированной точкой
- •2.2.4. Выполнение операций сложения/вычитания чисел, представленных в форме с плавающей точкой
- •2.2.5. Выполнение операций умножения/деления чисел, представленных в форме с плавающей точкой
- •Раздел 3. Логические основы построения эвм
- •Тема 3.1. Основные элементы алгебры логики
- •Тема 3.2. Синтез комбинационных устройств. Основные методы минимизации логических функций
- •3.2.1. Синтез комбинационных устройств
- •3.2.2. Сложность логических формул. Основные методы минимизации логических функций
- •Тема 3.3. Функциональная полнота различных наборов элементарных логических функций
- •3.3.1. Полная совокупность элементарных логических функций
- •3.3.2. Абсолютная полнота наборов элементарных логических функций
- •Тема 3.4. Синтез комбинационных устройств в различных базисах
- •Тема 3.5. Некоторые особые случаи синтеза комбинационных схем.
- •3.5.1. Синтез комбинационных схем с несколькими выходами
- •3.5.2. Синтез комбинационных схем, характеризующихся не полностью определенной функцией
- •Тема 3.6. Принципы построения функциональных устройств
- •3.6.1. Элементный базис для построения функциональных устройств
- •3.6.2. Построение различных функциональных устройств (с использованием триггеров и без)
- •Тема 3.7. Синтез цифровых автоматов
- •3.7.1. Определения
- •3.7.2. Задание ца с памятью
- •3.7.3. Структурный синтез ца с памятью. Выбор функционально полной системы элементов для синтеза ца с памятью
- •Раздел 4. Принципы построения и функционирования эвм и устройств эвм
- •Тема 4.1. Основные сведения о принципах организации, составе и порядке функционирования эвм
- •4.1.1. Основные понятия о принципах организации эвм
- •4.1.2. Состав и порядок функционирования эвм
- •Тема 4.2. Функциональная организация эвм
- •Тема 4.3. Режимы работы эвм
- •Тема 4.4. Принципы построения и функционирования обрабатывающих подсистем эвм
- •4.4.1 Общие сведения о принципах построения обрабатывающих подсистем эвм
- •4.4.2. Устройство управления
- •4.4.3. Арифметико-логическое устройство
- •4.4.4. Микропроцессорная память
- •4.4.5. Организация прерывания в многопрограммных эвм
- •Тема 4.5. Принципы построения устройств памяти
- •4.5.1. Общие сведения об устройствах памяти
- •4.5.2. Методы размещения и поиска информации в памяти
- •4.5.3. Организация памяти в многопрограммных системах
- •4.5.4. Иерархическая организация внутренней памяти эвм
- •4.5.5. Защита памяти в многопрограммных эвм
- •Тема 4.6. Организация ввода-вывода в многопрограммных эвм
- •Раздел 5. Развитие структуры и архитектуры эвм
- •Тема 5.1. Основные тенденции и направления развития структуры эвм и подсистем эвм
- •5.1.1 Общие сведения об основных тенденциях и направлениях развития структуры эвм
- •5.1.2. Развитие обрабатывающей подсистемы
- •5.1.3. Развитие подсистемы внутренней памяти
- •5.1.4. Развитие подсистемы ввода-вывода
- •5.1.5. Развитие подсистемы управления и обслуживания
- •Тема 5.2. Развитие операционных сред (архитектур) в эвм
- •5.2.1. Архитектура виртуальных эвм
- •5.2.2. Архитектура объектной эвм
- •5.2.3. Архитектура интеллектуальной эвм
- •Тема 5.3. Языки функционального и логического программирования и соответствующие им компьютеры
- •5.3.1. Общие сведения об языках функционального и логического типов
- •5.3.2 Языки программирования логического типа
- •5.3.3. Языки программирования функционального типа
- •5.3.4. Логические и функциональные машины
- •Раздел 6. Параллельные компьютеры для интеллектуальных систем
- •Тема 6.1. Особенности интеллектуальных систем обработки знаний. Классификация параллельных архитектур
- •Тема 6.2. Особенности многопроцессорных систем
- •Тема 6.3. Графодинамические параллельные асинхронные машины
- •Литература
Для управления порядком выполнения задач обычно используются программные средства. Организация памяти в многопрограммных ЭВМ рассмотрена в подразделе 4.5 данного материала. Примеры реализации остальных требований, предъявляемых к многопрограммным ЭВМ, в традиционных ЭВМ общего назначения и персональных компьютерах рассмотрены в подразделах 4.4 и 4.6.
Тема 4.4. Принципы построения и функционирования обрабатывающих подсистем эвм
4.4.1 Общие сведения о принципах построения обрабатывающих подсистем эвм
В обрабатывающих подсистемах ЭВМ, как и в любых устройствах обработки цифровой информации, можно выделить операционный блок (ОБ) и управляющий блок (УБ) [11]. Структурная организация обрабатывающей подсистемы показана на рисунке 4.4.
Рисунок 4.4. Структура обрабатывающей подсистемы
Процесс функционирования во времени обрабатывающей подсистемы состоит из последовательности тактовых интервалов, в которых ОБ производит определенные элементарные операции преобразования слов (например, передача слов из регистра в регистр, сдвиг и т.д.). Выполнение этих элементарных операций инициируется поступлением в ОБ управляющих сигналов из УБ.
Элементарная функциональная операция (или их комбинация), выполняемая за один тактовый интервал и приводимая в действие одним управляющим сигналом , называетсямикрооперацией.
Может выполняться несколько элементарных микроопераций одновременно. Такая совокупность микроопераций называется микрокомандой.
УБ вырабатывает последовательность управляющих сигналов (УС) ,, …,(), порождающих в ОБ требуемую последовательность микроопераций.
Последовательность управляющих сигналов определяется управляющим командным кодом, поступающим в УБ извне, и оповещающими сигналами, зависящими от операндов и промежуточных результатов преобразованной информации.
ОБ задается его структурой, т.е. составом узлов и связями между ними, и выполняемым ОБ набором микроопераций.
Последовательность микрокоманд, обеспечивающих выполнение данной операции, называется микропрограммой данной операции.
Любая операция в операционном блоке описывается микропрограммой и реализуется за несколько тактов, в каждом из которых выполняется одна или несколько микроопераций. Для реализации команды, операции, процедуры или микропрограммы необходимо на соответствующие управляющие шины подать определенным образом распределенную во времени последовательность управляющих функциональных сигналов.
Особенности построения и функционирования обрабатывающих подсистем в традиционных ЭВМ общего назначения достаточно хорошо известны [7, 11, 12]. Рассмотрим построение и функционирование обрабатывающих подсистем в ПК.
Как уже было отмечено выше (см. подраздел 4.2.), в ПК функции обрабатывающей подсистемы выполняет микропроцессор (МП), в состав которого входят:
- Core – ядро МП;
- Execution Unit – исполнительный модуль;
- Integer ALU – АЛУ для операций с целыми числами (с фиксированной точкой);
- Registers – регистры;
- Floating Point Unit – блок для работы с числами с плавающей точкой;
- Primary Cashe - кэш первого уровня, в том числе кэш данных (Data Cache) и кэш команд (Code Cache);
- Instruction Decode and Prefect и Unit Branch Predictor – блоки декодирования инструкций, опережающего их исполнения и предсказания ветвлений;
- Bus Interface – интерфейсные шины, в том числе 64- и 32- битовые шины, и выход на системную шину к оперативной памяти.
Функционально МП можно разделить на две части:
- операционную, содержащую устройство управления (УУ), арифметико-логическое устройство (АЛУ) и микропроцессорную память (МПП) (за исключением нескольких адресных регистров);
- интерфейсную, содержащую адресные регистры МПП, блок регистров команд – регистры памяти для хранения кодов команд, выполняемых в ближайшие такты, схемы управления шиной и портами.
Обе части МП работают параллельно, причем интерфейсная часть опережает операционную, так что выборка очередной команды из памяти (ее запись в блок регистров команд и предварительный анализ) выполняется во время выполнения операционной частью предыдущей команды. Современные МП имеют несколько групп регистров в интерфейсной части, работающих с различной степенью опережения, что позволяет выполнять операции в конвейерном режиме. Такая организация МП позволяет существенно повысить его эффективное быстродействие.
Рассмотрим кратко основные устройства обрабатывающих подсистем.
4.4.2. Устройство управления
Устройство управления (УУ) является функционально наиболее сложным устройством ПК – оно вырабатывает управляющие сигналы, поступающие по кодовым шинам инструкций (КШИ) во все блоки машины. Схема УУ приведена на рисунке 4.5.
В УУ входит:
- регистр команд – запоминающий регистр, в котором хранится код команды: код выполняемой операции (КОП) и адреса операндов, участвующих в операции. Регистр команд в ПК расположен в интерфейсной части МПП в блоке регистров команд (в МП с конвейерным исполнением команд имеется несколько регистров команд);
- дешифратор операций – логический блок, выбирающий в соответствии с поступающим из регистра кодом операций (КОП) один из множества имеющихся у него выходов;
- постоянное запоминающее устройство (ПЗУ) микропрограмм в котором хранятся управляющие сигналы (импульсы) для выполнения в блоках ЭВМ процедур обработки информации. Импульс по выбранному дешифратором операций в соответствии с кодом операции проводу считывает из ПЗУ микропрограмм необходимую последовательность управляющих сигналов;
- узел формирования адреса (находится в интерфейсной части) – устройство, вычисляющее полный адрес ячейки памяти (регистра) по реквизитам, поступающим из регистров команд и регистров МПП;
- кодовые шины данных и инструкций – часть внутренней интерфейсной шины МП.
В общем случае УУ формирует управляющие сигналы для выполнения следующих основных процедур:
- выборки из регистра-адреса команды адреса ячейки ОЗУ, где хранится очередная команда программы;
- выборки из ячеек ОЗУ кода очередной команды и приема считанной команды в регистр команд;
- расшифровки кода операции и признаков выбранной команды;
- считывания из соответствующих расшифрованному коду операции ячеек ПЗУ микропрограмм управляющих сигналов (импульсов), определяющих во всех блоках машины процедуры выполнения заданной операции, и пересылки управляющих сигналов в эти блоки;
Рисунок 4.5. Схема устройства управления
- считывания из регистра команд и регистров МПП отдельных составляющих адресов операндов (чисел), участвующих в вычислениях, и формирования полных адресов операндов;
- выборки операндов (по сформированным адресам) и выполнения заданной операции обработки этих операндов;
- записи результатов операции в память;
- формирования адреса следующей команды программы.
УУ обеспечивает также защиту информации и участвует в организации прерываний.
4.4.3. Арифметико-логическое устройство
Арифметико-логическое устройство (АЛУ) предназначено для выполнения арифметических и логических операций преобразования информации. Функционально простейшее АЛУ состоит из двух регистров, сумматора и схем управления (местного устройства управления) (рисунок 4.6.).
Сумматор – вычислительная схема, выполняющая процедуру сложения поступающих на ее вход двоичных кодов; сумматор имеет разрядность двойного машинного слова.
Регистры – быстродействующие ячейки памяти различной длины: Регистр 1 имеет разрядность двойного слова, Регистр 2 – разрядность слова. При выполнении операции в Регистр 1 помещается первое число, участвующее в операции, а по завершении операции – результат; в Регистр 2 – второе число, участвующее в операции (а по завершении операции информация в нем не изменяется). Регистр 1 может принимать информацию с кодовых шин данных и выдавать информацию на них; Регистр 2 только получает информацию с этих шин.
Схемы управления принимают по кодовым шинам инструкций управляющие сигналы от УУ и преобразуют их в сигналы для управления работой регистров и сумматора АЛУ.
АЛУ персонального компьютера выполняет арифметические операции «+», «-», «·» и «:» только над двоичной информацией, представляющей собой целые числа. Выполнение операций над числами, представленными в форме с плавающей точкой, и над двоично-кодированными числами осуществляется с привлечением математического сопроцессора или по специальным программам.
4.4.4. Микропроцессорная память
Микропроцессорная память (МПП) содержит 4 группы регистров:
- универсальные регистры (AX, BX, CX, DX);
- сегментные регистры(CS, DS, ES, SS);
Рисунок 4.6. Схема АЛУ
- регистры смещения (IP, SP, BP, SI, DI);
- регистр флагов (F).
Назначение и особенности перечисленных регистров подробно рассмотрены в [2].
4.4.5. Организация прерывания в многопрограммных эвм
Во время выполнения ЭВМ текущей программы внутри машины или в связанной с ней внешней среде (например, во внешнем устройстве) могут возникнуть события, требующие немедленных реакций на них со стороны ЭВМ. Эти реакции состоят в том, что при возникновении подобных событий ЭВМ должна прервать отработку текущей программы и перейти к выполнению другой программы, специально предназначенной для ситуации, связанной с появлением данного события. По завершении этой программы ЭВМ должна вернуться к выполнению прерванной программы.
Если имеется несколько источников прерывания, вырабатывающих свои запросы независимо, должен быть установлен определенный порядок обслуживания запросов. Существуют системы прерывания с последовательным просмотром (сканированием) наличия запросов у источников прерывания и с обслуживанием запросов в порядке присвоенного им приоритета.
Системы прерывания выполняют следующие функции:
1) запоминание состояния прерываемой программы;
2) приоритетный выбор запроса для исполнения из поступивших запросов прерывания и организация перехода к прерывающей программе;
3) восстановление состояния прерванной программы и возврат к ней;
4) программное изменение приоритетов программ (выполняемое при помощи механизма маскирования запросов).
В традиционных ЭВМ общего назначения (мэйнфреймах) применялись различные средства для организации прерывания. Наиболее распространенным способом организации прерывания является применение слов состояния программы (ССП), под управлением которых осуществляется выполнение в ЭВМ программ [7, 12]. В ЭВМ этого типа для хранения ССП использовалась определенная область основной памяти.
В персональных компьютерах (ПК) прерывания выполняются аналогично, но в отличие от ЭВМ общего назначения ПК производит при этом следующие действия [2]:
- запоминает в основной памяти текущее состояние выполняемой программы (состояние некоторых регистров МПП, а в МП80286 и выше – и слова состояния программы (ССП), хранящиеся в другом регистре МПП);
- посылает источнику запроса на прерывание запрос о причине (коде) прерывания;
- анализирует код запрошенного прерывания (номер прерывания - Ni) и формирует адрес ячейки (AV), хранящей вектор прерывания (адрес программы обработки прерывания) по формуле: AV = 4·Ni (векторы прерываний занимают начальную 1024-байтовую область ОП с адресами ячеек от 00000 до 00400h (шестнадцатеричный код так, что адрес вектора вычисляется простым умножением номера кода прерывания на 4);
- считывает из ОП и записывает в регистры ММП вектор прерывания и его атрибуты;
- сбрасывает (устанавливает в 0) флажки прерывания (F) и трассировки (TF);
- выполняет программу обработки прерывания (иногда называемую драйвером прерывания);
- после выполнения программы обработки прерывания возвращает из стековой памяти параметры прерванной программы в регистры МПП и восстанавливает процесс выполнения прерванной программы.
Всего в ПК может быть видов (номеров) прерывания до 256.
Классификация видов прерываний в ПК показана на рисунке 4.7.
Пользовательские (прикладные) прерывания временно устанавливаются пользователем при многопрограммной работе МП для указания приоритета выполнения прикладных программ (при необходимости выполнения более приоритетной программы текущая менее приоритетная программа прерывается).
К справочным относятся псевдопрерывания, которые служат для запоминания важных фиксированных адресов, которые могут быть в программах, в частности, при условных и безусловных передачах управления.
К группе системных прерываний относятся внешние и внутренние прерывания.
К внешним прерываниям относятся аппаратные прерывания, которые инициируются при обращении к МП со стороны внешних устройств (таймера, клавиатуры, дисководов, принтера и т.д.) с требованием уделить им внимание и выполнить совместно с ними те или иные процедуры. Аппаратные прерывания не координируются с работой программы и могут быть весьма разнообразны. Для их систематизации и определения очередности выполнения используется обычно контроллер прерываний.
Внутренние прерывания могут быть 2-х типов – планируемые и непланируемые.
К планируемым прерываниям относятся технические и логические прерывания.
Технические прерывания (прерывания от схем контроля) возникают при появлении отказов и сбоев в работе технических средств ПК. Большинство этих прерываний не маскируется, а некоторые из них относятся к категории «аварийных» (например, отключение питания). При их возникновении даже не запрашивается причина прерывания, а просто при возможности, спасаются важные промежуточные результаты – записываются в безопасное место, например, на НМД.
Логические прерывания возникают при появлении ошибок в выполняемых программах (деление на 0, потеря точности мантиссы, нарушение защиты памяти и др.). Многие из логических прерываний также не маскируются.
Эти прерывания обслуживаются модулем расширения BIOS и модулем обработки прерываний DOS.
К планируемым прерываниям относятся программные прерывания – это обычные процедуры, которые вызывает текущая программа для выполнения предусмотренных в ней стандартных подпрограмм, чаще всего подпрограмм служебных функций работы с внешними устройствами. Программные прерывания делятся на две большие группы, вызывающие служебные функции:
- базовой системы ввода-вывода – прерывания BIOS;
- операционной системы – прерывания DOS.
Программы обработки BIOS встроены в ПЗУ, а программы обработки прерываний DOS располагаются в другой памяти и могут быть для разных операционных систем различные.
Из возможных 256 типов прерываний только 5 первых из них жестко закреплены в МП, остальные используются системами BIOS и DOS
Тема 4.5. Принципы построения устройств памяти
4.5.1. Общие сведения об устройствах памяти
Памятью называется совокупность устройств, предназначенных для запоминания и выдачи информации. Отдельные устройства, входящие в эту совокупность, называются запоминающими устройствами (ЗУ) или памятью того или иного типа [7].
Эти термины – ЗУ и память – стали синонимами. Теперь термин ЗУ чаще используют, когда хотят подчеркнуть принцип построения (ЗУ на ферритах, ЗУ на магнитных дисках (МД) и т.д.), а память – когда подчеркивают функцию устройства или место его расположения в ЭВМ (основная память, внешняя память и т.д.).
Производительность и вычислительные возможности ЭВМ в значительной степени определяются составом и характеристиками ее ЗУ.
В составе ЭВМ используется одновременно несколько типов ЗУ, отличающихся характеристиками и назначением.
Основные операции, выполняемые в памяти, это запись (ввод) и считывание (вывод). В зависимости от типа ЗУ за одно обращение может считываться или записываться разный объем информации: байт, слово или блок данных.
Важнейшими характеристиками отдельных устройств памяти являются: емкость памяти, удельная емкость и быстродействие.
Емкость – это максимальное количество данных, которое может храниться в памяти.
-Емкость измеряется в кило-, мега- , гига-, терабайтах и т.д.
Удельная емкость – отношение емкости к объему памяти (физическому).
Быстродействие – продолжительность операции обращения, т.е. время, затраченное на поиск информации и ее воспроизведение ( –при чтении и – при записи). В некоторых типах ЗУ считывание информации стирает ее и требуется регенерация (восстановление).
Продолжительность обращения (tцикла памяти) при считывании:
.
В большинстве случаев
.
В качестве времени цикла обращения к памяти принимается
,
которое определяет интервал между двумя последовательными обращениями к памяти.
По принципу действия устройства памяти можно разделить на следующие типы:
- память на электронных схемах;
- на неподвижных ферритовых (магнитных) элементах;
- на подвижных магнитных средах (носителях);
- на лазерных дисках и другие.
В зависимости от реализуемых операций обращения различают:
- память с произвольным обращением (ЧТ/ЗАП);
- память только для считывания или постоянные запоминающие устройства (ПЗУ).
По способу организации доступа память делится на:
- память с непосредственным (произвольным) доступом;
- память с последовательным доступом.