System Bus
-CPU와 시스템 내의 다른 요소들 사이에 정보를 교환하는 통로
-Address bus(단 방향성)
-CPU가 외부로 발생하는 주소 정보를 전송하는 신호 선들의 집합
-주소 선의 개수는 CPU와 접속될 수 있는 최대 기억장치 용량을 결정해 준다
-주소 버스의 폭(width): CPU가 발생하는 주소 비트들의 수
-Data Bus(양 방향성)
-CPU가 기억장치 혹은 I/O 장치와의 사이에 데이터를 전송하기 위한 신호 선들의 집합
-데이터 버스의 폭: 한 번에 전송될 수 있는 데이터 비트의 수
-Control Bus
-CPU가 시스템 내의 각종 요소들의 동작을 제어하는데 필요한 신호 선들의 집합
-제어 신호 선들의 수는 CPU에 따라, 혹은 시스템 구성에 따라 달라진다.
Access
-CPU가 데이터를 기억장치의 특정 장소에 저장하거나 이미 저장되어 있는 내용을 읽는 동작
CPU가 특정 기억 장소로 부터 데이터를 읽을 때 ~> '주소' & '읽기 신호'
데이터를 저장하려는 경우 ~> '주소' & '데이터, 쓰기 신호'
~>CPU는 데이터를 저장할 기억 장소의 주소와 저장할 데이터를 각각 주소 버스와 데이터 버스를 통해 보내면서 동시에 쓰기 신호를 활성화 시킨다.
CPU와 I/O 장치의 접속
-CPU가 직접 제어하거나 액세스는 하지 못하고 I/O 장치들과 마찬가지로 별도의 인터페이스 회로 또는 제어기를 통해야 하기 떄문에 I/O장치들과 같은 방법으로 CPU와 접속되어야 한다
-키보드
1.키보드가 눌려진다
2.데이터가 키보드 제어기로 전송된다
3.데이터 레지스터(=데이터 버퍼)에 저장되고, 동시에 상태 레지스터의 지정된 비트가 세트된다(여기서는 1로 되어야함)
4.이 1로 되는비트를 In_RDY라 하고, 해당 비트가 세트되어 있는지를 검사한다.
5.세트 되어있으면 데이터 레지스터의 내용을 CPU로 읽어들임으로써 데이터 입력과정이 완료된다.
5.세트 안되어있으면 상태 레지스터의 내용을 읽고 검사하는 동작을 반복하며 기다린다.
~>반복 검사 과정은 In_RDY 비트가 세트될 때까지, 즉 키가 눌러져서 데이터가 들어올 때까지 계속됨.
-프린트기의 경우 (Out_RDY)로 이름만 바꿔주고 과정은 똑같음
~>최근에는 버퍼의 용량을 대폭 늘려서 프린트할 데이터 파일 전체를 미리 이동시킬 수 있도록 해서, 프린트 동작에 대한 CPU의 개입을 줄여주고 있다.
*CPU는 시스템에 접속되어 있는 I/O 장치들을 직접 제어하지는 않지만, 각 장치의 제어기가 수행할 동작을 지정하는 명령을 보내거나 상태 정보와 데이터를 주고 받을 수 있어야 한다. 이를 위해서 CPU는 각 I/O 장치의 제어기를 구분하고 정보를 주고 받을 수 있어야 한다.
~> 이 방법은 각 제어기 내에 '상태 레지스터'와 '데이터 레지스터'를 각각 한 단어 길이의 기억장치로 간주하고, 주소를 한 개 씩 배정하는 것.
~>CPU가 제어기 내부 레지스터들의 주소를 이용해 해당 I/O 장치를 제어할 수 있게 된다.
'과거의 컴퓨터 공부 > Computer Architecture' 카테고리의 다른 글
(3)CPU 구조 (0) | 2014.04.09 |
---|---|
(1)개요 (0) | 2014.04.04 |