inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

시스템 소프트웨어 개발을 위한 Arm 아키텍처의 구조와 원리 - 2부 저자 직강 (2024년 버전)

IRQ, FIQ 인터럽트 익셉션 실행 흐름

익셉션 벡터 베이스 주소 질문

335

토끼야놀자

작성한 질문수 20

0

07:20 시각의 강의에서 "익셉션 벡터 베이스 주소" 라는것은 각 레벨별 베이스 주소가 맞는지 문의드립니다. 예를 들어서 다음과 같은지 문의드립니다.

EL1에서 IRQ 인터럽트 익셉션 발생: VBAR_EL1 + 0x280

EL0(Aarch64)에서 IRQ익셉션 발생: VBAR_EL0 + 0x480

EL0(Aarch32)에서 IRQ익셉션 발생: VBAR_EL0 + 0x680

임베디드 arm-architecture 하드웨어-해킹 cpu-architecture armv7 armv8 cortex-a

답변 1

0

김동현 (Austin Kim)

아래와 같이 답변드리니 참고 부탁드립니다.

 

1. EL1에서 IRQ 인터럽트 익셉션 발생:

'VBAR_EL1 + 0x280' 기준 주소로 프로그램 카운터가 업데이트됩니다.

 

2. EL0(Aarch64)에서 IRQ익셉션 발생:

'VBAR_EL0 + 0x480'으로 업데이트되지 않습니다.

(VBAR_EL0은 존재하지 않는 시스템 레지스터입니다.)

 

EL0에서 EL1으로 익셉션 레벨이 스위칭되면서,

'VBAR_EL1 + 0x480' 기준 주소로 프로그램 카운터가 업데이트됩니다.

 

3. EL0(Aarch32)에서 IRQ익셉션 발생:

'VBAR_EL0 + 0x680'으로 업데이트되지 않습니다.

(VBAR_EL0은 존재하지 않는 시스템 레지스터입니다.)

 

EL0에서 EL1으로 익셉션 레벨이 스위칭되면서,

'VBAR_EL1 + 0x680' 기준 주소로 프로그램 카운터가 업데이트됩니다.

 

감사합니다.

0

토끼야놀자

답변 감사합니다.

PCB 레이아웃 질문

0

20

2

독학용 PDF 관련 질문

0

26

2

LPDDR4 과제 Rank/Channel 질문

0

29

1

수업관련

0

27

1

벅 컨버터 스위치 off 상태일 때 흐름

0

36

2

PCB 발주

0

36

1

스택에 PUSH되는 PC 값

0

69

2

스택공간에 데이터를 저장할 떄

0

128

2

LDM

0

90

1

TRACE32 debugging

0

109

1

interrupt service

0

92

2

vbar register

0

67

1

vbar register

0

67

2

System call register

0

84

2

GIC programmer model

0

114

1

exception handler code

0

101

2

arm mode

0

126

2

exception vector table

0

84

1

exception 문제

0

94

1

exception handler 구현

0

108

2

Exception Level 설정 관련 질문

0

143

2

Current EL 관련 질문

1

190

1

강의자료 요청

0

298

2

LDP 명령어 사용예시

0

506

2