KR20000009488A - 개선된 pn 코드 생성기 - Google Patents
개선된 pn 코드 생성기 Download PDFInfo
- Publication number
- KR20000009488A KR20000009488A KR1019980029939A KR19980029939A KR20000009488A KR 20000009488 A KR20000009488 A KR 20000009488A KR 1019980029939 A KR1019980029939 A KR 1019980029939A KR 19980029939 A KR19980029939 A KR 19980029939A KR 20000009488 A KR20000009488 A KR 20000009488A
- Authority
- KR
- South Korea
- Prior art keywords
- code
- read
- memory
- channel
- parallel
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04J—MULTIPLEX COMMUNICATION
- H04J13/00—Code division multiplex systems
- H04J13/0007—Code type
- H04J13/0022—PN, e.g. Kronecker
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04B—TRANSMISSION
- H04B1/00—Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission
- H04B1/69—Spread spectrum techniques
- H04B1/707—Spread spectrum techniques using direct sequence modulation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04B—TRANSMISSION
- H04B7/00—Radio transmission systems, i.e. using radiation field
- H04B7/24—Radio transmission systems, i.e. using radiation field for communication between two or more posts
- H04B7/26—Radio transmission systems, i.e. using radiation field for communication between two or more posts at least one of which is mobile
- H04B7/2628—Radio transmission systems, i.e. using radiation field for communication between two or more posts at least one of which is mobile using code-division multiple access [CDMA] or spread spectrum multiple access [SSMA]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04J—MULTIPLEX COMMUNICATION
- H04J13/00—Code division multiplex systems
- H04J13/10—Code generation
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
본 발명은 개선된 PN 코드 생성기에 관한 것이다.
그 생성기는 복수 채널의 롱코드, I 채널 쇼트 코드 및 Q 채널 쇼트 코드로부터 I PN 코드 및 Q PN 코드를 생성하기 위한 PN 생성기에 있어서, 상기 롱코드와 쇼트 코드 각각을 소정 비트씩 병렬코드로 변환하고, 상기 변환 결과를 병렬로 출력하기 위한 복수개의 직병렬 변환기; 상기 복수개의 직병렬 변환기에서 변환된 병렬 코드를 저장하기 위한 복수개의 메모리; 현재 심벌 시간에 해당하는 코드를 라이트 어드레스로 발생하는 라이트 어드레스 발생부; 현재 심벌 시간과 심벌 옵셋의 차이에 해당하는 값을 리드 어드레스로 발생하는 리드 어드레스 발생부; 상기 라이트 어드레스를 디코딩한 값과, 상기 라이트 어드레스 및 리드 어드레스에 따라 라이트할 메모리와 리드할 메모리를 선택하기 위한 메모리 선택부; 채널 선택신호에 의해 상기 복수개의 메모리에서 독출한 병렬 코드를 결합하여 I PN 코드와 Q PN 코드를 생성하기 위한 PN 코드 선택부를 포함함을 특징으로 한다.
본 발명에 따르면, PN 옵셋의 설정이 용이하므로 써처의 성능을 향상시킬 뿐 아니라 핑거의 결합작업도 쉽게 되는 장점이 있다. 또한, 다수의 rake 처리가 용이하여 다채널을 수용하는 모뎀에서 병렬 구조의 효율을 극대화 할 수 있다.
Description
본 발명은 코드 분할 다중 접속(Code Division Multiple Access; CDMA)에 관한 것으로 보다 상세하게는 CDMA 방식의 송신기 및 수신기에 사용되는 PN 코드 생성기(Pseudo Noise Code Gennerator)에 관한 것이다.
CDMA 방식은 원래 군용으로 쓰이던 주파수 대역확산(Spread Spectrum)기술을 민간용 이동통신에 도입한 것으로, 수용용량을 획기적으로 증가시킬 수 있고 기존의 아날로그 방식보다 광역이어서 셀 수가 줄어들고, 주파수 계획이 간단하며, 데이터 통신에 우수하기 때문에 대도시에 적합하다는 장점이 있다.
한편, PN 코드는 순회부호(Cyclic Code)의 일종으로서 일정한 자기상관특성을 가지고 있으며 2원부호로써 인위적으로 발생시킨 주기를 갖는 1과 0의 부호화된 계열로 정의된다. PN 코드는 복수개의 플립플롭으로 된 쉬프트 레지스터와 mod-2 가산기를 사용하여 쉽게 구성할 수 있다. PN 코드는 PN 코드 생성기에서 발생되며, 옵셋(Offset)을 다르게 하여 신호를 구별한다.
이러한 PN 생성기는 대역확산을 위해 CDMA 방식에서는 필수적이다. 또한 옵셋은 기지국의 구별과 rake 수신기 구성시 rake 수신기를 찾는 데 필수적이며, 또한 동기를 획득하고 유지하는데 수시로 옵셋의 변경이 필요하게 된다.
도 1은 종래의 PN 생성기의 블록도이다.
도 1에 도시된 PN 생성기는 Long 코드 생성기(10), Short 코드 I 생성기(2), Short 코드 Q 생성기(14), 제1 및 제2EXOR(16, 18)를 포함한다.
즉, 종래의 PN 생성기는 크게 Long 코드 생성기(10) 및 Short 코드 생성기(12, 14)로 구성된다.
Long 코드 생성 다항식 P(X)는 다음과 같다.
P(X) = X42+ X35+ X33+ X31+ X27+ X26+ X25+ X22+ X21+ X19+ X18+ X17+ X16+ X10+ X7+ X5+ X3+ X2+ X + 1
Long 코드의 발생주기는 242- 1이다. 따라서, 242- 1 내에서는 랜덤한 비트값을 갖지만, 그러한 랜덤값의 모임인 242- 1 단위 별로는 주기적이 된다.
Short 코드 생성 다항식 Pi(X)(Short 코드 I 생성다항식) 및 Pq(X)(Short 코드 Q 생성다항식)은 각각 다음과 같다.
Pi(X) = X15+ X13+ X9+ X8+ X7+ X5+ 1
Pq(X) = X15+ X12+ X11+ X10+ X6+ X5+ X4+ X3+ 1
Short 코드의 발생주기는 215이다. 따라서, 215내에서는 랜덤한 비트값을 갖지만, 그러한 랜덤값의 모임인 215단위 별로는 주기적이 된다.
Long 코드 생성기(10)에서 생성된 Long 코드와 Short 코드 생성기(12)에서 생성된 Short 코드 I는 제1EXOR(16)에서 배타적 논리합되어 I PN 코드를 생성한다.
Long 코드 생성기(10)에서 생성된 Long 코드와 Short 코드 Q 생성기(14)에서 생성된 Short 코드 Q는 제2EXOR(18)에서 배타적 논리합되어 Q PN 코드를 생성한다.
Long 코드 생성기(10) 및 Short 코드 생성기(12, 14)는 chip 클록이 발생할 때 마다 각각의 주기를 갖는 PN 코드를 비트 시이퀀스로 발생한다.
도 1에 도시된 종래의 PN 코드 생성기는 2초 마다 초기화되도록 되어 있는데, 옵셋을 갖는 PN 코드를 얻으려면 추가의 기준 타이머에서 일정시간(목적하는 옵셋)에 PN 생성기를 초기화화여 PN 코드를 얻게된다.
따라서, 옵셋에 따라서 즉각적으로 PN 코드를 얻을 수 없고, 다항식에 초기화 값에 의한 옵셋 조정은 모든 주기에 따른 상태값을 저장하고 있어야 하므로 하드웨어 또는 소프트웨어의 부담이 매우 크다는 문제점이 발생한다. 이 경우 써처(Searcher; 송신된 신호 중 최고 파워 신호단 검출수단) 및 핑거(Finger; 써처가 검출한 신호단 각각을 변조하는 수단)의 성능도 떨어지게 된다.
본 발명의 목적은, 상기와 같은 문제점을 해결하기 위해, PN 코드의 옵셋을 복수개의 심벌 구간 내에서 가변시킴으로서 써처(Searcher) 및 핑거(Finger)의 성능을 향상시키기 위한 개선된 PN 코드 생성기를 제공하는 것이다.
도 1은 종래의 PN 생성기의 블록도이다.
도 2는 본 발명에 따른 개선된 PN 코드 생성기의 일실시예의 블록도이다.
도 3는 제1 - 제6메모리(226 - 236) 각각의 메모리 포맷을 나타낸 도면이다.
도 4는 PN 코드 선택기(246)의 상세블록도이다.
상기의 목적을 달성하기 위하여,
복수 채널의 롱코드, I 채널 쇼트 코드 및 Q 채널 쇼트 코드로부터 I PN 코드 및 Q PN 코드를 생성하기 위한 PN 생성기에 있어서, 상기 롱코드와 쇼트 코드 각각을 소정 비트씩 병렬코드로 변환하고, 상기 변환 결과를 병렬로 출력하기 위한 복수개의 직병렬 변환기; 상기 복수개의 직병렬 변환기에서 변환된 병렬 코드를 저장하기 위한 복수개의 메모리; 현재 심벌 시간에 해당하는 코드를 라이트 어드레스로 발생하는 라이트 어드레스 발생부; 현재 심벌 시간과 심벌 옵셋의 차이에 해당하는 값을 리드 어드레스로 발생하는 리드 어드레스 발생부; 상기 라이트 어드레스를 디코딩한 값과, 상기 라이트 어드레스 및 리드 어드레스에 따라 라이트할 메모리와 리드할 메모리를 선택하기 위한 메모리 선택부; 채널 선택신호에 의해 상기 복수개의 메모리에서 독출한 병렬 코드를 결합하여 I PN 코드와 Q PN 코드를 생성하기 위한 PN 코드 선택부를 포함함을 특징으로 하는 개선된 PN 코드 생성기가 제공된다.
상기 PN 코드 선택부는, 채널 선택신호에 의해 상기 메모리에서 독출된 복수개의 롱코드에서 어느 하나의 채널 코드를 선택하여 출력하기 위한 선택부; 상기 선택부에서 선택된 어느 하나의 채널의 롱코드와 상기 메모리에서 독출된 I 채널 쇼트 코드를 논리연산하여 출력하기 위한 제1논리 게이트; 및 상기 선택부에서 선택된 어느 하나의 채널의 롱코드와 상기 메모리에서 독출된 Q 채널 쇼트 코드를 논리연산하여 출력하기 위한 제2논리 게이트를 포함함을 특징으로 한다.
이어서, 첨부한 도면들을 참조하여 본 발명의 실시예를 상세히 설명하기로 한다.
도 2는 본 발명에 따른 개선된 PN 코드 생성기의 일실시예의 블록도이다.
도 2에 도시된 PN 코드 생성기는 Long Code 0 - 3 생성기(202-208), Short Code I 및 Q생성기(210, 212), 제1 - 제6직병렬변환기(214-224), 제1 - 제6메모리(226-236), GPS 타이머(238), 라이트 어드레스 발생부(240), 리드 어드레스 발생부(242), 디코더(243), 메모리 선택부(244), PN 코드 선택기(246)를 포함한다.
도 2에 도시된 PN 코드 생성기는 4채널인 경우를 예로 든 것이다.
Long Code 0 - 3 생성기(202-208)는 0 - 3 채널의 롱코드를 순차비트로(직렬로) 발생한다. Short Code I 생성기(210)는 I 채널의 Short Code를 순차비트로(직렬로) 발생한다. Short Code Q 생성기(212)는 Q 채널의 Short Code를 순차비트로(직렬로) 발생한다.
제1 - 제6직병렬변환기(214-224)는 각 채널의 코드를 4비트씩 병렬로 변환하여 24 비트의 병렬 코드 데이터를 발생하여 출력한다.
GPS 타이머(238)는 칩클럭과 동기 기준시간 신호에 의해 최대 2초까지의 시간을 나타내는 타이머로 동작하여 라이트, 리드 어드레서 발생의 기준값을 생성한다. 칩클럭은 예컨대 1.2288MHZ의 32배인 39.3216MHZ로 한다.
라이트 어드레스 발생부(240)와 리드 어드레스 발생부(242)는 GPS 타이머(238)로부터 현재시간 값에 따른 어드레스를 발생한다. 즉, 라이트 어드레스 발생부(240)는 GPS 타이머(238)의 시간값(현재 심벌 타임)을 그대로 라이트 어드레스로 발생한다. 리드 어드레스 발생부(242)는 GPS 타이머(238)의 시간값에서 심벌의 옵셋을 뺀 값을 리드 어드레스로 발생한다.
디코더(243)는 라이트 어드레스 발생부(240)에서 발생된 어드레스 중 최상위 3비트를 디코딩하여 메모리 선택신호(제1메모리 선택신호 - 제6메모리 선택신호)를 발생한다.
메모리 선택부(244)는 디코더에서 발생된 메모리 선택신호와, 라이트 어드레스 발생부(240)와 리드 어드레스 발생부(242)에서 발생된 라이트 및 리드 어드레스에 근거하여 6개의 메모리 중 하나를 라이트 모드로 설정하고, 나머지 다섯 개 메모리 중 하나를 리드 모드로 설정한다.
제1 - 제6메모리(226 - 236) 중에서 메모리 선택부(244)에 의해 라이트 모드로 설정된 메모리는 제1 - 제6직병렬변환기(214-224)에서 변환된 병렬 코드 데이터 중 현재 시간에 해당하는 병렬 코드 데이터를 라이트하게 된다.
한편, 메모리 선택부(244)에 의해 리드 모드로 설정된 메모리는 제1 - 제6직병렬변환기(214-224)에서 변환된 병렬 코드 데이터 중 옵셋에 따른 어드레스에 해당하는 병렬 코드 데이터를 리드하여 출력하게 된다. 라이트 모드 또는 리드 모드로 설정되지 아니한 메모리는 아무 동작을 하지 않지만, GPS 타이머(238)와 옵셋에 따라서 다음 번에 라이트 모드로 설정되거나 리드 모드로 설정될 수 있다.
도 3는 제1 - 제6메모리(226 - 236) 각각의 메모리 포맷을 나타낸 도면이다.
도 3에 도시된 메모리 포맷은 I 및 Q 코드와, 4채널의 롱코드가 각각 4비트씩 총 24비트가 라이트 또는 리드가 되도록 되어 있다. 세로 방향의 0-1은 메모리 어드레스의 일부(2이하는 편의상 생략함)를 나타내고, 가로 방향의 0-7 은 가장 오래전(0)에부터 가장 최근(7) 순서로 라이트가 되는 순서 중 일부(8 이하는 편의상 생략함)를 나타낸다.
PN 코드 선택기(246)는 제1 - 제6메모리(226-236)에서 읽어진 값에서 4채널의 롱코드와 I 채널 및 Q 채널 쇼트 코드를 결합하여 I PN 코드와 Q PN 코드를 생성한다.
도 4는 PN 코드 선택기(246)의 상세블록도이다.
도 4에 도시된 PN 코드 선택기는 MUX(246a), 제1EXOR(246b) 및 제2EXOR(246c)를 나타낸다.
제1 - 제6메모리(226-236)에서 리드된 24 비트 중 4채널의 롱코드 16비트는 MUX(246a)로 입력되어 채널 선택신호(현재의 rake 타임에 할당된 채널의 선택신호)에 의해 어느 한 채널의 4비트가 출력된다.
I 채널 및 Q 채널 쇼트 코드 4비트는 각각 제1EXOR(246b) 및 제2EXOR(246c)로 입력된다.
제1EXOR(246b)는 I 채널 쇼트 코드 4비트와 MUX(246a)에서 출력된 어느 한 채널 코드 4비트를 배타적 논리합하여 I PN 코드를 출력한다.
제2EXOR(246c)는 Q 채널 쇼트 코드 4비트와 MUX(246a)에서 출력된 어느 한 채널 코드 4비트를 배타적 논리합하여 Q PN 코드를 출력한다.
본 발명은 상술한 실시예에 한정되지 않으며, 본 발명의 사상내에서 당업자에 의한 변형이 가능함은 물론이다. 예컨대, 본 발명의 실시예에서는 4채널의 롱코드인 경우를 예로 들어 설명하였으나, 다른 채널의 롱코드인 경우에도 당연히 적용이 된다. 또한 메모리를 6개 사용한 경우에 대해 설명하였으나 메모리의 개수는 가감할 수 있다. 그리고, PN 코드 선택기에서 PN 코드를 생성하기 위해 EXOR 게이트를 사용하였으나 다른 논리 게이트를 사용할 수 있음은 물론이다.
본 발명에 따르면, PN 옵셋의 설정이 용이하므로 써처의 성능을 향상시킬 뿐 아니라 핑거의 결합작업도 쉽게 되는 장점이 있다. 또한, 다수의 rake 처리가 용이하여 다채널을 수용하는 모뎀에서 병렬 구조의 효율을 극대화 할 수 있다.
Claims (3)
- 복수 채널의 롱코드, I 채널 쇼트 코드 및 Q 채널 쇼트 코드로부터 I PN 코드 및 Q PN 코드를 생성하기 위한 PN 생성기에 있어서,상기 롱코드와 쇼트 코드 각각을 소정 비트씩 병렬코드로 변환하고, 상기 변환 결과를 병렬로 출력하기 위한 복수개의 직병렬 변환기;상기 복수개의 직병렬 변환기에서 변환된 병렬 코드를 저장하기 위한 복수개의 메모리;현재 심벌 시간에 해당하는 코드를 라이트 어드레스로 발생하는 라이트 어드레스 발생부;현재 심벌 시간과 심벌 옵셋의 차이에 해당하는 값을 리드 어드레스로 발생하는 리드 어드레스 발생부;상기 라이트 어드레스를 디코딩한 값과, 상기 라이트 어드레스 및 리드 어드레스에 따라 라이트할 메모리와 리드할 메모리를 선택하기 위한 메모리 선택부; 및채널 선택신호에 의해 상기 복수개의 메모리에서 독출한 병렬 코드를 결합하여 I PN 코드와 Q PN 코드를 생성하기 위한 PN 코드 선택부를 포함함을 특징으로 하는 개선된 PN 코드 생성기.
- 제1항에 있어서, 상기 PN 코드 선택부는채널 선택신호에 의해 상기 메모리에서 독출된 복수개의 롱코드에서 어느 하나의 채널 코드를 선택하여 출력하기 위한 선택부;상기 선택부에서 선택된 어느 하나의 채널의 롱코드와 상기 메모리에서 독출된 I 채널 쇼트 코드를 논리연산하여 출력하기 위한 제1논리 게이트; 및상기 선택부에서 선택된 어느 하나의 채널의 롱코드와 상기 메모리에서 독출된 Q 채널 쇼트 코드를 논리연산하여 출력하기 위한 제2논리 게이트를 포함함을 특징으로 하는 개선된 PN 코드 생성기.
- 제2항에 있어서, 상기 제1 및 제2논리 게이트는각각 EXOR 게이트임을 특징으로 하는 개선된 PN 코드 생성기.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-1998-0029939A KR100509471B1 (ko) | 1998-07-24 | 1998-07-24 | 개선된 pn 코드 생성기 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-1998-0029939A KR100509471B1 (ko) | 1998-07-24 | 1998-07-24 | 개선된 pn 코드 생성기 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20000009488A true KR20000009488A (ko) | 2000-02-15 |
KR100509471B1 KR100509471B1 (ko) | 2005-10-26 |
Family
ID=19545142
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR10-1998-0029939A KR100509471B1 (ko) | 1998-07-24 | 1998-07-24 | 개선된 pn 코드 생성기 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100509471B1 (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100881791B1 (ko) * | 2000-09-29 | 2009-02-03 | 콸콤 인코포레이티드 | 임의의 위상에서 pn 시퀀스를 발생시키기 위한 방법 및 장치 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100260312B1 (ko) * | 1995-06-29 | 2000-07-01 | 김영환 | 디지탈 이동통신 방식에서 의사랜덤 잡음 오프셋 자동 발생기 |
JPH09181577A (ja) * | 1995-12-22 | 1997-07-11 | Nec Eng Ltd | パターン発生回路 |
JP3651154B2 (ja) * | 1996-12-27 | 2005-05-25 | ソニー株式会社 | Pn符号発生回路及び無線システムの端末装置 |
JP3329705B2 (ja) * | 1997-09-02 | 2002-09-30 | 松下電器産業株式会社 | Pn符号発生装置及び移動無線通信システム |
KR100250435B1 (ko) * | 1997-11-29 | 2000-04-01 | 정선종 | 의사잡음 코드 출력기 |
-
1998
- 1998-07-24 KR KR10-1998-0029939A patent/KR100509471B1/ko not_active IP Right Cessation
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100881791B1 (ko) * | 2000-09-29 | 2009-02-03 | 콸콤 인코포레이티드 | 임의의 위상에서 pn 시퀀스를 발생시키기 위한 방법 및 장치 |
Also Published As
Publication number | Publication date |
---|---|
KR100509471B1 (ko) | 2005-10-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
RU2216099C2 (ru) | Устройство и способ перемежения/обратного перемежения для системы связи | |
US5991857A (en) | Interleaving and de-interleaving of data in telecommunications | |
RU2137310C1 (ru) | Перемежитель в групповом спектре | |
US4015238A (en) | Metric updater for maximum likelihood decoder | |
US6748560B2 (en) | Address generator, interleave unit, deinterleaver unit, and transmission unit | |
US6363026B1 (en) | Address generating device for use in multi-stage channel interleaver/deinterleaver | |
US7894327B2 (en) | Buffer-based generation of OVSF code sequences | |
KR100525799B1 (ko) | 주파수도약수열 발생장치 | |
KR100509471B1 (ko) | 개선된 pn 코드 생성기 | |
US6788617B1 (en) | Device for generating memory address and mobile station using the address for writing/reading data | |
CN101404555B (zh) | 数字传输中的一种卷积交织解交织的方法 | |
US6965557B2 (en) | Interleaver memory access apparatus and method of CDMA system | |
HU176883B (en) | Digital signal generator generating periodic signals | |
KR100266979B1 (ko) | 디인터리버 | |
EP1755228A1 (en) | Viterbi decoding apparatus and viterbi decoding method | |
JP3549756B2 (ja) | ブロックインターリーブ回路 | |
JP3612660B2 (ja) | 擬似エラー付加回路 | |
US7061988B2 (en) | Interleaver memory access apparatus and method of mobile communication system | |
KR0183171B1 (ko) | 인터리버 및 디인터리버와 그 방법 | |
US6502179B2 (en) | Method and apparatus for compactly storing instruction codes | |
KR100239727B1 (ko) | 행렬 전치회로 | |
KR100237651B1 (ko) | 셀룰러(Cellullar) 시스템의 부호화 장치 | |
KR100459114B1 (ko) | 디지털 방송의 디인터리버장치 및 방법 | |
SU1061288A2 (ru) | Устройство дл приема многопозиционных сложных сигналов | |
KR20000020953A (ko) | 비터비 디코더의 경로 메모리 장치 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20120730 Year of fee payment: 8 |
|
FPAY | Annual fee payment |
Payment date: 20130730 Year of fee payment: 9 |
|
LAPS | Lapse due to unpaid annual fee |