본문 바로가기
컴퓨터공학기초 개념/컴퓨터구조

25. 입출력 구조 - 시스템 BUS

by devraphy 2021. 8. 26.

0. 시작하기 전에

- BUS에 대해서 배우기 전에, CPU에 어떤 레지스터와 처리장치들이 있는지 다시한번 복습하길 바란다.

- BUS는 기억장치와 CPU간의 소통을 위한 것이기 때문이다. 

- CPU에 대해 알고 싶다면, 아래의 링크를 참고하자. 

 

https://devraphy.tistory.com/298

 

14. CPU 내부구조 - 레지스터

0. 시작하면서 - 이전 포스팅까지 논리회로에 대해서 배웠다. - 그리고 플립플롭이 여러개 모이면 레지스터라는 것을 알게 되었다. - 이번 포스팅에서는 레지스터간의 연결 방식과 동작방식에 대

devraphy.tistory.com


1. 시스템 BUS란 무엇인가? 

- BUS란 컴퓨터 내부의 기억장치와 중앙처리장치(CPU) 간의 소통을 위해 연결된 회로를 말한다.

- 시스템 BUS는 다음과 같이 분류된다. 

▶ 주소버스(Address BUS)

▶ 데이터버스(Data BUS)

▶ 제어버스(Control BUS)


2. 주소 버스(Address BUS)

a) 주소 버스의 역할

- PC에서 어떤 메모리 주소의 데이터를 MAR에게 요청한다.

- MAR은 해당 메모리 주소의 데이터를 주기억장치에게 전달한다. 

- 이 과정에서 MAR에서 메모리 주소값을 주기억장치에게 전달하는 것이 주소 버스의 역할이다. 

- 전달만 하면 주소버스의 역할은 끝나기 때문에, 주소 버스는 단방향 통신이다. 

 

 

b) 주소 버스의 회선 수 계산

- 주기억장치의 용량에 따라 주소버스의 수가 정해진다. 그이유는 다음과 같다. 

- 주소버스는 주소를 표현하여 주기억장치에게 전달하는 역할을 한다.

- 즉, 주소버스는 메모리 주소값을 표현할 수 있을 만큼의 개수를 필요로 한다. 


3. 데이터 버스(Data BUS)

a) 데이터 버스의 역할

- 주소버스를 통해 주기억장치는 MAR로부터 메모리 주소값을 전달받는다. 

- 해당 메모리 주소에 있는 데이터를 MBR에게 전달한다. 

- 이 과정에서 주기억장치로부터 MBR에게 데이터를 전달하는 것이 데이터 버스의 역할이다.   

- 데이터 버스는 MBR에게 전달만 하는 역할이기에, 단방향 통신이다. 

 

b) 데이터 버스의 계산

- 데이터 버스는 주기억장치로부터 MBR에게 데이터를 전달하는 역할이다. 

- 주기억장치에서 레지스터로 한번에 전달할 수 있는 데이터 또는 명령어의 크기를 word라는 것을 이전에 배웠다. 

- 그러므로 데이터 버스는 word의 크기를 갖는다.

 

- 워드의 크기는 CPU가 한번에 처리할 수 있는 데이터의 수를 의미하므로, 

- 32bit CPU라면, 워드의 크기는 32bit, 데이터 버스의 크기는 32bit가 된다.

- 64bit CPU라면, 워드의 크기는 64bit, 데이터 버스의 크기는 64bit가 된다.


4. 제어버스(Control BUS)

a) 제어버스의 역할

- 제어버스는 CPU에서 입출력 장치에게 동작을 지시하기 위해 보내는 제어신호를 전달하는 역할이다.

- CPU로 부터 발생한 제어신호를 입출력에게 전달하는 역할이므로 단방향 통신이다.  

 

댓글