KR20220063212A - 직렬 버스 시스템용 가입자국 및 직렬 버스 시스템에서의 통신 방법 - Google Patents

직렬 버스 시스템용 가입자국 및 직렬 버스 시스템에서의 통신 방법 Download PDF

Info

Publication number
KR20220063212A
KR20220063212A KR1020227011780A KR20227011780A KR20220063212A KR 20220063212 A KR20220063212 A KR 20220063212A KR 1020227011780 A KR1020227011780 A KR 1020227011780A KR 20227011780 A KR20227011780 A KR 20227011780A KR 20220063212 A KR20220063212 A KR 20220063212A
Authority
KR
South Korea
Prior art keywords
frame
fcp
control device
communication control
bus system
Prior art date
Application number
KR1020227011780A
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 로베르트 보쉬 게엠베하
Publication of KR20220063212A publication Critical patent/KR20220063212A/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0078Avoidance of errors by organising the transmitted data in a format specifically designed to deal with errors, e.g. location
    • H04L1/0083Formatting with frames or packets; Protocol or part of protocol for error control
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0001Systems modifying transmission characteristics according to link quality, e.g. power backoff
    • H04L1/0006Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the transmission format
    • H04L1/0007Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the transmission format by modifying the frame length
    • H04L1/0008Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the transmission format by modifying the frame length by supplementing frame payload, e.g. with padding bits
    • 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/40084Bus arbitration
    • 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/40169Flexible bus arrangements
    • 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]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L2001/0092Error control systems characterised by the topology of the transmission link
    • H04L2001/0094Bus

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Quality & Reliability (AREA)
  • Small-Scale Networks (AREA)
  • Information Transfer Systems (AREA)

Abstract

본 발명은 직렬 버스 시스템(1)용 가입자국(10; 30) 및 직렬 버스 시스템(1)에서의 통신 방법에 관한 것이다. 가입자국(10; 30)은, 가입자국(10; 30)과 버스 시스템(1)의 하나 이상의 다른 가입자국(10; 20; 30)의 통신을 제어하기 위한 통신 제어 장치(11; 31) 및 상기 통신 제어 장치(11; 31)에 의해 생성된 송신 신호(TXD)를 버스 시스템(1)의 버스(40)로 송신하기 위한 송/수신 장치(12; 32)를 구비하고, 그에 따라 버스 시스템(1)의 가입자국(10, 20, 30) 간에 교환되는 메시지(45)에 대해, 제1 통신 단계(451)에서 버스(40)로 송신된 신호의 비트 시간(t_bt)이 제2 통신 단계(452)에서 송신된 신호의 비트 시간(t_bt)과 상이할 수 있으며, 통신 제어 장치(11; 31)는, 하나의 프레임(450; 450_1; 4500)에 따라 송신 신호(TXD)를 생성하도록, 그리고 프레임(450; 450_1; 4500)의 비트 스트림이 프레임(450; 450_1; 4500)을 수신하는 버스 시스템(1)의 가입자국(10; 20; 30)에서 예상 프레임(450; 450_1; 4500)에 비해 하나 이상의 비트만큼 오프셋되었는지를 검사하도록 구성된 하나 이상의 필드(FCP; FCP_1; FCP_2)를 상기 프레임(450; 450_1; 4500) 내에 삽입하도록 구성되는, 직렬 버스 시스템용 가입자국(10; 30).

Description

직렬 버스 시스템용 가입자국 및 직렬 버스 시스템에서의 통신 방법
본 발명은 직렬 버스 시스템용 가입자국; 및 높은 데이터 전송 속도와 큰 유연성 및 큰 오류 강인성으로 동작하는 직렬 버스 시스템에서의 통신 방법;에 관한 것이다.
예컨대 차량에서 센서와 제어 장치 간의 통신을 위한 버스 시스템은 기술 시스템 또는 차량의 여러 기능에 따라 대량의 데이터를 전송할 수 있어야 한다. 이 경우, 송신기에서 수신기로 이전보다 더 빠르게 데이터를 전송해야 하고, 필요 시 대용량 데이터 패킷도 전송할 수 있어야 하는 경우가 많다.
현재, CAN FD를 이용하는 CAN 프로토콜 규격으로서의 표준 ISO11898-1:2015에서 데이터가 메시지로서 전송되는 버스 시스템이 차량 도입 단계에 있다. 메시지는 센서, 제어 장치, 인코더 등과 같은 버스 시스템의 버스 가입자국들 간에 전송된다. CAN FD는 대부분의 제조업체에 의해 상기 제1 단계에서 2Mbit/s의 데이터 비트 전송률 및 500kbit/s의 중재 비트 전송률로 차량에서 사용된다.
더 높은 데이터 전송 속도를 구현하기 위해, 이하 CAN XL이라고 명시되는 CAN FD용 후속 버스 시스템을 개발중이다. CAN XL은 CAN 버스를 통한 순수 데이터 전송 외에도 기능 안전(Safety), 데이터 보안(Security) 및 서비스 품질(QoS = Quality of Service)과 같은 다른 기능도 지원해야 한다. 이들은 자율 주행 차량에서 필요한 기본 속성이다.
데이터가 채널(CAN 버스)을 통해 프레임 형태로 전송될 때, 특히 외부 영향, 특히 방사선으로 인해 언제든지 왜곡(distortion)이 발생할 수 있다. CAN XL 통신 프로토콜의 태스크는 무엇보다도 왜곡되어 수신된 프레임을 검출하여 폐기하는 것이다. 오류 검출의 품질은 잔류 오류 확률(residual error probability)을 통해 표현될 수 있다. 잔류 오류 확률은 프레임의 송신기가 아닌 버스 시스템의 수신 가입자국(수신 노드)에서의 오류에도 불구하고 프레임이 올바른 것으로 승인될 확률이 얼마나 되는지를 나타낸다.
시스템의 기능 안전을 위해서는 잔류 오류 확률이 가능한 한 낮은 것이 매우 유리하고 중요하다. 클래스 1 오류, 요컨대 잘못 반전되어 샘플링된 비트(비트 플립) 및/또는 클래스 2 오류, 요컨대 국부적으로 누적된 비트 오류(버스트 오류)는 프레임 형태로 전송되는 체크섬(CRC = Cyclic Redundancy Check)을 이용하여 검출될 수 있다.
그러나 외부 방사선에 의해 에지가 생성되거나 변위되는 경우 문제가 된다. 이는 프레임의 송신기가 아닌 버스 시스템의 수신 가입자국(수신 노드)이 수신된 프레임 내 비트 스트림의 오프셋 샘플링을 수행하도록 유도할 수 있다. 비트 스트림의 샘플링은 하나 이상의 비트만큼 오프셋될 수 있으며, 이를 클래스 3 오류라고도 한다. 이러한 오류의 경우, 전술한 유형의 수신 가입자국은 체크섬(CRC)을 이용하여 오류를 확실하게 검출할 수 없다.
그러므로 본 발명의 과제는, 전술한 문제를 해결하는 직렬 버스 시스템용 가입자국 및 직렬 버스 시스템에서의 통신 방법을 제공하는 것이다. 특히, 높은 데이터 전송 속도에서도, 그리고 프레임당 유효 데이터량의 증가 시에도 통신의 높은 오류 강인성을 구현하기 위해, 비트 스트림 내에서 추가의 또는 변위된 에지로 인한 오류가 매우 확실하게 검출되는, 직렬 버스 시스템용 가입자국 및 직렬 버스 시스템에서의 통신 방법을 제공해야 한다.
상기 과제는 청구항 제1항의 특징을 가진 직렬 버스 시스템용 가입자국에 의해 해결된다. 가입자국은, 가입자국과 버스 시스템의 하나 이상의 다른 가입자국의 통신을 제어하기 위한 통신 제어 장치 및 이 통신 제어 장치에 의해 생성된 송신 신호를 버스 시스템의 버스로 송신하기 위한 송/수신 장치를 가지며, 그럼으로써 버스 시스템의 가입자국들 간에 교환되는 메시지에 대해, 제1 통신 단계에서 버스로 송신된 신호의 비트 시간이 제2 통신 단계에서 송신된 신호의 비트 시간과 상이할 수 있으며, 상기 통신 제어 장치는, 하나의 프레임에 따라 송신 신호를 생성하도록, 그리고 상기 프레임의 비트 스트림이 프레임을 수신하는 버스 시스템의 가입자국에서 예상 프레임에 비해 하나 이상의 비트만큼 오프셋되었는지를 검사하도록 구성된 하나 이상의 필드를 상기 프레임 내에 삽입하도록 구성된다.
가입자국의 이러한 구성을 통해, 버스로부터 수신되는 프레임의 잔류 오류 확률이 감소할 수 있다. 이를 통해 프레임 수신자는 정확한 프레임 길이를 디코딩할 수 있고, 그에 따라 정확한 지점에서 프레임 끝의 체크섬(CRC = Cyclic Redundancy Check)도 검사할 수 있다. 그 결과, 버스 시스템의 통신 오류를 신속하고 확실하게 감지할 수 있다.
가입자국에 의해, N개 이하의 비트 시프트(bit shift)까지 오프셋 데이터 스트림의 검출을 보장할 수 있다. 이는 방사선 조사 시에도 버스를 통한 프레임의 안전한 전송을 가능케 한다.
또한, 바람직하게는, 클래스 3 오류와 관련하여 잔류 오류 확률을 줄이기 위한 조치는 매우 소수의 추가 제어 비트만을 필요로 한다. 이 경우, 새로운 FCP 필드가 프레임 내에 매우 능숙하게 배치된다. 그 결과, 실질적으로 전송될 유효 데이터 외 과잉 데이터(데이터 오버헤드)가 매우 적어진다.
각각의 고정 스터프 비트가 FCP 필드로 대체되면, 과잉 데이터(데이터 오버헤드)는 심지어 0이 될 수도 있다. 또한, 이 경우 복수의 고정 스터프 비트 및 이와 더불어 FCP 필드가 대체되기 때문에 포맷 검사(format check)가 매우 강력해진다. 과잉 데이터(데이터 오버헤드)가 소량이거나 증가하지 않음으로써, 전송 가능한 순 데이터 전송 속도가 최적화될 수 있고, 그에 따라 버스 시스템에서의 통신이 필요 이상으로 느려지지 않는다.
그 결과, 가입자국에서는 프레임당 유효 데이터양이 증가하더라도 버스 시스템 운영 중 현재 이벤트와 관련하여 높은 유연성 및 낮은 오류율에서 기능상 매우 안전하게 프레임을 송수신할 수 있다.
이 경우, 버스 시스템 내 가입자국에 의해 특히, 제1 통신 단계에서 CAN에 의해 공지된 중재를 유지할 수 있고, 그럼에도 CAN 또는 CAN FD에 비해 전송 속도를 더욱 현저하게 높일 수 있다.
가입자국에 의해 수행되는 방법은, 버스 시스템 내에, CAN 프로토콜 및/또는 CAN FD 프로토콜에 따라 메시지를 송신하는 하나 이상의 CAN 가입자국 및/또는 하나 이상의 CAN FD 가입자국도 존재하는 경우에 사용될 수도 있다.
가입자국의 바람직한 또 다른 구성들은 종속 청구항들에 명시된다.
일 실시예에 따라, 통신 제어 장치는 프레임 내 데이터 필드 이후에 하나 이상의 필드를 삽입하도록 구성될 수 있다. 이 경우, 통신 제어 장치는 프레임 내에서 프레임 내 모든 비트에 걸쳐 형성된 프레임 체크섬 이후에 하나 이상의 필드를 삽입하도록 구성될 수 있다.
또 다른 한 실시예에 따라, 통신 제어 장치는 프레임의 유효 데이터가 삽입된 데이터 필드 이전에 하나 이상의 필드를 삽입하도록 구성된다.
특히 높은 순 데이터 전송 속도를 위해 통신 제어 장치는, 수신 가입자국의 하나 이상의 필드의 내용이 비트 스트림의 오프셋을 검사하는 기능뿐 아니라 그와 다른 기능을 위해서도 이용될 수 있는 방식으로 하나 이상의 필드를 구성하고 그리고/또는 배치하도록 구성된다.
또 다른 한 실시예에 따라, 통신 제어 장치는, 프레임 내에서 항상 정해진 수의 비트 이후에 상기 언급한 필드 중 하나를 삽입하도록 구성될 수 있다.
통신 제어 장치가 프레임에 하나 이상의 필드를 고정 스터프 비트로서 삽입하도록 구성되는 점도 고려될 수 있으며, 이 경우 통신 제어 장치는, 정해진 수의 비트 이후에 하나의 고정 스터프 비트가 삽입되는 고정 비트 스터핑 규칙에 따라 모든 고정 스터프 비트를 프레임에 삽입하도록 구성된다. 이 경우, 통신 제어 장치는 스터프 비트를 위해 어느 값을 선택할 수 있는지에 따라 필드의 값을 선택하도록 구성될 수 있으며, 이로써 프레임 내에서 5개의 동일한 비트 뒤에 연속하여 역 스터프 비트(inverse stuff bit)가 삽입된다.
선택적으로, 통신 제어 장치는 프레임 내에서 앞서 언급한 모든 필드에 대해 동일한 값을 사용하도록 구성된다.
한 특별한 실시예에서, 통신 제어 장치는 하나 이상의 필드에 대해 짝수(M)개의 비트를 사용하도록 구성되고, 이 경우 M개의 비트 중 전반부는 동일한 제1 값을 가지며, M개의 비트 중 후반부는 각각 제1 값의 역수인 동일한 제2 값을 갖는다.
다른 한 특별한 실시예에서, 통신 제어 장치는, 하나 이상의 필드 내에 프레임 내에 삽입된 고정 스터프 비트 수의 적어도 가장 낮은 값의 비트를 삽입하도록 구성된다.
또 다른 한 특별한 실시예에서, 통신 제어 장치는, 하나 이상의 필드 내에 통신 제어 장치에 의해 이미 버스로 송신된 프레임 수의 적어도 가장 낮은 값의 비트를 삽입하도록 구성된다.
통신 제어 장치는 제2 통신 단계에서 제1 통신 단계로의 전환 후 하나의 비트를 제공하도록 구성되고, 그동안 송/수신 장치는 제2 통신 단계로 전환할 시간을 확보하며, 상기 통신 제어 장치는, 버스 시스템의 가입자국이 프레임을 수신하지만 프레임의 송신기가 아닌 경우에, 수신된 프레임의 비트 스트림이 예상된 프레임에 비해 하나 이상의 비트만큼 오프셋되었는지의 여부를 확인하기 위해 상기 비트를 사용하도록 구성된다.
메시지에 대해 형성된 프레임이 CAN FD에 호환되도록 구성될 수 있으며, 이 경우 제1 통신 단계에서는, 버스 시스템의 가입자국 중 어느 가입자국이 후속하는 제2 통신 단계에서 버스에 대해 적어도 일시적으로 충돌없는 배타적 액세스 권한을 얻는지가 협의된다.
앞서 기술한 가입자국은, 추가로 하나의 버스 및 서로 직렬로 통신하는 방식으로 버스를 통해 서로 연결되어 있는 둘 이상의 가입자국을 포함하는 버스 시스템의 부분일 수 있다. 이 경우, 둘 이상의 가입자국 중 적어도 하나는 앞서 기술한 가입자국이다.
전술한 과제는 또한, 청구항 제15항에 따른, 직렬 버스 시스템에서의 통신 방법을 통해서도 해결된다. 이 방법은, 통신 제어 장치 및 송/수신 장치를 구비한 버스 시스템의 가입자국에 의해 구현되고, 이 방법은 상기 통신 제어 장치를 이용하여 가입자국과 버스 시스템의 하나 이상의 다른 가입자국의 통신을 제어하는 단계와, 송/수신 장치를 이용하여 통신 제어 장치에 의해 생성된 송신 신호를 버스 시스템의 버스로 송신하는 단계를 포함하며, 그럼으로써 버스 시스템의 가입자국들 간에 교환되는 메시지에 대해, 제1 통신 단계에서 버스로 송신된 신호의 비트 시간이 제2 통신 단계에서 송신된 신호의 비트 시간과 상이할 수 있으며, 상기 통신 제어 장치는, 하나의 프레임에 따라 송신 신호를 생성하도록, 그리고 상기 프레임의 비트 스트림이 프레임을 수신하는 버스 시스템의 가입자국에서 예상 프레임에 비해 하나 이상의 비트만큼 오프셋되었는지를 검사하도록 구성된 하나 이상의 필드를 상기 프레임 내에 삽입하도록 구성된다.
본원 방법은, 앞서 가입자국과 관련하여 언급한 것과 동일한 장점을 제공한다.
본 발명의 또 다른 가능한 구현예들은 전술한 또는 하기에서 실시예들과 관련하여 기술되는 특징들 또는 실시형태들의 명시되지 않은 조합들도 포함한다. 이 경우, 통상의 기술자는 개별 양태들도 개선 또는 보완으로서 본 발명의 각각의 기본 형태에 부가할 것이다.
하기에서 본 발명은 첨부된 도면을 참조하여 그리고 실시예들에 기초하여 더 상세하게 기술된다.
도 1은 제1 실시예에 따른 버스 시스템의 간소화된 블록회로도이다.
도 2는 제1 실시예에 따른 버스 시스템의 가입자국으로부터 송신될 수 있는 메시지의 구조를 설명하기 위한 도표이다.
도 3은 제1 실시예에 따른 버스 시스템의 가입자국의 간소화된 개략적 블록회로도이다.
도 4는 제1 실시예에 따른 가입자국에서 버스 신호들(CAN-XL_H 및 CAN-XL_L)의 시간 곡선을 나타낸 그래프이다.
도 5는 제1 실시예에 따른 가입자국에서 버스 신호들(CAN-XL_H 및 CAN-XL_L)의 차동 전압(VDIFF)의 시간 곡선을 나타낸 그래프이다.
도 6은 제2 실시예에 따른 버스 시스템의 가입자국으로부터 송신될 수 있는 메시지의 구조를 설명하기 위한 도표이다.
도 7은 제3 실시예에 따른 버스 시스템의 가입자국으로부터 송신될 수 있는 메시지의 구조를 설명하기 위한 도표이다.
도면들에서 동일하거나 기능이 동일한 요소들에는, 달리 명시되지 않는 한, 동일한 도면부호들이 부여된다.
도 1에는 예시로서, 하기에 기술되는 것처럼, 특히 기본적으로 CAN 버스 시스템, CAN FD 버스 시스템, CAN XL 버스 시스템 및/또는 이들의 변형을 위해 구성되는 버스 시스템(1)이 도시되어 있다. 버스 시스템(1)은 차량에서, 특히 자동차, 비행기 등에서, 또는 병원 등에서 사용될 수 있다.
도 1에서, 버스 시스템(1)은, 각각 제1 버스 코어(41) 및 제2 버스 코어(42)를 구비한 버스(40)에 연결되어 있는 복수의 가입자국(10, 20, 30)을 포함한다. 버스 코어(41, 42)는 CAN_H 및 CAN_L 또는 CAN-XL_H 및 CAN-XL_L이라고도 지칭될 수 있으며, 송신 상태에서 신호를 위한 우성 레벨들의 결합 또는 열성 레벨들 또는 여타 레벨들의 생성 이후 전기 신호 전송을 위해 이용된다. 버스(40)를 통해 메시지(45, 46)가 신호들의 형태로 개별 가입자국들(10, 20, 30) 간에 직렬로 전송될 수 있다. 버스(40) 상에서 통신 시, 도 1에 흑색의 지그재그형 블록 화살표로 도시된 것처럼, 오류가 발생하면, 선택적으로 오류 프레임(47)(error flag)이 송신될 수 있다. 가입자국(10, 20, 30)은 예컨대 자동차의 제어 장치, 센서, 표시 장치 등이다.
도 1에 도시된 것처럼, 가입자국(10)은 통신 제어 장치(11), 송/수신 장치(12) 및 포맷 검사 모듈(15)을 포함한다. 가입자국(20)은 통신 제어 장치(21) 및 송/수신 장치(22)를 포함한다. 가입자국(30)은 통신 제어 장치(31), 송/수신 장치(32) 및 포맷 검사 모듈(35)을 포함한다. 가입자국(10, 20, 30)의 송/수신 장치(12, 22, 32)는, 비록 도 1에는 도시되어 있지 않지만, 각각 직접 버스(40)에 연결되어 있다.
통신 제어 장치(11, 21, 31)는 각각, 버스(40)에 연결되어 있는 각각의 가입자국(10, 20, 30)과 하나 이상의 다른 가입자국(10, 20, 30) 간의 버스(40)를 통한 통신을 제어하는 데 이용된다.
통신 제어 장치(11, 31)는, 예컨대 수정된 CAN 메시지(45)인 제1 메시지(45)를 작성하고 판독한다. 이 경우, 수정된 CAN 메시지(45)는, 도 2를 참조하여 더 상세하게 기술되며 각각의 포맷 검사 모듈(15, 35)이 사용되는 CAN XL 포맷을 기반으로 구성된다. 또한, 통신 제어 장치(11, 31)는, 필요에 따라 송/수신 장치(32)를 위해 CAN XL 메시지(45) 또는 CAN FD 메시지(46)를 공급하거나 상기 송/수신 장치로부터 수신하도록 구성될 수 있다. 이 경우에도, 각각의 포맷 검사 모듈(15, 35)이 사용된다. 즉, 통신 제어 장치(11, 31)는 제1 메시지(45) 또는 제2 메시지(46)를 작성하고 판독하며, 제1 및 제2 메시지(45, 46)는 이들의 데이터 전송 표준에 의해 구분되고, 요컨대 이 경우에는 CAN XL이거나 CAN FD이다.
통신 제어 장치(21)는 ISO 11898-1:2015에 따른 종래 CAN 컨트롤러처럼, 다시 말해 CAN FD tolerant Classical CAN 컨트롤러 또는 CAN FD 컨트롤러처럼 구성될 수 있다. 통신 제어 장치(21)는 제2 메시지(46), 예컨대 CAN FD 메시지(46)를 작성하고 판독한다. CAN FD 메시지(46)의 경우, 0 내지 64 데이터 바이트 수가 포함될 수 있으며, 이는 또한 Clalssical CAN 메시지 전송 시보다 훨씬 더 빠른 데이터 전송 속도로 전송된다. 특히 통신 제어 장치(21)는 종래 CAN FD 컨트롤러처럼 구성된다.
송/수신 장치(22)는 ISO 11898-1:2015에 따른 종래 CAN 트랜시버 또는 CAN FD 트랜시버처럼 구성될 수 있다. 송/수신 장치(12, 32)는, 필요에 따라 관련 통신 제어 장치(11, 31)를 위한 CAN XL 포맷에 따른 메시지(45) 또는 현재의 CAN FD 포맷에 따른 메시지(46)를 공급하거나 상기 통신 제어 장치로부터 수신하도록 구성될 수 있다.
두 가입자국(10, 30)에 의해, CAN XL 포맷을 갖는 메시지(45)의 형성 및 후속 전송 그리고 상기 메시지(45)의 수신이 구현될 수 있다.
도 2에는, 메시지(45)에 대해, 버스(40)를 통한 송신을 위한 송/수신 장치(12)를 위해 통신 제어 장치(11)에 의해 공급되는 것과 같은 CAN XL 프레임(450)이 도시되어 있다. 이 경우, 통신 제어 장치(11)는, 도 2에도 도시된 것처럼, 본 실시예에서 CAN FD와 호환되는 것으로서 프레임(450)을 작성한다. 이는 가입자국(30)의 통신 제어 장치(31) 및 송/수신 장치(32)에도 유사하게 적용된다.
도 2에 따라, CAN XL 프레임(450)은 버스(40) 상에서의 CAN 통신을 위해 상이한 통신 단계(451, 452)로, 요컨대 중재 단계(451)와 데이터 단계(452)로 분할된다. 프레임(450)은 중재 필드(453), 제어 필드(454), 데이터 필드(455), 체크섬(FCRC)을 위한 체크섬 필드(456), 그리고 전환 시퀀스(ADS) 및 확인응답 필드(457)를 갖는다.
중재 단계(451)에서는, 중재 필드(453) 내에서 식별자(ID)에 의해 가입자국들(10, 20, 30) 간에 비트 단위로, 어느 가입자국(10, 20, 30)이 최고 우선순위를 갖는 메시지(45, 46)를 송신하고자 하고 그로 인해 후속 데이터 단계(452)에서의 다음 송신 시간 동안 버스 시스템(1)의 버스(40)에 대한 배타적 액세스 권한을 얻는지가 협의된다. 중재 단계(451)에서는 CAN 및 CAN FD에서와 같은 물리 계층이 이용된다. 물리 계층은, 비트 전송 계층 또는 공지된 OSI 모델(Open Systems Interconnection Model)의 계층(1)에 상응한다.
단계(451) 동안의 중점은, 우선순위가 더 높은 메시지(45, 46)가 파괴되지 않으면서, 버스(40)에 대한 가입자국(10, 20, 30)의 동시 액세스를 허용하는 공지된 CSMA/CR 방법이 이용된다는 점이다. 그렇게 하여, 버스 시스템(1)에 상대적으로 간단하게 추가 버스 가입자국(10, 20, 30)이 부가될 수 있고, 이는 매우 바람직하다.
CSMA/CR 방법의 결과, 버스(40) 상에는 버스(40) 상에서 우성 상태를 갖는 다른 가입자국(10, 20, 30)에 의해 덮어쓰기될 수 있는 이른바 열성 상태가 존재해야 한다. 열성 상태에서는, 개별 가입자국(10, 20, 30)에서 하이 임피던스 조건이 우세하며, 이는 버스 회로의 기생 성분과 결합하여 더 긴 시간 상수를 야기한다. 이로 인해, 실제 차량에 적용 시, 오늘날 CAN FD 물리 계층의 최대 비트 전송률이 현재 초당 약 2메가비트로 제한된다.
데이터 단계(452)에서는 제어 필드(454)의 일부 외에도, CAN XL 프레임 또는 데이터 필드(455)의 메시지(45)의 유효 데이터; 체크섬(FCRC)을 위한 체크섬 필드(456); 그리고 데이터 단계(452)에서 역으로 데이터 단계(451)로의 전환에 이용되는 필드(DAS);가 송신된다.
메시지(45)의 송신기는, 가입자국(10)이 송신기로서 중재에 성공하고, 이로써 가입자국(10)이 송신기로서 송신하기 위해 버스 시스템(1)의 버스(40)에 대한 배타적 액세스 권한을 가질 때 비로소 버스(40)로 데이터 단계(452)의 비트의 송신을 시작한다.
매우 일반적으로, CAN XL을 포함한 버스 시스템에서는 CAN 또는 CAN FD에 비해 다음과 같은 상이한 속성이 구현될 수 있다:
a) CAN 및 CAN FD의 견고성 및 사용자 친화성에 대한 책임이 있는 입증된 속성, 특히 CSMA/CR 방법에 따른 식별자 및 중재를 포함한 프레임 구조가 인계되고, 필요한 경우 조정됨.
b) 순 데이터 전송 속도가 특히 초당 약 10메가비트로 상승함.
c) 프레임당 유효 데이터의 크기가 특히 약 4kbyte 또는 임의의 다른 값으로 증대됨.
도 2에 도시된 바와 같이, 가입자국(10)은 제1 통신 단계로서의 중재 단계(451)에서 부분적으로, 특히 FDF 비트까지(이를 포함해서), CAN/CAN FD에 의해 공지된, ISO11898-1:2015에 따른 포맷을 이용한다. 그에 반해 가입자국(10)은 제1 통신 단계에서의 FDF 비트부터 그리고 제2 통신 단계, 즉, 데이터 단계(452)에서는 하기에 기술되는 CAN XL 포맷을 이용한다.
본 실시예에서 CAN XL과 CAN FD는 호환된다. 이 경우, CAN FD에 의해 공지된 res 비트(이하 XLF 비트라고 함)는 CAN FD 포맷에서 CAN XL 포맷으로의 전환에 이용된다. 따라서 CAN FD와 CAN XL의 프레임 포맷은 res 비트까지 동일하다. 수신기는 res 비트에서 처음으로, 프레임이 어떤 포맷으로 송신될지를 검출한다. CAN XL 가입자국, 즉, 여기서는 가입자국 "10, 30"이 CAN FD도 지원한다.
11비트의 식별자(identifier)가 사용되는 도 2에 도시된 프레임(450)의 대안으로, 선택적으로 29비트의 식별자(identifier)가 사용되는 CAN XL 확장 프레임 포맷이 가능하다. 이는 FDF 비트까지 ISO11898-1:2015로부터 공지된 CAN FD 확장 프레임 포맷과 동일하다.
도 2에 따라 프레임(450)은 SOF 비트부터 FDF 비트까지(이를 포함해서) ISO11898-1:2015에 따른 CAN FD 베이스 프레임 포맷과 동일하다. 따라서 공지된 구조는 여기서 더 설명하지 않는다. 도 2의 하단 라인에 굵은 대시 기호로 표시된 비트는 프레임(450)에서 우성으로 또는 '0'으로 송신된다. 도 2의 상단 라인에 굵은 대시 기호로 표시된 비트는 프레임(450)에서 열성으로 또는 '1'로 송신된다. CAN XL 데이터 단계(452)에서는 대칭인 '1' 레벨과 '0' 레벨이 열성 및 우성 레벨 대신 사용된다.
일반적으로 프레임(450)의 생성 시 두 가지 상이한 스터핑 규칙이 적용된다. 제어 필드(454)의 XLF 비트까지는 CAN FD의 동적 비트 스터핑 규칙이 적용됨에 따라, 5개의 동일한 비트 뒤에 연속하여 역 스터프 비트가 삽입되어야 한다. 제어 필드(454)에서 resXL 비트 이후로는 고정 스터핑 규칙이 적용됨에 따라, 정해진 수의 비트 이후에 하나의 고정 스터프 비트가 삽입되어야 한다. 대안적으로, 단일 스터프 비트 대신 2개 이상의 비트가 고정 스터프 비트로서 삽입될 수 있으며, 이는 차후에도 더 자세히 설명될 것이다.
프레임(450)에서 FDF 비트 바로 뒤에 XLF 비트가 따르며, 이는 앞에서 언급한 바와 같은 CAN FD 베이스 프레임 포맷의 "res 비트"에 상응한다. XLF 비트가 1로서, 즉, 열성으로 송신되면, 프레임(450)은 CAN XL 프레임으로 식별된다. CAN FD 프레임의 경우, 통신 제어 장치(11)는 XLF 비트를 0으로서, 즉, 우성으로 설정한다.
프레임(450)에서 XLF 비트 다음에는 resXL 비트가 뒤따르며, 이는 향후 사용을 위한 우성 비트이다. resXL은 프레임(450)에 대해 0으로서, 즉, 우성으로서 송신되어야 한다. 그러나 가입자국(10)이 resXL 비트를 1로서, 즉, 열성으로 수신하면, 수신 가입자국(10)은 예를 들어 res=1일 때의 CAN FD 메시지(46)의 경우와 같이 프로토콜 예외 상태(Protocol Exception State)가 된다. 그 대안으로, resXL 비트를 반대로 정의할 수도 있으며, 다시 말해 1로서, 즉, 열성으로 송신되어야 한다. 이 경우, 수신 가입자국은 resXL 비트가 우성인 경우 프로토콜 예외 상태가 된다.
프레임(450)에서 resXL 비트 다음에는, 미리 결정된 비트 시퀀스가 코딩되는 ADS(Arbitration Data Switch) 시퀀스가 뒤따른다. 이 비트 시퀀스는 중재 단계(451)의 비트 전송률(중재 비트 전송률)로부터 데이터 단계(452)의 비트 전송률(데이터 비트 전송률)로의 간단하고 확실한 전환을 가능케 한다. 예를 들어, ADS 시퀀스의 비트 시퀀스는 우성으로, 즉, 0으로 송신되는 AL1 비트로 구성된다. AL1 비트는 중재 단계(451)의 마지막 비트이다. AL1 비트 내에서 송/수신 장치(12, 22, 32)의 물리 계층이 전환된다. 2개의 후속 비트 DH1 및 DL1은 이미 데이터 비트 전송률로 송신된다. 따라서 CAN XL에서 비트 DH1 및 DL1은 데이터 단계(452)의 시간상 짧은 비트이다.
프레임(450)에서 ADS 시퀀스 다음에는 데이터 필드(455)의 내용을 식별하는 PT 필드가 뒤따른다. 상기 내용은 데이터 필드(455)에 어떤 유형의 정보가 포함되어 있는지를 알려준다. 예를 들어, PT 필드는 데이터 필드(455)에 "인터넷 프로토콜"(IP) 프레임이 존재하는지 아니면 터널링된 이더넷 프레임 등이 존재하는지의 여부를 알려준다.
PT 필드 다음에는 프레임(450)의 데이터 필드(455)의 바이트 수를 나타내는 데이터 길이 코드(DLC = Data Length Code)가 삽입된 DLC 필드가 이어진다. 데이터 길이 코드(DLC)는 0부터 데이터 필드(455)의 최대 길이 또는 데이터 필드 길이까지의 모든 값을 취할 수 있다. 최대 데이터 필드 길이가 특히 2048비트인 경우, 데이터 길이 코드(DLC)는 "DLC = 0"이 바이트 수가 1인 데이터 필드 길이를 의미하고 "DLC = 2047"은 바이트 수가 2048인 데이터 필드 길이를 의미한다는 가정하에, 11개의 비트 수를 필요로 한다. 대안적으로, 예컨대 CAN에서처럼 길이가 0인 데이터 필드(455)가 허용될 수도 있다. 이 경우, DLC = 0은 예를 들어 0바이트 수의 데이터 필드 길이를 코딩할 것이다. 이 경우, 예를 들어 11비트에서 코딩 가능한 최대 데이터 필드 길이는 (2^11)-1 = 2047이다.
프레임(450)에서 DLC 필드 다음에는 헤더 체크섬(HCRC)이 뒤따른다. 헤더 체크섬(HCRC)은 프레임(450)의 헤더(Header)를 보호하기 위한 체크섬이며, 다시 말해, SOF 비트에 의한 프레임(450)의 시작부터 헤더 체크섬(HCRC)의 시작까지의 {헤더 체크섬(HCRC)의 시작까지의 모든 동적 스터프 비트 및 선택적으로 고정 스터프 비트도 포함한) 모든 비트이다. 헤더 체크섬(HCRC)의 길이 및 이와 더불어 순환 중복 검사(CRC)에 따른 체크섬 다항식의 길이는 원하는 해밍 거리(Hamming distance)에 상응하게 선택해야 한다. 헤더 체크섬(HCRC)에 의해 보호될 데이터 워드는 11비트의 데이터 길이 코드(DLC)의 경우 27비트보다 길다. 따라서 6의 해밍 거리를 달성하려면 헤더 체크섬(HCRC)의 다항식 길이가 최소 13비트이어야 한다.
프레임(450)에서 헤더 체크섬(HCRC) 다음에는 데이터 필드(Data Field)(455)가 뒤따른다. 데이터 필드(455)는 1 내지 n 데이터 바이트로 구성되며, 여기서 n은 예를 들어 2048바이트 또는 4096바이트 또는 임의의 다른 값이다. 대안적으로 0의 데이터 필드 길이가 고려될 수 있다. 데이터 필드(455)의 길이는 전술한 바와 같이 DLC 필드에서 코딩된다.
프레임(450)에서 데이터 필드(455) 뒤에는 프레임 체크섬(FCRC)이 뒤따른다. 프레임 체크섬(FCRC)은 프레임 체크섬(FCRC)의 비트들로 구성된다. 프레임 체크섬(FCRC)의 길이 및 이와 더불어 CRC 다항식의 길이는 원하는 해밍 거리에 상응하게 선택해야 한다. 프레임 체크섬(FCRC)은 전체 프레임(450)을 보호한다. 대안적으로 데이터 필드(455)만 선택적으로 프레임 체크섬(FCRC)에 의해 보호된다.
프레임(450)에서 프레임 체크섬(FCRC) 다음에는, 미리 결정된 비트 시퀀스가 코딩되는 DAS(Data Arbitration Switch) 시퀀스가 뒤따른다. 이 비트 시퀀스는 데이터 단계(452)의 데이터 비트 전송률로부터 중재 단계(451)의 중재 비트 전송률로의 간단하고 확실한 전환을 가능케 한다.
예를 들어 DAS 시퀀스의 비트 시퀀스가 열성 데이터 비트(DH2)로 구성되고, 그 뒤로 우성 중재 비트(DL2)가 뒤따른다. 본 예시에서는 전술한 2개의 비트 사이의 에지에서 비트 전송률이 전환될 수 있다. 일반적으로 DAS 필드는 3개의 비트, 즉, DH2 비트, DL2 비트 및 AH1 비트를 갖는다. 비트 중 첫 번째와 마지막 비트는 열성(1)으로, 그리고 중간 비트는 우성(0)으로 송신된다.
앞의 실시예와 달리, 본 실시예에서는 DAS 시퀀스에, 가입자국(10, 30), 특히 이들의 포맷 검사 모듈(15, 35)이 수신된 프레임(450) 내에서 비트 스트림의 오프셋을 검출할 수 있게 하는 필드(FCP)가 포함된다. 이 경우, FCP 필드의 비트 패턴(bit pattern)이 길수록 수신 가입자국(10, 30)에서 검출될 수 있는 시프트가 더 크거나 더 강하다. 시프트 검출에 가장 유리한 비트 패턴은 짝수(M)개의 비트를 포함하며, 이 경우, 처음 M/2개의 비트는 1을 포함하고 그 다음 M/2개의 비트는 0을 포함한다. 4비트의 FCP 필드가 있는 도 2의 예에서 처음 두 비트는 열성(1)으로 송신된다. FCP 필드의 마지막 두 비트는 우성(0)으로 송신된다. 따라서, 도 2에 따른 4비트의 FCP 필드는 추가 비트(DH3, DL3) 때문에 DAS 필드의 시작부에 있는 일반적인 2개의 비트와 차이가 있다. 그러나 도 2의 FCP 필드에서 열성에서 우성으로의 에지는 DH3, DL3 비트가 없는 일반적인 DAS 필드와 동일한 기능을 이행할 수 있다.
아주 일반적으로, FCP 필드에서 처음 M/2개의 비트는 0을 포함하고 그 다음 "M/2"개의 비트는 1을 포함할 수 있다. FCP 필드에 의해 "M-1"만큼의 오프셋을 검출할 수 있다. 이는 하기에서 도 3과 관련하여 더 구체적으로 기술된다.
프레임(450)에서 DAS 시퀀스 다음에는 RP 필드로써 시작되는 확인응답 필드(457)가 뒤따른다. RP 필드에는 수신 가입자국(10, 30)이 데이터 단계(452) 이후 중재 단계(451)의 시작을 검출할 수 있도록 하는 동기화 패턴(Sync Pattern)이 보유된다. 동기화 패턴은, 예를 들어 잘못된 헤더 체크섬(HCRC)으로 인해 데이터 필드(455)의 정확한 길이를 알지 못하는 수신 가입자국(10, 30)이 동기화될 수 있게 한다. 이어서, 이들 가입자국은 잘못된 수신을 보고하기 위해 "부정 응답(Negative Acknowledge)"을 송신할 수 있다. 이는 특히 CAN XL이 데이터 필드(455)에서 오류 프레임(47)(Error Flags)을 허용하지 않는 경우에 중요하다.
확인응답 필드(ACK field)(457)에서 RP 필드 다음에는 프레임(450)의 올바른 수신의 확인응답 또는 부정 확인응답을 위한 복수의 비트가 뒤따른다. 도 2의 예시에서는 ACK 비트, ACK dlm 비트, NACK 비트 및 NACK dlm 비트가 제공된다. NACK 비트 및 NACK dlm 비트는 선택적 비트이다. 수신 가입자국(10, 30)이 프레임(450)을 올바르게 수신한 경우, 이들 수신 가입자국은 ACK 비트를 우성으로서 송신한다. 송신 가입자국은 상기 ACK 비트를 열성으로서 송신한다. 따라서 원래 프레임(450) 형태로 버스(40)로 송신된 비트가 수신 가입자국(10, 30)에 의해 덮어쓰기될 수 있다. ACK dlm 비트는 다른 필드와의 분리에 사용되는 열성 비트로서 송신된다. NACK 비트 및 NACK dlm 비트는, 수신 가입자국이 프레임(450)의 올바르지 못한 수신을 버스(40)를 통해 시그널링할 수 있게 하는 데 이용된다. 이 비트의 기능은 ACK 비트 및 ACK dlm 비트의 기능과 같다.
프레임(450)에서 확인응답 필드(ACK field)(457) 뒤에는 종료 필드(EOF = End of Frame)가 뒤따른다. 종료 필드(EOF)의 비트 시퀀스는 프레임(450)의 끝을 식별하는 데 이용된다. 종료 필드(EOF)는 프레임(450)의 끝에서 8개의 열성 비트가 송신되도록 한다. 이는 프레임(450) 내에서는 발생할 수 없는 비트 시퀀스이다. 이로써, 프레임(450)의 끝이 가입자국(10, 20, 30)에 의해 확실하게 검출될 수 있다.
종료 필드(EOF)는 NACK 비트에서 우성 비트가 확인되었는지 또는 열성 비트가 확인되었는지에 따라 길이가 달라진다. 송신 가입자국이 NACK 비트를 우성으로 수신한 경우, 종료 필드(EOF)는 7개의 열성 비트를 갖는다. 그 밖의 경우, 종료 필드(EOF)는 5개의 열성 비트 길이에 불과하다.
프레임(450)에서 종료 필드(EOF) 다음에는 도 2에 도시되지 않은 프레임간 간격(IFS = Inter Frame Space)이 뒤따른다. 이 프레임간 간격(IFS)은 ISO11898-1:2015에 따라 CAN FD와 같이 구성된다.
도 3에는, 통신 제어 장치(11), 송/수신 장치(12), 그리고 상기 통신 제어 장치(11)의 부분인 포맷 검사 모듈(15)을 포함하는 가입자국(10)의 기본적인 구성이 도시되어 있다. 가입자국(30)은 도 3에 도시된 것과 유사한 방식으로 구성되나, 포맷 검사 모듈(35)은 도 1에 따라 통신 제어 장치(31) 및 송/수신 장치(32)와 별도로 배치된다. 그러므로 가입자국(30)은 별도로 기술하지 않는다.
도 3에 따라, 가입자국(10)은, 통신 제어 장치(11) 및 송/수신 장치(12)에 추가로, 상기 통신 제어 장치(11)가 할당되어 있는 마이크로컨트롤러(13); 그리고 대안적으로 가입자국(10)의 전자 모듈(electronic module)에 필요한 복수의 기능이 통합되어 있는 시스템 기반 칩(SBC, System Basis chip)일 수 있는 시스템 ASIC(16)(ASIC = Application-Specific Integrated Circuit)를 갖는다. 시스템 ASIC(16) 내에는 송/수신 장치(12)에 추가로, 상기 송/수신 장치(12)에 전기 에너지를 공급하는 에너지 공급 장치(17)가 내장된다. 에너지 공급 장치(17)는 통상 5V의 전압(CAN_Supply)을 공급한다. 그러나 필요에 따라, 에너지 공급 장치(17)가 다른 값을 갖는 다른 전압을 공급할 수도 있다. 그에 추가로 또는 그 대안으로 에너지 공급 장치(17)가 전류원으로서 구성될 수 있다.
포맷 검사 모듈(15)은 이후 더 상세히 설명될 삽입 블록(151) 및 평가 블록(152)을 갖는다.
또한, 송/수신 장치(12)는 송신 모듈(121) 및 수신 모듈(122)을 갖는다. 하기에서 항상 송/수신 장치(12)로 언급되더라도, 선택적으로 송신 모듈(121)의 외부의 별도의 장치에 수신 모듈(122)을 제공할 수 있다. 송신 모듈(121)과 수신 모듈(122)은, 종래의 송/수신 장치(22)에서처럼 구성될 수 있다. 송신 모듈(121)은 특히 적어도 하나의 연산 증폭기 및/또는 하나의 트랜지스터를 가질 수 있다. 수신 모듈(122)은 특히 적어도 하나의 연산 증폭기 및/또는 하나의 트랜지스터를 가질 수 있다.
송/수신 장치(12)는 버스(40)에 연결되며, 더 정확하게 말하면 CAN_H 또는 CAN-XL_H를 위한 버스의 제1 버스 코어(41) 그리고 CAN_L 또는 CAN-XL_L을 위한 버스의 제2 버스 코어(42)에 연결된다. 제1 및 제2 버스 코어(41, 42)에 전기 에너지, 특히 전압(CAN_Supply)을 공급하기 위한 에너지 공급 장치(17)를 위한 전압 공급은 하나 이상의 단자(43)를 통해 수행된다. 접지 또는 CAN_GND와의 연결은 단자(44)를 통해 구현된다. 제1 및 제2 버스 코어(41, 42)는 종단 저항(terminating resistor, 49)에 의해 종단된다.
제1 및 제2 버스 코어(41, 42)는 송/수신 장치(12)에서 송신기(transmitter)라고도 지칭되는 송신 모듈(121)뿐만 아니라, 수신기(receiver)라고도 지칭되는 수신 모듈(122)에 연결되는데, 상기 연결은 간소화를 위해 도 3에는 도시되지 않았다.
버스 시스템(1)의 작동 중에, 송신 모듈(121)은, 통신 제어 장치(11)의 송신 신호(TXD 또는 TxD)를 버스 코어(41, 42)를 위한 상응하는 신호(CAN-XL_H 및 CAN-XL_L)로 변환하며, 이들 신호(CAN-XL_H 및 CAN-XL_L)를 버스(40) 상의 CAN_H 및 CAN_L용 단자들로 송신한다.
수신 모듈(122)은, 버스(40)로부터 수신되는, 도 4에 따른 신호들(CAN-XL_H 및 CAN-XL_L)을 토대로 수신 신호(RXD 또는 RxD)를 생성하고, 도 3에 도시된 것처럼, 상기 수신 신호를 통신 제어 장치(11)로 전달한다. 유휴 상태(Idle) 또는 대기 상태(Standby)를 제외하고, 송/수신 장치(12)는 수신 모듈(122)을 이용해서, 더 정확하게는 송/수신 장치(12)가 메시지(45)의 송신기인지 여부와 관계없이, 정상 모드에서 항상 버스(40) 상에서의 데이터 내지 메시지(45, 46)의 전송을 중지한다.
도 4의 예시에 따라, 신호(CAN-XL_H 및 CAN-XL_L)는 적어도 중재 단계(451)에서, CAN에 의해 공지된 것처럼 우성 및 열성 버스 레벨(401, 402)을 갖는다. 버스(40) 상에서, 도 5에 도시되어 있는 차동 신호(VDIFF = CAN-XL_H - CAN-XL_L)가 생성된다. 비트 시간(t_bt)을 갖는 신호(VDIFF)의 개별 비트들이 0.7V의 수신 임계치에 의해 검출될 수 있다. 데이터 단계(452)에서 신호(CAN-XL_H 및 CAN-XL_L)의 비트들은 중재 단계(451)에서보다 더 빠르게, 즉, 더 짧은 비트 시간(t_bt)으로 송신된다. 따라서, 데이터 단계(452)에서 신호(CAN-XL_H 및 CAN-XL_L)는 적어도 상대적으로 더 높은 비트 전송률에서 종래 신호(CAN_H 및 CAN_L)와 구분된다.
도 4에서 신호(CAN-XL_H, CAN-XL_L)에 대한 상태(401, 402)의 시퀀스 및 그에 기인하는 도 5의 전압(VDIFF)의 곡선은 단지 가입자국(10)의 기능의 설명을 위해서만 이용된다. 버스 상태(401, 402)에 대한 데이터 상태들의 시퀀스는 필요에 따라 선택될 수 있다.
달리 말하면, 송신 모듈(121)은 제1 작동 모드에서 도 4에 따라 버스(40)의 버스 라인의 2개의 버스 코어(41, 42)에 대해 상이한 버스 레벨을 갖는 버스 상태(402)로서의 제1 데이터 상태와; 버스(40)의 버스 라인의 2개의 버스 코어(41, 42)에 대해 동일한 버스 레벨을 갖는 버스 상태(401)로서의 제2 데이터 상태;를 생성한다.
또한, 송신 모듈(121)은, 데이터 단계(452)를 포함하는 제2 작동 모드에서 신호들(CAN-XL_H, CAN-XL_L)의 시간 곡선들의 경우, 상대적으로 더 높은 비트 전송률로 비트를 버스(40)로 송신한다. CAN-XL_H 및 CAN-XL_L 신호는 데이터 단계(452)에서 추가로 CAN FD의 경우와 다른 물리 계층에 의해 생성될 수 있다. 그렇게 하여, 데이터 단계(452)에서 비트 전송률이 CAN FD의 경우보다 훨씬 더 높아질 수 있다.
도 3의 포맷 검사 모듈(15), 특히 그의 삽입 블록(151)은, 가입자국(10)이 프레임(450)의 송신기로서 작용할 때 FCP 필드를 프레임(450)에 삽입하는 역할을 한다. 도 2의 예시에서, 삽입 블록(151)은 프레임(450)에 단 하나의 FCP 필드를 삽입하였다. FCP 필드는, 프레임(450) 끝에서의 시프트도 검출될 수 있도록, 프레임(450)에서 가능한 한 나중에 배치된다. 도 2에 예시로서 도시된 바와 같이, 프레임 체크섬(FCRC) 이후에 배치하는 것이 매우 바람직한데, 그 이유는 이것이 가능한 마지막 자리이기 때문이다.
도 3의 포맷 검사 모듈(15)은 본 실시예에서, FCP 필드가 DAS 필드의 DH2 비트 및 DL2 비트를 대체하도록 구성된다. 이를 위해, DH2/DL2의 기능이 계속 유지되도록 FCP 필드를 1100 또는 111000 등으로 선택해야 한다. 따라서 FCP 필드는 확실한 포맷 검사를 가능하게 할 뿐만 아니라, 데이터 단계(452)에서 중재 단계(451)로의 전환 전에 동기화 에지의 역할도 한다. 즉, FCP 필드는 두 가지 상이한 기능을 가진다. 그럼으로써 FCP 필드는 과잉 데이터(데이터 오버헤드)를 가급적 덜 생성한다.
선택적으로 도 3의 포맷 검사 모듈(15)은 FCP 필드를 ADS 필드에 대한 대안으로 또는 그에 추가로 통합하도록 구성된다. 즉, 삽입 블록(151)은 프레임(450)에 하나 이상의 FCP 필드를 삽입할 수 있다.
도 3의 포맷 검사 모듈(15)의 평가 블록(152)은 FCP 필드를 사용하여 버스(40)로부터 수신된 비트 스트림의 포맷을 검사하는 데 사용된다.
FCP 필드가 예를 들어 M=4개의 비트를 가지면, 삽입 블록(151)은 FCP 필드를 "1100" 또는 "0011"로서 삽입할 수 있다. 그 결과, FCP 필드는 "1100" 또는 "0011"로서 송신된다. 수신 가입자국(10)이 평가 블록(152)을 이용하여 FCP 필드에 대한 또 다른 값을 샘플링하면, 평가 블록(152)은 프레임(450)의 비트 스트림이 시프트된 것으로 평가한다. FCP 필드의 이러한 비트 시퀀스를 사용하여 수신 가입자국(10)은 평가 블록(152)을 통해, 버스(40)로부터 수신된 비트 스트림이 왼쪽으로 M - 1 = 3비트만큼 또는 우측으로 M - 1 = 3비트만큼 시프트된 점을 검출할 수 있다. 이는 아래 표에 설명되어 있다.
사례 수신 가입자국에서의 샘플링 결과
3비트만큼 우측 시프트 0xxx
2비트만큼 우측 시프트 00xx
1비트만큼 우측 시프트 100x
시프트 없음 1100
1비트만큼 좌측 시프트 x110
2비트만큼 좌측 시프트 xx11
3비트만큼 좌측 시프트 xxx1
표에서 x는 임의의 비트값, 즉, 0 또는 1을 나타낸다. FCP 필드는 표 중간에 기재된 것처럼 "1100"으로서 송신된다. 에지 오프셋이 없어서 비트 스트림의 시프트가 일어나지 않는 경우, 수신 가입자국은 FCP 필드를 "1100"으로도 샘플링한다.
표에서 송신된 필드 "1100"의 위와 아래에는, 본 예시에서 프레임(450)의 송신기가 아닌 수신 가입자국(수신 노드)(10)이 오류로 인해 오프셋된 비트 스트림을 샘플링하는 경우가 표시되어 있다. "3비트만큼 우측 시프트"는 수신 가입자국(수신 노드)의 뷰(view)가 3비트만큼 시프트된 점, 더 정확하게는 본 경우에는 3비트만큼 늦다는 점을 의미한다. 그에 상응하게, 수신 가입자국(수신 노드)(10)은 송신된 FCP 필드의 마지막 비트를 수신된 FCP 필드의 첫 번째 비트로서 샘플링한다. 수신된 FCP 필드의 다른 3개의 비트는 여기서 'x'로 표시된 다른 값을 갖는다.
"1비트만큼 좌측 시프트"는 수신 가입자국(수신 노드)(10)의 뷰(view)가 1비트만큼 시프트된 점, 더 정확하게는 본 경우에는 1비트만큼 빠르다는 점을 의미한다. 그에 상응하게, 수신 가입자국(수신 노드)(10)은 송신된 FCP 필드의 처음 3개의 비트를 수신된 FCP 필드의 마지막 비트로서 샘플링한다.
표에서 알 수 있듯이, 수신 가입자국(수신 노드)(10)에 의해 샘플링된 FCP 필드의 값은, "x"로 표시된 비트가 어느 값을 갖는지와는 상관없이, 시프트 시 항상 적어도 하나의 비트가 FCP 필드의 예상 값과 상이하다. 이로써 수신 가입자국(수신 노드)(10), 특히 그의 포맷 검사 모듈(15) 및 더 정확하게는 그의 평가 블록(152)은 시프트, 즉, 수신된 비트 스트림의 오류를 검출할 수 있다. 평가 블록(152)은 상응하는 메시지를 통신 제어 장치(11)로 송출한다. 그럼으로써 수신된 프레임(450)이 오류가 있는 경우 폐기될 수 있다. 그 결과, 통신 제어 장치(11)는 오류 프레임(47)을 버스(40)로 송신할 수 있다.
본 실시예의 FCP 필드의 고정값에 대한 또 다른 예에 따르면, FCP 필드는 6비트를 가지므로 "M = 6비트"가 적용된다. 따라서 삽입 블록(151)은 FCP 필드를 "111000" 또는 "000111"로서 삽입한다. 그 결과, FCP 필드는 "111000" 또는 "000111"로서 송신된다. 프레임의 송신기가 아닌 수신 가입자국(10)이 평가 블록(152)을 이용하여 FCP 필드에 대한 또 다른 값을 샘플링하면, 평가 블록(152)은 비트 스트림이 시프트된 것으로 평가한다. FCP 필드의 이러한 비트 시퀀스를 사용하여 수신 가입자국(10)은 평가 블록(152)을 통해, 버스(40)로부터 수신된 비트 스트림이 왼쪽으로 또는 우측으로 M - 1 = 5비트만큼 시프트된 점을 확실하게 검출할 수 있다.
물론, FCP 필드의 다른 고정 길이 및 그에 따라 FCP 필드의 다른 고정값도 고려해볼 수 있다.
본 실시예의 일 변형에 따라, FCP 필드가 가변적인 내용을 갖는다.
FCP 필드의 이러한 가변적인 내용의 예로서, FCP 필드에서 고정 스터프 비트의 수가 전송될 수 있다. 고정 스터프 비트의 수는 프레임(450)의 길이에 따라 달라진다. FCP 필드의 너비, 즉, 프레임(450) 내에서 FCP 필드를 위해 제공된 비트의 수가 전체 고정 스터프 비트 수를 전송하기에 불충분한 경우, 고정 스터프 비트 카운터의 상대적으로 더 낮은 값의 비트만 송신된다.
FCP 필드의 그러한 가변적인 내용의 또 다른 예로서, FCP 필드에서 송신 가입자국(송신 노드)으로부터 송신된 프레임(450)의 수가 전송될 수 있다. 송신 노드로부터 송신된 프레임(450)의 수를 프레임 카운터(frame counter)라고도 지칭할 수 있다.
도 6은 CAN XL과 CAN FD가 호환되는 제2 실시예에 따른 프레임(450_1)을 보여준다. 본 실시예에서, 프레임(450_1) 및 그와 더불어 CAN XL 프레임 포맷은 후술되는 바와 같이 도 2의 프레임(450)과 상이하다. 이하에서는 도 2의 프레임(450)과의 차이점만을 설명한다. 그 외에는 두 실시예의 프레임(450, 450_1)이 동일하다.
프레임(450_1) 내에는 2개 이상의 FCP 필드가 존재한다. 도 6의 예에서는, 프레임(450_1)에서 헤더 체크섬(HCRC) 뒤에 하나의 FCP 필드(FCP1)가 삽입되고, 프레임 체크섬(FCRC) 뒤에 하나의 FCP 필드(FCP2)가 삽입된다. 프레임(450_1)에서도 이들 FCP 필드(FCP1, FCP2)의 길이는 예시로서 M = 4비트이다. 물론 FCP 필드에 대해 다른 길이가 선택될 수 있다. 특히, FCP 필드(FCP1, FCP2)의 길이, 즉, 비트 수가 다를 수 있다.
매우 일반적으로, 삽입 블록(151)은 프레임(450_1) 내 임의의 위치에 하나의 FCP 필드를 삽입하도록 구성될 수 있다. 평가 블록(152)은, 해당 삽입 위치에서 FCP 필드를 검색하여 수신된 프레임(450_1)을 평가하도록 구성된다.
특히, 삽입 블록(151)은 송신될 프레임(450_1)에 FCP 필드를 여러 번 삽입하도록 구성된다. 예를 들어, 항상 미리 결정된 수의 데이터 다음에, 특히 항상 128바이트의 데이터 또는 임의의 다른 값 다음에 항상 동일한 내용을 갖는 FCP 필드가 삽입될 수 있다. 물론 다른 예도 고려해볼 수 있다.
도 7에는 CAN XL과 CAN FD의 프레임 포맷이 호환되지 않는, 본 발명의 제3 실시예에 따른 프레임(4500)이 도시되어 있다. 본 실시예에서, 프레임(4500) 및 그와 더불어 CAN XL 프레임 포맷은 후술되는 바와 같이 도 2의 프레임(450)과 상이하다. 이하에서는 도 2의 프레임(450)과의 차이점만을 설명한다. 그 외에는 두 실시예의 프레임(450, 4500)이 동일하다.
일반적으로 본 실시예에 따른 프레임(4500)의 생성 시에는 고정 스터핑 규칙만이 사용됨에 따라, 정해진 수의 비트 이후에 하나의 고정 스터프 비트가 삽입되어야 한다. 대안적으로, 단일 스터프 비트 대신 2개 이상의 비트도 고정 스터프 비트로서 삽입될 수 있다. 이는, 데이터 길이 코드(DLC)의 값을 알고 있는 경우, 일정한 프레임 길이 또는 프레임(4500)의 일정한 길이를 유도한다. 이는 동적 스터프 비트로 인해 유발되는 여러 문제를 방지한다.
본 실시예에 따른 프레임(4500)에서는 식별자(ID)가 더 이상 CAN FD와 같이 11개의 비트 수 또는 29개의 비트 수로 제한되지 않는다. 식별자(ID)의 비트 수(k)는 자유롭게 선택될 수 있다. 상기 수(k)는 대안적으로 고정된 값으로 정해질 수도 있다. 고속 순 데이터 전송 속도(net data rate)의 경우, k = 8비트의 ID가 적합하다. 이는 버스 시스템(1)의 각 가입자국(10, 20, 30)에 충분한 수의 버스 액세스 우선순위를 부여하기에 충분하다. 물론 필요에 따라, 그리고 버스 시스템(1)에서의 다양한 우선 순위의 수에 따라 k에 대해 다른 값이 선택될 수 있다.
도 2의 프레임(450)의 RRS, IDE, FDF, XLF 비트는 프레임(4500)에서는 더 이상 불필요하고 생략된다. 이는 4비트를 절약하며, 그 결과 프레임 오버헤드(frame overhead)가 감소한다. 이를 통해 버스 시스템(1)에서 순 데이터 전송 속도가 증대된다.
프레임(4500)의 종료 필드(EOF)는 여전히 NACK 비트가 우성인 경우만 5개의 비트 수를 갖는다. 그에 반해 NACK 비트가 열성인 경우에는 종료 필드(EOF)가 3개의 비트 수를 갖는다. 이는 프레임(4500)의 끝에서 6개의 열성 비트가 송신되도록 한다. 이러한 열성 비트의 수는, 중재 단계(451)에서 5개의 동일한 비트 이후에 하나의 고정 스터프 비트가 삽입되는 경우, 유효 프레임(4500) 내 다른 위치에서는 발생할 수 없다. 대안적으로 6비트 이상일 수도 있다. 특히 EOF 비트의 수는, 하나의 고정 스터프 비트가 뒤따라 삽입되는 비트 수로 조정되어야 한다.
프레임(4500)에서 프레임간 간격(IFS)은 최소 길이를 필요로 하지 않는다. 특히, 프레임간 간격(IFS)은 길이가 0일 수 있다. 이러한 경우, 2개의 프레임(4500)이 끊김 없이 연이어 송신된다. 그러나, 앞서 언급된 경우에 비해 버스 시스템(1)의 견고성을 증대시키기 위해, 예를 들어 1개의 비트 수를 갖는 프레임간 간격(IFS)도 유용하다. 현재 2개의 프레임(4500) 사이에 있는 7개의 열성 비트에 의해 버스(40) 상의 신규 가입자국이 더욱 신뢰성 있게 동기화될 수 있다.
제4 실시예에 따라, FCP 필드는 고정 스터프 비트로 사용된다. 달리 표현하면, 고정 스터프 비트 대신 FCP 필드를 프레임(450)에 삽입하도록 삽입 블록(151)이 구성된다. 그러한 경우, 예를 들어 2개의 스터프 비트 사이에 단 하나의 작은 시프트만 있을 수 있기 때문에, "M = 2비트"의 길이를 갖는 짧은 FCP 필드로 충분하다.
따라서, 본 실시예에서도 FCP 필드는 2개의 상이한 기능, 요컨대 스터프 비트 및 포맷 검사를 갖는다.
길이가 "M = 2비트"인 FCP 필드는 과잉 데이터(데이터 오버헤드)를 아주 조금만 발생시키거나, 심지어 과잉 데이터(데이터 오버헤드)를 전혀 발생시키지 않는다. 이에 대해서는 아래에서 더 자세히 설명한다.
본 실시예에서는 고정 스터프 비트 대신 항상 내용이 일정한 FCP 필드가 사용된다. FCP 필드 내 비트 패턴은 FCP 필드가 동기화 에지를 포함하도록 삽입 블록(151)에 의해 선택된다. CAN XL이 하강 에지에 동기화되는 경우, FCP 필드에 대해 값 "10"이 유리할 것이다. CAN XL이 상승 에지에 동기화된다면, FCP 필드에 대해 값 "01"이 유리할 것이다.
고정 스터프 비트에서는 최악의 경우 동기화를 위해 매 두 번째 스터프 비트 다음에만 하강 에지가 존재한다. FCP 필드에서는 항상 동기화될 수 있으므로, 두 FCP 필드 사이의 간격은, 수신 가입자국(10, 30)(수신 노드)의 동기화를 악화시키지 않고도, 두 고정 스터프 비트 사이의 간격의 두 배일 수 있다. FCP 필드는 2개의 비트를 갖지만 그 발생 빈도는 고정 스터프 비트의 절반에 불과하므로, FCP 필드에 의해 생성되는 과잉 데이터(데이터 오버헤드)는 고정 스터프 비트에 의해 생성되는 과잉 데이터(데이터 오버헤드)와 동일하다.
FCP 필드의 가장 큰 장점은 그 내용이 일정하다는 데 있다. 이로써, 데이터 스트림 내 시프트가 확실하게 감별될 수 있다. M = 2비트로 설명된 예에서, 수신 가입자국(10, 30)(수신 노드)에서의 1비트만큼의 시프트가 확실히 검출될 수 있다. FPC 필드가 프레임 내에서 매우 자주 발생함으로써, 시프트는 즉시 효과적으로 검출될 수 있다. 그로 인해, 수신된 프레임(450)에서의 오류가 매우 신속하게 검출될 수 있고, 프레임(450)의 송신이 신속하게 중단될 수 있다. 이는 버스 시스템(1)에서 사용자 데이터의 더 빠른 전송에 기여한다.
본 실시예의 일 변형에 따라, 수신 가입자국(10, 30)(CAN XL 수신 노드)은 모든 하강 에지에서 재동기화하는 대신 FCP 필드의 에지에서만 재동기화를 수행할 수 있다. 필요한 에지로 재동기화가 한정됨으로써, 수신 가입자국(10, 30)(CAN XL 수신 노드)이 교란된 에지에 동기화하여 오류를 삽입할 위험이 줄어든다.
본 실시예의 이러한 변형의 가장 큰 장점은, 오류 동기화를 달성하려면 현재 명시적으로 FCP 필드의 에지가 교란되어야 하기 때문에, 재동기화 오류의 수가 감소한다는 데 있다.
제5 실시예에 따라, FCP 필드는 다시 선행 실시예에서처럼 고정 스터프 비트로 사용된다. 그러나 본 실시예에서는 하나의 고정 스터프 비트 대신 항상 내용이 가변적인 FCP 필드가 사용된다. 따라서, 본 실시예에서도 FCP 필드는 2개의 상이한 기능, 요컨대 스터프 비트 및 포맷 검사를 갖는다.
이 경우, 삽입 블록(151)은 항상 스터프 비트의 값에 맞춰 FCP 필드를 선택한다. 스터프 비트는 두 개의 값, 즉, 0 또는 1을 가질 수 있으므로, 두 개의 서로 다른 FCP 필드가 가정된다. 따라서, 삽입 블록(151)은 값 "01"을 갖는 FCP 필드(FCP_A)를 삽입할 수 있거나, 값 "10"을 갖는 FCP 필드(FCP_B)를 삽입할 수 있다.
그러므로 삽입 블록(151)은 잠재적 스터프 비트의 값에 따라 FCP 필드를 삽입한다. 예를 들어, 스터프 비트가 0이면 FCP 필드(FCP_A)가 삽입되어 송신될 것이다. 스터프 비트가 1이면 FCP 필드(FCP_B)가 삽입되어 송신될 것이다.
FCP 필드의 가변 내용의 원리는 삽입 블록(151)을 위해 다른 FCP 필드의 생성에도 당연히 적용 가능하다.
제6 실시예에 따라, AH1 비트는 추가의 또는 유일한 FCP 필드로 사용된다. 이는 CAN XL 표준화의 현재 상태에 따라 AH1 비트가 달리 평가되지 않는 경우에 가능하다. 현재 AH1 비트는, 송/수신 장치(12, 32)에서 데이터 단계(452)로부터 중재 단계(451)로의 물리 계층의 전환을 위해 시간을 확보하는 목적으로만 사용된다.
그러한 경우, 수신 노드는 예를 들어 TXD 라인을 통해 물리 계층의 전환을 송/수신 장치(12, 32)에 시그널링할 수 있다. 이는 수신 노드가 송신을 위해 자신의 TXD 라인을 사용하지 않기 때문에 가능하다. 송신 노드에서는 이것이 불가능한데, 그 이유는 송신 노드가 송신을 위해 자신의 TXD 라인을 사용하기 때문이다.
결과적으로, 수신 노드 또는 수신 가입자국으로서의 가입자국(10)은 그의 평가 블록(152)을 이용하여 AH1 비트를 평가할 수 있으며, 다시 말해 샘플링할 수 있다. AH1 비트는 일정한 값을 가지므로, 수신된 프레임의 포맷 검사(Format Check)를 위해서도 사용된다. AH1 비트는 수신 노드가 비트 스트림을 오프셋 방식으로 샘플링하는지를 검출하는 데 도움이 된다. 이로써, 수신된 프레임의 포맷 검사(Format Check)를 안전하게 수행할 수 있거나 추가 FCP 필드의 경우 더욱 강화할 수 있다.
AH1 비트의 평가는, 수신된 프레임(450)의 포맷 검사(Format Check)가 과잉 데이터(데이터 오버헤드)를 유발하지 않는다는 장점이 있다. 따라서, 본 실시예에서도 FCP 필드는 2개의 상이한 기능, 요컨대 기존 AH1 비트의 기능 및 포맷 검사를 갖는다.
버스 시스템(1)의 가입자국(10, 20, 30) 및 이들 내에서 실행되는 방법의 전술한 모든 구성은 개별적으로도 또는 가능한 모든 조합으로도 이용될 수 있다. 특히 전술한 실시예들 및/또는 그 변형들의 모든 특징은 임의로 조합될 수 있다. 그에 추가로 또는 그 대안으로, 특히 하기 변형들을 생각해볼 수 있다.
본 발명이 앞에서 CAN 버스 시스템을 예시로 하여 기술되었긴 하나, 본 발명은 상이한 통신 단계를 위해 생성되는 버스 상태가 서로 구분되는 2개의 서로 다른 통신 단계가 사용되는 모든 통신 네트워크 및/또는 통신 방법에서 사용될 수 있다. 특히 본 발명은, 이더넷 및/또는 100 베이스-T1 이더넷, 필드 버스 시스템 등과 같은 여타의 직렬 통신 네트워크의 개발 시 사용될 수 있다.
특히 실시예들에 따른 버스 시스템(1)은, 데이터가 직렬로 2개의 상이한 비트 전송률로 전송될 수 있는 통신 네트워크일 수 있다. 버스 시스템(1)에서 최소한 정해진 시간 간격 동안에는 하나의 공통 채널에 대한 가입자국(10, 20, 30)의 충돌없는 배타적 액세스가 보장되는 것이 바람직하지만, 필수 요건은 아니다.
실시예들의 버스 시스템(1) 내 가입자국(10, 20, 30)의 개수 및 배치는 임의적인 사항이다. 특히 가입자국(20)은 버스 시스템(1) 내에서 생략될 수 있다. 하나 또는 복수의 가입자국(10 또는 30)이 버스 시스템(1) 내에 제공될 수도 있다. 버스 시스템(1) 내 모든 가입자국이 동일하게 구성되는 점, 즉, 가입자국(10)만 존재하거나 또는 가입자국(30)만 존재하는 경우도 생각해 볼 수 있다.

Claims (15)

  1. 직렬 버스 시스템(1)용 가입자국(10; 30)으로서, 이 가입자국은,
    가입자국(10; 30)과 버스 시스템(1)의 하나 이상의 다른 가입자국(10; 20; 30)의 통신을 제어하기 위한 통신 제어 장치(11; 31) 및
    상기 통신 제어 장치(11; 31)에 의해 생성된 송신 신호(TXD)를 버스 시스템(1)의 버스(40)로 송신하기 위한 송/수신 장치(12; 32)를 구비하고, 그에 따라 버스 시스템(1)의 가입자국(10, 20, 30) 간에 교환되는 메시지(45)에 대해, 제1 통신 단계(451)에서 버스(40)로 송신된 신호의 비트 시간(t_bt)이 제2 통신 단계(452)에서 송신된 신호의 비트 시간(t_bt)과 상이할 수 있으며,
    통신 제어 장치(11; 31)는, 하나의 프레임(450; 450_1; 4500)에 따라 송신 신호(TXD)를 생성하도록, 그리고 프레임(450; 450_1; 4500)의 비트 스트림이 프레임(450; 450_1; 4500)을 수신하는 버스 시스템(1)의 가입자국(10; 20; 30)에서 예상 프레임(450; 450_1; 4500)에 비해 하나 이상의 비트만큼 오프셋되었는지를 검사하도록 구성된 하나 이상의 필드(FCP; FCP_1; FCP_2)를 상기 프레임(450; 450_1; 4500) 내에 삽입하도록 구성되는, 직렬 버스 시스템용 가입자국(10; 30).
  2. 제1항에 있어서, 통신 제어 장치(11; 31)는 프레임(450; 450_1; 4500) 내에서 데이터 필드(455) 다음에 하나 이상의 필드(FCP; FCP_2)를 삽입하도록, 특히 프레임 (450; 450_1; 4500) 내에서 상기 프레임(450; 450_1; 4500) 내 모든 비트에 걸쳐 형성된 프레임 체크섬(FCRC) 이후에 하나 이상의 필드(FCP; FCP_2)를 삽입하도록 구성되는, 직렬 버스 시스템용 가입자국(10; 30).
  3. 제1항 또는 제2항에 있어서, 통신 제어 장치(11; 31)는 프레임(450; 450_1; 4500)의 유효 데이터가 삽입된 데이터 필드(455) 이전에 하나 이상의 필드(FCP_1)를 삽입하도록 구성되는, 직렬 버스 시스템용 가입자국(10; 30).
  4. 제1항 내지 제3항 중 어느 한 항에 있어서, 통신 제어 장치(11; 31)는 수신 가입자국(10; 30)의 하나 이상의 필드(FCP_1)의 내용이 비트 스트림의 오프셋을 검사하는 기능뿐 아니라 그와 다른 기능을 위해서도 이용될 수 있는 방식으로 하나 이상의 필드(FCP_1)를 구성하고 그리고/또는 배치하도록 구성되는, 직렬 버스 시스템용 가입자국(10; 30).
  5. 제1항 내지 제4항 중 어느 한 항에 있어서, 통신 제어 장치(11; 31)는 프레임(450; 450_1; 4500) 내에서 항상 정해진 수의 비트 이후에 상기 필드(FCP; FCP_1; FCP_2) 중 하나를 삽입하도록 구성되는, 직렬 버스 시스템용 가입자국(10; 30).
  6. 제1항 내지 제5항 중 어느 한 항에 있어서, 통신 제어 장치(11; 31)는 하나 이상의 필드(FCP; FCP_1; FCP_2)를 고정 스터프 비트로서 프레임(450; 450_1; 4500) 내에 삽입하도록 구성되고,
    통신 제어 장치(11; 31)는, 정해진 수의 비트 이후에 하나의 고정 스터프 비트가 삽입되도록 하는 고정 비트 스터핑 규칙에 따라 모든 고정 스터프 비트를 프레임(450; 450_1; 4500)에 삽입하도록 구성되는, 직렬 버스 시스템용 가입자국(10; 30).
  7. 제6항에 있어서, 통신 제어 장치(11; 31)는 스터프 비트를 위해 어느 값을 선택할 수 있는지에 따라 필드(FCP; FCP_1; FCP_2)의 값을 선택하도록 구성될 수 있으며, 이로써 프레임(450; 450_1; 4500) 내에서 5개의 동일한 비트 뒤에 연속하여 역 스터프 비트(inverse stuff bit)가 삽입되는, 직렬 버스 시스템용 가입자국(10; 30).
  8. 제1항 내지 제6항 중 어느 한 항에 있어서, 통신 제어 장치(11; 31)는 프레임(450; 450_1; 4500) 내 모든 필드(FCP; FCP_1; FCP_2)에 대해 동일한 값을 사용하도록 구성되는, 직렬 버스 시스템용 가입자국(10; 30).
  9. 제8항에 있어서, 통신 제어 장치(11; 31)는 하나 이상의 필드(FCP; FCP_1; FCP_2)에 대해 짝수(M)개의 비트를 사용하도록 구성되며,
    M개의 비트 중 전반부는 동일한 제1 값을 가지고,
    M개의 비트 중 후반부는 각각 제1 값의 역수인 동일한 제2 값을 갖는, 직렬 버스 시스템용 가입자국(10; 30).
  10. 제8항에 있어서, 통신 제어 장치(11; 31)는, 하나 이상의 필드(FCP; FCP_1; FCP_2) 내에 프레임(450; 450_1; 4500) 내에 삽입된 고정 스터프 비트 수의 적어도 가장 낮은 값의 비트를 삽입하도록 구성되는, 직렬 버스 시스템용 가입자국(10; 30).
  11. 제8항에 있어서, 통신 제어 장치(11; 31)는, 하나 이상의 필드(FCP; FCP_1; FCP_2) 내에 통신 제어 장치 (11; 31)에 의해 이미 버스(40)로 송신된 프레임(450; 450_1; 4500) 수의 적어도 가장 낮은 값의 비트를 삽입하도록 구성되는, 직렬 버스 시스템용 가입자국(10; 30).
  12. 제1항 내지 제11항 중 어느 한 항에 있어서, 통신 제어 장치(11; 31)는 제2 통신 단계(452)가 제1 통신 단계(451)로 전환된 후에 하나의 비트(AH1)를 제공하도록 구성되고, 그동안 송/수신 장치(12; 32)는 제2 통신 단계(452)로의 전환을 위한 시간을 확보하며,
    상기 통신 제어 장치(11; 31)는, 버스 시스템(1)의 가입자국(10; 20; 30)이 프레임(450; 450_1; 4500)을 수신하지만 프레임(450; 450_1; 4500)의 송신기가 아닌 경우, 수신된 프레임(450; 450_1; 4500)의 비트 스트림이 예상된 프레임(450; 450_1; 4500)에 비해 하나 이상의 비트만큼 오프셋되었는지의 여부를 검사하기 위해 상기 비트(AH1)를 사용하도록 구성되는, 직렬 버스 시스템용 가입자국(10; 30).
  13. 제1항 내지 제12항 중 어느 한 항에 있어서, 메시지(45)를 위해 형성된 프레임(450; 450_1)이 CAN FD와 호환되도록 구성되며,
    제1 통신 단계(451)에서는, 버스 시스템(1)의 가입자국(10, 20, 30) 중 어느 가입자국이 후속하는 제2 통신 단계(452)에서 버스(40)에 대해 적어도 일시적으로 충돌없는 배타적 액세스 권한을 얻는지가 협의되는, 직렬 버스 시스템용 가입자국(10; 30).
  14. 버스(40); 및
    서로 직렬로 통신할 수 있도록 버스(40)를 통해 서로 연결되어 있는 둘 이상의 가입자국(10; 20; 30);을 가진 버스 시스템(1)으로서,
    이들 가입자국 중 적어도 하나의 가입자국(10; 30)은 제1항 내지 제13항 중 어느 한 항에 따른 가입자국(10; 30)인, 버스 시스템(1).
  15. 직렬 버스 시스템(1)에서의 통신을 위한 방법으로서, 상기 방법은 통신 제어 장치(11; 31) 및 송/수신 장치(12; 32)를 가진 버스 시스템(1)의 가입자국(10; 30)에 의해 실행되며, 상기 방법은,
    통신 제어 장치(11; 31)를 이용하여 가입자국(10; 30)과 버스 시스템(1)의 하나 이상의 다른 가입자국(10; 20; 30)의 통신을 제어하는 단계, 및
    송/수신 장치(12; 32)를 이용하여, 통신 제어 장치(11; 31)에 의해 생성된 송신 신호(TXD)를 버스 시스템(1)의 버스(40)로 송신하는 단계를 포함하며, 그에 따라 버스 시스템(1)의 가입자국(10, 20, 30) 간에 교환되는 메시지(45)에 대해, 제1 통신 단계(451)에서 버스(40)로 송신된 신호의 비트 시간(t_bt)이 제2 통신 단계(452)에서 송신된 신호의 비트 시간(t_bt)과 상이할 수 있으며,
    통신 제어 장치(11; 31)는, 하나의 프레임(450; 450_1; 4500)에 따라 송신 신호(TXD)를 생성하도록, 그리고 상기 프레임(450; 450_1; 4500)의 비트 스트림이 프레임(450; 450_1; 4500)을 수신하는 버스 시스템(1)의 가입자국(10; 20; 30)에서 예상 프레임(450; 450_1; 4500)에 비해 하나 이상의 비트만큼 오프셋되었는지를 검사하도록 구성된 하나 이상의 필드(FCP; FCP_1; FCP_2)를 상기 프레임(450; 450_1; 4500) 내에 삽입하도록 구성되는, 직렬 버스 시스템에서의 통신 방법.
KR1020227011780A 2019-09-11 2020-08-06 직렬 버스 시스템용 가입자국 및 직렬 버스 시스템에서의 통신 방법 KR20220063212A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
DE102019213783.0 2019-09-11
DE102019213783.0A DE102019213783A1 (de) 2019-09-11 2019-09-11 Teilnehmerstation für ein serielles Bussystem und Verfahren zur Kommunikation in einem seriellen Bussystem
PCT/EP2020/072126 WO2021047834A1 (de) 2019-09-11 2020-08-06 Teilnehmerstation für ein serielles bussystem und verfahren zur kommunikation in einem seriellen bussystem

Publications (1)

Publication Number Publication Date
KR20220063212A true KR20220063212A (ko) 2022-05-17

Family

ID=71995994

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020227011780A KR20220063212A (ko) 2019-09-11 2020-08-06 직렬 버스 시스템용 가입자국 및 직렬 버스 시스템에서의 통신 방법

Country Status (8)

Country Link
US (1) US11722335B2 (ko)
EP (1) EP4029202A1 (ko)
JP (1) JP7345640B2 (ko)
KR (1) KR20220063212A (ko)
CN (1) CN114342325B (ko)
BR (1) BR112022003414A2 (ko)
DE (1) DE102019213783A1 (ko)
WO (1) WO2021047834A1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11991022B2 (en) 2021-05-19 2024-05-21 Volvo Car Corporation Monitoring controller area network (CAN) XL nodes
US11804977B2 (en) 2021-05-19 2023-10-31 Volvo Car Corporation Monitoring controller area network (CAN) XL nodes

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102010063797A1 (de) * 2010-12-21 2012-06-21 Robert Bosch Gmbh Verfahren und Vorrichtung zur seriellen Datenübertragung mit zusätzlich eingefügten Daten
EP2521319B1 (en) * 2011-05-02 2015-10-14 Robert Bosch GmbH Controller area network with flexible data-rate
DE102012200997A1 (de) 2011-08-29 2013-02-28 Robert Bosch Gmbh Verfahren und Vorrichtung zur Prüfung der korrekten Funktion einer seriellen Datenübertragung
JP2013070184A (ja) 2011-09-21 2013-04-18 Renesas Electronics Corp シリアル同期検出回路及び同期検出方法
JP2014531781A (ja) * 2012-06-26 2014-11-27 ローベルト ボッシュ ゲゼルシャフト ミット ベシュレンクテル ハフツング メッセージの大きさがフレキシブルでビット長が可変的な直列データ伝送のための方法及び装置
EP2712123A1 (en) * 2012-09-20 2014-03-26 Robert Bosch Gmbh Standard CAN implementation tolerating CAN FD frames
US9471528B2 (en) 2012-11-02 2016-10-18 Nxp B.V. Controller area network (CAN) transceiver and method for operating a CAN transceiver
DE102013220374A1 (de) * 2013-10-09 2015-04-09 Robert Bosch Gmbh Teilnehmerstation für ein Bussystem und Verfahren zur breitbandigen CAN-Kommunikation
DE102014204050A1 (de) * 2014-03-05 2015-09-10 Robert Bosch Gmbh Teilnehmerstation für ein Bussystem und Verfahren zur Verbesserung der Sendequalität in einem Bussystem
DE102014215468A1 (de) * 2014-08-05 2016-02-11 Robert Bosch Gmbh Teilnehmerstation für ein Bussystem und Verfahren zur breitbandigen CAN-Kommunikation
DE102014215465A1 (de) * 2014-08-05 2016-02-11 Robert Bosch Gmbh Teilnehmerstation für ein Bussystem und Verfahren zur breitbandigen CAN-Kommunikation
DE102015209201A1 (de) * 2014-09-03 2016-03-03 Robert Bosch Gmbh Verfahren zur seriellen Übertragung eines Rahmens über ein Bussystem von einem Sender zu mindestens einem Empfänger und Teilnehmerstation für ein Bussystem
DE102015209196A1 (de) 2014-09-08 2016-03-10 Robert Bosch Gmbh Verfahren zur seriellen Übertragung eines Rahmens über ein Bussystem von einem Sender zu mindestens einem Empfänger und Teilnehmern eines Bussystems
JP6541004B2 (ja) 2016-06-08 2019-07-10 本田技研工業株式会社 通信システム
EP3319274B1 (en) * 2016-11-02 2019-04-17 NXP USA, Inc. Can module and method therefor
DE102017211860B3 (de) * 2017-07-11 2018-09-20 Volkswagen Aktiengesellschaft Verfahren zur Übertragung von Daten über einen seriellen Kommunikationsbus, entsprechend ausgelegte Busschnittstelle sowie entsprechend ausgelegtes Computerprogramm
DE102018202615A1 (de) 2018-02-21 2019-08-22 Robert Bosch Gmbh Teilnehmerstation für ein Bussystem und Verfahren zur Erhöhung der Datenrate eines Bussystems
JP6505935B1 (ja) * 2018-11-16 2019-04-24 株式会社ラック Can通信装置、can通信システム、can通信方法およびプログラム
DE102018221961A1 (de) * 2018-12-17 2020-06-18 Robert Bosch Gmbh Teilnehmerstation für ein serielles Bussystem und Verfahren zur Kommunikation in einem seriellen Bussystem
DE102019107248A1 (de) * 2019-03-21 2020-09-24 Eaton Intelligent Power Limited Busanordnung und Verfahren zum Betreiben einer Busanordnung

Also Published As

Publication number Publication date
JP2022547557A (ja) 2022-11-14
JP7345640B2 (ja) 2023-09-15
DE102019213783A1 (de) 2021-03-11
CN114342325A (zh) 2022-04-12
US20220286320A1 (en) 2022-09-08
TW202114392A (zh) 2021-04-01
CN114342325B (zh) 2023-09-26
WO2021047834A1 (de) 2021-03-18
BR112022003414A2 (pt) 2022-05-24
EP4029202A1 (de) 2022-07-20
US11722335B2 (en) 2023-08-08

Similar Documents

Publication Publication Date Title
CN113330719B (zh) 用于串行总线系统的用户站和在串行总线系统中通信的方法
US11706049B2 (en) Subscriber station for a serial bus system and method for communication in a serial bus system
US11962409B2 (en) User station for a serial bus system, and method for communicating in a serial bus system
JP7219342B2 (ja) シリアルバスシステム用の加入局およびシリアルバスシステムでの通信方法
KR20220063212A (ko) 직렬 버스 시스템용 가입자국 및 직렬 버스 시스템에서의 통신 방법
JP7462044B2 (ja) シリアルバスシステム用の加入局およびシリアルバスシステムでの通信方法
KR20220099920A (ko) 직렬 버스 시스템용 가입자국을 위한 통신 제어 장치 및 직렬 버스 시스템에서의 통신 방법
CN111713074B (zh) 用于串行总线系统的用户站和用于针对在串行总线系统中接收的消息用信号通知错误的方法
JP7422229B2 (ja) シリアルバスシステム用の加入者局およびシリアルバスシステムでの通信方法
TWI838577B (zh) 用於串列匯流排系統的節點站以及用於在串列匯流排系統中通訊的方法
KR20230045069A (ko) 직렬 버스 시스템용 가입자국 및 직렬 버스 시스템에서의 통신 방법
US20230148180A1 (en) Subscriber station for a serial bus system and method for communication in a serial bus system
KR20230045061A (ko) 직렬 버스 시스템용 가입자국 및 직렬 버스 시스템에서의 통신 방법
KR20230107328A (ko) 직렬 버스 시스템용 가입자국 및 직렬 버스 시스템에서의 통신 방법

Legal Events

Date Code Title Description
A201 Request for examination