KR101744117B1 - 텔레그램 디코더 및 이를 포함하는 트랜스폰더 리더 - Google Patents

텔레그램 디코더 및 이를 포함하는 트랜스폰더 리더 Download PDF

Info

Publication number
KR101744117B1
KR101744117B1 KR1020160019920A KR20160019920A KR101744117B1 KR 101744117 B1 KR101744117 B1 KR 101744117B1 KR 1020160019920 A KR1020160019920 A KR 1020160019920A KR 20160019920 A KR20160019920 A KR 20160019920A KR 101744117 B1 KR101744117 B1 KR 101744117B1
Authority
KR
South Korea
Prior art keywords
bit
telegram
unit
bits
buffer
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
KR1020160019920A
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 KR1020160019920A priority Critical patent/KR101744117B1/ko
Application granted granted Critical
Publication of KR101744117B1 publication Critical patent/KR101744117B1/ko
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/09Error detection only, e.g. using cyclic redundancy check [CRC] codes or single parity bit
    • H03M13/091Parallel or block-wise CRC computation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K19/00Record carriers for use with machines and with at least a part designed to carry digital markings
    • G06K19/06Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
    • G06K19/067Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components
    • G06K19/07Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components with integrated circuit chips
    • G06K19/0723Record carriers with conductive marks, printed circuits or semiconductor circuit elements, e.g. credit or identity cards also with resonating or responding marks without active components with integrated circuit chips the record carrier comprising an arrangement for non-contact communication, e.g. wireless communication circuits on transponder cards, non-contact smart cards or RFIDs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/0008General problems related to the reading of electronic memory record carriers, independent of its reading method, e.g. power transfer

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computing Systems (AREA)
  • Probability & Statistics with Applications (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Hardware Design (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)

Abstract

본 발명의 일 측면에 따른 텔레그램 디코더 장치는 입력된 n 비트의 비트열에 대하여 소정의 연산처리 회로를 통해 오류 검출을 수행하는 오류 검출부 및 입력된 n 비트의 비트열에 대하여 소정의 연산처리 회로를 통해 동기화 처리를 수행하는 동기화부를 포함한다. 이때, 오류 검출부 및 동기화부는 n 비트의 비트열을 함께 입력받는 구조로 배치되고, 오류 검출부는 입력된 n비트의 비트열에서 오류가 검출된 경우, 입력된 n 비트 중 연산처리 회로를 통해 처리된 n-1개의 비트에 대한 연산 처리 결과, 신규로 입력된 1개의 비트, 신규 입력에 따라 출력된 1개의 비트를 기반으로 오류 검출을 수행한다.

Description

텔레그램 디코더 및 이를 포함하는 트랜스폰더 리더 {TELEGRAM DECODER AND TRANSPONDER READER INCLUDING THE SAME}
본 발명은 텔레그램을 고속으로 복호화할 수 있는 텔레그램 디코더 및 이를 포함하는 트랜스폰더 리더에 관한 것이다.
최근 철도 기술 분야에서는 디지털 신호를 기반으로 데이터 통신을 수행하는 응용 사례가 날로 증가하고 있다.
예를 들어, 철도 분야에서는 트랜스폰더 태그를 선로에 설치하고, 이를 이용하여 열차가 위치 정보를 수신함으로써 철도 교통의 안정성과 효율성을 증대시킨다. 즉, 트랜스폰더 태그는 전송할 정보를 포함하는 텔레그램을 열차에 전송하고, 열차는 텔레그램으로부터 위치 정보 등을 확인한다.
열차의 정확한 위치 검지를 위해, 트랜스폰더 태그에서 전송된 후 열차의 리더가 수신한 텔레그램을 신속하게 복호화하여 정보를 획득하는 과정이 필요하다.
예를 들면, 트랜스폰더 리더는 열차 하부에 설치되며, 선로에 설치된 트랜스폰더 태그로 원격으로 전력을 공급한다. 트랜스폰더 태그는 전력 공급에 따라, 태그 내에 저장된 텔레그램을 전송한다. 트랜스폰더 태그는 전력을 공급받아 구동 전압이 유지되는 동안 동일한 텔레그램을 반복적으로 끊임없이 전송한다. 트랜스폰더 리더는 트랜스폰더 태그로부터 텔레그램을 수신하여 위치검지시스템, 열차제어시스템 등 차상 시스템에 태그 관련 정보를 전송한다.
트랜스폰더 리더는 텔레그램의 복호화 처리를 수행하는데, 복호화 처리 중에 오류 발생 여부를 검출하는 단계와 동기화 처리를 수행하는 단계를 수행하게 된다. 그러나, 종래 방식의 트랜스폰더 리더는 오류 검출과 동기화 처리 과정에서 반복적인 처리를 수행하는 구조를 채택하고 있어서 신속한 복호화가 어려운 상태이다.
이와 관련하여, 미국 등록특허 제7320101호(발명의 명칭: Fast parallel calculation of cyclic redundancy checks) 는 디지털 데이터 전송과정에서 오류를 체크하는 CRC 모듈을 공개하고 있다. 이는 요구되는 데이터 전송률이 높아짐에 따라 CRC 를 수행함에 있어 필요한 다항식의 항수가 길어지고, 이에 따라 연산 복잡도가 증가하는 문제점을 해결하기 위한 것으로, 구체적인 구성으로는 피드 포워드 비트와 피드백 비트를 사용하여 CRC 체크를 수행함에 특징이 있으며, 특히 입력된 데이터를 이용하여 피드 포워드 비트를 구성하고 이를 이용하여 CRC 체크를 수행하도록 한다.
본 발명의 일부 실시예는 오류 검출과 동기화 처리를 함께 수행할 수 있는 텔레그램 디코더와 이를 포함하는 트랜스폰더 리더를 제공하는 것을 목적으로 한다.
다만, 본 실시예가 이루고자 하는 기술적 과제는 상기된 바와 같은 기술적 과제들로 한정되지 않으며, 또 다른 기술적 과제들이 더 존재할 수 있다.
상술한 기술적 과제를 달성하기 위한 기술적 수단으로서, 본 발명의 일 측면에 따른 텔레그램 디코더 장치는 입력된 n 비트의 비트열에 대하여 소정의 연산처리 회로를 통해 오류 검출을 수행하는 오류 검출부 및 입력된 n 비트의 비트열에 대하여 소정의 연산처리 회로를 통해 동기화 처리를 수행하는 동기화부를 포함하되, 오류 검출부 및 동기화부는 n 비트의 비트열을 함께 입력받는 구조로 배치된다.
또한, 오류 검출부는 입력된 n비트의 비트열에서 오류가 검출된 경우, 입력된 n 비트 중 연산처리 회로를 통해 처리된 n-1개의 비트에 대한 연산 처리 결과, 신규로 입력된 1개의 비트, 신규 입력에 따라 출력된 1개의 비트를 기반으로 오류 검출을 수행한다.
또한, 동기화부는 입력된 n 비트 중 연산처리 회로를 통해 처리된 n-1개의 비트에 대한 연산 처리 결과, 신규로 입력된 1개의 비트, 신규 입력에 따라 출력된 1개의 비트를 기반으로 동기화 처리를 수행한다.
전술한 본 발명의 과제 해결 수단 중 어느 하나에 의하면, 선로에 설치된 트랜스폰더 태그와 열차 하부에 설치된 트랜스폰더 리더와의 통신과정에서 텔레그램 복호화에서 발생하는 지연시간을 최소화할 수 있다. 기존의 복호화 방식은 텔레그램의 길이가 n 비트일 때 오류 검출 및 동기화 과정을 완료하는 데 최소 2n 사이클을 필요로 하지만, 제안 기법은 2n 사이클의 지연시간을 1 사이클로 획기적으로 감소할 수 있다. 이에 따라, 디코더를 구동하는데 사용되는 클록 주파수를 현저하게 줄일 수 있는 효과를 기대할 수 있다.
도 1은 통상적인 구조의 텔레그램 부호화 방법을 설명하기 위한 도면이다.
도 2는 통상적인 구조의 텔레그램 복호화 방법을 설명하기 위한 도면이다.
도 3은 통상적인 트랜스폰더 리더에서 오류 검출 기능을 수행하는 오류 검출부의 상세 구성을 도시한 도면이다.
도 4는 통상적인 트랜스폰더 리더에서 동기화 기능을 수행하는 동기화부의 상세 구조를 갖는다.
도 5는 본 발명의 일 실시예에 따른 텔레그램 디코더 장치의 구성을 도시한 도면이다.
도 6은 텔레그램 비트열로부터 텔레그램 버퍼를 갱신하는 방식을 예시한 도면이다.
도 7은 본 발명의 일 실시예에 따른 텔레그램 복호화 방법을 설명하기 위한 도면이다.
도 8은 본 발명의 일 실시예에 따른 텔레그램 복호화 방법을 설명하기 위한 도면이다.
도9는 본 발명의 일 실시예에 따른 오류 검출부(1000)의 상세 구성을 도시한 도면이다.
도 10은 본 발명의 일 실시예에 따른 동기화부(1100)의 상세 구성을 도시한 도면이다.
도 11은 본 발명의 일 실시예에 따른 오류 검출부와 동기화부의 상세 구성을 도시한 도면이다.
아래에서는 첨부한 도면을 참조하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본 발명의 실시예를 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다. 또한 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미하며, 하나 또는 그 이상의 다른 특징이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
본 명세서에 있어서 단말 또는 디바이스가 수행하는 것으로 기술된 동작이나 기능 중 일부는 해당 단말 또는 디바이스와 연결된 서버에서 대신 수행될 수도 있다. 이와 마찬가지로, 서버가 수행하는 것으로 기술된 동작이나 기능 중 일부도 해당 서버와 연결된 단말 또는 디바이스에서 수행될 수도 있다.
이하의 실시예는 본 발명의 이해를 돕기 위한 상세한 설명이며, 본 발명의 권리 범위를 제한하는 것이 아니다. 따라서 본 발명과 동일한 기능을 수행하는 동일 범위의 발명 역시 본 발명의 권리 범위에 속할 것이다.
도 1은 통상적인 구조의 텔레그램 부호화 방법을 설명하기 위한 도면이다.
텔레그램 부호화는 n-p 비트의 메시지 비트열에 p 비트의 패리티 체크 비트열을 추가하여 n 비트의 비트열 B(x)를 생성하는 방식으로 수행된다.
부호화된 n 비트의 비트열 B(x)는 아래 수학식 1과 같은 다항식으로 정의된다.
[수학식 1]
Figure 112016016856287-pat00001
트랜스폰더 리더에서 수신한 텔레그램의 오류 검출 및 동기화를 위하여 n-p 비트의 메시지 비트열과 다항식 G(x) 및 다항식 F(x)를 활용하여 p 비트의 패리티 체크 비트열을 생성한다.
패리티 체크 비트열은 아래 수학식 2와 같은 다항식으로 정의된다.
[수학식 2]
Figure 112016016856287-pat00002
이때 G(x)는 오류 검출을 위하여 활용되며, 수학식 3과 같은 k차 다항식으로 정의된다.
[수학식 3]
Figure 112016016856287-pat00003
이때, G(x)는 k 차 다항식이므로,
Figure 112016016856287-pat00004
의 관계가 성립한다.
F(x)는 동기화를 위하여 활용되며, 수학식 4와 같은 m차 다항식으로 정의된다.
[수학식 4]
Figure 112016016856287-pat00005
이때, F(x)는 m 차 다항식이므로, 의 관계가 성립한다.
트랜스폰더 태그는 트랜스폰더 리더로부터 전력을 공급받아 구동 전압이 유지되는 동안 동일한 텔레그램 B(x) 를 반복적으로 끊임없이 전송한다.
도 2는 통상적인 구조의 텔레그램 복호화 방법을 설명하기 위한 도면이다.
도시된 바와 같이, 트랜스폰더 리더가 트랜스폰더 태그로부터 텔레그램 비트열 수신(300)시, 텔레그램 비트열 중에서 연속된 n 비트의 비트열을 선택하여 텔레그램 버퍼에 임시 저장함으로써 텔레그램 버퍼를 갱신(310)한다.
텔레그램 버퍼에 저장된 n 비트의 비트열 C(x)는 아래 수학식 5와 같은 다항식으로 정의된다.
[수학식 5]
Figure 112016016856287-pat00006
텔레그램 버퍼로부터 입력된 n 비트의 비트열 C(x)에 대한 오류 검출을 수행한다(320). 이를 위해, 다항식 C(x)를 다항식 G(x)로 나눈 나머지를 계산한다.
다항식 나머지 연산의 결과로 E(x)가 산출되고, 이는 수학식 6과 같은 다항식으로 정의된다.
[수학식 6]
Figure 112016016856287-pat00007
이와 같은 다항식 나머지 연산은 선형 피드백 쉬프트 레지스터를 활용하여 구현 가능하며, n비트의 비트열 C(x)를 k 차 다항식 G(x) 로 나눈 나머지를 계산하기 위해서 n 사이클이 소요된다.
E(x) 의 값이 0인 경우 오류가 검출되지 않은 것으로 판단하고, 동기화 처리를 수행한다. 만약, E(x)의 값이 0 이 아닌 경우 오류가 검출된 것으로 판단하고 트랜스폰더 태그로부터 수신된 텔레그램 비트열에서 연속된 n 비트의 비트열을 새로 선택하여 텔레그램 버퍼를 갱신(310)하는 작업을 수행한다. 텔레그램 버퍼 갱신은 텔레그램 버퍼에 포함된 기존의 비트열에서 가장 오래된 u비트를 삭제하고, 남아있는 n-u 비트를 u 비트 만큼 이동한 뒤, 새로운 u 비트를 텔레그램 버퍼에 포함시키는 방식으로 구현 가능하다.
Figure 112016016856287-pat00008
이 과정은 E(x)의 값이 0이 될 때까지 반복된다.
다음으로, E(x)의 값이 0인 경우, 텔레그램 버퍼로부터 입력된 n 비트의 비트열 C(x)에 대한 동기화를 수행한다(340). 동기화를 수행하기 위하여 C(x)를 다항식 F(x)로 나눈 나머지를 계산한다.
다항식 나머지 연산의 결과로S(x)가 산출되고, 이는 수학식 7과 같은 다항식으로 정의된다.
[수학식 7]
Figure 112016016856287-pat00009
위의 다항식 나머지 연산은 선형 피드백 쉬프트 레지스터를 활용하여 구현 가능하며, n 비트의 비트열 C(x)를 m 차 다항식 F(x)로 나눈 나머지를 계산하기 위해서 n 사이클이 소요된다.
S(x)의 값이 동기화 룩업 테이블에 포함되어있을 경우, 동기화 룩업 테이블을 토대로 S(x)의 값에 해당하는 비트 만큼 텔레그램 버퍼를 순환 시프트(360)함으로써 복호화 과정이 완료된다.
S(x)의 값이 동기화 룩업 테이블에 포함되어있지 않은 경우, 텔레그램 버퍼를 갱신(310)하고, 복호화에 성공할 때까지 오류 검출(320) 과정과 동기화(340) 과정을 반복하여 수행한다.
도 3은 통상적인 트랜스폰더 리더에서 오류 검출 기능을 수행하는 오류 검출부의 상세 구성을 도시한 도면이다.
도시된 오류 검출부(300)는 다항식 나머지 연산을 수행하기 위한 선형 피드백 쉬프트 레지스터 구조를 갖는다.
오류 검출부(300)에서 n 비트의 비트열 C(x)를 k 차 다항식 G(x)로 나눈 나머지를 계산하기 위해서는 도시된 선형 피드백 쉬프트 레지스터의 초기값을 모두 0으로 리셋한 후 n 사이클에 걸쳐 n 비트의 비트열 C(x)를 입력하여야 한다.
도 4는 통상적인 트랜스폰더 리더에서 동기화 기능을 수행하는 동기화부의 상세 구조를 갖는다.
도시된 동기화부(400)는 다항식 나머지 연산을 수행하기 위한 선형 피드백 쉬프트 레지스터 구조를 도시한 도면이다.
동기화부(400)에서 n 비트의 비트열 C(x)를 m차 다항식 F(X)로 나눈 나머지를 계산하기 위해서는 도시된 선형 피드백 쉬프트 레지스터의 초기값을 모두 0으로 리셋한 후 n 사이클에 걸쳐 n 비트의 비트열 C(x)를 입력하여야 한다.
이와 같은 기존의 복호화 방식에 따르면, 주어진 텔레그램 버퍼(200)에 대해서 오류 검출과 동기화 과정을 완료하는데 최소 2n 사이클이 소요된다. 통상적인 텔레그램 전송속도가 564,480 bps이므로, 전체 복호화 과정이 1.77μs 안에 수행되어야만 함을 알 수 있다. 긴 텔레그램의 경우 n=1023이므로 복호화 과정을 완료하는데 최소 2046 사이클이 소요되며, 앞에서 언급한 전송속도를 만족하기 위해서는 u=1 일 때 최소 1.15GHz 이상의 클럭 주파수가 필요하다. 이는 일반적인 시스템을 구성하는 클럭 주파수를 크게 상회하므로, 전체 시스템의 구현을 사실상 불가능하게 만든다.
도 5는 본 발명의 일 실시예에 따른 텔레그램 디코더 장치의 구성을 도시한 도면이다.
도시된 바와 같이, 텔레그램 디코더 장치(50)는 텔레그램 버퍼(500), 오류 검출부(1000) 및 동기화부(1100)를 포함한다. 텔레그램 디코더 장치(50)는 트랜스폰더 리더(미도시 됨)에 포함되도록 배치될 수 있다. 트랜스폰더 리더는 열차에 결합되도록 구성되며, 선로에 배치된 트랜스폰더 태그에서 전송된 텔레그램을 수신하고, 내장된 텔레그램 디코더 장치(80)를 통해 텔레그램을 복호화한다.
텔레그램 버퍼(500)는 트랜스폰더 태그로부터 수신된 텔레그램 비트열 중에서 연속된 n 비트의 비트열을 임시 저장한다. 텔레그램 버퍼(500)에 저장된 n 비트의 비트열 중 텔레그램 버퍼(500) 갱신 과정에서 삭제된 u 비트와 새로 추가된 u 비트가 오류 검출부(1000)와 동기화부(1100)에 전달된다.
도 6은 텔레그램 비트열로부터 텔레그램 버퍼를 갱신하는 방식을 예시한 도면이다.
도시된 바와 같이, 텔레그램 버퍼 갱신은 텔레그램 버퍼(200)에 포함된 기존의 비트열에서 가장 오래된 u 비트
Figure 112016016856287-pat00010
를 삭제하고, 남아있는 n-u비트를 u 비트만큼 이동한 뒤, 새로운 u비트를 텔레그램 버퍼(200)에 포함시키는 방식으로 구현 가능하다.
오류 검출부(1000)는 텔레그램 버퍼(500)가 갱신되기 전 연산처리 결과와 텔레그램 버퍼(500) 갱신 과정에서 삭제된 u 비트 및 새로 추가된 u 비트를 활용하여 소정의 연산처리 회로를 통해 오류 검출을 수행한다.
동기화부(1100)는 텔레그램 버퍼(500)가 갱신되기 전 연산처리 결과와 텔레그램 버퍼(500) 갱신 과정에서 삭제된 u 비트 및 새로 추가된 u 비트를 활용하여 소정의 연산처리 회로를 통해 동기화를 수행한다.
도 7은 본 발명의 일 실시예에 따른 텔레그램 복호화 방법을 설명하기 위한 도면이다.
도시된 바와 같이, 트랜스폰더 리더가 트랜스폰더 태그로부터 텔레그램 비트열 수신(700)시, 텔레그램 비트열 중에서 연속된 n 비트의 비트열을 선택하여 텔레그램 버퍼(500)에 임시 저장함으로써 텔레그램 버퍼를 갱신(710)한다.
오류 검출부(1000)는 텔레그램 버퍼(500)가 갱신되기 전 연산처리 결과와 텔레그램 버퍼(500) 갱신 과정에서 삭제된 u 비트 및 새로 추가된 u비트를 활용하여 C(x)에 대한 오류 검출(720)을 수행한다. 오류 검출을 수행하기 위하여 다항식 C(x)를 다항식 G(x)로 나눈 나머지를 계산한다.
오류 검출부(1000)에서 수행하는 다항식 나머지 연산은 소정의 연산처리 회로를 활용하여 구현 가능하며, n 비트의 비트열 C(x)를 k차 다항식 G(x)로 나눈 나머지를 계산하기 위해서 1 사이클이 소요된다.
E(x)의 값이 0인 경우 오류가 검출되지 않은 것으로 판단하고, 동기화 처리를 수행한다. 만약, E(x)의 값이 0 이 아닌 경우 오류가 검출된 것으로 판단하고 트랜스폰더 태그로부터 수신된 텔레그램 비트열에서 연속된 n 비트의 비트열을 새로 선택하여 텔레그램 버퍼를 갱신(810)하는 작업을 수행한다. 텔레그램 버퍼 갱신은 텔레그램 버퍼(500)에 포함된 기존의 비트열에서 가장 오래된 u 비트를 삭제하고, 남아있는 n-u 비트를 u 비트만큼 이동한 뒤, 새로운 u 비트를 텔레그램 버퍼(500)에 포함시키는 방식으로 구현 가능하다.
Figure 112016016856287-pat00011
이 과정은 오류 검출부(1000)에서 계산된 E(x)의 값이 0이 될 때까지 반복된다.
동기화부(1100)는 E(x)의 값이 0인 경우, C(x)에 대한 동기화(840)를 수행한다. 동기화를 수행하기 위하여 C(x)를 다항식 F(x)로 나눈 나머지를 계산한다.
동기화부(1100)에서 수행하는 다항식 나머지 연산은 소정의 연산처리 회로를 활용하여 구현 가능하며, n 비트의 비트열 C(x)를 m 차 다항식 F(x)로 나눈 나머지를 계산하기 위해서 1 사이클이 소요된다.
S(x)의 값이 동기화 룩업 테이블에 포함되어있을 경우, 동기화 룩업 테이블을 토대로 S(x)의 값에 해당하는 비트 만큼 텔레그램 버퍼를 순환 시프트(860)함으로써 복호화 과정이 완료된다.
S(x)의 값이 동기화 룩업 테이블에 포함되어있지 않은 경우, 텔레그램 버퍼를 갱신(810)하고, 복호화에 성공할 때까지 오류 검출(820) 과정과 동기화(840) 과정을 반복하여 수행한다.
도 7에 도시된 바와 같이, 오류 검출부(1000)는 텔레그램 버퍼 갱신 과정에서 삭제된 u 비트와 새로 추가된 u 비트를 텔레그램 버퍼(500)로부터 입력받아 오류 검출을 수행하고, 오류가 미검출되었을 경우 동기화부(1100)가 텔레그램 버퍼 갱신 과정에서 새로 추가된 u 비트를 텔레그램 버퍼(500)로부터 입력받아 동기화를 수행하는 순차 구조로 수행될 수 있다.
도 8은 본 발명의 일 실시예에 따른 텔레그램 복호화 방법을 설명하기 위한 도면이다.
도시된 바와 같이, 트랜스폰더 리더가 트랜스폰더 태그로부터 텔레그램 비트열 수신(800)시, 텔레그램 비트열 중에서 연속된 n 비트의 비트열을 선택하여 텔레그램 버퍼(500)에 임시 저장함으로써 텔레그램 버퍼를 갱신(810)한다.
오류 검출부(1000)는 텔레그램 버퍼(500)가 갱신되기 전 연산처리 결과와 텔레그램 버퍼(500) 갱신 과정에서 삭제된 u 비트 및 새로 추가된 u 비트를 활용하여 C(x)에 대한 오류 검출(820)을 수행한다. 오류 검출을 수행하기 위하여 다항식 C(x)를 다항식 G(x)로 나눈 나머지를 계산한다.
오류 검출부(1000)에서 수행하는 다항식 나머지 연산은 소정의 연산처리 회로를 활용하여 구현 가능하며, n비트의 비트열 C(x)를 k차 다항식 G(x)로 나눈 나머지를 계산하기 위해서 1 사이클이 소요된다.
동기화부(1100)는 C(x)에 대한 동기화(840)를 수행한다. 동기화를 수행하기 위하여 C(x)를 다항식 F(x)로 나눈 나머지를 계산한다.
동기화부(1100)에서 수행하는 다항식 나머지 연산은 소정의 연산처리 회로를 활용하여 구현 가능하며, n비트의 비트열 C(x)를 m차 다항식 F(x)로 나눈 나머지를 계산하기 위해서 1 사이클이 소요된다.
오류 검출부(1000)에서 계산된 E(x)의 값이 0이고, 동기화부(1100)에서 계산된 S(x) 의 값이 동기화 룩업 테이블에 포함된 경우, 오류가 검출되지 않고 동기화에 성공한 것으로 판단하고 동기화 룩업 테이블을 토대로 S(x)의 값에 해당하는 비트 만큼 텔레그램 버퍼를 순환 시프트(860)함으로써 복호화 과정이 완료된다.
오류 검출부(1000)에서 계산된 E(x)의 값이 0이 아니거나, 동기화부(1100)에서 계산된 S(x)의 값이 동기화 룩업 테이블에 포함되지 않은 경우, 텔레그램 버퍼를 갱신(810)하는 작업을 수행한다. 텔레그램 버퍼 갱신은 텔레그램 버퍼(500)에 포함된 기존의 비트열에서 가장 오래된 u 비트를 삭제하고, 남아있는 n-u 비트를 u 비트만큼 이동한 뒤, 새로운 u 비트를 텔레그램 버퍼(500)에 포함시키는 방식으로 구현 가능하다.
Figure 112016016856287-pat00012
이 과정은 오류 검출부(1000)에서 계산된 E(x)의 값이 0 이고, 동기화부(1100)에서 계산된 S(X)의 값이 동기화 룩업 테이블에 포함될 때까지 반복된다.
도 8에 도시된 바와 같이, 오류 검출부(1000) 및 동기화부(1100)는 텔레그램 버퍼 갱신 과정에서 삭제된 u 비트와 새로 추가된 u 비트를 텔레그램 버퍼(500)로부터 입력받아 오류 검출과 동기화를 동시에 수행하는 병렬 구조로 수행될 수 있다.
종래 기술의 경우 오류 검출 및 동기화를 수행하기 위하여 선형 피드백 쉬프트 레지스터를 초기화한 후 n 사이클에 걸쳐 텔레그램 버퍼(200)에서 출력된 n 비트의 비트열을 입력해야하지만, 본 발명의 일 실시예에 따르면 오류 검출 및 동기화를 소정의 연산처리 회로를 활용하여 각각 1사이클만에 완료할 수 있으므로, 소요시간을 획기적으로 감소시킬 수 있다.
u = 1인 경우를 예를 들어, 오류 검출부(1000)의 구체적인 구성을 상세히 살펴보도록 한다. 본 발명은 u > 1인 경우에도 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다.
i번째 텔레그램 버퍼(500)에 임시 저장된 n 비트의 비트열을
Figure 112016016856287-pat00013
라고 할 때, 새롭게 갱신된 i+1번째 텔레그램 버퍼(500)에 임시 저장된 n 비트의 비트열
Figure 112016016856287-pat00014
는 수학식 8과 같이 표현할 수 있다.
[수학식 8]
Figure 112016016856287-pat00015
즉,
Figure 112016016856287-pat00016
의 n 비트 중 n-1개의 비트는 이전 복호화 과정에 사용되었던 비트임을 알 수 있다.
갱신된
Figure 112016016856287-pat00017
에 대하여 오류 검출을 수행하기 위하여
Figure 112016016856287-pat00018
를 G(x)로 나눈 나머지를
Figure 112016016856287-pat00019
라고 정의하면,
Figure 112016016856287-pat00020
는 수학식 9와 같이 표현할 수 있다.
[수학식 9]
Figure 112016016856287-pat00021
i+1번째 텔레그램 버퍼(500)에 새롭게 입력되는
Figure 112016016856287-pat00022
의 경우는 직관적으로
Figure 112016016856287-pat00023
의 상수 항에 더해지는 것을 알 수 있다. 두번째 항인
Figure 112016016856287-pat00024
를 구하기 위하여 다음과 같은 식 전개를 활용한다.
[수학식 10]
Figure 112016016856287-pat00025
Figure 112016016856287-pat00026
Figure 112016016856287-pat00027
Figure 112016016856287-pat00028
와 같음을 알 수 있다.
Figure 112016016856287-pat00029
는 텔레그램 버퍼(500)가 i+1번째로 갱신되기 전에
Figure 112016016856287-pat00030
에 대한 오류 검출 연산과정에서 계산되었기 때문에,
Figure 112016016856287-pat00031
계산에 필요한 두 번째 항인
Figure 112016016856287-pat00032
를 새로운 텔레그램인
Figure 112016016856287-pat00033
가 아닌, 기존에 계산된
Figure 112016016856287-pat00034
를 활용하여 계산할 수 있다. 또한
Figure 112016016856287-pat00035
의 최고차 항은 x^(k-1)이고, G(x)의 최고차 항은 x^k 이므로,
Figure 112016016856287-pat00036
의 최고 차 항의 계수
Figure 112016016856287-pat00037
만 고려하면 보다 간단한 계산이 가능하다.
수학식 8의 세번째 항은
Figure 112016016856287-pat00038
를 미리 계산해둔 뒤에 텔레그램 버퍼(500) 갱신을 위해서 삭제되는 항, 즉 신규 입력에 따라 출력된 1개의 비트
Figure 112016016856287-pat00039
의 값에 따라서 정한다. 즉,
Figure 112016016856287-pat00040
의 값이 1이면 미리 계산되어 있는
Figure 112016016856287-pat00041
의 결과를
Figure 112016016856287-pat00042
에서 빼주며,
Figure 112016016856287-pat00043
의 값이 0일 경우에는 해당 연산을 수행하지 않는다.
위의 과정에서 제안하는 오류 검출 방식은
Figure 112016016856287-pat00044
를 구하는 과정에서 기존 복호화 구조처럼
Figure 112016016856287-pat00045
를 사용하여 처음부터 다시 n 사이클 동안 다항식 나머지 연산을 수행 하지 않고, 기존의 연산 결과
Figure 112016016856287-pat00046
와 새로운 텔레그램 버퍼(500)를 갱신하는 과정에서 추가되는 비트와 삭제되는 비트만을 활용하여 1 사이클 만에 연산이 종료된다.
수학식 9는 다음과 같이 정리될 수 있다.
[수학식 11]
Figure 112016016856287-pat00047
그리고,
Figure 112016016856287-pat00048
를 아래 수학식 12로 정리하면 수학식 11는 수학식 13과 같이 정리될 수 있다.
[수학식 12]
Figure 112016016856287-pat00049
[수학식 13]
Figure 112016016856287-pat00050
본 발명에서는 수학식 13을 활용하여 연산 처리 회로를 구성하고자 한다.
도9는 본 발명의 일 실시예에 따른 오류 검출부(1000)의 상세 구성을 도시한 도면이다.
도시된 바와 같이, 오류 검출부(1000)는 C(x)에 대해 오류 검출을 수행하기 위하여 종래 기술처럼 선형 피드백 쉬프트 레지스터의 초기값을 모두 0으로 리셋한 후 n 사이클에 걸쳐 n비트의 비트열 C(x)를 입력하는 대신, 텔레그램 버퍼(500)가 갱신되기 전 오류 검출부(1000) 연산처리 결과와 텔레그램 버퍼(500) 갱신 과정에서 삭제된 1비트 및 새로 추가된 1비트를 활용하여 다항식 C(x)를 다항식 G(x)로 나눈 나머지를 1 사이클만에 계산함으로써 소요시간을 획기적으로 감소시킬 수 있다.
오류 검출부(1000)는
Figure 112016016856287-pat00051
를 G(x)로 나눈 나머지를계산하기 위한 선형 피드백 쉬프트 레지스터(510) 회로를 포함하되 입력값으로 n 비트의 비트열
Figure 112016016856287-pat00052
를 모두 활용하는 대신 텔레그램 버퍼(500) 갱신 과정에서 새로 추가된 1개의 비트
Figure 112016016856287-pat00053
를 입력값으로 활용하고, x^n을 G(x)로 나눈 나머지인 GR(x)의 계수를 활용하는 선형 피드포워드 쉬프트 레지스터(1050) 회로를 포함하되 텔레그램 버퍼(500) 갱신 과정에서 삭제된 1개의 비트
Figure 112016016856287-pat00054
를 입력값으로 활용하며, 선형 피드백 쉬프트 레지스터(510) 회로 및 선형 피드포워드 쉬프트 레지스터(1050) 회로의 초기값으로
Figure 112016016856287-pat00055
를 G(x)로 나눈 나머지인
Figure 112016016856287-pat00056
의 계수를 활용한다.
이를 위해, 오류 검출부(1000)는 병렬적으로 접속되고 플립플롭을 공유하는 선형 피드백 쉬프트 레지스터(1060) 회로와 선형 피드포워드 쉬프트 레지스터(1050) 회로를 포함한다.
한편, 오류 검출부(1000)는 순차적으로 직렬 접속된 복수의 단위 회로(1010, 1020, 1030, 1040)를 포함하는 것으로 해석할 수도 있다.
각 단위 회로(1010, 1020, 1030, 1040)는 제 1 입력값에 대하여 제 1 제수 다항식 G(x)의 계수를 곱셈하는 제 1 곱셈기(1011, 1021, 1031, 1041), 제 2 입력값에 대하여 제 1 결과 다항식 GR(x)의 계수를 곱셈하는 제 2 곱셈기(1013, 1023, 1033, 1043), 제 3 입력값과 제 1 곱셈기(1011, 1021, 1031, 1041) 및 제 2 곱셈기(1013, 1023, 1033, 1043)의 출력을 합산하는 가산기(1012, 1022, 1032, 1042) 및 가산기(1012, 1022, 1032, 1042)의 출력을 저장하는 플립플롭(1014, 1024, 1034, 1044)을 포함한다.
이때, 단위회로는 k 개(k 는 제 1 제수 다항식의 최고 차수에 해당하는 자연수) 만큼 순차적으로 직렬접속된 것이다. 또한, 제 1 입력값은 최종단에 연결된 제 k 단위 회로의 플립플롭(1044)에 저장된 값이고, 제 2 입력값은 텔레그램 버퍼(500) 갱신 과정에서 삭제된 1 개의 비트
Figure 112016016856287-pat00057
이고, 제 3 입력값은 당해 단위 회로의 직전에 연결된 단위회로의 플립플롭에 저장된 값이되, 최선단에 연결된 제 1 단위 회로(1010)의 제 3 입력값은 텔레그램 버퍼(500) 갱신 과정에서 새로 추가된 1개의 비트
Figure 112016016856287-pat00058
이다. 또한, 제 i (상기 i 는 상기 k 보다 작거나 같은 자연수) 번째 단위 회로의 제 1 곱셈기는 제 1 제수 다항식 G(x)의 i-1 차 항의 계수
Figure 112016016856287-pat00059
를 곱셈하는 것이고, 제 i 번째 단위회로의 제2 곱셈기는 제 2 다항식 GR(x)의 "i-1" 차 항의 계수
Figure 112016016856287-pat00060
를 곱셈하는 것이다.
u=1인 경우를 예를들어, 동기화부(1100)의 상세 구성을 설명하기로 한다. 본 발명은 u>1인 경우에도 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다.
갱신된
Figure 112016016856287-pat00061
에 대하여 오류 검출을 수행하기 위하여
Figure 112016016856287-pat00062
를 F(x)로 나눈 나머지를
Figure 112016016856287-pat00063
라고 정의하면,
Figure 112016016856287-pat00064
는 다음과 같이 표현할 수 있다.
[수학식 14]
Figure 112016016856287-pat00065
i+1번째 텔레그램 버퍼(500)에 새롭게 입력되는
Figure 112016016856287-pat00066
의 경우는 직관적으로
Figure 112016016856287-pat00067
의 상수 항에 더해지는 것을 알 수 있다. 두번째 항인
Figure 112016016856287-pat00068
를 구하기 위하여 다음과 같은 식 전개를 활용한다.
[수학식 15]
Figure 112016016856287-pat00069
Figure 112016016856287-pat00070
Figure 112016016856287-pat00071
와 같음을 알 수 있다.
Figure 112016016856287-pat00072
는 텔레그램 버퍼(500)가 i+1번째로 갱신되기 전에
Figure 112016016856287-pat00073
에 대한 오류 검출 연산과정에서 계산되었기 때문에,
Figure 112016016856287-pat00074
계산에 필요한 두 번째 항인
Figure 112016016856287-pat00075
를 새로운 텔레그램인
Figure 112016016856287-pat00076
가 아닌, 기존에 계산된
Figure 112016016856287-pat00077
를 활용하여 계산할 수 있다. 또한
Figure 112016016856287-pat00078
의 최고차 항은 x^(m-1)이고, F(x)의 최고차 항은 x^m 이므로,
Figure 112016016856287-pat00079
의 최고 차 항의 계수
Figure 112016016856287-pat00080
만 고려하면 보다 간단한 계산이 가능하다.
수학식 14의 세번째 항은
Figure 112016016856287-pat00081
를 미리 계산해둔 뒤에 텔레그램 버퍼(500) 갱신을 위해서 삭제되는 항, 즉 신규 입력에 따라 출력된 1개의 비트
Figure 112016016856287-pat00082
의 값에 따라서 정한다. 즉,
Figure 112016016856287-pat00083
의 값이 1이면 미리 계산되어 있는
Figure 112016016856287-pat00084
의 결과를
Figure 112016016856287-pat00085
에서 빼주며,
Figure 112016016856287-pat00086
의 값이 0일 경우에는 해당 연산을 수행하지 않는다.
위의 과정에서 제안하는 오류 검출 방식은
Figure 112016016856287-pat00087
를 구하는 과정에서 기존 복호화 구조처럼
Figure 112016016856287-pat00088
를 사용하여 처음부터 다시 n 사이클 동안 다항식 나머지 연산을 수행 하지 않고, 기존의 연산 결과
Figure 112016016856287-pat00089
와 새로운 텔레그램 버퍼(500)를 갱신하는 과정에서 추가되는 비트와 삭제되는 비트만을 활용하여 1 사이클 만에 연산이 종료된다.
수학식 14은 다음과 같이 정리될 수 있다.
[수학식 16]
Figure 112016016856287-pat00090
그리고,
Figure 112016016856287-pat00091
를 아래 수학식 17로 정리하면 수학식 16은 수학식 18과 같이 정리될 수 있다.
[수학식 17]
Figure 112016016856287-pat00092
[수학식 18]
Figure 112016016856287-pat00093
본 발명에서는 수학식 18을 활용하여 연산 처리 회로를 구성하고자 한다.
도 10은 본 발명의 일 실시예에 따른 동기화부(1100)의 상세 구성을 도시한 도면이다.
도시된 바와 같이, 동기화부(1100)는 C(x)에 대해 오류 검출을 수행하기 위하여 종래 기술처럼 선형 피드백 쉬프트 레지스터의 초기값을 모두 0으로 리셋한 후 n 사이클에 걸쳐 n 비트의 비트열 C(x)를 입력하는 대신, 텔레그램 버퍼(500)가 갱신되기 전 동기화부(1100) 연산처리 결과와 텔레그램 버퍼(500) 갱신 과정에서 삭제된 1 비트 및 새로 추가된 1 비트를 활용하여 다항식 C(x)를 다항식 F(x)로 나눈 나머지를 1 사이클만에 계산함으로써 소요시간을 획기적으로 감소시킬 수 있다.
동기화부(1100)는
Figure 112016016856287-pat00094
를 F(x)로 나눈 나머지를 계산하기 위한 선형 피드백 쉬프트 레지스터(1160) 회로를 포함하되 입력값으로 n 비트의 비트열
Figure 112016016856287-pat00095
를 모두 활용하는 대신 텔레그램 버퍼(500) 갱신 과정에서 새로 추가된 1개의 비트
Figure 112016016856287-pat00096
를 입력값으로 활용하고, x^n을 F(x)로 나눈 나머지인 FR(x)의 계수를 활용하는 선형 피드포워드 쉬프트 레지스터(1150) 회로를 포함하되 텔레그램 버퍼(500) 갱신 과정에서 삭제된 1개의 비트
Figure 112016016856287-pat00097
를 입력값으로 활용하며, 선형 피드백 쉬프트 레지스터(610) 회로 및 선형 피드포워드 쉬프트 레지스터(1150) 회로의 초기값으로
Figure 112016016856287-pat00098
를 F(x)로 나눈 나머지인
Figure 112016016856287-pat00099
의 계수를 활용한다.
이를 위해, 동기화부(1100)는 병렬적으로 접속되고 플립플롭을 공유하는 선형 피드백 쉬프트 레지스터(1160) 회로와 선형 피드포워드 쉬프트 레지스터(1150) 회로를 포함한다.
한편, 동기화부(1100)는 순차적으로 직렬 접속된 복수의 단위 회로(1110, 1120, 1130, 1140)를 포함하는 것으로 해석할 수도 있다.
각 단위 회로(1110, 1120, 1130, 1140)는 제 1 입력값에 대하여 제 2 제수 다항식 F(x)의 계수를 곱셈하는 제 1 곱셈기(1111, 1121, 1131, 1141), 제 2 입력값에 대하여 제 2 결과 다항식 FR(x)의 계수를 곱셈하는 제 2 곱셈기(1113, 1123, 1133, 1143), 제 3 입력값과 제 1 곱셈기(1111, 1121, 1131, 1141) 및 제 2 곱셈기(1113, 1123, 1133, 1143)의 출력을 합산하는 가산기(1112, 1122, 1132, 1142) 및 가산기(1112, 1122, 1132, 1142)의 출력을 저장하는 플립플롭(1114, 1124, 1134, 1144)을 포함한다.
이때, 단위회로는 m 개(m 는 제 1 제수 다항식의 최고 차수에 해당하는 자연수) 만큼 순차적으로 직렬접속된 것이다. 또한, 제 1 입력값은 최종단에 연결된 제 m 단위 회로의 플립플롭(1144)에 저장된 값이고, 제 2 입력값은 텔레그램 버퍼(500) 갱신 과정에서 삭제된 1 개의 비트
Figure 112016016856287-pat00100
이고, 제 3 입력값은 당해 단위 회로의 직전에 연결된 단위회로의 플립플롭에 저장된 값이되, 최선단에 연결된 제 1 단위 회로(1110)의 제 3 입력값은 텔레그램 버퍼(500) 갱신 과정에서 새로 추가된 1개의 비트 c_new 이다. 또한, 제 j (상기 j 는 상기 m 보다 작거나 같은 자연수) 번째 단위 회로의 제 1 곱셈기는 제 1 제수 다항식 F(x)의 j-1 차 항의 계수
Figure 112016016856287-pat00101
를 곱셈하는 것이고, 제 j 번째 단위회로의 제2 곱셈기는 제 2 결과 다항식 FR(x)의 j-1 차 항의 계수
Figure 112016016856287-pat00102
를 곱셈하는 것이다.
도 11은 본 발명의 일 실시예에 따른 오류 검출부와 동기화부의 상세 구성을 도시한 도면이다.
도시된 바와 같이, 오류 검출부(1000)와 동기화부(1100)가 병렬 구조로 접속된 상태이다.
병렬구조에 따라 텔레그램 버퍼(500) 갱신 과정에서 새로 추가된 1개의 비트
Figure 112016016856287-pat00103
와 삭제된 1개의 비트
Figure 112016016856287-pat00104
를 함께 입력받을 수 있다. 아울러, 각 단위회로의 제 2 곱셈기는 각각 텔레그램 버퍼(500) 갱신 과정에서 삭제된 1개의 비트
Figure 112016016856287-pat00105
를 공통적으로 수신한다. 이를 위해, 오류 검출부(1000)와 동기화부(1100)를 구성하며, 서로 대응하는 위치에 배치된 제 2 곱셈기의 입력단자는 서로 접속된 구조를 가질 수 있다.
참고로, 본 발명의 실시예에 따른 도 5 에 도시된 구성 요소들은 소프트웨어 또는 FPGA(Field Programmable Gate Array) 또는 ASIC(Application Specific Integrated Circuit)와 같은 하드웨어 구성 요소를 의미하며, 소정의 역할들을 수행한다.
그렇지만 '구성 요소들'은 소프트웨어 또는 하드웨어에 한정되는 의미는 아니며, 각 구성 요소는 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다.
따라서, 일 예로서 구성 요소는 소프트웨어 구성 요소들, 객체지향 소프트웨어 구성 요소들, 클래스 구성 요소들 및 태스크 구성 요소들과 같은 구성 요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로 코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들 및 변수들을 포함한다.
구성 요소들과 해당 구성 요소들 안에서 제공되는 기능은 더 작은 수의 구성 요소들로 결합되거나 추가적인 구성 요소들로 더 분리될 수 있다.
전술한 본 발명의 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.
본 발명의 범위는 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.
500: 텔레그램 버퍼
1000: 오류 검출부
1100: 동기화부

Claims (7)

  1. 텔레그램 디코더 장치에 있어서,
    트랜스폰더 태그로부터 수신된 텔레그램 비트열 중에서 연속된 n 비트의 비트열을 임시 저장하는 텔레그램 버퍼,
    제 1 연산처리 회로를 포함하고, 상기 텔레그램 버퍼에 저장된 n 비트의 비트열에 대하여 상기 제1 연산처리 회로를 통해 오류 검출을 수행하는 오류 검출부 및
    제 2 연산처리 회로를 포함하고, 상기 텔레그램 버퍼에 저장된 n 비트의 비트열에 대하여 상기 제 2 연산처리 회로를 통해 동기화 처리를 수행하는 동기화부를 포함하되,
    상기 텔레그램 버퍼는 상기 오류 검출부에서 오류가 검출되거나 상기 동기화부에서 동기화에 실패할 경우, 상기 저장된 n 비트의 비트열에서 가장 먼저 입력된 1 비트를 삭제하고 남아있는 n-1 비트를 1 비트만큼 이동시킨 뒤, 상기 트랜스폰더 태그로부터 새로 수신된 1 비트를 추가하는 방식으로 비트열을 갱신하고,
    상기 오류 검출부 및 동기화부는 상기 텔레그램 버퍼로부터 비트열 갱신에 따라 삭제된 1 비트와 새로 추가된 1 비트를 입력받는 구조로 배치되고,
    상기 오류 검출부는 상기 텔레그램 버퍼의 비트열이 갱신되기 전의 n 비트의 비트열에 대한 상기 제 1 연산처리회로의 연산 결과와 상기 텔레그램 버퍼의 비트열 갱신에 따라 삭제된 1 비트 및 상기 텔레그램 버퍼의 비트열 갱신에 따라 추가된 1 비트를 기반으로 상기 텔레그램 버퍼의 비트열이 갱신된 후의 n 비트의 비트열에 대하여 상기 오류 검출을 수행하는 것인 텔레그램 디코더 장치.
  2. 제 1 항에 있어서,
    상기 동기화부는 상기 텔레그램 버퍼의 비트열이 갱신되기 전의 n 비트의 비트열에 대한 상기 제 2 연산처리회로의 연산 결과와 상기 텔레그램 버퍼의 비트열 갱신에 따라 삭제된 1 비트 및 상기 텔레그램 버퍼의 비트열 갱신에 따라 추가된 1 비트를 기반으로 상기 텔레그램 버퍼의 비트열이 갱신된 후의 n 비트의 비트열에 대하여 상기 동기화 처리를 수행하는 것인 텔레그램 디코더 장치.
  3. 제 1 항에 있어서,
    상기 오류 검출부는 상기 제 1 연산처리회로로서 선형 피드백 쉬프트 레지스터 회로 및 선형 피드포워드 쉬프트 레지스터 회로를 포함하되, 상기 선형 피드백 쉬프트 레지스터 회로 및 선형 피드포워드 쉬프트 레지스터 회로는 복수의 플립플롭과 상기 플립플롭의 사이에 배치된 복수의 가산기를 공유하도록 상기 플립플롭과 가산기에 병렬 접속된 것이고,
    상기 선형 피드백 쉬프트 레지스터 회로는 상기 텔레그램 버퍼에 저장된 비트열의 갱신에 따라 신규로 입력된 n비트의 비트열 (
    Figure 112017028480464-pat00123
    ) 중 신규로 입력된 1 비트를 입력으로서 수신하고, 상기 복수의 플립플롭에 저장된 상기 n-1 개의 비트에 제 1 제수 다항식(G(x))의 계수를 곱한값을 상기 가산기를 통해 합산하고,
    상기 선형 피드포워드 쉬프트 레지스터 회로는 x^n에 대하여 제 1 제수 다항식(G(x))을 기초로 모듈러 연산을 수행한 제 2 결과식(GR(x))의 계수와 상기 비트열의 갱신에 의하여 상기 텔레그램 버퍼에서 삭제된 1 비트를 곱한 값을 상기 가산기를 통해 합산하는 것인 텔레그램 디코더 장치.
  4. 제 1 항에 있어서,
    상기 동기화부는 상기 제 2 연산처리회로로서 선형 피드백 쉬프트 레지스터 회로 및 선형 피드포워드 쉬프트 레지스터 회로를 포함하되, 상기 선형 피드백 쉬프트 레지스터 회로 및 선형 피드포워드 쉬프트 레지스터 회로는 복수의 플립플롭과 상기 플립플롭의 사이에 배치된 복수의 가산기를 공유하도록 상기 플립플롭과 가산기에 병렬 접속된 것이고,
    상기 선형 피드백 쉬프트 레지스터 회로는 상기 텔레그램 버퍼에 저장된 비트열의 갱신에 따라 신규로 입력된 n비트의 비트열 (
    Figure 112017028480464-pat00124
    ) 중 신규로 입력된 1 비트를 입력으로서 수신하고, 상기 복수의 플립플롭에 저장된 상기 n-1 개의 비트에 제 2 제수 다항식(F(x))의 계수를 곱한값을 상기 가산기를 통해 합산하고,
    상기 선형 피드포워드 쉬프트 레지스터 회로는 x^n에 대하여 제 2 제수 다항식(F(x))을 기초로 모듈러 연산을 수행한 제 2 결과식(FR(x))의 계수와 상기 비트열의 갱신에 의하여 상기 텔레그램 버퍼에서 삭제된 1 비트를 곱한 값을 상기 가산기를 통해 합산하는 것인 텔레그램 디코더 장치.
  5. 제 1 항에 있어서,
    상기 오류 검출부는
    상기 텔레그램 버퍼에 저장된 비트열의 갱신에 따라 신규로 입력된 n비트의 비트열(
    Figure 112017028480464-pat00125
    ), 제 1 제수 다항식(G(x)), 상기 신규로 입력된 n비트의 비트열(
    Figure 112017028480464-pat00126
    )에 대하여 제 1 제수 다항식(G(x))을 기초로 모듈러 연산을 수행한 제1 결과식(E(x)), x^n에 대하여 제 1 제수 다항식(G(x))을 기초로 모듈러 연산을 수행한 제 2 결과식(GR(x)) 에 기초하여 오류 검출을 수행하는 것이되,
    제 1 입력값에 대하여 상기 제 1 제수 다항식의 계수를 곱셈하는 제 1 곱셈기, 제 2 입력값에 대하여 상기 제 2 결과식의 계수를 곱셈하는 제 2 곱셈기, 상기 제 1 곱셈기 및 제 2 곱셈기의 출력단과 접속되고 제 3 입력값과 상기 제 1 곱셈기 및 제 2 곱셈기의 출력을 합산하는 가산기 및 상기 가산기와 접속되고 상기 가산기의 출력을 저장하는 플립플롭을 포함하는 단위회로가 k 개(k는 상기 제 1 제수 다항식의 최고 차수에 해당하는 자연수) 만큼 순차적으로 직렬접속된 것이고,
    상기 제 1 입력값은 최종단에 연결된 제 k 단위 회로의 플립 플롭에 저장된 값이고,
    상기 제 2 입력값은 상기 신규 입력에 따라 출력된 1개의 비트이고,
    상기 제 3 입력값은 당해 단위 회로의 직전에 연결된 단위회로의 플립 플롭에 저장된 값이되, 최선단에 연결된 제 1 단위 회로의 제 3 입력값은 상기 신규로 입력된 1개의 비트이고,
    제 i (상기 i는 상기 k 보다 작거나 같은 자연수) 번째 단위 회로의 제 1 곱셈기는 상기 제 1 제수 다항식의 i-1 차항의 계수를 곱셈하는 것이고, 제2 곱셈기는 상기 제 2 결과식의 i-1 차항의 계수를 곱셈하는 것인 텔레그램 디코더 장치.
  6. 제 1 항에 있어서,
    상기 동기화부는
    상기 텔레그램 버퍼에 저장된 비트열의 갱신에 따라 신규로 입력된 n비트의 비트열(
    Figure 112017028480464-pat00127
    ), 제 2 제수 다항식(F(x)), 상기 신규로 입력된 n비트의 비트열(
    Figure 112017028480464-pat00128
    )에 대하여 제 2 제수 다항식(F(x))을 기초로 모듈러 연산을 수행한 제1 결과식(S(x)), x^n에 대하여 제 2 제수 다항식(F(x))을 기초로 모듈러 연산을 수행한 제 2 결과식(FR(x)) 에 기초하여 동기화를 수행하는 것이되,
    제 1 입력값에 대하여 상기 제 2 제수 다항식의 계수를 곱셈하는 제 1 곱셈기, 제 2 입력값에 대하여 상기 제 2 결과식의 계수를 곱셈하는 제 2 곱셈기, 상기 제 1 곱셈기 및 제 2 곱셈기의 출력단과 접속되고 제 3 입력값과 상기 제 1 곱셈기 및 제 2 곱셈기의 출력을 합산하는 가산기 및 상기 가산기와 접속되고 상기 가산기의 출력을 저장하는 플립플롭을 포함하는 단위회로가 m 개(m은 상기 제 2 제수 다항식의 최고 차수에 해당하는 자연수) 만큼 순차적으로 직렬접속된 것이고,
    상기 제 1 입력값은 최종단에 연결된 제 m 단위 회로의 플립 플롭에 저장된 값이고,
    상기 제 2 입력값은 상기 신규 입력에 따라 출력된 1개의 비트이고,
    상기 제 3 입력값은 당해 단위 회로의 직전에 연결된 단위회로의 플립 플롭에 저장된 값이되, 최선단에 연결된 제 1 단위 회로의 제 3 입력값은 상기 신규로 입력된 1개의 비트이고,
    제 j ( 상기 j는 상기 m 보다 작거나 같은 자연수) 번째 단위 회로의 제 1 곱셈기는 상기 제 2 제수 다항식의 j-1 차항의 계수를 곱셈하는 것이고, 제2 곱셈기는 상기 제 2 결과식의 j-1 차항의 계수를 곱셈하는 것인 텔레그램 디코더 장치.
  7. 청구항 1 내지 청구항 6 중 어느 한 항에 해당하는 텔레그램 디코더 장치를 포함하고, 열차에 결합되도록 구성되며, 선로에 배치된 트랜스폰더 태그에서 전송된 텔레그램을 수신하고, 상기 텔레그램 디코더 장치를 통해 상기 텔레그램을 복호화하는 트랜스폰더 리더 장치.
KR1020160019920A 2016-02-19 2016-02-19 텔레그램 디코더 및 이를 포함하는 트랜스폰더 리더 Active KR101744117B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020160019920A KR101744117B1 (ko) 2016-02-19 2016-02-19 텔레그램 디코더 및 이를 포함하는 트랜스폰더 리더

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160019920A KR101744117B1 (ko) 2016-02-19 2016-02-19 텔레그램 디코더 및 이를 포함하는 트랜스폰더 리더

Publications (1)

Publication Number Publication Date
KR101744117B1 true KR101744117B1 (ko) 2017-06-07

Family

ID=59223357

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160019920A Active KR101744117B1 (ko) 2016-02-19 2016-02-19 텔레그램 디코더 및 이를 포함하는 트랜스폰더 리더

Country Status (1)

Country Link
KR (1) KR101744117B1 (ko)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7320101B1 (en) 2003-08-19 2008-01-15 Altera Corporation Fast parallel calculation of cyclic redundancy checks
KR101490759B1 (ko) 2014-02-20 2015-02-06 (주)티엘씨테크놀로지 출력 가변형 트랜스폰더 시스템 및 그 제어 방법

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7320101B1 (en) 2003-08-19 2008-01-15 Altera Corporation Fast parallel calculation of cyclic redundancy checks
KR101490759B1 (ko) 2014-02-20 2015-02-06 (주)티엘씨테크놀로지 출력 가변형 트랜스폰더 시스템 및 그 제어 방법

Similar Documents

Publication Publication Date Title
JP3046988B2 (ja) データストリームのフレーム同期検出方法及び装置
US8352847B2 (en) Matrix vector multiplication for error-correction encoding and the like
KR100958234B1 (ko) 패리티 검사 디코더들에서 사용하기 위한 노드 처리기들
KR101354288B1 (ko) 통신 시스템에서 에러 검출 방법 및 장치
US20120030548A1 (en) Method and device for implementing cyclic redundancy check codes
CZ296383B6 (cs) Dekodér pro mrízové kódy s odstranováním doplnkových bitu a zpusob jejich dekódování
JP2010093541A (ja) サイクリックシフト装置、サイクリックシフト方法、ldpc復号装置、テレビジョン受像機、及び、受信システム
JP5978382B2 (ja) 非バイナリ線形ブロックコードの並列符号化
KR100894234B1 (ko) 선형 블록 코드의 인코딩 방법 및 장치
KR100195741B1 (ko) 가변 레이트 비터비 복호화기
US7216285B2 (en) System and method for generating cyclic redundancy check
CN107404320B (zh) 用于进行重组解码的低密度奇偶校验解码装置及相关方法
KR101874537B1 (ko) 극 부호의 병렬 복호화 방법 및 장치
JP2009094605A (ja) 符号誤り検出装置および誤り検出符号生成装置
JP2001196938A (ja) デジタルデータをデコーディングする装置及び方法
KR20230021567A (ko) 데이터를 인코딩 및/또는 디코딩하기 위한 방법 및 장치
KR101744117B1 (ko) 텔레그램 디코더 및 이를 포함하는 트랜스폰더 리더
RU2633148C2 (ru) Способ кодовой цикловой синхронизации для каскадного кода при применении жестких решений
EP0661841A2 (en) Parity and syndrome generation for error and correction in digital communication systems
US7398456B2 (en) Information encoding by shortened Reed-Solomon codes
JPH0476540B2 (ko)
JP5500357B2 (ja) 符号化装置、および符号化方法
EP3735746A1 (en) Channel code construction for decoder reuse
CN106788909A (zh) 基于gmr卫星通信协议的crc计算方法及装置
CN113068046B (zh) Mpeg-2同步字节解码器中伴随式的并行产生装置和方法

Legal Events

Date Code Title Description
PA0109 Patent application

Patent event code: PA01091R01D

Comment text: Patent Application

Patent event date: 20160219

PA0201 Request for examination
PE0902 Notice of grounds for rejection

Comment text: Notification of reason for refusal

Patent event date: 20170123

Patent event code: PE09021S01D

E701 Decision to grant or registration of patent right
PE0701 Decision of registration

Patent event code: PE07011S01D

Comment text: Decision to Grant Registration

Patent event date: 20170519

GRNT Written decision to grant
PR0701 Registration of establishment

Comment text: Registration of Establishment

Patent event date: 20170531

Patent event code: PR07011E01D

PR1002 Payment of registration fee

Payment date: 20170601

End annual number: 3

Start annual number: 1

PG1601 Publication of registration
FPAY Annual fee payment

Payment date: 20200309

Year of fee payment: 4

PR1001 Payment of annual fee

Payment date: 20200309

Start annual number: 4

End annual number: 4

PR1001 Payment of annual fee

Payment date: 20210310

Start annual number: 5

End annual number: 5

PR1001 Payment of annual fee

Payment date: 20240312

Start annual number: 8

End annual number: 8