KR940010136B1 - 라운드 로빈방식의 시리얼버스 통신시스템의 버스점유신호 발생회로 - Google Patents
라운드 로빈방식의 시리얼버스 통신시스템의 버스점유신호 발생회로 Download PDFInfo
- Publication number
- KR940010136B1 KR940010136B1 KR1019920000091A KR920000091A KR940010136B1 KR 940010136 B1 KR940010136 B1 KR 940010136B1 KR 1019920000091 A KR1019920000091 A KR 1019920000091A KR 920000091 A KR920000091 A KR 920000091A KR 940010136 B1 KR940010136 B1 KR 940010136B1
- Authority
- KR
- South Korea
- Prior art keywords
- signal
- bus
- circuit
- count
- local count
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/36—Handling requests for interconnection or transfer for access to common bus or bus system
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Bus Control (AREA)
- Information Transfer Systems (AREA)
Abstract
내용 없음.
Description
제 1 도는 라운드 로빈방식의 시리얼버스 통신시스템의 개략구성도.
제 2 도는 종래의 버스점유신호 발생회로도.
제 3 도는 제 2 도의 각 부분의 동작 타이밍도.
제 4 도는 본 발명에 따른 버스점유신호 발생회로도.
제 5 도는 제 4 도의 각 부분의 동작 타이밍도.
* 도면의 주요부분에 대한 부호의 설명
10 : 로컬 카운트회로 12, 16 : 앤드게이트
14 : D플립플롭.
본 발명은 라운드 로빈(round robin) 방식의 시리얼버스(serial bus) 통신시스템에 관한 것으로, 특히 시리얼버스 중재로직(arbitration logic)에 있어서 각 버스 마스터(master)간에 로컬 카운트 로딩(loading)값의 차를 최소로 할 수 있도록 버스점유신호를 발생하는 회로에 관한 것이다.
제 1 도는 일반적인 라운드 로빈방식의 시리얼버스 통신시스템의 개략 구성도로서, 하나의 호스트 컴퓨터(H)와 다수의 버스 마스터(M1-Mn)가 시리얼버스로서 연결되어 있다.
상기 제 1 도에서 호스트 컴퓨터(H)가 다수의 버스 마스터(M1-Mn)중 어느 하나의 버스 마스터로 메시지를 송신할 경우에는 해당 버스 마스터의 고유 어드레스를 메시지에 실어 송신한다. 그러면 각 버스 마스터는 메시지중의 어드레스를 검사하여 자신의 고유 어드레스와 동일할 경우에만 메시지를 수신하게 된다.
이와 반대로 버스 마스터(M1-Mn)에서 호스트 컴퓨터(H)로 송신할 메시지가 있을 경우에 각 버스 마스터는 로컬 카운트에 의하여 순차적으로 버스를 점유하여 메시지를 송신한다. 이에 각 버스 마스터는 호스트 컴퓨터(H)로부터 일정 주기마다 입력되는 로드동기신호에 의해 각각 미리 셋팅되어 있는 자신의 로컬 카운트값을 로딩하여 카운팅을 시작하고 소정의 설정값까지 카운팅완료시에 송신할 메시지가 있을 경우 버스점유를 하는 동시에 버스점유신호를 발생한다. 상기 로컬 카운트 로딩값은 각 버스 마스터마다 서로 다른값, 즉, 각 버스 마스터간에 일정 단계의 차를 가지는 값으로 미리 셋팅하는 것이며, 예를들면 DIP 스위치를 사용하여 셋팅한다. 또한 어느 하나의 버스 마스터에서 버스점유신호가 발생되면 나머지 버스 마스터들은 로컬 카운트 동작을 중지하며 버스점유신호가 니게이트(negate)될때 로컬 카운트를 계속한다.
이에 따라 버스의 이중 점유없이 순차적으로 각 버스 마스터가 버스를 점유하여 메시지를 송신하는 것이다.
상기한 바와 같은 버스 중재를 위한 종래의 각 버스 마스터의 버스점유신호 발생회로는 제 2 도에 도시한 바와 같이 로컬 카운트회로(10)와 버스점유 제어부(6)와 D 플립플롭(8)으로 구성되며, 로컬 카운트회로(10)는 서로 종속 접속된 두개의 4비트 2진 카운터(2,4)와 저항(R)으로 구성된다.
초기에 제 2 도의 카운터(2,4) 및 D 플립플롭(8)은 리셋트신호"로우"에 의해 초기화되며, 초기화 후 리셋트신호는 "하이"상태를 유지한다. 이와 같은 상태에서 카운터(2,4)는 미리 셋팅되어 있는 로컬 카운트값(D0-D7)을 제 1 도의 호스트 컴퓨터(H)로부터 입력하는 로드동기신호에 의해 로딩하여 버스점유 상태신호가 "하이"일때 제 3a 도와 같은 데이타 송신클럭신호(TXCLK)를 카운팅한다. 상기 버스점유 상태신호는 자신 또는 다른 버스마스터에서 버스점유신호(TXAST)가 발생됨을 나타내는 신호이다. 카운터(2,4)는 버스점유 상태신호가 "로우"가 되면 카운팅을 중단하며, 다른 버스 마스터에 버스점유를 완료함에 따라 버스점유 상태신호가 "하이"로 될때 다시 카운팅을 계속하게 된다.
상기 카운터(2,4)가 소정의 설정값(제 2 도와 같이 구성될 경우에는 십진수로 256)까지 카운팅을 완료하면 카운터(4)의 출력단자(TC)의 출력 즉, 카운트 완료신호(LCQ)가 "하이"로 발생되어 버스점유 제어부(6)로 출력된다.
상기 버스점유 제어부(6)는 제 3d 도와 같이 송신준비신호(TXRDY)가 "하이"로 어서트(assert)되어 있으면, 카운트완료신호(LCQ)가 제 3c 도와 같이 "하이"로 발생되는 t1시점에서 소정시간 지연 후 제 3c 도와 같이 버스점유 개시신호(ASTD) "하이"를 발생하여 D플립플롭(8)으로 출력한다. 이에 따라 D플립플롭(8)에서는 데이타 송신클럭신호(TXCLK)에서 동기하여 제 3e 도와 같이 t2시점에서 버스점유신호(TXAST)를 "하이"로 어서트시켜 발생한다. 여기서 송신준비신호(TXRDY)는 해당 버스마스터에서 송신할 메시지가 있을 경우 송신클럭신호(TXCLK)와 무관하게 어서트 된다.
또한 버스점유 개시신호(ASTD)가 t1시점보다 지연되어 발생되는 것은 버스점유 제어부(6)내에 있는 게이트(gate)들을 통한 신호의 전파 지연에 기인한다. 그리고 버스점유신호(TXAST) "하이"에 의해 버스점유 상태신호는 "로우"로 되며, 이에 따라 카운터(4)의 카운트완료신호(LCQ)는 "하이"를 계속 유지한다. 이때 버스점유 제어부(6)는 PLA(Programmable Logic Array)를 사용한 것으로 하기 식과 같이 프로그램되어 있다.
그러므로 상기와 같이 발생된 버스점유신호(TXAST)는 송신준비신호(TXRDY)가 어서트되어 있는 동안은 계속 유지되어 해당 버스마스터만이 버스를 점유하게 된다. 이때 제 3 도와 같이 버스점유신호(TXAST)의 발생시점 t1이 버스점유 개시신호(ASTD)의 발생시점 t2보다 데이타 송신클럭신호(TXCLK)의 1주기 T만큼 지연됨으로써 버스의 이중점유 방지를 위하여 버스 마스터들간에는 로컬 카운트 로딩값을 반드시 "2"이상의 차이를 주어야 한다.
따라서 상기한 바와 같은 종래의 버스점유신호 발생회로는 각 버스마스터 마다 적어도 한번의 카운트 공전이 발생함에 따라 버스의 사용이 비효율적인 문제점이 있었다. 또한 버스점유제어를 위하여 PLA를 사용함으로써 회로의 구성이 복잡해지는 단점이 있었다.
따라서 본 발명의 목적은 라운드 로빈방식의 시리얼버스 통신시스템의 버스점유신호 발생회로에 있어서, 간단한 구성의 회로로서 각 버스 마스터간에 로컬 카운트 로딩값을 최소로 하여 버스의 사용 효율을 향상시킬 수 있는 버스점유신호 발생회로를 제공함에 있다.
이하 본 발명을 첨부한 도면을 참조하여 상세히 설명한다.
제 4 도는 본 발명에 따른 버스점유신호 발생회로도로서, 호스트 컴퓨터로부터 입력하는 로드동기신호에 의해 미리 셋팅되어 있는 로컬 카운트값(D0-D7)을 로딩하고 버스점유 상태신호가 니게이트 되어 있을때 데이타 송신클럭신호(TXCLK)를 카운팅하여 카운팅 완료시 카운트완료신호(LCQ)를 발생하는 로컬 카운트회로(10)와, 초기화를 위한 리셋트신호와 송신준비신호(TXRDY)를 논리곱하는 앤드게이트(12)와, 상기 앤드게이트(12)의 출력신호(TXRDY')를 데이타 송신클럭신호(TXCLK)에 동기하여 래치하는 D플립플롭(14)과, 상기 카운트완료신호(LCQ)와 상기 D플립플롭(14)에 래치된 신호(TXRDY'')를 논리곱하여 버스점유신호(TXAST)를 발생하는 앤드게이트(16)로 구성된다.
상기 제 4 도의 구성중 로컬 카운트회로(10)는 전술한 제 2 도에서와 동일하며, 리셋트신호, 로드동기신호, 버스점유 상태신호, 데이타송신클럭신호(TXCLK), 로컬 카운트값(D0-D7), 카운트완료신호(LCQ), 송신준비신호(TXRDY)도 각각 제 2 도에서와 동일하다.
제 5 도는 상기 제 4 도의 각 부분의 동작 타이밍도이다.
이하 본 발명에 따른 제 4 도의 동작예를 제 5 도의 동작 타이밍도를 참조하여 상세히 설명한다.
제 4 도의 로컬 카운트회로(10)는 전술한 제 2 도의 설명에서와 같이 미리 셋팅되어 로드동기신호에 의해 로딩되는 로컬 카운트값(D0-D7)부터 제 5a 도와 같은 데이타 송신클럭신호(TXCLK)를 카운팅하여 카운팅완료시 카운트완료신호(LCQ) "하이"를 발생하며, 앤드게이트(12)는 송신준비신호(TXRDY)와 리셋트신호를 논리곱하여 D플립플롭(14)으로 출력한다.
여기서 리셋트신호가 "하이"로 니게이트되어 있는 상태이고 송신준비신호(TXRDY)가 제 5b 도와 같이 T1시점에서 "하이"로 어서트되었다고 가정한다면, 앤드게이트(12)의 출력신호(TXRDY')는 제 5c 도와 같이 된다. 그러면 D플립플롭(14)은 앤드게이트(12)의 출력신호(TXRDY')는 제 5a 도와 같은 데이타 송신클럭신호(TXCLK)에 의해 동기하여 래치한다. 이에 따라 D플립플롭(14)에 래치된 신호(TXRDY'')를 제 5d 도와 같이 T2 시점에서 "하이"로 어서트된다.
상기와 같은 상태에서 제 5 도의 T3시점에서 로컬 카운트회로(10)로부터 카운트 완료신호(LCQ) "하이"가 발생하면, 카운트완료신호(LCQ)와 D플립플롭(14)에 래치되어 있는 신호(TXRDY'')를 논리곱하는 앤드게이트(16)는 제 5f 도와 같이 T3 시점에서 버스점유신호(TXAST)를 "하이"로 어서트시켜 발생한다. 즉, 앤드게이트(16)에서는 카운트완료신호(LCQ)가 발생되는 시점과 동일 시점에 버스점유신호(TXAST)가 지연없이 발생하는 것이다.
따라서 버스 마스터들간에 로컬 카운트값을 최소값인 "1"만큼만 차이를 준다해도 버스의 이중 점유를 방지할 수 있음므로써 불필요한 카운트 공전을 제거하게 된다.
상술한 바와 같이 본 발명은 간단한 회로로서 각 버스 마스터간에 로컬 카운트 로딩값을 최소로 하여 불필요한 카운트 공전을 제거함으로써 버스의 사용효율을 향상기킬 수 있는 잇점이 있다.
Claims (2)
- 호스트 컴퓨터와 다수의 버스 마스터간에 라운드 로빈방식의 시리얼버스 통신을 위하여 미리 셋팅되어 있는 로컬 카운트값을 로딩하여 설치값까지 카운팅완료시 카운트완료신호를 발생하는 로컬 카운트회로(10)를 구비한 라운드 로빈방식의 시리얼버스 통신시스템의 버스점유신호 발생회로에 있어서, 상기 호스트 컴퓨터로 송신할 메시지가 있을 경우 어서트되는 송신준비신호를 데이타 송신클럭신호에 의해 래치하여 동기시키는 래치회로와, 상기 동기된 송신준비신호와 상기 로컬 카운트회로(10)의 카운트완료신호를 논리곱하여 버스점유신호를 발생하는 앤드게이트로 구성하는 것을 특징으로 하는 버스점유신호 발생회로.
- 제 1 항에 있어서, 상기 회로가 초기화를 위한 리셋트신호와 상기 송신준비신호를 논리곱하여 상기 래치회로에 인가하는 앤드게이트를 더 구비하는 것을 특징으로 하는 버스점유신호 발생회로.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019920000091A KR940010136B1 (ko) | 1992-01-07 | 1992-01-07 | 라운드 로빈방식의 시리얼버스 통신시스템의 버스점유신호 발생회로 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019920000091A KR940010136B1 (ko) | 1992-01-07 | 1992-01-07 | 라운드 로빈방식의 시리얼버스 통신시스템의 버스점유신호 발생회로 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR930016892A KR930016892A (ko) | 1993-08-30 |
KR940010136B1 true KR940010136B1 (ko) | 1994-10-22 |
Family
ID=19327601
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019920000091A KR940010136B1 (ko) | 1992-01-07 | 1992-01-07 | 라운드 로빈방식의 시리얼버스 통신시스템의 버스점유신호 발생회로 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR940010136B1 (ko) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5638520A (en) * | 1995-03-31 | 1997-06-10 | Motorola, Inc. | Method and apparatus for distributing bus loading in a data processing system |
-
1992
- 1992-01-07 KR KR1019920000091A patent/KR940010136B1/ko not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
KR930016892A (ko) | 1993-08-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4148011A (en) | Asynchronous priority circuit for controlling access to a bus | |
US4503490A (en) | Distributed timing system | |
US5263172A (en) | Multiple speed synchronous bus having single clock path for providing first or second clock speed based upon speed indication signals | |
US4674036A (en) | Duplex controller synchronization circuit for processors which utilizes an address input | |
US4065810A (en) | Data transfer system | |
CA1309506C (en) | Asynchronous processor arbitration circuit | |
US4851996A (en) | Common resource arbitration circuit having asynchronous access requests and timing signal used as clock input to register and mask signal to priority network | |
KR900001120B1 (ko) | 우선도가 낮은 유니트를 우선도가 높은 위치에 위치시키기 위한 분배된 우선도 회로망 로직을 가진 데이타 처리 시스템 | |
Yun et al. | A high-performance asynchronous SCSI controller | |
CN107315703B (zh) | 双优先级控制型公平仲裁器 | |
US5280628A (en) | Interruption controlling system using timer circuits | |
KR940010136B1 (ko) | 라운드 로빈방식의 시리얼버스 통신시스템의 버스점유신호 발생회로 | |
US4998030A (en) | Circuit to arbitrate multiple requests for memory access | |
US6389580B1 (en) | Computer readable storage medium having logic synthesis program, and logic synthesis method and apparatus | |
US3548319A (en) | Synchronous digital counter | |
US3576542A (en) | Priority circuit | |
US4482949A (en) | Unit for prioritizing earlier and later arriving input requests | |
US5579315A (en) | Heartbeat collision prevention circuit and method | |
US4493052A (en) | Method and arrangement for the monitored transfer of control signals at interfaces of digital systems | |
US3766530A (en) | Communications between central unit and peripheral units | |
US5249154A (en) | Data access controller and method | |
EP0817087A2 (en) | Implementation of high speed synchronous state machines with short setup and hold time signals | |
AU595074B2 (en) | Bus priority assignment control with a lockout circuit | |
KR970002784B1 (ko) | 토큰손실 검출 및 재생산 제어회로 | |
EP0087266A2 (en) | Priority resolver circuit |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
G160 | Decision to publish patent application | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20100929 Year of fee payment: 17 |
|
LAPS | Lapse due to unpaid annual fee |