
- •Организация эвм
- •1. Принципы джона фон нейман. Поколения эвм
- •1.1. Принципы Джона фон Нейман
- •1.2. Поколения эвм: от ламп к интегральным микросхемам
- •1.2.1. Первое поколение эвм (1948 — 1958гг.)
- •1.2.2. Второе поколение эвм (1959 — 1967 гг.)
- •1.2.3. Третье поколение эвм (1968 — 1973 гг.)
- •Четвертое и пятое поколения эвм (1974 — настоящее время)
- •2. Архитектура технических средств
- •2.1.Микропроцессор
- •2. Краткие сведения об остальных компонентах компьютера
- •2.3. Функциональное назначение
- •2.4. Использование разъемов расширения
- •2.5. Совместимость блоков расширения
- •3. Классификация компьютеров по областям применения
- •3.1. Персональные компьютеры и рабочие станции
- •3.3. Серверы
- •3.4. Мейнфреймы
- •3.5. Кластерные архитектуры
- •4. Система прерываний
- •4.1. Общие сведения
- •4.2. Обработка прерываний.
- •4.3. Программирование контроллера прерываний
- •4.4. Обработка прерываний в реальном режиме
- •5. Иерархия памяти
- •5.1. Организация кэш-памяти
- •5.1.1. Где может размещаться блок в кэш-памяти?
- •5.1.2. Как найти блок, находящийся в кэш-памяти?
- •5.1.3. Какой блок кэш-памяти должен быть замещен при промахе?
- •5.1.4. Что происходит во время записи?
- •5.2.2. Развитие оперативной памяти
- •5.2.3. Установка оперативной памяти
- •5.3. Виртуальная память и организация защиты памяти
- •5.3.1. Концепция виртуальной памяти
- •5.3.2. Страничная организация памяти
- •5.3.3 Сегментация памяти
- •6. Организация ввода/вывода
- •6.1. Системные и локальные шины
- •6.2. Стандарты шин
- •6.3. Устройства ввода/вывода
- •6.3.1. Магнитные и магнитооптические диски
- •6.3.2. Дисковые массивы и уровни raid
- •6.3.3. Устройства архивирования информации
- •7. Многопроцессорные и многомашинные системы
- •7.1. Классификация эвм параллельной обработки
- •7.2. Модели связи и архитектуры памяти
- •8. Конвейерная обработка
- •8.1. Параллелизм и конвейеризация
- •8.2. Оценка производительности идеального конвейера
- •8.3. Конфликты в конвейере и способы минимизации их влияния на производительность процессора
- •8.3.1. Структурные конфликты
- •8.3.2. Конфликты по управлению
- •8.3.3. Конфликты по данным
- •9. Периферийные устройства
- •9.1. Принтеры
- •9.2. Мыши
- •9.3. Модемы
- •9.4. Сканеры
- •9.5. Накопители на жестких магнитных дисках
- •9.6. Накопители на гибких магнитных дисках
- •9.7. Накопители на компакт-дисках
- •9.8. Магнитооптические диски
- •9.9. Стримеры
- •9.10. Дигитайзеры
- •9.11. Плоттеры
- •9.12 Видеобластеры
- •9.13. Звуковые платы
- •9.14. Акустические системы
- •9.15. Трекболы
- •9.16 Джойстики
- •9.17. Источники бесперебойного питания.
- •Оглавление
4.3. Программирование контроллера прерываний
Программирование контроллера прерываний осуществляется через адресное пространство ввода-вывода посредством двух 8-битовых портов с адресами 20h и 21h. Управление контроллером осуществляется путем посылки в определенной последовательности в эти порты специальных приказов двух типов.
1) Управляющее слово инициализации. Всего имеются четыре таких слова с жесткой внутренней структурой – ICW1...ICW4. Эти слова предназначены для задания режима работы контроллера. Количество этих слов (4) определено количеством режимов.
2) Операционное управляющее слово. Таких слов всего три, и они несут информационную нагрузку для определенных выше режимов работы контроллера прерываний. Обычно их обозначают OCW1...OCW3.
Перечислим функции управляющих слов.
ICW1 – определить особенности последовательности приказов.
Состояние битов этого приказа определяет особенности в последовательности приказов при инициализации контроллера. Данный приказ посылается в порт 20h.
ICW2 – определение адреса базового вектора.
В реальном режиме работы микропроцессора для хранения указателей (векторов) на процедуры-обработчики прерываний используется специальная область памяти - таблица векторов прерываний. Эта таблица начинается с нулевого адреса оперативной памяти и занимает 1 Кбайт. Вектора располагаются в таблице последовательно, одной группой, и их нумерация начинается с некоторого номера вектора, называемого базовым. Данный приказ посылается в порт 21h.
ICW3 – связь контроллеров.
Этот приказ предназначен для связи контроллеров в системе с несколькими контроллерами прерываний.
ICW4 – дополнительные особенности обработки прерываний.
Данный приказ определяет дополнительные особенности обработки прерываний контроллером i8259А. (тип микропроцессора, особенности обработки конца прерывания и т.д.). Данный приказ посылается в порт 21h.
Приказы инициализации задают контроллеру режимы работы в условиях вложенных прерываний. Если требуется конкретизировать порядок обработки для отдельных уровней прерываний, необходимо использовать специальные операционные управляющие слова – OCW, назначение и форматы которых рассмотрены ниже.
OCW1 – управление регистром масок IMR.
Приказ предназначен для управления маскирования прерываний конкретных уровней.
OCW2 – управление приоритетом.
Используется для управления приоритетом и учета особенностей завершения обслуживания прерывания в контроллере.
OCW3 – общее управление контроллером.
Установка режима опроса режима специального маскирования и т.д.
Компьютеры архитектуры ХТ имели всего одну микросхему i8259А, которая обрабатывала прерывания от следующих источников:
– уровень 0 таймера;
– уровень 1 клавиатуры;
– уровень 2 зарезервирован для нестандартных внешних устройств;
– уровень 3 порта COM2;
– уровень 4 порта COM1;
– уровень 5 жесткого диска;
– уровень 6 НГМД;
– уровень 7 параллельного порта принтера.
В компьютерах архитектуры АТ (с микропроцессорами i286 и выше) в связи с возросшей номенклатурой внешних устройств восьми источников прерываний стало недостаточно. Нужно было как-то расширить этот диапазон. Здесь и пригодилась способность микросхем i8259А работать в связке, или каскадом. Максимально можно таким образом соединить 8 контроллеров, что позволит обработать запросы от 64 источников. В архитектуре АТ используются два контроллера, соединенные каскадом, что позволяет обрабатывать запросы от 15 источников прерываний. Один из этих контроллеров является ведущим, другой - ведомым. Выход ведомого контроллера замкнут на вход уровня 2 ведущего контроллера.
Распределение и приоритеты аппаратных прерываний в архитектуре AT представлены в табл. 4.1.
Таблица 4.1.
Прерывания в архитектуре АТ
Уровень (вход) |
Контроллер |
Источник прерывания |
Приоритет уровня |
Irq0 |
Ведущий |
Таймер |
2 |
Irq1 |
Ведущий |
Клавиатура |
3 |
Irq2 |
Ведущий |
Выход INT ведомого |
– |
Irq8 |
Ведомый |
Часы реального времени (CMOS) |
4 |
Irq9 |
Ведомый |
Вход для устройства расширения |
5 |
Irq10 |
Ведомый |
Вход для устройства расширения |
6 |
Irq11 |
Ведомый |
Вход для устройства расширения |
7 |
Irq12 |
Ведомый |
Вход для устройства расширения |
8 |
Irq13 |
Ведомый |
Ошибка сопроцессора |
9 |
Irq14 |
Ведомый |
Контроллер жесткого диска |
10 |
Irq15 |
Ведомый |
Вход для устройства расширения |
11 |
Irq3 |
Ведущий |
Последовательный порт COM2 |
12 |
Irq4 |
Ведущий |
Последовательный порт COM1 |
13 |
Irq5 |
Ведущий |
Параллельный порт LPT2 |
14 |
Irq6 |
Ведущий |
Контроллер гибкого диска |
15 |
Irq7 |
Ведущий |
Параллельный порт LPT1 |
16 |