← Interrupt 상세 목차DUJINLABS.COM

Hardware · Interrupt detailed manual 06 · Linux v6.18.37

6. APLIC wired source와 IMSIC MSI interrupt file을 구분한다

AIA 시스템에서는 APLIC이 wired source를 직접 hart line으로 전달하거나 MSI로 변환해 IMSIC에 보낼 수 있습니다. IMSIC은 hart별 interrupt file의 pending/enable과 top external interrupt를 관리합니다.

상세 표
2
검증 행
14
절차
4 checkpoints
기준
RISC-V PLIC · AIA · Linux v6.18.37

CHAPTER 06

6. APLIC wired source와 IMSIC MSI interrupt file을 구분한다

AIA 시스템에서는 APLIC이 wired source를 직접 hart line으로 전달하거나 MSI로 변환해 IMSIC에 보낼 수 있습니다. IMSIC은 hart별 interrupt file의 pending/enable과 top external interrupt를 관리합니다.

APLIC domain

sourcecfg, target, enable/pending과 delivery mode를 privilege domain별로 관리합니다.

direct mode

APLIC이 hart external interrupt를 직접 신호하고 claimi로 ID를 제공합니다.

MSI mode

APLIC이 wired source를 MSI address/data write로 변환해 IMSIC에 전달합니다.

IMSIC

hart/privilege/guest별 interrupt file이 EIP/EIE와 top-of-pending CSR를 가집니다.

레지스터·번호·소유권 대조

항목소유자값의 의미정상 증거오류 해석
APLIC domaincfgAPLIC domainenable와 direct/MSI modefirmware 설계와 일치delivery mode 혼동
sourcecfg/targetAPLICedge/level/delegation과 hart/EIIDsource wiring과 일치polarity/target 오류
setienum/setipnumAPLICenable/pending 번호 접근source별 상태 일치번호 0/상한 오류
IMSIC eidelivery/eithresholdinterrupt fileglobal delivery/thresholdEIID 전달 가능file 차단
IMSIC eip/eie/topeiinterrupt filepending/enable/top EIIDMSI data와 EIID 일치잘못된 file/guest

실패 경계 판정

증상직전 통과우선 확인반증 시험판정
APLIC pending, MSI write 없음wired source 수신domain mode/targetgenmsi와 target address 확인APLIC 변환
MSI write, IMSIC pending 없음bus transaction 성공interrupt file 주소/datasoftware MSI writeIMSIC 입력
IMSIC pending, trap 없음EIP setEIE/delivery/threshold/CSREIID enable과 sie 확인hart delivery
direct와 MSI driver 충돌hardware 동작 일부domaincfg와 Linux 선택firmware node/compatible 검토mode 기술
guest로 잘못 전달host IMSIC 정상guest index와 IOMMU MSI translationhost/guest file address 비교virtualization routing
그림 1. 6. APLIC wired source와 IMSIC MSI interrupt file을 구분한다의 실행 순서왼쪽에서 오른쪽으로 실제 소유권과 관찰 지점이 이동합니다.
01 wired source
02 APLIC sourcecfg
03 target
04 MSI write
05 IMSIC interrupt file
06 EIP/EIE
07 topei
08 trap/irqdomain

실제 검증 절차

순서실행남길 증거판정 목적
1APLIC mode와 source target을 raw로 저장합니다.source→hart/EIID map설정 확인
2MSI bus address/data와 IMSIC file base를 대조합니다.message ledger입력 검증
3EIP/EIE/topei를 사건 전후 capture합니다.interrupt file 상태delivery 확인
4wired source와 software MSI를 각각 주입합니다.APLIC/IMSIC 경계 분할원인 격리

주의PLIC register 의미를 APLIC/IMSIC에 그대로 적용하지 않습니다. AIA는 번호, privilege와 delivery 구조가 다릅니다.

공개적으로 다시 확인할 수 있는 자료

공개되지 않은 vendor register나 integration별 offset을 추측해서 채우지 않았습니다. 아래 제조사 자료, architecture 문서와 Linux v6.18.37 원본에서 다시 확인할 수 있는 범위만 사용했습니다.