KR20000010890A - Method for decoding data signals using fixed-length decision window - Google Patents

Method for decoding data signals using fixed-length decision window Download PDF

Info

Publication number
KR20000010890A
KR20000010890A KR1019980709037A KR19980709037A KR20000010890A KR 20000010890 A KR20000010890 A KR 20000010890A KR 1019980709037 A KR1019980709037 A KR 1019980709037A KR 19980709037 A KR19980709037 A KR 19980709037A KR 20000010890 A KR20000010890 A KR 20000010890A
Authority
KR
South Korea
Prior art keywords
path
decision window
decoding path
window
next best
Prior art date
Application number
KR1019980709037A
Other languages
Korean (ko)
Other versions
KR100488136B1 (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 KR10-1998-0709037A priority Critical patent/KR100488136B1/en
Publication of KR20000010890A publication Critical patent/KR20000010890A/en
Application granted granted Critical
Publication of KR100488136B1 publication Critical patent/KR100488136B1/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
    • 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/37Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
    • H03M13/39Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes
    • H03M13/41Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using the Viterbi algorithm or Viterbi processors
    • H03M13/4138Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using the Viterbi algorithm or Viterbi processors soft-output Viterbi algorithm based decoding, i.e. Viterbi decoding with weighted decisions
    • H03M13/4146Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using the Viterbi algorithm or Viterbi processors soft-output Viterbi algorithm based decoding, i.e. Viterbi decoding with weighted decisions soft-output Viterbi decoding according to Battail and Hagenauer in which the soft-output is determined using path metric differences along the maximum-likelihood path, i.e. "SOVA" decoding

Abstract

PURPOSE: A method for decoding is provided to decode transmitted data signals using a fixed-length decision window in which multiple transition paths have converged at a single state. CONSTITUTION: A method for decoding a transmitted data sequence using a full-length decision window, such as in a trellis decoder, in which transition paths have converged. Transition paths within the decision window and their associated soft values are compared with a stored candidate for the next best path and associated stored soft value. Based on the comparison, and whether the transition paths and the best path have merged during the decision window, the decision window is shifted or the stored candidate for the next best transition path and associated stored soft value are replaced by the possible candidate for the next best path and associated soft value. The decision window is then shifted.

Description

고정 길이 결정창을 이용한 데이터 신호 디코딩 방법Data signal decoding method using fixed length decision window

통상적인 디지털 통신 시스템이 도 1에 도시되어 있다. 정보 소스(10)에서 아날로그 또는 디지털 정보를 공급하면 소스 인코더(11)는 그 정보를 정보 시퀀스 x로 인코딩한다. 채널 인코더(12)는 전송의 신뢰도를 향상시키기 위해 정보 시퀀스에 중복성을 도입함으로써 정보 시퀀스 x를 새로운 정보 시퀀스로 변환시킨다. 중복은 예컨대, 수신기에 의한 에러 검출, 수신기에서의 에러 정정을 위해, 또한 자동적인 반복 요청을 실시하는데 사용될 수 있는데, 수신기에서 에러를 검출하면 데이터의 반복 전송 요청이 자동적으로 개시된다. 인코딩된 메시지에서 에러를 검출하는 것보다 에러를 정정하는데 더 많은 중복성이 요구된다. 변조기(13)는 채널 인코더(12)로부터 인코딩된 시퀀스를 수신하고, 진폭, 주파수, 위상, 펄스 변조와 같은 통상적인 변조 기술을 사용하여 전송 채널(14)을 통해 전송하기 위한 채널 신호를 발생시킨다. 일반적으로, 전송 채널(14)은 주파수 또는 위상 왜곡과 같은 잡음이나 손상을 가지며, 다양한 페이딩 특성을 보인다. 디지털 복조기(15)는 전송 채널을 통해 전송된 신호를 수신하고 전송된 신호를 복조하여 인코딩된 정보 시퀀스의 추정치를 생성한다. 채널 디코더(16)는 채널 인코더(12)에서 제공한 중복 비트를 이용하여 정보 시퀀스를 재생하기 위해 추정치를 이용한다. 마지막으로, 소스 디코더(17)는 재구성된 정보 시퀀스를 정보 목적지(18)에 적합한 형태로 변형한다.A typical digital communication system is shown in FIG. When the information source 10 supplies analog or digital information, the source encoder 11 encodes the information into an information sequence x. Channel encoder 12 converts information sequence x into a new information sequence by introducing redundancy into the information sequence to improve the reliability of the transmission. Duplicates can be used, for example, for error detection by the receiver, for error correction at the receiver, and also for making automatic repetition requests, where a request for repetitive transmission of data is automatically initiated when an error is detected at the receiver. More redundancy is required to correct errors than to detect errors in encoded messages. The modulator 13 receives the encoded sequence from the channel encoder 12 and generates a channel signal for transmission over the transmission channel 14 using conventional modulation techniques such as amplitude, frequency, phase, pulse modulation. . In general, transmission channel 14 has noise or damage, such as frequency or phase distortion, and exhibits various fading characteristics. Digital demodulator 15 receives the signal transmitted over the transmission channel and demodulates the transmitted signal to produce an estimate of the encoded information sequence. The channel decoder 16 uses the estimate to reproduce the information sequence using the redundant bits provided by the channel encoder 12. Finally, the source decoder 17 transforms the reconstructed information sequence into a form suitable for the information destination 18.

채널 인코더(12)는 통상적으로 두 가지의 일반적인 방법중 하나, 즉 블록 디코딩 또는 콘볼루션 디코딩을 이용하여 중복성을 도입한다. (n, k) 블록 코드는 k 정보 비트의 블록을 선정된 인코딩 규칙에 따라 n-k 패리티(중복) 비트를 첨가하여 n-비트 코드워드로 변환한다. 그러면 n-비트 코드워드가 통신 채널을 통해 전송된다. 코드 속도 R은 R=k/n으로 규정된다. 수신기는 n-k 패리티 비트가 도입된 중복성을 포함하는 수신 시퀀스를 이용하여 원래의 k 정보 비트를 추정한다. 블록 코드는 디코더에서 출력되는 각각의 n-비트 코드워드가 현재의 k-비트 정보 블록에만 의존하는 점에서 "메모리 무관성" 인 것이다.Channel encoder 12 typically introduces redundancy using one of two general methods: block decoding or convolutional decoding. The (n, k) block code converts a block of k information bits into an n-bit codeword by adding n-k parity (redundant) bits according to a predetermined encoding rule. The n-bit codeword is then transmitted over the communication channel. The code rate R is defined as R = k / n. The receiver estimates the original k information bits using a reception sequence that includes redundancy with n-k parity bits introduced. The block code is "memory independence" in that each n-bit codeword output from the decoder depends only on the current k-bit information block.

콘볼루션 코딩은 일반적으로 정보 비트의 스트림을 k-비트 블록으로 만들고 블록들을 시프트 레지스터로 통과시키는 것에 의해 실시된다. 시프트 레지스터 스테이지는 v개에 이르는 k-비트 블록의 그룹을 기억하며, 스테이지들은 선형 대수 함수 발생기에 연결된다. 발생기 출력은 선택적으로 결합되어 n비트의 코딩된 출력을 발생한다. 콘볼루션 코딩은 각각의 인코딩된 블록이 시프트 레지스터로 입력되는 현재의 k-비트 블록뿐만 아니라 이전의 v개 메시지 블록에도 의존하기 때문에 메모리 무관성이 아니다. 그러므로, 콘볼루션 코드는 v 정도의 메모리를 갖는다. 콘볼루션 코드의 코드 속도 R 는 R=k/n이며, 코드의 제한 길이는 v+1이다. 통상적으로, k 및 n은 작은 정수이며, 시프트 레지스터의 길이를 증가시킴으로써 중복성이 첨가된다. 콘볼루션 인코더 및 디코더의 동작은, 본 기술분야에 공지된 바와 같이, 격자도 또는 상태도에 의해 설명될 수 있다.Convolutional coding is generally implemented by making a stream of information bits into k-bit blocks and passing the blocks to a shift register. The shift register stage stores a group of up to v k-bit blocks, which are connected to a linear algebra function generator. The generator outputs are selectively combined to produce n bits of coded output. Convolutional coding is not memory-independent because each encoded block depends on the previous v message blocks as well as the current k-bit block being input into the shift register. Therefore, the convolutional code has about v memory. The code rate R of the convolution code is R = k / n, and the code length limit is v + 1. Typically, k and n are small integers and redundancy is added by increasing the length of the shift register. The operation of the convolutional encoder and decoder can be described by a grid diagram or state diagram, as known in the art.

디코더, 복조기, 균등화기 및 다른 통상적인 디지털 통신 시스템 장치에서는 콘볼루션 코드를 이용하여 인코딩된 전송 신호를 추정하고 통신 채널의 손상을 최소화하기 위해 통상적으로 비터비 알고리즘을 사용한다. 비터비 알고리즘은 가능한 상태의 시퀀스("격자")를 통해 최단의 전이 경로를 찾아내어 단일 전송 데이터 시퀀스의 가장 가능성 있는 추정치를 발생시킨다. 비터비 알고리즘은 모든 가능한 전송 시퀀스가 수신 시퀀스와 상관된 다음 최상 상관 관계를 근거로 "생존" 시퀀스가 선택되는, 즉 수신 시퀀스를 추정하기 위한 최상 "매트릭"을 가진 경로가 선택되는 방법인 것으로 설명될 수 있다.Decoders, demodulators, equalizers, and other conventional digital communication system devices typically use a Viterbi algorithm to estimate the transmitted signal encoded using a convolutional code and to minimize communication channel damage. The Viterbi algorithm finds the shortest transition path through a sequence of possible states (“lattices”) to generate the most likely estimate of a single transmitted data sequence. The Viterbi algorithm describes how all possible transmission sequences are correlated with the receiving sequence and then the "survival" sequence is selected based on the best correlation, that is, the path with the best "metric" for estimating the receiving sequence. Can be.

비터비 알고리즘은 각각의 추정된 데이터 비트에 대해 신뢰도 표시를 발생시킴으로써 향상될 수 있다. 신뢰도 표시는 예컨대 추정된 데이터 비트의 크기일 수 있다. 이렇게 향상시키는 것은 일반적으로 "소프트" 정보로 인용된다. 연쇄된 코드가 사용되는 경우, 추가적인 소프트 정보는 후속 디코더가 시스템의 성능을 향상시키는데 사용될 수 있다. 비터비 알고리즘에 대한 또다른 변형예는 닐(Nill) 등의 유럽 특허출원 제 0 606 724 호 및 닐 등의 "리스트 및 소프트 심벌 출력 비터비 알고리즘: 확장 및 비교"(IEEE 통신 보고서, 제 43 권, 제 2/3/4 호, 1995년 2월/3월/4월)에 개시되어 있다. 닐의 문헌에는 소프트 정보 및 추정된 비트를 이용하여 가능성의 역순으로 후보 시퀀스의 리스트를 생성하는 디코딩 방법이 개시되어 있다. 후보 시퀀스의 리스트는 후속 스테이지에서 전송 시퀀스의 최상 추정치를 결정하는데 사용될 수 있다. 예를 들면, GMS 무선 링크 프로토콜에서 사용되는 것과 같은 순환 중복 체크(CRC)를 이용하여 리스트에서 후보 시퀀스를 체크하고 정확한 CRC 정보를 가진 제1 후보 시퀀스를 선택할 수 있다. 에러가 있는 프레임을 재 전송할 필요 없이 에러를 정정함으로써 시스템 성능은 향상된다.The Viterbi algorithm can be improved by generating a confidence indication for each estimated data bit. The confidence indication may be, for example, the size of the estimated data bits. This improvement is commonly referred to as "soft" information. If concatenated code is used, additional soft information may be used by subsequent decoders to improve the performance of the system. Another variant of the Viterbi algorithm is described in European Patent Application Nos. 0 606 724 to Neill et al. And “List and Soft Symbol Output Viterbi Algorithms: Expansion and Comparison” (NEE Communications Report, Vol. 43). No. 2/3/4, February / March / April 1995). Neil's literature discloses a decoding method that uses soft information and estimated bits to generate a list of candidate sequences in reverse order of likelihood. The list of candidate sequences can be used to determine the best estimate of the transmission sequence at subsequent stages. For example, a cyclic redundancy check (CRC) such as that used in the GMS radio link protocol can be used to check candidate sequences in a list and select a first candidate sequence with correct CRC information. System performance is improved by correcting errors without the need to retransmit erroneous frames.

닐의 방법은 일반적으로 다음과 같이 설명할 수 있다. 수신된 심벌을 비터비 알고리즘을 사용해 디코딩하여 가장 가능성이 있는 데이터 시퀀스의 추정치와 소프트 정보(즉, 최상 예측값)를 생성한다. 소프트 정보는 시퀀스에서 가장 가능성이 적은(최약의) 비트를 찾는데 사용된다. (최약의 비트를 시프트시키는 상태로의) 최상 인입 전이 경로를 선택하는 대신, 비터비 격자에서 역-추적을 통해 대안적인 인입 전이 경로가 결정된다. 가능성의 역순으로 순위가 매겨진 후보 시퀀스의 리스트를 발생시키기 위해, l개 리스트 성분 각각은 (l+1)번째 리스트 성분에 대한 후보를 갖는다. (l+1)번째 리스트 성분이 최상 누적 매트릭을 가진 후보로 선택된다. 이러한 스텝은 충분한 수의 대안이 생성될 때까지 반복된다. 닐의 방법은 전체 비터비 격자가 보존되어야 하기 때문에 대부분의 실제 어플리케이션에서 닐의 방법을 사용할 수 없다.Neil's method can be generally described as follows. The received symbols are decoded using the Viterbi algorithm to produce estimates and soft information (ie, best predictions) of the most likely data sequences. Soft information is used to find the least likely (weakest) bits in the sequence. Instead of selecting the best incoming transition path (to shift the least significant bit), an alternative incoming transition path is determined through back-tracking in the Viterbi grating. In order to generate a list of candidate sequences ranked in the reverse order of likelihood, each of the l list elements has a candidate for the (l + 1) th list element. The (l + 1) th list component is selected as the candidate with the highest cumulative metric. This step is repeated until a sufficient number of alternatives have been created. Neil's method cannot be used in most practical applications because the entire Viterbi lattice must be preserved.

비터비 알고리즘에서, 격자는 일정한 시간 경과 후 수렴하는 경향이 있다. 메모리를 더욱 효율적으로 사용하기 위해, 격자(결정창)의 일부분만을 보존하는 것이 바람직하다. 그러므로 전체 격자를 기억할 필요 없이 복수의 데이터 시퀀스의 추정치를 할당함으로써 비터비 알고리즘보다 개선된 성능을 제공하는 것이 실용적인 디코딩 체계를 위해 바람직하다.In the Viterbi algorithm, the grid tends to converge after a certain period of time. In order to use the memory more efficiently, it is desirable to preserve only a portion of the grid (crystal window). It is therefore desirable for practical decoding schemes to provide improved performance over the Viterbi algorithm by assigning estimates of multiple data sequences without having to remember the entire grid.

<발명의 요약>Summary of the Invention

본 발명은 복수의 전이 경로가 단일 상태로 수렴되는 고정 길이 결정창을 이용하여 전송 데이터 신호를 디코딩하는 방법을 제공함으로써 전술한 문제점을 극복하고 장점을 제공하는 것이다. 결정창의 각 상태에 대해, 제2의 최상 시퀀스 및 관련 소프트 값에 대한 가능한 후보가 결정되고 제2의 최상 시퀀스 및 관련된 제2의 최상 소프트 값에 관한 기억된 후보와 비교된다. 가능한 후보 시퀀스와 연관된 소프트 값(신뢰도 표시)이 기억된 후보 시퀀스와 연관된 제2의 최상 소프트 값보다 작고, 가능한 후보 시퀀스 및 비터비 알고리즘에 의해 발생된 최상 시퀀스가 결정창내의 공통 상태에서 수렴한다면, 제2의 최상 시퀀스에 대한 가능한 후보가 제2의 최상 시퀀스에 대한 기억된 후보를 대체한다. 본 발명에 따른 방법은 기존의 소프트 값 및 최상 전이 경로가 메모리로부터 버려지므로 디코딩 동작을 완수하기 위해 전체 격자가 보존될 필요가 없다.The present invention overcomes the above-mentioned problems and provides advantages by providing a method of decoding a transmission data signal using a fixed length decision window in which a plurality of transition paths converge to a single state. For each state of the decision window, the possible candidates for the second best sequence and associated soft value are determined and compared with the stored candidates for the second best sequence and associated second best soft value. If the soft value (confidence indication) associated with the possible candidate sequence is less than the second best soft value associated with the stored candidate sequence, and the best candidate sequence and the best sequence generated by the Viterbi algorithm converge in a common state within the decision window, Possible candidates for the second best sequence replace the memorized candidates for the second best sequence. The method according to the invention does not need to preserve the entire grid to complete the decoding operation since the existing soft value and the best transition path are discarded from memory.

본 발명은 일반적으로 인코딩된 데이터 통신 신호의 디코딩에 관한 것이며, 특히 고정 길이 결정창을 이용한 개선된 디코딩 방법에 관한 것이다.The present invention relates generally to the decoding of encoded data communication signals, and more particularly to an improved decoding method using fixed length determination windows.

첨부 도면을 참고로 한 하기의 양호한 실시예에 대한 설명을 보면 본 발명을 더욱 완벽히 이해할 수 있을 것이다. 도면에서 유사한 부호는 유사한 성분을 가리키는 것이다.The invention will be more fully understood from the following description of the preferred embodiments with reference to the accompanying drawings. Like reference numerals in the drawings indicate like elements.

도 1은 본 발명의 방법이 사용될 수 있는 통상적인 통신 시스템에서 수신기의 블록도이고;1 is a block diagram of a receiver in a typical communication system in which the method of the present invention may be used;

도 2는 본 발명의 실시예에 따른 비터비 격자에서 결정창을 도시한 도면이며;2 illustrates a crystal window in a Viterbi grating according to an embodiment of the present invention;

도 3은 본 발명의 실시예에 따른 방법을 설명하는 흐름도이다.3 is a flowchart illustrating a method according to an embodiment of the invention.

도 2를 보면, 길이가 w" + w'인 고정-길이 결정창이 도시되어 있다. 모든 역-추적 시퀀스는 상태 S를 통해 진행한다. 상기 상태로부터 본 발명의 방법에 따라 가능한 후보 시퀀스가 생성될 수 있다.2, a fixed-length determination window of length w "+ w 'is shown. All back-tracking sequences proceed through state S. From this state possible candidate sequences will be generated according to the method of the present invention. Can be.

통상적인 비터비 알고리즘(VA)은 확률적으로 가장 가능성이 있는 전송 비트 시퀀스를 추정한다. 이러한 시퀀스에 대한 가능한 대안의 리스트를 발생시키기 위해, 본 발명에 따르면, 하기의 추가적인 정보가 디코더에서 발생되거나 보존된다.A typical Viterbi algorithm (VA) estimates the probability of the most likely transmission bit sequence. In order to generate a list of possible alternatives to this sequence, according to the invention, the following additional information is generated or preserved at the decoder.

- VA에서 배제되는 경로에 관한 정보가 보존되는데, 이는 도 2를 참고하면 t=k와 t=k+w' 사이의 모든 상태에 대해 행해진다. 따라서 요구되는 메모리는 w'*N*w" 비트이다. 어떤 경로가 제2의 최상 경로로 보존될 것인지에 대한 결정(통상적인 VA에서 이루어지지 않는 결정)은 t=k+w'에서 행해진다. t=k+w'에서 상태 S의 칼럼에 있는 각각의 상태로 들어오는 제2의 최상 경로는 고정-길이 결정창 칼럼이 t=k를 지나 시프트될 때까지 기억된다.Information on paths excluded from VA is preserved, which is done for all states between t = k and t = k + w 'with reference to FIG. Thus the required memory is w '* N * w "bits. The determination of which path is to be preserved as the second best path (a decision not normally made in VA) is made at t = k + w'. The second best path entering each state in the column of state S at t = k + w 'is stored until the fixed-length decision window column is shifted past t = k.

- t=k와 t=k+w'사이의 각 상태에 대한 신뢰도 측정, 즉 "소프트" 측정은 보존된다. 이러한 신뢰도 측정은 그 상태로부터 시프트되는 비트의 확실성을 가리킨다. 신뢰도 측정은, 예컨대, 시간 t=k+w'에서 동일한 상태로 이르는 두 개의 인입 경로 사이의 누산 매트릭의 절대값 차이로서 계산될 수 있다. 한 경로는 시프트되는 "1" 심벌에 대응하고 다른 경로는 시프트되는 "0"에 대응한다. 결정창이 시프트될 때마다, 새로운 칼럼(도 2에서 가장 오른쪽 칼럼)에 대해 그 다음 최상 경로 및 소프트 값이 결정된다.Reliability measurements, ie "soft" measurements, for each state between t = k and t = k + w 'are preserved. This reliability measure indicates the certainty of the bit shifted out of that state. The reliability measure can be calculated, for example, as the difference in the absolute value of the accumulation metric between two incoming paths leading to the same state at time t = k + w '. One path corresponds to a "1" symbol to be shifted and the other path corresponds to a "0" to be shifted. Each time the decision window is shifted, the next best path and soft value is determined for the new column (rightmost column in FIG. 2).

- 임계값 MINSOFT이 발생되며, 이는 대안 시퀀스에 대한 가능한 후보가 발생될 필요가 있는지 판정하는데 사용된다.Threshold MINSOFT is generated, which is used to determine if a possible candidate for an alternative sequence needs to be generated.

결정창내에 대안 시퀀스를 발생시키기 위해 통상적인 VA는 결정창이 추정된 심벌로 채워질 때까지 실시된다. (0에서 시작하여) w'+w" 비트 시간 후 결정창이 채워지고 가능한 대안 시퀀스가 유도될 수 있다. 그러므로, 그 때에 최상 시퀀스에 대한 가능한 대안을 발생시키기 위해, 도 2에 굵은 선으로 도시된 VA 추정 시퀀스의 부분을 대안 시퀀스로 교환한다. 이를 위한 조건은 다음과 같다:To generate an alternative sequence in the decision window, a conventional VA is run until the decision window is filled with the estimated symbols. After the w '+ w "bit time (starting at 0) the decision window can be filled and a possible alternative sequence can be derived. Therefore, in order to generate a possible alternative to the best sequence at that time, shown in bold in FIG. Replace part of the VA estimation sequence with an alternative sequence, with the following conditions:

- 상태 S로부터 시프트될 비트는 현재의 임계값 MINSOFT보다 작은 소프트 값을 갖는다. 말하자면 그 비트는 다른 기존의 디코딩된 비트보다 신뢰도가 낮다. 상태 S는 시간 t=k+w'에서 최상 경로로부터 결정된다.The bit to be shifted out of state S has a soft value less than the current threshold MINSOFT. In other words, the bit is less reliable than other conventional decoded bits. State S is determined from the best path at time t = k + w '.

- (도 2에 도시된) VA에 의해 추정된 시퀀스 및 대안 시퀀스는 결정창내에서 예컨대 t=k-w" 이전에 재-병합되어 대안 시퀀스의 적절한 "터미네이션"을 달성하여야 한다.The sequence estimated by the VA (shown in FIG. 2) and the alternative sequence must be re-merged in the decision window, for example before t = k-w, to achieve the appropriate "termination" of the alternative sequence.

이러한 조건이 충족되면, 가능한 대안 시퀀스가 구성되는데, 이는 (도 2에 점선으로 도시된) 상태 S에 이르는 다른 경로를 선택한 다음 격자를 역-추적하여 실시된다. MINSOFT는 상태 S의 소프트 값으로 갱신되고, 제2의 최상 시퀀스에 대한 기존의 후보는 새로 발견된 시퀀스로 대체된다.If this condition is met, a possible alternative sequence is constructed, which is done by selecting another path to state S (shown in dashed lines in FIG. 2) and then back-tracking the grating. The MINSOFT is updated with the soft value of state S, and the existing candidate for the second best sequence is replaced with the newly found sequence.

가능한 대안 시퀀스가 구성되면 새로운 비트 결정을 실시한다. 결정창은 새로 수신된 비트를 위한 공간을 만들어 주기 위해 (도 2에서 오른쪽으로) 시프트된다. 가능한 대안 시퀀스가 생성되는지 여부에 관계없이 결정창의 길이는 일정하다. 도 2를 보면, 결정창은 이제 t=k-w"+1과 t=k+w'+1 사이에 격자를 포함한다. 상태 S는 t=k+1의 칼럼에서 발견할 수 있다. t=k+1과 t=k-w"+1 사이에 시퀀스가 발생될 수 있는지 체크하기 위해 앞서 설명한 체계를 다시 실행한다. 이러한 스텝은 격자가 터미네이트될 때까지, 즉 현행 버스트의 모든 비트가 디코딩될 때까지 실시된다.When a possible alternative sequence is constructed, a new bit decision is made. The decision window is shifted (to the right in FIG. 2) to make room for the newly received bits. The length of the decision window is constant regardless of whether a possible alternative sequence is generated. 2, the decision window now includes a lattice between t = kw "+1 and t = k + w '+ 1. State S can be found in the column t = k + 1. T = k Run the scheme described earlier to check if a sequence can occur between +1 and t = kw "+1. This step is performed until the grating is terminated, i.e. all the bits of the current burst are decoded.

전송 시퀀스의 두 개의 추정치를 발생시키기 위해, 최상 추정치가 통상적인 VA에 의해 생성되고, 제2의 최상 추정치는 본 발명에 따라 발생된다. 몇 개(L)의 추정 시퀀스의 리스트를 발생시키기 위해, 전술한 알고리즘은 대안 시퀀스에 대한 가능한 후보의 리스트도 취급하도록 확장될 수 있는데, 여기서 후보 시퀀스는 그 대응하는 MINSOFT 값과 함께 보존된다. 새로운 후보 시퀀스를 발생할 것인지 여부를 결정할 때에는, 상태 S의 소프트 값이 임의의 기억된 MINSOFT 값보다 작은지 리스트를 체크한다. 만약 작다면, 발생 동작을 실시하고 새로 발견된 후보를 리스트에 삽입한다. 삽입은 리스트가 MINSOFT 값이 증가하는 형태로 분류되도록 행해진다. 즉, 리스트는 가능성이 낮은 것 순으로 분류되는 것이 바람직하다. 결정창을 시프트하고 절차를 반복한다.In order to generate two estimates of the transmission sequence, the best estimate is generated by a conventional VA and a second best estimate is generated in accordance with the present invention. To generate a list of several (L) estimated sequences, the algorithm described above can be extended to handle a list of possible candidates for alternative sequences, where the candidate sequences are preserved with their corresponding MINSOFT values. When determining whether to generate a new candidate sequence, the list is checked to see if the soft value of state S is less than any stored MINSOFT value. If it is small, it executes the generation operation and inserts the newly found candidate into the list. Insertion is done so that the list is sorted in increasing MINSOFT values. In other words, the list is preferably sorted in order of least likely. Shift the decision window and repeat the procedure.

도 3에는 본 발명의 실시예에 따른 디코딩 방법을 설명하는 흐름도가 도시되어 있다. 이 방법은 수신한 코딩된 데이터 시퀀스로부터 가장 가능성있는 데이터 시퀀스를 결정하도록 디코더, 복조기, 균등화기 또는 다른 유사한 장치에서 실시될 수 있다. 흐름도는 스텝(100)에서 시작하는데, 여기서 도 2에 도시된 고정-길이 결정창이 갱신(시프트)되고, 통상적인 VA 디코딩이 실시되어 최상 전이 경로를 결정한다. 도 2에 도시된 바와 같이, 결정창은 복수의 전이 경로가 시간 t=k에서 상태로 수렴되는 상태를 포함하며, 시간 t=k로부터 제1 시간 또는 비트 옵셋 w'만큼 전방으로, 제2 시간 또는 비트 옵셋 w"만큼 후방으로 확장한다.3 is a flowchart illustrating a decoding method according to an embodiment of the present invention. This method may be implemented in a decoder, demodulator, equalizer or other similar device to determine the most probable data sequence from the received coded data sequence. The flowchart begins at step 100 where the fixed-length decision window shown in FIG. 2 is updated (shifted), and conventional VA decoding is performed to determine the best transition path. As shown in FIG. 2, the decision window includes a state in which a plurality of transition paths converge to a state at time t = k, and a second time forward from the time t = k by the first time or bit offset w ′. Or extend backward by the bit offset w ".

스텝(101)에서, w"보다 큰 비트가 디코더에서 수신되었는지 판정한다. w" 비트에 이르기까지 최상 시퀀스와 다른 대안 시퀀스가 없기 때문에 제1의 w" 비트에 대해 추가적인 정보를 보존할 필요가 없다.In step 101, it is determined whether a bit larger than w " has been received at the decoder. There is no need to preserve additional information for the first w " bit because there are no alternative sequences different from the best sequence up to the w " bit. .

스텝(102)에서, 가능한 다음의 최상 전이 경로 및 연관된 소프트 정보(신뢰도 표시)가 현재 시간 t=k+w'에서 각 상태에 대해 판정된다. 이는 격자를 역-추적하여 t=k+w'에서 각 상태에 대해 최상 시퀀스 및 제2의 최상 시퀀스를 판정하는 것으로 실시된다. 소프트 값은 (매트릭 0 - 매트릭 1)의 절대값으로 계산되며, 여기서 매트릭 0 및 매트릭 1은 누산된 진폭 크기이다. 스텝(103)에서는 결정창이 채워졌는지를 판정한다. 채워졌다면, 스텝(104)에서 상태 S(최상 신뢰도 표시를 갖는 t=k+w'에서 상태로부터 격자를 역-추적하여 발견한 상태)가 선택된다.In step 102, the next possible best transition path and associated soft information (reliability indication) is determined for each state at the current time t = k + w '. This is done by back-tracking the grid to determine the best sequence and the second best sequence for each state at t = k + w '. The soft value is calculated as the absolute value of (metric 0-metric 1), where metric 0 and metric 1 are accumulated amplitude magnitudes. In step 103, it is determined whether the decision window is filled. If filled, the state S (state found by back-tracking the grating from the state at t = k + w 'with the best confidence indication) is selected.

스텝(105)에서는 스텝(104)에서 판정된 상태 S의 소프트 정보(신뢰도 표시) SOFT가 임계 신뢰도 표시 MINSOFT와 비교되고; 만약 SOFT가 MINSOFT보다 작지 않다면 프로세스는 스텝(100)으로 되돌아가고 고정-길이 결정창이 시프트되어 새로운 최상 상태 S가 결정된다. L 시퀀스의 리스트가 추정된다면, (L-1) MINSOFT 값이 존재한다.In step 105, the soft information (reliability indication) SOFT of the state S determined in step 104 is compared with the threshold reliability indication MINSOFT; If the SOFT is not less than MINSOFT, the process returns to step 100 and the fixed-length decision window is shifted to determine a new best state S. If the list of L sequences is estimated, then there is a (L-1) MINSOFT value.

만약 SOFT가 MINSOFT보다 작다면 스텝(106)으로 진행하여 최상 경로 및 제2 최상 경로가 시간 k, 시간 옵셋 w', 그 다음 최상 경로의 길이 w"에 의해 규정되는 결정창이 끝나기 전의 어떤 포인트에서 병합되었는지를 판정한다. 다음 최상 경로에 대한 최상 가능한 후보가 병합되지 않았다면(즉, 시퀀스가 w" 비트 이상으로 다르다면), 프로세스는 스텝(100)으로 진행하여 고정-길이 결정창이 시프트되고 새로운 상태 S가 결정된다. 다음 최상 경로에 대한 최상 가능한 후보가 병합되었다면, MINSOFT의 값은 SOFT의 값과 동일하게 설정되며, 기존의 다음 최상 경로는 메모리로부터 버려지고 길이 w"인 새로운 다음 최상 경로가 스텝(107)에서 구해진다.If SOFT is less than MINSOFT, proceed to step 106 where the best path and the second best path merge at some point before the end of the decision window defined by time k, time offset w ', and then the length of the best path w ". If the best possible candidates for the next best path have not been merged (ie, the sequence differs by more than w " bits), the process proceeds to step 100 where the fixed-length decision window is shifted and the new state S is determined. Is determined. If the best possible candidates for the next best path have been merged, the value of MINSOFT is set equal to the value of SOFT, and the existing next best path is discarded from memory and a new next best path of length w " Become.

전술한 방법은 예컨대 도 1에 도시된 시스템과 같은 GSM 시스템의 채널 디코더에서 실시될 수 있다. 이 방법은 기계가 판독할 수 있는 컴퓨터 코드로 컴퓨터 디스크와 같은 적절한 기억 매체에 인코딩될 수 있다. 통상적인 결정창은 예를들어 31 비트의 길이 및 대략 14 비트의 옵셋 w'을 갖는다. 그러나 다른 결정창 길이 및 옵셋 w'도 사용될 수 있다.The above-described method may be implemented in a channel decoder of a GSM system such as the system shown in FIG. 1, for example. This method may be encoded in a suitable storage medium such as a computer disk with machine readable computer code. A typical decision window, for example, has a length of 31 bits and an offset w 'of approximately 14 bits. However, other decision window lengths and offsets w 'can also be used.

전술한 설명에서, "경로"와 "시퀀스"란 용어는 상호 교환하여 사용될 수 있다.In the foregoing description, the terms "path" and "sequence" may be used interchangeably.

전술한 설명에는 세세한 특정 사항이 많이 포함되어 있지만, 이는 단지 설명을 위한 것이며 본 발명을 제한하려는 것이 아니라는 것을 이해하여야겠다. 본 기술분야에 숙련된 사람이면 하기의 청구범위 및 그와 동등한 것에 의해 규정되는 바와 같은 본 발명의 정신 및 범주에서 벗어나지 않는 여러 가지 변형예를 쉽게 이해할 수 있을 것이다.While the foregoing description contains many specific details, it is to be understood that this is for illustrative purposes only and is not intended to limit the invention. Those skilled in the art will readily appreciate various modifications without departing from the spirit and scope of the invention as defined by the following claims and their equivalents.

Claims (16)

인코딩된 데이터 심벌을 가진 전송된 통신 신호의 시퀀스를 디코딩하는 방법에 있어서,A method of decoding a sequence of transmitted communication signals having encoded data symbols, the method comprising: 디코더의 디코딩 격자(trellis)내의 결정창(decision window)에서의 각각의 상태에 대해 다음번 최상 디코딩 경로에 대한 가능한 후보 및 연관된 신뢰도 표시자를 결정하고, 다음번 최상 디코딩 경로에 대한 각각의 가능한 후보를 기억되어 있는 최상 디코딩 경로와 비교하는 단계;For each state in the decision window in the decoding trellis of the decoder, a possible candidate for the next best decoding path and an associated reliability indicator are determined, and each possible candidate for the next best decoding path is stored. Comparing with the best decoding path present; 상기 신뢰도 표시자가 임계값보다 작지 않거나 최상 디코딩 경로 및 가능한 다음번 최상 디코딩 경로가 결정창 동안에 합병되지 않았다면 결정창을 시프트하는 단계; 및Shifting the decision window if the confidence indicator is not less than a threshold or if the best decoding path and possibly the next best decoding path were not merged during the decision window; And 상기 신뢰도 표시자가 임계값보다 작고 최상 디코딩 경로 및 가능한 다음번 최상 디코딩 경로가 결정창 동안에 합병되었다면, 새로운 임계값을 신뢰도 표시자로 규정하고, 이 새로운 임계값과 연관된 가능한 다음번 최상 경로를 다음번 최상 경로에 대한 새로운 기억된 후보로서 메모리에 보존하고, 모든 다른 다음번 최상 경로를 폐기하고, 결정창을 시프트하는 단계If the reliability indicator is less than the threshold and the best decoding path and the next best decoding path merged during the decision window, define a new threshold as the reliability indicator and define the next possible best path associated with this new threshold for the next best path. Preserving in memory as a new memorized candidate, discarding all other next best path, and shifting the decision window 를 포함하는 것을 특징으로 하는 방법.Method comprising a. 제1항에 있어서, 상기 신뢰도 표시자는 다음번 최상 디코딩 경로에서 각각의 디코딩된 심벌의 진폭에 기초하는 것을 특징으로 하는 방법.2. The method of claim 1, wherein the reliability indicator is based on the amplitude of each decoded symbol in the next best decoding path. 제1항에 있어서, 상기 결정창이 고정-길이 결정창인 것을 특징으로 하는 방법.The method of claim 1, wherein the crystal window is a fixed-length crystal window. 제1항에 있어서, 상기 결정창내의 각각의 상태는 상기 결정 단계에 앞서 비터비(viterbi) 알고리즘을 사용하여 디코딩되는 것을 특징으로 하는 방법.2. The method of claim 1, wherein each state in the decision window is decoded using a Viterbi algorithm prior to the determining step. 제1항에 있어서, 상기 신뢰도 표시자는 |매트릭0 - 매트릭1|- 여기서 매트릭0 및 매트릭1은 순차 디코딩된 심벌의 누산 매트릭 진폭 크기임 - 로 계산되는 것을 특징으로 하는 방법.2. The method of claim 1, wherein the reliability indicator is calculated as: metric0-metric1-where metric0 and metric1 are cumulative metric amplitude magnitudes of sequentially decoded symbols. 제1항에 있어서, 상기 결정 단계는 데이터 심벌의 수신 임계치가 디코더에 의해 수신된 후에만 실행되는 것을 특징으로 하는 방법.The method of claim 1, wherein said determining step is performed only after a reception threshold of a data symbol is received by a decoder. 제1항에 있어서, 상기 결정 단계는 결정창내의 모든 심벌이 디코더에 의해 수신된 후에만 실행되는 것을 특징으로 하는 방법.The method of claim 1, wherein the determining step is executed only after all the symbols in the decision window have been received by the decoder. 제1항에 있어서, 상기 기억된 최상 디코딩 경로는 비터비 알고리즘에 의해 발생되는 것을 특징으로 하는 방법.2. The method of claim 1, wherein the stored best decoding path is generated by a Viterbi algorithm. 기계 판독 가능 컴퓨터 코드로 인코딩된 기억 매체에 있어서,A storage medium encoded with machine readable computer code, comprising: 디코더 격자의 결정창에서 각각의 상태에 대해 다음번 최상 디코딩 경로에 대한 가능한 후보 및 연관된 제2 최상 신뢰도 표시자를 결정하고, 다음번 최상 디코딩 경로에 대한 각각의 가능한 후보를 기억된 최상 디코딩 경로와 비교하는 수단;Means for determining a possible candidate for the next best decoding path and an associated second best confidence indicator for each state in the decision window of the decoder grid and comparing each possible candidate for the next best decoding path with the stored best decoding path. ; 상기 제2의 최상 신뢰도 표시자가 임계값보다 작지 않거나 최상 디코딩 경로 및 가능한 다음번 최상 디코딩 경로가 결정창 동안에 합병되지 않았다면 결정창을 시프트하는 수단; 및Means for shifting a decision window if the second best confidence indicator is not less than a threshold or if the best decoding path and possibly the next best decoding path were not merged during the decision window; And 상기 신뢰도 표시자가 임계값보다 작고 최상 디코딩 경로 및 가능한 다음번 최상 디코딩 경로가 결정창 동안에 합병되었다면, 새로운 임계값을 신뢰도 표시자로 규정하고, 이 새로운 임계값과 연관된 가능한 다음번 최상 경로를 다음번 최상 경로에 대한 새로운 기억된 후보로서 메모리에 보존하고, 모든 다른 다음번 최상 경로를 폐기하고, 결정창을 시프트하는 수단If the reliability indicator is less than the threshold and the best decoding path and the next best decoding path merged during the decision window, define a new threshold as the reliability indicator and define the next possible best path associated with this new threshold for the next best path. Means for saving in memory as a new memorized candidate, discarding all other next best path, and shifting the decision window 을 구비하는 것을 특징으로 하는 기억 매체.And a storage medium. 제9항에 있어서, 상기 신뢰도 표시자는 다음번 최상 디코딩 경로에서 각각의 디코딩된 심벌의 진폭에 기초 하는 것을 특징으로 하는 기억 매체.10. The storage medium of claim 9, wherein the reliability indicator is based on the amplitude of each decoded symbol in the next best decoding path. 제9항에 있어서, 상기 결정창이 고정-길이 결정창인 것을 특징으로 하는 기억 매체.10. The storage medium of claim 9, wherein the determination window is a fixed-length determination window. 제9항에 있어서, 상기 결정창내의 각각의 상태는 비터비 알고리즘을 사용하여 미리 디코딩되는 것을 특징으로 하는 기억 매체.10. The storage medium of claim 9, wherein each state in the decision window is decoded in advance using a Viterbi algorithm. 제9항에 있어서, 신뢰도 표시자는 |매트릭0 - 매트릭1| - 여기서 매트릭0 및 매트릭1은 순차 디코딩된 심벌의 누산 매트릭 진폭 크기임 - 로 계산되는 것을 특징으로 하는 기억 매체.10. The storage medium of claim 9, wherein the reliability indicator is calculated as: metric0-metric1, wherein metric0 and metric1 are cumulative metric amplitude magnitudes of sequentially decoded symbols. 제9항에 있어서, 상기 결정 수단은 데이터 심벌의 임계치가 디코더에 의해 수신된 후에만 실행되는 것을 특징으로 하는 기억 매체.10. The storage medium of claim 9, wherein said determining means is executed only after a threshold of data symbols is received by a decoder. 제9항에 있어서, 상기 결정 수단은 결정창내의 모든 심벌이 디코더에 의해 수신된 후에만 실행되는 것을 특징으로 하는 기억 매체.10. The storage medium of claim 9, wherein the determining means is executed only after all the symbols in the decision window have been received by the decoder. 제9항에 있어서, 상기 기억된 최상 디코딩 경로는 비터비 알고리즘에 의해 발생되는 것을 특징으로 하는 기억 매체.10. The storage medium of claim 9, wherein the stored best decoding path is generated by a Viterbi algorithm.
KR10-1998-0709037A 1996-05-10 1997-05-12 Method for decoding data signals using fixed-length decision window KR100488136B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR10-1998-0709037A KR100488136B1 (en) 1996-05-10 1997-05-12 Method for decoding data signals using fixed-length decision window

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/644,574 1996-05-10
KR10-1998-0709037A KR100488136B1 (en) 1996-05-10 1997-05-12 Method for decoding data signals using fixed-length decision window

Publications (2)

Publication Number Publication Date
KR20000010890A true KR20000010890A (en) 2000-02-25
KR100488136B1 KR100488136B1 (en) 2005-06-16

Family

ID=43669127

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-1998-0709037A KR100488136B1 (en) 1996-05-10 1997-05-12 Method for decoding data signals using fixed-length decision window

Country Status (1)

Country Link
KR (1) KR100488136B1 (en)

Also Published As

Publication number Publication date
KR100488136B1 (en) 2005-06-16

Similar Documents

Publication Publication Date Title
US6105158A (en) Screening for undetected errors in data transmission systems
US5537444A (en) Extended list output and soft symbol output viterbi algorithms
US5349589A (en) Generalized viterbi algorithm with tail-biting
US5577053A (en) Method and apparatus for decoder optimization
KR100491910B1 (en) Method and apparatus for detecting communication signals having unequal error protection
KR100554322B1 (en) Convolutional decoding with the ending state decided by crc bits placed inside multiple coding bursts
US5983385A (en) Communications systems and methods employing parallel coding without interleaving
EP0413505B1 (en) Generalized viterbi decoding algorithms
US8122327B2 (en) Symbol-level soft output viterbi algorithm (SOVA) and a simplification on SOVA
US20050091568A1 (en) Iterative decoding process
WO1996008895A9 (en) Method and apparatus for decoder optimization
US6161210A (en) List Viterbi algorithms for tailbiting convolutional codes
WO1999009696A1 (en) Communications systems and methods employing selective recursive decoding
JP5764670B2 (en) Decoding method and decoder
KR19990078237A (en) An add-compare-select circuit and method implementing a viterbi algorithm
US5822340A (en) Method for decoding data signals using fixed-length decision window
US6108386A (en) List Viterbi algorithms for continuous data transmission
US7228489B1 (en) Soft viterbi Reed-Solomon decoder
US6192500B1 (en) Method and apparatus for enhanced performance in a system employing convolutional decoding
KR100488136B1 (en) Method for decoding data signals using fixed-length decision window
US7123668B2 (en) Simple detector and method for QPSK symbols
JP2663034B2 (en) Double decoding method
MXPA98009332A (en) Method for decoding data signals using length decision window f
KR0150093B1 (en) Puncture pattern synchro/nonsynchro and phase moving detecting method of vitervi decoder
EP1931037A1 (en) Method and apparatus for processing data from a transmission or storage channel

Legal Events

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

Payment date: 20080425

Year of fee payment: 4

LAPS Lapse due to unpaid annual fee