- •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 Организация оптических дисков
- •Библиографический список
2.12 Организация адресного пространства внешней памяти. Виртуальная организация памяти
Память третьего уровня - внешняя память - строится на основе различного рода ВЗУ: НМД, НМЛ, НОД (CD–ROM и др.). При этом накопители один от другого отличаются номерами (адресами):
ВЗУ0, ВЗУ1, ... , ВЗУ(N-1).
Информационное пространство каждого ВЗУi адресуется обычно с точностью до блока информации фиксированной ёмкости (в РС, например, типичный размер блока (сектора) 29=512В). Номер блока обычно указывают напрямую, т.е. используется прямая адресация. Информационная ёмкость накопителя оценивается количеством блоков, умноженным на ёмкость блока. При обращении к накопителю адресуются блоки (секторы). Доступ к байтам становится возможным только после ввода блока в ОП.
Таким образом, формат адреса при обращении к ВП:
1
№ ВЗУ n 1 №
блока k
Здесь: 2n – количество регистров в контроллере ВЗУ, 2k – количество блоков на носителе информации ВЗУ.
Почему же ёмкость ВП практически не ограничена? За счёт съёмных носителей информации. Их идентификацией (т.е. адресацией) ведает человек. На техническом уровне для ВЗУ один съёмный носитель от другого неотличим.
ВЗУ как ПУ подключаются к ЭВМ не напрямую, а через специальные устройства управления – т.н. контроллеры ПУ (рисунок 2.23).
Рисунок 2.23
По шине адреса номер ВЗУ передаётся в контроллер ВЗУ (т.е. выбирается один из контроллеров), а по ШД - номер ВЗУ и номер блока (сектора) на носителе информации, по ШУ – направление обмен – ввод или вывод. После этого производится поиск адресуемого блока на носителе и запускается алгоритм обмена информацией между ОП и ВЗУ. Этот алгоритм реализуется КПУ, механизмом ВЗУ и последовательностью команд, которые поступают от ЦП. Обычно эти программы порождаются программами ввода-вывода, которые являются программами ОС, а не программами пользователя. Эти специальные программы ввода-вывода инициализируются из программ пользователя, когда в них дело доходит до операторов ‘ввод’ или ‘вывод’. В этот момент их выполнение прерывается и управление передается ОС, а именно, специальным программам ввода-вывода ОС - т.н. супервизору (монитору) ввода-вывода. Он собирает необходимую информацию об обмене из соответствующих таблиц ОС и каталогов и вызывает программу-драйвер. Под управлением драйвера и осуществляется обмен между ОП и ВП.
Следует отметить, что программирование (организация) обмена информацией между ОП и ВП требует от исполнителя высокой квалификации. В противном случае обмен организуется неоптимальным образом, что приводит к значительным потерям времени на ‘свопинг’. Свопинг - это взаимный обмен информацией между ОП и ВП: прежде чем в ОП ввести новую информацию, необходимо освободить часть ОП путём переписи старой информации во ВП. В этой ситуации актуальной является задача автоматизации обмена (свопинга). Такого рода автоматизация обычно осуществляется на базе т.н. виртуальной организации памяти ЭВМ.
Идея (концепция) виртуальной (кажущейся) памяти заключается в следующем: ОП и ВП в функциональном (логическом) отношении (т.е. с точки зрения пользователя) рассматривается как одноуровневая память с прямым (произвольным) доступом (как бы одноуровневая память): ОП и ВП - единое адресное пространство. Для адресации такой памяти используются адреса 0,1, ... ,Еоп-1,Еоп,Еоп+1, ... ,Е-1, где Е=Еоп+Евп.
Например, в ПЭВМ типа IBM PС шина адреса ША содержит 32 разряда, т.е. Еоп=4ГВ (232В). Размер же виртуального адресного пространства - 246В=64ТВ (32+14=46).
Для адресации виртуальной памяти ипользуются длинные (m=46, например) виртуальные адреса. При этом разрешено считать, что информация, которая хранится во ВП, также доступна ЦП, как и информация, которая хранится в ОП. Считать-то можно, но как обеспечить это технически? Для этого в ЭВМ встраиваются специальные программные и технические средства, которые и обеспечивают автоматический свопинг. Эти средства должны обеспечить выполнение двух действий:
преобразование виртуальных адресов в физические, т. е. либо в адреса ячеек ОП, либо, если это ВП, в адреса ВЗУ и номера блоков на носителе информации, по которым и производится обращение к памяти;
если адресуемая информация в момент обращения находится не в ОП, а во ВП, то передачу её (вместе с блоком информации) из ВП в ОП на заранее освобожденное место (свопинг).
Технически наиболее просто указанные действия реализуются при страничной организации памяти. В этом случае для адресации ячеек виртуальной памяти используются длинные виртуальные адреса ВА следующего формата:
,
где m=k+n - длина ВА, Р - номер виртуальной страницы, D - номер ячейки в странице. Физический адрес имеет аналогичную структуру:
,
только старшие разряды - поле S - указывают адрес (номер) физической страницы. Понятие ‘виртуальная страница’ связывается с той информацией, которая хранится в этой странице, а не с местом её хранения. А вот понятие ‘физическая страница’ связано с местом хранения виртуальной страницы с номером Р. Таким образом, виртуальные страницы подвижны, а физические - неподвижны. Это означает, что одна и та же виртуальная страница в разные моменты времени может находиться в различных физических страницах памяти: то в ОП, то в ВП, то опять в ОП. Т.е. информация в процессе функционирования ЭВМ перемещается внутри физической памяти.
За процессом перемещения виртуальных страниц необходимо следить. С этой целью текущее состояние виртуальной памяти отображается в виде таблицы страниц. В таблице страниц каждой виртуальной странице с номером Р ставится в соответствие одна строка. В этой строке и указывается, в каком конкретно месте физической памяти расположены виртуальные страницы в данный момент времени, т.е. в этой строке указывается номер физической страницы S. Кроме того, здесь же указывается и признак доступности страницы ЦП dp, если dp=0 - страница Pнаходится во ВП (РОП),если dp=1 – страница Р находится в ОП (РОП), доступна ЦП. В случае dP=1 преобразование BA в физический ФА производится следующим образом (рисунок 2.24).
Физический адрес формируется конкатенацией (склеиванием) поля S из таблицы страниц и поля D из ВА: ФА=S.D. В IBM PC физический адрес формируется суммированием этих полей: ФА=S+D, где S интерпретируется как базовый адрес, а поле D – как смещение.
В случае, если dp =0 - т.е. страница недоступна ЦП, происходит прерывание текущей команды и управление передаётся средствам перемещения страниц, т.е. средствам, обеспечивающим свопинг. Эти средства обеспечивают перемещение виртуальной страницы Р из ВП в ОП, предварительно удалив страницу из ОП в свободное место (в свободную физическую страницу) ВП.
Порядок использования таблицы страниц можно проиллюстрировать рисунком 2.25.
Рисунок 2.25
Где хранить таблицы страниц? Проще всего в ОП. Но при этом при каждом обращении по ВА будет производиться два физических обращения к ОП: сначала к таблице страниц, а затем к ячейкеОП по ФА. Ясно, что такая организация памяти снижает быстродействие памяти вдвое. Как быть? Хранить таблицы страниц не в ОП, а в СОП (в КЭШ, например). Это дороже, но быстрее.