KR100447177B1 - 인터리빙 방법 및 이를 위한 장치 - Google Patents
인터리빙 방법 및 이를 위한 장치 Download PDFInfo
- Publication number
- KR100447177B1 KR100447177B1 KR10-2001-0077046A KR20010077046A KR100447177B1 KR 100447177 B1 KR100447177 B1 KR 100447177B1 KR 20010077046 A KR20010077046 A KR 20010077046A KR 100447177 B1 KR100447177 B1 KR 100447177B1
- Authority
- KR
- South Korea
- Prior art keywords
- memory
- data bits
- interleaving
- interleaver
- bit
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/27—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 using interleaving techniques
- H03M13/276—Interleaving address generation
-
- 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/27—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 using interleaving techniques
- H03M13/2778—Interleaver using block-wise interleaving, e.g. the interleaving matrix is sub-divided into sub-matrices and the permutation is performed in blocks of sub-matrices
Landscapes
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Error Detection And Correction (AREA)
Abstract
본 발명은 데이터 비트들에 대하여 인터리빙된 메모리 주소를 부여하는 단계와 상기 메모리로부터 상기 데이터 비트들을 상기 메모리 주소에 따라 순차적으로 읽어 출력하는 단계 및 상기 출력된 비트들을 변조 심볼 단위에 따라 디멀티플렉싱하는 단계를 포함하여 이루어지는 인터리빙 방법 및 이를 위한 장치에 관한 것으로써, 한번의 액세스를 통해 하나의 변조 심볼에 해당하는 데이터 비트를 읽을 수 있도록 하여 별도의 래치 회로를 필요로 하지 않으며, 시간 지연을 일으키지 않는 효과가 있다.
Description
본 발명은 이동통신 시스템에 관한 것으로, 특히 효율적인 인터리빙 방법 및 이를 위한 장치에 관한 것이다.
제 3 세대 CDMA 이동통신 시스템은 수 Mbps까지의 고속 데이터 전송을 지원할 수 있어야 한다. 데이터 통신은 음성 통신과는 달리 10-5~10-6정도의 아주 낮은 패킷 에러 확률을 요구하기 때문에 고속 데이터 통신에 있어서는 기존 시스템에서 주로 사용되던 컨벌루셔널 코딩(Convolutional Coding) 방법으로는 한계에 부딪칠 수밖에 없다.
그러나, 최근에 급속도로 널리 알려진 터보 코딩(Turbo Coding) 방법을 사용하면 열악한 이동통신 환경 하에서도 상기에서 요구하는 정도의 아주 낮은 패킷 에러 확률을 유지할 수 있기 때문에 터보 코딩 방법은 최근 이동통신 시스템에 대한 표준으로 널리 채택되고 있다.
즉, 소스 코딩이 된 입력 데이터 스트림은 FEC(Forward Error Coding)와 같은 형태의 채널 코딩이 수행되는데, 이 채널 코딩의 일종으로써 상기와 같은 터보 코딩 방식이 이용된다.
이 채널 코딩이 된 심볼은 군집 에러(burst error)를 방지하기 위해, 블락 인터리빙이 수행되며, 도 1을 참조하여 보다 상세히 설명하기로 한다.
도 1은 종래 기술에 따른 블록 인터리빙 과정을 위한 상세 구성을 나타낸 도면이다.
도 1에서, 블록 인터리버(101)는 입력 심볼의 랜덤화 과정과, 버퍼링을 위해 RAM(Random Access Memory)으로 구현된다.
그리고, 상기 블록 인터리버(101)의 메모리(미도시)는 새로운 입력 심볼을 기록하기 위한 심볼 입력 핀과, 기록 주소 포트가 있고, 인터리빙된 입력 심볼을읽기 위한 데이터 출력 핀과, 읽기 주소 포트가 있다. 따라서, 상기 블록 인터리버(101)는 인터리버 기록 주소 제어기(103)로부터 제공되는 기록 순서에 따라 해당 입력 심볼을 기록한다. 또한, 이 기록된 심볼을 상기 인터리버 읽기 주소 제어기(104)로부터 제공되는 읽기 순서에 따라 해당 심볼을 읽어서 출력한다.
상기에서 제어기들(103,104)로부터 제공되는 제어 신호에 따른 기록 주소 포트/읽기 주소 포트에 저장되는 순서는 순차적 기록/인터리빙 읽기로 되어 있다.
하나의 변조 심볼에 필요로 하는 비트 숫자만큼을 상기 블록 인터리버(101)로부터 읽어서 디먹스(102)로 전달이 되어야 한다. IS-2000 통신 시스템에서, 변조 방법은 BPSK, QPSK, 8-PSK, 16-QAM이 사용된다. 그리고, IS-2000 1xtreme 통신 시스템에서 변조 방법은 BPSK, QPSK, 8-PSK, 16-QAM, 64-QAM이 사용된다. 이러한 시스템들에서, 전송 채널의 상태에 따라 변조 방법이 매 전송 구간마다 변화하므로, 하나의 변조 심볼은 1심볼, 2심볼, ..., 6심볼의 비트 시퀀스로 구성이 된다. 상기 디먹스(102)는 디멀티플렉서의 약칭이다.
그리고, 서로 동일한 하나의 변조 타이밍 정렬(modulation timing alignment)을 맞추기 위해, 각각의 래치(latch) 회로(105a,105b,...,105n)는 이 읽어진 출력 심볼들을처리 지연시킨다.
이와 같이, 종래 기술에서는 하나의 변조 심볼을 구성하기 위한 처리 대기 시간(latency)이 1,2,..,6이 되므로, 전송 동기화를 위해서는 추가의 래치 회로가 필요하다.
또한, 상기의 순차적 기록/인터리빙 읽기로 된 인터리버를 이용하는 경우에는, 동시에 6개의 출력 심볼들을 얻을 수 없다. 물론, 읽기 포트가 6개가 되는 메모리이면 가능할지도 모르나, 일반적으로 구현하기에는 곤란할 것이다.
따라서, 본 발명은 이상에서 언급한 종래 기술의 문제점을 감안하여 안출한 것으로서, 인터리버 메모리의 읽기 파트의 심볼이 주소에 따라 순차적으로 배열되게 되는 인터리빙 방법 및 이를 위한 장치를 제공하기 위한 것이다.
또한, 본 발명은 인터리버 메모리의 출력 포트에 대한 심볼 길이(width)가 기 결정된 변조 방식에서 요구하는 심볼 번호에 대한 최소 공배수를 갖도록 하는 인터리빙 방법 및 이를 위한 장치를 제공하기 위한 것이다.
또한, 본 발명은 인터리버 메모리의 입력 심볼에 대한 기록 주소 생성 방법을 동일한 인터리빙 효과를 위해 변경하도록 하는 인터리빙 방법 및 이를 위한 장치를 제공하기 위한 것이다.
도 1은 종래 기술에 따른 블록 인터리빙 과정을 위한 상세 구성을 나타낸 도면.
도 2는 본 발명에 따른 블록 인터리빙 과정을 위한 상세 구성을 나타낸 도면.
*도면의 주요 부분에 대한 부호의 설명*
201 : 블록 인터리버
202 : 디먹스
203 : 인터리버 기록 주소 제어기
204 : 인터리버 읽기 주소 제어기
상기 목적을 달성하기 위한 본 발명의 방법은 인터리빙 방법에 있어서, 데이터 비트들에 대하여 인터리빙된 메모리 주소를 부여하는 단계와 상기 메모리로부터 상기 데이터 비트들을 상기 메모리 주소에 따라 순차적으로 읽어 출력하는 단계 및 상기 출력된 비트들을 변조 심볼 단위에 따라 디멀티플렉싱하는 단계를 포함하여 이루어진다.또한, 본 발명은 데이터 비트들에 대하여 인터리빙된 메모리 주소를 부여하는 인터리버 기록 제어부와, 상기 메모리 주소에 따라 데이터 비트들이 기록되는 인터리버 메모리부와, 상기 메모리에 기록된 상기 데이터 비트들을 상기 메모리 주소에 따라 순차적으로 읽어 출력하도록 제어하는 인터리버 읽기 제어부 및 상기 출력된 비트들을 변조 심볼 단위에 따라 디멀티플렉싱하는 디멀티플렉싱부를 포함하여 이루어진다.이하 본 발명의 바람직한 일 실시 예에 따른 구성 및 작용을 첨부된 도면을 참조하여 설명한다.
도 2는 본 발명에 따른 블록 인터리빙 과정을 위한 상세 구성을 나타낸 도면이다.
도 2에 도시된 바와 같이, 블록 인터리버(201)의 메모리(미도시)는 새로운 입력 심볼을 기록하기 위한 심볼 입력 핀과, 기록 주소 포트가 있고, 인터리빙된 입력 심볼을 읽기 위한 데이터 출력 핀과, 읽기 주소 포트가 있다.
따라서, 상기 블록 인터리버(201)는 인터리버 기록 주소 제어기(203)로부터 제공되는 기록 순서에 따라 해당 입력 심볼을 기록 순서에 기록한다. 또한, 이 기록된 심볼을 상기 인터리버 읽기 주소 제어기(204)로부터 제공되는 읽기 순서에 따라 해당 심볼을 읽어서 디먹스(202)로 출력한다.
상기에서 제어기들(203,204)로부터 제공되는 제어 신호에 따른 기록 주소 포트/읽기 주소 포트에 저장되는 순서는 인터리빙 기록/순차적 읽기로 되어 있다.
즉, 인터리버 메모리에서 메모리 깊이를 J로 나타내고, 넓이를 m으로 나타내는 경우, 인터리버 메모리의 열 주소는 2m으로, 행 주소는 J로 표현된다. 이때, 이 인터리버 메모리에 인가되는 비트는 여러 열(column)들에서 랜덤하게 기록되고, 하나의 행에서 순차적으로 읽혀지도록 한다.
따라서, 디먹스(202)는 하나의 변조 심볼에 해당하는 수 비트로 이루어지는 시퀀스를 하나의 행 주소 포트에서 한 번의 액세스로 읽어 온다.
자세하게는, 본 발명에서 인터리빙 읽기 주소 수식에서 동일한 인터리빙 효과를 얻는 인터리빙 기록 주소는 다음과 같이 얻을 수 있다.
일반적으로 i 번째(i = 0,1,..,N-1) 출력 심볼에 대한 주소 Ai는 알려져 있고, 인터리버 읽기 포트에서 이 Ai번째의 데이터를 선택한다. 이 Ai(Ai= 0,1,..., N-1) 값은 인터리버 메모리에 순차적으로 기록된 출력 심볼의 인덱스이다.
이 Ai가 0이면 인터리버 메모리에 제일 처음 기록된 데이터의 인덱스이고, 1은 두 번째 기록된 데이터의 인덱스이다. Ai가 N-1이면 마지막으로 기록된 데이터의 인덱스이다.
본 발명은 상기의 특성을 이용하여 Ai번째 입력되는 데이터를 i번째 기록 주소에 저장하는 것이다. 이렇게 함으로써 읽기 포트에서 출력 데이터는 순차적 순서에 따라 읽어지며, 종래의 기술과 동일한 인터리빙 효과를 얻는다.
예를 들어, IS-2000 표준에서 제시되어 있는 인터리버 읽기 수식은 다음과 같다.
비트 리버싱 연산(Bit Reversing Operation) 인터리빙
순방향-역방향 비트 리버싱 연산 인터리빙
상기 수학식 1과, 수학식 2a, 수학식 2b에서 N은 인터리버 사이즈(2m* J)를 나타내고,는 x를 넘지 않는 최대 정수를 나타내고, BROm(y)는 y의 비트 반전된 m 비트 값을 나타낸다. 예를 들어, BRO3(6)은 3이다.
이에 대한 본 발명에서 제안한 인터리빙 기록 수식은 다음과 같다.
먼저, 상기의 비트 리버싱 연산 인터리빙에 대한 본 발명의 수식은 다음 수학식 3과 같다.
또한, 상기 순방향-역방향 비트 리버싱 연산 인터리빙에 대한 본 발명의 수식은 다음 수학식 4 및 수학식 5와 같다. 이하 수학식 4는 i번째 비트가 짝수 비트일 때, 수학식 5는 i번째 비트가 홀수 비트일 때 적용된다.
본 발명의 인터리버 읽기 포트는 순차적으로 데이터 읽기가 되어 한 번의 액세스로 수 비트를 동시에 얻을 수 있다.
한편, IS-2000 1xtreme 시스템에서 사용한 변조 방법은 BPSK, QPSK, 8-PSK, 16-QAM, 64-QAM이다. 이러한 변조 방식을 적용함에 있어, 하나의 변조 심볼을 구성하기 위해서는 각각 1,2,3,4,6 비트 인터리버 데이터를 필요로 한다.
따라서, 본 발명은 1,2,3,4,6 비트의 최소 공배수인 12 비트를 인터리버 메모리의 출력 데이터 비트 길이로 제안한다. 이 인터리버 메모리에서 한꺼번에 12 비트 데이터를 읽어서 변조 방법에 따라 필요한 데이터 비트수 만큼 다중화하여 변조를 수행한다.
이를 위해 디먹스(202)는 12비트의 시퀀스로 읽어져 출력되는 비트를 시스템에서 설정한 하나의 변조 심볼 길이에 따라 디먹싱한다.이상에서 설명한 본 발명은, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 있어 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 여러 가지 치환, 변형 및 변경이 가능하므로 전술한 실시예 및 첨부된 도면에 의해 한정되는 것이 아니다.
이상의 설명에서와 같이 본 발명은 하나의 변조 심볼에 필요한 인터리빙이 된 데이터 심볼 번호를 한 번의 액세스로 얻을 수 있다. 종래의 기술을 사용하면 필요로 하는 수만큼 인터리버 메모리를 액세스해야 한다. 그에 따라, 별도의 래취회로와, 처리 대기 시간을 달라지게 된다. 본 발명은 이러한 문제점을 한꺼번에 해결할 수 있음을 보여준다. 그리고, 본 발명은 종래 기술의 수식과 비교하여 본 발명의 수식이 복잡하질 않으며, 실제 구현에서 상대적으로 간단하게 구현된다.
Claims (6)
- 데이터 비트들에 대하여 인터리빙된 메모리 주소를 부여하는 단계;상기 메모리 주소에 따라 상기 데이터 비트들을 메모리에 기록하는 단계;상기 메모리로부터 상기 데이터 비트들을 상기 메모리 주소에 따라 순차적으로 읽어 출력하되, 변조 심볼 단위로 읽어 출력하는 단계; 및상기 출력된 비트들을 디멀티플렉싱하는 단계를 포함하여 이루어지는 인터리빙 방법.
- 제 1 항에 있어서,상기 메모리 주소를 부여하는 단계는,비트 리버싱 연산 인터리빙을 수행하는 단계; 및상기 인터리빙이 수행된 값을 데이터 비트에 대한 메모리 주소로 부여하는 단계;를 포함하는 인터리빙 방법.
- 제 2 항에 있어서,상기 비트 리버싱 연산 인터리빙은,에 의해 수행되는 것을 특징으로 하는 인터리빙 방법.(는 i 번째 출력 심볼에 대한 주소, J는 상기 메모리의 깊이, m은 상기 메모리의 넓이,,는 x를 넘지 않는 최대 정수, BROm(y)는 y의 비트 반전된 m 비트 값을 나타낸다.)
- 제 2 항에 있어서,상기 비트 리버싱 연산 인터리빙은,i 가 홀수일 때,(i가 홀수일 때)i 가 짝수일 때,(i가 짝수일 때)에 의해 수행되는 것을 특징으로 하는 인터리빙 방법.(는 i 번째 출력 심볼에 대한 주소, J는 상기 메모리의 깊이, m은 상기 메모리의 넓이,, N 은 인터리버 사이즈(2m* J)를 나타내고,는 x를 넘지 않는 최대 정수, BROm(y)는 y의 비트 반전된 m 비트 값을 나타낸다.)
- 제 1 항에 있어서,상기 데이터 비트들을 출력하는 단계는,상기 변조 심볼 단위에 상응하는 데이터 비트 수의 최소공배수에 해당하는 데이터 비트들을 한번의 액세스로 읽어서 출력하는 것을 특징으로 하는 인터리빙 방법.
- 데이터 비트들에 대하여 인터리빙된 메모리 주소를 부여하는 인터리버 기록 제어부;상기 메모리 주소에 따라 데이터 비트들이 기록되는 인터리버 메모리부;상기 메모리에 기록된 상기 데이터 비트들을 상기 메모리 주소에 따라 순차적으로 읽어 출력하도록 제어하는 인터리버 읽기 제어부; 및상기 출력된 비트들을 변조 심볼 단위에 따라 디멀티플렉싱하는 디멀티플렉싱부를 포함하여 이루어지는 인터리빙 장치.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2001-0077046A KR100447177B1 (ko) | 2001-12-06 | 2001-12-06 | 인터리빙 방법 및 이를 위한 장치 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2001-0077046A KR100447177B1 (ko) | 2001-12-06 | 2001-12-06 | 인터리빙 방법 및 이를 위한 장치 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20030046790A KR20030046790A (ko) | 2003-06-18 |
KR100447177B1 true KR100447177B1 (ko) | 2004-09-04 |
Family
ID=29573464
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR10-2001-0077046A KR100447177B1 (ko) | 2001-12-06 | 2001-12-06 | 인터리빙 방법 및 이를 위한 장치 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100447177B1 (ko) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100431082B1 (ko) * | 2001-12-28 | 2004-05-12 | 한국전자통신연구원 | 인터리버 메모리의 운용 방법 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10209884A (ja) * | 1997-01-21 | 1998-08-07 | Matsushita Electric Ind Co Ltd | インターリーブ回路、及びデインターリーブ回路 |
KR20000017420A (ko) * | 1998-08-21 | 2000-03-25 | 루센트 테크놀러지스 인크 | Cdma 시스템 |
KR20000031148A (ko) * | 1998-11-03 | 2000-06-05 | 서평원 | 인터리버 |
KR20010008096A (ko) * | 2000-11-08 | 2001-02-05 | 안병엽 | 터보 코드용 인코더 및 디코더 |
US6229824B1 (en) * | 1999-05-26 | 2001-05-08 | Xm Satellite Radio Inc. | Method and apparatus for concatenated convolutional endcoding and interleaving |
KR20010113804A (ko) * | 1999-04-15 | 2001-12-28 | 밀러 럿셀 비 | 다이버시티 전송 통신 시스템용 인터리버 및 디인터리버 |
-
2001
- 2001-12-06 KR KR10-2001-0077046A patent/KR100447177B1/ko not_active IP Right Cessation
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10209884A (ja) * | 1997-01-21 | 1998-08-07 | Matsushita Electric Ind Co Ltd | インターリーブ回路、及びデインターリーブ回路 |
KR20000017420A (ko) * | 1998-08-21 | 2000-03-25 | 루센트 테크놀러지스 인크 | Cdma 시스템 |
KR20000031148A (ko) * | 1998-11-03 | 2000-06-05 | 서평원 | 인터리버 |
KR20010113804A (ko) * | 1999-04-15 | 2001-12-28 | 밀러 럿셀 비 | 다이버시티 전송 통신 시스템용 인터리버 및 디인터리버 |
US6229824B1 (en) * | 1999-05-26 | 2001-05-08 | Xm Satellite Radio Inc. | Method and apparatus for concatenated convolutional endcoding and interleaving |
KR20010008096A (ko) * | 2000-11-08 | 2001-02-05 | 안병엽 | 터보 코드용 인코더 및 디코더 |
Also Published As
Publication number | Publication date |
---|---|
KR20030046790A (ko) | 2003-06-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3748550B2 (ja) | 高速ダウンリンクパケットアクセス移動通信システムにおけるシンボルマッピングのためのインターリービング装置及び方法 | |
CA2321977C (en) | Puncturing device and method for turbo encoder in mobile communication system | |
RU2255419C2 (ru) | Перемежитель и способ перемежения в системе связи | |
US7840859B2 (en) | Block interleaving with memory table of reduced size | |
EP1264409B1 (en) | Interleaver and method for interleaving an input data bit sequence using a coded storing of symbol and additional information | |
US6182265B1 (en) | Method for encoding a channel using a parallel convolutional encoder | |
US7073012B2 (en) | System and method for interleaving data in a communications device | |
KR20020048998A (ko) | 인트라-프레임 인터리빙을 구현하기 위한 방법 및 장치 | |
US6993702B2 (en) | Radix-N architecture for deinterleaver-depuncturer block | |
US7363552B2 (en) | Method and apparatus for convolutional interleaving/de-interleaving technique | |
KR100359814B1 (ko) | 인터리버 메모리 제어 장치 및 방법 | |
KR100447177B1 (ko) | 인터리빙 방법 및 이를 위한 장치 | |
KR20010080294A (ko) | 데이터 기록/판독 방법, 디인터리빙 방법, 데이터 처리방법, 메모리 및 메모리 드라이브 장치 | |
JP3551881B2 (ja) | インタリーブ装置およびデインタリーブ装置 | |
CN108023662B (zh) | 一种可配置的分组交织方法及交织器 | |
JPH09102748A (ja) | インターリーブ回路 | |
CN109728826B (zh) | 一种数据交织与解交织方法和装置 | |
KR100248395B1 (ko) | 디지털 통신용 채널 부호기 설계방법 | |
US7061988B2 (en) | Interleaver memory access apparatus and method of mobile communication system | |
JPH10163887A (ja) | インターリーブ装置およびデインターリーブ装置 | |
KR0183171B1 (ko) | 인터리버 및 디인터리버와 그 방법 | |
KR100782214B1 (ko) | 멀티 캐리어 인터리빙 구현장치 및 방법 | |
JPH0974361A (ja) | 変復調装置 | |
KR100487366B1 (ko) | 블록 인터리빙 방법 및 그를 위한 장치 | |
KR100525549B1 (ko) | 블럭 인터리버의 읽기용 어드레스 계수 장치 및 그 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
N231 | Notification of change of applicant | ||
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: 20080618 Year of fee payment: 5 |
|
LAPS | Lapse due to unpaid annual fee |