KR101812325B1 - Acquisition method for precision code based on memory array and receiver for acquiring precision code based on memory array - Google Patents

Acquisition method for precision code based on memory array and receiver for acquiring precision code based on memory array Download PDF

Info

Publication number
KR101812325B1
KR101812325B1 KR1020160068561A KR20160068561A KR101812325B1 KR 101812325 B1 KR101812325 B1 KR 101812325B1 KR 1020160068561 A KR1020160068561 A KR 1020160068561A KR 20160068561 A KR20160068561 A KR 20160068561A KR 101812325 B1 KR101812325 B1 KR 101812325B1
Authority
KR
South Korea
Prior art keywords
code
local
value
codes
fft
Prior art date
Application number
KR1020160068561A
Other languages
Korean (ko)
Other versions
KR20170136722A (en
Inventor
윤석호
채근홍
Original Assignee
성균관대학교산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 성균관대학교산학협력단 filed Critical 성균관대학교산학협력단
Priority to KR1020160068561A priority Critical patent/KR101812325B1/en
Publication of KR20170136722A publication Critical patent/KR20170136722A/en
Application granted granted Critical
Publication of KR101812325B1 publication Critical patent/KR101812325B1/en

Links

Images

Classifications

    • 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

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)
  • Synchronisation In Digital Transmission Systems (AREA)

Abstract

메모리 어레이에 기반한 P 코드 획득 방법은 수신기가 수신한 입력 신호를 복수의 수신 코드로 구분하는 단계, 상기 수신기가 상기 복수의 수신 코드 각각에 대한 FFT 연산값을 제1 메모리 열에 저장하는 단계, 상기 수신기가 생성한 연속된 로컬 코드를 복수의 로컬 코드로 구분하는 단계, 상기 수신기가 상기 복수의 로컬 코드 각각에 대한 FFT 연산값을 제2 메모리 열에 저장하는 단계, 상기 수신기가 상기 복수의 로컬 코드 중 상기 연속된 로컬 코드에서 이웃하는 적어도 하나의 로컬 코드의 쌍에 대한 FFT 연산값을 합산한 값을 결정하는 단계, 상기 수신기가 상기 복수의 수신 코드 각각에 대해 대응하는 상기 적어도 하나의 로컬 코드의 쌍에 대한 합산한 값에 대한 상관 연산을 수행하고, 상관 연산의 결과값을 중첩하는 단계 및 상기 수신기가 상기 중첩된 결과값이 임계값을 넘는지를 기준으로 동기화 지점을 결정하는 단계를 포함한다.A method for acquiring a P-code based on a memory array includes dividing an input signal received by a receiver into a plurality of received codes, storing the FFT operation value for each of the plurality of received codes in a first memory column, Dividing the continuous local code generated by the local code into a plurality of local codes, storing the FFT operation value for each of the plurality of local codes in a second memory column, Determining a value of the sum of the FFT operation values for a pair of neighboring at least one local code in a successive local code, and determining the value of the sum of the FFT operation values for a pair of the at least one local code corresponding to each of the plurality of received codes Performing a correlation operation on the sum of the correlation values and superimposing the result of the correlation operation, The result includes the step of determining the value of the synchronization point, based on whether more than a threshold value.

Figure R1020160068561
Figure R1020160068561

Description

메모리 어레이에 기반한 P 코드 획득 방법 및 메모리 어레이에 기반하여 P 코드를 획득하는 수신기{ACQUISITION METHOD FOR PRECISION CODE BASED ON MEMORY ARRAY AND RECEIVER FOR ACQUIRING PRECISION CODE BASED ON MEMORY ARRAY}BACKGROUND OF THE INVENTION 1. Field of the Invention [0001] The present invention relates to a P-code acquisition method based on a memory array and a receiver that acquires a P-code based on a memory array. [0002]

이하 설명하는 의사잡음코드 중 P 코드를 획득하는 기법에 관한 것이다.And a technique for obtaining a P code among the pseudo noise codes described below.

범지구위성항법시스템은 (Global navigation satellite systems: GNSSs) 우주의 인공위성을 이용하여 지상에 있는 물체의 위치정보를 제공하는 시스템이다. 범지구측위시스템은 (global positioning system: GPS) 가장 대중적인 GNSS로 1970년대 초 군사 목적으로 미국 국방부가 개발하여 운영하고 있다. GPS는 초기에 군사목적으로 개발되었으나, 현재는 일부 신호가 민간에게 공개되어 사용되고 있으며, 교통수단의 위치 안내나 긴급구조와 같은 목적뿐만 아니라 농업과 측량 등에서 다방면의 용도로 활용되고 있다. Global navigation satellite systems (GNSSs) are systems that provide information on the location of objects on the ground using space satellites. The global positioning system (GPS) is the most popular GNSS system developed and operated by the US Department of Defense in the early 1970s for military purposes. Although GPS was originally developed for military purposes, some signals are currently being used by the private sector, and are being used for various purposes in agriculture and surveying as well as for location guidance and emergency rescue.

GPS 신호는 의사잡음코드가 (pseudo random noise code: PRN code) 곱해져서 전송되며, GPS 신호의 PRN 코드는 크게 두 가지 종류로 나눌 수 있다. C/A (coarse acquisition) 코드는 표준 위치 서비스를 (standard positioning service) 제공하며, 칩 전송률은 1.023 MHz이고 주기는 1ms이다. P (precision) 코드는 정밀 위치 서비스를 제공하며, 칩 전송률이 10.23MHz이고 주기는 7일이다. P 코드는 C/A 코드에 비하여 칩 전송률이 높고 주기가 길기 때문에, P 코드를 이용한 신호는 더 높은 측위 정확도를 제공하며, 재밍과 (jamming) 스푸핑에(spoofing) 강인하다는 특징을 가진다.The GPS signal is multiplied by a pseudo random noise code (PRN code), and the PRN code of the GPS signal can be divided into two types. The coarse acquisition (C / A) code provides a standard positioning service, with a chip rate of 1.023 MHz and a period of 1 ms. The P (precision) code provides precise location services, a chip rate of 10.23 MHz, and a cycle of 7 days. Since the P code has a higher chip rate and a longer cycle time than the C / A code, the signal using the P code provides higher positioning accuracy, and is characterized in that it is robust to jamming and spoofing.

P코드는 매우 긴 주기를 가지고 있기 때문에 코드 획득에 오랜 시간이 소모된다. 보다 빠르게 P 코드를 획득하기 위하여 C/A 코드의 코드 획득을 한 후, 핸드 오버를 (hand over) 통해 최종적으로 P 코드를 획득하는 방식이 존재한다. 또한 C/A 코드의 코드 획득을 사용하지 않고, P 코드만을 사용하여 코드 획득하는 직접 코드 획득 기법 (direct acquisition: DA) 기법이 제안되었다.P code has a very long cycle, so it takes a long time to acquire the code. There is a method of acquiring the code of the C / A code to obtain the P code more quickly, and finally obtaining the P code through the handover. Also, a direct acquisition (DA) technique has been proposed in which code acquisition is performed using only P code without using code acquisition of C / A code.

미국등록특허 US6,330,271호US Patent No. 6,330,271

이하 설명하는 기술은 수신기에서 P 코드 획득을 위한 기법을 제공하고자 한다.The technique described below is intended to provide a technique for P code acquisition at a receiver.

메모리 어레이에 기반한 P 코드 획득 방법은 수신기가 수신한 입력 신호를 복수의 수신 코드로 구분하는 단계, 상기 수신기가 상기 복수의 수신 코드 각각에 대한 FFT 연산값을 제1 메모리 열에 저장하는 단계, 상기 수신기가 생성한 연속된 로컬 코드를 복수의 로컬 코드로 구분하는 단계, 상기 수신기가 상기 복수의 로컬 코드 각각에 대한 FFT 연산값을 제2 메모리 열에 저장하는 단계, 상기 수신기가 상기 복수의 로컬 코드 중 상기 연속된 로컬 코드에서 이웃하는 적어도 하나의 로컬 코드의 쌍에 대한 FFT 연산값을 합산한 값을 결정하는 단계, 상기 수신기가 상기 복수의 수신 코드 각각에 대해 대응하는 상기 적어도 하나의 로컬 코드의 쌍에 대한 합산한 값에 대한 IFFT 연산을 수행하고, IFFT 연산의 결과값을 중첩하는 단계 및 상기 수신기가 상기 중첩된 결과값이 임계값을 넘는지를 기준으로 동기화 지점을 결정하는 단계를 포함한다.A method for acquiring a P-code based on a memory array includes dividing an input signal received by a receiver into a plurality of received codes, storing the FFT operation value for each of the plurality of received codes in a first memory column, Dividing the continuous local code generated by the local code into a plurality of local codes, storing the FFT operation value for each of the plurality of local codes in a second memory column, Determining a value of the sum of the FFT operation values for a pair of neighboring at least one local code in a successive local code, and determining the value of the sum of the FFT operation values for a pair of the at least one local code corresponding to each of the plurality of received codes Performing an IFFT operation on the summed value of the IFFT operation and superimposing the result of the IFFT operation, And determining a synchronization point based on whether the result value exceeds a threshold value.

이하 설명하는 기술은 FFT 연산을 먼저 수행하여 상관성 열화 문제를 해결하고, 동시에 메모리 열을 사용하여 하드웨어 복잡도가 낮은 P 코드 획득 방법을 제공한다.The technique described below solves the problem of correlation degradation by first performing an FFT operation and simultaneously provides a method of acquiring a P code using a memory array with low hardware complexity.

메모리 어레이에 기반하여 P 코드를 획득하는 수신기는 입력 신호를 N개의 길이로 구분한 K개의 수신 코드 각각에 대한 제1 FFT 연산값을 순서대로 저장하는 제1 메모리 열, 연속된 로컬 코드를 N개의 길이로 구분한 K+1개의 로컬 코드 각각에 대한 제2 FFT 연산값을 순서대로 저장하는 제2 메모리 열, 상기 제2 메모리 열에서 서로 이웃한 2개의 메모리에 저장된 제2 FFT 연산값을 합산하여 K개의 합산값을 연산하고, 상기 순서에 대응되게 상기 제1 FFT 연산값과 상기 합산값에 대한 IFFT연산을 수행하여 K개의 IFFT 연산 결과값을 연산하고, 상기 K개의 IFFT 연산 결과값을 중첩하는 연산기 및 상기 중첩된 결과값이 임계값을 넘는지를 기준으로 동기화 지점을 결정하는 코드 결정기를 포함한다.A receiver for obtaining a P code based on the memory array includes a first memory column for sequentially storing first FFT operation values for each of K received codes obtained by dividing an input signal into N lengths, A second memory array for sequentially storing second FFT operation values for each of K + 1 local codes divided by a length, and second FFT operation values stored in neighboring two memories in the second memory column are summed Calculating K IFFT operation result values by performing an IFFT operation on the first FFT operation value and the sum value in accordance with the order, calculating K IFFT operation result values by superposing the K IFFT operation result values And a code determiner for determining a synchronization point based on whether the superimposed result value exceeds a threshold value.

도 1은 로컬 코드와 수신 코드에 대한 예이다.
도 2는 로컬 코드와 수신 코드에 대한 상관 중첩 연산에 대한 예이다.
도 3은 P 코드 획득을 위한 수신기의 구조를 도시한 블록도의 예이다.
1 is an example of a local code and a received code.
2 is an example of a correlation overlay operation on a local code and a received code.
3 is an example of a block diagram illustrating the structure of a receiver for P code acquisition.

이하 설명하는 기술은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세하게 설명하고자 한다. 그러나, 이는 이하 설명하는 기술을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 이하 설명하는 기술의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.The following description is intended to illustrate and describe specific embodiments in the drawings, since various changes may be made and the embodiments may have various embodiments. However, it should be understood that the following description does not limit the specific embodiments, but includes all changes, equivalents, and alternatives falling within the spirit and scope of the following description.

제1, 제2, A, B 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 해당 구성요소들은 상기 용어들에 의해 한정되지는 않으며, 단지 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 이하 설명하는 기술의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.The terms first, second, A, B, etc., may be used to describe various components, but the components are not limited by the terms, but may be used to distinguish one component from another . For example, without departing from the scope of the following description, the first component may be referred to as a second component, and similarly, the second component may also be referred to as a first component. And / or < / RTI > includes any combination of a plurality of related listed items or any of a plurality of related listed items.

본 명세서에서 사용되는 용어에서 단수의 표현은 문맥상 명백하게 다르게 해석되지 않는 한 복수의 표현을 포함하는 것으로 이해되어야 하고, "포함한다" 등의 용어는 설시된 특징, 개수, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 의미하는 것이지, 하나 또는 그 이상의 다른 특징들이나 개수, 단계 동작 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 배제하지 않는 것으로 이해되어야 한다.As used herein, the singular " include "should be understood to include a plurality of representations unless the context clearly dictates otherwise, and the terms" comprises & , Parts or combinations thereof, and does not preclude the presence or addition of one or more other features, integers, steps, components, components, or combinations thereof.

도면에 대한 상세한 설명을 하기에 앞서, 본 명세서에서의 구성부들에 대한 구분은 각 구성부가 담당하는 주기능 별로 구분한 것에 불과함을 명확히 하고자 한다. 즉, 이하에서 설명할 2개 이상의 구성부가 하나의 구성부로 합쳐지거나 또는 하나의 구성부가 보다 세분화된 기능별로 2개 이상으로 분화되어 구비될 수도 있다. 그리고 이하에서 설명할 구성부 각각은 자신이 담당하는 주기능 이외에도 다른 구성부가 담당하는 기능 중 일부 또는 전부의 기능을 추가적으로 수행할 수도 있으며, 구성부 각각이 담당하는 주기능 중 일부 기능이 다른 구성부에 의해 전담되어 수행될 수도 있음은 물론이다.Before describing the drawings in detail, it is to be clarified that the division of constituent parts in this specification is merely a division by main functions of each constituent part. That is, two or more constituent parts to be described below may be combined into one constituent part, or one constituent part may be divided into two or more functions according to functions that are more subdivided. In addition, each of the constituent units described below may additionally perform some or all of the functions of other constituent units in addition to the main functions of the constituent units themselves, and that some of the main functions, And may be carried out in a dedicated manner.

또, 방법 또는 동작 방법을 수행함에 있어서, 상기 방법을 1이루는 각 과정들은 문맥상 명백하게 특정 순서를 기재하지 않은 이상 명기된 순서와 다르게 일어날 수 있다. 즉, 각 과정들은 명기된 순서와 동일하게 일어날 수도 있고 실질적으로 동시에 수행될 수도 있으며 반대의 순서대로 수행될 수도 있다.In carrying out the method or the method of operation, each step constituting the method may take place differently from the stated order unless clearly specified in the context. That is, each process may occur in the same order as described, may be performed substantially concurrently, or may be performed in the opposite order.

DSSS 시스템은 송신하고자 하는 신호에 주파수가 높은 디지털 신호(확산코드)를 곱(XOR)하여 확산(Spreading)시키는 대역확산(Spread Spectrum) 변조방식을 사용한다. DSSS 기법은 CDMA(Code Division Multiple Access), IEEE 802.11b(Wi-Fi), GPS 등에서 사용된다. DSSS 기법은 비트 스트림인 PN(Pseudo Noise) 코드를 사용하여 데이터를 변조한다. PN 코드를 PRN(Pseudorandom Noise) 코드라고도 한다. GPS 등에서 PN 코드는 전술한 바와 같이 C/A 코드와 P 코드를 사용할 수 있다. The DSSS system uses a spread spectrum modulation scheme that multiplies (XORs) a digital signal (spreading code) having a high frequency with a signal to be transmitted and spreads the spread signal. The DSSS technique is used in Code Division Multiple Access (CDMA), IEEE 802.11b (Wi-Fi), GPS and the like. The DSSS technique modulates data using PN (Pseudo Noise) codes, which are bit streams. The PN code is also called a PRN (Pseudorandom Noise) code. In the GPS or the like, the PN code can use the C / A code and the P code as described above.

P 코드는 C/A 코드에 비하여 칩 전송률이 높고 주기가 길기 때문에, P 코드를 이용한 신호는 더 높은 측위 정확도를 제공하며, 재밍과 (jamming) 스푸핑에(spoofing) 강인하다는 특징을 가진다.Since the P code has a higher chip rate and a longer cycle time than the C / A code, the signal using the P code provides higher positioning accuracy, and is characterized in that it is robust to jamming and spoofing.

DA 기법 중 가장 먼저 제안되었던 직접 검색은 (serial search: SS) 긴 주기의 P 코드를 일일이 미루어가며 선형 상관하는 방식으로, P 코드의 긴 주기가 고려되지 않아 코드 획득에 너무 오랜 시간이 걸린다는 단점이 있다. 병렬 검색은 (parallel search) 다수의 병렬 상관기를 사용하여 선형 상관하는 방식으로 코드 획득 시간을 줄였으나, 하드웨어 복잡도가 높아지며, 이에 따라 실제 구현이 어렵다는 단점이 있다. 이러한 단점을 극복하기 위하여 선형 상관을 이용하지 않고, fast fourier transform (FFT) 상관을 이용하여, 기존의 선형 상관에 비해 빠른 속도로 코드 획득을 할 수 있는 방식이 개발되었다.The first method proposed in the DA technique is a linear correlation (SS) method in which a long period of P code is deferred one after another and the long period of the P code is not considered. . Although parallel retrieval reduces the code acquisition time by using linear correlations using a number of parallel correlators, the hardware complexity increases, which makes it difficult to actually implement. In order to overcome this disadvantage, a fast code - acquisition scheme has been developed using fast fourier transform (FFT) correlation instead of linear correlation.

FFT 기반의 상관을 이용한 방식은 크게 폴딩을 (folding) 이용한 방식과, 영 삽입을 (zero padding: ZP) 이용한 방식이 존재한다. 폴딩을 이용한 방식중 대표적인 방식인 extended replica folding acquisition search technique은 (XFAST) 수신 코드와 같은 길이의 로컬 코드 다수를 폴딩 한 후 수신 코드와의 FFT 기반의 상관을 통해 코드 획득을 수행하는 방식이다. 하지만, XFAST 기법은 대략적 코드 획득 과정 이후 수행되는 정확한 코드 획득 과정에서, 대략적 코드 획득을 통해 얻어진 상관 후보값 전체가 아닌 일부만을 검색하였다는 문제가 있다. 이후 개발된 Dual folding에서는, XFAST 기법에서 채용된 폴딩 방법으로 인해 발생하는 상관성 (correlation property) 저하의 단점을 극복하기 위하여 수신 신호에도 폴딩을 수행하고, 정확한 코드 획득 과정에서 대략적 코드 획득을 통해 얻어진 상관 후보값 전체를 검색하는 방식으로 XFAST 기법을 개선하였으나, 수신 신호의 폴딩과 정확한 코드 획득 과정에서의 상관 횟수 증가로 인해 평균 획득 시간을 (mean acquisition time: MAT) 효과적으로 줄이지 못하였다는 단점이 있다. There are two methods of using FFT-based correlation: folding and zero padding (ZP). The extended replica folding acquisition search technique (XFAST) is a method of folding a plurality of local codes having the same length as the received code and performing code acquisition through FFT-based correlation with the received code. However, there is a problem that the XFAST technique searches only a part of the correlation candidates obtained through the rough code acquisition, rather than the entire correlation candidates, in the accurate code acquisition process performed after the rough code acquisition process. In the dual folding developed in the future, folding is performed on the received signal to overcome the disadvantage of degradation of the correlation property caused by the folding method employed in the XFAST technique, and the correlation obtained through the rough code acquisition Although the XFAST technique is improved by searching the entire candidate values, there is a disadvantage in that the mean acquisition time (MAT) can not be effectively reduced due to the folding of the received signal and the increase in the number of correlations during correct code acquisition.

한편 폴딩을 사용하지 않고 수신코드 일부에 0으로 대체하여 FFT 연산을 수행하는 ZP 기법을 이용한, 코드 획득 방식이 제안되었다. 하지만 ZP 기법은 XFAST나 dual folding 기법에 비해 필요로 하는 최소 상관 횟수가 훨씬 많아, MAT를 효과적으로 줄이지 못한다는 단점이 있다. 또한 dual folding 기법은 수신 코드의 폴딩 수가 증가하는 것에 비례하여 상관값에 포함되는 잡음 성분도 함께 증가한다는 단점이 있다. On the other hand, a code acquisition method using a ZP technique that performs an FFT operation by replacing part of a received code with 0 without using folding has been proposed. However, the ZP method has a disadvantage in that it does not reduce the MAT effectively because the minimum number of correlations required is larger than that of the XFAST or the dual folding method. In addition, the dual folding technique has a disadvantage in that the number of noise components included in the correlation value increases in proportion to an increase in folding number of the receiving code.

이하 설명하는 기술은 dual folding 기법을 개선한 기법에 해당한다. 이하 설명하는 기술은 P 코드 획득을 위한 기법에 관한 것이다. 이하 설명하는 기술은 DA 기법에 해당한다. 이하 설명하는 P 코드 획득은 수신기에서 수행된다. The technique described below corresponds to an improvement of the dual folding technique. The technique described below relates to a technique for P code acquisition. The technique described below corresponds to the DA technique. The P code acquisition described below is performed at the receiver.

AWGN(Additive White Gaussian Noise) 환경 아래에 광대역 재밍 환경을 고려한 기저대역 수신 신호

Figure 112016053233287-pat00001
의 i 번째 칩은 아래의 수학식 1과 같이 나타난다.Under the AWGN (Additive White Gaussian Noise) environment, a baseband received signal considering a broadband jamming environment
Figure 112016053233287-pat00001
I < th >

Figure 112016053233287-pat00002
Figure 112016053233287-pat00002

수학식 1에서 A는 신호의 크기, d[i]∈{-1,1}은 i번째 항법데이터, C[i]는 동일한 확률로 -1, 1의 값을 가지며, 각 칩 간은 서로 독립인 i번째 PN 코드 칩을 의미한다. n[i]는 평균이 0이고 분산이 σ2 n인 백색 부가 가우시안 잡음(AWGN), w[i]는 평균이 0이고 분산이 σ2 w인 광대역 재밍 성분을 나타낸다. 데이터 값은 코드 획득이 수행되는 동안 d[i]=1의 값을 가진다고 가정한다. 또한, K는 상관에 이용될 수신 코드 블록 수이고, N은 각 블록이 포함하고 있는 수신 샘플 개수이다. In Equation (1), A is the signal size, d [i] ∈ {-1,1} is the i-th navigation data, C [i] has the same probability of -1 and 1, I < th > PN code chip. n [i] is a white additive Gaussian noise (AWGN) with a mean of 0 and a variance of σ 2 n , and w [i] denotes a broadband jamming component with an average of 0 and a variance of σ 2 w . The data value is assumed to have a value of d [i] = 1 while code acquisition is being performed. Also, K is the number of received code blocks to be used for correlation, and N is the number of received samples included in each block.

코드 획득을 시작하기 위하여, 수신기는 먼저 (K+1)N개만큼의 로컬 샘플(로컬 코드)을 생성한다. 수신기는 로컬 코드를 K+1개의 블록으로 구분하고, 연속한 로컬 코드 중 서로 이웃한 로컬 코드를 합산하여 K개 블록의 로컬 코드를 새롭게 생성한다.To start code acquisition, the receiver first generates (K + 1) N local samples (local codes). The receiver separates the local code into K + 1 blocks, and newly generates a local code of K blocks by summing neighboring local codes among consecutive local codes.

도 1은 로컬 코드와 수신 코드에 대한 예이다. 도 1(a)는 수신 코드를 N개의 길이를 갖는 코드를 모두 4개(K개)의 블록으로 구분한 예를 도시한다. 도 1(a)는 N개의 길이를 갖는 코드를 모두 5개(K+1개)의 블록으로 구분한 예를 도시한다. 도 1(b)는 상관 연산을 수행하는 로컬 코드와 수신 코드를 나타낸다. 수신기는 연속하는 로컬 코드 중 이웃하는 2개의 로컬 코드를 합산한 결과와 하나의 수신 코드에 대해 상관 연산을 수행한다. 도 1(b)를 살펴보면 수신기는 복수의 로컬 코드 중 A+B, B+C, C+D 및 D+E를 합산하여 4개의 합산 결과를 산출한다. 2개의 로컬 코드를 합산(folding)한 결과를 새로운 로컬 코드라고 할 수도 있다. 또는 2개의 로컬 코드를 합산(folding)한 결과를 폴딩된 로컬 코드라고 할 수 있다. 이하 설명의 편의를 위해 2개의 로컬 코드를 합산(folding)한 결과를 폴딩된 로컬 코드라고 명명한다. 수신기는 4개의 폴딩된 로컬 코드를 도 1(b)와 같이 일정한 순서에 따라 복수의 수신 코드 중 어느 하나와 상관 연산을 수행한다.1 is an example of a local code and a received code. 1 (a) shows an example of dividing a received code into four (K) blocks of codes having N lengths. FIG. 1 (a) shows an example in which all codes having N lengths are divided into five blocks (K + 1). 1 (b) shows a local code and a reception code for performing a correlation operation. The receiver performs a correlation operation on the result of summing two neighboring local codes among consecutive local codes and one received code. Referring to FIG. 1 (b), the receiver computes four summation results by summing A + B, B + C, C + D and D + E among the plurality of local codes. The result of folding two local codes can be called the new local code. Or the result of folding two local codes may be referred to as folded local code. For convenience of explanation, the result of folding two local codes is called a folded local code. The receiver performs the correlation operation with any one of the plurality of received codes according to a predetermined order as shown in FIG. 1 (b) for four folded local codes.

수신기가 생성한 폴딩된 로컬 코드

Figure 112016053233287-pat00003
의 i번째 샘플
Figure 112016053233287-pat00004
는 아래의 수학식 2와 같이 나타낼 수 있다.The folded local code generated by the receiver
Figure 112016053233287-pat00003
I-th sample
Figure 112016053233287-pat00004
Can be expressed by the following equation (2).

Figure 112016053233287-pat00005
Figure 112016053233287-pat00005

여기서 k는 1, 2, ...,K의 값을 가지는 자연수이며, j는 관측 윈도우의 (observation window) 인덱스를 의미한다. Where k is a natural number with values of 1, 2, ..., K, and j is the index of the observation window.

수신기는 상관값의 생성을 위하여 k째 폴딩된 로컬 코드 및 수신 코드에 대한 상관 연산을 수행한다. 상관 연산은 아래의 수학식 3과 같이 나타낼 수 있다.The receiver performs a correlation operation on the kth folded local code and the received code to generate a correlation value. The correlation operation can be expressed by Equation (3) below.

Figure 112016053233287-pat00006
Figure 112016053233287-pat00006

여기서 IFFT는 역 고속 푸리에 변환을 나타내고, (x)*는 변수 x에 대한 켤레(conjugate) 연산자를 의미한다.

Figure 112016053233287-pat00007
Figure 112016053233287-pat00008
를 K개 블록으로 나누었을 때의 k번째 블록을 의미하며,
Figure 112016053233287-pat00009
의 성분은 아래의 수학식 4와 같이 나타낼 수 있다.Where IFFT denotes an inverse fast Fourier transform and (x) * denotes a conjugate operator for the variable x.
Figure 112016053233287-pat00007
The
Figure 112016053233287-pat00008
Is the k-th block when K is divided into K blocks,
Figure 112016053233287-pat00009
Can be expressed by the following equation (4).

Figure 112016053233287-pat00010
Figure 112016053233287-pat00010

Figure 112016053233287-pat00011
,
Figure 112016053233287-pat00012
등은 총 N의 길이를 가지는 벡터이다. 각 성분
Figure 112016053233287-pat00013
는 k번째 로컬 블록과 k번째 수신 블록에서 두 샘플의 위상차가 i일 때의 상관값을 의미한다. 여기서, i는 0, 1, 2, ...., N-1 의 자연수이다.
Figure 112016053233287-pat00011
,
Figure 112016053233287-pat00012
Etc. are vectors with a total length of N. Each component
Figure 112016053233287-pat00013
Denotes a correlation value when the phase difference of two samples in the k-th local block and the k-th received block is i. Here, i is a natural number of 0, 1, 2, ...., N-1.

이제 수신기는 생성된 상관값들을 중첩하여 중첩 상관값을 생성한다. 중첩된 상관값은 아래의 수학식 5와 같이 표현할 수 있다. 수신기는 중첩 상관값에 대한 임계 테스트를 통해 동기화 여부를 검정하게 된다.The receiver now superimposes the generated correlation values to generate an overlaid correlation value. The superimposed correlation value can be expressed by Equation (5) below. The receiver tests for synchronization by means of a threshold test on the superposition correlation value.

Figure 112016053233287-pat00014
Figure 112016053233287-pat00014

여기서

Figure 112016053233287-pat00015
는 j번째 관측 윈도우에 대한 중첩 상관값을 의미한다.here
Figure 112016053233287-pat00015
Denotes an overlaid correlation value for the jth observation window.

수신기는 중첩 상관

Figure 112016053233287-pat00016
내의 N개 상관값들 중 임계값을 넘는 상관값이 있는지 확인한다. 만약 임계값을 넘는 1개 이상의 상관값이 있다면, 수신기는 가장 큰 상관값으로부터 동기화 지점을 결정한다. The receiver has a nested correlation
Figure 112016053233287-pat00016
Of the correlation values of the N correlation values in the frame. If there is more than one correlation value above the threshold, the receiver determines the synchronization point from the largest correlation value.

도 2는 로컬 코드와 수신 코드에 대한 상관 중첩 연산에 대한 예이다. 도 2는 N=4이고, K=2인 예이다. 도 2에서 로컬 코드와 수신 코드는 서로 일치하는 8개의 코드(음영으로 표시함)를 포함한다.2 is an example of a correlation overlay operation on a local code and a received code. 2 shows an example where N = 4 and K = 2. In Fig. 2, the local code and the received code include eight codes (indicated by shading) that coincide with each other.

수신기는 생성한 로컬 코드를 4개의 길이를 갖는 3개(K+1)의 블록으로 분할한다. 수신기는 분할한 로컬 코드 중 이웃한 로컬 코드를 도 2와 같이 폴딩한다(과정 ①). 수신기는 로컬 코드 중 Seg1과 Seg2를 합산(폴딩)하여 새로운 폴딩된 로컬 코드(Seg1+Seg2)를 생성한다. 수신기는 로컬 코드 중 Seg2과 Seg3를 합산(폴딩)하여 새로운 폴딩된 로컬 코드(Seg2+Seg3)를 생성한다. 이와 같이 수신기는 복수의 로컬 코드 중 서로 이웃하는 로컬 코드 쌍을 폴딩한다. 이때 수신기는 각 로컬 코드 쌍에서 하나의 블록은 서로 중첩된 블록(도 2에서는 Seg2)을 사용한다.The receiver divides the generated local code into three (K + 1) blocks having four lengths. The receiver folds neighboring local codes among the divided local codes as shown in FIG. 2 (process 1). The receiver sums Seg1 and Seg2 of the local code (folds) to generate new folded local code (Seg1 + Seg2). The receiver sums (folds) Seg2 and Seg3 among the local codes to generate a new folded local code (Seg2 + Seg3). Thus, the receiver folds neighboring local code pairs among a plurality of local codes. In this case, the receiver uses blocks (Seg2 in FIG. 2) in which one block is overlapped with each other in each local code pair.

수신기는 수신 코드를 4개의 길이를 갖는 2개의 블록으로 분할한다(과정 ②). 이후 수신기는 폴딩된 로컬 코드와 분할한 수신 코드를 순서에 따라 FFT 기반의 상관을 한다(과정 ③). FFT 기반의 상관은 상기 수학식 3과 같은 연산에 해당한다. 이때 상관되는 폴딩된 로컬 코드와 수신 코드는 일정한 순서에 따라 선택된다. 수신기는 수신 코드 중 i번째 코드와 폴딩된 로컬 코드 중 i 번째 코드를 상관한다.The receiver divides the received code into two blocks having four lengths (process 2). Thereafter, the receiver performs FFT-based correlation between the folded local code and the divided reception codes in order (step 3). The FFT-based correlation corresponds to the operation of Equation (3). At this time, the correlated folded local code and the received code are selected in a predetermined order. The receiver correlates the ith code of the received code with the ith code of the folded local code.

최종적으로 수신기는 상관 연산을 통해 산출한 상관값을 모두 중첩한다(과정 ④). 이를 통해 수신기는 최종적으로 중첩된 상관값을 산출한다.Finally, the receiver superimposes all of the correlation values calculated through correlation calculation (step (4)). Whereby the receiver finally calculates the overlapped correlation value.

이와 같은 상관의 중첩을 통하여, 동기 적산(coherent integration) 성분의 수가 증가하기 때문에 상관값이 더욱 커져 상관성이 개선된다. 뿐만 아니라, 단순히 로컬 코드와 수신 코드를 모두 폴딩한 경우에 비해서 상호 상관의 수가 더욱 적어졌기 때문에, 폴딩을 이용해 상관 중첩을 구현한 dual folding에 비해서도 상관성이 크게 개선된다.Through such superposition of correlations, the number of coherent integration components increases, so that the correlation value becomes larger and the correlation improves. In addition, since the number of cross-correlations is smaller than in the case of simply folding both the local code and the received code, the correlation is greatly improved as compared with the dual folding in which correlation overlap is implemented using folding.

도 2를 살펴보면 현재 범위에서의 로컬 코드를 이용할 경우 수신 코드열이 [a1 b1 ... d2], [b1 c1 ... a3], [a2 b2 ... d3] 까지, 총 N+1 종류의 수신 코드가 수신되었다. 수신 코드열이 로컬 코드열을 온전히 포함하여 해당 범위에 대해서는 검색을 수행할 수 있음을 확인할 수 있다. 따라서, 한 번의 상관으로 여러 동기화 후보 지점에 대해 검색이 가능하여 빠른 코드 획득 속도 역시 얻을 수 있다.2, when a local code in the current range is used, the received code sequence is [a 1 b 1 ... d 2 ], [b 1 c 1 ... a 3 ], [a 2 b 2 ... d 3 ], a total of N + 1 kinds of reception codes were received. It can be confirmed that the received code string includes the local code string in its entirety so that the search can be performed for the corresponding range. Therefore, it is possible to search for multiple synchronization candidate points with a single correlation, and fast code acquisition speed can also be obtained.

만약, 도 2와 같이 로컬 코드가 수신 코드를 포함하는 상황이 아니라면, 올바른 검파를 할 경우 상관값이 임계값을 넘지 않는다. 이 경우 수신기는 로컬 코드의 범위를 바꾸어 다시 상관/중첩의 과정을 반복한다. If the local code does not include the received code as shown in FIG. 2, the correlation value does not exceed the threshold value when correct detection is performed. In this case, the receiver changes the range of the local code and repeats the correlation / superposition process again.

이 때, 앞서 설명한 바와 같이 한 번의 상관을 통해서는 N+1개 위상에 대해 올바른 검색이 가능하므로, 다시 검파를 반복할 때에는 최대 N+1 샘플만큼 로컬 코드 생성기의 위상을 시프트(shift)하여 생성하면 된다. 예컨대, 도 2에서는 다음 검파에서 [b2 c2 ... a4]를 로컬 코드로 이용하여도 된다. 수신 코드 열의 바로 직전 위상의 코드 열인 [a2 b2 ... d3]가 포함되지 않음을 이전 검파로 확인하였기 때문이다. 경우에 따라서는 임의로 N+1 미만만큼 시프트할 수도 있다.At this time, since the N + 1 phase can be searched correctly through one correlation as described above, when the detection is repeated again, the phase of the local code generator is shifted by a maximum of N + 1 samples . For example, in FIG. 2, [b 2 c 2 ... a 4 ] may be used as a local code in the next detection. Since the previous detection confirms that [a 2 b 2 ... d 3 ], which is a code string immediately before the received code string, is not included. And may optionally be shifted by less than N + 1.

따라서, 이로부터 관측 윈도우와 관측 윈도우 간의 간격을 정의할 수 있다. 관측 윈도우는 한 번의 검색에 사용되는 N(K+1) 길이의 로컬 코드 범위를 의미한다. 만약 직전 검파를 통해 동기화 지점을 찾지 못하였을 경우, 로컬 코드 범위를 N+1 혹은 그 미만만큼 시프트하여 다음 관측 윈도우 범위를 정의한다.

Figure 112016053233287-pat00017
에서의 j는 앞서 정의한 바와 같이 관측 윈도우의 인덱스를 의미한다. 한 번 로컬 코드 범위를 시프트할 때마다 j의 값은 1씩 증가하게 된다. 따라서, 만약 검색하여야 할 전체 코드 샘플의 수를 (로컬 코드 한 주기에 포함되는 샘플의 개수) θ라 할 경우, 전체 범위 검색에 필요한 최소 관측 윈도우의 수는 아래의 수학식 6과 같이 정의된다.From this, it is possible to define the distance between the observation window and the observation window. The observation window means a local code range of length N (K + 1) used in one search. If the synchronization point is not found through the previous detection, the next window range is defined by shifting the local code range by N + 1 or less.
Figure 112016053233287-pat00017
J represents the index of the observation window as previously defined. Once every time the local code range is shifted, the value of j is incremented by one. Therefore, if the total number of code samples to be searched (the number of samples included in one cycle of local code) is?, The minimum number of observation windows required for the full range search is defined as Equation (6) below.

Figure 112016053233287-pat00018
Figure 112016053233287-pat00018

여기서

Figure 112016053233287-pat00019
는 x보다 작지 않은 최소의 정수를 의미한다.here
Figure 112016053233287-pat00019
Means the smallest integer not less than x.

전술한 P 코드 획득 방법은 복수의 상관을 사용한다. 따라서 만약 병렬 상관기를 사용한다면 하드웨어의 복잡도가 증가한다. 결국 코드 획득에 걸리는 시간도 증가할 수 있다. 따라서 도 3과 같은 메모리 열(memory array)를 사용하는 수신가 구조를 제안한다.The above-described P code acquisition method uses a plurality of correlations. Therefore, if parallel correlator is used, hardware complexity increases. Eventually, the time it takes to acquire the code can also increase. Accordingly, a reception structure using a memory array as shown in FIG. 3 is proposed.

도 3은 P 코드 획득을 위한 수신기(100)의 구조를 도시한 블록도의 예이다. 수신기(100)는 로컬 코드 생성기(110), 제2 샘플 추출기(115), 제2 FFT기(120), 제2 메모리 열(130), 제1 샘플 추출기(140), 제1 FFT기(150), 켤레 연산기(160), 제1 메모리 열(174), 연산기(180), 코드 결정기(190) 및 제3 FFT기(195)를 포함한다.3 is an example of a block diagram illustrating the structure of a receiver 100 for P code acquisition. The receiver 100 includes a local code generator 110, a second sample extractor 115, a second FFT unit 120, a second memory column 130, a first sample extractor 140, a first FFT unit 150 A first calculator 180, a code determiner 190 and a third FFT unit 195. The first FFT unit 195 includes a first multiplier 171,

로컬 코드 생성기(110)는 수신기(100) 내에서 일정한 P 코드를 생성한다. 로컬 코드 생성기(110)가 생성한 신호를 로컬 코드라고 명명한다. 제2 샘플 추출기(115)는 로컬 코드 생성기(110)가 생성한 로컬 코드를 복수의 블록으로 구분한다. 각 블록은 N개의 길이를 갖는 코드를 포함한다. 제2 샘플 추출기(115)는 K+1개의 블록으로 로컬 코드를 구분한다. 제2 FFT기(120)는 분할된 복수의 로컬 코드 각각에 대한 FFT 연산을 수행한다. 제2 메모리 열(130)은 로컬 코드에 대한 FFT 연산값을 저장한다. 도 3에서 제2 FFT기(120)는 K+1개(1201,1202, ... 120K+1) 존재한다. 이는 로컬 코드를 병렬적으로 처리하기 위한 것이다. 다만 경우에 따라서 수신기(100)는 도 3과 달리 로컬 코드를 순차적으로 처리하는 하나의 제2 FFT기를 가질 수도 있다.The local code generator 110 generates a constant P code within the receiver 100. The signal generated by the local code generator 110 is called a local code. The second sample extractor 115 divides the local code generated by the local code generator 110 into a plurality of blocks. Each block contains a code having N lengths. The second sample extractor 115 divides the local code into K + 1 blocks. The second FFT unit 120 performs an FFT operation on each of the divided plurality of local codes. The second memory column 130 stores the FFT operation value for the local code. In FIG. 3, there are K + 1 (120 1 , 120 2 ,... 120 K + 1 ) of the second FFT unit 120. This is for parallel processing of local code. However, the receiver 100 may have a second FFT unit for sequentially processing local codes, as the case may be.

다만 수신기는 반드시 K+1개의 메모리(1301,1302, ... 130K+1)로 구성되는 제2 메모리 열(130)을 사용해야 한다. 제2 메모리 열(130)은 각 메모리에 복수의 로컬 코드에 대한 FFT 연산값을 저장한다.However, the receiver must use the second memory column 130 consisting of K + 1 memories 130 1 , 130 2 , ... 130 K + 1 . The second memory column 130 stores FFT operation values for a plurality of local codes in each memory.

제1 샘플 추출기(140)는 수신한 입력 신호를 N개의 길이를 갖는 K개의 수신 코드로 구분한다. 제1 FFT기(150)는 K개의 수신 코드 각각에 대한 FFT 연산을 수행한다. 켤레 연산기(160)는 FFT 연산값에 대한 켤레 연산을 수행한다. 도 1에서 제1 FFT기(150)는 K개(1501,1502, ... 150K) 존재한다. 또한 켤레 연산기(160)도 K개 존재한다. 이는 수신 코드를 병렬적으로 처리하기 위한 것이다. 다만 경우에 따라서 수신기(110)는 도 3과 달리 수신 코드를 순차적으로 처리하는 하나의 제1 FFT기 및 하나의 켤레 연산기를 가질 수도 있다.The first sample extractor 140 divides the received input signal into K received codes having N lengths. The first FFT unit 150 performs an FFT operation on each of the K received codes. The conjugate operator 160 performs a conjugate operation on the FFT operation value. In FIG. 1, there are K (150 1 , 150 2 ,... 150 K ) first FFT units 150. There are also K pairs of arithmetic operators 160. This is for processing the received code in parallel. 3, the receiver 110 may have a first FFT unit and a single FFT unit for sequentially processing the reception codes.

도 3에서는 수신 코드에 켤레 연산을 수행하는 것으로 도시하였으나, 켤레 연산은 수신 코드 또는 로컬 코드 중 어느 하나에 수행하면 족하다. 따라서 도 3과 달리 켤레 연산기(160)는 제2 FFT(120)에 연결될 수도 있다.In FIG. 3, a conjugate operation is performed on the received code. However, the conjugate operation may be performed on either the received code or the local code. Therefore, unlike FIG. 3, the conjugate calculator 160 may be connected to the second FFT 120.

제1 메모리 열(170)은 K개의 메모리(1701,1702, ... 170K)로 구성된다. 제1 메모리 열(170)은 수신 코드에 대한 FFT 연산값을 저장한다. 제1 메모리 열(170)에 저장된 FFT 연산값을 변경되지 않고 계속 이용될 수 있다.The first memory column 170 is composed of K memories 170 1 , 170 2 , ... 170 K. The first memory column 170 stores the FFT operation value for the received code. The FFT operation value stored in the first memory column 170 can be continuously used without being changed.

연산기(180)는 제1 메모리 열(170)에 저장된 값과 제2 메모리 열(130)에 저장된 값을 이용하여 전술한 중첩된 상관값을 생성한다. 제1 합산기(181)은 로컬 코드 중 이웃하는 로컬 코드 쌍에 대한 FFT 연산값을 합산한다. 예컨대, 제1 합산기(1811)은 메모리(1301) 및 메모리(1302)에 저장된 연산값을 폴딩한다. 또한 제1 합산기(1812)은 메모리(1302) 및 메모리(1303)에 저장된 연산값을 폴딩한다. The arithmetic unit 180 generates the above-described overlapped correlation value using the values stored in the first memory column 170 and the values stored in the second memory column 130. [ The first summer 181 sums the FFT operation values for neighboring local code pairs in the local code. For example, the first summer 181 1 folds the arithmetic values stored in the memory 130 1 and the memory 130 2 . The first summer 181 2 also folds the arithmetic values stored in the memory 130 2 and the memory 130 3 .

곱셈기(182)는 폴딩된 로컬 코드와 수신 코드에 대한 곱셈 연산을 수행한다. 곱셈기(182)는 코드 순서에 따라 대응되는 폴딩된 로컬 코드와 수신 코드에 대한 곱셈 연산을 수행한다. 예컨대, 곱셈기(1821)는 메모리(1701)에 저장된 수신 코드와 제1 합산기(1811)가 합산한 폴딩된 로컬 코드에 대한 곱셈 연산을 수행한다. 최종적으로 제2 합산기(183)은 곱셈기(182)가 연산한 K개의 상관값을 합산하여 중첩한다. The multiplier 182 performs a multiplication operation on the received code with the folded local code. The multiplier 182 performs a multiplication operation on the received code with the corresponding folded local code according to the code order. For example, the multiplier 182 1 performs a multiplication operation on the folded local code summed by the received code stored in the memory 170 1 and the first summer 181 1 . Finally, the second summer 183 sums and adds K correlation values calculated by the multiplier 182.

코드 결정기(190)는 제2 합산기(183)가 출력하는 중첩 상관값을 기준으로 해당 관측 윈도우에 동기화 지점이 있는지 판단한다. 코드 결정기(190)는 중첩 상관값이 임계값을 초과하는 경우 해당 관측 윈도우에 동기화 지점이 있다고 결정한다.The code determiner 190 determines whether there is a synchronization point in the observation window based on the superposition correlation value output by the second summer 183. The code determiner 190 determines that there is a synchronization point in the observation window when the superposition correlation value exceeds the threshold value.

만약 중첩 상관값이 임계값 이하인 경우 코드 결정기(190)는 해당 관측 윈도우에는 동기화 지점이 없다고 판단한다. 이 경우 수신기(100)는 새로운 로컬 코드를 준비해야 한다. 도 3의 수신기(100)는 제2 메모리 열(130)에 저장할 FFT 연산값을 모두 새로 연산하지 않는다. 수신기(110)는 먼저 제2 메모리 열(130)에 저장된 FFT 연산값을 도 3과 같이 시프트 이동한다. 즉, 수신기(100)는 중첩된 상관값/결과값이 임계값을 초과하지 않는 경우, 연속된 로컬 코드 중 복수의 로컬 코드 다음에 위치한 새로운 하나의 로컬 코드에 대한 FFT 연산을 제3FFT기(195)를 이용하여 수행하고, 제2 메모리 열(130) 중 가장 앞에 있는 메모리(1301)에 저장되어 있는 로컬 코드 중 가장 앞에 있는 로컬 코드에 대한 FFT 연산값을 삭제하고, 제2 메모리 열(130) 중 상기 가장 앞에 있는 메모리(1301)를 제외한 나머지 메모리들(1302~130K+1) 각각에 저장되어 있는 값을 앞의 메모리(1301~130K)로 시프트하고, 제2 메모리 열(130) 중 마지막 메모리(130K+1)에 새로운 하나의 로컬 코드에 대한 FFT 연산값을 저장할 수 있다.If the overlaid correlation value is less than or equal to the threshold value, the code determiner 190 determines that there is no synchronization point in the observation window. In this case, the receiver 100 has to prepare a new local code. The receiver 100 of FIG. 3 does not newly calculate all the FFT operation values to be stored in the second memory column 130. The receiver 110 first shifts the FFT operation value stored in the second memory column 130 as shown in FIG. That is, if the overlapped correlation value / result value does not exceed the threshold value, the receiver 100 transmits the FFT operation for a new local code located next to a plurality of local codes in the successive local codes to the third FFT unit 195 And deletes the FFT operation value for the local code at the foremost among the local codes stored in the memory 130 1 at the foremost position in the second memory column 130, ) of shifting the value stored in each memory (the rest of the memory other than the 130 1) (130 2 ~ 130 K + 1) in the most front of, in front of the memory (130 1 ~ 130 K), a second memory column (130K + 1 ) of the first memory 130 to store a new FFT operation value for one local code.

시프트 크기(shift size)를 N+1로 하지 않고 N으로 할 경우, K+1개의 이전 단계 FFT 결과들 중 K개를 도 3와 같이 다시 활용할 수 있어 불필요한 FFT를 하지 않아도 된다. If the shift size is set to N instead of N + 1, K of the K + 1 previous-stage FFT results can be reused as shown in FIG. 3, and unnecessary FFT can be avoided.

또한 수신기(100)는 로컬 코드 중 동기화 지점을 검정하지 않은 다음 로컬 코드에 대한 FFT 연산을 수행하고, 새로운 값은 제2 메모리 열(130) 중 마지막 메모리(130K+1)에 새롭게 연산한 FFT 연산값을 저장한다. 도 3에서 제3 FFT기(195)가 새로운 로컬 코드에 대한 FFT 연산을 수행한다. 도 3과 달리 제2 FFT기(120)가 새로운 로컬 코드에 대한 FFT 연산을 수행할 수도 있다.In addition, the receiver 100 performs an FFT operation on the local code after not checking the synchronization point among the local codes, and the new value is a FFT operation performed on the last memory 130 K + 1 of the second memory array 130 Stores the operation value. In FIG. 3, a third FFT unit 195 performs an FFT operation on the new local code. Unlike FIG. 3, the second FFT unit 120 may perform an FFT operation on a new local code.

본 실시예 및 본 명세서에 첨부된 도면은 전술한 기술에 포함되는 기술적 사상의 일부를 명확하게 나타내고 있는 것에 불과하며, 전술한 기술의 명세서 및 도면에 포함된 기술적 사상의 범위 내에서 당업자가 용이하게 유추할 수 있는 변형 예와 구체적인 실시예는 모두 전술한 기술의 권리범위에 포함되는 것이 자명하다고 할 것이다.It should be noted that the present embodiment and the drawings attached hereto are only a part of the technical idea included in the above-described technology, and those skilled in the art will readily understand the technical ideas included in the above- It is to be understood that both variations and specific embodiments which can be deduced are included in the scope of the above-mentioned technical scope.

100 : 수신기
110 : 로컬 코드 생성기
115 : 제2 샘플 추출기
120 : 제2 FFT기
130 : 제2 메모리 열
140 : 제1 샘플 추출기
150 : 제1 FFT기
160 : 켤레 연산기
170 : 제1 메모리 열
180 : 연산기
181 : 제1 합산기
182 : 곱셈기
183 : 제2 합산기
190 : 코드 결정기
195 : 제3 FFT기
100: receiver
110: Local Code Generator
115: second sample extractor
120: second FFT unit
130: second memory column
140: First sample extractor
150: first FFT unit
160:
170: first memory column
180: Operator
181: First sumter
182: multiplier
183: second summer
190: Code determiner
195: Third FFT unit

Claims (9)

수신기가 수신한 입력 신호를 복수의 수신 코드로 구분하는 단계;
상기 수신기가 상기 복수의 수신 코드 각각에 대한 FFT 연산값을 제1 메모리 열에 저장하는 단계;
상기 수신기가 생성한 연속된 로컬 코드를 복수의 로컬 코드로 구분하는 단계;
상기 수신기가 상기 복수의 로컬 코드 각각에 대한 FFT 연산값을 제2 메모리 열에 저장하는 단계;
상기 수신기가 상기 복수의 로컬 코드 중 상기 연속된 로컬 코드에서 이웃하는 적어도 하나의 로컬 코드의 쌍에 대한 FFT 연산값을 합산한 값을 결정하는 단계;
상기 수신기가 상기 복수의 수신 코드 각각에 대해 대응하는 상기 적어도 하나의 로컬 코드의 쌍에 대한 합산한 값에 대한 IFFT 연산을 수행하고, IFFT 연산의 결과값을 중첩하는 단계; 및
상기 수신기가 상기 중첩된 결과값이 임계값을 넘는지를 기준으로 동기화 지점을 결정하는 단계를 포함하는 메모리 어레이에 기반한 P 코드 획득 방법.
Dividing an input signal received by a receiver into a plurality of reception codes;
The receiver storing an FFT operation value for each of the plurality of received codes in a first memory column;
Dividing a continuous local code generated by the receiver into a plurality of local codes;
The receiver storing an FFT operation value for each of the plurality of local codes in a second memory column;
The receiver determining a value of a sum of an FFT operation value for a pair of at least one neighboring local code in the continuous local code among the plurality of local codes;
The receiver performing an IFFT operation on the sum of the corresponding pair of at least one local code for each of the plurality of received codes and superimposing the result of the IFFT operation; And
And the receiver determining a synchronization point based on whether the overlaid result value exceeds a threshold value.
제1항에 있어서,
상기 복수의 수신 코드는 각각 N개의 길이를 갖는 K개이고, 상기 복수의 로컬 코드는 N개의 길이를 갖는 K+1개인 메모리 어레이에 기반한 P 코드 획득 방법.
The method according to claim 1,
Wherein the plurality of received codes are each K having N lengths and the plurality of local codes are N lengths.
제1항에 있어서,
상기 수신기는 K+1개의 로컬 코드에서 이웃하는 로컬 코드 쌍에 대한 FFT 연산값을 합산하여 K개의 상기 합산한 값을 결정하는 메모리 어레이에 기반한 P 코드 획득 방법.
The method according to claim 1,
Wherein the receiver determines the K sum values by summing FFT operation values for neighboring local code pairs in K + 1 local codes.
제1항에 있어서,
상기 수신기는 상기 수신 코드 또는 로컬 코드에 대한 FFT 연산값에 대해 켤레 연산을 더 수행하고 상기 제1 메모리 열 또는 상기 제2 메모리 열에 저장하는 메모리 어레이에 기반한 P 코드 획득 방법.
The method according to claim 1,
Wherein the receiver further performs a conjugate operation on an FFT operation value for the received code or local code and stores the result in the first memory column or the second memory column.
제1항에 있어서,
상기 수신기는 K개의 수신 코드 각각에 대한 FFT 값과 상기 각 수신 코드에 대응하는 상기 로컬 코드의 쌍의 FFT 값을 합산한 값에 대한 곱셈 연산을 수행한 K개의 결과값에 대한 IFFT 연산을 수행하여 상관 연산을 수행하되, 상기 수신 코드 또는 로컬 코드에 대한 FFT 연산값에 대해 켤레 연산을 더 수행하는 메모리 어레이에 기반한 P 코드 획득 방법.
The method according to claim 1,
The receiver performs an IFFT operation on K resultant values obtained by performing a multiplication operation on an FFT value for each of the K received codes and a value obtained by adding the FFT value of the pair of the local codes corresponding to the received codes And performing a correlation operation on an FFT operation value for the received code or the local code.
제1항에 있어서,
상기 수신기는 상기 중첩된 결과값이 임계값을 초과하지 않는 경우, 상기 연속된 로컬 코드 중 상기 복수의 로컬 코드 다음에 위치한 새로운 하나의 로컬 코드에 대한 FFT 연산을 수행하고, 상기 제2 메모리 열 중 가장 앞에 있는 메모리에 저장되어 있는 상기 로컬 코드 중 가장 앞에 있는 로컬 코드에 대한 FFT 연산값을 삭제하고, 상기 제2 메모리 열 중 상기 가장 앞에 있는 메모리를 제외한 나머지 메모리들 각각에 저장되어 있는 값을 앞의 메모리로 시프트하고, 상기 제2 메모리 열 중 마지막 메모리에 상기 새로운 하나의 로컬 코드에 대한 FFT 연산값을 저장하는 단계를 더 포함하는 메모리 어레이에 기반한 P 코드 획득 방법.
The method according to claim 1,
Wherein the receiver performs an FFT operation on a new local code located after the plurality of local codes of the contiguous local codes when the result of the overlapping does not exceed a threshold value, The FFT operation value for the local code located at the frontmost one of the local codes stored in the frontmost memory is deleted and the value stored in each of the remaining memories except for the memory located at the frontmost And storing an FFT operation value for the new one of the local codes in a last one of the second memory columns.
입력 신호를 N개의 길이로 구분한 K개의 수신 코드 각각에 대한 제1 FFT 연산값을 순서대로 저장하는 제1 메모리 열;
연속된 로컬 코드를 N개의 길이로 구분한 K+1개의 로컬 코드 각각에 대한 제2 FFT 연산값을 순서대로 저장하는 제2 메모리 열;
상기 제2 메모리 열에서 서로 이웃한 2개의 메모리에 저장된 제2 FFT 연산값을 합산하여 K개의 합산값을 연산하고, 상기 순서에 대응되게 상기 제1 FFT 연산값과 상기 합산값에 대한 IFFT연산을 수행하여 K개의 IFFT 연산 결과값을 연산하고, 상기 K개의 IFFT 연산 결과값을 중첩하는 연산기; 및
상기 중첩된 결과값이 임계값을 넘는지를 기준으로 동기화 지점을 결정하는 코드 결정기를 포함하는 메모리 어레이에 기반하여 P 코드를 획득하는 수신기.
A first memory array for sequentially storing first FFT operation values for each of K received codes obtained by dividing an input signal into N lengths;
A second memory column for storing, in order, second FFT operation values for each of K + 1 local codes obtained by dividing consecutive local codes into N lengths;
Calculating K sum values by summing second FFT arithmetic values stored in two neighboring memories in the second memory array, and performing IFFT arithmetic operations on the first FFT arithmetic operation value and the sum value in accordance with the order An operation unit for calculating K IFFT operation result values by performing the K IFFT operation result values, and superposing the K IFFT operation result values; And
And a code determiner for determining a synchronization point based on whether the nested result exceeds a threshold value.
제7항에 있어서,
상기 제1 FFT 연산값 또는 상기 제2 FFT 연산값은 켤레 연산이 더 수행된 값인 메모리 어레이에 기반하여 P 코드를 획득하는 수신기.
8. The method of claim 7,
Wherein the first FFT operation value or the second FFT operation value is a P-code based on a memory array in which a conjugate operation is further performed.
제7항에 있어서,
상기 중첩된 결과값이 임계값을 초과하지 않는 경우, 상기 제2 메모리 열 중 가장 앞에 있는 메모리에 저장되어 있는 상기 로컬 코드 중 가장 앞에 있는 로컬 코드에 대한 FFT 연산값을 삭제하고, 상기 제2 메모리 열 중 상기 가장 앞에 있는 메모리를 제외한 나머지 메모리들 각각에 저장되어 있는 값을 앞의 메모리로 시프트하고, 상기 제2 메모리 열 중 마지막 메모리에 복수의 로컬 코드 다음으로 생성된 로컬 코드에 대한 FFT 연산값을 저장하는 메모리 어레이에 기반하여 P 코드를 획득하는 수신기.
8. The method of claim 7,
And deletes an FFT computation value for a local code located at a frontmost one of the local codes stored in a first memory among the second memory arrays when the result of the overlapping does not exceed a threshold value, A value stored in each of the memories other than the memory in the frontmost row among the columns is shifted to a previous memory and an FFT operation value for a local code generated after a plurality of local codes in the last memory of the second memory column Based on the memory array storing the P code.
KR1020160068561A 2016-06-02 2016-06-02 Acquisition method for precision code based on memory array and receiver for acquiring precision code based on memory array KR101812325B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020160068561A KR101812325B1 (en) 2016-06-02 2016-06-02 Acquisition method for precision code based on memory array and receiver for acquiring precision code based on memory array

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160068561A KR101812325B1 (en) 2016-06-02 2016-06-02 Acquisition method for precision code based on memory array and receiver for acquiring precision code based on memory array

Publications (2)

Publication Number Publication Date
KR20170136722A KR20170136722A (en) 2017-12-12
KR101812325B1 true KR101812325B1 (en) 2017-12-26

Family

ID=60936978

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160068561A KR101812325B1 (en) 2016-06-02 2016-06-02 Acquisition method for precision code based on memory array and receiver for acquiring precision code based on memory array

Country Status (1)

Country Link
KR (1) KR101812325B1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102155658B1 (en) * 2018-02-02 2020-09-15 성균관대학교산학협력단 Method for acquiring binary offset cattier modulated code and apparatus therefor

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
Hong Li 외 3명. Dual-Folding Based Rapid Search Method for Long PN-Code Acquisition. IEEE TRANSACTIONS ON WIRELESS COMMUNICATIONS. DECEMBER 2008. VOL.7, NO.12, pp.5286-5296.
Na Wang 외 2명. Direct and rapid p code acquisition technique. Communications and Information Technologies. 2007. ISCIT '07. International Symposium on, 2007.10. pp.1122-1124.
전현옥 외 4명. 해양 통신 환경에서의 P 코드 신호 획득을 위한 Dual-Folding 기법의 성능 분석. 한국통신학회 학술대회논문집. 2014.11월. pp.99-101.

Also Published As

Publication number Publication date
KR20170136722A (en) 2017-12-12

Similar Documents

Publication Publication Date Title
CN101578799B (en) Chaotic spreading codes and their generation
US6909738B2 (en) Method in a receiver and a receiver
EP1284050B1 (en) Method and apparatus for code phase tracking
CN102282773B (en) Method and system for spread spectrum signal acquisition
KR101564828B1 (en) Signal processing method for ultra-fast acquisition and tracking of severely attenuated spread spectrum signals with doppler frequency and apparatus thereof
TW200539588A (en) Apparatus and method for acquiring spread-spectrum signals
US20090310654A1 (en) Multiple correlation processing in code space search
KR101818162B1 (en) Acquisition method for precision code based on parallel folding and receiver for acquiring precision code based on parallel folding
CN103926604A (en) Weak signal capturing method based on overlapping difference cycle coherent integration
KR101812325B1 (en) Acquisition method for precision code based on memory array and receiver for acquiring precision code based on memory array
US20110050496A1 (en) Energy Domain Based Peak Reconstruction Methods And Apparatuses
US7471747B2 (en) Bit down-scaling apparatus and method, GPS synchronization acquisition method, and GPS receiver
CN102841361B (en) Fast capturing method for ordinary ranging codes of signals of global navigation satellite system
JP4805930B2 (en) Apparatus, method and computer program for signal collection using a common demodulation template
KR101767571B1 (en) Acquisition method for precision code at receiver
Zhang et al. Improved fast modified double-block zero-padding (FMDBZP) algorithm for weak GPS signal acquisition
CN104422939B (en) Method and apparatus for being associated with the signal received from navigational satellite system
Lee et al. Matched-filter-based low-complexity correlator for simultaneously acquiring global positioning system satellites
KR102155658B1 (en) Method for acquiring binary offset cattier modulated code and apparatus therefor
US20040141574A1 (en) Determination of the code phase between a code modulated signal and a replica code sequence
US7277476B2 (en) Determining the correlation between received samples and available replica samples
Akopian et al. A fast matched filter in time domain
KR102154756B1 (en) An apparatus of acquisition time simulation for PN code optimization
KR100727653B1 (en) Method for Fast Signal Acquisition in GPS Receiver and Dual Carrier Correlator Therefor
Pang et al. Fast direct GPS signal acquisition using FPGA

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