KR100468249B1 - 인터리브 어드레스 생성 장치, 터보 부호화 장치, 터보 복호화 장치, 통신 단말 장치, 기지국 장치 및 인터리브 어드레스 생성 방법 - Google Patents

인터리브 어드레스 생성 장치, 터보 부호화 장치, 터보 복호화 장치, 통신 단말 장치, 기지국 장치 및 인터리브 어드레스 생성 방법 Download PDF

Info

Publication number
KR100468249B1
KR100468249B1 KR10-2001-7007055A KR20017007055A KR100468249B1 KR 100468249 B1 KR100468249 B1 KR 100468249B1 KR 20017007055 A KR20017007055 A KR 20017007055A KR 100468249 B1 KR100468249 B1 KR 100468249B1
Authority
KR
South Korea
Prior art keywords
output
value
row
column
address
Prior art date
Application number
KR10-2001-7007055A
Other languages
English (en)
Other versions
KR20010080700A (ko
Inventor
이케다데츠야
야마나카류타로
Original Assignee
마츠시타 덴끼 산교 가부시키가이샤
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 마츠시타 덴끼 산교 가부시키가이샤 filed Critical 마츠시타 덴끼 산교 가부시키가이샤
Publication of KR20010080700A publication Critical patent/KR20010080700A/ko
Application granted granted Critical
Publication of KR100468249B1 publication Critical patent/KR100468249B1/ko

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/27Coding, 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 using interleaving techniques
    • H03M13/2771Internal interleaver for turbo codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/27Coding, 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 using interleaving techniques
    • H03M13/2703Coding, 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 using interleaving techniques the interleaver involving at least two directions
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/27Coding, 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 using interleaving techniques
    • H03M13/2703Coding, 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 using interleaving techniques the interleaver involving at least two directions
    • H03M13/271Row-column interleaver with permutations, e.g. block interleaving with inter-row, inter-column, intra-row or intra-column permutations
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/27Coding, 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 using interleaving techniques
    • H03M13/2735Interleaver using powers of a primitive element, e.g. Galois field [GF] interleaver

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

카운터 제어부(101)에서 행렬 2 차원 배열로 표시되는 블록 인터리브에 대하여 2 차원 배열의 행 번호와 열 번호를 증가시켜, 판독된 어드레스값으로서 출력하고, 비트 반전 장치(102)에서 그 판독된 어드레스 값을 입력으로서 비트 반전을 행하고, 열 변환 장치(103)에서 그 비트 반전 출력 값과 카운터 제어부(101)로부터의 열 번호에 대응하는 어드레스값을 열 변환값으로서 출력하고, 카운터(104)에서 비트 반전 장치(102)의 출력값을 비트 시프트하여 어드레스 오프셋값으로서 출력하고, 가산기(105)에서 그 어드레스 오프셋값과 열 교환값을 가산하고, 대소 비교부(106)에서 그 가산값을 인터리브 사이즈와 비교하여, 인터리브 사이즈 내의 데이터를 어드레스값으로서 출력한다.

Description

인터리브 어드레스 생성 장치, 터보 부호화 장치, 터보 복호화 장치, 통신 단말 장치, 기지국 장치 및 인터리브 어드레스 생성 방법{INTERLEAVE ADDRESS GENERATING DEVICE AND INTERLEAVE ADDRESS GENERATING METHOD}
종래, 인터리브 어드레스 생성 장치 및 인터리브 어드레스 생성 방법으로서는, 일본국 특허공개 평성 제7-212250호 공보에 기재되어 있는 것 등이 있다.
현재, 제 3 세대통신 시스템의 세계 표준화의 움직임이 진행되고 있는 중, 인터리브에 관한 표준화안이 제안되어 있고, GF 인터리브는, 현재 검토되고 있는 인터리브 방법 중 하나이다.
이 GF 인터리브는 행수 N=2r, 열수 M=2c인 이차원 배열 상에서 처리하는 블록 인터리브 중 하나이다. GF 인터리브는, 제 1번째 행부터 순차적으로 N 번째 행까지 각 행마다 구분된 길이 M의 비트 계열에 대하여 다른 순서로 비트를 교체하고(이후, 열 교환이라고 부른다), 또한 비트 반전법에 의한 순서대로 행을 교환한 행렬에 대하여, 제 1 번째 열의 제 1번째 행으로부터 각 열을 위에서 밑으로 진행하여 제 M 번째 열의 제 N 번째 행까지 판독함으로써, 인터리브 어드레스 패턴을 생성하는 방식이다.
상기 블록 사이즈의 행렬 2 차원 배열에 있어서, 열 변환 패턴 πi(j)를 산출하여 인터리브 어드레스 패턴을 생성하는 예에 대하여 설명한다.
도 1은, 종래의 GF 인터리브에 이용되는 열 교환 장치의 구성을 나타내는 블록도이다.
도 1에 있어서, 메모리(11)는 입력된 행 번호 i(0≤i<N)에 대응하는 벡터 αi0을 배타적 논리합 연산기(13)에 출력한다. 메모리(12)는 입력된 열 번호를 j(0≤j<M)에 대응하는 벡터 αj를 배타적 논리합 연산기(13)에 출력한다. 배타적 논리합 연산기(13)는 αi0와 αj의 배타적 논리합을 계산하여, 계산 결과 β를 메모리(14)에 출력한다.
메모리(14)는 계산 결과 β에 근거하여 제 i 번째 행에 대한 열 변환 패턴πi(j)를 출력한다. πi(j)는 하기의 수학식 1에 의해서 구해진다.
또한, 메모리(11), 메모리(12), 및 메모리(14)에 있어서의 변환은, 도 2에도시된 변환 테이블을 이용하여 이루어진다.
도 2는 GF 인터리브에 이용되는 변환 테이블을 도시하는 도면이다.
도 2에 있어서, 변환 테이블은 갈로아체의 멱 표현의 멱수와, 갈로아체의 다항식 기저에 의한 벡터 표현을 대응시킨 테이블이다.
벡터 표현은, 메모리(11) 및 메모리(12)에서 출력되는 벡터이며, 메모리(14)에서 입력되는 벡터이다. 멱 표현의 멱 수 1ogαβ는 메모리(11) 및 메모리(12)에 서 입력되는 값이며, 메모리(14)에서 출력되는 값이다.
여기서, 제 i 번째 행의 열 변환 패턴은, 이하에 나타내는 동작에 의해서 구한다. 메모리(11)에서 행 번호 i에 대응하는 파라메터 i0을 구함으로써, 파라메터 i0에 대응하는 벡터 αi0이 출력된다. 배타적 논리합 연산기(13)에서 메모리(11)와 메모리(12)로부터 출력된 αi0과 αj의 배타적 논리합을 계산하여, 메모리(14)에서 계산 결과 β에 대응하는 logαβ가 출력된다.
메모리(11)의 어드레스값 i를 고정시켜, 메모리(12)의 어드레스값 j를 0부터 증가시킴으로써 제 i 번째 행에 대한 열 변환 패턴 πi(j)가 생성된다.
다음에 인터리브 어드레스 생성의 예를 나타낸다.
도 3a, 도 3b, 도 3c 및 도 3d는, 인터리브 어드레스 생성 과정을 도시한 도면이다.
이하, 8×4의 이차원 배열 상에서 사이즈가 30인 인터리브 어드레스 패턴을작성하는 예에 대하여 설명한다.
처음에, 인터리브 어드레스 생성 장치는 메모리 상에 0으로부터 7의 어드레스를 재배열한 인터리브 어드레스 패턴을 메모리 상의 열 방향(i=0, j=0∼7)에 저장한다.
마찬가지로, 인터리브 어드레스 생성 장치는 다른 재배열 쪽에서 0으로부터 7의 어드레스를 재배열한 인터리브 어드레스 패턴을 메모리 상의 다음 행 이후(i=1∼3, j=0∼7)에 각각 저장한다. 저장한 결과를 도 3a에 나타낸다.
다음에, 인터리브 어드레스 생성 장치는 행 단위의 재배열 처리를 한다. 구체적으로는, i=1의 행과 i=2의 행을 교체한다. 교체한 결과를 도 3b에 나타낸다.
다음에, 인터리브 어드레스 생성 장치는 저장한 값에 행 단위로 오프셋 어드레스를 가산한다. 구체적으로는, i의 값에 열 성분의 수를 승산한 값을 가산한다. 예컨대, 2 번째 행의 값에는 i의 값 2에 성분의 수 8을 승산한 값 16을 각각 가산한다. 3 번째 행의 값에는 i의 값 1에 성분의 수 8을 승산한 값 8을 각각 가산한다. 4 번째 행의 값에는 i의 값 3에 성분의 수 8를 승산한 값 24를 각각 가산한다. 가산 결과를 도 3c에 나타낸다.
다음에, 인터리브 어드레스 생성 장치는 열 방향으로 어드레스를 메모리로부터 취출하여, 작성할 인터리브 어드레스 패턴의 사이즈보다 작은 어드레스만을 출력한다. 구체적으로는, 도 3c에서 i=0, j=0에 저장되어 있는 값 7을 출력하고, 다음에 i=2, j=0에 저장되어 있는 값 20, i=1, j=0에 저장되어 있는 값 14, i=3, j=0에 저장되어 있는 값 29를 출력한다. 그 후, i=0, j=1에 저장되어 있는 값 3을 출력하고, 다음에 i=2, j=1에 저장되어 있는 값 22, i=1, j=1에 저장되어 있는 값12, i=3, j=1에 저장되어 있는 값 26을 출력한다. 마찬가지로, 인터리브 어드레스 생성 장치는 메모리에 저장된 값을 열 방향의 순서대로 출력하여, 인터리브 어드레스 패턴으로서 출력한다. 도 3d에 출력된 인터리브 어드레스 패턴을 나타낸다.
그러나, 종래의 인터리브 어드레스 생성 방법에서는, 소정 단위로 생성되는 인터리브 어드레스 패턴을 메모리에 전개한 후, 행의 교체 처리 및 오프셋 어드레스의 가산을 하기 때문에, 인터리브 어드레스 패턴을 생성하기 위해서 큰 메모리 공간과 많은 처리 시간이 필요하게 되는 문제가 있다.
본 발명은 인터리브 어드레스 생성 장치 및 인터리브 어드레스 생성 방법에 관한 것으로서, 특히 통신 단말 장치 또는 기지국 장치에 이용하는 데 바람직한 인터리브 어드레스 생성 장치 및 인터리브 어드레스 생성 방법에 관한 것이다.
도 1은 종래의 GF 인터리브에 이용되는 열 교환 장치의 구성을 나타내는 블록도,
도 2는 GF 인터리브에 이용되는 변환 테이블을 나타내는 도면,
도 3a는 인터리브 어드레스 생성 과정을 나타내는 도면,
도 3b는 인터리브 어드레스 생성 과정을 나타내는 도면,
도 3c는 인터리브 어드레스 생성 과정을 나타내는 도면,
도 3d는 인터리브 어드레스 생성 과정을 나타내는 도면,
도 4는 본 발명의 실시예 1에 따른 인터리브 어드레스 생성 장치의 구성을 나타내는 블록도,
도 5는 상기 실시예의 배타적 논리합 연산에 있어서의 데이터 구성의 예를 나타내는 도면,
도 6은 인터리브 어드레스 작성의 예를 나타내는 도면,
도 7은 실시예 2에 따른 인터리브 어드레스 생성 장치의 구성의 예를 나타내는 블록도,
도 8은 실시예3 에 따른 인터리브 어드레스 생성 장치의 구성의 예를 나타내는 블록도,
도 9는 메모리에 저장되는 테이블의 예를 나타내는 도면,
도 10은 메모리에 저장되는 테이블의 예를 나타내는 도면,
도 11a는 카운터 제어부(201)로부터 출력되는 행 번호 i와 열 번호 j의 예를나타내는 도면,
도 11b는 변환된 행 번호와 열 번호의 예를 나타내는 도면,
도 11c는 가산기로부터 출력되는 가산 결과의 예를 나타내는 도면,
도 11d는 인터리브 어드레스 장치(200)로부터 출력되는 인터리브 어드레스의 예를 나타내는 도면,
도 12는 본 발명의 실시예 4에 따른 인터리브 장치의 구성을 나타내는 블록도,
도 13은 본 발명의 실시예 5에 따른 터보 부호화 장치의 구성을 나타내는 블록도,
도 14는 본 발명의 실시예 6에 따른 터보 복호화 장치의 구성을 나타내는 블록도,
도 15는 본 발명의 실시예 7에 따른 통신 단말 장치의 구성을 나타내는 블록도,
도 16은 본 발명의 실시예 8에 따른 기지국 장치의 구성을 나타내는 블록도이다.
본 발명의 목적은, 적은 공간과 적은 처리 시간으로 인터리브 어드레스 패턴을 생성하는 인터리브 어드레스 생성 장치 및 인터리브 어드레스 생성 방법을 제공하는 것이다.
이 목적은, 인터리브 어드레스 생성에 있어서, 행의 재배열 처리와 열의 재배열 처리를 병렬로 실행하고, 이 행의 재배열 처리 및 열의 재배열 처리와, 오프셋 어드레스의 가산 처리를 연속해서 실행하여, 인터리브 어드레스를 작성함으로써 달성된다.
이하, 본 발명의 실시예에 대하여 도면을 이용해서 설명한다.
(실시예 1)
실시예 1의 인터리브 어드레스 생성 장치는 행의 재배열 처리와 열의 재배열 처리를 병렬로 실행한다.
도 4는 본 발명의 실시예 1에 따른 인터리브 어드레스 생성 장치의 구성을 나타내는 블록도이다.
도 4에 나타내는 인터리브 어드레스 생성 장치(100), 카운터 제어부(101)와, 비트 반전 장치(102)와, 열 변환 장치(103)와, 시프트 레지스터(104)와, 가산기(105)와, 대소 비교부(106)로 주로 구성된다.
또한, 열 변환 장치(103)는, 메모리(110)와, 메모리(111)와, 메모리(113)와, 배타적 논리합 연산기(112)로 구성된다.
도 4에 있어서, 카운터 제어부(101)는 2 차원 배열의 행 번호 i(0≤i<22)를 비트 반전 장치(1O2)에 출력하고, 2 차원 배열의 열 번호 j(0≤j<23)를 메모리(111)에 출력한다.
예컨대, 카운터 제어부(101)는 22×23의 2 차원 배열 어드레스를 출력하는 경우, 행 번호 i=0, 열 번호 j=0을 출력하고, 다음에, 행 번호 i=1, 열 번호 j=0를 출력한다. 그 후, 행 번호 i=2, 열 번호 j=0를 출력하고, 행 번호 i=3, 열 번호 j=0을 출력한다.
다음에, 행 번호 i=0, 열 번호 j=1을 출력한다. 이와 같이, 행 번호 i의 값이 최대값 3을 넘을 때마다 열 번호 j의 값을 증가시켜, i=0으로 설정하여 출력하고, 행 번호 i=3, 열 번호 j=7이 조합될 때까지 출력한다.
비트 반전 장치(102)는 카운터 제어부(101)로부터 출력된 행 번호 i를 2진수의 상태로 비트 반전을 하여, 비트 반전을 한 행 번호 i'를 메모리(110)와 시프트 레지스터(104)에 출력한다. 구체적으로는, 비트 반전 장치(102)는 2진수화 한 행 번호의 상위 자리수와 하위 자리수를 교체한다. 즉, 최상위 자리수와 최하위 자리수의 값을 교체하고, 2번째 상위의 자리수와 2번째 하위의 자리수를 교체한다. 이하, 마찬가지로 상위 자리수와 하위 자리수를 교체한다.
메모리(110)는 각 행에 상이한 i0을 αi0에 대입한 값을 저장하고, 입력된 i'에 대응하는 i0을 구하여, i0에 대응하는 αi0을 배타적 논리합 연산기(112)에 출력한다.
메모리(111)는, 각 행에 상이한 j를 αj(0≤j<M)에 대입한 값을 저장하여, 입력된 j에 대응하는 αj를 배타적 논리합 연산기(112)에 출력한다.
배타적 논리합 연산기(112)는 메모리(110)로부터 출력된 αi0과, 메모리(111)로부터 출력된 αj의 배타적 논리합을 계산하여, 계산 결과를 메모리(113)에 출력한다.
메모리(113)는 배타적 논리합 연산기(112)의 계산 결과와 대응하는 열 교환 패턴을 저장하여, 입력된 계산 결과에 대응하는 열 교환 패턴을 가산기(105)에 출력한다.
시프트 레지스터(104i) 비트 반전 장치(102)로부터의 출력값을 비트 시프트하여, 이것을 어드레스 오프셋값으로서 가산기(105)에 출력한다.
가산기(105)는 시프트 레지스터(104)로부터의 출력과 열 변환 장치(103)로부터의 출력을 가산하여, 가산 결과를 대소 비교부(106)에 출력한다.
대소 비교부(106)는 가산기(105)로부터 출력된 가산 결과를 인터리브 사이즈와 비교하여, 인터리브 사이즈 이내의 가산 결과를 어드레스값으로서 출력한다.
다음에, 본 실시예의 인터리브 어드레스 생성 장치에 따른 데이터 처리에 대해서 설명한다.
이하의 설명에서는, 인터리브 사이즈 L=30, N(=2r)×M(=2c) 블록 사이즈에서 r=2, C=3, 갈로아체 GF(23)로 표시되는 차수 3의 원시 다항식을 x3+x+1로 해서 그 원시 다항식의 근을 α로 한 예에 대하여 설명한다. 또한, 갈로아체 GF(23) 상의 모든 원(元)은, 전부 α의 멱승으로 표현할 수 있다.
도 5는 본 실시예의 배타적 논리합 연산에 있어서의 데이터 구성의 예를 나타내는 도면이다.
메모리(110)는 행 번호 i에 대응하는 파라메터 i0과 3 비트의 벡터 αi0을 대응시켜 저장하여, 입력된 i0에 대응하는 3 비트의 벡터 αi0을 출력한다.
메모리(111)는 행 번호 i에 대응하는 파라메터 j와 αj를 대응시켜 저장하여, 입력된 j에 대응하는 3 비트의 벡터 αj를 출력한다.
배타적 논리합 연산기(112)에서 벡터 αi0과 벡터 αj의 배타적 논리합이 행하여져, 연산 결과 β가 메모리(113)에 출력된다.
메모리(113)에서, 연산 결과 β에 대응하는 열 치환 데이터가 출력된다.
다음에, 본 실시예에 따른 인터리브 어드레스 생성 장치의 데이터 처리에 대하여 설명한다.
도 6은 인터리브 어드레스 작성의 예를 나타내는 도면이다.
도 6에 있어서, i 및 j는 카운터 제어부(101)로부터 출력되는 행 번호 및 열 번호를 나타내고, i'는 비트 반전 장치(102)로부터 출력되는 행 번호를 나타낸다. 또한, αi0및 αj는 메모리(110) 및 메모리(111)로부터 출력되는 벡터 데이터를 나타내고, αi0j는 배타적 논리합 연산기(112)에 있어서의 연산 결과를 나타낸다. logαi0j)는 메모리(113)로부터 출력되는 데이터를 나타내고, 오프셋 가산 결과는 가산기(105)에 있어서 시프트 레지스터(104)로부터 출력된 오프셋 어드레스를 가산한 결과를 나타낸다.
또한, 데이터 처리는 위의 열부터 일렬마다 행하여진다.
최초에, 카운터 제어부(101)에 있어서, 행 번호 i=0, 열 번호 j=0이 출력된다. 행 번호 i는 비트 반전 장치(102)에서 2진수 상태의 행 번호 비트가 상위와 하위로 교체된 후 출력된다. 행 번호 i=0는 2 비트의 2진수로 나타내면 「00」이며, 상위 비트와 하위 비트를 교체하면 「00」으로 되어, 행 번호 i'=0이 출력된다.
메모리(110)에서 행 번호 i'에 대응하는 αi0이 출력된다. 행 번호 i'=0이 입력된 경우, αi0=(1,0,O)이 출력된다.
메모리(111)에서 행 번호 j에 대응하는 αj가 출력된다. 행 번호 j=0이 입력된 경우, αj=(1,0,O)이 출력된다.
배타적 논리합 연산기(112)에서 메모리(110)로부터 출력된 αi0과 메모리(111)로부터 출력된 αj의 배타적 논리합이 계산된다. αi0=(1,O,O), αj=(1,O,O)인 경우, αi0j=(O,O,O)이 출력된다.
메모리(113)에서 배타적 논리합 연산기(112)로부터 출력된 계산 결과 αi0j에 대응하는 열 치환 데이터 logαi0j)가 출력된다. αi0j=(0,0,0)인 경우, 열 치환 데이터로서 4가 출력된다.
가산기(105)에서 열 번호 j의 총수에 i'를 승산한 값이 열 치환 데이터에 가산되어, 가산 결과가 출력된다. 열 치환 데이터가 4, i'=0, 열 번호 j의 수가 8인 경우, 인터리브 어드레스로서 4가 출력된다.
i=1, j=0인 경우의 인터리브 어드레스가 출력된 후, 카운터 제어부(101)에서행 번호 i=1, 열 번호 j=0이 출력되어, 상기와 같은 처리가 행하여져, 인터리브 어드레스로서 20이 출력된다.
이하, i=2, j=0인 경우의 처리, i=3, j=0인 경우의 처리가 행하여진다. i=3으로 되어 i가 최대값을 넘으면 j가 증가되어, i=0으로 값이 리세트되고, 다음에 i=0, j=1인 경우의 처리가 행하여진다.
이와 같이, 인터리브 어드레스 생성 장치는 i가 최대값을 초과할 때마다 i가 리세트되도록 제어함으로써, 22×23의 2 차원 배열에 대하여 열 방향으로 순차적으로 어드레스를 출력한다. 또한, 인터리브 어드레스 생성 장치는 메모리(110)에 대한 판독 어드레스값으로서 비트 반전 장치(102)로부터의 출력 i'를 이용하기 때문에, 상기 2 차원 배열에 있어서 행 교환도 동시에 실행할 수 있다.
이와 같이, 실시예 1의 인터리브 어드레스 생성 장치에 의하면, 행 번호와 열 번호를 개별적으로 출력하여 개별적으로 번호를 변환함으로써, 행의 재배열 처리와 열의 재배열 처리를 병렬로 실행할 수 있기 때문에, 적은 메모리 공간과 적은 처리 시간으로 인터리브 어드레스 패턴을 생성할 수 있다.
또, 상기 설명에서는, 인터리브 어드레스 패턴의 사이즈가 30, 블록 사이즈가 22×23인 경우의 인터리브 어드레스 생성에 대하여 설명하였지만, 저장하는 메모리 데이터의 변경과 시프트 레지스터(104)의 시프트 수를 c 비트로 함으로써, 임의의 데이터 수 L에 대한 N(2r)×M(2c)의 블록 인터리브를 실행할 수 있다.
(실시예 2)
도 7은 실시예 2에 따른 인터리브 어드레스 생성 장치의 구성의 예를 나타내는 블록도이다. 다만, 도 4와 공통된 구성에 관해서는 도 4와 동일 번호를 부여하고 자세한 설명을 생략한다.
도 7의 인터리브 어드레스 생성 장치(150)는 저장 셀 어레이(151)를 구비하여, 오프셋 어드레스를 메모리(113)로부터의 출력 타이밍에 맞춰 가산하는 점이 도 4와 다르다.
도 7에 있어서, 저장 셀 어레이(151)는 비트 반전 장치(102)로부터 출력된 행 번호 i'를 일시 저장한 후, 시프트 레지스터(104)에 출력한다.
예컨대, 저장 셀 어레이(151)는 비트 반전 장치(102)로부터의 출력값 i'에 대하여, 열 변환 장치(103)로부터의 출력과 시프트 레지스터(104)로부터의 출력의 타이밍을 일치시키기 위해서 2 단의 저장 셀 어레이로 구성된다.
그리고, 비트 반전 장치(102)로부터의 출력값 i'은 저장 셀 어레이(151)에 일시 유지되고, 가산기(105)에 있어서의 가산 타이밍에 맞춰 순차적으로 출력되어 시프트 레지스터(104)에 입력되어, 3 비트 시프트한 값이 제 i' 번째 행에 대한 어드레스 오프셋값으로서 출력된다.
이와 같이, 실시예 2의 인터리브 어드레스 생성 장치에 의하면, 행 번호와 열 번호를 개별적으로 출력하여 개별적으로 번호를 변환함으로써, 행의 재배열 처리와 열의 재배열 처리를 병렬로 실행할 수 있기 때문에, 적은 메모리 공간과 적은 처리 시간으로 인터리브 어드레스 패턴을 생성할 수 있다.
또한, 실시예 2의 인터리브 어드레스 생성 장치에 의하면, 일시 저장 회로를 이용하여 오프셋 어드레스값의 출력 타이밍을 지연시킴으로써, 가산기의 출력 타이밍을 일치시킬 수 있기 때문에, 오프셋 어드레스값의 생성과 열 교환 패턴의 생성 속도가 다른 경우에도, 인터리브 어드레스 패턴을 생성할 수 있다.
(실시예 3)
도 8은 실시예 3에 따른 인터리브 어드레스 생성 장치의 구성의 예를 나타내는 블록도이다.
도 8에 있어서, 카운터 제어부(201)는 2 차원 배열의 행 번호 i를 메모리(202)에 출력하고, 2 차원 배열의 열 번호 j를 메모리(203)에 출력한다.
메모리(202)는 입력된 i에 대응하는 N(i)를 저장하여, 카운터 제어부(201)로부터 출력된 i에 대응하는 N(i)를 승산기(204)에 출력한다.
메모리(203)는 입력된 j에 대응하는 M(j)을 저장하여, 카운터 제어부(201)로부터 출력된 j에 대응하는 M(j)를 가산기(205)에 출력한다.
승산기(204)는 메모리(202)로부터 출력된 N(i)에 열수 M을 승산하여, 승산 결과를 가산기(205)에 출력한다.
가산기(205)는 메모리(203)로부터 출력된 M(j)에 승산기(204)로부터 출력된 승산 결과를 가산하여, 가산 결과를 대소 비교부(206)에 출력한다.
대소 비교부(206)는 가산기(205)로부터 출력된 가산 결과가 요구된 인터리브 어드레스의 사이즈보다 작은 경우, 가산 결과를 인터리브 어드레스로서 출력하여,가산 결과가 요구된 인터리브 어드레스의 사이즈 이상인 경우, 가산 결과를 출력하지 않는다.
다음에, 메모리(202)의 변환 동작에 대하여 설명한다.
도 9는 메모리(202)에 저장되는 테이블의 예를 나타내는 도면이다.
도 9에 있어서 N(i)는 입력 i에 대응하는 출력이며, i와 N(i)는 일대일로 대응하고, 다른 i에 대응하는 N(i)는 서로 다른 값을 갖는다.
메모리(202)는 i=0이 입력된 경우, N(i)=2를 출력한다. 메모리(202)는 i=1이 입력된 경우, N(i)=3을 출력한다. 메모리(202)는 i=2가 입력된 경우, N(i)=0을 출력한다. 메모리(202)는 i=3이 입력된 경우, N(i)=1을 출력한다.
다음에, 메모리(203)의 변환 동작에 대하여 설명한다.
도 10은 메모리(203)에 저장되는 테이블의 예를 나타내는 도면이다.
도 10에 있어서 M(j)는 입력 j에 대응하는 출력이며, j와 M(j)는 일대일로 대응하고, 다른 j에 대응하는 M(j)는 서로 다른 값을 갖는다.
메모리(203)는 j=0이 입력된 경우, M(j)=3을 출력한다. 메모리(202)는 j=1이 입력된 경우, M(j)=6을 출력한다. 메모리(202)는 j=2가 입력된 경우, M(j)=4를 출력한다. 메모리(202)는 j=3이 입력된 경우, M(j)=2를 출력한다. 마찬가지로 i=4∼7의 경우도 도 10의 테이블에 따라서 j에 대응하는 M(j)를 출력한다.
다음에 인터리브 어드레스 생성의 예를 나타낸다.
도 11a는 카운터 제어부(201)로부터 출력되는 행 번호 i와 열 번호 j의 예를 나타내는 도면이다.
카운터 제어부(2O1)는 22×23의 2 차원 배열의 어드레스를 출력하는 경우, 행 번호 i=0, 열 번호 j=0를 출력하고, 다음에 행 번호 i=1, 열 번호 j=0을 출력한다. 그 후, 행 번호 i=2, 열 번호 j=0을 출력하고, 행 번호 i=3, 열 번호 j=0을 출력한다.
다음에, 행 번호 i=0, 열 번호 j=1를 출력한다. 이와 같이, 행 번호 i의 값이 최대값 3을 초과할 때마다 열 번호 j의 값을 증가시키고, i=0으로 설정하여 출력하여, 행 번호 i=3, 열 번호 j=7의 조합이 될 때까지 출력한다.
도 11b는 변환된 행 번호와 열 번호의 예를 나타내는 도면이다.
카운터 제어부(201)로부터 출력된 행 번호 i는, 도 9의 테이블에 따라서 N(i)로 변환되고, 열 번호 j는 도 10의 변환 테이블에 따라서 M(j)로 변환된다.
예컨대, 카운터 제어부(201)로부터 행 번호 i=0, 열 번호 j=0가 출력된 경우, 메모리(202)로부터 N(i)=2가 출력되고, 메모리(203)로부터 M(j)=3이 출력된다.
도 11c는 가산기(205)로부터 출력되는 가산 결과의 예를 나타내는 도면이다.
가산기(205)에서 N(i)에 열수를 승산한 승산 결과에 M(j)를 가산한 값이 출력된다.
예컨대, N(i)=2, M(j)=3의 경우, 열수 8에 N(i)를 승산하여 M(j)를 가산한 값 19가 출력된다.
대소 비교부(206)에서, 도 11c의 가산 결과 중에서 가산 결과가 요구된 인터리브 어드레스의 사이즈보다 작은 값이 인터리브 어드레스로서 출력된다.
도 11d는 인터리브 어드레스 장치(200)로부터 출력되는 인터리브 어드레스의 예를 나타내는 도면이다.
예컨대, 요구된 인터리브 어드레스의 사이즈가 30인 경우, 값이 29 이하인 가산 결과가 인터리브 어드레스로서 출력되고, 가산 결과가 30 이상인 값은 출력되지 않는다.
이와 같이, 실시예 3의 인터리브 어드레스 생성 장치에 의하면, 행의 재배열 처리와 열의 재배열 처리를 병렬 처리로 실행하여, 이 행의 재배열 처리 및 열의 재배열 처리와, 오프셋 어드레스의 가산 처리를 연속하여 행함으로써, 적은 메모리공간과 적은 처리 시간으로 인터리브 어드레스 패턴을 생성할 수 있다.
또한, 실시예 3의 인터리브 어드레스 생성 장치에 의하면, 실시예 1 또는 2와 비교하여, 각각의 행에서 같은 열 교환 패턴을 이용함으로써, 간단한 구성으로 인터리브 어드레스를 생성할 수 있다.
(실시예 4)
도 12는 본 발명의 실시예 4에 따른 인터리브 장치의 구성을 나타내는 블록도이다.
도 12에 있어서, 인터리브 어드레스 생성 장치(301)는 데이터가 메모리에 입력되는 입력 지시에 따라 인터리브 어드레스 패턴을 메모리(303)에 출력한다.
어드레스 카운터(302)는 데이터를 출력하는 데이터 출력 지시에 따라 메모리의 선두 어드레스로부터 순서대로 메모리(303)에 출력한다.
메모리(302)는 인터리브 어드레스 생성 장치(301)로부터 출력되는 어드레스에 데이터를 순차적으로 저장하여, 소정 데이터를 저장한 후, 어드레스 카운터(303)로부터 출력되는 어드레스의 데이터를 순차적으로 출력한다.
이와 같이, 본 실시예의 인터리브 장치에 의하면, 실시예 1 또는 실시예 2의 인터리브 어드레스 생성 장치에서 생성된 인터리브 어드레스 패턴을 이용하여 정보 계열을 재배열함으로써, 적은 메모리로 고속의 인터리브 처리를 할 수 있다.
또, 본 실시예 4의 인터리브 장치에서는, 인터리브 어드레스 생성 장치(301)로부터 출력되는 어드레스의 메모리에 데이터를 저장하여, 어드레스 카운터(303)로부터 출력되는 어드레스의 메모리로부터 데이터를 판독하고 있지만, 이것으로 한정되지 않고, 어드레스 카운터(303)로부터 출력되는 어드레스의 메모리에 데이터를 저장하여, 인터리브 어드레스 생성 장치(301)에서 출력되는 어드레스의 메모리로부터 데이터를 판독하여, 데이터를 재배열해도 좋다.
(실시예 5)
도 13은 본 발명의 실시예 5에 따른 터보 부호화 장치의 구성을 나타내는 블록도이다.
도 13에 있어서, 터보 부호화 장치(400)는 재귀적 컨벌루션 부호기(401)와, 인터리버(402)와, 재귀적 컨벌루션 부호기(403)로 주로 구성된다.
재귀적 컨벌루션 부호기(401)는 입력된 정보 계열에 대하여 컨벌루션 부호를 부호화하여, 부호화한 정보 계열을 외부에 출력한다.
인터리버(402)는 실시예 4의 인터리브 장치로 구성되어, 입력된 정보 계열에 대하여 인터리브 처리를 하여, 인터리브 처리된 정보 계열을 재귀적 컨벌루션 부호기(403)에 출력한다.
재귀적 컨벌루션 부호기(403)는 인터리버(402)로부터 출력된 정보 계열에 컨벌루션 부호의 부호화를 하여, 부호화한 정보 계열을 외부에 출력한다.
다음에, 터보 부호화 장치(400)의 동작에 대하여 설명한다.
입력된 정보 계열은 재귀적 컨벌루션 부호기(401)에서 컨벌루션 부호화되어, 부호화한 정보 계열로 출력된다.
또한, 입력된 정보 계열은 인터리버(402)에서 데이터가 재배열되어, 재배열된 정보 계열은 재귀적 컨벌루션 부호기(403)에서 컨벌루션 부호화되어, 부호화된 정보 계열로 출력된다.
즉, 부호화되는 정보 계열은 정보 계열 자신의 출력과, 정보 계열을 입력으로 하여 컨벌루션 부호를 부호화하는 재귀적 컨벌루션 부호기(401)로부터의 출력과, 정보 계열을 입력으로 하여 재귀적 컨벌루션 부호기(403)에 입력하기 전에 한번 메모리에 데이터를 기록한 것을 인터리버(402)에 의해 데이터의 순서를 재배열, 이 재배열된 데이터를 입력으로 하여 컨벌루션 부호를 부호화하는 재귀적 컨벌루션 부호기(403)로부터의 출력을 합친 3 비트가, 정보 계열 1 비트에 대한 부호 계열로서 출력된다.
이상의 동작에 의해, 터보 부호화 장치(400)에 있어서 정보 계열의 입력에 대하여, 입력된 정보 계열과, 컨벌루션 부호화된 정보 계열과, 데이터의 재배열 및 컨벌루션 부호화가 행하여진 정보 계열이 출력된다.
이와 같이, 본 실시예의 터보 부호화 장치에 의하면, 실시예 4의 인터리브 장치에서 정보 계열을 재배열함으로써, 고속으로 처리를 할 수 있기 때문에, 오류 정정 능력을 향상시킬 수 있다.
예컨대, 실시예 5의 터보 부호화 장치(400)에 있어서, 인터리버(402)에 대하여 GF 인터리브 방식의 실시예 4의 인터리브 장치를 이용함으로써, 수신측에서의 부호 계열의 복호에 대하여 오류 정정 능력을 향상시킨 터보 부호화 장치(400)를 실현할 수 있다.
또한, 본 실시예의 터보 부호화 장치에 의하면, 실시예 4의 인터리브 장치에서 정보 계열을 재배열함으로써, 적은 메모리로 인터리브 어드레스를 빠르게 생성하여 인터리브를 실행할 수 있기 때문에, 적은 메모리로 터보 부호화를 할 수 있다.
(실시예 6)
도 14는 본 발명의 실시예 6에 따른 터보 복호화 장치의 구성을 나타내는 블록도이다.
도 14에 있어서, 터보 복호화 장치(500)는 소프트 판정 출력 복호기(501)와, 인터리버(502)와, 소프트 판정 출력 복호기(503)와, 디인터리버(504)로 주로 구성된다.
소프트 판정 출력 복호기(501)는 입력된 부호 계열을 복호하여 인터리버(502)에 출력한다.
인터리버(502)는 소프트 판정 출력 복호기(501)로부터 출력된 부호 계열을 재배열하여 소프트 판정 출력 복호기(503)에 출력한다.
소프트 판정 출력 복호기(503)는 인터리버(502)로부터 출력된 부호 계열을 복호하여 디인터리버(504)에 출력한다.
디인터리버(504)는 소프트 판정 출력 복호기(503)로부터 출력된 부호 계열을 재배열하여, 얻어진 부호 계열을 소프트 판정 출력 복호기(501)와 외부에 출력한다.
다음에, 터보 복호화 장치(500)의 동작에 대하여 설명한다.
첫 번째 동작에서는, 실시예 5의 터보 부호화 장치 등에 의해 컨벌루션 부호화된 부호 계열이 소프트 판정 출력 복호기(501)에서 복호화되어 얻어진 소프트 판정 출력이 인터리버(502)에 출력된다.
소프트 판정 출력 복호기(501)로부터 출력된 소프트 판정 출력은, 인터리버(502)에서 데이터 계열이 재배열되어, 소프트 판정 출력 복호기(503)에 출력된다.
인터리버(502)로부터 출력된 데이터 계열은, 소프트 판정 출력 복호기(503)에서 수신된 정보 계열과 동시에 복호되어 얻어진 소프트 판정 출력이 디인터리버(504)에 출력된다.
소프트 판정 출력 복호기(503)로부터 출력된 소프트 판정 출력은, 디인터리버(504)에서 데이터의 재배열이 이루어져, 재배열된 데이터 계열이 소프트 출력 복호기(501)와 외부에 출력된다.
디인터리버(504)로부터 출력된 데이터 계열은, 소프트 출력 복호기(501)에 출력되어, 신뢰도 정보로서 두 번째 이후의 터보 복호 처리에 이용된다.
두 번째 이후의 터보 복호 처리의 동작에서는, 컨벌루션 부호화된 부호 계열이 소프트 판정 출력 복호기(501)에서, 디인터리버(504)로부터 출력된 데이터 계열을 신뢰도 정보로서 이용한 복호화가 이루어져 얻어진 소프트 판정 출력이 인터리버(502)에 출력된다.
이와 같이, 본 실시예의 터보 복호화 장치에 의하면, 실시예 4의 인터리브 장치에서 정보 계열을 재배열함으로써, 고속으로 처리할 수 있기 때문에, 오류 정정 능력을 향상시킬 수 있다.
예컨대, 실시예 6의 터보 부호화 장치(500)에 있어서, 인터리버(502)와 디인터리버(504)에 대하여 실시예 4의 인터리브 장치를 이용함으로써, 오류 정정 능력을 향상시킨 터보 복호기(500)를 실현할 수 있다.
또한, 본 실시예의 터보 복호화 장치에 의하면, 실시예 4의 인터리브 장치로 정보 계열을 재배열함으로써, 처리에 필요한 메모리를 감축할 수 있기 때문에, 적은 메모리로 터보 부호화를 할 수 있다.
(실시예 7)
도 15는 본 발명의 실시예 7에 따른 통신 단말 장치의 구성을 나타내는 블록도이다.
도 15에 있어서, 통신 단말 장치(600)는, 안테나(601)와, 수신부(602)와, 송신부(603)와, 복조부(604)와, 변조부(605)와, 복호화 처리부(606)와, 부호화 처리부(607)와, 음성 코덱부(608)와, 데이터 입출력부(609)와, 스피커(610)와, 마이크(611)로 주로 구성된다.
복호화 처리부(606)는 디인터리브부(614), 레이트 매칭부(615) 및 오류 정정 복호화부(616)로 구성된다.
부호화 처리부(607)는 오류 정정 부호화부(617), 레이트 매칭부(618) 및 인터리브부(619)로부터 구성된다.
여기서, 오류 정정 부호화부(617)는 실시예 4의 인터리브 장치 또는 실시예 5의 터보 부호화 장치(400)를 이용하여 구성된다.
또한, 오류 정정 복호화부(616)는 비음성 데이터에 대하여 실시예 4의 인터리브 장치 또는 실시예 6의 터보 복호화 장치(500)를 이용하여 구성된다.
또한, 디인터리브부(614) 및 인터리브부(619)는, 실시예 4의 인터리브 장치를 이용하여 구성된다.
안테나(601)는 신호의 송신 및 수신을 한다.
수신부(602)는 안테나(601)로부터의 수신 신호에 무선 처리를 하여, 무선 처리를 한 수신 신호를 복조부(604)에 출력한다.
송신부(603)는 변조부(605)로부터 출력된 송신 신호에 무선 처리를 하여, 안테나(601)로 송신한다.
복조부(604)는 역확산 장치(612)를 이용하여 수신부(602)로부터 출력된 수신 신호를 복조하여 복조 신호를 디인터리브부(614)에 출력한다.
변조부(605)는 확산 장치(613)를 이용하여 인터리브부(619)로부터 출력되는 송신 신호를 변조하여 송신부(603)에 출력한다.
디인터리브부(614)는 복조부(604)로부터 출력된 복조 신호에 데이터의 재배열 처리를 하여, 재배열 처리한 데이터를 레이트 매칭부(615)에 출력한다.
레이트 매칭부(615)는 디인터리브부(614)로부터 출력된 데이터의 길이를 오류 정정 처리가 가능한 길이로 조절하여, 길이를 조절한 데이터를 오류 정정 복호화부(616)에 출력한다.
오류 정정 복호화부(616)는 레이트 매칭부(615)로부터 출력된 데이터의 오류 정정을 하여, 오류 정정 후의 데이터를 음성 코덱부(608)에 출력한다.
오류 정정 부호화부(617)는 음성 코덱부(608)로부터 출력된 송신 데이터에 오류 정정 부호화를 하여, 레이트 매칭부(618)에 출력한다.
레이트 매칭부(618)는 오류 정정 부호화부(617)로부터 출력된 송신 데이터를 인터리브 처리에 필요한 길이로 조정하여 인터리브부(619)에 출력한다.
인터리브부(619)는 레이트 매칭부(618)로부터 출력된 송신 데이터에 재배열 처리를 하여, 변조부(605)에 출력한다.
음성 코덱부(608)는 마이크(611)로부터 출력된 음성 신호를 부호화하여 송신 데이터로서 오류 정정 부호화부(617)에 출력한다.
또한, 음성 코덱부(608)는 오류 정정 복호화부(616)로부터 출력된 수신 데이터를 복호화하여, 복호화한 음성 데이터를 스피커(610)에 출력한다.
마이크(611)는 입력된 음성을 음성 데이터로서 음성 코덱부(608)에 출력한다.
스피커(610)는 음성 CODEC부(608)로부터 출력된 음성 데이터를 음성으로서 출력한다.
다음에, 통신 단말 장치(600)의 송신 시의 동작에 대하여 설명한다.
음성을 송신하는 경우, 음성은 마이크(611)에서 음성 신호로 아날로그 디지탈 변환(이하, "AD변환"이라고 한다)되어 음성 코덱부(608)에 출력되고, 음성 코덱부(608)에서 부호화되며, 오류 정정 부호화부(617)에서 컨벌루션 부호화되어, 송신 데이터로서 레이트 매칭부(618)에 출력된다.
또한, 비음성 데이터를 송신하는 경우, 비음성 데이터는 데이터 입출력부(609)를 거쳐서, 오류 정정 부호화부(617)에서 데이터의 전송속도에 따라 터보 부호화되고 컨벌루션 부호화되어, 송신 데이터로서 레이트 매칭부(618)에 출력된다.
송신 데이터는 레이트 매칭부(618)에서 인터리브 처리에 필요한 길이로 조정되고, 인터리브부(619)에서 재배열 처리되고, 변조부(605)에서 디지털 변조 및 디지탈 아날로그 변환(이하 "DA" 변환)되고, 송신부(603)에서 무선 처리되어, 안테나(601)를 거쳐서 송신된다.
다음에, 통신 단말 장치(600)의 수신 시의 동작에 대하여 설명한다.
수신 신호는 안테나(601)를 거쳐서 수신되고, 수신부(602)에서 무선 처리 및 AD 변환되고, 복조부(604)에서 디지털 복조되어, 수신 데이터로서 디인터리브부(614)에 출력된다.
수신 데이터는 디인터리브부(614)에서 재배열 처리되고, 레이트 매칭부(615)에서 데이터의 길이가 오류 정정할 수 있는 길이로 조정되어, 오류 정정 복호화부(616)에 출력된다.
수신 데이터가 음성 신호인 경우, 수신 데이터는 오류 정정 복호화부(616)에에서 비터비 복호되고, 음성 코덱부(608)에서 음성 복호화 및 DA 변환되어, 스피커(610)로부터 음성으로서 출력된다.
수신 데이터가 비음성 신호인 경우, 오류 정정 복호화부(616)에서 데이터의 전송 속도에 따라 터보 복호화되어, 데이터 입출력부(609)를 거쳐서 외부로 출력된다.
이와 같이, 본 실시예의 통신 단말 장치에 의하면, 비음성 데이터에 대하여 오류 정정 부호화 장치 및 오류 정정 복호화 장치에, 실시예 4의 인터리브 장치를 이용한 터보 부호화 장치 및 터보 복호화 장치를 이용함으로써, 비음성통신에 대하여, 보다 낮은 비트대 오류율(Bit to Error Rate)의 고 전송 품질의 통신 특성으로 송수신을 실행할 수 있다.
또한, 터보 부호 및 복호에 포함되는 인터리버의 구성은 고속 처리가 가능하고, 메모리량을 삭감한 인터리브 장치에 의해서 구성되어 있기 때문에, 인터리브를 고속 처리로, 또한 메모리량을 삭감한 통신 단말 장치(600)를 얻을 수 있다.
또, 본 실시예에서는, CDMA 통신에 적용한 예를 설명하고 있지만, 통신 방식은 이것으로 한정되지 않고, 변조부(605) 내의 확산 장치(613)와, 복조부(604) 내의 역확산 장치(612)를 통신 방식에 대응한 변조 및 복조 장치에 대체함으로써 다른 통신 방식에도 적용할 수 있다.
(실시예 8)
도 16은 본 발명의 실시예 8에 따른 기지국 장치의 구성을 나타내는 블록도이다.
도 16에 나타내는 기지국 장치(700)는, 안테나(701)와, 수신부(702)와, 송신부(703)와, 복조부(704)와, 변조부(705)와, 복호화 처리부(706)와, 부호화 처리부(707)와, 데이터 입출력부(708)로 주로 구성된다.
복호화 처리부(706)는, 디인터리브부(709), 레이트 매칭부(710) 및 오류 정정 복호화부(711)로 구성된다.
부호화 처리부(707)는 오류 정정 부호화부(712), 레이트 매칭부(713) 및 인터리브부(714)로 구성된다.
여기서, 오류 정정 부호화부(712)는 실시예 1의 인터리브 어드레스 생성 장치(100 또는 200), 혹은 실시예 4의 터보 부호화 장치(400)를 이용하여 구성된다.
또한, 오류 정정 복호화부(711)는 비음성 데이터에 대하여 실시예 4의 인터리브 장치, 혹은 실시예 5의 터보 복호화 장치(500)를 이용하여 구성된다.
또한, 디인터리브부(709) 및 인터리브부(714)는 실시예 4의 인터리브 장치를 이용하여 구성된다.
안테나(701)는 신호의 송신 및 수신을 한다.
수신부(702)는 안테나(701)로부터의 수신 신호에 무선 처리를 하여, 수신 신호를 복조부(704)에 출력한다.
송신부(703)는 변조부(705)로부터 출력된 송신 신호에 무선 처리를 하여 안테나(701)에 출력한다.
복조부(704)는 역확산 장치(715)를 이용하여 수신부(702)로부터 출력된 수신 신호를 복조하여 복조 신호를 디인터리브부(709)에 출력한다.
변조부(705)는 확산 장치(716)를 이용하여 인터리브부(714)로부터 출력되는 송신 신호를 변조하여 송신부(703)에 출력한다.
디인터리브부(709)는 복조부(704)로부터 출력된 복조 신호에 데이터의 순차 배열 처리를 하여, 재배열 처리한 데이터를 레이트 매칭부(710)에 출력한다.
레이트 매칭부(710), 디인터리브부(709)로부터 출력된 데이터의 길이를 오류 정정 처리가 가능한 길이로 조절하여, 길이를 조절한 데이터를 오류 정정 복호화부(711)에 출력한다.
오류 정정 복호화부(711), 레이트 매칭부(710)로부터 출력된 데이터의 복호화 및 오류 정정을 하여, 오류 정정 후의 데이터를 데이터 입출력부(708)에 출력한다.
오류 정정 부호화부(712)는 데이터 입출력부(708)로부터 출력된 송신 데이터에 오류 정정 부호화를 하여, 레이트 매칭부(713)에 출력한다.
레이트 매칭부(713)는, 오류 정정 부호화부(712)로부터 출력된 송신 데이터를 인터리브 처리에 필요한 길이로 조정하여 인터리브부(714)에 출력한다.
인터리브부(714)는 레이트 매칭부(713)로부터 출력된 송신 데이터에 재배열처리를 하여, 변조부(705)에 출력한다.
데이터 입출력부(708)는 송신할 데이터를 오류 정정 부호화부(712)에 출력하고, 오류 정정 복호화부(711)로부터 출력된 수신 데이터를 외부에 출력한다.
다음에, 기지국 장치(700)의 송신 시의 동작에 대하여 설명한다.
송신 데이터는 데이터 입출력부(708)를 거쳐서, 오류 정정 부호화부(712)에서 데이터의 전송 속도 또는 종류에 따라 터보 부호화되고 컨벌루션 부호화되어, 송신 데이터로서 레이트 매칭부(713)에 출력된다.
송신 데이터는 레이트 매칭부(713)에서 인터리브 처리에 필요한 길이로 조정되고, 인터리브부(714)에서 재배열 처리되고, 변조부(705)에서 디지털 변조 및 DA 변환되고, 송신부(703)에서 무선 처리되어, 안테나(701)를 거쳐서 송신된다.
다음에, 기지국 장치(700)의 수신 시의 동작에 대하여 설명한다.
수신 신호는 안테나(701)를 거쳐서 수신되어, 수신부(702)에서 무선 처리 및 AD 변환되고, 복조부(704)에서 디지털 복조되어, 수신 데이터로서 디인터리브부(709)에 출력된다.
수신 데이터는, 디인터리브부(709)에서 재배열 처리되고, 레이트 매칭부(710)에서 데이터의 길이가 오류 정정할 수 있는 길이로 조정되어, 오류 정정 복호화부(711)에 출력된다.
수신 데이터는, 오류 정정 복호화부(711)에서 데이터의 전송 속도에 따라 터보 복호화되어, 데이터 입출력부(708)를 거쳐서 외부로 출력된다.
이와 같이, 본 실시예의 기지국 장치에 의하면, 오류 정정 부호화 장치 및오류 정정 복호화 장치에, 실시예 1의 인터리브 어드레스 생성 장치를 이용한 터보 부호화 장치 및 터보 복호화 장치를 이용함으로써, 보다 낮은 비트 대 오류율의 전송 품질의 고 통신 특성으로 송수신을 실행할 수 있다.
예컨대, 실시예 8의 기지국 장치(700)에 의하면, 오류 정정 부호화부(712)에 실시예 5의 터보 부호화 장치(400)를, 또한, 오류 정정 복호화부(711)에 실시예 6의 터보 복호화 장치(500)를 이용함으로써, 비음성통신에 대하여, 보다 낮은 BER의 고 전송 품질의 통신 특성으로 되는 기지국 장치(700)를 얻을 수 있다.
또한, 터보 부호 및 복호에 포함되는 인터리버의 구성은 고속 처리가 가능하고, 메모리량을 삭감한 인터리브 장치로 구성함으로써, 인터리브를 고속 처리로, 또한 메모리량을 삭감한 기지국 장치(700)를 얻을 수 있다.
또, 본 실시예에서는, CDMA 통신에 적용한 예를 설명하고 있지만, 통신방식은 이것으로 한정되지 않고, 변조부(705) 내의 확산 장치(716)와, 복조부(704) 내의 역확산 장치(715)를 각각의 통신 방식에 대응한 변조 장치 및 복조 장치로 대체함으로써 다른 통신 방식에도 적용할 수 있다.
본 명세서는, 1999년 10월 7일 출원된 특개평 11-286981호에 근거하는 것이다. 이 내용을 여기에 포함시켜 놓는다.
이상의 설명으로부터 분명한 바와 같이, 적은 메모리 공간과 적은 처리 시간으로 인터리브 어드레스 패턴을 생성할 수 있다.

Claims (13)

  1. 행렬 2차원 배열로 표시되는 데이터의 재배열을 행하는 블럭 인터리브 방식에서 2차원 배열의 행 번호와 열 번호를 출력하는 카운터와,
    상기 행 번호의 비트 반전을 행하는 비트 반전 수단과,
    상기 비트 반전된 행 번호와 상기 열 번호에 대응한 어드레스값을 열교환(列交換) 값으로서 출력하는 열 교환 수단과,
    상기 비트 반전된 행 번호를 비트 시프트하여 어드레스 오프셋 값으로서 출력하는 시프트 레지스터 수단과,
    상기 어드레스 오프셋 값과 상기 열 교환 값을 가산하는 가산 수단과,
    상기 가산 값을 인터리브 사이즈와 비교하여, 인터리브 사이즈 내의 상기 가산 값을 어드레스 값으로서 출력하는 대소 비교 수단과,
    상기 비트 반전 수단 또는 상기 시프트 레지스터 수단으로부터 출력된 행 번호를 일시 유지하는 기억 셀 어레이
    를 구비하는 것을 특징으로 하는 인터리브 어드레스 생성 장치.
  2. 제 1 항에 있어서,
    상기 비트 반전 수단은, 상기 카운터로부터 출력되는 행 번호를 기초로, 상위 및 하위 비트의 교체를 행하는 것을 특징으로 하는 인터리브 어드레스 생성 장치.
  3. 삭제
  4. 제 1 항 또는 제 2 항에 있어서,
    상기 블럭 인터리브 방식은, 블럭 사이즈를 행의 수 N, 열의 수 M으로 하면, 제 1 행의 1열로부터 N열까지 진행하여, 제 N 행의 제 M 열까지 초기값 0으로부터 1씩 증분시킨 수치를 배열한 행렬에 대하여, 제 1 행부터 순차적으로 N행까지 각 행마다 상이한 열교환(列交換)을 행하고, 미리 결정된 랜덤 패턴에 의한 행교환(行交換)을 행한 행렬에 대하여, 제 1 열의 제 1 행부터 각 열을 위에서부터 아래로 진행하여 제 M 열의 제 N 행까지 판독함으로써 순차적으로 얻어지는 수치를 판독 어드레스 신호로 하는 인터리브 방식인 것을 특징으로 하는 인터리브 어드레스 생성 장치.
  5. 제 1 항 또는 제 2 항에 있어서,
    상기 열교환 수단은, 비트 반전된 행 번호를 기초로, 행마다 고유의 정수값을 기억하는 제 1 기억수단과, 열마다 고유의 정수값을 기억하는 제 2 기억 수단과, 상기 기억된 행 번호 및 열 번호의 배타적 논리합 연산을 행하는 배타적 논리합 연산 수단과, 상기 배타적 논리합 연산 결과를 어드레스값으로서 기억하는 제 3 기억수단을 구비하는 것을 특징으로 하는 인터리브 어드레스 생성 장치.
  6. 삭제
  7. 삭제
  8. 정보 계열의 컨벌루션 부호화를 행하는 재귀적 컨벌루션 부호화 수단과,
    상기 정보 계열의 인터리브 처리를 행하는 제 1 항 또는 제 2 항에 기재된 인터리브 어드레스 생성 장치를 가지는 인터리버를 구비하는 것을 특징으로 하는 터보 부호화 장치.
  9. 부호 계열을 복호하는 소프트 판정 출력 복호 수단과,
    이 소프트 판정 출력 복호 수단의 출력을 인터리브 처리하는 제 1 항 또는 제 2 항에 기재된 인터리브 어드레스 생성 장치를 가지는 인터리버와,
    이 인터리버에 의해 입력 데이터의 순서가 교반(攪拌)된 부호 계열을 복호하는 소프트 판정 출력 복호 수단과,
    이 소프트 판정 출력 복호 수단의 출력을 디인터리브 처리하는 상기 인터리브 어드레스 생성 장치를 가지는 디인터리버를 구비하는 것을 특징으로 하는 터보 복호화 장치.
  10. 복조된 수신 신호를 복호화하는 청구항 9 기재의 터보 복호화 장치를 가지는 복호화 처리 장치와,
    송신 신호를 부호화하는 청구항 8 기재의 터보 부호화 장치를 가지는 부호화 처리 장치를 구비하는 것을 특징으로 하는 통신 단말 장치.
  11. 복조된 수신 신호를 복호화하는 청구항 9 기재의 터보 복호화 장치를 가지는 복호화 처리 장치와,
    송신 신호를 부호화하는 청구항 8 기재의 터보 부호화 장치를 가지는 부호화 처리 장치를 구비하는 것을 특징으로 하는 기지국 장치.
  12. 행렬 2차원 배열로 표시되는 데이터의 재배열을 행하는 블럭 인터리브 방식에서 2차원 배열의 행 번호와 열 번호를 카운트하는 단계와,
    상기 행 번호의 반전을 행하는 단계와,
    비트 반전된 행 번호와 상기 열 번호에 대응한 어드레스 값을 열 교환하는 것에 의해 열 교환 값을 얻는 단계와,
    상기 반전된 행 번호를 시프트하여 어드레스 오프셋 값을 얻는 단계와,
    상기 어드레스 오프셋 값과 상기 열 교환 값을 가산하는 단계와,
    상기 비트 반전된 행 번호 또는 상기 어드레스 오프셋 값을 일시 유지하는 단계
    를 포함하는 인터리브 어드레스 생성 방법.
  13. 삭제
KR10-2001-7007055A 1999-10-07 2000-10-06 인터리브 어드레스 생성 장치, 터보 부호화 장치, 터보 복호화 장치, 통신 단말 장치, 기지국 장치 및 인터리브 어드레스 생성 방법 KR100468249B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP99-286981 1999-10-07
JP28698199 1999-10-07

Publications (2)

Publication Number Publication Date
KR20010080700A KR20010080700A (ko) 2001-08-22
KR100468249B1 true KR100468249B1 (ko) 2005-01-27

Family

ID=17711481

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2001-7007055A KR100468249B1 (ko) 1999-10-07 2000-10-06 인터리브 어드레스 생성 장치, 터보 부호화 장치, 터보 복호화 장치, 통신 단말 장치, 기지국 장치 및 인터리브 어드레스 생성 방법

Country Status (6)

Country Link
US (1) US6957310B1 (ko)
EP (1) EP1139572A4 (ko)
KR (1) KR100468249B1 (ko)
CN (1) CN1154238C (ko)
AU (1) AU7557500A (ko)
WO (1) WO2001026235A1 (ko)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3880964B2 (ja) 2002-02-06 2007-02-14 サムスン エレクトロニクス カンパニー リミテッド 通信システムにおけるインターリーバー及びインターリービング方法
DE10306302A1 (de) * 2003-02-14 2004-08-26 Infineon Technologies Ag Verfahren und Schaltung zur Adressgenerierung von Pseudo-Zufalls-Interleavern oder -Deinterleavern
TWI269535B (en) * 2005-09-13 2006-12-21 Sunplus Technology Co Ltd Convolutional interleaving and de-interleaving circuit and method
JP2008135813A (ja) * 2006-11-27 2008-06-12 Fujitsu Ltd ターボ復号器及びターボ復号方法
CN101577556B (zh) * 2009-06-17 2012-12-05 北京九方中实电子科技有限责任公司 一种实现矩形交织的装置
US20130117532A1 (en) * 2011-11-07 2013-05-09 Alexander Rabinovitch Interleaving address modification
KR20140082173A (ko) * 2012-12-24 2014-07-02 에스케이하이닉스 주식회사 어드레스 카운팅 회로 및 이를 이용한 반도체 장치
US9785437B2 (en) * 2014-12-23 2017-10-10 Intel Corporation Method and apparatus for performing a vector bit reversal and crossing
CN106411328B (zh) * 2016-10-28 2019-10-18 华南理工大学 一种基于软比特的Turbo码交织器的盲识别方法

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3415693B2 (ja) * 1993-12-23 2003-06-09 ノキア モービル フォーンズ リミテッド インターリーブプロセス
JP3249280B2 (ja) 1994-01-11 2002-01-21 富士通株式会社 インターリーブ回路
US5502696A (en) 1994-09-23 1996-03-26 Cirrus Logic, Inc. CD-ROM subcode R-W channel de-interleaving and de-scrambling method and apparatus
EP2302810B1 (en) 1995-02-01 2013-06-05 Sony Corporation Multi-channel transmission with interleaving through in-place addressing of RAM memory
JPH08293860A (ja) 1995-04-19 1996-11-05 Kyocera Corp 音声暗号化通信装置
JPH09102748A (ja) 1995-10-04 1997-04-15 Matsushita Electric Ind Co Ltd インターリーブ回路
KR100237745B1 (ko) * 1997-05-23 2000-01-15 김영환 회전형 인터리버/디인터리버의 메모리 주소 발생장치 및 그 방법
US6625234B1 (en) 1998-12-10 2003-09-23 Nortel Networks Limited Efficient implementations of proposed turbo code interleavers for third generation code division multiple access
KR100346170B1 (ko) * 1998-12-21 2002-11-30 삼성전자 주식회사 통신시스템의인터리빙/디인터리빙장치및방법
JP3399904B2 (ja) * 2000-03-17 2003-04-28 松下電器産業株式会社 インタリーブアドレス生成装置
US6925592B2 (en) * 2001-05-10 2005-08-02 Hitachi, Ltd. Turbo decoder, turbo encoder and radio base station with turbo decoder and turbo encoder

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
IEEE 49th Vehicular Technology Conference" and the p 1669-1673 (1999.07). *
Proposal for Turbo Code Interleaving(1999.03) *

Also Published As

Publication number Publication date
KR20010080700A (ko) 2001-08-22
EP1139572A4 (en) 2005-04-13
CN1327634A (zh) 2001-12-19
US6957310B1 (en) 2005-10-18
WO2001026235A1 (fr) 2001-04-12
CN1154238C (zh) 2004-06-16
EP1139572A1 (en) 2001-10-04
AU7557500A (en) 2001-05-10

Similar Documents

Publication Publication Date Title
US9467176B2 (en) Computationally efficient convolutional coding with rate-matching
KR100625477B1 (ko) 연접 코드 데이터를 송신하고 수신하기 위한 방법 및 장치
EP0967730B1 (en) Convolutional decoder with modified metrics
US7237183B2 (en) Parallel decoding of a BCH encoded signal
JP2006295975A (ja) エラー訂正回路、インターリーバ及びパンクチャリング又は反復装置を有する伝送システム
US20030023909A1 (en) Interleave address generator
KR20000046050A (ko) 이동통신시스템에서 터보 인코더의 펑처링 장치 및 방법
KR100468249B1 (ko) 인터리브 어드레스 생성 장치, 터보 부호화 장치, 터보 복호화 장치, 통신 단말 장치, 기지국 장치 및 인터리브 어드레스 생성 방법
JP2000503185A (ja) 信号を符号化するためのデータ伝送方法及び機器
US7013412B2 (en) Method for segmentally deinterleaving a data signal
KR100628201B1 (ko) 터보 디코딩 방법
US6385753B1 (en) Punctured Viterbi decoding method
JP2005535210A (ja) データ送信におけるレートマッチングのための符号化及び復号化
JP4405676B2 (ja) マップ・デコーダのためのメモリ・アーキテクチャ
JP4166742B2 (ja) 無線通信装置およびそのインタリーブ方法ならびにデインタリーブ方法
JP4675312B2 (ja) 符号化装置、復号装置、送信機及び受信機
JP3345396B2 (ja) インターリーブアドレス生成装置及びインターリーブアドレス生成方法
JP4045521B2 (ja) 符号化装置および方法
JP3515701B2 (ja) 符号化処理装置およびレピティション方法
WO2001061891A1 (en) Method and apparatus for decoding recursive convolutional symbols
JPH0993295A (ja) 符号化変調装置
JP2009077371A (ja) インタリーブ方法、送信機、無線機、および無線通信システム。
US20030084392A1 (en) Decoder and receiver using the same

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: 20080107

Year of fee payment: 4

LAPS Lapse due to unpaid annual fee