프로그램 가능한 인터럽트 컨트롤러

Programmable interrupt controller

컴퓨팅에서 프로그램 가능한 인터럽트 컨트롤러(PIC)마이크로프로세서(또는 CPU)가 동시에 발생할 수 있는 여러 소스(예: 외부 I/O 장치)에서 나오는 인터럽트 요청(IRQ)을 처리할 수 있도록 도와주는 집적회로다.[1]PIC가 IRQ의 상대적 우선순위를 평가한 후 CPU가 실행을 가장 적절한 인터럽트 핸들러(ISR)로 전환하도록 IRQ의 우선순위를 지정하는 데 도움이 된다.일반적인 인터럽트 우선 순위의 모드로는 하드 우선 순위, 회전 우선 순위, 계단식 우선 순위가 있다.[citation needed]PIC는 종종 구성 가능한 방법으로 출력에 대한 매핑 입력을 허용한다.PC 아키텍처에서 PIC는 일반적으로 칩셋 벤더의 표준에 의해 정의된 내부 아키텍처를 가진 사우스브리지 칩에 내장되어 있다.

공통 기능

PIC에는 일반적으로 인터럽트 요청 레지스터(IRR), 서비스 중인 레지스터(ISR), 인터럽트 마스크 레지스터(IMR) 등 공통 레지스터 세트가 있다.IRR은 어떤 인터럽트가 승인 보류 중인지 명시하며, 일반적으로 직접 접근할 수 없는 상징적인 레지스터다.ISR 레지스터는 어떤 인터럽트가 승인되었지만 여전히 인터럽트 종료를 기다리고 있는지를 지정한다.IMR은 어떤 인터럽트를 무시할지 그리고 인정하지 않을지를 지정한다.이와 같은 간단한 레지스터 스키마는 한 번에 최대 두 개의 구별되는 인터럽트 요청이 처리되도록 하고, 하나는 승인을 기다리고, 하나는 EOI를 기다릴 수 있도록 한다.

PIC에는 하드 우선순위, 특정 우선순위, 회전 우선순위 등 다수의 공통 우선순위 스키마가 있다.

인터럽트는 에지가 트리거되거나 레벨이 트리거될 수 있다.

EOI가 발행될 때 인터럽트가 완료되었음을 인정하는 여러 가지 일반적인 방법이 있다.여기에는 완료된 인터럽트 지정, 완료된 암묵적 인터럽트(일반적으로 ISR에서 보류 중인 최고 우선순위) 사용, 인터럽트 승인이 EOI로 처리되는 것이 포함된다.

잘 알려진 유형

가장 잘 알려진 PIC 중 하나인 8259Ax86 PC에 포함되어 있었다.현대에 와서, 이것은 x86 PC의 별도 칩으로서가 아니라 마더보드의 사우스브리지 칩셋의 일부로 포함되어 있다.[2]다른 경우, 더 많은 인터럽트 출력 및 더 유연한 우선 순위 스키마를 지원하는 새로운 고급 프로그램 가능 인터럽트 컨트롤러로 대체되었다.

참고 항목

추가 읽기

Intel APIC에 대한 자세한 내용은 IA-32 Intel Architecture Software Developer's Manual, Volume 3A: System Programming Guide, Part 1장 10장에서 무료로 Intel 웹 사이트에서 확인할 수 있다.

참조

  1. ^ Christopher Small and Stephen Manley. "A Revisitation of Kernel Synchronization Schemes". {{cite journal}}:Cite 저널은 필요로 한다. journal=(도움말)CS1 maint: 작성자 매개변수 사용(링크)
  2. ^ https://www.intel.com/Assets/PDF/datasheet/290562.pdf

외부 링크