KR100237651B1 - 셀룰러(Cellullar) 시스템의 부호화 장치 - Google Patents

셀룰러(Cellullar) 시스템의 부호화 장치 Download PDF

Info

Publication number
KR100237651B1
KR100237651B1 KR1019970014393A KR19970014393A KR100237651B1 KR 100237651 B1 KR100237651 B1 KR 100237651B1 KR 1019970014393 A KR1019970014393 A KR 1019970014393A KR 19970014393 A KR19970014393 A KR 19970014393A KR 100237651 B1 KR100237651 B1 KR 100237651B1
Authority
KR
South Korea
Prior art keywords
data
output
symbol
ram
memory block
Prior art date
Application number
KR1019970014393A
Other languages
English (en)
Other versions
KR19980077311A (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 KR1019970014393A priority Critical patent/KR100237651B1/ko
Publication of KR19980077311A publication Critical patent/KR19980077311A/ko
Application granted granted Critical
Publication of KR100237651B1 publication Critical patent/KR100237651B1/ko

Links

Images

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
    • 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/65Purpose and implementation aspects
    • H03M13/6502Reduction of hardware complexity or efficient processing
    • H03M13/6505Memory efficient implementations
    • 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/65Purpose and implementation aspects
    • H03M13/6522Intended application, e.g. transmission or communication standard

Abstract

본 발명은 셀룰러(Cellullar) 시스템의 부호화 장치에 관한 것으로 특히, 프레임 데이터를 메모리에 저장한 후 인터리브되는 데이터의 출력 순서로 액세스하고 각 액세스된 데이터를 10비트당 5개의 심볼을 생성하여 그 중 3개의 심볼을 선택하도록 구성함으로써 메모리의 효율적인 이용과 메모리의 크기를 줄일 수 있도록 창안한 것이다. 이러한 본 발명은 데이터(RAW-DATA)를 입력으로 프레임 데이터를 출력하는 프레임 데이터 생성부(201)와, 이 프레임 데이터 생성부(201)의 출력 데이터를 래치하는 디플립플롭(205)와, 이 디플립플롭(205)에서의 출력 데이터를 저장하여 인터리브될 순서대로 출력하고 인터리브된 심볼 데이터를 저장하는 메모리 블록(203)과, 이 메모리 블록(203)에서 출력되는 데이터를 부호화하여 10비트당 5개의 심볼을 생성하고 그 중 3개의 심볼을 선택하여 상기 메모리 블록(203)으로 출력하는 인코더(202)와, 상기 메모리 블록(203)으로부터 출력되는 인터리브된 심볼 데이터를 래치하여 외부로 전송하는 디플립플롭(206)과, 상기 프레임 데이터 생성부(201), 인코더(202) 및 메모리 블록(203)의 동작을 제어하는 마이크로 프로세서(204)로 구성한다.

Description

셀룰러 시스템의 부호화 장치{ENCODER OF CELLULLAR SYSTEM}
본 발명은 셀룰러(Cellullar) 시스템에 관한 것으로 특히, 씨디엠에이(CDMA) 방식을 적용한 셀룰러 시스템에 적당하도록 한 셀룰러(Cellular) 시스템의 부호화 장치에 관한 것이다.
종래 기술은 도1 의 블럭도에 도시된 바와 같이, 데이터(RAW-DATA)를 입력으로 프레임 데이터를 출력하는 프레임 데이터 생성부(101)와, 이 프레임 데이터 생성부(101)의 프레임 데이터를 입력으로 심볼 데이터를 생성하는 인코더(102)와, 상기 심볼 데이터를 저장하여 행 단위로 출력함에 의해 인터리빙 처리하는 메모리 블록(103)과, 상기 프레임 데이터 생성부(101), 인코더(102) 및 메모리 블록(103)의 동작을 제어하는 마이크로 프로세서(104)로 구성된다.
상기 메모리 블록(103)은 부호화된 심볼 데이터를 저장하는 램(111)와, 마이크로 프로세서(104)의 제어에 의해 어드레스를 복호하여 상기 램(111)에 인가하는 어드레스 디코더(112)와, 인코더(102)의 출력 데이터를 상기 램(111)에 입력시키고 상기 램(111)의 출력 데이터를 외부로 전송하는 입출력 버퍼(113)로 구성된다.
이와같은 종래 기술의 동작 과정을 설명하면 다음과 같다.
프레임 데이터 생성부(CRC & Tail BIT)(101)는 데이터(RAW-DATA)를 입력받아 완전한 프레임 데이터로 완성하게 된다.
여기서, 입력 데이터의 순서를 바꾸면 CRC의 값도 바뀌게 되므로 입력 데이터의 순서를 임의로 바꿀 수 없다.
만일, CDMA 방식에서 데이터 속도가 풀(full) 속도인 경우 한 프레임의 데이터는 'D1∼D192'로서 이 데이터(D1∼D192)는 인코더(Convolution Encoder)(102)로 입력된다.
상기 콘볼루션 인코더(102)는 8비트 시프트 레지스터로 구성되어 하나의 데이터 입력당 3개의 심볼을 만들게 된다.
만일, 데이터 속도가 풀(full)인 경우 인코더(102)는 한 프레임의 입력 데이터(D1∼D192)에 대하여 심볼 데이터(C1∼C576)를 메모리 블록(103)으로 출력하게 된다.
이때, 메모리 블록(103)은 입출력 버퍼(113)가 인코더(102)의 출력 단자를 램(111)의 입력 단자에 접속되어 상기 인코더(102)의 출력 데이터는 열(column) 단위로 상기 램(111)에 저장된다.
이 후, 한 프레임 단위의 심볼 데이터가 램(111)에 모두 저장된 경우 입출력 버퍼(113)는 상기 램(111)의 출력 단자를 외부로 접속시키게 된다.
이에 따라, 램(111)에 저장된 심볼 데이터가 행(row) 단위로 외부로 출력되어진다.
즉, 램(111)은 도2 에 도시된 바와 같이 심볼 데이터의 저장 및 출력을 수행하는데, 하나의 심볼 프레임이 메모리에 완전히 입력된 후 부호화된 심볼 프레임은 'C1 C33C65...C545, C2C34C66...C546,..., C32C64C96...C576'의 순으로 출력됨에 의해 인터리빙(interleaving) 처리된다.
이때, 램(111)으로부터 출력되는 데이터의 행 순서는 프레임의 데이터 속도에 따라 변하게 되므로, 동일한 메모리 공간을 다른 심볼 프레임이 공유할 수 없다.
상기에서 램(111)의 데이터 입출력을 위한 영역은 마이크로 프로세서(104)의 제어받는 어드레스 디코더(112)가 복호하는 해당 어드레스에 의해 지정된다.
그리고, 순차적인 심볼 전송을 위한 CDMA 셀룰러 시스템에서 인터리브된 심볼은 항상 일정한 심볼 속도를 규정하고 있기 때문에 상기와 같은 동작이 연속적으로 수행되는데, 하나의 심볼 프레임 크기에 해당하는 메모리에 부호화된 심볼을 저장함에 따라 한 프레임의 심볼 데이터가 저장되면 인터리빙을 수행하고 그 심볼 인터리빙 처리동안 만들어지는 부호화된 심볼은 다른 메모리 영역에 저장하는 동작을 반복적으로 수행함으로써 연속적으로 데이터를 입력시킴과 아울러 일정한 속도로 인터리브된 심볼 데이터를 출력하게 된다.
따라서, 항상 일정한 심볼 속도를 갖기 위해서는 '1/(엔코딩 속도) * 프레임 비트 * 2'의 크기와 데이터 속도의 2배가 되는 데이터 액세스 속도를 가지는 메모리를 필요로 한다.
그러나, 이러한 종래의 기술은 인코딩/디코딩시 입력 데이터 속도에 관계없이 항상 일정한 출력 심볼 속도를 유지하도록 2프레임 심볼 크기의 메모리를 필요로 하므로 하나의 로직을 구현하는 경우 전체적인 ASIC 칩의 크기가 커짐은 물론 제조 단가가 상승하는 문제점이 있다.
본 발명은 종래 기술의 문제점을 개선하기 위하여 프레임 데이터를 메모리에 저장한 후 인터리브되는 데이터의 출력 순서로 액세스하고 각 액세스된 데이터를 10비트당 5개의 심볼을 생성하여 그 중 3개의 심볼을 선택하도록 구성함으로써 메모리의 효율적인 이용과 메모리의 크기를 줄일 수 있도록 창안한 셀룰러(Cellullar) 시스템의 부호화 장치를 제공함에 목적이 있다.
도 1은 종래 기술의 부호화 장치의 블록도.
도 2는 도 1에서 램(RAM)의 저장 상태를 보인 예시도.
도 3은 본 발명에 따른 실시예의 블록도.
도 4는 도 3에서 램(RAM)의 저장 상태를 보인 예시도.
도 5는 도 3에서 인코더의 상세 블록도.
도 6은 도 3에서의 동작 타이밍도.
도 7은 도 3에서 데이터 페치 및 심볼 선택을 보인 표.
***도면의 주요 부분에 대한 부호의 설명***
201 : 프레임 데이터 생성부 202 : 인코더
203 : 메모리 블록 204 : 마이크로 프로세서
205,206 : 디플립플롭 211 : 램(RAM)
212 : 어드레스 디코더 213 : 입출력 버퍼
221,224 : 래치부 222 : 논리 연산부
223 : 멀티플렉서 225 : 2비트 카운터
226 : 심볼 선택기 227,229 : 앤드 게이트
228 : 인버터
본 발명은 상기의 목적을 달성하기 위하여 프레임 데이터를 래치하는 제1 래치 수단과, 이 래치 수단에서의 출력 데이터를 저장하여 인터리브될 순서대로 출력하고 인터리브된 심볼 데이터를 저장하는 메모리 블록과, 이 메모리 블록에서 출력되는 데이터를 소정 비트당 소정개의 심볼을 생성하고 그 중 임의의 개수의 심볼을 선택하여 상기 메모리 블록으로 출력하는 인코딩 수단과, 상기 메모리 블록으로부터 출력되는 인터리브된 심볼 데이터를 래치하여 외부로 전송하는 제2 래치 수단과, 상기 각 수단을 제어하는 수단을 포함하여 구성한다.
상기 메모리 블록은 제1 래치 수단에서의 출력 데이터를 저장하여 인터리브될 순서대로 출력하는 램(RAM)과, 제어 수단의 제어에 의해 어드레스를 복호하여 상기 램(RAM)의 해당 영역을 지정하는 어드레스 디코더와, 상기 제어 수단의 제어에 의해 상기 제1 래치 수단의 출력 데이터를 상기 램(RAM)에 인가하고 그 램(RAM)의 출력 데이터를 인코딩 수단에 인가하여 그 인코딩 수단의 출력 심볼을 상기 램(RAM)에 저장하며 상기 램(RAM)에서 출력되는 인터리브된 심볼 데이터를 제2 래치 수단으로 전송하는 입출력 버퍼로 구성한다.
상기 인코딩 수단은 메모리 블록의 10비트 출력 데이터를 래치하는 제1 래치부와, 이 래치부의 출력 데이터를 2개씩 배타적 논리합하여 5개의 심볼 데이터를 출력하는 논리 연산부와, 이 논리 연산부의 출력 데이터중 3개를 선택하는 5*3 멀티플렉서와, 이 5*3 멀티플렉서의 출력 데이터를 래치하여 상기 메모리 블록에 출력하는 제2 래치부와, 2비트 카운터의 출력 신호를 입력으로 상기 멀티플렉서에 제1,제2 절환 신호를 출력하는 심볼 선택기와, 제2,제3 클럭을 논리곱하여 상기 제1 래치부의 동작을 제어하는 제1 앤드 게이트와, 상기 제3 클럭을 반전하는 인버터의 출력 신호와 상기 제2 클럭을 논리곱하여 상기 제2 래치부의 동작을 제어하는 제2 앤드 게이트로 구성한다.
이하, 본 발명을 도면에 의거 상세히 설명하면 다음과 같다.
도3 은 본 발명의 실시예를 보인 블록도로서 이에 도시한 바와 같이, 데이터(RAW-DATA)를 입력으로 프레임 데이터를 출력하는 프레임 데이터 생성부(201)와, 이 프레임 데이터 생성부(201)의 출력 데이터를 래치하는 디플립플롭(205)과, 이 디플립플롭(205)에서의 출력 데이터를 저장하여 인터리브될 순서대로 출력하고 인터리브된 심볼 데이터를 저장하는 메모리 블록(203)과, 이 메모리 블록(203)에서 출력되는 데이터를 부호화하여 10비트당 5개의 심볼을 생성하고 그 중 3개의 심볼을 선택하여 상기 메모리 블록(203)으로 출력하는 인코더(202)와, 상기 메모리 블록(203)으로부터 출력되는 인터리브된 심볼 데이터를 래치하여 외부로 전송하는 디플립플롭(206)과, 상기 프레임 데이터 생성부(201), 인코더(202) 및 메모리 블록(203)의 동작을 제어하는 마이크로 프로세서(204)로 구성한다.
상기 메모리 블록(203)은 디플립플롭(205)에서의 출력 데이터를 저장하여 인터리브될 순서대로 출력하는 램(211)과, 마이크로 프로세서(204)의 제어에 의해 어드레스를 복호하여 상기 램(211)의 해당 영역을 지정하는 어드레스 디코더(212)와, 상기 마이크로 프로세서(204)의 제어에 의해 상기 디플립플롭(205)의 출력 데이터를 상기 램(211)에 인가하고 그 램(211)의 출력 데이터를 인코더(202)에 인가하여 그 인코더(202)의 출력 심볼을 상기 램(211)에 저장하며 상기 램(211)에서의 인터리브된 심볼 데이터를 디플립플롭(206)으로 전송하는 입출력 버퍼(213)로 구성한다.
상기 인코더(202)는 도5 의 블록도에 도시한 바와 같이, 메모리 블록(203)의 10비트 출력 데이터를 래치하는 제1 래치부(221)와, 이 래치부(221)의 출력 데이터를 2개씩 배타적 논리합하여 5개의 심볼 데이터를 출력하는 논리 연산부(222)와, 이 논리 연산부(222)의 출력 데이터중 3개를 선택하는 5*3 멀티플렉서(223)와, 이 5*3 멀티플렉서(223)의 출력 데이터를 래치하여 상기 메모리 블록(203)에 출력하는 제2 래치부(224)와, 2비트 카운터(225)의 출력 신호를 입력으로 상기 멀티플렉서(223)에 절환 신호(S1)(S2)를 출력하는 심볼 선택기(226)와, 클럭(CLK2)(CLK3)을 논리곱하여 상기 제1 래치부(221)를 제어하는 앤드 게이트(227)와, 상기 클럭(CLK3)을 반전하는 인버터(228)의 출력 신호와 상기 클럭(CLK2)을 논리곱하여 상기 제2 래치부(224)를 제어하는 앤드 게이트(229)로 구성한다.
이와같이 구성한 본 발명의 실시예에 대한 동작 및 작용 효과를 설명하면 다음과 같다.
프레임 데이터 생성부(201)는 데이터(RAW-DATA)를 입력으로 CRC 및 Tail 비트를 부가하여 완전한 프레임 데이터를 생성하고 디플립플롭(205)은 상기 프레임 데이터 생성부(201)의 출력 데이터를 래치하여 메모리 블록(203)에 출력하게 된다.
이때, 메모리 블록(203)은 마이크로 프로세서(204)의 제어에 의해 입출력 버퍼(213)가 디플립플롭(205)으로부터 램(211)으로 데이터 전송 경로를 형성하므로 상기 디플립플롭(205)로부터의 출력 데이터는 상기 램(211)의 해당 영역에 저장되어진다.
이 후, 램(211)에 한 프레임의 데이터가 저장되면 마이크로 프로세서(204)의 제어에 의해 입출력 버퍼(213)는 상기 램(211)으로부터 인코더(202)로 데이터 전송 경로를 형성하게 된다.
이에 따라, 메모리 블록(203)으로부터 인터리브될 순서대로 프레임 데이터가 출력되면 인코더(202)는 10비트 데이터당 5개의 심볼을 생성하고 그 생성된 5개의 심볼중 3개의 심볼만을 선택하여 상기 메모리 블록(203)으로 출력하여 램(211)의 해당 영역에 저장시키게 된다.
이 후, 메모리 블록(203)은 마이크로 프로세서(204)의 제어에 의해 입출력 버퍼(213)가 램(211)으로부터 외부로 데이터 전송 경로를 형성하므로 상기 램(211)에 3개의 심볼 데이터를 저장하게 된다.
이 후, 인코더(202)에서 심볼 데이터를 형성하는 동안 램(211)에 바로 이전에 저장된 심볼 데이터를 외부로 출력하게 된다.
이러한 동작은 연속적으로 반복하게 되며 이에 의해 일정한 속도로 인터리브된 심볼 데이터가 외부로 출력되어진다.
상기와 같은 동작에서 프레임 데이터와 부호화된 심볼 데이터가 램(211)에 저장된 상태는 도4 의 예시도와 같다.
상기에서의 인코더(202)의 동작을 상세히 설명하면 다음과 같다.
한 프레임의 데이터가 램(211)에 저장되면 그 램(211)에 저장된 데이터를 인코더(202)로 페치하는데, 처음 페치되는 데이터는 '00000000D1D2'로서 10개의 디플립플롭으로 이루어진 래치부(221)에 래치되어 5개의 배타적 오아게이트로 이루어진 논리 연산부(222)로 출력된다.
상기 논리 연산부(222)는 래치부(221)에 래치된 10비트의 데이터를 2개씩 배타적 논리합하여 5개의 심볼 데이터를 얻는데 이를 'A0,A1,A2,A3,A4'라고 정의한다.
만일, 종래 기술에서 배타적 논리합한 신호를 'B0,B1,B2'라고 하면 'A0,A1,A2'는 동일한 입력 구성을 갖게 되고, 'A3,A4'는 'A0,A1'과 동일한 입력 구성을 갖게 된다.
이때, 'A0,A1,A2'는 '00000000D1'에 의해 생성되고 'A3,A4'는 '0000000D1D2'에 의해 생성된다.
따라서, 'A0,A1,A2'으로 'C1,C2,C3'의 심볼을 만들 때 'A4,A5'으로 'C4,C5'를 생성하므로 첫번째 데이터 페치동안에 심볼 데이터 'C1,C2,C3,C4,C5'가 생성된다.
상기 심볼 데이터(C1..C5)는 종래 기술에서 두번의 데이터 입력으로 얻어지는 B0(C1), B1(C2), B2(C3) 와 B0'(C4), B1'(C5), B2'(C6) 중에서 B0(C1), B1(C2), B2(C3), B0'(C4), B1'(C5) 에 해당된다.
이 후, 램(211)으로부터 인코더(202)로 두 번째 데이터를 페치하는 경우에는 인터리빙 순서를 고려하여 심볼 데이터(C33,C34,C35)를 생성하도록 데이터를 입력하여야 하므로 상기 인코더(202)에 페치되는 데이터는 'D11D12....D20'로서 심볼 데이터 'C31,C32,C33,C34,C35'를 생성하게 된다.
이에 따라, 5*3 멀티플렉서(223)는 논리 연산부(222)에서 생성된 5개의 심볼 데이터(C31..C35)중 3개의 심볼 데이터(C33,C34,C35)를 선택하여 래치부(224)에 출력하게 된다.
그리고, 세번째 데이터를 페치하는 경우에는 램(211)으로부터 'D22D23...D31'인 데이터를 입력받아 심볼 데이터(C64,C65,C66,C67,C68)를 생성하고 멀티플렉서(223)에서 3개의 심볼 데이터(C65,C66,C67)를 선택하면 래치부(224)에 래치되어 상기 램(211)에 저장된다.
이 후, 네번째 데이터 페치시에는 심볼 데이터(C97,C98,C99,C100,C101)를 생성하기 위하여 램(211)으로부터 데이터(D33D34...D42)를 페치하며 이로부터 심볼 데이터를 생성하여 그 중 3개의 심볼 데이터(C97,C98,C99)를 상기 램(211)에 저장하게 된다.
따라서, 상기와 같은 과정을 연속적으로 반복함에 있어서, 인코더(202)에서 심볼 데이터를 생성하는 동안 램(211)으로부터 이전에 생성된 심볼 데이터를 입출력 버퍼(213)를 통해 외부로 출력함으로써 일정한 속도로 심볼 데이터를 출력하게 된다.
상기에서 래치부(221)는 클럭(CLK2)(CLK3)를 논리곱하는 앤드 게이트(227)에 의해 제어되며 래치부(224)는 클럭(CLK3)를 반전하는 인버터(228)의 출력 신호와 상기 클럭(CLK2)를 논리곱하는 앤드 게이트(229)에 의해 제어된다.
상기에서 부호화를 위하여 램(211)에서 페치되는 데이터는 마이크로 프로세서(204)로부터 입력되는 프레임 모드에 따라 바뀌게 되는데, 각 모드에 따른 데이터 페치 방법(strategy)과 그에 의해 생성된 5개의 심볼들중에서 3개의 심볼을 선택하기 위한 심볼 선택기(226)의 동작 조건은 도7 의 표에 도시한 바와 같다.
예를 들어, 페치 데이터(Di)가 'i<1'인 경우 초기 실행시 모두 '0'인 데이터를 출력하며, 그 외의 경우에는 이전 프레임의 끝에서부터 페치된 데이터까지 해당된다.
상기 심볼 선택기(226)는 마이크로 프로세서(204)로부터 프레임 모드의 정보를 받고 2비트 카운터(225)의 출력 신호를 입력받아 심볼 선택 신호(S1)(S2)를 멀티플렉서(223)에 출력하게 된다.
이에 따라, 멀티플렉서(223)는 심볼 선택기(225)의 출력 신호(S1)(S2)는 논리 연산부(222)의 5개의 출력 신호중 3개의 심볼 데이터를 선택하여 램(211)에 저장하게 된다.
상기 2비트 카운터(225)는 멀티플렉서(223)에서의 심볼 선택이 '3'을 주기로 반복되도록 하기 위한 것이다.
상기와 같은 동작은 도6 의 타이밍도와 동일한 과정으로 이루어진다.
도6 의 (a) 파형은 (d)와 같은 데이터 인터리브 및 (e)와 같은 인코더 입력을 위한 클럭 신호이고 도6의 (b) 파형은 프레임 데이터 입력을 위한 클럭 신호이다.
도6 의 (c) 파형은 디플립플롭(205)에서 메모리 블록(203)으로 출력되는 데이터이고 도6 의 (d) 파형은 디플립플롭(206)에서 출력되는 인터리브된 심볼 데이터이다.
도6 의 (e) 파형은 메모리 블록(203)으로부터 래치부(221)로 입력되는 페치 데이터이고 도6 의 (f) 파형은 제2 래치부(224)로부터 메모리 블록(203)으로 입력되는 부호화된 심볼 데이터이다.
즉, 종래의 기술은 프레임 데이터를 페치하여 IS-95 규격에 정의된 것과 같이 생성된 심볼들을 프레임 모드에 따라 인터리빙하지만, 본 발명에서는 IS-95 규격에 정의된 인터리빙 순서대로 프레임 데이터를 페치하여 인터리빙을 수행하는 것이다.
본 발명은 각 프레임 모드에 따라 정상적인 동작을 수행하기 위해서 가상적인 심볼 반복 기능을 수행할 필요가 있으며, 이는 IS-95 규격에 명시된 파워 콘트롤 그룹의 검토를 통해서 간단히 해결할 수 있다.
먼저, 데이터 속도가 풀(full)인 경우 심볼 생성을 위한 반복 동작은 달리 필요치않으며 상기에서 제시된 과정을 반복적으로 수행함으로써 'IS-95'에 명시한 인터리빙 동작을 성공적으로 수행할 수 있다.
또한, 데이터 속도가 1/2, 1/4, 1/8 인 경우 데이터를 부호화한 후 프레임 속도에 따라 2, 4, 8번의 심볼 생성 과정을 필요로 하는데, 이러한 과정이 요구되는 프레임에서는 동일한 정보를 가진 파워 콘트롤 그룹이 생성될 지라도 개별적인 파워 콘트롤 그룹의 각각은 중복되지 않는 정보로 이루어진다.
다시 말해서, 본 발명에서는 각 데이터 속도에 따라 중복되지 않는 파워 콘트롤 그룹만을 만들며, 심볼 반복이 요구되는 풀 속도 이외의 데이터 속도의 경우에는 본 발명에서 제안된 EIP 를 통해서 만들어진 파워 콘트롤 그룹을 반복하여 출력함으로써 IS-95 규격에 정의된 심볼 반복 기능을 수행할 수 있다.
따라서, 본 발명에서 요구되는 메모리의 크기는 '(데이터 프레임의 크기) * (3 인터리브된 심볼 열) * 2'로써 종래 기술에서 메모리의 크기의 1/2 이하가 된다.
예로써 종래의 CDMA 셀룰러 이동 통신 시스템의 경우 약 1152비트의 메모리가 요구되지만 본 발명에서는 492비트의 메모리 정도면 충분하다.
상기에서 상세히 설명한 바와 같이 본 발명은 메모리에 저장된 프레임 데이터를 인터리브될 순서대로 출력하고 그 출력된 데이터로부터 심볼 데이터를 생성하도록 함으로써 메모리의 사용을 종래보다 1/2 이하로 최소화하여 전체적인 칩의 크기를 줄일 수 있는 효과가 있다.

Claims (6)

  1. 프레임 데이터를 래치하는 제1 래치 수단과, 이 래치 수단에서의 프레임 데이터를 저장하여 인터리브될 순서대로 출력하고 인터리브된 심볼 데이터를 저장하는 메모리 블록과, 이 메모리 수단에서 출력되는 데이터를 소정 비트당 소정개의 심볼을 생성하고 그 중 임의의 개수의 심볼 데이터를 상기 메모리 블록로 출력하는 인코딩 수단과, 상기 메모리 수단으로부터 출력되는 인터리브된 심볼 데이터를 래치하여 외부로 전송하는 제2 래치 수단과, 상기 각 수단을 제어하는 수단을 포함하여 구성한 것을 특징으로 하는 셀룰러 시스템의 부호화 장치.
  2. 제1항에 있어서, 메모리 블록은 제1 래치 수단에서의 출력 데이터를 저장하여 인터리브될 순서대로 출력하는 램(RAM)과, 제어 수단의 제어에 의해 어드레스를 복호하여 상기 램(RAM)의 해당 영역을 지정하는 어드레스 디코더와, 상기 제어 수단의 제어에 의해 상기 제1 래치 수단의 출력 데이터를 상기 램(RAM)에 인가하고 그 램(RAM)의 출력 데이터를 인코딩 수단에 인가하여 그 인코딩 수단의 출력 심볼을 상기 램(RAM)에 저장하며 상기 램(RAM)에서 출력되는 인터리브된 심볼 데이터를 제2 래치 수단으로 전송하는 입출력 버퍼로 구성한 것을 특징으로 하는 셀룰러 시스템의 부호화 장치.
  3. 제2항에 있어서, 램(RAM)은 프레임 데이터 저장 영역과 부호화된 심볼 데이터 저장 영역으로 분할한 것을 특징으로 하는 셀룰러 시스템의 부호화 장치.
  4. 제1항에 있어서, 인코딩 수단은 메모리 블록의 10비트 출력 데이터를 래치하는 제1 래치부와, 이 래치부의 출력 데이터를 2개씩 배타적 논리합하여 5개의 심볼 데이터를 출력하는 논리 연산부와, 이 논리 연산부의 출력 데이터중 3개를 선택하는 5*3 멀티플렉서와, 이 5*3 멀티플렉서의 출력 데이터를 래치하여 상기 메모리 블록에 출력하는 제2 래치부와, 2비트 카운터의 출력 신호를 입력으로 상기 멀티플렉서에 절환 신호(S1)(S2)를 출력하는 심볼 선택기와, 제2,제3 클럭을 논리곱하여 상기 제1 래치부의 동작을 제어하는 제1 앤드 게이트와, 상기 제3 클럭을 반전하는 인버터의 출력 신호와 상기 제2 클럭을 논리곱하여 상기 제2 래치부의 동작을 제어하는 제2 앤드 게이트로 구성한 것을 특징으로 하는 셀룰러 시스템의 부호화 장치.
  5. 제4항에 있어서, 제1 래치부는 메모리 블록으로부터 출력되는 10비트의 프레임 데이터를 각기 래치하는 10개의 디플립플롭으로 구성한 것을 특징으로 하는 셀룰러 시스템의 부호화 장치.
  6. 제4항에 있어서, 제2 래치부는 멀티플렉서로부터 출력되는 3비트의 심볼 데이터를 각기 래치하는 3개의 디플립플롭으로 구성한 것을 특징으로 하는 셀룰러 시스템의 부호화 장치.
KR1019970014393A 1997-04-18 1997-04-18 셀룰러(Cellullar) 시스템의 부호화 장치 KR100237651B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019970014393A KR100237651B1 (ko) 1997-04-18 1997-04-18 셀룰러(Cellullar) 시스템의 부호화 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019970014393A KR100237651B1 (ko) 1997-04-18 1997-04-18 셀룰러(Cellullar) 시스템의 부호화 장치

Publications (2)

Publication Number Publication Date
KR19980077311A KR19980077311A (ko) 1998-11-16
KR100237651B1 true KR100237651B1 (ko) 2000-01-15

Family

ID=19503175

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019970014393A KR100237651B1 (ko) 1997-04-18 1997-04-18 셀룰러(Cellullar) 시스템의 부호화 장치

Country Status (1)

Country Link
KR (1) KR100237651B1 (ko)

Also Published As

Publication number Publication date
KR19980077311A (ko) 1998-11-16

Similar Documents

Publication Publication Date Title
JP3634004B2 (ja) 低減メモリ要件およびアドレス生成器を有する畳込みインタリーバ
US4593393A (en) Quasi parallel cyclic redundancy checker
US4472788A (en) Shift circuit having a plurality of cascade-connected data selectors
FI78802C (fi) Kopplingsarrangemang foer kodning och avkodning av informationssignaler.
JP3008685B2 (ja) 可変長符号の復号化回路
KR940010433B1 (ko) 가변길이 코드 디코딩장치
US5257263A (en) Circuit for decoding convolutional codes for executing the survivor path storage and reverse scanning stage of a Viterbi algorithm
JP4808318B2 (ja) メモリアプリケーション用のハイブリッドデータi/oのデータ転送方法
KR100237651B1 (ko) 셀룰러(Cellullar) 시스템의 부호화 장치
KR100239727B1 (ko) 행렬 전치회로
JP3549756B2 (ja) ブロックインターリーブ回路
US5825314A (en) Variable-length code decoder
KR100307285B1 (ko) 싱글 데이터 레이트 및 더블 데이터 레이트 스킴을 갖는 버스트-타입의 고속 랜덤 액세스 메모리 장치의 어드레스 발생 및 디코딩 회로
US7061988B2 (en) Interleaver memory access apparatus and method of mobile communication system
KR0164097B1 (ko) 병렬 입력 / 직렬 출력 장치 및 그 방법
KR20040099452A (ko) 트렐리스 디코더를 위한 메모리 관리 알고리즘
KR100306580B1 (ko) 비터비디코더의경로메모리장치
KR0183171B1 (ko) 인터리버 및 디인터리버와 그 방법
KR20050044156A (ko) 이동통신시스템에서 싱글 메모리를 사용하여 인터리버를구현하는 장치 및 방법
JPH02265329A (ja) 符号逆変換装置
JPH01291526A (ja) ビタビ復号器
JPH09214565A (ja) データ送信装置およびデータ受信装置
JPH01209819A (ja) 可変長符号化復号化方式
JPH0846524A (ja) パスメモリ
KR20020030377A (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: 20061002

Year of fee payment: 8

LAPS Lapse due to unpaid annual fee