KR101016928B1 - 확산 스펙트럼 신호 프로세싱 - Google Patents

확산 스펙트럼 신호 프로세싱 Download PDF

Info

Publication number
KR101016928B1
KR101016928B1 KR1020057006645A KR20057006645A KR101016928B1 KR 101016928 B1 KR101016928 B1 KR 101016928B1 KR 1020057006645 A KR1020057006645 A KR 1020057006645A KR 20057006645 A KR20057006645 A KR 20057006645A KR 101016928 B1 KR101016928 B1 KR 101016928B1
Authority
KR
South Korea
Prior art keywords
vector
code
phase
frequency
signal
Prior art date
Application number
KR1020057006645A
Other languages
English (en)
Other versions
KR20050053778A (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 노르드나브 테크놀로지스 악티에볼라그
Publication of KR20050053778A publication Critical patent/KR20050053778A/ko
Application granted granted Critical
Publication of KR101016928B1 publication Critical patent/KR101016928B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B1/00Details 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/69Spread spectrum techniques
    • H04B1/707Spread spectrum techniques using direct sequence modulation
    • H04B1/7073Synchronisation aspects
    • H04B1/7085Synchronisation aspects using a code tracking loop, e.g. a delay-locked loop
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B1/00Details 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/69Spread spectrum techniques
    • H04B1/707Spread spectrum techniques using direct sequence modulation
    • H04B1/7073Synchronisation aspects
    • H04B1/7075Synchronisation aspects with code phase acquisition
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S19/00Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
    • G01S19/01Satellite radio beacon positioning systems transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
    • G01S19/13Receivers
    • G01S19/24Acquisition or tracking or demodulation of signals transmitted by the system
    • G01S19/29Acquisition or tracking or demodulation of signals transmitted by the system carrier including Doppler, related
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S19/00Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
    • G01S19/01Satellite radio beacon positioning systems transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
    • G01S19/13Receivers
    • G01S19/24Acquisition or tracking or demodulation of signals transmitted by the system
    • G01S19/30Acquisition or tracking or demodulation of signals transmitted by the system code related
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B2201/00Indexing scheme relating to details of transmission systems not covered by a single group of H04B3/00 - H04B13/00
    • H04B2201/69Orthogonal indexing scheme relating to spread spectrum techniques in general
    • H04B2201/707Orthogonal indexing scheme relating to spread spectrum techniques in general relating to direct sequence modulation
    • H04B2201/70715Orthogonal indexing scheme relating to spread spectrum techniques in general relating to direct sequence modulation with application-specific features

Landscapes

  • Engineering & Computer Science (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Position Fixing By Use Of Radio Waves (AREA)
  • Ultra Sonic Daignosis Equipment (AREA)
  • Radar Systems Or Details Thereof (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)

Abstract

본 발명은 비교적 고주파수인 연속적인 신호가 수신되는 (1610), 확산 스펙트럼 신호들의 프로세싱에 관한 것이다. 이 신호는 기본 샘플링 레이트로 샘플링되어, 시간 이산 신호 샘플들의 결과 시퀀스가 생성되며, 대응하는 레벨-이산 샘플 값으로 양자화된다 (1620). 하나 이상의 연속 샘플 값들을 각각 포함하는 다수의 데이터 워드들이 형성된다 (1630). 이들 데이터 워드들로부터 획득되는 정보는, 코드 벡터 형태로 미리 생성된 (1600), 신호원 고유 코드 시퀀스의 적어도 하나의 표현과 상관된다 (1640). 특히, 상관시키는 단계는, 코드 벡터들의 서브-그룹 내의 적어도 각각의 벡터를 데이터 워드로부터 도출된 적어도 하나의 벡터와 상관시키는 것을 포함한다. 따라서, 결과 데이터가 생성된다 (1650).

Description

확산 스펙트럼 신호 프로세싱{SPREAD SPECTRUM SIGNAL PROCESSING}
발명의 배경 및 종래 기술
본 발명은 일반적으로 벡터 기반 알고리즘에 의한 확산 스펙트럼 신호들의 프로세싱에 관한 것이다. 특히, 본 발명은 청구항 제 1 항의 전제부에 따른 신호 수신기, 및 청구항 제 32 항의 전제부에 따른 확산 스펙트럼 신호들을 수신하는 방법에 관한 것이다. 또한, 본 발명은 청구항 제 33 항 및 청구항 제 34 항에 따른 컴퓨터 판독가능 매체에 관한 것이다.
확산 스펙트럼 기술은, 셀룰러 통신 시스템 및 글로벌 네비게이션 위성 시스템 (Global Navigation Satellite Systems; GNSS)) 이 2가지 대표적인 예라고 할 수 있는 다양한 분야에서 점차 중요하게 되어가고 있다. 또한, 상당히 다양한 송신 표준들이 하이브리드 목적의 수신기 또는 범용 목적의 수신기의 필요성을 창출한다. 예를 들어, 셀룰러 표준들인, cdma2000 및 WCDMA 양자는 확산 스펙트럼 신호들의 송신을 포함한다. 그러나, 공중 인터페이스에서의 차이로 인해, 동일한 단말은 2개의 시스템들에서 사용될 수 없다. 대신에, 각각의 시스템에서 전용 단말이 채용되어야만 한다. 다른 방법으로는, 2개의 개별 송수신기 체인들을 포함하는 듀얼 모드 단말이 설계되어야만 한다. 따라서, 하나의 GNSS, 즉 글로벌 위치확인 시스템 (GPS; 미국 정부) 에 적응된 네비게이션 수신기는 갈릴레오 시스템 (글로벌 네비게이션 서비스를 위한 유럽 프로그램) 또는 글로벌 궤도 네비게이션 위성 시스템 (GLONASS; 러시아 연방 국방부) 과 같은 상이한 GNSS에 속하는 위성으로부터 신호들을 수신할 수 없다.
이를 가능하게 하기 위해서는, 다중-모드 수신기가 설계되어야만 한다. 그러나, 단일 디바이스에 다중 수신기 체인들을 포함시키는 것은 고가일 뿐만 아니라, 특히 2개보다 많은 신호 포맷들이 프로세싱될 경우에 유닛을 크고 무겁게 한다. 따라서, 어떤 신호들이 수신되고 프로세싱될지에 따라서 신호 프로세싱 원리들이 변경될 수도 있는, 프로그래머블 소프트웨어 수신기 솔루션이 요구된다.
다양한 소프트웨어 솔루션들이 GNSS 신호들을 프로세싱하기 위해 이미 알려져 있다. 미사일들을 가이딩하는 GPS 수신기 트래킹 시스템이 설명된 특허 문헌 WO02/50561이 그 일례이다. 여기에서, 수신국은 GPS 데이터를 수신 및 프로세싱하는 하나 이상의 프로세싱 스테이지들을 포함한다. 제어 신호는 상관 연산의 결과에 응답하여, 프로세싱 스테이지들의 수가 증가 또는 감소되어야 하는지를 제어한다. 타이밍 정보의 트래킹 및 복구는 전부 소프트웨어로 수행된다. 그러나, 그 프로세싱은 상대적으로 복잡한 푸리에 변환의 실-시간 계산을 포함하므로, 상당한 프로세싱 자원들을 요구한다. 따라서, 이러한 타입의 수신기가 셀룰러 전화기 또는 휴대용 GNSS-수신기와 같은 소형 유닛에 특히 적합한 것은 아니다.
Asai T. 등에 의한 1998년, 미츠비시 전기 회사, ULSI 연구소의 IEEE 논문 "TUPM 12.4: GPS 기저대역 프로세싱의 소프트웨어 솔루션" (The article "TUPM 12.4 : Software Solution of GPS Baseband Processing", ULSI Laboratory, Mitsubishi Electric Corporation, IEEE, 1998 by Asai T., et al.) 은, 임베딩된 마이크로프로세서를 사용하는 소프트웨어 GPS 수신기를 위한 원리들을 약술하는데, 이는 8개에 이르는 위성들로부터의 신호들이 40 MIPS (millions of/or Mega Instructions Per Second) 근방에서 복조될 수 있게 한다. 여기에서, 2 MHz GPS 기저대역 신호는 소프트웨어 무선 수신기에 공급되고, 그 소프트웨어 무선 수신기는 위상 보상 뿐만 아니라, 스펙트럼 역확산 및 믹싱; 동기식 복조, 위성 획득 및 트래킹을 수행한다. 중간 주파수 (IF) 신호가 1-비트 샘플링되고, 다운컨버전이 역확산 이전에 수행되는 알고리즘이 제안된다. 32 샘플들의 형태의 결과 데이터가 병렬로 연속하여 프로세싱된다. DRAM (Dynamic Random Access Memory) 은 각각의 위성에 대한 특정한 C/A (코오스 획득 (Coarse Acquisition)) 코드 테이블을 저장하고, 그 각각의 위성으로부터 신호들이 수신된다. 모든 다른 데이터 및 명령들은 고속 프로세싱을 달성하기 위해 캐시 메모리에 저장된다. 이러한 방식이 합리적으로 효율적인 구현을 초래한다고 알려져 있지만, 상기 문헌은 실제로 이러한 효과를 획득하기 위해서, 역확산 및 상관이 어떻게 이루어져야 하는지에 관한 구체적인 설명이 부족하다.
Akos. D. 등에 의한 2001년 7월, GPS 월드의 논문 "GPS 수신기에 대한 GPS-실-시간 소프트웨어 무선 아키텍쳐의 튜닝" (Akos. D. et al.,"Tuning In to GPS-Real-Time Software Radio Architectures for GPS Receivers", GPS World, July 2001) 은, IF 신호 샘플들이 연속 프로세싱을 위해, 무선 프론트-엔드로부터 프로그래머블 프로세서에 직접 공급되는 수신기 아키텍쳐를 설명한다. 상기 논문은 다중 데이터 샘플들을 병렬로 프로세싱하기 위해 단일 명령 다중 데이터 (Single Instruction Multiple Data (SIMD)) 명령들을 사용하는 가능성을 언급한다. 그러나, 휴대성 및 유연성의 문제가 인지되며, 또한, 효율적인 병렬 프로세싱이 실제로 어떻게 달성될 수 있는지에 관한 교시가 없다.
Dovis, F. 등에 의한 2002년 봄, 네비게이션 신호 분석 및 시뮬레이션 그룹, 폴리테크니코 디 토리노, 전자부의 논문 "네비게이션 애플리케이션을 위한 재구성 가능한 수신기의 설계 및 시험대 구현" (Dovis, F. et al., "Design and Test-Bed Implementation of a Reconfigurable Receiver for Navigation Applications", Electronics Department, Politecnico di Torino, Navigation Signal Analysis and Simulation Group, Spring of 2002) 은, 2개 이상의 상이한 GNSS들로부터의 데이터를 융합할 수 있는 재구성 가능한 GNSS 수신기의 설계에 관한 것이다. 상기 문헌은 무선 프론트-엔드에 부가하여, 필드 프로그래머블 게이트 어레이 (FPGA) 및 디지털 신호 프로세서 (DSP) 를 포함하는 아키텍쳐를 설명한다. 저자들은 다양한 계산적 부하의 문제를 제기한다. 그러나, 저자들은 식별된 요구조건들을 만족시키는 알고리즘을 제시하지는 않는다.
따라서, 종래 기술은 다수의 소프트웨어 기반 GNSS-수신기들의 예를 포함한다. 그럼에도 불구하고, 소프트웨어 구현에 적합하고, 실-시간으로 확산 스펙트럼 신호들을 수신 및 프로세싱하기 위한 오늘날의 ASIC-기반 솔루션들의 성능과 적어도 필적할 만한 성능을 가진, 높은 효율의 솔루션의 특별한 교시가 없다 (ASIC = 주문형 집적 회로 (Application Specific Integrated Circuit)).
발명의 개요
따라서, 본 발명의 목적은 상기 문제점들을 해결하고, 그에 따라 물리적으로 소형이며 전력 효율이 좋은 디바이스에서 구현될 수도 있는 진정한 소프트웨어 적응 방식을 제시하는, 확산 스펙트럼 신호들을 수신 및 프로세싱하는 솔루션을 제공하는 것이다.
본 발명의 일 양태에 따르면, 상기 목적은 최초에 설명된 확산 스펙트럼 신호들을 수신하는 방법에 의해 달성되며, 그 방법은 상관시키는 단계를 위한 준비를 포함하고, 상기 준비는 연속적인 신호를 수신하기 전에 수행하는 것을 특징으로 한다. 이 준비는, 적어도 하나의 신호원 고유 코드 시퀀스의 특정한 코드 시퀀스를 각각 표현하는 다수의 코드 벡터들을 미리 생성하는 것을 포함한다. 또한, 본 발명에 따르면, 상관시키는 단계는 코드 벡터들의 서브-그룹 내의 적어도 각각의 벡터를 데이터 워드로부터 도출된 적어도 하나의 벡터와 곱하는 것을 포함한다.
이 방식은, 제안된 벡터 접근법이 디지털 프로세서 (예를 들어, 마이크로프로세서) 로 하여금 각각의 클록 싸이클 동안에 다중 신호 샘플들을 병렬로 프로세싱하여, 프로세서의 매우 효율적인 사용을 가능하게 하기 때문에 이점이 있다. 또한, 코드 벡터들을 미리 생성함으로써, 유용한 프로세싱 용량이 절약되고, 이는 결국, 예를 들어, 네비게이션 위성 시스템에서 위성들에 의해 송신되는 네비게이션 신호들을 트래킹하기 위해, 시간 단위당 입력 데이터의 충분한 양을 처리할 수 있도록 한다.
본 발명의 이러한 양태의 바람직한 실시형태에 따르면, 각각의 코드 벡터는 특정한 신호원 고유 코드 시퀀스를 표현하고, 각각의 코드 벡터는 기본 샘플링 레이트로 샘플링되고, 레벨-이산 샘플 값들을 생성하는데 사용된 양자화 프로세스를 이용하여 양자화된다. 또한, 코드 벡터들은 후속의 프로세싱이 효율적이게 하는 방식으로 인입 데이터 신호의 포맷에 적응되는 것이 바람직하다.
본 발명의 이러한 양태의 또 다른 바람직한 실시형태에 따르면, 적어도 하나의 신호원 고유 코드 시퀀스는 소위 의사 랜덤 잡음을 표현한다. 이러한 타입의 코드 시퀀스들은 2개 이상의 상이한 신호들이 동일한 캐리어 주파수 상으로 변조되는 환경에서 이점이 있다. 즉, 상이한 의사 랜덤 잡음 신호들은 서로 직교 (또는 적어도 거의 직교) 한다. 결국, 제 1 의사 랜덤 잡음 신호에 의해 확산되는 제 1 정보 신호는, 제 2 의사 랜덤 잡음 신호에 의해 확산되는 제 2 정보 신호의 최소 열화를 야기하며, 역으로도 마찬가지이다.
본 발명의 이러한 양태의 또 다른 바람직한 실시형태에 따르면, 수신 단계는 인입 고주파수 신호로부터 중간 주파수 신호로의 다운컨버전을 포함한다. 고주파수 신호는 제 1 주파수를 중심으로 대칭인 스펙트럼을 가지는 것으로 간주되고, 중간 주파수 신호는 제 2 주파수를 중심으로 대칭인 스펙트럼을 가지는 것으로 간주되며, 제 2 주파수는 제 1 주파수보다 상당히 더 낮다. 따라서, 수신 단계는 정보 반송 신호를 본래의 인입 신호가 위치하는 대역보다 프로세싱하기에 기술적으로 더 용이한 기저대역으로 변환한다.
본 발명의 이러한 양태의 또 다른 바람직한 실시형태에 따르면, 그 방법은 다음의 단계들을 포함한다. 먼저, 도플러-효과로 인한 제 2 주파수의 최대 주파수 편이가 결정된다. 그 후, 제 2 주파수를 중심으로 도플러 주파수 간격이 정의된다. 도플러 주파수 간격은 제 2 주파수와 최대 주파수 편이 간의 차이와 동일한 최저 주파수 한계, 및 제 2 주파수와 최대 주파수 편이의 합과 동일한 최고 주파수 한계를 가진다. 그 후, 도플러 주파수 간격은 정수개의 등거리 주파수 간격들로 분할되고, 후속하여 주파수 후보 벡터가 각각의 주파수 간격에 대해 정의된다. 스펙트럼을 분할하는 이러한 방식은 중간 캐리어 주파수 및 그의 편이의 유연성 있는 모델링을 제공하기 때문에 이점이 있다.
본 발명의 이러한 양태의 또 다른 바람직한 실시형태에 따르면, 주파수 후보 벡터에 대해, 정수개의 초기 위상 위치들이 결정된다. 이러한 정수는, 상대적으로 높은 수는 비교적 높은 위상 해상도에 대응하고, 반면에 상대적으로 낮은 수는 비교적 낮은 위상 해상도에 대응하도록 위상 해상도를 표시한다. 또한, 캐리어 주파수 후보 벡터와 초기 위상 위치의 각각의 조합에 대해, 캐리어 주파수-위상 후보 벡터가 정의된다. 상이한 주파수-위상 후보 벡터들은 수신된 신호의 주파수 특성 및 위상 특성의 매우 정확한 추정의 결정을 허용하여, 높은 품질을 가지는 복조된 신호를 보장하므로 이점이 있다.
본 발명의 이러한 양태의 또 다른 바람직한 실시형태에 따르면, 각각의 캐리어 주파수-위상 후보 벡터 내의 요소들의 수가 결정된다. 다음으로, 캐리어 주파수-위상 후보 벡터들은, 캐리어 주파수-위상 후보 벡터의 세그먼트와 데이터 워드 간의 곱셈 연산을 수행하도록 적응된 데이터 포맷에 따라 저장된다. 이러한 적응은, 그에 의해 수개의 신호 샘플들이 비교적 간단한 연산자들에 의해 병렬로 프로세싱될 수도 있기 때문에 이점이 있다. 데이터 포맷의 적응은, 캐리어 주파수-위상 후보 벡터의 각각의 세그먼트가 데이터 워드로부터 도출된 적어도 하나의 벡터 각각의 요소들의 수와 동일한 수의 요소들을 얻도록, 캐리어 주파수-위상 후보 벡터의 각각의 세그먼트에 적어도 하나의 요소를 부가하는 것을 포함한다. 따라서, 즉, 소위 단일 명령 다중 데이터 (SIMD)-연산 또는 논리 XOR-연산에 의해, 적어도 하나의 벡터 중 하나와 함께 캐리어 주파수-위상 후보 벡터의 세그먼트를 프로세싱하는 것이 가능하다.
본 발명의 이러한 양태의 또 다른 바람직한 실시형태에 따르면, 그 방법은 다음의 단계들을 더 포함한다. 먼저, 도플러 효과로 인한 코드 레이트의 최대 편이가 결정된다. 그 후, 도플러 레이트 간격이 중심 코드 레이트를 중심으로 정의된다. 도플러 주파수 간격은 중심 코드 레이트와 최대 코드 레이트 편이 간의 차이와 동일한 최저 코드 레이트 한계, 및 중심 코드 레이트와 최대 코드 레이트 편이의 합과 동일한 최고 코드 레이트 한계를 가진다. 중간 주파수 스펙트럼과 유사하게, 도플러 레이트 간격은 정수개의 등거리 코드 레이트 간격들로 분할되고, 코드 레이트 후보가 각각의 코드 레이트 간격에 대해 정의된다. 중간 주파수 스펙트럼과 또한 유사하게, 정수개의 가능한 초기 코드 위상 위치들이 각각의 코드 레이트 후보에 대해 결정된다. 이러한 정수는, 상대적으로 높은 수는 비교적 높은 코드 위상 해상도에 대응하고, 반면에 상대적으로 낮은 수는 비교적 낮은 코드 위상 해상도에 대응하도록 코드 레이트 해상도를 표현한다. 통상적으로, 확산 스펙트럼 코드 변조는 주파수 변조보다 도플러 효과에 의해 야기되는 왜곡에 덜 민감하다. 따라서, 코드 레이트 간격들이 상대적으로 클 수도 있다. 그러나, 높은 품질의 복조된 신호를 얻기 위해 소정의 도플러 시프트 추정도가 요구된다.
본 발명의 이러한 양태의 또 다른 바람직한 실시형태에 따르면, 각각의 신호원 고유 코드 시퀀스에 대해, 각각의 코드 레이트-위상 후보 벡터를 기본 샘플링 레이트로 샘플링하여, 대응하는 코드 벡터를 생성함으로써 코드 벡터들의 세트가 생성된다. 또한, 이는 비교적 간단한 연산자들에 의해 수개의 신호 샘플들의 병렬 프로세싱을 간단하게 한다.
본 발명의 이러한 양태의 또 다른 바람직한 실시형태에 따르면, 본래의 코드 벡터의 끝으로부터 변형된 코드 벡터의 시작으로 특정한 수의 요소들을 복사하고, 본래의 코드 벡터의 시작으로부터 코드 벡터의 끝으로 특정한 수의 요소들을 복사함으로써, 각각의 코드 벡터에 기초하여 변형된 코드 벡터가 생성된다. 코드 벡터의 이러한 확장은, 신호원 고유 코드 시퀀스의 국부적 복사들의 간단한 평행이동 (translation) 을 수행함으로써, 전기 기술, 프롬프트 기술, 및 후기 기술을 통한 트래킹 파라미터들의 추출을 허용하기 때문에 상당한 이점이 있다.
본 발명의 이러한 양태의 또 다른 바람직한 실시형태에 따르면, 각각의 신호원 고유 코드 시퀀스에 대해 변형된 코드 벡터들의 세트가 저장된다. 여기에서, 각각의 변형된 코드 벡터는 적어도 하나의 전체 코드 시퀀스의 샘플링된 버전을 표현하는 다수의 요소들을 포함한다. 상술된 바와 같이, 변형된 코드 벡터는 시퀀스의 시작 및 끝의 반복을 또한 포함한다. 특정한 변형된 코드 벡터는 코드 레이트 후보와 코드 위상 위치의 각각의 조합에 대해 정의된다. 이러한 미리 생성된 변형된 코드 벡터들은 실시간으로 계산될 필요는 없으나, 메모리로부터 간단하게 획득될 수도 있으므로, 프로세서의 프로세싱 용량을 상당히 절약한다.
본 발명의 이러한 양태의 또 다른 바람직한 실시형태에 따르면, 변형된 코드 벡터들의 데이터 포맷은, 적어도 하나의 벡터 중 하나와 변형된 코드 벡터가 SIMD-연산 또는 XOR-연산에 의해 공동으로 (jointly) 프로세싱될 수도 있도록, 데이터 워드로부터 도출된 적어도 하나의 벡터의 데이터 포맷에 대하여 적응된다. 일반적으로, 이는 프로세싱 효율성 관점에서 이점이 있다.
본 발명의 이러한 양태의 또 다른 바람직한 실시형태에 따르면, 그 방법은 초기 획득 페이즈 및 후속 트래킹 페이즈를 포함한다. 획득 페이즈는, 트래킹 페이즈 동안 수신되는 신호들의 디코딩을 개시하기 위해 요구되는 예비 파라미터들의 세트를 확립한다. 이러한 파라미터들은, 변형된 코드 벡터, 캐리어 주파수 후보 벡터, 초기 위상 위치, 코드 위상 위치, 및 변형된 코드 벡터에 대한 샘플 값의 시작을 나타내는 코드 인덱스를 포함할 수도 있다. 성공적인 획득 페이즈는, 적어도 하나의 신호원 고유 코드 시퀀스가 식별되고, 이 신호가 수신기에 의해 트래킹될 수 있게 하는 결과를 초래한다 (즉, 연속하여 수신될 수도 있음).
본 발명의 이러한 양태의 또 다른 바람직한 실시형태에 따르면, 트래킹은 다음의 단계들을 포함한다. 먼저, 트래킹 특성들에 기초하여, 프롬프트 포인터가 각각의 변형된 코드 벡터에 대해 계산된다. 프롬프트 포인터는 코드 시퀀스에 대한 시작 위치를 표시한다. 초기의 프롬프트 포인터 값은 코드 인덱스와 동일하게 설정된다. 그 후, 전기 포인터와 후기 포인터의 적어도 하나의 쌍이 각각의 프롬프트 포인터를 중심으로 할당된다. 전기 포인터는 프롬프트 포인터의 위치의 적어도 하나의 요소 이전에 위치된 샘플 값을 특정하고, 대응하여, 후기 포인터는 프롬프트 포인터의 위치의 적어도 하나의 요소 후에 위치된 샘플 값을 특정한다. 이들 포인터들은, 프롬프트 포인터가 상관 최대 값에 가능한 근접하게 위치하고, 전기 포인터가 상관 최대 값에 다소간 앞선 시간에 위치되며, 후기 포인터가 상관 최대 값에 다소간 뒤진 시간에 위치되도록, 상관 최대 값 근방의 포인터들의 반복되는 재배치에 의해, 수신된 신호의 트래킹을 유지하는데 사용된다. 이 방식에 의해 얻는 중요한 이점은 동일한 벡터가 상이한 지연들을 표현하기 위해 재사용될 수도 있다는 점이다. 따라서, 유용한 메모리 공간 및 프로세싱 용량이 절약된다.
본 발명의 이러한 양태의 또 다른 바람직한 실시형태에 따르면, 트래킹은 다음의 단계들을 더 포함한다. 먼저, 인입 레벨-이산 샘플 값들의 시퀀스가 수신된다. 그 후, 각각의 데이터 워드가 각각의 캐리어 주파수-위상 후보 벡터 내의 요소들의 수와 동일한 수의 요소들을 포함하도록, 샘플 값들로부터 데이터 워드들이 형성된다. 그 후, 데이터 워드에 대해, 캐리어 주파수-위상 후보 벡터들의 관련된 세트가 계산되고, 관련된 세트 내의 각각의 캐리어 주파수-위상 후보 벡터에 대해서, 벡터의 미리 생성된 동일-위상 표현 및 직교 위상 표현이 획득된다. 후속하여, 각각의 데이터 워드는 한편으로는, 관련된 세트 내의 캐리어 주파수-위상 후보 벡터의 동일-위상 표현과 곱해져서, 제 1 중간-주파수-감소된 정보 워드를 생성하고, 다른 한편으로는, 관련된 세트 내의 캐리어 주파수-위상 후보 벡터의 직교-위상 표현과 곱해져서, 제 2 중간-주파수-감소된 정보 워드를 생성한다. 중간-주파수-감소된 정보 워드들은 인입 데이터 워드들로부터 도출된 상술된 벡터들의 성분 각각을 구성한다. 이 곱셈 방식은 범용 목적의 마이크로프로세서 용량의 매우 효율적인 사용을 가능하게 하기 때문에 이점이 있다.
본 발명의 이러한 양태의 또 다른 바람직한 실시형태에 따르면, XOR-연산 또는 SIMD-연산이, 캐리어 주파수-위상 후보 벡터의 동일-위상 표현과 데이터 워드 간의 곱셈, 및 캐리어 주파수-위상 후보 벡터의 직교-위상 표현과 데이터 워드 간의 곱셈을 수행하는데 사용된다.
본 발명의 이러한 양태의 또 다른 바람직한 실시형태에 따르면, 트래킹은 다음의 단계들을 더 포함하고, 그 단계들은, 제 1 중간-주파수-감소된 정보 워드를 프롬프트 포인터에 의해 표시되는 위치에서 시작하는 변형된 코드 벡터와 상관시켜서, 제 1 프롬프트-역확산 심볼 스트링을 생성하는 단계, 제 1 중간 주파수-감소된 정보 워드를 전기 포인터에 의해 표시되는 위치에서 시작하는 변형된 코드 벡터와 상관시켜서, 제 1 전기-역확산 심볼 스트링을 생성하는 단계, 제 1 중간-주파수-감소된 정보 워드를 후기 포인터에 의해 표시되는 위치에서 시작하는 변형된 코드 벡터를 상관시켜서, 제 1 후기-역확산 심볼 스트링을 생성하는 단계, 제 2 중간-주파수-감소된 정보 워드를 상기 프롬프트 포인터에 의해 표시되는 위치에서 시작하는 변형된 코드 벡터와 상관시켜서 제 2 프롬프트-역확산 심볼 스트링을 생성하는 단계, 제 2 중간-주파수-감소된 정보 워드를 전기 포인터에 의해 표시되는 위치에서 시작하는 변형된 코드 벡터와 상관시켜서, 제 2 전기-역확산 심볼 스트링을 생성하는 단계, 및 제 2 중간-주파수-감소된 정보 워드를 후기 포인터에 의해 표시되는 위치에서 시작하는 변형된 코드 벡터와 상관시켜서, 제 2 후기-역확산 심볼 스트링을 생성하는 단계를 포함한다. 그 후, 결과 데이터 워드가 역확산 심볼 스트링들의 각각의 세트에 대해 도출되는 것이 바람직하다. 이는, 예를 들어, 결과 데이터 워드들이 패킹된 정보 또는 패킹되지 않은 정보를 포함하는지에 따라, 관련된 합산 연산을 수행하거나 또는 역확산 심볼 스트링들의 비트 패턴에 기초하여 테이블 내의 미리 생성된 값을 조사 (look up) 함으로써 수행될 수도 있다. 따라서, 높은 품질의 데이터는 최소의 실시간 계산들을 가지고 획득될 수도 있으며, 이는 프로세싱 관점에서 이점이 있다.
본 발명의 이러한 양태의 또 다른 바람직한 실시형태에 따르면, XOR-연산 또는 SIMD-연산이, 중간-주파수-감소된 정보 워드들과 변형된 코드 벡터들 간의 곱셈을 수행하는데 또한 사용되며, 이 또한 프로세싱 관점에서 이점이 있다.
본 발명의 이러한 양태의 또 다른 바람직한 실시형태에 따르면, 정보의 특정 단편들이 현재 데이터 워드의 프로세싱을 완료하고 후속 데이터 워드의 프로세싱을 개시함과 함께 전달된다. 이 전달되는 정보는, 후속 데이터 워드의 제 1 샘플 값을 표시하는 포인터, 캐리어 주파수-위상 후보 벡터들의 관련된 세트를 나타내는 파라미터들의 그룹, 코드 벡터들의 관련된 세트, 및 프롬프트 포인터, 전기 포인터, 및 후기 포인터를 포함하는 것이 바람직하다. 따라서, 전달된 정보에 기초하여, 후속 데이터 워드는 즉시 프로세싱될 수도 있다.
본 발명의 다른 양태에 따르면, 본 목적은 컴퓨터 프로그램이 컴퓨터에서 실행될 때 상기 제안된 방법을 수행하는 소프트웨어를 포함하는, 컴퓨터의 내부 메모리에 직접 로딩 가능한 (loadable) 컴퓨터 프로그램에 의해 달성된다.
본 발명의 또 다른 양태에 따르면, 본 목적은 컴퓨터로 하여금 상기 제안된 방법을 수행하게 하는 프로그램이 기록된, 컴퓨터 판독가능 매체에 의해 달성된다.
본 발명의 또 다른 양태에 따르면, 본 목적은 최초에 설명된 신호 수신기에 의해 달성되는데, 수신기가 상기 설명된 방법에 따라서 동작하도록, 메모리 수단에 제안된 컴퓨터 프로그램이 로딩되는 것을 특징으로 한다.
따라서, 본 발명은 일반적인 소프트웨어 무선 수신기에서, 임의의 타입의 확산 스펙트럼 신호들을 수신 및 디코딩하기 위한 훌륭한 기구를 제공한다. 예를 들어, 동일한 수신기가 상이한 포맷들의 네비게이션 위성 신호들을 트래킹하는데 사용될 수도 있다. 제 1 신호는 제 1 포맷 상에서 수신되는 반면, 하나 이상의 다른 신호들은 제 2 또는 제 3 포맷 상에서 수신되도록, 이러한 신호들은 병렬로 수신될 수도 있다.
또한, 제안된 솔루션은 동일한 수신기가 셀룰러 시스템에서의 통신과 같이 완전히 상이한 목적들을 위해 이용되도록 허용한다.
도면의 간단한 설명
본 발명은 예로서 첨부 도면들을 참조하여 개시된 바람직한 실시형태들에 의해 이제 더 자세하게 설명된다.
도 1은 본 발명에 따라 정보가 추출될 수도 있는 예시적인 확산 스펙트럼 신호에 대한 스펙트럼 그래프를 도시한다.
도 2는 도 1에 도시된 스펙트럼에 대응하는 주파수 다운컨버팅된 신호에 대한 스펙트럼 그래프를 도시한다.
도 3은 스펙트럼의 도플러 시프트를 나타내는, 도 2의 확대된 버전이다.
도 4는 본 발명의 일 실시형태에 따라서 데이터 신호가 신호원 고유 코드 시퀀스로 어떻게 변조되는지를 나타낸다.
도 5는 본 발명의 일 실시형태에 따라서 초기 상관 인자 (correlator) 로서 사용되는 캐리어 주파수-위상 후보 벡터들에 대한 3차원 그래프를 도시한다.
도 6은 도 5의 캐리어 주파수-위상 후보 벡터들의 다른 표현을 도시한다.
도 7 및 도 8은 본 발명의 일 실시형태에 따라서 수신된 신호에 대해, 코드 인덱스 및 코드 위상이 어떻게 정의되는지를 나타내는 그래프를 도시한다.
도 9의 (a) 및 (b) 는 본 발명의 일 실시형태에 따라서 본래의 코드 벡터에 기초하여 변형된 코드 벡터가 어떻게 생성되는지를 나타낸다.
도 10은 본 발명의 일 실시형태에 따라서 후속 상관 인자로서 사용되는 코드 레이트-위상 후보 벡터들에 대한 3차원 그래프를 도시한다.
도 11은 본 발명의 일 실시형태에 따라서 코드 시퀀스 시작 포인터들의 일 세트가 변형된 코드 벡터에 어떻게 할당되는지를 나타낸다.
도 12는 본 발명의 일 실시형태에 따라서 인입 레벨-이산 샘플 값들의 시퀀스로부터 데이터 워드들이 어떻게 형성되는지를 나타낸다.
도 13은 본 발명의 일 실시형태에 따라서 도 12의 데이터 워드들이 다양한 미리 생성된 벡터들과 어떻게 상관되는지를 나타낸다.
도 14는 본 발명의 일 실시형태에 따라서 포인터들의 다중 쌍들이 어떻게 할당될 수도 있는지를 나타낸다.
도 15는 제안된 신호 수신기를 나타낸다.
도 16은 본 발명에 따라서 확산 스펙트럼 신호들을 프로세싱하는 일반적인 방법을 흐름도에 의해 나타낸다.
본 발명의 바람직한 실시형태의 설명
GNSS에서 요구되는 레이트들과 같은 높은 샘플링 레이트들에서 진정한 실시간 소프트웨어 기반 신호 프로세싱 솔루션을 실현하기 위해서, 마이크로프로세서 시스템의 아키텍쳐가 매우 효율적으로 이용되어야만 한다. 본 발명은, 미리 생성된 코드 벡터 표현들에 기초한 병렬 프로세싱의 형태를 포함하는 접근법을 사용한다. 따라서, 본 발명은 프로세싱 속도와 메모리 이용 사이의 균형을 맞추고, 이는 ASIC에 대한 범용 목적 마이크로프로세서의 용량 부족을 보상한다. 본 솔루션의 상세한 설명은 이하의 개시된 바로부터 명백하게 될 것이다.
도 1은 본 발명에 따라 정보가 추출될 수도 있는 예시적인 확산 스펙트럼 신호에 대한 스펙트럼 그래프를 도시한다. 예를 들어, 신호는 1.57542 GHz의 캐리어 주파수 (fHF) 를 가지는, L1-대역 내의 GPS C/A-신호일 수도 있다. 이는, 신호의 스펙트럼이 캐리어 주파수 (fHF) 를 중심으로 대칭임을 의미한다. 또한, 신호는 2 MHz의 주파수 대역폭 (BWHF) 내에 분포된 신호 에너지의 적어도 98% 를 캐리어 주파수 (fHF) 근방에서 가진다. 따라서, 더 낮은 주파수에서 신호를 더 프로세싱할 수 있게 하기 위해 확산 스펙트럼 신호가 1 MHz 근방의 중간 주파수 (fIF) 로 다운컨버팅되면 일반적으로 충분하다.
도 2는 그러한 주파수 다운컨버팅된 신호에 대한 스펙트럼 그래프를 도시하며, 그 스펙트럼은 캐리어 주파수 (fHF) 보다 상당히 더 낮은, 예를 들어 fIF = 1.25 MHz인 중간 주파수 (fIF) 를 중심으로 대칭이다. 송신기 (즉, 통상적으로 궤도 내의 위성) 및 수신기 (즉, 통상적으로 이동 GNSS-수신기) 의 이동으로 인해서, 수신된 신호에서 도플러 시프트가 발생할 수도 있으며, 도플러 시프트는 송신기와 수신기 사이의 상대 속도에 비례한다. 최대 도플러 시프트 (fD) 는, GNSS의 경우 일반적으로 대략 10 kHz로 정의된다. 따라서, 전체 스펙트럼은 간격 2fD 내에서 시프트될 수도 있어서, 중심 주파수는 fIF+fD (최대 포지티브 도플러 시프트에 대응) 와 fIF-fD (최대 네거티브 도플러 시프트에 대응) 사이에 속한다. 예시적인 목적을 위해, 간격 2fD는 도 2에서 상당히 과장되었다. 또한, 도 2는 중간 주파수 (fIF) 근방에서 위상 편이 간격 (φD) (독립적인 축 φ 을 따름) 을 표시한다. 위상 편이 간격 (φD) 은, 수신된 신호의 위상 위치가 초기에는 수신기에 알려져 있지 않으므로, 교정 (calibration) 파라미터를 구성한다는 사실을 설명한다. 이 파라미터의 효과는 아래에서 도 5를 참조하여 더 명료해질 것이다.
도 2의 스펙트럼의 확대된 버전이 도 3에 도시된다. 가능한 도플러 효과로 인해서, 중간 스펙트럼은 그 중심 주파수가 fIF-min = fIF - fD 내지 fIF-max = fIF + fD의 간격 2fD 내에 놓이도록 시프트될 수도 있다. 여기에서, 가능한 최대 시프트된 스펙트럼들은 각각 점선으로 표시된다. 또한, 도 3의 다이어그램은, 중간 주파수 신호를 샘플링하는데 사용될 때 앨리어싱되지 않은 (non-aliased) 이산 스펙트럼의 결과를 초래하는, 최소 샘플링 레이트 (rS) 에 대응하는 나이퀴스트 주파수 (rS/2) 를 도시한다. fD = 10 kHz, fIF = 1.25 MHz, BWHF = 2 MHz이고, 중간 주파수 신호가 2.5 MHz 통과 대역폭을 가지는 아날로그 필터를 통해서 저역 통과 필터링되는 경우, 최소 샘플링 레이트 (rS) 는 5 MHz (즉, 아날로그 필터 후의 최대 주파수 성분의 2배) 가 된다.
도 4는 본 발명의 일 실시형태에 따라서 송신기 측에서, 데이터 신호 (D) 가 신호원 고유 코드 시퀀스 (CS) 상으로 어떻게 변조되는지를 개략적으로 나타낸다. 본 발명의 바람직한 실시형태에 따르면, 신호원 고유 코드 시퀀스 (CS) 는 소위 의사 랜덤 잡음을 구성한다. 여기서, 데이터 신호 (D) 는 데이터 심볼 시퀀스 [+1, -1, -1, +1, -1] 를 포함하고, 상대적으로 낮은 심볼 레이트, 예컨대 50 Hz를 갖는다. 그러나, 신호원 고유 코드 시퀀스 (CS) 는 상대적으로 높은 심볼 레이트 (또는, 더 정확하게는 칩핑 (chipping) 레이트) 를 갖는다. 예를 들어, GPS C/A 코드 형태의 신호원 고유 코드 시퀀스 (CS) 는 1.023 MHz의 칩핑 레이트를 가지고, 주기당 1023개의 칩들을 포함할 수도 있다. 각각의 칩 (ch) 은 +1 또는 -1 중 하나이다. 따라서, C/A 코드는 ms 마다 반복한다. 데이터 신호 (D) 는, 각각의 데이터 심볼을 코드 시퀀스 (CS) 와 곱함으로써 신호원 고유 코드 시퀀스 (CS) 상으로 변조된다 (또는 신호원 고유 코드 시퀀스 (CS) 에 의해 확산된다). 따라서, 데이터 심볼 +1은 변경되지 않은 (unaltered) 코드 시퀀스 (CS) 를 초래하며, 데이터 심볼 -1은 인버팅된 코드 시퀀스 (CS) 를 초래한다.
50 Hz의 레이트를 가지는 데이터 신호 (D) 가 1.023 MHz의 칩핑 레이트를 가지는 신호원 고유 코드 시퀀스 (CS) 에 의해 확산되는 경우에, 이는 데이터 심볼 당 20개의 전체 코드 시퀀스들 (CS) 을 초래한다. 즉, 1개의 데이터 심볼에 대한 시간 주기 (period time) 는 20 ms이며, 반면에 코드 시퀀스에 대한 시간 주기는 단지 1 ms이다.
도 5는 상이한 캐리어 주파수-위상 후보 벡터들에 대한 3차원 그래프를 도시한다. 상술된 바와 같이, 중간 주파수 스펙트럼은 도플러 시프트될 수도 있다. 따라서, 수신된 신호의 특정한 주파수는 초기에는 fIF-min 내지 fIF-max 의 도플러 주파수 간격 내에서 알려져 있지 않다. 또한, 수신된 신호의 위상 위치도 수신기에 미리 알려져 있지 않다. 실제 중간 캐리어 주파수의 추정을 가능하게 하기 위해서, fIF-min 내지 fIF-max의 도플러 주파수 간격은 정수개의 등거리 주파수 간격들로 분할된다. 물론, 간격들의 수가 더 많아질수록, 중간 캐리어 주파수는 더 정확하게 추정될 수도 있다. 이러한 예에서, 20 Hz의 간격 사이즈 (△f) 가 선택된다. 그러나, 몇몇 애플리케이션들에서는, 상당히 더 큰 간격 사이즈 (△f) 가 충분한 주파수 정확성을 제공할 수도 있지만, 반면에 (상대적으로 높은 정확성이 요구되는) 다른 애플리케이션에서는, 상당히 더 작은 간격 사이즈 (△f) 가 요구될 수도 있다. 임의의 경우에, 20 kHz의 도플러 주파수 간격 fIF-min 내지 fIF-max 및 20 Hz의 간격 사이즈 (△f) 는 1000개의 간격들을 요구하며, 여기에서 제 1 간격은 fIF-min 내지 fIF-min + △f 의 주파수들을 포함하고, 제 2 간격은 fIF-min + △f 내지 fIF-min + 2 △f의 주파수들을 포함하고, 이는 fIF-min + 999△f 내지 fIF-max의 주파수들을 포함하는 마지막 간격에까지 이른다.
각각의 주파수 간격에 대해, 주파수 후보 벡터 (fIF-C) 가 정의된다. 중간 캐리어 주파수의 초기 위상 위치를 추정하기 위해서, 정수개의 초기 위상 위치들 φ0, ..., φ7 이 결정된다. 예시된 예는 8개의 그러한 위치들 (φC) 을 도시한다. 이는 π/4의 위상 해상도를 부여한다. 각각의 주파수 후보 벡터 (fIF-C) 에 대해, 각각 0 내지 7π/4의 특정한 위상 시프트를 표현하는, 8개의 상이한 위상 위치들 φ0, ..., φ7 이 정의된다. 특정 캐리어 주파수 후보 벡터 (fIF-C) 와 특정한 초기 위상 위치 (φC) 의 조합은 캐리어 주파수-위상 후보 벡터라 지칭된다. 도 5는 fIF-C = fIF-min 인 제 1 간격, 및 fIF-C = fIF-min + △f 인 제 2 간격에 대해서, 그러한 모든 벡터들 (즉, 8개) 을 도시한다.
또한, 도 5는 주파수 후보 벡터 (fIF-C) 의 샘플 값들의 수 (또는 길이) 가 표시되는 축 LC를 포함한다. LC 수는 2의 급수인 것이 바람직하며, 이는 일반적으로 더 간단하게 구현되게 하기 때문이다. 각각의 주파수 후보 벡터 (fIF-C) 내의 샘플 값들의 수는, 이용 가능한 메모리 공간, 소망하는 주파수 해상도, 및 소망하는 위상 해상도를 고려하여 설정된다. 상기 예에서, 512개 샘플들의 길이가 선택되고, 각각의 샘플은 1 바이트를 요구하는 경우에, 총 (압축되지 않은) 메모리 요구는 3.9 MB (즉, 1000 주파수들 × 8 위상 위치들 × 512 B = 4096000 B = 3.9 MB) 일 것이다.
도 6은 도 5의 캐리어 주파수-위상 후보 벡터들 (V(fIF-C, φC)) 의 또 다른 표현을 도시한다. 여기에서, 벡터들 (V(fIF-C, φC)) 은, 캐리어 주파수 fIF-C = fIF-min (예컨대, 1.24 MHz) 내지 fIF-C = fIF-max (예컨대, 1.26 MHz), 및 위상 시프트 위치 φC0 (예컨대, 0) 내지 φC7 (예컨대, 7π/4) 의 범위를 가지며, 모두 sn개의 샘플들 (예컨대, 512개) 의 길이 LC 를 가지며, 입방체로 표현된다. 따라서, 특정한 주파수-위상 후보 벡터 (V(fIF-C, φC)) 는, LC-축과 평행이고, LC=s1 내지 LC=sn의 범위를 가지는 입방체 내의 입방형의 세그먼트로 주어진다.
모든 캐리어 주파수-위상 후보 벡터들 (V(fIF-C, φC)) 이 생성된 후에, 벡터들은 비교적 짧은 액세스 시간을 가지는 디지털 메모리에 저장되어, 이후의 획득 및/또는 트래킹 페이즈 동안에 쉽게 액세스될 수도 있다. 캐리어 주파수-위상 후보 벡터들 (V(fIF-C, φC)) 은 (하나 이상의 수신된 신호들을 표현하는) 인입 데이터 워드들과 캐리어 주파수-위상 후보 벡터들 (V(fIF-C, φC)) 의 세그먼트들 간의 곱셈 연산들을 수행하도록 적응된 데이터 포맷에 따라 저장되는 것이 바람직하다. 벡터들은 패킹된 (packed) 샘플들을 포함하거나, 또는 바이트와 같이 마이크로프로세서에서 취급 가능한 최소 단위로 언패킹된 (unpacked) 샘플들을 포함할 수도 있다. 데이터 포맷 문제들에 관한 추가의 상세한 설명들은 아래에서 설명될 것이다.
도 7은 본 발명의 실시형태에 따라 수신, 다운컨버팅, 및 샘플링된 예시적인 코드 시퀀스 (CS) 에 대한 그래프를 도시한다. 중간 주파수 성분의 후속 제거 후에, 코드 시퀀스 (CS) 는 신호 값 +1 또는 -1 중 하나를 얻으며, 심볼들은 예를 들어 1.023 MHz의 칩핑 레이트에서 변경된다. 수신 측에서는, 코드 시퀀스 (CS) 는 예를 들어 5 MHz의 샘플링 레이트 (rS) 로 샘플링된다. 샘플링 인스턴스들은 si 축을 따라서 코드 시퀀스 신호 (CS) 상의 점들에 의해 표시된다. 도면으로부터 명백한 바와 같이, 칩 주기 당 대략 4개의 샘플 값들이 존재한다. 따라서, 나이퀴스트 이론의 요구조건들은 명백하게 만족된다. 그러나, 샘플들은, 전이 인스턴스들, 즉, 코드 시퀀스 신호 (CS) 가 하나의 칩 심볼을 표현하는 것으로부터 다른 하나의 칩 심볼을 표현하는 것으로 변화하는 인스턴스들을 충분한 정확성을 가지고 결정할 수는 없다. 따라서, 소위 코드 위상이 결정되어야만 한다. 또한, 코드 시퀀스가 시작하는 특정한 샘플 값도 확립되어야만 한다.
도 8은 코드 시퀀스 (CS) 가 시작하는 샘플 값 (소위 코드 인덱스 (CI)), 및 코드 위상 (Cph) 이 그 샘플 값과 관련하여 어떻게 정의되는지를 나타내는 그래프를 도시한다. 따라서, 도 7의 코드 시퀀스 신호 (CS) 의 초기 세그먼트는 도 8에서 표현된다.
여기서, 제 1 샘플 인스턴스는 코드 시퀀스 (CS) 신호 주기의 실제 시작의 조금 이전에 발생하는 것으로 가정된다. 따라서, 대응하는 샘플 값 s1은 선행 주기의 끝에 속한다. 이는 코드 시퀀스 신호 (CS) 를 점선으로 표현하는 선에 의해 예시된다. 그러나, 후속 샘플 인스턴스는 코드 시퀀스 (CS) 주기를 오버랩한다. 대응하는 샘플 값 s2는 코드 인덱스 (CI) 로서 정의된다. 코드 시퀀스 신호의 실제 시작은 선행 획득 페이즈에서 결정되고, 코드 시퀀스 (CS) 의 국부 복사와 수신된 신호 간의 상관을 통상적으로 포함한다.
그 후, 코드 시퀀스 신호 (CS) 의 시작과 코드 인덱스 (CI) 사이의 거리가 코드 위상 (Cph) 으로서 정의되고, 샘플 인스턴스들 si와 칩 전이들 간의 평행이동 (또는 스큐 (skew)) 의 측정을 표현한다. 코드 위상 (Cph) 을 추정하기 위해서, 2개의 연속 샘플 인스턴스들 si 사이의 샘플링 간격은 정수개의 가능한 초기 코드 위상 위치들로 분할된다. 이러한 예에서, 10개의 0.0 내지 0.9의 범위의 0.1-간격들이 정의되며, 여기에서 제 1 간격 0.0은 코드 시퀀스 신호 (CS) 가 코드 인덱스 (CI) 에서 시작함을 표시하며, 마지막 간격 0.9는 코드 시퀀스 신호 (CS) 가 선행 샘플 값 s1에 거의 근사하게 시작함을 표시한다. 도 8은 0.4의 코드 위상 (Cph), 즉 코드 시퀀스 신호 (CS) 가 대략 2개의 연속 샘플 인스턴스들 si 사이의 중간에서 시작하는 상황을 도시한다.
캐리어 주파수-위상 후보 벡터들 (V(fIF-C, φC)) 과 유사하게, 각각의 신호원 고유 코드 시퀀스 (CS), 및 코드 레이트 (CR), 코드 인덱스 (CI), 및 코드 위상 (Cph) 의 조합에 대해, 코드 레이트-위상 후보 벡터들이 이제 정의될 수도 있다. 그럼에도 불구하고, 본 발명의 바람직한 실시형태에 따르면, 변형된 코드 벡터가 각각의 본래의 코드 벡터에 기초하여 먼저 생성된다.
도 9의 (a) 및 (b) 는 그러한 변형된 코드 벡터의 생성이 어떻게 수행되는지를 나타낸다. 도 9의 (a) 의 코드 벡터 (CV) 는 다수의 샘플 값들, 예컨대 5000개를 포함한다. 샘플 값들의 수는 전체 코드 시퀀스 주기가 기록되도록 샘플링 레이트와 관련하여 선택되는 것이 바람직하다. 5 MHz의 샘플링 레이트 (rS) 를 갖는 상기 예에서, 이는 5000개의 샘플들이 정확하게 (1 ms의 지속시간을 가지며, 칩핑 레이트가 1.023 MHz이므로, 1023개의 칩들을 포함하는) 하나의 전체 코드 시퀀스 (CS) 주기를 커버함을 의미한다.
이제, 변형된 코드 벡터 (CVm) 는 본래의 코드 벡터 (CV) 의 끝으로부터 변형된 코드 벡터 (CVm) 의 시작으로 특정한 수의 요소들 Ee (예를 들어, 2개) 를 복사함으로써, 본래의 코드 벡터 (CV) 에 기초하여 생성된다. 대응하여, 본래의 코드 벡터 (CV) 의 시작으로부터의 특정한 수의 요소들 Eb (예를 들어, 2개) 가 변형된 코드 벡터 (CVm) 의 끝으로, 즉 요소 Ee 후에 복사된다. 도 9의 (b) 는 결과의 변형된 코드 벡터 (CVm) 를 도시한다. 이 예에서, 각각의 칩 심볼이 대략 4개의 인스턴스들에서 샘플링되므로, 2개의 샘플 값들은 칩 주기의 약 1/2과 동등하다. 따라서, 요소들 Ee 및 Eb의 상기 복사는, 코드 벡터 (CV) 와 수신된 데이터 간의 상관 연산 동안에 코드 벡터 (CV) 의 1/2-칩 시프트를 허용한다. 이는 도 11을 참조하여 아래에서 더 설명될 것이다.
도 10은 신호원 고유 코드 시퀀스 (CS(i)) 를 표현하는 상이한 코드 레이트-위상 후보 벡터들 (CVm(CRC-C, Cph)) 에 대한 3차원 그래프를 도시한다. 중간 캐리어 주파수와 유사하게, 코드 레이트 후보 벡터 (CRC-C) 에 대한 공칭 코드 레이트 (CRC) 도 도플러 효과로 인해서 최소 값 (CRmin) 으로부터 최대 값 (CRmax) 까지 변화할 수도 있다. 그러나 여기서는, 코드 레이트 (또는, 칩핑 레이트) 가 비교적 높으므로 레이트 편이는 다소 작아지게 된다.
예를 들어, 중간 캐리어 주파수에서 10 kHz의 도플러 시프트는 1.023 MHz의 공칭 코드 레이트 (CRC) 의 단지 6.5 Hz의 시프트와 동등하다. 즉, 코드 레이트와 관련된 도플러 시프트는 일반적으로 캐리어 주파수와 코드 레이트 간의 비율과 동일하다 (1575.42 MHz / 1.023 MHz = 1540; 따라서, 중간 주파수에서의 10 kHz 의 도플러 시프트는 10000/1540 ≒ 6.5 Hz에 대응함). 코드 레이트 후보 벡터 CRC-C 는 CRmin = 1022993.5 Hz 와 CRmax = 1023006.5 Hz 사이의 도플러 레이트 간격의 값을 얻을 수도 있다. 도플러 레이트 간격 CRmin 내지 CRmax 는 정수개의 등거리 코드 레이트 간격들 (△CR), 예컨대 13개로 분할된다. 이 예에서, 각각의 간격 (CRmin, CRmin + △CR, ..., CRmax) 은 1 Hz 간격을 가진다. 본 발명의 바람직한 실시형태에 따르면, 코드 레이트 간격 사이즈는 적응성이고, 예를 들어 샘플링 주파수 및 소망하는 해상도에 기초하여 결정된다.
도 10에서, 3차원 그래프 (또는 입방체) 는 코드 레이트-위상 후보 벡터들 (CVm(CRC-C, Cph)) 의 세트를 포함하며, 여기에서 코드 레이트는 CRC-C = CRmin 내지 CRC-C = CRmax 의 범위를 갖고, 코드 위상은 Cph = 0.0 내지 Cph = 0.9의 범위를 갖고, 각각의 벡터는 sm개의 샘플들의 길이 LCVm (예를 들어, 5004) 을 가진다. 따라서, 특정한 코드 레이트-위상 후보 벡터 (CVm(CRC-C, Cph)) 는, LCVm-축과 평행하고 LCVm = s1 내지 LCVm = sm 의 범위를 갖는 입방형의 세그먼트 CVm(CRmin + 2 △CR, 0.4) 로 주어진다.
모든 코드 레이트-위상 후보 벡터들 (CVm(CRC-C, Cph)) 이 생성된 후에, 이들 벡터들은 비교적 짧은 액세스 시간을 가지는 디지털 메모리에 저장되어, 획득 및/또는 트래킹 페이즈 동안에 쉽게 액세스될 수도 있도록 한다. 코드 레이트-위상 후보 벡터들 (CVm(CRC-C, Cph)) 은, 인입 데이터 워드들로부터 도출된 벡터와 코드 레이트-위상 후보 벡터들 (CVm(CRC-C, Cph)) 의 세그먼트 간에 수행되는 상관 연산에 적응된 데이터 포맷에 따라 저장되는 것이 바람직하다. 예를 들어, 코드 레이트-위상 후보 벡터들 (CVm(CRC-C, Cph)) 은 패킹된 샘플들을 포함하거나, 또는 바이트와 같이 마이크로프로세서에서 취급 가능한 최소 단위로 언패킹된 샘플들을 포함할 수도 있다. 데이터 포맷 문제들에 관한 추가적인 상세한 설명들은 도 13을 참조하여 아래에서 설명될 것이다.
확산 스펙트럼 신호의 트래킹, 즉 신호의 연속되는 수신, 및 그 신호에 포함된 데이터의 복조 동안에, 신호에 대한 관련된 트래킹 파라미터들을 업데이트할 필요가 있다. 일반적으로, 트래킹 페이즈는, 신호 디코딩을 개시하기 위해 요구되는 예비 파라미터들의 세트가 확립되는 소위 획득 페이즈로부터 이어진다. 따라서, 성공적인 획득 페이즈는, 적어도 하나의 신호원 고유 코드 시퀀스가 식별되고, 이 시퀀스에 의해 송신된 데이터 신호가 복조 가능하도록 한다. 신호원 고유 코드 시퀀스와 연관될 수도 있는 트래킹 특성들은, (캐리어 주파수 후보 벡터 (fIF-C) 및 초기 위상 위치 (φC) 를 정의하는) 변형된 코드 벡터 (CVm), 코드 위상 위치 (Cph), 및 코드 인덱스 (CI) 를 포함한다. 수신기에서 상관 연산들의 적절한 타이밍을 유지하기 위해서, 변형된 코드 벡터와 관련하여, 코드 시퀀스의 시작 위치를 표시하는 포인터들의 세트가 요구되며, 각각의 상관 연산 간에 반복적으로 업데이트되는 것이 바람직하다.
도 11은 변형된 코드 벡터 (CVm) 에 할당되는 그러한 포인터들의 하나의 세트를 나타낸다. 프롬프트 포인터 (PP) 는 코드 시퀀스 시작 위치의 현재의 추정을 표시한다. 이 포인터 (PP) 는 초기에는 코드 인덱스 (CI) 와 동일하게 설정된다. 수신된 데이터의 임의의 후속 세그먼트들에 대한 적절한 PP-포인터 위치들은, 미리 생성된 변형된 코드 벡터 (CVm) 들이 저장된 디지털 메모리로부터 적절한 변형된 코드 벡터들 (CVm) 을 검색함으로써 획득된다. 각각의 세그먼트 사이에서, 초기 코드 위상 (Cph) 뿐만 아니라 코드 레이트 후보 벡터 (CRC-C) 도 업데이트된다. 또한, 전기 (early) 포인터 (PE) 와 후기 (late) 포인터 (PL) 의 적어도 하나의 쌍은 프롬프트 포인터 (PP) 의 각각의 측에 각각 할당되며, 여기에서 전기 포인터 (PE) 는 프롬프트 포인터 (PP) 위치의 적어도 하나의 요소 이전에 위치된 샘플 값을 특정하고, 후기 포인터 (PL) 는 프롬프트 포인터 (PP) 위치의 적어도 하나의 요소 후에 위치된 샘플 값을 특정한다. 그 후, 각각의 상관은 코드 시퀀스가 PL-위치 뿐만 아니라, PE-위치, PP-위치에서 시작한다는 가정을 가지고 수행된다. PP-위치에 대한 상관이 어떤 다른 위치들에서보다 더 높은 상관 값을 초래하고, 동시에 PE-포인터 및 PL-포인터가 균형을 이루는 경우에 (즉, 이러한 위치들에 대한 상관이 동일한 값들을 초래함), 이는 트래킹 파라미터들의 최적의 설정으로 해석된다. 그러나, 그렇지 않다면, 샘플링된 데이터는 상관 피크 (peak) 가 PP-포인터의 위치와 다시 일치하도록, PP-포인터, PE-포인터, 및 PL-포인터와 관련하여 재배치되어야만 한다. 따라서, 교정되지 않은 (un-calibrated) 포인터 배치는, PP-위치에 대한 상관은 여전히 최대 상관 값을 초래하면서, PE-포인터 위치에 대한 상관 값과 PL-포인터 위치에 대한 상관 값 간의 차이를 통해서 검출될 수도 있다. 이러한 경우에, 잠재적으로 최대인 상관 값 (최적의 PP-배치에 대응함) 은, PE-포인터와 PL-포인터 위치들 중 최대 상관 값을 초래하는 위치에 따라, 현재의 PP-위치와 현재의 PE-위치, 또는 현재의 PP-위치와 현재의 PL-위치 사이에 놓인다. 일반적으로, 포인터의 업데이트는 각각의 세그먼트 간에 행해진다. 제 1 쌍의 포인터들 외부의 제 2 또는 제 3 쌍의 PE-포인터와 PL-포인터는 트래킹의 정확한 조정을 달성할 가능성을 더 향상시킨다. 수신된 심볼 값에 따라, 최적의 설정의 PP-포인터도 실제로, 어떤 다른 포인터 위치들보다 더 낮은 상관 값을 초래하는 PP-위치에 대한 상관과 동등할 수도 있다. 즉, 이는 네거티브 값의 데이터 비트가 수신되는 경우에 들어 맞는다. 그러나, 그렇지 않다면, 동일한 원리들이 적용된다.
임의의 경우에, PP-포인터, PE-포인터, 및 PL-포인터는 변형된 코드 벡터 (CVm) 내의 특정 간격들 내에서만 배치될 수도 있다. PP-포인터는 제 1 간격 (111) 내에서 설정될 수도 있으며, PE-포인터는 제 2 간격 (112) 내에서 설정될 수도 있으며, PL-포인터는 제 3 간격 (113) 내에서 설정될 수도 있다. 포인터들의 상대적인 거리가 변화하지 않고 유지되도록, 모든 포인터들은 항상 함께 설정된다. 통상적으로, PL-포인터에 대한 한계 값 (PL-min) 은 변형된 코드 벡터 (CVm) 의 제 1 요소와 일치한다. 즉, 이 범위 외부에서, 의미있는 상관이 수행될 수 없다. 상기 사실과 포인터들이 PP-포인터, PE-포인터, 및 PL-포인터 공동으로 설정된다는 사실의 결과로서, PE-포인터에 대한 대응하는 한계 값 (PE-min) 이 또한 정의된다.
도 12는 본 발명의 일 실시형태에 따라서 데이터 워드들 (d(1), d(2),..., d(N)) 이 인입 레벨-이산 샘플 값들의 시퀀스 (1210) 로부터 어떻게 형성되는지를 나타낸다. 데이터 워드들 (d(1),...,d(N)) 은, 각각의 데이터 워드 (d(k)) 가 각각의 캐리어 주파수-위상 후보 벡터 내의 요소들의 수 sn과 동일한 수의 요소들을 포함하도록 형성된다. 예를 들어, (도 5 및 도 6을 참조하여 상술된 예에서와 같이) 이러한 벡터들의 길이는 512개의 샘플 값들일 수도 있다. 각각의 시퀀스 (1210) 가 5000개의 샘플 값들을 포함한다고 주어지면, 데이터 워드들의 수 N은 10이 된다 (5000/512 ≒ 9.76 은 10 번째 데이터 워드 d(10) 의 최종 쿼터가 비어있음을 의미함). 본 발명에 따르면, 현재 데이터 워드 (d(k)) 의 요소들은 공동으로 (즉, 병렬로) 프로세싱된다. 그 후, 후속 데이터 워드 (d(k+1)) 의 프로세싱이 개시되고, 후속 데이터 워드 (d(k+1)) 를 프로세싱할 때 요구되는, 현재 데이터 워드 (d(k)) 의 프로세싱 동안에 획득된 임의의 프로세싱 파라미터들은 후속 데이터 워드 (d(k+1)) 의 프로세싱에 대한 입력 데이터로서 전달된다. 이들 프로세싱 파라미터들은, 후속 데이터 워드 (d(k+1)) 의 제 1 샘플 값을 표시하는 포인터 Pd, 캐리어 주파수-위상 후보 벡터들 (V(fIF-C, φC)) 의 관련된 세트를 나타내는 파라미터들의 그룹 (즉, 동일-위상 버전을 표현하는 캐리어 주파수 후보 벡터 (fIF-C) 및 직교-위상 버전을 표현하는 캐리어 주파수 후보 벡터 (fIF-C)), 코드 벡터 (CVm) 의 관련된 세트, 프롬프트, 전기, 및 후기 포인터들 (PP, PE, PL) 을 각각 포함하는 것이 바람직하다.
도 13은 본 발명의 일 실시형태에 따라서, 도 12의 데이터 워드들이 다양한 미리 생성된 벡터들과 어떻게 상관되는지를 나타낸다. 먼저, 캐리어 주파수-위상 후보 벡터들 (V(fIF-C, φC)) 의 관련된 세트가 데이터 워드 (d(k)) 에 대해 계산된다. 일반적으로, 이러한 세트는 선행 획득 페이즈에서 (또는, 데이터 워드 (d(k)) 가 프로세싱될 제 1 워드가 아닌 경우에, 이전의 워드의 프로세싱 동안) 획득된다.
그 후, 관련된 세트 내의 각각의 캐리어 주파수-위상 후보 벡터 (V(fIF-C, φC)) 에 대해, 벡터 (V(fIF-C, φC)) 의 미리 생성된 동일-위상 표현 (fIFI) 및 직교-위상 표현 (fIFQ) 이 각각 획득된다. 이들 표현들 모두는, 미리 생성된 캐리어 주파수-위상 후보 벡터들 (V(fIF-C, φC)) 이 저장된 디지털 메모리에서 발견되며, 이는 그 표현들이 도 6에서 도시된 바와 같이, 단지 동일한 벡터의 일 쿼터 (1/4) 기간의 지연이며, 메모리는 전체 주기에 대한 초기 위상 위치 표현들을 보존하기 때문이다.
그 후, 캐리어 주파수 성분의 영향을 제거하기 위해서, 데이터 워드 (d(k)) 는 관련된 세트 내의 캐리어 주파수-위상 후보 벡터 (V(fIF-C, φC)) 의 동일-위상 표현 (fIFI) 과 곱해진다. 그 결과로, 제 1 중간-주파수-감소된 정보 워드 (SIF-I(k)) 가 생성된다. 대응하여, 데이터 워드 (d(k)) 는 또한, 관련된 세트 내의 캐리어 주파수-위상 후보 벡터 (V(fIF-C, φC)) 의 직교-위상 표현 (fIFQ) 과 곱해지고, 제 2 중간-주파수-감소된 정보 워드 (SIF-Q(k)) 가 생성된다.
데이터 워드 (d(k)) 와, 캐리어 주파수-위상 후보 벡터 (V(fIF-C, φC)) 의 동일-위상 표현 (fIFI) 및 직교-위상 표현 (fIFQ) 간의 곱셈 각각은 XOR-연산 또는 SIMD-연산 (즉, 각각 1-비트 및 다중-비트 곱셈들) 에 의해 수행되는 것이 바람직하다. 이는 즉, 데이터 워드 (d(k)) 및 벡터 (V(fIF-C, φC)) 가 호환 가능한 데이터 포맷을 갖는 경우에 가능하다.
후속하여, 제 1 중간-주파수-감소된 정보 워드 (SIF-I(k)) 가, 미리 생성된 벡터들이 저장되는 디지털 메모리로부터 검색되고, 프롬프트 포인터 (PP) 에 의해 표시되는 위치에서 시작하는 변형된 코드 벡터 (CVm-P) 와 곱해진다. 제 1 프롬프트-역확산 심볼 스트링 (ΛIP(k)) 이 이 연산의 결과로서 생성된다. 제 1 중간-주파수-감소된 정보 워드 (SIF-I(k)) 가 또한, 전기 포인터 (PE) 에 의해 표시되는 위치에서 시작하는 변형된 코드 벡터 (CVm-E(k)) 와 곱해진다. 제 1 전기-역확산 심볼 스트링 (ΛIE(k)) 이 이 연산의 결과로서 생성된다. 제 1 중간-주파수-감소된 정보 워드 (SIF-I(k)) 가 마찬가지로, 후기 포인터 (PL) 에 의해 표시되는 위치에서 시작하는 변형된 코드 벡터 (CVm-L(k)) 와 곱해지고, 제 1 후기-역확산 심볼 스트링 (ΛIL(k)) 이 생성된다. 또한, 제 2 중간-주파수-감소된 정보 워드 (SIF-Q(k)) 는, 프롬프트 포인터 (PP) 에 의해 표시되는 위치에서 시작하는 변형된 코드 벡터 (CVm-P(k)) 와 곱해지고, 제 2 프롬프트-역확산 심볼 스트링 (ΛQP(k)) 이 생성된다. 대응하여, 제 2 중간-주파수-감소된 정보 워드 (SIF-Q(k)) 는, 전기 포인터 (PE) 에 의해 표시되는 위치에서 시작하는 변형된 코드 벡터 (CVm-E(k)) 와 곱해지고, 제 2 전기-역확산 심볼 스트링 (ΛQE(k)) 이 생성된다. 마찬가지로, 제 2 중간-주파수-감소된 정보 워드 (SIF-Q(k)) 는, 후기 포인터 (PL) 에 의해 표시되는 위치에서 시작하는 변형된 코드 벡터 (CVm-L(k)) 와 곱해지고, 제 2 후기-역확산 심볼 스트링 (ΛQL(k)) 이 생성된다.
그 후, 결과 데이터 워드 DR-IP(k), DR-IE(k), DR-IL(k), DR-QP(k), DR-QE(k), 및 DR-QL(k) 는 각각의 스트링 내의 요소들을 함께 합산함으로써, 각각의 역확산 심볼 스트링들 ΛIP(k), ΛIE(k), ΛIL(k), ΛQP(k), ΛQE(k), 및 ΛQL(k) 로부터 각각 도출될 수도 있다. 스트링들이 언패킹된 데이터를 표현하는 경우에, 프로세서는 결과 데이터 워드 (DR(k)) 를 획득하기 위해서, 관련된 합산 연산을 단순히 수행할 수도 있다. 그러나, 스트링들이 패킹된 데이터를 표현하는 경우에, 결과 데이터 워드 (DR(k)) 는, 본 발명의 바람직한 실시형태에 따라, 각각의 역확산 심볼 스트링 ΛIP(k), ΛIE(k), ΛIL(k), ΛQP(k), ΛQE(k), 및 ΛQL(k) 에 의해 주어진 비트 패턴에 기초하여, 테이블 (1310) 내의 미리 생성된 값을 조사함으로써 도출된다.
본 발명의 바람직한 실시형태에 따르면, 개별 데이터 워드들 DR-IP(k), DR-IE(k), DR-IL(k), DR-QP(k), DR-QE(k), 및 DR-QL(k) 에 부가하여, 데이터 워드 (DR(k)) 를 생성한 후에, 모든 데이터 워드들 (DR(1) 내지 DR(k)) 의 합이 또한 획득되도록, 대응하는 누산된 데이터 워드들이 생성된다. 따라서, 데이터 워드 (d(N)) 가 프로세싱되었을 때, 결과 합 (DR(1) 내지 DR(N)) 이 또한 획득된다.
또한, 결과 데이터 워드들은 페이로드 정보를 표현한다. 예를 들어, 결과 데이터 워드들 (DR-IP(k), DR-IE(k), DR-IL(k), DR-QP(k), DR-QE(k), 및 DR-QL(k)) 의 세트에 기초하여, 도 4에 도시된, 송신된 데이터 심볼 시퀀스 (D) 의 복조된 정보의 단편이 도출될 수도 있다. 정상 상태 동작에서, 기본적으로 결과 데이터 워드들 중 하나만이, 즉 DR-IP(k) 만이 실제로 정보를 반송한다.
본 발명의 바람직한 실시형태에 따르면, 중간-주파수-감소된 정보 워드들 (SIF-I(k) 및 SIF-Q(k)) 각각과, 변형된 코드 벡터들 (CVm-P(k), CVm-E(k); CVm-L(k)) 간의 곱셈에 포함되는 곱셈들은 모두 XOR-연산 또는 SIMD-연산에 의해 수행된다. 이는 중간-주파수-감소된 정보 워드들 (SIF-I(k); SIF-Q(k)), 및 변형된 코드 벡터들 (CVm-P(k), CVm-E(k); CVm-L(k)) 이 호환 가능한 데이터 포맷을 가진다면 가능하다.
도 11을 참조하여, 전기 포인터와 후기 포인터의 하나보다 많은 쌍이, 개선된 트래킹을 달성하기 위해서, 프롬프트 포인터에 할당될 수도 있다는 점이 상술되었다. 도 14는 본 발명의 일 실시형태에 따라서 그러한 포인터들의 2개의 쌍들 (PE1; PL1 및 PE2; PL2) 이 각각 프롬프트 포인터 (PP) 를 중심으로 어떻게 할당되는지를 나타낸다. 여기에서, 수평축은 코드 시프트 (CS) 를 표현하고, 수직축은 정규화된 상관 인자를 나타낸다. 따라서, 프롬프트 포인터 (PP) 의 최적의 배치는 정규화된 상관 값 1과 동일하다. 샘플링된 데이터가 이 위치로부터 어느 방향으로든지 더 많이 시프트될수록, 상관 값은 하나 이상의 칩의 시프트에 대해서 실질적으로 0에 가까워진다. (도면에 도시된 바와 같이) 제 1 쌍의 포인터들 (PE1 및 PL1) 양자가 제 1 시프트된 상관 결과를 생성하고, 제 2 쌍의 포인터들 (PE2 및 PL2) 양자가 제 2 시프트된 상관 결과를 생성하고, 제 1 시프트된 상관 결과가 제 2 시프트된 상관 결과보다 더 크며, 제 1 및 제 2 시프트된 상관 결과 양자가 프롬프트 위치 (PP) 에서 획득되는 상관 결과보다 더 작을 때, 알고리즘은 완벽하게 균형을 이룬다. 상기 상관 결과들은 도 13을 참조하여 상술된 것에 대응하는 프로세스에 따라서 생성되는 것이 바람직하다. 포인터 위치들 (PP, PE1, PL1, PE2 및 PL2) 에 대한 상관 결과들에 기초하여, 변형된 코드 벡터들 (CVm-E(k), CVm-P(k); CVm-L(k)) 의 (필요하다면 새로운) 세트가 선택되고, 이는 최적화된 것이라 간주된다.
도 15는 본 발명의 일 실시형태에 따라서, 네비게이션 위성 시스템에서 송신된 네비게이션 데이터 신호들을 수신하는 신호 수신기 (1500) 를 도시한다. 수신기 (1500) 는 무선 프론트 엔드 유닛 (1510), 인터페이스 유닛 (1520), 및 디지털 프로세서 유닛 (1530) 을 포함한다.
무선 프론트 엔드 유닛 (1510) 은 연속적인 무선 신호 (SHF) 를 수신하고, 그 수신에 응답하여, 비교적 고주파수인, 대응하는 전기 신호 (SIF) 를 생성하도록 적응된다. 인터페이스 유닛 (1520) 은 전기 신호 (SIF) 를 수신하고, 그수신에 응답하여 전기 신호 (SIF) 와 동일한 정보를 표현하며 데이터 워드들 (d(k)) 로 분할되는 샘플 값들의 시퀀스를 생성하도록 적응된다. 디지털 프로세서 유닛 (1530) 은 데이터 워드들 (d(k)) 을 수신하고, 그 수신에 응답하여, 데이터 신호를 복조하도록 적응된다. 차례로, 디지털 프로세서 유닛 (1530) 은 프로그램이 프로세서 유닛 (1530) 내에서 실행될 때 제안된 절차 단계들을 제어할 수 있는 컴퓨터 프로그램이 로딩되는 메모리 수단 (1535) 을 포함한다.
요약하기 위해서, 본 발명에 따라 확산 스펙트럼 신호들을 프로세싱하는 일반적인 방법이 도 16의 흐름도를 참조하여 이제 설명될 것이다.
예비 단계 (1600) 는 수신기에서 수신되고 (또는 적어도 수신 가능하고), 복조되도록 의도되는 신호원 고유 코드 시퀀스를 각각 표현하는 코드 벡터들을 미리 생성한다. 단계 (1600) 는 신호 수신이 개시되기 전에 수행된다.
그 후, 단계 (1610) 는 비교적 고주파수인 연속적인 신호를 수신한다. 다음 단계 (1620) 는 기본 샘플링 레이트로 연속적인 신호를 샘플링하여, 시간 이산 신호 샘플들의 결과 시퀀스가 생성된다. 각각의 샘플은 또한, (무선 프론트 엔드 유닛 (1510) 으로부터 전달된 샘플들 당 데이터 비트의 수 및 애플리케이션에 따라, 샘플 값 당 1 비트와 같은 상대적으로 낮은-해상도, 또는 상대적으로 높은-해상도로) 양자화되어, 대응하는 레벨-이산 샘플 값이 획득되도록 한다. 그 후, 단계 (1630) 는 샘플 값들로부터 데이터 워드들을 형성하고, 여기에서 각각의 데이터 워드는 하나 이상의 연속 샘플 값들을 포함한다. 그 후, 단계 (1640) 는 데이터 워드들 내의 정보와, 신호원 고유 코드 시퀀스의 미리 생성된 표현들 중 적어도 하나 간의 상관 연산들을 수행한다. 상관시키는 단계는, 코드 벡터들의 서브-그룹 내의 적어도 각각의 벡터와 데이터 워드로부터 도출된 적어도 하나의 벡터를 상관시키는 것을 포함한다. 다음 단계 (1650) 는 단계 (1640) 에서 수행된 상관의 결과로서 데이터를 생성한다. 그 후, 단계 (1660) 는 샘플링된 시퀀스가 종료되었는지 여부, 즉 프로세싱할 더 이상의 데이터 워드들이 존재하는지 여부를 조사한다. 프로세싱할 그 이상의 샘플링된 데이터가 발견되는 경우에, 절차는 단계 (1640) 로 복귀한다. 그렇지 않으면, 절차는 인입 신호의 연속되는 수신을 위해 단계 (1610) 로 다시 되돌아간다. 일반적으로, 그러한 신호는 단계 (1620) 내지 단계 (1660) 의 실행 동안에 또한 수신되는 것이 바람직하다. 도 16에 예시된 순차적인 절차는 단지 특정 수신된 신호 세그먼트에만 적용 가능한 것이다. 모든 단계들 (1610 내지 1660) 이 실제로는 병렬로 수행되는 것이 바람직하다.
도 16을 참조하여 설명된, 단계들의 임의의 서브-시퀀스 뿐만 아니라 프로세스 단계들은 GNSS-수신기 내에 위치하는 마이크로프로세서와 같은 프로그램되는 컴퓨터 장치에 의해 제어될 수도 있다. 또한, 도면들을 참조하여 상술된 본 발명의 실시형태들은 컴퓨터 장치, 및 컴퓨터 장치에서 수행되는 프로세스들을 포함하지만, 본 발명은 또한, 컴퓨터 프로그램들, 특히 본 발명이 실시되도록 적응된 캐리어 상 또는 캐리어 내의 컴퓨터 프로그램들로 확장된다. 프로그램은 소스 코드, 오브젝트 코드, 코드 중간 소스, 및 부분적으로 컴파일된 형태와 같은 오브젝트 코드의 형태, 또는 본 발명에 따른 프로세스의 구현에서 사용하기에 적합한 임의의 다른 형태로 존재할 수도 있다. 캐리어는 프로그램을 운반할 수 있는 임의의 엔티티 또는 디바이스일 수도 있다. 예를 들어, CD (Compact Disc) 또는 반도체 ROM 과 같은 ROM (Read Only Memory), 또는 플로피 디스크 또는 하드 디스크와 같은 자기 기록 매체 등의 저장 매체를 포함할 수도 있다. 또한, 캐리어는 전기적 또는 광학적 케이블을 통해서 또는 무선에 의해 또는 다른 수단에 의해서 전달될 수도 있는 전기적 또는 광학적 신호와 같은 송신 가능한 캐리어일 수도 있다. 프로그램이 케이블 또는 다른 디바이스 또는 수단들에 의해 직접적으로 전달될 수도 있는 신호로 실시될 때, 캐리어는 그러한 케이블 또는 디바이스 또는 수단들에 의해 구성될 수도 있다. 다른 방법으로는, 캐리어는 프로그램이 임베딩된 집적 회로일 수도 있으며, 집적 회로는 관련된 프로세스들을 수행하기 위해, 또는 관련된 프로세스들의 수행에서의 사용을 위해 적응된다.
본원에서 사용되는 용어 "포함한다/포함하는 것" 은 기술된 특징들, 인티저 (integer) 들, 단계들, 또는 컴포넌트들의 존재를 특정하기 위해 사용된다. 그러나, 상기 용어는 하나 이상의 부가적인 특징들, 인티저들, 단계들, 또는 컴포넌트들, 또는 이들의 조합의 존재 또는 부가를 배제하는 것은 아니다.
본 발명은 도면에서 설명된 실시형태들에만 제한되는 것은 아니며, 본 청구항들의 범위 내에서 자유롭게 변형될 수도 있다.

Claims (37)

  1. 초기 획득 페이즈 및 후속 트래킹 페이즈를 포함하는 2개의 스테이지 프로세스를 통해 확산 스펙트럼 신호들을 수신 및 디코딩하는 신호 수신기 (1500) 로서,
    연속적인 무선 신호 (SHF) 를 수신하며, 그 수신에 응답하여, 비교적 고주파수의 대응하는 전기 신호 (SIF) 를 생성하도록 적응된 무선 프론트 엔드 유닛 (1510);
    상기 전기 신호 (SIF) 를 수신하며, 그 수신에 응답하여, 데이터 워드들 (d(k)) 로 분할되는 샘플 값들의 시퀀스를 생성하도록 적응된 인터페이스 유닛 (1520); 및
    다수의 디코드 벡터들을 미리 생성하고, 상기 신호 수신기가 상기 후속 트래킹 페이즈를 수행할 때, 상기 데이터 워드들 (d(k)) 을 수신하며, 디코드 벡터들의 서브그룹 내의 적어도 각각의 디코드 벡터를 상기 수신된 데이터 워드로부터 도출된 적어도 하나의 벡터와 곱하는 것을 포함하는 상관 연산을 수행함으로써 신호를 복조하도록 적응된 디지털 프로세서 유닛 (1530) 을 포함하는, 신호 수신기.
  2. 제 1 항에 있어서,
    상기 디지털 프로세서 유닛은, 다중 샘플들을 병렬로 곱함으로써, 수신된 데이터 워드를 디코드 벡터와 곱하도록 배열된, 신호 수신기.
  3. 제 2 항에 있어서,
    상기 디지털 프로세서 유닛은, XOR 연산에 의해 상기 다중 샘플들을 병렬로 곱하도록 배열된, 신호 수신기.
  4. 제 2 항에 있어서,
    상기 디지털 프로세서 유닛은, SIMD 연산에 의해 상기 다중 샘플들을 병렬로 곱하도록 배열된, 신호 수신기.
  5. 제 1 항 내지 제 4 항 중 어느 한 항에 있어서,
    상기 디지털 프로세서 유닛은, 상기 다수의 디코드 벡터들 중 하나 이상이, 기본 샘플링 레이트 (rs) 로 샘플링되고 양자화된 특정한 신호원 고유 코드 시퀀스 (CS(i)) 를 표현하는 코드 벡터 (CV; CVm) 이도록, 상기 다수의 디코드 벡터들을 미리 생성하도록 배열된, 신호 수신기.
  6. 제 5 항에 있어서,
    상기 신호원 고유 코드 시퀀스 (CS) 는 의사 랜덤 잡음인, 신호 수신기.
  7. 제 1 항 내지 제 4 항 중 어느 한 항에 있어서,
    상기 디지털 프로세서 유닛은, 상기 다수의 디코드 벡터들 중 하나 이상이 캐리어 주파수-위상 후보 벡터이도록, 상기 다수의 디코드 벡터들을 미리 생성하도록 적응된, 신호 수신기.
  8. 제 1 항 내지 제 4 항 중 어느 한 항에 있어서,
    상기 무선 프론트 엔드 유닛은, 인입 고주파수 신호 (SHF) 를 중간 주파수 신호 (SIF) 로 다운컨버팅하도록 배열되며,
    상기 고주파수 신호 (SHF) 는 제 1 주파수 (fHF) 를 중심으로 대칭인 스펙트럼을 갖고, 상기 중간 주파수 신호 (SIF) 는 상기 제 1 주파수 (fHF) 보다 상당히 더 낮은 제 2 주파수 (fIF) 를 중심으로 대칭인 스펙트럼을 갖는, 신호 수신기.
  9. 제 8 항에 있어서,
    상기 디지털 프로세서 유닛은,
    도플러 효과로 인한 상기 제 2 주파수 (fIF) 의 최대 주파수 편이 (fD) 를 결정하고;
    상기 제 2 주파수 (fIF) 를 중심으로 도플러 주파수 간격 (fIF-min - fIF-max) 을 정의하고;
    상기 도플러 주파수 간격 (fIF-min - fIF-max) 을 정수개의 등거리 (△f) 주파수 간격들 (fIF-min, fIF-min+△f,..., fIF-max) 로 분할하며;
    각각의 주파수 간격 (fIF-min, fIF-min+△f,..., fIF-max) 에 대응하는 캐리어 주파수 후보 벡터 (fIF-C) 를 정의함으로써, 하나 이상의 캐리어 주파수 후보 벡터들을 생성하도록 배열되며,
    상기 도플러 주파수 간격 (fIF-min - fIF-max) 은, 상기 제 2 주파수 (fIF) 와 상기 최대 주파수 편이 (fD) 간의 차이와 동일한 최저 주파수 한계 (fIF-min), 및 상기 제 2 주파수 (fIF) 와 상기 최대 주파수 편이 (fD) 의 합과 동일한 최고 주파수 한계 (fIF-max) 를 갖는, 신호 수신기.
  10. 제 9 항에 있어서,
    상기 디지털 프로세서 유닛은,
    상기 캐리어 주파수 후보 벡터 (fIF-C) 에 대한 정수개의 초기 위상 위치들 (φ0, ..., φ7) 을 결정하며;
    캐리어 주파수 후보 벡터 (fIF-C) 와 초기 위상 위치 (φ0, ..., φ7) 의 각각의 조합에 대해 캐리어 주파수-위상 후보 벡터 (V(fIF-CC)) 를 정의함으로써, 하나 이상의 캐리어 주파수-위상 후보 벡터들을 생성하도록 배열된, 신호 수신기.
  11. 제 10 항에 있어서,
    상기 디지털 프로세서 유닛은,
    각각의 캐리어 주파수-위상 후보 벡터 (V(fIF-CC)) 내의 요소들 (sn) 의 수를 결정하며;
    캐리어 주파수-위상 후보 벡터 (V(fIF-CC)) 의 세그먼트와 상기 데이터 워드 (d(k)) 간에 곱셈 연산들을 수행하도록 적응된 데이터 포맷에 따라, 상기 캐리어 주파수-위상 후보 벡터 (V(fIF-CC)) 를 저장하도록 배열된, 신호 수신기.
  12. 제 11 항에 있어서,
    상기 디지털 프로세서 유닛은, 상기 캐리어 주파수-위상 후보 벡터 (V(fIF-CC)) 의 각각의 세그먼트가 상기 데이터 워드 (d(k)) 내의 요소들의 수와 동일한 수의 요소들을 획득하여, 상기 캐리어 주파수-위상 후보 벡터 (V(fIF-CC)) 의 세그먼트와 상기 적어도 하나의 벡터 (SIF-I(k); SIF-Q(k)) 중 하나가 SIMD-연산 및 XOR-연산 중 적어도 하나에 의해 공동으로 (jointly) 프로세싱될 수 있도록, 상기 캐리어 주파수-위상 후보 벡터 (V(fIF-CC)) 의 상기 각각의 세그먼트에 적어도 하나의 요소를 부가하도록 배열된, 신호 수신기.
  13. 확산 스펙트럼 신호들을 수신 및 디코딩하는 신호 수신기 (1500) 로서,
    연속적인 무선 신호 (SHF) 를 수신하며, 그 수신에 응답하여, 비교적 고주파수의 대응하는 전기 신호 (SIF) 를 생성하도록 적응된 무선 프론트 엔드 유닛 (1510);
    상기 전기 신호 (SIF) 를 수신하며, 그 수신에 응답하여, 데이터 워드들 (d(k)) 로 분할되는 샘플 값들의 시퀀스를 생성하도록 적응된 인터페이스 유닛 (1520); 및
    다수의 디코드 벡터들을 미리 생성하고, 상기 데이터 워드들 (d(k)) 을 수신하며, 디코드 벡터들의 서브그룹 내의 적어도 각각의 디코드 벡터를 상기 수신된 데이터 워드로부터 도출된 적어도 하나의 벡터와 곱하는 것을 포함하는 상관 연산을 수행함으로써 신호를 복조하도록 적응된 디지털 프로세서 유닛 (1530) 을 포함하고,
    상기 디지털 프로세서 유닛은,
    도플러 효과로 인한 최대 코드 레이트 편이를 결정하고;
    중심 코드 레이트 (CRC) 를 중심으로 도플러 레이트 간격 (CRC-min - CRC-max) 을 정의하고;
    상기 도플러 레이트 간격 (CRC-min - CRC-max) 을 정수개의 등거리 (△CR) 코드 레이트 간격들 (CRC-min, CRC-min+ △CR, ...,CRC-max) 로 분할하며;
    각각의 코드 레이트 간격 (CRC-min, CRC-min+ △CR, ...,CRC-max) 에 대해 코드 레이트 후보 (CRC-C) 를 정의함으로써, 하나 이상의 코드 레이트 후보들을 생성하도록 배열되며,
    상기 도플러 레이트 간격은, 상기 중심 코드 레이트 (CRC) 와 상기 최대 코드 레이트 편이 (CRD) 간의 차이와 동일한 최저 코드 레이트 한계 (CRC-min), 및 상기 중심 코드 레이트 (CRC) 와 상기 최대 코드 레이트 편이 (CRD) 의 합과 동일한 최고 코드 레이트 한계 (CRC-max) 를 갖는, 신호 수신기.
  14. 제 13 항에 있어서,
    상기 디지털 프로세서 유닛은,
    각각의 코드 레이트 후보 (CRC-C) 에 대해, 정수개의 가능한 초기 코드 위상 위치들 (0.0, ..., 0.9) 을 결정하고;
    각각의 신호원 고유 코드 시퀀스 (CS(i)) 에 대해, 각각의 조합이 코드 레이트-위상 후보 벡터를 표현하는, 코드 레이트 후보 (CRC-C) 와 코드 위상 위치 (0.0, ..., 0.9) 간의 조합들의 세트를 정의함으로써, 하나 이상의 코드 레이트-위상 후보 벡터들을 생성하도록 배열된, 신호 수신기.
  15. 제 14 항에 있어서,
    상기 디지털 프로세서 유닛은,
    각각의 코드 레이트-위상 후보 벡터를 기본 샘플링 레이트 (rS) 로 샘플링하여, 대응하는 코드 벡터 (CV) 를 생성함으로써,
    각각의 신호원 고유 코드 시퀀스 (CS(i)) 에 대해, 코드 벡터들 (CV) 의 세트를 생성하도록 배열된, 신호 수신기.
  16. 제 15 항에 있어서,
    상기 디지털 프로세서 유닛은,
    본래의 코드 벡터 (CV) 의 끝으로부터 변형된 코드 벡터 (CVm) 의 시작으로 특정한 수의 요소들 (Ee) 을 복사하고,
    상기 본래의 코드 벡터 (CV) 의 시작으로부터 상기 변형된 코드 벡터 (CVm) 의 끝으로 상기 특정한 수의 요소들 (Eb) 을 복사함으로써,
    각각의 코드 벡터 (CV) 에 기초하여, 상기 변형된 코드 벡터 (CVm) 를 생성하도록 배열된, 신호 수신기.
  17. 제 16 항에 있어서,
    상기 디지털 프로세서 유닛은, 각각의 신호원 고유 코드 시퀀스 (CS(i)) 에 대해, 변형된 코드 벡터들의 세트 ({CVm(CRC-C, Cph)}) 를 저장하도록 배열되며,
    각각의 변형된 코드 벡터 (CVm) 는, 적어도 하나의 전체 코드 시퀀스 (CS) 의 샘플링된 버전을 표현하는 다수의 요소들 (s1, ..., sm) 을 포함하고,
    특정한 변형된 코드 벡터 (CVm) 는, 코드 레이트 후보 (CRC-C) 와 코드 위상 위치 (Cph) 의 각각의 조합에 대해 정의되는, 신호 수신기.
  18. 제 17 항에 있어서,
    상기 디지털 프로세서 유닛은, 상기 데이터 워드 (d(k)) 로부터 도출된 상기 적어도 하나의 벡터 (SIF-I(k); SIF-Q(k)) 중 하나와 변형된 코드 벡터 (CVm) 가 SIMD-연산 및 XOR-연산 중 적어도 하나에 의해 공동으로 프로세싱될 수도 있도록, 상기 데이터 워드 (d(k)) 로부터 도출된 상기 적어도 하나의 벡터 (SIF-I(k); SIF-Q(k)) 의 데이터 포맷에 대하여 상기 변형된 코드 벡터들 (CVm) 의 데이터 포맷을 적응시키도록 배열된, 신호 수신기.
  19. 삭제
  20. 제 1항 내지 제4항 중 어느 한 항에 있어서,
    상기 디지털 프로세서 유닛은, 상기 신호 수신기가 상기 초기 획득 페이즈를 수행하고 있을 때, 상기 후속 트래킹 페이즈 동안 수신되는 신호들의 디코딩을 개시하기 위해 요구되는 예비 파라미터들의 세트를 확립하도록 배열된, 신호 수신기.
  21. 제 20 항에 있어서,
    상기 디지털 프로세서 유닛은, 상기 신호 수신기가 상기 초기 획득 페이즈를 수행하고 있을 때, 상기 신호 수신기에 의해 수신된 신호를 형성하기 위해 사용되었던 신호원 고유 코드 시퀀스 (CS) 를 식별하도록 배열된, 신호 수신기.
  22. 제 21 항에 있어서,
    상기 디지털 프로세서 유닛은, 상기 신호 수신기가 상기 초기 획득 페이즈를 수행하고 있을 때, 예비 파라미터들의 세트를 상기 신호원 고유 코드 시퀀스와 연관시키도록 배열되며,
    상기 예비 파라미터들은:
    변형된 코드 벡터 (CVm),
    캐리어 주파수 후보 벡터 (fIF-C),
    초기 위상 위치 (φc),
    코드 위상 위치 (Cph), 및
    상기 변형된 코드 벡터 (CVm) 에 대한 시작 샘플 값을 나타내는 코드 인덱스 (CI) 를 포함하는, 신호 수신기.
  23. 제 1항 내지 제4항 중 어느 한 항 항에 있어서,
    상기 디지털 프로세서 유닛은, 상기 신호 수신기가 상기 후속 트래킹 페이즈를 수행하고 있을 때,
    트래킹 특성들에 기초하여, 각각의 변형된 코드 벡터 (CVm) 에 대해 프롬프트 포인터 (PP) 를 계산하고,
    각각의 프롬프트 포인터 (PP) 를 중심으로, 전기 (early) 포인터와 후기 (late) 포인터의 적어도 하나의 쌍 (PE, PL; PE1, PL1; PE2, PL2) 을 할당하도록 배열되며,
    상기 프롬프트 포인터 (PP) 는 코드 시퀀스 시작 위치를 표시하며, 초기의 프롬프트 포인터 (PP) 는 코드 인덱스 (CI) 와 동일하고,
    상기 전기 포인터 (PE) 는 상기 프롬프트 포인터 (PP) 의 위치의 적어도 하나의 요소 이전에 위치된 샘플 값을 특정하고, 상기 후기 포인터 (PL) 는 상기 프롬프트 포인터 (PP) 의 위치의 적어도 하나의 요소 후에 위치된 샘플 값을 특정하는, 신호 수신기.
  24. 제 1항 내지 제4항 중 어느 한 항에 있어서,
    상기 디지털 프로세서 유닛은, 상기 신호 수신기가 상기 후속 트래킹 페이즈를 수행하고 있을 때:
    인입 레벨-이산 샘플 값들의 시퀀스 (1210) 를 수신하고;
    각각의 데이터 워드 (d(k)) 가 각각의 캐리어 주파수-위상 후보 벡터 (V(fIF-CC)) 내의 요소들 (sn) 의 수와 동일한 수의 요소들을 포함하도록, 상기 샘플 값들 (1210) 의 데이터 워드들 (d(1), ..., d(N)) 을 형성하고;
    상기 데이터 워드 (d(k)) 에 대한 캐리어 주파수-위상 후보 벡터들 (V(fIF-CC)) 의 관련된 세트를 계산하며;
    상기 관련된 세트 내의 각각의 캐리어 주파수-위상 후보 벡터 (V(fIF-CC)) 에 대해, 상기 캐리어 주파수-위상 후보 벡터 (V(fIF-CC)) 의 미리 생성된 동일-위상 표현 (fIFI) 및 직교-위상 표현 (fIFQ) 을 각각 획득하도록 배열된, 신호 수신기.
  25. 제 24 항에 있어서,
    상기 디지털 프로세서 유닛은, 상기 신호 수신기가 상기 후속 트래킹 페이즈를 수행하고 있을 때:
    각각의 데이터 워드 (d(k)) 를 상기 관련된 세트 내의 상기 캐리어 주파수-위상 후보 벡터 (V(fIF-CC)) 의 동일-위상 표현 (fIFI) 과 곱하여, 제 1 중간-주파수-감소된 정보 워드 (SIF-I(k)) 를 생성하며;
    각각의 데이터 워드 (d(k)) 를 상기 관련된 세트 내의 상기 캐리어 주파수-위상 후보 벡터 (V(fIF-CC)) 의 직교-위상 표현 (fIFQ) 과 곱하여, 제 2 중간-주파수-감소된 정보 워드 (SIF-Q(k)) 를 생성하도록 배열된, 신호 수신기.
  26. 제 25 항에 있어서,
    상기 디지털 프로세서 유닛은, 상기 신호 수신기가 상기 후속 트래킹 페이즈를 수행하고 있을 때:
    상기 제 1 중간-주파수-감소된 정보 워드 ((SIF-I(k)) 를 프롬프트 포인터 (PP) 에 의해 표시되는 위치에서 시작하는 변형된 코드 벡터 (CVm-P(k)) 와 곱하여, 제 1 프롬프트-역확산 심볼 스트링 (ΛIP(k)) 을 생성하고;
    상기 제 1 중간-주파수-감소된 정보 워드 (SIF-I(k)) 를 전기 포인터 (PE) 에 의해 표시되는 위치에서 시작하는 변형된 코드 벡터 (CVm-E(k)) 와 곱하여, 제 1 전기-역확산 심볼 스트링 (ΛIE(k)) 을 생성하고;
    상기 제 1 중간-주파수-감소된 정보 워드 (SIF-I(k)) 를 후기 포인터 (PL) 에 의해 표시되는 위치에서 시작하는 변형된 코드 벡터 (CVm-L(k)) 와 곱하여, 제 1 후기-역확산 심볼 스트링 (ΛIL(k)) 을 생성하고;
    상기 제 2 중간-주파수-감소된 정보 워드 (SIF-Q(k)) 를 상기 프롬프트 포인터 (PP) 에 의해 표시되는 위치에서 시작하는 변형된 코드 벡터 (CVm-P(k)) 와 곱하여, 제 2 프롬프트-역확산 심볼 스트링 (ΛQP(k)) 을 생성하고;
    상기 제 2 중간-주파수-감소된 정보 워드 (SIF-Q(k)) 를 상기 전기 포인터 (PE) 에 의해 표시되는 위치에서 시작하는 변형된 코드 벡터 (CVm-E(k)) 와 곱하여, 제 2 전기-역확산 심볼 스트링 (ΛQE(k)) 을 생성하며;
    상기 제 2 중간-주파수-감소된 정보 워드 (SIF-Q(k)) 를 상기 후기 포인터 (PL) 에 의해 표시되는 위치에서 시작하는 변형된 코드 벡터 (CVm-L(k)) 와 곱하여, 제 2 후기-역확산 심볼 스트링 (ΛQL(k)) 을 생성하도록 배열된, 신호 수신기.
  27. 제 26 항에 있어서,
    상기 디지털 프로세서 유닛은, 각각의 역확산 심볼 스트링에 대해, 결과로서 생성된 데이터 워드 (DR-IP(k), DR-IE(k), DR-IL(k), DR-QP(k), DR-QE(k); DR-QL(k)) 를 도출하도록 배열된, 신호 수신기.
  28. 제 27 항에 있어서,
    상기 디지털 프로세서 유닛은, 테이블 (1310) 내의 각각의 미리 생성된 값을 조사함으로써 상기 결과로서 생성된 데이터 워드들 (DR-IP(k), DR-IE(k), DR-IL(k), DR-QP(k), DR-QE(k); DR-QL(k)) 을 도출하도록 배열된, 신호 수신기.
  29. 제 25 항에 있어서,
    상기 디지털 프로세서 유닛은, SIMD-연산 및 XOR-연산 중 적어도 하나에 의해, 상기 데이터 워드 (d(k)) 와 상기 캐리어 주파수-위상 후보 벡터 (V(fIF-CC)) 의 동일-위상 표현 (fIFI) 간의 곱셈, 및 상기 데이터 워드 (d(k)) 와 상기 캐리어 주파수-위상 후보 벡터 (V(fIF-CC)) 의 직교-위상 표현 (fIFQ) 간의 곱셈을 수행하도록 배열된, 신호 수신기.
  30. 제 26 항에 있어서,
    상기 디지털 프로세서 유닛은, SIMD-연산 및 XOR-연산 중 적어도 하나에 의해, 상기 제 1 및 제 2 중간-주파수-감소된 정보 워드들 (SIF-I(k); SIF-Q(k)) 과 상기 변형된 코드 벡터들 (CVm-P, CVm-E, CVm-L) 간의 곱셈을 수행하도록 배열된, 신호 수신기.
  31. 제 25 항에 있어서,
    상기 디지털 프로세서 유닛은, 현재의 데이터 워드 (d(k)) 의 프로세싱을 완료하고, 후속 데이터 워드 (d(k+1)) 의 프로세싱을 개시함과 함께:
    상기 후속 데이터 워드 (d(k+1)) 의 제 1 샘플 값을 표시하는 포인터 (Pd);
    캐리어 주파수-위상 후보 벡터들 (V(fIF-CC)) 의 관련된 세트를 나타내는 파라미터들의 그룹;
    코드 벡터들 (CVm) 의 관련된 세트; 및
    프롬프트 포인터, 전기 포인터, 및 후기 포인터 (PP, PE, PL) 를 전달하도록 배열된, 신호 수신기.
  32. 초기 획득 페이즈 및 후속 트래킹 페이즈를 포함하는 확산 스펙트럼 신호들을 프로세싱하는 방법에 있어서, 상기 후속 트래킹 페이즈는,
    비교적 고주파수의 연속적인 신호 (SIF) 를 수신하는 단계;
    상기 연속적인 신호 (SIF) 를 기본 샘플링 레이트 (rS) 로 샘플링하여, 시간 이산 신호 샘플들 (S[si]) 의 결과 시퀀스를 생성하는 단계;
    각각의 신호 샘플을 대응하는 레벨-이산 샘플 값으로 양자화하는 단계;
    하나 이상의 연속 샘플 값들 (s1, ..., sn) 을 각각 포함하는 복수의 데이터 워드들 (d(1), ..., d(N)) 을 형성하는 단계; 및
    상기 데이터 워드들 (d(k)) 내의 정보와 적어도 하나의 디코드 벡터 간에 상관시키는 단계를 포함하는, 확산 스펙트럼 신호들을 프로세싱하는 방법으로서,
    상기 상관시키는 단계를 위한 준비로서, 상기 연속적인 신호 (SIF) 를 수신하기 전 및 상기 후속 트래킹 페이즈 전에, 다수의 디코드 벡터들이 미리 생성되는, 상기 준비를 포함하며,
    상기 상관시키는 단계는, 상기 디코드 벡터들의 서브그룹 내의 적어도 각각의 디코드 벡터를 상기 데이터 워드 (d(k)) 로부터 도출된 적어도 하나의 벡터와 곱하는 것을 포함하는 것을 특징으로 하는, 확산 스펙트럼 신호들을 프로세싱하는 방법.
  33. 삭제
  34. 컴퓨터로 하여금 제 32 항의 단계들을 제어하게 하는 프로그램이 기록된, 컴퓨터 판독가능 매체.
  35. 제 13 항에 있어서,
    상기 디지털 프로세서 유닛은, 다중 샘플들을 병렬로 곱함으로써, 수신된 데이터 워드를 디코드 벡터와 곱하도록 배열된, 신호 수신기.
  36. 제 35 항에 있어서,
    상기 디지털 프로세서 유닛은, XOR 연산에 의해 상기 다중 샘플들을 병렬로 곱하도록 배열된, 신호 수신기.
  37. 제 35 항에 있어서,
    상기 디지털 프로세서 유닛은, SIMD 연산에 의해 상기 다중 샘플들을 병렬로 곱하도록 배열된, 신호 수신기.
KR1020057006645A 2002-10-15 2003-10-03 확산 스펙트럼 신호 프로세싱 KR101016928B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
SE0203047A SE0203047D0 (sv) 2002-10-15 2002-10-15 Spread spectrum signal processing
SE0203047-6 2002-10-15

Publications (2)

Publication Number Publication Date
KR20050053778A KR20050053778A (ko) 2005-06-08
KR101016928B1 true KR101016928B1 (ko) 2011-02-25

Family

ID=20289273

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020057006645A KR101016928B1 (ko) 2002-10-15 2003-10-03 확산 스펙트럼 신호 프로세싱

Country Status (10)

Country Link
US (2) US20060013287A1 (ko)
EP (2) EP1843167B1 (ko)
JP (2) JP4921712B2 (ko)
KR (1) KR101016928B1 (ko)
CN (2) CN102109603A (ko)
AT (1) ATE365926T1 (ko)
AU (1) AU2003267903A1 (ko)
DE (1) DE60314654T2 (ko)
SE (1) SE0203047D0 (ko)
WO (1) WO2004036238A1 (ko)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
SE0203047D0 (sv) * 2002-10-15 2002-10-15 Nordnav Technologies Ab Spread spectrum signal processing
US7010060B2 (en) 2003-01-10 2006-03-07 Cornell Research Foundation, Inc. Real-time software receiver
US7440493B2 (en) 2004-12-29 2008-10-21 Nokia Corporation Multi-path detection method for CDMA receivers
ATE515835T1 (de) * 2005-05-11 2011-07-15 Nordnav Technologies Ab Spreizspektrumkorrelator
US7498981B2 (en) * 2005-10-07 2009-03-03 The Charles Stark Draper Laboratory, Inc. Method and apparatus for real-time digital processing of satellite positional signals for fast acquisition and low SNR tracking
US8964812B2 (en) * 2006-05-24 2015-02-24 Nokia Corporation Method in a CDMA receiver using hardware and software in acquisition, tracking and hosting
US7961641B1 (en) * 2007-04-27 2011-06-14 Marvell International Ltd. Initial ranging power control algorithm for WiMAX mobile stations
US8102765B2 (en) * 2007-06-22 2012-01-24 Microsoft Corporation Correlation-based rate adaptation for communication networks
EP2066040A1 (en) * 2007-11-27 2009-06-03 Nemerix SA Multipath mitigation GNSS Receiver
DE602008005837D1 (de) * 2008-02-20 2011-05-12 Cambridge Positioning Sys Ltd Verarbeitung empfangener Satellitenfunksignale
FR2962227B1 (fr) * 2010-07-01 2012-07-27 Inst Telecom Telecom Sudparis Procede de reduction de l'eblouissement d'un recepteur recevant des signaux depuis des emetteurs
US9584178B2 (en) * 2014-07-21 2017-02-28 International Business Machines Corporation Correlating pseudonoise sequences in an SIMD processor
US10768310B2 (en) * 2018-01-03 2020-09-08 Samsung Electronics Co., Ltd System and method for providing code modification for multipath improvement in GNSS receivers
CN112649819A (zh) * 2020-11-24 2021-04-13 中国科学院国家空间科学中心 一种高动态扩频信号捕获装置及捕获方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5897605A (en) * 1996-03-15 1999-04-27 Sirf Technology, Inc. Spread spectrum receiver with fast signal reacquisition
JP2001501305A (ja) 1996-09-13 2001-01-30 リットン コンサルティング グループ インコーポレイテッド 改良された多経路信号除去作用を有する受信器
US20020012411A1 (en) 2000-04-05 2002-01-31 Johann Heinzl Global positioning system receiver capable of functioning in the presence of interference
US20020027949A1 (en) * 1997-09-25 2002-03-07 Lennen Gary R. Receiver having a memory search for fast acquisition of a spread spectrum signal

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5592173A (en) * 1994-07-18 1997-01-07 Trimble Navigation, Ltd GPS receiver having a low power standby mode
US6393046B1 (en) 1996-04-25 2002-05-21 Sirf Technology, Inc. Spread spectrum receiver with multi-bit correlator
ATE222000T1 (de) 1996-04-25 2002-08-15 Sirf Tech Inc Spreizspektrumempfänger mit multibitkorrelation
US6366938B1 (en) * 1997-11-11 2002-04-02 Ericsson, Inc. Reduced power matched filter using precomputation
US6234799B1 (en) * 1998-04-06 2001-05-22 American Gnc Corporation Real-time IMU simulator
EP1054265A3 (en) 1999-05-10 2003-11-26 Sirius Communications N.V. Method and apparatus for software reconfigurable communication transmission/reception and navigation signal reception
US6400743B1 (en) * 1999-08-05 2002-06-04 Fuji Photo Film Co., Ltd. High-power semiconductor laser device having current confinement structure and index-guided structure
US6526322B1 (en) * 1999-12-16 2003-02-25 Sirf Technology, Inc. Shared memory architecture in GPS signal processing
US6839389B2 (en) * 2000-03-13 2005-01-04 Pri Research & Development Corp. Digital quadrature demodulation and decimation without multipliers
US6407699B1 (en) * 2000-04-14 2002-06-18 Chun Yang Method and device for rapidly extracting time and frequency parameters from high dynamic direct sequence spread spectrum radio signals under interference
US7127351B2 (en) * 2000-06-27 2006-10-24 Sirf Technology, Inc. Combined parallel and sequential detection for GPS signal acquisition
JP4820957B2 (ja) * 2000-12-04 2011-11-24 モトローラ モビリティ インコーポレイテッド 周波数誤差を補償する受信機および方法
AU2002228996A1 (en) 2000-12-20 2002-07-01 The Johns Hopkins University Gps receiver tracking system
US6535548B1 (en) * 2001-04-26 2003-03-18 Motorola, Inc. Mobile wireless communication devices for receiving spread spectrum signals and methods therefor
US6990140B2 (en) * 2001-05-17 2006-01-24 Trimble Navigation Limited Signal receiver using coherent integration in interleaved time periods for signal acquisition at low signal strength
US6775319B2 (en) * 2001-08-16 2004-08-10 Motorola, Inc. Spread spectrum receiver architectures and methods therefor
US6828935B1 (en) * 2002-07-19 2004-12-07 The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration Digitally synthesized phased antenna for multibeam global positioning
SE0203047D0 (sv) * 2002-10-15 2002-10-15 Nordnav Technologies Ab Spread spectrum signal processing
US7010060B2 (en) * 2003-01-10 2006-03-07 Cornell Research Foundation, Inc. Real-time software receiver
DE602008005837D1 (de) * 2008-02-20 2011-05-12 Cambridge Positioning Sys Ltd Verarbeitung empfangener Satellitenfunksignale

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5897605A (en) * 1996-03-15 1999-04-27 Sirf Technology, Inc. Spread spectrum receiver with fast signal reacquisition
JP2001501305A (ja) 1996-09-13 2001-01-30 リットン コンサルティング グループ インコーポレイテッド 改良された多経路信号除去作用を有する受信器
US20020027949A1 (en) * 1997-09-25 2002-03-07 Lennen Gary R. Receiver having a memory search for fast acquisition of a spread spectrum signal
US20020012411A1 (en) 2000-04-05 2002-01-31 Johann Heinzl Global positioning system receiver capable of functioning in the presence of interference

Also Published As

Publication number Publication date
WO2004036238A1 (en) 2004-04-29
EP1843167B1 (en) 2017-11-15
DE60314654D1 (de) 2007-08-09
CN102109603A (zh) 2011-06-29
ATE365926T1 (de) 2007-07-15
JP4921712B2 (ja) 2012-04-25
EP1554599B1 (en) 2007-06-27
DE60314654T2 (de) 2008-02-28
SE0203047D0 (sv) 2002-10-15
KR20050053778A (ko) 2005-06-08
US20060013287A1 (en) 2006-01-19
JP2006503494A (ja) 2006-01-26
US8422601B2 (en) 2013-04-16
US20080095272A1 (en) 2008-04-24
JP2010028875A (ja) 2010-02-04
CN1705893B (zh) 2011-03-16
CN1705893A (zh) 2005-12-07
EP1843167A1 (en) 2007-10-10
AU2003267903A1 (en) 2004-05-04
EP1554599A1 (en) 2005-07-20

Similar Documents

Publication Publication Date Title
US8422601B2 (en) Spread spectrum signal processing
JP4738692B2 (ja) 強信号をキャンセルして弱スペクトラム拡散信号を強める方法
JP4674707B2 (ja) スペクトラム拡散レシーバのアーキテクチャおよびその方法
US8351486B2 (en) Parallel correlator implementation using hybrid correlation in spread-spectrum communication
EP1722487B1 (en) Spread spectrum correlator
EP1421706A1 (en) Data message bit synchronization and local time correction methods and architectures
US20070019715A1 (en) Method and Apparatus for Accelerating Correlation Processing of GPS Signal
TW201512689A (zh) 用於處理組合式導航信號的方法、裝置及製品
US8362952B2 (en) Memory reduction in GNSS receiver
CN116745647A (zh) 现代化的消费者级gnss次级码捕获和信号跟踪
Baracchi-Frei Real-time GNSS software receiver optimized for general purpose microprocessors
KR101088536B1 (ko) 상관 방법, 신호 프로세서 및 직접 시퀀스 확산 스펙트럼신호 수신기
Mattos et al. Multi-constellation-to receive everything
Dovis et al. Fully Software Implementations for Galileo Receiver
CN113568016A (zh) 一种基于fpga的多模gnss信号相关方法和系统
Vulugundam et al. IMPLEMENTATION OF ACQUISITION ALOGORITHM FOR GLONASS SOFTWARE RECEIVER
Mattos et al. GPS-III L1C signal reception demonstrated on QZSS
KR20100119495A (ko) 코드 변조 신호 처리 방법 및 장치
CN101275996A (zh) 对全球导航卫星系统信号执行相关性运算的方法及装置
WO2010068911A1 (en) Waveform correlation result processing methods and apparatuses

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
LAPS Lapse due to unpaid annual fee