KR100710743B1 - 간이 채널 디코더를 구비하는 전송 시스템 및 이 시스템의 운영 방법 - Google Patents
간이 채널 디코더를 구비하는 전송 시스템 및 이 시스템의 운영 방법 Download PDFInfo
- Publication number
- KR100710743B1 KR100710743B1 KR1020007000820A KR20007000820A KR100710743B1 KR 100710743 B1 KR100710743 B1 KR 100710743B1 KR 1020007000820 A KR1020007000820 A KR 1020007000820A KR 20007000820 A KR20007000820 A KR 20007000820A KR 100710743 B1 KR100710743 B1 KR 100710743B1
- Authority
- KR
- South Korea
- Prior art keywords
- state
- sequence
- channel
- channel decoder
- decoder
- 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/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/23—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using convolutional codes, e.g. unit memory codes
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/65—Purpose and implementation aspects
- H03M13/6502—Reduction of hardware complexity or efficient processing
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/37—Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
- H03M13/39—Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes
- H03M13/41—Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using the Viterbi algorithm or Viterbi processors
- H03M13/4123—Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using the Viterbi algorithm or Viterbi processors implementing the return to a predetermined state
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/37—Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
- H03M13/39—Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes
- H03M13/41—Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using the Viterbi algorithm or Viterbi processors
- H03M13/4161—Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using the Viterbi algorithm or Viterbi processors implementing path management
- H03M13/4169—Sequence estimation, i.e. using statistical methods for the reconstruction of the original codes using the Viterbi algorithm or Viterbi processors implementing path management using traceback
Landscapes
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Error Detection And Correction (AREA)
- Detection And Prevention Of Errors In Transmission (AREA)
Abstract
테일비팅 상승 인코더에 있어서, 인코더(12)는 인코드된 시퀀스의 마지막 기호에 대응하는 기호의 시퀀스로 초기화되어, 그 결과로 인코더의 시작 상태 및 마지막 상태가 동일하게 된다. 그러한 코더에 의해 얻어진 상승 코드의 문제점은 그 상승 코드를 디코드하기 위하여 상당한 연산 자원을 요구한다는 것이다. 본 발명에 따른 간이 디코더에서, 디코딩 처리는 길이(N+ν)까지 다수의 트렐리스 부분으로 확장된다. 마지막 트렐리스 부분에서, 가장 큰 경로 거리를 갖는 상태는 최적 상태로 선택된다. 이 최적 상태는 마지막 트렐리스 부분 이전의 N 트렐리스 부분에 있는 이전 상태를 발견하기 위하여 역-추적 동작을 위한 시작 지점으로 사용된다. 거기에서 발견된 이전 상태는 올바른 것으로 간주되고, 그 결과로 그 트렐리스가 상기 상태에서 또한 종료되어야 한다. 상기 상태로부터 역-추적을 수행함으로써 소스 기호는 발견될 수 있다.
Description
본 발명은 소스 기호의 시퀀스를 채널 기호의 시퀀스로 인코드하기 위한 채널 인코더를 구비하는 전송기를 포함하는 전송 시스템으로, 상기 채널 인코더가 소스 기호의 시퀀스를 인코드한 후에 채널 인코더의 마지막 상태에 대응하는 상태로 초기화되고, 상기 전송기가 채널 기호를 나타내는 채널 신호를 수신기에 전송하도록 배열되고, 상기 수신기가 상태 시퀀스의 가능성을 나타내는 대응하는 가능성 측정값으로 복수의 상태 시퀀스를 계속 추적함으로써 채널 기호를 나타내는 채널 신호로부터 소스 기호의 시퀀스를 도출하기 위한 채널 디코더를 포함하는 전송 시스템에 관한 것이다.
상기 전송 시스템은 소스 기호의 시퀀스를 신뢰할 수 있는 방식으로 수신기에 전송하기 위해 사용된다.
상기 전송 시스템의 응용은 인코드된 음성 신호를 포함하는 프레임(frame)이 기지국으로부터 이동 단말기로 및 이동 단말기로부터 기지국으로 전송되어야 하는 이동 전화 시스템을 포함한다.
신뢰할 수 있는 전송을 성취하기 위하여, 소스 기호의 시퀀스는 채널 인코더에 의해 채널 기호의 시퀀스로 인코드된다. 채널 인코더는 예를 들어 사전 결정된 상태로 초기화되는 상승 인코더일 수 있다. 이 사전 결정된 상태는 때때로 소스 기호의 시퀀스에서 ν개의 마지막 기호에 대응하는 0 상태이다. 이것의 단점은 소스 기호의 마지막 기호가 0으로 설정되어야 한다는 것이다. 이것은 하나의 채널 기호의 시퀀스로 전송될 수 있는 소스 기호의 수를 감소시킨다.
소스 기호의 수의 감축은 채널 인코더를 소스 기호의 시퀀스에 있는 마지막 소스 기호에 의해 정의되는 상태로 초기화함으로써 방지될 수 있다. 상기 마지막 소스 기호의 인코딩 후에 채널 인코더의 상태와 동일한 상태로 초기화하는 것은 공지되었다. 위 메카니즘을 사용하는 코드는 "테일 비팅(tail biting)" 코드로 공지되었다. "영 테일링(tailing)" 코드 및 "테일 비팅" 코드의 조합이 또한 고려될 수 있다.
그러나 채널 인코더가 상기 마지막 소스 기호의 인코딩 후에 채널 인코더의 상태와는 상이한 상태로 초기화되는 것을 고려할 수 있다. 그러나 그러한 경우에 상기 마지막 소스 기호의 인코딩 후에 채널 인코더의 상태와 디코딩을 시작하기 이전에 채널 인코더가 초기화되는 상태 사이에 1대1 관계가 있어야 한다.
테일 비팅 코드의 단점은 디코딩 복잡도가 상당히 증가한다는 것인데, 왜냐하면 그 디코딩이 원칙적으로 가능한 초기 상태 각각에 대해 수행되어야 하기 때문이다. 만일 그 코드가 32개의 가능한 상태(ν=5)를 가지면, 디코딩 복잡도는 인수 32로 증가된다. 채널 신호를 순환 방식으로 반복적으로 디코딩함으로써 복잡도를 감소시킬 수 있지만, 복잡도는 채널 디코더에 공지된 상태로 초기화된 코드에 대해 여전히 디코더의 복잡도의 수 배임을 보여주었다.
본 발명의 목적은 채널 디코더의 복잡도가 상당히 감소되는 서문에 따른 전송 시스템을 제공하는데 있다.
상기 목적을 성취하기 위하여, 본 발명에 따른 전송 시스템은 채널 디코더가 채널 신호가 한번 이상 처리된 후에 적절한 상태 시퀀스를 선택하고, 상기 적절한 상태 시퀀스로부터 상기 적절한 상태 시퀀스에 있는 이전 상태를 결정하도록 배열되는 것을 특징으로 하고, 및 상기 채널 디코더가 상기 이전 상태에 대응하는 상태로 종료하는 상태 시퀀스를 마지막 상태 시퀀스로 선택하도록 배열되는 것을 특징으로 한다.
본 발명은 적절한 상태 시퀀스로부터 결정된 이전 상태가 거의 항상 올바르다는 인식에 기초한다. 상기 이전 상태와 적합한 종료 상태 사이의 공지된 관계를 이용함으로써, 높은 신뢰성을 갖는 상기 종료 상태를 선택할 수 있게 된다. 위에서 언급된 바와 같이, 종료 상태는 이전 상태와 동일할 수 있으나, 종단 상태와 이전 상태 사이에 상이한 사전 결정된 관계가 또한 있을 수 있다. 상기 적절한 상태 시퀀스는 가장 유망한 상태 시퀀스인 것이 바람직하다. 이 상태는 가장 큰 가능성을 나타내는 가능성 측정값을 갖는다. 만일 마지막 상태와 이전 상태 사이의 상태 수가 충분히 크면, 각 상태는 이전 상태를 검색하기 위한 시작 지점으로 적절한 상태이다.
본 발명의 실시예는 채널 디코더가 주기적으로 확장된 채널 신호에 기초하여 소스 기호의 시퀀스에 있는 소스 기호의 수와 같은 상태 수 이상으로 그 상태 시퀀스를 확장하도록 배열되는 것을 특징으로 하고, 상기 채널 디코더가 확장된 상태 시퀀스의 종료 상태에 기초하여 마지막 상태 시퀀스를 선택하도록 배열되는 것을 특징으로 한다.
상태 시퀀스를 확장함으로써, 상태 시퀀스의 작은 확장만으로 검출의 신뢰성을 상당히 증가시킬 수 있게 된다. 본 발명에 따른 전송 시스템에서 검출 신뢰성을 상당히 증가시키기 위하여 상태 시퀀스의 적은 확장만이 요구된다는 것을 모의 실험은 보여주었다. 확장된 상태 시퀀스의 길이는 본 발명에 따른 측정값을 사용하지 않으면 기본 상태 시퀀스의 길이의 수 배가 될 것이라는 것을 알 수 있다.
본 발명의 다른 실시 예는 상태 시퀀스가 소스 기호의 시퀀스에 있는 소스 기호의 수와 같은 상태 수를 포함할 때 채널 디코더가 적절한 상태 시퀀스를 결정하도록 배열되는 것을 특징으로 한다.
가장 유망한 상태를 결정하기 위한 적절한 인스턴트(instant)는 상태 시퀀스에 있는 상태의 수가 소스 기호의 수와 같을 때라는 것을 모의 실험은 보여주었다.
본 발명의 바람직한 실시 예는 채널 인코더가 확장된 상태 시퀀스의 종료 상태로부터 적절한 상태 시퀀스를 결정하도록 배열되는 것을 특징으로 한다.
확장된 상태 시퀀스의 종료 상태로부터 가장 유망한 상태를 결정함으로써 디코더의 성능이 어떠한 복잡성도 부가하지 않고서 약간 향상될 수 있음을 모의 실험은 보여주었다.
본 발명의 또 다른 실시 예는 채널 디코더가 상기 상태로 종료하는 다수의 후보 상태 시퀀스의 가능성 측정값을 비교하여 상태 시퀀스를 선택함으로써 그 상태 시퀀스를 결정하도록 배열되고, 채널 디코더가 선택된 후보 시퀀스의 가능성 측정값과 버려진 후보 시퀀스의 가능성 측정값 사이의 상이한 측정값을 결정하도록 배열되고, 채널 디코더가 마지막 상태 시퀀스에 대해 상이한 측정값의 최소값을 결정하도록 배열되는 것을 특징으로 한다.
본 발명에 따른 채널 디코더에 있어서, 새로운 상태가 각 상태 시퀀스로부터 다수의 후보 상태 시퀀스를 생성함으로써 실제 상태 시퀀스에 추가되는데, 상기 후보 시퀀스 각각은 가능한 새로운 상태 중 하나로 끝난다. 가장 큰 가능성을 갖는 새로운 상태 시퀀스는 새로운 상태 각각에 대해 상기 새로운 상태로 인도하는 새로운 상태 시퀀스의 가능성을 비교함으로써 선택될 수 있다. 이 선택된 상태 시퀀스는 생존물(survivor)이라 불리워진다. 이 선택의 신뢰성을 위한 측정값은 생존물의 가능성과 기타 상태 시퀀스의 가능성 사이의 차이이다.
마지막으로 선택된 상태 시퀀스에 대응하는 상기 차이의 최소값을 선택함으로써, 상기 채널 기호의 시퀀스에 대한 전송 품질 측정값이 얻어진다.
본 발명의 또 다른 실시 예는 채널 디코더가 상태 시퀀스 각각에 대한 최소 차이 측정값을 계속 추적하도록 배열되는 것을 특징으로 한다.
최소 차이 측정값을 계속 추적함으로써, 최소 차이 측정값은 쉬운 방법으로 이용 가능하게 만들어질 수 있는데, 왜냐하면 최소 차이 측정값이 마지막으로 선택된 상태에 관련된 메모리 요소에 이미 존재하기 때문이다. 최소 차이 측정값을 계속 추적하기 위해, 가능한 상태 각각에 대해 단 하나의 메모리 요소만이 요구된다.
본 발명은 이제 도면을 참조하여 설명될 것이다.
도 1은 본 발명이 사용될 수 있는 전송 시스템을 도시한 도면.
도 2는 도 1에 따른 전송 시스템과 함께 사용하기 위한 프레임(frame) 포맷을 도시한 도면.
도 3은 본 발명에 따른 디코더에서 사용된 제 1 트렐리스(trellis)를 도시한 도면.
도 4는 본 발명에 따른 디코더에서 사용된 제 2 트렐리스를 도시한 도면.
도 5는 본 발명에 따른 채널 디코더를 구현하기 위한 프로그램 가능한 처리기를 위한 프로그램의 흐름도.
도 1에 따른 전송 시스템은 트랜스코더 및 속도 어댑터 유닛(TRAU : Transcoder and Rate Adapter Unit)(2), 베이스 트랜시버 스테이션(BTS : Base Transceiver Station)(4) 및 이동국(mobile station)(6)인 3개의 주요 요소를 포함한다. TRAU(2)는 A-비스(A-bis) 인터페이스(8)를 통하여 BTS(4)에 결합된다. BTS(4)는 무선 인터페이스(10)를 통하여 이동 유닛(6)에 결합된다.
여기서 이동 유닛(6)에 전송되는 음성 신호인 메인 신호는 음성 인코더(12)에 공급된다. 또한 소스 기호로 참조되는 인코드된 음성 신호를 운반하는 음성 인코더(12)의 제 1 출력은 A-비스 인터페이스(8)를 통하여 채널 인코더(14)에 결합된 다. 배경 잡음 레벨 표시자(BD)를 운반하는 음성 인코더(12)의 제 2 출력은 시스템 제어기(16)의 입력에 결합된다. 여기서 다운링크(downlink) 속도 배정 신호(RD)인, 코딩 특성을 운반하는 시스템 제어기(16)의 제 1 출력은 음성 인코더(12)에 결합되고, A-비스 인터페이스를 통하여 채널 인코더(14)에 있는 코딩 특성 설정 수단(15)에 결합되며, 여기에서 블록 코더(18)인 또 다른 채널 인코더에 결합된다. 업링크(uplink) 속도 배정 신호(RU)를 운반하는 시스템 제어기(16)의 제 2 출력은 채널 인코더(14)의 제 2 입력에 결합된다. 2 비트의 속도 배정 신호(RU)는 2개의 연속적인 프레임 상에 비트 단위로 전송된다. 속도 배정 신호(RD 및 RU)는 다운링크 및 업링크 전송 시스템을 각각 RD 및 RU로 표현된 코딩 특성상에서 동작시키기 위한 요청을 구성한다.
이동국(6)에 전송된 RD 의 값은 속도 배정 신호(RU)로 표시되는 것과 같은 코딩 특성의 사전 결정된 시퀀스를 블록 인코더(18), 채널 인코더(14) 및 음성 인코더(12) 상에 강제할 수 있는 코딩 특성 시퀀싱 수단(13)에 의해 지배될 수 있다. 이 사전 결정된 시퀀스는 전송 프레임에 추가적인 공간을 요구하지 않고도 추가적인 정보를 이동국(6)에 운반하기 위해 사용될 수 있다. 하나 이상의 코딩 특성의 사전 결정된 시퀀스가 사용될 수 있다. 코딩 특성의 사전 결정된 시퀀스 각각은 상이한 보조 신호 값에 대응한다.
시스템 제어기(16)는 업링크 및 다운링크에 대한 무선 인터페이스(10)(무선 채널)의 품질을 나타내는 품질 측정값(QU 및 QD)을 A-비스 인터페이스로부터 수신한다. 품질 측정값(QU)은 다수의 임계 레벨과 비교되고, 이 비교의 결과는 업링크의 음성 인코더(36) 및 채널 인코더(38) 사이의 가용 채널 용량을 분할하기 위하여 시스템 제어기(16)에 의해 사용된다. 신호(QD)는 저역 필터(22)에 의해 필터링되고, 다수의 임계값과 연속적으로 비교된다. 그 비교의 결과는 음성 인코더(12) 및 채널 인코더(14) 사이의 가용 채널 용량을 분할하기 위하여 사용된다. 업링크 및 다운링크를 위하여, 음성 인코더(12) 및 채널 인코더(14) 사이의 채널 용량 분할의 4개의 상이한 조합이 가능하다. 이들 가능성은 아래 표 1에 제시된다.
RX | R음성(k비트/초) | R채널 | R합계(k비트/초) |
0 | 5.5 | 1/4 | 22.8 |
1 | 8.1 | 3/8 | 22.8 |
2 | 9.3 | 3/7 | 22.8 |
3 | 11.1 | 1/2 | 22.8 |
0 | 5.5 | 1/2 | 11.4 |
1 | 7.0 | 5/8 | 11.4 |
2 | 8.1 | 3/4 | 11.4 |
3 | 9.3 | 6/7 | 11.4 |
음성 인코더(12)에 할당된 전송 속도 및 채널 인코더의 속도는 채널 품질에 따라 증가한다는 것을 표 1로부터 알 수 있다. 이것은 보다 좋은 채널 상태에서 채널 인코더가 보다 낮은 전송 속도를 사용하여 요구된 전송 품질(프레임 오류율)을 제공할 수 있기 때문에 가능하다. 채널 인코더의 보다 큰 속도에 의해 절약된 전송 속도는 보다 나은 음성 품질을 얻기 위하여 그 전송 속도를 음성 인코더(12)에 할당함으로써 이용된다. 코딩 특성이 여기서 채널 인코더(14)의 속도임을 알게된다. 코딩 특성 설정 수단(15)은 시스템 제어기(16)에 의해 공급된 코딩 특성에 따라 채널 인코더(14)의 속도를 설정하도록 배열된다.
불량 채널 상태 하에서, 채널 인코더는 요구된 전송 품질을 제공할 수 있기 위하여 낮은 속도를 가질 필요가 있다. 채널 인코더는 8비트의 CRC가 추가되는 음성 인코더(12)의 출력 비트를 인코드하는 가변 속도 상승 인코더일 것이다. 가변 속도는 상이한 기본 속도를 갖는 상이한 상승 코드를 사용함으로써 또는 고정 기본 속도를 갖는 상승 코드의 폐기를 사용함으로써 얻어질 수 있다. 이들 방법의 조합이 사용되는 것이 바람직하다.
아래에 제시된 표 2에서, 표 1에서 주어진 상승 코드의 특성이 제시된다. 이들 상승 코드 모두는 5인 값(ν)을 갖는다.
Pol/Rate | 1/2 | 1/4 | 3/4 | 3/7 | 3/8 | 5/8 | 6/7 |
G1=43 | 000002 | ||||||
G2=45 | 003 | 00020 | |||||
G3=47 | 001 | 301 | 01000 | ||||
G4=51 | 4 | 00002 | 101000 | ||||
G5=53 | 202 | ||||||
G6=55 | 3 | ||||||
G7=57 | 2 | 020 | 230 | ||||
G8=61 | 002 | ||||||
G9=65 | 1 | 110 | 022 | 02000 | 000001 | ||
G10=66 | |||||||
G11=67 | 2 | 000010 | |||||
G12=71 | 001 | ||||||
G13=73 | 010 | ||||||
G14=75 | 110 | 100 | 10000 | 000100 | |||
G15=77 | 1 | 00111 | 010000 |
표 2에서, 값(Gi)은 생성 다항식을 나타낸다. 생성 다항식{G(n)}은 아래 등 식에 따라 정의된다.
각 상이한 코드에 대해, 각 코드에 사용된 생성 다항식은 대응하는 셀(cell)에 있는 번호로 표시된다. 대응하는 셀에 있는 번호는 대응하는 생성 다항식이 처리되는 소스 기호의 번호를 표시한다. 게다가 상기 번호는 소스 기호의 시퀀스에 있는 상기 다항식을 사용하여 도출된 코드화된 기호의 위치를 표시한다. 각 디지트(digit)는 채널 기호, 즉 표시된 생성 다항식을 사용하여 도출된 채널 기호의 시퀀스에서의 위치를 표시한다. 속도 1/2 코드에 대해, 생성 다항식(57 및 65)이 사용된다. 각 소스 기호를 위해, 다항식(65)에 따라 계산된 채널 기호가 먼저 전송되고, 생성 다항식(57)에 따른 채널 기호가 두 번째로 전송된다. 유사한 방식으로, 속도 1/4 코드에 대한 채널 기호를 결정하기 위해 사용되는 다항식은 표 3으로부터 결정될 수 있다. 기타 코드는 펑쳐링된 상승 코드(punctured convolutional code)이다. 만일 표 3에 있는 디지트가 0이면, 대응하는 생성 다항식이 상기 특정 소스 기호를 위해 사용되지 않는다는 것을 의미한다. 몇 개의 생성 다항식이 각 소스 기호를 위해 사용되지 않는다는 것을 표 2로부터 알 수 있다. 표 2에 있는 번호의 시퀀스는 각각 1, 3, 5 또는 6보다 더 긴 입력 기호의 시퀀스에 대해 주기적으로 계속된다는 것을 알 수 있다.
표 1은 전속(full rate) 채널 및 반속(half rate) 채널을 위한 음성 인코더(12)의 전송 속도 및 채널 인코더(14)의 속도의 값을 제공한다는 것을 알 수 있다. 어떤 채널이 사용되는가에 대한 판단은 시스템 운영자에 의해 취해지고, 별도의 제어 채널(16) 상에 전송될 수 있는 대역외 제어 신호에 의해 TRAU(2), BTS(4) 및 이동국(6)에게 신호된다. 신호(RU)는 또한 채널 인코더(14)에 공급된다.
블록 코더(18)는 이동국(6)으로의 전송을 위해 선택된 속도(RD)를 인코드하기 위하여 존재한다. 이 속도(RD)는 2가지 이유에서 별도의 인코더에서 인코드된다. 첫 번째 이유는 상기 속도에 따라 인코드된 데이터가 채널 디코더(28)에 도착하기 이전에 이동국에 있는 채널 디코더(28)에게 새로운 속도(RD)를 알려주는 것이 바람직하다는 것이다. 두 번째 이유는 그 값(RD)이 채널 인코더(14)로 보호될 수 있는 것보다 전송 오류로부터 보다 더 보호되는 것이 요구된다는 것이다. 인코드된 RD 값의 오류 보정 특성을 보다 더 향상시키기 위하여, 코드워드는 별도의 플레임으로 전송되는 두 부분으로 분할된다. 이 코드워드 분할은 보다 긴 코드워드가 선택되도록 허용하고, 그 결과로 오류 보정 능력이 보다 개선된다.
만일 전속 채널이 사용되면, 블록 코더(18)는 2 비트로 표현되는 코딩 특성(RD)을 16 비트의 코드워드를 갖는 블록 코드에 따라 인코드되는 인코드된 코딩 특성으로 인코드한다. 만일 반속 채널이 사용되면, 8 비트의 코드워드를 갖는 블록 코드가 코딩 특성을 인코드하기 위해 사용된다. 사용된 코드워드는 아래 표 3 및 표 4에 제시된다.
RD[1] | RD[2] | C0 | C1 | C2 | C3 | C4 | C5 | C6 | C7 |
0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
0 | 1 | 0 | 0 | 1 | 1 | 1 | 1 | 0 | 1 |
1 | 0 | 1 | 1 | 0 | 1 | 0 | 0 | 1 | 1 |
1 | 1 | 1 | 1 | 1 | 0 | 1 | 1 | 1 | 0 |
RD[1] | RD[2] | C0 | C1 | C2 | C3 | C4 | C5 | C6 | C7 | C8 | C9 | C10 | C11 | C12 | C13 | C14 | C15 |
0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
0 | 1 | 0 | 0 | 1 | 1 | 1 | 1 | 0 | 1 | 0 | 0 | 1 | 1 | 1 | 1 | 0 | 1 |
1 | 0 | 1 | 1 | 0 | 1 | 0 | 0 | 1 | 1 | 1 | 1 | 0 | 1 | 0 | 0 | 1 | 1 |
1 | 1 | 1 | 1 | 1 | 0 | 1 | 1 | 1 | 0 | 1 | 1 | 1 | 0 | 1 | 1 | 1 | 0 |
전속 채널을 위해 사용된 코드워드가 반속 채널을 위해 사용된 코드워드를 반복함으로써 얻어지고, 그 결과로 오류 보정 특성이 개선된다는 것을 표 3 및 표 4로부터 알 수 있다. 반속 채널에서, 기호(C0 내지 C3)는 제 1 프레임에서 전송되고, 비트(C4 내지 C7)는 다음 프레임에서 전송된다. 전속 채널에서, 기호(C0 내지 C7)는 제 1 프레임에서 전송되고, 비트(C8 내지 C15)는 다음 프레임에서 전송된다.
채널 인코더(14) 및 블록 인코더(18)의 출력은 무선 인터페이스(10)를 거쳐 시분할 멀티플렉서에 전송된다. 그러나 몇몇 신호를 무선 인터페이스(10)를 거쳐 전송하기 위해 CDMA를 사용하는 것이 또한 가능하다. 이동국(6)에서, 무선 인터페이스(10)로부터 수신된 신호는 채널 디코더(28) 및 여기서 블록 디코더(26)인 또 다른 채널 디코더에 공급된다. 블록 디코더(26)는 코드워드(C0...CN)로 표시된 인코드된 코딩 특성을 디코딩함으로써 RD 비트로 표시된 코딩 특성을 도출하도록 배열되는데, 여기서 N은 반속 채널에 대해 7이고, 전속 채널에 대해 15이다.
블록 디코더(26)는 4개의 가능한 코드워드 및 자체 입력 신호 사이의 상호관계를 계산하도록 배열된다. 이러한 계산은 코드워드가 두 개의 연속적인 프레임으로 나누어서 전송되기 때문에 두 단계로 수행된다. 코드워드의 제 1 부분에 대응하는 입력 신호가 수신된 후에, 상기 가능한 코드워드의 제 1 부분 및 입력 값 사이의 상호관계 값은 계산되고, 저장된다. 코드워드의 제 2 부분에 대응하는 입력 신호가 다음 프레임에서 수신될 때, 가능한 코드워드의 제 2 부분 및 입력 신호 사이의 상호관계 값은 최종 상호관계 값을 얻기 위하여 계산되고, 이전에 저장된 상호관계 값에 더해진다. 전체 입력 신호에서 가장 큰 상호관계 값을 갖는 코드워드에 대응하는 RD의 값은 코딩 특성을 나타내는 수신된 코드워드로 선택되고, 블록 디코더(26)의 출력에 전달된다. 블록 디코더(26)의 출력은 채널 디코더(28)의 속도 및 음성 디코더(30)의 전송 속도를 신호(RD)에 대응하는 값으로 설정하기 위해 채널 디코더(28)에 있는 특성 설정 수단의 제어 입력 및 음성 디코더(30)의 제어 입력에 연결된다.
채널 디코더(28)는 자체 입력 신호를 디코드하고, 제 1 출력에서 인코드된 음성 신호를 음성 디코더(30)의 입력에 제공한다.
채널 디코더(28)는 제 2 출력에서 프레임의 잘못된 수신을 나타내는 신호{불 량 프레임 표시자(BFI : Bad Frame Indicator)}를 제공한다. 이 BFI 신호는 채널 디코더(28)에 있는 상승 디코더에 의해 디코드된 신호의 일부분에 대한 체크섬(checksum)을 계산하고, 그 계산된 체크섬을 무선 인터페이스(10)로부터 수신된 체크섬의 값과 비교함으로써 얻어진다.
음성 디코더(30)는 음성 인코더(12)의 음성 신호의 복사본(replica)을 채널 디코더(28)의 출력 신호로부터 도출하도록 배열된다. BFI 신호가 채널 디코더(28)로부터 수신된 경우에, 음성 디코더(30)는 이전 프레임에 대응하는 이전에 수신된 매개변수에 기초하여 음성 신호를 도출하도록 배열된다. 만일 복수의 후속 프레임이 불량 프레임으로 표시되면, 음성 디코더(30)는 자체 출력 신호를 없애도록 배열될 수 있다.
채널 디코더(28)는 제 3 출력에서 디코드된 신호(RU)를 제공한다. 신호(RU)는 여기에서 업링크의 전송 속도 설정인 코딩 특성을 표시한다. 신호(RU)는 프레임 당 1 비트(RQI 비트)를 포함한다. 디포매터(34)에서, 후속하는 프레임에서 수신된 2 비트는 2 비트로 표시되는 업링크를 위한 전송 속도 설정(RU')으로 조합된다. 업링크를 위해 사용되는 표 1에 따른 가능성 중 하나를 선택하는 이 전송 속도 설정(RU')은 음성 인코더(36)의 제어 입력, 채널 인코더(38)의 제어 입력, 및 여기서 블록 인코더(40)인 또 다른 채널 인코더의 입력에 공급된다. 만일 채널 디코더(28)가 BFI 신호를 내보냄으로써 불량 프레임이라는 신호를 보내면, 디코드된 신호(RU)는 업링크 속도를 설정하는데 사용되지 않는데, 왜냐하면 상기 디코드된 신호(RU)가 신뢰성이 없는 것으로 간주되기 때문이다.
채널 디코더(28)는 제 4 출력에서 품질 측정값(MMDd)을 제공한다. 이 측정값(MMD)은 비터비(Viterbi) 디코더가 채널 디코더에서 사용될 때 쉽게 도출될 수 있다. 이 품질 측정값은 제 1차 필터에 따라 처리 유닛(32)에서 필터링된다. 처리 유닛(32)에 있는 필터의 출력 신호에 대해 아래 등식이 성립될 수 있다.
채널 디코더(28)의 전송 속도 설정이 RD의 변경된 값에 응답하여 변경 완료된 후에, MMD'[n-1]의 값은 새로 설정된 전송 속도 및 전형적인 다운링크 채널 품질을 위해 필터링된 MMD의 장시간 평균에 대응하는 전형적인 값으로 설정된다. 이것은 상이한 전송 속도의 값 사이를 전환할 때 과도 현상을 감소시키기 위하여 처리된다.
상기 필터의 출력 신호는 2비트로 양자화되어 품질 표시자(QD)로 보내진다. 품질 표시자(QD)는 채널 인코더(38)의 제 2 입력에 공급된다. 2비트의 품질 표시자(QD)는 각 프레임의 1비트 위치를 사용하여 매 2 프레임마다 한번씩 전송된다.
이동국(6)에 있는 음성 인코더(36)에 공급되는 음성 신호는 인코드되고, 채널 인코더(38)에 전달된다. 채널 인코더(38)는 자체 입력 비트들에 대한 CRC 값을 계산하여, 그 CRC 값을 자체 입력 비트들에 더하고, 입력 비트 및 CRC 값의 조합을 표 1로부터 신호(RU')에 의해 선택된 상승 코드에 따라 인코드한다.
블록 인코더(40)는 표 3 또는 표 4에 따라 2비트로 표시된 신호(RU')를 반속 채널 또는 전속 채널 중 어떤 것이 사용되는가에 따라 인코드한다. 여기서 코드워드의 반절만이 프레임에 또한 전송된다.
이동국(6)에 있는 채널 인코더(38) 및 블록 인코더(40)의 출력 신호는 무선 인터페이스(10)를 거쳐 BTS(4)에 전송된다. BTS(4)에서, 블록 코드 신호(RU')는 여기에서 블록 디코더(42)인 또 다른 채널 디코더에 의해 디코드된다. 블록 디코더(42)의 동작은 블록 디코더(26)의 동작과 동일하다. 블록 디코더(42)의 출력에서, 신호(RU'')로 표시된 디코드된 코딩 특성은 이용 가능하다. 이 디코드된 신호(RU'')는 채널 디코더(44)에 있는 코딩 특성 설정 수단의 제어 입력에 공급되고, A-비스 인터페이스를 거쳐 음성 디코더(48)의 제어 입력에 전달된다.
BTS(4)에서, 무선 인터페이스(10)를 거쳐 수신된, 채널 인코더(38)로부터의 신호는 채널 디코더(44)에 공급된다. 채널 디코더(44)는 자체 입력 신호를 디코드하고, 그 디코드된 신호를 A-비스 인터페이스(8)를 거쳐 TRAU(2)에 전달한다. 채널 디코더(44)는 업링크의 전송 품질을 나타내는 품질 측정값(MMDu)을 처리 유닛(46)에 제공한다. 상기 처리 유닛(46)은 처리 유닛(32 및 22)에서 수행되는 필터링 연산과 유사한 필터링 연산을 수행한다. 결과적으로, 필터링 연산의 결과는 2비트로 양자화되어, A-비스 인터페이스(8)를 거쳐 TRAU(2)에 전송된다.
시스템 제어기(16)에서, 판단 유닛(20)은 업링크를 위해 사용되는 전송 속도 설정(RU)을 품질 측정값(QU)으로부터 결정한다. 정상 환경 하에서, 음성 코더에 할당된 채널 용량 부분은 채널 품질이 증가함에 따라 증가할 것이다. 속도(RU)는 2 프레임마다 한번 전송된다.
채널 디코더(44)로부터 수신된 신호(QD')는 시스템 제어기(16)에 있는 처리 유닛(22)에 전달된다. 처리 유닛(22)에서, 두 개의 연속되는 프레임에서 수신된 QD'를 나타내는 비트들은 조립되고, 그 신호(QD')는 처리 유닛(32)에 있는 저역 필터와 유사한 특성을 갖는 제 1차 저역 필터에 의해 필터링된다.
필터링된 신호(QD')는 다운링크 속도(RD)의 실제 값에 의존하는 2개의 임계값과 비교된다. 만일 필터링된 신호(QD')가 상기 임계값의 최저 아래로 떨어지면, 신호 품질은 속도(RD)에 비해 너무 낮고, 처리 유닛은 현재 속도보다 한 단계 더 낮은 속도로 전환한다. 만일 필터링된 신호(QD')가 상기 임계값의 최고를 초과하면, 신호 품질은 속도(RD)에 비해 너무 높고, 처리 유닛은 현재 속도보다 한 단계 더 높은 속도로 전환한다. 업링크 속도(RU)에 대해 취한 판단은 다운링크 속도(RD)에 대해 취한 판단과 유사하다.
다시, 정상 환경 하에서, 음성 코더에 할당된 채널 용량 부분은 채널 품질이 증가함에 따라 증가할 것이다. 특수한 환경 하에서, 신호(RD)는 재편성 신호를 이동국에 전송하기 위하여 또한 사용될 수 있다. 이 재편성 신호는 예를 들어 상이한 음성 인코딩/디코딩 및 또는 채널 코딩/디코딩 알고리즘이 사용되어야만 한다는 것을 나타낼 수 있다. 이 재편성 신호는 RD 신호의 특별히 사전결정된 시퀀스를 이용하여 인코드될 수 있다. RD 신호의 이 특별히 사전결정된 시퀀스는 이동국에 있는 확장 시퀀스 디코더(31)에 의해 인식되는데, 상기 확장 시퀀스 디코더(31)는 사전결정된 (확장) 시퀀스가 검출되었을 때, 재편성 신호를 영향받는 장치들에 보내도록 배열된다. 확장 시퀀스 디코더(31)는 RD 의 다음 값이 클록(clock)되는 시프트(shift) 레지스터를 포함할 수 있다. 시프트 레지스터의 내용을 사전결정된 시퀀스와 비교함으로써, 확장 시퀀스가 언제 수신되고, 가능한 확장 시퀀스 중 어느 것이 수신되었는가가 쉽게 검출될 수 있다.
인코드된 음성 신호를 나타내는 채널 디코더(44)의 출력 신호는 A-비스 인터페이스를 거쳐 TRAU(2)에 전송된다. TRAU(2)에서, 인코드된 음성 신호는 음성 디코더(48)에 공급된다. CRC 오류의 검출을 나타내는, 채널 디코더(44)의 출력에서 신호(BFI)는 A-비스 인터페이스(8)를 거쳐 음성 디코더(48)에 전달된다. 음성 디코더(48)는 음성 인코더(36)의 음성 신호의 복사본을 채널 디코더(44)의 출력 신호로부터 도출하도록 배열된다. BFI 신호가 채널 디코더(44)로부터 수신된 경우에, 음성 디코더(48)는 이전 프레임에 대응하는 이전에 수신된 신호에 기초하여 음성 신호를 음성 디코더(30)에 의해 처리된 것과 동일한 방법으로 도출하도록 배열된다. 만일 복수의 후속 프레임이 불량 프레임으로 표시되면, 음성 디코더(48)는 보다 향상된 오류 은폐 절차를 수행하도록 배열될 수 있다.
도 2는 본 발명에 따른 전송시스템에서 사용된 프레임 포맷을 도시한다. 음성 인코더(12 또는 36)는 전송 오류로부터 보호되어야 하는 C-비트의 그룹(60) 및 전송 오류로부터 보호될 필요가 없는 U-비트의 그룹(64)을 제공한다. 또 다른 시퀀스는 U-비트를 포함한다. 판단 유닛(20) 및 처리 유닛(32)은 위에 설명된 신호 전달 목적을 위해 프레임 당 1비트의 RQI(62)를 제공한다.
상기 비트의 조합은 채널 인코더(14 또는 38)에 공급되며, 이들은 먼저 RQI 비트 및 C-비트의 조합에 대한 CRC를 먼저 계산하고, C-비트(60) 뒤에 8개의 CRC 비트 및 RQI 비트(62)를 첨부한다. U-비트는 CRC 비트의 계산에 관여되지 않는다. C-비트(60)와 RQI 비트(62)의 조합(66) 및 CRC 비트(68)는 상승 코드에 따라 코드화된 시퀀스(70)로 인코드된다. 인코드된 기호는 코드화된 시퀀스(70)를 포함한다. U-비트는 변경없이 유지된다.
조합(66)에 있는 비트의 수는 아래 표 5에 표시된 바와 같이, 상승 인코더의 속도 및 사용된 채널의 유형에 종속적이다.
#비트/속도 | 1/2 | 1/4 | 3/4 | 3/7 | 3/8 | 5/8 | 6/7 |
전속 | 217 | 109 | 189 | 165 | |||
반속 | 105 | 159 | 125 | 174 |
코딩 특성을 나타내는 2개의 RA 비트들은 코드워드(74)로 인코드되는데, 상기 코드워드(74)는 이용 가능한 전송 용량(반속 또는 전속)에 종속적인 표 3 또는 표 4에 디스플레이된 코드에 따르는, 인코드된 코딩 특성을 나타낸다. 이 인코딩은 2 프레임에 한번만 수행된다. 코드워드(74)는 2 부분(76 및 78)으로 분할되고, 현재 프레임 및 다음 프레임에 전송된다.
도 3은 채널 기호의 시퀀스로부터 소스 기호의 시퀀스를 결정하기 위한 채널 디코더(28 및 44)에 사용되는 트렐리스의 예를 보여준다. 소스 기호는 상승 채널 인코더를 사용하여 인코드된다고 가정된다.
상승 인코더에서, 소스 기호의 시퀀스는 길이(ν)를 갖는 시프트(shift) 레지스터로 클록(clock)된다. 상승 인코더의 상태는 시프트 레지스터의 내용에 의해 정의된다. 만일 이진 상승 인코더가 사용되면, 상승 인코더의 가능한 상태의 수는 2ν이다. 채널 기호는 시프트 레지스터의 상이한 탭(taps)에서 이용 가능한 몇몇 기호를 모듈로(modulo)-2 연산을 사용하여 조합함으로써 얻어진다.
채널 디코더는 상태 시퀀스가 디코더에서 인코딩 처리를 하는 동안에 존재하기 때문에 그 상태 시퀀스를 추정하도록 배열된다. 이 추정은 경로 거리로 또한 불리워지는 가능성 측정값을 기초로 후보 상태 시퀀스를 결정함으로써 이루어진다. 이 경로 거리는 채널 신호 및 상기 후보 상태 시퀀스로부터 결정된다. 후보 시퀀스의 수는 채널 인코더에 있는 상태의 수와 같다.
디코딩 처리의 시작에서, 각 후보 시퀀스는 2ν 개의 상이한 상태 중 하나로 구성된다. 모든 상태의 가능성 측정값은 같은 값으로 설정된다. 채널 인코더의 초기 상태에 대응하는 채널 신호를 수신한 후에, 후보 시퀀스는 확장 후보 시퀀스를 작성함으로써 확장된다. 각 확장 후보 시퀀스는 가능한 새로운 상태 중 하나가 부가되는 시발 후보 시퀀스를 포함한다. 새로운 상태 각각에 대해, 상기 새로운 상태로 인도하는 모든 경로에 대한 경로 거리는 시발 상태의 경로 거리 및 시발 상태와 새로운 상태 사이의 천이에 대응하는 채널 신호 및 채널 기호로부터 결정되는 분기 거리로부터 계산된다.
디코딩 단계는 상기 경로 및 상기 새로운 상태로 인도하는 최적 경로에 대응하는 경로 거리만을 유지함으로써 종료된다.
도 3에 따른 트렐리스로 기술된 채널 디코더에서, 디코딩은 트렐리스가 N번 확장될 때까지 계속되는데, 여기서 N은 소스 기호의 수이다. 그 때에, 가장 큰 경로 거리를 갖는 상태는 이전 상태를 발견하기 위하여 역-추적 동작을 위한 시작 지점으로 사용되는데, 상기 이전 상태는 여기에서 상태 시퀀스의 ν차 확장(t=ν)인 상태(204)이다. 도 3에 따른 트렐리스로부터 t<ν에 대한 경로가 병합되는 것을 볼 수 있다. 상태(204)는 나중 사용을 위해 저장된다. t=N에서의 상태 이후에, 디코딩은 t=N+ν까지 계속된다. t=N+ν에서, 상태(206)는 t=N에서 저장된 이전 상태(204)에 대응하는 상태로 선택된다. 상태(206)에서, 최적 경로가 선택되고, 이 경로는 각 천이에서 소스 기호를 결정하기 위해 상태(204)로 역-추적된다. 소스 비트가 올바른 순서로 발견되지 않고, 소스 비트들이 ν개의 기호에 대해 순환 형태로 시프트되었음을 알 수 있다. ν개의 기호에 대해 소스 비트들을 뒤로 시프트함으로써, 올바른 순서가 복구될 수 있다.
이전 상태(204)를 발견하기 위하여 역-추적을 상태 시퀀스가 t=N+ν로 확장 될 때까지 지연시키는 것이 바람직하다. t=N+ν에서, 가장 큰 경로 거리를 갖는 상태가 선택되고, t=ν에서의 이전 상태(204)를 발견하기 위하여 역-추적 동작을 위한 시작 지점으로 사용된다. 결과적으로 상태(206)는 최종 상태로 선택되고, 상기 최종 상태는 소스 기호의 시퀀스를 결정하기 위해 사용된다.
도 4에서, 약간 변경된 디코더의 트렐리스가 도시된다. 이 트렐리스는 단지 t>ν에 대해서만 도 3에 따른 트렐리스와 다르다. t=N에서 가장 적합한 상태의 선택 및 이전 상태(204)를 발견하기 위한 후속 역-추적 이후에, 디코더는 트렐리스를 상태(206)에서 끝나도록 한다. 상태(208 및 210)는 더 이상 포함되지 않는데, 왜냐하면 상태(208 및 210)는 상태(206)로 인도할 수 없기 때문이다. 같은 이유로, 상태(212, 214 및 216)의 경로 거리는 결정되지 않는다.
도 5에 따른 흐름도에서, 번호가 부여된 블록은 아래 의미를 갖는다.
번호 인스크립션 의미
220 i:=0 소스 기호 포인터 및 채널 기호 색인이
j:=0 초기화된다.
222 i==N? i의 값이 N과 비교된다.
224 j:=0 채널 기호 색인이 0으로 재설정된다.
226 디펑쳐(depuncture) 디펑쳐링(depuncturing) 동작이 수행되고,
j:=j+f(i) 채널 기호 색인이 따라서 갱신된다.
228 분기 거리 계산 새로운 분기 거리가 계산된다.
230 i>mmdstart & i<mmdstop 소스 기호 포인터가 사전 결정된 범위 내에
있는지가 검사된다.
232 MMD 계산과 함께 ACS 최소 거리 간격의 결정을 포함하여, 더하기-비교-
선택(ACS: Add Compare Select) 연산이 수행된다.
234 MMD 계산없이 ACS ACS 연산이 수행된다.
236 생존물을 저장 ACS 연산으로부터 생긴 생존물이 저장된다.
238 i:=i+1 소스 기호 포인터가 증가된다.
240 i==N+ε? 소스 기호 포인터가 N+ε와 비교된다.
242 최적 상태를 발견 최적 상태가 선택된다.
244 s_max에서 s_0까지 이전 상태를 발견하기 위해 역-추적 동작이
N 단계를 역-추적 수행된다.
246 s_0=s_max ? 선택된 상태와 이전 상태가 비교된다.
248 s_0으로 설정된 상태(s_max)는 상태(s_0)와 같게 되고,
s_max로부터 N 단계를 이전 상태로의 역-추적 동작이 수행된다.
역-추적
250 소스 기호 및 MMD를 출력 소스 기호 및 대응하는 MMD가 출력에서
이용 가능하게 된다.
도 5의 흐름도에 따른 프로그램에서, 채널 신호는 채널 기호 기간으로 샘플링되고, 상기 채널 기호 샘플은 나중 사용을 위해 저장되는 것으로 가정된다. 펑쳐링된 상승 코드는 사용될 수 있다는 것을 또한 알 수 있다. 펑쳐링된 상승 코더에서, 사전 결정된 위치에 있는 채널 기호는 간단히 삭제된다. 대응하는 디코더에서, 채널 신호 값은 0으로 설정된다.
명령(220)에서, 소스 기호 포인터(i) 및 채널 기호 색인(j)은 0 값으로 설정된다. 명령(222)에서, 소스 기호 포인터(i)는 N과 비교된다. 만일 i가 N과 같으면, 길이(N)의 상태 시퀀스는 결정되었고, 모든 채널 신호 샘플이 한번 사용되었다. 인코딩 처리를 확장하기 위하여, 채널 신호의 제 1 샘플은 재사용되어야 한다. 이것은 채널 기호 색인을 0으로 재설정함으로써 얻어진다. 명령(226)에서, 다음에 수행될 분기 거리 계산에 사용될 채널 기호 샘플이 결정된다. 만일 펑쳐링된 상승 코드가 사용되면, 전송되지 않은 채널 기호에 대응하는 채널 신호 샘플은 0 값으로 설정된다.
명령(228)에서 분기 거리가 계산된다. 새로운 상태와 이전 상태의 가능한 조합 각각에 대해 대응하는 채널 기호가 표로부터 읽혀진다. 상기 새로운 상태와 이전 상태의 조합에 대응하는 분기 거리는 채널 신호 샘플과 표로부터 읽어들인 채널 기호 사이의 상호 관계 값을 계산함으로써 결정된다. 상호 관계 값의 계산을 위해 0의 기호 값은 -1로 표기되고, 1의 기호 값은 +1로 표기되는데, 왜냐하면 채널 신호 샘플의 이상적인 값이 +a 및 -a이기 때문이다. 디펑쳐링된 기호에 대응하는 채널 신호 샘플은 삭제를 나타내는 0으로 설정된다.
명령(230)에서, 소스 기호 포인터가 mmdstart와 mmdstop 사이의 범위에 놓여 있는지 검사된다. 값(mmdstart 및 mmdstop)은 전송 품질이 결정되는 트렐리스 내에서의 범위를 정의한다. 만일 i가 그 범위 밖으로 떨어지면, 프로그램은 더하기-비교-선택 동작을 수행하기 위해 명령(234)에서 계속된다.
새로운 상태 각각에 대해, 상기 새로운 상태로 종료하는 모든 경로의 경로 거리가 계산된다. 이것은 명령(234)에서 계산된 분기 거리를 대응하는 이전 상태의 상태 거리에 더함으로써 이루어진다. 다음에 상기 새로운 상태로 종료하는 상이한 경로의 경로 거리가 비교되고, 가장 큰 경로 거리를 갖는 경로가 선택된다. 다른 경로는 버려진다. 1/n 기본 코드로부터 도출된 이진 상승 코드의 경우에, 단 2개의 경로만이 각 새로운 상태로 끝난다. 이 더하기-비교-선택 동작은 각 새로운 상태에 대해 수행된다.
명령(232)에서 명령(234)에서와 동일한 연산이 수행되나, 이제 MMD 값이 또한 계산된다. 거리 차이(MD)는 새로운 상태로 종료하는 경합하는 경로의 2개의 경로 거리 사이의 차이이다. 경로의 MMD 값은 상기 경로 상에서 마주친 거리 차이(MD)의 최소 값이다. 최종적으로 선택된 경로의 MMD 값은 그 전송 품질을 위한 양호한 측정값이다. MMD를 결정하기 위한 구현 노력은 그리 많지 않다. 각 상태에 대한 MMD의 추적을 유지하기 위한 메모리만이 추가되어야 한다. 수행될 계산은 더하기-비교-선택 연산을 위해 또한 요구된다. 전송 품질을 위한 측정값으로서 MMD의 사용은 일반적으로 적절하다. MMD의 사용은 본 명세서에서 논의된 "테일 비팅(tail biting)" 또는 "영 테일링(zero tailing)" 코드에 한정되지 않는다.
명령(236)에서 잔존한 상태 시퀀스는 저장된다. 이것은 각 상태 천이에 대해 하나의 기호(단일 상태로 종료하는 2개의 가능 경로의 경우 1 비트)를 각 상태를 위해 저장함으로써 이루어진다. 이 기호는 그 상태 천이를 유일하게 정의한다. 그 기호의 값은 상기 천이에 대응하는 소스 기호와 동일하게 취해질 것이다.
명령(238)에서 소스 기호 포인터는 트렐리스의 다음 단계의 처리를 준비하기 위하여 증가된다.
명령(240)에서, 소스 기호 포인터(i)의 값은 N+ε값과 비교된다. ε값은 디코딩 복잡성과 디코딩 품질 사이의 절충물로 선택된다. ε에 대한 적절한 값이 ν임을 실험은 보여주었다. 복잡성을 감축하기 위해, ε을 상승 코드의 펑쳐링 기간의 배수로 만드는 것이 바람직할 수 있다. 모의 실험된 시스템에서 2ν와 2ν+2 사이의 ε값이 사용된다.
만일 i 값이 N+ε보다 적으면, 프로그램은 트렐리스의 다음 단계를 처리하기 위해 명령(222)에서 계속된다. 만일 i 값이 N+ε보다 적지 않으면, 프로그램은 명령(242)에서 계속된다. 명령(242)에서, 가장 큰 경로 거리를 갖는 상태는 최적의 마지막 상태로 선택된다.
명령(244)에서, 역-추적 동작은 이전 상태를 발견하기 위하여 수행된다. 이것은 이전 상태가 도달되기까지 선택된 경로를 지나간 상태를 반복적으로 재작성함으로써 이루어진다. 이것을 위해 선택된 경로와 함께 저장된 (소스) 기호의 사용이 이루어진다. 경로에 따라 저장된 이들 기호는 별도로 저장된다.
명령(246)에서, 명령(242)에서 선택된 최적의 마지막 상태는 명령(244)에서 발견된 이전 상태와 비교된다. 만일 양쪽 상태가 같으면, 프로그램은 명령(250)에서 계속한다. 만일 양쪽 상태가 다르면, 이전 상태로 발견된 상태는 명령(248)에서 마지막 상태로 선택되고, 모든 소스 기호를 결정하기 위하여 이전 상태까지 역-추적이 수행된다.
명령(250)에서, 재작성된 소스 시퀀스는 마지막으로 선택된 최종 상태에 관련된 MMD 값과 함께 소스 인코더의 출력에 전달된다.
본 발명은 여기에서 기술된 특정 실시예에 한정되도록 의도된 것이 아니고, 다만 여기에서 기술된 원리와 새로운 특성에 일치하는 가장 넓은 범주로 용인되어야 한다.
상술한 바와 같이, 본 발명은 채널 디코더의 복잡도가 상당히 감소되는 전송 시스템을 제공하는데 이용된다.
상술한 바와 같이, 본 발명은 채널 디코더의 복잡도가 상당히 감소되는 전송 시스템을 제공하는데 이용된다.
Claims (10)
- 소스 기호의 시퀀스를 채널 기호의 시퀀스로 인코딩하기 위한 채널 인코더를 구비하는 전송기를 포함하는 전송 시스템으로서, 상기 채널 인코더는 소스 기호의 상기 시퀀스를 인코드한 후에 상기 채널 인코더의 최종 상태에 대응하는 상태로 초기화되고, 상기 전송기가 상기 채널 기호를 나타내는 채널 신호를 수신기에 전송하도록 배열되고, 상기 수신기가 상기 상태 시퀀스의 가능성을 나타내는 대응하는 가능성 측정값으로 복수의 상태 시퀀스를 계속 추적함으로써 상기 채널 기호를 나타내는 채널 신호로부터 소스 기호의 상기 시퀀스를 도출하기 위한 채널 디코더를 포함하는 전송기를 포함하는 전송 시스템에 있어서,상기 채널 신호가 적어도 한번 처리된 후에 상기 채널 디코더가 적절한 상태 시퀀스를 선택하고, 상기 적절한 상태 시퀀스로부터 상기 적절한 상태 시퀀스에 있는 이전 상태를 결정하도록 배열되고,상기 채널 디코더는 상기 이전 상태에 대응하는 상태로 종료하는 상태 시퀀스를 마지막 상태 시퀀스로 선택하도록 배열되고,상기 채널 디코더는 상기 상태로 종료하는 복수의 후보 상태 시퀀스의 가능성 측정값을 비교하여 상기 상태 시퀀스를 선택함으로써 상기 상태 시퀀스를 결정하도록 배열되고,상기 채널 디코더가 상기 선택된 후보 시퀀스의 가능성 측정값과 상기 버려진 후보 시퀀스의 가능성 측정값 사이의 차이 측정값을 결정하도록 배열되고,상기 채널 디코더가 상기 마지막 상태 시퀀스에 대해 상기 차이 측정값의 최소값을 결정하도록 배열되는것을 특징으로 하는, 전송기를 포함하는 전송 시스템.
- 제 1항에 있어서, 상기 채널 디코더는 주기적으로 확장된 채널 신호를 기초로 소스 기호의 시퀀스에 있는 소스 기호의 수와 같은 상태 수 이상으로 상기 상태 시퀀스를 확장하도록 배열되고, 및상기 채널 디코더가 상기 확장된 상태 시퀀스의 종료하는 상태를 기초로 상기 마지막 상태 시퀀스를 선택하도록 배열되는 것을 특징으로 하는, 전송기를 포함하는 전송 시스템.
- 제 2항에 있어서, 상기 채널 디코더는 상기 상태 시퀀스가 소스 기호의 시퀀스에 있는 소스 기호의 수와 같은 상태 수를 포함할 때 상기 적절한 상태 시퀀스를 결정하도록 배열되는 것을 특징으로 하는, 전송기를 포함하는 전송 시스템.
- 제 2항에 있어서, 상기 채널 인코더는 상기 확장된 상태 시퀀스의 종료 상태로부터 상기 적절한 상태 시퀀스를 결정하도록 배열되는 것을 특징으로 하는, 전송기를 포함하는 전송 시스템.
- 삭제
- 제 1항에 있어서, 상기 채널 디코더는 상기 상태 시퀀스 각각에 대한 최소 차이 측정값을 계속 추적하도록 배열되는 것을 특징으로 하는, 전송기를 포함하는 전송 시스템.
- 소스 기호로부터 도출된 채널 기호의 시퀀스를 수신하기 위한 수신기로서, 상기 수신기는 상기 상태 시퀀스의 가능성을 나타내는 대응하는 가능성 측정값으로 복수의 상태 시퀀스를 계속 추적함으로써 상기 채널 기호를 나타내는 채널 신호로부터 상기 소스 기호를 도출하기 위한 채널 디코더를 포함하는, 채널 기호의 시퀀스를 수신하기 위한 수신기에 있어서,상기 채널 신호가 적어도 한번 처리된 후에 상기 채널 디코더가 적절한 상태 시퀀스를 선택하고, 상기 적절한 상태 시퀀스로부터 상기 상태 시퀀스에 있는 이전 상태를 결정하도록 배열되고,상기 채널 디코더가 상기 이전 상태에 대응하는 상태로 종료하는 상태 시퀀스를 마지막 상태 시퀀스로 선택하도록 배열되고,상기 채널 디코더는 상기 상태로 종료하는 복수의 후보 상태 시퀀스의 가능성 측정값을 비교하여 상기 상태 시퀀스를 선택함으로써 상기 상태 시퀀스를 결정하도록 배열되고,상기 채널 디코더가 상기 선택된 후보 시퀀스의 가능성 측정값과 상기 버려진 후보 시퀀스의 가능성 측정값 사이의 차이 측정값을 결정하도록 배열되고,상기 채널 디코더가 상기 마지막 상태 시퀀스에 대해 상기 차이 측정값의 최소값을 결정하도록 배열되는것을 특징으로 하는, 채널 기호의 시퀀스를 수신하기 위한 수신기.
- 상태 시퀀스의 가능성을 나타내는 대응하는 가능성 측정값으로 복수의 상태 시퀀스를 계속 추적함으로써 채널 기호의 시퀀스를 나타내는 채널 신호로부터 소스 기호를 도출하기 위한 채널 디코더에 있어서,상기 채널 신호가 적어도 한번 처리된 후에 상기 채널 디코더는 상기 상태의 가능성 측정값에 기초하여 적절한 상태 시퀀스를 선택하고, 상기 적절한 상태 시퀀스로부터 상기 상태 시퀀스에 있는 이전 상태를 결정하도록 배열되고,상기 채널 디코더가 상기 이전 상태에 대응하는 상태로 종료하는 상태 시퀀스를 마지막 상태 시퀀스로 선택하도록 배열되고,상기 채널 디코더는 상기 상태로 종료하는 복수의 후보 상태 시퀀스의 가능성 측정값을 비교하여 상기 상태 시퀀스를 선택함으로써 상기 상태 시퀀스를 결정하도록 배열되고,상기 채널 디코더가 상기 선택된 후보 시퀀스의 가능성 측정값과 상기 버려진 후보 시퀀스의 가능성 측정값 사이의 차이 측정값을 결정하도록 배열되고,상기 채널 디코더가 상기 마지막 상태 시퀀스에 대해 상기 차이 측정값의 최소값을 결정하도록 배열되는것을 특징으로 하는, 채널 신호로부터 소스 기호를 도출하기 위한 채널 디코더.
- 소스 기호의 시퀀스를 채널 기호의 시퀀스로 인코딩하는 단계, 소스 기호의 상기 시퀀스를 인코드한 후에 채널 인코더를 상기 채널 인코더의 마지막 상태에 대응하는 상태로 초기화하는 단계, 상기 채널 기호를 나타내는 채널 신호를 수신기에 전송하는 단계, 채널 신호를 수신하는 단계, 상기 상태 시퀀스의 가능성을 나타내는 대응하는 가능성 측정값으로 복수의 상태 시퀀스를 계속 추적함으로써 상기 채널 기호를 나타내는 상기 채널 신호로부터 상기 소스 기호를 도출하는 단계를 포함하는 전송 방법에 있어서,상기 채널 신호가 적어도 한번 처리된 후에 적절한 상태 시퀀스를 선택하는 단계,상기 적절한 상태 시퀀스로부터 상기 상태 시퀀스에 있는 이전 상태를 결정하는 단계, 및상기 이전 상태에 대응하는 상태로 종료하는 상기 상태 시퀀스를 마지막 상태 시퀀스로 선택하는 단계를 포함하며,상기 채널 디코더는 상기 상태로 종료하는 복수의 후보 상태 시퀀스의 가능성 측정값을 비교하여 상기 상태 시퀀스를 선택함으로써 상기 상태 시퀀스를 결정하도록 배열되고,상기 채널 디코더는 상기 선택된 후보 시퀀스의 가능성 측정값과 상기 버려진 후보 시퀀스의 가능성 측정값 사이의 차이 측정값을 결정하도록 배열되고,상기 채널 디코더가 상기 마지막 상태 시퀀스에 대해 상기 차이 측정값의 최소값을 결정하도록 배열되는것을 특징으로 하는, 전송 방법.
- 상태 시퀀스의 가능성을 나타내는 대응하는 가능성 측정값으로 복수의 상태 시퀀스를 계속 추적함으로써 채널 기호의 시퀀스를 나타내는 채널 신호로부터 소스 기호를 도출하기 위한 디코딩 방법에 있어서,상기 채널 신호가 적어도 한번 처리된 후에 적절한 상태 시퀀스를 선택하는 단계, 상기 가장 유망한 상태로부터 상기 상태 시퀀스에 있는 이전 상태를 결정하는 단계를 포함하고,상기 이전 상태에 대응하는 상태로 종료하는 상기 상태 시퀀스를 마지막 상태 시퀀스로 선택하는 단계를 포함하고,상기 채널 디코더는 상기 상태로 종료하는 복수의 후보 상태 시퀀스의 가능성 측정값을 비교하여 상기 상태 시퀀스를 선택함으로써 상기 상태 시퀀스를 결정하도록 배열되고,상기 채널 디코더는 상기 선택된 후보 시퀀스의 가능성 측정값과 상기 버려진 후보 시퀀스의 가능성 측정값 사이의 차이 측정값을 결정하도록 배열되고,상기 채널 디코더가 상기 마지막 상태 시퀀스에 대해 상기 차이 측정값의 최소값을 결정하도록 배열되는것을 특징으로 하는, 디코딩 방법.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP98201738 | 1998-05-26 | ||
EP98201738.6 | 1998-05-26 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20010022247A KR20010022247A (ko) | 2001-03-15 |
KR100710743B1 true KR100710743B1 (ko) | 2007-04-24 |
Family
ID=8233762
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020007000820A KR100710743B1 (ko) | 1998-05-26 | 1999-05-20 | 간이 채널 디코더를 구비하는 전송 시스템 및 이 시스템의 운영 방법 |
Country Status (7)
Country | Link |
---|---|
US (1) | US6304612B1 (ko) |
EP (1) | EP1008237A2 (ko) |
JP (1) | JP2002517120A (ko) |
KR (1) | KR100710743B1 (ko) |
CN (1) | CN1272254A (ko) |
TW (1) | TW377427B (ko) |
WO (1) | WO1999062185A2 (ko) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2627008A3 (en) | 2000-12-29 | 2013-09-11 | Intel Mobile Communications GmbH | Channel codec processor configurable for multiple wireless communications standards |
US6871270B2 (en) * | 2001-12-03 | 2005-03-22 | Samsung Electronics Co., Ltd. | Device and method for minimizing puncturing-caused output delay |
GB2383506A (en) * | 2001-12-21 | 2003-06-25 | Ubinetics Ltd | Trellis decoding in parallel where extra trellis sections are appended |
US7522678B2 (en) * | 2002-04-18 | 2009-04-21 | Infineon Technologies Ag | Method and apparatus for a data-dependent noise predictive viterbi |
US7213196B2 (en) * | 2003-02-04 | 2007-05-01 | International Business Machines Corporation | Method and system for indexing a decoder |
US8375280B2 (en) * | 2007-11-02 | 2013-02-12 | Telefonaktiebolaget L M Ericsson (Publ) | Optimum distance spectrum feedforward tail-biting convolutional codes |
JP4806673B2 (ja) * | 2007-12-27 | 2011-11-02 | ルネサスエレクトロニクス株式会社 | 復号装置及び復号方法 |
FR2927206B1 (fr) * | 2008-02-04 | 2014-02-14 | Groupe Des Ecoles De Telecommunications Get Ecole Nationale Superieure Des Telecommunications Enst | Procede de decodage d'un signal transmis dans un systeme multi-antennes, produit programme d'ordinateur et dispositif de decodage correspondants. |
US10425108B2 (en) | 2016-06-13 | 2019-09-24 | Qualcomm Incorporated | Tailless convolutional codes |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0529718A1 (fr) * | 1991-08-21 | 1993-03-03 | Laboratoires D'electronique Philips S.A.S. | Système de transmission de signaux numériques à codes en cascade et récepteur et décodeur mis en oeuvre dans ledit système |
WO1997024849A1 (en) * | 1995-12-27 | 1997-07-10 | Ericsson Inc. | Method and apparatus for symbol decoding using a variable number of survivor paths |
US9724849B2 (en) * | 2012-11-30 | 2017-08-08 | Microcontinuum, Inc. | Fluid application method for improved roll-to-roll pattern formation |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5349589A (en) * | 1991-07-01 | 1994-09-20 | Ericsson Ge Mobile Communications Inc. | Generalized viterbi algorithm with tail-biting |
US5369671A (en) * | 1992-05-20 | 1994-11-29 | Hughes Aircraft Company | System and method for decoding tail-biting code especially applicable to digital cellular base stations and mobile units |
US5355376A (en) * | 1993-02-11 | 1994-10-11 | At&T Bell Laboratories | Circular viterbi decoder |
JP3233847B2 (ja) * | 1996-02-23 | 2001-12-04 | 沖電気工業株式会社 | ビタビ復号方法及びビタビ復号回路 |
US5721746A (en) * | 1996-04-19 | 1998-02-24 | General Electric Company | Optimal soft-output decoder for tail-biting trellis codes |
US5920597A (en) * | 1996-09-16 | 1999-07-06 | Ericsson Inc. | Decoding technique for tail biting codes |
US5881073A (en) * | 1996-09-20 | 1999-03-09 | Ericsson Inc. | Convolutional decoding with the ending state decided by CRC bits placed inside multiple coding bursts |
US6161210A (en) * | 1998-04-03 | 2000-12-12 | Lucent Technologies Inc. | List Viterbi algorithms for tailbiting convolutional codes |
-
1998
- 1998-05-29 TW TW087108469A patent/TW377427B/zh active
-
1999
- 1999-05-20 JP JP2000551488A patent/JP2002517120A/ja not_active Withdrawn
- 1999-05-20 WO PCT/IB1999/000925 patent/WO1999062185A2/en not_active Application Discontinuation
- 1999-05-20 KR KR1020007000820A patent/KR100710743B1/ko not_active IP Right Cessation
- 1999-05-20 EP EP99918241A patent/EP1008237A2/en not_active Withdrawn
- 1999-05-20 CN CN99800838A patent/CN1272254A/zh active Pending
- 1999-05-24 US US09/316,985 patent/US6304612B1/en not_active Expired - Lifetime
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0529718A1 (fr) * | 1991-08-21 | 1993-03-03 | Laboratoires D'electronique Philips S.A.S. | Système de transmission de signaux numériques à codes en cascade et récepteur et décodeur mis en oeuvre dans ledit système |
WO1997024849A1 (en) * | 1995-12-27 | 1997-07-10 | Ericsson Inc. | Method and apparatus for symbol decoding using a variable number of survivor paths |
US9724849B2 (en) * | 2012-11-30 | 2017-08-08 | Microcontinuum, Inc. | Fluid application method for improved roll-to-roll pattern formation |
Non-Patent Citations (2)
Title |
---|
1020007000820 - 699820 * |
9724849 * |
Also Published As
Publication number | Publication date |
---|---|
KR20010022247A (ko) | 2001-03-15 |
EP1008237A2 (en) | 2000-06-14 |
JP2002517120A (ja) | 2002-06-11 |
WO1999062185A2 (en) | 1999-12-02 |
CN1272254A (zh) | 2000-11-01 |
WO1999062185A3 (en) | 2000-01-27 |
TW377427B (en) | 1999-12-21 |
US6304612B1 (en) | 2001-10-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6094465A (en) | Method and apparatus for performing decoding of CRC outer concatenated codes | |
KR20000010748A (ko) | 점재된에러검출비트를이용한데이터통신시스템및방법 | |
KR100605053B1 (ko) | 적응 채널 인코더 및 디코더를 구비한 전송 시스템, 및 이 시스템의 운영방법 | |
US6452985B1 (en) | Viterbi decoding apparatus and Viterbi decoding method | |
US20030193971A1 (en) | Transmission system for transmitting a main signal and an auxiliary signal | |
KR20070065402A (ko) | 압축된 차 펑처링 패턴을 이용한 펑처링/디펑처링 | |
JP2001007784A (ja) | データ伝送方法、データ伝送システム、送信装置および受信装置 | |
KR100710743B1 (ko) | 간이 채널 디코더를 구비하는 전송 시스템 및 이 시스템의 운영 방법 | |
US5822340A (en) | Method for decoding data signals using fixed-length decision window | |
US6460158B1 (en) | Transmission system with adaptive channel encoder and decoder | |
CN113541871B (zh) | 一种生成码字的方法及编解码器 | |
JP3445279B6 (ja) | データ伝送方法,データ伝送システムおよび送信装置,受信装置 | |
JP2591011B2 (ja) | 逐次復号法を用いた通信回線の回線品質推定方式 | |
KR100811376B1 (ko) | 통신시스템에서의 부호화 및 복호화 방법 | |
JP3445279B2 (ja) | データ伝送方法,データ伝送システムおよび送信装置,受信装置 | |
JP2004260391A (ja) | 畳み込み符号の最尤復号器および最尤復号方法 | |
MXPA98009332A (en) | Method for decoding data signals using length decision window f |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20120409 Year of fee payment: 6 |
|
FPAY | Annual fee payment |
Payment date: 20130404 Year of fee payment: 7 |
|
LAPS | Lapse due to unpaid annual fee |