KR100438427B1 - 디인터리빙 장치 및 방법 - Google Patents

디인터리빙 장치 및 방법 Download PDF

Info

Publication number
KR100438427B1
KR100438427B1 KR10-2001-0076287A KR20010076287A KR100438427B1 KR 100438427 B1 KR100438427 B1 KR 100438427B1 KR 20010076287 A KR20010076287 A KR 20010076287A KR 100438427 B1 KR100438427 B1 KR 100438427B1
Authority
KR
South Korea
Prior art keywords
memory
symbols
frame
section
predetermined time
Prior art date
Application number
KR10-2001-0076287A
Other languages
English (en)
Other versions
KR20030045535A (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-2001-0076287A priority Critical patent/KR100438427B1/ko
Publication of KR20030045535A publication Critical patent/KR20030045535A/ko
Application granted granted Critical
Publication of KR100438427B1 publication Critical patent/KR100438427B1/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/2782Interleaver implementations, which reduce the amount of required interleaving memory

Abstract

본 발명에 따른 적어도 한 프레임을 저장할 수 있는 크기를 가지는 제1메모리와, 상기 제1메모리보다 작은 크기를 가지는 제2메모리를 구비하는 디인터리버에서 상기 제1 및 제2메모리를 억세스하는 방법이, 미리 정해진 시간구간의 앞구간에서 상기 제1메모리에 기록되어 있는 심볼들을 디인터리빙하여 독출하고, 동시에 입력 프레임의 일부 심볼들을 상기 제2메모리에 기록하는 과정과, 상기 미리 정해진 시간구간의 뒤구간에서 상기 입력 프레임의 나머지 심볼들을 상기 제1메모리의 공유영역에 기록하는 과정과, 상기 입력 프레임의 다음 프레임의 심볼들을 상기 제1메모리에 저장하고, 동시에 상기 제2메모리에 기록된 심벌들과 상기 제1메모리의 공유영역에 기록된 심볼들을 디인터리빙하여 독출하는 과정을 포함한다.

Description

디인터리빙 장치 및 방법{DEINTERLEAVING APPARATUS AND METHOD}
본 발명은 디인터리빙 장치 및 방법에 관한 것으로, 특히 디인터리버의 메모리를 감소시키기 위한 장치 및 방법에 관한 것이다.
일반적으로, 이동통신시스템에서, 모뎀(MODEM)에 존재하는 인터리버(Interleaver) 및 디인터리버(Deinterleaver)는 복잡도(complexity)를 감소시키기 위해 메모리의 크기를 줄이는 방법을 사용한다. 상기 인터리버 및 디인터리버는 채널에 의한 심볼(symbol)사이의 상관(correlation)을 감소시키고 타임 다이버시티(time diversity)를 얻기 위해 이용된다.
즉, 상기 인터리버는 전송할 심볼들을 미리 정해진 시간(프레임)내에서 순서를 바꾸어 출력하는 디바이스이고, 상기 디인터리버는 인터리빙의 기본단위인 한 프레임의 심볼들을 수신한 순서대로 메모리에 저장한후 이를 원래의 순서대로 정렬하는 디바이스이다. 따라서, 미리 정해진 시간(프레임)내의 데이터율(Data rate)이 높을수록 큰 사이즈의 메모리가 요구된다.
이하 3GPP2 표준(standard)에서 제안하는 디인터리버를 예를들어 설명할 것이다.
상기 디인터리버는 실시간으로 입력되는 채널의 복조된 심볼들을 메모리에 저장한다. 그리고, 기본단위인 프레임의 마지막 심볼이 입력된후 이 심볼들을 사용하는 후단 블록의 요구시간에 동기되어 디인터리빙하여 출력한다. 여기서, 상기 디인터리버의 후단 블록은 복호기(decoder)가 일반적이다.
3GPP2 레이크 수신기(rake receiver)의 경우, 디인터리버는 결합기(combining)로부터의 프레임단위의 심볼들을 순서대로 저장한다. 프레임의 마지막 심볼이 입력된후, 이를 채널 복호기에 알리고, 상기 채널 복호기의 요구에 따라 저장해둔 심볼들을 원래의 순서로 복원하여 상기 복호기로 전달한다. 여기서, 상기 심볼들을 상기 채널 복호기에 전달하는 동안에도, 상기 디인터리버는 상기 결합기로부터 다음 프레임에 해당하는 심볼들을 입력받는다. 이때, 상기 입력되는 심볼들을 현재 읽고 있는 메모리에 저장할 경우, 상기 디인터리버의 특성상 아직 읽혀지지 않은 메모리의 어드레스에 새로운 입력 심볼이 오버라이트(overwrite)되므로, 이러한 문제를 해결하기 위해, 통상 현재 채널복호기로 출력할 프레임과 결합기로부터 입력되는 프레임을 저장할 메모리를 각각 구분하여 사용하고 있다.
상기 메모리들의 크기는 각각 한 프레임의 최대 심볼의 개수에 대응하여 구성된다. 상기 두 메모리들을 운용하는 방안은, 매 프레임마다 한 메모리가 입력 심볼들을 기록하는 동안, 다른 메모리는 이전 저장된 심볼들을 읽는 행위를 하게 된다. 그리고, 매 프레임마다 두 메모리의 역할은 바뀐다. 이에 대한 구조를 도 1에 도시하고 있다.
도시된 바와 같이, 디인터리버는 두 개의 메모리들(11 및 12)과, 상기 두 메모리들(11, 12)로 심볼을 기록하고 상기 메모리들로부터 심볼들을 독출하기 위한 어드레스를 생성하는 제어기(control logic)(13)와, 상기 메모리의 출력을 선택하기 위한 선택기(14)를 포함하여 구성된다. 여기서, 상기 제어기(13)는 상기 어드레스뿐만 아니라 심볼들의 입력속도 및 출력속도를 제어하기 위한 칩선택(Chip select)신호, 기록동작을 지시하기 위한 기록 인에이블(write Enable)신호 및 상기 선택기(14)의 출력을 선택하기 위한 선택신호를 생성한다.
도 2는 제1메모리(11)와 제2메모리(12)의 동작을 시간축으로 도시한 도면이다. 도시된 바와 같이, 한 프레임(frame)의 심볼들의 개수가 8이고, 1→2→3→4→5→6→7→8의 순서로 들어온 심볼들을 1→8→5→4→3→6→7→2의 순서로 출력하는 동작을 설명한 것이다. 앞서 설명한 바와 같이, 상기 제1메모리(11)과 상기 제2메모리(12)는 기록동작을 서로 번갈아 수행하고, 특정 하나의 메모리(11)에서 기록동작을 수행하는 동안 다른 메모리(12)는 저장되어 있는 이전 프레임에 대한 독출 동작을 수행한다. 여기서, 주목할 점은 상기 독출동작은 상기 기록동작의 짧은 시간내에 이루어진다는 것이다. 즉, 독출을 수행하는 메모리는 독출동작을 완료한후, 다른 메모리가 기록동작을 완료할동안 아무런 동작 없이 자원을 낭비하게 된다.
상기 도 2와 같은 동작은 상기 제어기(13)에서 발생되는 선택기의 선택신호와 두 메모리들의 어드레스(address)신호, 칩선택(chip select)신호, 기록인에이블(write enable) 신호에 의해 이루어진다. 상기 신호들의 타이밍(timing)도를 도 3에 도시하고 있다.
도시된 바와 같이, 상기 칩선택(Chip Select)신호, 상기 기록인에이블(Write Enable)신호는 로우 에지(edge)에서 동작되도록 하는 "동작 로우 신호(active low signal)"이고, 상기 선택신호(selection)는 '1'일때 제1메모리(11)에서 심볼들을독출하고, '0'일 때 제2메모리(12)에서 심볼들을 독출하도록 되어 있다. 즉, 심볼들을 기록하기 위한 메모리는 상기 기록인에이블 신호에 응답하여 입력되는 심볼들을 순차로 기록한다. 여기서, 상기 기록속도는 기록 칩선택신호에 동기되어 이루어진다. 도시된 바와 같이, 상기 기록 칩선택신호와 기록인에이블 신호는 동일한 주기를 가지고 발생된다. 한편, 심볼들을 독출하는 메모리는 상기 기록 칩선택신호보다 주기가 짧은 독출 칩선택신호에 응답하여 저장되어 있는 심볼들을 제어기(13)에서 제공되는 어드레스에 의해 디인터리빙하여 독출한다. 이러한 동작을 흐름도로 도시하면 도 4와 같다.
먼저 기록동작을 살펴보면, 먼저 제어기(13)는 401단계에서 제1메모리(11)가 심볼들을 기록할 차례인지를 검사한다. 만일, 상기 제1메모리(11)가 심볼들을 기록할 차례이면, 상기 제어기(13)는 403단계로 진행하여 상기 제1메모리(11)를 기록 메모리로 동작시키고, 그렇지 않으면 405단계로 진행하여 제2메모리(12)를 기록메모리로 동작시킨다.
다음으로, 독출동작을 살펴보면, 먼저 상기 제어기(13)는 411단계에서 제1메모리(1)가 심볼들을 기록할 차례인지를 검사한다. 만일, 상기 제1메모리(11)가 심볼들을 기록할 차례이면, 상기 제어기(13)는 415단계로 진행하여 상기 제2메모리(12)를 독출 메모리로 동작시키고, 그렇지 않으면 413단계로 진행하여 상기 제1메모리(11)를 독출 메모리로 동작시킨다.
앞서 설명한 종래기술에서 나타내는 문제점은 다음과 같다.
일반적으로, 디인터리버(Deinterleaver)에서 사용하는 심볼비트들은 멀티비트(multi-bit)들이다. 따라서, 한 프레임의 주기를 저장하기 위해서는 다음과 같은 메모리 크기가 요구된다.
(symbol당 bit수) * (한 frame당 최대 symbol 수) * (Read/Write를 번갈아 하기 위한 메모리 개수) = (symbol당 bit수) * N * 2
예를들어, 3GPP2 표준(standard) 순방향 230.4kbps의 데이터율(data rate)을 지원하고, 한 심볼당 6비트로 구성되는 수신기의 디인터리버를 가정하는 경우, 한 프레임당 최대 심볼의 개수가 12,288이므로 이때 필요로 하는 메모리의 크기는 6bit*12,288*2 = 147,456 bit이고, 이는 모뎀(MODEM) 전체의 하드웨어(hardware)에서 상당한 부분을 차지한다.
또한, 디인터리버의 후단블럭인 채널복호기(channel decoder)는 빠른 처리(processing time)를 위해 디인터리버(Deinterleaver)에 저장되어 있는 심볼(symbol)들을 버스트(burst)하게 짧은 시간 동안 독출해 간다. 이때, 상기 채널복호기가 심볼들을 모두 독출해간후, 독출 메모리는 다음 입력되는 프레임(frame)의 심볼들이 기록될 때까지, 상기 도 2에 도시된 "No access time"과 같이, 아무런 억세스(access)없이 불필요한 시간을 가지게 된다. 다시말해, 상기 도 2에서 사선으로 도시된 "No access time" 구간동안은 이미 독출 메모리에 저장되었던 심볼들이 모두 독출된 상태이므로 새로운 심볼들을 기록할수 있음에도 불구하고 그대로 방치해두었다. 즉, 종래기술에 따른 디인터리버는 하드웨어에서 많은 부분을 차지하는 메모리를 불필요하게 낭비하는 문제점을 가지고 있다.
따라서, 본 발명의 목적은 이동통신시스템에서 디인터리버의 메모리 크기를 감소시키기 위한 장치 및 방법을 제공함에 있다.
상기 목적을 달성하기 위한, 본 발명의 제1견지에 따르면,디인터리빙 장치가, 적어도 한 프레임을 저장할 수 있는 크기를 가지는 제1메모리와, 상기 제1메모리보다 작은 크기의 제2메모리와, 심볼들을 기록하는 속도보다 독출하는 속도가 빠르며, 상기 제1메모리에서 저장된 심볼들을 독출하고 남은 휴지시간을 이용해 상기 독출시간동안 상기 제2메모리에 저장하고 남은 입력 프레임의 일부 심볼들을 상기 제1메모리의 공유영역에 저장하도록 제어하는 제어기를 포함하는 것을 특징으로 한다.
본 발명의 제2견지에 따르면, 적어도 한 프레임을 저장할 수 있는 크기를 가지는 제1메모리와, 상기 제1메모리보다 작은 크기의 제2메모리를 가지는 디인터리버에서 상기 제1 및 제2메모리를 억세스하는 방법이, 프레임의 심볼들을 기록하기 위해 소요되는 미리 정해진 시간구간의 앞구간에서 상기 제1메모리에 기록되어 있는 심볼들을 디인터리빙하여 독출하고, 동시에 입력 프레임의 일부 심볼들을 상기 제2메모리에 기록하는 과정과, 상기 미리 정해진 시간구간의 뒤구간에서 상기 입력 프레임의 나머지 심볼들을 상기 제1메모리의 공유영역에 기록하는 과정과, 상기 입력 프레임의 다음 프레임의 심볼들을 상기 제1메모리에 저장하고, 동시에 상기 제2메모리 및 상기 제1메모리의 공유영역에 기록된 심볼들을 인터리빙하여 출력하는 과정을 포함하는 것을 특징으로 한다.
도 1은 종래기술에 따른 동일한 크기의 두 메모리를 구비하는 디인터리버의 구성도.
도 2는 종래기술에 따른 디인터리버의 동작을 도시하는 도면.
도 3은 종래기술에 따른 디인터리버에서 메모리 억세스를 제어하기 위한 제어신호들을 보여주는 타이밍도.
도 4는 종래기술에 따른 디인터리버에서 메모리 억세스를 위한 제어절차를 도시하는 도면.
도 5는 본 발명의 실시 예에 따른 상이한 크기의 두 메모리를 구비하는 디인터리버의 구성도.
도 6은 본 발명의 실시 예에 따른 디인터리버의 동작을 도시하는 도면.
도 7은 본 발명의 실시 예에 따른 디인터리버에서 메모리 억세스를 제어하기 위한 제어신호들을 보여주는 타이밍도.
도 8은 본 본 발명의 실시 예에 따른 디인터리버에서 메모리 억세스를 위한 제어절차를 도시하는 도면.
이하 본 발명의 바람직한 실시 예를 첨부된 도면의 참조와 함께 상세히 설명한다. 본 발명을 설명함에 있어서, 관련된 공지기능 혹은 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단된 경우 그 상세한 설명은 생략한다.
도 5는 본 발명의 실시 예에 따른 디인터리버의 구성을 도시하고 있다. 본 발명에 따른 디인터리버의 구조는 앞서 종래기술에서 설명한 디인터리버의 구조와 유사하다. 단지 차이가 있다면, 제2메모리(52)의 크기가 제1메모리(51)보다 작고, 상기 제2메모리의 크기가 감소됨에 따른 제어기(53)의 동작이 상이하다.
상기 도 5를 참조하면, 제어기(53)는 심볼들을 해당 위치에 기록 및 독출하기 위한 어드레스(address)신호, 기록 및 독출을 인에이블시키기 위한 칩선택(chip select)신호와 기록인에이블(write enable)신호를 생성하여 상기 제1 및 제2메모리로 제공한다. 그리고, 상기 제어기(53)는 선택기(54)의 출력을 제어하기 위한 상기 선택신호를 상기 선택기(54)로 제공한다. 상기 제1메모리(51) 및 제2메모리(52)는 상기 제어기(53)로부터의 각종 제어신호에 응답하여 입력되는 심볼들을 순서대로 저장하고, 저장되어 있는 심볼들을 디인터리빙하여 독출한다. 선택기(54)는 상기 제1메모리(51)와 상기 제2메모리(52)의 출력을 입력받고, 상기 제어기(53)로부터의 선택신호에 의해 두 입력중 하나의 선택하여 출력한다. 이렇게 출력된 심볼들은 후단 채널복호기(channel decoder)로 입력된다.
기본적으로, 본 발명은 제1메모리(51)가 독출을 완료한후 다음 프레임의 기록때까지 남은 시간을 이용해 현재 제2메모리(52)에 기록되고 있는 프레임의 일부 심볼들을 상기 제1메모리(51)에 기록하는 것을 특징으로 한다. 이렇게 함으로써, 메모리의 자원을 효율적으로 사용한다.
도 6은 본 발명의 실시 예에 따른 상기 제1메모리(51)와 제2메모리(52)의 동작을 시간축으로 도시한 도면이다. 도시된 바와 같이, 한 프레임(frame)의 심볼들의 개수가 8이고, 1→2→3→4→5→6→7→8의 순서로 들어온 심볼들을 1→8→5→4→3→6→7→2의 순서로 출력하는 동작을 설명한 것이다. 여기서, 독출시간이 최대 한 프레임의 1/2보다 작은 경우를 보여주고 있고, 독출한후 남은 휴지시간(No access time)을 이용하여 제1메모리를 공유하는 것을 보여준다. 이때, 공유할 메모리 부분과 그렇지 않는 부분을 구분하기 위해 한 프레임(frame)내에 억세스 타임(access time)이 차지하는 비중의 역(D)을 하기 수학식 1과 같이 정의한다.
하드웨어 구현에서 1이하의 팩터(factor)는 고려하지 못하므로 D는 상기 수학식을 만족하는 최대 정수(integer)이다. 따라서, 도 6을 예로 들 경우, 상기 "D"는 심볼을 독출하기 위한 억세스 시간이 한 프레임의 시간의 1/2보다 작으므로 "2"가 된다.
예를들어, 상기 제1메모리(51)가 독출 메모리로 동작하는 두 번째 프레임구간(2번째 프레임 경계∼3번째 프레임 경계)을 살펴보면, 제1메모리(51)에 저장되어 있는 이전 프레임의 심볼들 s1,s2,...,s8을 프레임의 앞 반구간에서 독출하고, 현재 입력되고 있는 프레임의 일부 심볼들 s5,s6,s7,s8을 상기 제1메모리(51)의 뒤 반구간에 기록하고 있다. 즉, 독출 메모리의 휴지시간(No access tme)을 이용해 제2메모리에 기록될 심볼들을 상기 독출 메모리(51)에 기록함으로써 메모리의 크기를 감소시킨다.
그리고, 세 번째 프레임구간(제3프레임경계 ∼제4프레임경계)을 살펴보면, 입력되는 프레임의 심볼들을 순차로 제1메모리(51)에 기록함과 동시에 중간중간 이전 프레임의 심볼들 s8,s5,s6,s7을 상기 제1메모리(51)에서 독출하고 있다. 여기서, 상기 독출되는 심볼들 s8,s5,s6,s7는 상기 제1메모리(51)의 뒤 반구간에 저장되어 있고, 현재 입력되는 심볼들이 프렘의 앞 반구간에 순차로 저장되는 동안 미리 독출되기 때문에 상기 이전 심볼들이 저장된 위치에 새로운 심볼들이 오버라이트(overwrite)되지는 않는다. 만일, 기록과 독출신호가 충돌이 나면, 독출신호에 우선순위를 준다. 즉, 상기 세 번째 프레임구간에서는, 상기 제1메모리(51)와 제2메모리(52)에 나누어 기록된 이전 프레임의 심볼들을 디인터리빙하여 독출한다. 즉, 제1메모리(51)에서 심볼들 s5,s6,s7,s8을 독출하고, 제2메모리(52)에서 심볼들 s1,s2,s3,s4를 독출한다.
여기서, 상기 휴지시간의 시작신호를 정의하고, 상기 휴지시간의 시작신호가 활성화(active)될 때 입력된 입력 심볼들을 두 메모리 중 큰 메모리(제1메모리)에 항상 기록하게 하고, 큰 메모리(제1메모리)에서 독출을 할때는 종래기술과 동일하게 수행하며, 작은 메모리(제2메모리)에서 심볼들을 독출을 할때는 프레임의 일부 심볼들을 큰 메모리(제1메모리)에서 독출한다.
도 7은 본 발명의 실시 예에 따른 상기 제어기(53)에서 발생되는 선택기의 선택신호와 어드레스(address)신호, 칩선택(chip select)신호, 기록인에이블(write enable) 신호의 타이밍(timing)도를 도시하고 있다. 도시된 바와 같이, 상기 제1메모리(51) 및 제2메모리(52)는 기록인에이블신호가 하이(High)이고, 칩선택신호가 로우(low)에지일 때 저장되어 있는 심볼을 어드레스가 가리키는 위치에서 독출한다. 한편, 상기 칩선택신호와 상기 기록인에이블신호가 모두 로우일 때 입력되는 심볼을 어드레스가 가리키는 위치에 기록하고 있다.
공유 메모리 역할을 하는 제1메모리의 경우, 2번째 프레임의 뒤 구간에서 독출을 완료한후 바로 현재 입력되는 심볼들을 기록하고, 다음 3번째 프레임구간에서 상기 기록된 심볼들을 프레임의 앞구간에서 독출한다. 이렇게 되는 경우, 3번째 프레임 구간의 앞구간에서, 상기 제1메모리(51)는 현재 입력되는 프레임의 기록과 이전 입력된 프레임의 독출 동작이 함께 이루어진다. 따라서, 상기 두 동작이 충돌 없이 일어날 수 있도록 칩선택신호와 기록인에이블 신호를 조정한다. 3번째 프레임구간을 보았을 때, 시간에 따른 제1메모리(51)의 동작은 다음과 같다.
현재 프레임의 심볼 0번 기록 -> 이전 프레임의 심볼 7번과 4번 독출->현재 프레임의 심볼 1번 기록-> 현재 프레임의 심벌 2번 기록 -> 이전 프레임의 심볼 5번과 6번 독출 -> 현재 프레임의 심볼 3번 기록->현재 프레임의 심볼 4번, 5번, 6번,7번 기록
또한, 제2메모리(52)를 살펴보면, 저장된 심볼 0번을 독출한후, 제1메모리(51)에서 심볼7번과 4번을 독출할때까지 대기한후, 심볼 3번과 2번을 독출한다. 그리고, 제1메모리(51)에서 심볼 5번과 6번을 독출할때까지 대기한후, 심볼 1번을 독출한다.
도 8은 본 발명의 실시 예에 따른 제어기(53)의 제어절차를 도시하고 있다.
먼저, 기록동작을 살펴보면, 먼저 입력심볼의 기록이 요구될 시 상기 제어기(53)는 801단계에서 제1메모리(51)가 심볼들을 기록할 기록 메모리인지를 검사한다. 만일, 상기 제1메모리가 상기 기록 메모리이면, 상기 제어기(53)는 803단계로 진행하여 상기 제1메모리(51)가 심볼들을 독출중인가를 검사한다. 이렇게 하는 이유는, 상기 제1메모리(51)이 공유 메모리로 동작하기 때문이다. 즉, 상기 도 7의 세 번째 프레임의 앞 반구간에서 발생하는 심볼 독출 동작을 검출한다. 만일, 제1메모리(51)가 독출중이면 독출을 완료할때까지 대기하고, 독출중이 아니면 809단계로 진행하여 상기 제1메모리(51)에 입력 심볼을 순차로 기록한다.
한편, 상기 801단계에서 제1메모리(51)가 독출 메모리로 판정되면, 상기 제어기(53)는 805단계로 진행하여 발생되는 기록 어드레스가 상기 공유메모리의 어드레스(이하 공유어드레스라 칭함)에 해당한지를 검사한다. 상기 도 7에서 상기 제1메모리(51)가 상기 독출 메모리로 동작하는 구간은 두 번째 프레임구간이다. 만일, 상기 기록 메모리가 상기 제2메모리이고, 발생된 기록 어드레스가 상기 공유어드레스이면, 상기 제어기(53)는 상기 809단계로 진행하여 상기 제1메모리(51)에서 상기 기록 어드레스가 가리키는 위치에 입력 심볼을 기록한다. 한편, 상기 기록되는 심볼은 제2메모리(52)에 기록되고 남은 심볼들이다. 반면, 상기 발생된 기록 어드레스가 상기 공유어드레스가 아니면, 상기 제어기(51)는 807단계로 진행하여 제2메모리(52)에 입력 심볼들을 순차로 기록한다. 여기서, 상기 제2메모리에 심볼들을 기록함에 있어 제2메모리(52)를 구성하는 어드레스들이 순차로 되어있지 않을 경우(예 : 0,2,5,7), 이들을 연접(compaction)시키는 처리가 필요하다. 즉, 0번지, 2번지, 5번지, 7번지를 각각 0번지, 1번지, 2번지, 3번지로 매핑하여 사용한다.
다음으로, 독출동작을 살펴보면, 먼저 심볼 독출이 요구될시 상기 제어기(53)는 811단계에서 제1메모리(51)가 심볼들을 기록할 기록 메모리인지 검사한다. 만일, 상기 제1메모리(51)가 상기 기록 메모리이면 상기 제어기(53)는 813단계로 진행하고, 그렇지 않고 독출 메모리이면 817단계로 진행하여 제1메모리(51)에 저장된 심볼들을 독출한다. 상기 도 7에서 상기 제1메모리가 독출 메모리로 동작하는 구간은 2번째 프레임구간에 해당하고, 상기 제1메모리가 기록 메모리로 동작하는 구간은 1번째 및 3번째 프레임구간에 해당한다. 한편, 상기 제어기(53)는 상기 813단계에서 발생된 독출 어드레스가 공유메모리에 해당하는 어드레스(도 7에서 4,5,6,7)인지를 검사한다. 만일, 독출 메모리가 제2메모리(52)이고 발생된 독출어드레스가 상기 공유어드레스이면, 상기 제어기(53)는 상기 817단계로 진행하여 제1메모리(51)에서 상기 독출 어드레스가 가리키는 심볼을 독출한다. 반면, 상기 독출 어드레스가 상기 공유어드레스가 아니면, 상기 제어기(53)는 815단계로 진행하여 상기 제2메모리(52)에서 상기 독출 어드레스가 가리키는 심볼을 독출한다.
앞서 설명한 바에 따르면, 공유메모리의 심볼들을 독출할 때 기록동작도 함께 이루어지는데, 듀얼포트(dual port)를 사용하지 않을 경우 기록과 독출을 동시에 일어날 경우 충돌이 발생한다. 만일, 충돌이 발생하는 경우 독출에 우선순위를 둔다.
그리고, 본 발명을 사용할 때, 종래기술에 비해 감소되는 메모리 비율은 하기 수학식 2와 같이 정의된다. 즉, 하나의 프레임에서 휴지시간이 차지하는 비중만큼 메모리의 크기를 감소시킬수 있다.
상기 수학식 2에 따르면, 본 발명을 3GPP2 표준(standard) 순방향 230.4kbps의 데이터율(data rate)을 지원하고 한 심볼당 6비트를 사용하며, 휴지시간(No access time)이 한 프레임에서 1/2를 차지하는 디인터리버(deinterleaver)에 적용했을 때, 147,456bit의 메모리의 크기를 110,592bit의 메모리의 크기로 3/4만큼 줄일 수 있다.
모든 시스템을 구현하는 데 있어 하드웨어 복잡도(hardware complexity)를 줄이는 것은 매우 중요한 문제이다. 특히 이동통신시스템에서 휴대기기들은 소형화 및 저전력 요구라는 측면에서 하드웨어 복잡도(hardware complexity) 감소는 필수적이라고 할수 있다. 즉, 이동통신시스템의 핵심요소인 모뎀(MODEM)의 인터리버/디인터리버의 크기(메모리 크기) 감소는 매우 유용하다. 또한 본 발명은디인터리버(Deinterleaver) 외에도 입력심볼(input symbol)들 및 데이터(data)가 들어오는 속도보다 출력심볼(output symbol) 및 데이터(data)가 출력되는 속도가 빠른 모든 메모리 억세스 기법에 적용할 수 있다.
한편 본 발명의 상세한 설명에서는 구체적인 실시 예에 관해 설명하였으나, 본 발명의 범위에서 벗어나지 않는 한도 내에서 여러 가지 변형이 가능함은 물론이다. 그러므로 본 발명의 범위는 설명된 실시예에 국한되어 정 해져서는 아니 되며 후술하는 특허청구의 범위뿐만 아니라 이 특허청구의 범위와 균등한 것들에 의해 정해져야 한다.
상술한 바와 같이, 본 발명은 디인터리버에서 가장 많은 크기를 차지하는 메모리의 크기를 감소시킴으로써 디인터리버의 하드웨어 크기를 줄일수 있는 이점이 있다.

Claims (7)

  1. 디인터리빙 장치에 있어서,
    적어도 한 프레임을 저장할 수 있는 크기를 가지는 제1메모리와,
    상기 제1메모리보다 작은 크기를 가지는 제2메모리와,
    미리 정해진 시간구간의 앞구간에서 상기 제1메모리에 기록되어 있는 이전 심볼들과 제 2 메모리에 저장된 이전 심볼들을 디인터리빙하여 독출하고, 동시에 입력 프레임을 제 1 메모리에 저장하며, 상기 미리 정해진 시간구간의 뒤구간에서 상기 입력될 나머지 심볼들을 상기 제1메모리의 공유영역에 기록하며, 다음 프레임에서 상기 저장된 입력 심볼들을 제 1 메모리에서 디인터리빙하여 독출함과 동시에 상기 미리 정해진 시간 구간의 이전에는 입력 심볼의 반을 저장하며, 상기 미리 정해진 시간 구간의 뒷 구간에서는 나머지 심볼들을 입력하도록 제어하는 제어기를 포함하는 것을 특징으로 하는 장치.
  2. 적어도 한 프레임을 저장할 수 있는 크기를 가지는 제1메모리와, 상기 제1메모리보다 작은 크기를 가지는 제2메모리를 구비하는 디인터리버에서 상기 제1 및 제2메모리를 억세스하는 방법에 있어서,
    미리 정해진 시간구간의 앞구간에서 상기 제1메모리에 기록되어 있는 심볼들과 제 2 메모리에 기록된 심볼들을 디인터리빙하여 독출하고, 동시에 입력 프레임의 일부 심볼들을 상기 제2메모리에 기록하는 과정과,
    상기 미리 정해진 시간구간의 뒤구간에서 상기 입력 프레임의 나머지 심볼들을 상기 제1메모리의 공유영역에 기록하는 과정과,
    다음 프레임에서 상기 저장된 입력 심볼들을 제 1 메모리에서 디인터리빙하여 독출함과 동시에 상기 미리 정해진 시간 구간의 이전에는 입력 심볼의 반을 저장하며, 상기 미리 정해진 시간 구간의 뒷 구간에서는 나머지 심볼들을 입력하는 과정을 포함하는 것을 특징으로 하는 방법.
  3. 제2항에 있어서,
    상기 미리 정해진 시간 구간의 앞구간은 억세스기간(access time)임을 특징으로 하는 방법
  4. 제2항에 있어서
    상기 미리 정해진 시간 구간의 뒤구간은 휴지기간(No access time)임을 특징으로 하는 방법
  5. 삭제
  6. 제 1항에 있어서,
    상기 미리 정해진 시간 구간의 앞 구간은 억세스하는 구간임을 특징으로 하는 상기 장치.
  7. 제 1항에 있어서,
    상기 미리 정해진 시간 구간의 뒷 구간은 휴지 기간임을 특징으로 하는 상기 장치.
KR10-2001-0076287A 2001-12-04 2001-12-04 디인터리빙 장치 및 방법 KR100438427B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR10-2001-0076287A KR100438427B1 (ko) 2001-12-04 2001-12-04 디인터리빙 장치 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR10-2001-0076287A KR100438427B1 (ko) 2001-12-04 2001-12-04 디인터리빙 장치 및 방법

Publications (2)

Publication Number Publication Date
KR20030045535A KR20030045535A (ko) 2003-06-11
KR100438427B1 true KR100438427B1 (ko) 2004-07-03

Family

ID=29572956

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2001-0076287A KR100438427B1 (ko) 2001-12-04 2001-12-04 디인터리빙 장치 및 방법

Country Status (1)

Country Link
KR (1) KR100438427B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101022473B1 (ko) 2004-02-13 2011-03-15 삼성전자주식회사 다층 버스 시스템에서의 메모리 뱅크 인터리빙 방법 및장치

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0746197A (ja) * 1993-07-27 1995-02-14 Sony Corp ディジタル移動体通信システム、及びインタリーバ並びにデインタリーバ
JPH07283795A (ja) * 1994-04-06 1995-10-27 Hitachi Ltd 音声信号復号回路
KR970013800A (ko) * 1995-08-18 1997-03-29 김광호 인터리버 및 디인터리버와 그 방법
KR19990065357A (ko) * 1998-01-12 1999-08-05 구자홍 인터리브/디인터리브 장치
KR20020017382A (ko) * 2000-08-30 2002-03-07 윤종용 디지털 오디오 방송용 타임 디인터리버 메모리의 제어 장치

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0746197A (ja) * 1993-07-27 1995-02-14 Sony Corp ディジタル移動体通信システム、及びインタリーバ並びにデインタリーバ
JPH07283795A (ja) * 1994-04-06 1995-10-27 Hitachi Ltd 音声信号復号回路
KR970013800A (ko) * 1995-08-18 1997-03-29 김광호 인터리버 및 디인터리버와 그 방법
KR19990065357A (ko) * 1998-01-12 1999-08-05 구자홍 인터리브/디인터리브 장치
KR20020017382A (ko) * 2000-08-30 2002-03-07 윤종용 디지털 오디오 방송용 타임 디인터리버 메모리의 제어 장치

Also Published As

Publication number Publication date
KR20030045535A (ko) 2003-06-11

Similar Documents

Publication Publication Date Title
KR0176422B1 (ko) 페이지-인 버스트-아웃 피포 시스템
KR20030060518A (ko) 통신시스템의 인터리빙 장치 및 방법
JP4618758B2 (ja) クワッドデータレートシンクロナス半導体メモリ装置の駆動方法
EP0971483B1 (en) Deinterleaving device
US6507899B1 (en) Interface for a memory unit
US6704848B2 (en) Apparatus for controlling time deinterleaver memory for digital audio broadcasting
KR100438427B1 (ko) 디인터리빙 장치 및 방법
US20060101319A1 (en) Input buffer device for de-rate matching in high speed turbo decoding block and method thereof
US20050050284A1 (en) System and method for interleaving data in a communications device
JP2002524919A (ja) 複数のユーザチャネルに対してpnシーケンスを発生する電気通信システムにおける送信機、受信機および方法
CN101336517B (zh) 用于在移动通信系统中控制交织器/去交织器存储器的设备和方法
US7581072B2 (en) Method and device for data buffering
US7224622B2 (en) Method for writing data into memory and the control device
US6988234B2 (en) Apparatus and method for memory sharing between interleaver and deinterleaver in a turbo decoder
US20040170187A1 (en) Symbol buffer memory device of a base station modem in a mobile communication system and storage method for using the sevice
JP4900800B2 (ja) 複数のシフト・レジスタ機能を有するシングル・メモリ
US6714606B1 (en) Integrated services digital broadcasting deinterleaver architecture
US6170077B1 (en) Method for encoding a digital communication channel
EP0661648A2 (en) Digital signal processing circuit
US6088033A (en) Method and apparatus for processing picture elements
JP3520570B2 (ja) メモリアクセス制御装置
JP3761962B2 (ja) タイムスイッチメモリのデータ制御装置
US6222793B1 (en) Memory devices having a restore start address counter
JPH11175312A (ja) データ転送制御装置
CN117116323A (zh) 对单端口sram进行读写的方法、fifo模块、芯片

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20080513

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee