Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Реализация многоуровневых ВП в ЭВМ семейства IBM

Для Реализация многоуровневых ВП в ЭВМ семейства IBM применена БИС Intel 8259 A.

Технические характеристики БИС Intel 8259 A.

1. Число уровней ЗП = 8.

2. Количество уровней можно расширить до 64 за счет каскадного включения микросхем

3. Режим обслуживания ЗП, уровни приоритетов, АВП устанавливаются программным путем.

 

6.7 Программируемые режимы обслуживания ВУ.

Режимы работы:

1. Режим вложенные прерывания.

Входы для ЗП: IRi,. Каждому из входов присваивается приоритет IR0, IR1, …IR7 в порядке убывания ЗП с большим приоритетом могут прерывать обслуживание ЗП с меньшим приоритетом.

2. Круговые циклические приоритеты.

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

3. Адресуемые приоритеты.

Аналогично п. 2, но допускает программное указание входа, которому назначается самый низкий приоритет.

4. Режим опроса.

В этом режиме ЦП не реагирует на ЗП (прерывания запрещены). ВУ, требующее обслуживания, определяется чтением состояния ПКП (т.е. опрос состояния контроллера).

5. Незамаскированные запросы прерываний обслуживаются в порядке их поступления.

6.8 Схема включения ПКП к системной шине ВУ.

 

Рис. 6.7 Схема включения ПКП к системной шине и ВУ.

Назначение выводов БИС:

- D7-D0 – выводы ШД, служат для приема управляющее информации от ЦП и передачи статусной информации в ЦП.

- A0 – адресный вход, адресация внутренних регистров контроллера (2 адреса).

- ~CS (chip select) - выбор кристалла, разрешает или запрещает связь контроллера с системной шиной.

o ~ CS = 0 – есть связь, ~ CS = 1 – нет связи.

Первый ПКП использует адреса – 20h, 21h.

Второй ПКП использует адреса – A0h, A1h.

- ~RD, ~WR – ввод, вывод (сигналы ШУ), соединяются с линиями магистрали ~IOR и ~IOW.

- INT (выход) – сигнал ЗП в ЦП.

- ~INTA (interrupt acknowledge) – сигнал РП от ЦП.

- CAS2, CAS1, CAS0 – шина каскадирования. Для ведущего контроллера прерывания эти линии являются выходами, а для ведомого – входами.

- ~SP/~EN – указывает ведущий (1) или ведомый (0) ПКП.

- IR0...IR7 – входы запросов прерывания от ВУ.

6.9 Аппаратные прерывания в порядке их приоритетов и назначения.

Вход Номер типа Назначение входа
IR0 8 АВП = 0000.0020 h Таймер
IR1 9 АВП =0000.0024 h Клавиатура
IR2 Ah Каскадирование
IR3 Bh COM2
IR4 Ch COM1
IR5 Dh LPT2
IR6 Eh НГМД (накопитель на гибких магнитных дисках)
IR7 Fh LPT1

6.10 Функциональный состав ПКП и его программная модель

Рис. 6.8 Программируемый контроллер прерываний в ЭВМ семейства IBM PC.

IRR – Interrupt Request Register – регистр запросов прерываний,

IMR – Interrupt Mask Register – регистр масок прерываний,

ISR – Interrupt Service Register регистр обслуживаемых запросов,

PR – Priority Resolver – шифратор приоритетов.

Назначение:

IRR:

- фиксирует ЗП на входах IR0-IR7 от ВУ. К каждому входу можно подключить одно ВУ.

IRi =1, если на входе IRi появляется ЗП.

- Входные цепи могут программироваться на восприятие уровня или фронта сигнала.

IMR:

- Служит для маскирования или разрешения ЗП на отдельных входах.

- Если IMi =1, то сигнал на входе IRi не обслуживается.

- Маскирование входа IRi не запрещает прерывание на остальных входах..

ISR:

- Хранит запросы, обслуживаемые ЦП.

- На время обслуживания IRi ЦП, бит ISi устанавливается в 1.

- Если ISi = 1, то прерывания от этого входа и входов с меньшими приоритетами запрещены.

- Этот бит должна сбросить программа обслуживания прерывания по завершению работы или в процессе обслуживания ВУ.

PR:

- Анализирует содержимое предыдущих трех регистров и определяет необходимость генерировать сигнал ЗП (INT) в ЦП,т.е. реализует схему учета приоритетов и формирования АВП.

6.11 Алгоритм работы ПКП.

Начальная инициализация подразумевает установку всех параметров:

1. Количество ПКП в системе: один или несколько.

2. АВП (номера типов прерываний).

3. Режим обслуживания ВУ.

Инициализация выполняется специальными командами записи приказов инициализации в регистр ПКП и не должна прерываться. В ЭВМ семейства IBM PC инициализация выполняется BIOS (basic input/output system - базовая система ввода-вывода), которая устанавливает режим вложенных прерываний, АВП, ПКП1 объявляет ведущим, ПКП2 – ведомым.

При появлении сигнала ЗП от какого-либо ВУ, ПКП выполняет следующие действия:

1. Запрос на входе IRi фиксируется в регистре IRR.

2. Установленный в 1 бит IRi сравнивается с соответствующим битом IMi. Если

a) IMi = 1 → запрос IRi не обслуживается.

b) IMi = 0 → запрос IRi передается в PR.

3. PR сравнивает приоритет IRi с приоритетами ЗП, обслуживаемыми в данный момент времени ЦП.

a) Если биты регистра ISR с большим приоритетом = 1, то дальнейшее обслуживание запроса не выполняется.

b) Если биты регистра ISR с большим приоритетами сброшены в 0, то ПКП формирует ЗП (INT) в ЦП.

4. ЦП проверяет бит IF (Interrupt Flag) в регистре флагов (Flags):

a) Если IF = 0, запрос не обслуживается, пока IF не будет установлен в единицу.

b) Если IF = 1, то по завершению текущей команды ЦП сбрасывает IF=0 и возвращает сигнал в ПКП по линии INTA в виде двух последовательных импульсов.

5. ПКП при первом импульсе INTA запрещает сигналы на входах IRR до второго импульса INTA. Сбрасывает бит IRi = 0 и устанавливает бит ISi = 1.

6. ПКП при втором импульсе INTA ЦП разрешает сигналы на входах регистра IRR и на ШД устанавливает номер типа прерывания.

7. ЦП считывает с ШД код номера типа прерывания и приступает к обслуживанию устройства.

Если поступает сигнал с большим приоритетом, ЦП не реагирует на сигнал INT при сброшенном IF. Поэтому любая оперативная программа должна устанавливать IF=1, как только это становится возможным, чтобы установить режим вложенных прерываний.

Чтобы повторить процедуру прерывания, то входа IRi необходимо сигнал на входе IRi перевести в неактивное состояние.

Если какой-то вход IRк замаскирован соответствующим битом IMк, то запрос не обрабатывается ПКП.

Если программа сбрасывает IMк =0, ПКП распознает активный запрос и начинает его обслуживать.

6.12 Схема каскадирования контроллеров прерывания.

Каскадирование позволяет объединить несколько контроллеров для расширения числа ЗП.

При этом один ПКП работает как ведущий, а до 8 ПКП могут работать ведомыми.

Сигнал INT ведомого ПКП подается на один из входов ведущего (IRi). Если IMR и ISR не блокируют сигнал, то он поступает на вход ЦП по линии INT ведущего.

Когда ЦП возвращает INTA, ведущий ПКП проверяет, возникло ли его собственное прерывание или от ведомого. Если прерывание от ведомого, то на шину ведущий на шину каскадирования выдает код, соответствующий входу, к которому подключен ведомый.

Рис. 6.9 Схема каскадирования контроллера прерывания.

CAS2 CAS1 CAS0  
22 (4) 21 (2) 20 (1)  
       

За исключением реакции на сигнал INTA действие всех контроллеров в системе одинаково.

IR 0 имеет самый высокий приоритет, номер типа прерывания – 8.

IR0 IR1 IR8 IR9 IR10 IR11 IR12 IR13 IR14 IR15 IR3 IR4 IR5 IR6 IR7
8 9 70h 71h 72h 73h 74h 75h 76h 77h Bh Ch Dh Eh Fh
<== предыдущая лекция | следующая лекция ==>
Комбинированный способ идентификации ВУ | Методика программирования контроллера прерываний
Поделиться с друзьями:


Дата добавления: 2014-01-07; Просмотров: 267; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.027 сек.