Программируемый контроллер прерываний
В этой статье есть несколько проблем. Пожалуйста, помогите улучшить его или обсудите эти проблемы на странице обсуждения . ( Узнайте, как и когда удалять эти шаблонные сообщения )
|
В вычислительной технике программируемый контроллер прерываний ( PIC ) — это интегральная схема , которая помогает микропроцессору (или ЦП ) обрабатывать запросы прерываний (IRQ), поступающие из нескольких разных источников (например, внешних устройств ввода-вывода), которые могут возникать одновременно. [1] Это помогает расставить приоритеты IRQ, так что ЦП переключает выполнение на наиболее подходящий обработчик прерываний (ISR) после того, как PIC оценит относительные приоритеты IRQ. Общие режимы приоритета прерываний включают жесткие приоритеты, ротационные приоритеты и каскадные приоритеты. [ нужна ссылка ] PIC часто позволяют настраиваемым образом сопоставлять входные данные с выходными. В архитектуре ПК PIC обычно встроен в чип южного моста , внутренняя архитектура которого определяется стандартами производителя набора микросхем.
Общие особенности
[ редактировать ]PIC обычно имеют общий набор регистров: регистр запроса прерывания (IRR), регистр работоспособности (ISR) и регистр маски прерывания (IMR). IRR указывает, какие прерывания ожидают подтверждения, и обычно представляет собой символический регистр, к которому нет прямого доступа. Регистр ISR указывает, какие прерывания были подтверждены, но все еще ожидают окончания прерывания (EOI). IMR определяет, какие прерывания следует игнорировать, а какие не подтверждать. Простая схема регистров, подобная этой, позволяет одновременно обрабатывать до двух отдельных запросов на прерывание: один ожидает подтверждения, а другой — EOI.
В PIC существует ряд общих схем приоритетов, включая жесткие приоритеты, конкретные приоритеты и чередующиеся приоритеты.
Прерывания могут запускаться либо по фронту , либо по уровню .
Существует несколько распространенных способов подтверждения завершения прерывания при выдаче EOI. К ним относятся указание того, какое прерывание завершилось, использование подразумеваемого прерывания, которое завершилось (обычно с наивысшим приоритетом, ожидающим в ISR), и обработка подтверждения прерывания как EOI.
Известные типы
[ редактировать ]Один из самых известных PIC, 8259A , был включен в состав ПК x86 . В наше время он не входит в состав ПК x86 как отдельный чип, а является частью набора микросхем южного моста материнской платы . [2] В других случаях он был заменен более новыми усовершенствованными программируемыми контроллерами прерываний , которые поддерживают больше выходов прерываний и более гибкие схемы приоритетов.
См. также
[ редактировать ]- Intel 8259 - примечательная карта от Intel
- OpenPIC и IBM MPIC
- Межпроцессорное прерывание (IPI)
- Задержка прерывания
- Немаскируемое прерывание (NMI)
- IRQL (Windows)
Дальнейшее чтение
[ редактировать ]Дополнительную информацию о Intel APIC можно найти в Руководстве разработчика программного обеспечения для архитектуры Intel IA-32, том 3A: Руководство по системному программированию, часть 1, глава 10 , которое находится в свободном доступе на веб-сайте Intel .
Ссылки
[ редактировать ]- ^ Кристофер Смолл; Стивен Мэнли. «Пересмотр схем синхронизации ядра» .
{{cite journal}}
: Для цитирования журнала требуется|journal=
( помощь ) - ^ https://www.intel.com/Assets/PDF/datasheet/290562.pdf . [ только URL-адрес PDF ]