KR20010036487A - 이중 인터리빙 방법 - Google Patents

이중 인터리빙 방법 Download PDF

Info

Publication number
KR20010036487A
KR20010036487A KR1019990043514A KR19990043514A KR20010036487A KR 20010036487 A KR20010036487 A KR 20010036487A KR 1019990043514 A KR1019990043514 A KR 1019990043514A KR 19990043514 A KR19990043514 A KR 19990043514A KR 20010036487 A KR20010036487 A KR 20010036487A
Authority
KR
South Korea
Prior art keywords
memory
interleaver
memory area
symbols
input
Prior art date
Application number
KR1019990043514A
Other languages
English (en)
Other versions
KR100413421B1 (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 서평원
Priority to KR10-1999-0043514A priority Critical patent/KR100413421B1/ko
Publication of KR20010036487A publication Critical patent/KR20010036487A/ko
Application granted granted Critical
Publication of KR100413421B1 publication Critical patent/KR100413421B1/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
    • 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/276Interleaving address generation
    • 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/2782Interleaver implementations, which reduce the amount of required interleaving memory

Abstract

본 발명은 통신 시스템에 구비되는 인터리버(Interleaver)에 관한 것으로, 특히 데이터들을 쓰기 주소와 읽기 주소를 각각 조정하여 단일 메모리를 통해 정렬하는데 적당하도록 한 이중 인터리빙 방법에 관한 것이다. 이와 같은 본 발명에 따른 이중 인터리빙 방법은 다수의 사용자로부터 전송된 데이터들을 인터리빙 쓰기 주소에 따라 메모리에 입력하는 단계와, 상기 메모리의 순차적인 읽기 주소에 따라 상기 입력된 데이터들을 정렬하여 출력하는 단계로 이루어지므로써 시스템 부하가 줄어들고 데이터 전송 속도가 증가하는 효과가 있다.

Description

이중 인터리빙 방법{Method for dual Interleaving}
본 발명은 통신 시스템에 구비되는 인터리버(Interleaver)에 관한 것으로, 특히 입력되는 데이터들을 쓰기 주소와 읽기 주소를 각각 조정하여 단일 메모리를 통해 정렬하는데 적당하도록 한 이중 인터리빙 방법에 관한 것이다.
일반적으로 무선 채널은 페이딩(Fading) 특성으로 인하여 집중적인 에러(Burst error)가 발생할 확률이 높다. 또한, 무선 채널에서는 수신측의 에러 복구능력 이상으로 버스트 에러가 발생할 수 있어 송신측의 채널 코딩만으로는 일정 품질의 데이터를 전송할 수 없게 된다.
따라서, 통신 시스템에서는 이러한 무선 채널의 특성을 고려하여 버스트 에러를 분산시킴으로써 채널 코딩의 효과가 나타날 수 있도록 하는 인터리빙 기술을 사용하고 있다.
도 1은 종래 이동 통신 시스템의 상향 링크에 있어서 신호 흐름 절차를 나타낸 블록 구성도이다.
도 1을 참조하면, 다수의 사용자로부터 다양한 전송율로 입력되는 데이터들을 채널 코딩하는 채널 코딩부(100)와, 채널 코딩부(100)로부터 출력되는 데이터들의 전송율을 일정 전송율로 통일하는 심볼 반복기(101)와, 버스트(Burst) 에러를 방지하기 위해 심볼 반복기(101)로부터 출력된 심볼들을 정렬하는 인터리버(102)와, 인터리버(102)로부터 출력되는 심볼들을 확산 및 변조하는 왈시 PN 확산부(103)로 구성된다.
도 2a 내지 도 2b는 도 1에 보인 인터리버의 동작을 설명하기 위한 도면이다.
도 2a를 참조하면, 종래 인터리버는 채널 코딩되어 전송된 입력 심볼들을 메모리 쓰기 주소 발생기(미도시)로부터 발생되는 메모리 쓰기 주소에 따라 메모리(200)에 순서대로 입력하고, 메모리(200)에 저장된 출력 심볼의 출력시에는 인터리빙 알고리즘에 의해 메모리 읽기 주소 발생기(미도시)로부터 발생되는 메모리 읽기 주소에 따라 출력 심볼을 읽는 방식으로 동작한다.
예를 들어, IS-95에 있어서 기지국의 통화 채널(Traffic channel)용으로 상용되는 인터리버는 384 개의 크기를 갖으며 그에 따라 인터리빙 알고리즘은 다음과 같다.
먼저, 입력 심볼은 0 ∼ 383 번지까지의 순차적인 메모리 쓰기 주소에 따라 순서대로 입력된다.
그리고, 출력 심볼은 다음 식 1에 의해 발생되는 메모리 읽기 주소에 따라 출력된다.
])
식 1에서 i 는 0 ∼ 383이며, [x]는 x보다 크지 않는 최대 정수를 의미하고, BROm(y)는 y의 m 비트 반전을 의미한다.
따라서, i 가 0 이면 메모리 읽기 주소는 0 이고, i 가 1 이면 메모리 읽기 주소는 64, i 가 2 이면 메모리 읽기 주소는 128 로서 발생한다.
도 2b를 참조하면, 종래 인터리버는 메모리 쓰기 시간과 메모리 읽기 시간이 서로 상이하거나 또는 입력 심볼들의 수가 증가할 경우를 대비하여 두 개의 메모리를 구성하여 동작한다.
즉, 인터리버는 쓰기 동작시 제 1 메모리(201)를 이용하면 읽기 동작시에는 제 2 메모리(202)를 이용한다. 마찬가지로 쓰기 동작시 제 2 메모리(201)를 이용하면 읽기 동작시에는 제 1 메모리(202)를 이용한다.
그러나, 이와 같은 종래 인터리버는 적어도 하나 이상의 메모리로 구성되어야만 입/출력 심볼들의 충돌 없이 인터리빙 할 수 있으므로 그에 따라 시스템 부하가 늘어나며 또한 동작 속도에 한계를 가지게 되는 문제점이 있다.
따라서, 본 발명의 목적은 이상에서 언급한 종래 기술의 문제점을 감안하여 안출한 것으로서, 단일 메모리를 이용하여 입력 심볼들을 정렬할 수 있는 이중 인터리빙 방법을 제공하기 위한 것이다.
이상과 같은 목적을 달성하기 위한 본 발명의 일 특징에 따르면, 이중 인터리빙 방법은 다수의 사용자로부터 전송된 데이터들을 인터리빙 쓰기 주소에 따라 메모리에 입력하는 단계와, 상기 메모리의 순차적인 읽기 주소에 따라 상기 입력된 데이터들을 정렬하여 출력하는 단계로 이루어진다.
바람직하게, 제 1항에 있어서, 상기 입력 단계에서, 상기 인터리빙 쓰기 주소는 6 BRO6(i mod 64) + ([]), i = 0 ∼ 383 에 의해 발생된다.
도 1은 종래 이동 통신 시스템의 상향 링크에 있어서 신호 흐름 절차를 나타낸 블록 구성도.
도 2a 내지 도 2b는 도 1에 보인 인터리버의 동작을 설명하기 위한 도면.
도 3은 본 발명에 따른 이중 인터리버를 나타낸 도면.
도 4는 본 발명의 다른 실시예에 따른 이중 인터리버를 나타낸 도면.
*도면의 주요 부분에 대한 부호의 설명*
300 : 제 1 메모리 301 : 제 2 메모리
303 : 공통 메모리
이하 본 발명의 바람직한 일 실시 예에 따른 구성 및 작용을 첨부된 도면을 참조하여 설명한다.
본 발명에서는 단일 메모리를 이용하여 입력 심볼을 정렬하는 이중 인터리빙 방법을 제안한다.
이를 위해 본 발명에서는 메모리 쓰기 주소와 읽기 주소를 새로 발생하며 인터리버의 쓰기 및 읽기 속도에 따라 충돌이 발생하는 심볼들을 별도로 저장하여 처리한다. 이때 본 발명에 따른 메모리 쓰기 주소는 종래 메모리 읽기 주소의 발생 방법을 고려하여 발생하며, 메모리 읽기 주소는 종래 메모리 쓰기 주소와 동일하게 발생한다.
도 3은 본 발명에 따른 이중 인터리버를 나타낸 도면이다.
도 3을 참조하면, 본 발명에 따른 이중 인터리버는 하나의 메모리를 사용하여 동작한다. 이때, 본 발명에 따른 메모리는 그 기능상 공통 메모리(302)와, 제 1 메모리(300)와 및 제 2 메모리(301)로 구분된다.
여기서, 제 1 메모리(300)와 제 2 메모리(301)는 인터리버에 데이터를 쓰는 시간 동안에 인터리버로부터 읽어간 출력 심볼의 크기에 해당하는 부분을 저장할 수 있도록 추가된 메모리이다.
즉, 종래 인터리버의 동작시 1 개의 입력 심볼을 메모리에 쓰는 시간이 1 ms라고 가정하면 1 개의 출력 심볼을 읽는 시간은 10μs이므로 약 100개 정도의 심볼들이 서로 충돌한다. 이때, 충돌하는 100개의 심볼들을 충돌하지 않는 심볼들과 별도로 저장하기 위해서 기능상 제 1 메모리(300)와 제 2 메모리(301)를 구성한다.
여기서, 공통 메모리(302)는 입력 심볼의 쓰기와 읽기시 서로 충돌이 나지 않는 부분을 저장하기 위해 구성된다.
이와 같은 제 1 메모리(300), 제 2 메모리(301) 및 공통 메모리(302)를 구비한 인터리버의 동작은 다음과 같다.
우선, 채널 코딩부로부터 에러 정정을 위해 부호화되어 전송된 심볼들은 다음 식 2에서 발생되는 메모리 쓰기 주소에 따라 메모리에 입력된다.
]), i = 0 ∼ 383
여기서 i 는 메모리 크기에 따라 가변될 수 있으나 본 발명에서는 0 ∼ 383으로 사용하고, i mod χ는 모듈러 연산을 나타내며, BRO6(Bit Reverse Operate)은 6비트 반전을 나타낸다.
따라서, 입력 심볼은 상기 식 2에 의해 표 1과 같이 발생되는 메모리 쓰기 주소에 따라 메모리에 입력된다.
i 메모리 쓰기 주소
0 0
1 192
2 96
... .....
표 1을 참조하면, i 값은 심볼의 입력 순서를 나타내므로 첫 번째로 입력된 입력 심볼은 메모리의 0 번지에 저장되며, 두 번째로 입력된 입력 심볼은 메모리의 192 번지에 저장된다. 이러한 동작은 383 까지 계속된다.
여기서 식 2 에 의해 발생된 메모리 쓰기 주소에 따르면 인터리버의 쓰기 및 읽기 속도에 따라 충돌이 발생하는 입력 심볼들은 제 1 메모리(300)와 제 2 메모리(301)중 어느 하나의 메모리에 입력되며 충돌이 발생하기 않는 입력 심볼들은 공통 메모리(302)에 입력된다.
한편, 본 발명에 따른 인터리버의 메모리 읽기 주소는 0 ∼ 383 번지까지 순차적으로 발생한다. 따라서, 인터리버의 출력 심볼은 발생된 메모리 읽기 주소에 따라 우선 공통 메모리(302)로부터 순차적으로 출력되고 이어 제 1 메모리(300)와 제 2 메모리(301)중 어느 하나의 메모리로부터 출력된다.
보다 상세히 설명하면, 만약 인터리버가 쓰기 동작시 제 1 메모리(300)에 입력 심볼들을 입력하고 있으면 읽기 동작 시에는 제 2 메모리(301)로부터 출력 심볼들을 읽어 출력하고, 쓰기 동작시 제 2 메모리(301)에 입력 심볼들을 입력하고 있으면 읽기 동작 시에는 제 1 메모리(300)로부터 출력 심볼들은 읽어 순차적으로 출력한다.
따라서, 인터리버는 공통 메모리(302)와 제 1 메모리(300)에 입력 심볼들을 쓰고 있는 동안에는 제 2 메모리(301)로부터 출력 심볼들을 순차적으로 읽고, 이어 제 2 메모리(301)에서 출력 심볼들을 모두 읽은 후에 공통 메모리(302)와 제 1 메모리(300)로부터 출력 심볼들을 읽는다. 이때, 인터리버는 제 1 메모리(300)로부터 출력 심볼들을 읽는 시작 시점에 새로 들어오는 입력 심볼들을 공통 메모리(302)와 제 2 메모리(301)에 쓰기 시작한다.
도 4는 본 발명의 다른 실시예에 따른 이중 인터리버를 나타낸 도면이다.
도 4를 참조하면, 일반적으로 통신 시스템은 다수의 사용자를 서비스하므로 인터리버에는 다수의 사용자로부터 다양한 전송율을 갖는 입력 심볼들이 전송된다.
여기서, 만약 하나의 사용자가 다수 개의 채널을 점유하여 데이터를 전송할 경우 그에 따른 입력 심볼들을 처리하기 위한 복수개의 인터리버가 구성되어야 한다.
이를 위해 본 발명에서는 본 발명에서 제안한 N개의 이중 인터리버를 이용하여 하나의 가상 인터리버를 구성하고, 전송 시간 별로 변화하는 데이터의 전송 속도에 따라 구성된 가상 인터리버의 크기를 변화시킨다.
즉, 사용자로부터 전송된 입력 심볼의 속도에 따라 공통 메모리는 256 × N의 크기로 구성되어 사용되고, 제 1 메모리와 제 2 메모리는 각각 128 × N의 크기로 구성되어 사용된다.
이때에도 전술한 바와 같이 메모리 쓰기 주소는 식 2에 따라 발생하고 메모리 읽기 주소는 순차적으로 발생한다. 따라서, 인터리버가 256 × N 개의 공통 메모리(402a ∼ 402n)와 128 × N 개의 제 1 메모리(400a ∼ 400n)에 입력 심볼들을 쓰고 있는 동안에는 128 × N 개의 제 2 메모리(401a ∼ 401n)로부터 출력 심볼들을 순차적으로 읽고, 128 × N 개의 제 2 메모리(401a ∼ 401n)에서 출력 심볼들을 모두 읽은 후에 256 × N 개의 공통 메모리(402a ∼ 402n)와 128 × N 개의 제 1 메모리(400a ∼ 400n)로부터 출력 심볼들을 읽는다. 이때, 128 × N 개의 제 1 메모리(400a ∼ 400n)로부터 출력 심볼들을 읽는 시작 시점에 새로 들어오는 입력 심볼들을 256 × N 개의 공통 메모리(402a ∼ 402n)와 128 × N 개의 제 2 메모리(401a ∼ 401n)에 쓰기 시작한다.
이상의 설명에서와 같이 본 발명에 따른 이중 인터리링 방법은 하나의 메모리를 이용하여 다양한 입력 심볼들을 정렬할 수 있으므로 시스템 부하가 줄어들고 데이터 전송 속도가 증가하는 효과가 있다.
또한, 본 발명에 다른 부분 이중 인터리버는 전송 시간별로 입력 심볼들의 전송 속도가 변할 경우에는 사용되지 않는 인터리버 메모리를 이용하여 입력 심볼들을 처리할 수 있어 시스템 자원 활용 면에서 탁월한 효과가 있다.
또한, 본 발명에 따른 이중 인터리버는 입력 심볼을 신속히 처리할 수 있어 음성외에 영상 및 디지털 데이터들을 고속으로 전송해야 하는 차세대 통신 시스템에 적용하기에 용이하다는 효과가 있다.

Claims (4)

  1. 다수의 사용자로부터 전송된 데이터들을 인터리빙 쓰기 주소에 따라 메모리에 입력하는 단계와,
    상기 메모리의 순차적인 읽기 주소에 따라 상기 입력된 데이터들을 정렬하여 출력하는 단계로 이루어지는 것을 특징으로 하는 이중 인터리빙 방법.
  2. 제 1항에 있어서, 상기 입력 단계에서,
    상기 인터리빙 쓰기 주소는 6 BRO6(i mod 64) + ([]), i = 0 ∼ 383에 의해 발생되는 것을 특징으로 하는 이중 인터리빙 방법.
  3. 공통 메모리 영역과 제 1 메모리 영역과 제 2 메모리 영역으로 구성되는 메모리를 구비한 인터리버에 있어서,
    다수의 사용자로부터 전송된 데이터들을 인터리빙 쓰기 주소에 따라 상기 공통 메모리 영역과 상기 제 1 메모리 영역에 입력하는 단계와,
    상기 공통 메모리 영역과 제 1 메모리 영역에 상기 데이터들이 입력되는 동안 상기 메모리의 순차적인 읽기 주소에 따라 상기 제 2 메모리 영역에 이미 저장되어 있는 데이터들을 출력하는 단계와,
    상기 2 메모리 영역에 이미 저장되어 있는 데이터들이 모두 출력된 이후, 상기 공통 메모리 영역과 제 1 메모리 영역에 저장된 데이터들을 출력하는 단계와,
    상기 제 1 메모리 영역에 저장된 데이터들이 출력되는 시점에 상기 공통 메모리 영역과 제 2 메모리 영역에 상기 인터리빙 쓰기 주소에 따라 다음 데이터들을 입력하는 단계가 반복적으로 이루어지는 것을 특징으로 하는 이중 인터리빙 방법.
  4. 제 3항에 있어서, 상기 메모리는 상기 다수의 사용자로부터 전송되는 데이터들의 크기에 따라 적어도 하나 이상이 구비되어 상기 전송된 데이터들을 공동으로 처리하는 것을 특징으로 하는 이중 인터리빙 방법.
KR10-1999-0043514A 1999-10-08 1999-10-08 이중 인터리빙 방법 KR100413421B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR10-1999-0043514A KR100413421B1 (ko) 1999-10-08 1999-10-08 이중 인터리빙 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR10-1999-0043514A KR100413421B1 (ko) 1999-10-08 1999-10-08 이중 인터리빙 방법

Publications (2)

Publication Number Publication Date
KR20010036487A true KR20010036487A (ko) 2001-05-07
KR100413421B1 KR100413421B1 (ko) 2003-12-31

Family

ID=19614549

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-1999-0043514A KR100413421B1 (ko) 1999-10-08 1999-10-08 이중 인터리빙 방법

Country Status (1)

Country Link
KR (1) KR100413421B1 (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100431082B1 (ko) * 2001-12-28 2004-05-12 한국전자통신연구원 인터리버 메모리의 운용 방법
KR100846017B1 (ko) * 2000-10-30 2008-07-11 가부시키가이샤 히타치세이사쿠쇼 데이터 인터리브/디인터리브 효율을 향상시키기 위한 반도체 장치, 무선 통신 장치, 컴퓨터 프로그램 제품 및 방법
KR101116264B1 (ko) * 2006-02-21 2012-03-14 삼성전자주식회사 통신시스템에서 인터리빙 장치 및 방법

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101181969B1 (ko) * 2009-06-26 2012-09-11 (주)에프씨아이 엘디피시 부호의 복호방법

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2917853B2 (ja) * 1995-04-07 1999-07-12 日本電気株式会社 コンボリューショナル・インターリーブ回路
JPH09238087A (ja) * 1996-02-29 1997-09-09 Nec Eng Ltd インタリーブ処理回路
KR100215566B1 (ko) * 1996-09-30 1999-08-16 전주범 정적 램을 이용한 길쌈 인터리버/디인터리버 및정적 램의 주소 생성 방법
KR100243468B1 (ko) * 1997-06-26 2000-02-01 전주범 듀얼 포트 메모리를 이용한 길쌈 인터리버 /디인터리버

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100846017B1 (ko) * 2000-10-30 2008-07-11 가부시키가이샤 히타치세이사쿠쇼 데이터 인터리브/디인터리브 효율을 향상시키기 위한 반도체 장치, 무선 통신 장치, 컴퓨터 프로그램 제품 및 방법
KR100431082B1 (ko) * 2001-12-28 2004-05-12 한국전자통신연구원 인터리버 메모리의 운용 방법
KR101116264B1 (ko) * 2006-02-21 2012-03-14 삼성전자주식회사 통신시스템에서 인터리빙 장치 및 방법

Also Published As

Publication number Publication date
KR100413421B1 (ko) 2003-12-31

Similar Documents

Publication Publication Date Title
CN100361420C (zh) 码分多址通信系统中交换不同长度的帧消息的装置和方法
JP3415693B2 (ja) インターリーブプロセス
US6421333B1 (en) Channel coding and interleaving for transmission on a multicarrier system
US7814388B2 (en) System and method for interleaving data in a wireless transmitter
JPH08242217A (ja) データをインタリーブする装置および移動通信システム
KR100952450B1 (ko) 인터리빙된 다중 데이터 플로우 전송
US6396822B1 (en) Method and apparatus for encoding data for transmission in a communication system
KR100680120B1 (ko) 인트라-프레임 인터리빙을 구현하기 위한 방법 및 장치
US7688900B2 (en) Interleaver decorrelation in data transmitting and receiving devices
US7230995B2 (en) Interleaver pattern modification
JP2000068863A (ja) 符号化装置及びその方法
JP2910990B2 (ja) 移動通信システム用送受信機
US7073012B2 (en) System and method for interleaving data in a communications device
KR100413421B1 (ko) 이중 인터리빙 방법
US7111207B2 (en) Error-correcting communication method and communication apparatus with de-interleaving and rate de-matching
EP1045522A1 (en) Method and device for channel interleaving and multiplexing
KR920003683A (ko) 셀룰러 송신 채널의 심벌을 인터리빙하기 위한 장치 및 방법
JP2855172B2 (ja) 可変レート伝送方法、および同方法を用いた送信装置および受信装置
US20030147366A1 (en) Combining transport formats having heterogeneous interleaving schemes
KR101177135B1 (ko) 이동통신시스템에서 디인터리빙을 효율적으로 수행하는장치 및 방법
KR20000031148A (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: 20061129

Year of fee payment: 4

LAPS Lapse due to unpaid annual fee