KR970007251B1 - 다중버스용 실시간 멧세지 전송장치 및 그 제어방법 - Google Patents

다중버스용 실시간 멧세지 전송장치 및 그 제어방법 Download PDF

Info

Publication number
KR970007251B1
KR970007251B1 KR1019940003633A KR19940003633A KR970007251B1 KR 970007251 B1 KR970007251 B1 KR 970007251B1 KR 1019940003633 A KR1019940003633 A KR 1019940003633A KR 19940003633 A KR19940003633 A KR 19940003633A KR 970007251 B1 KR970007251 B1 KR 970007251B1
Authority
KR
South Korea
Prior art keywords
message
transmission
time
bus
transceiver
Prior art date
Application number
KR1019940003633A
Other languages
English (en)
Other versions
KR950026147A (ko
Inventor
정만상
신현식
Original Assignee
한국전기통신공사
조백제
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 한국전기통신공사, 조백제 filed Critical 한국전기통신공사
Priority to KR1019940003633A priority Critical patent/KR970007251B1/ko
Priority to US08/293,395 priority patent/US5509012A/en
Publication of KR950026147A publication Critical patent/KR950026147A/ko
Application granted granted Critical
Publication of KR970007251B1 publication Critical patent/KR970007251B1/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/407Bus networks with decentralised control
    • H04L12/413Bus networks with decentralised control with random access, e.g. carrier-sense multiple-access with collision detection (CSMA-CD)
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/382Information transfer, e.g. on bus using universal interface adapter
    • G06F13/385Information transfer, e.g. on bus using universal interface adapter for adaptation of a particular data processing system to different peripheral devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4004Coupling between buses
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40006Architecture of a communication node
    • H04L12/40032Details regarding a bus interface enhancer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols

Abstract

내용없음.

Description

다중버스용 실시간 멧세지 전송장치 및 그 제어방법
제1도는 본 발명의 따른 실시예의 다중버스용 실시간 멧세지 전송 장치의 블럭도.
제2도는 제1도에 도시된 다중버스용 실시간 멧세지 전송 장치가 적용된 다중버스 전송시스템의 개략도.
제3도는 본 발명의 실시예에 따른 다중버스용 실시간 멧세지 전송제어방법의 흐름도.
*도면의 주요부분에 대한 부호의 설명
10,12,14 : 제1,2,n 버스라인 16,18,20 : 제1,2,n 트랜시버
22 : 버퍼메모리 24 : DMA회로
26 : 프로그램메모리 28 : 프로토콜 프로세서
30 : 트랜시버중계부 32 : 내부버스
34 : 확장제어버스
본 발명은 호스트 콤퓨터와 같은 데이타처리장치로 부터의 멧세지를 윈도우 프로토콜에 의하여 다수의 버스라인을 경유하여 실시간적으로 전송할 수 있는 전송장치 및 그 제어방법에 관한 것이다.
종래의 윈도우 프로토콜을 이용한 실시간 멧세지 전송장치는 호스트콤퓨터와 같은 데이타처리장치로 부터의 멧세지를 하나의 버스라인을 통하여 지정된 다른 멧세지 전송장치쪽으로 전송한다. 이를 위하여, 종래의 멧세지 전송장치에 의하여 상기 버스라인이 점유되고 있는지를 감시하고, 상기 버스라인이 다른 멧세지전송장치에 의하여 사용되지 않는 기간에 멧세지를 전송한다. 그러므로, 종래의 멧세지 전송장치는 다른 멧세지 전송장치들에 의하여 버스라인이 장기간 점유됨으로 인하여 멧세지를 적절한 시기에 전송할 수 없는 문제점을 안고 있었다. 그리고 상기 종래의 멧세지 전송장치의 단점은 전송될 멧세지의 양이 증가될수록 심화된다.
상기 단점을 보완하기 위하여, 다수의 버스라인을 갖는 멧세지 전송회로망이 최근에 제안되고 있다. 그러나, 상기 다중버스 멧세지 전송회로망에 사용되는 종래의 멧세지 전송장치는 각 버스라인들을 독립적으로 제어함으로 인하여 여전히 멧세지를 적절한 시기에 전송할 수 없었다.
따라서, 본 발명의 목적은 윈도우 프로토콜에 의하여 멧세지를 적절한 시기에 전송할 수 있고, 버스라인의 수의 증가에 따른 멧세지 전송효율을 향상시킬 수 있는 다중버스용 실시간 멧세지 전송장치 및 그 제어방법을 제공함에 있다.
상기 목적을 달성하기 위하여, 본 발명은 전송될 시간을 나타내는 전송 시간데이타가 포함된 송신용멧세지를 일시 저장하기 메모리수단과, 다수의 버스라인들에 각각 접속되어 버스라인의 상태를 검출하고, 상기 메모리수단에 저장된 송신용 멧세지를 해당 버스라인쪽으로 전송하고, 상기 해당 버스라인으로 부터의 멧세지를 상기 메모리수단에 쪽으로 전송하는 다수의 트랜시버수단들과, 일정주기마다 인터럽트신호를 발생하고 실시간을 카운트하는 타이머수단과, 상기 송출용멧세지를 버스라인쪽으로 전송하기 위하여 상기 다수의 트랜시버수단 및 상기 메모리수단을 제어하는 프로토콜제어수단을 구비하여 상기 프로토콜제어수단으로 하여금 상기 다수의 트랜시버수단들로 부터의 선로상태데이타에 의하여 망상태를 결정하고, 그리고 상기 인터럽트신호의 발생시 상기 결정된 망상태에 따라 시간폭이 다른 시간 윈도우를 설정하고 상기 시간윈도우에 속한 상기 전송시간데이타를 갖는 송신용 멧세지가 상기 메모리수단으로 부터 상기 다수의 트랜시버수단중 하나를 경유하여 휴지상태의 버스라인쪽으로 전송되도록 한다.
이하, 본 발명의 실시예를 첨부한 제1도 내지 제3도를 참조하여 상세히 설명하기로 한다.
제1도를 참조하면, 제1 내지 제n버스라인(10,l2 및 14)에 각각 접속된 제1 내지 제n 트랜시버(16,18,20)와, 송신용멧세지 및 수신된 멧세지를 일시 저장하기 위한 버퍼메모리(22)를 구비한 본 발명의 실시예에 따른 다중버스용 실시간 멧세지 전송 장치가 설명되어 있다. 상기 제1트랜시버(16)는 상기 제1버스라인(10)으로 부터의 멧세지를 버퍼메모리(22)에 저장된 송신용 멧세지를 상기 제1버스라인(10)쪽으로 전송한다. 그리고 상기 제1트랜시버(16)는 상기 버퍼메모리(22)로 부터의 송신용멧세지를 상기 제1버스라인(10)으로 부터 수신된 멧세지를 데이타처리장치가 요구하는 데이타형태로 변환한다. 상기 제1버스라인(10)으로 부터 멧세지를 수신할 경우, 상기 제1트랜시버(16)는 수신된 멧세지로 부터 동기신호를 포함한 제어신호들을 검출하고 검출된 제어신호들을 트렌시버중계부(30)에 공급한다. 또한, 상기 제1트랜시버(16)는 상기 제1버스라인(10)의 상태를 감지하고 감지된 제1 버스라인(10)의 상태데이타를 트랜시버중계부(30)에 공급한다. 한편, 상기 제2 내지 제n 트랜시버(12,14)들도 상기 제1 트랜시버(16)와 마찬가지로 멧세지의 송신 및 수신동작을 수행한다. 그리고 상기 제2 내지 제n 버스라인(12,14)의 상태를 각각 감지하고 감지된 각각의 제2 내지 제n 버스라인의 상태데이타를 상기 트랜시버중계부(30)에 공급한다.
상기 다중버스용 실시간 멧세지 전송장치는 상기 버퍼메모리(22)를 억세스한기 위한 DMA(Direct Memory Access)회로(24)와, 상기 제1내지 제n 트랜시버(16,18,20)의 송신 및 수신동작과 상기 DMA회로(24)의 동작을 제어하기 위한 프로토콜 프로쎄서(28)를 추가로 구비한다. 상기 DMA회로(24)는 상기 프로토콜 프로쎄서(28)의 제어하에 상기 버퍼메모리(22)로 하여금 내부버스(32)를 경유하여 공급되는 데이타처리장치(도시하지 않음)로 부터의 송신용멧세지나 또는 상기 제1~제n 트랜시버(16,18,20)로 부터의 수신된 멧세지를 저장하도록 하고, 그리고 상기 버퍼메모리(22)로 하여금 자체내에 저장된 멧세지를 판독하고 상기 판독된 멧세지가 상기 내부버스(32)를 경유하여 상기 제1~제n 트랜시버(16,18,20), 데이타처리장치, 및 상기 프로토콜 프로쎄서(28)에 공급되도록 구동한다. 또한, 상기 DMA회로(24)는 상기 프로토콜 프로쎄서(28)로 부터의 통신제어신호를 확장제어라인(34)를 경유하여 데이타처리장치쪽으로 전송하고 그리고 상기 확장제어라인(34)를 경유하여 공급되는 상기 데이타처리장치로 부터의 통신제어신호를 상기 프로토콜 프로쎄서(28)쪽으로 전송한다.
그리고 상기 프로토콜 프로쎄서(28)는 프로그램메모리(26)에 저장된 제어프로그램에 의하여 상기 제1~제n 트랜시버(16,18,20) 및 상기 DMA회로(24)를 제어하여 멧세지가 송수신되도록 한다. 이를 위하여, 상기 프로토콜 프로쎄서(28)는 상기 제1~제n 트랜시버(16,18,20)로 부터의 제1~제n 버스라인의 상태데이타들과 이전에 설정된 망상태정보에 의하여 현재의 망상태를 결정한다. 그리고 상기 프로토콜 프로쎄서(28)는 일정주기마다 인터럽트신호를 발생하고 실시간을 카운트하는 타이머를 포함하고, 상기 타이머에서 인터럽트신호가 발생될 때 마다 상기 송출용멧세지에 포함된 전송시간 데이타(LS)와 비교될 시간윈도우를 설정한다. 그리고 상기 프로토콜 프로쎄서(28)는 상기 설정된 시간윈도우에 포함되는 전송시간데이타(LS)를 갖는 송출용멧세지를 탐색하고 탐색된 송출용멧세지가 상기 버퍼메모리(22)로 부터 상기 제1~제n 버스라인(10,12,l4)들중 어느 한 버스라인쪽으로 전송되도록 상기 제1~제n 트랜시버(16,18,20)과 상기 DMA회로(24)를 구동한다. 상기 설정된 시간윈도우는 상기 현재의 망상태에 따라 재조정된다. 그리고, 상기 프로토콜 프로쎄서(28)에 포함된 상기 타이머는 상기 제1~제n 버스라인(10,12,14)에 접속되는 다른 다중버스용 실시간 멧세지 전송 장치(도시되지 않음)의 프로토콜 프로쎄서에 포함된 타이머와 동기되도록 동작한다.
상기 제1~제n 트랜시버(16,18,20) 및 상기 프로토콜 프로쎄서(28)의 사이에 접속된 상기 트랜시버중계부(30)는 제1~제n 트랜시버들(16,18,20)로 부터의 제1~제n 버스라인(10,12,14)의 상태데이타 및 수신제어신호들을 상기 프로토콜 프로쎄서(28)쪽으로 전송하고, 그리고 상기 제1~제n 트랜시버(l6,18,20)의 송수신동작을 제어하기 위한 상기 프로토콜 프로쎄서(28)로 부터의 동작제어신호를 상기 제1~제n 트랜시버들(16,18,20)쪽으로 전송한다.
상기 송출용멧세지에 포함된 상기 전송시간데이타(LS)는 상기 데이타처리장치에서 다음의 식1에 의하여 산출된다.
LS=D-TD ------------------------- (1) 상기 식l에 있어서, 상기 D는 멧세지의 종료시간이고 그리고 상기 TD는 멧세지의 전파지연시간이다. 상기 전파지연시간(TD)는 다음 식2에 의하여 산출된다.
TD=(1/bps)멧세지의 길이+δ+전송절차에 의한 소요시간 ---- (2) 상기 식2에 있어서, 상기 bps는 버스의 전송속도이고, 상기 δ는 상기 프로토클 프로쎄서(28)에 포함된 타이머에 의해 발생되는 인터럽트신호의 발생 주기이고, 그리고 상기 멧세지의 길이의 단위는 비트(bit)이다.
제2도에는 제1~제n 데이타처리장치(40,42)에 각각 접속되고 제1~제n 버스라인(l0,12,14)에 공통적으로 접속된 다중버스용 실시간 멧세지 전송 장치(44,46)을 구비한 다중버스 전송시스템이 도시되어 있다. 상기 제1데이타처리장치는 다른 데이타처리장치쪽으로 전송될 멧세지와 전송될 시간을 나타내는 전송시간데이타(LS)를 갖는 송신용메세지들을 발생하고 상기 발생된 송신용멧세지들을 제1 다중버스용 실시간 멧세지 전송 장치(44)쪽으로 전송한다.
상기 제1 다중버스용 실시간 멧세지 전송 장치(44)는 상기 제l데이타처리장치(40)로 부터의 송신용멧세지들을 자체내의 버퍼메모리에 상기 전송시간 데이타의 순서대로 저장하고, 그리고 일정주기마다 설정된 시간윈도우와 상기 송신용멧세지의 전송시간데이타(LS)를 비교한다. 그리고 상기 제1 다중버스용 실시간 멧세지 전송 장치(44)는 시간윈도우에 해당하는 전송시간데이타(LS)를 갖는 송신용멧세지를 상기 제1~제n 버스라인(10,12,l4)중 임의의 버스라인쪽으로 전송한다. 또한, 상기 제1 다중버스용 실시간 멧세지 전송 장치(44)는 제1~제n 버스라인(10,l2,14)의 상태를 검출하고 상기 검출된 제1~제n 버스라인(10,12,14)의 상태와 현재의 망상태(CS)에 의하여 상기 현재의 망상태(CS)를 변경한다. 상기 시간윈도우는 상기 현재의 망상태에 따라 억압 및 확장되거나 정상폭을 갖는다.
상기 제n데이타처리장치(42) 및 제n 다중버스용 실시간 멧세지 전송 장치(46)는 각각 상기 제n데이타처리장치(42) 및 제1 다중버스용 실시간 멧세지 전송 장치(44)와 동일하게 동작하기 때문에 설명을 생략한다.
제3도에는 다중버스라인들을 경유하여 송신용멧세지를 전송하기 위하여 제1도에 도시된 프로토콜 프로쎄서에 의하여 수행되는 본 발명의 실시예에 따른 다중버스용 실시간 멧세지 전송제어방법의 흐름도가 도시되어 있다. 상기 제3도에 도시된 흐름도에 제1도에 도시된 다중버스용 실시간 멧세지 전송 장치와 결부시켜 상세히 설명하기로 한다.
전원-온(Power-On)시 프로토콜 프로쎄서(28)는 자체내의 작업용메모리 및 버퍼메모리(22)를 초기화하고, 그리고 현재의 망상태(CS)를 적어도 1개 이상의 버스라인이 휴지상태에 있음을 나타내는 제1모드(So)를 설정한다(제50단계). 그리고 상기 프로토콜 프로쎄서(28)는 확장제어라인(34) 및 DMA회로(24)를 경유하여 멧세지의 전송을 요청하는 데이타처리장치로 부터의 전송시간데이타(LS)들이 포함된 멧세지전송요구신호가 입력되었는가 검사한다(제52단계). 상기 제52단계에서 상기 멧세지전송요구신호가 입력되었을 경우, 상기 프로토콜 프로쎄서(28)는 상기 전송시간데이타(LS)들을 자체내에 내장된 작업용메모리에 저장하고, 그리고 상기 데이타처리장치로 부터의 송신용멧세지가 버퍼메모리(22)에 상기 송신용멧세지에 포함된 전송시간데이타(LS)의 순서대로 저장되도록 상기 DMA회로(24)를 제어한다(제54단계). 이때, 상기 DMA회로(24)는 상기 버퍼메모리(22)가 라이트(Write)모드로 동작하도록 하고, 그리고 상기 데이타처라장치로부터 내부 버스라인(32)을 경유하여 상기 버퍼메모리(22)에 공급되는 상기 송신용멧세지들이 상기 전송시간데이타(LS)의 순서대로 상기 버퍼메모리(22)에 저장되도록 버퍼메모리(22)에 어드레스를 인가한다. 그리고 상기 프로토콜 프로쎄서(28)는 상기 DMA회로(24)를 제어한 다음 상기 제52단계를 다시 수행한다.
반면에, 상기 제52단계에서 멧세지 전송을 요구하는 멧세지가 입력되지 않았을 경우, 상기 프로토콜 프로쎄서(28)는 자체내에 내장된 타이머에 의하여 입터럽트신호가 발생되었는가 검사한다(제56단계). 상기 제56단계에서 인터럽트신호가 발생되지 않았을 경우, 상기 프로토콜 프로쎄서(28)는 트랜시버중계부(20)을 경유하여 입력되는 임의의 i번째 트래시버로 부터의 임의의 i번째 버스라인의 상태데이타에 의하여 상기 i번째 버스라인에서 멧세지충돌이 발생하였는가, 상기i번째 버스라인이 비지(Busy)상태로 변화되었는가, 상기i번째 버스라인이 휴지(Idle)상태로 변화되었는가, 또는 상기 i번째 트랜시버가 멧세지를 수신중에 있는가를 판단한다(제58단계 내지 제64단계). 상기 제58단계에서 상기 i번째 버스라인에서 송신용멧세지가 다른 멧세지와 충돌하였을 경우, 상기 프로토콜 프로쎄서(28)는 자체내의 레지스터에 저장된 현재의 망상태데이타(CS)의 값에 의하여 현재의 망상태가 제1모드(S0), 제3모드(S2)또는 제5모드(S4) 인가 판단한다(제66단계). 상기 제66단계에서 현재의 망상태가 제1모드(S0), 제3모드(S2), 또는 제5모드(S4)인 경우, 상기 프로토콜 프로쎄서(28)는 상기 현재의 망상태데이타(CS)를 S1으로 변경하여 상기 현재의 망상태를 제2모드(S1)로 변경한다(68단계). 그리고 상기 제66단계에서 상기 현재의 망상태가 제1모드(S0), 제3모드(S2), 또는 제5모드(S4)가 아닌 경우 및 상기 제68단계의 수행후, 상기 프로토콜 프로쎄서(28)는 제52단계로 되돌아간다. 상기 제2모드(S1)는 전송된 멧세지가 다른 다중버스용 실시간 멧세지 전송 장치로 부터의 멧세지와 충돌함으로 인하여 발생된 상기 임의의 i번째 버스라인이 비지상태에 있음을 타나낸다. 그리고 상기 제3모드(S2)는 전송된 멧세지가 다른 다중버스용 실시간 멧세지 전송 장치로 부터의 멧세지와 충돌한 후 임의의 i번째 버스라인이 휴지상태에 있음을 나타낸다. 또한 상기 제5모드(S4)는 모든버스가 비지상태에 있을 때 임의의 i번째 버스라인이 멧세지를 전송한 후 휴지상태로 된것을 나타낸다.
그리고 상기 제60단계에서 상기 i번째 버스라인이 비지상태에 있을 경우에 상기 프로토콜 프로쎄서(28)는 상기 트랜시저중계부(30)을 경유하여 모든 트랜시버(16,18,20)로 부터 모든 버스라인(10,12,14)의 상태데이타를 검사하여 모든 버스라인(10,12,14)이 비지상태에 있는가 판단한다(제70단계), 상기 제70단계에서 모든 버스라인이 비지상태에 있을 경우, 상기 프로토콜 프로쎄서(28)는 상기 현재의 망상태데이타의 값에 의하여 현재의 망상태가 제1모드(S0) 또는 제3모드(S2) 인가 판단한다(제72단계). 상기 제72단계에서 상기 현재의 망상태데이타의 값에 의하여 현재의 망상태가 제1모드(S0) 또는 제3모드(S2)일 경우, 상기 프로토콜 프로쎄서(28)는 상기 현재의 망상태데이타(CS)를 S3로 변경하여 상기 현재의 망상태를 제4모드(S3)로 변경시킨다(제74단계). 이와는 달리, 상기 제70단계에서 모든 버스라인이 비지상태에 있지 않을 경우, 상기 프로토콜 프로쎄서(28)는 상기 현재의 망상태데이타의 값에 의하여 현재의 망상태가 제3모드(S2) 인가 판단한다(제76단계). 상기 제72단계에서의 상기 현재의 망상태가 제3모드(S2)일 경우, 상기 프로토콜 프로쎄서(28)는 상기 현재의 망상태데이타(CS)를 S0''로 변경하여 상기 현재의 망상태를 제1모드(S0)로 전환시킨다(제78단계). 그리고 상기 프로토콜 프로쎄서(28)는 상기 제72단계에서 상기 현재의 망상태가 제1모드(S0) 또는 제3모드(S2)에 있지 않거나, 상기 제76단계에서 현재의 망상태가 제3모드(S2)에 있지 않은 경우, 또는 제74단계 또는 제78단계의 수행후에 상기 제52단계로 되돌아 간다. 상기 제4모드(S3)는 모든 버스라인(10,l2,14)이 멧세지를 전송하고 있는 비지상태를 나타낸다.
또한, 상기 제62단계에서 상기 i번째 버스라인이 휴지상태로 변화하였을 경우, 상기 프로토콜 프로쎄서(28)는 상기 현재의 망상태데이타의 값에 의하여 현재의 망상태가 제4모드(S3) 또는 제5모드(S4) 인가 판단한다(제80단계 및 제82단계). 상기 제80단계에서 상기 현재의 망상태데이타의 값에 의하여 현재의 망상태가 제4모드(S3)일 경우, 상기 프로토콜 프로쎄서(28)는 상기 현재의 망상태데이타(CS)를 S4로 변경하여 상기 현재의 망상태를 제5모드(S4)로 변경시키고, 그리고 자체내의 작업용메모리에 저장된 시간윈도우의 상한값들을 모두 초기화한다(제84단계). 상기 제82단계에서 상기 현재의 망상태가 제5모드(S4)일 경우, 상기 프로토콜 프로쎄서(28)는 상기 현재의 망상태데이타(CS)를 S0로 변경하여 상기 현재의 망상태를 제1모드(S0)로 전환시킨다(제86단계). 그리고 상기 프로토콜 프로쎄서(28)는 상기 제80단계 및 제82단계에서 현재의 망상태가 제4모드(S3) 및 제5모드(S4)가 아닌 경우 또는 제84단계 또는 제86단계의 수행후에 상기 제52단계로 되돌아 간다.
이와는 달리, 상기 제64단계에서 상기 i번째 트랜시버가 멧세지를 수신중에 있을 경우, 상기 프로토콜 프로쎄서(28)는 상기 i번째 트랜시버에 의하여 수신된 멧세지가 상기 버퍼메모리(22)에 저장되도록 상기 DMA회로(24)를 제어하고 그리고 트랜시버중계부(30)를 경유하여 상기 I번째 트렌시버를 제어한다(제88단계). 이때, 상기 DMA회로(24)는 상기 버퍼메모리(22)가 라이트(Write)모드로 동작하도록 하고, 그리고 상기 데이타처리장치로 부터 내부 버스라인(32)을 경유하여 상기 버퍼메모리(22)에 공급되는 상기 송신용멧세지들이 상기 전송시간데이타(LS)의 순서대로 상기 버퍼메모리(22)에 저장되도록 버퍼메모리(22)에 어드레스를 인가한다. 상기 i번째 트랜시버는 상기 i번째 버스라인으로 부터 수신된 멧세지를 상기 데이타처리장치가 요구하는 데이타포멧을 변환하고 변환된 수신데이타를 상기 내부버스(32)를 경유하여 상기 버퍼메모리(22)에 공급한다. 그리고 상기 i번째 트랜시버 및 DMS회로(24)를 제어한 후, 상기 프로토콜 프로쎄서(28)는 제52단계로 되돌아 간다.
한편, 상기 제56단계에서 인터럽트신호가 발생되었을 경우, 상기 프로토콜 프로쎄서(28)는 상기 DMS회로(24)로 하여금 상기 버퍼메모리(22)에 저장된 현재의 실시간보다 작은 전송시간데이타(LS)를 갖는 송신용멧세지를 제거하도록 상기 DMA회로(24)를 제어한다(제90단계). 그리고 상기 프로토콜 프로쎄서(28)는 상기 현재의 망상태데이타의 값에 의하여 현재의 망상태가 제2모드(S1), 제4모드(S3), 제5모드(S4), 제3모드(S2), 또는 제1모드(S0)에 있는가 판단한다(제92단계 내지 제100단계).
상기 제92단계에서 현재의 상태가 제2모드(S1)에 있을 경우, 상기 프로토콜 프로쎄서(28)는 상기 트랜시버중계부(30)를 거쳐 임의의 i번째 트랜시버가 멧세지의 전송을 중지하도록 제어하고, 그리고 상기 DMA회로(24)를 제어하여 상기 DMA회로(24)로 하여금 상기 버퍼메모리(22)에 저장된 상기 송출용멧세지를 상기 송출용멧세지에 포함된 전송시간데이타(LS)의 순서대로 배치하도록 하다(제102단계). 상기 제102단계의 수행 후, 상기 프로토콜 프로쎄서(28)는 상기 현재의 망상태데이타의 값을 S2로 변경하여 상기 현재의 망상태를 제3모드(S2)호 전환시킨 다음 상기 제52단계로 되돌아 간다(제104단계). 그리고 상기 제94단계에서 상기 현재의 망상태데이타의 값이 S3인 경우에 상기 프로토콜 프로쎄서(28)는 제4모드(S3)의 현재의 망상태를 그대로 유지하도록 상기 제52단계로 되돌아 간다.
상기 제96단계에서 현재의 상태가 제5모드(S4)에 있을 경우, 상기 프로토콜 프로쎄서(28)는 팝-앤드-샌드(Pop-and Send)라하는 절차에 의하여 상기 버퍼메모리(22)에 저장된 송신용멧세지를 다중버스라인들(10,12,14)중에서 휴지중인 버스라인쪽으로 전승되도록 한다(제106단계). 상기 팝-앤드-샌드의 절차는 현재의 윈도우에 의하여 하나의 멧세지의 전송이 완료된 상태를 의미한다.
상기 팝-앤드-샌드의 절차에 있어서, 상기 프로토콜 프로쎄서(28)는 자체내의 작업용메모리에 시간윈도우의 상한값이 하나 이상 있는가 검사한다. 자체내의 작업용메모리에 시간윈도우의 상한값이 없을 경우, 상기 프로토콜 프로쎄서(28)는 현재의 실시간(t)에 일정시간(δ, 예를 들면; 10초)를 가산한 시간윈도우의 상한값과 현재의 실시간으로부터 상기 시간윈도우의 상한값에 이르는 정상시간폭(20초)의 시간윈도우를 설정하고, 설정된 시간윈도우의 상한값을 자체내의 작업용메모리에 저장한다. 이와는 달리, 상기 자체내에 시간위도우의 상한값이 저장되어 있는 경우, 상기 프로토콜 프로쎄서(28)는 현재의 실시간에서 부터 최근에 저장된 시간윈도우의 상한값을 상한값으로 하는 새로운 시간윈도우를 설정한다. 그리고 상기 프로토콜 프로쎄서(28)는 상기 새로 설정된 시간윈도우에 속하는 전송시간데이타(LS)를 갖는 송출용멧세지가 상기 버퍼메모리(22)에 저장되어 있는가 검사한다. 또한, 상기 프로토콜 프로쎄서(28)는 상기 새로설정된 현재의 시간윈도우에 해당하는 전송시간데이타(LS)를 갖는 송출용멧세지가 상기 버퍼메모리(22)로 부터 상기 휴지상태에 있는 버스라인쪽으로 전송되도록 상기 DMA회로(24)를 제어하고, 그리고 휴지상태의 버스라인에 접속된 트랜시버의 동작을 송신모드로 변경시킨다. 이때, 상기 DMA회로(24)는 상기 버퍼메모리(22)가 판독(Readout)모드로 동작하도록 하고, 그리고 상기 버퍼메모리(22)에 저장된 송출용멧세지가 내부 버스라인(22) 및 상기 휴지상태의 버스라인에 접속된 트랜시버를 경유하여 상기 휴지상태의 버스라인쪽으로 전송되도록 상기 버퍼메모리(22)에 어드레스를 인가한다. 그리고 상기 휴지상태의 버스라인에 접속된 트랜시버는 상기 버퍼메모리(22)로 부터의 송출용멧세지를 상기 버스라인이 요구하는 데이타포멧으로 변환하고 변환된 송출용멧세지를 상기 휴지상태의 버스라인쪽으로 전송한다.
상기 제98단계에서 현재의 상태가 제3모드(S2)에 있을 경우, 상기 프로토콜 프로쎄서(28)는 윈도우억압 및 전송(Contract-Window-and Send)이란 절차에 의하여 상기 버퍼메모리(22)에 저장된 송신용멧세지가 상기 다중버스라인들(10,12,14)들중 휴지상태의 버스라인쪽으로 전송되도록 한다(제108단계). 상기 윈도우억압 및 전송의 절차는 현재의 윈도우에 속하는 전송시간데이타(LS)를 갖는 송출용멧세지가 다중버스 전송시스템에 두개이상 존재할 경우에 수행된다.
상기 윈도우억압 및 전송의 절차에 있어서, 상기 프로토콜 프로쎄서(28)는 자체내의 작업용메모리에 시간윈도우의 상한값이 하나 이상 있는가 검사한다. 자체내의 작업용메모리에 시간윈도우의 상한값이 없을 경우, 상기 프로토콜 프로쎄서(28)는 현재의 실시간(t)에 일정시간(δ, 예를 들면; 10초)를 가산한 시간윈도우의 상한값과 현재의 실시간으로 부터 상기 시간윈도우의 상한값에 이르는 정상시간폭(20초)의 시간윈도우를 설정하고, 설정된 시간윈도우의 상한값을 자체내의 작업용메모리에 저장한다. 이와는 달리, 상기 자체내에 시간윈도우의 상한값이 저장되어 있는 경우, 상기 프로토콜 프로쎄서(28)는 현재의 실시간(t)에서 {최근에 저장된 시간윈도우의 상한값-현재의 실시간(t)}/2를 가산한 새로운 시간윈도우의 상한값과 현재의 실시간(t)으로 부터 상기 새로 설정된 시간윈도우의 상한값에 이르는 이전의 시간윈도우의 폭의 1/2에 해당하는 폭을 갖는 시간윈도우을 설정한다. 그리고 상기 프로토콜 프로쎄서(28)는 상기 새로 설정된 시간윈도우에 속하는 전송시간데이타(LS)를 갖는 송출용멧세지가 상기 버퍼메모리(22)에 저장되어 있는가 검사한다. 또한, 상기 프로토콜 프로쎄서(28)는 상기 새로 설정된 현재의 시간윈도우에 해당하는 전송시간데이타(LS)를 갖는 송출용멧세지가 상기 버퍼메모리(22)로 부터 상기 휴지상태에 있는 버스라인쪽으로 전송되도록 상기 DMA회로(24)를 제어하고, 그리고 휴지상태의 버스라인에 접속된 트랜시버의 동작을 송신모드로 변경시킨다. 이때, 상기 DMA회로(24)는 상기 버퍼메모리(22)가 판독(Readout)모드로 동작하도록 하고, 그리고 상기 버퍼메모리(22)에 저장된 송출용멧세지가 내부 버스라인(32) 및 상기 휴지상태의 버스라인에 접속된 트랜시버를 경유하여 상기 휴지상태의 버스라인쪽으로 전송되도록 상기 버퍼메모리(22)에 어드레스를 인가한다. 그리고 상기 휴지상태의 버스라인에 접속된 트랜시버는 상기 버퍼메모리(22)로 부터의 송출용멧세지를 상기 버스라인이 요구하는 데이타포멧으로 변환하고 변환된 송출용멧세지를 상기 휴지상태의 버스라인쪽으로 전송한다.
상기 제100단계의 현재의 상태가 제1모드(S0)에 있을 경우, 상기 프로토콜 프로쎄서(28)는 윈도우억압 및 전송(Contract-Window-and Send)라고 하는 절차에 의하여 대기중인 송출용멧세지들의 전송을 시도한다(제110단계). 상기 윈도우확장 및 전송의 절차는 상기 윈도우억압 및 전송의 절차에 의하여 전송된 송신용멧세지가 다른 다중버스용 실시간 멧세지 전승잔치로 부터의 송신용멧세지와 충돌된 경우에 수행된다. 결국, 상기 윈도우확장 및 전송의 절차는 억압된 시간윈도우의 상한값과 정상상태의 시간윈도우의 상한값에 이르는 시간윈도우에 두개이상의 송신용멧세지가 존재할 경우에 수행된다.
상기 윈도우확장 및 전송의 절차에 있어서, 상기 프로토콜 프로쎄서(28)는 자체내의 작업용메모리에 시간윈도우의 상한값이 하나 이상 있는가 검사한다. 자체내의 작업용메모리에 시간윈도우의 상한값이 없을 경우, 상기 프로토콜 프로쎄서(28)는 현재의 실시간(t)에 일정시간(δ, 예를 들면; 10초)를 가산한 시간윈도우의 상한값과 현재의 실시간으로 부터 상기 시간윈도우의 상한값에 이르는 정상시간폭(20초)의 시간윈도우를 설정하고, 설정된 시간윈도우의 상한값을 자체내의 작업용메모리에 저장한다. 이와는 달리, 상기 자체내에 시간윈도우의 상한값이 저장되어 있는 경우, 상기 프로토콜 프로쎄서(28)는 현재의 실시간(t)에 (먼저 저장된 시간윈도우의 상한값-최근에 저장된 시간윈도우의 상한값)/2를 가산한 새로운 시간윈도우의 상한값과 현재의 실시간(t)으로 부터 상기 새로 설정된 시간윈도우의 상한값에 이르는 폭을 갖는 시간윈도우를 설정하고, 그리고 새로 설정된 시간 윈도우의 상한값을 자체내의 작업용메모리에 저장한다. 상기 새로 설정된 현재의 윈도우의 상한값은 최초에 설정된 시간윈도우의 상한값과 최근에 설정된 시간윈도우의 상한값의 중간값을 갖는다. 그리고 상기 프로토콜 프로쎄서(28)는 상기 새로 설정된 시간윈도우에 속하는 전송시간테이타(LS)를 갖는 송출용멧세지가 상기 버퍼메모리(22)에 저장되어 있는가 검사한다. 또한, 상기 프로토콜 프로쎄서(28)는 상기 새로 설정된 현재의 시간윈도우에 해당하는 전송시간데이타(LS)를 갖는 송출용멧세지가 상기 버퍼메모리(22)로 부터 상기 휴지상태에 있는 버스라인쪽으로 전송되도록 상기 DMA회로(24)를 제어하고, 그리고 휴지상태의 버스라인에 접속된 트랜시버의 동작을 송신모드로 변경시킨다. 이때, 상기 DMA회로(24)는 상기 버퍼메모리(22)가 판독(Readout)모드로 동작하도록 하고, 그리고 상기 버퍼메모리(22)에 저장된 송출용멧세지가 내부 버스라인(32) 및 상기 휴지상태의 버스라인에 접속된 트랜시버를 경유하여 상기 휴지상태의 버스라인쪽으로 전송되도록 상기 버퍼메모리(22)에 어드레스를 인가한다. 그리고 상기 휴지상태의 버스라인에 접속된 트랜시버른 상기 버퍼메모리(22)로 부터의 송출용멧세지를 상기 버스라인이 요구하는 데이타포멧으로 변환하고 변환된 송출용멧세지를 상기 휴지상태의 버스라인쪽으로 전송한다. 그리고 상기 윈도우억압 및 전송의 절차와 상기 윈도우확장 및 전송의 절차를 반복적으로 수행하게 되면, 동일한 전송시간데이타(LS)를 갖는 두개의 송출용멧세지가 다중버스 전송시스템에 존재하는 것을 검출할 수 있고, 그 중 하나만이라도 전송되도록 할 수 있다.
상술한 바와 같이, 본 발명은 다중버스의 상태와 멧세지의 전송상태에 따라 시간윈도우를 적절하게 변경시켜 송출용멧세지를 원하는 시간에 적절하게 전송할 수 있는 이점을 제공할 수 있는 이점을 제공한다. 상기 이점으로 인하여, 본 발명은 멧세지의 전송량이 어느 한 버스라인에 편중된지 않도록 하여 다중버스 전송시스템의 성능을 향상시킬 수 있는 이점을 제공한다.

Claims (4)

  1. 전송될 시간을 나타내는 전송시간데이타가 포함된 송신용멧세지를 일시 저장하기 위한 메모리수단과, 다수의 버스라인들에 각각 접속되어 버스라인의 상태를 검출하고, 상기 메모리수단에 저장된 송신용멧세지를 해당 버스라인쪽으로 전송하고, 상기 해당 버스라인으로 부터의 멧세지를 상기 메모리수단에 쪽으로 전송하는 다수의 트랜시버수단들과, 일정주기마다 인터럽트신호를 발생하고 실시간을 카운트하는 타이머수단과, 상기 다수의 트랜시버수단들로 부터의 선로상태데이타에 의하여 망상태를 결정하고, 그리고 상기 인터럽트신호의 발생시 상기 결정된 망상태에 따라 시간폭이 다른 시간윈도우를 설정하고 상기 시간윈도우에 속한 상기 전송시간데이타를 갖는 송신용 멧세지가 상기 메모리수단으로 부터 상기 다수의 트랜시버수단중 하나를 경유하여 휴지상태의 버스라인쪽으로 전송되도록 상기 다수의 트랜시버수단 및 상기 메모리수단을 제어하는 프로토콜 제어수단을 구비할 것을 특징으로 하는 다중버스용 실시간 멧세지 전송장치.
  2. 제1항에 있어서, 상기 다수의 트랜시버수단 및 상기 프로토콜 제어수단의 사이에 접속되어 상기 다수의 트랜시버수단으로 부터의 버스라인의 상태데이타를 상기 프로토콜 제어수단쪽으로 전송하고, 상기 프로토콜제어수단으로 부터의 제어신호를 상기 다수의 트랜시버수단쪽으로 전송하는 트랜시버중계수단을 추가로 구비한 것을 특징으로 하는 다중버스용 실시간 멧세지 전송장치.
  3. 제2항에 있어서, 상기 타이머가 상기 다수의 버스라인에 접속된 다른 타이머수단과 동기된 것을 특징으로 하는 다중버스용 실시간 멧세지 전송장치.
  4. 제1항의 다중버스용 실시간 멧세지 전송장치에서 멧세지의 전송을 제어하기 위한 방법에 있어서, 다수의 버스라인의 비지상태, 휴지상태 및 상기 버스라인에서의 멧세지의 충돌들을 검출하여 망상태를 결정하는 과정과, 실시간을 카운트하는 과정과, 전송시간데이타를 갖는 송신용멧세지를 입력하는 과정과, 일정주기마다 상기 결정된 망상태에 따라 다른 폭을 갖는 시간윈도우를 설정하는 과정과, 상기 시간윈도우에 속하는 전송시간데이타를 갖는 송신용멧세지를 검색하고 검색된 송신용멧세지를 버스라인쪽으로 전송하는 과정을 포함한 것을 특징으로 하는 다중버스용 실시간 멧세지 전송제어방법.
KR1019940003633A 1994-02-25 1994-02-25 다중버스용 실시간 멧세지 전송장치 및 그 제어방법 KR970007251B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1019940003633A KR970007251B1 (ko) 1994-02-25 1994-02-25 다중버스용 실시간 멧세지 전송장치 및 그 제어방법
US08/293,395 US5509012A (en) 1994-02-25 1994-08-19 Multi-bus real-time message transmitter

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019940003633A KR970007251B1 (ko) 1994-02-25 1994-02-25 다중버스용 실시간 멧세지 전송장치 및 그 제어방법

Publications (2)

Publication Number Publication Date
KR950026147A KR950026147A (ko) 1995-09-18
KR970007251B1 true KR970007251B1 (ko) 1997-05-07

Family

ID=19377912

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019940003633A KR970007251B1 (ko) 1994-02-25 1994-02-25 다중버스용 실시간 멧세지 전송장치 및 그 제어방법

Country Status (2)

Country Link
US (1) US5509012A (ko)
KR (1) KR970007251B1 (ko)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5926475A (en) * 1996-09-20 1999-07-20 Cisco Technology, Inc. Method and apparatus for ensuring ATM cell order in multiple cell transmission lane switching system
GB2347824B (en) * 1999-03-05 2004-03-03 Internat Mobile Satellite Orga Communication methods and apparatus
CN105119843A (zh) * 2015-08-13 2015-12-02 中国航天科工集团第三研究院第八三五七研究所 消息缓存队列长度的设置方法
CN111527485B (zh) 2017-11-03 2023-09-12 相干逻辑公司 存储器网络处理器
US10838906B1 (en) * 2019-07-11 2020-11-17 Nxp B.V. Communication between transceiver and microcontroller
US20230026431A1 (en) * 2021-07-23 2023-01-26 Microchip Technology Incorporated Circuit and timer for memory

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4654889A (en) * 1985-02-05 1987-03-31 Westinghouse Electric Corp. Multi-star fiber optic network with improved access time
NL8500571A (nl) * 1985-03-01 1986-10-01 Hollandse Signaalapparaten Bv Locaal data-communicatienetwerk volgens het multiple-bus-systeem.
JPS6215950A (ja) * 1985-07-15 1987-01-24 Canon Inc デ−タ伝送制御方式
US4918690A (en) * 1987-11-10 1990-04-17 Echelon Systems Corp. Network and intelligent cell for providing sensing, bidirectional communications and control
US5335226A (en) * 1992-06-18 1994-08-02 Digital Equipment Corporation Communications system with reliable collision detection method and apparatus
DE580938T1 (de) * 1992-06-26 1994-09-22 Yokogawa Electric Corp Steuerungsgerät für Duplex-Kommunikation.

Also Published As

Publication number Publication date
US5509012A (en) 1996-04-16
KR950026147A (ko) 1995-09-18

Similar Documents

Publication Publication Date Title
KR950703766A (ko) 호스트 지시 조합을 구비하는 장치(a device with host indication combination)
KR970056527A (ko) 자동 중지에 의한 반송파 감지 충돌 예방
US4516122A (en) Communication system with collision detection and forced collision
KR970007251B1 (ko) 다중버스용 실시간 멧세지 전송장치 및 그 제어방법
US20090010157A1 (en) Flow control in a variable latency system
GB2287162A (en) Transmitting information on a wired-OR bus
EP0325080B1 (en) Protocol and apparatus for the selective scanning of a plurality of lines connected to a communication device
EP0829095B1 (en) Method and apparatus for reducing latency time on an interface by overlapping transmitted packets
KR920008605A (ko) 최소 경합 프로세서 및 시스템 버스 시스템
JP3192009B2 (ja) 転送制御方式
JPS6040749B2 (ja) シリアル伝送装置
JP2546218B2 (ja) データ通信装置
US6766384B2 (en) Method for avoiding data collision in half-duplex mode using direct memory access logic
JPH08314851A (ja) データ処理システム
KR100243010B1 (ko) 이더넷 버퍼메모리 제어기
KR970056274A (ko) 가상토큰버스 통신망의 매체접근 제어장치 및 그 방법
JPH0575622A (ja) 優先度付き緊急通信制御方式
JP2590773B2 (ja) ファクシミリ通信システム
JP2752456B2 (ja) チャネル装置
JPH08149159A (ja) データ受信装置およびデータ通信方法
JPH0525214B2 (ko)
JPH0556024A (ja) 時分割方向制御伝送方式
JPH0210621B2 (ko)
JPH0235500B2 (ko)
JPS59230346A (ja) 伝送装置の送受信デ−タのバツフアリング方式

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: 20000113

Year of fee payment: 4

LAPS Lapse due to unpaid annual fee