KR102119764B1 - 차량용 메시지 패킷을 송수신하는 장치 및 방법 - Google Patents

차량용 메시지 패킷을 송수신하는 장치 및 방법 Download PDF

Info

Publication number
KR102119764B1
KR102119764B1 KR1020180087075A KR20180087075A KR102119764B1 KR 102119764 B1 KR102119764 B1 KR 102119764B1 KR 1020180087075 A KR1020180087075 A KR 1020180087075A KR 20180087075 A KR20180087075 A KR 20180087075A KR 102119764 B1 KR102119764 B1 KR 102119764B1
Authority
KR
South Korea
Prior art keywords
signal
error detection
detection code
bits
signals
Prior art date
Application number
KR1020180087075A
Other languages
English (en)
Other versions
KR20200012162A (ko
Inventor
김봉주
금병직
이준묵
Original Assignee
현대오트론 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 현대오트론 주식회사 filed Critical 현대오트론 주식회사
Priority to KR1020180087075A priority Critical patent/KR102119764B1/ko
Publication of KR20200012162A publication Critical patent/KR20200012162A/ko
Application granted granted Critical
Publication of KR102119764B1 publication Critical patent/KR102119764B1/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/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0061Error detection codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0041Arrangements at the transmitter end
    • H04L1/0042Encoding specially adapted to other signal generation operation, e.g. in order to reduce transmit distortions, jitter, or to improve signal shape

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)

Abstract

본 발명의 실시 예에 따른 차량용 통신 장치에서 데이터 패킷을 송신하는 방법은, 복수의 신호들의 각각에 대하여 압축률이 기준값 이상일 때, 대응하는 신호에 대한 에러 검출 코드를 생성하는 단계, 상기 복수의 신호들과 상기 생성된 에러 검출 코드를 이용하여 데이터 패킷을 생성하는 단계, 및 상기 생성된 데이터 패킷을 다른 차량 통신 장치로 송신하는 단계를 포함할 수 있다. 본 발명에 따른 차량용 메시지 패킷을 송수신하는 장치 및 그것의 방법은, 압축률에 연관된 에러 검출 코드를 이용하여 메시지 패킷을 발생하거나 복구함으로써 간단하게 메시지 패킷의 신뢰성을 향상시킬 수 있다.

Description

차량용 메시지 패킷을 송수신하는 장치 및 방법{APPARTUS AND METHOD FOR TRANSMITING/RECEIVING MESSAGE PACKET IN VEHICLE}
본 발명은 차량용 메시지 패킷을 송수신하는 장치 및 방법에 관한 것이다.
패킷 손상(packet corruption)은 수신된 데이터의 비트 에러를 발생시키고, 패킷 손실(packet loss)는 물리 계층에서 전체 데이터를 잃어 버리는 문제를 발생시킨다. 패킷 손실이 발생되면, 차량 어플리케이션(automotive application)과 같은 중요 보안 시스템(safety critical system)은 재전송(retransmission)을 수행해야 한다. 또한, 패킷 손상이 발생되면, 패킷 손상이 일어난 지점을 정확히 찾아 손상된 부분을 복구해야 한다. 다양한 복구(recovery) 알고리즘들이 네트워크 계층 별로 연구되고 있다. 종래의 복구 알고리즘은 패킷의 전체 페이로드(payload)가 증가되는 단점이 있었다.
공개특허: 10-2015-0015831, 공개일: 2015년 02월 11일, 제목: CAN 통신의 에러 검출 장치 및 에러 검출 방법. 등록특허: 10-1816266, 등록일: 2018년 01월 02일, 제목: 순환 중복 검사 코드 생성기 및 검사기.
본 발명의 목적은 페이로드 줄이는 메시지 패킷 구조와 복잡한 연산이 없는 복구 과정을 갖는 차량용 메시지 패킷 송수신 장치 및 방법을 제공하는데 있다.
본 발명의 실시 예에 따른 차량용 통신 장치에서 데이터 패킷을 송신하는 방법은: 복수의 신호들의 각각에 대하여 압축률이 기준값 이상일 때, 대응하는 신호에 대한 에러 검출 코드를 생성하는 단계; 상기 복수의 신호들과 상기 생성된 에러 검출 코드를 이용하여 데이터 패킷을 생성하는 단계; 및 상기 생성된 데이터 패킷을 다른 차량 통신 장치로 송신하는 단계를 포함할 수 있다.
실시 예에 있어서, 상기 복수의 신호들의 각각을 이진화시켰을 때, 상기 기준값은 각각의 신호에서 비트 '1'의 개수로 결정되는 것을 특징으로 한다.
실시 예에 있어서, 상기 기준값은 전체 비트의 50% 이상인 비트 '1'의 개수인 것을 특징으로 한다.
실시 예에 있어서, 상기 압축률이 기준값 이상이 아닐 때, 대응하는 신호에 대한 패리티를 생성하는 단계를 더 포함할 수 있다.
실시 예에 있어서, 상기 압축률에 상관없이 대응하는 신호에 대한 패리티를 생성하는 단계를 더 포함할 수 있다.
실시 예에 있어서, 상기 에러 검출 코드를 생성하는 단계는, 상기 대응하는 신호에서 비트 '1'의 개수만큼 비트 '1'을 나열하는 단계를 포함하고, 상기 나열된 비트들은 상기 대응하는 신호의 상기 에러 검출 코드인 것을 특징으로 한다.
실시 예에 있어서, 상기 데이터 패킷을 생성하는 단계는, 페이로드를 줄이기 위하여 shift 연산자와 & 연산자를 이용하여 상기 에러 검출 코드를 패킹(packing)하는 단계를 더 포함할 수 있다.
실시 예에 있어서, 상기 데이터 패킷을 생성하는 단계는, 페이로드를 줄이기 위하여 비트 필드 구조체를 이용하여 상기 에러 검출 코드를 패킹(packing)하는 단계를 더 포함할 수 있다.
실시 예에 있어서, 상기 에러 검출 코드를 생성하는 단계는, 상기 대응하는 신호에서 비트 '1'의 개수만큼 2진 비트로 인코딩하는 단계를 포함할 수 있다.
실시 예에 있어서, 상기 대응하는 신호가 2K이면, 상기 에러 검출 코드는 K 비트인 것을 특징으로 한다.
본 발명의 실시 예에 따른 차량용 통신 장치에서 데이터 패킷을 수신하는 방법은: 복수의 신호들 및 패킹된 에러 검출 코드를 갖는 데이터 패킷을 수신하는 단계; 상기 에러 검출 코드의 패킹을 해제하는 단계; 및 상기 해제된 에러 검출 코드에 따라 상기 복수의 신호들 중에서 대응하는 신호를 검증 및 복구하는 단계를 포함할 수 있다.
실시 예에 있어서, 상기 에러 검출 코드를 해제하는 단계는, 몇 비트씩 에러 검출 코드 패킹을 해제할 지를 판별하는 단계를 포함할 수 있다.
실시 예에 있어서, 상기 대응하는 신호를 검증 및 복구하는 단계는, 상기 해제된 에러 검출 코드에 대응하는 신호에서 비트 '1'의 개수가 상기 해제된 에러 검출 코드에 대응하는 개수와 동일한 지를 판별하는 단계; 및 상기 해제된 에러 검출 코드에 대응한 개수와 상기 비트 '1'의 개수가 동일하다면, 상기 대응하는 신호가 무결하다고 판별하는 단계를 포함할 수 있다.
실시 예에 있어서, 상기 대응하는 신호를 검증 및 복구하는 단계는, 상기 해제된 에러 검출 코드에 대응하는 개수와 상기 비트 '1'의 개수가 동일하지 않다면, 상기 대응하는 신호가 손상되었다고 판별하는 단계를 더 포함할 수 있다.
실시 예에 있어서, 상기 대응하는 신호를 검증 및 복구하는 단계는, 상기 대응하는 신호가 손상되었을 때, 현재 시각에서 상기 대응하는 신호와 이전 시각에서 수신된 신호를 비교하는 단계; 및 상기 비교결과로써 상기 현재 시각과 상기 이전 시각 사이의 신호 차이가 크다면, 상기 이전 시각에서 수신된 신호를 이용하여 상기 손상된 신호의 비트를 복구하는 단계를 더 포함할 수 있다.
실시 예에 있어서, 상기 대응하는 신호를 검증 및 복구하는 단계는, 상기 대응하는 신호가 손상되었을 때, 현재 시각에서 상기 대응하는 신호와 이전 시각에서 수신된 신호를 비교하는 단계; 및 상기 비교결과로써 상기 현재 시각과 상기 이전 시각 사이의 신호 차이가 크지 않다면, 이전 시각들의 이동 평균값을 이용하여 상기 손상된 신호의 비트를 복구하는 단계를 더 포함할 수 있다.
본 발명의 실시 예에 따른 차량용 통신 장치는, 데이터 패킷을 송신하는 제 1 전자 제어 장치; 및 상기 데이터 패킷을 수신하는 제 2 전자 제어 장치를 포함하고, 상기 데이터 패킷은 복수의 신호들 및 패킹된 에러 검출 코드를 포함하고, 상기 제 1 전자 제어 장치는, 상기 복수의 신호들의 각각에 대하여 압축률이 기준값 이상일 때 대응하는 신호에 대하여 에러 검출 코드를 생성하고, 상기 패킹된 에러 검출 코드는 상기 생성된 에러 검출 코드를 포함하고, 상기 제 2 전자 제어 장치는 상기 에러 검출 코드를 이용하여 부분 패킷 복구(partial packet recovery; PPR)를 지원하는 것을 특징으로 한다.
실시 예에 있어서, 상기 생성된 에러 검출 코드는 상기 대응하는 신호에서 비트 '1'의 개수에 따른 비트 '1'로 구성되는 것을 특징으로 한다.
실시 예에 있어서, 상기 제 2 전자 제어 장치는 상기 데이터 패킷의 상기 패킹된 에러 검출 코드를 해제하고, 상기 해제된 에러 검출 코드에 따라 상기 데이터 패킷 내의 상기 복수의 신호들의 각각의 무결성을 검증하는 것을 특징으로 한다.
실시 예에 있어서, 상기 복수의 신호들 중에서 적어도 어느 하나가 손상되었다고 판별될 때, 상기 제 2 전자 제어 장치는 현재 시각 및 이전 시각의 신호 차이를 근거로 하여 손상된 신호의 비트를 복구하는 것을 특징으로 한다.
실시 예에 있어서, 상기 복수의 신호들 중에서 적어도 어느 하나가 손상되었다고 판별될 때, 상기 제 2 전자 제어 장치는 상기 손상된 신호의 비트를 복구하고, 상기 복구된 신호에 관련된 정보를 상기 제 1 전자 제어 장치로 송신하고, 상기 제 1 전자 제어 장치는 상기 복구된 신호에 관련된 정보를 수신하고, 상기 복구된 신호와 상기 복구된 신호에 대응하는 신호를 비교하여 비트 복구 결과의 성공 여부에 관련된 정보를 상기 제 2 전자 제어 장치로 송신하는 것을 특징으로 한다.
본 발명의 실시 예에 따른 차량용 메시지 패킷을 송수신하는 장치 및 그것의 방법은, 압축률에 연관된 에러 검출 코드를 이용하여 메시지 패킷을 발생하거나 복구함으로써 간단하게 메시지 패킷의 신뢰성을 향상시킬 수 있다.
이하에 첨부되는 도면들은 본 실시 예에 관한 이해를 돕기 위한 것으로, 상세한 설명과 함께 실시 예들을 제공한다. 다만, 본 실시예의 기술적 특징이 특정 도면에 한정되는 것은 아니며, 각 도면에서 개시하는 특징들은 서로 조합되어 새로운 실시 예로 구성될 수 있다.
도 1은 에러 검출 코드가 반영된 메시지 패킷을 예시적으로 보여주는 도면이다.
도 2는 본 발명의 실시 예에 따른 메시지 패킷을 예시적으로 보여주는 도면이다.
도 3은 본 발명의 실시 예에 따른 EDC 생성 과정을 예시적으로 보여주는 도면이다.
도 4는 본 발명의 실시 예에 따른 수신된 신호들을 검증하는 과정을 예시적으로 보여주는 도면이다.
도 5는 본 발명의 실시 예에 따른 EDC를 이용하여 비트 손상을 복구하는 과정을 예시적으로 보여주는 도면이다.
도 6은 본 발명의 실시 예에 따른 차량용 통신 장치의 데이터 패킷 송신 방법을 예시적으로 보여주는 흐름도이다.
도 7은 본 발명의 실시 예에 따른 차량용 통신 장치의 데이터 패킷 수신 방법을 예시적으로 보여주는 흐름도이다.
도 8은 본 발명의 실시 예에 따른 차량용 통신 장치(10)를 예시적으로 보여주는 도면이다.
아래에서는 도면들을 이용하여 본 발명의 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있을 정도로 본 발명의 내용을 명확하고 상세하게 기재할 것이다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 형태를 가질 수 있는바, 특정 실시 예들을 도면에 예시하고 본문에 상세하게 설명하고자 한다. 그러나 이는 본 발명을 특정한 개시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 제 1, 제 2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다.
상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로 사용될 수 있다. 예를 들어, 본 발명의 권리 범위로부터 이탈되지 않은 채 제 1 구성요소는 제 2 구성요소로 명명될 수 있고, 유사하게 제 2 구성요소도 제 1 구성요소로 명명될 수 있다. 어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 혹은 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.
구성요소들 간의 관계를 설명하는 다른 표현들, 즉 "~사이에"와 "바로 ~사이에" 혹은 "~에 이웃하는"과 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다. 본 출원에서 사용한 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다.
본 출원에서, "포함하다" 혹은 "가지다" 등의 용어는 실시된 특징, 숫자, 단계, 동작, 구성요소, 부분품 혹은 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 혹은 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 혹은 이들을 조합한 것들의 존재 혹은 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다. 다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미이다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미인 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
도 1은 에러 검출 코드(error detection code)가 반영된 메시지 패킷을 예시적으로 보여주는 도면이다. 도 1을 참조하면, 메시지 패킷은, 시작 바이트, 아이디, 프레임 카운트, 연속한 N(N는 2 이상의 정수)개의 신호들, 연속한 N개의 신호들의 각각에 대응하는 N개의 패리티(parity)들, 및 CRC(cyclic redundancy check)을 포함할 수 있다. 도시된 메시지 패킷의 경우, 비트 손상(bit corruption)에 의한 복구(recovery) 기능은 지원되지 않는다. 각각의 신호에 대응하는 패리티를 붙임으로써, 패리티 비트와 CRC에 의한 에러 검출만 가능하다. 또한 패리티 비트와 CRC 자체의 에러 검출은 불가능하다.
도 2는 본 발명의 실시 예에 따른 메시지 패킷을 예시적으로 보여주는 도면이다. 도 2를 참조하면, 메시지 패킷은 시작 바이트, 아이디, 프레임 카운트, 연속한 N개의 신호들, 및 N 차원 CRC를 포함할 수 있다. 본 발명의 실시 예에 따른 메시지 패킷은 부분 패킷 복구(partial packet recovery; PPR)를 지원할 수 있다. 도 2에 도시된 바와 같이 패킷 안의 개별 신호들은, 그 신호들을 2진화할 때, 그 신호의 데이터 타입 대비 '1'의 개수의 비율(이하, '압축률')이 50% 이상인 경우에 대해 ‘0’이 제거된 ‘1’로만 이루어진 신호로 EDC(error detection code)를 생성할 수 있다. 비트 손상이 발생될 때, 이렇게 생성된 EDC에 의해 비트 복구가 가능하다.
본 발명에서의 압축률은 EDC 에 대한 압축률을 의미한다. 즉, 원본 신호들을 사용하여, EDC를 생성함에 있어서, 원본 신호를 얼마나 사용하여 EDC를 생성시키느냐가 압축률의 척도가 된다. 만일, 신호의 데이터 타입이 16 비트라면, ‘1’을 가지는 개수는 최대 16이다. 만일 16개를 모두 사용하여 EDC를 만든다면, 24인 4자리의 EDC가 생성된다. 만일 23 즉, 8개로 EDC가 생성되면, EDC의 자리수를 한 자리 줄일 수 있다. 이때, 16개의 자리수를 가지는 16비트 신호에 대해, 그 절반인 8개의 자리수로만 EDC가 생성되기 때문에, 원본 신호를 50% 압축한다는 의미가 된다.
실시 예에 있어서, 압축률이 50 %(기준값) 이상이 아닐 때, 각 신호에 대한 패리티가 생성될 수 있다.
한편, 도 2에서는 압축률이 50% 이상일 때 EDC가 생성되었다. 하지만, 본 발명의 EDC 생성하기 위한 기준값이 여기에 제한되지 않는다고 이해되어야 할 것이다.
한편, N차원 EDC 생성하는 방법은 다음과 같다.
도 3은 본 발명의 실시 예에 따른 EDC 생성 과정을 예시적으로 보여주는 도면이다. 실시 예에 있어서, 비트 '1' 있는 자리의 '1'을 그대로 나열함으로써 EDC가 생성될 수 있다. 도 3에 도시된 바와 같이, 신호 1의 2진 값은 '01001101'라고 가정하겠다. 따라서, EDC 1 = '1111'(7번, 4번, 3번, 1번 자리 ‘1’의 값을 나열)이다.
도시되지 않았지만, 신호 2의 2진 값이 '10100110'라고 가정하면, EDC 2 = 1111(8번, 6번, 3번, 2번 자리 ‘1’의 값을 나열)이다.
상술 된 바와 같이, N차원 EDC = {EDC 1, EDC 2, … , EDC N}으로 정의될 수 있다.
실시 예에 있어서, 앞서 생성된 EDC 코드의 페이로드(payload)를 줄이기 위해, ‘Shift’ 연산자와 ‘&’ 연산자를 이용하여 EDC가 패킹(packing)되거나, 비트 필드 구조체를 사용하여 EDC가 패킹될 수 있다. 상술된 방법은 압축률 50% 이상만 반영하므로, EDC의 길이는 최대 4비트가 된다. 압축률 50% 이하는 EDC를 생성하지 않으므로, N차원 EDC의 페이로드가 가변적으로 줄어들 수 있다.
도 3에 도시된 바와 같이, EDC를 생성하면, 비트 '1'의 개수에 따라 차지하는 비트 수가 늘어 날 수 있다. 따라서, 8 비트의 신호에 대한 EDC를 생성할 경우, 3비트만을 할당하여, ‘1’의 개수를 표현 가능하다. 이 경우, 별도의 패킹(packing) 수식은 필요하지 않다. 이러한 과정은, 대응하는 신호에서 비트 '1'의 개수만큼 2진 비트로 인코딩 되는 것이다. 여기서, 대응하는 신호가 2K이면, 에러 검출 코드는 K 비트이다.
도 4는 본 발명의 실시 예에 따른 수신된 신호들을 검증하는 과정을 예시적으로 보여주는 도면이다. 송신단은 EDC의 모든 신호를 '1'로 보내므로, 수신단은 EDC를 보고, 몇 비트씩 패킹을 해제할 지 결정해야 한다.
EDC 생성시 신호 1의 EDC 1은 '1111'이므로, 도 4에서 도시된 바와 같이 수신된 신호에 4개의 '1'이 존재하면 패킷 손상이 없는 것을 의미한다. 이때, EDC 1에서 '1'에 대응하는 자리의 비트는 '0'으로 변경될 수 있다.
상술된 방법을 계속 진행하면서, 마지막 신호에 대해 그 신호의 EDC 값에서 '1'이 차지하는 개수만큼 수신 패킷의 공간에 '0'으로 변경한다. 첫 번째 신호부터 마지막 신호까지 모든 신호들이 '0' 이 되면, 모든 신호는 비트 손상 없이 제대로 수신된 것이다.
한편, 도 2의 경우 개별 신호의 ‘1’이 차지하는 비율(이하, EDC 압축률)이 50% 이상이 되는 경우에만 비트 복구가 제공되었지만, safety critical application의 경우 압축률이 10% 미만에서도 신호들의 EDC를 생성함으로써 비트 복구가 진행될 수 있다.
도 5는 본 발명의 실시 예에 따른 EDC를 이용하여 비트 손상을 복구하는 과정을 예시적으로 보여주는 도면이다. 도 5에 도시된 바와 같인, 비트 복구 방법은 EDC 신호들 중에서 ‘1’이 아닌 신호가 있는 경우, 해당 신호는 비트 손상이 일어 났다고 판단할 수 있다. 이때 비트 복구는 아래와 같이 진행될 수 있다.
도 5에 도시된 바와 같이, 현재 시간(T)에 오류가 발생되었을 때, 현재 시간(T)의 입력 신호가 직전 시간(T-1)의 입력 신호 대비 그 차이가 크다면, 직전 값의 범위 중 EDC의 조건(‘1’이 세 개)을 만족하는 영역의 값이 ‘1’로 복구될 수 있다.
만약 현재 시간(T)에 오류가 발생되었는데, 현재 시간(T)의 입력 신호가 직전 시간(T-1)의 입력 신호 대비 그 차이가 작다면, 이전 신호들을 이동 평균 취한 값에 근사적으로 EDC의 조건(‘1’의 개수)을 만족하도록 손상된 비트가 복구될 수 있다.
한편, 발명의 실시 예에 따른 EDC 코드는 무결하다고 가정한다. 실시 예에 있어서, 직전 신호 값과 현재 신호 값의 변화량에 큰 차이가 없을 때에 EDC 코드에 문제가 발생된 것을 알 수 있다. 또한, EDC 코드가 무결하기 때문에, 수신 신호 검증 메커니즘에 의해 별도의 CRC 값이 필요하지 않다.
본 발명의 실시 예에 따른 EDC를 사용한 비트 손상 복구 방법은, 수신 단에서 손상된 비트 위치를 송신단에 보낼 수 있다. 이후, 송신단은 이전에 보냈던 신호와 비교하여 동일하면 복구 성공에 관련 신호를 수신단에 송신하고, 다르면 복수 실패 관련 신호를 송신할 수 있다. 이로써 복구 시스템의 신뢰성이 테스트될 수 있다.
본 발명의 실시 예에 따른 데이터 패킷 및 그것의 송수신 방법을 이용하는 차량 시스템은, 실시간 및 차량용 어플리케이션을 위한 칩간 통신 시 리던던시(redundancy) 개념의 추가적인 비용 상승 없이 신뢰성을 향상시킬 수 있다.
도 6은 본 발명의 실시 예에 따른 차량용 통신 장치의 데이터 패킷 송신 방법을 예시적으로 보여주는 흐름도이다. 도 2 내지 도 6을 참조하면, 데이터 패킷 송신 방법은 다음과 같이 진행될 수 있다.
다양한 신호들의 각각에 대한 압축률이 기준값(예를 들어, 50%) 이상일 때, 각 신호에 대한 EDC가 생성될 수 있다(S110). 여기서 생성된 EDC는 각 신호의 '1'이 존재하는 자리의 '1'을 나열함으로써 구성될 수 있다. 하지만, 본 발명의 EDC가 반드시 이러한 방식으로만 생성된다고 제한될 필요는 없다. '1'이 존재하는 자리의 '1'을 나열하지 않고, '0'으로 나열함으로써 EDC가 생성될 수도 있다.
도 2에 도시된 바와 같이, 복수의 신호들 및 대응하는 생성된 EDC를 이용하여 데이터 패킷이 생성될 수 있다(S120). 데이터 패킷은 복수의 신호들의 각각의 패러티를 포함할 수 있다.
이후, 생성된 데이터 패킷은 다양한 차량 통신 방식에 의거하여 타겟 장치로 송신될 수 있다(S120).
본 발명의 실시 예에 따른 차량용 통신 장치의 데이터 패킷 송신 방법은, 신호의 압축률에 따라 EDC를 생성하고, 신호 및 EDC를 데이터 패킷으로 구성하여 전송할 수 있다.
도 7은 본 발명의 실시 예에 따른 차량용 통신 장치의 데이터 패킷 수신 방법을 예시적으로 보여주는 흐름도이다. 도 2 내지 도 7을 참조하면, 데이터 패킷 수신 방법은 다음과 같이 진행될 수 있다.
도 2에서 설명된 바와 같이 N 차원 EDC를 갖는 데이터 패킷이 수신될 수 있다(S210). 수신된 N 차원 EDC를 패킹 해제할 수 있다(S220). 도 4 및 도 5에 설명된 바와 같이 해제된 EDC에 따라 데이터 패킷의 각 신호의 검증 및 복구가 진행될 수 있다(S230).
본 발명에 따른 단계들 및/또는 동작들은 기술분야의 통상의 기술자에 의해 이해될 수 있는 것과 같이, 다른 순서로, 또는 병렬적으로, 또는 다른 에포크(epoch) 등을 위해 다른 실시 예들에서 동시에 일어날 수 있다.
실시 예에 따라서는, 단계들 및/또는 동작들의 일부 또는 전부는 하나 이상의 비-일시적 컴퓨터-판독가능 매체에 저장된 명령, 프로그램, 상호작용 데이터 구조(interactive data structure), 클라이언트 및/또는 서버를 구동하는 하나 이상의 프로세서들을 사용하여 적어도 일부가 구현되거나 또는 수행될 수 있다. 하나 이상의 비-일시적 컴퓨터-판독가능 매체는 예시적으로 소프트웨어, 펌웨어, 하드웨어, 및/또는 그것들의 어떠한 조합일 수 있다. 또한, 본 명세서에서 논의된 "모듈"의 기능은 소프트웨어, 펌웨어, 하드웨어, 및/또는 그것들의 어떠한 조합으로 구현될 수 있다.
본 발명의 실시 예들의 하나 이상의 동작들/단계들/모듈들을 구현/수행하기 위한 하나 이상의 비-일시적 컴퓨터-판독가능 매체 및/또는 수단들은 ASICs(application-specific integrated circuits), 표준 집적 회로들, 마이크로 컨트롤러를 포함하는, 적절한 명령들을 수행하는 컨트롤러, 및/또는 임베디드 컨트롤러, FPGAs(field-programmable gate arrays), CPLDs(complex programmable logic devices), 및 그와 같은 것들을 포함할 수 있지만, 여기에 한정되지는 않는다.
도 8은 본 발명의 실시 예에 따른 차량용 통신 장치(10)를 예시적으로 보여주는 도면이다. 도 8을 참조하면, 차량용 통신 장치(10)은 제 1 ECU(100) 및 제 2 ECU(200)을 포함할 수 있다. 제 1 ECU(electronic control unit; 100) 및 제 2 ECU(200)의 각각은 도 2 내지 도 7에서 설명된 바와 같이 데이터 패킷을 생성, 송신, 수신, 및 복구하는 송/수신단(Tx, Rx)을 포함할 수 있다.
실시 예에 있어서, 제 1 및 제 2 전자 제어 장치들(110, 120)는 에러 검출 코드를 이용하여 부분 패킷 복구(partial packet recovery; PPR)를 지원할 수 있다.
본 발명의 실시 예에 따른 차량용 통신 장치(10)는, 데이터 패킷을 송신하는 제 1 전자 제어 장치(100), 및 데이터 패킷을 수신하는 제 2 전자 제어 장치(200)를 포함하고, 데이터 패킷은 복수의 신호들 및 패킹된 에러 검출 코드를 포함하고, 제 1 전자 제어 장치(100)는, 복수의 신호들의 각각에 대하여 압축률이 기준값 이상일 때 대응하는 신호에 대하여 에러 검출 코드를 생성하고, 패킹된 에러 검출 코드는 생성된 에러 검출 코드를 포함할 수 있다.
실시 예에 있어서, 생성된 에러 검출 코드는 대응하는 신호에서 비트 '1'의 개수에 따른 비트 '1'로 구성되는 것을 특징으로 한다. 실시 예에 있어서, 제 2 전자 제어 장치(200)는 데이터 패킷의 패킹된 에러 검출 코드를 해제하고, 해제된 에러 검출 코드에 따라 데이터 패킷 내의 복수의 신호들의 각각의 무결성을 검증하는 것을 특징으로 한다.
실시 예에 있어서, 복수의 신호들 중에서 적어도 어느 하나가 손상되었다고 판별될 때, 제 2 전자 제어 장치(200)는 현재 시각 및 이전 시각의 신호 차이를 근거로 하여 손상된 신호의 비트를 복구하는 것을 특징으로 한다. 실시 예에 있어서, 복수의 신호들 중에서 적어도 어느 하나가 손상되었다고 판별될 때, 제 2 전자 제어 장치(200)는 손상된 신호의 비트를 복구하고, 복구된 신호에 관련된 정보를 상기 제 1 전자 제어 장치(100)로 송신하고, 제 1 전자 제어 장치(100)는 복구된 신호에 관련된 정보를 수신하고, 복구된 신호와 복구된 신호에 대응하는 신호를 비교하여 비트 복구 결과의 성공 여부에 관련된 정보를 제 2 전자 제어 장치(200)로 송신하는 것을 특징으로 한다.
한편, 상술 된 본 발명의 내용은 발명을 실시하기 위한 구체적인 실시 예들에 불과하다. 본 발명은 구체적이고 실제로 이용할 수 있는 수단 자체뿐 아니라, 장차 기술로 활용할 수 있는 추상적이고 개념적인 아이디어인 기술적 사상을 포함할 것이다.
10: 차량용 통신 장치
100: 제 1 ECU
200: 제 2 ECU
EDC: 에러 검출 코드
Tx: 송신단
Rx: 수신단
PPR: 부분 패킷 복구

Claims (20)

  1. 차량용 통신 장치에서 데이터 패킷을 송신하는 방법에 있어서:
    복수의 신호들의 각각에 대하여 압축률이 기준값 이상일 때, 대응하는 신호에 대한 에러 검출 코드를 생성하는 단계;
    상기 복수의 신호들과 상기 생성된 에러 검출 코드를 이용하여 데이터 패킷을 생성하는 단계; 및
    상기 생성된 데이터 패킷을 다른 차량 통신 장치로 송신하는 단계를 포함하고,
    상기 복수의 신호들의 각각을 이진화시켰을 때, 상기 기준값은 각각의 신호에서 비트 '1' 또는 비트 '0' 중에서 어느 하나의 개수로 결정되는 것을 특징으로 하는 방법.
  2. 제 1 항에 있어서,
    상기 에러 검출 코드를 생성하는 단계는,
    상기 대응하는 신호에서 비트 '1' 또는 비트 '0'의 개수만큼 2진 비트로 인코딩하는 단계를 포함하는 방법.
  3. 제 1 항에 있어서,
    상기 기준값은 전체 비트의 50% 이상인 비트 '1' 또는 비트 '0'의 개수인 것을 특징으로 하는 방법.
  4. 제 1 항에 있어서,
    상기 압축률이 기준값 이상이 아닐 때, 대응하는 신호에 대한 패리티를 생성하는 단계를 더 포함하는 방법.
  5. 제 1 항에 있어서,
    상기 압축률에 상관없이 대응하는 신호에 대한 패리티를 생성하는 단계를 더 포함하는 방법.
  6. 제 1 항에 있어서,
    상기 에러 검출 코드를 생성하는 단계는,
    상기 대응하는 신호에서 비트 '1'의 개수만큼 비트 '1'을 나열하거나, 비트 '0'의 개수만큼 비트'0'을 나열하는 단계를 포함하고,
    상기 나열된 비트들은 상기 대응하는 신호의 상기 에러 검출 코드인 것을 특징으로 하는 방법.
  7. 제 6 항에 있어서,
    상기 데이터 패킷을 생성하는 단계는,
    페이로드를 줄이기 위하여 shift 연산자와 & 연산자를 이용하여 상기 에러 검출 코드를 패킹(packing)하는 단계를 더 포함하는 방법.
  8. 제 6 항에 있어서,
    상기 데이터 패킷을 생성하는 단계는,
    페이로드를 줄이기 위하여 비트 필드 구조체를 이용하여 상기 에러 검출 코드를 패킹(packing)하는 단계를 더 포함하는 방법.
  9. 제 2 항에 있어서,
    상기 대응하는 신호가 2K이면, 상기 에러 검출 코드는 K 비트인 것을 특징으로 하는 방법.
  10. 차량용 통신 장치에서 데이터 패킷을 수신하는 방법에 있어서:
    복수의 신호들 및 패킹된 에러 검출 코드를 갖는 데이터 패킷을 수신하는 단계;
    상기 에러 검출 코드의 패킹을 해제하는 단계; 및
    상기 해제된 에러 검출 코드에 따라 상기 복수의 신호들 중에서 대응하는 신호를 검증 및 복구하는 단계를 포함하고,
    상기 에러 검출 코드는, 상기 복수의 신호들의 각각에 대하여 압축률이 기준값 이상일 때, 대응하는 신호에 대해 생성되고,
    상기 복수의 신호들의 각각을 이진화시켰을 때, 상기 기준값은 각각의 신호에서 비트 '1' 또는 비트 '0' 중에서 어느 하나의 개수로 결정되는 것을 특징으로 하는 방법.
  11. 제 10 항에 있어서,
    상기 에러 검출 코드를 해제하는 단계는,
    몇 비트씩 에러 검출 코드 패킹을 해제할 지를 판별하는 단계를 포함하는 방법.
  12. 제 10 항에 있어서,
    상기 대응하는 신호를 검증 및 복구하는 단계는,
    상기 해제된 에러 검출 코드에 대응하는 신호에서 비트 '1' 또는 비트 '0'의 개수가 상기 해제된 에러 검출 코드에 대응하는 개수와 동일한 지를 판별하는 단계; 및
    상기 해제된 에러 검출 코드에 대응한 개수와 상기 비트 '1' 또는 상기 비트 '0'의 개수가 동일하다면, 상기 대응하는 신호가 무결하다고 판별하는 단계를 포함하는 방법.
  13. 제 12 항에 있어서,
    상기 대응하는 신호를 검증 및 복구하는 단계는,
    상기 해제된 에러 검출 코드에 대응하는 개수와 상기 비트 '1' 또는 상기 비트 '0'의 개수가 동일하지 않다면, 상기 대응하는 신호가 손상되었다고 판별하는 단계를 더 포함하는 방법.
  14. 제 13 항에 있어서,
    상기 대응하는 신호를 검증 및 복구하는 단계는,
    상기 대응하는 신호가 손상되었을 때, 현재 시각에서 상기 대응하는 신호와 이전 시각에서 수신된 신호를 비교하는 단계; 및
    상기 비교결과로써 상기 현재 시각과 상기 이전 시각 사이의 신호 차이가 크다면, 상기 이전 시각에서 수신된 신호를 이용하여 상기 손상된 신호의 비트를 복구하는 단계를 더 포함하는 방법.
  15. 제 13 항에 있어서,
    상기 대응하는 신호를 검증 및 복구하는 단계는,
    상기 대응하는 신호가 손상되었을 때, 현재 시각에서 상기 대응하는 신호와 이전 시각에서 수신된 신호를 비교하는 단계; 및
    상기 비교결과로써 상기 현재 시각과 상기 이전 시각 사이의 신호 차이가 크지 않다면, 이전 시각들의 이동 평균값을 이용하여 상기 손상된 신호의 비트를 복구하는 단계를 더 포함하는 방법.
  16. 데이터 패킷을 송신하는 제 1 전자 제어 장치; 및
    상기 데이터 패킷을 수신하는 제 2 전자 제어 장치를 포함하고,
    상기 데이터 패킷은 복수의 신호들 및 패킹된 에러 검출 코드를 포함하고,
    상기 제 1 전자 제어 장치는, 상기 복수의 신호들의 각각에 대하여 압축률이 기준값 이상일 때 대응하는 신호에 대하여 에러 검출 코드를 생성하고,
    상기 패킹된 에러 검출 코드는 상기 생성된 에러 검출 코드를 포함하고,
    상기 제 2 전자 제어 장치는 상기 에러 검출 코드를 이용하여 부분 패킷 복구(partial packet recovery; PPR)를 지원하고,
    상기 복수의 신호들의 각각을 이진화시켰을 때, 상기 기준값은 각각의 신호에서 비트 '1' 또는 비트 '0' 중에서 어느 하나의 개수로 결정되는 것을 특징으로 하는 차량용 통신 장치.
  17. 제 16 항에 있어서,
    상기 생성된 에러 검출 코드는 상기 대응하는 신호에서 비트 '1'의 개수에 따른 비트 '1' 또는 비트 '0'의 개수에 따른 비트 '0'으로 구성되는 것을 특징으로 하는 차량용 통신 장치.
  18. 제 17 항에 있어서,
    상기 제 2 전자 제어 장치는 상기 데이터 패킷의 상기 패킹된 에러 검출 코드를 해제하고, 상기 해제된 에러 검출 코드에 따라 상기 데이터 패킷 내의 상기 복수의 신호들의 각각의 무결성을 검증하는 것을 특징으로 하는 차량용 통신 장치.
  19. 제 18 항에 있어서,
    상기 복수의 신호들 중에서 적어도 어느 하나가 손상되었다고 판별될 때, 상기 제 2 전자 제어 장치는 현재 시각 및 이전 시각의 신호 차이를 근거로 하여 손상된 신호의 비트를 복구하는 것을 특징으로 하는 차량용 통신 장치.
  20. 제 18 항에 있어서,
    상기 복수의 신호들 중에서 적어도 어느 하나가 손상되었다고 판별될 때, 상기 제 2 전자 제어 장치는 상기 손상된 신호의 비트를 복구하고, 상기 복구된 신호에 관련된 정보를 상기 제 1 전자 제어 장치로 송신하고,
    상기 제 1 전자 제어 장치는 상기 복구된 신호에 관련된 정보를 수신하고, 상기 복구된 신호와 상기 복구된 신호에 대응하는 신호를 비교하여 비트 복구 결과의 성공 여부에 관련된 정보를 상기 제 2 전자 제어 장치로 송신하는 것을 특징으로 하는 차량용 통신 장치.
KR1020180087075A 2018-07-26 2018-07-26 차량용 메시지 패킷을 송수신하는 장치 및 방법 KR102119764B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180087075A KR102119764B1 (ko) 2018-07-26 2018-07-26 차량용 메시지 패킷을 송수신하는 장치 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180087075A KR102119764B1 (ko) 2018-07-26 2018-07-26 차량용 메시지 패킷을 송수신하는 장치 및 방법

Publications (2)

Publication Number Publication Date
KR20200012162A KR20200012162A (ko) 2020-02-05
KR102119764B1 true KR102119764B1 (ko) 2020-06-05

Family

ID=69514934

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180087075A KR102119764B1 (ko) 2018-07-26 2018-07-26 차량용 메시지 패킷을 송수신하는 장치 및 방법

Country Status (1)

Country Link
KR (1) KR102119764B1 (ko)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008252600A (ja) * 2007-03-30 2008-10-16 Oki Electric Ind Co Ltd 車々間通信システム及び車々間通信における誤り訂正方法
JP2018029227A (ja) * 2016-08-15 2018-02-22 富士通株式会社 エラー検出符号生成装置及びエラー検出装置

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150015831A (ko) 2013-08-01 2015-02-11 한국전자통신연구원 Can 통신의 오류 검출 장치 및 오류 검출 방법
KR101816266B1 (ko) 2016-11-15 2018-01-08 현대오트론 주식회사 순환 중복 검사 코드 생성기 및 검사기

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008252600A (ja) * 2007-03-30 2008-10-16 Oki Electric Ind Co Ltd 車々間通信システム及び車々間通信における誤り訂正方法
JP2018029227A (ja) * 2016-08-15 2018-02-22 富士通株式会社 エラー検出符号生成装置及びエラー検出装置

Also Published As

Publication number Publication date
KR20200012162A (ko) 2020-02-05

Similar Documents

Publication Publication Date Title
EP0950300B1 (en) Secondary channel using code violations
US20070283223A1 (en) Systems, methods, and computer program products for providing a two-bit symbol bus error correcting code with all checkbits transferred last
US7137057B2 (en) Method and apparatus for performing error correction code (ECC) conversion
JPH0328094B2 (ko)
JP5316411B2 (ja) 送信装置と受信装置
US9843414B2 (en) Low complexity error correction
US10367600B2 (en) Forward error correction with contrast coding
US7721178B2 (en) Systems, methods, and computer program products for providing a two-bit symbol bus error correcting code
CN110679090B (zh) 减少延迟错误校正解码
US20170077952A1 (en) Sensor interface that provides a long package crc to improve functional safety
KR102119764B1 (ko) 차량용 메시지 패킷을 송수신하는 장치 및 방법
JP4839364B2 (ja) 結合されたコマンドおよびデータ・コード
JP3217716B2 (ja) 無線パケット通信装置
US6915471B2 (en) Encoder and method for encoding data
US20070283207A1 (en) Systems, methods, and computer program products for providing a two-bit symbol bus error correcting code with bus timing improvements
CN114513285B (zh) 传输数据检测与校正的方法、装置、设备及可读存储介质
US8429484B2 (en) Digitized radar information redundancy method and system
US20070283208A1 (en) Systems, methods, and computer program products for providing a two-bit symbol bus error correcting code with bus diagnostic features
US6948110B2 (en) Transmission data loss detection system
US20020046370A1 (en) Error checking
Kim FPGA implementation of overhead reduction algorithm for interspersed redundancy bits using EEDC
Ayoob et al. Improving system reliability by joint usage of hash function bits and error correction coding
US8645771B2 (en) Forward error correction with configurable latency

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant