KR19990063227A - 비터비 디코딩 장치 및 비터비 디코딩 방법 - Google Patents
비터비 디코딩 장치 및 비터비 디코딩 방법 Download PDFInfo
- Publication number
- KR19990063227A KR19990063227A KR1019980056323A KR19980056323A KR19990063227A KR 19990063227 A KR19990063227 A KR 19990063227A KR 1019980056323 A KR1019980056323 A KR 1019980056323A KR 19980056323 A KR19980056323 A KR 19980056323A KR 19990063227 A KR19990063227 A KR 19990063227A
- Authority
- KR
- South Korea
- Prior art keywords
- state
- terminated
- path
- decoding
- register
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/23—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using convolutional codes, e.g. unit memory codes
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/65—Purpose and implementation aspects
- H03M13/6577—Representation or format of variables, register sizes or word-lengths and quantization
- H03M13/6583—Normalization other than scaling, e.g. by subtraction
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/37—Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
- H03M13/39—Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes
- H03M13/41—Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using the Viterbi algorithm or Viterbi processors
- H03M13/4107—Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using the Viterbi algorithm or Viterbi processors implementing add, compare, select [ACS] operations
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/37—Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
- H03M13/39—Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes
- H03M13/41—Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using the Viterbi algorithm or Viterbi processors
- H03M13/4123—Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using the Viterbi algorithm or Viterbi processors implementing the return to a predetermined state
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/37—Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
- H03M13/39—Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes
- H03M13/41—Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using the Viterbi algorithm or Viterbi processors
- H03M13/4161—Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using the Viterbi algorithm or Viterbi processors implementing path management
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/37—Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
- H03M13/39—Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes
- H03M13/41—Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using the Viterbi algorithm or Viterbi processors
- H03M13/4161—Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using the Viterbi algorithm or Viterbi processors implementing path management
- H03M13/4169—Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using the Viterbi algorithm or Viterbi processors implementing path management using traceback
- H03M13/4176—Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using the Viterbi algorithm or Viterbi processors implementing path management using traceback using a plurality of RAMs, e.g. for carrying out a plurality of traceback implementations simultaneously
Landscapes
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Error Detection And Correction (AREA)
- Detection And Correction Of Errors (AREA)
- Compression Of Band Width Or Redundancy In Fax (AREA)
Abstract
레지스터 열은 각각의 상태에 대응하여 배열되는 절단 길이 만큼의 메모리 셀의 열 이외에 제공된다. 상태 00에 대응하는 상기 레지스터 열에서 개별 단에서의 선택기의 출력은 상기 레지스터 열의 레지스터(1021) 및 선택기에 입력된다. 전단에서의 상기 레지스터의 출력은 3개의 선택기에 각각 입력된다. 상기 3개의 선택기는, 수신 워드가 종결될 때 및 다른 경우에서 제어 회로에 의한 제어에 따라 후단으로의 출력을 교체한다. 따라서, 상기 수신 워드가 종결될 때, 상기 레지스터 열에 기억된 정보가 그대로 천이된다. 이러한 동작에 의해, 상태 00에 도달하는 경로는, 수신 워드가 종결될 때 디코드될 수 있다.
Description
본 발명은, 예를 들면, 위성 방송 등에 사용되는 길쌈 부호의 최대 개연성(maximum likelihood) 디코딩 방법에 사용되는 비터비(Viterbi) 디코딩 장치 및 비터비 디코딩 방법에 관한 것이다.
길쌈 부호를 디코드하는 방법중 하나로서, 비터비 디코딩 방법이 공지되어 있다. 비터비 디코딩 방법은 길쌈 부호에 대한 최대 개연성 디코딩 방법으로, 송신측 상의 인코더로부터 형성될 수 있는 코드 계열중 수신된 코드 계열에 가장 가까운 계열(이하에, 이러한 계열은 최대 개연성 경로라 함)을 선택함으로써 에러 교정을 실행한다. 즉, 송신측 상의 인코더에 의한 인코딩 방법에 근거하여 형성되는 천이도(이하에, 격자(trellis)라 함)가 전제조건으로서 사용된다. 예를 들면, 수신된 코드 계열로부터 해밍 거리가 가장 짧은 천이는 최대 개연성 경로로서 천이도 상에 발생할 수 있는 천이로부터 선택된다.
비터비 디코딩 방법을 실행하기 위한 비터비 디코딩 장치는 분기 매트릭스, 즉 클럭에 응답하여 격자 상의 각 상태에 도달하는 경로 및 수신된 코드 계열 간의 해밍 거리를 계산하기 위한 분기 매트릭스 계산 회로, 분기 매트릭스에 근거하여 상태 매트릭스를 계산하여, 그 상태 매트릭스의 값을 비교하고 최대 개연성 경로를 선택하기 위한 ACS 회로, 상태 매트릭스의 값을 죤화하기 위한 죤화 회로, 상태 매트릭스의 값을 기억하기 위한 상태 매트릭스 기억 회로, 및 상기 ACS에 의한 선택 결과에 따라 디코딩 데이터를 형성하기 위한 경로 메모리 회로를 포함한다.
이 경우에, 경로 메모리 회로로서, 레지스터 열을 이용하여 경로 선택 내용을 천이시키는 레지스터 천이법을 실행하기 위한 회로 및 RAM을 이용하여 경로 선택 내용을 기억하고 그 기억 내용을 탐색하여 디코드하는 방법을 실행하기 위한 회로라는 두가지 종류의 회로가 있다. 지금부터, 이 두가지 종류의 방법이 이하에 설명될 것이다.
일반적인 비터비 디코딩 장치에 사용된 레지스터 천이법에서, 선택기 및 레지스터를 각각 포함하는 메모리 셀이 경로 메모리 회로의 격자 상에 배열되고, ACS 회로로부터 출력되는 경로 선택 정보에 근거하여 레지스터의 내용이 천이된다. 최종단에서의 메모리 셀의 출력들 중에서 최대 개연성 상태의 출력을 선택함으로써, 최대 개연성 경로의 정보가 선택되고 디코딩 데이터가 출력된다.
이러한 레지스터 천이법은 고속 동작이 실행될 수 있다는 장점을 갖지만, 절단 길이가 증가하면, 회로 크기가 매우 커진다는 단점이 있다. 특히, 최근 절단 길이가 100을 초과하는 응용도 존재하기 때문에, 회로 크기의 증가는 심각한 문제가 된다.
최근에, RAM(랜덤 액세스 메모리)을 이용하여 경로 정보를 기억하고 기억된 정보를 탐색함으로써 디코드하는 방법이 활발하게 연구되고 있다. 지금부터, 이러한 방법은 이하에 역탐색 방법이라 한다.
길쌈 부호의 인코딩을 종결하는 방법으로서, 종결(termination)이 공지되어 있다. 종결된 길쌈 부호가 비터비 디코드될 때, 최대 개연성 경로는 모든 0의 상태로부터 경로를 역탐색하여 디코드함으로써 얻어질 수 있다. 지금까지 사용된 비터비 디코딩 장치에서, 종결된 길쌈 부호가 연속해서 수신될 때, 디코딩은 많은 경우에 정상 동작에 의해 실행된다.
이러한 디코딩 방법에서, 다음의 길쌈 부호가 종결된 길쌈 부호에 후속으로 연속해서 입력될 때, 정밀한 최대 개연성 디코딩은 실행될 수 없으므로, 디코딩 에러가 발생할 우려가 있다는 문제가 있다. 이러한 문제는, 비터비 디코딩이 수행될 때 종결 구간을 고려하고 있지 않다는 점에 의해 유발되기 때문에, 이 문제는 또한 상술된 레지스터 천이법 및 역탐색 방법 모두에서 역시 발생한다.
본 발명은 이러한 상황을 고려하여 제안된 것이다. 따라서, 본 발명의 목적은 종결된 길쌈 부호에 대해서도 엄격한 최대 개연성 디코딩을 실행할 수 있는 비터비 디코딩 장치 및 비터비 디코딩 방법을 제공하는 것이다.
본 발명은 종결될 상태에 도달하는 경로를 확실히 디코드하기 위한 종결 상태 경로 디코딩 수단을 포함하며, 종결된 길쌈 부호를 연속해서 수신하기 위한 비터비 디코딩 장치이다.
본 발명은 종결될 상태에 도달하는 경로를 확실히 디코드하는 종결 상태 경로 디코딩 단계를 포함하며, 종결된 길쌈 부호를 연속해서 수신하는 비터비 디코딩 방법이다.
상술된 본 발명에 따르면, 종결될 상태에 도달하는 경로가 확실히 디코드될 수 있기 때문에, 종결된 길쌈 부호에 대해 최대 개연성 디코딩을 실행할 수 있다.
상기 및 본 발명의 다른 목적, 특징 및 장점은 첨부한 도면을 참조하여 읽을 때 다음의 상세한 설명으로부터 용이하게 알 수 있을 것이다.
도 1은 본 발명의 실시예의 전체 구성을 설명하기 위한 블록도.
도 2는, 제한 길이 = 3일 때, 천이도를 설명하기 위한 블록도.
도 3은 종래에 사용된 일반적인 장치의 상태 매트릭스 기억 회로를 설명하기 위한 블록도.
도 4는 레지스터 천이법에서 경로 메모리의 메모리 셀을 설명하기 위한 개략도.
도 5는 레지스터 천이법에서 경로 메모리의 메모리 셀의 배열을 설명하기 위한 개략도.
도 6은 종결(termination)을 설명하기 위한 개략도.
도 7은 제한 길이 = 3의 길쌈 인코더의 예를 도시한 개략도.
도 8의 (a) 및 도 8의 (b)는 종결시 격자, 및 종래에 사용된 비터비 디코딩 장치의 디코딩 에러를 설명하기 위한 개략도.
도 9는 본 발명의 제1 실시예에서의 경로 메모리 회로를 설명하기 위한 블록도.
도 10은 본 발명의 제2 실시예에서의 경로 메모리 회로를 설명하기 위한 블록도.
도 11은 역탐색 방법에서 탐색 원리를 설명하기 위한 개략도.
도 12는 역탐색 방법에서 탐색 방법을 설명하기 위한 개략도.
도 13은 종래에 사용된 일반적인 역탐색 방법(trace-back method)에서 각각의 RAM의 역할을 설명하기 위한 개략도.
도 14는 종래에 사용된 일반적인 역탐색 방법에서 메모리 동작을 설명하기 위한 블록도.
도 15는 본 발명의 제3 실시예에서의 경로 메모리 회로를 설명하기 위한 블록도.
도 16은 본 발명의 제4 실시예에서의 경로 메모리 회로를 설명하기 위한 블록도.
도 17은 상태 00으로부터의 경로에 대한 매트릭스를 설명하기 위한 개략도.
도면의 주요 부분에 대한 부호의 설명
705 : 경로 메모리 회로
101 : 제어 회로
805, 905 : 경로 메모리 회로
1004 : 상태 매트릭스 기억 회로
지금부터, 본 발명의 제1 실시예가 도면을 참조하여 이하에 설명될 것이다. 먼저, 지금부터, 본 발명의 제1 실시예의 전체 구성이 도 1을 참조하여 설명될 것이다. 본 발명의 제1 실시예는 분기 매트릭스 계산 회로(701), ACS 회로(702), 죤화 회로(703), 상태 매트릭스 기억 회로(704), 및 경로 메모리 회로(705)를 포함한다. 송신 경로를 통해 송신측으로부터 수신된 데이터가 입력될 때, 송신측 상의 인코더로부터 형성될 수 있는 코드 계열로부터 최대 개연성 경로가 선택되고 디코딩 데이터가 선택 내용에 근거하여 형성된다.
즉, 예를 들어, 송신측 상의 인코더에 의한 인코딩 방법에 근거하여 형성되는 도 2에 도시된 천이도(이하에, 격자(trellis)라 함)가 전제조건으로서 사용되고, 예를 들면, 수신된 코드 계열로부터 해밍 거리가 가장 짧은 경로는 천이도 상에 발생할 수 있는 천이로부터 최대 개연성 경로로서 선택된다.
수신 데이터 신호(s701)가 입력될 때, 분기 매트릭스 계산 회로(701)는 수신 데이터의 분기 매트릭스를 계산하고 계산 결과를 분기 매트릭스 신호(s702)로서 출력한다. 분기 매트릭스 신호(s702), 및 상태 매트릭스 기억 회로(s704)로부터 입력되는 상태 매트릭스 신호(s705)에 근거하여, ACS 회로(702)는 분기 매트릭스 및 상태 매트릭스를 임의의 상태에 결합하는 두개의 경로 각각에 가산하여, 이 가산값을 비교하며, 비교 결과에 근거하여 보다 높은 개연성을 갖는 가산값을 선택하고 이를 새로운 상태 매트릭스로 설정한다.
이렇게 선택된 내용은 경로 선택 정보(s706)로서 출력되며, 최소 상태 매트릭스를 갖는 상태수는 최대 개연성 상태 신호(s707)로서 출력되고, 새롭게 얻어진 상태 매트릭스는 새로운 상태 매트릭스 신호(s703)로서 출력된다.
지금부터, 경로를 선택하는 방법이 제한 길이 = 3인 경우에 대해 설명될 것이다. 도 2의 격자는 4개의 상태 00, 01, 10, 및 11을 갖고 제한 길이 = 3인 경우의 격자의 예를 가리킨다. 화살표는 매 시간 슬롯마다 발생할 수 있는 경로를 가리킨다. 디코딩 데이터 '0'에 대응하는 경로는 파선으로 도시되어 있다. 디코딩 데이터 '1'에 대응하는 경로는 실선으로 도시되어 있다. 결합한 두개의 경로는 매 시간 슬롯마다 모든 상태의 각각에 존재한다. 수신 신호와 경로 간의 해밍 거리(분기 매트릭스) 및 지금까지의 분기 매트릭스의 누적합(상태 매트릭스)은 임의의 상태에 결합하는 두개의 경로의 각각에 가산되며, 그 가산 결과가 비교되고, 비교 결과에 근거하여 보다 높은 개연성을 갖는 값이 선택된다.
죤화 회로(703)는 ACS 회로(702) 등으로부터 출력되는 새로운 상태 매트릭스 신호(s703)로부터 최소 상태 매트릭스를 감산하는 방법을 이용함으로써 죤화하며, 죤화된 값을 선정된 범위 내의 값으로 설정하고, 이를 죤화 상태 매트릭스 신호(s704)로서 출력한다. 상태 매트릭스 기억 회로(704)는 죤화 회로(703)로부터 출력되는 죤화 상태 매트릭스 신호(s704)를 기억하고 이를 상태 매트릭스 신호(s705)로서 ACS 회로(702)로 복귀시킨다. 상태 매트릭스 기억 회로(704)의 구성예가 도 3에 도시되어 있다. 기억 회로(704)는 도 2의 격자의 4가지 상태에 대응하여 4개의 레지스터를 갖는다. 4개의 레지스터 각각이 도 3에서는 5비트의 레지스터이지만, 다른 비트수의 레지스터도 역시 사용될 수 있다.
다음으로, 본 발명의 제1 실시예에서의 경로 메모리 회로(705)를 설명하기 전에, 쉽게 이해하도록 하기 위해, 레지스터 천이법을 실현하는 일반적인 경로 메모리 회로가 지금부터 설명될 것이다. 도 5는, 도 4에 도시된 선택기 및 레지스터를 각각 포함하는 메모리 셀이 도 2에 도시된 격자에 배열되는 경로 메모리 회로의 구성을 도시한다. 도 5에서, 메모리 셀은 MS로 도시되어 있다. 상기 구성에서, ACS 회로(702)로부터 출력되는 경로 선택 정보에 근거하여 레지스터의 내용을 천이시킴으로써, 각각의 상태로부터 살아있는 경로에 대응하는 정보는 각각의 메모리 셀의 레지스터에 보존된다. 따라서, 도 2에 도시된 격자가 전제조건으로서 사용되는 디코딩, 즉 4가지 상태가 있고 제한 길이 = 3이고 절단 길이 = 4인 경우의 레지스터 천이법에 의한 디코딩이 실현된다.
이러한 일반적인 경로 메모리 회로에서, 종결된 길쌈 부호가 연속해서 수신될 때 정밀한 최대 개연성 디코딩이 수행될 수 없다는 문제가 있다. 지금부터, 이 문제가 이하에 설명될 것이다. 길쌈 부호의 인코딩을 종결하기 위해 모든 정보 비트가 입력된 후 (제한 길이 - 1)수의 0을 인코더에 입력하는 방법이 공지되어 있다(도 6을 참조함). 상술된 바와 같이, 선정된 시점에서 인코더의 상태를 모두 0으로 설정하는 과정은 종결(termination)이라 한다. 인코딩 개시후 종결 마지막까지의 시계수는 종결 길이라 한다.
종결된 길쌈 부호를 비터비 디코드하는 경우, 모든 0 상태로부터의 경로를 역탐색하여 디코드함으로써, 최대 개연성 경로가 얻어질 수 있다. 그러나, 실제 비터비 디코딩 장치에서, 종결된 길쌈 부호를 연속해서 수신하는 경우, 디코딩은 흔히 통상의 동작에 의해 수행된다.
그러나, 이러한 디코딩 방법에서, 다음의 길쌈 부호가 종결된 길쌈 부호에 후속으로 연속해서 입력될 때, 정밀한 최대 개연성 디코딩이 수행될 수 없는 경우가 있다. 지금부터, 이러한 경우가 이하에 설명될 것이다. 도 7에 도시된 제한 길이 = 3의 길쌈 인코더를 사용하는 경우, 코드가 종결된 후 새로운 인코딩이 다음에 실행되는 경우가 지금부터 고려될 것이다. 이 경우에서 격자의 예는 도 8의 (a)에 도시되어 있다. 도 8의 (a)는, 종결 구간에 후속하는 코드가 모든 0 상태로부터의 경로를 역탐색하여 최대 개연성 경로를 얻음으로써 디코드되는 경우에 탐색되는 격자를 도시한다.
지금부터, 교정된 경로가 모든 0의 경로(도 8의 (b)에서 Pr)인 경우가 고려될 것이다. 이 경우에, 디코딩이 종결을 고려하지 않고 수행되면, 도 8의 (b)에 도시된 에러 경로 Pe가 디코드될 우려가 있다. 이는, 에러 경로 Pe인 경우, 모든 0의 경로로부터 해밍 거리가 6으로 작으므로, 디코딩 결과에 틀리게 설정된다는 확률이 비교적 높기 때문이다.
지금부터, 에러 경로 Pe가 틀리게 디코드된다고 가정하여, 종결이 실행되는 구간의 디코딩 비트가 무시되더라도, 한 비트의 에러는 송신 정보에 관한 정보 비트에 포함된다. 이 경로가 고유의 종결된 격자 상에 존재하지 않기 때문에, 종결 구간을 고려하여 정밀한 최대 개연성 디코딩이 수행되면, 이러한 디코딩 에러는 발생하지 않는다.
도 9는, 정밀한 최대 개연성 디코딩이 상기 상황의 관점에서 종결 구간을 고려하여 수행되는 본 발명의 제1 실시예에서의 경로 메모리 회로(705)의 구성을 도시한다. 각각의 상태에 대응하여 배열된 절단 길이 만큼 많은 메모리 셀의 열 이외에도, 경로 메모리 회로(705)는 레지스터 열(102)을 갖고 제어 회로(101)는 종결 정보에 근거하여 레지스터 열(102)을 제어한다.
즉, 상태 00에 대응하는 레지스터 열에서 제1 단, 제2 단, 제3 단, 및 제4 단에서의 선택기의 출력을 레지스터 열(102)에 있는 레지스터(102) 및 선택기(1022, 1024, 및 1026)에 각각 입력된다. 전단에서의 레지스터(1021, 1023, 및 1025)의 출력은 선택기(1022, 1024, 및 1026)에 각각 입력된다. 선택기(1022, 1024, 및 1026)의 각각은 제어 회로(101)의 명령에 응답하여 후단에서의 레지스터에 입력되는 데이터중 하나를 출력한다.
각각의 상태의 살아있는 경로에 대응하는 정보는 ACS 회로(702)로부터 입력되는 각 상태의 경로 선택 정보에 따라 천이시킴으로써 레지스터에 기억된다. 수신 워드가 종결될 때까지의 구간에서, 최종단에서의 출력들 중에서 최대 개연성 상태의 출력을 선택함으로써, 최대 개연성 경로에 대응하는 정보가 선택되고 디코딩 데이터가 출력된다. 이 구간에서, 예를 들면, '1'은 제어 회로에서 레지스터 열(102)로서 출력되고 상태 0에 대응하는 디코딩 워드는 또한 레지스터 열(102)에 기억된다.
한편, 수신 워드가 종결될 때, 제어 회로(101)에서 레지스터 열(102)로의 신호는, 예를 들면, '0'으로 교체되어, 레지스터 열(102)에 기억된 정보가 그대로 천이되도록 한다. 최종단에서의 회로(103)를 선택함으로써, 레지스터 열(102)의 출력은 디코딩 워드로서 그대로 출력된다. 이러한 동작에 의해, 상태 00에 도달하는 경로는 수신 워드가 종결될 때 디코드될 수 있다.
레지스터(102)의 내용이 출력될 때의 구간 동안, 다른 4개의 레지스터 열 각각은 후속하는 길쌈 부호에 대응하는 통상의 천이를 새롭게 개시하며, 레지스터 열(102)의 모든 내용이 출력됨과 동시에 상기 동작을 통상의 디코딩 동작으로 복귀시키고, 제어 회로(101)로부터의 신호를 '0'으로 교체한다. 상술된 본 발명의 제1 실시예에서, 종결된 길쌈 부호가 연속해서 입력되는 경우에서도, 디코딩 동작을 계속 진행하면서 종결될 상태에 도달하는 경로가 디코드될 수 있다. 따라서, 종결된 코드가 또한 엄밀하게 최대 개연성 디코드될 수 있고 디코딩 에러률이 개선될 수 있다.
지금부터, 본 발명의 제1 실시예와 다른 구성을 갖는 경로 메모리 회로(805)를 사용하는 본 발명의 제2 실시예가 설명될 것이다. 도 10은 본 발명의 제2 실시예에서 경로 메모리 회로(805)의 구성을 도시한다. 제한 길이 = 3 및 절단 길이 = 4의 디코딩을 수행할 때, 경로 메모리 회로(805)는 종결된 수신 워드에 대해서도 정밀한 최대 개연성 디코딩을 수행하기 위한 기능을 갖는다.
경로 메모리 회로(805)에서, 각각의 상태에 대응하여 배열된 절단 길이 만큼 많은 메모리 셀의 열에서, 상태 00에 대응하는 레지스터 열(203)의 각 메모리 셀의 선택기에 입력되는 신호는 제어 회로에 의해 제어된다. 즉, 선택기(204, 205, 206, 및 207)이 제공되고, 경로 선택 정보 및 '0'은 상기 선택기들에 입력된다. 제어 회로(201)로부터의 명령에 응답하여, 선택기(204 내지 207)의 각각은 제어 신호로서 경로 선택 정보 및 '0'중 하나를 레지스터 열(203)의 각각의 메모리 셀의 선택기에 입력된다.
다음의 동작은 이러한 구성에 의해 실현된다. 즉, 수신 워드가 종결될 때까지의 구간 동안, 경로 선택 정보가 제어 신호로서 상태 00의 레지스터 열(203)에 제공되고 통상의 레지스터 천이가 수행된다. 최종단에서의 출력들 중에서, 최대 개연성 상태의 출력을 선택함으로써, 최대 개연성 경로에 대응하는 정보가 선택되고 디코딩 데이터가 출력된다. 한편, 클럭시, 수신 워드가 종결될 때, 선택기(204 내지 207)가 상태 00의 레지스터 열(203)에 대해 제어 신호로서 '0'을 제공하도록 제어된다. 이 클럭에서 기억 내용이 그대로 천이된다.
다음의 클럭에서, 선택기(204)는 경로 선택 정보를 제1 단에서의 메모리 셀의 선택기에 제공하고, 선택기(205 내지 207)는 '0'을 제2 및 다음 단에서의 메모리 셀의 선택기에 제공한다. 더욱이, 다음 클럭에서, 선택기(204 및 205)는 경로 선택 정보를 제2 단까지의 메모리 셀의 선택기에 제공한다. 선택기(206 및 207)는 '0'을 제3 및 다음의 단에서의 메모리 셀의 선택기에 제공한다. 상기와 유사한 방식으로, 제어 신호는 절단 길이에 대응하는 신호수에 의해 순차적으로 교체된다. 종결시, 상태 00의 레지스터 열에 기억된 디코딩 워드의 출력이 완료될 때까지, 최종단에서의 선택 회로(202)는 디코딩 데이터로서 상태 00으로부터의 출력을 발생시킨다.
상태 00의 레지스터 열에 기억된 디코딩 워드의 출력이 종료될 때까지의 기간 동안, 경로 메모리는 후속으로 입력되는 길쌈 부호에 대해 통상적인 동작을 실행한다. 따라서, 종결된 코드의 디코딩 종료와 동시에, 동작이 통상적인 디코딩으로 복귀될 수 있다.
상술된 바와 같이, 또한 본 발명의 제2 실시예에서, 디코딩 동작을 계속 진행하면서 종결된 길쌈 부호가 연속해서 입력될 때도, 종결될 상태에 도달하는 경로가 디코드될 수 있다.
상술된 본 발명의 제1 및 제2 실시예는 전제조건으로서 레지스터 천이 방법에 관한 것이다. 종결된 길쌈 부호가 연속해서 입력되는 경우에 발생할 수 있는 디코딩 에러는 또한 유사하게 역탐색 방법에 의한 디코딩을 수행하기 위한 비터비 디코딩 장치에 문제가 된다. 따라서, 역탐색 방법에서의 문제를 해결하고자 본 발명의 제3 실시예가 지금부터 설명될 것이다. 이해를 쉽게 하기 위하여, 지금까지 사용된 일반적인 역탐색 방법이 먼저 설명될 것이다.
지금부터, 역탐색 방법에서 탐색의 원리적인 동작이, 예로서 제한 길이 = 3인 경우에 관하여 설명될 것이다. 도 11에서, 상태 01로부터 탐색하는 경우가 고려될 것이다. 상태 01로의 천이 가능성을 갖는 상태는 상태 00 및 상태 10이다. 상태 00측의 경로가 선택되면, 0이 경로 메모리에 기억된다. 상태 10측의 경로가 선택되면, 1(즉, 이전 상태의 최상위 비트)이 경로 메모리에 기억된다.
임의의 상태로부터 천이하는 경우에도, 입력은 '1'이고 이는 상태 01의 최하위 비트로서 표현된다. 상기 설명으로부터, 다음과 같은 탐색 동작을 실행하는데 충분하다. 도 12에 도시된 바와 같이, 탐색이 개시되는 탐색 개시 상태의 최하위 비트가 디코딩 비트에 설정된다. 탐색 개시 상태에 후속으로 탐색되는 다음의 탐색 상태수는 최상위 비트로서 경로 메모리의 비트를 탐색 개시 상태의 하위 제2 비트에 새롭게 가산함으로써 형성된다. 이러한 동작에 의해, 선택된 경로는 최소 상태 매트릭스가 얻어지는 상태로부터 탐색될 수 있다.
비터비 디코딩 장치가 고속으로 동작하도록 하기 위해, RAM은 매 클럭마다 한 번만 액세스될 수 있다. 한 번의 액세스로 각각의 RAM에 대한 디코딩을 수행하기 위해 단일 포트의 4개의 메모리를 갖는 경로 메모리 회로를 사용하는 경우에 대해 설명될 것이다. 다음의 설명에서, 코드의 제한 길이 = 3 및 절단 길이 = 4가 전제조건으로서 사용된다. 이 경우에 사용되는 경로 메모리 회로는 절단 길이에 대응하는 상태수 및 워드수(본 예에서, 4개의 워드) 만큼의 비트수(본 예에서, 4비트)를 갖는 단일 포트의 4개의 RAM을 갖는 경로 메모리 회로이다.
상태수 만큼 많은 경로 선택 정보가 ACS 회로(702)의 경로 메모리 회로에 매 클럭마다 입력된다. 4개의 RAM인 경우, 다음 4가지 기능 (1) 내지 (4)이 절단 길이에 대응하여 매 클럭(본 예에서, 4개의 클럭)마다 순차적으로 교체된다(도 13을 참조). 이러한 동작에 근거한 4개의 RAM 각각의 동작예가 도 14에 도시되어 있다.
(1) 경로 선택 정보가 순차적으로 기록된다.
(2) 기록된 경로 선택 정보에 근거하여 탐색이 순차적으로 수행된다. 디코딩은 수행되지 않는다.
(3) 액세스 없슴.
(4) (2)에서의 탐색 결과로부터 탐색이 순차적으로 수행되고 디코딩 비트가 출력된다.
역탐색 방법에 의한 디코딩은 경로 메모리 회로의 구성 및 동작에 의해 실현된다.
상술된 역탐색 방법을 수행하기 위한 비터비 디코딩 장치에서, 길쌈 부호의 종결에 관한 상기 문제를 해결하는 본 발명의 제3 실시예가 지금부터 설명될 것이다. 도 15는 본 발명의 제3 실시예에서의 경로 메모리 회로(905)의 구성을 도시한다. 경로 메모리 회로(905)는, (절단 길이) = (종결 길이/4) = 4인 디코딩이 제한 길이 =3 및 종결 길이 = 16의 코드에 대해 수행되는 경우 4비트 및 4워드의 단일 포트의 4개의 RAM을 이용하여 역탐색 방법에 의한 디코딩을 수행하기 위한 경로 메모리 회로이다. 지금부터, 경로 선택 정보를 RAM에 기록하는 개시점이 인코딩의 개시점에 일치한다고 가정한다.
RAM(30, 31, 32, 및 33)인 경우, ACS 회로로부터 입력되는 경로 선택 정보(s302)의 기록 및 기억된 경로 선택 정보의 판독은 제어 회로(301)에 의해 형성되는 제어 신호(s303)에 응답하여 수행되고, 판독 경로 선택 정보(s304, s305, s306, 및 s307)가 제어 회로(301)에 입력된다. 종래의 방법과 유사한 방식으로, 수신 워드가 종결될 때까지의 메모리 동작이 다음의 기능을 교체함으로써 실행된다.
(1) 경로 선택 정보가 순차적으로 기록된다.
(2) 기록된 경로 선택 정보에 근거하여 탐색이 순차적으로 실행된다. 디코딩은 수행되지 않는다.
(3) 액세스 없슴.
(4) (2)에서의 탐색 결과로부터 탐색이 순차적으로 수행되고 디코딩 비트가 출력된다.
종결된 구간이 디코드될 때, (4)의 역할을 수행하기 위한 RAM은 (2)의 탐색 결과 대신에 상태 00으로부터의 탐색을 개시하고 디코딩이 수행된다. 따라서, 제어 회로(301)는 종결 신호(s301)에 따라 각각의 RAM의 동작을 교체한다. 인코딩의 개시점이 RAM으로의 기록의 개시점과 일치되고, 절단 길이가 종결 길이의 1/4과 동일한 관계가 있기 때문에, 종결을 종료하는 타이밍은 탐색을 개시하는 타이밍과 일치한다. 종결된 구간의 디코딩 동안에도, 다음의 구간을 디코드하기 위한 (2)의 부분 탐색이 실행된다. 따라서, 종결된 코드의 디코딩 종료와 동시에, 통상의 디코딩 동작으로 복귀될 수 있다.
(4)에서의 탐색에 의해 디코드된 신호(s308)가 출력 버퍼(302)에 입력되고 고유의 시간 계열의 순서에 따라 재배열된다. 그 후, 디코딩 비트 신호(s309)로서 출력된다. 상술된 바와 같이, 또한 본 발명의 제3 실시예에서, 종결된 길쌈 부호가 연속해서 입력될 때도, 디코딩 동작을 계속 진행하면서 종결될 상태에 도달하는 경로가 디코드될 수 있다.
본 발명의 상기 제1, 제2, 및 제3 실시예는 경로 메모리 회로의 종결에 관한 문제를 해결하려고 한다. 한편, 지금부터 상태 매트릭스 기억 회로의 종결에 관한 문제를 해결할 수 있는 본 발명의 제4 실시예가 이하에 설명될 것이다. 본 발명의 제4 실시예의 전체 구성은 상술된 본 발명의 제1 실시예 등의 전체 구성과 유사하다. 본 발명의 제4 실시예에서의 상태 매트릭스 기억 회로(1004)의 구성이 도 16에 도시되어 있다. 상태 매트릭스 기억 회로(1004)는, 제한 길이 =3의 코드가 디코드될 때, 4비트의 분기 매트릭스 및 5비트의 상태 매트릭스가 설정되는 경우의 상태 매트릭스의 기억 회로이다.
선택기(401, 402, 403, 및 404)가 상태 00, 01, 10, 및 11에 도달하는 경로의 상태 매트릭스를 기억하기 위한 4개의 레지스터의 전단에 제공된다. 죤화된 상태 매트릭스의 값이 죤화 회로의 각각의 선택기에 입력된다. 값 0이 상태 00에 대응하는 레지스터(401)에 더 입력된다. 값 31(5비트로 표현되는 최대값)이 다른 상태에 대응하는 선택기(402 내지 404)에 더 입력된다. 종결 정보가 선택기(401 내지 404)에 입력되고, 각각의 선택기는 종결 정보에 근거하여 상태 매트릭스, 및 값 0 및 31중 하나를 출력한다. 클리핑(clipping)은, 상태 매트릭스가 ACS 회로(702)에서 오버플로우(overflow)하지 않도록 값 31로 수행된다.
상태 매트릭스 기억 회로(1004)에서, 선택기(401 내지 404)는, 수신 워드가 종결될 때까지의 기간 동안 상태 매트릭스의 값을 후단에서의 레지스터에 각각 출력한다. 따라서, 상태 매트릭스가 순차적으로 갱신되어 절단 길이 이전의 디코딩 데이터가 출력되는 통상의 디코딩이 수행된다. 한편, 수신 워드가 종결될 때, 각각의 선택기는 상태 매트릭스값 이외의 값을 후단에서의 각 레지스터에 출력한다.
따라서, 상태 00의 상태 매트릭스가 0으로 초기화되고 다른 상태의 상태 매트릭스가 31로 초기화된다. 하나의 클럭 동안의 분기 매트릭스가 4비트로 구성되기 때문에, 도 17에 도시된 바와 같이, 주기 P51 및 P52에서 분기 매트릭스의 값은 15(4비트로 표현되는 최대값) 이하이며, 상태 00이 개시점으로 사용되는 경로에 대한 매트릭스의 수는 새로운 길쌈 부호의 개시후 2개의 클럭의 기간(즉, 주기 P51 및 P52 경과후) 동안 30 이하이다. 따라서, 상태 00으로부터의 경로가 확실히 선택된다.
후속 동작이 통상의 디코딩 동작과 유사한 방식으로 실행되고 디코딩이 절단 길이에 대응하는 구간 만큼 역탐색하면서 수행되지만, 종결이 수행될 때의 타이밍에서의 디코딩인 경우, 최대 개연성 경로가 상태 00를 통과하는 경로로부터 확실히 선택된다. 상술된 본 발명의 제4 실시예에서도, 종결된 길쌈 부호가 또한 연속해서 입력될 때, 디코딩 동작을 계속 진행하면서 종결될 상태에 도달하는 경로가 디코드될 수 있다.
상술된 본 발명의 제1 실시예 등에서, 제한 길이 = 3 및 절단 길이 = 4인 경우가 설명되었지만, 본 발명은 제한 길이 및 절단 길이가 임의의 값을 갖는 경우에도 적용될 수 있다.
상술된 바와 같이, 본 발명은 수신 워드의 종결 구간을 고려하여 비터비 디코딩을 수행하려고 한다. 따라서, 최대 개연성 디코딩이 종결된 길쌈 부호에 대해 수행될 수 있다.
첨부한 도면을 참조하여 본 발명의 특정 바람직한 실시예를 설명하였지만, 본 발명은 상기 특정 실시예에 국한되지 않고, 첨부된 청구범위에 한정된 본 발명의 범위 또는 사상을 벗어나지 않고 기술 분야의 당업자에 의해 다양하게 변형되고 수정될 수 있다는 것을 알 수 있다.
Claims (10)
- 종결된 길쌈 부호(terminated convolution code)를 연속해서 수신하기 위한 비터비 디코딩 장치에 있어서,종결될 상태에 도달하는 경로를 확실히 디코드하기 위한 종결 상태 경로 디코딩 수단을 포함하는 비터비 디코딩 장치.
- 제1항에 있어서,레지스터 천이법을 수행하는 경로 메모리가 절단 길이 만큼의 레지스터 열을 갖고,종결될 상태에 대응하는 디코딩 워드가 상기 레지스터 열에 기억되고, 종결시, 상기 레지스터 열에 기억된 상기 디코딩 워드가 순차적으로 출력되는 비터비 디코딩 장치.
- 제1항에 있어서,종결될 상태에 대응하는 상기 레지스터 열내의 각 메모리 셀의 선택 정보를 제어하기 위한 제어 회로가 레지스터 천이법을 수행하는 경로 메모리에 더 부가되는 비터비 디코딩 장치.
- 제1항에 있어서,역탐색 방법(track-back method)을 수행하기 위한 경로 메모리를 포함하되,종결 길이의 m/n(m과 n은 정수임)이도록 절단 길이를 설정함으로써, 종결시 종결될 상태로부터 탐색이 개시되는 비터비 디코딩 장치.
- 제1항에 있어서,종결시 종결될 상태 이외의 상태의 상태 매트릭스를 충분히 큰 값으로 설정함으로써, 종결될 상태를 통과하는 경로가 확실히 디코드되는 비터비 디코딩 장치.
- 종결된 길쌈 부호(terminated convolution code)를 연속해서 수신하는 비터비 디코딩 방법에 있어서,종결될 상태에 도달하는 경로를 확실히 디코드하는 종결 상태 경로 디코딩 단계를 포함하는 비터비 디코딩 방법.
- 제6항에 있어서,레지스터 천이법에 의해 디코드될 때, 상기 비터비 디코딩 방법은상기 레지스터 천이법을 수행하는 경로 메모리에 가산된 절단 길이 만큼의 레지스터 열로 종결될 상태에 대응하는 디코딩 워드를 기억하는 기억 단계, 및종결시 상기 레지스터 열에 기억된 상기 디코딩 워드를 순차적으로 출력하는 출력 단계를 더 포함하는 비터비 디코딩 방법.
- 제6항에 있어서,레지스터 천이법에 의해 디코드할 때, 상기 비터비 디코딩 방법은종결될 상태에 대응하는 레지스터 열내의 각 메모리 셀의 선택 정보를 제어하는 제어 단계, 및상기 제어 단계의 동작에 의한 종결시 그대로 종결될 상태에 대응하는 디코딩 워드를 출력하는 출력 단계를 더 포함하는 비터비 디코딩 방법.
- 제6항에 있어서,역탐색 방법에 의해 디코드될 때, 상기 비터비 디코딩 방법은상기 절단 길이의 종결 길이의 m/n(m 및 n은 정수임)과 동일하도록 절단 길이를 설정하는 단계, 및종결시 종결될 상태로부터 탐색을 개시하는 단계를 더 포함하는 비터비 디코딩 방법.
- 제6항에 있어서,종결시 종결될 상태 이외의 상태의 상태 매트릭스를 충분히 큰 값으로 설정하는 단계, 및종결될 상태를 통과하는 경로를 확실히 디코드하는 단계를 더 포함하는 비터비 디코딩 방법.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP97-351434 | 1997-12-19 | ||
JP35143497A JP3900637B2 (ja) | 1997-12-19 | 1997-12-19 | ビタビ復号装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR19990063227A true KR19990063227A (ko) | 1999-07-26 |
KR100538730B1 KR100538730B1 (ko) | 2006-02-28 |
Family
ID=18417266
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019980056323A KR100538730B1 (ko) | 1997-12-19 | 1998-12-18 | 비터비디코딩장치및비터비디코딩방법 |
Country Status (6)
Country | Link |
---|---|
US (1) | US6748034B2 (ko) |
EP (2) | EP2053750A1 (ko) |
JP (1) | JP3900637B2 (ko) |
KR (1) | KR100538730B1 (ko) |
CN (1) | CN1220522A (ko) |
MY (1) | MY119831A (ko) |
Families Citing this family (159)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7225393B2 (en) | 1999-10-01 | 2007-05-29 | Matsushita Electric Industrial Co., Ltd. | Viterbi decoder and Viterbi decoding method |
US6654929B1 (en) | 1999-10-01 | 2003-11-25 | Matsushita Electric Industrial Co., Ltd. | Viterbi decoder and Viterbi decoding method |
JP3613134B2 (ja) * | 2000-05-12 | 2005-01-26 | 日本電気株式会社 | 高速ターボデコーダ |
JP3532884B2 (ja) * | 2001-05-18 | 2004-05-31 | 松下電器産業株式会社 | ビタビ復号器 |
AUPR679201A0 (en) * | 2001-08-03 | 2001-08-30 | Lucent Technologies Inc. | Path metric normalization of add-compare-select processing |
US7861146B2 (en) | 2004-05-27 | 2010-12-28 | Panasonic Corporation | Viterbi decoding apparatus and Viterbi decoding method |
JP4840651B2 (ja) * | 2006-07-27 | 2011-12-21 | ソニー株式会社 | 復号装置および復号方法 |
US7802163B2 (en) * | 2006-07-31 | 2010-09-21 | Agere Systems Inc. | Systems and methods for code based error reduction |
US7779331B2 (en) | 2006-07-31 | 2010-08-17 | Agere Systems Inc. | Systems and methods for tri-column code based error reduction |
US7801200B2 (en) * | 2006-07-31 | 2010-09-21 | Agere Systems Inc. | Systems and methods for code dependency reduction |
JP4666646B2 (ja) * | 2006-08-24 | 2011-04-06 | ルネサスエレクトロニクス株式会社 | 軟判定ビタビ復号装置および方法、復号装置および方法 |
US7673224B2 (en) * | 2006-09-12 | 2010-03-02 | Agere Systems Inc. | Low power viterbi decoder using a novel register-exchange architecture |
US7971125B2 (en) * | 2007-01-08 | 2011-06-28 | Agere Systems Inc. | Systems and methods for prioritizing error correction data |
US8359522B2 (en) | 2007-05-01 | 2013-01-22 | Texas A&M University System | Low density parity check decoder for regular LDPC codes |
US8196002B2 (en) * | 2007-06-01 | 2012-06-05 | Agere Systems Inc. | Systems and methods for joint LDPC encoding and decoding |
US7930621B2 (en) * | 2007-06-01 | 2011-04-19 | Agere Systems Inc. | Systems and methods for LDPC decoding with post processing |
US7876862B2 (en) | 2007-07-16 | 2011-01-25 | Agere Systems Inc. | Conditionally input saturated Viterbi detector |
KR20100061409A (ko) * | 2007-09-28 | 2010-06-07 | 에이저 시스템즈 인크 | 복잡성이 감소된 데이터 프로세싱을 위한 시스템들 및 방법들 |
US8161348B2 (en) * | 2008-02-05 | 2012-04-17 | Agere Systems Inc. | Systems and methods for low cost LDPC decoding |
US8245104B2 (en) * | 2008-05-02 | 2012-08-14 | Lsi Corporation | Systems and methods for queue based data detection and decoding |
KR101460835B1 (ko) * | 2008-05-19 | 2014-11-11 | 에이저 시스템즈 엘엘시 | 데이터 검출기 피드백 루프에서 레이턴시를 완화하는 시스템들 및 방법들 |
US8660220B2 (en) * | 2008-09-05 | 2014-02-25 | Lsi Corporation | Reduced frequency data processing using a matched filter set front end |
US8245120B2 (en) * | 2008-09-17 | 2012-08-14 | Lsi Corporation | Power reduced queue based data detection and decoding systems and methods for using such |
CN102037513A (zh) * | 2008-11-20 | 2011-04-27 | Lsi公司 | 用于噪声降低的数据检测的系统和方法 |
US7990642B2 (en) * | 2009-04-17 | 2011-08-02 | Lsi Corporation | Systems and methods for storage channel testing |
US8773790B2 (en) | 2009-04-28 | 2014-07-08 | Lsi Corporation | Systems and methods for dynamic scaling in a read data processing system |
US8443267B2 (en) * | 2009-04-28 | 2013-05-14 | Lsi Corporation | Systems and methods for hard decision assisted decoding |
US8250434B2 (en) * | 2009-06-18 | 2012-08-21 | Lsi Corporation | Systems and methods for codec usage control during storage pre-read |
US8352841B2 (en) * | 2009-06-24 | 2013-01-08 | Lsi Corporation | Systems and methods for out of order Y-sample memory management |
US8458553B2 (en) | 2009-07-28 | 2013-06-04 | Lsi Corporation | Systems and methods for utilizing circulant parity in a data processing system |
US8312343B2 (en) * | 2009-07-28 | 2012-11-13 | Lsi Corporation | Systems and methods for re-using decoding parity in a detector circuit |
US8321746B2 (en) | 2009-07-30 | 2012-11-27 | Lsi Corporation | Systems and methods for quasi-cyclic LDPC code production and decoding |
US8250431B2 (en) * | 2009-07-30 | 2012-08-21 | Lsi Corporation | Systems and methods for phase dependent data detection in iterative decoding |
US8565811B2 (en) * | 2009-08-04 | 2013-10-22 | Microsoft Corporation | Software-defined radio using multi-core processor |
US8266505B2 (en) * | 2009-08-12 | 2012-09-11 | Lsi Corporation | Systems and methods for retimed virtual data processing |
US8176404B2 (en) * | 2009-09-09 | 2012-05-08 | Lsi Corporation | Systems and methods for stepped data retry in a storage system |
US9753884B2 (en) * | 2009-09-30 | 2017-09-05 | Microsoft Technology Licensing, Llc | Radio-control board for software-defined radio platform |
US8627189B2 (en) * | 2009-12-03 | 2014-01-07 | Microsoft Corporation | High performance digital signal processing in software radios |
US20110136439A1 (en) * | 2009-12-04 | 2011-06-09 | Microsoft Corporation | Analyzing Wireless Technologies Based On Software-Defined Radio |
US8688873B2 (en) | 2009-12-31 | 2014-04-01 | Lsi Corporation | Systems and methods for monitoring out of order data decoding |
US8683306B2 (en) * | 2010-01-04 | 2014-03-25 | Lsi Corporation | Systems and methods for data detection including dynamic scaling |
US8578253B2 (en) | 2010-01-04 | 2013-11-05 | Lsi Corporation | Systems and methods for updating detector parameters in a data processing circuit |
US8743936B2 (en) * | 2010-01-05 | 2014-06-03 | Lsi Corporation | Systems and methods for determining noise components in a signal set |
US9343082B2 (en) | 2010-03-30 | 2016-05-17 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Systems and methods for detecting head contact |
US8161351B2 (en) | 2010-03-30 | 2012-04-17 | Lsi Corporation | Systems and methods for efficient data storage |
US8418019B2 (en) | 2010-04-19 | 2013-04-09 | Lsi Corporation | Systems and methods for dynamic scaling in a data decoding system |
US8443249B2 (en) | 2010-04-26 | 2013-05-14 | Lsi Corporation | Systems and methods for low density parity check data encoding |
US8527831B2 (en) | 2010-04-26 | 2013-09-03 | Lsi Corporation | Systems and methods for low density parity check data decoding |
US8381071B1 (en) | 2010-05-21 | 2013-02-19 | Lsi Corporation | Systems and methods for decoder sharing between data sets |
US8381074B1 (en) | 2010-05-21 | 2013-02-19 | Lsi Corporation | Systems and methods for utilizing a centralized queue based data processing circuit |
US8208213B2 (en) | 2010-06-02 | 2012-06-26 | Lsi Corporation | Systems and methods for hybrid algorithm gain adaptation |
US8804260B2 (en) | 2010-09-13 | 2014-08-12 | Lsi Corporation | Systems and methods for inter-track interference compensation |
US9219469B2 (en) | 2010-09-21 | 2015-12-22 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Systems and methods for filter constraint estimation |
US8295001B2 (en) | 2010-09-21 | 2012-10-23 | Lsi Corporation | Systems and methods for low latency noise cancellation |
US8385014B2 (en) | 2010-10-11 | 2013-02-26 | Lsi Corporation | Systems and methods for identifying potential media failure |
US8661071B2 (en) | 2010-10-11 | 2014-02-25 | Lsi Corporation | Systems and methods for partially conditioned noise predictive equalization |
US8560930B2 (en) | 2010-10-11 | 2013-10-15 | Lsi Corporation | Systems and methods for multi-level quasi-cyclic low density parity check codes |
US8443250B2 (en) | 2010-10-11 | 2013-05-14 | Lsi Corporation | Systems and methods for error correction using irregular low density parity check codes |
US8750447B2 (en) | 2010-11-02 | 2014-06-10 | Lsi Corporation | Systems and methods for variable thresholding in a pattern detector |
US8667039B2 (en) | 2010-11-17 | 2014-03-04 | Lsi Corporation | Systems and methods for variance dependent normalization for branch metric calculation |
US8566379B2 (en) | 2010-11-17 | 2013-10-22 | Lsi Corporation | Systems and methods for self tuning target adaptation |
US8810940B2 (en) | 2011-02-07 | 2014-08-19 | Lsi Corporation | Systems and methods for off track error recovery |
US8699167B2 (en) | 2011-02-16 | 2014-04-15 | Lsi Corporation | Systems and methods for data detection using distance based tuning |
US8446683B2 (en) | 2011-02-22 | 2013-05-21 | Lsi Corporation | Systems and methods for data pre-coding calibration |
US8693120B2 (en) | 2011-03-17 | 2014-04-08 | Lsi Corporation | Systems and methods for sample averaging in data processing |
US8854753B2 (en) | 2011-03-17 | 2014-10-07 | Lsi Corporation | Systems and methods for auto scaling in a data processing system |
US8611033B2 (en) | 2011-04-15 | 2013-12-17 | Lsi Corporation | Systems and methods for selective decoder input data processing |
US8670955B2 (en) | 2011-04-15 | 2014-03-11 | Lsi Corporation | Systems and methods for reliability assisted noise predictive filtering |
US8887034B2 (en) | 2011-04-15 | 2014-11-11 | Lsi Corporation | Systems and methods for short media defect detection |
KR101823188B1 (ko) | 2011-05-04 | 2018-01-29 | 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 | 기지국을 위한 스펙트럼 할당 기법 |
US8499231B2 (en) | 2011-06-24 | 2013-07-30 | Lsi Corporation | Systems and methods for reduced format non-binary decoding |
US8566665B2 (en) | 2011-06-24 | 2013-10-22 | Lsi Corporation | Systems and methods for error correction using low density parity check codes using multiple layer check equations |
US8560929B2 (en) | 2011-06-24 | 2013-10-15 | Lsi Corporation | Systems and methods for non-binary decoding |
US8862972B2 (en) | 2011-06-29 | 2014-10-14 | Lsi Corporation | Low latency multi-detector noise cancellation |
US8595576B2 (en) | 2011-06-30 | 2013-11-26 | Lsi Corporation | Systems and methods for evaluating and debugging LDPC iterative decoders |
US8650451B2 (en) | 2011-06-30 | 2014-02-11 | Lsi Corporation | Stochastic stream decoding of binary LDPC codes |
US8566666B2 (en) | 2011-07-11 | 2013-10-22 | Lsi Corporation | Min-sum based non-binary LDPC decoder |
US8830613B2 (en) | 2011-07-19 | 2014-09-09 | Lsi Corporation | Storage media inter-track interference cancellation |
US8819527B2 (en) | 2011-07-19 | 2014-08-26 | Lsi Corporation | Systems and methods for mitigating stubborn errors in a data processing system |
US8879182B2 (en) | 2011-07-19 | 2014-11-04 | Lsi Corporation | Storage media inter-track interference cancellation |
US8539328B2 (en) | 2011-08-19 | 2013-09-17 | Lsi Corporation | Systems and methods for noise injection driven parameter selection |
US8854754B2 (en) | 2011-08-19 | 2014-10-07 | Lsi Corporation | Systems and methods for local iteration adjustment |
US9026572B2 (en) | 2011-08-29 | 2015-05-05 | Lsi Corporation | Systems and methods for anti-causal noise predictive filtering in a data channel |
US8756478B2 (en) | 2011-09-07 | 2014-06-17 | Lsi Corporation | Multi-level LDPC layer decoder |
US8656249B2 (en) | 2011-09-07 | 2014-02-18 | Lsi Corporation | Multi-level LDPC layer decoder |
US8681441B2 (en) | 2011-09-08 | 2014-03-25 | Lsi Corporation | Systems and methods for generating predictable degradation bias |
US8661324B2 (en) | 2011-09-08 | 2014-02-25 | Lsi Corporation | Systems and methods for non-binary decoding biasing control |
US8850276B2 (en) | 2011-09-22 | 2014-09-30 | Lsi Corporation | Systems and methods for efficient data shuffling in a data processing system |
US8767333B2 (en) | 2011-09-22 | 2014-07-01 | Lsi Corporation | Systems and methods for pattern dependent target adaptation |
US8689062B2 (en) | 2011-10-03 | 2014-04-01 | Lsi Corporation | Systems and methods for parameter selection using reliability information |
US8578241B2 (en) | 2011-10-10 | 2013-11-05 | Lsi Corporation | Systems and methods for parity sharing data processing |
US8479086B2 (en) | 2011-10-03 | 2013-07-02 | Lsi Corporation | Systems and methods for efficient parameter modification |
US8862960B2 (en) | 2011-10-10 | 2014-10-14 | Lsi Corporation | Systems and methods for parity shared data encoding |
US8996597B2 (en) | 2011-10-12 | 2015-03-31 | Lsi Corporation | Nyquist constrained digital finite impulse response filter |
US8707144B2 (en) | 2011-10-17 | 2014-04-22 | Lsi Corporation | LDPC decoder with targeted symbol flipping |
US8683309B2 (en) | 2011-10-28 | 2014-03-25 | Lsi Corporation | Systems and methods for ambiguity based decode algorithm modification |
US8443271B1 (en) | 2011-10-28 | 2013-05-14 | Lsi Corporation | Systems and methods for dual process data decoding |
US8604960B2 (en) | 2011-10-28 | 2013-12-10 | Lsi Corporation | Oversampled data processing circuit with multiple detectors |
US8527858B2 (en) | 2011-10-28 | 2013-09-03 | Lsi Corporation | Systems and methods for selective decode algorithm modification |
US8989286B2 (en) | 2011-11-10 | 2015-03-24 | Microsoft Corporation | Mapping a transmission stream in a virtual baseband to a physical baseband with equalization |
US8751913B2 (en) | 2011-11-14 | 2014-06-10 | Lsi Corporation | Systems and methods for reduced power multi-layer data decoding |
US8700981B2 (en) | 2011-11-14 | 2014-04-15 | Lsi Corporation | Low latency enumeration endec |
US8531320B2 (en) | 2011-11-14 | 2013-09-10 | Lsi Corporation | Systems and methods for memory efficient data decoding |
US8760991B2 (en) | 2011-11-14 | 2014-06-24 | Lsi Corporation | Systems and methods for post processing gain correction |
US8719686B2 (en) | 2011-11-22 | 2014-05-06 | Lsi Corporation | Probability-based multi-level LDPC decoder |
US8631300B2 (en) | 2011-12-12 | 2014-01-14 | Lsi Corporation | Systems and methods for scalable data processing shut down |
US8625221B2 (en) | 2011-12-15 | 2014-01-07 | Lsi Corporation | Detector pruning control system |
US8707123B2 (en) | 2011-12-30 | 2014-04-22 | Lsi Corporation | Variable barrel shifter |
US8819515B2 (en) | 2011-12-30 | 2014-08-26 | Lsi Corporation | Mixed domain FFT-based non-binary LDPC decoder |
US8751889B2 (en) | 2012-01-31 | 2014-06-10 | Lsi Corporation | Systems and methods for multi-pass alternate decoding |
US8850295B2 (en) | 2012-02-01 | 2014-09-30 | Lsi Corporation | Symbol flipping data processor |
US8775896B2 (en) | 2012-02-09 | 2014-07-08 | Lsi Corporation | Non-binary LDPC decoder with low latency scheduling |
US8749907B2 (en) | 2012-02-14 | 2014-06-10 | Lsi Corporation | Systems and methods for adaptive decoder message scaling |
US8782486B2 (en) | 2012-03-05 | 2014-07-15 | Lsi Corporation | Systems and methods for multi-matrix data processing |
US8610608B2 (en) | 2012-03-08 | 2013-12-17 | Lsi Corporation | Systems and methods for reduced latency loop correction |
US8731115B2 (en) | 2012-03-08 | 2014-05-20 | Lsi Corporation | Systems and methods for data processing including pre-equalizer noise suppression |
US8873182B2 (en) | 2012-03-09 | 2014-10-28 | Lsi Corporation | Multi-path data processing system |
US8977937B2 (en) | 2012-03-16 | 2015-03-10 | Lsi Corporation | Systems and methods for compression driven variable rate decoding in a data processing system |
US9230596B2 (en) | 2012-03-22 | 2016-01-05 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Systems and methods for variable rate coding in a data processing system |
US9043684B2 (en) | 2012-03-22 | 2015-05-26 | Lsi Corporation | Systems and methods for variable redundancy data protection |
US8612826B2 (en) | 2012-05-17 | 2013-12-17 | Lsi Corporation | Systems and methods for non-binary LDPC encoding |
US8880986B2 (en) | 2012-05-30 | 2014-11-04 | Lsi Corporation | Systems and methods for improved data detection processing |
US8930780B2 (en) | 2012-08-28 | 2015-01-06 | Lsi Corporation | Systems and methods for non-zero syndrome based processing |
US9019647B2 (en) | 2012-08-28 | 2015-04-28 | Lsi Corporation | Systems and methods for conditional positive feedback data decoding |
US8751915B2 (en) | 2012-08-28 | 2014-06-10 | Lsi Corporation | Systems and methods for selectable positive feedback data processing |
US9324372B2 (en) | 2012-08-28 | 2016-04-26 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Systems and methods for local iteration randomization in a data decoder |
US8949702B2 (en) | 2012-09-14 | 2015-02-03 | Lsi Corporation | Systems and methods for detector side trapping set mitigation |
US9112531B2 (en) | 2012-10-15 | 2015-08-18 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Systems and methods for enhanced local iteration randomization in a data decoder |
US8634152B1 (en) | 2012-10-15 | 2014-01-21 | Lsi Corporation | Systems and methods for throughput enhanced data detection in a data processing circuit |
US9048870B2 (en) | 2012-11-19 | 2015-06-02 | Lsi Corporation | Low density parity check decoder with flexible saturation |
US8929009B2 (en) | 2012-12-19 | 2015-01-06 | Lsi Corporation | Irregular low density parity check decoder with low syndrome error handling |
US9130589B2 (en) | 2012-12-19 | 2015-09-08 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Low density parity check decoder with dynamic scaling |
US8773791B1 (en) | 2013-01-14 | 2014-07-08 | Lsi Corporation | Systems and methods for X-sample based noise cancellation |
US9003263B2 (en) | 2013-01-15 | 2015-04-07 | Lsi Corporation | Encoder and decoder generation by state-splitting of directed graph |
US9009557B2 (en) | 2013-01-21 | 2015-04-14 | Lsi Corporation | Systems and methods for reusing a layered decoder to yield a non-layered result |
US8930792B2 (en) | 2013-02-14 | 2015-01-06 | Lsi Corporation | Systems and methods for distributed low density parity check decoding |
US8885276B2 (en) | 2013-02-14 | 2014-11-11 | Lsi Corporation | Systems and methods for shared layer data decoding |
US9214959B2 (en) | 2013-02-19 | 2015-12-15 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Systems and methods for skip layer data decoding |
US8797668B1 (en) | 2013-03-13 | 2014-08-05 | Lsi Corporation | Systems and methods for penalty based multi-variant encoding |
US9048873B2 (en) | 2013-03-13 | 2015-06-02 | Lsi Corporation | Systems and methods for multi-stage encoding of concatenated low density parity check codes |
US9048874B2 (en) | 2013-03-15 | 2015-06-02 | Lsi Corporation | Min-sum based hybrid non-binary low density parity check decoder |
US9281843B2 (en) | 2013-03-22 | 2016-03-08 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Systems and methods for reduced constraint code data processing |
US9048867B2 (en) | 2013-05-21 | 2015-06-02 | Lsi Corporation | Shift register-based layered low density parity check decoder |
US9274889B2 (en) | 2013-05-29 | 2016-03-01 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Systems and methods for data processing using global iteration result reuse |
US8959414B2 (en) | 2013-06-13 | 2015-02-17 | Lsi Corporation | Systems and methods for hybrid layer data decoding |
US8917466B1 (en) | 2013-07-17 | 2014-12-23 | Lsi Corporation | Systems and methods for governing in-flight data sets in a data processing system |
US8817404B1 (en) | 2013-07-18 | 2014-08-26 | Lsi Corporation | Systems and methods for data processing control |
US9196299B2 (en) | 2013-08-23 | 2015-11-24 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Systems and methods for enhanced data encoding and decoding |
US8908307B1 (en) | 2013-08-23 | 2014-12-09 | Lsi Corporation | Systems and methods for hard disk drive region based data encoding |
US9047882B2 (en) | 2013-08-30 | 2015-06-02 | Lsi Corporation | Systems and methods for multi-level encoding and decoding |
US9129651B2 (en) | 2013-08-30 | 2015-09-08 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Array-reader based magnetic recording systems with quadrature amplitude modulation |
US9298720B2 (en) | 2013-09-17 | 2016-03-29 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Systems and methods for fragmented data recovery |
CN104518801A (zh) | 2013-09-29 | 2015-04-15 | Lsi公司 | 非二进制的分层低密度奇偶校验解码器 |
US9219503B2 (en) | 2013-10-16 | 2015-12-22 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Systems and methods for multi-algorithm concatenation encoding and decoding |
US9323606B2 (en) | 2013-11-21 | 2016-04-26 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Systems and methods for FAID follower decoding |
US9130599B2 (en) | 2013-12-24 | 2015-09-08 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Systems and methods of converting detector output to multi-level soft information |
RU2014104571A (ru) | 2014-02-10 | 2015-08-20 | ЭлЭсАй Корпорейшн | Системы и способы для эффективного с точки зрения площади кодирования данных |
US9378765B2 (en) | 2014-04-03 | 2016-06-28 | Seagate Technology Llc | Systems and methods for differential message scaling in a decoding process |
US9419656B2 (en) * | 2014-07-29 | 2016-08-16 | Intel IP Corporation | Decoder and method for decoding an encoded sequence of bits |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US477636A (en) * | 1892-06-28 | blodgett | ||
CA1260143A (en) * | 1986-02-24 | 1989-09-26 | Atsushi Yamashita | Path trace viterbi decoder |
GB2309867A (en) * | 1996-01-30 | 1997-08-06 | Sony Corp | Reliability data in decoding apparatus |
JPH09266448A (ja) * | 1996-03-28 | 1997-10-07 | Sony Corp | ビタビ復号化装置およびビタビ復号化方法 |
US5878098A (en) * | 1996-06-27 | 1999-03-02 | Motorola, Inc. | Method and apparatus for rate determination in a communication system |
DE69719141T2 (de) * | 1996-10-15 | 2003-07-24 | Matsushita Electric Industrial Co., Ltd. | Vorrichtung zur Zurückverfolgung des Pfades in einem Viterbi Dekodierer |
WO1998018209A1 (fr) * | 1996-10-24 | 1998-04-30 | Sony Corporation | Dispositif et appareil de decodage de viterbi |
-
1997
- 1997-12-19 JP JP35143497A patent/JP3900637B2/ja not_active Expired - Fee Related
-
1998
- 1998-12-15 MY MYPI98005661A patent/MY119831A/en unknown
- 1998-12-17 US US09/215,452 patent/US6748034B2/en not_active Expired - Fee Related
- 1998-12-17 EP EP09001553A patent/EP2053750A1/en not_active Ceased
- 1998-12-17 EP EP98124034A patent/EP0924863A3/en not_active Ceased
- 1998-12-18 KR KR1019980056323A patent/KR100538730B1/ko not_active IP Right Cessation
- 1998-12-18 CN CN98125339A patent/CN1220522A/zh active Pending
Also Published As
Publication number | Publication date |
---|---|
EP2053750A1 (en) | 2009-04-29 |
MY119831A (en) | 2005-07-29 |
KR100538730B1 (ko) | 2006-02-28 |
JPH11186919A (ja) | 1999-07-09 |
JP3900637B2 (ja) | 2007-04-04 |
US6748034B2 (en) | 2004-06-08 |
CN1220522A (zh) | 1999-06-23 |
US20030108128A1 (en) | 2003-06-12 |
EP0924863A3 (en) | 2004-06-09 |
EP0924863A2 (en) | 1999-06-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100538730B1 (ko) | 비터비디코딩장치및비터비디코딩방법 | |
US4777636A (en) | Path trace viterbi decoder | |
JP3747604B2 (ja) | ビタビ復号装置 | |
KR940010435B1 (ko) | 비터비 복호기의 경로기억장치 | |
US5151904A (en) | Reconfigurable, multi-user viterbi decoder | |
KR100426712B1 (ko) | 비터비 복호기 | |
US4979175A (en) | State metric memory arrangement for a viterbi decoder | |
KR100285067B1 (ko) | 비터비 디코더의 가산 비교 선택 회로 | |
US6408420B1 (en) | Viterbi decoding method and apparatus thereof | |
KR100309517B1 (ko) | 비타비복호장치 | |
US7840885B2 (en) | Distributed ring control circuits for Viterbi traceback | |
US6697442B1 (en) | Viterbi decoding apparatus capable of shortening a decoding process time duration | |
US5878060A (en) | Viterbi decoding apparatus and viterbe decoding method | |
US5828675A (en) | Viterbi decoder circuit | |
KR0155516B1 (ko) | 비터비 복호기에서 한개의 메모리를 사용한 상태 매트릭 메모리 운용방법 및 그 장치 | |
RU2247471C2 (ru) | Компонентный декодер и способ декодирования в системе мобильной связи | |
KR100399410B1 (ko) | 비터비 복호기 및 그 복호 방법 | |
JP2904271B2 (ja) | ビタビ復号器用パスメモリユニットおよび復号方法 | |
KR0169680B1 (ko) | 비터비 복호기 | |
JPH11186915A (ja) | ビタビ復号装置 | |
JPH0118608B2 (ko) | ||
JPH0361376B2 (ko) | ||
JPH0361374B2 (ko) | ||
JPS5919455A (ja) | ビタビ復号器の最適パス判定回路 | |
JP2571384B2 (ja) | シ−ケンシャル復号器 |
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: 20111213 Year of fee payment: 7 |
|
LAPS | Lapse due to unpaid annual fee |