KR102173176B1 - 프레임간 갭이 준수되는 전송방식에 적용하는 저지연 시분할 데이터 전송방법과 그 방법을 위한 기기 - Google Patents

프레임간 갭이 준수되는 전송방식에 적용하는 저지연 시분할 데이터 전송방법과 그 방법을 위한 기기 Download PDF

Info

Publication number
KR102173176B1
KR102173176B1 KR1020190079386A KR20190079386A KR102173176B1 KR 102173176 B1 KR102173176 B1 KR 102173176B1 KR 1020190079386 A KR1020190079386 A KR 1020190079386A KR 20190079386 A KR20190079386 A KR 20190079386A KR 102173176 B1 KR102173176 B1 KR 102173176B1
Authority
KR
South Korea
Prior art keywords
data
bus
time
communication module
occupied
Prior art date
Application number
KR1020190079386A
Other languages
English (en)
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 KR1020190079386A priority Critical patent/KR102173176B1/ko
Application granted granted Critical
Publication of KR102173176B1 publication Critical patent/KR102173176B1/ko

Links

Images

Classifications

    • 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/403Bus networks with centralised control, e.g. polling
    • H04L12/4035Bus networks with centralised control, e.g. polling in which slots of a TDMA packet structure are assigned based on a contention resolution carried out at a master unit
    • 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/40013Details regarding a bus controller
    • 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/40052High-speed IEEE 1394 serial bus
    • H04L12/40071Packet processing; Packet format
    • 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]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Small-Scale Networks (AREA)

Abstract

본 발명에 따른 기기는, 연속되는 데이터 프레임 간에는 최소한 유지되어야 하는 일정 간극을 준수하는 통신방식에 기반하여 데이터를 송수신하도록 의도된 통신모듈과 연결되어 그 통신모듈과 데이터를 송수신할 수 있도록 구성되고, 또한 버스에 형성되는 데이터 사이클의 일련의 시분할된 점유 구간들에서 자신에게 할당된 순서의 점유 구간을 사용하여 상기 통신모듈로부터 수신되는 데이터를 버스로 전송하고, 버스에서 검출하는 데이터를 상기 통신모듈로 전달할 수 있도록 구성된다. 그리고, 버스 상의 캐리어 존부를 알리기 위해 상기 통신모듈에 인가하고 있는 특정 신호에 대해서, 상기 일정 간극에 해당하는 시간과 상기 점유 구간에 해당하는 시간이 더해진 시구간 동안 캐리어가 없음을 알리는 상태, 예를 들어 LOW가 되게 하고, 상기 시구간의 이전과 이후로는 캐리어가 있음을 알리는 상태, 예를 들어 HIGH가 되게 하는 방식으로 상기 점유 구간에 동기하여 구동한다.

Description

프레임간 갭이 준수되는 전송방식에 적용하는 저지연 시분할 데이터 전송방법과 그 방법을 위한 기기 {Low latency time-divisional data transmission method applicable to a transmission protocol complying with inter-frame gap and a device for said method}
본 발명은, 복수의 노드(node)들이 서로 공유하는 버스를 통해 상호 간에 데이터를 송수신할 수 있게 하는 다중접속 방식, 특히 캐리어 감지 다중접속/충돌탐지( CSMA/CD: Carrier Sense Multiple Access/Collision Detection )방식에 따른 신호 인터페이스를 준수하면서 버스를 통한 데이터 전송은 시분할 다중접속 방식에 따라 이루어지게 하는 방법과 그 방법을 위한 기기에 관한 것이다.
사람의 생활을 편리하게 하는 수 많은 종류의 복잡한 장치들, 예를 들어, 차량, 의료 기기, 통신 기기, 컴퓨팅 장치 등은, 많은 부품들 간에 정보를 실시간으로 교환함으로써 다양하고 편리한 기능 및 우수한 성능 등을 제공하고 있다. 그리고, 이러한 부품들 간의 정보 교환은, 배선이나 조립의 편의성을 위해 부품들이 공통적으로 연결되는 데이터 버스를 통해 이루어지게 한다. 차량 등에서의 이러한 정보 교환은 특정 방식의 통신망, 예를 들어 CAN (Controller Area Network)을 통해서 주로 이루어진다.
차량 등에 채택되는 이 CAN과 같은 특화된 통신망은, 차랑의 경우에, 그 운행 상태나 진단 결과, 안전 및 편의 장치의 상태, 그리고 운행 제어를 위한 엔진 및 변속기 등의 제어신호의 통신을 위해 사용되고 있다.
그런데, 오늘날에는 위와 같은 유형의 차량의 상태나 운행과 관련된 데이터 외에 차량의 향상된 기능, 예를 들어 오토 그루즈, 커넥티드 카 등을 위해 다양한 유형의 데이터가 요구되고 있고, 이런 유형의 데이터는 제어장치들 간에 신속히 통신되어 상호 공유되거나 또는 해당 데이터를 처리하는 단말기기에 통신망을 통해 전송될 필요가 있지만, CAN이 지원하는 전송속도로써는 이러한 요건을 충족시키기가 어렵다.
따라서, 보다 고속의 통신을 지원하는 통신방식의 통신망, 예를 들어 이더넷(Ethernet)과 같은 랜(LAN)을 차량 등에 부품들 간의 통신망으로 채택하고 있기도 하다.
이더넷과 같은 랜에서는 버스를 공유하는 노드들 간의 버스 중재를 위해 CSMA/CD 방식을 적용하고 있는데, 이 CSMA/CD 방식에서는, 버스 점유가 없는 상태를 감지하는 임의의 노드가 버스 점유를 시도할 수 있기 때문에, 2개 이상의 노드가 동시에 점유를 시도할 수도 있고, 이런 경우 버스 충돌이 발생하게 되며, 이 충돌은 임의의 지연시간 후의 재시도를 통해 해소된다.
그런데, 차량 등의 경우에는 많은 부품들, 즉 각기 하나의 노드를 형성하는 많은 부품들이 하나의 통신망에 연결될 수가 있는데, 이런 경우에는 CSMA/CD 방식에서는 버스 충돌이 빈번해 질 수 밖에 없고, 따라서, 많은 노드들이 단일 버스를 공유하는 경우에는 이러한 버스 충돌을 해소하기 위해 소요되는 시간으로 인해 데이터 통신이 지연될 가능성이 현저히 높아진다.
이러한 이유로, CSMA/CD 방식에 기반하여 동작하는 링크 컨트롤 칩, 예를 들어 MAC( Media Access Controller ) 칩은 그대로 사용하되, 그 칩과 MII ( Media Independent Interface ) 규격을 만족시키는 신호방식을 수행하면서 물리적인 버스와의 신호 송수신을 담당하는 파이(PHY) 인터페이스에 대해서는, 시분할 다중접속 방식에 따라 버스를 액세스할 수 있게 하는 방안들이 개발되거나 제안되고 있다. 도 1 및 2는 이러한 방안들 중 하나를 설명하는 도면들로서, 도 1은, CSMA/CD 방식에 기반하는 기존의 통신모듈인 링크 컨트롤러(10)( 이하, '기존 링크 컨트롤러'라 약칭한다. )와 시분할 다중접속 방식용 파이 인터페이스(1)( 이하, '시분할 인터페이스'로 약칭한다. )가 MII 에서 정하고 있는 신호방식에 따라 서로 연결되어 구성되는 하나의 노드를 간략히 도시한 것이고, 도 2는, 도 1의 노드가, 버스를 점유하여 데이터를 전송하는 예를 보여준다.
시분할 다중접속방식에 따라 버스를 공유하는 각각의 노드가 순차적으로 버스를 점유하기 위해서는, 해당 버스에 연결되어 있는 각각의 시분할 인터페이스는 시분할에 의해 자신에게 독점적으로 할당되는 순서의 점유 구간( 이하, 점유 구간을 '채널'이라 칭한다. )의 순서를 알아야 하는데, 이러한 채널 할당은, 일반적으로 해당 버스에 대해서 시분할 점유를 중재하도록 설정된 시분할 인터페이스( 이를, '마스터 인터페이스'라 칭한다. )에 의해 이루어진다. 도 1과 2의 예에서는, 마스터 인터페이스에 의해 노드 식별자가 버스에 연결된 각각의 시분할 인터페이스( 마스터 인터페이스를 포함 )에 할당되고, 그 노드 식별자가 곧, 마스터 인터페이스가 버스 상에 형성하는 버스 사이클에서의 해당 노드에 할당된 채널의 순서임이 전제된다.
버스에 연결된 각각의 시분할 인터페이스에 노드 식별자를 할당하는 방식은 본 발명과 직접적인 관련이 없으므로, 이에 대한 구체적인 설명은 생략하며, 시분할 다중접속방식을 위해 공지된 버스 상의 노드들에 대한 순서 할당방법들 중 임의의 방법이 적용됨에 따라 해당 노드에 대한 채널 순서가 정해진 것으로 가정한다. 이는, 이후의 본 발명의 구체적인 실시예들에 대한 설명에서도 마찬가지이다.
마스터 인터페이스는 특정의 비트 패턴을 갖는 비콘(beacon) 신호를 버스로 송신함으로써, 새로운 버스 사이클의 시작을, 해당 버스에 연결된 각 노드, 즉 시분할 인터페이스에 알리게 된다. 도 2에 예시된 바와 같이, 비콘의 패턴 외에도 버스 사이클에 대한 정보를 알리기 위한 정보를 포함하는 헤더(2)를 마스터 인터페이스가 매 버스 사이클의 시작에 위치시킬 수도 있다.
버스 사이클이 시작되면 각 노드는 자신에게 할당된 순서의 채널을 점유하여 버스를 사용할 수 있는데, 버스를 점유하여 데이터를 전송하게 되면, 해당 채널은 전송하는 데이터 프레임의 크기에 따라 그 시간이 길어진다(3). 따라서, 각각의 채널은, 노드들에게 버스 점유의 기회를 포착할 수 있게 확보되는 시간폭(TAccTO)이 되는 것이다.
이와 같은 시간폭(TAccTO)은, 너무 길게 하면, 임의의 한 노드가 버스 점유 기회를 포착하기 위해 대기하는 시간이 길어지게 되어 적절치 않으며, 너무 짧게 하면, 버스를 형성하는 케이블의 길이나 노드에서의 물리적인 신호 처리에 따른 지연에 의해 해당 채널을 포착하지 못하는 노드가 발생할 수도 있다.
따라서, 통신망이 장착되는 장치의 유형에 따라 달라질 수 있지만, 차량 등과 같은 장치에 적용되는 경우에는 채널의 기본 시간폭(TAccTO)( 이하에서는, 이 기본 시간폭의 구간에 대해서 특별히 '포착 슬롯'이라고도 칭한다. )을 2 μsec ~ 10 μsec의 범위내에서 선정하는 것이 바람직한 것으로 알려져 있디.
따라서, 도 1과 같이 구성된 노드의 시분할 인터페이스(1)는, 자신에게 할당된 순서의 채널, 즉 포착 슬롯이 되었을 때 버스를 점유하기 위해, 자신에게 연결된 상기 기존 링크 컨트롤러(10)에 버스 상의 캐리어 존부(存否)를 알리기 위해 인가하는 캐리어 감지신호(CRS)를 LOW 상태로 유지시킨다. LOW 상태의 캐리어 감지신호(CRS)는, 상기 기존 링크 컨트롤러(10)로 하여금 현재 버스 상에 어떠한 데이터도 실리고 있지 않은 것으로 인식하게 한다.
이에 따라, 상기 기존 링크 컨트롤러(10)가 버스를 통해 타 노드로 전송할 데이터가 있는 경우에는 언제든지 상기 시분할 인터페이스(1)로 전송하게 된다.
도 2에 예시된 바와 같이, 만약, 자신에게 할당된 k번째의 포착 슬롯이 아님에도 불구하고 상기 기존 링크 컨트롤러(10)로부터 데이터가 수신되기 시작하면(tDTry_S[k]), 상기 시분할 인터페이스(1)는 그 데이터를 주어진 방식에 따른 비트 코딩하여 버스로 전송하지 않고, 점유 충돌을 알리는 충돌 감지신호(COL)를 HIGH로 전환시킨다(tRej). 이와 동시에 캐리어 감지신호(CRS)도 HIGH로 전환시킨다. 캐리어 감지신호(CRS)에 대해서는 반드시 동시에 전환시키지 않고, HIGH로 전환시키는 시점을 충돌 감지신호(COL)를 LOW로 전환시키기 이전이기만 하면 무방하다.
충돌 감지신호(COL)와 캐리어 감지신호(CRS)가 위와 같이 HIGH상태로 전환되면, 데이터를 전송하고 있던 상기 기존의 링크 컨트롤러(10)는, 데이터 전송을 중단하고, 캐리어 감지신호(CRS)가 LOW로 전환될 때까지 대기한다.
이러한 대기 동안에, 버스 상에 k번째의 포착 슬롯이 시작되면(tch_S[k]), 상기 시분할 인터페이스(1)는, 버스 상에 버스가 점유될 것을 미리 알리는 특정 신호(4)( 이를 '커미트(commit) 신호'라고도 칭한다. )를 송신하고, 동시에 캐리어 감지신호(CRS)를 LOW로 전환시킨다.
상기 기존 링크 컨트롤러(10)는, 준수하는 통신방식에 따라, 캐리어 감지신호(CRS)가 LOW로 전환되어, 버스 상에 실리는 데이터에 따른 캐리어가 없음을 인지하게 됨에도 불구하고, 데이터를 즉시 전송하지 않고, 지정된 프레임 간에 최소한 유지시켜야 하는 일정 간극에 해당하는 시간(TIFG)( 이하, 본 명세서에서는 이 시간을 '프레임간 갭'이라 칭한다. )만큼 경과한 후에 데이터를 상기 시분할 인터페이스(1)로 전송하게 된다(tData_S[k]).
그런데, 프레임간 갭은 특정 비트 수, 예를 들어 96 비트로 정해져 있는데, 버스의 전송속도가 10Mbps인 경우면, 이 96비트는 9.6 μsec가 된다. 따라서, 포착 슬롯(TAccTO)에 대해 9.6μsec보다 짧은 시간으로 적용하게 되면, 상기 시분할 인터페이스(1)가 자신의 포착 슬롯 동안에, 만약, 상기 기존 링크 컨트롤러(10)로부터 데이터가 수신되기 시작할 때(tData_S[k])까지 버스에 아무런 신호를 송신하지 않으면, 다른 노드의 시분할 인터페이스는, k번째의 포착 슬롯이 경과하고 다음 순서의 포착 슬롯이 진행되는 것으로 인지하게 될 것이다. 이러한 현상이 발생하지 않도록 상기 시분할 인터페이스(1)는, 자신의 포착 슬롯이 되었을 때(tch_S[k]) 캐리어 감지신호(CRS)를 LOW로 전환시킴과 동시에, 버스 사용을 예약하는 특정 비트 패턴의 커미트 신호(4)를 버스로 송신하여 타 노드들로 하여금 채널이 스킵되지 않고 사용될 것임을 알리게 된다.
커미트 신호(4)는, 도시된 바와 같이 프레임간 갭에 해당하는 시간 동안 지속될 수도 있지만, 그렇지 않고, 포착 슬롯의 시작으로부터 일정 시간 동안만 지속될 수도 있다.
캐리어 감지신호(CRS)를 LOW로 전환시킨 후 프레임간 갭(TIFG)이 경과하여 상기 기존 링크 컨트롤러(10)로부터 데이터가 수신되기 시작하면(tData_S[k]), 시분할 인터페이스(1)는 그 데이터에 대해서, 지정된 방식에 따른 비트 코딩, 예를 들어 4B/5B 코딩방식에 따라 코딩하여 일련의 비트들로 버스로 전송하게 된다. 그리고, 수신된 프레임의 마지막 데이터에 대해서 버스로의 전송이 완료되면, 프레임의 종단을 알리는 특정 비트 패턴의 종단 식별자(5)를 전송함으로써, 타 노드들로 하여금, 다음 순서의 채널, 즉 포착 슬롯(6)이 진행됨을 알리게 된다.
그런데, 위와 같이, CSMA/CD 방식을 기반으로 동작하는 기존 링크 컨트롤러와의 인터페이스 방식을 그대로 준수하면서 시분할 방식으로 버스를 점유하여 데이터 프레임을 전송하는 방법은, 임의 노드가 자신이 점유하여 사용할 채널이 되었음에도 불구하고, 프레임간 갭이 경과하여야 실제의 데이터( 링크 컨트롤러로부터 수신되는 데이터 )를 전송할 수가 있다. 즉, 데이터 전송에 지연이 발생한다.
또한, 채널 사용을 예약하기 위한 특별한 신호인 커미트 신호를 생성하여 버스에 실어야 하는 동작이 필요하다.
본 발명은, 프레임간 갭이 요구되는 전송방식을 준수하면서도 시분할 방식에 따라 버스를 점유하여 신속하게 데이터를 전송할 수 있게 하는 방법과 그 방법을 위한 기기를 제공하는데 일 목적이 있는 것이다.
본 발명의 다른 목적은, CSMA/CD 방식에 따른 신호 교환이 이루어지도록 설계된 기기에 대해서, 버스로의 데이터 송신이 보다 신속하게 이루어지도록 하는 방법과 그 방법을 위한 기기를 제공하는 것이다.
본 발명의 또 다른 목적은, CSMA/CD 방식에 따른 신호 교환이 이루어지도록 설계된 기기가 요구하는 프레임간 갭보다 더 짧은 시간격으로써 시분할 방식에 따라 데이터를 전송할 수 있게 하는 방법과 그 방법을 위한 기기를 제공하는 것이다.
본 발명의 또 다른 목적은, 시분할 방식에 따라 이용가능한 시구간에 대한 사용 시점을, 물리적인 버스의 전송속도에 따라 적응적으로 조정하는 방법과 그 방법을 위한 기기를 제공하는 것이다.
본 발명의 목적은, 상기 명시적으로 서술된 목적에 국한되는 것은 아니며, 본 발명에 대한 구체적이고 예시적인 하기의 설명에서 도출될 수 있는 효과를 달성하는 것을 그 목적에 당연히 포함한다.
본 발명의 일 측면에 따른, 공유되는 버스를 통해 다른 기기들과 데이터를 송수신할 수 있는 기기는, 상기 버스에 실리는 신호로부터 데이터를 검출하도록 구성되고, 또한 인가되는 데이터를 상기 버스에 적합한 신호 형태로 변환하여 송신하도록 구성된 트랜시버와, 연속되는 데이터 프레임 간에는 최소한 유지되어야 하는 일정 간극을 준수하는 통신방식에 기반하여 데이터를 송수신하도록 의도된 통신모듈과 연결되어 그 통신모듈과 데이터를 송수신할 수 있도록 구성되고, 또한 상기 버스에 형성되는 데이터 사이클의 일련의 시분할된 점유 구간들에서 자신에게 할당된 순서의 점유 구간을 사용하여 상기 통신모듈로부터 수신되는 데이터를 상기 트랜시버로 인가하고, 상기 트랜시버가 검출하는 데이터를 상기 통신모듈로 전달할 수 있도록 구성된 컨트롤러를 포함하여 구성된다. 그리고, 상기 컨트롤러는, 상기 버스 상의 캐리어 존부를 알리기 위해 상기 통신모듈에 인가하고 있는 특정 신호에 대해서, 상기 일정 간극에 해당하는 제 1시간과 상기 점유 구간에 해당하는 제 2시간이 더해진 시구간 동안 캐리어가 없음을 알리는 제 1상태가 되게 하고, 상기 시구간의 이전과 이후로는 캐리어가 있음을 알리는 제 2상태가 되게 하는 방식으로 상기 점유 구간에 동기하여 구동할 수 있다.
본 발명에 따른 일 실시예에서는, 상기 컨트롤러가, 상기 점유 구간이 시작되는 시점으로부터 상기 제 1시간 만큼 앞선 시점에 상기 특정 신호를 상기 제 2상태에서 상기 제 1상태로 전환시켜서 상기 시구간이 시작되게 한다.
본 발명에 따른 일 실시예에서는, 상기 컨트롤러가, 상기 점유 구간에 앞서는 순서의 전(前) 점유구간에서 버스가 점유되어 데이터 프레임이 상기 버스에 실리는 경우에, 그 데이터 프레임에 의한 버스 점유가 끝나는 시점으로부터, 상기 점유 구간 직전 순서의 점유 구간과 상기 전 점유 구간과의 순서 상 차이에 상기 제 2시간을 곱하여 얻어지는 시간격 만큼 지난 시점에, 상기 특정 신호를 상기 제 2상태에서 상기 제 1상태로 전환시켜서 상기 시구간이 시작되게 한다.
본 발명에 따른 일 실시예에서는, 상기 컨트롤러가, 상기 시구간 동안에 상기 버스 상에 데이터가 실림으로써 상기 트랜시버가 캐리어를 검출하면, 상기 시구간이 종료되기 전에 상기 특정 신호를 상기 제 1상태에서 상기 제 2상태로 전환시킨다. 본 실시예에서는, 상기 컨트롤러가, 상기 시구간이 시작되고 상기 제 1시간이 경과된 이후에 상기 통신모듈로부터 데이터가 수신되기 시작하면 수신되는 대로 상기 트랜시버에 인가하게 되는데, 이때는 상기 트랜시버가 검출하는 캐리어는 상기 컨트롤러가 상기 버스로 송신하는 데이터에 의한 것이 된다. 또한, 본 실시예에서는, 상기 컨트롤러가, 상기 시구간 내에서 상기 특정 신호를 상기 제 2상태로 전환시켰음에도 상기 통신모듈로부터 데이터가 수신되면, 버스 상에서의 충돌 여부를 알리기 위해 상기 통신모듈에 인가하고 있던 신호에 대해서, 충돌이 감지되었음을 나타내는 상태로 전환시키게 된다.
본 발명에 따른 일 실시예에서는, 상기 일련의 시분할된 점유 구간들 각각이, 상기 제 1시간의 1/3보다 긴 시간의 길이를 갖는다.
본 발명에 따른 일 실시예에서는, 상기 컨트롤러가, 상기 점유 구간에 앞서는 순서의 전(前) 점유구간에서 버스가 점유되어 데이터 프레임이 상기 버스에 실리는 경우에, 그 데이터 프레임에 의한 버스 점유가 끝나기 이전의 특정 시점으로부터, 상기 점유 구간 직전 순서의 점유 구간과 상기 전 점유 구간과의 순서 상 차이에 상기 제 2시간을 곱하여 얻어지는 시간격 만큼 지난 시점에, 상기 특정 신호를 상기 제 2상태에서 상기 제 1상태로 전환시켜서 상기 시구간이 시작되게 한다. 여기서, 상기 특정 시점은, 상기 제 1시간에서 상기 버스 상에 연속되는 데이터 프레임 간에 최소한 유지되어야 하는 것으로 설정된 최저 간극에 해당하는 시간을 감한 시간 만큼, 상기 데이터 프레임에 의한 점유가 끝나는 시점으로부터 앞선 시점일 수 있다.
본 발명에 따른 일 실시예에서는, 상기 컨트롤러가, 상기 데이터 사이클에 실리는 특정 정보에 근거하여, 상기 최저 간극에 대해 상기 일정 간극보다 짧은 간극을 적용하거나 아니면 상기 일정 간극보다 긴 간극을 적용할 수 있다.
본 발명에 따른 일 실시예에서는, 상기 버스 컨트롤러가, 상기 데이터 사이클을 상기 버스 상에 형성하도록 구성된 마스터(master) 컨트롤러일 수 있다. 본 실시예에서는, 상기 버스 컨트롤러가, 상기 통신모듈에 전달할 데이터 양의 적체 정도에 근거하여, 상기 형성하는 데이터 사이클의 헤더에 포함되어 있는 상기 최저 간극의 크기를 알리는 정보를 적응적으로 변경한다. 다르게는, 상기 버스에 연결된 타 기기가 상기 데이터 사이클에 싣는 적체 상태정보에 근거하여, 상기 형성하는 데이터 사이클의 헤더에 포함되어 있는 상기 최저 간극의 크기를 알리는 정보를 적응적으로 변경할 수도 있다. 여기서, 상기 적체 상태정보는, 상기 데이터 사이클의 헤더에 확보된 필드에 실리는 것이거나, 또는 데이터 프레임의 종단을 알리기 위해 그 종단에 부가되는 특정 식별자에 포함되는 것일 수 있다.
본 발명에 따른 일 실시예에서는, 상기 기기가, 상기 통신모듈로 전달할 데이터를 임시로 저장할 수 있는 버퍼를 더 포함하여 구성될 수도 있다. 이 경우, 상기 컨트롤러는, 상기 통신모듈로 하나의 데이터 프레임을 전달 완료한 시점부터 상기 제 1시간이 경과하지 않은 상태에서 상기 트랜시버가 상기 버스에서 데이터를 검출하게 되면 그 검출되는 데이터에 대해서는 상기 버퍼에 임시 저장한 후 상기 제 1시간이 경과한 시점부터 상기 통신모듈로 전달하게 된다.
본 발명에 따른 일 실시예에서는, 상기 컨트롤러가, 상기 점유 구간에 동기하여 상기 특정 신호를 상기 제 2상태에서 상기 제 1상태로 전환시켜 상기 시구간이 시작되게 해야 하는 전환 시점이, 새로이 형성될 상기 데이터 사이클의 헤더를 기준으로 상기 제 1시간과 상기 헤더의 시간폭과의 차이 이상으로 앞서지만 상기 제 1시간 이상으로는 앞서지 않을 때에는, 상기 전환 시점을 상기 헤더의 종료 시점에서 상기 제 1시간만큼 앞선 시점으로 이동시키게 된다.
본 발명에 따른 일 실시예에서는, 상기 컨트롤러가, 상기 특정 신호에 대해서 상기 제 2상태로 유지하면서, 상기 점유 구간과 동기되어 그 점유 구동 동안만 상기 제 1상태가 되게 구동하는 특정 모드로 동작할 수도 있다. 이 특정 모드는, 비트 수로 정해진 상기 일정 간극에 대해 상기 버스에 적용하는 전송속도를 그 비트 수에 적용하여 얻어지는 상기 제 1시간이 상기 제 2시간보다 짧은 경우에 한하여 적용된다.
본 발명의 다른 일 측면에 따른, 통신모듈에 대해, 시분할 방식에 따라 버스를 사용할 수 있게 하는 일 방법은, 상기 버스 상에 형성되는 데이터 사이클의 일련의 시분할된 점유 구간들에서 임의 순서의 점유 구간을 할당받는 1단계와, 현재 형성되는 데이터 사이클에서 상기 임의 순서의 점유 구간에 동기하여, 상기 버스 상의 캐리어 존부를 알리기 위해 상기 통신모듈에 인가하고 있는 특정 신호의 상태를 전환시키는 2단계를 포함하여 이루어진다. 그리고, 상기 2단계는, 상기 일정 간극에 해당하는 시간과 상기 임의 순서의 점유 구간에 해당하는 시간이 더해진 시구간 동안 캐리어가 없음을 알리는 제 1상태가 되게 하고, 상기 시구간의 이전과 이후로는 캐리어가 있음을 알리는 제 2상태가 되게 하는 방식으로 상기 특정 신호의 상태를 전환시킨다.
본 발명에 따른 일 실시예에서는, 상기 2단계가, 상기 특정 신호를 상기 제 2상태에서 상기 제 1상태로 전환시키는 시점이 상기 임의 순서의 점유 구간이 시작하는 시점보다 앞서서 이루어지도록 상기 특정 신호의 상태를 전환시킨다.
전술한 기기와 방법, 그리고 다양한 실시예들에서, 상기 통신모듈은, 접속되는 버스를 이용함에 있어서 CSMA/CD 방식에 기반하여 동작하는 기기일 수 있다.
전술한 본 발명 또는, 하기에서 첨부된 도면과 함께 상세히 설명되는 본 발명의 적어도 일 실시예에 따른, 프레임간 갭이 준수되는 전송방식에 적용하는 저지연 시분할 데이터 전송방법은, CSMA/CD 방식에 기반하여 동작하는 기존의 통신용 부품을 그대로 사용하면서도 그 통신용 부품에 대해서 버스 점유의 경합없는 시분할 방식에 따라 버스를 사용할 수 있게 하되, 그 버스 사용에서 최대한 신속하게 데이터 전송이 이루어지게 한다.
또한, 본 발명의 일 실시예에 따르면, CSMA/CD 방식에 기반하여 동작하는 기존의 통신용 부품의 시분할 다중접속방식의 버스 사용에 있어서, 프레임간 갭내에서의 경합을 허용하는 규칙에 따라 발생할 수도 있는 버스사용의 충돌이 결코 발생하지 않도록 시분할된 구간폭을 선정함으로써, 기존의 통신용 부품에 충돌이 감지되었음을 알리는 신호가 불필요하게 한다. 따라서, 본 실시예는, 그러한 용도의 신호단자를 제거할 수 있기 때문에 실시간 인터페이스의 설계가 좀 더 간편해지는 잇점이 있다.
본 발명의 또 다른 실시예에 따르면, CSMA/CD 방식에 기반하여 동작하는 기존의 통신용 부품이 요구하는 프레임간 갭보다 짧은 간격을 시분할 방식에 따라 전송하는 데이터 프레임 이후에 확보되게 한다. 이는, 데이터 프레임이 실리는 데이터 사이클의 시간을 축소시킬 수 있게 하므로, 버스에 연결된 각 노드로 하여금 데이터 전송 기회를 보다 빨리 포착할 수 있게 한다. 즉, 좀 더 빠른 데이터 전송의 가능성을 제공한다.
도 1은, CSMA/CD 방식에 기반하는 기존의 링크 컨트롤러와 시분할 다중접속 방식용 파이(PHY) 인터페이스가 상호 간에 지정된 신호방식에 따라 서로 연결되어 구성된 하나의 노드를 간략히 도시한 것이고,
도 2는, 도 1의 노드가, 복수의 노드들이 공유하는 버스를 시분할 방식에 따라 점유하여 데이터를 전송하는 과정에 대한 하나의 예이고,
도 3은, 본 발명의 일 실시예에 따른, 프레임간 갭이 준수되는 전송방식을 기반으로 하는 저지연 시분할 데이터 전송방법을 각기 수행할 수 있는 버스 인터페이스 모듈들이 하나의 버스에 연결된 시스템을 예시한 것이고,
도 4는, 본 발명의 일 실시예에 따른, 임의의 한 노드의 버스 인터페이스 모듈이 시분할에 의해 자신에게 할당된 채널을 사용하여 데이터 프레임을 전송하는 과정을 관련 신호들과 함께 도시한 것이고,
도 5는, 본 발명의 일 실시예에 따른, 채널 점유 순서가 서로 인접된 양 버스 인터페이스 모듈이 자신의 채널을 사용하여 데이터 프레임을 각각 전송하는 과정을 관련 신호들과 함께 도시한 것이고,
도 6은, 본 발명의 일 실시예에 따른, 채널 점유 순서가 서로 인접된 양 버스 인터페이스 모듈이 자신의 채널을 사용함에 있어 포착 슬롯의 크기에 따라서는 사용 시도가 충돌할 수 있다는 것과 이러한 사용시도의 충돌이 처리되는 과정을 관련 신호들과 함께 보여주는 것이고,
도 7과 8은, 본 발명의 일 실시예에 따라, 임의의 채널에서 데이터 프레임이 전송된 경우에 그 데이터 프레임의 이후에 대해서, CSMA/CD 방식에 기반하는 기존의 링크 컨트롤러가 요구하는 프레임간 갭보다 짧은 시구간이 확보되는 것을, 데이터 프레임이 연속적으로 전송된 경우와 하나의 데이터 프레임이 전송된 경우에 대해 각각 예시적으로 보여주는 것이고,
도 9는, 본 발명의 일 실시예에 따라, 데이터 프레임 이후에 확보하는 빈(blank) 시구간이 가변될 수 있도록 그 시구간의 크기를 알리는 정보가 데이터 사이클의 헤더에 포함되는 것을 예시한 것이고,
도 10은, 본 발명의 다른 일 실시예에 따라, 데이터 프레임 이후에 확보하는 빈 시구간의 크기를 알리는 정보와 그 크기의 변경을 각 노드가 개별적으로 요구할 수 있도록 확보된 필드가 데이터 사이클의 헤더에 포함되는 것을 예시한 것이고,
도 11은, 본 발명의 또 다른 일 실시예에 따라, 데이터 프레임 이후에 확보하는 빈 시구간의 크기의 변경을 임의의 노드가 개별적으로 요구할 수 있도록, 데이터 프레임의 종단에 부가하는 종단 식별자에 요구 지시자가 확보된 예를 나타낸 것이고,
도 12a 및 12b는, 본 발명에 따른 실시예들에서, 데이터 사이클의 각 채널에 대해 캐리어 감지신호를 해당 채널보다 프레임간 갭만큼 앞서서 미리 LOW로 전환시키게 되는 시점에 대한 결정이, 데이터 사이클의 헤더의 크기에 따라 달리 진행되는 것을 예시한 것이고,
도 13은, 본 발명의 일 실시예에 따라, 캐리어 감지신호의 LOW로의 전환을 해당 채널을 기준으로 어느 시점에 해야 하는지를 버스의 전송속도에 따라 적응적으로 설정하는 것을 도식적으로 나타낸 도면이다.
이하에서는, 본 발명에 따른 다양한 실시예들에 대해 첨부된 도면을 참조하여 상세히 설명한다.
이하의 본 발명에 따른 실시예들의 설명과 첨부된 도면에 있어서, 부기된 동일 번호는 특별한 사정이 없는 한 동일한 구성요소를 지칭한다. 물론, 설명의 편의와 이해에의 도움을 위해, 필요에 따라서는 동일한 구성요소에 대해서도 서로 다른 번호로 부기될 수도 있다.
도 3은, 본 발명의 일 실시예에 따른, 프레임간 갭이 준수되는 전송방식을 기반으로 하는 저지연 시분할 데이터 전송방법을 각기 수행할 수 있는 버스 인터페이스 모듈들(100,110i, i=2,.,N)이 하나의 데이터 버스에 연결된 시스템을 예시한 것으로서, 각각의 버스 인터페이스 모듈에는 고유의 노드 식별자가 할당되어 있고, 특별한 번호, 예를 들어 1의 노드 식별자가 할당되어 있는 마스터(master) 노드인 버스 인터페이스 모듈(100)( 이하, '마스터 모듈'이라 약칭한다. )은, 데이터 버스를 서로 공유하는 자신을 포함한 모든 노드들을 디스커버리(discovery)하여 그에 따라 발견된 노드들, 즉 버스 인터페이스 모듈들이 서로 간에 충돌없이 버스를 시분할 다중접속( TDMA: Time Division Multiple Access ) 방식에 따라 독점적으로 점유할 수 있도록, 자신이 버스 상에 형성하는 데이터 사이클에서의 일련의 채널들에 대하여 각 버스 인터페이스 모듈의 점유 순서를 할당하는 동작을 수행한다.
도시된 데이터 버스는, 전기 신호선으로써 이루어진 유선의 버스를 나타내고 있지만, 본 발명은 유선의 버스 뿐만 아니라, 기 지정된 통신 방식에 의해 특정의 복수 노드들 간에만 상호 무선 통신할 수 있게 하는 무선의 버스에도 당연히 적용될 수 있다.
버스를 서로 공유하는, 즉, 유선 버스인 경우에 그 버스에 물리적으로 연결된 노드들을 발견하여, 각각의 노드들에 대하여 데이터 사이클 상에서 점유할 채널의 순서를 할당하는 방법은, '발명의 배경이 되는 기술'의 항목에서 설명한 바와 같이 기 공지된 다양한 방법들 중 어느 하나의 방법이 선택되어 적용될 수 있다.
도 3은, N개의 버스 인터페이스 모듈들에 대하여, 1부터 N까지의 일련번호로써 노드 식별자가 할당되어 있는 것으로서, 본 명세서에서는, 도 4에 예시된 바와 같이, 그 노드 식별자의 오름차순으로 데이터 사이클 상에 채널이 할당되는 것(40)을 전제한다. 하지만, 이러한 전제는, 본 발명의 원리와 기술적 사상에 대한 이해의 편의를 위한 것일 뿐이고, 비연속적인 노드 식별자를 할당하거나, 노드 식별자를 기준으로 비순차적인 방식으로 데이터 사이클 상에 각 버스 인터페이스 모듈의 채널 순서를 할당하는 경우에도, 이하에서 실시예로써 구체적으로 설명하는 본 발명의 원리와 기술적 사상은 당연히 적용될 수 있다.
하나의 버스를 공유하는 상기 버스 인터페이스 모듈들(100,110i, i=2,..,N) 각각에는( 비록, 도면의 간략화와 작성의 편의를 위해 일부의 버스 인터페이스 모듈(100,110k)에 대해서만 그 연결을 도시하였지만 ), CSMA/CD 방식에 기반하여 버스를 액세스하도록 설계된 통신모듈인 기존 링크 컨트롤러(10i, i=1,..,k,,)가 연결되며, 이와 같이 기존 링크 컨트롤러와 각기 연결되는 버스 인터페이스 모듈들(100,110i, i=2,..,N)은, 해당 버스에서 각각의 노드가 되는, 특정의 기능을 수행하는 장치, 예를 들어, 차량의 경우 전자 제어장치( ECU: Electronic Control Unit )에 통신용 기기로서 부속될 수 있다.
한편, 버스 상의 점유에 대한 중재를 수행하는, 노드 식별자 1의 마스터 모듈(100)은, 각 버스 인터페이스 모듈이 자신에게 할당된 순서에 따라 버스를 독점적으로 점유할 수 있게 하는 데이터 사이클(cycle)을 도 4에 예시된 바와 같이 버스에 형성하는 버스 컨트롤러(101)와, 버스와의 신호 인터페이스를 위해, 데이터를 지정된 방식, 예를 들어 4B/5B 인코딩 방식에 따라 코딩과 디코딩을 수행하고( 요구하는 전송 방식에 따라서는 비트를 변조하여 송신할 수도 있다. ), 또한 버스 상에 실리는 캐리어(carrier)를 감지하는 트랜시버(transceiver)(102)를 포함하여 구성되며, 상기 마스터 모듈(100)이 버스에 형성하는 데이터 사이클 상의 특정 신호, 예를 들어 비콘(beacon) 신호와 비트들을 기준으로 클럭 동기되어 그 사이클에 수동적으로 참여하는 다른 버스 인터페이스 모듈(110i, i=2,..,N)( 이하, '슬레이브 모듈'이라 칭한다. )들도, 각기 상기 마스터 모듈(100)과 물리적으로 동일한 구성을 갖는다.
각 슬레이브 모듈(110i, i=2,..,N)의 버스 컨트롤러는, 버스의 디스커버리에 참여하고 그 디스커버리 과정이 종료되면, 그 디스커버리의 결과에 따라 자신에게 할당되는, 시분할된 일련의 구간들의 데이터 사이클에서의 점유 구간, 즉 채널에서 버스를 점유해 데이터를 전송하게 되며, 각 버스 인터페이스 모듈의 트랜시버는 동 모듈내의 버스 컨트롤러가 전송하는 데이터를, 버스 상의 전송에 요구되는 방식에 따라 인코딩하여 송신하고, 버스에 실리는 신호를 검출하여 데이터로 변환하여 요구되는 방식에 따라 디코딩한 후 버스 컨트롤러에 전달한다.
버스 점유 중재를 위한 시분할된 채널의 할당과 버스 상에 그 채널들이 진행되고 있음을 알리는 데이터 사이클을 형성하는 동작 등을 제외한다면, 마스터 모듈과 슬레이 모듈들의 각 버스 컨트롤러는 서로 동일한 동작을 수행하며, 각 모듈내의 트랜시버 또한 마찬가지이다.
도 4에 예시된, 상기 마스터 모듈(100)에 의해 버스 상에 형성되는 데이터 사이클은, 선두에 전치되는 헤더(401)와, 버스에 연결된 모든 버스 인터페이스 모듈들에 대해 개별적으로 할당되는 채널들로 구성되며, 상기 헤더(401)에는, 데이터 사이클의 시작 임을 알리는 비콘 신호가 포함된다. 또한, 실시예에 따라서는, 상기 헤더(401)에 다른 추가 정보가 실릴 수도 있다. 이에 대해서는 후술한다.
이하에서는, 버스에 연결되어 있는 각 버스 인터페이스 모듈이, 자신과 연결되어 있는 CSMA/CD 방식에 기반하여 통신하는 기존 링크 컨트롤러와 약속된 인터페이스 규칙, 예를 들어 MII 규약에 따라 신호교환하면서, 버스와의 사이에서 데이터 송수신을 수행하는 동작에 대해 구체적으로 설명한다. 본 설명은, 도면에 기존 링크 컨트롤러(10k)가 연결되어 있는 것으로 도시된, 데이터 사이클에서 임의 순서인 k번째의 채널을 할당받은 버스 인터페이스 모듈(110k)의 버스 컨트롤러(111)와 트랜시버(112)를 기준으로 설명한다. 하지만, 앞서 언급한 바와 같이, 이들에 대해 설명되는 동작은, 다른 모든 버스 인터페이스 모듈들의 버스 컨트롤러와 트랜시버에도 그대로 적용된다.
상기 버스 컨트롤러(111)는, 연결되어 있는 기존 링크 컨트롤러(10k)에 인가하고 있는 캐리어 감지신호(CRS)에 대해서 버스를 점유할 기회가 주어질 때까지는 HIGH 상태를 유지한다. 이때의 HIGH 상태 유지는, 버스에 실제 데이터가 실리고 있는지와 무관하다. 캐리어 감지신호(CRS)의 HIGH 상태는, 기존 링크 컨트롤러(10k)로 하여금, 버스의 실제 점유 여부와 무관하게 현재 버스가 점유사용되고 있으니 데이터 전송을 해서는 안되는 신호로 작용한다.
상기 버스 컨트롤러(111)는 HIGH 상태의 캐리어 감지신호(CRS)에 대해서, 데이터 사이클에서 자신에게 할당된 순서의 채널, 즉 포착 슬롯(41)이 되었을 때, 연결되어 있는 기존 링크 컨트롤러(10k)가 다른 노드로 전송할 데이터가 있으면 바로 버스로 전송할 수 있도록 하기 위해, 도 4에 도시된 바와 같이, 해당 포착 슬롯(41)에 동기하여 그 포착 슬롯이 시작되는 시점(tch_S[k])보다 기 지정된 시간만큼 앞선 시점(tpre_nt[k])에 LOW로 전환시킨다. 본 명세서에서는, 자신의 채널과 동기하여 그 채널이 시작되는 시점을 기준으로 그보다 앞서서 캐리어 감지신호(CRS)를 LOW로 전환시키게 되는 시간격에 대해서 '선통보 간격'이라 칭한다.
본 발명에 따른 일 실시예에서는, 선통보 간격을, 상기 연결된 기존 링크 컨트롤러(10k)가 준수하는 프레임간 갭(TIFG)과 동일한 크기로 설정한다. 예를 들어, 상기 기존 링크 컨트롤러(10k)가 96 비트의 프레임간 갭(TIFG)을 준수하는 기기라면, 그 96비트에 해당하는 시간( 버스가 10 Mbps인 경우, 이 시간은 9.6 μsec가 된다. )이 상기 선통보 간격으로 설정된다. 물론, 이 선통보 간격은 본 명세서에서는 시간으로 표현되어 설명되지만, 상기 버스 컨트롤러(111)에는 비트수로 설정되어서 참조될 수 있다.
따라서, 본 실시예에서는, 상기 버스 컨트롤러(111)가 자신이 점유할 수 있는 포착 슬롯(41)이 되는 시점(tch_S[k])보다 상기 설정된 선통보 간격(TIFG)보다 앞서 상기 캐리어 감지신호(CRS)를 LOW로 천이시키므로, 상기 기존 링크 컨트롤러(10k)는 그 LOW로의 천이로부터 버스 상에 캐리어가 없어진 것으로 인지( 즉, 타 노드의 버스 사용이 완료된 것으로 인지 )하는 시점(tpre_nt[k])부터 시작하여 프레임간 갭(TIFG)이 경과한 시점이 되었을 때(tch_S[k]), 타 노드로 전송할 데이터가 있으면 바로 상기 버스 컨트롤러(111)로 전송하기 시작한다. 그리고, 이렇게 전송이 시작되는 시점이 바로 해당 노드에 대해 할당된 채널의 시작 시점(tch_S[k])이므로, 상기 버스 컨트롤러(111)는, 그 데이터를 바로 상기 트랜시버(112)로 전송하여 주어진 방식에 따라 비트 인코딩되어 버스로 송신되게 한다.
즉, 버스 인터페이스 모듈이 송신용 버퍼를 구비하여 상기 기존 링크 컨트롤러(10k)로부터 송신할 데이터 프레임을 미리 받아서 버퍼링하지 않고서도, 해당 채널이 되었을 때, 상기 기존 링크 컨트롤러(10k)로부터 데이터 프레임 전송이 이루어지게 하여 바로 버스를 사용할 수 있게 한다.
그리고, 상기 버스 컨트롤러(111)는, 상기 기존 링크 컨트롤러(10k)로부터 수신된 마지막 데이터를 상기 트랜시버(112)로 전송한 후에는, 그에 이어 프레임의 종단을 알리는 특정 패턴의 비트열, 즉 종단 식별자(42)를 상기 트랜시버(112)로 전송함으로써 버스 상에 자신의 버스 점유가 종료되었음을 다른 노드들, 즉 다른 버스 인터페이스 모듈들에 알리게 된다.
본 발명에 따른 버스 인터페이스 모듈들 각각은, 전술한 바와 같이, 자신이 점유할 수 있는 채널의 시점 기준으로 상기 선통보 간격보다 앞선 시점에 캐리어 감지신호(CRS)를 LOW로 구동하여 그 상태를 전환시킴으로써, 할당된 채널이 되었을 때, 자신에게 연결된 기존 링크 컨트롤러가 즉시 버스를 점유하여 데이터를 전송할 수 있게 한다. 또한, 자신에게 할당된 포착 슬롯이 되기 전에는 전송할 데이터가 없더라도, 자신에게 할당된 포착 슬롯 동안(TAccTO)에 전송할 데이터가 생기는 경우에는, 기존 링크 컨트롤러는 그 즉시 데이터를 버스 인터페이스 모듈로 전송하여 버스를 통해 타 노드들로 송신되도록 할 수 있다.
만약, 캐리어 감지신호(CRS)를 LOW로 전환시킨 후, 해당 포착 슬롯(41)이 종료될 때까지 기존 링크 컨트롤러(10k)로부터 데이터가 수신되지 않았다면, 상기 버스 컨트롤러(111)는 해당 포착 슬롯(41)이 종료되는 시점에 캐리어 감지신호(CRS)를 HIGH로 구동하여 그 상태를 전환시켜(43) 기존 링크 컨트롤러(10k)로부터의 데이터 전송을 다음번의 채널이 될 때까지 차단시켰을 것이다.
한편, 상기 버스 컨트롤러(111)는, 상기 기존 링크 컨트롤러(10k)로부터 수신되는 데이터(45)에 대해서 상기 트랜시버(112)로 바로 전송하여 버스에 비트열이 실리는 순간, 상기 트랜시버(112)가 캐리어를 감지함에 따른 신호(cd)를 인가받음으로써, 상기 기존 링크 컨트롤러(10k)에 인가하고 있던 캐리어 감지신호(CRS)를 HIGH로 전환시키고(44), 이 HIGH로 전환된 상태를, 상기 트랜시버(112)로부터 버스 상에 캐리어가 없음을 알리는 신호가 인가되더라도, 다음 데이터 사이클에서 자신에게 할당된 채널이 시작되는 시점보다 상기 선통보 간격만큼 앞선 시점이 될 때까지 유지한다.
데이터 사이클에서 k번째의 채널을 할당받은 버스 인터페이스 모듈(110k)에 앞서, 프레임간 갭(TIFG)만큼 앞선 시점 이후부터 채널을 점유하여 데이터를 전송한 노드가 없는 경우에는, 상기 버스 인터페이스 모듈(110k)이, 도 4에 예시된 바와 같이, 캐리어 감지신호(CRS)를 미리 LOW로 전환시켜 채널이 시작되는 즉시 데이터를 전송할 수 있다.
하지만, 기존 링크 컨트롤러로부터의 데이터 전송여부를 제어할 수 있는 캐리어 감지신호(CRS)를 선통보 간격만큼 미리 LOW로 전환시킨 상태에 있는 동안에, 순서가 앞선 채널을 할당받은 노드가 버스를 점유하여 데이터를 전송할 수도 있다. 도 5는, 이러한 경우가 발생하였을 때에 대한, 상기 버스 인터페이스 모듈(110k)이 버스를 점유하여 데이터를 전송하는 과정을 예시적으로 나타낸 것이다.
도 5의 예시에서도 각 버스 인터페이스 모듈에 설정되는 상기 선통보 간격이 기존 링크 컨트롤러가 준수하는 프레임간 갭(TIFG)과 동일하고, k번째 채널 직전의 'k-1'번째 채널을 할당받은 노드에서 버스를 점유하여 데이터를 전송하는 경우에 대해, k번째 채널을 할당받은 상기 버스 인터페이스 모듈(110k)( 이를 '현순(現順) 모듈'이라 칭한다. )이 데이터를 전송하게 되는 과정을 예시한 것이다.
데이터 사이클에서 'k-1'번째의 채널을 할당받은 버스 인터페이스 모듈(110k-1)( 이 모듈에 대해서, 상기 현순 모듈의 용어에 대응하여 '전순(前順) 모듈'이라고 칭한다. )은, 앞서 도 4를 참조로 설명한 바와 같이, 자신에게 연결된 기존 링크 컨트롤러에 대해 캐리어 감지신호(CRS[k-1])를, 자신의 채널 시작 시점(tch_S[k-1]) 전에 미리 LOW로 전환시킴으로써, 전송할 데이터에 대해서 해당 채널에서 바로 버스로 전송되게 한다(p50).
그런데, 전순 모듈이 캐리어 감지신호(CRS[k-1])를 LOW로 전환시킨 시점(tpre_nt[k-1])에서 포착 슬롯(TAccTO)만큼 경과하면, k번째의 채널을 할당받은 상기 현순 모듈(110k)의 버스 컨트롤러(111)의 입장에서 볼 때, 자신에게 할당된 채널이 시작 시점(tch_S[k])보다 선통보 간격, 즉 프레임간 갭(TIFG)만큼 앞선 시점(tpre_nt[k])이 되므로, 상기 버스 컨트롤러(111)도 캐리어 감지신호(CRS[k])를 LOW로 전환시키게 된다.
그리고, 이렇게, 기존 링크 컨트롤러(10k)에 인가하고 있는 캐리어 감지신호(CRS[k])를 LOW로 전환시킨 상태에서, 전순 모듈의 버스로의 데이터 전송에 따라 현순 모듈(110k)의 트랜시버(112)가 버스 상에서 캐리어를 감지하여 그 감지사실을 알리는 신호(cd)를 인가하면, 상기 버스 컨트롤러(111)는, 캐리어 감지신호(CRS[k])를 다시 HIGH로 전환시킨다.
따라서, 캐리어 감지신호(CRS[k])가 LOW로 전환된 이후로 프레임간 갭(TIFG)만큼 경과하지 못했으므로, 상기 현순 모듈(100k)에 연결되어 있는 상기 기존 링크 컨트롤러(10k)는 데이터를 현순 모듈(110k)로 전송하지 못한다.
'k-1'번째의 채널을 할당받은 전순 모듈이 데이터를 모두 전송함으로써 버스 상에서 종단 식별자(51)가 감지되면, 모든 버스 인터페이스 모듈들은, 그 시점부터 다음 순서의 채널, 즉 k번째의 채널이 진행되는 것으로 인식한다( 종단 식별자가 감지된 시점에서 프레임간 갭이 경과된 시점부터 다음 순서의 채널이 진행하는 것으로 인식할 수도 있지만, 이러한 인식의 차이로 인해 캐리어 감지신호의 LOW로의 전환 시점이 이하 설명하는 바와 달라지지는 않는다 ). 따라서, 현순 모듈(110k)의 버스 컨트롤러(111)는 그 시점(tnoti[k])에, 기존 링크 컨트롤러(10k)에 인가하고 있던 캐리어 감지신호(CRS[k])를 다시 LOW로 전환시킨다.
그리고, 데이터 프레임의 종단 식별자가 감지된 시점은, 그 이후 순서의 채널을 할당받은 버스 인터페이스 모듈들에게는 자신의 채널의 순서에 동기하여 캐리어 감지신호를 LOW로 전환시키는 시점을 결정하게 하는 기준 시점이 된다. 본 명세서에서는 이 기준 시점에 대해서 '구간 전환기점'이라 칭한다. 예를 들어, 'k+1'번째의 채널을 할당받은 버스 인터페이스 모듈은, 'k-1'번째 채널 점유에 의한 데이터 프레임의 전송이 종료된 시점(tnoti[k]) 이후에 진행되는 채널들에서 두번째 채널을 할당받은 모듈이므로, 이 모듈의 버스 컨트롤러는, 구간 전환기점으로부터 하나의 포착슬롯이 경과된 시점이 되었을 때(tpre _ nt [k+1]) 캐리어 감지신호(CRS[k+1])를 LOW로 전환시키게 된다.
한편, 전순 모듈이 자신의 채널을 점유하여 데이터 프레임을 송신한 직후에 진행되는 채널은, 현순 모듈(110k)에 할당된 것이므로, 현순 모듈의 버스 컨트롤러(111)가 캐리어 감지신호(CRS[k])를 다시 LOW로 전환시킨 상태가 지속되는 프레임간 갭 동안(53)에는, 다른 모듈들의 캐리어 감지신호는 HIGH로 유지되고 있거나, 그 도중에 HIGH에서 LOW로 전환되기 때문에 동 모듈과 연결된 링크 컨트롤러가 버스사용을 위해 데이터를 전송하는 것은 허용되지 않는다.
따라서, 현순 모듈(110k)의 버스 컨트롤러(111)가 캐리어 감지신호(CRS[k])를 다시 LOW로 전환시킨 상태에서 프레임간 갭(TIFG)만큼 시간경과하면, 그 시점(tch_reS[k])부터 기존 링크 컨트롤러(10k)는 데이터를 현순 모듈(110k)로 전송하고, 그에 따라 전술한 바와 같은 방식으로 그 현순 모듈(110k)에 의해 버스 상에 데이터 프레임이 실리게 된다(p52).
도 5의 예는, 버스 인터페이스 모듈이, 연결된 기존 링크 컨트롤러에 캐리어 감지신호를 HIGH로 인가하고 있는 상태에서는 그 기존 링크 컨트롤러로부터 데이터가 버스 인터페이스 모듈로 송신되지 않는 경우를 전제하여 도시한 것이다. 그런데, 기존 링크 컨트롤러는 특별한 조건에서는 캐리어 감지신호가 HIGH이더라도 데이터를 버스 인터페이스 모듈로 송신할 수도 있다. 도 6은 이러한 경우가 발생하는 조건과 그러한 경우에 대한 처리과정을 예시한 것이다.
CSMA/CD 방식에 기반하는 기존 링크 컨트롤러는, 일반적으로, 캐리어 감지신호가 LOW로 되고서 일정시간 유지된 후 다시 HIGH로 전환될 때, 그 LOW로 유지된 시간이 프레임간 갭(TIFG)의 2/3 보다 길면, 즉 64비트 이상의 길이에 해당하면, 캐리어 감지신호가 HIGH임에도 불구하고 데이터를 버스로 송신하는 규약을 준수하여 동작하도록 설계되어 있다. 이는, 버스 상에 데이터를 충돌시켜 버스경합을 함으로써, 버스 상의 물리적인 신호 거리에 무관하게 랜덤(random)하게 버스 점유를 재분배받을 수 있도록 하기 위함이다.
하지만, 시분할 방식에서는, 각각의 노드에 대해 채널이 할당되어 있어 버스 점유 기회가 균등하게 주어지므로, 버스 충돌을 통한 점유 재분배가 무의미하다.
따라서, 도 6에 예시된 바와 같이, 포착 슬롯(TAccTO)이 프레임간 갭(TIFG)의 1/3보다 짧은 경우(c60)에는, 현순 모듈(110k)이 전순 모듈의 데이터 프레임의 전송에 따라 버스 상에서 캐리어를 감지하게 되어(tcd) 기존 링크 컨트롤러(10k)에 인가하고 있던 캐리어 감지신호(CRS[k])를 HIGH로 전환시켜도, 그 기존 링크 컨트롤러(10k)가 타 노드로 전송할 데이터가 있으면, 프레임간 갭(TIFG)의 2/3에 해당하는 시간 이상 캐리어 감지신호(CRS[k])가 LOW로 유지되었으므로 상기 현순 모듈(110k)로의 데이터 전송을 시도한다(tDTry_S[k]).
이러한 상황이 발생하면, 상기 현순 모듈(110k)의 버스 컨트롤러(111)는, 버스가 현재 전순 모듈의 점유 채널이므로, 그 수신되는 데이터에 대해서 버스로 전송하지 않고 바로 충돌 감지신호(COL)를 HIGH로 전환시켜(tRej[k]) 버스 충돌이라고 통지한다.
이 통지에 따라, 기존 링크 컨트롤러(10k)는 데이터 송신을 중단하고, 임의로 설정되는 백오프(backoff) 시간동안 대기하게 된다. 이렇게 임의로 대기하는 백오프 시간이, 전순 모듈이 데이터 프레임을 전송하는 시간과 프레임간 갭의 시간내에서(Tf_Bkoff) 종료되면, 도 6에 예시된 바와 같이, 상기 기존 링크 컨트롤러(10k)는, 현순 모듈(110k)로부터 인가되는 캐리어 감지신호(CRS[k])가 다시 LOW로 전환(tnoti[k])된 후 프레임간 갭(TIFG)이 경과한 시점(tch_reS[k])에 데이터 프레임을 현순 모듈(110k)로 전송하여 버스로 송신되게 한다.
만약, 전순 모듈이 전송하는 데이터 프레임이 짧은 경우라면, 백오프 시간이 전순 모듈이 데이터 프레임을 전송하는 시간과 프레임간 갭의 시간내에서(Tf_Bkoff) 종료되지 않고 그 이후에 종료될 수도 있는데, 이런 경우에는, 상기 기존 링크 컨트롤러(10k)가, 다음 데이터 사이클에서 상기 현순 모듈(110k)이 통지하는 캐리어 감지신호(CRS[k])에 따라 해당 채널을 통해 데이터를 전송하게 된다.
도 6의 예시에서 보는 바와 같이, 포착 슬롯(TAccTO)이, 기존 링크 컨트롤러가 준수하는 프레임간 갭(TINT)의 1/3( 즉, 31비트 )보다 짧으면, 버스 인터페이스 모듈(100,110i, i=2,..,N)은, 기존 링크 컨트롤러에 충돌 감지신호(COL)의 상태를 HIGH로 전환시켜 데이터 송신을 중단시키는 동작이 필요하며, 또한, 현순 모듈이 현재의 채널에서 데이터를 전송하지 못하고 다음 사이클의 채널에서 데이터를 전송하게 되는 경우가 발생할 수도 있다.
이에 반해, 포착 슬롯(TAccTO)을, 기존 링크 컨트롤러가 준수하는 프레임간 갭(TIFG)의 1/3( 즉, 31비트 )보다 길게 설정하면, 예를 들어, 각 버스 인터페이스 모듈에 대해서 포착 슬롯을 32비트로 설정하면( 버스가 10Mbps이면 이 경우 포착 슬롯은 3.2μsec가 된다. ), 캐리어 감지신호의 HIGH 상태를 무시하고 기존 링크 컨트롤러가 데이터를 버스 인터페이스 모듈로 송신하는 경우는 발생하지 않는다. 포착 슬롯에 대해서 프레임간 갭과 이러한 조건을 만족시키게 되면, 버스 인터페이스 모듈은 충돌 감지신호를 HIGH로 전환시키는 경우가 발생하지 않기 때문에, 버스 인터페이스 모듈은, 충돌 감지신호의 상태를 전환시키는 논리 회로와 신호 단자를 구비할 필요가 없으며, 기존 링크 컨트롤러는 전송할 데이터가 있는 경우에, 연결된 버스 인터페이스 모듈에 할당되는 채널에서 항상 데이터를 전송할 수 있게 된다. 즉, 다음 데이터 사이클 상의 해당 채널로 지연 전송되는 일이 발생하지 않게 된다.
한편, 전술한 실시예들에서는, 도 5와 6을 참조로 하여 설명한 바와 같이, 데이터 사이클이 시작된 후에 자신보다 앞서 데이터 프레임을 전송한 버스 인터페이스 모듈이 있으면, 그 이후 순서의 채널들을 할당받은 각 버스 인터페이스 모듈은, 데이터 프레임의 종단 식별자 이후부터 그 다음 순서의 채널을 시작으로 순차적으로 진행되는 것으로 보고, 종단 식별자가 종료된 구간 전환기점을 기준으로 하여 채널의 순서에 따라 포착 슬롯만큼씩 차이를 두면서캐리어 감지 신호를, 연결된 기존 링크 컨트롤러에 LOW로 전환시키게 된다.
이와는 달리, 본 발명에 따른 다른 일 실시예에서는, 앞서서 버스를 점유하여 전송되고 있는 데이터 프레임이 종료되기 전에 캐리어 감지신호를 미리 LOW로 전환시킬 수도 있다. 즉, 구간 전환기점이 데이터 프레임의 종단 식별자보다 앞서서 지정될 수도 있다. 도 7은 본 실시예에 대하여 관련 신호와 데이터 전송 과정을 예로서 나타낸 것이다.
도 7의 실시예를 위해서는 물리적인 계층(physical layer)에서의 프레임간 갭( 이하, '파이 갭'이라 약칭한다. )이 각 버스 인터페이스 모듈의 버스 컨트롤러에 설정되며, 이 파이 갭(TφIFG)은 전술한 실시예들에서 설명하고 있는 프레임간 갭(TIFG)보다 짧은 시간격을 갖는다.
CSMA/CD 방식에 기반하는 기존 링크 컨트롤러들이 준수하는 프레임간 갭(TIFG)은, 하나의 프레임을 수신하여 프레임 에러여부의 확인 등의 동작을 수행한 후 다음 프레임의 수신을 기기가 준비할 수 있도록 하기 위해 확보되는 시간이다. 그런데, 기기의 성능이 향상되면서 프레임간 갭보다 짧은 시간내에 프레임 수신 준비 동작으로 복귀할 수도 있다.
또한, 버스에 복수개의 노드들이 연결되어 있는 경우에, 데이터 사이클 내의 모든 채널들이 데이터 프레임의 전송에 사용되는 경우는 발생빈도가 매우 낮을 것이다. 만약, 한번의 데이터 사이클에 NCH 개의 채널들이 형성되고 확률적으로 그 중 20% 이하의 채널들이 데이터 프레임의 전송에 사용된다면, 80%의 포착 슬롯들을 위한 시간은 빈 채로 흘러버리는 시간이 될 것이다. 이 시간은, 포착 슬롯이 2μsec로 설정된 경우라면, 1.6 × NCH μsec로서, NCH가 20인 경우 32μsec가 되어 프레임간 갭(TIFG)의 3배 이상의 시간이 된다. 앞서 가정한 데이터 사이클에서 20%의 채널 사용은, NCH가 20인 경우 4개에 해당하므로, 데이터 사이클이 확률적으로 20%의 채널이 사용된다는 가정을 하면, 결국 빈 채로 경과하는 포착 슬롯들의 시간이 4개의 프레임간 갭에 해당하는 시간을 거의 커버하는 셈이 된다.
따라서, 본 발명에 따른 일 실시예에서는, 프레임간 갭(TIFG)보다 짧은 버스 상의 프레임 간에 대한 최저 간극, 예를 들어, 10비트 또는 20비트에 해당하는 시간( 버스가 10Mbps인 경우, 1 또는 2μsec )의 파이 갭(TφIFG)을 도입하여, 임의의 버스 인터페이스 모듈이, 다른 모듈이 앞서서 프레임이 전송하는 경우에 그 프레임에 이어서 프레임을 송신할 때, 이 파이 갭(TφIFG) 만큼만 프레임 간에 확보되어 버스로 전송되게 한다. 이 파이 갭을 1μsec로 하면, 앞서 체시한 구체적인 수치의 예에서, 4개의 프레임에 대해 4μsec가 확보되므로 16개의 빈 포착슬롯에 의한 32μsec와 함께 총 36μsec가 버스 사이클에 확보된다. 따라서, 데이터 사이클의 헤더가 24비트( 10Mbps에서 2.4μsec에 해당 ) 이상으로 구성된다면, 한번의 데이터 사이클에 4개의 데이터 프레임이 전송되는 경우, 각 버스 인터페이스 모듈은 다음 데이터 사이클의 채널들이 진행되기 전에, 프레임간 갭 만큼씩 간격을 두고서 그 4개의 데이터 프레임을, 연결된 링크 컨트롤러에 모두 전달할 수 있게 된다.
물론, 파이 갭을 1.6μsec로 하면, 한번의 데이터 사이클에 4개의 데이터 프레임이 전송되는 경우 데이터 사이클의 헤더를 고려하지 않아도, 빈 포착슬롯들에 의한 시간과 함께 4개의 프레임간 갭에 해당하는 시간이 확보된다.
이렇게 프레임간 갭보다 짧은 파이 갭(TφIFG)을 도입하면, 데이터 프레임의 전송이 있는 데이터 사이클이 보다 짧아지게 된다. 예를 들어, 파이 갭(TφIFG)을 1μsec로 하면, 프레임 종료 후에 9.6μsec의 프레임간 갭(TIFG)을 확보할 때에 비해서, 한번의 데이터 사이클에서 한번의 데이터 프레임 전송이 있으면, 8.6μsec, 두번의 데이터 프레임 전송이 있으면 17.2 μsec ( 약 9개의 포착 슬롯에 해당 )가 짧아진다. 따라서, 데이터 사이클의 평균 주기가 보다 짧아지므로, 버스에 연결된 노드들에 해당하는 부품의 상태나 장애 등에 대한 통신을 통한 모니터링 등이 보다 빨라질 수 있다.
본 실시예에서는, 임의의 채널에서 데이터 프레임의 전송이 이루어지고, 이 데이터 프레임을 모든 버스 인터페이스 모듈들이 각기 수신하게 되면, 해당 모듈 내의 버스 컨트롤러는 그 데이터 프레임에 대해서 기 파악하고 있는 포맷에 근거해 데이터 길이 필드의 값을 확인함으로써, 그 데이터 프레임( 종단 식별자 포함 )이 어디서 종료되는지를 파악한다(S71). 즉, 길이 필드로부터 몇 비트 이후에 데이터 프레임이 종료되는지를 파악한다.
이렇게 프레임 종단 시점(tF_End[k-1])이 파악되면, 해당 버스 컨트롤러는, 기 설정된 파이 갭(TφIFG)과 프레임간 갭(TIFG)을 그 종단 시점(tF_End[k-1])에 다음의 식 [1]에 따라 반영하여 캐리어 감지신호를 LOW로 전환시키는 시점(taf _ pre _ nt [i], i=k,k+1,…)을, 각 시간에 대한 해당되는 비트 수를 기준으로 연산하여 결정한다(S72).
taf _ pre _ nt [k+ nCI -1] = tF _ End [k-1] + TφIFG - TIFG + (nCI -1)×TAccTO 식 [1]
여기서, nCI는 데이터 프레임이 전송된 채널과 자신에게 할당된 채널의 순서에서의 차이값이다. 그리고, 'tF _ End [k-1] + TφIFG - TIFG'에 해당하는 시점(taf _ pre _ nt [k])이 앞서 언급한 구간 전환기점이 된다.
도 8은, 본 실시예에 따라, 임의의 채널에서 데이터 프레임이 전송되었을 때, 그 이후 순서의 채널들을 할당받은 버스 인터페이스 모듈들에서의 캐리어 감지신호가, 데이터 프레임 전송이 종료되기 전의 시점에 정해진 구간 전환기점(tSTS)을 기준으로 LOW로 전환되는 시점을 각각 예시한 것이다(p80).
버스에 연결된 노드들의 상황에 따라서는, 채널들이 연속적으로 점유되어 데이터 프레임들이 전송될 수도 있고, 이런 경우에는, 각 데이터 프레임이 파이 갭(TφIFG)만큼 간격을 두고서 각각의 버스 인터페이스 모듈에 수신된다. 그렇지만, 그 버스 인터페이스 모듈에 연결된 기존 링크 컨트롤러에는 파이 갭(TφIFG)보다 긴 프레임간 갭(TIFG) 만큼씩 간격을 두고서 전달하여야 한다. 따라서, 본 실시예에서는, 이러한 지연 전달을 수용하기 위해, 각 버스 인터페이스 모듈에는 일정 크기의 수신버퍼가 구비된다.
각 버스 인터페이스 모듈의 버스 컨트롤러는 트랜시버를 통해 수신되는 데이터 프레임을 상기 수신버퍼에 저장하면서, 동시에 각 데이터 프레임에 대해서는 프레임간 갭(TIFG)을 유지하면서 연결된 기존 링크 컨트롤러로 전송하게 된다. 물론, 현재 수신버퍼가 비어 있고, 앞서 데이터 프레임을 전달한 시점으로부터 프레임간 갭의 시간이 경과한 후면 상기 수신버퍼에 저장하지 않고 바로 기존 링크 컨트롤러로 데이터 프레임을 전달하게 된다.
그런데, 일반적으로, 버스에 연결된 버스 인터페이스 모듈들은, 임의의 채널에 데이터 프레임이 실리면 그 데이터 프레임을 개별적으로 모두 수신하여, 연결된 기존 링크 컨트롤러에 전달하고, 그 기존 링크 컨트롤러가 해당 데이터 프레임이 자신을 수신처로 하여 전송된 것인지를 확인하여 취득하거나 버리게 된다.
따라서, 버스에 연결된 모든 버스 인터페이스 모듈들은, 데이터 사이클에 실리는 데이터 프레임를 수신하여, 프레임간 갭(TIFG)을 준수하여 연결된 링크 컨트롤러에 전달하기 위해 수신버퍼에 임시로 저장하게 되는 데이터 양은 동일할 것이다.
그리고, 데이터 사이클에서 데이터 프레임이 전송되는 채널의 비율이 일시적으로 높아지면, 각 버스 인터페이스 모듈의 수신버퍼가 수용가능한 한계치에 가까워질 수도 있다.
이러한 이유로, 본 발명에 따른 일 실시예에서는, 전술한 바의 파이 갭(TφIFG)을 적응적으로 조정하되, 그 조정된 파이 갭(TφIFG)을 알리는 갭 플래그(91)가, 도 9에 예시된 바와 같이 데이터 사이클의 헤더에 포함된다. 그리고, 파이 갭의 조정은, 버스에 연결된 하나의 버스 인터페이스 모듈, 예를 들어 마스터 모듈(100)의 수신버퍼의 상태에 근거하여, 즉 연결된 기존 링크 컨트롤러에 전달할 데이터 양의 적체 정도에 근거하여 이루어지게 된다.
예를 들어, 상기 마스터 모듈(100)의 버스 컨트롤러(101)는, 버스 상에 데이터 사이클을 형성할 때, 짧은 갭( 예를 들어, 10비트에 해당하는 길이 ) 사용을 지시하는 값을 상기 갭 플래그(91)에 실어서 데이터 사이클을 반복적으로 형성하고, 버스에 연결된 모든 버스 인터페이스 모듈은, 매 데이터 사이클마다 그 값을 확인하여, 데이터 프레임 전송이 있은 후에 식 [1]을 적용할 때 그 지정된 짧은 갭을 반영하여 자신의 캐리어 감지신호에 대한 LOW 전환시점을 결정하게 된다.
만약, 상기 마스터 모듈(100) 내의 수신버퍼가 수용가능 양의 일정 제한치를 넘어서서 데이터가 채워지면, 상기 버스 컨트롤러(101)는, 상기 갭 플래그(91)를, 넓은 갭의 사용을 지시하는 값으로 채워서 데이터 사이클을 형성한다. 이때의 넓은 갭은 프레임간 갭보다 긴 간극으로 사전 지정된 것으로서, 예를 들어 100비트일 수 있다. 이에 따라, 버스 상의 모든 버스 인터페이스 모듈들은 넓은 갭을 사용하여, 데이터 프레임 전송된 경우에 대한 구간 전환기점을 결정하고 그 구간 전환기점을 기준으로 자신의 순서에 해당하는 캐리어 감지신호의 LOW로의 전환시점을 결정한다. 프레임간 갭(TIFG)보다 긴 파이 갭(TφIFG)을 사용한다는 것은, 그 직후 순서의 채널을 할당받은 버스 인터페이스 모듈에서, 데이터 프레임의 전송이 완료된 후에 좀 더( 파이 갭과 프레임간 갭의 차이만큼 ) 캐리어 감지신호가 HIGH로 유지된 다음에 LOW로 전환된다는 것을 의미하며, 이 전환 시점이 구간 전환기점이 된다.
따라서, 버퍼의 제한치에 근접한 상태가 각 버스 인터페이스 모듈에서 서서히 해소가 될 것이고( 넓은 갭을 100비트보다 더 큰 값으로 설정하면 더 빠르게 해소될 것이다. ), 이에 따라, 상기 마스터 모듈(100)의 버퍼가 비어지거나 또는 데이터 양이 일정한 하한치 이하로 떨어지면, 상기 버스 컨트롤러(101)는, 상기 갭 플래그(91)을 다시 짧은 갭 사용을 지시하는 값으로 하여 데이터 사이클을 버스 상에 형성하게 된다.
전술한 실시예에서의 파이 갭 조정은, 버스에 연결된 버스 인터페이스 모듈들이, 데이터 사이클의 임의 채널에 실리는 데이터 프레임을 개별적으로 모두 수신하여 연결된 기존 링크 컨트롤러에 전달하는 것을 전제한 것이다.
하지만, 채널에 실리는 데이터 프레임의 헤더에 특정의 식별자, 예를 들어 그룹 식별자와 같이 그 프레임을 수신해야 하는 버스 인터페이스 모듈, 또는 모듈들을 지정하는 정보가 포함되어 있다면, 각각의 버스 인터페이스 모듈의 수신버퍼 사용 현황은 서로 달라질 수 있다. 데이터 사이클 상의 채널들에 실리는 데이터 프레임을 수신하여 연결된 기존 링크 컨트롤러에 전달해야 하는 데이터 프레임의 수가, 버스 인터페이스 모듈들의 그룹별로 달라질 수 있기 때문이다.
따라서, 이러한 경우를 위해, 본 발명에 따른 일 실시예에서는, 도 10에 예시된 바와 같이, 갭 플래그(1010) 외에, 자신의 데이터 적체 상황을 알릴 수 있게 하는 버퍼풀(buffer full) 통지필드(1000)가 데이터 사이클 헤더에 포함된다. 그리고, 이 통지필드(1000)에는, 버스에서 발견된 노드들의 수만큼의 풀(full) 지시자가 확보된다.
본 실시예에서는, 각각의 버스 인터페이스 모듈의 버스 컨트롤러가 동 모듈내의 수신버퍼의 상태를 확인하여 기 지정된 제한치 이상이면, 매 데이터 사이클의 상기 통지필드(1000)에서 자신에게 할당된 순서( 데이터 사이클에서 채널이 할당된 순서와 동일한 순서 )의 풀 지시자에 대해 1을(1001), 그렇지 않으면 0을 싣게 된다.
그리고, 상기 마스터 모듈(100)의 버스 컨트롤러(101)는, 상기 통지필드(1000) 내의 어느 하나의 풀 지시자라도 1을 가리키면, 갭 플래그(1010)에 대해서, 넓은 갭의 사용을 지시하는 값을, 그렇지 않으면 짧은 갭의 사용을 지시하는 값을 실어서 데이터 사이클을 형성하게 된다.
본 발명에 따른 다른 일 실시예에서는, 각 버스 인터페이스 모듈이 자신의 수신버퍼 상태에 따른 값을 싣로록 하는 풀 지시자를, 데이터 사이클의 헤더에 확보하지 않을 수도 있다. 본 실시예에서는, 도 11에 예시된 바와 같이, 버스 인터페이스 모듈 내의 버스 컨트롤러가 데이터 프레임을 버스로 전송할 때 그 종단에 부가하는 종단 식별자에 풀 지시자를 확보할 수도 있다.
도 11에 따른 실시예에서는, 동 모듈내의 수신버퍼가 일정 제한치 이상 사용된 상태이면( 즉, 연결된 기존 링크 컨트롤러로 전달해야 하는 데이터 프레임들이 일정 수 이상 적체된 상태이면 ), 버스 컨트롤러는, 연결된 기존 링크 컨트롤러로부터 전달받은 데이터 프레임을 버스로 전송할 때 그 후단에 풀 지시자를 1로 채운 종단 식별자를 부가하여 전송하게 된다. 만약, 수신버퍼가 일정 제한치 이상 되었음에도 버스로 전송할 데이터 프레임이 없는 경우에는, 자신의 채널이 되었을 때 풀 지시자를 1로 채운 종단 식별자만을 버스로 전송할 수도 있다.
상기 마스터 모듈(100)의 버스 컨트롤러(101)는, 버스에 실리는 모든 종단 식별자의 풀 지시자의 값을 확인하고 1로 채워진 종단 식별자가 있으면, 다음에 형성하는 데이터 사이클에 대해서 갭 플래그를 넓은 갭 사용을 지시하는 값으로 하여 형성하게 된다.
한편, 종단 식별자에 대해서 풀 지시자를 1로 하여 전송한 버스 인터페이스 모듈은, 자신의 수신버퍼가 비거나 사용량이 일정 하한치 이하로 떨어지면 반드시 풀 지시자를 0으로 채운 종단 식별자를 버스로 전송한다.
따라서, 상기 마스터 모듈(100)의 버스 컨트롤러(101)는, 트랜시버(102)를 통해 버스 상에서 검출하는 종단 식별자 내의 풀 지시자가 1을 가리키고 있어서, 갭 플래그에 대해서 넓은 갭 사용을 지시하는 값으로 채운 데이터 사이클을 지속적으로 형성하고 있는 동안에, 풀 지시자에 대해서 1이 채워진 종단 플래그를 검출한 수와 0이 채워진 종단 플래그를 검출한 수가 동일해 지면, 그때 갭 플래그에 대해서 짧은 갭 사용을 지시하는 값으로 채워서 데이터 사이클을 형성하게 된다.
지금까지 설명한 실시예들은, 데이터 사이클이 시작되었을 때, 앞선 채널들에서 데이터 프레임이 전송되지 않은 각 채널, 즉, 각 포착 슬롯에 대해서 그 포착 슬롯이 시작되는 시점보다 선통보 간격, 예를 들어 CSMA/CD 기반으로 통신하는 기존 링크 컨트롤러가 준수하는 프레임간 간격(TIFG)만큼 앞서서 캐리어 감지신호를 LOW로 전환시키는 것을 전제로 한 것들이었다. 이러한 전제는, 상기 마스터 모듈(100)이 버스에 형성하는 데이터 사이클의 헤더가 도 12a에 예시한 바와 같이, 프레임간 갭(TIFG)보다 더 긴 시간의 길이(THD)를 가질 때, 즉 96비트 이상으로 헤더가 구성될 때 충족될 수 있다. 이와 같이, 주어진 통신상황에 맞추기 위해 데이터 사이클의 헤더가 프레임간 간격보다 길게 구성되어야 하는 경우에는, 매 데이터 사이클마다, 헤더가 끝나는 시점으로부터 프레임간 갭(TIFG) 만큼 앞선 시점을 구간 전환기점(tSTS)으로 하여, 할당받은 채널의 순서에 따라 포착 슬롯(TAccTO) 만큼씩 더 늦은 시점( 해당 채널이 시작되는 시점을 기준으로는 프레임간 갭(TIFG) 만큼 앞선 시점 )에 캐리어 감지신호를 LOW로 전환시키고, 해당 포착 슬롯이 종료되는 시점( 해당 포착 슬롯에서 데이터 프레임의 전송이 없는 경우 )에 다시 HIGH로 전환시키게 된다.
그런데, 데이터 사이클의 헤더가 프레임간 갭(TIFG)보다 짧은 길이를 가질 수도 있다. 즉, 데이터 사이클의 헤더를 96비트보다 작은 비트들로써 그 정보가 구성될 수도 있다. 도 12b는 이러한 경우에 대해, 버스에 연결된 각 버스 인터페이스 모듈이, 연결된 기존 링크 컨트롤러에 인가하는 캐리어 감지신호의 상태를 전환시키는 방식을 예로서 나타낸 것이다.
도 12b에 예시된 바의 실시예에서는, 버스 상의 노드에 대한 디스커버리 과정이 종료되고 난 후 첫번째 데이터 사이클에 대해서는 건너 뛰고( 디스커버리 종료 후 데이터 사이클이 어느 시점에 시작되는 지를 안다면 첫번째 데이터 사이클에 대해서 건너 뛰지 않을 수도 있다. ) 다음 데이터 사이클이 시작될 때, 버스 상의 모든 인터페이스 모듈들은, 데이터 사이클의 헤더가 시작되는 시점(tSTS_1)을 구간 전환기점으로 인지한다. 즉, 데이터 사이클에서 첫번째 채널을 할당받은 버스 인터페이스 모듈은 그 시점(tSTS_1)에서 캐리어 감지신호를 LOW로 전환시켜서 프레임간 갭(TIFG)과 포착 슬롯(TAccTO) 만큼의 시간 동안 유지시킨 후 HIGH로 전환시키고, 다음 순서의 채널을 할당받은 버스 인터페이스 모듈은 그 구간 전환기점(tSTS_1)에서 포착 슬롯(TAccTO) 만큼 늦게 캐리어 감지신호룰 LOW로 전환시킨 후 다시 HIGH로 전환된다. 이와 같이, 각 채널에서 데이터 프레임의 전송이 없는 경우에는, 헤더의 시작 시점을 구간 전환기점으로 하여, 각각의 버스 인터페이스 모듈에서는 캐리어 감지신호의 LOW로의 전환시점이 포착 슬롯(TAccTO) 만큼씩 순차적으로 늦어지게 된다.
이와 같이 각 버스 인터페이스 모듈에서의 캐리어 감지신호의 레벨 전환이 이루어지고 있는 동안, 하나의 포착 슬롯이 점유되어 데이터 프레임의 전송이 이루어진다면, 이때의 채널 사용은, 데이터 사이클의 관점에서 볼 때의 해당 순서의 포착 슬롯의 시점(tsCS_i, i=1,2,..)보다 'TIFG - THD' 만큼 지연된 사용이 될 것이다( 데이터 사이클 상에서의 각 채널의 시작 시점에서 보면, 선통보 간격은 헤더의 시간격이 된다. ). 하지만, 해당 포착 슬롯의 시작시점(tsCS_i, i=1,2,..)에 캐리어 감지신호를 LOW로 전환시키는 방법에 비해서는 헤더의 시간길이(THD) 만큼 앞서 버스를 사용하는 것이 된다.
각 채널에서 데이터 프레임의 전송이 없어서 각각의 버스 인터페이스 모듈에서의 캐리어 감지신호가 포착 슬롯(TAccTO) 만큼씩 전환시점이 순차적으로 늦어지게 되다가, 다음 데이터 사이클이 시작되는 시점에 가까워 지면, 각각의 버스 인터페이스 모듈은, 지금 진행되고 있는 각 포착 슬롯에 대한 캐리어 감지신호의 LOW 전환 예상시점(tpre_s[p,q], p=j,j+1,.., q=N-1,N,1,..)과, 다음 데이터 사이클의 헤더 시작시점(tsHD_j+1)을 비교하고, 그 비교결과, 그 전환 예상시점(tpre_s[p,q], p=j,j+1,.., q=N-1,N,1,..)이 헤더 시작 시점(tsHD_j+1)보다 프레임간 갭(TIFG) 이상 앞서거나, 또는 'TIFG - THD'' 시간 내에서 앞서면( 이 경우는 전환 예상시점이 도면상에서 빗금친 시구간(z120)에 속할 때이다. ), 구간 전환기점을 새로이 정하지 않고, 만약, 그 전환 예상시점이 헤더 시작 시점(tsHD _j+ 1)보다 'TIFG - THD' 이상 앞서지만, 프레임간 갭(TIFG) 이상으로 앞서지 않으면(tpre_s[j+1,1]), 구간 전환기점(tSTS_2)을 새로이 지정하고(p120), 모든 버스 인터페이스 모듈들은 그 기점(tSTS_2)에 맞춰, 각 채널 할당 순서에 따라 캐리어 감지신호의 LOW로의 전환시점을 결정한다.
새로이 지정되는 구간 전환기점(tSTS_2)은, 그 기점으로부터 프레임간 갭(TIFG) 만큼 이후의 시점이 데이터 사이클 헤더의 종료시점(teHD_j+1), 즉 첫번째 포착 슬롯의 시작 시점이 되도록 정해진다. 즉, 선통보 간격이 프레임간 갭 만큼으로 길어지게 되는 것이다.
한편, 전환 예상시점이 프레임간 갭(TIFG) 이상으로 앞서지만 그 이후의 포착 슬롯(TAccTO)이 데이터 사이클의 헤더일 때에 종료되거나 또는 해더 이후에 종료되는 버스 인터페이스 모듈은, LOW로 전환시킨 캐리어 감지신호(CRSj _N)에 대해서 원래 지정된 시간폭(TIFG+TAccTO)을 유지한 후 HIGH로 전환(1211)시키지 않고, 헤더가 시작되는 시점(tsHD_j+1)에 HIGH로 전환시키게 된다(1212). 다르게는, 원래 지정된 시간폭 만큼 LOW로 유지한 후 전환시키되, 헤더의 시구간에서, 연결된 링크 컨트롤러로부터 데이터가 입력되면, 충돌 감지신호를 HIGH로 전환시켜 그 데이터 전송을 중단시킬 수도 있다.
이상에서 설명한 방식에 따라, 데이터 사이클의 헤더 구간이 프레임간 갭보다 짧은 경우에도, 그 짧은 정도에 따라 데이터 사이클이 빈 채로( 각 채널에 데이터 프레임이 실리지 않은 채로 ) 수 회 진행되면, 헤더가 차지하는 시간이 축적되어 프레임간 갭(TIFG)에 해당하는 시간이 선통보 간격으로 확보됨으로써, 각 포착 슬롯이 시작되는 시점에서 프레임간 갭만큼 앞선 시점에 캐리어 감지신호를 LOW로 전환시킬 수 있게 된다.
물론, 데이터 사이클이 진행되는 도중, 임의의 한 채널이 점유되어 데이터 프레임이 전송되는 경우가 발생하면, 그때마다 해당 프레임의 종단 식별자가 끝나는 시점( 도 5의 예에서, tnoti[k ] 와 tnoti[k+1]의 시점 )을, 전술한 바의 구간 전환기점으로 지정하고 그렇게 지정한 구간 전환기점에 따라 각 버스 인터페이스 모듈은 자신의 순서에 따라 포착 슬롯 만큼씩 후에 캐리어 감지신호를 LOW로 전환시키게 된다.
한편, 버스 인터페이스 모듈들(100,110i, i=2,..,N)이 100Mbps의 클럭에 기반하여 동작하고, 이에 준하여 속도가 향상된, CSMA/CD 방식과 MII 규약을 준수하는 기존 링크 컨트롤러와 연결된다면( 이 링크 컨트롤러가 4비트씩 병렬로 버스 인터페이스 모듈과 데이터를 주고받는다면, 버스 인터페이스 모듈과 통신하는 속도는 25Mbps가 된다. 만약, 버스 인터페이스 모듈이 4B/5B 코딩을 하여 버스로 비트들을 송신한다면, 이 링크 컨트롤러의 버스 인터페이스 모듈과의 통신속도는 20Mbps가 될 것이다. ), 96비트의 프레임간 갭(TIFG)은 0.96μsec가 된다.
따라서, 포착 슬롯을 2μsec로 설정하여 버스를 시분할 방식으로 이용하도록 하면, 포착 슬롯의 시점을 기준으로 선통보 간격만큼 앞선 시점에 캐리어 감지신호를 LOW로 전환시킬 필요가 없다. 해당 포착 슬롯이 되었을 때 캐리어 감지신호를 LOW로 전환시켜도 그 포착 슬롯이 종료되기 전에 프레임간 갭의 시간이 먼저 종료되므로, 해당 기존 링크 컨트롤러는 그 포착 슬롯 내에서 데이터를 연결된 버스 인터페이스 모듈로 송신하기 때문이다. 이런 경우에, 충돌 감지신호의 상태를 변화시켜야 할 상황은 발생하지 않으므로, 버스 인터페이스 모듈은 충돌 감지신호를 전환시킬 회로와 그 신호단자를 구비할 필요가 없다.
그리고, 버스 인터페이스 모듈은, 다양한 속도의 기존 링크 컨트롤러에 적용할 수 있는 구성을 가질 수도 있다. 예를 들어, 10, 25, 50, 또는 100 Mbps 속도의 기존 링크 컨트롤러의 어느 것과도 연결되어 사용될 수 있도록, 100 Mbps의 클럭을 제공하는 발진기와 위 예시된 클럭들을 각기 제공하는 분주기들이 구비되고, 이들 중 어떤 클럭을 사용할 것인지를 딥 스위치와 같은 소자를 통해 설정하도록 구성될 수도 있다.
이와 같이 다중 속도에 대해서 적용할 수 있도록 버스 인터페이스 모듈이 구성되면, 그 모듈내의 버스 컨트롤러는, 현재 설정된 전송속도에 따라 캐리어 감지신호를 어느 시점에 LOW로 전환시킬 것인 지를 자동적으로 결정하여 적용한다. 도 13은 이 적응적 전환시점의 결정을 보여주는 도면이다.
버스 인터페이스 모듈의 버스 컨트롤러는, 전원이 인가됨으로써 초기화하는 과정에서, 자신에게 설정된 전송속도를 확인하고, 그 확인된 전송속도에서의 프레임간 갭으로 정해진 비트 수, 즉 96비트가 차지하는 시간(TIFG)을 계산하고, 그 계산된 시간과 기 설정된 포착 슬롯(TAccTO)과 비교한다(S1310).
그 비교결과, 프레임간 갭(TIFG)이 포착 슬롯(TAccTO)보다 더 길면, 버스 인터페이스 모듈의 버스 컨트롤러는, 앞서서 설명한 바의, 해당 포착 슬롯 시점을 기준으로 선통보 간격 만큼 앞서서 캐리어 감지신호를 LOW로 전환시키는 모드(1301)로 동작하고, 그렇지 않으면, 해당 포착 슬롯이 되는 시점에 캐리어 감지신호를 LOW로 전환시키는 모드(1302)로 동작한다.
지금까지 구체적으로 설명한, 본 발명에 따른 프레임간 갭이 준수되는 전송방식에 적용하는 저지연 시분할 데이터 전송방법의 다양한 실시예들과, 그 실시예에서 설명된 구성 및 작용 등은 서로 양립할 수 없는 경우가 아니라면, 상호 다양한 방식으로 선택적으로 결합되어 실시 가능하다.
이상, 전술한 본 발명의 실시예들은, 예시의 목적을 위해 개시된 것으로, 당업자라면, 이하 첨부된 청구범위에 개시된 본 발명의 기술적 사상과 그 기술적 범위 내에서, 또 다른 다양한 실시예들을 개량, 변경, 대체 또는 부가 등이 가능할 것이다.
1: 시분할 인터페이스 10,10i: 기존 링크 컨트롤러
100: 버스 인터페이스 모듈(마스터) 101,111: 버스 컨트롤러
102,112: 트랜시버 110i: 버스 인터페이스 모듈(슬레이브)

Claims (18)

  1. 공유되는 버스를 통해 다른 기기들과 데이터를 송수신할 수 있는 기기에 있어서,
    상기 버스에 실리는 신호로부터 데이터를 검출하도록 구성되고, 또한 인가되는 데이터를 상기 버스에 적합한 신호 형태로 변환하여 송신하도록 구성된 트랜시버(transceiver)와,
    연속되는 데이터 프레임 간에는 최소한 유지되어야 하는 일정 간극을 준수하는 통신방식에 기반하여 데이터를 송수신하도록 의도된 통신모듈과 연결되어 그 통신모듈과 데이터를 송수신할 수 있도록 구성되고, 또한 상기 버스에 형성되는 데이터 사이클의 일련의 시분할된 점유 구간들에서 자신에게 할당된 순서의 점유 구간을 사용하여 상기 통신모듈로부터 수신되는 데이터를 상기 트랜시버로 인가하고, 상기 트랜시버가 검출하는 데이터를 상기 통신모듈로 전달할 수 있도록 구성된 컨트롤러를 포함하여 구성되되,
    상기 컨트롤러는, 상기 버스 상의 캐리어 존부를 알리기 위해 상기 통신모듈에 인가하고 있는 특정 신호에 대해서, 상기 일정 간극에 해당하는 제 1시간과 상기 점유 구간에 해당하는 제 2시간이 더해진 시구간 동안 캐리어가 없음을 알리는 제 1상태가 되게 하고, 상기 시구간의 이전과 이후로는 캐리어가 있음을 알리는 제 2상태가 되게 하는 방식으로 상기 점유 구간에 동기하여 구동할 수 있도록 구성되고, 또한, 상기 시구간 동안에 상기 버스 상에 데이터가 실림으로써 상기 트랜시버가 캐리어를 검출하면, 상기 시구간이 종료되기 전에 상기 특정 신호를 상기 제 1상태에서 상기 제 2상태로 전환시키고, 상기 시구간이 시작되고 상기 제 1시간이 경과된 이후에 상기 통신모듈로부터 데이터가 수신되기 시작하면, 수신되는 대로 상기 트랜시버에 인가하도록 구성된 것인 기기.
  2. 제 1항에 있어서,
    상기 컨트롤러는, 상기 점유 구간이 시작되는 시점으로부터 상기 제 1시간 만큼 앞선 시점에 상기 특정 신호를 상기 제 2상태에서 상기 제 1상태로 전환시켜서 상기 시구간이 시작되게 하도록 구성된 것인 기기.
  3. 공유되는 버스를 통해 다른 기기들과 데이터를 송수신할 수 있는 기기에 있어서,
    상기 버스에 실리는 신호로부터 데이터를 검출하도록 구성되고, 또한 인가되는 데이터를 상기 버스에 적합한 신호 형태로 변환하여 송신하도록 구성된 트랜시버(transceiver)와,
    연속되는 데이터 프레임 간에는 최소한 유지되어야 하는 일정 간극을 준수하는 통신방식에 기반하여 데이터를 송수신하도록 의도된 통신모듈과 연결되어 그 통신모듈과 데이터를 송수신할 수 있도록 구성되고, 또한 상기 버스에 형성되는 데이터 사이클의 일련의 시분할된 점유 구간들에서 자신에게 할당된 순서의 점유 구간을 사용하여 상기 통신모듈로부터 수신되는 데이터를 상기 트랜시버로 인가하고, 상기 트랜시버가 검출하는 데이터를 상기 통신모듈로 전달할 수 있도록 구성된 컨트롤러를 포함하여 구성되되,
    상기 컨트롤러는, 상기 버스 상의 캐리어 존부를 알리기 위해 상기 통신모듈에 인가하고 있는 특정 신호에 대해서, 상기 일정 간극에 해당하는 제 1시간과 상기 점유 구간에 해당하는 제 2시간이 더해진 시구간 동안 캐리어가 없음을 알리는 제 1상태가 되게 하고, 상기 시구간의 이전과 이후로는 캐리어가 있음을 알리는 제 2상태가 되게 하는 방식으로 상기 점유 구간에 동기하여 구동할 수 있도록 구성되고, 또한, 상기 점유 구간에 앞서는 순서의 전(前) 점유구간에서 버스가 점유되어 데이터 프레임이 상기 버스에 실리는 경우에는, 그 데이터 프레임에 의한 버스 점유가 끝나는 시점으로부터, 상기 점유 구간 직전 순서의 점유 구간과 상기 전 점유 구간과의 순서 상 차이에 상기 제 2시간을 곱하여 얻어지는 시간격 만큼 지난 시점에, 상기 특정 신호를 상기 제 2상태에서 상기 제 1상태로 전환시켜서 상기 시구간이 시작되게 하도록 구성된 것인 기기.
  4. 삭제
  5. 삭제
  6. 제 1항에 있어서,
    상기 컨트롤러는, 상기 시구간 내에서 상기 특정 신호를 상기 제 2상태로 전환시켰음에도 상기 통신모듈로부터 데이터가 수신되면, 버스 상에서의 충돌 여부를 알리기 위해 상기 통신모듈에 인가하고 있던 신호에 대해서, 충돌이 감지되었음을 나타내는 상태로 전환시키도록 구성된 것인 기기.
  7. 제 1항에 있어서,
    상기 일련의 시분할된 점유 구간들 각각은, 상기 제 1시간의 1/3보다 긴 시간의 길이를 갖는 것인 기기.
  8. 공유되는 버스를 통해 다른 기기들과 데이터를 송수신할 수 있는 기기에 있어서,
    상기 버스에 실리는 신호로부터 데이터를 검출하도록 구성되고, 또한 인가되는 데이터를 상기 버스에 적합한 신호 형태로 변환하여 송신하도록 구성된 트랜시버(transceiver)와,
    연속되는 데이터 프레임 간에는 최소한 유지되어야 하는 일정 간극을 준수하는 통신방식에 기반하여 데이터를 송수신하도록 의도된 통신모듈과 연결되어 그 통신모듈과 데이터를 송수신할 수 있도록 구성되고, 또한 상기 버스에 형성되는 데이터 사이클의 일련의 시분할된 점유 구간들에서 자신에게 할당된 순서의 점유 구간을 사용하여 상기 통신모듈로부터 수신되는 데이터를 상기 트랜시버로 인가하고, 상기 트랜시버가 검출하는 데이터를 상기 통신모듈로 전달할 수 있도록 구성된 컨트롤러를 포함하여 구성되되,
    상기 컨트롤러는, 상기 버스 상의 캐리어 존부를 알리기 위해 상기 통신모듈에 인가하고 있는 특정 신호에 대해서, 상기 일정 간극에 해당하는 제 1시간과 상기 점유 구간에 해당하는 제 2시간이 더해진 시구간 동안 캐리어가 없음을 알리는 제 1상태가 되게 하고, 상기 시구간의 이전과 이후로는 캐리어가 있음을 알리는 제 2상태가 되게 하는 방식으로 상기 점유 구간에 동기하여 구동할 수 있도록 구성되고, 또한, 상기 점유 구간에 앞서는 순서의 전(前) 점유구간에서 버스가 점유되어 데이터 프레임이 상기 버스에 실리는 경우에는, 그 데이터 프레임에 의한 버스 점유가 끝나기 이전의 특정 시점으로부터, 상기 점유 구간 직전 순서의 점유 구간과 상기 전 점유 구간과의 순서 상 차이에 상기 제 2시간을 곱하여 얻어지는 시간격 만큼 지난 시점에, 상기 특정 신호를 상기 제 2상태에서 상기 제 1상태로 전환시켜서 상기 시구간이 시작되게 하도록 구성된 것인 기기.
  9. 제 8항에 있어서,
    상기 특정 시점은, 상기 제 1시간에서 상기 버스 상에 연속되는 데이터 프레임 간에 최소한 유지되어야 하는 것으로 설정된 최저 간극에 해당하는 시간을 감한 시간 만큼, 상기 데이터 프레임에 의한 점유가 끝나는 시점으로부터 앞선 시점인 것인 기기.
  10. 제 9항에 있어서,
    상기 컨트롤러는, 상기 데이터 사이클에 실리는 특정 정보에 근거하여, 상기 최저 간극에 대해 상기 일정 간극보다 짧은 간극을 적용하거나 아니면 상기 일정 간극보다 긴 간극을 적용하도록 구성된 것인 기기.
  11. 제 10항에 있어서,
    상기 컨트롤러는, 상기 데이터 사이클을 상기 버스 상에 형성하도록 더 구성되되,
    상기 컨트롤러는, 상기 통신모듈에 전달할 데이터 양의 적체 정도에 근거하여, 상기 형성하는 데이터 사이클의 헤더에 포함되어 있는 상기 최저 간극의 크기를 알리는 정보를 적응적으로 변경하도록 구성된 것인 기기.
  12. 제 10항에 있어서,
    상기 컨트롤러는, 상기 데이터 사이클을 상기 버스 상에 형성하도록 더 구성되되,
    상기 컨트롤러는, 상기 버스에 연결된 타 기기가 상기 데이터 사이클에 싣는 적체 상태정보에 근거하여, 상기 형성하는 데이터 사이클의 헤더에 포함되어 있는 상기 최저 간극의 크기를 알리는 정보를 적응적으로 변경하도록 구성된 것인 기기.
  13. 제 12항에 있어서,
    상기 적체 상태정보는, 상기 데이터 사이클의 헤더에 확보된 필드에 실리는 것이거나, 또는 데이터 프레임의 종단을 알리기 위해 그 종단에 부가되는 특정 식별자에 포함되는 것인 기기.
  14. 제 8항에 있어서,
    상기 기기는, 상기 통신모듈로 전달할 데이터를 임시로 저장할 수 있는 버퍼를 더 포함하여 구성되되,
    상기 컨트롤러는, 상기 통신모듈로 하나의 데이터 프레임을 전달 완료한 시점부터 상기 제 1시간이 경과하지 않은 상태에서 상기 트랜시버가 상기 버스에서 데이터를 검출하게 되면 그 검출되는 데이터에 대해서는 상기 버퍼에 임시 저장한 후 상기 제 1시간이 경과한 시점부터 상기 통신모듈로 전달하도록 구성된 것인 기기.
  15. 제 1항에 있어서,
    상기 컨트롤러는, 상기 점유 구간에 동기하여 상기 특정 신호를 상기 제 2상태에서 상기 제 1상태로 전환시켜 상기 시구간이 시작되게 해야 하는 전환 시점이, 새로이 형성될 상기 데이터 사이클의 헤더를 기준으로 상기 제 1시간과 상기 헤더의 시간폭과의 차이 이상으로 앞서지만 상기 제 1시간 이상으로는 앞서지 않으면, 상기 전환 시점을 상기 헤더의 종료 시점에서 상기 제 1시간만큼 앞선 시점으로 이동시키도록 구성된 것인 기기.
  16. 공유되는 버스를 통해 다른 기기들과 데이터를 송수신할 수 있는 기기에 있어서,
    상기 버스에 실리는 신호로부터 데이터를 검출하도록 구성되고, 또한 인가되는 데이터를 상기 버스에 적합한 신호 형태로 변환하여 송신하도록 구성된 트랜시버(transceiver)와,
    연속되는 데이터 프레임 간에는 최소한 유지되어야 하는 일정 간극을 준수하는 통신방식에 기반하여 데이터를 송수신하도록 의도된 통신모듈과 연결되어 그 통신모듈과 데이터를 송수신할 수 있도록 구성되고, 또한 상기 버스에 형성되는 데이터 사이클의 일련의 시분할된 점유 구간들에서 자신에게 할당된 순서의 점유 구간을 사용하여 상기 통신모듈로부터 수신되는 데이터를 상기 트랜시버로 인가하고, 상기 트랜시버가 검출하는 데이터를 상기 통신모듈로 전달할 수 있도록 구성된 컨트롤러를 포함하여 구성되되,
    상기 컨트롤러는, 상기 버스 상의 캐리어 존부를 알리기 위해 상기 통신모듈에 인가하고 있는 특정 신호에 대해서, 상기 일정 간극에 해당하는 제 1시간과 상기 점유 구간에 해당하는 제 2시간이 더해진 시구간 동안 캐리어가 없음을 알리는 제 1상태가 되게 하고, 상기 시구간의 이전과 이후로는 캐리어가 있음을 알리는 제 2상태가 되게 하는 방식으로 상기 점유 구간에 동기하여 구동할 수 있도록 구성되고, 또한, 상기 특정 신호에 대해서 상기 제 2상태로 유지하면서, 상기 점유 구간과 동기되어 그 점유 구동 동안만 상기 제 1상태가 되게 구동하는 특정 모드로 동작할 수 있도록 더 구성되어, 비트 수로 정해진 상기 일정 간극에 대해 상기 버스에 적용하는 전송속도를 그 비트 수에 적용하여 얻어지는 상기 제 1시간이 상기 제 2시간보다 짧은 경우이면 상기 특정 모드로 동작하는 것인 기기.
  17. 연속되는 데이터 프레임 간에는 최소한 유지되어야 하는 일정 간극을 준수하는 통신방식에 기반하여 데이터를 송수신하도록 의도된 통신모듈에 대해, 시분할 방식에 따라 버스를 사용할 수 있게 하는 방법에 있어서,
    상기 버스 상에 형성되는 데이터 사이클의 일련의 시분할된 점유 구간들에서 임의 순서의 점유 구간을 할당받는 1단계와,
    현재 형성되는 데이터 사이클에서 상기 임의 순서의 점유 구간에 동기하여, 상기 버스 상의 캐리어 존부를 알리기 위해 상기 통신모듈에 인가하고 있는 특정 신호에 대해서, 상기 일정 간극에 해당하는 시간과 상기 임의 순서의 점유 구간에 해당하는 시간이 더해진 시구간 동안 캐리어가 없음을 알리는 제 1상태가 되게 하고, 상기 시구간의 이전과 이후로는 캐리어가 있음을 알리는 제 2상태가 되게 하는 2단계를 포함하여 이루어지되,
    상기 2단계는, 상기 시구간 동안에 상기 버스 상에 데이터가 실림으로써 상기 버스에서 캐리어가 검출되면, 상기 시구간이 종료되기 전에 상기 특정 신호를 상기 제 1상태에서 상기 제 2상태로 전환시키고, 상기 시구간이 시작되고 상기 일정 간극에 해당하는 시간이 경과된 이후에 상기 통신모듈로부터 데이터가 수신되기 시작하면, 수신되는 대로 그 데이터를 상기 버스로 송신하는 것인 방법.
  18. 제 17항에 있어서,
    상기 2단계는, 상기 특정 신호를 상기 제 2상태에서 상기 제 1상태로 전환시키는 시점이 상기 임의 순서의 점유 구간이 시작하는 시점보다 앞서서 이루어지도록 상기 특정 신호의 상태를 전환시키는 것인 방법.
KR1020190079386A 2019-07-02 2019-07-02 프레임간 갭이 준수되는 전송방식에 적용하는 저지연 시분할 데이터 전송방법과 그 방법을 위한 기기 KR102173176B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190079386A KR102173176B1 (ko) 2019-07-02 2019-07-02 프레임간 갭이 준수되는 전송방식에 적용하는 저지연 시분할 데이터 전송방법과 그 방법을 위한 기기

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190079386A KR102173176B1 (ko) 2019-07-02 2019-07-02 프레임간 갭이 준수되는 전송방식에 적용하는 저지연 시분할 데이터 전송방법과 그 방법을 위한 기기

Publications (1)

Publication Number Publication Date
KR102173176B1 true KR102173176B1 (ko) 2020-11-03

Family

ID=73197681

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190079386A KR102173176B1 (ko) 2019-07-02 2019-07-02 프레임간 갭이 준수되는 전송방식에 적용하는 저지연 시분할 데이터 전송방법과 그 방법을 위한 기기

Country Status (1)

Country Link
KR (1) KR102173176B1 (ko)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0738524A (ja) * 1993-07-22 1995-02-07 Fujitsu Ltd タイムスロット分配監視回路
KR101988176B1 (ko) * 2018-07-16 2019-06-11 벨로넥트 인코퍼레이션 복수의 버스 마스터 간에 무순단 절체가 이루어질 수 있게 하는 방법과 그 방법을 위한 장치

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0738524A (ja) * 1993-07-22 1995-02-07 Fujitsu Ltd タイムスロット分配監視回路
KR101988176B1 (ko) * 2018-07-16 2019-06-11 벨로넥트 인코퍼레이션 복수의 버스 마스터 간에 무순단 절체가 이루어질 수 있게 하는 방법과 그 방법을 위한 장치

Similar Documents

Publication Publication Date Title
KR101123184B1 (ko) 분산식 매체 액세스 제어 방법, 통신 네트워크 및 무선장치
US9036612B2 (en) Wireless communication method and system with collision avoidance protocol
US5434861A (en) Deterministic timed bus access method
US7492736B2 (en) System and method for access and management of beacon periods in distributed wireless networks
US6052377A (en) Access control method in communication system
US7693173B2 (en) Communication system, communication control method, communication control apparatus, and communication control program
EP0096419B1 (en) Distributed variable-band switching system for speech and data
EP1357706A1 (en) Group polling and reservation requests in a wireless network
JP4050031B2 (ja) 時分割ユニバーサルマルチプルアクセスネットワーク
US20150146742A1 (en) Data Transmitting and Receiving Method, Data Transmitting and Receiving System, Master Device, and Slave Device
CN101960789A (zh) 具有can总线的通信系统和用于运行这种通信系统的方法
EP1716677A2 (en) A method of distributed allocation for a medium access control, a method for re-organizing the sequence devices access a medium, a method for avoiding collision, a method of synchronizing devices in a shared medium and a frame structure
KR20110107859A (ko) 근거리 네트워크에서의 데이터 전송을 위한 방법
JP5570656B2 (ja) 輸送安全システムのためのハイブリッド通信ネットワークにおいてデータ送信をスケジューリングするための方法、及びそのネットワーク内の固定ノード
CN106537851B (zh) 具有访问时隙和优先级分辨的访问方法
KR102173176B1 (ko) 프레임간 갭이 준수되는 전송방식에 적용하는 저지연 시분할 데이터 전송방법과 그 방법을 위한 기기
KR20050080847A (ko) 무선 네트워크 통신 방법
EP2256993B1 (en) Method for accessing a communication channel for communication networks
CN101094156B (zh) 铁路车厢的传输装置
CN102362466B (zh) 铁道车辆用传输系统
CN113994638A (zh) 用于串行总线系统的用户站和用于在串行总线系统中进行通信的方法
KR100775516B1 (ko) 플렉스레이와 캔의 제어 시스템 및 그 제어 방법
CN106912110B (zh) 一种单发多收空口资源分配方法
US20210044450A1 (en) Method and system for performing double message arbitration
CN114745613A (zh) 宽带载波网络的抄表方法

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant