스물두줄

컴퓨터시스템응용기술사 · 컴퓨터 구조 및 운영체제

시스템 버스와 버스 중재

시스템 버스는 CPU, 메모리, I/O 장치를 잇는 공유 전송 경로다. 한 번에 한 장치만 송신할 수 있으므로 누가 쓸지 정하는 규칙이 필요하다. 이 규칙이 버스 중재다. 시스템 버스는 주소, 데이터, 제어 버스의 세 묶음으로 구성된다. 주소 버스는 위치를 알려 주며…

주요 장면

  1. 0:02 시스템 버스와 버스 중재
  2. 0:17 버스 구성: 주소·데이터·제어
  3. 0:44 버스 마스터와 중재기
  4. 1:09 병렬 중재와 직렬 중재
  5. 1:42 고정 우선순위와 기아
  6. 2:06 대역폭 계산 예
  7. 2:36 정리: 공유 경로와 공정한 중재

대본

시스템 버스와 버스 중재

시스템 버스는 CPU, 메모리, I/O 장치를 잇는 공유 전송 경로다.

한 번에 한 장치만 송신할 수 있으므로 누가 쓸지 정하는 규칙이 필요하다.

이 규칙이 버스 중재다.

버스 구성: 주소·데이터·제어

시스템 버스는 주소, 데이터, 제어 버스의 세 묶음으로 구성된다.

주소 버스는 위치를 알려 주며, 선 수가 접근 가능한 최대 기억장치 용량을 정한다.

데이터 버스는 실제 데이터가 오가며, 선 수가 한 번에 전송하는 비트 수를 정한다.

제어 버스는 읽기·쓰기, 인터럽트, 버스 요청과 승인 신호를 나른다.

버스 마스터와 중재기

버스 마스터는 버스 사용을 요청하고 전송을 시작할 수 있는 장치다.

CPU와 DMA 제어기가 대표적이고, 메모리는 요청을 받기만 하는 슬레이브다.

마스터의 요청이 겹치면 중재기가 우선순위에 따라 한 마스터만 승인한다.

이것이 버스 중재다. 승인은 공정하게 배분되어야 하고, 기아는 없어야 한다.

병렬 중재와 직렬 중재

병렬 중재는 마스터마다 BREQ와 BGNT 선을 따로 둔다.

중앙집중형은 중재기 하나가 우선순위를 정하고, 분산형은 마스터마다 중재기를 둔다.

데이지 체인은 BGNT 하나가 마스터를 차례로 통과하며, 앞 마스터가 끝나야 넘어간다.

연결 순서가 곧 우선순위이므로 데이지 체인의 우선순위는 고정된다.

정책 제어와 확장성이 중요하면 병렬을, 단순성이 중요하면 직렬을 택한다.

고정 우선순위와 기아

고정 우선순위는 마스터마다 정해진 순위가 바뀌지 않는다.

상위 마스터가 요구를 계속 내면 하위 마스터는 버스를 얻지 못한다. 이것이 기아다.

가변 우선순위는 회전이나 LRU처럼 중재마다 순위를 다시 배정해 기아를 줄인다.

실제 설계에서는 두 정책을 섞어 시간 상한을 두기도 한다.

대역폭 계산 예

대역폭은 데이터 버스 폭을 바이트로 바꾼 값에 버스 클록을 곱해 구한다.

32비트는 8비트가 1바이트이므로 4바이트다. 4 × 120MHz는 480MB/s가 된다.

여기서는 1클록에 1회 전송한다고 가정한 값이다.

정리: 공유 경로와 공정한 중재

시스템 버스는 주소, 데이터, 제어 버스로 구성된 공유 경로다.

중재기는 마스터들의 요구를 우선순위에 따라 한 번에 하나씩 승인한다.

병렬은 정책 제어가 쉽고, 직렬은 회로가 가장 단순하다. 고정 우선순위는 기아를 부를 수 있다.

같은 장의 영상