KR100258234B1 - Trellis code modulation - Google Patents

Trellis code modulation Download PDF

Info

Publication number
KR100258234B1
KR100258234B1 KR1019980002596A KR19980002596A KR100258234B1 KR 100258234 B1 KR100258234 B1 KR 100258234B1 KR 1019980002596 A KR1019980002596 A KR 1019980002596A KR 19980002596 A KR19980002596 A KR 19980002596A KR 100258234 B1 KR100258234 B1 KR 100258234B1
Authority
KR
South Korea
Prior art keywords
segment
register
symbol
data
trellis
Prior art date
Application number
KR1019980002596A
Other languages
Korean (ko)
Other versions
KR19990066560A (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 KR1019980002596A priority Critical patent/KR100258234B1/en
Publication of KR19990066560A publication Critical patent/KR19990066560A/en
Application granted granted Critical
Publication of KR100258234B1 publication Critical patent/KR100258234B1/en

Links

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
    • 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/0059Convolutional codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/015High-definition television systems

Abstract

PURPOSE: A device for storing an existence path of trellis code data is provided to remove an influence of a segment synchronizing signal and to minimize the area. CONSTITUTION: The twelve registers(51-1-51-12) are operated by being enabled and being synchronized at a clock in accordance with an enable signal(SENA). A multiplexer(52) selects an input(OUT_0) from the exterior or an output of the twelfth register(51-12) in accordance with a count control signal(C832) and transmits to the first register(51-1). The count control signal(C832) indicates the number of counting a unit segment length 832 symbol by starting a count when each segment is started. A segment synchronizing signal is inputted during four clocks being started each segment initially. A deciding vector of a segment from an adding comparing selecting unit is inputted during the remainder 828 clocks. The count control signal(C832) becomes the "high" state for the four clocks while a segment synchronizing signal of the fourth symbols is inputted to the twelfth symbol delay register for removing an influence of a segment synchronizing signal. The register enable signal(SENA) becomes the "high" state during a unit segment 832 symbol section including a segment synchronizing signal of fourth symbol, and enables the registers(51-1-51-12). The registers(51-1-51-12) are enabled in all sections of each segment 832 symbol.

Description

트렐리스 코드 데이터의 생존 경로 저장 장치(An apparatus for storing survivor path of trellis-coded data)An apparatus for storing survivor path of trellis-coded data

본 발명은 트렐리스 부호화 변조(TCM : Trellis code modualtion)기법에 의해 전송된 신호를 복호화시키는 트렐리스 디코더(TCM decoder)에 관한 것으로, 특히 가산 비교 선택부(ACS)로부터 제공받은 생존 데이터 경로의 집합인 결정 벡터를 기억하는 트렐리스 코드 데이터의 생존 경로 저장 장치에 관한 것이다.The present invention relates to a trellis decoder (TCM decoder) for decoding a signal transmitted by a trellis code modulation (TCM) technique, and in particular, a survival data path provided from an additive comparison selection unit (ACS). A survival path storage device of trellis coded data storing a decision vector which is a set of?

일반적으로, 트렐리스 부호화 변조(Trellis code modualtion: 이하 "TCM"이라 함)기법은 대역폭이 제한된 전송로(bandwidth-limited channel)에서 높은 부호화 이득(coding gain)을 얻기 위한 채널 부호화 기법으로서, 부호화 기술과 변조 기술을 결합하여 구현된다. TCM은 대역폭을 변화시키지 않고서도 부호화되지 않은 기존의 변조기법에 비해 전력상의 상당한 이득을 얻을 수 있으며, TCM 구조는 유한한 상태를 갖는 부호기(encoder)와 비이진 변조기(non-binary modulator)로 구성된다. 수신기 측에서, 노이즈(noise)가 섞인 수신 신호는 연판정(soft-decision)에 의한 최우복호법(maximum likelihood decoding)을 수행하는 디코더를 이용하여 복호화된다. 이러한 TCM은 부호화되지 않은 변조기법과 비교하여 백색 가우시안 잡음(AWGN:Additive White Gaussian Nosie)이 있는 디지털 신호 전송 환경에서 3∼6㏈ 이상의 전력상 이득을 얻을 수 있다고 알려져 있다. 여기서 "트렐리스(trellis)"라는 용어는 이진 길쌈 부호(convoultion)의 상태도인 트렐리스 다이어그램(trellis diagram)과 비슷한 상태를 갖는 상태 천이도에 의해 TCM 부호어를 나타낼수 있기 때문에 사용되고 있다. 그리고, TCM 부호와 길쌈 부호의 차이점은 TCM 부호어는 길쌈 부호어를 비이진 변조시켜 임의 크기를 갖는 신호집합으로 확장시켰다는 점이다. TCM이 갖는 이러한 부호화의 이득 때문에 수신 데이터 검출의 복잡성에도 불구하고 현재 많이 이용되고 있으며, 그 이용 범위가 크게 늘어나고 있다.In general, the trellis code modulation (TCM) technique is a channel encoding technique for obtaining a high coding gain in a bandwidth-limited channel. It is implemented by combining a technique with a modulation technique. TCM can achieve significant power gains over conventional uncoded modulation without changing bandwidth. The TCM structure consists of an encoder and a non-binary modulator with finite states. do. At the receiver side, the received signal mixed with noise is decoded using a decoder that performs maximum likelihood decoding by soft-decision. These TCMs are known to achieve power gains of 3-6 GHz or more in a digital signal transmission environment with white Gaussian Nosie (AWGN) compared to uncoded modulation. The term "trellis" is used here because the TCM codeword can be represented by a state transition diagram similar to the trellis diagram, which is a state diagram of binary convolutional code. The difference between the TCM code and the convolutional code is that the TCM codeword is non-binary modulated with the convolutional codeword and extended to a signal set having an arbitrary size. In spite of the complexity of the received data detection because of the gain of the encoding of the TCM, it is currently widely used, and its use range is greatly increased.

TCM 신호의 복호를 위해서는 비터비 알고리즘(Viterbi algorithm)이 사용되는데, 비터비 알고리즘은 이미 언급한 최우복호법(maximum likelihood decoding)을 수행하고 트렐리스 다이어그램(trellis diagram)을 사용하여 필요한 계산량을 줄이는 알고리즘이다. 이 알고리즘은 각 상태에 입력되는 경로들과 수신 신호와의 유사성 비교를 통해서 하나의 스테이트(state)에 하나의 생존 경로(survivor path)만이 존재하게 한다. 이러한 과정은 트렐리스 다이어그램의 시간에 따른 각 단에서 반복된다. 따라서, 비터비 알고리즘이 요구하는 계산량은 전송 부호열의 길이에 좌우되는 것이 아나라 상태 수(state number)에 의존하게 된다.The Viterbi algorithm is used to decode the TCM signal, which performs the maximum likelihood decoding already mentioned and uses trellis diagrams to reduce the amount of computation required. Algorithm This algorithm ensures that only one survivor path exists in a state by comparing the similarity between the paths input to each state and the received signal. This process is repeated for each stage of the trellis diagram over time. Therefore, the amount of computation required by the Viterbi algorithm does not depend on the length of the transmitted code string but depends on the state number.

도 1은 비터비 알고리즘을 적용한 트렐리스 디코더의 구성도로서, 트렐리스 디코더는 브랜치 메트릭 계산부(branch metric calculation unit(BMU):11)와, 가산 비교 선택부(add comparator select unit(ACS):12), 경로 메트릭 네트워크(path metric network(PMN):13), 및 생존 데이터 메모리부(survivor memory unit(SMU):14)로 구성되어 있다.FIG. 1 is a block diagram of a trellis decoder to which the Viterbi algorithm is applied. The trellis decoder includes a branch metric calculation unit (BMU) 11 and an add comparator select unit (ACS). 12), a path metric network (PMN) 13, and a survivor memory unit 14 (SMU).

상기 브랜치 메트릭 계산부(BMU:11)는 수신 심볼을 입력받아 각 스테이트를 지나는 경로와 수신 심볼 사이의 거리를 계산하고, 그 결과인 브랜치 메트릭(BMt)을 상기 가산 비교 선택부(ACS:12)로 제공한다. 상기 가산 비교 선택부(ACS:12)는 매 시간(t) 마다 각 스테이트 Sj(t)에 입력되는 경로 중에서 최소 경로 메트릭을 갖는 경로를 선택하는 역할을 하는 것으로서, 상기 브랜치 메트릭 계산부(BMU:11)로부터 제공된 다수개의 브랜치 메트릭(BM(t))과 상기 경로 메트릭 네트워크(PMN:13)로부터 제공된 이전 경로 메트릭(PM(t-1))을 더하여 가산하고(즉, 이전 경로 메트릭에다가 현재 스테이트에서 머지(merge)된 다수개의 브랜치 메트릭을 축적시킴), 현재 스테이트에서의 축적된 다수개의 경로 메트릭을 비교하여, 그 중에서 작은 값을 갖는 경로 메트릭을 선택한다. 이렇게 선택된 경로 메트릭은 상기 경로 메트릭 네트워크(PMN:13)로 제공되며, 선택된 경로를 역추적하기 위한 정보가 상기 생존 데이터 메모리부(SMU:14)로 제공된다. 상기 생존 데이터 메모리부(SMU:14)는 복호를 위해 역추적하는 생존 경로의 길이 즉, 디코딩 깊이(decoding depth) 만큼 생존 경로 정보를 유지하고 있으며, 역추적 알고리즘(traceback algorithm)에 따라 역추적하여 최종 복원된 심볼을 출력한다.The branch metric calculation unit (BMU) 11 receives a received symbol, calculates a distance between a path passing through each state and the received symbol, and adds the branch metric (BMt) as a result to the addition comparison selecting unit (ACS) 12. To provide. The addition comparison selection unit (ACS) 12 selects a path having a minimum path metric among paths input to each state S j (t) every time t, and the branch metric calculation unit BMU The number of branch metrics BM (t) provided from: 11 and the previous route metric PM (t-1) provided from the route metric network PMN: 13 are added together (i.e., the current route metric to the current route metric). Accumulating a plurality of branch metrics merged in the state), and comparing a plurality of accumulated path metrics in the current state, and selecting a path metric having a smaller value among them. The selected route metric is provided to the route metric network (PMN) 13, and information for backtracking the selected route is provided to the survival data memory unit SMU 14. The survival data memory unit (SMU) 14 maintains the survival path information as long as the length of the survival path back tracked for decoding, that is, the decoding depth, and back traces according to a traceback algorithm. Output the last recovered symbol.

이러한 구조를 갖는 트렐리스 디코더의 예로 미국내 고화질 텔레비젼(high definition televison : HDTV) 규격을 제정하기 위해 결성된 Grand Alliance(GA)에서 제안된 GA HDTV 수신 시스템에서 채용하고 있는 트렐리스 디코더를 들 수 있다. GA HDTV에서는 트렐리스 부호화된 신호를 8레벨 잔류 측파대(VSB)변조하여 전송하고, 이를 수신한 수신측에서는 NTSC 간섭 제거 필터의 사용 유무에 따라 2개의 디코딩 경로를 갖게 된다. 즉, 수신 심볼을 복원하는 데 있어서, NTSC 간섭 제거 필터를 사용하지 않으면 8 스테이트 모드 복호를 하는 가우시안(AWGN) 채널용 최적 트렐리스 디코더를 사용하면 되고, NTSC 간섭 제거 필터를 통과한 신호는 필터의 전달함수 특성상 입력 레벨이 8레벨에서 15레벨( 16 스테이트 )로 변환되므로 이에 적합한 16 스테이트 모드 복호를 하는 부분응답 채널용 트렐리스 디코더를 사용해야 한다.An example of a trellis decoder having such a structure is a trellis decoder employed in a GA HDTV reception system proposed by the Grand Alliance (GA), which was formed to establish high definition televison (HDTV) standards in the United States. Can be. In GA HDTV, a trellis coded signal is transmitted by modulating an 8-level residual sideband (VSB), and the receiving side has two decoding paths depending on whether an NTSC interference cancellation filter is used. In other words, to recover the received symbol, if the NTSC interference cancellation filter is not used, an optimal trellis decoder for 8 state mode decoding with Gaussian (AWGN) channel can be used, and the signal passing through the NTSC interference cancellation filter is filtered. Since the input level is converted from 8 levels to 15 levels (16 states) due to the propagation function of, the trellis decoder for partial response channel with 16 state mode decoding suitable for this should be used.

한편, GA HDTV 전송 시스템에서는 데이터를 8레벨 VSB 모드에서 트렐리스 부호화하여 프레임 단위로 전송하도록 하는데, 도 2를 참조하여 GA HDTV 시스템의 프레임 구조를 설명하면, 하나의 프레임(Frame)은 두개의 필드(Field)로 구성되어 있고, 한 필드(Field)는 313개의 세그먼트(Segment)로 이루어진다. 각 세그먼트(Segment)는 4심볼의 세그먼트 동기 신호(Segment Sync)와 828개의 데이터+에러정정 심볼(Data+FEC)로 구성되어 있고, 각 필드의 첫번째 세그먼트는 필드 동기 신호(Field Sync)에 할당되어 있다.Meanwhile, in the GA HDTV transmission system, data is trellis-coded in an eight-level VSB mode and transmitted in units of frames. Referring to FIG. 2, a frame structure of the GA HDTV system is described. It consists of a field, and one field consists of 313 segments. Each segment is composed of 4 symbol segment sync signal and 828 data + error correction symbols (Data + FEC), and the first segment of each field is assigned to field sync signal (Field Sync). have.

트렐리스 부호화는 백색 가우시안 잡음(AWGN)에 강한 성질을 갖지만 군집에러에는 약하므로, 트렐리스 부호 블록 12개를 병렬로 배치한 뒤 인터리빙된 입력 심볼들을 스위치를 통해 순차적으로 부호기에 인가하여 12심볼 인트라세그먼트 인터리빙(intrasegment interleaving) 처리를 한다. 또한 GA HDTV 수신 시스템의 트렐리스 부호 디인터리버에서는 송신측에서의 TCM 부호어가 12심볼 단위로 인터리빙되었기 때문에 수신측에서는 트렐리스 디코더 12개가 병렬로 구현되어 디인터리빙을 수행하도록 해야한다. 따라서, 각 트렐리스 디코더는 입력 심볼열중 매 12번째 심볼을 입력으로 받아 디인터리빙하면서 복호화를 수행하였다.Since trellis coding is strong against white Gaussian noise (AWGN) but weak against cluster errors, 12 trellis code blocks are arranged in parallel and the interleaved input symbols are sequentially applied to the encoder through a switch. Symbol intrasegment interleaving processing is performed. In addition, in the trellis code deinterleaver of the GA HDTV reception system, since the TCM codeword on the transmitter side is interleaved in units of 12 symbols, the reception side should implement 12 trellis decoders in parallel to perform deinterleaving. Accordingly, each trellis decoder receives and deinterleaves every 12th symbol of the input symbol string and performs decoding.

그런데, 서로 다른 레벨을 갖는 신호를 복호화하기 위하여 상기와 같이 각각의 스테이트에 적합한 트렐리스 디코더를 따로따로 구비하고 12개의 동일한 트렐리스 디코더를 사용한다면 설계시 비용 및 면적이 증가되므로, 이를 해결하기 위하여 8 스테이트 모드와 16 스테이트 모드를 동시에 지원할 수 있는 트렐리스 디코더를 설계하였다.However, if a separate trellis decoder suitable for each state is used separately and 12 identical trellis decoders are used as described above to decode signals having different levels, cost and area are increased in design. To this end, we designed a trellis decoder that can support both 8 and 16 state modes.

즉, 도 3은 생존 경로 저장 및 역추적을 수행하는 생존 데이터 메모리 장치(SMU)에 대한 구성도로서, 데이터 지연 처리부(30)와, 역추적 프로세서(34)로 구성되어 있다. 상기 데이터 지연 처리부(30)는 가산 비교 선택부(ACS)로부터 각 스테이트에서 살아남은 생존 경로의 결정 벡터(DVi)를 입력받아 저장함과 동시에, 소정 클럭 지연 후 저장된 결정 벡터중 동일한 인덱스(i)를 갖는 결정 벡터들(DVi)을 동시에 출력한다. 여기서, i는 12 심볼 단위를 나타낸다. 상기 역추적 프로세서(34)는 상기 데이터 지연 처리부(30)로부터 제공된 결정 벡터들(DVi)을 이용하여 최적응답 역추적 알고리즘 혹은 부분응답 역추적 알고리즘을 수행함과 동시에, 모드 선택 신호(MODE_SEL)에 따라 최적응답 복원 심볼 혹은 부분응답 복원 심볼을 선택적으로 출력한다.That is, FIG. 3 is a configuration diagram of a survival data memory device (SMU) that performs survival path storage and traceback, and includes a data delay processor 30 and a traceback processor 34. The data delay processor 30 receives and stores the decision vector DVi of the surviving paths surviving in each state from the addition comparison selecting unit ACS, and has the same index i among the stored decision vectors after a predetermined clock delay. Outputs the decision vectors DVi simultaneously. Here, i represents 12 symbol units. The backtracking processor 34 performs an optimal response backtracking algorithm or a partial response backtracking algorithm using the decision vectors DVi provided from the data delay processing unit 30, and at the same time, according to a mode selection signal MODE_SEL. An optimal response recovery symbol or a partial response recovery symbol is selectively output.

상기 데이터 지연 처리부(30)는 가산 선택 비교부(ACS)로부터 각 스테이트에서 최종 결정된 결정 벡터(DV=X1,X0)중 X1 비트를 유지하는 레지스터 그룹(31-1∼31-15)과, X0 비트를 유지하는 레지스터 그룹(32-1∼32-14)으로 구성되어 있다. 상기 X1 레지스터 그룹은 X1을 1클럭 지연시켜 출력하는 제 1a레지스터(31-1)와, X1을 12클럭 지연시켜 출력하는 제 2a 내지 15a 레지스터부(31-2∼31-15)가 직렬로 연결되어 있고, 상기 X0 레지스터 그룹은 X0 을 1클럭 지연시켜 출력하는 제 1b 레지스터(32-1)와, X0을 12클럭 지연시켜 출력하는 제 2b 내지 14b 레지스터부(32-2∼32-14)가 직렬로 연결되어 있으며, 각 레지스터부로부터 동시에 출력되는 데이터들은 상기 역추적 프로세서(34)로 제공됨과 동시에 다음단의 레지스터로 입력된다.The data delay processing section 30 includes register groups 31-1 to 31-15 for holding the X1 bit in the decision vector DV = X1, X0 finally determined in each state from the addition selection comparison section ACS, and X0. It consists of register groups 32-1 to 32-14 holding bits. The X1 register group is connected in series with a first a register 31-1 that delays X1 by one clock and outputs the second a-15a registers 31-2 through 31-15 that delays X1 by 12 clocks. The register group X0 includes the first register 32-1 for delaying X0 by one clock and the second registers 32-2 to 32-14 for delaying and outputting X0 by 12 clocks. Data connected in series and simultaneously output from each register unit are provided to the traceback processor 34 and input to the next register.

상기 역추적 프로세서(34)로 병렬 출력된 결정 벡터들은 인코딩시 12개의 트렐리스 부호 블록중 동일한 부호 블록으로부터 출력된 데이터들에 대한 결정 벡터들이어야 한다. 그런데, 세그먼트 동기 신호가 입력되는 4클럭 동안에도 인트라세그먼트 인터리버는 12개 트렐리스 디코더에 대하여 스위칭을 계속 진행하나, 트렐리스 디코더는 디스에이블(disable) 상태가 되므로, 입력된 데이터 순서대로 12 심볼씩 시프팅 시키게 되면 동일한 부호기의 출력 데이터를 얻을 수 없게 된다. 따라서, 12심볼 지연 레지스터부(31-2∼31-15,32-2∼32-14)에서는 12클럭마다 동일한 인코더에서 부호화된 데이터(즉, 동일한 인덱스를 갖는 데이터)가 위치하도록 조정하여 세그먼트 동기 신호(segment sync)의 영향을 제거해주어야만 한다.The decision vectors output in parallel to the traceback processor 34 should be decision vectors for data output from the same code block among the 12 trellis code blocks during encoding. However, the intrasegment interleaver continues to switch for 12 trellis decoders during 4 clocks of the segment sync signal, but the trellis decoder is disabled, so 12 If the symbols are shifted by symbol, output data of the same encoder cannot be obtained. Therefore, in the 12 symbol delay register sections 31-2 to 31-15, 32-2 to 32-14, the segment synchronization is performed so that the data encoded by the same encoder (that is, data having the same index) is positioned every 12 clocks. The effect of segment sync should be eliminated.

도 4는 도 3의 12심볼 지연 레지스터부(31-2∼31-15,32-2∼32-14)에 대한 세부 회로도로서, 12개의 레지스터(40-1∼40-12)와, 상기 레지스터의 입출력 데이터를 선택하는 12개의 멀티플렉서(42-1∼42-12)로 구성되어 있다. 상기 레지스터(40-1∼40-12)는 인에이블 신호(SENA)와 카운트 제어신호(C832)에 따라, 세그먼트 동기 신호 4심볼이 모두 입력된 후 다음 1클럭동안에는 매 12클럭 건너서 위치한 레지스터 내용이 동일한 인코더의 데이터(동일한 인덱스)가 되도록 레지스터의 내용을 재배열하였다. 즉, 세그먼트 동기 신호가 모두 입력된 후 1클럭 동안만 레지스터에 저장된 데이터 순서를 바꿔주고, 그 외에는 입력되는 순서대로 오른쪽 시프팅하여 저장한다.FIG. 4 is a detailed circuit diagram of the 12 symbol delay register sections 31-2 to 31-15, 32-2 to 32-14 of FIG. 3, and includes 12 registers 40-1 to 40-12 and the registers. It consists of twelve multiplexers 42-1 to 42-12 for selecting input and output data. According to the enable signal SENA and the count control signal C832, the registers 40-1 to 40-12 store the contents of a register located every 12 clocks during the next one clock after all four symbols of the segment sync signal are input. The contents of the registers are rearranged to be the data (same index) of the same encoder. That is, the data order stored in the register is changed only for one clock after all of the segment sync signals are input. Otherwise, the data is right-shifted and stored in the order of input.

이와 같이, 종래에는 12심볼 지연 레지스터의 내용을 재배열하여 세그먼트 동기 신호의 영향을 제거하기 위하여, 12개 레지스터의 입력 데이터를 선택전달하기 위한 멀티플렉서가 각각의 레지스터마다 연결되어 있었다. 그런데, 이와 같이 12개의 멀티플렉서를 이용하는 것은 설계 면적이 많이 드는 문제점이 있으므로, 같은 동작을 수행하면서도 면적을 적게 차지하는 회로를 구성할 필요가 있다.As described above, in order to remove the influence of the segment synchronization signal by rearranging the contents of the 12 symbol delay register, a multiplexer for selectively transferring input data of 12 registers has been connected to each register. However, since the use of 12 multiplexers has a problem in that the design area is large, it is necessary to configure a circuit which occupies a small area while performing the same operation.

이에 본 발명은 상기와 같은 문제점을 해결하기 위하여 안출된 것으로, 세그먼트 동기 신호의 영향을 제거하는 동시에 면적을 최소화시킨 트렐리스 코드 데이터의 생존 경로 저장 장치를 제공하는데 그 목적이 있다.Accordingly, an object of the present invention is to provide a survival path storage device of trellis code data which minimizes the area while removing the influence of the segment synchronization signal.

상기와 같은 목적을 달성하기 위한 본 발명의 장치는, M개의 트렐리스 인코더를 통해 M심볼 인트라세그먼트 인터리빙처리되어 트렐리스 부호화된 신호 스트림을 결정 벡터와 현재 스테이트를 이용하여 디코딩 깊이까지 역추적하여 복호화하는데 있어서, 상기 결정 벡터를 저장하여 12클럭마다 동일한 인코더에서 부호화된 결정 벡터를 역추적 프로세서로 병렬 출력하는 데이터 지연 처리부의 12심볼 지연 레지스터가 서로 직렬로 연결되어 있으면서 결정 벡터를 저장하는 M개의 레지스터, 및 카운트 제어신호(C832)에 따라 외부로부터의 입력 또는 M번째 레지스터의 출력을 선택하여 첫 번째 레지스터로 전달하는 멀티플렉서를 포함하여 구성되는 것을 특징으로 한다.The apparatus of the present invention for achieving the above object, the M symbol intrasegment interleaving process through the M trellis encoder to trace back the trellis coded signal stream to the decoding depth using the decision vector and the current state In decoding, the M vector for storing the decision vector and storing the decision vector while the 12 symbol delay registers of the data delay processing unit for parallel outputting the decision vector encoded by the same encoder every 12 clocks to the backtracking processor are serially connected to each other. And a multiplexer that selects an external input or an output of the Mth register according to the count control signal C832 and transfers the selected register to the first register.

도 1은 비터비 알고리즘을 적용한 일반적인 트렐리스 디코더의 구성도,1 is a block diagram of a general trellis decoder to which the Viterbi algorithm is applied;

도 2는 GA(Grand Alliance) HDTV(High Definition Television) 전송 시스템에서의 데이터 단위 프레임 구조도,2 is a diagram of a data unit frame structure in a GA (Grand Alliance) High Definition Television (HDTV) transmission system;

도 3은 생존 경로 저장 및 역추적을 수행하는 트렐리스 디코더의 생존 데이터 메모리 장치(SMU)에 대한 구성도,3 is a configuration diagram of a survival data memory device (SMU) of a trellis decoder that performs survival path storage and backtracking;

도 4는 도 3의 12심볼 지연 레지스터부에 대한 세부 구성도,4 is a detailed configuration diagram of a 12 symbol delay register unit of FIG. 3;

도 5는 본 발명에 따른 트렐리스 코드 데이터의 생존 경로 저장 장치의 12심볼 지연 레지스터부의 구성도이다.5 is a configuration diagram of a 12 symbol delay register unit of a survival path storage device of trellis code data according to the present invention.

*도면의 주요부분에 대한 부호의 설명* Explanation of symbols for main parts of drawing

30 : 데이터 지연 처리부 34 : 역추적 프로세서30: data delay processor 34: backtracking processor

31-1 : 제 1a 레지스터 32-1 : 제 1b 레지스터31-1: Register 1a 32-1: Register 1b

31-2∼31-15 : 제 2a∼15a 레지스터부 32-2∼32-14 : 제 2b∼14b 레지스터부31-2 to 31-15: 2a to 15a register section 32-2 to 32-14: 2b to 14b register section

51-1∼51-12 : 16비트 D플립플롭(레지스터) 52 : 2입력 멀티플렉서51-1 to 51-12: 16-bit D flip-flop (register) 52: 2-input multiplexer

이하, 첨부된 도면을 참조하여 본 발명에 따른 실시예에 대하여 자세히 살펴보기로 한다.Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings.

먼저, GA HDTV 송신기에서의 트렐리스 부호 인터리버를 통해 출력되는 부호 스트림을 세그먼트단위로 살펴보면 다음 표 1과 같이 나타낼 수 있다.First, a code stream output through a trellis code interleaver in a GA HDTV transmitter may be expressed as shown in Table 1 below.

세그먼트Segment 그룹 1Group 1 그룹 2Group 2 그룹 69Group 69 #1#One d1,d2, d3 … d12d1, d2, d3... d12 d1,d2, d3 … d12d1, d2, d3... d12 d1,d2, d3 … d12d1, d2, d3... d12 #2#2 d5,d6, d7 … d4d5, d6, d7... d4 d5,d6, d7 … d4d5, d6, d7... d4 d5,d6, d7 … d4d5, d6, d7... d4 #3# 3 d9,d10,d11… d8d9, d10, d11... d8 d9,d10,d11… d8d9, d10, d11... d8 d9,d10,d11… d8d9, d10, d11... d8

상기 표 1에서 각 그룹은 12 심볼 인트라세그먼트 인터리빙처리되므로 12심볼단위로 구분한 것이며, 각 데이터에 붙은 인덱스는 트렐리스 부호 블록의 인덱스와 동일하다. 즉, d1 은 제 1 트렐리스 부호블록(E1)으로부터 출력된 데이터이고, d2는 제 2 트렐리스 부호블록(E2)으로부터 출력된 데이터이다. 트렐리스 부호블록의 출력 데이터 스트림은 3 세그먼트 주기로 반복되어진다. 예를 들어, 제 1 세그먼트는 제 1 트렐리스 부호블록(E1)으로부터 출력된 데이터 d1를 시작으로하여 d2,d3,d4,… 순서대로 출력되고, 제 2 세그먼트는 제 5 트렐리스 부호블록(E5)으로부터 출력된 데이터 d5부터 d6, d7, d8, … 순서로 출력되고, 제 3 세그먼트는 제 9트렐리스 부호블록(E9)으로부터 출력된 데이터 d9, d10, d12, d1, … 순서로 출력된다. 이것은 세그먼트 동기신호(Segment Sync) 4심볼이 입력되는 동안에도 인터리버의 스위치가 동작하고 있기 때문이다. 따라서, 상기 표 1에 보인 데이터 스트림은 인덱스가 일치하는 트렐리스 디코더(Di)로 입력되어야만 한다. 즉, d1은 제 1 트렐리스 디코더(D1)에 유효한 데이터이고, d2는 제 2 트렐리스 디코더(D2)에 유효한 데이터이며, d3는 제 3 트렐리스 디코더(D3)에 유효한 데이터이다.In Table 1, each group is divided into 12 symbol units because 12 symbol intra-segment interleaving is performed. The index of each data is the same as the index of the trellis code block. That is, d1 is data output from the first trellis code block E1 and d2 is data output from the second trellis code block E2. The output data stream of the trellis code block is repeated in three segment periods. For example, the first segment includes d2, d3, d4,..., Starting with the data d1 output from the first trellis code block E1. The second segment is output in order, and the second segment is data d5 to d6, d7, d8,... Output from the fifth trellis code block E5. The third segments are output in order, and the third segments are outputted from the ninth trellis code block E9. The data d9, d10, d12, d1,... The output is in order. This is because the interleaver switch operates even while four symbols of the segment sync signal are input. Therefore, the data stream shown in Table 1 should be input to the trellis decoder Di having the same index. That is, d1 is valid data for the first trellis decoder D1, d2 is valid data for the second trellis decoder D2, and d3 is data valid for the third trellis decoder D3.

한편, 도 3에 도시된 트렐리스 디코더의 생존 데이터 메모리부(SMU)는 역추적 알고리즘(traceback algorithm)에 의해 하나의 최적 경로를 찾아낸 후, 최우복호된 심볼(maximum likelihood decoded symbol)을 출력으로 내보낸다. 즉, 상기 생존 데이터 메모리부(SMU)에서는 가산 선택 비교부(ACS)로부터 제공된 결정 벡터와 현재 스테이트를 이용하여 이전 스테이트를 계속해서 구하여 디코딩 깊이(decoding depth) 만큼 진행시킨 후, 최종 디코딩된 심볼 비트(X1X0)를 출력하는 것이다.On the other hand, the survival data memory unit (SMU) of the trellis decoder shown in FIG. 3 finds one optimal path by a traceback algorithm, and then outputs the maximum likelihood decoded symbol as an output. Export. That is, the survival data memory unit SMU continuously obtains the previous state by using the decision vector and the current state provided from the addition selection comparison unit ACS, proceeds the decoding depth, and then decodes the last decoded symbol bit. Will output (X1X0).

이를 위하여 생존 데이터 메모리부(SMU)는 디코딩 깊이만큼 생존 경로 정보를 유지해야 하는데, 데이터 지연 처리부(도 3의 30)가 이 역할을 수행하여 각 스테이트의 생존 경로의 결정 벡터(DVi)를 저장함과 동시에, 저장된 결정 벡터중 동일한 인덱스(i)를 갖는 결정 벡터들(DVi)을 역추적 프로세서(34)로 병렬 출력한다. 이때, 디코더에서 세그먼트 동기 신호가 입력된 직후에 입력된 데이터는 상기 표 1에서 보여준 바와 같이 3세그먼트 주기로 변하게 된다. 예를 들어 세그먼트 #0의 첫번째 데이터 d1(제 1 인코더(E1)로부터 출력)부터 마지막 데이터 d12(제 12 인코더(E12)로부터 출력)까지 전송된 후, 다음 세그먼트 #1의 첫번째 데이터는 d1(제 1 인코더(E1)의 출력)이 아닌 d5(제 5 인코더(E5)의 출력)가 된다. 즉, 입력된 데이터 순서대로 12 심볼씩 시프팅 시키게 되면, 동일한 부호기의 출력 데이터를 얻을 수 없다. 따라서, 12심볼 지연 레지스터부는 12클럭마다 동일한 인코더에서 부호화된 데이터(즉, 동일한 인덱스를 갖는 데이터)가 위치하도록 조정해주어야 한다.For this purpose, the survival data memory unit (SMU) must maintain the survival path information as much as the decoding depth, and the data delay processing unit (30 in FIG. 3) plays this role to store the decision vector (DVi) of each state's survival path. At the same time, the decision vectors DVi having the same index i among the stored decision vectors are output in parallel to the backtracking processor 34. At this time, the data input immediately after the segment synchronization signal is input at the decoder is changed into three segment periods as shown in Table 1 above. For example, after the first data d1 (output from the first encoder E1) of segment # 0 is transmitted from the last data d12 (output from the twelfth encoder E12), the first data of the next segment # 1 is d1 (the first data). D5 (the output of the fifth encoder E5), rather than the output of one encoder E1). That is, when shifted by 12 symbols in the input data order, output data of the same encoder cannot be obtained. Therefore, the 12-symbol delay register unit must adjust so that data encoded by the same encoder (that is, data having the same index) is located every 12 clocks.

도 5는 본 발명에 따른 트렐리스 코드 데이터의 생존 경로 저장 장치의 12심볼 지연 레지스터부의 구성을 도시한 블록도로서, 직렬로 연결된 12개의 레지스터(51-1∼51-12), 및 상기 제1 레지스터의 입출력 데이터를 선택하는 멀티플렉서(52)로 구성되어 있다. 상기 레지스터(51-1∼51-12)는 인에이블 신호(SENA)에 따라 인에이블되어 클럭(CLK)에 동기되어 동작하며, 상기 멀티플렉서(52)는 카운트 제어신호(C832)에 따라 외부로부터의 입력(OUT_0) 또는 제 12 레지스터(51-12)의 출력을 선택하여 제1 레지스터(51-1)로 전달한다.Fig. 5 is a block diagram showing the configuration of a 12 symbol delay register section of a survival path storage device of trellis code data according to the present invention. The multiplexer 52 selects input / output data of one register. The registers 51-1 to 51-12 are enabled according to the enable signal SENA to operate in synchronization with the clock CLK, and the multiplexer 52 is externally connected in accordance with the count control signal C832. The input OUT_0 or the output of the twelfth register 51-12 is selected and transferred to the first register 51-1.

상기 카운트 제어신호(C832)는 각 세그먼트가 시작될 때 카운팅을 시작하여 단위 세그먼트 길이 832 심볼을 카운팅한 수를 나타내는데, 각 세그먼트가 처음 시작되는 4클럭 동안은 세그먼트 동기 신호(segment sync)가 입력되는 클럭이고, 나머지 828 클럭 동안은 가산 비교 선택부(ACS)로부터 세그먼트의 결정 벡터(DVi)가 입력되는 클럭에 해당한다. 상기 카운트 제어신호(C832)는 세그먼트 동기신호의 영향을 제거하기 위하여 4심볼의 세그먼트 동기신호가 12심볼 지연 레지스터로 입력되는 4클럭동안 '하이'상태가 되며, 상기 레지스터 인에이블 신호(SENA)는 4심볼의 세그먼트 동기 신호를 포함한 단위 세그먼트 832 심볼 구간동안 '하이' 상태가 되어 상기 레지스터(51-1∼51-12)를 인에이블시킨다.The count control signal C832 indicates the number of counting symbols of the unit segment length 832 by starting counting at the beginning of each segment, and a clock in which a segment sync signal is input during the first four clocks of each segment. For the remaining 828 clocks, it corresponds to a clock to which the decision vector DVi of the segment is input from the addition comparison selecting unit ACS. The count control signal C832 becomes a 'high' state for 4 clocks in which the 4-bit segment sync signal is input to the 12-symbol delay register to remove the influence of the segment sync signal, and the register enable signal SENA is The registers 51-1 to 51-12 are enabled in a 'high' state during the unit segment 832 symbol period including the four-symbol segment synchronization signal.

따라서, 상기 레지스터(51-1∼51-12)는 각 세그먼트 832심볼의 모든 구간에서 인에이블되고, 세그먼트 동기신호를 제외한 828 클럭동안 상기 카운트 제어신호(C832)는 '로우'이므로 제1 레지스터(51-1)는 멀티플렉서(52)를 통해 외부로부터 입력(OUT_0)을 전달받아 세그먼트의 결정 벡터 스트림을 입력되어 들어오는 순서대로 차례로 시프팅하여 저장하고, 4클럭의 세그먼트 동기신호가 입력되는 구간동안에는 상기 카운트 제어신호(C832)가 '하이'이므로 제 12 레지스터(51-12)의 출력을 멀티플렉서(52)를 통해 제 1 레지스터(51-1)로 입력받아 레지스터의 내용을 4번 시프팅하여 저장한다.Accordingly, the registers 51-1 to 51-12 are enabled in all sections of each segment 832 symbol, and the count control signal C832 is 'low' during the 828 clock except for the segment synchronization signal. 51-1) receives the input (OUT_0) from the outside through the multiplexer 52, shifts and stores the decision vector stream of the segment in the order in which they are input, and during the interval of 4 clock segment synchronization signal input, Since the count control signal C832 is 'high', the output of the twelfth register 51-12 is input to the first register 51-1 through the multiplexer 52, and the contents of the register are shifted four times and stored. .

즉, 세그먼트 동기신호 구간동안 1심볼 지연 레지스터는 가산 비교 선택부(ACS)로부터 각 세그먼트의 동기신호(SYNC1∼SYNC4)를 입력받아 역추적 프로세서(도 3의 34)로 전달하며, 12심볼 지연 레지스터는 마지막 레지스터(51-12)가 전단에 연결된 레지스터로부터 시프트된 데이터를 멀티플렉서(52)를 통해 첫 번째 레지스터(51-1)로 전달하는 동시에 상기 역추적 프로세서(34)로 전달한다. 이때, 역추적 프로세서로 전달되는 데이터들은 유효한 데이터가 아니므로, 상기 역추적 프로세서는 동작을 하지 않아야 한다. 그리고, 세그먼트 동기신호 구간을 제외한 828클럭동안 세그먼트의 결정 벡터(DVi)를 입력받아 각 12심볼 지연 레지스터는 매 클럭마다 동일한 인덱스(i)를 갖는 결정 벡터(DVi)를 병렬로 출력하여 역추적 프로세서로 제공할수 있게 된다.That is, during the segment sync signal period, the 1-signal delay register receives the sync signals SYNC1 to SYNC4 of each segment from the add comparison selector ACS, and transfers them to the backtracking processor (34 in FIG. 3). Transmits the data shifted from the register to which the last register 51-12 is connected to the front end through the multiplexer 52 to the first register 51-1 and to the backtracking processor 34 at the same time. At this time, since the data transferred to the backtracking processor is not valid data, the backtracking processor should not operate. In addition, the 12-signal delay register outputs a decision vector (DVi) having the same index (i) in parallel for each clock and receives a decision vector (DVi) of the segment for 828 clocks except for the segment synchronization signal section. Can be provided.

이상에서 살펴본 바와 같이, 본 발명의 장치는 세그먼트 동기신호가 입력되는 4클럭 동안 마지막 레지스터의 출력을 첫 번째 레지스터에 저장하여 레지스터 내용을 4비트 시프트시킴으로써, 최소의 면적으로 세그먼트 동기신호의 영향을 제거할 수 있는 효과가 있다.As described above, the apparatus of the present invention stores the output of the last register in the first register during the four clocks in which the segment sync signal is input, thereby shifting the register contents by 4 bits, thereby eliminating the influence of the segment sync signal with the minimum area. It can work.

Claims (2)

M개의 트렐리스 인코더를 통해 M심볼 인트라세그먼트 인터리빙처리되어 트렐리스 부호화된 신호 스트림을 결정 벡터와 현재 스테이트를 이용하여 디코딩 깊이까지 역추적하여 복호화하는데 있어서,In the M symbol intrasegment interleaving process through M trellis encoders, the trellis coded signal stream is traced back to a decoding depth using a decision vector and a current state. 상기 결정 벡터를 저장하여 12클럭마다 동일한 인코더에서 부호화된 결정 벡터를 역추적 프로세서(34)로 병렬 출력하는 데이터 지연 처리부(30)의 12심볼 지연 레지스터가The 12 symbol delay register of the data delay processor 30 which stores the decision vector and outputs the decision vector encoded by the same encoder in parallel to the backtracking processor 34 every 12 clocks 서로 직렬로 연결되어 있으면서 결정 벡터를 저장하는 M개의 레지스터(51-1∼51-12); 및M registers 51-1 to 51-12, which are connected in series with each other and store decision vectors; And 카운트 제어신호(C832)에 따라 외부로부터의 입력 또는 M번째 레지스터(51-12)의 출력을 선택하여 첫 번째 레지스터(51-1)로 전달하는 멀티플렉서(52)를 포함하여 구성되는 것을 특징으로 하는 트렐리스 코드 데이터의 생존 경로 저장 장치.And a multiplexer 52 which selects an input from the outside or an output of the M th register 51-12 according to the count control signal C832 and transfers it to the first register 51-1. Survival path storage of trellis code data. 제 1 항에 있어서, 상기 카운트 제어신호(C382)는 세그먼트 동기 신호가 입력되는 구간에서 제 1 레벨을 갖고, 그 외 구간에서 제2 레벨을 갖는 것을 특징으로 하는 트렐리스 코드 데이터의 생존 경로 저장 장치.The survival path storage of trellis code data according to claim 1, wherein the count control signal C382 has a first level in a section in which a segment synchronization signal is input, and a second level in other sections. Device.
KR1019980002596A 1998-01-30 1998-01-30 Trellis code modulation KR100258234B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019980002596A KR100258234B1 (en) 1998-01-30 1998-01-30 Trellis code modulation

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019980002596A KR100258234B1 (en) 1998-01-30 1998-01-30 Trellis code modulation

Publications (2)

Publication Number Publication Date
KR19990066560A KR19990066560A (en) 1999-08-16
KR100258234B1 true KR100258234B1 (en) 2000-06-01

Family

ID=19532242

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019980002596A KR100258234B1 (en) 1998-01-30 1998-01-30 Trellis code modulation

Country Status (1)

Country Link
KR (1) KR100258234B1 (en)

Also Published As

Publication number Publication date
KR19990066560A (en) 1999-08-16

Similar Documents

Publication Publication Date Title
JP4113601B2 (en) System and method for processing a trellis encoded video input signal
US6088404A (en) Method and apparatus for decoding trellis code data
KR100212854B1 (en) Deinterleaving and output proccessing apparatus of trellis decoder
JP4208724B2 (en) HDTV trellis decoder architecture
KR100237490B1 (en) An apparatus for tracebacking survivor path of trellis code data
KR100744505B1 (en) Viterbi decoder
CA2212098C (en) Trellis decoder of a dtv
KR100258234B1 (en) Trellis code modulation
KR100249046B1 (en) Device for retrace in trellis decoder
KR100210405B1 (en) Method and apparatus for tracebacking survivor path of trellis-coded data
US8370726B2 (en) Soft output viterbi decoder architecture
KR100237491B1 (en) An apparatus of add-compare-select in a trellis code decoder
KR100273092B1 (en) Device for rearrangement of decoding data
KR100237489B1 (en) An apparatus for calculating branch matric in trellis code decoder
KR100236007B1 (en) Viterbi decoder and its method
KR101154954B1 (en) Apparatus and method for transmitting/receiving digital broadcasting signal
KR19980075613A (en) The path metric network device of the trellis decoder
KR19990035418A (en) A survival path reverse tracking device for trellis code data
KR19990035420A (en) Branch Metric Computing Device for Trellis Decoder
KR19980075618A (en) Additive comparison selection device of trellis decoder
KR19980019693A (en) Digital Transmission Signal Restoration Device
KR19990035419A (en) Additive comparison selection device of trellis decoder
KR19980072599A (en) Segment synchronous signal cancellation filter of trellis decoder
JP2008017503A (en) System and method for processing trellis encoding video data

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20110302

Year of fee payment: 12

LAPS Lapse due to unpaid annual fee