KR100744505B1 - Viterbi decoder - Google Patents
Viterbi decoder Download PDFInfo
- Publication number
- KR100744505B1 KR100744505B1 KR1020040093567A KR20040093567A KR100744505B1 KR 100744505 B1 KR100744505 B1 KR 100744505B1 KR 1020040093567 A KR1020040093567 A KR 1020040093567A KR 20040093567 A KR20040093567 A KR 20040093567A KR 100744505 B1 KR100744505 B1 KR 100744505B1
- Authority
- KR
- South Korea
- Prior art keywords
- symbol
- unit
- path
- acs
- enhanced
- 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/25—Error detection or forward error correction by signal space coding, i.e. adding redundancy in the signal constellation, e.g. Trellis Coded Modulation [TCM]
- H03M13/256—Error detection or forward error correction by signal space coding, i.e. adding redundancy in the signal constellation, e.g. Trellis Coded Modulation [TCM] with trellis coding, e.g. with convolutional codes and TCM
-
- 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/3905—Maximum a posteriori probability [MAP] decoding or approximations thereof based on trellis or lattice decoding, e.g. forward-backward algorithm, log-MAP decoding, max-log-MAP decoding
- H03M13/3922—Add-Compare-Select [ACS] operation in forward or backward recursions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/146—Data rate or code amount at the encoder output
- H04N19/147—Data rate or code amount at the encoder output according to rate distortion criteria
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/44—Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
Landscapes
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Error Detection And Correction (AREA)
Abstract
본 발명은 서로 다른 부호율로 부호화되는 복수의 인핸스드 데이터를 수신할 수 있는 수신 시스템에서의 비터비 복호기에 관한 것이다. 특히 본 발명은 인핸스드/메인 통합 비터비 복호기 또는 인핸스드 전용 비터비 복호기를 제안하며, 이때 상기 비터비 복호기는 인핸스드 심볼의 극성 반전을 고려하여 양의 복호기와 음의 복호기로 구성되는 것을 특징으로 한다. 그리고 상기 양의 복호기와 음의 복호기에서는 송신기의 인핸스드 심볼 처리기와 트렐리스 부호기에 대한 복호를 두 단계로 하지 않고 한번에 수행함으로써, 복호 성능을 높일 수 있다. The present invention relates to a Viterbi decoder in a receiving system capable of receiving a plurality of enhanced data encoded at different code rates. In particular, the present invention proposes an enhanced / main integrated Viterbi decoder or an enhanced dedicated Viterbi decoder, wherein the Viterbi decoder is composed of a positive decoder and a negative decoder in consideration of the polarity inversion of the enhanced symbol. It is done. In the positive decoder and the negative decoder, the decoding performance of the enhanced symbol processor and the trellis encoder of the transmitter can be performed at once without performing two steps.
E8-VSB, 비터비, 인핸스드 E8-VSB, Viterbi, Enhanced
Description
도 1은 본 발명에 따른 송신 시스템의 구성 블록도1 is a block diagram of a transmission system according to the present invention
도 2는 본 발명에 따른 수신 시스템의 구성 블록도2 is a configuration block diagram of a receiving system according to the present invention;
도 3은 도 2의 인핸스드 채널 디코더 및 역다중화부의 상세 블록도FIG. 3 is a detailed block diagram of the enhanced channel decoder and demultiplexer of FIG. 2. FIG.
도 4a는 도 1의 E8-VSB 콘볼루션 부호화부의 상세 블록도4A is a detailed block diagram of the E8-VSB convolutional encoder of FIG. 1.
도 4b는 도 4a의 인핸스드 심볼 처리기의 상세 블록도4B is a detailed block diagram of the enhanced symbol processor of FIG. 4A.
도 4c는 도 4b의 인핸스드 심볼 처리기로 입력된 심볼이 메인 심볼인 경우의 데이터 흐름을 나타낸 도면4C is a diagram illustrating a data flow when a symbol input to the enhanced symbol processor of FIG. 4B is a main symbol;
도 4d는 도 4b의 인핸스드 심볼 처리기로 입력된 심볼이 인핸스드 심볼인 경우의 데이터 흐름을 나타낸 도면FIG. 4D is a diagram illustrating a data flow when a symbol input to the enhanced symbol processor of FIG. 4B is an enhanced symbol.
도 5a는 메인 심볼인 경우 인핸스드 심볼 처리기와 트렐리스 부호기가 연접된 모습을 보인 도면5A is a diagram illustrating an enhanced symbol processor and a trellis coder connected in the case of a main symbol;
도 5b는 인핸스드 심볼인 경우 인핸스드 심볼 처리기와 트렐리스 부호기가 연접된 모습을 보인 도면5B is a diagram illustrating an enhanced symbol processor and a trellis coder connected in the case of an enhanced symbol;
도 5c는 인핸스드 심볼인 경우 인핸스드 심볼 처리기와 트렐리스 부호기가 연접된 모습에서 포스트 디코더와 프리 코드가 상쇄된 예를 보인 도면5C is a diagram illustrating an example in which a post decoder and a pre code are canceled in a state in which an enhanced symbol processor and a trellis coder are concatenated in the case of an enhanced symbol;
도 6은 인핸스드 심볼과 메인 심볼의 상태 전이도를 보인 도면6 is a state transition diagram of an enhanced symbol and a main symbol;
도 7a은 반복된 1/4 인핸스드 심볼이 같은 경우의 1/4 인핸스드 심볼의 상태 전이도를 보인 도면7A shows a state transition diagram of a 1/4 enhanced symbol when the repeated 1/4 enhanced symbol is the same.
도 7b는 반복된 1/4 인핸스드 심볼이 서로 다른 경우의 1/4 인핸스드 심볼의 상태 전이도를 보인 도면FIG. 7B shows a state transition diagram of a 1/4 enhanced symbol when the repeated 1/4 enhanced symbols are different from each other. FIG.
도 8은 인핸스드 심볼의 극성 반전의 예를 설명하기 위한 도면8 is a diagram for explaining an example of polarity inversion of an enhanced symbol.
도 9는 인핸스드 심볼과 메인 심볼의 경로 메트릭 계산 과정의 일 예를 보인 도면9 illustrates an example of a process of calculating a path metric for an enhanced symbol and a main symbol;
도 10의 (a) 내지 (e)는 비터비 복호기로 입력되는 제어 신호들의 예를 보인 도면10A to 10E illustrate examples of control signals input to a Viterbi decoder.
도 11은 본 발명의 제1 실시예에 따른 인핸스드/메인 통합 비터비 복호기의 구성 블록도11 is a block diagram of an enhanced / main integrated Viterbi decoder according to the first embodiment of the present invention.
도 12의 (a) 내지 (c)는 비터비 복호기의 입력 열과 출력 열의 예들을 보인 도면12A to 12C show examples of an input string and an output string of a Viterbi decoder.
도 13은 인핸스드 심볼의 재정렬을 수행하기 위한 도면13 is a diagram for performing reordering of an enhanced symbol.
도 14는 본 발명의 제2 실시예에 따른 인핸스드 전용 비터비 복호기의 구성 블록도14 is a block diagram illustrating an enhanced dedicated Viterbi decoder according to a second embodiment of the present invention.
도면의 주요부분에 대한 부호의 설명Explanation of symbols for main parts of the drawings
611,811 : 브랜치 메트릭 계산부 611,811 branch metric calculation unit
612,812 : 양의 복호기의 ACS부612,812: ACS part of the positive decoder
613,813 : 음의 복호기의 ACS부613,813: ACS section of negative decoder
614,814 : 극성 반전 추정부614,814: polarity inversion estimator
615,815 : 양의 복호기의 경로 히스토리부615,815: path history of the positive decoder
616,816 : 음의 복호기의 경로 히스토리부616,816: path history section of the negative decoder
617,817 : 결정 선택부 618 : 포스트 디코더617,817: decision selector 618: post decoder
619 : 출력 먹스 818 : 인핸스드 심볼 재정렬부619: output mux 818: enhanced symbol reordering unit
본 발명은 서로 다른 부호율로 부호화되는 복수의 인핸스드(Enhanced) 데이터를 수신할 수 있는 수신 시스템에 관한 것으로, 특히 비터비 복호기에 관한 것이다. The present invention relates to a receiving system capable of receiving a plurality of enhanced data encoded at different code rates, and more particularly, to a Viterbi decoder.
미국에서는 지상파 디지털 방송을 위해 ATSC(Advanced Television Systems Committee) 8VSB(Vestigial Sideband) 전송 방식을 1995년 표준으로 채택하여 1998년 하반기부터 방송을 하고 있으며, 한국에서도 미국 방식과 동일한 ATSC 8VSB 전송 방식을 표준으로 채택하여 현재 방송을 실시중이다.In the United States, the ATSC (Advanced Television Systems Committee) 8VSB (Vestigial Sideband) transmission method was adopted as a standard in 1995, and broadcasted since the second half of 1998.In Korea, the same ATSC 8VSB transmission method is used as the standard. Adopted and currently broadcasting.
이러한 ATSC 8VSB 전송방식은 기본적으로 고화질 영상을 목표로 규격이 수립되었다. 그러나 화질저하를 수반하지만 보다 안정된 수신이 가능한 시스템이나, 내용의 특성상 영상 신호보다 더욱 더 안정된 수신이 요구되는 데이터 통신이 가능한 시스템의 전송 규격이 요구되어졌다. 뿐만 아니라 이러한 추가적인 전송 규격은 기존의 ATSC 8VSB 신호를 수신하는 시스템에 악영향을 끼치는 않는 범위에서 규정하 게 되며, 또한 새로운 규격의 수신기에서도 기존의 ATSC 8VSB 신호와 새로운 규격의 Enhanced 8-VSB 신호(이하 E8-VSB) 모두를 수신할 수 있도록 규정하게 된다.The ATSC 8VSB transmission method was basically set up to target high-definition video. However, there is a demand for a transmission standard for a system capable of more stable reception with lower image quality, or a system capable of data communication that requires more stable reception than a video signal due to the nature of the contents. In addition, these additional transmission specifications are defined to the extent that they do not adversely affect the system receiving the existing ATSC 8VSB signal, and in the receiver of the new specification, the existing ATSC 8VSB signal and the enhanced 8-VSB signal of the new specification (hereinafter referred to as E8-VSB) to receive all.
따라서 E8-VSB 시스템은 기존의 8VSB 시스템을 그대로 수용하면서 새로운 서비스를 추가하고, 새로 추가된 서비스는 기존 서비스보다 향상된 수신이 이루어지도록 한다. 또한 기존의 서비스 역시 추가되는 서비스의 영향을 받아 보다 안정된 수신 성능을 보이도록 한다. Therefore, the E8-VSB system adds a new service while accepting the existing 8VSB system as it is, and the newly added service enables improved reception than the existing service. In addition, the existing service is also affected by the added service to show a more stable reception performance.
이러한 E8-VSB 규격에 맞는 송신기 및 수신기의 전체적인 구조는 본 출원인에 의해 제안된 바 있으며, 도 1에 송신 시스템의 구성 블록도를, 도 2에 수신 시스템의 구성 블록도를 보이고 있다. The overall structure of a transmitter and a receiver conforming to the E8-VSB standard has been proposed by the present applicant, and FIG. 1 shows a block diagram of the transmission system and FIG. 2 shows a block diagram of the reception system.
즉, 송신 시스템에서는 인핸스드 데이터를 통하여 최근 널리 사용되는 MPEG-4 영상이나 각종 부가 데이터(예: 프로그램 실행 파일, 주식 정보 등)를 전송할 수 있으며, 또한 기존의 MPEG-2 영상 및 돌비 음향 데이터를 전송할 수도 있다. That is, the transmission system can transmit MPEG-4 video or various additional data (for example, program executable file, stock information, etc.) that are widely used recently through enhanced data, and can also use existing MPEG-2 video and Dolby sound data. You can also send.
이하, 설명의 편의를 위해 기존의 MPEG-2 영상을 메인 데이터 또는 노말(Normal) 데이터라 정의한다. 이때, 상기 인핸스드 데이터는 메인 데이터에 비해서 추가의 오류 정정 부호화를 하게 된다. 그리고 인핸스드 데이터 중 1/2 인핸스드 데이터 및 1/4 인핸스드 데이터는 메인 데이터에 비해서 각각 1/2 부호율 및 1/4 부호율로 각각 부호화가 추가로 이루어지는 데이터를 의미한다. 따라서, 이러한 인핸스드 데이터는 메인 데이터에 비해서 채널에서 발생하는 잡음 및 다중 경로로 인한 간섭에 훨씬 우수한 수신 성능을 발휘하며, 특히 1/4 부호율로 부호화된 1/4 인 핸스드 데이터는 1/2 부호율로 부호화된 1/2 인핸스드 데이터에 비해서 더 우수한 성능을 가진다. Hereinafter, for convenience of description, an existing MPEG-2 image is defined as main data or normal data. In this case, the enhanced data is subjected to additional error correction encoding compared to the main data. The enhanced data and the 1/2 enhanced data of the enhanced data mean data in which encoding is further performed at 1/2 code rate and 1/4 code rate, respectively, compared to the main data. Therefore, this enhanced data has a much better reception performance than the main data due to noise and multipath interference occurring in the channel. In particular, the enhanced data encoded at 1/4 code rate is 1 / It has better performance than 1/2 enhanced data encoded at 2 code rates.
도 1을 참조하여 송신 시스템을 개략적으로 설명하면 다음과 같다. Referring to FIG. 1 schematically, the transmission system is as follows.
도 1에서, 메인 및 인핸스드 다중화 패킷 처리부(111)는 1/2 인핸스드 데이터와 1/4 인핸스드 데이터를 패킷 단위로 다중화하고 다시, 다중화된 인핸스드 데이터와 메인 데이터를 세그먼트 단위로 다중화한 후 제 1 부호화부(112)로 출력한다. In FIG. 1, the main and enhanced multiplex
상기 제 1 부호화부(112)는 상기 메인 및 인핸스드 다중화 패킷 처리부(111)의 출력단에 랜더마이저(112-1), 리드-솔로몬 부호기(112-2), 및 바이트 인터리버(112-3)가 순차적으로 연결되어 구성된다. 이러한 구성을 갖는 제 1 부호화부(112)는 상기 메인 및 인핸스드 다중화 패킷 처리부(111)에서 출력되는 데이터 패킷에 대해 데이터 랜더마이즈, 리드 솔로몬 부호화, 데이터 인터리빙을 순차적으로 수행한 후 콘볼루션 부호화부(Convolutional Coder)(113)로 출력한다. The
상기 콘볼루션 부호화부(113)는 상기 제 1 부호화부(112)에서 인터리빙되어 출력되는 바이트 단위의 데이터를 심볼로 변환한 후 인핸스드 데이터 심볼에 대해서만 콘볼루션 부호화를 수행하고 다시 심볼을 바이트 단위의 데이터로 변환한 후 제 1 복호화부(114)로 출력한다.The
상기 제 1 복호화부(114)는 상기 콘볼루션 부호화부(113)의 출력단에 바이트 디인터리버(114-1), 리드-솔로몬 패리티 제거기(114-2), 및 디랜더마이저(114-3)가 순차적으로 연결되어 구성된다. 이러한 구성을 갖는 제 1 복호화부(114)는 상기 콘 볼루션 부호화부(113)에서 출력되는 바이트 단위의 데이터에 대해 데이터 디인터리브, 리드 솔로몬 패리트 제거, 디랜더마이즈 동작을 순차적으로 수행한 후 8VSB 송신부(100)로 출력한다.The
상기 8VSB 송신부(100)는 종래의 ATSC 8VSB 송신 시스템의 구성과 동일한 구조로서, ATSC 랜더마이저(101, 생략가능), ATSC 리드 솔로몬 부호기(102), ATSC 바이트 인터리버(103), 트렐리스 부호기(104), 다중화기(105), 파일롯 삽입기(106), VSB 변조기(107), RF 변환기(108)로 구성된다. The
즉, 상기 제 1 복호화부(114)에서 리드 솔로몬 패리티가 제거된 데이터가 ATSC 리드 솔로몬 부호기(102), 및 ATSC 바이트 인터리버(103)를 거치면서 상기 데이터 내에 20 바이트의 패리티 부호를 첨가하는 리드 솔로몬 부호화, 및 데이터의 순서를 바꾸는 데이터 인터리빙이 수행된다. 그리고 인터리빙된 데이터는 트렐리스 부호기(104)로 입력된다. 이때, 인터리빙된 데이터가 인핸스드 데이터라면, 인핸스드 데이터의 널 비트는 트렐리스 부호기(104)의 하위 비트 입력단으로 인가되고, 인핸스드 데이터에 대한 정보를 포함하는 정보 비트는 상기 트렐리스 부호기(104)의 상위 비트 입력단으로 인가된다. That is, the Reed Solomon data in which the Reed Solomon parity is removed by the
상기 트렐리스 부호기(104)는 상위 비트로 입력되는 데이터를 프리코딩하고, 하위 비트로 입력되는 데이터는 트렐리스 부호화하여 다중화기(105)로 출력한다. 상기 다중화기(105)는 트렐리스 부호화된 심볼열과 필드 동기 신호, 세그먼트 동기 신호, 그리고 맵 정보를 다중화하고, 파일럿 삽입기(106)는 여기에 파일럿 신호를 삽입하여 VSB 변조기(107)로 출력한다. 상기 VSB 변조기(107)는 파일럿 신호가 삽 입된 신호를 중간 주파수 대역의 8VSB 신호로 변조하여 RF 변환기(108)로 출력한다. 상기 RF 변환기(108)는 VSB 변조된 신호를 RF 대역 신호로 변환한 후 안테나를 통해 전송한다. 여기서 상기 맵 정보는 필드 동기 구간에 삽입되는데, 다중화 규칙과 인핸스드 데이터의 전송 패킷 수에 관련된 메인/인핸스드 데이터 다중화 정보를 포함하고 있다. The
상기와 같이 송신 시스템에서 E8-VSB 변조되어 전송되는 신호를 수신하는 수신 시스템에 대해 도 2를 참조하여 설명하면 다음과 같다.Referring to FIG. 2, a reception system for receiving a signal transmitted by E8-VSB modulation in a transmission system is described as follows.
즉, E8-VSB 변조된 RF 신호가 안테나를 통해 수신되면 튜너(201)는 튜닝에 의해 원하는 채널의 RF 신호만을 선택한 후 IF 신호로 변환하여 IF 믹서(202)로 출력한다. 상기 IF 믹서(202)는 상기 튜너(201)로부터 출력된 IF 신호를 기저대역 신호로 다운 컨버전하여 복조부(203)로 출력하고, 상기 복조부(203)는 기저대역 신호를 VSB 복조한 후 등화부(204)와 맵 정보 복구부(205)로 출력한다. That is, when the E8-VSB modulated RF signal is received through the antenna, the
상기 맵 정보 복구부(205)는 전송된 현재 필드의 E8-VSB 맵 정보를 복구하여 상기 등화부(204)와 E8-VSB 채널 디코더/역다중화부(206)로 출력한다. 또한 상기 맵 정보 복구부(205)는 현재 필드의 E8-VSB 맵 정보에 의하여 VSB 신호의 각 심볼들 하나 하나의 속성을 지시하는 정보를 발생하여 등화부(204)와 E8-VSB 채널 디코더/역다중화부(206)로 출력한다. 즉, 상기 맵 정보 복구부(205)는 메인 심볼(즉, 일반 8VSB 심볼로서, 노말 심볼이라고도 함)인지 인핸스드(Enhanced) 심볼인지를 구별하고, 인핸스드 심볼인 경우 1/2 부호율로 부호화된 심볼인지 1/4 부호율로 부호화된 심볼인지 알려주는 E8-VSB 심볼 속성(symbol attribute) 정보를 생성하여 등화부(204)와 E8-VSB 채널 디코더/역다중화부(206)로 출력한다. 이때 상기 E8-VSB 심볼 속성 정보는 E8-VSB 채널 디코더/역다중화부(206)의 비터비(Viterbi) 복호기로 입력되는 등화된 VSB 심볼 하나에 연결되어 동작하게 된다.The map
상기 등화부(204)는 후단의 E8-VSB 채널 디코더/역다중화부(206)의 출력과 맵 정보 복구부(205)의 출력을 입력받아 상기 VSB 복조된 신호에 포함된 채널 왜곡을 보상한 후 E8-VSB 채널 디코더/역다중화부(206)로 출력한다. 즉 상기 등화부(204)는 맵 정보 복구부(205)의 출력을 이용하여 향상된 등화를 수행하고, E8-VSB 채널 디코더/역다중화부(206)는 현재 수신된 모드에 적합한 채널 복호를 할 수 있다.The
도 3은 상기 E8-VSB 채널 디코더/역다중화부(206)의 상세 블록도로서, 메인 데이터 외에 인핸스드 데이터를 수신하기 위해서 별도의 데이터 경로가 존재한다. 즉, 현재 수신된 E8-VSB 신호의 다중화 정보를 알려주는 E8-VSB 맵 정보와 E8-VSB 심볼 속성 정보를 이용하여 해당하는 모드로 수신 신호를 복호 또는 분리하고, 이렇게 함으로써 수신 시스템에서는 메인 VSB 스트림(MPEG TPS#1)과 인핸스드 VSB 스트림인 1/2 인핸스드 스트림(MPEG TPS#2)과 1/4 인핸스드 스트림(MPEG TPS#3)을 모두 수신할 수 있다. 여기서 모드라 함은 기존 ATSC 8VSB 데이터인 메인 데이터, 1/4 인핸스드 데이터, 1/2 인핸스드 데이터 중 어느 하나를 가리킨다.3 is a detailed block diagram of the E8-VSB channel decoder /
도 3을 보면, 등화된 VSB 심볼을 입력받아 메인 데이터를 복호하는(MPEG TPS#1) 메인 데이터 복호부(300)와, 인핸스드 데이터를 분리하여 복호한 후 다시 1/2 인핸스드 데이터(MPEG TPS#2)와 1/4 인핸스드 데이터(MPEG TPS#3)로 분리하는 인핸스드 데이터 복호부(310)로 구성된다. Referring to FIG. 3, the
상기 메인 데이터 복호부(300)는 비터비 복호기(decoder)/데이터 디인터리버(301), ATSC 바이트 디인터리버(302), ATSC RS 디코더(303), 및 ATSC 데이터 디랜더마이저(304)로 구성된다. The
즉, 상기 등화부(204)에서 등화된 메인 심볼은 기존의 8VSB 채널 디코더와 마찬가지로 메인 데이터 복호부(300)의 비터비 복호기/12-way 디인터리버(301), ATSC 바이트 디인터리버(302), ATSC RS 디코더(303), 및 ATSC 데이터 디랜덤마이저(304)를 거쳐 메인 스트림(MPEG TPS#1)으로 복호된다. 즉 상기 메인 심볼은 E8-VSB 데이터 속성 발생기에서 메인 심볼이라고 알려주기 때문에 전술한 바와 같이 기존의 채널 디코딩 방식의 경로를 따라 수신할 수 있다. That is, the main symbol equalized by the
그런데 E8-VSB 신호의 경우에는 메인 데이터와 인핸스드 데이터가 다중화되어 있으므로, 이로 인해 채널 디코더에 두가지 변화가 생긴다. 하나는 비터비 복호기에서 VSB 심볼의 속성을 기준으로 각 속성에 맞는 디코딩을 수행해야 하는 것이고, 다른 하나는 인핸스드 VSB(EVSB) 스트림을 위한 별개의 데이터 경로가 존재해야 한다는 것이다.However, in the case of the E8-VSB signal, since the main data and the enhanced data are multiplexed, this causes two changes in the channel decoder. One is that the Viterbi decoder needs to perform decoding for each attribute based on the attributes of the VSB symbol, and the other is that there must be a separate data path for the enhanced VSB (EVSB) stream.
상기 인핸스드 데이터 복호부(310)는 상기된 EVSB 스트림을 수신하여 복호하기 위한 데이터 경로로서, ATSC RS 패리티 제거부(311), ATSC 데이터 디랜덤마이저(312), 널 비트 제거부(313), 인핸스드 데이터 디인터리버(314), 인핸스드 RS 디코더(315), 인핸스드 패킷 역다중화부(316), 메인 및 인핸스드(M/E) 먹스 패킷 처리부(317), 및 두 개의 164-to-188 패킷 변환부(318,319)로 구성된다. The
이와 같이 구성된 도 3의 E8-VSB 채널 디코더/역다중화부(206)를 보면, 등화부(204)에서 등화된 E8-VSB 심볼과 맵 정보 복구부(205)에서 생성한 E8-VSB 심볼 속성 정보가 동기되어 비터비 복호기/12-way 디인터리버(301)로 입력된다.Referring to the E8-VSB channel decoder /
이때, 상기 비터비 복호기/12-way 디인터리버(301)로 입력되는 등화된 심볼에는 메인 심볼과 인핸스드 심볼이 섞여 있으므로, 상기 비터비 복호기는 E8-VSB 심볼 속성 정보에 의해 메인 심볼과 인핸스드 심볼을 구분하고 그에 따른 비터비 디코딩을 수행한다. 그리고, 상기 비터비 디코딩과 함께 12-way 디인터리빙(deinterleaving)을 수행하여 바이트 단위의 결과를 ATSC 데이터 디인터리버(302)로 출력한다. 상기 비터비 복호기에서 디코딩 과정 중에 결정(decision)된 값은 상기 등화부(204)로 피드백된다. 상기 ATSC 바이트 디인터리버(302)는 상기 비터비 복호기/12-way 디인터리버(301)에서 출력되는 바이트 단위의 데이터를 디인터리빙한다. In this case, since the equalized symbol input to the Viterbi decoder / 12-
즉, 상기 ATSC 바이트 디인터리버(302)는 상기된 도 1의 ATSC 바이트 인터리버의 역과정으로 상기 비터비 복호기/12-way 디인터리버(301)의 출력에 대해 디인터리빙을 수행하여 패킷 단위로 출력한다. 상기 ATSC 바이트 디인터리버(302)에서 출력되는 패킷 데이터는 ATSC RS 디코더(303)와 인핸스드 데이터 복호부(310)의 ATSC RS 패리티 제거부(311)로 입력된다.That is, the
상기 ATSC RS 디코더(303)는 상기 ATSC 바이트 디인터리버(302)의 출력에 대해서 RS 복호를 수행하여 ATSC 데이터 디랜덤마이저(304)로 출력한다. 상기 ATSC RS 복호된 데이터가 ATSC 데이터 디랜덤마이저(304)에서 디랜덤마이저되면 최종적 으로 메인 신호 즉, MPEG TPS#1이 출력되게 된다. 즉, 인핸스드 스트림들은 기존의 MPEG TP 스트림에서 관찰하면 의미없는 널(Null) 패킷으로 보이기에 MPEG 디코더에서 무시해버리므로, 메인 VSB의 MPEG TP 스트림만 이상없이 수신하게 된다.The
상기 인핸스드 데이터 복호부(310)의 ATSC RS 패리티 제거부(311)는 상기 ATSC 바이트 디인터리버(302)에서 출력되는 패킷 데이터에서 ATSC RS 패리티 부분을 제거한 후 ATSC 데이터 디랜덤마이저(312)로 출력한다.The ATSC RS parity remover 311 of the enhanced
상기 ATSC 데이터 디랜덤마이저(312)는 상기 ATSC RS 패리티 부분이 제거된 데이터에 대해 디랜덤마이저를 수행한 후 널 비트 제거부(313)로 출력한다.The
상기 널 비트 제거부(313)는 상기 ATSC 데이터 디랜덤마이저(312)에서 출력되는 바이트 단위의 데이터에 대해 메인 데이터 바이트인 경우에는 모두 제거하고, 1/2 인핸스드 데이터 바이트인 경우에는 널 비트를 제거하여 2바이트를 한 바이트로 출력한다. 또한 1/4 인핸스드 데이터 바이트인 경우에는 반복된 비트와 널 비트를 제거하여 4바이트를 한 바이트로 출력한다. 여기서, 각 바이트별로 메인 데이터 바이트인지, 1/2 인핸스드 데이터 바이트인지, 1/4 인핸스드 데이터 바이트인지는 메인 및 인핸스드(M/E) 먹스 패킷 처리부(317)에서 출력되는 E8-VSB 바이트 속성 정보에 의해서 구분한다.The null
상기 인핸스드 데이터 디인터리버(314)는 상기 널 비트 제거부(313)에서 출력되는 모두 의미있는 비트들로 이루어진 EVSB 바이트 단위의 데이터에 대해 디인터리빙을 수행한 후 인핸스드 RS 디코더(315)로 출력한다. 상기 인핸스드 RS 디코더(315)는 상기 디인터리빙된 데이터에 대해 복호를 수행한 후 인핸스드 패킷 역다 중화부(316)로 출력한다. The enhanced
상기 인핸스드 패킷 역다중화부(316)는 맵 정보 복구부(205)에서 출력되는 E8-VSB 맵 정보와 필드 동기 신호를 이용하여 상기 인핸스드 RS 복호된 데이터를 164 바이트 단위의 1/2 인핸스드 데이터 패킷과 1/4 인핸스드 데이터 패킷으로 분리한다. 상기 분리된 1/2 인핸스드 데이터 패킷은 제1 패킷 변환부(318)로 출력되고, 1/4 인핸스드 데이터 패킷은 제2 패킷 변환부(319)로 출력된다. The
상기 제1 패킷 변환기(318)는 164바이트 단위의 패킷으로 입력되는 1/2 인핸스드 데이터 패킷을 데이터 변경없이 188바이트 단위의 패킷으로 나누어 출력하고(MPEG TPS#2), 제2 패킷 변환기(319)는 164바이트 단위의 패킷으로 입력되는 1/4 인핸스드 데이터 패킷을 데이터 변경없이 188바이트 단위의 패킷으로 나누어 출력한다(MPEG TPS#3).The
본 발명의 목적은 수신 시스템에서 인핸스드 심볼과 메인 심볼에 대해 비터비 복호를 수행하는 비터비 복호기를 제공하는 것이다. An object of the present invention is to provide a Viterbi decoder for performing Viterbi decoding on an enhanced symbol and a main symbol in a receiving system.
본 발명의 다른 목적은 수신 시스템에서 인핸스드 심볼과 메인 심볼을 모두 비터비 복호할 수 있는 인핸스드/메인 통합 비터비 복호기를 제공하는 것이다. Another object of the present invention is to provide an enhanced / main integrated Viterbi decoder capable of Viterbi decoding both an enhanced symbol and a main symbol in a receiving system.
본 발명의 또 다른 목적은 수신 시스템에서 인핸스드 심볼에 대해서만 비터비 복호를 수행하는 인핸스드 전용 비터비 복호기를 제공하는 것이다. It is still another object of the present invention to provide an enhanced dedicated Viterbi decoder that performs Viterbi decoding only on enhanced symbols in a receiving system.
상기 목적을 달성하기 위하여, 본 발명에 따른 비터비 복호기는 다음과 같은 특징을 가진다.In order to achieve the above object, the Viterbi decoder according to the present invention has the following features.
. 송신기의 인핸스드 심볼 처리기와 트렐리스 부호기에 대한 복호를 두 단계로 하지 않고 비터비 복호기에서 한번에 수행한다. . The decoding of the enhanced symbol processor and the trellis encoder of the transmitter is performed in a Viterbi decoder at once without performing two steps.
. 인핸스드 심볼의 극성 반전 여부를 추정하기 위하여 양의 복호기(positive decoder)와 음의 복호기(negative decoder) 두 개를 사용하고, 두 복호기의 최소 경로 메트릭을 비교하여 극성 반전 여부를 판단한다.. Two positive and negative decoders are used to estimate the polarity inversion of the enhanced symbols, and the minimum path metrics of the two decoders are compared to determine whether the polarity is reversed.
. 인핸스드/메인 통합 비터비 복호기에서는 서로 상이한 상태 전이를 가지는 인핸스드 심볼과 메인 심볼을 모두 복호할 수 있고, 이를 위해 입력 심볼의 속성과 관련된 제어 신호를 E8-VSB 데이터 속성 발생기로부터 입력받는다.. In the enhanced / main integrated Viterbi decoder, both the enhanced symbol and the main symbol having different state transitions can be decoded. For this purpose, the control signal related to the attribute of the input symbol is received from the E8-VSB data attribute generator.
. 1/4 인핸스드 심볼은 두 심볼씩 모아서 복호를 수행한다.. The 1/4 enhanced symbol is decoded by collecting two symbols.
. 인핸스드/메인 통합 비터비 복호기는 경로 히스토리부에서 인핸스드 심볼과 메인 심볼의 서바이버를 모두 입력받아 인핸스드 심볼과 메인 심볼의 최종 복호 결과를 모두 출력한다. . The enhanced / main integrated Viterbi decoder receives both the enhanced symbol and the survivor of the main symbol from the path history unit and outputs the final decoding result of the enhanced symbol and the main symbol.
. 인핸스드 전용 비터비 복호기는 경로 히스토리부에서 인핸스드 심볼만 입력받아 메인 심볼이 인핸스드 심볼에 주는 악영향을 최소화한다. 따라서 인핸스드 심볼의 복호 성능을 최대화할 수 있다. . The enhanced dedicated Viterbi decoder receives only the enhanced symbol from the path history part and minimizes the adverse effect of the main symbol on the enhanced symbol. Therefore, the decoding performance of the enhanced symbol can be maximized.
. 인핸스드 전용 비터비 복호기 출력의 심볼 열이 입력 심볼 열과 순서가 다르기 때문에 버퍼(buffer)를 사용하여 재정렬을 수행한다.. Since the sequence of symbols in the enhanced dedicated Viterbi decoder output is not the same as the sequence of input symbols, buffers are used for reordering.
. 브랜치 메트릭 계산부와 ACS부, 그리고 극성 반전 추정부는 12개 비터비 복호기 간에 공유가 가능하다.. The branch metric calculation unit, the ACS unit, and the polarity inversion estimator can be shared among 12 Viterbi decoders.
. ACS부와 경로 히스토리부의 각 복호장에서 8-레벨에 대한 판정값을 출력하여 채널 등화기 시스템으로 피드백 한다.. Each decoding field of the ACS section and the path history section outputs the determination value for the 8-level and feeds it back to the channel equalizer system.
다음은 이러한 특징을 하드웨어로 구현한 것으로서, 본 발명의 일 실시예에 따른 비터비 복호기는, 송신 시스템에서 제1 부호율로 부호화된 제 1 인핸스드 데이터와 제2 부호율로 부호화된 제 2 인핸스드 데이터 그리고, 메인 데이터를 다중화하여 전송하면, 이를 수신하여 복조 및 채널 등화한 후 비터비 복호를 수행하는 수신 시스템의 비터비 복호기에 있어서,The following is a hardware implementation of such a feature. A Viterbi decoder according to an embodiment of the present invention includes a first enhancement data encoded at a first code rate and a second enhancement coded at a second code rate in a transmission system. In the Viterbi decoder of the receiving system for performing the Viterbi decoding after receiving the demodulation and channel equalization by multiplexing the transmitted data and the main data,
입력되는 심볼의 극성이 반전되지 않았다고 가정하고 그에 해당하는 브랜치 메트릭 값으로부터 비터비 복호를 수행하여 복호 판정 값을 출력하는 양의 복호부;A positive decoder that assumes that the polarity of the input symbol is not inverted and performs a Viterbi decoding from the corresponding branch metric value and outputs a decoding determination value;
입력되는 심볼의 극성이 반전되었다고 가정하고 그에 해당하는 브랜치 메트릭 값으로부터 비터비 복호를 수행하여 복호 판정 값을 출력하는 음의 복호부;A negative decoder that assumes that the polarity of the input symbol is inverted and performs a Viterbi decoding from the corresponding branch metric value and outputs a decoding determination value;
입력되는 심볼의 극성 반전을 추정하고 그 결과를 출력하는 극성 반전 추정부; 및 A polarity inversion estimator for estimating polarity inversion of an input symbol and outputting a result; And
상기 극성 반전 추정부의 결과에 따라 양의 복호부 또는 음의 복호부에서 출력되는 복호 판정값을 선택하여 최종 상위 비트와 하위 비트를 출력하는 결정 선택부를 포함하여 구성되는 것을 특징으로 한다.And a decision selector which selects a decoding decision value output from the positive decoder or the negative decoder according to the result of the polarity inversion estimator and outputs the last upper and lower bits.
상기 양,음의 복호부는 입력된 심볼이 제2 부호율로 부호화된 심볼로 판별되면 두 심볼 단위로 비터비 복호를 수행하며, 상기 제2 부호율은 1/4 부호율인 것을 특징으로 한다.The positive and negative decoding units perform Viterbi decoding in units of two symbols when the input symbol is determined as a symbol encoded at a second code rate, and the second code rate is 1/4 code rate.
상기 양,음의 복호부는 입력된 심볼이 제2 부호율로 부호화된 심볼이면서 반복된 비트가 송신측에서 랜더마이즈된 후 서로 같다고 판별되면 두 심볼 동안 서로 같은 경로만을 고려하여 비터비 복호를 수행하는 것을 특징으로 한다.The positive and negative decoders perform Viterbi decoding considering only the same path for two symbols when it is determined that the input symbol is a symbol encoded at a second code rate and the repeated bits are identical after being randomized at the transmitting side. It is characterized by.
상기 양,음의 복호부는 입력된 심볼이 제2 부호율로 부호화된 심볼이면서 반복된 비트가 송신측에서 랜더마이즈된 후 서로 다르다고 판별되면 두 심볼 동안 서로 다른 경로만을 고려하여 비터비 복호를 수행하는 것을 특징으로 한다.The positive and negative decoders perform Viterbi decoding by considering only different paths during two symbols when it is determined that the input symbol is a symbol encoded at a second code rate and repeated bits are different from each other after being transmitted at the transmitting side. It is characterized by.
상기 양의 복호부는 The positive decoder is
입력되는 심볼의 부호가 반전되지 않았다고 가정하고 그에 해당하는 브랜치 메트릭 값을 입력 심볼로부터 계산하며, 각 상태별로 두 개의 브랜치에 대하여 해당 브랜치 메트릭과 그 브랜치와 연결된 이전 상태의 경로 메트릭을 더하고 그 중 작은 값을 선택하여 저장한 후 이때의 서바이버, 경로 선택 정보와 함께 출력하는 ACS부와, Assuming that the sign of the input symbol is not inverted, the corresponding branch metric value is calculated from the input symbol, and for each branch, for each branch, add the branch metric and the path metric of the previous state associated with that branch, and the smaller of them. An ACS unit that selects and stores a value and outputs it with the survivor and path selection information at this time;
각 상태의 서바이버 및 경로 선택 정보를 입력받아 복호장 길이 동안의 경로 히스토리를 유지하며, 또한 상기 각 상태의 최소 경로 메트릭 값들 중 가장 작은 값을 갖는 상태를 선택하고 그 상태에 해당하는 복호장 만큼의 시간 이전의 서바이버를 복호 판정값으로 출력하는 경로 히스토리부를 포함하여 구성되는 것을 특징으로 한다. It receives the survivor and path selection information of each state and maintains the path history for the decoding length, and selects the state having the smallest value among the minimum path metric values of each state, And a path history section for outputting the survivor before the time as a decoding decision value.
상기 음의 복호부는 The negative decoder is
입력되는 심볼의 극성이 반전되었다고 가정하고 그에 해당하는 브랜치 메트릭 값을 입력 심볼로부터 계산하며, 각 상태별로 두 개의 브랜치에 대하여 해당 브랜치 메트릭과 그 브랜치와 연결된 이전 상태의 경로 메트릭을 더하고 그 중 작은 값을 선택하여 저장한 후 이때의 서바이버, 경로 선택 정보와 함께 출력하는 ACS부와,Assuming that the polarity of the input symbol is reversed, the corresponding branch metric value is calculated from the input symbol, and for each branch, add the branch metric and the path metric of the previous state associated with the branch, and the smaller of the two branches. After selecting and saving the ACS unit to output along with the survivor, path selection information at this time,
각 상태의 서바이버 및 경로 선택 정보를 입력받아 복호장 길이 동안의 경로 히스토리를 유지하며, 또한 상기 각 상태의 최소 경로 메트릭 값들 중 가장 작은 값을 갖는 상태를 선택하고 그 상태에 해당하는 복호장 만큼의 시간 이전의 서바이버를 복호 판정값으로 출력하는 경로 히스토리부를 포함하여 구성되는 것을 특징으로 한다.It receives the survivor and path selection information of each state and maintains the path history for the decoding length, and selects the state having the smallest value among the minimum path metric values of each state, And a path history section for outputting the survivor before the time as a decoding decision value.
상기 양,음의 복호기의 ACS부는 인핸스드 심볼의 극성 반전을 일으키는 심볼 구간 동안 상기 극성 반전 추정부에서 추정된 극성 신호에 의해 선택된 복호부의 각 상태의 경로 메트릭 값으로 선택되지 않은 복호부의 상응하는 경로 메트릭 값을 갱신하는 것을 특징으로 한다.The corresponding path of the decoder that is not selected as the path metric value of each state of the decoder selected by the polarity signal estimated by the polarity inversion estimator during the symbol period causing the polarity inversion of the enhanced symbol. And updating a metric value.
상기 양,음의 복호기의 경로 히스토리부는 인핸스드 심볼의 극성 반전을 일으키는 심볼 구간 동안 상기 극성 반전 추정부에서 추정된 극성 신호에 의해 선택된 복호부의 경로 히스토리로 선택되지 않은 복호부의 경로 히스토리를 갱신하는 것을 특징으로 한다.The path history unit of the positive and negative decoders may update the path history of the decoder that is not selected as the path history of the decoder selected by the polarity signal estimated by the polarity inversion estimation unit during the symbol period causing the polarity inversion of the enhanced symbol. It features.
상기 결정 선택부는 입력 심볼이 인핸스드 심볼이면 상위 비트로는 극성 신호에 해당하는 복호부의 경로 히스토리부에서 출력되는 복호 판정값 중 송신측의 인핸스드 심볼 처리 전의 상위 비트에 해당하는 값을 그대로 출력하고, 하위 비트로는 더미 비트를 출력하는 것을 특징으로 한다.If the input selector is an enhanced symbol, the decision selector outputs a value corresponding to an upper bit before the enhanced symbol processing on the transmitting side of the decoding determination value output from the path history unit of the decoder corresponding to the polarity signal as an upper bit. The lower bit is characterized by outputting a dummy bit.
상기 결정 선택부는 입력 심볼이 메인 심볼이면 상위 비트로는 극성 신호에 해당하는 복호부의 경로 히스토리부에서 출력되는 복호 판정값 중 송신측의 트렐리스 부호화된 후의 최상위 비트에 해당하는 값에 포스트 디코딩을 수행하여 출력하고, 하위 비트로는 상기 복호 판정값 중 송신측의 인핸스드 심볼 처리 전의 하위 비트에 해당하는 값을 그대로 출력하는 것을 특징으로 한다.The decision selector performs post-decoding on a value corresponding to the most significant bit after trellis coding on the transmitting side of the decoding decision value output from the path history section of the decoder corresponding to the polarity signal if the input symbol is the main symbol. And outputting the lower bit, as the lower bit, outputs the value corresponding to the lower bit before the enhanced symbol processing on the transmitting side as it is.
상기 극성 반전 추정부는 상기 양의 복호부에서 계산된 각 상태의 경로 메트릭 값들 중 가장 작은 값과 음의 복호부에서 계산된 각 상태의 경로 메트릭 값들 중 가장 작은 값을 비교하여 그 중 더 작은 값을 갖는 복호부에 해당하는 극성 신호를 출력하는 것을 특징으로 한다.The polarity inversion estimator compares the smallest value of the path metric values of each state calculated by the positive decoder with the smallest value of the path metric values of each state calculated by the negative decoder. And outputting a polarity signal corresponding to the decoder having the same.
상기 양,음의 복호부 내의 ACS부, 및 극성 반전 추정부는 수신 시스템 내 N개의 비터비 복호기 간에 공유 가능한 것을 특징으로 한다.The ACS unit and the polarity inversion estimator in the positive and negative decoders can be shared among N Viterbi decoders in the receiving system.
상기 양,음의 복호기의 ACS부는 각 상태의 경로 메트릭 값들 중 가장 작은 값을 갖는 상태에서 선택한 생존 경로의 기준 출력 레벨을 채널 등화를 위해 피드백하는 피드백 처리부를 더 포함하며, 이때 극성 신호에 따라 양의 복호부 또는, 음의 복호부의 ACS부에서 출력되는 기준 출력 레벨을 선택하여 피드백하는 것을 특징으로 한다.The ACS unit of the positive and negative decoders further includes a feedback processing unit for feeding back the reference output level of the survival path selected in the state having the smallest value among the path metric values of each state for channel equalization, wherein the positive signal is positive according to the polarity signal. The feedback unit selects and feeds back a reference output level output from the ACS unit of the decoding unit or the negative decoding unit.
상기 양,음의 복호기의 경로 히스토리부는 각 복호장마다 복호 판정값을 채널 등화를 위해 피드백하는 피드백 처리부를 더 포함하며, 이때 극성 신호에 따라 양의 복호부 또는 음의 복호부의 경로 히스토리부에서 출력되는 복호 판정값을 선택하여 피드백하는 것을 특징으로 한다.The path history unit of the positive and negative decoder further includes a feedback processing unit for feeding back a decoding determination value for channel equalization for each decoder, wherein the path history unit outputs the positive decoder or the negative decoder according to the polarity signal. And selecting and feeding back a decoding decision value.
본 발명에 다른 실시예에 따른 비터비 복호기는 입력되는 심볼과 기 설정된 n개의 기준 출력 레벨과의 각 브랜치 메트릭 값을 계산하는 브랜치 메트릭 계산부; 입력되는 심볼의 극성이 반전되지 않았다고 가정하고 그에 해당하는 브랜치 메트릭 값을 상기 브랜치 메트릭 계산부로부터 입력받고, 각 상태별로 두 개의 브랜치에 대하여 해당 브랜치 메트릭과 그 브랜치와 연결된 이전 상태의 경로 메트릭을 더하고 그 중 작은 값을 선택하여 저장한 후 이때의 서바이버, 경로 선택 정보와 함께 출력하는 양의 복호기의 ACS부; 상기 양의 복호기의 ACS로부터 각 상태의 서바이버, 및 경로 선택 정보를 입력받아 복호장 길이 동안의 경로 히스토리를 유지하며, 또한 최소 경로 메트릭을 가지는 상태를 역추적하여 복호장 만큼의 시간 이전의 서바이버를 복호 판정값으로 출력하는 양의 복호기의 경로 히스토리부; 입력되는 심볼의 극성이 반전되었다고 가정하고 그에 해당하는 브랜치 메트릭 값을 상기 브랜치 메트릭 계산부로부터 입력받고, 각 상태별로 두 개의 브랜치에 대하여 해당 브랜치 메트릭과 그 브랜치와 연결된 이전 상태의 경로 메트릭을 더하고 그 중 작은 값을 선택하여 저장한 후 이때의 서바이버, 경로 선택 정보와 함께 출력하는 음의 복호기의 ACS부; 상기 음의 복호기의 ACS로부터 각 상태의 서바이버, 및 경로 선택 정보를 입력받아 복호장 길이 동안의 경로 히스토리를 유지하며, 또한 최소 경로 메트릭을 가지는 상태를 역추적하여 복호장 만큼의 시간 이전의 서바이버를 복호 판정값으로 출력하는 음의 복호기의 경로 히스토리부; 입력되는 심볼의 극성 반전을 추정하고 그 결과를 출력하는 극성 반전 추정부; 상기 극성 반전 추정부의 결과에 따라 양의 복호기의 경로 히스토리부 또는 음의 복호기의 경로 히스토리부에서 출력되는 복호 판정값을 선택하여 출력하는 결정 선택부; 및 입력된 심볼이 인핸스드 심볼인지 메인 심볼인지에 따라 상기 결정 선택부에서 출력되는 복호 판정값으로부터 상위 비트와 하위 비트를 연산하여 출력하는 출력부를 포함하여 인핸스드/메인 통합 비터비가 구성되는 것을 특징으로 한다. Viterbi decoder according to another embodiment of the present invention includes a branch metric calculation unit for calculating each branch metric value between the input symbol and n preset reference output levels; Assuming that the polarity of the input symbol is not inverted, a corresponding branch metric value is input from the branch metric calculation unit, and for each branch, two branch branches are added together with the corresponding branch metric and the path metric of the previous state connected with the branch. An ACS unit of a positive decoder which selects and stores a small value among them and outputs it with a survivor and path selection information at this time; It receives the survivor of each state and the path selection information from the ACS of the positive decoder and maintains the path history for the length of the decoder, and also traces the state having the minimum path metric to trace the survivor before the decoder. A path history section of the positive decoder outputting the decoding decision value; Assuming that the polarity of the input symbol is inverted, a corresponding branch metric value is input from the branch metric calculation unit, and for each branch, two branch branches are added, and the corresponding branch metric and the path metric of the previous state connected with the branch are added. An ACS unit of a negative decoder for outputting together with the survivor and the path selection information at this time after selecting and storing a small value; It receives the survivor of each state and the path selection information from the ACS of the negative decoder and maintains the path history for the length of the decoder, and also traces the state having the minimum path metric to trace the survivor before the decoder. A path history section of the negative decoder outputting the decoding decision value; A polarity inversion estimator for estimating polarity inversion of an input symbol and outputting a result; A decision selector for selecting and outputting a decoding decision value output from a path history part of a positive decoder or a path history part of a negative decoder according to a result of the polarity inversion estimator; And an output unit configured to output an upper bit and a lower bit from a decoding determination value output from the decision selector according to whether an input symbol is an enhanced symbol or a main symbol, and thus an enhanced / main integrated Viterbi is configured. It is done.
본 발명의 또 다른 실시예에 따른 비터비 복호기는 입력되는 심볼과 기 설정된 n개의 기준 출력 레벨과의 각 브랜치 메트릭 값을 계산하는 브랜치 메트릭 계산부; 입력되는 심볼의 극성이 반전되지 않았다고 가정하고 그에 해당하는 브랜치 메트릭 값을 상기 브랜치 메트릭 계산부로부터 입력받고, 각 상태별로 두 개의 브랜치에 대하여 해당 브랜치 메트릭과 그 브랜치와 연결된 이전 상태의 경로 메트릭을 더하고 그 중 작은 값을 선택하여 저장한 후 이때의 서바이버, 경로 선택 정보와 함께 출력하는 양의 복호기의 ACS부; 상기 양의 복호기의 ACS로부터 각 상태의 서바이버, 및 경로 선택 정보를 입력받아 복호장 길이 동안의 경로 히스토리를 유지하며, 또한 최소 경로 메트릭을 가지는 상태를 역추적하여 복호장 만큼의 시간 이전의 서바이버를 복호 판정값으로 출력하는 양의 복호기의 경로 히스토리부; 입력되는 심볼의 극성이 반전되었다고 가정하고 그에 해당하는 브랜치 메트릭 값을 상기 브랜치 메트릭 계산부로부터 입력받고, 각 상태별로 두 개의 브랜치에 대하여 해당 브랜치 메트릭과 그 브랜치와 연결된 이전 상태의 경로 메트릭을 더하고 그 중 작은 값을 선택하여 저장한 후 이때의 서바이버, 경로 선택 정보와 함께 출력하는 음의 복호기의 ACS부; 상기 음의 복호기의 ACS로부터 각 상태의 서바이버, 및 경로 선택 정보를 입력받아 복호장 길이 동안의 경로 히스토리를 유지하며, 또한 최소 경로 메트릭을 가지는 상태를 역추적하여 복호장 만큼의 시간 이전의 서바이버를 복호 판정값으로 출력하는 음의 복호기의 경로 히스토리부; 입력되는 심볼의 극성 반전을 추정하고 그 결과를 출력하는 극성 반전 추정부; 상기 극성 반전 추정부의 결과에 따라 양의 복호기의 경로 히스토리부 또는 음의 복호기의 경로 히스토리부에서 출력되는 복호 판정값을 선택하여 출력하는 결정 선택부; 및 상기 결정 선택부에서 출력되는 복호 판정값 중 송신측의 인핸스드 심볼 처리 전의 상위 비트에 해당하는 값을 버퍼를 이용하여 입력 심볼열과 같은 순서로 재정렬하여 출력하는 재정렬부를 포함하여 인핸스드 전용 비터비 복호기가 구성되는 것을 특징으로 한다.Viterbi decoder according to another embodiment of the present invention includes a branch metric calculation unit for calculating each branch metric value between the input symbol and n preset reference output levels; Assuming that the polarity of the input symbol is not inverted, a corresponding branch metric value is input from the branch metric calculation unit, and for each branch, two branch branches are added together with the corresponding branch metric and the path metric of the previous state connected with the branch. An ACS unit of a positive decoder which selects and stores a small value among them and outputs it with a survivor and path selection information at this time; It receives the survivor of each state and the path selection information from the ACS of the positive decoder and maintains the path history for the length of the decoder, and also traces the state having the minimum path metric to trace the survivor before the decoder. A path history section of the positive decoder outputting the decoding decision value; Assuming that the polarity of the input symbol is inverted, a corresponding branch metric value is input from the branch metric calculation unit, and for each branch, two branch branches are added, and the corresponding branch metric and the path metric of the previous state connected with the branch are added. An ACS unit of a negative decoder for outputting together with the survivor and the path selection information at this time after selecting and storing a small value; It receives the survivor of each state and the path selection information from the ACS of the negative decoder and maintains the path history for the length of the decoder, and also traces the state having the minimum path metric to trace the survivor before the decoder. A path history section of the negative decoder outputting the decoding decision value; A polarity inversion estimator for estimating polarity inversion of an input symbol and outputting a result; A decision selector for selecting and outputting a decoding decision value output from a path history part of a positive decoder or a path history part of a negative decoder according to a result of the polarity inversion estimator; And a reordering unit for reordering and outputting values corresponding to the upper bits before the enhanced symbol processing on the transmitting side among the decoding decision values output from the decision selecting unit in the same order as the input symbol string using the buffer. It is characterized in that the decoder is configured.
본 발명의 다른 목적, 특징 및 잇점들은 첨부한 도면을 참조한 실시예들의 상세한 설명을 통해 명백해질 것이다.Other objects, features and advantages of the present invention will become apparent from the following detailed description of embodiments taken in conjunction with the accompanying drawings.
이하 상기의 목적을 구체적으로 실현할 수 있는 본 발명의 바람직한 실시예를 첨부한 도면을 참조하여 설명한다. 이때 도면에 도시되고 또 이것에 의해서 설명되는 본 발명의 구성과 작용은 적어도 하나의 실시예로서 설명되는 것이며, 이것에 의해서 상기한 본 발명의 기술적 사상과 그 핵심 구성 및 작용이 제한되지는 않는다.Hereinafter, with reference to the accompanying drawings, preferred embodiments of the present invention that can specifically realize the above object will be described. At this time, the configuration and operation of the present invention shown in the drawings and described by it will be described as at least one embodiment, by which the technical spirit of the present invention and its core configuration and operation is not limited.
본 발명은 수신 시스템의 인핸스드 채널 디코더 및 역다중화부 중에서 E8-VSB 심볼의 속성에 따라서 복호를 수행하는 비터비 복호기의 구현에 관한 것이다. The present invention relates to an implementation of a Viterbi decoder which performs decoding according to the property of an E8-VSB symbol among an enhanced channel decoder and a demultiplexer of a reception system.
이때 본 발명의 수신 시스템은 송신 시스템의 콘볼루션 부호화부(113)와 트렐리스 부호기(104)에 대한 복호를 두 단계로 하지 않고 비터비 복호기에서 한번에 수행한다. In this case, the reception system of the present invention performs the decoding on the
도 11은 본 발명의 제1 실시예에 따른 비터비 복호기의 구성 블록도로서, 인핸스드/메인 통합 비터비 복호기의 실시예이다. 11 is a block diagram illustrating a Viterbi decoder according to the first embodiment of the present invention, which is an embodiment of an enhanced / main integrated Viterbi decoder.
도 11은 브랜치 메트릭 계산부(611), 양의 복호기의 가산-비교-선택(ACS)부(612), 음의 복호기의 ACS부(613), 극성 반전 추정부(614), 양의 복호기의 경로 히스토리부(615), 음의 복호기의 경로 히스토리부(616), 결정 선택부(617), 포스트 디코더(618), 및 출력 먹스(619)로 구성된다. 11 shows a branch
도 14는 본 발명의 제2 실시예에 따른 비터비 복호기의 구성 블록도로서, 인핸스드 전용 비터비 복호기의 실시예이다. 14 is a block diagram of a Viterbi decoder according to a second embodiment of the present invention, which is an embodiment of an enhanced dedicated Viterbi decoder.
도 14는 브랜치 메트릭 계산부(811), 양의 복호기의 가산-비교-선택(ACS)부(812), 음의 복호기의 ACS부(813), 극성 반전 추정부(814), 양의 복호기의 경로 히스토리부(815), 음의 복호기의 경로 히스토리부(816), 결정 선택부(817), 및 인핸스드 심볼 재정렬부(818)로 구성된다. 14 shows a branch
상기된 본 발명의 제1, 제2 실시예에 따른 비터비 복호기의 상세한 설명 및 차이점에 대해 설명하기 전에, 먼저 본 발명의 이해를 돕기 위해 도 1의 송신 시스템의 콘볼루션 부호화부(113)와 트렐리스 부호기(104), 그리고 이 둘의 관계에 대해 설명하기로 한다.Before describing the above-described details and differences of the Viterbi decoders according to the first and second embodiments of the present invention, the
1. 인핸스드 심볼 처리기와 트렐리스 부호기의 연접1.Connecting Enhanced Symbol Processor with Trellis Encoder
도 4a는 상기 콘볼루션 부호화부(113)의 상세 블록도로서, 12way 심볼 인터리버(401), 인핸스드 심볼 처리기(Enhanced symbol processor)(402), 및 12way 심볼 디인터리버(403)로 구성된다. FIG. 4A is a detailed block diagram of the
도 4a에서, 12way 심볼 인터리버(401)는 바이트 단위로 입력되는 데이터를 심볼 단위(X2와 X1 두 비트로 구성됨)로 변환하여 인터리빙을 수행한 후 인핸스드 심볼 처리부(402)로 출력한다. In FIG. 4A, the 12-
상기 인핸스드 심볼 처리부(402)는 입력된 데이터가 메인 심볼이면 그대로 12way 심볼 디인터리버(403)로 바이패스한다. 한편 인핸스드 심볼이면 상위 비트로 입력되는 데이터(X2)에 대해서만 심볼 처리를 수행하여 12way 심볼 디인터리버(403)로 출력하고, 하위 비트로 입력되는 데이터(X1)는 버린다. 상기 12way 심볼 디인터리버(403)는 상기 인핸스드 심볼 처리기(402)에서 출력되는 데이터를 다시 디인터리빙하여 바이트 단위로 변환한 후 제1 복호부(114)로 출력한다. The
도 4b는 상기 인핸스드 심볼 처리부(402)의 상세 블록도로서, 가산기(411)는 상위 비트로 입력되는 데이터(X2)와 레지스터(414)에서 피드백되는 데이터를 더하여 먹스(412)로 출력한다. 4B is a detailed block diagram of the enhanced
상기 먹스(412)는 입력되는 심볼이 메인 심볼이면 가산기(411)의 출력을 선택하고, 인핸스드 심볼이면 상위 비트로 입력되는 데이터(X2)를 선택하여 레지스터(413,414)와 가산기(415)로 출력한다. The
상기 레지스터(413)는 상기 먹스(412)의 출력을 한 심볼 지연시켜 가산기 (415)로 출력하고, 상기 가산기(415)는 상기 먹스(412)의 출력과 레지스터(413)의 출력을 더하여 상위 비트(X2')로 출력한다. 여기서 상기 레지스터(413)는 일종의 지연기이며, 다른 레지스터들에게도 동일하게 적용된다. The
상기 레지스터(414)는 상기 먹스(412)의 출력을 한 심볼 지연시켜 가산기(411)로 피드백한다. The
그리고 먹스(416)는 입력되는 심볼이 메인 심볼이면 레지스터(417)의 출력을 선택하고, 인핸스드 심볼이면 레지스터(420)의 출력을 선택하여 레지스터(417)로 출력한다. The
상기 레지스터(417)는 상기 먹스(416)의 출력을 한 심볼 지연시켜 가산기(418)로 출력함과 동시에 상기 먹스(416)로 피드백한다. The
상기 가산기(418)는 상위 비트로 입력되는 데이터(X2)와 상기 레지스터(417)의 출력을 더하여 먹스(419)로 출력한다. The
상기 먹스(419)는 입력되는 심볼이 메인 심볼이면 레지스터(420)의 출력을 선택하고, 인핸스드 심볼이면 가산기(418)의 출력을 선택하여 레지스터(420)로 출력한다. The
상기 레지스터(420)는 상기 먹스(419)의 출력을 한 심볼 지연시켜 먹스(421)로 출력함과 동시에 먹스(417,419)로 피드백한다. The
상기 먹스(421)는 입력되는 심볼이 메인 심볼이면 하위 비트로 입력되는 데이터(X1)를 선택하여 하위 비트(X1')로 출력하고, 인핸스드 심볼이면 레지스터(420)의 출력을 선택하여 하위 비트(X1')로 출력한다.The
상기와 같이 구성된 인핸스드 심볼 처리기(402)는 E8-VSB 콘볼루션 부호화부(113)에 12개가 존재한다. 그리고 상기 인핸스드 심볼 처리기(402)는 입력되는 심볼이 메인 심볼인지 아니면, 인핸스드 심볼인지에 따라 심볼 처리가 달라진다. 즉 도 4b에서 먹스(412,416,419,421)로 입력되는 선택 신호 즉, M/E 플래그는 현재 입력되는 심볼(X2와 X1 두 비트로 구성됨)이 메인 심볼인지 아니면, 1/2 부호율 또는 1/4 부호율로 부호화되는 인핸스드 심볼인지를 알려준다.There are 12
도 4c는 입력되는 심볼이 메인 심볼일 때, 인핸스드 심볼 처리기에서 데이터 경로를 표시한 도면이다. 즉 입력되는 심볼이 메인 심볼이면 하위 비트로 입력되는 데이터(X1)는 먹스(421)를 통해 그대로 X1'으로 바이패스되고, 상위 비트로 입력되는 데이터(X2)는 가산기(411), 먹스(412), 레지스터(413,414), 및 가산기(415)를 통해 그대로 X2'로 바이패스된다. 즉 가산기(411)와 레지스터(414)는 프리 코더(pre coder) 구조이고, 가산기(415)와 레지스터(413)는 포스트 디코더(post decoder) 구조로서, 프리 코더와 포스트 디코더는 서로 역의 과정이기 때문에 두 블록의 결과는 상쇄된다. 따라서 상위 비트로 입력되는 데이터(X2)는 그대로 X2'로 바이패스되는 효과를 갖는다. 4C is a diagram illustrating a data path in an enhanced symbol processor when an input symbol is a main symbol. That is, if the input symbol is the main symbol, the data X1 input as the lower bit is bypassed to X1 'as it is through the
도 4d는 입력되는 심볼이 인핸스드 심볼일 때, 인핸스드 심볼 처리기에서 데이터 경로를 표시한 도면이다. 4D is a diagram illustrating a data path in an enhanced symbol processor when an input symbol is an enhanced symbol.
즉, 입력되는 심볼이 인핸스드 심볼이면 상위 비트로 입력되는 데이터(X2)는 레지스터(413)와 가산기(415)로 구성된 포스트 디코더에서 포스트 디코딩되어 X2'로 출력된다. 또한 상기 상위 비트로 입력되는 데이터(X2)는 레지스터(417), 가산 기(418), 및 레지스터(420)로 구성된 콘볼루션 부호기에서 콘볼루션 부호화되고 여기서 생성되는 패리티 비트가 X1'로 출력된다. 이때 하위 비트로 입력되는 데이터(X1)는 버려진다. That is, if the input symbol is an enhanced symbol, the data X2 input as the higher bit is post-decoded by the post decoder composed of the
도 5는 상기 인핸스드 심볼 처리기와 트렐리스 부호기가 연접(concatenation)된 모습을 설명한 것이다. 실제로 송신 시스템에서는 인핸스드 심볼 처리기와 트렐리스 부호기 사이에 다수의 블록이 존재하지만, 수신 시스템의 인핸스드 채널 디코더 및 역다중화부에서는 두 블록이 연접된 것으로 간주하여 복호를 수행하게 된다.FIG. 5 illustrates a state in which the enhanced symbol processor and the trellis coder are concatenated. In reality, although a plurality of blocks exist between the enhanced symbol processor and the trellis encoder in the transmission system, the enhanced channel decoder and the demultiplexer of the reception system assume that the two blocks are concatenated and perform decoding.
도 5에서와 같이 트렐리스 부호기(104)는 상위 비트에 프리 코더(510)가 연결되고, 하위 비트에 콘볼루션 부호기(520)가 연결된 구조로서, 두 개의 입력 비트들(X2)(X1)에 대해 부호화를 수행하여 세 개의 출력 비트들(C2)(C1)(C0)을 출력한다.As shown in FIG. 5, the
즉, 상위 비트로 입력되는 데이터(X2)는 프리 코더(510)에서 프리 코딩되어 출력 비트(C2)로 된다. 그리고 하위 비트로 입력되는 데이터(X1)는 그대로 출력 비트(C1)로 바이패스됨과 동시에, 콘볼루션 부호기(520)에서 부호화되고, 여기서 생성되는 패리티 비트가 출력 비트(C0)로 된다. 즉 출력 비트(C0)는 레지스터(M0)에 저장된 값에 의해 결정된다.That is, the data X2 input as the higher bit is precoded by the
도 5a는 메인 심볼이 입력되는 경우, 인핸스드 심볼 처리기와 트렐리스 부호기가 연접된 구조를 설명한 것이다. 도 7c에서 알 수 있듯이 입력되는 심볼이 메인 심볼이면 입력되는 두 비트 X2와 X1은 그대로 X2'와 X1'로 바이패스되어 트렐리스 부호기(104)에 입력된다. 즉, 인핸스드 심볼 처리기(402)로 입력된 상위 비트(X2)는 그대로 트렐리스 부호기(104)의 프리 코더(510)로 입력된다. 또한 인핸스드 심볼 처리기(402)로 입력된 하위 비트(X1)는 그대로 트렐리스 부호기(104)의 콘볼루션 부호기(520)로 입력된다.5A illustrates a structure in which an enhanced symbol processor and a trellis coder are concatenated when a main symbol is input. As shown in FIG. 7C, if the input symbol is the main symbol, the two bits X2 and X1 inputted are bypassed to X2 'and X1' as they are and are input to the
도 5b는 인핸스드 심볼이 입력되는 경우, 인핸스드 심볼 처리기와 트렐리스 부호기가 연접된 구조를 설명한 것이다. 도 7d에서 알 수 있듯이, 하위 비트로 입력되는 데이터(X1)는 버려지고, 상위 비트로 입력되는 데이터(X2)는 포스트 디코더를 통과하여 트렐리스 부호기(104)에 X2'로 출력된다. 또한 상위 비트로 입력되는 데이터(X2)는 콘볼루션 부호기에서 콘볼루션 부호화되고, 여기서 생성되는 패리티 비트는 트렐리스 부호기(104)에 X1'로 출력된다. 5B illustrates a structure in which an enhanced symbol processor and a trellis coder are connected when an enhanced symbol is input. As shown in FIG. 7D, the data X1 inputted in the lower bits is discarded, and the data X2 inputted in the upper bits passes through the post decoder and is output as X2 'to the
즉, 상기 인핸스드 심볼 처리기(402)에서 포스트 디코딩되어 출력되는 상위 비트(X2')는 트렐리스 부호기(104)의 프리 코더(510)로 입력되고, 상기 인핸스드 심볼 처리기(402)에서 콘볼루션 부호화되어 출력되는 하위 비트(X1')는 트렐리스 부호기(104)의 콘볼루션 부호기(520)로 입력된다. That is, the upper bit X2 ′ that is post-decoded and output from the enhanced
이때 상기 인핸스드 심볼의 X2에 적용되는 인핸스드 심볼 처리기(402)의 포스트 디코더와 트렐리스 부호기(104)의 프리 코더는 서로 역의 과정이기 때문에 두 블록의 결과는 상쇄되어 도 5c에서와 같이 X2가 C2로 그대로 바이패스되는 효과가 있다.In this case, since the post decoder of the
따라서 본 발명의 수신 시스템의 비터비 복호기는 메인 심볼과 인핸스드 심볼의 경우에 각각 도 5a와 도 5c를 일반적으로 사용하는 비터비 복호 알고리듬을 이용하여 복호하면 된다.Accordingly, the Viterbi decoder of the reception system of the present invention may decode the Viterbi decoding algorithm using the general symbols of FIGS. 5A and 5C in the case of the main symbol and the enhanced symbol, respectively.
2. 인핸스드 심볼과 메인 심볼의 상태 전이 및 복호2. State transition and decoding of enhanced and main symbols
도 6은 인핸스드 심볼과 메인 심볼의 상태 전이도를 나타낸 것이다. 6 shows a state transition diagram of an enhanced symbol and a main symbol.
즉 인핸스드 심볼의 경우에는 도 5c에서 부호기의 레지스터 M3,M2,M1,M0를 상태로 정의하며, 따라서 모두 16개의 상태가 존재하게 된다. 그리고 메인 심볼의 경우에 M3,M2는 이전 인핸스드 심볼에서 바뀐 값을 그대로 유지하게되므로 도 6에서와 같이 상태 전이 패턴이 4번 반복됨을 알 수 있다. 즉, 메인 심볼의 경우 도 5a에서와 같이 인핸스드 심볼 처리기(402)에서 입력 데이터 X2,X1는 그대로 트렐리스 부호기(104)로 바이패스되기 때문이다. That is, in the case of the enhanced symbol, registers M3, M2, M1, and M0 of the encoder are defined as states in FIG. 5C, and thus, all 16 states exist. In the case of the main symbol, M3 and M2 maintain the value changed from the previous enhanced symbol as it is, and as shown in FIG. 6, the state transition pattern is repeated four times. That is, in the case of the main symbol, the input data X2 and X1 are bypassed to the
상기 도 6에서와 같이 인핸스드 심볼의 경우에는 입력 비트 X2에 의해서 상태가 전이되는 반면에, 메인 심볼의 경우에는 입력 비트 X1에 의해서 상태가 전이됨을 알 수 있다. 이는 인핸스드 심볼의 경우, 도 5c와 같이 입력 비트 X1는 버려지고, 입력 비트 X2가 4개의 레지스터 M3,M2,M1,M0를 통과하기 때문이다. 또한 메인 심볼의 경우, 도 5a와 같이 입력 비트 X1이 레지스터 M1,M0을 통과하기 때문이다. As shown in FIG. 6, it can be seen that the state is shifted by the input bit X2 in the case of the enhanced symbol, whereas the state is shifted by the input bit X1 in the case of the main symbol. This is because in the case of enhanced symbols, input bit X1 is discarded as shown in FIG. 5C, and input bit X2 passes through four registers M3, M2, M1, and M0. In the case of the main symbol, the input bit X1 passes through the registers M1 and M0 as shown in FIG. 5A.
이때, 상기 인핸스드 심볼은 또한 1/2 인핸스드 심볼과 1/4 인핸스드 심볼로 구분된다. In this case, the enhanced symbol is further divided into a 1/2 enhanced symbol and a 1/4 enhanced symbol.
그런데 도 4b의 인핸스드 심볼 처리기는 입력 심볼이 인핸스드 심볼일 경우 1/2 인핸스드 심볼인지 1/4 인핸스드 심볼인지를 구분하지 아니하고 동일하게 처리한다.However, when the input symbol is an enhanced symbol, the enhanced symbol processor of FIG. 4B processes the same regardless of whether it is a 1/2 enhanced symbol or a 1/4 enhanced symbol.
상기 1/4 인핸스드 심볼과 1/2 인핸스드 심볼의 차이점은 송신 시스템에 있는 널 비트 확장기에서 1/4 인핸스드 심볼의 경우 입력 비트가 2번 반복된다는 점이다. 그러나 반복된 1/4 인핸스드 심볼은 데이터 랜더마이저(randomizer)에 의해서 랜덤하게 변하여 서로 같을 수도 다를 수도 있다. 그리고 수신 시스템에서는 랜더마이저의 동작을 알고 있기 때문에 서로 같은지 다른지를 알 수 있다.The difference between the 1/4 enhanced symbol and the 1/2 enhanced symbol is that the input bits are repeated twice for a 1/4 enhanced symbol in a null bit expander in the transmission system. However, the repeated 1/4 enhanced symbols may be randomly changed by the data randomizer and may be the same or different from each other. And since the receiving system knows the behavior of the randomizer, it can know whether they are the same or different.
도 7a는 반복된 1/4 인핸스드 심볼이 서로 같은 경우의 상태 전이를, 도 7b는 반복된 1/4 인핸스드 심볼이 서로 다른 경우의 상태 전이를 설명한 것이다. 1/4 인핸스드 심볼의 경우에는 두 심볼 단위로 비터비 복호를 수행하여야 비터비 복호기에서 추가의 부호화 이득을 얻을 수가 있다.FIG. 7A illustrates a state transition when the repeated 1/4 enhanced symbols are the same, and FIG. 7B illustrates the state transition when the repeated 1/4 enhanced symbols are different. In the case of a 1/4 enhanced symbol, Viterbi decoding should be performed in units of two symbols in order to obtain additional coding gain in the Viterbi decoder.
도 7a에서 반복된 1/4 인핸스드 심볼이 랜더마이저를 통과하여도 서로 같은 경우에는 두 심볼 동안 서로 같은 경로만을 고려하여 비터비 복호를 수행한다. 예를 들어, 상태 0000인 경우에 두 심볼 동안 모두 X2가 1인 경로와 모두 0인 경로만을 고려하고, 서로 다른 경로는 복호 과정에서 배제한다. 이로 인해 복호의 신뢰도를 높일 수가 있다. If the repeated 1/4 enhanced symbols in FIG. 7A pass through the randomizer and are the same, Viterbi decoding is performed considering only the same paths for two symbols. For example, in the case of the
이와는 반대로 도 7b에서와 같이 널 비트 확장기에서 반복된 1/2 인핸스드 심볼이 랜더마이저를 통과하여 서로 다른 경우에는 두 심볼 동안 서로 다른 경로만을 고려하여 비터비 복호를 수행한다. 예를 들어, 상태 0000인 경우에 두 심볼동안 X2가 0 -> 1 또는 1 -> 0인 경로만을 고려하고 서로 같은 경로는 복호 과정에서 배제한다.In contrast, as shown in FIG. 7B, when the 1/2 enhanced symbol repeated in the null bit expander passes through the randomizer and is different from each other, Viterbi decoding is performed considering only different paths during the two symbols. For example, in the case of
3. 인핸스드 심볼의 반전3. Invert Enhanced Symbol
인핸스드 모드를 추가한 송신 시스템에서는 기존 ATSC 8VSB 수신기와의 호환성 유지를 위해서 도 1에서와 같이 E8-VSB 콘볼루션 부호화부(113)의 출력을 바로 트렐리스 부호기(104)에 입력하지 아니하고 일련의 과정을 거쳐 트렐리스 부호기(104)에 입력한다. 여기서 일련의 과정에는 ATSC 데이터 바이트 디인터리버(114-1), RS 패리티 바이트 제거기(114-2), ATSC RS 부호기(102), 및 ATSC 데이터 바이트 인터리버(103)가 포함된다. In the transmission system to which the enhanced mode is added, the output of the E8-
그리고 인핸스드 심볼 처리기(402)에서는 메인 심볼은 바이패스되고, 인핸스드 심볼에 대해서만 추가의 부호화가 이루어지는데, 그 전에 ATSC RS 부호기(112-2)에서 계산되었던 패리티 바이트가 변경된 데이터 패킷에 맞지 않으므로 기존 ATSC 8VSB 수신기에서는 RS 복호를 수행하면 인핸스드 데이터 패킷은 오류가 발생한 것으로 처리된다. 따라서 기존 ATSC 8VSB 수신기와의 호환성 유지를 위해서 E8-VSB 콘볼루션 부호화부(113)의 출력을 가지고 다시 ATSC RS 부호기(102)에서 ATSC RS 부호화를 수행하여 패리티 바이트를 다시 계산하는 것이고 이를 위하여 상기 설명한 일련의 과정을 거치는 것이다.In the
그러나 다시 계산된 패리티 바이트가 심볼로 변환된 후 트렐리스 부호기(104)에 입력되어 프리코더에 의해서 부호화되었을때 인핸스드 심볼이 그대로 바이패스 되는 것이 아니라 극성이 반전될 수 있다.However, when the recalculated parity byte is converted into a symbol and input to the
도 8은 인핸스드 심볼의 극성 반전 현상을 예를 들어 설명한 것이다. 도 8에서 호환성 처리부(compatibility processing)는 상기 설명한 바 있는 호환성 유지를 위한 일련의 과정을 의미한다. 도 8에서 P는 인핸스드 데이터 패킷에 더해진 ATSC RS 패리티 바이트가 심볼로 변환되었을 때 2 비트 중에서 MSB를 나타내고, E는 인핸스드 심볼의 MSB, M은 메인 심볼의 MSB를 나타낸다. 그리고 P'은 호환성 처리부를 거쳐 다시 계산되어진 ATSC RS 패리티 심볼의 MSB이다. 즉 P가 호환성 처리부에 의해서 P'로 다시 계산되어진 것이다. 8 illustrates an example of polarity inversion of an enhanced symbol. In FIG. 8, compatibility processing means a series of processes for maintaining compatibility as described above. In FIG. 8, P denotes an MSB in two bits when an ATSC RS parity byte added to an enhanced data packet is converted to a symbol, E denotes an MSB of the enhanced symbol, and M denotes an MSB of the main symbol. P 'is the MSB of the ATSC RS parity symbol, which is recalculated through the compatibility processing unit. That is, P is recalculated to P 'by the compatibility processor.
도 8에서는 설명의 편의를 위해 도 4b의 인핸스드 심볼 처리부(402)의 가산기(411), 먹스(412), 레지스터(413,414), 및 가산기(415)를 블록화하여 프리코더 바이패스부라 한다. In FIG. 8, for convenience of explanation, the
이때 상기 인핸스드 심볼 처리기(402)의 프리코더 바이패스부에 P, M, E의 순으로 데이터가 입력된다고 가정한다. 그리고 도 8에서 레지스터 R0, R1 그리고, R2의 초기값은 모두 0이고, P 심볼은 인핸스드 심볼 처리기(402)에서 메인 심볼로 간주되어 처리된다. 이 경우 인핸스드 심볼 처리기(402)의 프리코더 바이패스부의 출력(X2')은 P, M, P+M+E의 순으로 이루어지고, 이것은 호환성 처리부를 거쳐 트렐리스 부호기(104)의 프리 코더(510)로 입력된다. 그러므로 상기 트렐리스 부호기(104)의 프리 코더(510)의 출력(C2)은 P', P'+M, P'+P+E의 순으로 이루어진다. In this case, it is assumed that data is input in order of P, M, and E to the precoder bypass unit of the
결과적으로 인핸스드 심볼의 경우에 그대로 바이패스 되지 않고 P'+P+E가 출력된다. 이때, P'과 P가 서로 같은 경우에는 P'+P+E=E가 되어 E가 그대로 바이패스 되지만, 서로 다른 경우에는 E의 값이 반전되어 출력된다. 상기 트렐리스 부호기(104)의 출력 3비트 중에서 MSB인 C2가 반전되면 8-레벨 VSB 신호의 매핑이 다음과 같이 이루어지게 된다(-7 <=> +1, -5 <=> +3, -3 <=> +5, -1 <=> +7).As a result, P '+ P + E is output without being bypassed in the case of an enhanced symbol. At this time, when P 'and P are the same, E' is bypassed as P '+ P + E = E, but when they are different, the value of E is inverted and output. If C2, the MSB, is inverted among the
즉, VSB 변조부(107)는 상기 트렐리스 부호기(104)에서 출력되는 세 개의 출력 비트들(C2,C1,C0)에 해당하는 8 레벨 변조 값으로 매핑하여 출력한다. 예를 들어, C2C1C0 값이 000이면 -7로, 011이면 -1로, 100이면 +1로 매핑되어 출력된다. That is, the
그러므로 원래 C2C1C0 값이 000이어야 하는데, C2 값이 반전되어 100가 되면 -7이 +1로 매핑되는 결과를 초래한다. Therefore, the original C2C1C0 value should be 000. If the C2 value is reversed to 100, -7 will be mapped to +1.
따라서 수신 시스템의 비터비 복호기에서는 인핸스드 심볼의 경우에 송신기의 트렐리스 부호기에서 출력되는 비트 C2의 극성 반전 여부를 추정해야만 한다. 본 발명에서는 이를 줄여서 인핸스드 심볼의 극성 반전이라 부른다.Therefore, in the Viterbi decoder of the receiving system, it is necessary to estimate whether the polarity inversion of the bit C2 output from the trellis encoder of the transmitter in the case of enhanced symbols. In the present invention, this is called as polarity inversion of the enhanced symbol.
4. 브랜치 메트릭 계산부(Branch Metric Calculator)4. Branch Metric Calculator
비터비 알고리듬은 트렐리스 부호기의 시간에 따른 상태 전이 경로의 확률을 추정하여 가장 확률이 높은 경로를 선택하는 알고리듬이다.The Viterbi algorithm is an algorithm that selects the path with the highest probability by estimating the probability of the state transition path over time of the trellis encoder.
브랜치 메트릭(branch metric)은 현재 시간에서의 상태 전이도 상에서 각 브랜치의 확률을 계산한 값이고, 브랜치 메트릭이 시간에 따라 누적된 것을 경로 메트릭(path metric)이라 부른다.A branch metric is a value obtained by calculating the probability of each branch on a state transition diagram at a current time, and the accumulation of branch metrics over time is called a path metric.
상기 브랜치 메트릭은 각 브랜치의 출력 레벨과 비터비 복호기의 입력 신호와의 유클리디안(Euclidean) 거리를 계산하여 얻을 수 있다. 이때, 수신 시스템으로 수신된 인핸스드 심볼과 메인 심볼 모두 8레벨 신호이므로 브랜치 메트릭 계산부에서는 8가지 기준 레벨에 대한 입력 신호의 유클리디안 거리를 아래의 수학식 1과 같이 계산하여 8개의 브랜치 메트릭 값 BM(b)을 구한다. The branch metric can be obtained by calculating the Euclidean distance between the output level of each branch and the input signal of the Viterbi decoder. At this time, since the enhanced symbol and the main symbol received by the receiving system are 8-level signals, the branch metric calculation unit calculates the Euclidean distance of the input signal for the 8 reference levels as shown in
상기 수학식 1에서 rn은 시간 n에서 비터비 복호기로 입력된 신호이고, Lb는 기준 8레벨 VSB 신호에 해당한다.In
5. ACS부5. ACS section
경로 메트릭은 시간에 따른 상태의 전이과정, 즉 경로에 해당하는 확률값으로서 브랜치 메트릭의 누적된 값이다. 비터비 복호기의 가산-비교-선택(Accumulate/Compare/Select ; ACS)부에서는 각각의 상태마다 병합(merge)되는 각각의 경로 메트릭을 계산하여 비교한 후 가장 경로 메트릭 값이 작은(즉, 확률이 가장 큰) 경로를 선택한다. 즉 상기 ACS부는 각 상태별로 두 개의 브랜치에 대하여 해당 브랜치 메트릭과 그 브랜치와 연결된 이전 상태의 경로 메트릭을 더하고 그 중 작은 값을 선택하여 저장한다. A path metric is a cumulative value of a branch metric as a probability value corresponding to a path of a state transitioning over time, that is, a path. In the Viterbi decoder, the Accumulate / Compare / Select (ACS) section calculates and compares each path metric that is merged for each state, and then compares them with the smallest path metric value. Select the path). That is, the ACS unit adds a corresponding branch metric and a path metric of a previous state connected to the branch for each branch, and selects and stores a small value among them.
도 9는 경로 메트릭을 계산하는 과정을 예를 들어 설명한 것이다. 상기 도 9에서는 인핸스드 심볼과 메인 심볼의 경우에 각각 상태 0000의 경로 메트릭을 계산하는 과정을 예를 들어 설명하였다.9 illustrates an example of a process of calculating a route metric. In FIG. 9, a process of calculating a path metric of a
인핸스드 심볼의 ACS 연산ACS operations on enhanced symbols
인핸스드 심볼의 경우에는 도 9의 (a)와 같이 시간 t에서 0000 상태로 병합될 수 있는 이전 상태(시간 t-1)는 각각 상태 0000와 상태 1000이다. 이때 시간 t-1의 상태 0000에서 인핸스드 심볼 처리기(402)의 입력 X2로 0이 입력되면 트렐리스 부호기(104)에서 출력되는 기준 8레벨 값은 극성 반전이 일어나지 않았을 경우 -7이 되고, 극성 반전이 일어났다면 +1이 되면서, 시간 t의 상태 0000로 천이되는 경로를 형성한다. In the case of the enhanced symbol, as shown in (a) of FIG. 9, the previous state (time t-1) that can be merged into the
한편 시간 t-1의 상태 1000에서 X2로 1이 입력되고 극성 반전이 일어나지 않았으면 기준 8 레벨 값으로 +1이 출력되고, 극성 반전이 일어났으면 -7이 출력되면서, 시간 t의 상태 0000로 천이되는 경로를 형성한다.On the other hand, when
즉, 극성 반전이 일어나지 않았을 경우 시간 t-1의 상태 0000에서 시간 t의 상태 0000로 천이되는 경로의 브랜치 메트릭 값은 (입력된 신호-(-7))2가 된다. 반대로 극성 반전이 일어났을 경우 시간 t-1의 상태 0000에서 시간 t의 상태 0000로 천이되는 경로의 브랜치 메트릭 값은 (입력된 신호-(+1))2가 된다. 그러면 시간 t의 상태 0000에서는 이렇게 계산된 브랜치 메트릭 값과 누적된 이전 경로 메트릭 값을 더한다. 동시에 상기 시간 t의 상태 0000로 병합되는 다른 경로 즉, 시간 t-1의 상태 1000에서 시간 t의 상태 0000로 천이되는 경로에서도 마찬가지로 브랜치 메트릭 값과 이전 경로 메트릭 값이 더해진다. 그리고 시간 t의 상태 0000로 병합되는 두 경로의 가산 결과를 비교하여 그 중 작은 값을 갖는 경로를 생존 경로로 선택한다.That is, when the polarity inversion does not occur, the branch metric value of the path that transitions from the
따라서 시간 t에서의 상태 0000의 경로 메트릭을 계산하는 방법은 다음과 같다.Therefore, the method for calculating the path metric of the
첫째, 시간 t에서 상태 0000으로 병합(merge)되는 두 가지 브랜치에 대하여 각각 브랜치 메트릭 값과 시간 t-1의 경로 메트릭 값을 더하여 현재 경로 메트릭 값을 구한다. First, the current path metric value is obtained by adding the branch metric value and the path metric value of time t-1 to the two branches merged from the time t to the
둘째, 상기 두 현재 경로 메트릭 값을 비교하여 이 중 작은 경로 메트릭 값을 갖는 경로를 생존 경로로 선택한다. 그리고 다음 ACS 계산을 위해 선택된 경로의 경로 메트릭 값으로 경로 메트릭 값을 갱신한다. Second, the two current path metric values are compared to select a path having the smaller path metric value as a survival path. The path metric value is then updated with the path metric value of the selected path for the next ACS calculation.
셋째, 선택한 경로의 서바이버(survivor)와 경로 선택 정보를 경로 히스토리부로 출력한다.Third, the survivor and the path selection information of the selected path are output to the path history unit.
여기서, 상기 서바이버는 인핸스드 심볼 처리기(402)의 입력 X2 비트가 된다. Here, the survivor becomes the input X2 bit of the
그리고 뒤에서 설명할 도 11의 인핸스드/메인 통합 비터비 복호기를 위해서는 추가로 C2 비트가 서바이버로 포함되어 경로 히스토리(Path History)부에 출력된다.For the enhanced / main integrated Viterbi decoder of FIG. 11 to be described later, the C2 bit is additionally included as a survivor and output to the path history unit.
메인 심볼의 ACS 연산ACS operation of main symbol
메인 심볼의 경우에는 도 9의 (b)와 같이 시간 t에서 0000 상태로 올 수 있는 이전 상태(시간 t-1)는 각각 상태 0000와 상태 0010이다. 이때 시간 t-1의 상태 0000에서 인핸스드 심볼 처리기(402)의 입력 X1로 0이 입력되면 트렐리스 부호기(104)에서 출력되는 레벨 값은 트렐리스 부호기(104)의 입력 X2에 따라서 -7 또는, +1이 되면서, 시간 t의 상태 0000로 경로를 형성한다.In the case of the main symbol, as shown in (b) of FIG. 9, the previous state (time t-1) which can come to the
한편 시간 t-1의 상태 0010에서 X1로 1이 입력되면 입력 X2에 따라서 -3 또는 +5가 되면서, 시간 t의 상태 0000로 경로를 형성한다.On the other hand, if 1 is input to X1 in the
따라서 시간 t에서의 상태 0000의 경로 메트릭을 계산하는 방법은 다음과 같 다.Thus, the path metric for
첫째, 상태 0000의 각각의 경로(즉, 브랜치)에서는 X2에 따라서 2개의 출력 레벨이 가능하므로 이들의 브랜치 메트릭 값을 비교하여 작은 값을 선택하고 선택한 레벨에 해당하는 C2 비트를 출력한다. First, in each path (that is, branch) of
둘째, 시간 t에서 상태 0000으로 병합(merge)되는 두 가지 경로에 대하여 각각 상기 첫째 단계에서 선택된 브랜치 메트릭 값과 누적된 시간 t-1의 경로 메트릭 값을 더하여 현재 경로 메트릭 값을 구한다. Second, the current path metric value is obtained by adding the branch metric value selected in the first step and the path metric value accumulated at time t-1 for the two paths merged to the
셋째, 상기 둘째 단계에서 구한 두 현재 경로 메트릭 값을 비교하여 이 중 작은 경로 메트릭 값을 갖는 경로를 생존 경로로 선택한다. 그리고 다음 ACS 계산을 위해 선택된 경로의 경로 메트릭 값으로 경로 메트릭 값을 갱신한다. Third, the two current path metric values obtained in the second step are compared to select a path having the smaller path metric value as a survival path. The path metric value is then updated with the path metric value of the selected path for the next ACS calculation.
넷째, 선택한 경로의 서바이버와 경로 선택 정보를 경로 히스토리부로 출력한다. 여기서 서바이버에는 선택된 경로의 X1과 상기 첫째 단계의 C2 비트가 포함된다. 상기 C2 비트는 트렐리스 부호기(104)의 출력 중 MSB로서 이것은 나중에 포스트 디코딩을 거쳐 X2 비트로 복호된다. 즉 메인 심볼의 경우에는 각 상태의 서바이버가 C2와 X1 두 비트가 된다.Fourth, the survivor and the path selection information of the selected path are output to the path history unit. The survivor here contains the X1 of the selected path and the C2 bit of the first step. The C2 bit is the MSB of the output of the
도 12의 (a),(b)에서는 상태 0000의 누적 경로 메트릭을 계산하여 갱신하는 예를 설명하였지만, 다른 상태들에 대해서도 이와 같은 방식으로 입력되는 심볼의 각각의 상태 전이도에 의해 누적 경로 메트릭을 계산하여 갱신한다. In FIGS. 12A and 12B, an example of calculating and updating the cumulative path metric of the
입력 제어 신호의 설명Description of the input control signal
인핸스드 심볼과 메인 심볼은 서로 다른 상태 전이를 하기 때문에, ACS부에서는 현재 입력되는 심볼이 인핸스드 심볼인지 메인 심볼인지를 알려주는 E/M 플래그가 필요하다. 또한 인핸스드 심볼 중에서도 1/2 인핸스드 심볼인지 1/4 인핸스드 심볼인지를 알려주는 H/Q 플래그가 필요하다. 그리고 1/4 인핸스드 심볼의 경우에는 널 비트 확장기에서 반복된 비트가 ATSC 데이터 랜더마이저를 통과한 후에 서로 같은지 다른지를 알려주는 PNEQ 플래그가 필요하다. 한편 상기 설명한 인핸스드 심볼의 극성 반전을 추정하기 위해서는 인핸스드 데이터 세그먼트에 더해진 ATSC RS 패리티 심볼의 시점을 알려주는 FLIP 신호 또한 필요하다. Since the enhanced symbol and the main symbol have different state transitions, the ACS unit needs an E / M flag indicating whether the currently input symbol is an enhanced symbol or a main symbol. In addition, among the enhanced symbols, an H / Q flag indicating whether it is a 1/2 enhanced symbol or a 1/4 enhanced symbol is required. In the case of the 1/4 enhanced symbol, a PNEQ flag is needed to indicate whether the bits repeated in the null bit expander are the same after the ATSC data renderer. Meanwhile, in order to estimate the polarity reversal of the above-described enhanced symbol, a FLIP signal indicating a time point of an ATSC RS parity symbol added to an enhanced data segment is also required.
상기 설명한 4개의 제어 신호 즉, E/M 플래그, H/Q 플래그, PNEQ 플래그, 및 FLIP 신호는 수신 시스템에 있는 맵 정보 복구부에서 출력되는 E8-VSB 심볼 속성 정보이다. The four control signals described above, that is, the E / M flag, the H / Q flag, the PNEQ flag, and the FLIP signal, are E8-VSB symbol attribute information output from the map information recovery unit in the receiving system.
정리하면 ACS부에서 필요한 입력은 E/M 플래그, H/Q 플래그, PNEQ 플래그, FLIP 신호, 그리고 8개 레벨에 대한 브랜치 메트릭 값이다. 이와 더불어 기존 ATSC 8T-VSB 수신기의 비터비 복호기와 마찬가지로 필드 동기 신호와 세그먼트 동기 신호의 구간을 알려주는 제어 신호도 필요하다. 이후 필드 동기 신호와 세그먼트 동기 신호를 알려주는 제어 신호는 설명에서 제외한다.In summary, the inputs required by the ACS section are the E / M flag, the H / Q flag, the PNEQ flag, the FLIP signal, and the branch metric values for eight levels. In addition, like the Viterbi decoder of the conventional ATSC 8T-VSB receiver, a control signal indicating the interval of the field sync signal and the segment sync signal is required. After that, the control signal indicating the field sync signal and the segment sync signal are excluded from the description.
송신 시스템에서는 인핸스드 심볼 처리기와 트렐리스 부호기가 각각 12개가 있으므로 수신 시스템에서도 이에 상응하여 12개의 비터비 복호기가 필요하다. Since there are 12 enhanced symbol processors and 12 trellis encoders in the transmission system, 12 Viterbi decoders are required in the receiving system.
도 10은 12개의 비터비 복호기 중에서 어느 하나의 비터비 복호기에 입력되는 제어 신호들의 예를 설명한 것이다. 도 10에서 M은 메인 신호를, H는 1/2(Half) 인핸스드 심볼을, Q는 1/4(Quarter) 인핸스드 심볼을 의미한다. 그리고 P는 인핸스드 데이터 패킷에 더해진 ATSC RS 패리티 바이트가 변환된 심볼을 의미한다. FIG. 10 illustrates an example of control signals input to any one Viterbi decoder among 12 Viterbi decoders. In FIG. 10, M denotes a main signal, H denotes a 1/2 (Half) enhanced symbol, and Q denotes a 1/4 (Quarter) enhanced symbol. P denotes a symbol obtained by converting an ATSC RS parity byte added to an enhanced data packet.
또한 상기 E/M 플래그가 하이이면 현재 입력 심볼이 인핸스드 심볼임을 의미하고, 로우이면 메인 심볼임을 의미한다. 상기 H/Q 플래그는 인핸스드 심볼인 구간에서만 유효한 신호로서 레벨이 로우이면 1/2 인핸스드 심볼을, 하이이면 1/4 인핸스드 심볼을 의미한다. 그리고 상기 PNEQ 신호는 1/4 인핸스드 심볼인 경우에만 유효한 신호로서 두 심볼 단위로 레벨이 변한다. 이 신호의 레벨이 로우이면 반복된 1/4 인핸스드 데이터가 ATSC 랜더마이져에 의해서 서로 다른 값으로 변경되었음을 의미하고, 하이이면 서로 같은 값으로 변경되었음을 의미한다. 그리고 FLIP 신호는 인핸스드 심볼의 극성 반전을 야기시키는 시점을 알려주는 신호로서, 인핸스드 데이터 패킷에 더해진 ATSC RS 패리티 심볼 구간동안 하이이다.In addition, if the E / M flag is high, it means that the current input symbol is an enhanced symbol, and if it is low, it is a main symbol. The H / Q flag is a signal valid only in a period that is an enhanced symbol. If the level is low, the H / Q flag indicates a 1/2 enhanced symbol and a high 1/4 symbol. The PNEQ signal is a valid signal only in case of a 1/4 enhanced symbol, and its level changes in units of two symbols. If the signal level is low, the repeated 1/4 enhanced data is changed to a different value by the ATSC renderer. If the signal is high, it means that the signal is changed to the same value. The FLIP signal is a signal indicating a time point that causes an inversion of the polarity of the enhanced symbol and is high during the ATSC RS parity symbol period added to the enhanced data packet.
1/4 인핸스드 심볼의 ACS 연산ACS operations on quarter enhanced symbols
한편, 상기 1/4 인핸스드 심볼의 ACS 연산의 경우에 기본적인 원리는 1/2 인핸스드 심볼과 동일하나, 두 심볼마다 ACS부가 동작하는 것이 다르다. 즉, E/M 플래그가 하이이면서 H/Q 플래그가 하이이면 1/4 인핸스드 심볼을 의미한다. 이 경우 두 심볼마다 PNEQ 신호에 따라서 ACS 연산을 수행한다. 상기 PNEQ 신호에 의한 복호 과정은 상기된 "2. 인핸스드 심볼과 메인 심볼의 상태 전이 및 복호"에서 상세히 기술한 바 있다.In the case of the ACS operation of the 1/4 enhanced symbol, the basic principle is the same as that of the 1/2 enhanced symbol, but the ACS unit operates differently for each two symbols. That is, if the E / M flag is high and the H / Q flag is high, it means a 1/4 enhanced symbol. In this case, the ACS operation is performed for each two symbols according to the PNEQ signal. The decoding process by the PNEQ signal has been described in detail in "2. State transition and decoding of an enhanced symbol and a main symbol".
12개 비터비 복호기의 ACS부 공유Sharing the ACS section of 12 Viterbi decoders
기존의 ATSC 8T-VSB 비터비 복호기와 마찬가지로 ACS부에서는 가산 (Accumulate), 비교(Compare), 선택(Select) 연산을 위한 하드웨어는 12개의 비터비 복호기 공유하고, 경로 메트릭만 각각 구현하면 된다. 상기 하드웨어 공유는 12개의 비터비 복호기가 동시에 동작하는 것이 아니라 한 개씩 돌아가면서 동작하기 때문에 가능하다. 12개의 비터비 복호기는 각각 양의 복호기(Positive Decoder)와 음의 복호기(Negative Decoder)로 구현되고, 양의 복호기와 음의 복호기는 각각 16 상태로 구현되므로 필요한 경로 메트릭의 총 개수는 (12 x 2 x 16)개이다. Like the existing ATSC 8T-VSB Viterbi decoder, the ACS unit needs to share 12 Viterbi decoders to share hardware for add, compare and select operations. The hardware sharing is possible because 12 Viterbi decoders operate one by one instead of simultaneously. The 12 Viterbi decoders are each implemented with a positive decoder and a negative decoder, and the positive decoder and the negative decoder are each implemented with 16 states, so the total number of path metrics required is (12 x). 2 x 16) pieces.
6. 인핸스드 심볼의 극성 반전 추정(Polarity Inversion estimation)6. Polarity Inversion Estimation of Enhanced Symbols
인핸스드 심볼의 경우 전술한 바와 같이 극성 반전이 일어날 수 있으므로 극성 반전 여부를 추정하는 것이 필요하다. 이러한 극성 반전을 추정하기 위해서는 극성 반전이 일어나지 않았다고 가정하여 복호했을 때의 경로 메트릭과 극성 반전이 일어났다고 가정하여 복호했을 때의 경로 메트릭을 비교하여 메트릭 값이 작은 경우(즉 확률이 더 큰 경우)의 결과를 따른다. In the case of the enhanced symbol, since polarity inversion may occur as described above, it is necessary to estimate whether the polarity is inverted. To estimate this polarity reversal, compare the path metric when decoding assuming that no polarity reversal has occurred and the path metric when decoding assuming that polarity reversal has occurred. Follow the results.
따라서 인핸스드 심볼의 극성 반전 여부를 추정하기 위해서 2개의 복호기가 필요하다. 이후에는 반전이 일어나지 않았다고 가정하여 복호하는 복호기를 양의 복호기(positive decoder)라 부르고, 반전이 일어났다고 가정하여 복호하는 복호기를 음의 복호기(negative decoder)라고 부른다.Therefore, two decoders are required to estimate whether the enhanced symbol is inverted in polarity. The decoder that decodes assuming that inversion does not occur hereinafter is called a positive decoder, and the decoder that decodes assuming that inversion has occurred is called a negative decoder.
인핸스드 심볼의 극성 반전 추정과정을 정리하면 다음과 같다. The process of estimating the polarity inversion of the enhanced symbol is as follows.
첫째, 양의 복호기와 음의 복호기의 ACS부에서 각각 최소 경로 메트릭 값을 구한다. 여기서 최소 경로 메트릭 값이란 시간 t에서의 각 상태의 최소 경로 메트릭 값들 중 가장 작은 값을 의미한다. First, obtain the minimum path metric values in the ACS section of the positive decoder and the negative decoder, respectively. Here, the minimum path metric value means the smallest value among the minimum path metric values of each state at time t.
둘째, 양의 복호기와 음의 복호기의 최소 경로 메트릭 값을 비교하고 그 중 더 작은 값을 갖는 복호기의 극성(Polarity) 신호를 출력한다. 예를 들어, 양의 복호기의 최소 경로 메트릭 값이 음의 복호기의 최소 경로 메트릭 값보다 작다면 극성 신호는 +가 된다. 즉 양의 복호기를 선택하는 신호가 된다. Second, the minimum path metric values of the positive decoder and the negative decoder are compared and the polarity signal of the decoder having the smaller value is output. For example, if the minimum path metric value of the positive decoder is less than the minimum path metric value of the negative decoder, the polarity signal becomes +. In other words, it is a signal for selecting a positive decoder.
셋째, 상기 FLIP 신호가 하이인 구간에서는 극성 신호에 의해서 선택되지 아니한 복호기의 각 상태의 경로 메트릭 값들을 선택된 복호기의 상응하는 경로 메트릭 값으로 덮어쓰고 ACS 연산을 수행한다. 예를 들어, 선택된 복호기가 양의 복호기라고 가정하면, 양의 복호기의 각 상태의 경로 메트릭 값들을 음의 복호기의 상응하는 각 상태의 경로 메트릭 값에 덮어쓴다. Third, in the period in which the FLIP signal is high, the path metric values of each state of the decoder that are not selected by the polarity signal are overwritten with the corresponding path metric values of the selected decoder to perform an ACS operation. For example, assuming that the selected decoder is a positive decoder, the path metric values of each state of the positive decoder are overwritten with the path metric values of each corresponding state of the negative decoder.
이때 양의 복호기가 선택되었다면 극성 반전이 일어나지 않은 것으로 추정된 것이고, 음의 복호기가 선택되었다면 극성 반전이 일어난 것으로 추정된 것이다. In this case, if a positive decoder is selected, it is assumed that the polarity inversion does not occur. If a negative decoder is selected, it is assumed that the polarity inversion occurs.
그리고 상기와 같이 극성 반전을 추정하는 극성 반전 추정부(Polarity Inversion Estimator) 또한 12개의 비터비 복호기 간에 공유가 가능하다.In addition, a polarity inversion estimator for estimating polarity inversion may be shared among 12 Viterbi decoders.
7. 경로 히스토리부(Path History Unit)7. Path History Unit
비터비 알고리듬에서는 ACS 과정 중 각각의 상태에서 선택한 생존 경로의 입력(survivor)을 저장하여 복호장(decoding depth) 길이의 시간 동안 경로 히스토리를 유지한다. The Viterbi algorithm maintains the path history for a length of decoding depth by storing the survivor of the selected survival path in each state during the ACS process.
상기 경로 히스토리부에서는 극성 반전 추정부에서 출력하는 극성(양의 복호기와 음의 복호기를 선택해주는 신호) 신호와 ACS부에서 출력하는 최소 경로 메트릭을 가지는 상태 번호를 입력받아 해당 상태의 경로 히스토리를 역으로 추적 (trace-back) 하여 최종 판정을 출력한다.The path history unit receives a polarity (signal for selecting a positive decoder and a negative decoder) signal output from the polarity inversion estimator and a state number having a minimum path metric output from the ACS unit, and reverses the path history of the corresponding state. Trace-back to output the final decision.
상기 경로 히스토리부에서도 ACS부에서와 마찬가지로 FLIP 신호가 하이인 구간에서 극성 신호에 의해 선택된 복호기의 경로 히스토리를 선택되지 않은 복호기의 경로 히스토리에 덮어쓰고 나서 경로 히스토리를 갱신한다. Similarly to the ACS section, the path history section updates the path history after overwriting the path history of the decoder selected by the polarity signal in the section where the FLIP signal is high, with the path history of the unselected decoder.
인핸스드/메인 통합 비터비 복호기Enhanced / Main Integrated Viterbi Decoder
일반적인 비터비 복호과정을 따른다면 비터비 복호기로 입력되는 심볼은 인핸스드 심볼과 메인 심볼이 뒤섞여 있으므로 경로 히스토리부에 같은 순서대로 인핸스드 심볼과 메인 심볼의 서바이버를 저장한다. 이렇게 되면 복호기가 인핸스드 심볼 및 메인 심볼을 모두 복호해내는 인핸스드/메인 통합 복호기가 된다. 그리고 복호기의 최종 출력이 복호기 입력과 일정 시간 지연을 두고서 같은 순서대로 나오게 된다.According to the general Viterbi decoding process, since the symbols input to the Viterbi decoder are mixed with the enhanced symbols and the main symbols, the enhanced symbols and the survivors of the main symbols are stored in the same order in the path history section. The decoder then becomes an enhanced / main integrated decoder that decodes both the enhanced and main symbols. The final output of the decoder then comes out in the same order with a delay of the decoder input.
비터비 복호기에서는 총 16개의 상태가 존재하고 각 상태마다 ACS부에서 서바이버 두 비트를 출력하고, 이것을 복호장 길이의 시간동안 저장해야하므로, (16 x 복호장 x 2 비트)만큼의 메모리가 필요하다. 또한 양의 복호기와 음의 복호기의 히스토리를 개별적으로 유지해야하므로 (2 x 16 x 복호장 x 2 비트)만큼의 메모리가 필요하다. 한편 12개의 비터비 복호기가 필요하므로 최종적으로 (12 x 2 x 16 x 복호장 x 2 비트)의 메모리가 필요하다.In Viterbi decoder, there are 16 states in total, and for each state, two bits of survivor must be output from the ACS unit and stored for the length of the decoder length. Therefore, memory (16 x decoder x 2 bits) is needed. . In addition, since the history of the positive and negative decoders must be maintained separately, as much memory as (2 x 16 x decoder x 2 bits) is required. On the other hand, since 12 Viterbi decoders are required, finally (12 x 2 x 16 x decoder x 2 bits) memory is required.
도 11은 상기된 본 발명의 제1 실시예에 따른 인핸스드/메인 통합 비터비 복호기를 나타낸 구성 블록도이다. 11 is a block diagram illustrating an enhanced / main integrated Viterbi decoder according to the first embodiment of the present invention described above.
상기 브랜치 메트릭 계산부(611)에서는 입력 심볼과 8개의 기준 출력 레벨과 의 각 유클리디언 거리를 계산하여 8개의 브랜치 메트릭을 구한 후 양의 복호기의 ACS부(612)와 음의 복호기의 ACS부(613)로 출력한다.The branch
이때 상기 입력 심볼과의 브랜치 메트릭 계산에 이용되는 8레벨 기준값은 -7,-5,-3,-1,+1,+3,+5,+7이다. 여기서 -7,-5,-3,-1은 C2 비트가 0일 때의 기준 출력 레벨 값이고, +1,+3,+5,+7은 C2 비트가 1일때의 기준 출력 레벨 값이다. At this time, the eight-level reference value used to calculate the branch metric with the input symbol is -7, -5, -3, -1, + 1, + 3, + 5, + 7. Here, -7, -5, -3, -1 are reference output level values when the C2 bit is 0, and +1, +3, +5, +7 are reference output level values when the C2 bit is 1.
그리고 인핸스드 심볼의 경우 전술한 바와 같이, 극성 반전이 일어날 수가 있다. 즉 시간 t-1의 상태 0000에서 인핸스드 심볼 처리기(402)의 입력 X2로 0이 입력되면 트렐리스 부호기(104)에서 출력되는 기준 8레벨 값은 극성 반전이 일어나지 않았을 경우 -7이 되고, 극성 반전이 일어났을 경우 +1이 되면서, 시간 t의 상태 0000로 천이되는 경로를 형성한다. 그러므로 동일한 경로 상에서 극성 반전이 일어났을 경우와 일어나지 않았을 경우의 브랜치 메트릭 값이 달라진다. In the case of the enhanced symbol, polarity reversal may occur as described above. That is, when 0 is input to the input X2 of the
따라서 양의 복호기의 ACS(612)에서는 극성 반전이 일어나지 않았을 경우의 브랜치 메트릭 값을 브랜치 메트릭 계산부(611)로부터 입력받고, 맵 정보 복구부로부터 E/M, H/Q, FLIP, PNEQ등의 제어신호를 입력받아 ACS 연산을 수행한다. 그리고 음의 복호기의 ACS(613)에서는 극성 반전이 일어났을 경우의 브랜치 메트릭 값을 브랜치 메트릭 계산부(611)로부터 입력받고, 상기 맵 정보 복구부로부터 E/M, H/Q, FLIP, PNEQ등의 제어신호를 입력받아 ACS 연산을 수행한다.Therefore, in the
즉 상기 양의 복호기와 음의 복호기의 ACS부(612,613)는 각 상태별로 두 개의 브랜치에 대하여 해당 브랜치 메트릭과 그 브랜치와 연결된 이전 상태의 경로 메트릭을 더하고 그 중 작은 값을 선택하여 저장한 후 이때의 서바이버, 경로 선택 정보를 양의 복호기와 음의 복호기의 경로 히스토리부(615,616)로 출력한다. 예를 들어 입력된 심볼이 인핸스드 심볼이면 상기 각 상태별 서바이버는 X2,C2 비트가 되고, 메인 심볼이면 X1,C2 비트가 된다. That is, the
또한 상기 양의 복호기와 음의 복호기의 ACS부(612,613)는 각 상태의 경로 메트릭 값들 중에서 가장 작은 값을 최소 경로 메트릭 값으로 선택하여 극성 반전 추정부(614)에 출력하고, 최소 경로 메트릭을 가지는 상태 번호를 양의 복호기와 음의 복호기의 경로 히스토리부(615,616)로 출력한다. Also, the
본 발명에서는 인핸스드 심볼의 극성 반전을 유발하는 심볼 구간(FLIP이 하이)에서 극성 반전 추정부(614)에서 추정된 극성에 따라서 선택된 복호기의 각 상태의 경로 메트릭으로 선택되지 아니한 복호기의 각 상태의 경로 메트릭을 덮어쓴 후에 ACS 연산을 수행한다.According to the present invention, in the symbol period (FLIP is high) that causes the polarity inversion of the enhanced symbol, the state of each state of the decoder that is not selected as the path metric of each state of the selected decoder according to the polarity estimated by the
상기 극성 반전 추정부(614)에서는 FLIP 제어 신호와 양의 복호기와 음의 복호기의 ACS부(612,613)로부터 최소 경로 메트릭을 입력받아 극성 반전을 추정한다. 예를 들어, 양의 복호기의 ACS부(612)에서 출력되는 최소 경로 메트릭 값이 음의 복호기의 ACS부(613)에서 출력되는 최소 경로 메트릭 값보다 작다고 판별되면 극성 반전이 일어나지 않았다고 판별하고, 크다고 판별되면 극성 반전이 일어났다고 판별한 후 판별 결과(Polarity)를 상기 양의 복호기와 음의 복호기의 ACS부(612,613), 및 양의 복호기와 음의 복호기의 경로 히스토리부(615,616)로 출력한다. The polarity
상기 양의 복호기와 음의 복호기의 경로 히스토리부(615,616)에서는 E/M, H/Q, FLIP, PNEQ 등의 제어 신호와 각 상태의 서바이버, 경로 선택 정보, 최소 경로 메트릭 값을 가지는 상태 번호를 입력받아 복호장 길이 동안의 경로 히스토리를 유지한다. 또한 각 복호기의 최소 경로 메트릭에 해당하는 상태를 역추적하여 복호장 만큼의 시간 이전의 서바이버를 복호 판정값(decision)으로 하여 결정 선택부(617)로 출력한다. The
또한 상기 양의 복호기와 음의 복호기의 경로 히스토리부(615,616)는 FLIP이 하이인 구간에서 극성 신호에 의해 선택되지 않은 복호기의 경로 히스토리를 선택된 복호기의 경로 히스토리로 덮어쓴다.Also, the
상기 결정 선택부(617)는 극성 반전 추정부(614)의 극성 신호에 의해서 선택된 복호기의 복호 판정값을 선택하여 포스트 디코더(618)와 출력 먹스(619)로 출력한다. 예를 들어, 극성 반전 추정부(614)에 의해 양의 복호기가 선택되면 양의 복호기의 경로 히스토리부(615)에서 출력되는 복호 판정값을 선택 출력한다. The
상기 복호 판정값 중 C2 비트는 포스트 디코더(618)로 출력되고, X2 또는, X1 비트는 출력 먹스(619)로 바로 출력된다. The C2 bit of the decoding determination value is output to the
즉 메인 심볼은 송신단에서 프리 코딩(pre-coding)이 걸려있기 때문에 이의 역과정인 포스트 디코딩(post-decoding)을 수행하여야 한다. 이 경우 포스트 디코더(618)는 메인 심볼과 인핸스드 심볼을 구분하지 않고 C2 비트에 대하여 포스트 디코딩을 수행하여 출력 먹스(619)로 출력한다. That is, since the main symbol is pre-coded at the transmitter, post-decoding, which is a reverse process thereof, must be performed. In this case, the
상기 출력 먹스(619)는 인핸스드 심볼의 경우에는 포스트 디코딩된 결과가 아닌 X2 비트를 상위 비트로 출력하고 하위 비트 즉, X1 비트로는 더미(dummy) 비 트를 출력한다. 그리고 메인 심볼의 경우에는 X1 비트를 하위 비트로 출력하고, 포스트 디코딩된 결과를 상위 비트로 출력한다.In the case of an enhanced symbol, the
인핸스드 전용 비터비 복호기Enhanced Dedicated Viterbi Decoder
상기 인핸스드 심볼은 메인 심볼에 비하여 추가의 콘볼루션 부호화가 이루어졌기 때문에 복호 후의 성능에 상당한 차이가 있다. 그런데 인핸스드 심볼과 메인 심볼이 섞여 경로 히스토리부에 입력되게 되면 일정 복호장내에 있는 인핸스드 심볼의 개수가 적어서 인핸스드 심볼의 유효한 복호장이 줄어드는 효과가 있다. 이로 인해 메인 심볼에 의해서 인핸스드 심볼의 복호 성능이 저하되는 문제가 생긴다. 이러한 문제는 메인 데이터와 다중화하는 인핸스드 데이터의 양의 적을수록 더 크게 나타난다. 따라서 메인 심볼이 인핸스드 심볼에 주는 영향을 최소화하기 위해서는 경로 히스토리부에 인핸스드 심볼만 입력하여 인핸스드 심볼의 유효 복호장을 일정이상 확보할 필요가 있다. 인핸스드 심볼의 판정은 X2 비트에 대해서만 수행하므로 경로 히스토리부에서 필요한 메모리는 (12 x 2 x 16 x 복호장 x 1 비트)이다. The enhanced symbol has a significant difference in performance after decoding because additional convolutional coding is performed compared to the main symbol. However, when the enhanced symbol and the main symbol are mixed and input to the path history part, the number of the enhanced symbols in the predetermined decoding field is small, thereby reducing the effective decoding length of the enhanced symbol. This causes a problem that the decoding performance of the enhanced symbol is degraded by the main symbol. This problem is larger when the amount of enhanced data multiplexed with the main data is smaller. Therefore, in order to minimize the effect of the main symbol on the enhanced symbol, it is necessary to secure an effective symbol of the enhanced symbol by inputting only the enhanced symbol in the path history part. Since the determination of the enhanced symbol is performed only for the X2 bit, the memory required in the path history part is (12 x 2 x 16
그런데 인핸스드 전용 비터비 복호기의 경로 히스토리부는 입력 서바이버가 인핸스드 심볼인 경우에만 동작하기 때문에 최종 복호되어 출력되는 심볼의 순서가 비터비 복호기 입력의 심볼의 순서와 달라진다. However, since the path history unit of the enhanced dedicated Viterbi decoder operates only when the input survivor is an enhanced symbol, the order of the final decoded and output symbols differs from the order of the symbols of the Viterbi decoder input.
도 12는 이러한 현상을 예를 들어 설명한 것이다. 도 12의 (a)는 12개의 비터비 복호기 중에서 어느 하나의 복호기에 입력되는 입력 심볼의 열을 나타낸 것이다. 도 12에서 E는 인핸스드 심볼을, M은 메인 심볼을 의미하여 E 또는 M 다음에 붙은 숫자는 시간 인덱스를 나타낸다. 도 12의 (b)는 인핸스드/메인 통합 비터비 복호기에서 최종 출력하는 심볼 열을 나타낸 것으로서 상기 설명한 바와 같이 일정한 복호장 뒤에 입력 심볼 열과 동일한 순서로 복호 판정 값이 출력됨을 알 수 있다. 도 12의 (c)는 인핸스드 전용 비터비 복호기의 복호 판정이 출력되는 순서를 나타낸 것이다. 도 12의 (c)를 보면 알 수 있듯이 입력 E1에 대한 판정이 내려지려면 경로 히스토리부에 8개의 인핸스드 심볼이 입력되어야 하므로(복호장=8 가정), E1에 대한 판정은 E17이 입력 될 때 가능하다. 또한 비터비 복호기 입력단에서는 E1 E2 E3 E4 다음에 M5 M6 M7 M8 심볼이 입력 된 다음에 E9 E10 E11 E12 심볼이 입력되었는데, 최종 출력에서는 E1 E2 E3 E4 와 E9 E10 E11 E12 심볼이 연이어서 출력됨을 알 수 있다. 이것은 인핸스드 전용 비터비 복호기의 경로 히스토리부가 인핸스드 심볼에서만 동작하기 때문이다.12 illustrates this phenomenon by way of example. FIG. 12A illustrates a sequence of input symbols input to any one of 12 Viterbi decoders. In FIG. 12, E denotes an enhanced symbol, M denotes a main symbol, and a number after E or M denotes a time index. FIG. 12 (b) shows the symbol string finally output from the enhanced / main integrated Viterbi decoder, and as described above, it can be seen that the decoding determination values are output in the same order as the input symbol string after the predetermined decoding field. Fig. 12C shows a procedure in which the decoding decision of the enhanced dedicated Viterbi decoder is output. As can be seen from (c) of FIG. 12, since eight enhanced symbols must be input to the path history part in order to make a determination on the input E1 (assuming decoding field = 8), the determination on E1 is performed when E17 is input. It is possible. Also, at the Viterbi decoder input terminal, E1 E2 E3 E4 followed by M5 M6 M7 M8 symbol, followed by E9 E10 E11 E12 symbol. Can be. This is because the path history portion of the enhanced dedicated Viterbi decoder operates only in the enhanced symbol.
따라서 인핸스드 전용 비터비 복호기의 복호 판정은 재정렬(re-ordering)을 통하여 입력의 심볼열과 같은 순서대로 맞춰야 한다. Therefore, the decoding decision of the enhanced dedicated Viterbi decoder should be ordered in the same order as the symbol string of the input through re-ordering.
도 13은 인핸스드 심볼이 복호된 출력을 재정렬(re-ordering)하는 것을 설명한 것이다. 12개 비터비 복호기의 경로 히스토리부에서 출력되는 복호 판정은 시분할 방식으로 시리얼하게 출력되므로 디먹스에서는 Way 신호(12 개의 복호기중 몇 번째 복호기인지를 알려주는 신호)에 따라서 해당 FIFO에 복호된 판정값을 저장한다. 이때 상기 FIFO(First In First Out)는 인핸스드 심볼만 버퍼링(buffering)하므로 디먹스는 E/M 플래그가 하이인 구간에서만 동작한다. 제1 먹스(MUX1) 또한 E/M 플래그가 하이인 구간에서만 동작하며 way신호를 입력받아 해당 FIFO의 출력을 출력한다. 도 13에서 제1 먹스(MUX1)에서 사용하는 E/M 플래그와 Way 신호는 디먹 스에서 사용하는 신호보다 일정 시간 지연을 가진다. 한편 제2 먹스(MUX2)에서 사용하는 E/M 플래그는 제1 먹스의 것과 동일하며, E/M 플래그가 하이인 구간에는 제1 먹스의 출력을 다중화하고 로우인 구간에는 메인 심볼 구간에 더미(dummy) 데이터를 출력하거나 또는 메인 전용 비터비 복호기의 출력을 다중화하여 출력한다. 상기 더미 데이터를 다중화하는 경우에는 비터비 복호기의 최종 출력에서 인핸스드 심볼과 메인 심볼이 별개의 경로로 출력되는 경우이다. 그리고 메인 심볼이 다중화 되는 경우에는 인핸스드 심볼과 메인 심볼이 복호된 결과가 한 개의 경로로 출력되는 경우이다.13 illustrates re-ordering the output with the enhanced symbols decoded. Since the decoding decision output from the path history section of the 12 Viterbi decoders is serially output in a time division manner, the demux decodes the decision value decoded in the corresponding FIFO according to the Way signal (signal indicating the number of decoders of the 12 decoders). Save it. In this case, since the FIFO buffers only enhanced symbols, the demux operates only in a section in which the E / M flag is high. The first MUX1 also operates only in a section in which the E / M flag is high and receives a way signal to output the output of the corresponding FIFO. In FIG. 13, the E / M flag and the way signal used in the first mux MUX1 have a predetermined time delay than the signal used in the demux. Meanwhile, the E / M flag used in the second mux2 is the same as that of the first mux, and the output of the first mux is multiplexed in the section where the E / M flag is high, and the dummy ( dummy) outputs data or multiplexes the output of the main dedicated Viterbi decoder. In the case of multiplexing the dummy data, an enhanced symbol and a main symbol are output in separate paths at the final output of the Viterbi decoder. When the main symbol is multiplexed, the enhanced symbol and the result of decoding the main symbol are output in one path.
도 14는 본 발명의 제2 실시예에 따른 인핸스드 전용 비터비 복호기를 구성 블록도이다. 14 is a block diagram of an enhanced dedicated Viterbi decoder according to a second embodiment of the present invention.
브랜치 메트릭 계산부(811)와 극성 반전 추정부(814)는 도 12의 인핸스드/메인 통합 복호기와 동일하므로 상세 설명을 생략한다. 그리고 양의 복호기와 음의 복호기의 ACS부(812,813)의 동작 또한 통합 복호기와 동일하나 인핸스드 심볼 전용 복호기의 경우에는 경로 히스토리부로 출력하는 서바이버가 X2 한 비트로만 구성된다. 따라서 경로 히스토리부(815,816)에서 필요한 메모리는 총 (12 x 2 x 16 x 복호장 x 1 비트)이다.Since the branch
그리고 인핸스드 전용 비터비 복호기에는 상기된 도 12, 도 13에서 설명한 재정렬을 위해 인핸스드 재정렬부(818)가 더 구비된다. In addition, the enhanced dedicated Viterbi decoder further includes an enhanced
메인 전용 비터비 복호기는 기존의 ATSC 8T-VSB 수신기의 비터비 복호기와 동일하므로 본 발명에서는 설명을 생략한다.Since the main dedicated Viterbi decoder is the same as the Viterbi decoder of the conventional ATSC 8T-VSB receiver, the description thereof will be omitted.
8. 채널등화기 시스템으로의 판정 피드백8. Decision Feedback to the Channel Equalizer System
수신 시스템에서 사용하는 채널 등화기 시스템은 8-레벨에 대한 판정을 사용하여 채널 등화를 수행한다. 8-레벨 슬라이서를 사용하여 판정을 내리는 것에 비해서 비터비 복호를 수행하여 내린 판정 값이 신뢰도가 높다. 따라서 본 발명에서는 비터비 복호기에서 수행된 8-레벨에 대한 판정을 채널 등화 시스템으로 피드백(feedback)함으로써, 채널 등화의 성능을 향상시킬 수 있다.The channel equalizer system used in the receiving system performs channel equalization using a decision on eight-levels. Compared to making an judgment using an 8-level slicer, the decision value obtained by performing Viterbi decoding is more reliable. Therefore, the present invention can improve the performance of channel equalization by feeding back the 8-level decision performed in the Viterbi decoder to the channel equalization system.
ACS부에서의 판정 피드백Judgment feedback in ACS section
비터비 복호기의 ACS부에서 최소 경로 메트릭을 가지는 상태를 찾아 그 상태에서 선택한 경로의 출력 레벨(8-레벨 중 하나)을 채널 등화 시스템으로 피드백 한다. 이때 인핸스드 심볼의 극성 반전 추정부의 극성 신호에 따라서 양의 복호기와 음의 복호기의 ACS부의 출력 레벨 중 하나를 선택하여 채널 등화 시스템으로 피드백한다. 이것은 개념적으로 복호장이 0인 비터비 복호기의 판정 피드백에 해당한다. The ACS section of the Viterbi decoder finds the state with the minimum path metric and feeds back the output level (one of the eight-levels) of the selected path to the channel equalization system. In this case, one of the output level of the ACS unit of the positive decoder and the negative decoder is selected and fed back to the channel equalization system according to the polarity signal of the enhanced inversion estimation unit of the polarity symbol. This conceptually corresponds to the decision feedback of a Viterbi decoder with zero decoding.
각 복호장에서의 판정 피드백Judgment feedback at each decoder
비터비 복호기의 판정값은 어느 정도까지 복호장이 증가함에 따라서 판정의 신뢰도가 증가한다. 그러나 복호장이 증가하면 복호 판정까지의 시간 지연이 증가하는 단점이 있다. 비터비 복호기의 복호장이 1 증가할 때마다 판정 피드백의 시간 지연은 12 심볼 시간만큼 증가한다. 그러나 채널 등화기 시스템에서는 경로 히스토리부에서 각 복호장마다 복호 판정을 피드백 해준다면 시간 지연이 허용되는 범위 내에서 최대한 신뢰도가 높은 판정값을 사용할 수 있다. As the determination value of the Viterbi decoder increases to a certain extent, the reliability of the determination increases. However, as the decoding length increases, the time delay until the decoding decision increases. Each time the decoding length of the Viterbi decoder increases by 1, the time delay of the decision feedback increases by 12 symbol times. However, in the channel equalizer system, if the path history unit feeds back the decoding decision for each decoding field, the decision value with the highest reliability can be used within the allowable time delay.
이를 위해서는 비터비 복호기의 ACS부에서 서바이버를 출력할 때 선택된 경로의 출력 레벨에 대한 정보 즉, C2C1C0 세 비트를 추가하여야 한다. 그리고 경로 히스토리부에서는 이를 저장하여 복호장 만큼의 시간에 해당하는 히스토리를 유지한다. 그리고 매 역 추적 단계(trace-back stage)마다 최소 경로 메트릭를 가지는 상태의 서바이버를 출력하여 채널 등화기 시스템에 피드백 한다.To this end, when outputting the survivor from the ACS unit of the Viterbi decoder, information about the output level of the selected path, that is, three bits of C2C1C0 should be added. The route history unit stores this and maintains the history corresponding to the decoding time. In each trace-back stage, a survivor having a minimum path metric is output and fed back to the channel equalizer system.
상기 채널 등화기 시스템에서는 인핸스드 심볼과 메인 심볼 모두 판정 피드백을 받아야 하고 판정 지연이 적어야 하므로, 인핸스드/메인 통합 비터비 복호기를 기본으로 하여 피드백 하는 것이 바람직하다. 이를 위해서는 도 11의 ACS부에서 서바이버를 출력할 때 C2C1C0를 추가로 출력한다. 그리고 경로 히스토리부에서는 기존 2 비트에 C2C1C0 세 비트를 더하여 저장하고 ACS부에서 입력된 최소 경로 메트릭을 가지는 상태를 찾아 각 복호장에서의 C2C1C0를 출력하여 채널 등화기 시스템으로 피드백 한다. 물론 극성 반전 추정부의 극성 신호에 의해서 양의 복호기에서 출력하는 피드백과 음의 복호기에서 출력하는 피드백을 선택해야 한다.In the channel equalizer system, since both the enhanced symbol and the main symbol should receive decision feedback and have a low decision delay, it is preferable to feed back based on the enhanced / main integrated Viterbi decoder. To this end, C2C1C0 is additionally output when the survivor is output from the ACS unit of FIG. 11. In addition, the path history unit stores two bits of C2C1C0 in addition to the existing two bits, finds a state having the minimum path metric input from the ACS unit, and outputs C2C1C0 from each decoder to feed back to the channel equalizer system. Of course, the feedback output from the positive decoder and the feedback output from the negative decoder should be selected by the polarity signal of the polarity inversion estimator.
한편, 본 발명에서 사용되는 용어(terminology)들은 본 발명에서의 기능을 고려하여 정의 내려진 용어들로써 이는 당분야에 종사하는 기술자의 의도 또는 관례 등에 따라 달라질 수 있으므로 그 정의는 본 발명의 전반에 걸친 내용을 토대로 내려져야 할 것이다. On the other hand, the terms used in the present invention (terminology) are terms defined in consideration of the functions in the present invention may vary according to the intention or practice of those skilled in the art, the definitions are the overall contents of the present invention It should be based on.
본 발명을 상술한 실시예에 한정되지 않으며, 첨부된 청구범위에서 알 수 있는 바와 같이 본 발명이 속한 분야의 통상의 지식을 가지 자에 의해 변형이 가능하 고 이러한 변형은 본 발명의 범위에 속한다. The present invention is not limited to the above-described embodiments, and can be modified by those skilled in the art as can be seen from the appended claims, and such modifications are within the scope of the present invention. .
상기에서 설명한 본 발명에 따른 수신 시스템의 비터비 복호기의 효과를 설명하면 다음과 같다. The effect of the Viterbi decoder of the reception system according to the present invention described above is as follows.
첫째, 인핸스드 심볼과 메인 심볼을 모두 비터비 복호할 수 있다. First, both the enhanced symbol and the main symbol can be Viterbi decoded.
둘째, 인핸스드 심볼의 경우 송신기의 인핸스드 심볼 처리기와 트렐리스 부호기가 연접된 것을 한 번에 복호하여 복호 성능을 높일 수 있다.Second, in the case of an enhanced symbol, decoding performance of an enhanced symbol processor and a trellis coder of a transmitter can be decoded at once.
셋째, 인핸스드 심볼 중에서도 1/2 인핸스드 심볼과 1/4 인핸스드 심볼을 구분하여 복호할 수가 있으며, 1/4 인핸스드 심볼 복호의 신뢰도가 1/2 인핸스드 심볼 복호의 신뢰도보다 높다.Third, among the enhanced symbols, the 1/2 enhanced symbol and the 1/4 enhanced symbol can be divided and decoded, and the reliability of the 1/4 enhanced symbol decoding is higher than the reliability of the 1/2 enhanced symbol decoding.
넷째, 인핸스드 심볼의 극성 반전 여부를 추정할 수 있다.Fourth, it is possible to estimate whether the polarity of the enhanced symbol is reversed.
다섯째, 인핸스드 전용 비터비 복호기를 구현하여 메인 심볼이 인핸스드 심볼의 복호 성능에 미치는 악영향을 최소화할 수 있다.Fifth, by implementing the enhanced dedicated Viterbi decoder, it is possible to minimize the adverse effect of the main symbol on the decoding performance of the enhanced symbol.
여섯째, 비터비 복호기에서 수행된 8-레벨에 대한 판정을 채널 등화기 시스템으로 피드백함으로써 채널 등화 성능을 향상시킬 수 있다.Sixth, channel equalization performance can be improved by feeding back the determination of the 8-level performed in the Viterbi decoder to the channel equalizer system.
이상 설명한 내용을 통해 당업자라면 본 발명의 기술 사상을 일탈하지 아니하는 범위에서 다양한 변경 및 수정이 가능함을 알 수 있을 것이다.Those skilled in the art will appreciate that various changes and modifications can be made without departing from the spirit of the present invention.
따라서, 본 발명의 기술적 범위는 실시예에 기재된 내용으로 한정되는 것이 아니라 특허 청구의 범위에 의하여 정해져야 한다. Therefore, the technical scope of the present invention should not be limited to the contents described in the embodiments, but should be defined by the claims.
Claims (30)
Priority Applications (11)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020040093567A KR100744505B1 (en) | 2004-11-16 | 2004-11-16 | Viterbi decoder |
MXPA05012227A MXPA05012227A (en) | 2004-11-16 | 2005-11-14 | Enhanced vsb viterbi decoder. |
US11/273,854 US7933365B2 (en) | 2004-11-16 | 2005-11-14 | Enhanced VSB Viterbi decoder |
CA 2527098 CA2527098C (en) | 2004-11-16 | 2005-11-15 | Enhanced vsb viterbi decoder |
ARP050104789 AR051425A1 (en) | 2004-11-16 | 2005-11-15 | VITERBI VSB DECODER (VESTIGIAL SIDE BAND) IMPROVED |
CNB2005101253249A CN100527803C (en) | 2004-11-16 | 2005-11-16 | Enhanced VSB viterbi decoder |
BRPI0505286-6A BRPI0505286A (en) | 2004-11-16 | 2005-11-16 | viterbi advanced vestigial sideband decoder, viterbi method for decoding an input symbol into a vestigial sideband receiver, vestigial sideband receiver, and method for decoding a digital broadcast signal |
US12/824,078 US8135095B2 (en) | 2004-11-16 | 2010-06-25 | Enhanced VSB viterbi decoder |
US14/206,939 USRE45506E1 (en) | 2004-11-16 | 2014-03-12 | Enhanced VSB Viterbi decoder |
US14/451,027 USRE45887E1 (en) | 2004-11-16 | 2014-08-04 | Enhanced VSB Viterbi decoder |
US15/008,242 USRE47507E1 (en) | 2004-11-16 | 2016-01-27 | Enhanced VSB viterbi decoder |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020040093567A KR100744505B1 (en) | 2004-11-16 | 2004-11-16 | Viterbi decoder |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20060054507A KR20060054507A (en) | 2006-05-22 |
KR100744505B1 true KR100744505B1 (en) | 2007-08-01 |
Family
ID=36766526
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020040093567A KR100744505B1 (en) | 2004-11-16 | 2004-11-16 | Viterbi decoder |
Country Status (2)
Country | Link |
---|---|
KR (1) | KR100744505B1 (en) |
CN (1) | CN100527803C (en) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101154954B1 (en) * | 2005-01-07 | 2012-06-18 | 엘지전자 주식회사 | Apparatus and method for transmitting/receiving digital broadcasting signal |
KR101414472B1 (en) * | 2007-02-02 | 2014-07-04 | 삼성전자주식회사 | Multi transport stream generating device and method, digital broadcasting transmission/receiption device and method |
KR101369838B1 (en) | 2007-04-20 | 2014-03-06 | 삼성전자주식회사 | Transport stream generating device, Transmitting device, Receiving device, Digital broadcasting system having them and method thereof |
KR101358720B1 (en) * | 2009-12-02 | 2014-02-10 | 삼성전자주식회사 | Digital broadcast receiver and method for processing stream thereof |
KR101360002B1 (en) * | 2009-12-02 | 2014-02-07 | 삼성전자주식회사 | Digital broadcast transmission system and method for processing stream thereof |
KR101393016B1 (en) * | 2009-12-02 | 2014-05-12 | 삼성전자주식회사 | Digital broadcast receiver and method for processing stream thereof |
KR101358722B1 (en) * | 2009-12-02 | 2014-02-11 | 삼성전자주식회사 | Digital broadcast receiver and method for processing stream thereof |
KR101358292B1 (en) * | 2009-12-02 | 2014-02-07 | 삼성전자주식회사 | Digital broadcast receiver and method for processing stream thereof |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH05207075A (en) * | 1992-01-24 | 1993-08-13 | Hitachi Ltd | Digital communication system |
-
2004
- 2004-11-16 KR KR1020040093567A patent/KR100744505B1/en active IP Right Grant
-
2005
- 2005-11-16 CN CNB2005101253249A patent/CN100527803C/en not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH05207075A (en) * | 1992-01-24 | 1993-08-13 | Hitachi Ltd | Digital communication system |
Also Published As
Publication number | Publication date |
---|---|
KR20060054507A (en) | 2006-05-22 |
CN1777256A (en) | 2006-05-24 |
CN100527803C (en) | 2009-08-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
USRE47507E1 (en) | Enhanced VSB viterbi decoder | |
US8472544B2 (en) | Digital television transmitter and method of coding data in digital television transmitter | |
US7823052B2 (en) | Trellis encoding device for encoding transmission stream and method thereof | |
US8638860B2 (en) | Digital television transmission and receiving apparatus and method using 1/4 rate coded robust data | |
US7844885B2 (en) | DTV transmitter and method of coding main and enhanced data in DTV transmitter | |
USRE45668E1 (en) | Digital television transmitter/receiver and method of processing data in digital television transmitter/receiver | |
KR101253187B1 (en) | Digital broadcasting system and method of processing data in digital broadcasting system | |
US20070237263A1 (en) | Receiver for robust data extension for 8VSB signaling | |
KR101208509B1 (en) | Digital broadcasting system and processing method | |
KR20060057266A (en) | Enhanced 8-vsb receiving system, data attribute generating apparatus and method, and channel decoding apparatus and method | |
KR20020093930A (en) | Robust Digital Communication System | |
CN100527803C (en) | Enhanced VSB viterbi decoder | |
JP2005523654A (en) | HDTV trellis decoder architecture | |
KR101154954B1 (en) | Apparatus and method for transmitting/receiving digital broadcasting signal |
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 | ||
G170 | Publication of correction | ||
FPAY | Annual fee payment |
Payment date: 20130624 Year of fee payment: 7 |
|
FPAY | Annual fee payment |
Payment date: 20140624 Year of fee payment: 8 |
|
FPAY | Annual fee payment |
Payment date: 20150624 Year of fee payment: 9 |
|
FPAY | Annual fee payment |
Payment date: 20160624 Year of fee payment: 10 |
|
FPAY | Annual fee payment |
Payment date: 20170614 Year of fee payment: 11 |
|
FPAY | Annual fee payment |
Payment date: 20180614 Year of fee payment: 12 |