사망년/컴퓨터구조

버스 중재 방식

stop-zero 2023. 12. 5. 02:58

병렬식

고정 우선 순위

중앙 집중식

우선순위 중재 방식에서는 모든 버스 마스터가 하나의 버스 중재기에 접속하고, 중재기에 따라 우선순위가 부여된다. 가장 높은 우선순위를 가진 마스터는 버스 사용 가능 신호(BGNT)를 받을 수 있다. 중재기는 한 번에 하나의 버스 마스터에게만 버스 사용 권한을 부여하여, 버스 사용이 가능한 상태일 때 즉시 버스를 사용할 수 있도록 한다. 버스 사용이 끝날 때까지는 다른 마스터가 대기해야 한다. 버스 사용이 끝나면 BBUSY 신호가 해제되어 다른 마스터가 버스 사용을 요청할 수 있다.
+ BBUSY : 버스가 사용 중임을 알리는 신호
 

분산식 고정 - 우선순위 중재 방식

우선순위 중재 방식에서는 각 버스 마스터가 자신만의 중재기를 보유하고 있다. 이 중재기는 해당 마스터보다 높은 우선순위를 가진 마스터들의 버스 요구 신호를 받아서 검사하고, 해당 마스터가 버스 사용을 요청하지 않았을 때만 자신의 버스 마스터에게 버스 사용을 승인하는 방식이다. 승인된 마스터는 BBUSY 신호를 확인하여 다른 마스터가 버스를 사용하지 않는 상태일 때 버스를 사용하기 시작한다. 이러한 방식은 각 마스터가 독립적으로 버스 접근을 관리하면서도 우선순위를 지키며 중재가 이루어지는 방식이다.
 
장점 

  • 동작 속도 향상 : 중재 회로가 단순하므로 시스템의 동작 속도가 빨라진다. 이는 중앙 집중식에 비해 처리 속도가 우수하다는 것을 의미한다. 

 
단점

  • 고장 진단의 복잡성 : 고장을 일으킨 중재기를 찾아내는 방법이 복잡하다. 여러 개의 중재기가 시스템에 존재하는 경우, 어떤 중재기가 문제를 일으켰는지 식별하기 여렵다. 
  • 전체 시스템 영향 : 특정 중재기의 고장이 전체 시스템의 동작에 영향을 미칠 수 있다 이는 시스템 전체의 안정성을 해칠 수 있는 가능성을 내포한다.

 

가변 우선 순위

가변 우선순위 방식은 시스템의 상태나 조건에 따라 각 버스 마스터들의 우선순위를 지속적으로 변화시키는 방식이다.
장점

  • 공정한 사용: 모든 마스터들이 공정하게 버스를 사용할 수 있도록 한다. 시스템의 상태에 따라 우선 순위가 동적으로 조정되므로, 각 마스터가 공평하게 리소스를 사용할 수 있다.

단점

  • 중재 회로 복잡성 : 가변 우선순위 방식은 중재 회로를 조정하고 관리하는 데에 복잡성을 동반할 수 있다. 시스템의 상태에 따라 우선순위를 지속적으로 변화시키기 위해서는 회로나 알고리즘이 복잡해질 수 있다. 

 

회전 우선 순위

최전 우선순위 방식은 버스 사용 권한이 승인된 마스터들 간에 우선순위를 계속해서 회전시키는 방식이다. Acceptance-Dependent식 회전 우선순위 방식을 예로 들자면

  1. 최하위 우선순위 할당 : 먼저 버스 사용 권한을 얻은 마스터는 가장 낮은 우선순위를 갖는다.
  2. 다음 우선순위 부여: 이후에 버스 사용을 요청한 다른 마스터들은 순차적으로 그 다음 최상위 우선순위를 얻게 된다. 즉, 요청이 승인되면 그 마스터는 다음 순서의 우선순위를 얻게 된다.
  3. 회전: 마스터6의 요구가 승인된 이후에 마스터6은 현재 최하위 우선순위를 갖는다. 마스터6은 다음으로 버스를 요청한 마스터가 다음 최상위 우선순위를 얻게 된다.  

 

동등 우선 순위

  • 동등 우선 순위 : 모든 마스터가 동등한 권한을 갖는다. 
  • FIFO 알고리즘 사용: 요청된 순서대로 버스 사용권한을 부여한다. 

 

최소 최근 사용

  • 사용 기록 추적: 시스템은 각 마스터가 버스 사용을 요청하거나 사용한 시간을 추적한다.
  • 오랫동안 사용 요구를 보내지 않은 순서대로 우선순위 부여: 최근에 사용 요굴르 보내지 않은 마스터에게 더 높은 우선 순윌르 할당한다.
  • 최상위 순서 할당: 따라서 오랫동안 사용 요굴르 보내지 않은 순서대로 마스터들에게 최상위 순설르 할당하여, 이들이 다음에 버슬르 요청할 때 더 높은 우선순위를 가지도록 한다. 

 

직렬식

중앙 집중식 직렬 중재 방식

  • 중앙 집중식 구조
    • 하나의 중재 신호선(Bus Grant, BGNT)이 데이지-체인(Daisy-Chain)형태로 모든 버스 마스터들을 직렬로 연결하여 우선순위를 결정하는 방식이다. 
  • 데이지-체인 형태
    • 데이지 체인(Daisy-Chain)구조는 연속적으로 연결되어 있는 하드웨어 장치들의 구성을 지칭한다. 예를 들어 장치 A가 B에 연결되고, B가 다시 C에 연결되어 있는 방식이다. 이 구조는 마스터 간의 연결을 일련의 연결된 순서로 형성함으로써 버스 승인 신호선을 통해 우선순위를 정하게 된다. 

 
동작방식

  1. 여러 마스터로부터 요청 신호 수신 : 요청, 승인 신호 모두 1개씩 신호 수신
  2. 순차적인 중재: 마스터들의 번호(주소)에 따라 순차적으로 중재 진행한다.
  3. 승인(Grant) 신호 전송: 중재기는 번호 순서에 따라 각 마스터에게 승인 신호를 전송한다.
  4. 버스 사용 권한 부여: 승인 신홀르 받은 마스터는 자신의 차례가 되었을 때 버스를 사용할 수 있다. 

 

분산식 직렬 중재 방식

데이지-체인 구조의 연결: 여러 개의 버스 중재기가 데이지-체인 구조로 연결된다. 이 구조는 하나의 버스 승인 신호(DBGNT)가 마스터들을 순환하는 형태를 가진다.
버스 승인 신호의 전달: DBGNT는 연결된 각 버스 중재기에 따라 순환되며, 각 중재기에 도착할 때마다 우선순위 부여한다.
마스터에게 승인 신호 전송: 각 중재기에 도착한 DBGNT는 해당 중재기에 연결된 마스터에게 승인 신호를 전송한다.
버스 사용 권한 부여: 승인 신호를 받은 마스터는 자신의 차례가 되었을 때 버스를 사용할 수 있다. 
 
DBGNT신호는 우측에 연결된 마스터의 중재기로 전송된다. 만약 해당 마스터가 버스 사용을 요청하고 기다리고 있는 상태라면, 중재기는 즉시 DBGNT신호를 받아 BGNT신호를 받아 BGNT신호를 발생시켜 마스터에게 전송한다. 그러나 DBGNT신호를 받은 마스터가 이미 버스 사용을 요구하지 않은 상태라면, 이를 다시 버스를 요청한 마스터에게 전달하기 위해 반복적으로 다음 마스터로 DBGNT 신호를 전달한다. 
 

폴링식

하드웨어 방식

버스 중재를 수행하기위해 중재기와 각 마스터 간에 별도의 폴링선(Polling Line)이 존재한다.
 

  1. 폴링선과 중재 동작 하드웨어 구현: 버스 중재기와 각 마스터 간에 폴링선이 존재하며, 중재 동작과 폴링 순서가 중재기 내부의 하드웨어로 구현되어 있다.
  2. BREQ 및 BBUSY 신호: 공통 BREQ선과 BBUSY선 각각 한 개씩 존재한다. BREQ는 마스터들이 버스 사용을 요청하는 데 사용되고, BBUSY는 버스가 사용 중인지 여부를 나타낸다.
  3. 폴링 주소 발생 및 검사 : 중재기는 폴링 주소를 발생시켜 특정 마스터를 지정하고, 그 마스터에게 버스 사용을 원하는지 확인한다.
  4. BREQ 신호 결정 : 지정된 마스터가 버스 사용을 원하면 BREQ 신호를 세트한다.
  5. 버스 사용하기 : 중재기는 BREQ신호가 설정되면 해당 마스터에게 버스 사용을 허가하고, 그렇지 않으면 (마스터가 버스 사용을 원하지 않으면) 다음 마스터들에 대한 폴링 검사를 순서대로 진행한다.
  6. 마스터들에 대한 폴링 검사 순서 : 폴링 검사 순선느 중재기가 정하는 것으로, 마스터들이 폴링선에 연결된 순서에 따라 결정된다. 

 

소프트웨어 방식

폴링의 순서와 과정을 버스 중재기 내의 프로세서가 관리하고조절하는 방식이다. 이는 중재 동작이 하드웨어로 직접 구현되는 것이 아니라 소프투에어 프로그램을 통해 수행된다.

  • 프로그램 제어: 버스 중재기 내에 있는 프로세서(소프트웨어)가 폴링의 순서와 과정으 제어한다. 이 프로세서는 버스 마스터드렝게 폴링 순서를 지정하고, 버스 사용 권한을 부여하거나 거부하는 등의 동작을 수행한다.
  • 폴링 순서 변경: 소프트웨어를 통해 우선순위(폴링 순서)를 변경하기 쉽다. 프로그램의 수정을 통해 중재 방식을 조정하는 것이 가능함. 

 
장점 
우선순위 변경 용이 : 소프트웨어 프로그램을 통해 우선순위(폴링 순서)를 쉽게 변경할 수 있다. (=프로그램의 수정을 통해 중재 방식을 조정하는 것이 가능함)
단점
속도 저하 : 프로그램을 실행하기에 하드웨어 방식에 비해 속도가 느릴 수 있다. 소프트웨어의 실행 속도와 관련 있으며 이로 인해 리소스 중재에 소요되는 시간이 더 오래 걸릴 수 있다. 
 

김창환 [컴퓨터구조] 복두출판사 p.284~292

'사망년 > 컴퓨터구조' 카테고리의 다른 글

CPU의 기본 구조  (2) 2023.12.03
캐시 사상방식  (0) 2023.12.03
chapter 03 산술과 논리연산  (0) 2023.09.24
chapter 02 자료 표현  (0) 2023.09.19
Chapter 01 컴퓨터 시스템 개요  (0) 2023.09.11