KR100267052B1 - Viterbi decoder - Google Patents
Viterbi decoder Download PDFInfo
- Publication number
- KR100267052B1 KR100267052B1 KR1019970068164A KR19970068164A KR100267052B1 KR 100267052 B1 KR100267052 B1 KR 100267052B1 KR 1019970068164 A KR1019970068164 A KR 1019970068164A KR 19970068164 A KR19970068164 A KR 19970068164A KR 100267052 B1 KR100267052 B1 KR 100267052B1
- Authority
- KR
- South Korea
- Prior art keywords
- data
- survival path
- data bits
- counter
- case
- Prior art date
Links
Images
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/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/65—Purpose and implementation aspects
- H03M13/6508—Flexibility, adaptability, parametrability and configurability of the implementation
Landscapes
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Error Detection And Correction (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
Abstract
Description
본 발명은 디지탈 광 기록/재생 시스템용 비터비 디코더에 관한 것으로서, 더욱 상세하게는 PR-Ⅰ채널용 비터비 디코더에 관한 것이다.The present invention relates to a Viterbi decoder for a digital optical recording / reproducing system, and more particularly to a Viterbi decoder for a PR-I channel.
데이터 검출기로서 일반적으로 많이 사용되는 ML(Maximum Likelyhood Dectector)의 효과적인 구현 방법이 비터비 알고리즘이다. 이러한 비터비 알고리즘은 채널의 성질에 따라 그 구현 방법이 상이하다. 따라서, 비터비 알고리즘을 이용한 데이터 검출기를 설계하기 위해서는 그 채널의 특성에 알맞는 비터비 검출기를 구현하는 것이 매우 중요하다.The Viterbi algorithm is an effective implementation of the ML (Maximum Likelyhood Dectector), which is commonly used as a data detector. This Viterbi algorithm differs in its implementation depending on the nature of the channel. Therefore, in order to design a data detector using the Viterbi algorithm, it is very important to implement a Viterbi detector suitable for the characteristics of the channel.
현재 마그네틱 채널(PR-Ⅳ용)비터비 디코더는 널리 사용되고 있다. 이러한 PR-Ⅳ용 비터비 디코더의 개략도가 도 1 에 도시되어 있다.Currently, magnetic channel (PR-IV) Viterbi decoders are widely used. A schematic diagram of such a Viterbi decoder for PR-IV is shown in FIG.
도시된 바와 같이 비터비 디코더에서는 입력 데이터들에 대하여 생존 경로를 결정하기 위한 생존 경로 결정 블록(1)과 생존 경로를 저장하고 갱신하는 블록(2)으로 구분할 수 있다. 여기서, 생존 경로 결정 블록(1)은 입력 데이터들에 대한 차이 평가량및 그 사인 비트를 산출하고, 도 2 에 도시된 바와 같이 차이 평가량에 따른 3 가지 케이스 1, 2, 3을 각각 알리는 데이터 비트(1,0)(0,1)(0,0)을 출력하며, 생존 경로 저장및 갱신 블록(2)에서는 이 데이터 비트들에 의하여 생존 경로를 형성하고, 이 최종 생존 경로에 의한 데이터비트를 복호 정보로서 출력하는 것이다.As shown, the Viterbi decoder can be divided into a survival
즉, 블록(2)은 도시된 바와 같이 다수개의 플립플럽(FF1-FF12)및 멀티플렉서(MUX1-MUX7)들로 구성되어 있으며, 멀티플렉서(MUX1, MUX3, MUX5)는 상위 데이터 비트(bn+)가 로우 상태일 때에 플립플롭(FF3, FF5, FF7), 상위 데이터 비트(bn+)가 하이 상태일 때에 플립플롭(FF4, FF6, FF8)의 출력을 선택하도록 구성되어 있다. 또한, 멀티플렉서(MUX2, MUX4, MUX8)는 하위 데이터 비트(bn-)가 하이 상태일 때에 플립플롭(FF3, FF5, FF7), 하위 데이터 비트(bn-)가 로우 상태일 때에 플립플롭(FF4, FF6, FF8)의 출력을 선택하도록 구성되어 있다.That is, the block 2 is composed of a plurality of flip-flops (FF1-FF12) and multiplexers (MUX1-MUX7) as shown, the multiplexers (MUX1, MUX3, MUX5) is the upper data bits (b n +) Is configured to select the outputs of the flip-flops FF4, FF6 and FF8 when the flip-flops FF3, FF5 and FF7 and the upper data bits b n + are high. Also, the multiplexers MUX2, MUX4, and MUX8 have flip-flops FF3, FF5, and FF7 when the lower data bits b n -are high, and flip-flops when the lower data bits b n -are low. FF4, FF6, and FF8).
따라서, 생존 경로 결정 블록(1)으로부터의 데이터 비트(bn+, bn-)에 의하여 생존 경로 저장및 갱신 블록(2)은 데이타 비트(bn+, bn-)들의 생존 경로를 갱신하는 한편, 생존 경로 결정 블록(1)의 사인 비트에 의하여 최종 출력 데이터를 결정하여 출력하는 것이다.Thus, the survival path storage and update block 2 by the data bits b n +, b n − from the survival
한편, 종래에는 DVDR의 채널 특성인 PR-Ⅰ에 대한 비터비 디코더는 개발되고 있지 않았으나, 본원 발명의 출원자는 PR-Ⅰ용 비터비 디코더를 개발하여 본 발명과 동일자의 "디지탈 광 기록 재생/재생 시스템용 비터비 디코더(출원 번호 제 호및 제 호)를 출원하였다.On the other hand, although a Viterbi decoder for PR-I, which is a channel characteristic of DVDR, has not been developed in the past, the applicant of the present invention has developed a Viterbi decoder for PR-I, which is the same as the present invention. The Viterbi decoder for the system (Application No. and Application No.) was filed.
본 출원인은 이 출원 발명에서는 종래의 PR-Ⅳ용 비터비 디코더와는 상이하게 도 3에 도시된 바와 같이 차이 평가량에 따른 3 가지 케이스 4, 5, 6을 각각 알리는 데이터 비트(1,0)(0,1)(1,1)를 제시하였으며, 이 데이터 비트에 의한 생존 경로의 결정 블록을 제시하였다.In the present invention, the present applicant differs from the conventional Viterbi decoder for PR-IV, as shown in FIG. 3, data bits (1,0) (notifying three
한편, 본 발명자는 PR-I 용 비터비 디코더의 구현시에 차이 평가량에 따른 케이스1-6을 관찰한 결과, 케이스 1,4 그리고, 케이스 2,5는 동일하나 케이스 3, 6 만이 상이하다는 것을 발견하였으며, 케이스 6의 경우(즉, 1,1)를 케이스 3으로 전환시키면 종래의 PR-Ⅳ용 비터비 디코더내 생존 경로 결정 블록을 이용하여 PR-I용 비터비 디코더를 구성할 수 있을 것이라는 것을 착안하였다.On the other hand, the present inventors observed Cases 1-6 according to the difference evaluation amount when implementing the Viterbi decoder for PR-I, and found that
본 발명은 이러한 착안에 의거하여 안출한 것으로서, 본 발명의 목적은 PR-Ⅳ용 비터비 디코더내 생존 경로 결정 블록을 이용하여 PR-Ⅰ용 비터비 디코더를 구성한 PR-I용 비터비 디코더를 제공하는데 있다.SUMMARY OF THE INVENTION The present invention has been made based on this concept, and an object of the present invention is to provide a Viterbi decoder for PR-I, which comprises a Viterbi decoder for PR-I using a survival path determination block in a Viterbi decoder for PR-IV. It is.
도 1은 종래 PR-Ⅳ용 비터비 디코더의 개략 블록도,1 is a schematic block diagram of a Viterbi decoder for a conventional PR-IV;
도 2는 종래 PR-Ⅳ용 비터비 디코더내 생존 경로 결정 블록(1)에서 차이 평가량에 따른 3 가지 케이스 1, 2, 3을 알리는 데이터 비트(1,0)(0,1)(0,0)의 경로를 도시한 도면,2 shows data bits (1,0) (0,1) (0,0) indicating three
도 3은 PR-I용 비터비 디코더내 생존 경로 결정 블록(10)에서 차이 평가량에 따른 3 가지 케이스 4, 5, 6을 알리는 데이터 비트(1,0)(0,1)(1,1)의 경로를 도시한 도면,FIG. 3 shows data bits (1,0) (0,1) (1,1) indicating three
도 4는 본 발명에 따른 PR-Ⅰ채널용 비터비 디코더의 개략 블럭도.4 is a schematic block diagram of a Viterbi decoder for a PR-I channel according to the present invention;
<도면의 주요부분에 대한 부호의 설명><Description of the code | symbol about the principal part of drawing>
10 : 생존 경로 결정 블록 20 : 생존 경로 저장및 갱신 블록10: survival path determination block 20: survival path storage and update block
30 : 절환 회로 40 : 데이터 검출 회로30: switching circuit 40: data detection circuit
50 : 카운터 60 : 조합 회로50: counter 60: combination circuit
이러한 목적을 달성하기 위한 본 발명은, PR-Ⅰ채널 특성에 대한 비터비 디코더로서, 입력 데이터들의 차이 평가량을 검출하여 케이스 4임을 알리는 0,1의 데이터 비트, 케이스 5임을 알리는 1, 0 데이터 비트, 케이스 6임을 알리는 1, 1의 데이터 비트및 사인 비트를 각각 출력하는 PR-Ⅰ용 생존 경로 결정 블록과; 생존 경로 결정 블록의 데이터 비트가 케이스 6 상태인가를 검출하여 카운터 증가 신호를 출력하는 데이터 검출 회로와; 데이터 검출 회로의 카운터 증가 신호가 연속하여 인가될 때만 구동하여 카운팅 증가 신호를 계수하여 그 최하위 비트(LSB)를 출력하며, 데이터 검출 회로로부터 카운터 증가 신호가 인가되지 않을 때에는 리셋되는 카운터와; 생존 경로 결정 블록으로부터의 케이스 6의 데이터 비트(1,1)를 (0,0)의 데이터 비트로 변환시켜 출력하는 조합 회로와; 생존 경로 결정 블록및 조합 회로의 데이터 비트를 데이터 검출 회로로부터 카운팅 증가 신호에 따라 선택적으로 출력하며, 카운터로부터 카운트 값의 최하위 비트가 인가될 때 인가된 조합 회로의 데이터 비트들을 카운터의 최하위 비트에 따라 선택적으로 변환시켜 출력하는 절환 회로와; 절환 회로의 데이터 비트및 사인 비트를 수신하여 데이터 비트들의 생존 경로및 그 최종 데이터 비트를 결정하여 출력하는 PR-Ⅳ용 생존 경로 저장및 갱신 블록을 구비한다.In order to achieve the above object, the present invention provides a Viterbi decoder for PR-I channel characteristics, and detects the difference evaluation amount of the input data to indicate case 4, indicating that it is
이하, 본 발명의 일 실시예를 첨부된 도면을 참조하여 상세히 설명한다.Hereinafter, an embodiment of the present invention will be described in detail with reference to the accompanying drawings.
도 4는 본 발명에 따른 PR-I용 비터비 디코더의 블록도로서, 부호(10)는 생존 경로 결정 블록으로서 입력 데이터(Yn)및 이전 차이 평가량(DJn-1)을 이용하여 차이 평가량(DJn)을 산출하고, 이 차이 평가량(DJn)에 따라 도 3에 도시된 바와 같은 케이스 4, 5, 6의 데이터 비트를 출력한다. 본 발명에서의 생존 경로 결정 블록(10)은 본 출원인이 출원한 "디지탈 광 기록 재생/재생 시스템용 비터비 디코더(출원 번호 제 호및 제 호)에 상세히 기재되어 있으므로 본 명세서에서는 상세한 설명을 생략하였다.4 is a block diagram of a Viterbi decoder for PR-I according to the present invention, in which the
생존 경로 결정 블록(10)의 데이터 비트들은 생존 경로 저장및 갱신 블록(20)에 인가되며, 본 발명에서의 생존 경로 저장및 갱신 블록(20)은 종래의 PR-Ⅳ용 비터비 디코더내의 것과 동일한 것으로서로 도시된 바와 같이 절환 회로(30)의 데이터 비트및 생존 경로 결정 블록(10)의 사인 비트에 의하여 데이터 비트의 생존 경로및 그 최종 데이터 비트를 결정하여 출력하게 구성되어 있다.The data bits of the survival
한편, 생존 경로 결정 블록(10)의 데이터 비트는 도시된 바와 같이 데이터 검출 회로(40)에 인가되며, 데이터 검출 회로(40)는 현재의 데이터 비트가 케이스 6 상태인가 즉, 데이터 비트가 (1,1)상태인가를 판단하여 (1,1)상태일 때에만 로직 하이 상태의 카운터 증가 신호를 출력하도록 구성되어 있다.On the other hand, the data bits of the survival
카운터(50)는 데이터 검출 회로(40)의 카운터 증가 신호가 연속하여 인가될 때만 구동하여 카운팅 증가 신호를 계수하여 그 최하위 비트(LSB)를 출력하도록 구성되며, 데이터 검출 회로(40)로부터 카운터 증가 신호가 인가되지 않을 때에는 리셋되도록 구성되어 있다.The
여기서, 카운터(50)의 최하위 비트는 카운팅 증가 신호가 홀수개 인가될 때에는 로직 1을, 짝수개 인가될 때에는 로직 0를 출력하므로써 카운터(50)의 최하위 비트로서 케이스 6의 비트 데이터가 연속하여 홀수개 또는 짝수개 인가되었는가를 알 수 있다.Here, the least significant bit of the
한편, 조합 회로(60)는 두 개의 앤드 게이트들로 구성되어 있어 생존 경로 결정 블록(10)의 데이터 비트들및 인버터(I1)에 의하여 반전된 데이터 검출 회로(40)의 카운터 증가 신호를 조합하여 출력하게 구성되어 있다. 따라서, 조합 회로(60)는 생존 경로 결정 블록(10)이 (1,1)의 데이터 비트를 출력할 때에 (0,0)의 데이터를 출력함을 알 수 있다.On the other hand, the
이러한 조합 회로(60)의 출력은 절환 회로(30)에 인가되며, 절환 회로(30)는 데이터 검출 회로(40)로부터 카운팅 증가 신호가 인가될 때에는 조합 회로(60)의 데이터 비트를 생존 경로 저장및 갱신 블럭(20)에 인가하나, 카운팅 증가 신호가 인가되지 않을 때에는 생존 경로 결정 블록(10)의 데이터 비트를 생존 경로 저장및 갱신 블록(20)에 인가한다. 이때, 절환 회로(30)는 조합 회로(60)의 데이터 비트들중에서 카운터(50)로부터 카운트 값의 최하위 비트가 인가될 때 인가된 데이터 비트들을 카운터(50)의 최하위 비트에 따라 선택적으로 변환시켜 생존 경로 저장및 갱신 블록(20)에 인가하도록 구성되어 있다. 여기서, 카운터(50)의 카운트값은 카운터 증가 신호를 계수하다가 종료되었을 때의 값인 바, 결국 생존 결정 블록(10)에서 케이스 6의 데이터 비트(1,1)가 연속하여 인가된 횟수를 의미하며, 카운트 값의 최하위 비트는 케이스 6의 데이터 비트가 홀수개 또는 짝수개인지를 알리는 정보임은 상술하였다.The output of this
따라서, 절환 회로(30)는 연속적으로 입력되는 케이스 6의 데이터 비트들중에 마지막 케이스 6의 데이터 비트들을 카운터(50)의 최하위 비트에 따라 선택적으로 변환시키는 것이다. 즉, 절환 회로(30)는 카운터(50)의 최하위 비트가 0 일 때에는 케이스 6의 마지막 데이터 비트들을 0,0으로 출력하나, 카운터(50)의 최하위 비트가 1 일때에는 케이스 6의 마지막 비트들을 1, 1로 변환시켜 출력하게 되는 것이다.Accordingly, the
따라서, 케이스 6이 연속하여 짝수개 입력될 때에 절환 회로(30)는 (0,0),(0,0)....(0,0)의 데이터 비트를 출력하나, 케이스 6이 연속하여 홀수개 입력될 때에는 절환 회로(30)는 (0,0),(0,0)...(0,0),(1,1)의 데이터 비트를 출력하게됨을 알 수 있다.Therefore, when
이와 같이 케이스 6의 상태가 홀수 또는 짝수인가를 판단하여 절환 회로(30)가 최종적으로 (0,0) 또는 (1,1)의 데이터 비트를 출력하게 한 이유는 다음과 같다.In this way, it is determined whether the state of
도 1에 도시된 생존 경로 저장및 갱신 블록(2)으로부터 알 수 있는 바와 같이 종래의 케이스 3(0,0)의 경우에 그 생존 경로가 변경되지 않게 되나, 케이스 6 (1,1)이 연속하여 홀수개 입력되는 경우에는 생존 경로가 반전되며, 케이스 6이 짝수개 연속하여 입력되는 경우에 케이스 6이 인가되기 전의 생존 경로가 유지된다. 따라서, 본 발명에서는 카운터를 이용하여 케이스 6의 데이터 비트가 연속하여 홀수개 또는 짝수개 인가되고 있는가를 판단하고, 케이스 6의 데이터 비트가 짝수개 인가될 때에는 이 케이스 6의 데이터 비트 모두를 (0,0) 즉, 케이스 3 의 경우로 변환시켜 출력하나, 케이스 6의 데이터 비트가 홀수개 인가될 때에는 이 케이스 6의 데이터 비트들중 마지막 데이터 비트만을 (1,1)로 변환키고, 나머지 데이터 비트들은 (0,0) 즉, 케이스 3 의 경우로 변환시켜 생존 경로 저장및 갱신 블록(20)에 인가하는 것이다.As can be seen from the survival path storage and update block 2 shown in Fig. 1, in the case of the conventional case 3 (0,0), the survival path is not changed, but the case 6 (1,1) is continuous. When the odd number is input, the survival path is reversed. When the
상술한 설명으로부터 알 수 있는 바와 같이 생존 경로 결정 블록은 PR-Ⅰ채널용 비터비 디코더의 생존 경로 결정 블록을 이용하여 구성되나, 생존 경로 저장및 갱신 블록은 종래의 PR-Ⅳ용 비터비 디코더의 것을 이용할 수 있음을 알 수 있다.As can be seen from the above description, the survival path determination block is configured using the survival path determination block of the Viterbi decoder for the PR-I channel, but the survival path storage and update block is the conventional Viterbi decoder for the PR-IV. It can be seen that it can be used.
따라서, 본 발명은 DVDR의 채널 특성인 PR-Ⅰ에 대한 비터비 디코더내의 생존 경로 저장및 갱신 블록을 PR-Ⅳ용 비터비 디코더의 생존 경로 저장및 갱신 블록을 이용하여 구현할 수 있어 PR-Ⅰ에 대한 비터비 디코더를 용이하게 구현할 수 있다는 효과가 있다.Accordingly, the present invention can implement the survival path storage and update block in the Viterbi decoder for PR-I, which is the channel characteristic of DVDR, using the survival path storage and update block of the Viterbi decoder for PR-IV. There is an effect that can easily implement a Viterbi decoder for.
Claims (3)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019970068164A KR100267052B1 (en) | 1997-12-12 | 1997-12-12 | Viterbi decoder |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019970068164A KR100267052B1 (en) | 1997-12-12 | 1997-12-12 | Viterbi decoder |
Publications (2)
Publication Number | Publication Date |
---|---|
KR19990049258A KR19990049258A (en) | 1999-07-05 |
KR100267052B1 true KR100267052B1 (en) | 2000-09-15 |
Family
ID=19527149
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019970068164A KR100267052B1 (en) | 1997-12-12 | 1997-12-12 | Viterbi decoder |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100267052B1 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102341312B1 (en) | 2020-02-27 | 2021-12-21 | (주)파이모아코리아 | Thermal permator |
-
1997
- 1997-12-12 KR KR1019970068164A patent/KR100267052B1/en not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
KR19990049258A (en) | 1999-07-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5748119A (en) | Devices and methods for channel-encoding and channel-decoding of digital data | |
US7098819B2 (en) | Modulation apparatus/method, demodulation apparatus/method and program presenting medium | |
KR100644599B1 (en) | Method of modulation and/or demodulation of RLL code having enhanced DC suppression capability | |
EP0718843B1 (en) | Signal modulation method, signal modulator, signal demodulation method and signal demodulator | |
KR100297528B1 (en) | Modulation circuit | |
KR19990071691A (en) | Digital modulation device, digital modulation method and recording medium thereof | |
JPH0519332B2 (en) | ||
KR20000059841A (en) | Method for generating RLL code having enhanced DC suppression capability, and modulation method and demodulation method of the generated RLL code | |
KR920022138A (en) | Maximum Likelihood Sequence Metric Calculator | |
KR100267052B1 (en) | Viterbi decoder | |
KR100415873B1 (en) | (n-1) -encoding device and method for encoding bit information word into n-bit channel word, and decoding device and method for decoding channel word into information word | |
KR20020033724A (en) | Method of converting a stream of databits of a binary information signal into a stream of databits of a constrained binary channel signal, device for encoding, signal comprising a stream of databits of a constrained binary channel signal, record carrier, method for decoding, device for decoding | |
HUP9902002A2 (en) | Conversion of a sequence of m-bit information words into a modulated signal | |
KR20010025003A (en) | Encoding/decoding n-bit source words into corresponding m-bit channel words, and vice versa, such that the conversion is parity inverting | |
EP0817192B1 (en) | 8/9 coding apparatus and method of same | |
US6903667B2 (en) | Data conversion apparatus and data conversion method | |
JPS62281523A (en) | Modulation circuit | |
KR100448282B1 (en) | Method for balanced encoding and decoding of locks having the different constant weight | |
US4206458A (en) | Numerical display system for electronic instrument | |
JP3013651B2 (en) | Digital modulator | |
KR0185944B1 (en) | Method for coding using (1, 7) encoded code | |
JP2004015801A (en) | Signal demodulating apparatus and method | |
JP3387105B2 (en) | Modulation circuit | |
KR950003630B1 (en) | Audio level meter driving circuit for digital signal | |
KR100338388B1 (en) | Viterbi decoder using hard decision method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
LAPS | Lapse due to unpaid annual fee |