KR100995542B1 - 분산 스펙트럼 신호의 수신에서의 상관 수행 - Google Patents

분산 스펙트럼 신호의 수신에서의 상관 수행 Download PDF

Info

Publication number
KR100995542B1
KR100995542B1 KR1020087015094A KR20087015094A KR100995542B1 KR 100995542 B1 KR100995542 B1 KR 100995542B1 KR 1020087015094 A KR1020087015094 A KR 1020087015094A KR 20087015094 A KR20087015094 A KR 20087015094A KR 100995542 B1 KR100995542 B1 KR 100995542B1
Authority
KR
South Korea
Prior art keywords
code
register
correlator
shift register
signal
Prior art date
Application number
KR1020087015094A
Other languages
English (en)
Other versions
KR20080077219A (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 KR20080077219A publication Critical patent/KR20080077219A/ko
Application granted granted Critical
Publication of KR100995542B1 publication Critical patent/KR100995542B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L27/00Modulated-carrier systems
    • H04L27/18Phase-modulated carrier systems, i.e. using phase-shift keying
    • 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
    • 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/35Constructional details or hardware or software details of the signal processing chain
    • G01S19/37Hardware or software details of the signal processing chain
    • 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/709Correlator structure
    • 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/70707Efficiency-related aspects
    • H04B2201/7071Efficiency-related aspects with dynamic control of receiver resources

Landscapes

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

Abstract

본 발명은 수신된 신호의 샘플들을 입력하기 위한 적어도 한 입력(30.1); 및 적어도 하나의 참조 코드를 입력하기 위한 적어도 하나의 참조 코드 입력(30.2)을 포함하는, 수신된 분산 스펙트럼 신호를 가지고 상관을 수행하는 상관기(30)이다. 그 상관기(30)는 또한 상기 신호 샘플들을 수신하기 위한 데이터 쉬프트 레지스터(36); 적어도 하나의 참조 코드의 적어도 일부를 수신하기 위한 코드 쉬프트 레지스터(33)를 포함하는 다수의 레지스터 그룹들(31); 및 그 코드 쉬프트 레지스터(33)로부터 데이터를 수신하기 위한 코드 레지스터(34); 그 레지스터 그룹들(31)의 요소들(33, 34) 사이에 연결들을 재구성가능한 방식으로 배열하기 위한 구성 요소들(201, 202, 203)을 포함하는 상관 수단을 포함한다. 본 발명은 또한 수신기, 수신기를 포함하는 전기적 장치, 수신기와 연결되어 사용되는 모듈, 및 분산 스펙트럼 변조 신호를 전송하기 위한 송신기 및 그 전송된 신호를 수신하기 위한 수신기를 포함하는 시스템에 관한 것이다. 게다가, 본 발명은 방법 및 컴퓨터 소프트웨어 생성물에 관한 것이다.

Description

분산 스펙트럼 신호의 수신에서의 상관 수행{Performing a correlation in reception of a spread spectrum signal}
본 발명은 수신된 신호의 샘플들을 입력하기 위한 적어도 한 입력; 적어도 하나의 참조 코드(reference code)를 생성하기 위한 코드 생성기 블록(code generator block); 상관된 신호들을 믹싱(mixing)하기 위한 믹서 블록(mixer block); 및 상기 믹싱된 신호들을 인테그레이션(integration)하기 위한 인테그레이터 블록(integrator block)을 포함하는, 수신된 분산 스펙트럼 신호를 가지고 상관을 수행하는 상관기(correlator)에 관한 것이다. 본 발명은, 수신된 신호의 샘플들을 형성하기 위한 최소한의 샘플링 수단; 상기 수신된 분산 스펙트럼 신호의 샘플들을 가지고 상관을 수행하는 상관기; 적어도 하나의 참조 코드를 생성하기 위한 코드 생성기 블록; 상관된 신호들을 믹싱하기 위한 믹서 블록; 및 상기 믹싱된 신호들을 인테그레이션하기 위한 인테그레이터 블록을 포함하는, 분산 스펙트럼 신호를 수신하는 수신기에 관한 것이다. 본 발명은 또한 수신된 신호의 샘플들을 형성하는 최소한의 샘플링 수단, 상기 수신된 분산 스펙트럼 신호의 샘플들을 가지고 상관을 수행하기 위한 상관기; 적어도 하나의 참조 코드를 생성하기 위한 코드 생성기 블록; 상관된 신호들을 믹싱하기 위한 믹서 블록; 및 상기 믹싱된 신호들을 인테그레이션하기 위한 인테그레이터 블록을 포함하는, 분산 스펙트럼 변조 신호를 수신하는 수신기를 포함하는 전기적 장치에 관한 것이다. 본 발명은 또한 분산 스펙트럼 변조 신호(spread spectrum modulated signal)를 전송하기 위한 송신국(transmitting station), 수신된 신호의 샘플들을 형성하기 위한 최소한의 샘플링 수단; 상기 수신된 분산 스펙트럼 신호의 샘플들을 가지고 상관을 수행하기 위한 상관기; 적어도 하나의 참조 코드를 생성하기 위한 코드 생성기 블록; 상관된 신호들을 믹싱하기 위한 믹서 블록; 및 상기 믹싱된 신호들을 인테그레이션하기 위한 인테그레이터 블록을 포함하는, 분산 스펙트럼 변조 신호를 수신하기 위한 수신기를 포함하는 시스템에 관한 것이다. 게다가, 본 발명은 수신된 신호의 샘플들을 입력하기 위한 적어도 한 입력; 적어도 하나의 참조 코드를 생성하기 위한 코드 생성기 블록; 상관된 신호들을 믹싱하기 위한 믹서 블록; 및 상기 믹싱된 신호들을 적분하기 위한 인테그레이터 블록을 포함하는, 수신된 분산 스펙트럼 신호를 가지고 상관을 수행하는 모듈에 관한 것이다. 본 발명은 또한 적어도 수신된 신호의 샘플들을 입력하는 단계; 적어도 하나의 참조 코드를 생성하는 단계; 상관된 신호들을 믹싱하는 단계; 및 상기 믹싱된 신호들을 인테그레이션하는 단계를 포함하는, 상관기에서의 수신된 분산 스펙트럼 신호를 가지고 상관을 수행하는 방법에 관한 것이다. 더욱이, 본 발명은 수신된 신호의 샘플들을 입력하는 것; 적어도 하나의 참조 코드를 생성하는 것; 상관된 신호들을 믹싱하는 것; 및 상기 믹싱된 신호들을 인테그레이션하는 것을 위한 명령들을 포함하는 컴퓨터 소프트웨어 생성물에 관한 것이다.
분산 스펙트럼 변조 신호들(CDMA, Code Division Multiple Access)은 예를 들면 UTMS와 같은 많은 제3 세대 이동 통신 시스템들에서뿐만 아니라, GPS 시스템과 같은 글로벌 내비게이션 위성 시스템들(global navigation satellite systems, GNSS)에서 사용된다. 분산 스펙트럼 변조 신호를 생성하는데 관하여, 각 송신기가 고유의 분산 코드를 할당받을 때, 그 변조는 개별적인 분산 코드(spreading code)를 이용하여 송신기에서 수행되고, 이 때 몇몇 송신기들은 같은 주파수에서 신호를 동시에 전송할 수 있다. 예를 들면, 위성 위치결정 시스템들(satellite positioning system)에서, 각 위성은 그 고유의 분산 코드를 이용한다. 그 수신기에서, 그 대응하는 참조 코드가 생성되거나 또는 그것이 그 수신기의 메모리로부터 읽혀지고, 이 참조 코드는 수신될 송신기의 신호를 위하여 그 수신된 신호를 탐색하기 위해 이용된다. 성공적인 신호 수신을 위해, 그 수신기는, 전형적으로 몇몇 상관기를 이용하고 그 참조 코드의 코드 위상(code phase) 및 주파수를 제어함에 의해, 그 신호의 포착(acquisition)을 수행해야 하고, 이 때 그 상관기들에 의해 생성된 신호들은 정확한 코드 위상 및 주파수 쉬프트(shift)를 결정하기 위해 이용된다. 그 포착이 완료된 후에, 그 신호의 수신 및 거기에 전송된 정보의 복조가 가능하도록 그 신호의 추적(tracking)이 계속된다. 이 추적 단계에서, 그 참조 코드의 코드 위상 및 주파수가 수신되는 신호의 코드 위상 및 주파수와 맞물려서 유지될 것이다.
그 포착 국면에서 가능한 한 넓은 탐색 범위를 커버(cover)하는 것이 바람직하나, 반면 추적 국면에서 그 커버리지(coverage)는 일반적으로 문제점은 아니지 만, 추적을 위한 정확성 요구조건들은 그 포착 국면에 대해 필요로 되는 것보다 더 좋은 타이밍 해상도(timing resolution)를 통상적으로 필요로 할 것이다. 이것은 통상적으로 그 들어오는 신호의 샘플링 주파수를 변경함에 의해 이루어진다. 포착 국면에 있어서, 더 낮은 샘플링 주파수는 주어진 수의 샘플들에서 더 많은 시간 커버리지를 허용한다. 추적 국면에 관하여, 더 높은 샘플링 주파수는 향상된 추적 정확성을 위한 증가된 시간 해상도(time resolution)로 귀착된다.
그 신호의 포착 및 추적은 특히 수신되는 신호의 세기가 불충분하고, 어쩌면 그 백그라운드 잡음보다 더욱 낮은 실내에서 문제가 있다. 이러한 경우는 특히 수신되는 신호가 대지 상에 도착하는 대로 매우 약해지고, 더욱이 실내에서 이 신호는 빌딩들의 벽들에 의해 감쇠될 수 있는 위성 위치결정 시스템들에서 일어난다. 이러한 문제를 치유하기 위해, 선행 기술의 해결책들은 그 수신기에게 다수의 상관기들을 제공함에 의해 그리고 긴 인테그레이션 시간을 이용함에 의해 그 수신기를 구현하는데에 목표를 두고 있다. 현재는, 수신기들은 약 16,000개나 되는 상관기들을 포함할 수도 있다. 비교를 위해, 최초의 휴대용 GPS 수신기들은 단지 12개 또는 그보다 더욱 더 적은 상관기들만을 포함하였다는 것이 언급되어져야 한다. 상관기들의 수의 증가는 당연히 또한 그 상관기들을 구현하기 위해 필요로 되는 회로 보드 영역들도 상당히 증가된다는 것을 의미한다. 게다가, 이는 그 수신기의 전력 소비를 증가시킨다. 더 높은 전력 소비 때문에, 그 장치의 가열 또한 증가될 수도 있다.
그룹 상관기(group correlator)는 동시에 다수의 신호들을 수신하기 위해 최 적화된 코드 상관 장치(code correlation device)이다. 그것은 몇몇 다른 프로세싱 채널들 사이에 다소의 그 신호 프로세싱 하드웨어를 공유하기 위해 시간 다중화(time multiplexing)를 활용한다. 그 원래의 그룹 상관기 구조는 한 번에 단일 샘플링 율(sampling rate)로 이용되도록 의도된다. 따라서 하나의 그룹 상관기는 포착 국면 프로세싱을 위해 필요로 될 것이고 하나는 추적 국면 프로세싱을 위해 필요로 될 것이다.
GNSS 수신기는 완전한 기능성을 위해 포착 및 추적 동작(operation)들 양자 모두를 수행하는 것을 필요로 한다. 부가적으로, 보통의 동작에서 그 수신된 신호들의 몇몇은 탐색되어지고 있고 반면 다른 신호들은 추적되어지고 있다. 최소의 하드웨어 및 제어 복잡성으로 양쪽 경우들 모두를 다룰 수 있는 것이 바람직할 것이다.
게다가 다수의 GNSS 시스템들 및 동작 모드들은 하나 이상의 GNSS 시스템으로부터 신호들을 포착하고 추적하도록 설계된 GNSS 수신기에서 많은 샘플링 주파수들을 이용할 필요를 일으킨다. 하드웨어는 소프트웨어를 위한 자원 사용의 최대 유연성(flexibility)을 허용하면서 최소화되어야 한다. 그 상관을 위한 다른 동작 모드들은 하드웨어 설계를 단순화하기 위해 그 하드웨어의 나머지 부분에 대하여 최소한의 영향을 미쳐야 할 것이다. 그룹 상관기 구조는 탐색 및 추적 양 모드 동작에서 그것의 다양한 기능에 기인하여 바람직하지만, 그것은 전통적인 형식에서 다수의 입력 샘플 율들을 커버할 수 없다.
신호 포착 및 추적 양쪽 모두를 수행하기 위하여, GNSS 수신기는 다음 중 하 나를 할 필요가 있을 것이다. 하나의 방도는 포착을 위한 하나의 그룹 상관기와 추적을 위한 하나의 그룹 상관기를 사용하는 것이다. 그러나, 이것은 하드웨어 크기를 증가시킬 것이다. 다른 방도는 두 개의 다른 클록 주파수들(clock frequencies)을 이용하여 하나의 그룹 상관기를 동작시키는 것이다. 이것은 그 그룹 상관기 이후의 모든 프로세싱이 그에 따라서 조정될 필요가 있을 것이기 때문에 그 수신기의 제어가 매우 복잡하다는 약점을 지닌다. 제3의 방도는 두 그룹 상관기들을 사용하지만, 다음의 프로세싱을 시간-다중화(time-multiplexing)하는 것, 즉 그 그룹 상관기 이후 부문들(stages)이 포착 및 추적 관련 동작들을 다중화 방식으로 수행하는 것이다. 다른 샘플 율들을 가진 샘플들의 스트림들(streams)이 단지 하나의 하드웨어 블록으로 프로세싱될 필요가 있을 것이기 때문에 이 접근법은 그 크기를 증가시키고 그 다음의 프로세싱의 제어를 매우 어렵게 만든다.
선행 기술에 따른 많은 GNSS 수신기들에서 단지 채널당 몇 개의 코드 지연들(code delays)을 포함하는 상관기 하드웨어가 그 신호를 포착하고 추적하기 위해 사용되었다. 그 상관기들은 매우 제한된 탐색 범위들을 가지기 때문에, 이러한 종류의 수신기는 현재의 요구사항들에 관해서는 너무 느리게 동작한다. 그러므로, 분리된 포착 액셀러레이터 하드웨어(separate acquisition accelerator hardware)가 포착 국면을 위해 사용되고 그 추적 국면은 전통적인 상관기 하드웨어에 의해 구현되는 몇 개의 접근법들이 발전되었다.
또한 하나의 모드에서 포착 액셀러레이터들로서 그리고 하나의 모드에서 추적 상관기들로서 구성될 수 있는 상관기 구조들을 이용하는 몇 개의 해결책들이 알 려져 있다. 그러나, 그들은 동시에 포착 및 추적을 수행할 수 없다.
GNSS 시스템들의 예들로서 우리는 여기에서 GPS(Global Positioning System) 및 갈릴레오(Galileo)를 언급한다. 이 특허 출원이 제출된 때 그 갈릴레오 시스템이 만들어지는 동안 그 GPS는 이미 전지구적으로 동작하고 있다. 그러나, 그 갈릴레오 시스템을 위한 동작 파라미터들은 이미 정의되었고, 하지만 그 파라미터들은 변할 수도 있음이 유념되어야 할 것이다. 그 GPS 및 갈릴레오 양쪽의 동작 파라미터들은 그들 사이에 다소의 유사점들이 존재함을 알 수 있게 하는 표 1에 나타나 있다. 또한 표 1로부터 양 GPS 및 갈릴레오 시스템 신호들에 대한 포착은 같은 상관 길이(correlation length)가 사용되더라도 똑같이 효과적이지 않을 수도 있다는 것을 알 수 있다.
Figure 112008044387097-pct00001
PRN(Pseudo Random Number) 코드 파라미터들은 그 GNSS 수신기의 상관 부분들에 대한 요구조건들을 결정한다. 칩 율(Chip rate), BOC (Binary Offset Carrier) 팩터(factor) 및 오버샘플링 비율(Oversampling ratio)은 필요로 되는 샘플링 율을 결정한다. 코드 길이(code length), BOC 팩터 및 오버샘플링 비율은 완전한 코드 불확실성(full code uncertainty)을 커버하기 위해 필요로 되는 샘플들의 수를 결정한다.
본 발명은 그 출력 샘플 클록 주파수를 유지하면서 포착 및 추적 국면을 위해 다른 모드들로 동작할 수 있는 상관기에 관한 것이다. 이것은 제어 복잡성을 감소시키고 하드웨어 크기를 작게 유지시킨다.
본 발명에 따른 그 재구성가능한(reconfigurable) 그룹 상관기의 근본적인 특성은 하나의 하드웨어 블록이 다른 모드들로 구성될(configured) 수 있다는 것이다. 상관 길이는 다른 모드들에 있어서 변하나, 전체 상관 빈들(bins)의 수는 동일하게 지속된다. 이것은 입력 샘플 율이 변하는 동안 출력 샘플 율을 유지하게 한다. 또한 수행되는 상관들의 수도 변한다. 그 출력은 실질적으로 같은 율(rate)로 행해지기 때문에, 상관 이후의 프로세싱 하드웨어는 다른 모드들로 적응시킬 필요가 없다.
그 입력 샘플 율을 변경시키는 것에 부가하여 또한 그 들어오는 참조 코드가 체인(chain)될 수 있어, 이는 하나의 복제 코드 생성기(replica code generator)에 의해 제어되는 더 큰 코드 커버리지를 허용하는 다른 체인 이루기 옵션들(chaining options)을 구현하는 것도 가능하다.
본 발명에 따르면, 해당 동작 모드에 따른 그룹 상관기의 다른 레지스터들(registers) 사이에 연결들을 구성함에 의하여 그룹 상관기에서 분산 스펙트럼 변조 신호를 상관시키는 방법이 발명되었고, 이 때 그 상관기들을 더 효율적으로 활용하는 것이 가능하다. 더 정확히 표현한다면, 본 발명에 따른 상관기는 상기 상관기가 또한 다음을 포함하고 있다는 것을 주요 특징으로 한다:
- 적어도 하나의 참조 코드의 적어도 일부를 수신하기 위한 코드 쉬프트 레지스터(code shift register); 및 상기 코드 쉬프트 레지스터로부터 데이터를 수신하기 위한 코드 레지스터;를 포함하는 다수의 레지스터 그룹들;
- 상기 레지스터 그룹들의 요소들 사이에 연결들을 재구성가능한 방식으로 배열하기 위한 구성 요소들(configuration elements)을 포함하는 그룹 상관 코어 블록(group correlation core block).
본 발명에 따른 수신기는 그 수신기의 상기 상관기가 다음을 포함하고 있다는 것을 주요 특징으로 한다:
- 적어도 하나의 참조 코드의 적어도 일부를 수신하기 위한 코드 쉬프트 레지스터; 및 상기 코드 쉬프트 레지스터로부터 데이터를 수신하기 위한 코드 레지스터;를 포함하는 다수의 레지스터 그룹들;
- 상기 레지스터 그룹들의 요소들 사이에 연결들을 재구성가능한 방식으로 배열하기 위한 구성 요소들을 포함하는 그룹 상관 코어 블록.
본 발명에 따른 전기적 장치는 그 전기적 장치의 상기 상관기가 다음을 포함하고 있다는 것을 주요 특징으로 한다:
- 적어도 하나의 참조 코드의 적어도 일부를 수신하기 위한 코드 쉬프트 레지스터; 및 상기 코드 쉬프트 레지스터로부터 데이터를 수신하기 위한 코드 레지스터;를 포함하는 다수의 레지스터 그룹들;
- 상기 레지스터 그룹들의 요소들 사이에 연결들을 재구성가능한 방식으로 배열하기 위한 구성 요소들을 포함하는 그룹 상관 코어 블록.
본 발명에 따른 시스템은 수신기의 상기 상관기가 다음을 포함하고 있다는 것을 주요 특징으로 한다:
- 적어도 하나의 참조 코드의 적어도 일부를 수신하기 위한 코드 쉬프트 레지스터; 및 상기 코드 쉬프트 레지스터로부터 데이터를 수신하기 위한 코드 레지스터;를 포함하는 다수의 레지스터 그룹들;
- 상기 레지스터 그룹들의 요소들 사이에 연결들을 재구성가능한 방식으로 배열하기 위한 구성 요소들을 포함하는 그룹 상관 코어 블록.
본 발명에 따른 모듈은 상기 상관기가 또한 다음을 포함하고 있다는 것을 주요 특징으로 한다:
- 적어도 하나의 참조 코드의 적어도 일부를 수신하기 위한 코드 쉬프트 레지스터; 및 상기 코드 쉬프트 레지스터로부터 데이터를 수신하기 위한 코드 레지스터;를 포함하는 다수의 레지스터 그룹들;
- 상기 레지스터 그룹들의 요소들 사이에 연결들을 재구성가능한 방식으로 배열하기 위한 구성 요소들을 포함하는 그룹 상관 코어 블록.
본 발명에 따른 방법은 그 방법이 또한 다음을 포함하고 있다는 것을 주요 특징으로 한다:
- 적어도 하나의 참조 코드의 적어도 일부를 코드 쉬프트 레지스터로 수신하도록;
- 상기 코드 쉬프트 레지스터로부터 데이터를 코드 레지스터로 수신하도록; 그리고
- 레지스터 그룹들의 요소들 사이에 연결들을 배열하도록; 상기 상관기의 그룹 상관 코어 블록을 구성하는 것.
마지막으로, 본 발명에 따른 컴퓨터 소프트웨어 생성물은 그 컴퓨터 소프트웨어 생성물이 또한 다음을 위한 명령들을 포함하는 것을 주요 특징으로 한다:
- 적어도 하나의 참조 코드의 적어도 일부를 코드 쉬프트 레지스터로 수신하도록;
- 상기 코드 쉬프트 레지스터로부터 데이터를 코드 레지스터로 수신하도록; 그리고
- 레지스터 그룹들의 요소들 사이에 연결들을 배열하도록; 상기 상관기의 그룹 상관 코어 블록을 구성하는 것.
예를 들면, 다음의 이점들이 본 발명에 의해 달성된다: 그 주 이점은 전통적인 접근법들과 비교시 최소의 HW 복잡성, 및 소프트웨어가 하드웨어 모드를 구성할 가능성이다.
하드웨어 구현을 위해, 단일의 기초 블록(building block)이 모든 상관기들을 구현하기 위해 사용될 수 있고, 이는 하드웨어 디자인을 단순화하고, 하드웨어 구성가능성(configurability)을 용이하게 하고, 하드웨어 유연성 및 유용성을 향상시키며, 필요로 되는 하드웨어 자원들을 감소시킬 수도 있다.
본 발명에 따른 수신기의 회로 보드 영역(circuit board area)은 선행 기술의 배열들과 비교할 때 절약되는데, 왜냐하면 같은 곱셈 동작들, 코드 쉬프트들 및 덧셈들이 몇몇의 다른 코드들 및 코드 위상들에서 이용될 수 있기 때문이다. 게다가, 그 수신기가 위성 위치결정 시스템들과 연결되어 적용될 때, 그 상관기 이후의 그 신호의 대역폭은 상대적으로 넓어서, 탐색되는 전체 도플러(Doppler) 주파수 범위를 전형적으로 커버한다. 따라서, 탐색되는 주파수 범위를 더 작은 부대역(subband)들로 나누고 그 부대역들에서 탐색하는 것이 필요하지 않을 것이다. 게다가, 포트들의 수 및 그 회로 보드 영역은, 그 수신기의 어떤 블록들이 다른 신호들의 포착을 위해 사용될 수 있는, 시간 다중화를 이용함에 의해 감소될 수 있다. 이러한 시간 다중화는, 예를 들면 그 그룹 상관기 이후에 필요로 되는 프로세싱 율(processing rate)이 상대적으로 낮다는 이유 때문에, 본 발명에 따른 수신기에서 가능하다. 본 발명에 따른 상관기는 또한 다양한 부분들로 나누어질 수 있다. 게다가, 본 발명은 그 포착 및 추적 양쪽 모두를 위해 동일한 블록들을 이용하는 것을 가능하게 한다.
다음에서, 본 발명이 덧붙여진 도면들과 관련하여 더 상세하게 기술될 것이고, 그 도면들에서
도 1은 본 발명이 적용될 수 있는 수신기의 예를 줄여진 블록 다이어그램(reduced block diagram)으로 도시한 것이고,
도 2는 본 발명의 수신기에서 사용될 수 있는 중간 주파수 제거 블록(intermediate frequency removal block)의 예를 도시한 것이고,
도 3은 본 발명에 따른 그룹 상관기의 믹서 블록의 구현예에 관한 논리도(logical view)를 도시한 것이고,
도 4는 그 코드 생성기 블록의 구현예를 도시한 것이고,
도 5는 본 발명에 따른 그룹 상관기 코어 블록의 구현예에 관한 논리도를 줄여진 블록 다이어그램으로 도시한 것이고,
도 6a는 기본 주파수 모드(basic frequency mode)로 동작하는 본 발명에 따른 그룹 상관기 코어 블록의 제1 구성예를 도시한 것이고,
도 6b는 2배 주파수 모드로 동작하는 본 발명에 따른 그룹 상관기 코드 블록의 제2 구성예를 도시한 것이고,
도 6c는 4배 주파수 모드로 동작하는 본 발명에 따른 그룹 상관기 코드 블록의 제3 구성예를 도시한 것이고,
도 7은 본 발명에 따른 분산 스펙트럼 신호들을 상관시키는 방법의 예를 도시한 것이고, 그리고
도 8은 본 발명이 적용될 수 있는 GPS 시스템의 예를 도시한 것이다.
본 발명에 따른 상관기(1.3)가 적용될 수 있는 수신기(1)의 예가 도 1에 예시되어 있다. 그 수신기(1)는 위성국들(satellite stations)로부터 분산 스펙트럼 변조 신호들을 수신하는 위성 위치결정 시스템의 수신기이다. 그러나, 본 발명은 또한 분산 스펙트럼 변조 신호들을 사용하는 다른 시스템들에서 적용될 수도 있다는 것은 명백할 것이다. 그 수신기(1)는, 대역통과 필터링(filtering), 증폭, 중간 주파수로의 변환, 및 샘플링(sampling)과 같은, 주어진 주파수 대역에서의 신호들의 프로세싱을 위해 필요한 단계들을 취하기 위한 수신 부문(receiving stage, 1.1)을 포함한다. 이 이후에, 그 샘플들은 중간 주파수 제거 블록(intermediate frequency removal block, 1.2)에 더 나아가서는 그 상관기(1.3)에 입력된다. 그 상관기(1.3)에서 그 신호들은 이 출원 내에서 나중에 기술될 것과 같이 프로세싱된다.
도 2는 본 발명에 따른 수신기(1)에서 사용될 수 있는 하나의 중간 주파수 제거 블록(1.2)을 도시한 것이다. 그 중간 주파수 제거 블록(1.2)에 입력된 샘플들은 수치 제어되는 오실레이터(numerically controlled oscillator)(1.22)에 의해 생성되는 신호와 믹서(1.21)에서 믹싱되고, 여기서 그 수치 제어되는 오실레이터(1.22)에 의해 생성되는 신호의 다른 위상들의 두 신호들이 위상 쉬프트 블록(1.23)에서 먼저 형성된다. 이 신호들 사이의 위상 쉬프트는 약 90도이고, 그 믹서(1.21)에서의 목표는 그 위성 도플러 주파수의 수신 신호 뿐만 아니라 가능한 중간 주파수(IF)의 수신 신호를 제거하는 것이고, 이 때 그 믹서(1.21)의 출력이 기저대역 신호이다. 그 다음에 이 기저대역 신호는 그 수신 부문(1.1)에서 샘플링시 사용된 샘플링 주파수와 다른 샘플링 주파수를 갖는 십진 블록(decimation block, 1.24)에서 샘플링된다. 그 십진 블록(1.24)에서 취해진 샘플들은 그룹 상관 코어 블록(들)(20)에 입력된다.
본 발명의 상관기(1.3)를 포함하는 수신기(1)는 다른 시스템들의 송신기들로부터 신호들을 동시에 수신할 수 있다. 그 상관기(1.3)는 각각이 하나의 그룹 상관 기 코어 블록(30)을 포함하는 하나 또는 그 이상의 그룹 상관기 블록들(20)을 포함한다. 하나의 그룹 상관기 블록(20)은, 예를 들면, 하나 또는 그 이상의 GPS 위성들의 신호들을 포착하기 위해 설정될 수 있고 반면 다른 그룹 상관기 블록(20)은 다른 GNSS 위성의 신호들을 포착하기 위해 설정될 수 있다. 하나의 그룹 상관기 블록(20)이 신호들을 포착하기 위해 설정되고 다른 그룹 상관기 블록(20)이 그 그룹 상관기 블록(20)이 이전에 그 포착을 수행했던 신호들을 추적하도록 설정되는 것 또한 가능하다.
본 발명에 따른 수신기(1)가 예를 들면 위성 위치결정 시스템들에 적용될 때, 단지 하나의 중간 주파수 제거 블록(1.2)만이 그 상관기(1.3) 전에 필요로 되는데, 왜냐하면 그 그룹 상관기 블록(들)(30) 후의 대역폭은 위성 신호들에 대해 탐색되는 전체 도플러 주파수 범위(도플러 쉬프트에 의해 유발되는 주파수 쉬프트)를 커버하기 때문이다.
그 수신기(1)의 블록들은, 예를 들면, 디지털 신호 프로세서(1.9) 또는 상응하는 콘트롤러(controller)에 의해 제어된다. 포착 기능에서, 주어진 탐색을 위한 고정된 값들(주파수 및 위상)은 그 믹서 블록(40)의 주파수 빈(bin) 생성기 블록(41)에서 설정된다. 추적 기능에서, 그 믹서 블록(40)의 주파수 빈 생성기 블록(41)은 그 수신기(1)를 수신될 신호와 맞물려서 유지하도록 제어된다. 이는, 필요하다면, 그 주파수 및 그 위상을 제어함에 의해 이루어진다. 그 추적 기능에서, 수신되는 신호가 충분히 강할 때, 그 디지털 신호 프로세서(1.9)는 그 연접 인테그레이션 블록(coherent integration block, 51)에 의해 사용되는 메모리 영역으로부 터 그 연접 인테그레이션의 결과들을 읽을 수 있다. 약한 신호의 수신 동안, 그 포착 및 추적 기능들은 비연접(non-coherent) 인테그레이션 블록(53)에 비연접 인테그레이션을 더 포함할 수도 있다. 이 경우에서, 그 디지털 신호 프로세서(1.9)는 그 비연접 인테그레이션 블록(53)에 의해 사용되는 메모리 영역으로부터 그 비연접 인테그레이션의 결과들을 읽고 이러한 값들을 사용하여 그 포착/추적을 제어한다.
그 제어 블록(1.9)이 본 발명의 상기 기술에서 그리고 덧붙여진 도면들에서 분리된 블록으로 표현되어 있긴 하지만, 그 수신기(1)의 블록들 중 몇몇이, 예를 들면, 그 제어 블록(1.9)으로서 사용되는 디지털 신호 프로세서의 기능들로서, 또는 그 제어 블록(1.9)으로부터 분리된 디지털 신호 프로세서의 기능들로서 구현될 수 있다는 것은 명백하다.
본 발명의 그룹 상관기 코어 블록(30)의 구현예의 기본적인 블록 다이어그램이 도 5에 예시되어 있고, 여기서 다른 화살표들(201, 202, 203)은 그 가능한 데이터 흐름들을 나타낸다. 그 화살표들(201, 202, 203)에 의해 나타난 데이터 흐름들을 작동화하는 것(enabling) 또는 무능화하는 것(disabling)은 그 그룹 상관기의 동작 모드를 변화시킬 수 있다. 그 그룹 상관기 코어 블록(30)의 다른 블록들 사이의 데이터 흐름들은, 예를 들면, 다중통신용장치들(multiplexers), 스위치들(switches), FET들 등으로 제어될 수 있고 또는 그 그룹 상관기가 예를 들면 디지털 신호 프로세서(DSP)를 이용하여 구현된 때에는 소프트웨어에 의해 제어될 수 있다. 도 5에서 그 데이터 흐름의 제어에 관한 상세들은 나타나 있지 않다.
그 그룹 상관기 코어 블록(30)은 N 개의 레지스터 그룹들(31)을 포함한다. 한 구현예에서 그 수 N은 수신 블록들의 수, 또는 하나의 그룹 상관기 블록(20)에 의해 한 번에 탐색되는 위성들의 수에 대응한다; 예를 들면, 그 그룹 상관기 블록(20)이 4개의 위성들을 수신할 때 4개의 레지스터 그룹들(31)이 있다. 다른 구현예에서 그 수 N은 수신 블록들의 수의 절반에 대응한다(즉, 8개의 수신 블록들이 있다면, 그 수 N은 4와 같다). 그러나, 명쾌하게 하기 위해, 단지 3개의 레지스터 그룹들(31)만이 도 5에 나타나 있고, 각 코드(1...N)에 대하여 하나씩 나타나 있다. 부그룹들(subgroups)의 수는 이 출원 내에서 M으로 표시된다. 그러므로, N 및 M 양 쪽 모두는 1보다 큰 양의 정수들임이 정의될 수 있다. 각각의 레지스터 그룹(31)은 코드 쉬프트 레지스터(33) 및 하나 또는 그 이상의 코드 레지스터들(34)을 포함하는 하나 또는 그 이상의 부그룹들(32)을 포함한다. 그 코드 쉬프트 레지스터들(33) 및 그 코드 레지스터들(34)의 길이(length)(저장 위치들)는 각 부그룹에서 같다. 각 부그룹의 블록들(즉, 그 코드 쉬프트 레지스터(33) 및 그 코드 레지스터들(34)) 사이의, 같은 레지스터 그룹(31)의 부그룹들(32) 사이의, 그리고 다른 레지스터 그룹들(31) 사이의 데이터 흐름들은 어떤 방식들로 바뀔 수 있어서 본 발명의 그룹 상관기의 재구성가능가능성(re-configurability)을 허용한다.
다음에서, 첫 번째 부그룹(32.1)의 코드 쉬프트 레지스터(33.1)도 첫 번째 코드 쉬프트 레지스터로서 불리고, 두 번째 부그룹(32.2)의 코드 쉬프트 레지스터(33.2)도 두 번째 코드 쉬프트 레지스터로서 불리며, M 번째 부그룹(32.m)의 코드 쉬프트 레지스터(33.m)도 M 번째 코드 쉬프트 레지스터로서 불린다.
그 그룹 상관기 코어 블록(30)은 그 샘플들이 예를 들면 입력 라인(30.1)을 통해 입력되는 샘플 쉬프트 레지스터 그룹(35)을 또한 포함한다. 본 발명의 한 구현예에서 그 샘플 쉬프트 레지스터 그룹(35)은 레지스터 그룹들(31) 내에 부그룹들(32)이 존재하는 하는 것만큼 많은 샘플 쉬프트 레지스터들(35.1,..., 35.m)을 포함한다. 그 샘플 쉬프트 레지스터들(35.1,..., 35.m)은 그 그룹 상관기 코어 블록(30)에 샘플들이 입력되는 것과 같은 율로 잘라진다(chipped). 환언하면, 샘플들은 그 그룹 상관기 코어 블록(30)에 샘플들이 입력되는 것과 같은 율로 쉬프트된다.
또한 본 발명의 그 상관기 코어 블록(30) 내에 결합자 그룹(combiner group, 37) 및 출력 블록(38)이 있다. 그 결합자 그룹(37)은 곱셈 동작 및 결합 동작을 수행하기 위한 다수의 곱셈 및 결합 블록들(37.1,..., 37.m)을 포함한다. 그 결합자 그룹(37) 내의 곱셈 및 결합 블록들(37)의 수는 이 예에서 부그룹들(32)의 수와 같다. 그 출력 블록(38)은 그 곱셈 및 결합 블록들(37)의 출력들을 합한다.
그 다음 그 그룹 상관기 코어 블록(30)에서 형성되는 신호들은 그 믹서 블록(40)에 입력될 수 있고, 그 믹서 블록(40)의 하나의 예가 도 3에 나타나 있다. 이 구현에서, 그 믹서 블록(40)은 다른 도플러 주파수 빈들을 생성하기 위한 하나의 주파수 빈 생성기 블록(41)을 포함한다. 그 주파수 빈 생성기 블록(41)은 DFT 오실레이터(42)(DFT NCO) - 이는 인접하는 주파수 빈들 사이의 원하는 주파수 간격(Δf)을 입력함에 의해 제어된다 - 에 관한 신호를 얻는다. 더 나아가, 그 주파수 빈 생성기 블록(41)은 가장 바깥쪽의 주파수 빈을 설정하기 위해 다른 입력(M)을 수신한다. 주파수 빈들의 최소 수는 5(중심 주파수, +1Δf, -1Δf, +2Δf, -2Δ f)이고, 이 경우에서 M=2이다. 그 캐리어 오실레이터(carrier oscillator, 43)는 그 주파수 빈 생성기 블록(41)에 대한 중심 주파수 (도플러)를 설정한다. 그 캐리어 오실레이터(43)의 초기 위상은 그 캐리어 오실레이터(43)로 입력되는 초기 캐리어 위상(Initial Carrier Phase) 신호(47)에 의해 설정될 수 있다. 따라서, 그 주파수 빈 생성기 블록(41)은 그 도플러 주파수에서 그리고 그 도플러 주파수로부터의 일정 주파수 오프셋들(offsets)에서 주파수 빈을 생성한다. 그 주파수 오프셋들은, 예를 들면, 그 도플러 주파수 주위에서의 주파수 간격의 정수배들에서, 즉 +1Δf, -1Δf, +2Δf, -2Δf, ..., +MΔf, -MΔf에 존재한다. 그 주파수 빈 생성기 블록(41)의 구현예는 또한 캐리어 사이클들(cycles)을 카운트(count)하기 위한 사이클 카운터(cycle counter, 44)를 포함한다.
그 주파수 빈 생성기 블록(41)의 각각의 출력은 그 믹서 그룹(45)의 하나의 믹서(46)로 연결된다. 그 그룹 상관기 코어 블록(30)의 출력들로부터의 신호들은 그 믹서 그룹(45)의 믹서들(46)의 다른 입력들로 연결된다. 그러므로, 그 믹서 그룹(45)의 각각의 믹서(46)는 그 그룹 상관기 코어 블록(30)의 출력 신호 및 그 주파수 빈들 중 하나의 신호의 믹싱 결과를 형성한다. 이러한 믹싱 결과들은 그 연접 인테그레이터 블록(51)에서 연접적으로 인테그레이션된다.
본 발명에 따른 그 그룹 상관기(30)에서 각각의 주파수에 대하여 하나의 인테그레이터 블록(50)이 있다. 각각의 연접 인테그레이터 블록(50)은 그 믹서 그룹(45)의 하나의 믹서(46)로부터 나오는 신호를 인테그레이션하기 위한 인테그레이터(51)를 포함한다. 또한 연접적으로 인테그레이션되는 데이터 및 그 연접 인테그 레이션의 중간 결과들을 일시적으로 저장하기 위한 제1 메모리(52)가 있다. 여기에서 상기 기술된 부문들에서의 신호들은 2성분 형태로 존재한다는 것, 즉 그들은 동 위상(in phase) 성분(l) 및 직각 위상(quadrature phase) 성분(Q)을 포함한다는 것을 주의하여야 할 것이다. 그 변환 블록(53)에서 그 2성분 신호들은, 예를 들면 그 성분들을 제곱하고 그 제곱된 값들의 합의 제곱근(
Figure 112008044387097-pct00002
) - 이는 있는 그대로 알려져 있다 - 을 취함에 의해 1성분 신호들로 변환된다. 또한 그 변환을 만들기 위한 다른 방법들이 가능하다. 그 변환으로부터 기인하는 신호들은 그 비연접 인테그레이션 블록(54)에서 비연접적으로 인테그레이션된다. 또한 비연접 인테그레이션 결과들 및 그 비연접 인테그레이션의 중간 결과들을 저장하기 위한 제2 메모리(55)가 있다. 그 비연접 인테그레이터 블록(54)은 또한 예를 들면, 그 비연접 인테그레이션 결과들의 제곱들의 합, 그 비연접 인테그레이션 결과들의 합, 최대값의 인덱스, 최대값 등을 결정하기 위한 통계 블록(statistics block, 56)을 포함할 수 있다. 이러한 통계적인 값들은 포착 국면에서 그 들어오는 신호의 정확한 도플러 주파수 및 코드 위상을 결정하기 위해서, 그리고 추적 국면에서 그 오실레이터들의 위상들을 미조정하기(fine-tune) 위해 사용될 수 있다.
그 코드 생성기 블록(60)은 그 그룹 상관기 코어 블록(30)에 의해 포착되고 추적되는 신호들의 변조 코드들에 대응하여 필요한 참조 코드들을 생성한다. 그 코드 생성기 블록(60)의 한 구현예가 도 4에 묘사되어 있다. 그 코드 생성기 블록(60)은 그 코드 주파수의 정수배, 이 예에서 실질적으로 그 코드 주파수의 두 배, 예를 들면 2MHz인 주파수를 생성하는 수치 제어되는 오실레이터(61)를 포함한다. 그 수치 제어되는 오실레이터(61)로부터의 신호는 칩 카운터(chip counter, 62)로 이어지고, 그 칩 카운터(62)는 그 수치 제어되는 오실레이터(61)의 출력에서 펄스들을 카운트한다. 그 수치 제어되는 오실레이터(61)의 주파수가 그 코드 주파수보다 클 때 그 펄스들은 그 칩 길이보다 짧다. 예를 들면, 그 수치 제어되는 오실레이터(61)의 주파수가 그 코드 주파수의 두 배이면, 그 칩 카운터(62)는 그 칩들의 절반들, 즉 각각의 칩에 대하여 두 펄스들을 카운트한다. 그러므로, 그 칩 카운터(62)는 그 수치 제어되는 오실레이터(61)의 주파수를 그 수 N으로 나눈다. 이 특정한 예에서 N의 값은 하나의 에폭(epoch)에서의 칩들의 수의 두 배이다. 그 칩 카운터(62)의 출력은 그 에폭들의 주파수이다. 그 칩 카운터(62)의 출력(62.1)은 그 에폭 카운터(epoch counter, 63)에 그리고 그 코드 설정기(code setter, 66)에 연결된다. 그 에폭 카운터(63)는 그 에폭들을 카운트한다. 에폭들의 수에 관한 정보는 또한 그 코드 생성기 로직(code generator logic, 67)에 의해 생성된 코드를 정확한 위상에 리셋하기 위해 사용된다. 그 칩 카운터(62)의 출력으로부터 그 코드 설정기(66)로 연결된 신호는 정상적으로 그 코드 생성기 로직(67)의 리셋/리로드(reset/reload) 입력(67.4)으로 직접 전달된다. 또한 그 코드 생성기 로직(67)의 리셋/리로드 입력에 대해 리셋/리로드 펄스를 생성하기 위해 그 코드 설정기(66)를 사용하는 것도 가능하다. 그 코드 설정기(66)가 그 리셋/리로드 펄스를 생성하기 위해 사용될 때 그 수치 제어되는 오실레이터(61), 그 칩 카운터(62) 및 그 에폭 카운터(63)는 실질적으로 같은 순간에 초기화된다. 그 수치 제어되는 오실레이 터(61)는 그 코드의 시작 위상으로 초기화되고 그 카운터들(62, 63)의 값들은 0으로 설정된다.
그 수치 제어되는 오실레이터(61)로부터의 신호는 또한 게이트(gate, 64) 및 분할자(divider, 65)에 이어진다. 그 게이트(64)는 코드 선택 신호(code select signal)에 의해 작동화/무능화되어 그 수치 제어되는 오실레이터(61)로부터 신호를 그 참조 코드 생성 블록(67)의 BOC 클록 입력(67.2)으로 BOC 클록 신호로서 통과시킨다(이 예에서 =2x 참조 코드 율). 이 구현 예에서 그 분할자(65)는 그 참조 코드 생성 블록(67)의 코드 클록 입력(67.3)에 대한 입력 신호로서 사용되도록 그 수치 제어되는 오실레이터(61)에 의해 생성되는 신호를 2로 나눈다. 그 코드 설정기(66)는 또한 그 수치 제어되는 오실레이터(61)의 시작 값을 프로그래밍함에 의해 분할 코드 위상(fractional code phase)을 설정할 수 있는 능력을 가진다. 그 코드 생성기는 단일 블록에서 몇몇 코드들을 생성하기 위해 시간 다중화 방식으로 동작한다.
그 상관기(20) 및 그 수신기(1)의 다른 부분들의 동작들을 위한 타이밍은 분할자들, 수치 제어되는 오실레이터들(NCO) 등을 사용하여 기본 오실레이터(1.10)(도 1)로부터 형성될 수 있다. 그 기본 오실레이터(1.10)의 최소 필요 주파수는 하나의 그룹 상관기 코어 블록(30)에 의해 포착되는/추적되는 채널들 및 그 들어오는 신호의 최대 샘플링 주파수의 곱으로서 계산된다. GPS/갈릴레오 시스템들의 신호들의 추적 모드에서 그 데이터 샘플링 주파수는 예를 들면 8.184 MHz인데, 이에 반해서 포착 모드에서 그 데이터 샘플링 주파수는 예를 들면 2.046 MHz(GPS) - 이는 2 샘플들/칩을 의미한다 -, 또는 4.092 MHz(갈릴레오)- 이는 4 샘플들/칩을 의미한다 - 이다. 그러므로, 하나의 그룹 상관기 코어 블록(30)이 포착/추적을 위한 4개의 채널들을 가진다면, 그 기본 오실레이터에 대한 최소 주파수는 32.736 MHz이다.
본 발명에 따른 수신기(1)가, 예를 들면, 위성 위치결정 시스템들에 적용될 때, 그 그룹 상관기 코어 블록(들)(30) 후의 대역폭은 위성 신호들에 관해 탐색되는 전체 도플러 주파수 범위(도플러 쉬프트에 의해 유발되는 주파수 쉬프트)를 커버하기 때문에, 단지 하나의 중간 주파수 제거 블록(1.2)만이 그 그룹 상관기 코어 블록(들)(30) 전에 필요로 된다. 더욱이, 모든 코드 쉬프트 레지스터들(33)의 콘텐츠는 이 샘플 레지스터 그룹(35)의 콘텐트와 곱해질 수 있기 때문에, 단일의 샘플 레지스터 그룹(35)은 충분할 것이다.
또한 도 5에서 화살표(203)로 표시된 것과 같이 그 샘플 쉬프트 레지스터 그룹(35)의 샘플 쉬프트 레지스터들(35.1,..., 35.m)에 그 데이터 샘플들을 병렬 방식으로 연결하는 것도 가능하다.
도 6a 내지 도 6c는 도 5에 따른 구성가능한 그룹 상관기가 구성될 수 있는 3개의 다른 동작 모드들을 보여준다. 여기서 도 6a 내지 도 6c의 구현들에서 4개의 채널들이 수신된다는 것, 단지 두 부그룹들(32)만이 있다는 것 그리고 각 부그룹은 4개의 코드 레지스터들(34)을 포함한다는 것이 가정된다는 것을 주의하여야 할 것이다. 그러나, 본 발명은 이러한 그룹 상관기에 한정되지 않고 실제적인 구현들에서 부그룹들의 수 및 각각의 부그룹 내의 레지스터들의 수는 이러한 예들에서 제시된 것보다 훨씬 더 클 수도 있다.
기본 주파수 동작
이제, 제1 동작 모드에서의 그 그룹 상관기 코어 블록(30)의 데이터 흐름들의 제어가 도 6a와 관련하여 더 상세하게 기술될 것이다. 제1 동작 모드(기본 주파수 동작 모드)에서 그 데이터 샘플링 주파수는 이 구현예에서 모든 선택가능한 샘플링 주파수들 중 가장 작은 샘플링 주파수이도록 선택된다. 그 가장 작은 데이터 샘플링 주파수는 또한 다른 동작 모드들의 다음의 기술들에서 B_CLK로서 표시된다.
그 그룹 상관기 코어 블록(30)은 좁은 모드(narrow mode)(도 7에서 블록(701))로 동작하도록 설정되는데, 이는 각각의 부그룹(32) 내에서 단지 첫 번째 코드 쉬프트 레지스터(33.1)만이 쓰인다는 것을 의미한다. 따라서, 각각의 레지스터 그룹(31)의 첫 번째 코드 쉬프트 레지스터(33.1)가 참조 코드를 위한 입력으로서 연결된다.
각각의 부그룹(32)에서 첫 번째 코드 레지스터(34.1.1, 34.2.1,..., 34.m.1)의 입력들은 첫 번째 코드 쉬프트 레지스터(33.1, 33.2, 33.m)의 출력들에 연결되어서 그 첫 번째 코드 쉬프트 레지스터(33.1, 33.2, 33.m)에 저장된 데이터는 필요한 경우 같은 부그룹(32)의 첫 번째 코드 레지스터(34.1.1)에 복사될 수 있다. 각각, 두 번째 코드 레지스터(34.1.2, 34.2.2,..., 34.m.2)의 입력들은 첫 번째 코드 레지스터(34.1.1, 34.2.1,..., 34.m.1)의 출력들에 연결된다. 그 부그룹들(32)에서 두 개 이상의 코드 레지스터들(34)이 있다면, 그들 모두는 연속적으로 그 부그룹(32) 내의 이전 코드 레지스터(34)에 연결된다. 환언하면, 그 부그룹들(32)의 코드 레지스터들(34)은 첫 번째 코드 레지스터(34.1.1)의 길이보다 더 긴 참조 코드 의 부분을 저장할 수 있다.
또한 하나의 부그룹의 마지막 코드 레지스터를 같은 레지스터 그룹(31)의 다른 부그룹의 첫 번째 코드 레지스터로 연결함에 의해 그 참조 코드의 저장 능력을 늘리는 것도 가능하다. 이러한 종류의 체인 이루기는 도 5에서 화살표들(201)로 나타나 있다. 그 체인 이루기는 같은 코드 레지스터들을 짧은 코드 레지스터들(예를 들면, 각각이 32 비트 길이인 4개의 코드 레지스터들) 또는 긴 코드 레지스터들(예를 들면, 각각이 64 비트 길이인 2개의 코드 레지스터들) 중 어느 하나로서 이용하는 것을 가능하게 하는 좁은 모드에서 이용된다. 하나의 레지스터 그룹(31)의 마지막 부그룹의 마지막 코드 레지스터를 다른 레지스터 그룹(31)의 첫 번째 부그룹의 첫 번째 코드 레지스터로 연결함에 의해 그 참조 코드의 저장 능력을 늘리기 위한 추가적인 선택사항이 가능하다. 이러한 종류의 체인 이루기는 도 2에서 화살표들(202)로 나타나 있다. 그러나, 이 후자의 선택사항은, 프로세싱될 수 있는 코드 빈들의 전체 수를 그것이 줄이지 않을지라도, 그 그룹 상관기 코어 블록(30)이 동시에 프로세싱할 수 있는 독립 채널들의 수를 감소시킨다.
동작 중에 첫 번째 코드 쉬프트 레지스터(33.1)는, 샘플 쉬프트 레지스터(35.1,...,35.m)에 샘플들이 입력되는 것(블록(703))과 같은 율로, 수신되는 하나의 신호의 변조에 사용되는 코드에 대응하는 참조 코드의 비트들을 공급받는다(블록(702)); 말하자면, 그 참조 코드의 하나의 비트가 각 샘플마다 입력된다. 따라서, 그 첫 번째 코드 쉬프트 레지스터(33.1) 및 그 코드 레지스터들(34)의 길이는 그 샘플 쉬프트 레지스터(35.1,..., 35.m)의 길이와 같다. 제1 동작 모드에 관 한 이 예에서 그 데이터 샘플링 주파수는 1xB_CLK, 즉 그 칩핑(chipping) 율의 두 배이다. 따라서, 두 샘플들이 각 칩에 관해 취해진다. 블록(704)에서 그 코드 레지스터(34)가 샘플들로 가득 차 있는지 여부가 조사된다. 그 코드 레지스터(34)가 샘플들로 가득 차 있다면 곱셈 동작이 수행된다(블록(705)). 그렇지 않으면, 블록들(702, 703)의 동작들이 각 참조 코드의 다음 비트 및 다음 샘플을 입력하기 위해 반복된다.
그 곱셈 동작은 곱셈 및 결합 블록(37.1,...37.m)에서 수행되고 그 샘플 쉬프트 레지스터(35.1,...,35.m)의 샘플들 및 각 코드 레지스터(34)의 비트들을 이용하여 다중화 방식으로 비트-특정(bit-specific) 곱셈을 수행한다(블록(705)). 블록(706)에서 첫 번째 코드 쉬프트 레지스터(33.1)에 저장된 코드 비트들의 수가 조사된다. 주어진 수의 코드 비트들이 그 첫 번째 코드 쉬프트 레지스터(33.1)에 저장된 후에, 마지막에서 하나 뺀 코드 레지스터에서의 코드 비트들은 마지막 코드 레지스터로 복사되고, 그 마지막에서 둘 뺀 코드 레지스터에서의 코드 비트들은 마지막에서 하나 뺀 코드 레지스터로 복사되고,..., 첫 번째 코드 레지스터(34.1.1)에서의 코드 비트들은 두 번째 코드 레지스터(34.2.1)로 복사되며 (블록(707)), 그리고 첫 번째 코드 쉬프트 레지스터(33.1)에서의 코드 비트들은 첫 번째 코드 레지스터(34)로 복사된다(블록(708)). 첫 번째 코드 레지스터(34)에서의 저장은 첫 번째 코드 쉬프트 레지스터(33.1)의 길이에 대응하는 수의 샘플들의 저장 후에 수행된다. 그 첫 번째 코드 쉬프트 레지스터(33.1)의 길이가 GC(GC 저장 위치들)로 표시된다면, 그 첫 번째 코드 쉬프트 레지스터(33.1)의 데이터는 매 GC 샘플들 후에 그 코드 레지스터(34)에 복사된다. 그 코드 쉬프트 레지스터(33.1)의 길이는 반드시 그 참조 코드의 길이와 같지는 않으나, 연접 인테그레이션이 그 전체 에폭에 대하여 인테그레이션을 확장함에 의해 그 그룹 상관기 블록(30)의 출력에 적용될 수 있다.
각각의 입력 샘플 이후에 그 곱셈 및 결합 블록(37.1,...,37.m)은 샘플 쉬프트 레지스터(35.1,...,35.m)의 샘플들 및 각 코드 레지스터(34)의 비트들을 이용하여 다중화 방식으로 비트-특정 곱셈을 수행한다(블록(705)). 이 문맥에서, 다중화는 그 샘플 쉬프트 레지스터(35.1,...,35.m)의 샘플들 및 하나의 코드 레지스터(34)가 한 번에 곱해지는 것을 의미하고 그 곱셈 결과들(상관 부분 결과들)은 그 곱셈 및 결합 블록(37.1,...,37.m)에서 결합된다. 이러한 곱셈들 및 결합들은 모든 또는 충분한 수의 코드 레지스터들이 완전히 스캔된 때까지 반복된다. 그 결과는 N 개의 상관 결과들이다. 그 결과, 각 코드 레지스터(34) 및 그 샘플 쉬프트 레지스터(35.1,...,35.m) 사이의 곱셈은 단지 하나의 곱셈자(multiplier)와 단지 하나의 결합자(combiner)만을 이용함으로써 같은 샘플 일련(string)에 대하여 수행될 수 있다. 이 이후에, 그 곱셈은 항상 새로운 샘플이 그 샘플 쉬프트 레지스터(35.1,...,35.m)에 입력된 후에 수행된다. 그 결과, 이것은 곱셈들의 연속이고, 그 곱셈들의 연속에서 그 코드 레지스터(34)의 값은 GC 샘플들에 대하여 동일하나, 그 샘플 쉬프트 레지스터(35.1,...,35.m)는 매 곱셈 후에 1 만큼 쉬프트되고 새로운 샘플이 첫 번째 레지스터에 입력된다. 이러한 식으로, 상관이 그 샘플들 및 그 코드들 사이에 만들어질 수 있다 (코드 레지스터 × 샘플 쉬프트 레지스터). 따라 서, 본 발명에 따른 수신기에서, 그 코드 레지스터(34)의 콘텐트는 매 샘플 후에 변하는 것이 아니고 매 GC 샘플들 후에 변한다.
그 블록(704)은 반드시 필요로 되지는 않지만 그 그룹 상관기 코어 블록(30)은 그 첫 번째 코드 레지스터(33.1)가 샘플들로 가득 차 있기 전이라도 그 출력 값들을 계산하나 그 그룹 상관기 코어 블록(30) 후의 다른 블록들은 그 첫 번째 코드 레지스터(33.1)가 아직 샘플들로 가득 차 있지 않은지 여부를 인식하고 그들의 동작을 시작하지 않는 것, 즉 그 그룹 상관기 코어 블록(30)이 블럭한(block) 이후 다른 블록들은 그 첫 번째 코드 레지스터(33.1)가 샘플들로 가득 차기 전에는 그 그룹 상관기 코어 블록의 출력 값들을 사용하지 않는 것과 같은 방식으로 그 상관기(1.3)의 동작도 또한 구현될 수 있다.
그 그룹 상관기 코어 블록(30)의 출력은 NxMF의 샘플들 - 여기에서 MF는 곱셈 팩터(multiplication factor)이다 - 을 포함한다. 각각의 샘플은 하나의 상관기에 의한 GC 샘플들의 인테그레이션에 대응한다. 환언하면, 각 샘플에 대하여 상관 결과는 각 코드 레지스터로부터 출력된다. 도 6a의 시스템에서 이것은 32개 상관 결과들이 각 입력 샘플에 대하여 출력되는 것을 의미한다. 따라서 그 그룹 상관기 코어 블록(30)의 출력 신호는 선행 기술의 수신기에서의 상관기들(GC 상관기들)의 출력 신호들에 대응한다. 그러나, 한가지 차이점은, 예를 들면, 본 발명에 따른 그 그룹 상관기 코어 블록(30)의 각 샘플은 GC 샘플들의 인테그레이션에 대응한다는 것이다.
상기의 기술된 단계들은 각각의 수신 채널에 대하여, 말하자면, 동시에 수신 되는 각각의 신호에 대하여 수행된다. 그 믹서 그룹(40)의 믹서들에서, 그 그룹 상관기 블록(30)에서 형성된 신호들은 그 주파수 빈 생성기 블록(41)의 신호와 이러한 신호들 사이에 곱셈 동작을 수행하기 위해 믹싱된다. 그 믹서 그룹(40)으로부터, 그 신호들은 연접 인테그레이션 블록(51)에 입력된다. 그 연접 인테그레이션 블록(51)에서, 그 신호 성분들 I 및 Q는, 예를 들면 포착 및 추적을 위해, 예를 들면 전체 에폭의 길이에 대하여, 상기에서 기술된 바와 같이 인테그레이션된다.
2배 주파수 동작
이제, 제2 동작 모드에서의 그 그룹 상관기 코어 블록(30)의 데이터 흐름들의 제어가 도 6b와 관련하여 더 상세하게 기술될 것이다. 제2 동작 모드(2배 주파수 동작 모드, 2xB_CLK)에서 그 그룹 상관기 코어 블록(30)은 넓은 모드(wide mode)로 동작하도록 설정된다. 이것은 각 부그룹(32) 내의 둘 또는 그 이상의 코드 쉬프트 레지스터들(33)이 연속적으로 동작한다는 것을 의미한다. 따라서, 각 레지스터 그룹(31)의 첫 번째 코드 쉬프트 레지스터(33.1)는 참조 코드를 위한 입력으로서 연결되고 그 첫 번째 코드 쉬프트 레지스터(33.1)의 마지막 저장 위치는 다음 코드 쉬프트 레지스터(33.2), 즉 두 번째 코드 쉬프트 레지스터의 첫 번째 저장 위치에 관한 입력을 제공한다. 각각, 두 번째 코드 쉬프트 레지스터(33.2)의 마지막 저장 위치는 다음 코드 쉬프트 레지스터의 첫 번째 저장 위치에 관한 입력을 제공하고, 최종적으로 M-1번째 코드 쉬프트 레지스터(33.2)의 마지막 저장 위치는 M번째 코드 쉬프트 레지스터(33.1)의 첫 번째 저장 위치에 관한 입력을 제공한다. 그러나, 그 도 6b의 예에서 M의 값은 2이다. 따라서, 단지 두 개의 부그룹들(32)만이 나타나 있다.
또한 그 부그룹들을 함께 쌍으로 연결하는 것도 가능하다. 그 선택사항에서, 예를 들면 첫 번째 및 두 번째 부그룹의 코드 레지스터들 및 코드 쉬프트 레지스터들은 그 코드 쉬프트 레지스터 및 코드 레지스터들의 길이를 두 배로 하기 위해 병렬로 연결된다. 각각, (세 번째 및 네 번째 부그룹의 코드 레지스터들이 존재하는 경우) 세 번째 및 네 번째 부그룹의 코드 레지스터들이 병렬로 연결될 수 있고, (다섯 번째 및 여섯 번째 부그룹의 코드 레지스터들이 존재하는 경우) 다섯 번째 및 여섯 번째 부그룹의 코드 레지스터들이 병렬로 연결될 수 있으며, 기타 등등도 가능하다.
각각의 부그룹(32)에서 필요한 경우 코드 쉬프트 레지스터(33)에 저장된 데이터가 같은 부그룹(32)의 첫 번째 코드 레지스터(34.1.1)에 복사될 수 있도록 첫 번째 코드 레지스터(34.1.1)의 입력들이 코드 쉬프트 레지스터들(33)의 출력들에 연결된다. 각각, 두 번째 코드 레지스터(34.2.1)의 입력들은 첫 번째 코드 레지스터(34.1.1)의 출력들에 연결된다. 만약 그 부그룹들(32) 내에 두 개 이상의 코드 레지스터들(34)이 있다면, 그들 모두는 그 부그룹(32) 내에서 이전 코드 레지스터(34)에 연속적으로 연결된다. 환언하면, 그 부그룹들(32)의 코드 쉬프트 레지스터들(33) 및 코드 레지스터들(34)은 그 코드 쉬프트 레지스터들(33)이 첫 번째 행을 형성하고 그 코드 레지스터들(34)이 다른 행들을 형성하고 있는 일종의 코드 레지스터 매트릭스(code register matrix)를 형성한다.
또한 하나의 부그룹의 마지막 코드 레지스터를 다음 레지스터 그룹(31)의 같 은 부그룹의 첫 번째 코드 레지스터로 연결함에 의해 참조 코드의 저장 능력을 늘리는 것도 가능하다. 이러한 종류의 체인 이루기는 도 5에서 화살표들(204)로 나타나 있다. 그러나, 이러한 선택사항은, 프로세싱될 수 있는 코드 빈들의 전체 수를 그것이 감소시키지 않을지라도, 그 그룹 상관기 코어 블록(30)이 동시에 프로세싱할 수 있는 독립 채널들의 수를 감소시킨다.
동작 중에 첫 번째 코드 쉬프트 레지스터(33.1)는, 샘플 쉬프트 레지스터(35.1,..., 35.m)에 샘플들이 입력되는 것과 같은 율로, 수신되는 하나의 신호의 변조에 사용되는 코드에 대응하는 참조 코드의 비트들을 공급받는다; 말하자면, 그 참조 코드의 하나의 비트가 각 샘플마다 입력된다. 따라서, 그 첫 번째 코드 쉬프트 레지스터(33.1)의 길이와 두 번째 코드 쉬프트 레지스터(33.2)의 길이를 더한 것은 첫 번째 샘플 쉬프트 레지스터(35.1)의 길이와 두 번째 샘플 쉬프트 레지스터(35.2)의 길이를 더한 것과 같다. 또한 그 코드 레지스터들(34)의 길이는 첫 번째 코드 쉬프트 레지스터(33.1)의 길이와 두 번째 샘플 코드 레지스터(33.2)의 길이를 합한 것과 같다.
제2 동작 모드에 관한 이 예에서 그 데이터 샘플링 주파수는 2xB_CLK, 즉 그 칩핑 율의 4배이다. 따라서, 네 샘플들이 각 칩에 관해 취해진다. 또한 그 첫 번째 부그룹 및 두 번째 부그룹의 레지스터들은 병렬로 동작하고 있는데, 즉 그 첫 번째 코드 쉬프트 레지스터(33.1) 및 그 두 번째 코드 쉬프트 레지스터(33.2)가 병렬로 연결되고, 첫 번째 부그룹(32.1)의 첫 번째 코드 레지스터 및 두 번째 부그룹(32.2)의 첫 번째 코드 레지스터가 병렬로 연결되고, 기타 등등이다. 주어진 수 의 코드 비트들(=그 첫 번째 코드 쉬프트 레지스터(33.1) 및 두 번째 코드 쉬프트 레지스터(33.2)의 길이에 대응하는 수의 샘플들)이 첫 번째 코드 쉬프트 레지스터(33.1) 및 두 번째 코드 쉬프트 레지스터(33.2)에 저장된 후에, 그 첫 번째 코드 쉬프트 레지스터(33.1) 내의 코드 비트들은 첫 번째 부그룹(32.1)의 첫 번째 코드 레지스터(34.1.1)에 복사되고 그 두 번째 코드 쉬프트 레지스터(33.2) 내의 코드 비트들은 두 번째 부그룹(32.2)의 첫 번째 코드 레지스터(34.1.1)에 복사된다. 만일 그 첫 번째 코드 쉬프트 레지스터(33.1) 및 두 번째 코드 쉬프트 레지스터(33.2)의 길이가 2GC(2xGC 저장 위치들)로 같이 표시되면, 그 첫 번째 코드 쉬프트 레지스터(33.1)의 데이터는 첫 번째 부그룹(32.1)의 첫 번째 코드 레지스터(34)에 복사되고, 각각 그 두 번째 코드 쉬프트 레지스터(33.2)의 데이터는 매 2GC 샘플들 후에 두 번째 부그룹(32.2)의 첫 번째 코드 레지스터(34)에 복사된다. 또한 제2 동작 모드에서, 그 코드 쉬프트 레지스터(33)의 길이가 반드시 그 참조 코드의 길이와 같은 것은 아니지만, 그러나 연접 인테그레이션은 그 인테그레이션을 전체 에폭에 대하여 확장함으로써 그 그룹 상관기 블록(30)의 출력에 적용될 수 있다.
첫 번째 및 두 번째 코드 쉬프트 레지스터들(33.1, 33.2)의 데이터가 적어도 한 번 그 코드 레지스터들(34)로 복사/전송된 후에(즉, 첫 번째 및 두 번째 코드 쉬프트 레지스터들(33.1, 33.2)이 샘플들로 가득 찬다), 그 곱셈자(37.1)는 첫 번째 샘플 쉬프트 레지스터(35.1)의 샘플들 및 첫 번째 부그룹(32.1)의 첫 번째 코드 레지스터(34.1.1)의 비트들을 이용하여 다중화 방식으로 비트-특정 곱셈을 수행하고, 두 번째 샘플 쉬프트 레지스터(35.2)의 샘플들 및 두 번째 부그룹(32.2)의 첫 번째 코드 레지스터(34.1.1)의 비트들을 이용하여 다중화 방식으로 비트-특정 곱셈을 수행한다. 그 곱셈 결과들 (상관 부분 결과들)은 그 곱셈 및 결합 블록들(37.1, 37.2)에서 결합된다. 이러한 곱셈들 및 결합들은 모든 또는 충분한 수의 코드 레지스터들이 완전히 스캔된 때까지 반복된다. 그 결과는 N 개의 상관 결과들이다. 그 결과, 각 코드 레지스터(34) 및 그 샘플 쉬프트 레지스터(35.1,...,35.m) 사이의 곱셈은 단지 하나의 곱셈 및 결합 블록(37)만을 이용함으로써 같은 샘플 일련(string)에 대하여 수행될 수 있다. 이 이후에, 그 곱셈은 항상 새로운 샘플이 그 첫 번째 샘플 쉬프트 레지스터(35.1)에 입력된 후에 수행된다. 그 결과, 이것은 곱셈들의 연속이고, 그 곱셈들의 연속에서 그 코드 레지스터들(34)의 값들은 2GC 샘플들에 대하여 동일하나, 그 첫 번째 및 두 번째 샘플 쉬프트 레지스터들(35.1, 35.2)은 매 곱셈 후에 1 만큼 쉬프트되고 새로운 샘플이 그 첫 번째 코드 쉬프트 레지스터(33.1)에 입력된다.
그 그룹 상관기 코어 블록(30)의 출력은 NxMF/2의 샘플들을 포함하고, 그 NxMF/2 샘플들의 각각은 하나의 상관기에 의한 2GC 샘플들의 인테그레이션에 대응한다.
그 그룹 상관기의 출력 샘플들은 제1 모드에서와 같은 율인 N x MF/2 x 2 x MCLK = N x MF x MCLK의 율로 계산된다. 그 코드 레지스터들(34)로의 새로운 참조 코드 값들의 각 로딩 사이에, 그 그룹 상관기는 N x MF/2 참조 코드들에 관한 2GC 분리 코드 위상들에 대한 상관 결과들, 즉 GC x N x MF 개별 코드 빈들 - 이는 다시 제1 모드에서와 같다 - 을 산출한다. 그 코드 레지스터들(34)로 의 새로운 참조 코드 값들의 각 로딩 사이의 시간은 2xMCLK의 율시 2GC 입력 샘플들이고, 이는 MCLK의 율시 GC 샘플들과 같은, 즉 제1 모드에서와 같은 것이다. 이러한 타이밍 등가들은 그 그룹 상관기를 뒤따르는 블록들의 구현을 훨씬 더 쉽게 만들어 주는데, 이는 왜냐하면 코드 위상들의 전체 수 및 데이터 율이 동일하게 유지되기 때문이다.
상기의 기술된 단계들은 각각의 수신 채널에 대하여, 말하자면, 동시에 수신되는 각각의 신호에 대하여 수행된다. 그 믹서 그룹(40)의 믹서들에서, 그 그룹 상관기 블록(30)에서 형성된 신호들은 그 주파수 빈 생성기 블록(41)의 신호와 이러한 신호들 사이에 곱셈 동작을 수행하기 위해 믹싱된다. 그 믹서 그룹(40)으로부터, 그 신호들은 연접 인테그레이션 블록(51)에 입력된다. 그 연접 인테그레이션 블록(51)에서, 그 신호 성분들 I 및 Q는, 예를 들면 포착 및 추적을 위해, 예를 들면 전체 에폭의 길이에 대하여, 상기에서 기술된 바와 같이 인테그레이션된다.
4배 주파수 동작
이제, 제3 동작 모드에서의 그 그룹 상관기 코어 블록(30)의 데이터 흐름들의 제어가 도 6c와 관련하여 더 상세하게 기술될 것이다. 제3 동작 모드(4배 주파수 동작 모드, 4xB_CLK)에서 그 그룹 상관기 코어 블록(30)은 넓은 모드로 동작하도록 설정된다. 이것은 각 부그룹(32) 내의 둘 또는 그 이상의 코드 쉬프트 레지스터들(33)이 제2 동작 모드에서처럼 연속적으로 동작한다는 것을 의미한다.
각각의 부그룹(32)에서 필요한 경우 코드 쉬프트 레지스터(33)에 저장된 데이터가 같은 부그룹(32)의 첫 번째 코드 레지스터(34.1.1)에 복사될 수 있도록 그 첫 번째 코드 레지스터(34.1.1)의 입력들이 그 코드 쉬프트 레지스터들(33)의 출력들에 연결된다. 이 동작 모드에서 그 첫 번째 코드 레지스터(34.1.1)의 출력들이 두 번째 코드 레지스터에 연결되는 것이 아니고 곱셈 및 결합 블록들(37.1, 37.2)에 직접 연결된다.
동작 중에 첫 번째 코드 쉬프트 레지스터(33.1)는, 샘플 쉬프트 레지스터(35.1,...,35.m)에 샘플들이 입력되는 것과 같은 율로, 수신되는 하나의 신호의 변조에 사용되는 코드에 대응하는 참조 코드의 비트들을 공급받는다; 말하자면, 그 참조 코드의 하나의 비트가 각 샘플마다 입력된다. 따라서, 그 첫 번째 코드 쉬프트 레지스터(33.1)의 길이와 두 번째 코드 쉬프트 레지스터(33.2)의 길이를 더한 것은 첫 번째 샘플 쉬프트 레지스터(35.1)의 길이와 두 번째 샘플 쉬프트 레지스터(35.2)의 길이를 더한 것과 같다. 또한 그 코드 레지스터들(34)의 길이는 첫 번째 코드 쉬프트 레지스터(34.1)의 길이와 두 번째 코드 쉬프트 레지스터(34.2)의 길이를 합한 것과 같다.
제3 동작 모드에 관한 이 예에서 그 데이터 샘플링 주파수는 4xB_CLK, 즉 그 칩핑 율의 8배이다. 따라서, 여덟 샘플들이 각 칩에 관해 취해진다. 주어진 수의 코드 비트들이 첫 번째 코드 쉬프트 레지스터(33.1) 및 두 번째 코드 쉬프트 레지스터(33.2)에 저장된 후에, 그 첫 번째 코드 쉬프트 레지스터(33.1) 내의 코드 비트들은 첫 번째 부그룹(32.1)의 첫 번째 코드 레지스터(34.1.1)에 복사되고 그 두 번째 코드 쉬프트 레지스터(33.2) 내의 코드 비트들은 두 번째 부그룹(32.2)의 첫 번째 코드 레지스터(34.1.1)에 복사된다. 그 코드 레지스터들(34)에서의 저장은 첫 번째 코드 쉬프트 레지스터(33.1) 및 두 번째 코드 쉬프트 레지스터(33.2)의 길이에 대응하는 수의 샘플들의 저장 후에 수행된다. 또한 제3 동작 모드에서, 그 코드 쉬프트 레지스터(33)의 길이가 반드시 그 참조 코드의 길이와 같은 것은 아니나, 그러나 연접 인테그레이션은 그 인테그레이션을 전체 에폭에 대하여 확장함으로써 그 그룹 상관기 블록(30)의 출력에 적용될 수 있다.
첫 번째 및 두 번째 코드 쉬프트 레지스터들(33.1, 33.2)의 데이터가 적어도 한 번 그 코드 레지스터들(34)로 복사/전송된 후에(첫 번째(33.1) 및 두 번째 코드 쉬프트 레지스터(33.2)가 샘플들로 가득 찬다), 그 곱셈 및 결합 블록들(37)은 샘플 쉬프트 레지스터(35.1,...35.m)의 샘플들 및 각 코드 레지스터(34)의 비트들을 이용하여 다중화 방식으로 비트-특정 곱셈을 수행한다. 이 문맥에서, 다중화는 첫 번째(35.1) 및 두 번째 샘플 쉬프트 레지스터(35.2)의 샘플들 및 두 코드 레지스터들(34)이 그 곱셈 및 결합 블록(37.1,...,37.m)의 곱셈자에서 한 번에 곱해지는 것을 의미하고, 그 곱셈 결과들(상관 부분 결과들)은 그 곱셈 및 결합 블록(37.1,...,37.m)의 결합자에서 결합된다. 이러한 곱셈들 및 결합들은 모든 또는 충분한 수의 코드 레지스터들이 완전히 스캔된 때까지 반복된다. 그 결과는 N 개의 상관 결과들이다. 그 결과, 각 코드 레지스터(34) 및 그 샘플 쉬프트 레지스터(35.1,...,35.m) 사이의 곱셈은 단지 하나의 곱셈자와 단지 하나의 결합자만을 이용함으로써 같은 샘플 일련에 대하여 수행될 수 있다. 이 이후에, 그 곱셈은 항상 새로운 샘플이 첫 번째 샘플 쉬프트 레지스터(35.1)에 입력된 후에 수행된다. 그 결과, 이것은 곱셈들의 연속이고, 그 곱셈들의 연속에서 그 코드 레지스터(34) 의 값은 2GC 샘플들에 대하여 동일하나, 그 첫 번째(35.1) 및 두 번째 샘플 쉬프트 레지스터(35.2)는 매 곱셈 후에 1 만큼 쉬프트되고 새로운 샘플이 그 첫 번째 샘플 쉬프트 레지스터(35.1)에 입력된다. 이러한 식으로, 상관이 그 샘플들 및 그 코드들 사이에 만들어질 수 있다 (코드 레지스터 × 샘플 쉬프트 레지스터).
그 그룹 상관기 코어 블록(30)의 출력은 N의 샘플들을 포함하고, N의 샘플들의 각각은 하나의 상관기에 의한 2GC 샘플들의 인테그레이션에 대응한다.
그 그룹 상관기의 출력 샘플들은 제1 모드에서와 같은 율인 N x MF/4 x 4xMCLK = N x MF x MCLK의 율로 계산된다. 그 코드 레지스터들(34)로의 새로운 참조 코드 값들의 각 로딩 사이에, 그 그룹 상관기는 N x MF/4 참조 코드들에 관한 2GC 분리 코드 위상들에 대한 상관 결과들, 즉 GC x N x MF/2 개별 코드 빈들 - 이는 제1 모드에서의 그 수의 절반이다 - 을 산출한다. 그 코드 레지스터들(34)로의 새로운 참조 코드 값들의 각 로딩 사이의 시간은 4xMCLK의 율에서 2GC 입력 샘플들이고, 이는 2xMCLK의 율에서 GC 샘플들과 같은 것, 즉 제1 모드에서보다 두 배 더 빠른 것이다. 모든 모드들 사이에서의 출력 샘플들의 율의 등가는 그 그룹 상관기를 뒤따르는 블록들의 구현 용이성을 고려할 때 매우 중요하다. 코드 빈들의 수와 그 코드 레지스터들의 로딩의 율에서의 차이는 좀 불편하지만, 어떻게 그 그룹 상관기가 이러한 조건들에서조차 동작할 수 있는지를 예시한다. 네 개의 부그룹들을 구현함에 의해 제3 모드에서도 또한 같은 타이밍을 제공하는 그룹 상관기를 만드는 것이 가능했을 것이지만, 그것은 별도의 하드웨어 및 증가되는 비용을 초래할 것이다.
상기의 기술된 단계들은 각각의 수신 채널에 대하여, 말하자면, 동시에 수신되는 각각의 신호에 대하여 수행된다. 그 믹서 그룹(40)의 믹서들에서, 그 그룹 상관기 블록(30)에서 형성된 신호들은 그 주파수 빈 생성기 블록(41)의 신호와 시간-주파수로의 변환(time-to-frequency conversion), 예를 들면 이산 푸리에 변환(discrete Fourier transform)을 수행하기 위해 믹싱된다. 따라서, 시간 도메인(time domain)에서의 정보는 예를 들면 추적 기능에서 사용되는 시간-주파수 도메인에서의 정보로 변환될 수 있다. 그 믹서 그룹(40)으로부터, 그 시간-주파수 도메인의 신호들은 연접 인테그레이션 블록(51)에 입력된다. 그 연접 인테그레이션 블록(51)에서, 그 신호 성분들 I 및 Q는, 예를 들면 포착 및 추적을 위해, 예를 들면 전체 에폭의 길이에 대하여, 상기에서 기술된 바와 같이 인테그레이션된다.
본 발명에 따른 그룹 상관기 코어 블록(30)은 다른 목적들을 위하여 넓게 구성가능한(widely confirgurable) 구조를 허용한다. 몇 가지의 그 구성 파라미터들(configuration parameters)은 코드 입력들의 수(채널들의 수), 코드 레지스터들(34)의 수, 코드 쉬프트 레지스터들(33)의 길이, 병렬 쉬프트 레지스터들의 수, 및 그룹 상관기 코어 블록들(30)의 수이다. 또한 그 기본 오실레이터의 주파수는 몇몇 응용 프로그램들에서 변할 수도 있다.
표 2에서는 요구되는 그룹 상관기 코어 블록들(30)의 수가 다른 요구조건들의 함수로서 나타나 있다. 각각의 그룹 상관기 코어 블록들(30)은 4 채널 수신 능력(capability)에 관하여 네 독립 참조 코드들을 생성하고, 각각의 레지스터 그룹(31)에 네 코드 레지스터들(34)이 있으며, 각각의 코드 쉬프트 레지스터(33)는 64 샘플들 길이인 것을 가정한다.
그룹 상관기 블록들(Group correlator blocks) 커버되는 샘플들 (Samples covered) GPS 범위 (GPS range) 갈릴레오 범위 (Galileo range) 추적되는 위성들 (satellites tracked)
1 1024 0.50 0.06 4
2
4
6
2048
4096
6144
1.00
2.00
3.00
0.13
0.25
0.38
8
16
24
8
10
12
14
8192
10240
12288
14336
4.00
5.00
6.01
7.01
0.50
0.63
0.75
0.88
32
40
48
56
16
18
16384
18432
8.01
9.01
1.00
1.13
64
72
GPS 범위 열은 그 상관기가 동시에 다룰 수 있는 GPS 코드 길이를 나타내고, 갈릴레오 범위는 그 상관기가 단일 탐색에서 다룰 수 있는 갈릴레오 코드 길이를 나타낸다. 표 2로부터 그 그룹 상관기 코어 블록들(30)의 수가 1일 때, 그 수신기(1)는 GPS 코드의 절반을 탐색할 수 있음(GPS 범위 값은 0.5이다; 표2의 첫 번째 행)을 알 수 있다. 그 그룹 상관기 코어 블록들(30)의 수가 2 또는 그 이상일 때, 그 수신기(1)는 완전한 GPS 코드들을 탐색할 수 있다(그 GPS 범위 값은 1보다 더 크거나 또는 1과 같다; 표 2의 두 번째, 세 번째 및 네 번째 줄들). 그 그룹 상관기 코어 블록들(30)의 수가 8에서 14 사이일 때(8, 14 포함), 그 수신기(1)는 네 GPS 위성들(GPS 범위 값이 4 또는 그보다 더 크다) 또는 갈릴레오 코드의 절반(갈릴레오 범위 값은 0.5에서 1 사이이다) 중 어느 하나를 탐색할 수 있다. 그 그룹 상관기 코어 블록들(30)의 수가 16 또는 그 이상일 때, 그 수신기(1)는 완전한 갈릴레오 코드(그 갈릴레오 범위 값은 1보다 더 크거나 또는 1과 같다), 또는 여덟 또는 그 이상의 GPS 위성들(그 GPS 범위 값은 8보다 더 크거나 또는 8과 같다)을 탐색할 수 있다.
표 3에서 그 구성 파라미터들의 몇 가지 실제적인 예들이 제시된다.
동작 모드 GPS 포착 (제1 모드) 갈릴레오 포착 (제2 모드) 추적 (제3 모드)
데이터 샘플링 주파수
그룹 상관기 길이
하나의 그룹 상관기 블록에서의 다중화 팩터
2.046
64
16
4.092
128
8
8.184
128
4
MHz
샘플들
GC/샘플
채널 상관 커버리지
채널 상관 커버리지 시간(coveragein time)
256
125.1
256
62.6
128
1.3
샘플들
us
하나의 그룹 상관기 블록에서의 상관기들의 최대 수
하나의 그룹 상관기 블록에서의 최대 상관 커버리지 시간(coveragein time)
1024

500.5
1024

250.2
512

125.1
샘플들

us
게다가, 본 발명은 예를 들면 수신기에 덧붙여진 모듈로서 구현될 수 있다. 이러한 모듈 구조의 하나의 방도는 분리 모듈(들)로서 그 그룹 상관기 블록(들)(20)을 구현하는 것이다. 그러나, 본 발명과 관련하여 다른 종류의 모듈 구조들이 또한 구현될 수 있다는 것은 명백하다.
도 8은 GNSS 시스템의 단순화된 모델을 묘사한다. 그것은 분산 스펙트럼 변조 신호들을 전송하는 다수의 위성들(SV)을 포함한다. 그 위성들은 지구(E) 주위로 일정 궤도들 상에서 움직인다. 그 수신기(1)는 그 신호들을 수신하고 예를 들면 그 수신기(1)의 위치를 결정하기 위하여 상기 기술된 동작들을 수행할 수 있다.
게다가, 본 발명이 오로지 상기-제시된 구현들에만 한정되는 것은 아니고 그것은 덧붙여진 청구항들의 범위 내에서 변형될 수 있다.

Claims (16)

  1. 수신되는 분산 스펙트럼 신호를 가지고 상관을 수행하는 상관기(30)에 있어서, 상기 상관기는 적어도
    - 수신 신호의 샘플들(samples)을 입력하기 위한 입력(30.1);
    - 적어도 하나의 참조 코드를 입력하기 위한 적어도 하나의 참조 코드 입력(30.2);
    - 상관기 수단으로서,
    - 상기 신호 샘플들을 수신하기 위한 샘플 쉬프트 레지스터(35.1,..., 35.m);
    - 적어도 하나의 참조 코드의 적어도 일부를 수신하기 위한 코드 쉬프트 레지스터(33); 및 상기 코드 쉬프트 레지스터(33)로부터 데이터를 수신하기 위한 코드 레지스터(34);를 포함하는 다수의 레지스터 그룹들(31);을 포함하는 상기 상관기 수단;을 포함하고,
    또한 상기 상관기(30)는
    - 재구성가능한 방식으로 상기 레지스터 그룹들(31)의 요소들(33, 34) 사이에 연결들을 배열하기 위한 구성 요소들(configuration elements)(201, 202, 203);을 포함하는 것을 특징으로 하는 상관기(30).
  2. 제1항에 있어서,
    상기 다수의 레지스터 그룹들(31)은 적어도 두 부그룹들(32)을 포함하고, 각 부그룹(32)은
    - 코드 쉬프트 레지스터(33); 및
    - 적어도 두 코드 레지스터들(34)을 포함하고,
    상기 구성 요소들은
    - 병렬로 또는 서로에 대하여 독립적으로 동작하기 위하여 상기 적어도 두 부그룹들(32)의 코드 쉬프트 레지스터들(33)을 배열하기 위한 신호 커넥터들(signal connectors); 및
    - 병렬로, 직렬로, 또는 서로에 대하여 독립적으로 동작하기 위하여 상기 부그룹들(32)의 상기 적어도 두 코드 레지스터들(34)을 배열하기 위한 신호 커넥터들;을 포함하는 것을 특징으로 하는 상관기(30).
  3. 제1항 또는 제2항 중 어느 한 항에 있어서,
    상기 상관기(30)는 적어도 첫 번째 레지스터 그룹(31) 및 두 번째 레지스터 그룹(31)을 포함하는 것, 그리고 상기 첫 번째 레지스터 그룹(31)은 첫 번째 분산 스펙트럼 신호를 가지고 상관을 수행하도록 적응되고 상기 두 번째 레지스터 그룹(31)은 두 번째 분산 스펙트럼 신호를 가지고 상관을 수행하도록 적응되는 것을 특징으로 하는 상관기(30).
  4. 제1항 또는 제2항 중 어느 한 항에 있어서,
    상기 상관기(30)는 적어도 첫 번째 레지스터 그룹(31) 및 두 번째 레지스터 그룹(31)을 포함하고, 그리고 상기 첫 번째 및 두 번째 레지스터 그룹(31)은 같은 분산 스펙트럼 신호를 가지고 상관을 수행하기 위해 직렬로 연결되는 것을 특징으로 하는 상관기(30).
  5. 제1항 또는 제2항에 있어서,
    상기 상관기(30)는 상기 코드 쉬프트 레지스터(33)의 데이터를 상기 코드 레지스터(34)로 전송하기 위한 수단, 상기 샘플 쉬프트 레지스터(35.1,..., 35.m)에 새로운 샘플을 저장하기 위한 수단 그리고 상기 새로운 샘플의 저장 후에 새로운 참조 코드 데이터를 상기 코드 쉬프트 레지스터(33)로 읽어 들이기 위한 수단을 포함하는 것, 그리고 상기 코드 쉬프트 레지스터(33), 코드 레지스터(34) 및 샘플 쉬프트 레지스터(35.1,...,35.m)는 길이에 있어서 같은 것을 특징으로 하는 상관기(30).
  6. 제5항에 있어서,
    상기 샘플 쉬프트 레지스터(35.1,..., 35.m) 및 상기 코드 쉬프트 레지스터(33)는 결정된 길이를 가지고, 상기 코드 쉬프트 레지스터(33)의 데이터를 상기 코드 레지스터(34)로 전송하기 위한 상기 수단은 상기 길이에 대응하는 수의 샘플들의 형성 후에 상기 코드 쉬프트 레지스터(33)의 데이터를 상기 코드 레지스터(34)로 전송하도록 적응되는 것을 특징으로 하는 상관기(30).
  7. 분산 스펙트럼 신호를 수신하는 수신기(1)에 있어서, 상기 수신기는 적어도
    - 수신 신호의 샘플들을 형성하는 샘플링 수단(1.1);
    - 상기 수신된 분산 스펙트럼 신호의 샘플들을 가지고 상관을 수행하는 상관기(30);
    - 상기 상관기(30)에 대하여 적어도 하나의 참조 코드를 생성하는 코드 생성기 블록(60);
    - 상관된 신호들을 믹싱하는(mixing) 믹서 블록(mixer block, 40); 및
    - 상기 믹싱된 신호들을 인테그레이션(integration)하는 인테그레이터 블록(integrator block, 50);을 포함하고,
    상기 상관기(30)는
    - 상기 신호 샘플들을 수신하기 위한 샘플 쉬프트 레지스터(35.1,..., 35.m);
    - 적어도 하나의 참조 코드의 적어도 일부를 수신하기 위한 코드 쉬프트 레지스터(33); 및 상기 코드 쉬프트 레지스터(33)로부터 데이터를 수신하기 위한 코드 레지스터(34);를 포함하는 다수의 레지스터 그룹들(31);을 포함하고,
    또한 상기 수신기(1)의 상기 상관기(30)는
    - 재구성가능한 방식으로 상기 레지스터 그룹들(31)의 요소들(33, 34) 사이에 연결들을 배열하기 위한 구성 요소들(201, 202, 203);을 포함하는 것을 특징으로 하는 수신기(1).
  8. 제7항에 있어서,
    상기 다수의 레지스터 그룹들(31)은 적어도 두 부그룹들(32)을 포함하고, 각 부그룹(32)은
    - 코드 쉬프트 레지스터(33); 및
    - 적어도 두 코드 레지스터들(34)을 포함하고,
    상기 구성 요소들은
    - 병렬로 또는 서로에 대하여 독립적으로 동작하기 위하여 상기 적어도 두 부그룹들(32)의 코드 쉬프트 레지스터들(33)을 배열하기 위한 신호 커넥터들; 및
    - 병렬로, 직렬로, 또는 서로에 대하여 독립적으로 동작하기 위하여 상기 부그룹들(32)의 상기 적어도 두 코드 레지스터들(34)을 배열하기 위한 신호 커넥터들;을 포함하는 것을 특징으로 하는 수신기(1).
  9. 제8항에 있어서,
    상기 믹서 블록(40)은 다수의 도플러 주파수 빈들(Doppler frequency bins)을 생성하기 위한 주파수 빈 생성기 블록(41)을 포함하는 것을 특징으로 하는 수신기(1).
  10. 제9항에 있어서,
    인테그레이터 블록들(50)의 수는 상기 주파수 빈 생성기 블록(41)에 의해 생성된 도플러 주파수 빈들의 수와 같은 것을 특징으로 하는 수신기(1).
  11. 제7항 내지 제10항 중 어느 한 항에 있어서,
    상기 코드 생성기 블록(60)은 적어도 두 개의 다른 참조 코드들을 생성하는 수단을 포함하는 것을 특징으로 하는 수신기(1).
  12. 분산 스펙트럼 변조 신호를 수신하는 수신기(1)를 포함하는 전기적 장치에 있어서, 상기 전기적 장치는 적어도
    - 수신 신호의 샘플들을 형성하는 샘플링 수단(1.1);
    - 상기 수신된 분산 스펙트럼 신호의 샘플들을 가지고 상관을 수행하는 상관기(30);
    - 상기 상관기(30)에 대하여 적어도 하나의 참조 코드를 생성하는 코드 생성기 블록(60);
    - 상관된 신호들을 믹싱하는 믹서 블록(40); 및
    - 상기 믹싱된 신호들을 인테그레이션하는 인테그레이터 블록(50);을 포함하고,
    상기 상관기(30)는
    상기 신호 샘플들을 수신하기 위한 샘플 쉬프트 레지스터(35.1,..., 35.m); 적어도 하나의 참조 코드의 적어도 일부를 수신하기 위한 코드 쉬프트 레지스터(33), 및 상기 코드 쉬프트 레지스터(33)로부터 데이터를 수신하기 위한 코드 레지스터(34)를 포함하는 다수의 레지스터 그룹들(31);을 포함하는 상관기 수단을 포함하고,
    또한 상기 전기적 장치의 상기 상관기(30)는
    - 재구성가능한 방식으로 상기 레지스터 그룹들(31)의 요소들(33, 34) 사이에 연결들을 배열하기 위한 구성 요소들(201, 202, 203);을 포함하는 것을 특징으로 하는 전기적 장치.
  13. 분산 스펙트럼 변조 신호를 송신하는 송신국(transmitting station), 분산 스펙트럼 변조 신호를 수신하는 수신기(1)를 포함하는 시스템에 있어서, 상기 수신기는 적어도
    - 수신 신호의 샘플들을 형성하는 샘플링 수단(1.1);
    - 상기 수신된 분산 스펙트럼 신호의 샘플들을 가지고 상관을 수행하는 상관기(30);
    - 상기 상관기(30)에 대하여 적어도 하나의 참조 코드를 생성하는 코드 생성기 블록(60);
    - 상관된 신호들을 믹싱하는 믹서 블록(40); 및
    - 상기 믹싱된 신호들을 인테그레이션하는 인테그레이터 블록(50);을 포함하고,
    상기 상관기(30)는
    상기 신호 샘플들을 수신하기 위한 샘플 쉬프트 레지스터(35.1,..., 35.m); 적어도 하나의 참조 코드의 적어도 일부를 수신하기 위한 코드 쉬프트 레지스터(33), 및 상기 코드 쉬프트 레지스터(33)로부터 데이터를 수신하기 위한 코드 레지스터(34)를 포함하는 다수의 레지스터 그룹들(31);을 포함하는 상관기 수단을 포함하고,
    상기 수신기(1)의 상기 상관기(30)는
    - 재구성가능한 방식으로 상기 레지스터 그룹들(31)의 요소들(33, 34) 사이에 연결들을 배열하기 위한 구성 요소들(201, 202, 203);을 포함하는 것을 특징으로 하는 시스템.
  14. 수신된 분산 스펙트럼 신호를 가지고 상관을 수행하는 상관기(1.3)에 있어서, 상기 상관기(1.3)는 적어도
    - 수신 신호의 샘플들을 입력하기 위한 입력(30.1);
    - 적어도 하나의 참조 코드를 입력하기 위한 적어도 하나의 참조 코드 입력(30.2);
    - 상관기 수단으로서,
    - 상기 신호 샘플들을 수신하기 위한 샘플 쉬프트 레지스터(35.1,..., 35.m);
    - 적어도 하나의 참조 코드의 적어도 일부를 수신하기 위한 코드 쉬프트 레지스터(33); 및 상기 코드 쉬프트 레지스터(33)로부터 데이터를 수신하기 위한 코드 레지스터(34);를 포함하는 다수의 레지스터 그룹들(31);을 포함하는 상기 상관기 수단;을 포함하고,
    또한 상기 상관기 수단은
    - 재구성가능한 방식으로 상기 레지스터 그룹들(31)의 요소들(33, 34) 사이에 연결들을 배열하기 위한 구성 요소들(201, 202, 203)을 포함하는 것을 특징으로 하는 상관기.
  15. 상관기(30)에서 수신된 분산 스펙트럼 신호를 가지고 상관을 수행하는 방법에 있어서, 상기 방법은 적어도
    - 수신 신호의 샘플들을 입력하는 단계;
    - 적어도 하나의 참조 코드를 입력하는 단계;
    - 적어도 하나의 참조 코드의 적어도 일부를 코드 쉬프트 레지스터(33)로 수신하는 단계; 및
    - 상기 코드 쉬프트 레지스터(33)로부터 데이터를 코드 레지스터(34)로 수신하는 단계;를 포함하고,
    또한 상기 방법은
    코드 쉬프트 레지스터(33) 및 코드 레지스터(34)를 포함하는 다수의 레지스터 그룹들(31)의 요소들(33, 34) 사이에 연결들을 배열하기 위한 상기 상관기(30)의 상관 수단을 구성하는 단계를 포함하는 것을 특징으로 하는 방법.
  16. 컴퓨터 소프트웨어를 기록한 컴퓨터-판독가능 기록 매체에 있어서, 상기 컴퓨터 소프트웨어는,
    - 수신 신호의 샘플들을 입력하는 것;
    - 적어도 하나의 참조 코드를 입력하는 것;
    - 적어도 하나의 참조 코드의 적어도 일부를 코드 쉬프트 레지스터(33)로 수신하는 것;
    - 상기 코드 쉬프트 레지스터(33)로부터 데이터를 코드 레지스터(34)로 수신하는 것;을 위한 명령들을 포함하고,
    상기 컴퓨터 소프트웨어는, 코드 쉬프트 레지스터(33) 및 코드 레지스터(34)를 포함하는 다수의 레지스터 그룹들(31)의 요소들(33, 34) 사이에 연결들을 배열하기 위한 명령들을 또한 포함하는 것을 특징으로 하는 컴퓨터-판독가능 기록 매체.
KR1020087015094A 2005-12-23 2005-12-23 분산 스펙트럼 신호의 수신에서의 상관 수행 KR100995542B1 (ko)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/FI2005/050485 WO2007071810A1 (en) 2005-12-23 2005-12-23 Performing a correlation in reception of a spread spectrum signal

Publications (2)

Publication Number Publication Date
KR20080077219A KR20080077219A (ko) 2008-08-21
KR100995542B1 true KR100995542B1 (ko) 2010-11-19

Family

ID=38188305

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020087015094A KR100995542B1 (ko) 2005-12-23 2005-12-23 분산 스펙트럼 신호의 수신에서의 상관 수행

Country Status (7)

Country Link
US (1) US7852907B2 (ko)
EP (1) EP1964275A4 (ko)
JP (1) JP2009520968A (ko)
KR (1) KR100995542B1 (ko)
CN (1) CN101341662B (ko)
TW (1) TW200733588A (ko)
WO (1) WO2007071810A1 (ko)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007071810A1 (en) * 2005-12-23 2007-06-28 Nokia Corporation Performing a correlation in reception of a spread spectrum signal
WO2008069925A1 (en) * 2006-12-01 2008-06-12 Fox Interactive Media Labs Methods, systems, and computer program products for providing uplink collision identification
JP4488066B2 (ja) * 2007-11-22 2010-06-23 セイコーエプソン株式会社 衛星信号受信装置および計時装置
US9031006B2 (en) * 2008-03-13 2015-05-12 Samsung Electronics Co., Ltd Apparatus and method for using guard band as data subcarrier in communication system supporting frequency overlay
TWI411247B (zh) * 2009-02-17 2013-10-01 Realtek Semiconductor Corp PN sequence correlation calculation method and circuit
US8149900B2 (en) * 2009-04-02 2012-04-03 Mediatek Inc. Low complexity acquisition method for GNSS
US8520719B2 (en) * 2009-05-29 2013-08-27 Qualcomm Incorporated Multiple-mode correlator
CN101908905B (zh) 2009-06-05 2014-01-01 瑞昱半导体股份有限公司 伪随机序列相关性的运算方法及电路
US8855171B2 (en) * 2011-08-10 2014-10-07 Qualcomm Incorporated Satellite signal acquisition
US9124356B2 (en) 2011-12-14 2015-09-01 Northrop Grumman Guidance And Electronics Company, Inc. Reconfigurable correlator for a navigation system
US9130786B2 (en) * 2013-03-15 2015-09-08 Qualcomm Incorporated Device and method for computing a channel estimate
KR101467348B1 (ko) * 2013-11-07 2014-12-04 성균관대학교산학협력단 부분상관함수에 기초한 tmboc(6,1,4/33) 신호를 위한 비모호 상관함수 생성 방법, tmboc 신호 추적 장치 및 이를 이용한 위성 항법 신호 수신 시스템
US9541651B2 (en) * 2014-05-01 2017-01-10 Iposi, Inc. Tapered coherent integration time for a receiver of a positioning system
ES2962587T3 (es) * 2016-02-17 2024-03-20 Septentrio N V Receptor para navegación por satélite
GB2580583B (en) * 2018-11-20 2022-01-12 Imagination Tech Ltd GNSS correlator

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61153764A (ja) * 1984-12-27 1986-07-12 Canon Inc 分散型デジタル相関器
US6125325A (en) * 1996-04-25 2000-09-26 Sirf Technology, Inc. GPS receiver with cross-track hold
US5897605A (en) * 1996-03-15 1999-04-27 Sirf Technology, Inc. Spread spectrum receiver with fast signal reacquisition
US6041280A (en) * 1996-03-15 2000-03-21 Sirf Technology, Inc. GPS car navigation system
AU729697B2 (en) * 1996-04-25 2001-02-08 Sirf Technology, Inc. Spread spectrum receiver with multi-bit correlator
US6047017A (en) * 1996-04-25 2000-04-04 Cahn; Charles R. Spread spectrum receiver with multi-path cancellation
US6198765B1 (en) * 1996-04-25 2001-03-06 Sirf Technologies, Inc. Spread spectrum receiver with multi-path correction
JP3499474B2 (ja) * 1998-08-28 2004-02-23 松下電器産業株式会社 同期捕捉装置および同期捕捉方法
US9020756B2 (en) * 1999-04-23 2015-04-28 Global Locate, Inc. Method and apparatus for processing satellite positioning system signals
WO2000069086A1 (en) * 1999-05-10 2000-11-16 Sirius Communications N.V. Method and apparatus for high-speed software reconfigurable code division multiple access communication
US6421372B1 (en) * 1999-11-10 2002-07-16 Itt Manufacturing Enterprises, Inc. Sequential-acquisition, multi-band, multi-channel, matched filter
US6429811B1 (en) * 2000-02-15 2002-08-06 Motorola, Inc. Method and apparatus for compressing GPS satellite broadcast message information
JP2002176384A (ja) * 2000-12-07 2002-06-21 Hitachi Kokusai Electric Inc 受信機
US6775319B2 (en) * 2001-08-16 2004-08-10 Motorola, Inc. Spread spectrum receiver architectures and methods therefor
US7113540B2 (en) * 2001-09-18 2006-09-26 Broadcom Corporation Fast computation of multi-input-multi-output decision feedback equalizer coefficients
GB2397989B (en) * 2001-11-02 2004-12-15 Toshiba Res Europ Ltd Receiver processing system
US7039134B1 (en) * 2002-01-22 2006-05-02 Comsys Communication & Signal Processing Ltd. Reduced complexity correlator for use in a code division multiple access spread spectrum receiver
TWI325239B (en) * 2002-04-12 2010-05-21 Interdigital Tech Corp Node-b/base station, method for increasing capacity of base station and method for utilizing path searcher hardware for node-b/base station
US7050485B2 (en) * 2002-05-07 2006-05-23 Koninklijke Philips Electronics N.V. Iterative CDMA phase and frequency acquisition
EP1441449A1 (en) * 2003-01-27 2004-07-28 Agilent Technologies, Inc. - a Delaware corporation - Programmable acquisition module for multi-standard CDMA based receivers
KR100546318B1 (ko) * 2003-02-22 2006-01-26 삼성전자주식회사 서로 다른 통신모드를 지원하는 듀얼 모드 모뎀의 통합 셀탐색기
FI20045147A (fi) * 2004-04-23 2005-10-24 Nokia Corp Hajaspektrimoduloidun signaalin vastaanotto
WO2007071810A1 (en) * 2005-12-23 2007-06-28 Nokia Corporation Performing a correlation in reception of a spread spectrum signal

Also Published As

Publication number Publication date
EP1964275A4 (en) 2012-03-28
WO2007071810A1 (en) 2007-06-28
EP1964275A1 (en) 2008-09-03
JP2009520968A (ja) 2009-05-28
CN101341662A (zh) 2009-01-07
CN101341662B (zh) 2011-01-26
KR20080077219A (ko) 2008-08-21
US7852907B2 (en) 2010-12-14
US20070153882A1 (en) 2007-07-05
TW200733588A (en) 2007-09-01

Similar Documents

Publication Publication Date Title
KR100995542B1 (ko) 분산 스펙트럼 신호의 수신에서의 상관 수행
KR100806425B1 (ko) 순차적-포착, 다-대역, 다-채널, 정합필터
CA2328310C (en) Fast acquisition, high sensitivity gps receiver
US6967992B1 (en) Method and apparatus for receiving GPS/GLONASS signals
US7526015B2 (en) Parallel correlator implementation using hybrid correlation in spread-spectrum communication
CN101802634B (zh) Gnss信号处理器
US7898475B2 (en) GNSS receiver with reduced storage requirements
EP2051092B1 (en) Multiphase code generator and GNSS receiver
US7558312B2 (en) Parallel correlator implementation using block integration for spread-spectrum communication
EP2028762A1 (en) Device and method for searching satellite signals
CN1947350B (zh) 一种用于接收扩展频谱已调制信号的接收器和方法
US7342953B2 (en) Synchronization detection circuit
CN100433572C (zh) 在扩频通信中用混合相关法实现并行相关器的方法和装置

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: 20131025

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20141028

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20151027

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20161027

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20171026

Year of fee payment: 8

LAPS Lapse due to unpaid annual fee