KR100582560B1 - 디지털 통신용 채널 부호기 - Google Patents

디지털 통신용 채널 부호기 Download PDF

Info

Publication number
KR100582560B1
KR100582560B1 KR1019990028261A KR19990028261A KR100582560B1 KR 100582560 B1 KR100582560 B1 KR 100582560B1 KR 1019990028261 A KR1019990028261 A KR 1019990028261A KR 19990028261 A KR19990028261 A KR 19990028261A KR 100582560 B1 KR100582560 B1 KR 100582560B1
Authority
KR
South Korea
Prior art keywords
bits
frame
group
bit
register
Prior art date
Application number
KR1019990028261A
Other languages
English (en)
Other versions
KR20010009726A (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 KR1019990028261A priority Critical patent/KR100582560B1/ko
Publication of KR20010009726A publication Critical patent/KR20010009726A/ko
Application granted granted Critical
Publication of KR100582560B1 publication Critical patent/KR100582560B1/ko

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/27Coding, 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 using interleaving techniques
    • H03M13/2732Convolutional interleaver; Interleavers using shift-registers or delay lines like, e.g. Ramsey type interleaver
    • 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/65Purpose and implementation aspects
    • H03M13/6502Reduction of hardware complexity or efficient processing

Landscapes

  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Error Detection And Correction (AREA)

Abstract

본 발명은 데이터가 입력되고 프레임의 품질 지시자(Frame Quality Indicator : CRC) 를 생성하여 길쌈 부호화 (Convolutional Encoding) 및 인터리빙(interleaving)을 수행하는 채널 부호기의 구현에 관한 것이다. 입력 데이타를 입력 데이터 버퍼링용 RAM에 저장하고 이를 읽어 CRC를 생성하고 길쌈 부호화를 수행한 다음, 인터리빙 RAM을 사용한 인터리빙을 수행하는 기존의 설계 방식과는 달리, 메모리 사용량이 큰 인터리버 RAM을 사용하지 않고 프레임 입력 데이터 버퍼링용 RAM 2개를 교대로 사용하여 길쌈 부호화 및 인터리빙을 한번에 처리하기 위해 프레임 입력 데이터 레지스터로 부터 병렬 CRC 생성기를 사용하여 CRC를 계산하고 입력 데이터 버퍼링용 RAM에 데이터와 함께 계산된 CRC 출력을 저장하는 채널 부호기 설계 방법에 관한 것이다. 따라서 본 발명의 설계 방법은 프레임 입력 데이터 패킷 교환 시 프로토콜의 간편성 및 마진 확보, 채널 부호기의 하드웨어 사용량을 감소 시킬 수 있으므로 디지털 변조기 설계에 유용한 구조를 제공한다.

Description

디지털 통신용 채널 부호기 { Channel encoder in digital communication }
도 1은 종래기술에 따른 디지털 통신용 채널 부호기의 구성도,
도 2는 종래기술에 따른 CRC 생성기의 상세 구성도,
도 3은 종래기술에 따른 디지털 통신용 채널 부호기의 타이밍도,
도 4는 본 발명의 한 실시예에 따른 디지털 통신용 채널 부호기의 구성도,
도 5는 본 발명의 한 실시예에 따른 병렬 CRC 생성기의 상세 구성도,
도 6은 본 발명의 한 실시예에 따른 다중화기_레지스터(MUX_REG) 블록의 상세 구성도,
도 7은 본 발명의 한 실시예에 따른 디지털 통신용 채널 부호기의 타이밍도이다.
* 도면의 주요 부분에 대한 부호의 설명
411 : 프레임 입력데이터 레지스터 412 : 병렬 CRC 생성기
413 : 기록어드레스 제어부 414 : 독취어드레스 제어부
415 : 역다중화기 416 : 제1엔코더 램
417 : 제2엔코더 램 418 : 다중화기_레지스터 블록
419 : 길쌈 부호화기 420 : 다중화기
421 : 제어레지스터 & 제어로직
본 발명은 프레임 입력데이터 버퍼링용 램 2개를 교대로 사용하여 길쌈 부호화(convolutional encoding) 및 인터리빙(interleaving)을 처리하는 새로운 디지털 통신용 채널 부호기에 관한 것이다.
도 1은 종래기술에 따른 디지털 통신용 채널 부호기의 구성도이다.
도 1을 참조하면, 이는 프레임 입력데이터 레지스터(111)와, 엔코더램(ERAM)(112), 병렬-직렬 변환기(113), CRC 생성기(114), 길쌈 부호화기(115), 인터리버 램(IRAM)(116), 엔코더 램(112)용 기록어드레스 제어부(117) 및 독취어드레스 제어부(118), 인터리버 램(116)용 기록어드레스 제어부(119) 및 독취어드레스 제어부(120), 및 제어레지스터 & 제어로직부(121)로 구성된다.
프레임 입력데이터가 마이크로 컨트롤러(미도시)의 제어를 받아 프레임 입력데이터 레지스터(111)를 통해 입력되면, 기록 어드레스 제어부(117)는 기록 어드레스를 발생하여 프레임 입력데이터가 엔코더 램(112)에 순차적으로 저장되도록 한다. 다음, 독취 어드레스 제어부(118)는 엔코더 램(112)에 저장된 데이터를 순차 적으로 읽어내기 위한 독취 어드레스를 발생하고, 읽어내진 데이터는 병렬-직렬 변환기(113)를 거쳐 CRC 생성기(114)로 입력되어 원하는 CRC가 생성된다.
이와 동시에 읽어내진 데이터는 길쌈 부호화기(115)에 입력되어 인터리빙을 수행하기 위한 코드심벌을 생성한다. 이 코드심벌을 기록 어드레스 제어부(119)의 제어에 따라 순차적으로 인터리버 램(IRAM)(116)에 저장한 후 프레임의 경계로부터 독취 어드레스 제어부(120)의 제어로 정규화된 시간에 약속된 열(Row)로 읽어냄으로써 채널 부호화를 완성한다.
도 2는 종래기술에 따른 CRC 생성기의 상세 구성도이다. 이는 엔코더 램(112)을 순차적으로 읽어내어 병렬-직렬 변환기(113)를 통해 입력되는 1비트 데이터는 CRC 입력단으로 입력된다. 이때 3개의 스위치(211, 212, 213)는 모두 위로 연결된다. 엔코더 램(112)에 저장되어 있던 프레임 입력데이터는 CRC 생성기(114)에 입력되는 동시에 CRC 출력단으로 출력되어 길쌈 부호화기(115)에 입력된다.
여기서, 프레임 입력데이터가 280비트로 이루어졌다고 가정하면, CRC 생성기(114)에 280 비트가 모두 입력되면 타이밍 제어에 의해 3개의 스위치(211, 212, 213)가 모두 아래로 연결되어 D7, D6, D5, D4, D3, D2, D1, D0의 CRC 출력 8비트가 순차적으로 CRC 출력단으로 출력되어 길쌈부호기(115)로 입력된다. 또한, CRC 생성기(114)의 D7 부터 D0의 프레임 초기값은 '1'로 세트된다.
도 3은 종래기술에 따른 디지털 통신용 채널 부호기의 타이밍도이다.
제1프레임에 대한 데이터 요청 인터럽트가 입력되면, 마이크로 컨트롤러는 입력데이터를 프레임 입력데이터 레지스터에 기록한다(S311). 다음, 프레임 입력 데이터 레지스터에 저장된 입력데이터를 엔코더 램에 순차적으로 저장한다(S312). 이를 반복하여 제1프레임의 입력데이터가 모두 입력되면 길쌈 부호화를 위한 준비가 완료된 것으로 엔코더 램의 독취 시기를 기다린다.
계산되어진 시간만큼 프레임의 경계에서부터 앞서 엔코더 램을 순차적으로 읽어내고(S313), CRC 생성기에 입력되어 원하는 비트 수 만큼의 CRC를 생성한다(S314). 엔코더 램에서 읽혀진 입력데이터와 생성된 CRC가 길쌈 부호화기에 입력되어 제1프레임의 길쌈 부호화를 수행한다(S315). 길쌈 부호화기로부터 출력되는 코드심벌을 인터리빙 램에 1번지부터 순차적으로 저장한다(S316). 프레임 경계에서부터 한 프레임을 균등 분할하여 정규화된 시간에 인터리빙 램을 읽어내어(S317), 출력함으로써 처음 프레임의 채널 부호화를 완성하고, 동시에 제2프레임의 입력데이터를 수신하여(S318) 제1프레임과 같은 방법으로 제2프레임의 채널 부호화를 수행한다(S319, S320, S321, S322, S323, S324).
이와 같은 종래의 구성에서, 한 프레임의 입력데이터를 엔코더 램에 버퍼링하고 이를 읽어내어 길쌈 부호화를 수행하는 것은 간단하다. 그러나, 인터리빙을 수행하기 위해 한 프레임 만큼의 시간 내에서 인터리빙 램에 기록하고, 한 프레임을 균등 분할하여 정규화된 시간에 인터리빙 램을 독취하여야 하는 타이밍 제어가 어렵고, 엔코더 램의 데이터를 독취하여 부호화(Encoding)을 수행하는 시간 동안을 피하여 마이크로 컨트롤러가 프레임 입력데이터를 레지스터에 저장하여야 하는 제한을 가지며, 이를 위하여 데이터 요청 인터럽트의 위치를 옵셋을 주어 조정하여야 하는 등의 제어가 추가로 필요하다.
이러한 종래의 채널 부호기는, 길쌈 부호화와 인터리빙을 수행하기 위하여 엔코더 램에 비해 부호화율(R)의 역수배만큼 큰 인터리빙 램이 필요하며, 한 프레임 만큼의 시간 내에서 인터리빙 램의 기록, 독취를 수행하기 위한 기록, 독취 어드레스 제어부 및 타이밍 제어회로가 필요하다. 또한, 마이크로 컨트롤러가 엔코더 램을 독취하면서 길쌈 부호화를 수행하고 있는 동안에는 프레임 입력데이터를 프레임 입력데이터 레지스터에 기록할 수 없는 등의 제한을 가지며 이를 위하여 데이터 요청 인터럽트의 위치에 옵셋을 주어 조정하여야 하는 등의 제어가 추가로 필요하다.
따라서, 본 발명은 상기와 같은 종래기술의 문제점을 해결하기 위하여 안출된 것으로서, 본 발명의 목적은, 메모리 사용량이 작은 프레임 입력데이터 버퍼링용 램 2개를 교대로 사용하여 길쌈 부호화 및 인터리빙을 한 번에 처리하고, 이를 위해 병렬 CRC 생성기를 사용하여 CRC를 계산하고 입력데이터 버퍼링용 램에 데이터와 함께 저장하는 채널 부호기를 제공하는 데 있다.
또한, 본 발명의 다른 목적은, 채널 부호기의 하드웨어 사용량 감소 및 마이크로 컨트롤러와 프레임 입력데이터 패킷 교환시 프로토콜의 간편성 및 마진을 확보하기 위한 것이다.
상기한 목적을 달성하기 위하여 본 발명은, 프레임 입력데이터를 2개의 엔코더 램을 사용하여 길쌈 부호화 및 인터리빙을 한 번에 처리하는 디지털 통신용 채널 부호기에 있어서, 프레임 입력데이터 레지스터로 입력되는 이번 프레임 입력데이터를 제1엔코더 램에 저장함과 동시에 주어진 CRC 입력 비트수와 생성다항식에 의해 생성된 병렬 CRC 생성기에 병렬로 입력하는 수단과; 입력된 병렬 CRC 입력값과 이전 CRC 상태값을 XOR 논리 계산하여 원하는 CRC 출력값을 병렬로 계산하는 수단; 상기 제1엔코더 램에 저장된 프레임 입력데이터와 함께 상기 CRC 출력값을 저장한 후, 독취하여 길쌈 부호화 및 인터리빙을 수행하는 수단을 포함하여, 이번 프레임 입력데이터에 대한 길쌈 부호화 및 인터리빙과, 다음 프레임 입력데이터의 제2엔코더 램으로의 저장이 동시에 수행되는 것을 특징으로 한다.
이하, 첨부된 도면을 참조하여 본 발명의 실시예를 설명하면 다음과 같다.
도 4는 본 발명의 한 실시예에 따른 디지털 통신용 채널 부호기의 구성도이고, 도 5는 본 발명의 한 실시예에 따른 병렬 CRC 생성기의 상세 구성도이며, 도 6은 본 발명의 한 실시예에 따른 다중화기_레지스터(MUX_REG) 블록의 상세 구성도이고, 도 7은 본 발명의 한 실시예에 따른 디지털 통신용 채널 부호기의 타이밍도이다.
도 4를 참조하면, 디지털 통신용 채널 부호기는, 프레임 입력데이터 레지스터(411)와, 병렬 CRC 생성기(412), 기록어드레스 제어부(413), 독취어드레스 제어부(414), 역다중화기(415), 제1엔코더 램(416), 제2엔코더 램(417), 다중화기_레지스터 블록(418), 길쌈 부호화기(419), 다중화기(420), 및 제어레지스터 & 제어로직 부(421)를 포함한다.
프레임 입력데이터가 마이크로 컨트롤러(미도시)의 제어를 받아 입력되면, 프레임 입력데이터 레지스터(411)는 이 프레임 입력데이터를 저장한다. 이 프레임 입력데이터는 병렬 CRC 생성기(412)로 입력되어 CRC를 생성시키는 동시에 기록어드레스 제어부(413)의 제어에 따라 역다중화기(415)를 통해 제1엔코더 램(416)에 순차적으로 저장된다.
두 번째 프레임의 경계에서부터 프레임 입력데이터가 저장된 엔코더 램의 어드레스를 계산하여 제1엔코더 램(416)과 제2엔코더 램(417)을 어드레싱하고, 프레임 선택신호에 의해 제어받는 다중화기_레지스터 블록(418)으로 입력된다.
도 6을 참조하면, 제1엔코더 램(416)과 제2엔코더 램(417)을 어드레싱하고 프레임 선택신호에 의해 제어받는 2x1 다중화기(61)를 거쳐 8비트 레지스터(63)에 저장된다. 이어서 읽어야 하는 입력데이터의 앞에 입력된 8개의 입력데이터를 추출하기 위해 입력데이터가 들어 있는 엔코더 램의 어드레스보다 하나 작은 어드레스로 제1엔코더 램(416)과 제2엔코더 램(417)을 어드레싱하고, 프레임 선택신호에 의해 제어받는 2x1 다중화기(61)를 거쳐 8비트 레지스터(63)에 저장된다. 이때, 전에 저장되었던 8비트 레지스터(63)의 내용은 시프트(Shift)되어 8비트 레지스터(62)로 이동된다. 두 개의 8비트 레지스터(62, 63) 전체 16비트의 출력 중에서 비트 15는 가장 먼저 입력된 데이터이고, 비트 0는 가장 나중에 입력된 데이터이며, 필요한 입력데이터는 8비트 레지스터(62)에 저장된 8비트 중 하나인데, 예를 들어 비트 3이 필요한 입력데이터이면 비트 3을 포함하여 비트4 ~ 비트11의 9 비트를 선택하여야 한다. SEL[3]의 제어와 2x1 다중화기(64) 12개에 의해 전체 16비트 중에서 12비트가 선택되고, SEL[2]의 제어와 2x1 다중화기 10개에 의해 전체 12비트 중에서 10비트가 선택되며, SEL[1]의 제어와 2x1 다중화기 9개에 의해 10비트 중 최종 9비트가 선택되어진다. 선택되어진 9비트의 데이터는 필요한 입력데이터와 그 앞에 입력된 8개의 입력 데이터로서 길쌈 부호화기(419)의 레지스터(65)에 병렬로 입력되고 XOR 게이트(66)에 의해 코드심벌 2개를 생성한다. 이들 중 필요한 하나의 코드심벌을 2x1 다중화기(420)로 선택하면 인터리빙 램을 사용하지 않고도 길쌈 부호화와 인터리빙이 완료된 채널 부호기의 출력을 얻을 수 있다.
같은 방법으로 두 번째 프레임 입력데이터는 역다중화기(415)를 통하여 제2엔코더 램(417)에 순차적으로 저장되고, 다음 프레임의 경계에서 제2엔코더 램(417)에서 독취되어 길쌈 부호화와 인터리빙이 한꺼번에 수행된다.
도 5는 본 발명의 한 실시예에 따른 병렬 CRC 생성기의 상세도이다.
마이크로 컨트롤러가 프레임 입력데이터를 프레임 입력데이터 레지스터(411)에 기록하면, 입력데이터 8비트는 병렬 CRC 생성기에 입력됨과 동시에 제1엔코더 램 또는 제2엔코더 램에 저장된다. 입력된 8비트의 입력데이터는 XOR단(51)의 수식에 의해 8개의 입력 비트가 순차적으로 입력되었을 경우와 같은 값을 생성하여 D7에서 D0의 레지스터(52)에 저장한다. 다시 프레임 입력데이터 레지스터(411)에 입력데이터가 기록되면, 입력데이터 8비트는 병렬 CRC 생성기(412)에 입력되어 앞에서 계산되었던 D7∼D0의 값과 함께 계산되어 새로운 D7∼D0값이 생성된다.
위의 동작을 35번 반복하면 280비트의 모든 입력데이터에 대한 최종 D7∼D0 의 값이 CRC 결과로 출력된다. 이 8비트 CRC 데이터는 280비트의 입력데이터와 함께 제1엔코더 램또는 제2엔코더 램에 저장된다. 여기서도 D7∼D0의 프레임 입력데이터 초기값은 '1'로 세트된다.
예를들면, CRC의 다항식(Polynomial)이 g(x) = x8 + x7 + x3 + x + 1 이라고 가정하면, XOR 단(51)의 값을 계산하기 위해서는 아래와 같은 수식 전개가 필요하다.
도 2에 도시된 종래 방식의 CRC 생성기에 8비트의 입력데이터(IN0, IN1, IN2, IN3, IN4, IN5, IN6, IN7)가 순서대로 8 클록(T0, T1, T2, T3, T4, T5, T6, T7)동안 입력되었을 경우, 8개의 D 플립플롭에 저장되는 상태값(D0, D1, D2, D3, D4, D5, D6, D7)은 아래의 표와 같이 구하여진다. 여기서, T-1 시간의 상태값은 이전 8비트 입력을 처리한 후의 CRC 상태값을 의미하고 T7 시간에서의 8개 상태값은 8개의 입력데이타와 T-1 시간의 8개의 상태값으로 표현되므로, 이를 이용한 XOR 단을 사용하여 도 5의 XOR 단(51)과 같이 병렬 CRC 생성기 수식을 구할 수 있다.
Figure 111999007872824-pat00001
Figure 111999007872824-pat00002
Figure 111999007872824-pat00003
Figure 111999007872824-pat00004
Figure 111999007872824-pat00005
Figure 111999007872824-pat00006
Figure 111999007872824-pat00007
Figure 111999007872824-pat00008
도 6은 본 발명의 한 실시예에 따른 다중화기_레지스터 블록의 상세 구성도이다. 이는, 두 개 엔코더 램의 8비트 출력 중에서 프레임 단위로 선택하기 위한 8비트 2x1 다중화기(61), 두 번 읽혀진 엔코더 램의 데이터를 저장하기 위한 두 개의 8비트 쉬프트레지스터(62, 63), 전체 16비트의 레지스터 출력 중에서 필요한 입력데이터와 그 앞에 입력된 8개의 입력데이터를 선택하여 병렬로 길쌈 부호화기(419)의 각 레지스터 비트(65)에 입력하기 위한 2x1 다중화기(64) 31개로 구성된다.
도 7은 본 발명에 따른 채널 부호화기의 타이밍도이다. 제1프레임에 대한 데이터 요청 인터럽트가 입력되면, 마이크로 컨트롤러는 프레임 입력데이터를 프레임 입력데이터 레지스터에 기록한다(S71). 프레임 입력데이터 레지스터에 기록하면 입력데이터 8비트는 병렬 CRC 생성기에 입력되어 CRC를 생성함(S72)과 동시에, 프레임 단위로 번갈아 선택되는 제어를 받아 제1엔코더 램에 순차적으로 저장한다(S73). 제1프레임과 제2프레임의 경계에서, 제1엔코더 램은 인터리빙 알고리즘과 더불어 계산된 어드레스에 의해 정규화된 시간마다 읽혀지고(S74), 제1프레임의 길쌈 부호화와 인터리빙이 동시에 수행된다(S75).
제1프레임 입력데이터의 길쌈 부호화와 인터리빙이 제2프레임에서 수행되는 동안 제2프레임 입력데이터에 대한 데이터 요청 인터럽트가 입력되면, 마이크로 컨트롤러는 제2프레임 입력데이터를 프레임 입력데이터 레지스터에 기록한다(S76). 그후, 프레임 입력데이터 8비트는 병렬 CRC 생성기에 입력되어 CRC를 생성함(S77)과 동시에 프레임 단위로 번갈아 선택되는 제어를 받아 제2엔코더 램에 순차적으로 저장한다(S78). 제3프레임의 경계에서 제2엔코더 램은 인터리빙 알고리즘과 더불어 계산되어진 어드레스에 의해 정규화된 시간마다 읽혀지고(S79), 제2프레임 입력데이터의 길쌈 부호화와 인터리빙이 동시에 수행된다(S80).
위에서 양호한 실시예에 근거하여 이 발명을 설명하였지만, 이러한 실시예는 이 발명을 제한하려는 것이 아니라 예시하려는 것이다. 이 발명이 속하는 분야의 숙련자에게는 이 발명의 기술사상을 벗어남이 없이 위 실시예에 대한 다양한 변화나 변경 또는 조절이 가능함이 자명할 것이다. 그러므로, 이 발명의 보호범위는 첨부된 청구범위에 의해서만 한정될 것이며, 위와 같은 변화예나 변경예 또는 조절예를 모두 포함하는 것으로 해석되어야 할 것이다.
이상과 같이 본 발명에 의하면, 종래의 인터리버 램에 비해 부호화율(1/R)만큼 크기가 작은 엔코더 램 2개를 교대로 사용하여 길쌈 부호화 및 인터리빙을 한 번에 처리한다. 즉, 프레임 입력데이터 레지스터로부터 병렬 CRC 생성기를 사용하여 CRC를 계산하고 엔코더 램에 입력데이터와 함께 저장함으로써, 채널 부호기의 하드웨어 사용량을 감소시킬 수 있고, 마이크로 컨트롤러와 프레임 입력데이터 패킷 교환시 프로토콜의 간편성 및 마진확보의 효과가 있다.

Claims (14)

  1. 삭제
  2. 외부로부터 제1프레임을 수신하는 프레임 수신부;
    제1 레지스터 및 제2 레지스터를 포함하고, 상기 제1 프레임을 8비트 단위로 입력받아 상기 제1 레지스터에 저장한 후 상기 제1 레지스터 및 상기 제2 레지스터의 각각에 저장된 비트값을 병렬로 소정 수식에 따라 XOR 연산하고, 상기 XOR 연산 결과값을 상기 제2 레지스터에 저장하는 과정을 반복하여 상기 제1 프레임에 대한 CRC 값을 생성하는 CRC 생성부;
    상기 제1프레임 및 상기 생성된 CRC 값이 저장되는 제1저장부;
    상기 제1저장부에 저장된 상기 제1프레임 및 상기 CRC 값을 소정의 비트 개수 단위로 독출하여 쉬프트 레지스터에 저장하고, 상기 쉬프트 레지스터의 비트들을 다중화하여 길쌈 부호화의 구속길이(constraint length)에 해당하는 개수의 비트들을 선택하는 다중화부; 및
    상기 선택된 비트들를 기초로 소정의 부호화율에 따른 길쌈 부호화를 수행하는 부호화부;
    상기 다중화부에 의한 상기 독출과정 수행 중에 상기 프레임수신부를 통해 수신된 제2프레임 및 상기 CRC 생성부에 의해 생성된 상기 제2프레임에 대한 CRC 값을 저장하는 제2저장부; 및
    상기 제1프레임에 대한 부호화가 완료되면 상기 제2저장부에 저장된 상기 제2프레임 및 상기 제2프레임의 CRC 값을 선택하여 상기 다중화부로 출력하는 메모리선택부;를 더 포함하는 것을 특징으로 하는 채널부호화장치.
  3. 제 2항에 있어서,
    상기 부호화부의 출력을 다중화하는 출력다중화부;를 더 포함하는 것을 특징으로 하는 채널부호화장치.
  4. 제 2항에 있어서,
    상기 CRC 생성부는 상기 제1프레임을 소정의 비트길이로 독출하고 독출된 각 비트에 대하여 소정의 논리연산을 병렬로 수행하여 CRC 값을 생성하는 것을 특징으로 하는 채널부호화장치.
  5. 제 2항에 있어서,
    상기 다중화부는 상기 제1저장부에 저장된 상기 제1프레임 및 상기 CRC 값을 저장된 역순으로 독출하여 상기 쉬프트레지스터부에 저장하는 것을 특징으로 하는 채널부호화장치.
  6. 제 2항에 있어서,
    상기 다중화부는,
    8비트로 이루어진 두개의 쉬프트 레지스터를 포함하고,
    상기 제1저장부로부터 상기 제1프레임 및 상기 CRC 값을 순차적으로 독출하여 상기 두개의 쉬프트 레지스터에 저장하는 것을 특징으로 하는 채널부호화장치.
  7. 제 2항에 있어서,
    상기 다중화부는 쉬프트 레지스터의 최상위비트부터 소정의 비트수로 구성된 제1그룹 및 최하위비트부터 소정의 비트수로 구성된 제2그룹으로 나누고, 상기 제1그룹에 속한 각 비트와 상기 제2그룹에 속한 각 비트사이에 1:1 대응되는 각 비트들을 다중화하는 과정을 소정 횟수 반복하는 것을 특징으로 하는 채널부호화장치.
  8. 제 7항에 있어서,
    상기 다중화부는,
    상기 쉬프트 레지스터의 비트들을 최상위비트부터 12개의 비트로 구성된 제1그룹 및 최하위비트부터 12개의 비트로 구성된 제2그룹으로 나누고, 상기 제1그룹에 속한 각 비트와 상기 제2그룹에 속한 각 비트사이에 1:1 대응되는 각 비트들을 다중화하여 출력하는 제1다중화부;
    상기 제1다중화부에 의해 선택된 비트들을 최상위비트부터 10개의 비트로 구성된 제3그룹 및 최하위비트부터 10개의 비트로 구성된 제4그룹으로 나누고, 상기 제3그룹에 속한 각 비트와 상기 제4그룹에 속한 각 비트사이에 1:1 대응되는 각 비트들을 다중화하여 출력하는 제2다중화부;
    상기 제2다중화부에 의해 선택된 비트들을 최상위비트부터 9개의 비트로 구성된 제5그룹 및 최하위비트부터 9개의 비트로 구성된 제6그룹으로 나누고, 상기 제5그룹에 속한 각 비트와 상기 제6그룹에 속한 각 비트사이에 1:1 대응되는 각 비트들을 다중화하여 출력하는 제3다중화부;를 포함하는 것을 특징으로 하는 채널부호화장치.
  9. 삭제
  10. (a) 외부로부터 제1프레임을 수신하는 단계;
    (b) 제1 레지스터 및 제2 레지스터를 포함하고, 상기 제1 프레임을 8비트 단위로 입력받아 상기 제1 레지스터에 저장한 후 상기 제1 레지스터 및 상기 제2 레지스터의 각각에 저장된 비트값을 병렬로 소정 수식에 따라 XOR 연산하고, 상기 XOR 연산 결과값을 상기 제2 레지스터에 저장하는 과정을 반복하여 상기 제1 프레임에 대한 CRC 값을 생성하는 단계;
    (c) 상기 제1프레임 및 상기 생성된 CRC 값을 제1저장부에 순차적으로 저장하는 단계;
    (d) 상기 저장된 제1프레임 및 CRC 값을 소정의 개수의 비트단위로 독출하여 쉬프트 레지스터에 저장하는 단계;
    (e) 상기 쉬프트 레지스터의 비트들을 다중화하여 길쌈 부호화의 구속길이(constraint length)에 해당하는 개수 만큼의 비트들을 선택하는 단계; 및
    (f) 상기 선택된 비트들을 기초로 소정의 부호화율에 따른 길쌈 부호화를 수행하는 단계;를 포함하고,
    상기 (c) 단계는,
    (c1) 외부로부터 제2프레임을 수신하는 단계;
    (c2) 상기 수신된 제2프레임에 대한 CRC 값을 생성하는 단계; 및
    (c3) 상기 제2프레임 및 상기 CRC 값을 제2저장부에 저장하는 단계;를 포함하는 것을 특징으로 하는 채널부호화방법.
  11. 제 10항에 있어서,
    (g) 상기 부호화 수행 후 부호화율에 따른 하나이상의 출력을 다중화하여 출력하는 단계;를 더 포함하는 것을 특징으로 하는 채널부호화방법.
  12. 제 10항에 있어서,
    상기 (b) 단계는 상기 제1프레임을 소정의 비트길이로 독출하고 독출된 각 비트에 대하여 소정의 논리연산을 병렬로 수행하여 CRC 값을 생성하는 단계를 포함하는 것을 특징으로 하는 채널부호화방법.
  13. 제 10항에 있어서,
    상기 (d) 단계는 상기 제1저장부에 저장된 상기 제1프레임 및 상기 CRC 값을 저장된 역순으로 독출하여 상기 쉬프트 레지스터에 저장하는 단계를 포함하는 것을 특징으로 하는 채널부호화방법.
  14. 제 10항에 있어서,
    상기 쉬프트 레지스터는 두개의 8비트 쉬프트 레지스터로 구성되고,
    상기 (e) 단계는
    (e1) 상기 쉬프트 레지스터의 비트들을 최상위비트부터 12개의 비트로 구성된 제1그룹 및 최하위비트부터 12개의 비트로 구성된 제2그룹으로 나누고, 상기 제1그룹에 속한 각 비트와 상기 제2그룹에 속한 각 비트사이에 1:1 대응되는 각 비트들을 다중화하여 출력하는 단계;
    (e2) 상기 제1다중화부에 의해 선택된 비트들을 최상위비트부터 10개의 비트로 구성된 제3그룹 및 최하위비트부터 10개의 비트로 구성된 제4그룹으로 나누고, 상기 제3그룹에 속한 각 비트와 상기 제4그룹에 속한 각 비트사이에 1:1 대응되는 각 비트들을 다중화하여 출력하는 단계;
    (e3) 상기 제2다중화부에 의해 선택된 비트들을 최상위비트부터 9개의 비트로 구성된 제5그룹 및 최하위비트부터 9개의 비트로 구성된 제6그룹으로 나누고, 상기 제5그룹에 속한 각 비트와 상기 제6그룹에 속한 각 비트사이에 1:1 대응되는 각 비트들을 다중화하여 출력하는 단계;를 포함하는 것을 특징으로 하는 채널부호화방법.
KR1019990028261A 1999-07-13 1999-07-13 디지털 통신용 채널 부호기 KR100582560B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019990028261A KR100582560B1 (ko) 1999-07-13 1999-07-13 디지털 통신용 채널 부호기

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019990028261A KR100582560B1 (ko) 1999-07-13 1999-07-13 디지털 통신용 채널 부호기

Publications (2)

Publication Number Publication Date
KR20010009726A KR20010009726A (ko) 2001-02-05
KR100582560B1 true KR100582560B1 (ko) 2006-05-23

Family

ID=19601405

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019990028261A KR100582560B1 (ko) 1999-07-13 1999-07-13 디지털 통신용 채널 부호기

Country Status (1)

Country Link
KR (1) KR100582560B1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100727316B1 (ko) * 2005-06-01 2007-06-12 삼성전자주식회사 저밀도채리티체크 채널 디코딩 방법 및 장치
KR101200073B1 (ko) * 2005-12-08 2012-11-12 한국전자통신연구원 무선 통신 시스템의 채널 부호기

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR970022702A (ko) * 1995-10-13 1997-05-30 김광호 병렬 사이클릭 리던던시 체크(crc) 엔코더
KR970072795A (ko) * 1996-04-19 1997-11-07 양승택 순환잉여검사(crc-7)를 이용한 중계구간 추적장치
KR19990033240A (ko) * 1997-10-23 1999-05-15 정선종 디지털 통신용 채널 부호기 설계방법

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR970022702A (ko) * 1995-10-13 1997-05-30 김광호 병렬 사이클릭 리던던시 체크(crc) 엔코더
KR970072795A (ko) * 1996-04-19 1997-11-07 양승택 순환잉여검사(crc-7)를 이용한 중계구간 추적장치
KR19990033240A (ko) * 1997-10-23 1999-05-15 정선종 디지털 통신용 채널 부호기 설계방법

Also Published As

Publication number Publication date
KR20010009726A (ko) 2001-02-05

Similar Documents

Publication Publication Date Title
JP3882097B2 (ja) 重畳インターリーバ及びメモリのアドレス発生方法
CN100539443C (zh) 通信系统的交织设备和方法
JP2824474B2 (ja) 誤り訂正方式及びこの誤り訂正方式を用いた復号器
KR100248396B1 (ko) 병렬 길쌈 부호화기를 사용한 채널 부호기 설계방법
JP2000068862A (ja) 誤り訂正符号化装置
JP4054221B2 (ja) ターボ復号方法及びターボ復号装置
KR20020028639A (ko) 주소발생기를 포함한 인터리빙/디인터리빙 수행 장치 및그 방법과 그를 이용한 채널 부호화 시스템
JP2004510380A (ja) 線形ブロック符号の符号化のための方法および装置
KR100518295B1 (ko) 디지털 통신 시스템의 디인터리빙장치 및 그의디인터리빙방법
KR100582560B1 (ko) 디지털 통신용 채널 부호기
US7051261B1 (en) Turbo encoder with reduced processing delay
KR20030070135A (ko) 에러 정정 코드를 디코딩하는 방법 및 장치
JP3571304B2 (ja) Cdmaシステムのインターリーバーメモリアクセス装置及びその方法
JPH04241521A (ja) 畳込み符号の復号回路
KR100499467B1 (ko) 블록 인터리빙 방법 및 그를 위한 장치
KR100248395B1 (ko) 디지털 통신용 채널 부호기 설계방법
JPH09261081A (ja) デパンクチャード回路
JP3239872B2 (ja) インタリーバ、インタリーブ方法、デインタリーバ、デインタリーブ方法、発信装置及び受信装置
JP2001332980A (ja) インタリーブ装置及びインタリーブ方法
US6714606B1 (en) Integrated services digital broadcasting deinterleaver architecture
US6687870B1 (en) Method and apparatus for interleaving for information transmission or storage applications
JP4318980B2 (ja) 無線通信装置の符号化処理装置および復号化処理装置
KR0155516B1 (ko) 비터비 복호기에서 한개의 메모리를 사용한 상태 매트릭 메모리 운용방법 및 그 장치
JP3626070B2 (ja) 積符号符号化装置および復号化装置
KR100943612B1 (ko) 터보코드를 사용하는 이동통신시스템의 터보 인터리버장치 및 방법

Legal Events

Date Code Title Description
N231 Notification of change of applicant
A201 Request for examination
AMND Amendment
E902 Notification of reason for refusal
AMND Amendment
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
J201 Request for trial against refusal decision
AMND Amendment
B701 Decision to grant
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20130424

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20140430

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20150427

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20160427

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20170427

Year of fee payment: 12

FPAY Annual fee payment

Payment date: 20190425

Year of fee payment: 14

EXPY Expiration of term