반응형
인터럽트(Interrupt) 란?
CPU가 현재 작업을 하다가도
이벤트가 발생하면 그 작업을 중단하고 해당 이벤트를 처리하도록 만드는 것
VIC(Vectored Interrupt Controller)
• ARM7, ARM9 등 구형 ARM 프로세서에서 사용하는 인터럽트 컨트롤러
• 각 인터럽트의 우선순위, 마스킹 설정 가능
• 소형, 단일코어 기반 시스템에 적합 ex. MCU
• 보통 32개의 인터럽트 소스 수
• 벡터 방식
GIC (Generic Interrupt Controller)
• GIC은 VIC을 대체한 고성능 확장형 인터럽트 컨트롤러
• ARM Cortex-A 계열(멀티코어 시스템) ex. SoC
• 수백 개 이상의 인터럽트 소스 수
• 분산 처리 방식
IRQ vs FIQ
ARM은 인터럽트 처리 방식 중에서 IRQ나 FIQ 핸들러 제공
• IRQ(interrupt Request)
• FIQ(fast interrupt Request)
🔸 FIQ는 IRQ보다 빠른 처리와 더 많은 전용 레지스터를 제공해 빠른 응답을 가능하게 한다.
🔸 하지만 동시에 사용할 수 있는 개수는 제한적이며, 특수한 경우에만 사용
IRQ, FIQ는 인터럽트 발생했다는 것만 알 수 있지
어떤 인터럽트가 어떤 하드웨어에서 발생했는지 알 수 없다.
관계 정리
① 「인터럽트」는 하드웨어 이벤트 → CPU에게 알려야 함
② 「VIC / GIC」 인터럽트 요청 받아 → CPU로 전달
③ CPU는 「IRQ / FIQ」 모드로 전환하여 인터럽트 처리
반응형
'반도체' 카테고리의 다른 글
[임베디드/펌웨어] UART (9) | 2025.07.06 |
---|---|
[임베디드] SSD 실제 저장 용량 (6) | 2025.06.23 |
주파수와 대역폭란 무엇일까? (6) | 2025.06.20 |
[반도체] Flash NAND 신뢰성이란? (34) | 2024.11.30 |
Flash NAND 내구성이란 (1) | 2024.11.29 |
댓글