주변 장치

서재·2023년 6월 12일
0

컴퓨터구조론

목록 보기
15/16
post-thumbnail

I/O 장치

주변장치라고도 부름
보조저장장치, 입출력장치 등을 포함

❌ CPU 직접 액세스 불가능, 시스템 버스와 직접 연결 불가능
⭕ 별도의 제어기를 통해 액세스(읽기/쓰기)


I/O 제어기

주요 기능

  • I/O 장치의 제어와 타이밍 조정
  • CPUI/O 장치 간의 통신
  • 오류 검출
  • 데이터 버퍼링

드라이버

I/O 장치가 어떤 역할을 하는 장치인지 알려줌

⚙️ 데이터 버퍼 레지스터

데이터 버퍼링 RAM
CPU와 주변장치의 전송률 차이 완화

⚙️ 상태 레지스터

제어 신호에 대해 동작의 준비가 되었는지

⚙️ 제어 레지스터

CPU로부터 제어 신호를 받는다

예시

CPU의 쓰기 요청
제어 레지스터쓰기 신호 발송
I/O장치상태 레지스터준비 완료 신호 발송
CPU데이터 레지스터데이터 발송


프로그램 I/O

CPU가 반복적으로 I/O 장치의 상태를 검사하며 동작을 처리

풀링 : CPU가 일정한 시간 간격을 두고 각 자원들의 상태를 주기적으로 확인하는 방식

장점

  • 간단하다
  • 별도의 하드웨어가 필요하지 않음

단점

  • CPU 시간 낭비 I/O 동작에 개입하는 동안 다른 일을 할 수 없음

인터럽트 I/O

인터럽트
↩️ 인터럽트 사이클

CPU가 I/O 장치의 상태를 항상 검사하지 않음

인터럽트 벡터

인터럽트에 대한 ISR의 주소를 저장

PIC

Programmable Interrupt Controler

하드웨어 인터럽트 처리

인터럽트 플래그 (IF)

상태 레지스터 (SR) 내부에 존재

CPU가 인터럽트를 처리할 수 있는 상태

동기 인터럽트

내부 인터럽트 예외

프로세스가 실행 중인 명령어로 발생

비동기 인터럽트

외부 인터럽트

다른 장치로부터 발생


DMA I/O

DMA

직접기억장치액세스
Direct Memory Access

CPU의 개입 없이 I/O 장치기억장치 간의 데이터를 DMA 제어기를 이용하여 직접 입출력


김종현 저, 『컴퓨터구조론』, 생능출판, 2019.

profile
입니다.

0개의 댓글