[계산기 구조] 22.입출력 장치

이번에는 정보처리기사 필기 과목인 전자계산기 구조의 입출력 장치를 살펴보아요.

입출력 장치
키보드나 마우스처럼 프로그램에 자료를 전송하는 장치를 입렬 장치라고 말합니다.
프린터나 모니터처럼 프로그램의 자료를 수신하는 장치를 출력 장치라고 말합니다.

입출력 인터페이스
CPU나 메모리와 입출력 장치 사이에 자료 전송과 수신을 원활하게 수행하기 위한 장치
장치마다 속도, 전압 레벨, 전송 사이클 길이의 차이가 있어서 입출력 인터페이스가 필요합니다.

I/O 버스
데이터 전송로

I/O 제어기
DMA(Direct Memory Access) 제어기, 채널 제어기 등이 있습니다.
제어 신호의 논리적, 물리적 변환과 오류를 제어합니다.
데이터 버퍼링을 통해 장치 간의 속도 차를 조절합니다.

입출력 흐름과 장치 구성

스트로브 펄스(Strobe Pulse)
수신하는 장치에서 스트로브 펄스를 발생하여 송신부에게 데이터 전송을 요청합니다.
CPU와 메모리 사이에서 주로 사용하며 송신장치는 데이터 수신 여부를 알 수 없다는 단점이 있습니다.
한 개의 제어선을 사용하여 제어 신호인 스트로브 펄스를 전달합니다.

핸드셰이킹(Handshaking)
입출력 준비(RDY), 완료(ADK) 신호를 사용합니다.
2~3개의 제어선을 사용하며 송신자가 전송을 개시할 수도 있고 수신자가 수신을 개시할 수도 있습니다.

스풀링(Spooling)
송수신할 자료를 디스크에 모았다가 한꺼번에 보내가나 받는 방식입니다.
디스크를 커다란 버퍼처럼 FIFO(큐)방식으로 사용합니다.