Сравнивайте с английским: нажмите на абзац — оригинал откроется в окне. Кнопка EN под абзацем показывает его прямо в тексте.
Содержание
Введение
Интегральная схема, обрабатывающая прерывания.
Integrated circuit that handles interrupts
В вычислительной технике программируемый контроллер прерываний (PIC) — это интегральная схема, помогающая микропроцессору (или CPU) обрабатывать запросы на прерывание (IRQs), поступающие от различных источников (например, внешних устройств ввода-вывода), которые могут возникать одновременно. Он помогает расставлять приоритеты IRQ, чтобы CPU переключал выполнение на наиболее подходящий обработчик прерываний (ISR) после оценки PIC относительных приоритетов IRQ. Распространенные схемы приоритетов прерываний включают фиксированные приоритеты, циклические приоритеты и каскадные приоритеты. PIC часто позволяют конфигурируемо сопоставлять входы с выходами. В архитектуре ПК PIC обычно встроены в южный мост, внутренняя архитектура которого определяется стандартами, установленными производителем чипсета.
In computing, a programmable interrupt controller (PIC) is an integrated circuit that helps a microprocessor (or CPU) handle interrupt requests (IRQs) coming from multiple different sources (like external I/O devices) which may occur simultaneously. It helps prioritize IRQs so that the CPU switches execution to the most appropriate interrupt handler (ISR) after the PIC assesses the IRQs' relative priorities. Common modes of interrupt priority include hard priorities, rotating priorities, and cascading priorities. PICs often allow mapping input to outputs in a configurable way. On the PC architecture PIC are typically embedded into a southbridge chip whose internal architecture is defined by the chipset vendor's standards.
Общие черты
PIC обычно имеют общий набор регистров: регистр запросов прерываний (IRR), регистр "в обслуживании" (ISR) и регистр маски прерываний (IMR). IRR указывает, какие прерывания ожидают подтверждения, и обычно является символическим регистром, к которому нельзя получить прямой доступ. Регистр ISR указывает, какие прерывания были подтверждены, но все еще ожидают завершения прерывания (EOI). IMR указывает, какие прерывания следует игнорировать и не подтверждать. Такая простая схема регистров позволяет одновременно обрабатывать до двух различных запросов прерываний: один, ожидающий подтверждения, и один, ожидающий EOI. В PIC существует несколько распространенных схем приоритетов, включая фиксированные приоритеты, специфические приоритеты и циклические приоритеты. Прерывания могут быть задействованы по фронту или по уровню. Существует несколько распространенных способов подтверждения завершения прерывания при выдаче EOI. К ним относятся указание номера завершенного прерывания, использование неявного прерывания, которое завершилось (обычно прерывание с наивысшим приоритетом, ожидающее в ISR), и рассмотрение подтверждения прерывания как EOI.
PICs typically have a common set of registers: interrupt request register (IRR), in service register (ISR), and interrupt mask register (IMR). The IRR specifies which interrupts are pending acknowledgement, and is typically a symbolic register which can not be directly accessed. The ISR register specifies which interrupts have been acknowledged, but are still waiting for an end of interrupt (EOI). The IMR specifies which interrupts are to be ignored and not acknowledged. A simple register schema such as this allows up to two distinct interrupt requests to be outstanding at one time, one waiting for acknowledgement, and one waiting for EOI. There are a number of common priority schemas in PICs including hard priorities, specific priorities, and rotating priorities. Interrupts may be either edge triggered or level triggered. There are a number of common ways of acknowledging an interrupt has completed when an EOI is issued. These include specifying which interrupt completed, using an implied interrupt which has completed (usually the highest priority pending in the ISR), and treating interrupt acknowledgement as the EOI.
Известные типы
Один из наиболее известных PIC, 8259A, был включен в состав ПК на архитектуре x86. В современных компьютерах он не используется в виде отдельной микросхемы, а интегрирован в чипсет южного моста материнской платы. В других случаях его заменили более новые продвинутые программируемые контроллеры прерываний, поддерживающие большее количество выходных линий прерываний и более гибкие схемы приоритетов.
One of the best known PICs, the 8259A, was included in the x86 PC. In modern times, this is not included as a separate chip in an x86 PC, but rather as part of the motherboard's southbridge chipset. In other cases, it has been replaced by the newer Advanced Programmable Interrupt Controllers which support more interrupt outputs and more flexible priority schemas.