Presentation is loading. Please wait.

Presentation is loading. Please wait.

9장 가로채기(Interrupt) Slide 1 (of 15).

Similar presentations


Presentation on theme: "9장 가로채기(Interrupt) Slide 1 (of 15)."— Presentation transcript:

1 9장 가로채기(Interrupt) Slide 1 (of 15)

2 “Interrupt”에 대해 알아보겠습니다.
학습개요 이번 시간에는... “Interrupt”에 대해 알아보겠습니다. 학 습 목 표 이장에서는 CPU의 interrupt에 대해 공부하고 interrupt의 동작과정에 대하여 공부한다. 학 습 목 차 Interrupt 개요 Interrupt의 종류 Daisy Chain Interrupt Slide 2 (of 15) 1/13

3 Interrupt 개요 Interrupt의 필요성 (1) 가로채기는 우선순위가 높은 Program을 먼저 수행하게 하는 기능
(2) CPU 기능 향상 목적 ex1) 고속 CPU와 저속 주변장치의 random processing CPU Printer 10ms 10ms 고속 저속 idel time idel time 한 개 문자를 프린터로 출력하기 위해 프린터가 CPU로 Interrupt를 요구한다. Main program 수행 CPU가1개 문자를Printer로 출력하는 시간(수uS) Printer가한 개 문자를 print하는 시간(ms) CPU는 프린터로 한 개 문자를 출력 (INT 처리 program) Slide 3 (of 15)

4 Interrupt 개요 Interrupt의 필요성 ex2) 일정한 시간 간격으로 처리해야 할 program (시계)
Main program 매초마다 INT 발생 시계를 1초씩 증가 시키는 Interrupt service routine ex3) 정전 시 Data 피신 기능 정상전원 정전 시 전압이 90%이하가 되면 Data를 피신시키는 INT routine 수행 Slide 4 (of 15)

5 Interrupt 개요 Interrupt의 필요성 ex4) 순차 다중 제어(Hotel 난방 제어) CPU 001 002 003
010 011 126개 INT service routine 021 111 126 Memory 1대의 Microprocessor로 INT를 이용하여 제어를 할 경우 최대 126개의 독립적인 제어가 가능하다. Slide 5 (of 15)

6 Interrupt 개요 INTERRUPT 정의
- 현재 수행중인 program보다 우선순위가 높은 program을 Interrupt에 의해 우선적으로 실행 시켜 주는 기능 Interrupt 처리 방법 INTERRUP 요구 신호 Main program Interrupt sub program Interrupt service routine Main program 가로채기 종류(Type of Interrupt) Internal interrupt : CPU의 내부적으로 발생하는 가로채기 방식 External interrupt : CPU의 외부에서 가로채기를 요구하는 방식 Software interrupt : 소프트웨어 적으로 명령어에 의해 가로채기를 발생하는 방식 Slide 6 (of 15)

7 Interrupt 개요 가로채기 방식 단일회선 인터럽트 다중회선 인터럽트 혼합회선 인터럽트 Slide 7 (of 15)

8 Interrupt 개요 Interrupt 의 처리 순서
① 주변장치에서 CPU로 INT 요구(Interrupt request signal) CPU /INT 주변장치 가로채기 요구신호 ② CPU는 현재 실행하던 명령어를 끝내고 현재 PC내용을 스텍 포인터로 피신시킨 다음 주변장치로 INT확인신호(Interrupt acknowledge signal)출력 CPU /INT 주변장치 Memory Stack 영역 /ACK PC 가로채기 확인 신호 PC SP Slide 8 (of 15)

9 Interrupt 개요 Interrupt 의 처리 순서
③ 주변장치로부터 가로체기 service routine 시작번지를 PC에 Load 하여 가로채기 프로그램을 실행한다 Memory CPU D0- D7 INT 시작번지 주변장치 INT 시작번지 INT service routine RETURN PC PC SP ④ 가로채기 프로그램을 실행한 후 RETURN명령어를 만나면 스텍 포인터에 피신 되었던 PC 내용을 복구하여 다시 main 프로그램을 계속 실행한다. Memory CPU D0- D7 INT 시작번지 주변장치 INT 시작번지 INT service routine RETURN PC PC SP Slide 9 (of 15)

10 Interrupt 개요 Interrupt 의 처리 순서 Ex) INT 처리 예
① 주변장치에서 CPU로 INT 요구(Interrupt request signal) Memory OP_code 2000H 2001H 2002H 2003H 3EH 56H 2AH CPU 가로채기 요구 PC 2002H Operand SP 2FFEH 2FFFH 3000H 3000H Stack 영역 /INT 가로채기 요구 4000H 4001H 4002H 4003H INT program 주변장치 3EH 00H RETURN Slide 10 (of 15)

11 Interrupt 개요 Interrupt 의 처리 순서
② 현재 실행하던 명령어를 끝까지 수행하고 PC내용을 SP로 피신한 다음 가로체기 확인 신호를 주변장치로 전송한다. Memory OP_code 2000H 2001H 2002H 2003H 3EH 56H 2AH CPU Operand PC 현재 PC 내용 2002H SP 현재 PC 내용 피신 2FFEH 2FFFH 3000H 2FFEH 02 20 Stack 영역 /INT 가로채기 확인 4000H 4001H 4002H 4003H 3EH 00H RETURN INT program 주변장치 Slide 11 (of 15)

12 Interrupt 개요 Interrupt 의 처리 순서
③ 현재 실행하던 명령어를 끝까지 수행하고 PC내용을 SP로 피신한 다음 가로체기 확인 신호를 주변장치로 전송한다. Memory OP_code 2000H 2001H 2002H 2003H 3EH 56H 2AH CPU Operand PC 4000H SP 2FFEH 2FFFH 3000H 2FFEH 02 20 Stack 영역 INT프로그램 실행 현재 PC 내용 /INT INT프로그램 시작번지 전송(4000H) 가로채기 확인 4000H 4001H 4002H 4003H 3EH 00H RETURN INT program 주변장치 Slide 12 (of 15)

13 Interrupt 개요 Interrupt 의 처리 순서
④ 가로채기 프로그램 끝에는 반드시 RETURN 명령어가 있다. RETURN명령어를 만나면 SP에 피신되어 있던 PC의 내용을 복구하여 메인 프로그램을 실행한다. Memory OP_code 2000H 2001H 2002H 2003H 3EH 56H 2AH CPU Operand 메인 프로그램 실행 PC 2002H SP 2FFEH 2FFFH 3000H 3000H PC 복구 Stack 영역 현재 PC 내용 /INT SP 복구 4000H 4001H 4002H 4003H 3EH 00H RETURN INT program 주변장치 Slide 13 (of 15)

14 CPU의 PC 및 Register를 Stack에 피신
Interrupt 개요 Interrupt 의 처리 순서 요약 Interrupt 처리 순서 요약 주변장치에서 INT요구 1 Main Program 실행 6 5 Main Program 복귀 RETURN명령에 의해 CPU register복구 2 3 4 INT처리루틴 수행 CPU의 PC 및 Register를 Stack에 피신 Slide 14 (of 15)

15 Interrupt 개요 Interrupt 처리 루틴 구조 PC 가 지동으로 SP에 피신 INT 프로그램 START
PUSH AF : Stack에 A,F 레지스터 피신 PUSH BC : Stack에 B,C 레지스터 피신 PUSH DE : Stack에 D,E 레지스터 피신 PUSH HL : Stack에 H,L 레지스터 피신 Interrupt 처리Program POP HL : Stack에 H,L 레지스터 복구 POP DE : Stack에 D,E 레지스터 복구 POP BC : Stack에 B,C 레지스터 복구 POP AF : Stack에 A,F 레지스터 복구 EI : Enable Interrupt PC 가 지동으로 SP에 복구 RETURN Slide 15 (of 15)


Download ppt "9장 가로채기(Interrupt) Slide 1 (of 15)."

Similar presentations


Ads by Google