KR19980072600A - Branch metric and pathmetric calculation methods in the trellis decoder - Google Patents

Branch metric and pathmetric calculation methods in the trellis decoder Download PDF

Info

Publication number
KR19980072600A
KR19980072600A KR1019970007504A KR19970007504A KR19980072600A KR 19980072600 A KR19980072600 A KR 19980072600A KR 1019970007504 A KR1019970007504 A KR 1019970007504A KR 19970007504 A KR19970007504 A KR 19970007504A KR 19980072600 A KR19980072600 A KR 19980072600A
Authority
KR
South Korea
Prior art keywords
metric
branch
metrics
path
state
Prior art date
Application number
KR1019970007504A
Other languages
Korean (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 KR1019970007504A priority Critical patent/KR19980072600A/en
Publication of KR19980072600A publication Critical patent/KR19980072600A/en

Links

Landscapes

  • Error Detection And Correction (AREA)

Abstract

본 발명은 트렐리스 디코더(TCM decoder)에 관한 것으로, 특히, 브랜치 메트릭 계산량을 최소화하도록 한 브랜치 메트릭 계산 및 경로 메트릭 계산 방법 및 그 장치에 관한 것으로서, 본 발명의 방법은 수신 신호와 모든 기준값들과의 차를 계산하여, 임의의 수신 신호에 대한 모든 브랜치 메트릭을 구하는 단계와, 상기 브랜치 메트릭중에서 현재 스테이트에 해당하는 브랜치 메트릭만을 선택하는 단계 및 상기 다수개의 선택된 브랜치를 포함하여 생성된 새로운 경로를 비교하여 가장 작은 메트릭 크기를 갖는 경로를 생존 경로 메트릭으로 결정하는 단계로 구성되며, 상기 방법을 적용한 본 발명의 장치는 임의의 m-레벨 수신 신호와 모든 기준값들과의 차를 각각 계산하여 모든 브랜치 메트릭(BM1,t∼BMm,t)을 출력하는 브랜치 메트릭 계산부와, 시간에 따라 각 단의 이전 스테이트까지 진행된 경로 메트릭(PM0,t-1∼PMm,t-1)을 저장하고 있는 경로 메트릭 네트워크 및 자신의 스테이트에 해당하는 브랜치 메트릭들과, 이전 경로 메트릭들을 제공받아 생존 경로 메트릭(SM0∼SMm)으로 결정하는 가산 비교 선택부를 포함하여 구성되어 진다. 본 발명의 효과는 하나의 브랜치 메트릭 계산부에서 각 스테이트에서 발생가능 한 모든 브랜치 메트릭을 한 번씩만 계산하므로써, 최소한의 하드웨어로 브랜치 메트릭을 계산하여 비용 및 면적 이득을 얻는 효과가 있다.The present invention relates to a trellis decoder, and more particularly, to a method and apparatus for calculating a branch metric and a path metric for minimizing the amount of branch metric calculations. The method of the present invention relates to a received signal and all reference values. Calculating all the branch metrics for any received signal, selecting only the branch metrics corresponding to the current state among the branch metrics, and generating a new path including the plurality of selected branches. And comparing the path having the smallest metric size as a survival path metric, wherein the apparatus of the present invention applies all branches by calculating the difference between any m-level received signal and all reference values, respectively. Branch metric calculation unit for outputting the metric (BM1, t to BMm, t), and each according to the time The route metric network that stores the route metrics (PM0, t-1 to PMm, t-1) advanced to the previous state of the stage, branch metrics corresponding to its own state, and the previous route metrics are provided to provide the survival route metrics ( It is comprised including the addition comparison selection part determined by SM0-SMm. The effect of the present invention is that one branch metric calculation unit calculates all the branch metrics that can be generated in each state only once, thereby obtaining the cost and area gain by calculating the branch metric with a minimum of hardware.

Description

트렐리스 디코더에서의 브랜치 메트릭 및 경로 메트릭 계산 방법 및 장치(A method of and an apparatus for calculating of branch metric and path metric in a Trellis Coded Modulation decoder)A method of and an apparatus for calculating of branch metric and path metric in a Trellis Coded Modulation decoder

본 발명은 트렐리스 부호화 변조(Trellis code modualtion)기법에 의해 전송된 신호를 복호화시키는 트렐리스 디코더(TCM decoder)에 관한 것으로, 더욱 상세하게는 브랜치 메트릭 계산량을 최소화하여 하드웨어 및 면적면에서 이득을 얻도록 한 브랜치 메트릭 계산 및 경로 메트릭 계산 방법 및 그 장치에 관한 것이다.The present invention relates to a trellis decoder (TCM decoder) for decoding a signal transmitted by a trellis code modulation method, and more particularly, in terms of hardware and area by minimizing the branch metric calculation amount. A branch metric calculation and path metric calculation method and apparatus for obtaining the same.

일반적으로, 트렐리스 부호화 변조(Trellis code modualtion: 이하 TCM이라 함)기법은 대역폭이 제한된 전송로(bandwidth-limited channel)에서 높은 부호화 이득(coding gain)을 얻기 위한 채널 부호화 기법으로서, 부호화 기술과 변조 기술을 결합하여 구현된다. TCM은 대역폭을 변화시키지 않고서도 부호화되지 않은 기존의 변조기법에 비해 전력상의 상당한 이득을 얻을 수 있으며, TCM 구조는 유한한 상태를 갖는 부호기(encoder)와 비이진 변조기(non-binary modulator)로 구성되어진다. 수신기 측에서, 노이즈가 섞인 수신 신호는 연판정(soft-decision)에 의한 최대 근사 복호(maximum likelihood decoding)를 수행하는 디코더를 이용하여 복호화된다. 이러한 TCM은 부호화되지 않은 변조기법과 비교하여 백색 가우시안 잡음이 있는 디지털 신호 전송 환경에서 3∼6㏈ 이상의 전력상 이득을 얻을 수 있다고 알려져 있다. 특히, TCM의 장점은 이러한 전력상의 이득이 대역폭의 확장이나 다른 에러 정정 부호의 경우처럼 유효 정보율를 감소시키므로써 얻어지는 것이 아니라는 데 있다. 여기서 트렐리스(trellis)라는 용어는 이진 길쌈 부호(convoultion)의 상태도인 트렐리스 다이어그램과 비슷한 상태를 갖는 상태 천이도에 의해 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 modulation techniques. 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. It is done. At the receiver side, the noisy received signal is decoded using a decoder that performs maximum likelihood decoding by soft-decision. Compared with the uncoded modulation method, the TCM is known to obtain a power gain of 3 to 6 dB or more in a digital signal transmission environment with white Gaussian noise. In particular, the advantage of TCM is that this power gain is not obtained by reducing the effective information rate as in the case of bandwidth expansion or other error correction codes. 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 TCM extends the convolutional codeword into a signal set having an arbitrary size by non-binary modulation.

TCM이 갖는 이러한 부호화의 이득 때문에 수신 데이터 검출의 복잡성에도 불고하고 현재 많이 이용되고 있으며, 그 이용 범위가 크게 늘어나고 있다. 그 이용분야의 하나로 고화질 TV(High Definition television : HDTV)의 전송 시스템을 들 수 있다.Due to the gain of the encoding of the TCM, the complexity of the received data detection is widely used, and the range of use thereof is greatly increased. One application field is a transmission system for high definition television (HDTV).

한편, 데이터의 신뢰성을 높이기 위해 서로 다른 두개의 부호기를 연결시켜 연속적으로 부호화를 수행하는 연결(연속) 부호화(concatenated coding) 기법에 있어서, 내부 부호어(inner coder)는 부호화된 변조 부호를 생성하는 잘 알려진 길쌈 부호나 TCM 부호어가 사용되고 있으며, 비터비 알고리즘을 적용한 디코더로 복호화를 수행하게 된다. 외부 부호어(outer coder)는 T개의 에러 정정 능력을 갖는 리드 솔로몬 부호어(Reed-Solomon code)를 들 수 있다. 외부 디코더에서는 내부 디코더에서 정정하지 못한 에러를 다시 정정하여 통상적으로 에러 레이트(error rate)가 거의 0이 되도록 에러를 제거한다. 이러한 연결 코딩 기법은 하나의 코딩 기법을 사용하는 것보다 하드웨어적으로 덜 복잡하면서도 좋은 성능을 구현할 수 있는 장점을 가지고 있다.On the other hand, in a concatenated coding technique in which two different coders are continuously connected to each other to improve the reliability of data, an inner coder generates an encoded modulation code. Well-known convolutional codes or TCM codewords are used, and decoding is performed by a decoder using the Viterbi algorithm. The outer coder may be a Reed-Solomon code having T error correction capabilities. The external decoder typically corrects the errors that the internal decoder did not correct to remove the error so that the error rate is nearly zero. This concatenation coding technique has the advantage of being able to implement good performance while being less complex in hardware than using one coding technique.

TCM 신호의 복호를 위해서는 비터비(Viterbi) 알고리즘이 사용되는데, 비터비 알고리즘은 이미 언급한 최대 근사 복호(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. to be. This algorithm allows only one survivor path to exist in a state by comparing the similarity between the paths input to each state and the received signal. This process is repeated at each stage of the trellis diagram over time. Therefore, the amount of computation required by the Viterbi algorithm is not dependent on the length of the transmission code string but depends on the state number.

이어서, 도 1은 비터비 알고리즘을 적용한 트렐리스 디코더의 구성도로서, 트렐리스 디코더는 브랜치 메트릭 계산부(branch metric calculation unit(BMC):11)와, 가산 비교 선택부(add compare selection unit(ACS):12), 경로 메트릭 네트워크(path metric network(PMN):13) 및 생존자 메모리부(survivor memory unit(SMU):14)로 구성되어 있다. 여기서 메트릭(metric)이란, 수신 신호와 대응하는 브랜치에서의 코드간 거리를 계산한 값으로서, 이 거리가 신호 판별의 기준이 되는 것이다. 메트릭은 경판정(hard-decision) 복호의 경우에는 해밍 거리(Hamming distance)가 되고, 연판정(soft-decision)의 경우에는 유클리드 거리(Euclidean distance)가 된다.1 is a configuration diagram of a trellis decoder to which the Viterbi algorithm is applied. The trellis decoder includes a branch metric calculation unit (BMC) 11 and an add compare selection unit. (ACS): 12), path metric network (PMN): 13, and survivor memory unit (SMU): 14. Here, a metric is a value obtained by calculating the distance between codes in a branch corresponding to a received signal, and this distance serves as a reference for signal discrimination. The metric is the Hamming distance for hard-decision decoding and the Euclidean distance for soft-decision.

상기 브랜치 메트릭 계산부(BMC:11)는 수신 심볼을 입력받아 트렐리스 도를 이용하여 각 스테이트를 지나는 경로와 수신 심볼 사이의 거리를 계산하고, 그 결과 인 브랜치 메트릭(BMt)을 상기 가산 비교 선택부(ACS:12)로 제공한다.The branch metric calculation unit (BMC) 11 receives a received symbol and calculates a distance between a path passing through each state and a received symbol by using a trellis diagram, and compares the branch metric BMt with the result. Provided to the selection unit (ACS) 12.

상기 가산 비교 선택부(ACS:12)는 매 시간 t의 각 스테이트에 입력되는 경로 중에서 최소 경로 메트릭을 갖는 경로를 선택하는 역할을 하는 것으로서, 상기 브랜치 메트릭 계산부(BMC:11)로부터 제공된 다수개의 브랜치 메트릭(BMt)과 상기 경로 메트릭 네트워크(PMN:13)로부터 제공된 이전 경로 메트릭(PMt-1)을 더하여 가산하고,(이전 경로 메트릭에다가 현재 스테이트에서 머지된 다수개의 브랜치 메트릭을 축척시킴) 현재 스테이지에서의 축적된 다수개의 경로 메트릭을 비교하여, 그 중에서 가장 작은 값을 갖는 경로 메트릭을 선택한다. 이렇게 선택된 경로 메트릭을 생존 경로 메트릭이라 하며, 상기 경로 메트릭 네트워크(PMN:13)로 제공된다. 그리고, 상기 생존 경로를 트레이스백 알고리즘에 따라 역추적하여 복원 심볼을 찾아내기 정보가 상기 생존자 메모리부(SMU:14)로 제공된다.The addition comparison selection unit (ACS) 12 serves to select a path having a minimum path metric among the paths input to each state at each time t, and includes a plurality of branch metric calculation units (BMC) 11 provided. Adds a branch metric (BMt) and a previous route metric (PMt-1) provided from the route metric network (PMN) 13 (scaling a number of branch metrics merged in the current state to the previous route metric) Comparing a plurality of accumulated path metrics in, selects the path metric having the smallest value among them. The selected route metric is called a surviving route metric and is provided to the route metric network (PMN) 13. In addition, the survivor memory unit (SMU) 14 provides information on finding the reconstructed symbol by backtracking the survival path according to a traceback algorithm.

상기 경로 메트릭 네트워크(PMN:13)는 상기 가산 비교 선택부(ACS:12)로부터 출력된 생존자 메트릭을 입력 받아 저장하고 있다가 다음 단계에서 각 스테이트의 이전 경로 메트릭으로 사용되도록 다시 상기 가산 비교 선택부(ACS:12)에게 제공해주는 역할을 한다.The path metric network (PMN) 13 receives and stores survivor metrics output from the addition comparison selection unit (ACS) 12, and then adds the comparison comparison selection unit to be used as a previous path metric of each state in a next step. (ACS: 12) to provide a role.

상기 생존자 메모리부(SMU:14)는 각 스테이트가 갖는 생존 경로를 역추적하여 복원 심볼을 수행하기 위해서 디코딩 깊이(decoding depth) 만큼 생존 경로 정보를 유지하고 있으면서, 트레이스백 알고리즘에 따라 최종 복원된 심볼을 출력한다.The survivor memory unit 14 maintains the survival path information as much as the decoding depth in order to trace back the survival path of each state and perform the recovery symbol, and finally the symbol reconstructed according to a traceback algorithm. Outputs

이러한 구조를 갖는 종래의 트렐리스 디코더에서 브랜치 메트릭 계산부(BMC:11)나 가산 비교 선택부(ACS:12)는 트렐리스 부호가 갖는 스테이트 수에 따라 하드웨어 양이나 계산량이 증가된다. 종래에는 각 스테이트마다 브랜치 메트릭 계산부와 가산 비교 선택부를 하나씩 가지고 있으면서, 각 스테이트에서 필요한 메트릭만을 따로 따로 계산하였기 때문이다.In the conventional trellis decoder having such a structure, the branch metric calculation unit (BMC) 11 or the addition comparison selection unit (ACS) 12 increases the amount of hardware or the amount of calculation according to the number of states of the trellis code. This is because conventionally, each state has one branch metric calculation unit and one addition comparison selection unit, and separately calculates only the metrics necessary for each state.

예를 들어 16스테이트 TCM 디코더의 브랜치 메트릭에서 트렐리스 도를 조사해보면 한 스테이트마다 4개의 브랜치 메트릭을 갖게 되므로, 총 64개(16×4)의 브랜치 메트릭을 계산해야 하고, 이를 위해 64개의 가산기를 이용하여 덧셈 연산하고, 64번의 절대치 계산을 수행해야 한다.For example, if you examine the trellis in the branch metric of a 16-state TCM decoder, you will have four branch metrics for each state, so you need to calculate a total of 64 (16 × 4) branch metrics. Add operation using, and must perform 64 absolute calculations.

여기서, 이전 스테이트와 현재 스테이트간의 브랜치 메트릭은 NTSC간섭 제거 필터로부터 출력된 입력 신호와 기준값과의 차를 계산한 값으로서, 만약 정확한 경로의 브랜치인 경우에는 브랜치 메트릭은 정확히 0값이 되지만, 통상적인 통신환경에서는 잡음의 영향으로 브랜치 메트릭은 0에 가까운 값을 가지게 된다. 즉, 디코더로 입력되는 데이터는 부호 심볼에 잡음이 섞여진 채로 들어오고, 부호심볼의 기준값과의 차이를 계산하여 브랜치 메트릭으로 정하고, 이 메트릭을 비교하여 원래 신호에 가장 가까운 신호를 복호해 내는 것이다.Here, the branch metric between the previous state and the current state is a value calculated from the difference between the input signal output from the NTSC interference cancellation filter and the reference value. If the branch of the correct path is the branch metric is exactly 0, In the communication environment, the branch metric has a value close to zero due to the influence of noise. That is, the data input to the decoder enters with the noise mixed in the code symbol, calculates the difference from the reference value of the code symbol, sets it as a branch metric, and compares this metric to decode the signal closest to the original signal. .

그러나, 각 스테이트의 브랜치마다 기준값은 항상 정해져 있기 때문에, 각 스테이트가 갖는 브랜치 메트릭을 조사해보면 동일한 값(메트릭)을 갖는 브랜치들이 존재하고 있음을 알 수 있다.However, since the reference value is always determined for each branch of each state, the branch metrics of each state can be examined to show that there are branches having the same value (metric).

이와 같이, 종래의 TCM 디코더는 각 스테이트별로 브랜치 메트릭 계산부와 가산 비교 선택부를 따로 따로 구현함으로 인해 동일한 브랜치 메트릭(BM)을 중복해서 계산하는 비효율을 초래하는 문제점이 있었다. 또한, 각각의 브랜치 메트릭을 계산하는 상당량의 하드웨어로 인해 비용 및 면적이 증가되는 문제점도 있었다.As described above, the conventional TCM decoder has a problem of inefficiency of repeatedly calculating the same branch metric BM by separately implementing the branch metric calculation unit and the addition comparison selection unit for each state. There was also a problem of increased cost and area due to the significant amount of hardware computing each branch metric.

이에, 본 발명은 상기와 같은 제 문제점을 해결하기 위하여 안출된 것으로서, 본 발명은 각 스테이트마다 브랜치 메트릭 계산부와 가산 비교 선택부를 따로따로 구현하지 않고, 하나의 브랜치 메트릭 계산부에서 모든 기준값들에 대한 브랜치 메트릭을 미리 계산하여 가산 비교 선택부로 제공해주고, 가산 비교 선택부에서는 각 스테이트에 해당하는 브랜치 메트릭만을 선택적으로 이용하는 브렌치 메트릭 및 경로 메트릭 계산 방법 및 장치를 제공하는 데 그 목적이 있다.Accordingly, the present invention has been made to solve the above-described problems, and the present invention does not implement a branch metric calculation unit and an addition comparison selection unit separately for each state, and applies all the reference values in one branch metric calculation unit. It is an object of the present invention to provide a branch metric and a route metric calculation method and apparatus which selectively calculates a branch metric for a pre-calculated branch metric and adds it to an add comparison selector.

상기와 같은 목적을 달성하기 위한 본 발명의 방법은 트렐리스 부호화 되어 전송된 잡음 섞인 신호를 수신받아 모든 기준값들과의 차를 계산하여 그 결과값인 임의의 수신 신호에 대한 모든 브랜치 메트릭을 구하는 단계와, 상기 임의의 수신 신호에 대한 모든 브랜치 메트릭중에서 현재 스테이트에 해당하는 브랜치 메트릭만을 선택하는 단계 및, 상기 다수개의 선택된 브랜치를 포함하여 각각 새로운 경로들을 이루고, 상기 다수개의 경로 메트릭을 서로 비교하여 가장 작은 메트릭 크기를 갖는 경로를 생존 경로 메트릭으로 결정하는 단계를 포함하여 구성되는 것을 특징으로 한다.In order to achieve the above object, the method of the present invention receives a trellis coded noise-transmitted signal and calculates a difference from all reference values to obtain all branch metrics for any received signal as a result. Selecting only a branch metric corresponding to a current state among all branch metrics for the received signal, forming new paths each including the plurality of selected branches, and comparing the plurality of path metrics with each other. Determining the path having the smallest metric size as the survival path metric.

상기와 같은 목적을 달성하기 위한 본 발명의 장치는 트렐리스 부호화 되어 전송된 잡음 섞인 신호를 수신받아, 임의의 m-레벨 수신 신호와 모든 기준값들과의 차를 각각 계산하여 모든 브랜치 메트릭(BM1,t∼BMm,t)을 출력하는 브랜치 메트릭 계산부와, 시간에 따라 각 단의 이전 스테이트까지 진행된 경로 메트릭(PM0,t-1∼PMm,t-1)을 저장하고 있는 경로 메트릭 네트워크 및, 상기 브랜치 메트릭 계산부로부터 제공된 브랜치 메트릭중에서 임의의 스테이트에 해당하는 브랜치 메트릭들과 상기 경로 메트릭 네트워크로부터 제공된 경로 메트릭중에서 임의의 스테이트에 해당하는 이전 경로 메트릭들을 이용하여, 이전 경로 메트릭과 브랜치 메트릭을 각각 더하여 현재 스테이트까지의 다수개의 새로운 경로 메트릭들을 구함과 동시에, 상기 다수개의 새로운 경로 메트릭들을 서로 비교하여 가장 작은 메트릭을 갖는 경로를 생존 경로 메트릭(SM0∼SMm)으로 결정하는 가산 비교 선택부를 포함하여 구성되는 것을 특징으로 한다.In order to achieve the above object, the apparatus of the present invention receives a trellis-coded noise-mixed signal, calculates a difference between an arbitrary m-level received signal and all reference values, and calculates all branch metrics (BM1). a branch metric calculation unit for outputting t to BMm, t, a route metric network for storing route metrics (PM0, t-1 to PMm, t-1) advanced to the previous state of each stage over time; Using the branch metrics corresponding to any state among the branch metrics provided from the branch metric calculation unit and the previous route metrics corresponding to any state among the route metrics provided from the route metric network, the previous route metric and the branch metric are respectively used. In addition, while obtaining a plurality of new route metrics to the current state, the plurality of new routes That comprise the path metrics are compared with each other with the smallest metric addition comparison selection to determine the survivor path metrics (SM0~SMm) portion characterized.

상기와 같은 메트릭 계산 방법 및 장치는 종래의 브랜치 메트릭을 스테이트별로 따로따로 계산하므로 인해 동일한 메트릭을 중복해서 계산하는 비효율성을 초래하였던 것에 반해, 본 발명은 각 스테이트에서 발생가능 한 모든 브랜치 메트릭 혹은 경로 메트릭을 한 번씩만 계산하여 각 스테이트에서 필요한 메트릭만을 선별하여 사용하므로써 최소의 하드웨어로 구현할 수 있는 것이다.Whereas the above metric calculation method and apparatus caused the conventional branch metric to be calculated separately for each state, this resulted in the inefficiency of repeatedly calculating the same metric, while the present invention provides all branch metrics or paths that can occur in each state. By calculating the metric only once and using only the metric required for each state, it can be implemented with the minimum hardware.

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

도 2는 GA HDTV 송신 시스템에서의 데이터를 트렐리스 부호화하여 8레벨 심볼로 매핑시키는 장치에 대한 구성도,2 is a block diagram of an apparatus for trellis-coding data in an GA HDTV transmission system and mapping the data into 8-level symbols;

도 3은 GA HDTV 수신 시스템에서의 트렐리스 디코더에 대한 구성도,3 is a configuration diagram of a trellis decoder in a GA HDTV receiving system;

도 4는 본 발명에 따른 브랜치 메트릭 계산부에 대한 구성도,4 is a block diagram of a branch metric calculation unit according to the present invention;

도 5는 본 발명에 따른 가산 비교 선택부에 대한 구성도,5 is a block diagram of an addition comparison selection unit according to the present invention;

도 6은 도 5의 프로세싱 엘리먼트에 대한 세부 구성도이다.FIG. 6 is a detailed configuration diagram of the processing element of FIG. 5.

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

40-2∼40-15 : 가산기 41-1∼41-15 : 절대치 계산기40-2-40-15: Adder 41-1-41-15: Absolute value calculator

51 : 오버플로 제어부 MUX : 멀티플렉서51: overflow control MUX: multiplexer

PE : 프로세싱 엘리먼트 61-1∼61-8 : 멀티플렉서PE: processing elements 61-1 to 61-8: multiplexer

62-1∼62-4 : 가산기 63-1∼63-3 : 비교 선택기62-1 to 62-4: Adder 63-1 to 63-3: Comparative selector

BM : 브랜치 메트릭 PM : 경로 메트릭BM: Branch Metric PM: Route Metric

SM : 생존 경로 메트릭 X1,X0 : 입력 비트SM: Survival Path Metric X1, X0: Input Bits

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

본 명세서에서는 미국내 고화질 텔레비젼(high definition televison : HDTV) 규격을 제정하기 위해 결성된 Grand Alliance(GA)에서 제안된 GA HDTV 수신 시스템에서 채용하고 있는 트렐리스 디코더를 예로하여 본 발명의 실시예를 설명하고자 한다.In the present specification, an embodiment of the present invention will be described by taking a trellis decoder employed in the GA HDTV reception system proposed by the Grand Alliance (GA), which was formed to establish a high definition televison (HDTV) standard in the United States. I will explain.

우선, GA HDTV에서는 트렐리스 부호화된 신호를 8레벨 잔류 측파대(VSB)변조하여 전송하고, 이를 수신한 수신측에서는 NTSC 간섭 제거 필터의 사용 유무에 따라 2개의 디코딩 경로를 갖게 된다. 즉, 수신 심볼을 복원하는 데 있어서, NTSC 간섭 제거 필터를 사용하지 않으면 8레벨 신호를 수신하여 8스테이트 모드 복호를 하는 가우시안 채널용 최적 트렐리스 디코더를 사용하면 되고, 만일, NTSC 간섭 제거 필터를 통과한 신호는 필터의 특성상 입력 레벨이 8레벨에서 15레벨로 변환되므로 16스테이트 모드 복호를 하는 부분 응답 채널용 트렐리스 디코더를 사용해야 한다.First, 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. That is, in recovering the received symbol, if the NTSC interference cancellation filter is not used, an optimal trellis decoder for the Gaussian channel that receives 8-level signals and performs 8-state mode decoding may be used. Since the input signal is converted from 8 levels to 15 levels due to the characteristics of the filter, a trellis decoder for a partial response channel with 16 state mode decoding should be used.

여기서, 트렐리스 디코딩의 이해를 돕기위해 트렐리스 부호의 인코딩 과정을 살펴보면 다음과 같다.Here, look at the encoding process of the trellis code to help understand the trellis decoding.

도 2는 GA HDTV 송신 시스템에서의 데이터를 트렐리스 부호화하여 8레벨 심볼로 매핑시키는 장치에 대한 구성도로서, 트렐리스 부호 및 매핑 장치는 심볼 단위(2비트씩:X1,X0)로 데이터를 입력받아 최종 매핑된 8레벨 심볼(R)을 출력하는 프리 코더(Pre_coder:20)와, 트렐리스 인코더(Trellis Encoder:22) 및, 8레벨 심볼 매퍼(8-level symbol mapper:24)로 구성되어 있다.FIG. 2 is a block diagram of an apparatus for trellis-coding data in a GA HDTV transmission system and mapping them into 8-level symbols. The trellis code and the mapping apparatus are data in symbol units (2 bits: X1, X0). To a pre-coder (20), a trellis encoder (22), and an 8-level symbol mapper (24) to output the final mapped 8-level symbol (R). Consists of.

상기 프리 코더(20)는 입력 비트(X1)를 제 1 배타논리합 게이트(20-1)로 입력받고 제 1 D플립플롭(20-2)으로부터 12심볼 지연된 이전 비트를 배타 논리합 하여 중간 출력 비트(Y1)를 발생시키며, 상기 중간 출력 비트(Y1)은 변하지 않고 그대로 상기 8레벨 심볼 매퍼(24)의 입력 비트(Z2)에 해당한다.The precoder 20 receives the input bit X1 through the first exclusive logic gate 20-1 and exclusively ORs the previous bit delayed by 12 symbols from the first D flip-flop 20-2. Y1), and the intermediate output bit Y1 does not change and corresponds to the input bit Z2 of the eight-level symbol mapper 24 as it is.

상기 트렐리스 인코더(22)에서는 입력 비트(X0)을 입력받아 그대로 중간 출력 비트(Y0)로 되고, 상기 8레벨 심볼 매퍼(14)의 입력 비트(Z1)로 발생시킨다. 이와 동시에, 상기 중간 비트(Y1)와 제 2 D플립플롭(22-1)으로부터 12 심볼 지연된 이전비트는 제 2 배타 논리합 게이트(22-2)를 통해서 배타 논리합 되어 제 3 D플립플롭(22-3)으로 출력된다. 상기 제 3 D플립플롭(22-3) 역시 데이터를 12심볼 지연시켜 다시 제 2 D플립플롭(22-1)으로 피드백 입력함과 동시에, 상기 8레벨 심볼 매퍼(24)의 입력 비트(Z0)로 발생시킨다.The trellis encoder 22 receives the input bit X0 and becomes the intermediate output bit Y0 as it is, and generates the input bit Z0 as the input bit Z1 of the eight-level symbol mapper 14. At the same time, the previous bit delayed 12 symbols from the intermediate bit Y1 and the second D flip-flop 22-1 is exclusive ORed through the second exclusive OR gate 22-2, and the third D flip flop 22-. 3) is output. The third D flip-flop 22-3 also delays data by 12 symbols and feeds back the second D flip-flop 22-1, and at the same time, the input bit Z0 of the eight-level symbol mapper 24 is input. To occur.

이제, 상기 8레벨 심볼 매퍼(14)에서는 출력된 3비트(Z2,Z1,Z0)에 따라 8레벨 심볼(R : -7,-5,-3,-1,-1,+3,+5,+7)로 변환시키고, 이렇게 변환된 심볼은 8레벨 VSB변조되어 전송되는 것이다.Now, in the eight-level symbol mapper 14, an eight-level symbol (R: -7, -5, -3, -1, -1, + 3, + 5) is output according to the output three bits (Z2, Z1, Z0). , +7), and the converted symbol is transmitted with 8-level VSB modulation.

이어서, 도 3은 GA HDTV 수신 시스템에서의 트렐리스 디코더에 대한 구성도로서, 트렐리스 디코더는 NTSC 간섭 제거 필터의 사용 유무에 따라 2종류의 디코더가 사용되고 있다. 최적 응답 디코더(35)는 8레벨로 전송된 수신 신호를 그대로 8 스테이트 디코딩을 수행한다. 그리고, 부분 응답 트렐리스 디코더(33)는 8 레벨로 전송된 신호가 NTSC 간섭 제거 필터(31)를 거치면서 12클럭 이전에 입력된 신호와 배타논리합 연산되어 NTSC 간섭 제거 필터의 출력 신호는 15레벨로 변환되어 16스테이트를 갖게 되므로 이에 적합한 16 스테이트 디코딩을 수행한다. NTSC 간섭 제거 필터의 출력 신호의 레벨은 -14, -12, -10, -8, -6, -4, -2, 0, +2, +4, +6, +8, +10, +12, +14 로 변환되며, 이들을 구분하기 위한 스테이트는 총 4비트(24=16 states)가 필요하다.3 is a configuration diagram of a trellis decoder in a GA HDTV reception system, in which two kinds of decoders are used depending on whether an NTSC interference cancellation filter is used. The optimum response decoder 35 performs 8 state decoding on the received signal transmitted at the 8th level. In addition, the partial response trellis decoder 33 performs an exclusive logic sum operation with a signal input 12 clocks ago while the signal transmitted at 8 levels passes through the NTSC interference cancellation filter 31, so that the output signal of the NTSC interference cancellation filter is 15. Since it is converted to a level and has 16 states, the appropriate 16 state decoding is performed. The level of the output signal of the NTSC interference cancellation filter is -14, -12, -10, -8, -6, -4, -2, 0, +2, +4, +6, +8, +10, +12 , +14, and the state to distinguish them requires a total of 4 bits (2 4 = 16 states).

상기 도 2와 도 3에 의한 입출력 신호에 따라 결정되는 이전 스테이트와 현재 스테이트를 하기 표 1에 나타내었다. 하기 표 1에서 보인 입력 비트(X1,X0)는 도 2의 트렐리스 인코더로 입력되는 심볼이고, 이전 스테이트와 현재 스테이트에서의 최상위 비트(MSB) S3',S3는 도 2에서 제 1 D플립플롭(20-2)의 상태이고, S2',S2는 제 2 D플립플롭(22-1)의 상태이며, S1',S1은 제 3 D플립플롭(22-3)의 상태이고, S0',S0은 도 3에서 지연 레지스터(31-1)의 가운데 비트의 상태이다. 그리고, 이전 출력(Z2',Z1',Z0')과 현재 출력(Z2,Z1,Z0)은 도 1의 심볼 매퍼로 입력되어 8레벨로 결정되는 비트이다.The previous state and the current state determined according to the input and output signals according to FIGS. 2 and 3 are shown in Table 1 below. The input bits X1 and X0 shown in Table 1 below are symbols input to the trellis encoder of FIG. 2, and the most significant bits MSBs S3 'and S3 in the previous state and the current state are the first D flips in FIG. Is in the state of the flop 20-2, S2 ', S2 is in the state of the second D flip flop 22-1, S1', S1 is in the state of the third D flip flop 22-3, and S0 '. , S0 is the state of the middle bit of the delay register 31-1 in FIG. The previous outputs Z2 ', Z1', Z0 'and the current outputs Z2, Z1, Z0 are bits that are input to the symbol mapper of FIG.

하기 표 1a 에서는 16스테이터중에서 현재 스테이트 0내지 7 스테이트에 대한 상황을 나타내었고, 하기 표 1b에서는 현재 스테이트 8내지 15스테이트에 대한 상황을 나타내었다.Table 1a shows the situation for the current state 0 to 7 state among the 16 states, and Table 1b shows the situation for the current state 8 to 15 states.

이전 스테이트(S3'S2'S1'S0')Previous state (S3'S2'S1'S0 ') 이전 출력(Z2'Z1'Z0')Previous output (Z2'Z1'Z0 ') 입력 비트( X1 X0 )Input bit (X1 X0) 현재 출력(Z2 Z1 Z0 )Current output (Z2 Z1 Z0) 채널심볼Channel symbol 현재스테이트 (S3S2S1S0)Current State (S3S2S1S0) 복호심볼Decryption symbol 00000001100010010000000110001001 000(-7)010(-3)100(+1)110(+5)000 (-7) 010 (-3) 100 (+1) 110 (+5) 0000101000001010 000(-7)000 (-7) 0-4-8-120-4-8-12 00000000 0000101000001010 01000101110011010100010111001101 001(-5)011(-1)101(+3)111(+7)001 (-5) 011 (-1) 101 (+3) 111 (+7) 0101111101011111 010(-3)010 (-3) +2-2-6-10+ 2-2-6-10 00010001 0101111101011111 01000101110011010100010111001101 001(-5)011(-1)101(+3)111(+7)001 (-5) 011 (-1) 101 (+3) 111 (+7) 0000101000001010 000(-7)000 (-7) -2-6-10-14-2-6-10-14 00100010 0000101000001010 00000001100010010000000110001001 000(-7)010(-3)100(+1)110(+5)000 (-7) 010 (-3) 100 (+1) 110 (+5) 0101111101011111 010(-3)010 (-3) +40-4-8+ 40-4-8 00110011 0101111101011111 00100011101010110010001110101011 000(-7)010(-3)100(+1)110(+5)000 (-7) 010 (-3) 100 (+1) 110 (+5) 0000101000001010 001(-5)001 (-5) +2-2-6-10+ 2-2-6-10 01000100 0000101000001010 01100111111011110110011111101111 001(-5)011(-1)101(+3)111(+7)001 (-5) 011 (-1) 101 (+3) 111 (+7) 0101111101011111 011(-1)011 (-1) +40-4-8+ 40-4-8 01010101 0101111101011111 01100111111011110110011111101111 001(-5)011(-1)101(+3)111(+7)001 (-5) 011 (-1) 101 (+3) 111 (+7) 0000101000001010 001(-5)001 (-5) 0-4-8-120-4-8-12 01100110 0000101000001010 00100011101010110010001110101011 000(-7)010(-3)100(+1)110(+5)000 (-7) 010 (-3) 100 (+1) 110 (+5) 0101111101011111 011(-1)011 (-1) +6+2-2-6+ 6 + 2-2-6 01110111 0101111101011111

이전 스테이트(S3'S2'S1'S0')Previous state (S3'S2'S1'S0 ') 이전 출력(Z2'Z1'Z0')Previous output (Z2'Z1'Z0 ') 입력 비트( X1 X0 )Input bit (X1 X0) 출력 비트( Z2Z1Z0 )Output bit (Z2Z1Z0) 채널심볼Channel symbol 현재스테이트(S3S2S1S0)Current state (S3S2S1S0) 복호 심볼Decryption symbol 00000001100010010000000110001001 000(-7)010(-3)100(+1)110(+5)000 (-7) 010 (-3) 100 (+1) 110 (+5) 1010000010100000 100(+1)100 (+1) +8+40-4+ 8 + 40-4 10001000 1010000010100000 01000101110011010100010111001101 001(-5)011(-1)101(+3)111(+7)001 (-5) 011 (-1) 101 (+3) 111 (+7) 1111010111110101 110(+5)110 (+5) +10+6+2-2+ 10 + 6 + 2-2 10011001 1111010111110101 01000101110011010100010111001101 001(-5)011(-1)101(+3)111(+7)001 (-5) 011 (-1) 101 (+3) 111 (+7) 1010000010100000 100(+1)100 (+1) +6+2-2-6+ 6 + 2-2-6 10101010 1010000010100000 00000001100010010000000110001001 000(-7)010(-3)100(+1)110(+5)000 (-7) 010 (-3) 100 (+1) 110 (+5) 1111010111110101 110(+5)110 (+5) +12+8-40+ 12 + 8-40 10111011 1111010111110101 00100011101010110010001110101011 000(-7)010(-3)100(+1)110(+5)000 (-7) 010 (-3) 100 (+1) 110 (+5) 1010000010100000 101(+3)101 (+3) +10+6+2-2+ 10 + 6 + 2-2 11001100 1010000010100000 01100111111011110110011111101111 001(-5)011(-1)101(+3)111(+7)001 (-5) 011 (-1) 101 (+3) 111 (+7) 1111010111110101 111(+7)111 (+7) +12+8+40+ 12 + 8 + 40 11011101 1111010111110101 01100111111011110110011111101111 001(-5)011(-1)101(+3)111(+7)001 (-5) 011 (-1) 101 (+3) 111 (+7) 1010000010100000 101(+3)101 (+3) +8+40-4+ 8 + 40-4 11101110 1010000010100000 00100011101010110010001110101011 000(-7)010(-3)100(+1)110(+5)000 (-7) 010 (-3) 100 (+1) 110 (+5) 1111010111110101 111(+7)111 (+7) +14+10+6+2+ 14 + 10 + 6 + 2 11111111 1111010111110101

상기 표 1에서 보는 바와 같이, 16개 스테이트로 트렐리스 도를 그려나가면 이전 스테이트에서 현재 스테이트로의 진행은 입력 비트에 따라 임의의 현재 스테이트는 4개의 브랜치를 가지게 된다. 즉, 현재 스테이트 S(0000)에서 브랜치는 이전 스테이트 S'(0000)에서 입력 비트가 X(00)으로 들어올 때, 이전 스테이트 S'(0001)에서 입력 비트가 X(00)으로 들어올 때, 이전 스테이트 S'(1000)에서 입력비트가 X(10)으로 들어올 때, 이전 스테이트 S'(1001)에서 입력 비트가 X(10)으로 들어올 때의 4가지 경우가 존재 한다. 채널 심볼은 현재 출력(Z)에서 이전 출력(Z')을 뺀 값에 해당하며, 이전 스테이트(S'), 채널 심볼, 현재 스테이트(S)을 이용하여 입력 심볼과 동일한 복호 심볼을 구하게 된다.As shown in Table 1, when the trellis diagram is drawn with 16 states, the progression from the previous state to the current state has four branches depending on the input bit. That is, in the current state S (0000), the branch is the previous state when the input bit enters X (00) in the previous state S '(0000), when the input bit enters the X (00) in the previous state S' (0001), When the input bit enters X (10) in state S '1000, there are four cases when the input bit enters X (10) in previous state S' 1001. The channel symbol corresponds to a value obtained by subtracting the previous output Z 'from the current output Z, and the same decoded symbol as the input symbol is obtained using the previous state S', the channel symbol, and the current state S.

상기 표에서 채널 심볼은 잡음이 없는 이상적인 통신 환경하에서 가능한 것으로, 실제 백색 가우시안 잡음이 존재하는 통신로를 통해 전송되어 들어온 신호는 잡음이 섞이게 된다. 따라서, 실제로 채널 심볼은 상기 표에 나타낸 값과 완전히 동일하지 않으며, 상기 표의 채널 심볼 값은 비터비 알고리즘을 적용하여 최대 근사 디코딩을 수행하는 데 있어서 수신 신호가 갖는 오차를 측정하는 기준값(reference value)이 된다. 즉, 트렐리스 다이어그램상에서 시간에 따른 각 단의 브랜치 메트릭을 계산하는 데 브랜치 메트릭은 ∥수신 신호 - 기준값 ∥이며, 메트릭 크기가 적을 수록 확률적으로 높음을 알수 있다.In the above table, the channel symbols are possible under an ideal communication environment without noise, and the signals transmitted through the communication path in which the actual white Gaussian noise exists are mixed with noise. Therefore, in practice, the channel symbols are not exactly the same as the values shown in the table above, and the channel symbol values in the table are reference values for measuring the error of the received signal in performing the maximum approximate decoding by applying the Viterbi algorithm. Becomes In other words, the branch metric of each stage over time is calculated on the trellis diagram. The branch metric is ∥received signal-reference value ∥, and the smaller the metric size, the higher the probability.

상기 부분 응답 트렐리스 디코더로 입력되는 수신 신호는 NTSC 간섭 제거 필터를 통과한 15레벨 신호에 잡음이 섞인 상태로 들어오고, 이 수신 신호와 15레벨 기준값(상기 표 1의 채널 심볼)간의 차이값이 이전 스테이트와 현재 스테이트의 브랜치 메트릭에 해당한다. 상기 표 1에서 보는 바와 같이, 각 스테이트에서는 4가지의 브랜치를 갖고 있으며, 각 브랜치에 대한 메트릭은 잡음 섞인 수신 신호와 상기 기준값(채널 심볼)의 차이값으로 구해지며, 4개 브랜치 메트릭과 이전 스테이트 까지의 4개 이전 경로 메트릭과 각각 더하여 새로운 4개의 경로 메트릭 중에서 가장 적은 메트릭(오차가 가장 적은 경로)을 생존 경로로 간주하여 저장하고, 나머지는 버리게 된다.The received signal input to the partial response trellis decoder enters a state in which noise is mixed with the 15-level signal passing through the NTSC interference cancellation filter, and a difference value between the received signal and the 15-level reference value (channel symbol of Table 1). This corresponds to the branch metric of this previous state and the current state. As shown in Table 1, each state has four branches, and the metric for each branch is obtained as the difference between the noisy received signal and the reference value (channel symbol), and the four branch metrics and the previous state. In addition to the four previous path metrics up to, each of the new four path metrics, the least metric (the path with the least error), is considered as a survival path, and the rest are discarded.

여기서, 종래의 트렐리스 디코더에서는 4개의 브랜치 메트릭을 계산하는 브랜치 메트릭 계산부와 4개의 새로운 경로를 비교하여 생존 경로를 결정하는 가산 비교 선택부를 각 스테이트마다 따로 따로 구현하였다. 즉, 16스테이트 마다 4개의 브랜치 및 경로 메트릭을 개별적으로 계산하였기 때문에 64개의 브랜치 메트릭 및 경로 메트릭을 계산하기 위한 상당한 하드웨어가 소요되었다.Here, in the conventional trellis decoder, a branch metric calculation unit for calculating four branch metrics and an addition comparison selection unit for determining a survival path by comparing four new paths are separately implemented for each state. That is, since four branch and path metrics were calculated for every 16 states, significant hardware was required to calculate the 64 branch metrics and path metrics.

그러나, 표 1에서 보는 바와 같이, 서로 다른 15레벨 기준값에 대응하는 브랜치 메트릭값은 모두 15개 뿐이기 때문에, 종래에는 동일한 브랜치 메트릭을 중복해서 구하는 낭비가 있었다.However, as shown in Table 1, since there are only 15 branch metric values corresponding to different 15-level reference values, there is a waste of conventionally obtaining the same branch metric.

따라서, 본 발명은 브랜치 메트릭이나 경로 메트릭을 스테이트 별로 계산하지 않고, 임의의 수신 신호에 대한 발생가능한 모든 브랜치 메트릭을 한번씩만 계산하여, 스테이트에서 필요한 메트릭을 각각 제공해주도록 하는 것이다. 즉, 브랜치 메트릭 계산부에서는 15개의 브랜치 메트릭만을 계산한다. 경로 메트릭 네트워크에서는 16개의 경로 메트릭을 저장하고 있다. 그리고, 가산 비교 선택부에서는 필요한 브랜치 메트릭과 경로 메트릭을 선별적으로 사용하는 것이다.Accordingly, the present invention does not calculate the branch metric or the path metric for each state, but calculates all possible branch metrics for any received signal only once, so as to provide each of the necessary metrics in the state. That is, the branch metric calculator calculates only 15 branch metrics. The route metric network stores 16 route metrics. The addition comparison selection section selectively uses the necessary branch metric and the route metric.

본 발명에 적용될 브랜치 메트릭과 경로 메트릭에 대한 계산 규칙을 하기 표 2와 표 3에 나타내었다. 상기 표 2와 표 3는 상기 표 1을 기반으로 하여 대응되도록 작성한 것이다.The calculation rules for the branch metric and the route metric to be applied to the present invention are shown in Tables 2 and 3 below. Tables 2 and 3 are prepared to correspond based on Table 1 above.

브랜치 메트릭 계산 규칙Branch metric calculation rule 기준 값(채널 심볼)Reference value (channel symbol) 브랜치 메트릭(BM)Branch Metrics (BM) 00 BM1 = ∥input∥BM1 = ∥ input ∥ -4-4 BM2 = ∥input+4 ∥BM2 = ∥ input + 4 ∥ -8-8 BM3 = ∥input+8 ∥BM3 = ∥ input + 8 ∥ -12-12 BM4 = ∥input+12∥BM4 = ∥ input + 12 ∥ +2+2 BM5 = ∥input-2 ∥BM5 = ∥ input-2 ∥ -2-2 BM6 = ∥input+2 ∥BM6 = ∥ input + 2 ∥ -6-6 BM7 = ∥input+6 ∥BM7 = ∥ input + 6 ∥ -10-10 BM8 = ∥input+10∥BM8 = ∥ input + 10 ∥ -14-14 BM9 = ∥input+14∥BM9 = ∥ input + 14 ∥ +4+4 BM10= ∥input-4 ∥BM10 = ∥ input-4 ∥ +6+6 BM11= ∥input-6 ∥BM11 = ∥ input-6 ∥ +8+8 BM12= ∥input-8 ∥BM12 = ∥ input-8 ∥ +10+10 BM13= ∥input-10∥BM13 = ∥ input-10 ∥ +12+12 BM14= ∥input-12∥BM14 = ∥ input-12 ∥ +14+14 BM15= ∥input-14∥BM15 = ∥ input-14 ∥

상기 표 2에서 기준값은, 상기 표 1에서 채널 심볼로서 이상적인 통신 채널을 통해 전송되어온 8레벨 심볼이 NTSC 간섭 제거 필터를 통과한 후 15레벨로 변환된 값이며, 이 기준값에 대한 15개의 브랜치 메트릭은 실제 통신 채널을 통해 수신되어 NTSC 간섭 제거 필터를 통과한 입력 신호와 기준값의 차이에 대한 절대값이다.In Table 2, the reference value is a value obtained by converting an eight-level symbol transmitted through an ideal communication channel as a channel symbol in Table 1 to 15 levels after passing through an NTSC interference cancellation filter, and the 15 branch metrics for this reference value are The absolute value of the difference between the reference signal and the input signal received through the actual communication channel and passed through the NTSC interference cancellation filter.

각 스테이트에서의 새로운 경로 메트릭 계산 규칙New route metric calculation rule in each state 스테이트 (i)State (i) 후보 경로 메트릭 (ADDij = BM + PM )Candidate Path Metrics (ADDij = BM + PM) 스테이트 (i)State (i) 후보 경로 메트릭 (ADDij = BM + PM )Candidate Path Metrics (ADDij = BM + PM) 0(=0000)0 (= 0000) ADD01=BM1 + PM0ADD02=BM2 + PM1ADD03=BM3 + PM8ADD04=BM4 + PM9ADD01 = BM1 + PM0ADD02 = BM2 + PM1ADD03 = BM3 + PM8ADD04 = BM4 + PM9 8(=1000)8 (= 1000) ADD81=BM12+ PM0ADD82=BM10+ PM1ADD83=BM1 + PM8ADD84=BM2 + PM9ADD81 = BM12 + PM0ADD82 = BM10 + PM1ADD83 = BM1 + PM8ADD84 = BM2 + PM9 1(=0001)1 (= 0001) ADD11=BM5 + PM4ADD12=BM6 + PM5ADD13=BM7 + PM12ADD14=BM8 + PM13ADD11 = BM5 + PM4ADD12 = BM6 + PM5ADD13 = BM7 + PM12ADD14 = BM8 + PM13 9(=1001)9 (= 1001) ADD91=BM13+ PM4ADD92=BM11+ PM5ADD93=BM5 + PM12ADD94=BM6 + PM13ADD91 = BM13 + PM4ADD92 = BM11 + PM5ADD93 = BM5 + PM12ADD94 = BM6 + PM13 2(=0010)2 (= 0010) ADD21=BM6 + PM4ADD22=BM7 + PM5ADD23=BM8 + PM12ADD24=BM9 + PM13ADD21 = BM6 + PM4ADD22 = BM7 + PM5ADD23 = BM8 + PM12ADD24 = BM9 + PM13 a(=1010)a (= 1010) ADDa1=BM11+ PM4ADDa2=BM5 + PM5ADDa3=BM6 + PM12ADDa4=BM7 + PM13ADDa1 = BM11 + PM4ADDa2 = BM5 + PM5ADDa3 = BM6 + PM12ADDa4 = BM7 + PM13 3(=0011)3 (= 0011) ADD31=BM10 + PM0ADD32=BM1 + PM1ADD33=BM2 + PM8ADD34=BM3 + PM9ADD31 = BM10 + PM0ADD32 = BM1 + PM1ADD33 = BM2 + PM8ADD34 = BM3 + PM9 b(=1011)b (= 1011) ADDb1=BM14+ PM0ADDb2=BM12+ PM1ADDb3=BM10+ PM8ADDb4=BM1 + PM9ADDb1 = BM14 + PM0ADDb2 = BM12 + PM1ADDb3 = BM10 + PM8ADDb4 = BM1 + PM9 4(=0100)4 (= 0100) ADD41=BM5 + PM2ADD42=BM6 + PM3ADD43=BM7 + PM10ADD44=BM8 + PM11ADD41 = BM5 + PM2ADD42 = BM6 + PM3ADD43 = BM7 + PM10ADD44 = BM8 + PM11 c(=1100)c (= 1100) ADDc1=BM13+ PM2ADDc2=BM11+ PM3ADDc3=BM5 + PM10ADDc4=BM6 + PM11ADDc1 = BM13 + PM2ADDc2 = BM11 + PM3ADDc3 = BM5 + PM10ADDc4 = BM6 + PM11 5(=0101)5 (= 0101) ADD51=BM10+ PM6ADD52=BM1 + PM7ADD53=BM2 + PM14ADD54=BM3 + PM15ADD51 = BM10 + PM6ADD52 = BM1 + PM7ADD53 = BM2 + PM14ADD54 = BM3 + PM15 d(=1101)d (= 1101) ADDd1=BM14+ PM6ADDd2=BM12+ PM7ADDd3=BM10+ PM14ADDd4=BM1 + PM15ADDd1 = BM14 + PM6ADDd2 = BM12 + PM7ADDd3 = BM10 + PM14ADDd4 = BM1 + PM15 6(=0110)6 (= 0110) ADD61=BM1 + PM6ADD62=BM2 + PM7ADD63=BM3 + PM14ADD64=BM4 + PM15ADD61 = BM1 + PM6ADD62 = BM2 + PM7ADD63 = BM3 + PM14ADD64 = BM4 + PM15 e(=1110)e (= 1110) ADDe1=BM12+ PM6ADDe2=BM10+ PM7ADDe3=BM1 + PM14ADDe4=BM2 + PM15ADDe1 = BM12 + PM6ADDe2 = BM10 + PM7ADDe3 = BM1 + PM14ADDe4 = BM2 + PM15 7(=0111)7 (= 0 111) ADD71=BM11+ PM2ADD72=BM5 + PM3ADD73=BM6 + PM10ADD74=BM7 + PM11ADD71 = BM11 + PM2ADD72 = BM5 + PM3ADD73 = BM6 + PM10ADD74 = BM7 + PM11 f(=1111)f (= 1111) ADDf1=BM15+ PM2ADDf2=BM13+ PM3ADDf3=BM11+ PM10ADDf4=BM5 + PM11ADDf1 = BM15 + PM2ADDf2 = BM13 + PM3ADDf3 = BM11 + PM10ADDf4 = BM5 + PM11

상기 표 3에서 보는 바와 같이, 각 스테이트는 4개씩의 브랜치 메트릭을 갖고, 이전 스테이트 까지의 경로 메트릭들과 각각 더하여 4개의 새로운 후보 경로 메트릭을 갖는다. i는 스테이트 인덱스이고, j는 각 스테이트의 브랜치 메트릭 인덱스이며, ADD는 후보 경로 메트릭이다.As shown in Table 3 above, each state has four branch metrics and each has four new candidate path metrics in addition to the path metrics up to the previous state. i is a state index, j is a branch metric index of each state, and ADD is a candidate path metric.

상기 표 2와 표 3의 계산 규칙을 적용한 브랜치 메트릭 계산부와 가산 비교 선택부에 대한 구성도를 도 4와 도 5에 도시하였다.4 and 5 illustrate configuration diagrams of the branch metric calculation unit and the addition comparison selection unit to which the calculation rules of Tables 2 and 3 are applied.

도 4는 본 발명에 따른 브랜치 메트릭 계산부에 대한 구성도로서, 브랜치 메트릭 계산부는 NTSC 간섭 제거 필터로부터 출력된 수신 신호와 15레벨 기준값의 차를 구하는 14개의 가산기(40-2∼40-15)와, 상기 가산기(40-2∼40-15)로부터 출력된 값의 절대값을 구하는 15개의 절대값 계산기(41-1∼41-15)로 구성되어 있다.4 is a block diagram of a branch metric calculation unit according to the present invention. The branch metric calculation unit includes fourteen adders 40-2 to 40-15 for obtaining a difference between a received signal output from an NTSC interference cancellation filter and a fifteen level reference value. And 15 absolute value calculators 41-1 to 41-15 for obtaining the absolute values of the values output from the adders 40-2 to 40-15.

상기 제 1 절대치 계산기(41-1)는 NTSC제거 필터로부로 출력된 수신 신호를 절대치 계산하여 상기 제 1 브랜치 메트릭(BM1)을 출력한다.The first absolute value calculator 41-1 calculates an absolute value of the received signal output from the NTSC cancellation filter and outputs the first branch metric BM1.

상기 제 1 가산기(40-2)는 수신 신호와 4를 가산하고, 상기 제 2 절대치 계산기(41-2)를 통해 절대치 계산하여 기준값 -4에 대한 오차인 제 2 브랜치 메트릭(BM2)를 출력한다. 상기 제 2 가산기(40-3)는 수신 신호와 8을 가산하고, 상기 제 3 절대치 계산기(41-2)를 통해 절대치 계산하여 기준값 -8에 대한 오차인 제 3 브랜치 메트릭(BM3)를 출력한다. 나머지 브랜치 메트릭들로 각 가산기와 절대치 계산기를 통해 기준값과의 오차에 대한 절대치로 구해진다. 즉, 16스테이트 TCM 디코더의 경우에는 모든 종류의 브랜치 메트릭을 계산하는 데에 총 14개의 가산기(40-2∼40-15)와 15개의 절대치 계산기(41-1∼41-15)만으로 충분히 구현할 수 있는 것이다.The first adder 40-2 adds the received signal and 4, calculates an absolute value through the second absolute value calculator 41-2, and outputs a second branch metric BM2 which is an error with respect to the reference value -4. . The second adder 40-3 adds the received signal and 8, calculates an absolute value through the third absolute value calculator 41-2, and outputs a third branch metric BM3 which is an error with respect to the reference value -8. . The remaining branch metrics are obtained as the absolute value of the error from the reference value through each adder and absolute value calculator. That is, in the case of the 16-state TCM decoder, a total of 14 adders (40-2 to 40-15) and 15 absolute calculators (41-1 to 41-15) are sufficient to calculate all kinds of branch metrics. It is.

이어서, 도 5은 본 발명에 따른 가산 비교 선택부에 대한 구성도로서, 가산 비교 선택부는 16개의 프로세싱 엘리먼트(PE #0∼PE #15)와, 오버플로 제어부(51) 및 , 16개의 멀티플렉서(MUX 0∼ MUX 15)로 구성되어 있다.5 is a configuration diagram of the addition comparison selection unit according to the present invention, in which the addition comparison selection unit has sixteen processing elements (PE # 0 to PE # 15), an overflow control unit 51, and sixteen multiplexers ( MUX 0 to MUX 15).

상기 16개의 프로세싱 엘리먼트(PE #0∼PE #15)는 자신의 스테이트에 해당하는 4개의 브랜치 메트릭(BMi)과 4개의 이전 경로 메트릭(PMi)을 제공받아 최대 근사 복호 알고리즘에 따라 결정된 하나의 최소 경로 메트릭(pm_out) 및 입력 비트(X1,X0)를 출력한다.The sixteen processing elements PE # 0 to PE # 15 are provided with four branch metrics BMi and four previous path metrics PMi corresponding to their states and one minimum determined according to the maximum approximation decoding algorithm. The path metric pm_out and the input bits X1 and X0 are output.

상기 오버플로 제어부(51)는 16입력 논리곱 게이트로 구성되어 있으면서, 상기 16개의 프로세싱 엘리먼트(PE #0∼PE #15)로부터 출력된 경로 메트릭(pm_out)의 최상위 비트(MSB)가 모두 '1'이 될 때 즉, 오버플로가 발생되어 최상위비트가 '1'인 음수값이 되면, 최상위 비트를 '0'으로 리플레쉬 하도록 제어하는 역할을 한다.The overflow controller 51 is composed of 16 input AND gates, and all of the most significant bits MSB of the path metric pm_out output from the 16 processing elements PE # 0 to PE # 15 are all '1'. ', That is, when overflow occurs and the most significant bit becomes a negative value of' 1 ', the most significant bit is refreshed to' 0 '.

상기 멀티플렉서(MUX 0∼MUX 15)는 상기 오버플로 제어부(51)로부터 출력된 제어 신호에 따라 상기 프로세싱 엘리먼트로부터 출력된 최소 경로 메트릭(pm_out)의 최상위 비트(MSB)를 결정하여 출력한다. 즉, 16개의 모든 최소 경로 메트릭(pm_out0∼pm_out15)이 음수이면 최상위 비트는 '0'으로 출력하고, 모두 음수가 아니면 최소 경로 메트릭의 최상위 비트를 그대로 출력한다.The multiplexers MUX 0 to MUX 15 determine and output the most significant bit MSB of the minimum path metric pm_out output from the processing element according to the control signal output from the overflow controller 51. That is, if all 16 minimum path metrics (pm_out0 to pm_out15) are negative, the most significant bit is output as '0', and if all are not negative, the most significant bit of the minimum path metric is output as it is.

여기서, 설명하지 않은 연결 라인 블럭은 상기 브랜치 메트릭으로부터 제공된 15개의 브랜치 메트릭과 상기 경로 메트릭 네트워크로부터 제공된 16개의 이전 경로 메트릭들이 상기 16개의 프로세싱 엘리먼트로 연결되어지는 부분이다. 브랜치 메트릭 라인과 경로 메트릭 라인이 각 프로세싱 엘리먼트로 연결되어진 상태를 도시하기에는 다소 연결상태가 복잡하여 간단히 블럭으로 표시하였으며, 각 라인의 연결은 표 2와 표 3을 참조하기 바란다.Here, the connection line block, which is not described, is a portion in which fifteen branch metrics provided from the branch metric and sixteen previous route metrics provided from the route metric network are connected to the sixteen processing elements. The branch metric line and the route metric line are shown in a simple block because the connection state is somewhat complicated to show the connection state to each processing element. For the connection of each line, refer to Tables 2 and 3.

이렇게 상기 각각의 프로세싱 엘리먼트(PE #0∼PE #15)로부터 출력된 경로 메트릭의 최상위 비트를 제외한 나머지 비트들과, 상기 각각의 멀티플렉서(MUX 0∼MUX 15)로부터 출력된 최상위 비트가 각각의 생존 경로 메트릭(SM)으로 결정되는 것이다.Thus, the remaining bits except the most significant bit of the path metric output from each of the processing elements PE # 0 to PE # 15 and the most significant bit output from each of the multiplexers MUX 0 to MUX 15 each survive. This is determined by the path metric (SM).

이어서, 도 6는 도 5의 프로세싱 엘리먼트에 대한 세부 구성도로서, 프로세싱 엘리먼트(PE)는 4개의 가산기(62-1∼62-4) 및, 3개의 비교 선택기(63-1∼63-3)로 구성되어 있다.6 is a detailed configuration diagram of the processing element of FIG. 5, wherein the processing element PE includes four adders 62-1 to 62-4 and three comparison selectors 63-1 to 63-3. Consists of

상기 4개의 가산기(62-1∼62-4)는 브랜치 메트릭(BMi)과 이전 경로 메트릭(PMi)을 각각 가산하여 4개의 후보 경로 메트릭을 출력한다. 상기 제 1 가산기(62-1)는 제 1 브랜치 메트릭(BM1)과 제 1 경로 메트릭(PM1)을 더하여 출력하고, 이 때의 입력 비트(X1,X0)는 '00' 에 해당한다. 상기 제 2 가산기(62-2)는 제 2 브랜치 메트릭(BM2)과 제 2 경로 메트릭(PM2)을 더하여 출력하고, 이때의 입력 비트(X1,X0)는 '01' 에 해당한다. 상기 제 3 가산기(62-3)는 제 3 브랜치 메트릭(BM3)과 제 3 경로 메트릭(PM3)을 더하여 출력하고, 이때의 입력 비트(X1,X0)는 '10'에 해당한다. 상기 제 4 가산기(62-4)는 제 4 브랜치 메트릭(BM4)과 제 4 경로 메트릭(PM4)을 더하여 출력하고, 이때의 입력 비트(X1,X0)는 '11'에 해당한다.The four adders 62-1 to 62-4 add branch metrics BMi and previous path metrics PMi, respectively, and output four candidate path metrics. The first adder 62-1 adds and outputs the first branch metric BM1 and the first path metric PM1, and the input bits X1 and X0 correspond to '00'. The second adder 62-2 adds and outputs the second branch metric BM2 and the second path metric PM2, and the input bits X1 and X0 correspond to '01'. The third adder 62-3 adds and outputs the third branch metric BM3 and the third path metric PM3, and the input bits X1 and X0 correspond to '10'. The fourth adder 62-4 adds and outputs the fourth branch metric BM4 and the fourth path metric PM4, and the input bits X1 and X0 correspond to '11'.

상기 3개의 비교 선택기(63-1∼63-3)는 상기 가산기들(62-1∼62-4)로부터 출력된 4개의 후보 경로 메트릭을 비교하여 가장 작은 경로 메트릭을 선택하여 최소 경로 메트릭(pm-out)을 출력함과 동시에, 가장 작은 경로 메트릭에 해당하는 입력 비트(X1,X0)를 생존자 메모리부(SMU)로 출력한다. 상기 제 1 비교 선택기(63-1)는 상기 제 1 가산기(62-1)와 상기 제 2 가산기(62-2)로부터 계산된 2개의 후보 경로 메트릭을 비교하여 그 중 작은 메트릭을 선택하여 제 3 비교 선택기(63-3)로 출력한다. 상기 제 2 비교 선택기(63-2)는 상기 제 3 가산기(62-3)와 상기 제 4 가산기(63-4)로부터 계산된 2개의 후보 경로 메트릭을 비교하여 그 중 작은 메트릭을 선택하여 제 3 비교 선택기(63-3)로 출력한다. 상기 제 3 비교 선택기(63-3)에서는 상기 제 1 비교 선택기(63-1)와 상기 제 2 비교 선택기(63-2)로부터 출력된 2개의 후보 경로 메트릭을 비교하여 가장 작은 메트릭을 선택하여 최소 경로 메트릭(pm-out)으로 결정하여 출력한다.The three comparison selectors 63-1 to 63-3 compare the four candidate path metrics output from the adders 62-1 to 62-4, select the smallest path metric, and then select the minimum path metric (pm). and outputs the input bits X1 and X0 corresponding to the smallest path metrics to the survivor memory unit SMU. The first comparison selector 63-1 compares two candidate path metrics calculated from the first adder 62-1 and the second adder 62-2, selects a smaller metric among them, and selects a third one. Output to comparison selector 63-3. The second comparison selector 63-2 compares two candidate path metrics calculated from the third adder 62-3 and the fourth adder 63-4, selects a smaller metric among them, and selects a third one. Output to comparison selector 63-3. The third comparison selector 63-3 compares two candidate path metrics output from the first comparison selector 63-1 and the second comparison selector 63-2, selects the smallest metric, and selects the minimum metric. The output is determined by the path metric (pm-out).

물론, 이때 결정된 최소 경로 메트릭은 오버플로 제어부에 따라 MSB비트가 결정된 후에 생존 경로 메트릭으로서 외부의 경로 메트릭 네트워크(PMN)로 제공되어진다. 그리고, 제 3 비교 선택기(63-3)에서는 가장 작은 경로 메트릭에 해당하는 입력 비트(X1,X0)를 출력하여 상기 생존자 메모리부(SMU)로 제공한다. (상기 생존자 메모리부(SMU)에서는 현재 스테이트(S)와 입력 비트(X)를 이용하여 이전 스테이트(S')를 역추적하는 트레이스백 진행을 하면서 복원 심볼을 찾아내는 것이다.)Of course, the determined minimum path metric is provided to the external path metric network (PMN) as a survival path metric after the MSB bit is determined according to the overflow controller. In addition, the third comparison selector 63-3 outputs the input bits X1 and X0 corresponding to the smallest path metrics and provides them to the survivor memory unit SMU. (The survivor memory unit SMU finds a reconstruction symbol by performing a traceback process to trace back the previous state S 'using the current state S and the input bit X.)

도 4에서와 같이 임의의 수신 심볼에 대한 모든 기준값에 대한 브랜치 메트릭을 계산해 놓고서, 도 5와 도 6에서와 같이 각 스테이트에 해당하는 메트릭만을 제공받아 새로운 경로 메트릭을 계산하는 것이다.As shown in FIG. 4, branch metrics for all reference values for a given received symbol are calculated, and as shown in FIGS. 5 and 6, only a metric corresponding to each state is provided to calculate a new path metric.

종래의 브랜치 메트릭 계산량과 비교해 보면, 종래에는 16스테이트 트렐리스 디코더에 대핸 64개의 브랜치 메트릭을 계산하기 위한 하드웨어가 필요한데 비해, 본 발명은 15개의 브랜치 메트릭을 계산하면 되므로 계산량 및 하드웨어가 감소되며, 본 발명은 비터비 알고리즘을 적용하여 디코딩하는 각종 트렐리스 디코더 및 비터비 디코더에서 각 스테이트에 적합하게 변형되어 실시될 수 있다.Compared with the conventional branch metric calculation amount, the conventional state requires hardware for calculating 64 branch metrics for the 16 state trellis decoder, but the present invention reduces the amount of calculation and hardware since only 15 branch metrics are calculated. The present invention can be implemented in various trellis decoders and Viterbi decoders that decode by applying the Viterbi algorithm.

본 명세서에서는 본 발명을 특정한 실시예들과 관련하여서만 설명하였으나, 당업자들은 다음의 청구항들에서 정의된 발명의 의도와 범위를 벗어나지 않는 한도내에서 다양하게 수정할 수 있을 것이다.Although the invention has been described herein only in connection with specific embodiments, those skilled in the art will be able to make various modifications without departing from the spirit and scope of the invention as defined in the following claims.

이상에서 살펴본 바와 같이, 종래에 브랜치 메트릭 계산부를 스테이트별로 따로따로 구현하므로써, 동일한 메트릭을 중복해서 계산하는 비효율성을 초래하였던 것에 반해, 본 발명은 하나의 브랜치 메트릭 계산부에서 각 스테이트에서 발생가능 한 모든 브랜치 메트릭을 한 번씩만 계산하고, 가산 비교 선택부에서는 각 스테이트에서 필요한 메트릭만을 선별하여 사용하므로써, 최소한의 하드웨어로 브랜치 메트릭을 계산하여 비용 및 면적 이득을 얻는 효과가 있다.As described above, while the branch metric calculation unit is conventionally implemented separately for each state, the branch metric calculation unit incurs the inefficiency of repeatedly calculating the same metric. All branch metrics are calculated only once, and the add and compare selection section selects and uses only the metrics required for each state, so that branch metrics can be calculated with minimum hardware to obtain cost and area gains.

Claims (6)

트렐리스 부호화 되어 전송된 잡음 섞인 신호를 수신받아 모든 기준값들과의 차를 계산하여, 그 결과값인 임의의 수신 신호에 대한 모든 브랜치 메트릭을 구하는 단계와, 상기 임의의 수신 신호에 대한 모든 브랜치 메트릭중에서 현재 스테이트에 해당하는 브랜치 메트릭만을 선택하는 단계 및 상기 다수개의 선택된 브랜치를 포함하여 생성된 새로운 경로 메트릭을 비교하여 가장 작은 메트릭 크기를 갖는 경로를 생존 경로 메트릭으로 결정하는 단계로 구성되는 것을 특징으로 하는 트렐리스 디코더에서의 브랜치 메트릭 및 경로 메트릭 계산 방법.Receiving a trellis-coded transmitted noise mixed signal, calculating a difference from all reference values, obtaining all branch metrics for any received signal as a result, and all branches for the arbitrary received signal. Selecting only the branch metric corresponding to the current state among the metrics, and comparing the new path metric generated by including the plurality of selected branches to determine the path having the smallest metric size as the survival path metric. A branch metric and a path metric calculation method in a trellis decoder. 트렐리스 부호화 되어 전송된 잡음 섞인 신호를 수신받아, 임의의 m-레벨 수신 신호와 모든 기준값들과의 차를 각각 계산하여 모든 브랜치 메트릭(BM1,t∼BMm,t)을 출력하는 브랜치 메트릭 계산부(BMU)와, 시간(t)에 따라 각 단의 이전 스테이트까지 진행된 경로 메트릭(PM0,t-1∼PMm,t-1)을 저장하고 있는 경로 메트릭 네트워크(PMN) 및 상기 브랜치 메트릭 계산부(BMU)로부터 계산된 브랜치 메트릭(BM1,t∼BMm,t)중에서 자신의 스테이트에 해당하는 브랜치 메트릭들과, 상기 경로 메트릭 네트워크(PMN)로부터 제공된 경로 메트릭중에서 자신의 스테이트에 해당하는 이전 경로 메트릭들을 이용하여, 현재 스테이트까지 진행된 다수개의 새로운 경로 메트릭들중 가장 작은 메트릭을 갖는 경로를 생존 경로 메트릭(SM0∼SMm)으로 결정하는 가산 비교 선택부(ACS)를 포함하여 구성되는 것을 특징으로 하는 트렐리스 디코더에서의 브랜치 메트릭 및 경로 메트릭 계산 장치.Receives a trellis-coded noise-mixed signal and calculates the difference between any m-level received signal and all reference values, and calculates branch metric to output all branch metrics (BM1, t to BMm, t). Path metric network (PMN) and branch metric calculation unit for storing the BMU and the path metrics (PM0, t-1 to PMm, t-1) that have been advanced to the previous state of each stage according to the time (t). Branch metrics corresponding to their state among the branch metrics (BM1, t to BMm, t) calculated from (BMU) and previous route metrics corresponding to their state among the route metrics provided from the route metric network (PMN). Including the addition comparison selection unit (ACS) to determine the path having the smallest metric among the plurality of new path metrics to the current state as the survival path metrics (SM0 to SMm) using Trellis branch metric and path metric calculation unit in the decoder, characterized in that. 제 2항에 있어서, 상기 브랜치 메트릭 계산부(BMU)는 NTSC 간섭 제거 필터로부터 출력된 수신 신호와 모든 기준값의 차를 각각 구하는 복수개의 가산기(40-2∼40-15)와, 상기 복수개의 가산기(40-2∼40-15)로부터 출력된 값의 절대값을 구하여 브랜치 메트릭을 출력하는 복수개의 절대값 계산기(41-1∼41-15)로 구성되는 것을 특징으로 하는 트렐리스 디코더에서의 브랜치 메트릭 및 경로 메트릭 계산 장치.3. The branch metric calculation unit (BMU) according to claim 2, wherein the branch metric calculation unit (BMU) includes a plurality of adders (40-2 to 40-15) for obtaining a difference between a received signal output from an NTSC interference cancellation filter and all reference values, respectively; In a trellis decoder comprising a plurality of absolute value calculators 41-1 to 41-15 for calculating the absolute value of the value output from (40-2 to 40-15) and outputting branch metrics. Branch metric and route metric calculation devices. 제 2항에 있어서, 상기 가산 비교 선택부(ACS)는 각 스테이트에 해당하는 브랜치 메트릭(BMi)과 이전 경로 메트릭(PMi)을 제공받아 최대근사알고리즘에 따라 결정된 하나의 최소 경로 메트릭(pm_out) 및 그 때의 입력 비트(X1,X0)를 출력하는 m개의 프로세싱 엘리먼트(PE #0∼PE #15)를 포함하여 구성되는 것을 특징으로 하는 트렐리스 디코더에서의 브랜치 메트릭 및 경로 메트릭 계산 장치.3. The method of claim 2, wherein the addition comparison selection unit (ACS) receives a branch metric (BMi) and a previous path metric (PMi) corresponding to each state, and determines one minimum path metric (pm_out) determined according to a maximum approximation algorithm. And branch processing elements PE # 0 to PE # 15 for outputting the input bits X1 and X0 at that time. 제 4항에 있어서, 상기 가산 비교 선택부(ACS)는 상기 m개의 프로세싱 엘리먼트(PE #0∼PE #15)로부터 출력된 m개의 최소 경로 메트릭(pm_out)을 조사하여 오버플로가 발생되지 않도록 제어하는 오버플로 제어부(51)와, 상기 오버플로 제어부(51)의 제어 신호에 따라 상기 프로세싱 엘리먼트(PE)로부터 출력된 최소 경로 메트릭(pm_out)의 최상위 비트(MSB)를 결정하여 출력하는 복수개의 멀티플렉서(MUX 0∼ MUX 15)가 추가로 구비되는 것을 특징으로 하는 트렐리스 디코더에서의 브랜치 메트릭 및 경로 메트릭 계산 장치.The method of claim 4, wherein the addition comparison selecting unit (ACS) controls the overflow of the m minimum path metrics (pm_out) output from the m processing elements (PE # 0 to PE # 15) so that no overflow occurs. A plurality of multiplexers for determining and outputting the most significant bit MSB of the minimum path metric pm_out output from the processing element PE according to the overflow control unit 51 and the control signal of the overflow control unit 51. (MUX 0 to MUX 15) is further provided, branch metric and path metric calculation apparatus in the trellis decoder. 제 4항에 있어서, 상기 프로세싱 엘리먼트(PE)는 브랜치 메트릭(BMi)과 이전 경로 메트릭(PMi)을 각각 가산하여 다수개의 후보 경로 메트릭을 출력하는 다수개의 가산기(62-1∼62-4) 및 상기 가산기들(62-1∼62-4)로부터 출력된 다수개의 후보 경로 메트릭을 비교하여 가장 작은 경로 메트릭을 선택하여 최소 경로 메트릭(pm-out)을 출력함과 동시에, 가장 작은 경로 메트릭에 해당하는 입력 비트(X1,X0)를 생존자 메모리부(SMU)로 출력하는 다수개의 비교 선택기(63-1∼63-3)를 포함하여 구성되는 것을 특징을 하는 트렐리스 디코더에서의 브랜치 메트릭 및 경로 메트릭 계산 장치.5. The apparatus of claim 4, wherein the processing elements PE add a branch metric BMi and a previous path metric PMi to output a plurality of candidate path metrics, respectively; Compares the candidate path metrics output from the adders 62-1 to 62-4, selects the smallest path metric, outputs the minimum path metric (pm-out), and corresponds to the smallest path metric. Branch metrics and paths in a trellis decoder comprising a plurality of comparison selectors 63-1 to 63-3 for outputting the input bits X1 and X0 to the survivor memory unit SMU. Metric calculation device.
KR1019970007504A 1997-03-06 1997-03-06 Branch metric and pathmetric calculation methods in the trellis decoder KR19980072600A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019970007504A KR19980072600A (en) 1997-03-06 1997-03-06 Branch metric and pathmetric calculation methods in the trellis decoder

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019970007504A KR19980072600A (en) 1997-03-06 1997-03-06 Branch metric and pathmetric calculation methods in the trellis decoder

Publications (1)

Publication Number Publication Date
KR19980072600A true KR19980072600A (en) 1998-11-05

Family

ID=65985039

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019970007504A KR19980072600A (en) 1997-03-06 1997-03-06 Branch metric and pathmetric calculation methods in the trellis decoder

Country Status (1)

Country Link
KR (1) KR19980072600A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100937513B1 (en) * 2007-08-31 2010-01-19 뮤텔테크놀러지 주식회사 Method for detecting a symbol using trellis structure on the multiple input multiple output mobile communication system

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100937513B1 (en) * 2007-08-31 2010-01-19 뮤텔테크놀러지 주식회사 Method for detecting a symbol using trellis structure on the multiple input multiple output mobile communication system

Similar Documents

Publication Publication Date Title
EP1135877B1 (en) Turbo Decoding with soft-output Viterbi decoder
US6088404A (en) Method and apparatus for decoding trellis code data
US5944850A (en) Digital transmission system and method comprising a punctured product code combined with a quadrature amplitude modulation
KR19990078237A (en) An add-compare-select circuit and method implementing a viterbi algorithm
US7289569B2 (en) HDTV trellis decoder architecture
JPH11340841A (en) Tcm decoder and its decoding method
US6134697A (en) Traceback processor for use in a trellis-coded modulation decoder
KR19980072600A (en) Branch metric and pathmetric calculation methods in the trellis decoder
KR19980066172A (en) High Definition TV, Grid Decoder
US6075822A (en) Traceback device of a trellis decoder
EP0807336B1 (en) Method for forming transition metrics and a receiver of a cellular radio system
KR19980072601A (en) Branch Metric Calculator
KR100210405B1 (en) Method and apparatus for tracebacking survivor path of trellis-coded data
KR100237489B1 (en) An apparatus for calculating branch matric in trellis code decoder
KR19980075618A (en) Additive comparison selection device of trellis decoder
JP2570367B2 (en) Successive decoding of convolutional systematic code with feedback
KR100237491B1 (en) An apparatus of add-compare-select in a trellis code decoder
JP2516248B2 (en) Viterbi decoding circuit
KR100191254B1 (en) Trellis decoder
KR19990035418A (en) A survival path reverse tracking device for trellis code data
KR100210385B1 (en) Trellis decoder
KR19990035419A (en) Additive comparison selection device of trellis decoder
KR19990035420A (en) Branch Metric Computing Device for Trellis Decoder
ENCODER FPGA BASED DESIGN AND IMPLEMENTATION OF CONVOLUTIONAL ENCODER AND ADAPTIVE VITERBI DECODER
KR20040007035A (en) Method for computing branch metric in viterbi decoder and circuit thereof

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
NORF Unpaid initial registration fee