YZ ZONE

[ 컴퓨터구조 ] 1.3 시스템의 구성 본문

IT/컴퓨터구조

[ 컴퓨터구조 ] 1.3 시스템의 구성

러블리YZ 2023. 2. 4. 11:43

CPU와 기억장치의 접속]

 시스템 버스 (system bus)

 CPU와 시스템 내의 다른 요소들 사이에 정보를 교환하는 통로 (lines)

 기본 구성
주소 버스(address bus) 

데이터 버스(data bus) 

제어 버스(control bus)

 

 주소 버스 (address bus)

 CPU가 외부로 발생하는 주소 정보를 전송하는 신호 선들의 집합

 주소 선의 수는 CPU와 접속될 수 있는 최대 기억장치 용량을 결정 

[] 주소 버스의 비트 수 = 16 비트라면최대216 =64K개의기억장소들의주소지정가능

▪ 단방향성(unidirectional)

▪ 주소는 CPU로부터 기억장치 혹은 I/O 장치들로 보내지는 정보

 

 데이터 버스 (data bus)
 CPU가 기억장치 혹은 I/O 장치와의 사이에 데이터를 전송하기 위한 신호 선들의 집합
 데이터 선의 수는 CPU가 한 번에 전송할 수 있는 비트 수를 결정

[]데이터버스폭=32비트라면, CPU와기억장치간의데이터전송 은 한 번에 32 비트씩 가능

 양방향성(bidirectional) 

읽기와 쓰기 동작을 모두 지원

 

 제어 버스 (control bus)

CPU가 시스템 내의 각종 요소들의 동작을 제어하기 위한 신호 선들 의 집합

[]
기억장치 읽기/쓰기(Memory Read/Write) 신호 

I/O 읽기/쓰기(I/O Read/Write) 신호 

인터럽트(Interrupt) 신호
버스 제어(Bus Control) 신호

 양방향성(bidirectional) 

읽기와 쓰기 동작을 모두 지원

 필요한 버스 및 제어신호 

 주소 버스

 데이터 버스 

 제어 신호

기억장치 읽기(memory read) 신호, 기억장치 쓰기(memory write) 신호

 기억장치 쓰기 동작
 CPU가 데이터를 저장할 기억 장소의 주소와 저장할 데이터를 각각 주소 버스와 데이터 버스를 통하여 보내는 동시에, 쓰기 신호를 활성화

 기억장치 쓰기 시간 (memory write time)
 CPU가 주소와 데이터를 보낸 순간부터 저장이 완료될 때까지의 시간

▣ 기억장치 읽기 동

▪ CPU가 기억장치 주소를 주소 버스를 통하여 보내는 동시에읽기 신호를 활성화

▪ 일정 지연 시간이 경과한 후에 기억장치로부터 읽혀진 데이터가 데이 터 버스 상에 실리고, CPU는 그 데이터를 버스 인터페이스 회로를 통 하여 읽음

 기억장치 읽기 시간 (memory read time)

 주소를 발생한 시간부터 기억장치의 데이터가 CPU에 도착할 때까지 의 시간

[ CPU I/O 장치의 접속 ]

 필요한 버스 및 제어 신호 

 주소 버스

 데이터 버스
 제어 신호: I/O 읽기 신호, I/O 쓰기 신호

 

 접속 경로
 CPU  시스템 버스  I/O 장치 제어기  I/O 장치

I/O 장치 접속 사례: CPU-키보드&프린터

[ I/O 장치 제어기 (I/O device controller) ]

 기능
 CPU로부터 I/O 명령을 받아서, 해당 I/O 장치를 제어하고, 데이터를 이동함으로써 명령을 수행하는 전자회로 장

: 키보드 제어기, 프린터 제어기, 

 상태 레지스터
 I/O 장치의 현재 상태를 나타내는 비트들을 저장한 레지스터

 준비 상태(RDY) 비트, 데이터 전송확인(ACK) 비트, 

 데이터 레지스터

 CPU I/O 장치 간에 이동되는 데이터를 일시적으로 저장하는 레지스 터

[ 키보드의 데이터 입력 과정 ]

 키보드 제어기

 키보드의 어떤 한 키(key)를 누르면그 키에 대응되는 ASCII 코드가 키보드 제어 기의 데이터 레지스터에 저장되고, 동시에 상태 레지스터의 In_RDY 비트가 1로 세트

 CPU

1 키보드 제어기로부터 상태 레지스터의 내 용을 읽어서 In_RDY 비트가 세트 되었는지 검사(In_RDY 비트는 데이터 레지스터에 외 부로부터 데이터가 적재되었는지를 표시)

2 만약 세트 되지 않았으면, 1번을 반복하며 대기. 만약 세트 되었다면, 데이터 레지스터 의 내용을 읽음

프린터의 데이터 출력 과정 ]

 CPU

1. 프린터 제어기의 상태 레지스터의 내용을 읽어서 Out_RDY 비트 검사(Out_RDY 비트: 프린터가 출력할 준비가 되었는지를 표시)

2. 만약 세트 되지 않았으면, 1 번을 반복하며 대기
만약 세트 되었다면
, 프린트할 데이터를 프린터 제어기의 데이터 레지스터에 저장(데이터 블록 전체를 제어기 내의 데이터 기억장치에 저장하는 것도 가능: spooling)

 프린터 제어기
1. 데이터 레지스터(혹은 데이터 기억장치)의 내용을 프린터로 보내고,

2. 프린터의 하드웨어를 제어하면서 인쇄 동작 수행

 

[ CPU와 보조저장장치의 접속 ]

▣ 보조저장장치들(디스크, 플래시 메모리, SSD, CD-ROM ) 도 각 장치를 위한 제어기를 통하여 키보드나 프린터와 유사 한 방법으로 접속

 차이점: 데이터 전송 단위

 키보드: 바이트 단위 전송

 보조저장장치: 블록(512바이트) 혹은 페이지(2K, 4K 바이트) 단위로 전송

제어기내에 한블록이상을임시저장할수있는데이터기억장치(버 퍼) 필요

컴퓨터 시스템의 전체 구성 ]

[ 컴퓨터의 기본적인 기능들 ]

 프로그램 실행: CPU가 주기억장치로부터 프로그램 코드를 읽어 서 실행

 데이터 저장: 프로그램 실행 결과로서 얻어진 데이터를 주기억장 치에 저장

 데이터 이동: 디스크 혹은 SSD에 저장되어 있는 프로그램과 데이 터 블록을 기억장치로 이동

 데이터 입력/출력: 사용자가 키보드를 통하여 보내는 명령이나 데이터를 읽어 들인다. 또한 CPU가 처리한 결과값이나 기억장치 의 내용을 프린터(혹은 모니터)로 출력

 제어: 프로그램이 순서대로 실행되도록 또는 필요에 따라 실행 순서를 변경하도록 조정하며, 각종 제어 신호들을 발생