서강대학교 마이크로프로세서 7주차 실험
- 최초 등록일
- 2021.06.30
- 최종 저작일
- 2021.05
- 26페이지/ 한컴오피스
- 가격 3,000원
* 본 문서(hwp)가 작성된 한글 프로그램 버전보다 낮은 한글 프로그램에서 열람할 경우 문서가 올바르게 표시되지 않을 수 있습니다.
이 경우에는 최신패치가 되어 있는 2010 이상 버전이나 한글뷰어에서 확인해 주시기 바랍니다.
소개글
"서강대학교 마이크로프로세서 7주차 실험"에 대한 내용입니다.
목차
1. 실험 제목
2. 실험 목적
3. 실험 이론
4. 실험 결과 및 분석
5. 토의
6. 검토사항
7. 참고 문헌
본문내용
1. 실험 제목
Interrupts and exceptions
2. 실험 목적
● 인터럽트의 동작 원리를 전체적으로 이해한다.
● Vector table의 구성과 역할에 대해 이해한다.
● 발생한 인터럽트를 처리하는 과정에서 프로세서가 stack을 어떻게 사용하는지 이해한다.
● 외부 소자로부터 입력되는 신호를 이용한 인터럽트 발생을 위해 사용하는 레지스터들의 종류 및 역할을 이해한다.
3. 실험 이론
1. 인터럽트 개요
인터럽트는 예기치 않은 시점에서 발생하는 사건 및 예외적인 상황을 처리하는 기법/체계를 말한다. 이러한 인터럽트 기능을 통해 시스템의 성능 효용성을 최대화할 수 있게 된다. main 프로그램에서 어떤 명령어 수행 중 인터럽트가 발생하면, 프로세서는 수행하던 명령어의 수행을 마친 후 해당 인터럽트 처리를 위해 interrupt service routine(ISR)로 이동한다. 그 처리를 마친 후 인터럽트가 발생할 당시 수행했던 명령어의 바로 다음 명령어로 복귀하게 된다. 복귀 후 원래 프로그램에서 ISR의 수행에 영향을 받지 않고 연속적으로 동작할 수 있게 된다. 인터럽트와 관련된 명령어들은 다음과 같다.
Instruction
Description
BX
Branch indirect
CPSID
Change processor state, disable interrupts
CPSIE
Change processor state, enable interrupts
DMB
Data memory barrier
DSB
Data synchronization barrier
ISB
Instruction synchronization barrier
LDM
Load multiple registers, increase after
LDMDB, LDMEA
Load multiple registers, decrement before
LDMFD, LDMIA
Load multiple registers, increase after
MRS
Move from special register to general register
MSR
Move from general register to special register
POP
Pop registers from stack
PUSH
Push registers onto stack
STM
Store multiple registers, increase after
STMDB, STMEA
Store multiple registers, decrement before
STMFD, STMIA
Store multiple registers, increase after
SVC
Supervisor cell
WFE
Wait for event
WFI
Wait for interrupt
참고 자료
http://www.keil.com/support, Armv7-M Architecture Reference Manual
- 각종 명령어 기능에 관한 정보
http://www.jkelec.co.kr/img/lecture/arm_arch/arm_arch_4.html
- 각종 명령어 기능 보조자료
https://potatoggg.tistory.com/53
- LED 켜기 실험 관련 참고자료