KR102154756B1 - An apparatus of acquisition time simulation for PN code optimization - Google Patents

An apparatus of acquisition time simulation for PN code optimization Download PDF

Info

Publication number
KR102154756B1
KR102154756B1 KR1020190077324A KR20190077324A KR102154756B1 KR 102154756 B1 KR102154756 B1 KR 102154756B1 KR 1020190077324 A KR1020190077324 A KR 1020190077324A KR 20190077324 A KR20190077324 A KR 20190077324A KR 102154756 B1 KR102154756 B1 KR 102154756B1
Authority
KR
South Korea
Prior art keywords
code
local
acquisition time
correlation
generating
Prior art date
Application number
KR1020190077324A
Other languages
Korean (ko)
Inventor
윤석호
채근홍
Original Assignee
성균관대학교산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 성균관대학교산학협력단 filed Critical 성균관대학교산학협력단
Priority to KR1020190077324A priority Critical patent/KR102154756B1/en
Application granted granted Critical
Publication of KR102154756B1 publication Critical patent/KR102154756B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B1/00Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission
    • H04B1/69Spread spectrum techniques
    • H04B1/707Spread spectrum techniques using direct sequence modulation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B1/00Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission
    • H04B1/69Spread spectrum techniques
    • H04B1/707Spread spectrum techniques using direct sequence modulation
    • H04B1/7073Synchronisation aspects
    • H04B1/7075Synchronisation aspects with code phase acquisition
    • H04B1/7077Multi-step acquisition, e.g. multi-dwell, coarse-fine or validation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B2201/00Indexing scheme relating to details of transmission systems not covered by a single group of H04B3/00 - H04B13/00
    • H04B2201/69Orthogonal indexing scheme relating to spread spectrum techniques in general
    • H04B2201/707Orthogonal indexing scheme relating to spread spectrum techniques in general relating to direct sequence modulation
    • H04B2201/70715Orthogonal indexing scheme relating to spread spectrum techniques in general relating to direct sequence modulation with application-specific features

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Position Fixing By Use Of Radio Waves (AREA)

Abstract

The present invention relates to a method for generating a pseudo random noise (PN) code in a wireless communication system. According to the present invention, the method comprises the steps of: generating two or more local codes; generating reception codes; obtaining the code by performing a correlation operation between each local code of the two or more local codes and the reception code; calculating a mean acquisition time (MAT) required to obtain the code; and generating the PN code by using a genetic algorithm for determining the fitness based on the MAT.

Description

PN 코드 최적화를 위한 시뮬레이션 장치 {An apparatus of acquisition time simulation for PN code optimization}Simulation apparatus for PN code optimization {An apparatus of acquisition time simulation for PN code optimization}

이하 설명하는 기술은 의사랜덤잡음코드 (Pseudo Random Noise code, PN Code)를 생성하는 기법에 관한 것이다.The technique to be described below relates to a technique for generating a pseudo random noise code (PN Code).

의사랜덤잡음코드 (Pseudo Random Noise code, PN Code)(이하, PN 코드)는 랜덤 시퀀스와 유사한 잡음 특성을 보이면서도 재생이 가능한 즉, 그 속에 일정한 규칙을 갖는 코드를 말한다.Pseudo random noise code (PN code) (hereinafter, PN code) refers to a code that can be reproduced while showing noise characteristics similar to a random sequence, that is, a code having a certain rule therein.

직접 시퀀스 확산 스펙트럼 (direct sequence spread spectrum, DSSS)은 하나의 신호 심볼에 PN 코드를 합쳐 변조하여 일정한 시퀀스로 주파수 대역을 확산시켜 통신하는 방식을 말한다. 의사랜덤잡음시퀀스(Pseudo Random Noise sequence)에 원래의 신호를 입력시키면, 주파수 당 전력 밀도가 낮아진 확산 대역 스펙트럼 신호를 얻을 수 있다. DSSS 시스템에서 송신기는 신호를 넓은 스펙트럼 대역으로 확산할 수 있도록 하는 PN 코드를 송신하며, 수신기에서도 이를 수신할 수 있도록 동일한 수열을 가지는 PN 코드를 국소 코드로서 갖는다. 수신기는 송신기에서 사용되었던 동일한 PN 코드의 수열을 알고 있고, 데이터 수신을 위해 해당 국소 코드와 수신코드의 시간적 동기를 맞추는 것이 중요하다.Direct sequence spread spectrum (DSSS) refers to a method in which a signal symbol is combined with a PN code and modulated to spread a frequency band in a certain sequence for communication. When an original signal is input to a pseudo random noise sequence, a spread-band spectrum signal with a lower power density per frequency can be obtained. In the DSSS system, the transmitter transmits a PN code that allows the signal to be spread over a wide spectrum band, and has a PN code having the same sequence as a local code so that the receiver can also receive it. The receiver knows the sequence of the same PN code used in the transmitter, and it is important to synchronize the time synchronization between the corresponding local code and the reception code for data reception.

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

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 transmitted by multiplying a pseudo random noise code (PRN code), and the PRN code of the GPS signal can be roughly divided into two types. The C/A (coarse acquisition) code provides standard positioning service, the chip rate is 1.023 MHz and the period is 1 ms. P (precision) code provides precise location service, the chip transmission rate is 10.23MHz and the period is 7 days. Since the P code has a higher chip transmission rate and a longer period than the C/A code, a signal using the P code provides higher positioning accuracy and is robust against jamming and spoofing.

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

C. Yang, J. Chaffee, J. Abel, and M. J. Vasquez, "Fast direct P(Y)-code acquisition using XFAST," in Proc. ION GPS 2000, pp. 19-22, Salt Lake City, UT, Sep, 2000. C. Yang, J. Chaffee, J. Abel, and M. J. Vasquez, "Fast direct P(Y)-code acquisition using XFAST," in Proc. ION GPS 2000, pp. 19-22, Salt Lake City, UT, Sep, 2000.

이하 설명하는 기술은 최적화 된 PN 코드 생성을 위한 장치 및 기법을 제공하고자 한다.The technique described below is intended to provide an apparatus and a technique for generating an optimized PN code.

본 발명의 실시 예에 따른 PN 코드 생성 방법에 있어서, 두 개 이상의 로컬 코드들을 생성하는 단계; 수신 코드를 생성하는 단계; 상기 두 개 이상의 로컬 코드들의 각 로컬 코드와 상기 수신 코드 간의 상관 동작을 수행하여 코드를 획득하는 단계; 상기 코드의 획득에 소요되는 평균 획득 시간(mean acquisition time, MAT)을 산출하는 단계; 및 상기 평균 획득 시간에 기반하여 적합도를 판단하는 유전 알고리즘을 이용하여 상기 PN 코드를 생성하는 단계를 포함할 수 있다. In the PN code generation method according to an embodiment of the present invention, the method comprising: generating two or more local codes; Generating a receiving code; Obtaining a code by performing a correlation operation between each local code of the two or more local codes and the received code; Calculating a mean acquisition time (MAT) required to acquire the code; And generating the PN code using a genetic algorithm for determining a fitness based on the average acquisition time.

또한, 본 발명의 실시 예에 따른 상기 방법에 있어서, 상기 두 개 이상의 로컬 코드들의 각 로컬 코드는 바이너리 코드를 생성하는 단계; 및 상기 바이너리 코드에 대해 폴딩을 수행하는 단계를 통해 생성될 수 있다.In addition, in the method according to an embodiment of the present invention, each local code of the two or more local codes comprises: generating a binary code; And it may be generated through the step of performing folding on the binary code.

또한, 본 발명의 실시 예에 따른 상기 방법에 있어서, 상기 바이너리 코드는 1 또는 -1로 구성될 수 있다.Further, in the method according to an embodiment of the present invention, the binary code may be composed of 1 or -1.

또한, 본 발명의 실시 예에 따른 상기 방법에 있어서, 상기 바이너리 코드에 대한 폴딩은 상기 바이너리 코드를 분할하고, 덧셈 또는 곱셈 중 어느 하나의 연산 방식에 따라 분할된 바이너리 코드들에 대한 연산을 수행할 수 있다.In addition, in the method according to an embodiment of the present invention, the folding of the binary code divides the binary code and performs an operation on the divided binary codes according to an operation method of addition or multiplication. I can.

또한, 본 발명의 실시 예에 따른 상기 방법에 있어서, 상기 수신 코드는 상기 바이너리 코드의 랜덤한 지점을 선택하여 추출하고, 채널 환경의 특징을 반영하여 생성될 수 있다.Further, in the method according to an embodiment of the present invention, the received code may be generated by selecting and extracting a random point of the binary code, and reflecting characteristics of a channel environment.

또한, 본 발명의 실시 예에 따른 상기 방법에 있어서, 상기 상관 동작을 수행하는 방법은 상기 두 개 이상의 로컬 코드들의 각 로컬 코드와 상기 수신 코드의 상관값이 미리 설정된 문턱값 이상인 경우의 위상값을 선택하는 방식으로 수행될 수 있다.In addition, in the method according to an embodiment of the present invention, the method of performing the correlation operation includes determining a phase value when a correlation value between each local code of the two or more local codes and the received code is equal to or greater than a preset threshold. It can be done in any way you choose.

또한, 본 발명의 실시 예에 따른 상기 방법에 있어서, 상기 평균 획득 시간을 산출하는 단계는 상기 두 개 이상의 로컬 코드의 일부를 랜덤하게 추출하여 상기 수신 코드를 생성하고, 상기 두 개 이상의 로컬 코드들의 각 로컬 코드와 상기 수신 코드 간의 상관 동작을 수행하여 코드를 획득하는 단계를 반복적으로 수행하여, 각각의 코드 획득에 소요된 시간을 평균하여 평균 획득 시간으로 산출할 수 있다.In addition, in the method according to an embodiment of the present invention, in the calculating of the average acquisition time, the received code is generated by randomly extracting a part of the two or more local codes, and By repeatedly performing the step of obtaining a code by performing a correlation operation between each local code and the received code, the average acquisition time may be calculated by averaging the time required to acquire each code.

또한, 본 발명의 실시 예에 따른 상기 방법에 있어서, 상기 유전 알고리즘은, 상기 평균 획득 시간에 기반하여 상기 적합도를 판단하되, 상기 평균 획득 시간의 역수를 상기 적합도를 판단하기 위한 기준값으로 적용하고, 상기 기준값이 클수록 높은 적합도 값을 갖는 것으로 판단할 수 있다.In addition, in the method according to an embodiment of the present invention, the genetic algorithm determines the fitness based on the average acquisition time, and applies the reciprocal of the average acquisition time as a reference value for determining the fitness, It may be determined that the larger the reference value is, the higher the fitness value is.

또한, 본 발명의 실시 예에 따른 상기 방법에 있어서, 상기 유전 알고리즘은, 상기 적합도 값이 높은 로컬 코드를 선택하고, 상기 로컬 코드의 연접, 분할, 대치, 교차 또는 돌연변이 중 적어도 하나를 수행하여 다음 세대 PN 코드를 생성할 수 있다.In addition, in the method according to an embodiment of the present invention, the genetic algorithm selects a local code having a high fitness value, and performs at least one of concatenation, division, substitution, intersection, or mutation of the local code, Generation PN codes can be generated.

본 발명의 실시 예에 따른 PN 코드 생성 장치에 있어서, 상기 장치는 로컬 코드를 생성하는 로컬 코드 생성부; 수신 코드를 생성하는 수신 코드 생성부; 상기 로컬 코드와 상기 수신 코드 간의 상관 동작을 수행하는 상관부; 및 상기 상관부에서 상관을 수행하여 코드를 획득하는데 소요된 평균 획득 시간을 산출하고, 상기 평균 획득 시간의 역수를 적합도 기준으로 하는 유전 알고리즘을 이용하여 다음 세대 PN 코드 생성을 수행하는 유전 알고리즘 수행부를 포함할 수 있다.In an apparatus for generating a PN code according to an embodiment of the present invention, the apparatus comprises: a local code generator for generating a local code; A reception code generation unit for generating a reception code; A correlation unit performing a correlation operation between the local code and the received code; And a genetic algorithm execution unit that calculates the average acquisition time required to acquire the code by performing correlation in the correlation unit, and generates the next generation PN code using a genetic algorithm based on the reciprocal of the average acquisition time. Can include.

또한, 본 발명의 실시 예에 따른 상기 장치에 있어서, 상기 로컬 코드 생성부는 폴딩부를 포함하되, 상기 폴딩부는 바이너리 코드를 분할하고, 덧셈 또는 곱셈 중 어느 하나의 연산 방식에 따라 분할된 바이너리 코드들에 대한 연산을 통해 폴딩을 수행할 수 있다.In addition, in the apparatus according to an embodiment of the present invention, the local code generation unit includes a folding unit, and the folding unit divides the binary code and divides the binary codes according to an operation method of addition or multiplication. Folding can be performed through an operation on.

또한, 본 발명의 실시 예에 따른 상기 장치에 있어서, 상기 유전 알고리즘 수행부는 바이너리 코드의 위상을 랜덤하게 변경하여 상기 수신 코드를 생성하고, 상기 로컬 코드와 상기 수신 코드 간의 상관 동작을 수행하여 코드를 획득하는 단계를 반복적으로 수행하여, 각각의 코드 획득에 소요된 시간을 평균하여 상기 평균 획득 시간을 산출할 수 있다.Further, in the apparatus according to an embodiment of the present invention, the genetic algorithm execution unit generates the reception code by randomly changing a phase of a binary code, and performs a correlation operation between the local code and the reception code to generate the code. By repeatedly performing the acquiring step, the average acquisition time may be calculated by averaging the time required to acquire each code.

또한, 본 발명의 실시 예에 따른 상기 장치에 있어서, 상기 유전 알고리즘 수행부는 적합도 높은 로컬 코드를 선택하고 해당 로컬 코드의 연접, 분할, 대치, 교차 또는 돌연변이 중 적어도 하나를 수행하여 다음 세대 PN 코드를 생성하도록 동작할 수 있다.In addition, in the device according to an embodiment of the present invention, the genetic algorithm execution unit selects a local code with high suitability and performs at least one of concatenation, division, replacement, intersection, or mutation of the corresponding local code to generate a next generation PN code. Can act to create.

본 발명을 통해 최적화된 PN 코드를 생성할 수 있으며 폴딩 상황에서 상관 왜곡을 줄여 코드 획득 실패 확률을 감소시킬 수 있다. Through the present invention, an optimized PN code can be generated, and a probability of a code acquisition failure can be reduced by reducing correlation distortion in a folding situation.

또한, 본 발명을 통해 동일한 폴딩 수 대비 상관 왜곡을 감소시킬 수 있고, 동일한 상관 왜곡 수준에서 폴딩 수를 증가시킬 수 있어 결과적으로 폴딩 수의 한계를 향상시킬 수 있다.In addition, through the present invention, it is possible to reduce the correlation distortion compared to the same number of folds, and increase the number of folds at the same level of correlation distortion, thereby improving the limit of the number of folds.

본 발명에서 얻을 수 있는 효과는 이상에서 언급한 효과로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 아래의 기재로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.The effects that can be obtained in the present invention are not limited to the above-mentioned effects, and other effects not mentioned will be clearly understood by those of ordinary skill in the art from the following description. .

본 발명에 관한 이해를 돕기 위해 상세한 설명의 일부로 포함되는, 첨부 도면은 본 발명에 대한 실시 예를 제공하고, 상세한 설명과 함께 본 발명의 기술적 특징을 설명한다.
도 1은 폴딩 되지 않은 로컬 코드와 수신 코드의 상관을 통한 코드 획득 과정의 일례를 나타낸다.
도 2는 본 명세서에서 제안하는 방법이 적용될 수 있는 폴딩 된 로컬 코드와 수신 코드의 상관을 통한 코드 획득 과정의 일례를 나타낸다.
도 3은 본 명세서에서 제안하는 방법이 적용될 수 있는 최적의 PN 코드 생성 장치가 동작하는 과정에 대한 순서도의 일례를 나타낸다.
도 4는 본 명세서에서 제안하는 방법이 적용될 수 있는 최적의 PN 코드 생성 장치 구성도의 일례를 나타낸다.
도 5는 PN 코드 생성 장치가 GNSS 수신기 및/또는 GNSS 위성과 연결된 일례를 나타낸다.
도 6은 본 명세서에서 제안하는 PN 코드와 기존 PN 코드의 평균 획득 시간 (mean acquisition time, MAT) 성능을 나타낸다.
도 7은 본 명세서에서 제안하는 PN 코드와 기존 PN 코드의 평균 획득 오류 (normalized mean acquisition error: NMAE) 성능을 나타낸다.
BRIEF DESCRIPTION OF THE DRAWINGS The accompanying drawings, which are included as part of the detailed description to aid in understanding of the present invention, provide embodiments of the present invention, and describe technical features of the present invention together with the detailed description.
1 shows an example of a code acquisition process through correlation between an unfolded local code and a received code.
2 shows an example of a code acquisition process through correlation between a folded local code and a received code to which the method proposed in the present specification can be applied.
3 shows an example of a flow chart for a process of operating an optimal PN code generation apparatus to which the method proposed in the present specification can be applied.
4 shows an example of a configuration diagram of an optimal PN code generation apparatus to which the method proposed in the present specification can be applied.
5 shows an example in which the PN code generation apparatus is connected to a GNSS receiver and/or a GNSS satellite.
6 shows the mean acquisition time (MAT) performance of the PN code proposed in the present specification and the existing PN code.
7 shows the normalized mean acquisition error (NMAE) performance of the PN code proposed in the present specification and the existing PN code.

이하 설명하는 기술은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세하게 설명하고자 한다. 그러나, 이는 이하 설명하는 기술을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 이하 설명하는 기술의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.The technology described below may be modified in various ways and may have various embodiments, and specific embodiments will be illustrated in the drawings and described in detail. However, this is not intended to limit the technology to be described below with respect to a specific embodiment, and it should be understood to include all changes, equivalents, and substitutes included in the spirit and scope of the technology described below.

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

본 명세서에서 사용되는 용어에서 단수의 표현은 문맥상 명백하게 다르게 해석되지 않는 한 복수의 표현을 포함하는 것으로 이해되어야 하고, "포함한다" 등의 용어는 설시된 특징, 개수, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 의미하는 것이지, 하나 또는 그 이상의 다른 특징들이나 개수, 단계 동작 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 배제하지 않는 것으로 이해되어야 한다.In terms of the terms used in the present specification, expressions in the singular should be understood as including plural expressions unless clearly interpreted differently in context, and terms such as "includes" are specified features, numbers, steps, actions, and components. It is to be understood that the presence or addition of one or more other features or numbers, step-acting components, parts or combinations thereof is not meant to imply the presence of, parts, or combinations thereof.

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

도면에 대한 상세한 설명을 하기에 앞서, 본 명세서에서의 구성부들에 대한 구분은 각 구성부가 담당하는 주기능 별로 구분한 것에 불과함을 명확히 하고자 한다. 즉, 이하에서 설명할 2개 이상의 구성부가 하나의 구성부로 합쳐지거나 또는 하나의 구성부가 보다 세분화된 기능별로 2개 이상으로 분화되어 구비될 수도 있다. 그리고 이하에서 설명할 구성부 각각은 자신이 담당하는 주기능 이외에도 다른 구성부가 담당하는 기능 중 일부 또는 전부의 기능을 추가적으로 수행할 수도 있으며, 구성부 각각이 담당하는 주기능 중 일부 기능이 다른 구성부에 의해 전담되어 수행될 수도 있음은 물론이다.Prior to the detailed description of the drawings, it is intended to clarify that the division of the constituent parts in the present specification is merely divided by the main function that each constituent part is responsible for. 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 according to more subdivided functions. In addition, each of the constituent units to be described below may additionally perform some or all of the functions of other constituent units in addition to its own main function, and some of the main functions of each constituent unit are different. It goes without saying that it may be performed exclusively by.

이하, 본 발명에 따른 바람직한 실시 형태를 첨부된 도면을 참조하여 상세하게 설명한다. 첨부된 도면과 함께 이하에 개시될 상세한 설명은 본 발명의 예시적인 실시형태를 설명하고자 하는 것이며, 본 발명이 실시될 수 있는 유일한 실시형태를 나타내고자 하는 것이 아니다. 이하의 상세한 설명은 본 발명의 완전한 이해를 제공하기 위해서 구체적 세부사항을 포함한다. 그러나, 당업자는 본 발명이 이러한 구체적 세부사항 없이도 실시될 수 있음을 안다. 몇몇 경우, 본 발명의 개념이 모호해지는 것을 피하기 위하여 공지의 구조 및 장치는 생략되거나, 각 구조 및 장치의 핵심기능을 중심으로 한 블록도 형식으로 도시될 수 있다.Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings. The detailed description to be disclosed hereinafter together with the accompanying drawings is intended to describe exemplary embodiments of the present invention, and is not intended to represent the only embodiments in which the present invention may be practiced. The following detailed description includes specific details to provide a thorough understanding of the present invention. However, one of ordinary skill in the art appreciates that the invention may be practiced without these specific details. In some cases, in order to avoid obscuring the concept of the present invention, well-known structures and devices may be omitted, or may be shown in a block diagram form centering on core functions of each structure and device.

다양한 무선 통신 시스템에서 PN 코드를 바탕으로 송신할 데이터를 변조하고, 수신기에서는 해당 PN 코드 복제(replica)를 이용해 동기화 및 데이터 복조를 수행한다. PN 코드는 코드의 길이가 길어질수록 의사잡음 특성이 더욱 이상적인 형태를 띄고, 뛰어난 항재밍 성능을 가진다는 특성이 있으며, 정밀 포지셔닝 분야 등 다양한 분야에서 긴 주기의 필요성을 인정받아, 길게는 일주일에 달하는 PN 코드가 사용되기도 한다. In various wireless communication systems, data to be transmitted is modulated based on a PN code, and a receiver performs synchronization and data demodulation using a corresponding PN code replica. PN code has a characteristic that the pseudo-noise characteristic becomes more ideal and has excellent anti-jamming performance as the length of the code becomes longer.According to the necessity of a long cycle in various fields such as precision positioning, PN codes are sometimes used.

그러나, 긴 PN 코드는 수신기에서 검색할 위상의 수가 그만큼 더 많아지기 때문에, 동기화 과정에 매우 긴 시간이 소모된다는 문제점을 수반하고 있다. 이러한 긴 PN 코드의 획득 시간을 단축하기 위해, 폴딩 방식이 이용될 수 있다. 상기 폴딩 방식은 PN 코드를 일정한 간격으로 나누고, 이들을 모두 겹쳐 합산하는 방식으로 수행될 수 있다. 폴딩된 PN 코드를 생성한 후, 이를 수신 신호와 상관하여, 한 번의 상관을 통해 검색할 수 있는 코드 칩 범위를 넓히는 기술이 개발되었으며, 이후 다양한 변형 및 발전이 이루어져 왔다.However, the long PN code has a problem that a very long time is consumed in the synchronization process because the number of phases to be searched by the receiver increases by that much. In order to shorten the acquisition time of such a long PN code, a folding method may be used. The folding method may be performed by dividing the PN codes at regular intervals and adding them together. After generating the folded PN code, a technique was developed to correlate it with a received signal and expand the range of code chips that can be searched through a single correlation, and various modifications and developments have been made since.

그러나 상술한 폴딩 방식은 PN 코드를 분할하고 겹쳐서 더하는 연산이 수반되므로 PN 코드 변형을 일으킬 수 있으며, 이는 원래의 PN 코드가 아닌 새로운 폴딩된 PN 코드가 되므로, 상관 왜곡 현상이 발생하는 문제점이 있을 수 있다. 상관 왜곡 현상이란, 수신 코드와 로컬 코드가 동기화되어 상관되었을 시 발생하는 상관 피크의 크기와 비슷하거나 혹은 넘어설 수 있을 정도로, 비동기 시 상관 피크가 커지는 현상을 의미한다. 비동기 시의 상관 피크의 크기가 커지면, 실제 찾아야 할 동기 시의 상관 피크를 찾지 못하고 다른 위상으로 동기 지점을 판정할 수 있고, 코드 획득에 실패할 수 있다.However, since the above-described folding method involves the operation of dividing and adding the PN code, it may cause PN code modification, which becomes a new folded PN code instead of the original PN code, so there may be a problem in that correlation distortion occurs. have. The correlation distortion phenomenon refers to a phenomenon in which the correlation peak increases during asynchronous operation to a degree that is similar to or exceeds the size of the correlation peak that occurs when the received code and the local code are synchronized and correlated. If the size of the correlation peak during asynchronous operation increases, the correlation peak during synchronization to be actually found may not be found, a synchronization point may be determined with a different phase, and code acquisition may fail.

상술한 상관 왜곡 현상에도 불구하고, 코드 획득 시간을 비약적으로 향상시킬 수 있는 폴딩의 장점을 살리기 위해서, 폴딩 상황에서도 상관 왜곡을 최소화하는 PN 코드 개발이 필요하며, 이를 통해 폴딩 상황에서 코드 획득 실패가 발생하지 않고, 나아가 폴딩에 대한 강인성으로 인해 폴딩의 수를 더욱 높여 속도를 더욱 높이는 장점을 얻을 수 있다.In spite of the above-described correlation distortion phenomenon, in order to take advantage of folding that can dramatically improve the code acquisition time, it is necessary to develop a PN code that minimizes correlation distortion even in a folding situation. It does not occur, and further, due to the robustness against folding, the number of folding can be further increased to obtain the advantage of further increasing the speed.

본 발명에서는 PN 코드의 후보군으로 랜덤 이진 코드들을 다수 생성하고, 유전자 알고리즘(genetic algorithm: GA)을 이용하여 평균 획득 시간 (mean acquisition time)에 기반하여 상기 코드들의 적합성 평가 및 이를 반복적으로 수행하여 이진 코드를 진화시키는, 유전자 알고리즘 기반의 의사잡음코드 (pseudo-random noise code: PN code) 최적화 방법 및 장치를 제안한다.In the present invention, a plurality of random binary codes are generated as candidate groups of PN codes, and the suitability of the codes is evaluated based on the mean acquisition time using a genetic algorithm (GA), and the binary code is repeatedly performed. We propose a method and apparatus for optimizing a pseudo-random noise code (PN code) based on a genetic algorithm to evolve the code.

기본적인 코드 획득은, 수신된 코드와 로컬 코드를 서로 상관하는 과정을 통해 이루어질 수 있다. 예를 들어, 코드의 길이가 짧은 경우, 전체 주기에 걸쳐 수신된 전체 수신코드와 전체 로컬 코드를 상관하여 코드를 획득할 수 있다. 한편, 긴 주기의 PN 코드는 상기 방법을 통해 획득하는 것이 불가능하기 때문에, 수신 코드를 받은 후 이 수신 코드와 동일한 시퀀스를 로컬 PN 코드에 내에서 계속 상관 범위를 바꿔가며 상관하여 기본 코드를 획득할 수 있다. The basic code acquisition can be achieved through a process of correlating the received code and the local code. For example, when the length of the code is short, the code may be obtained by correlating all received codes received over the entire period and all local codes. On the other hand, since it is impossible to obtain a long-period PN code through the above method, after receiving the received code, the same sequence as the received code is continuously changed within the local PN code and correlated to obtain a basic code. I can.

도 1은 폴딩되지 않은 로컬 코드와 수신 코드의 상관을 통한 코드 획득 과정의 일례를 나타낸다. 도 1을 참고하면, 로컬 코드는 여러 부분의 코드들로 분할될 수 있으며, 분할된 로컬 코드 내에 수신 코드 시퀀스가 있는지 '순차적으로' 상관을 수행할 수 있다. 상관을 수행하는 횟수가 증가할수록 코드 획득 시간이 길어지게 되며, 만약 로컬 코드의 주기 뒷부분에 수신 코드 시퀀스가 포함되어 있다면, 수많은 상관을 코드 획득 시간이 크게 길어지게 될 수 있다.1 shows an example of a code acquisition process through correlation between an unfolded local code and a received code. Referring to FIG. 1, the local code may be divided into codes of several parts, and correlation may be performed'sequentially' whether there is a received code sequence in the divided local code. As the number of correlations increases, the code acquisition time increases. If the received code sequence is included in the rear part of the period of the local code, the code acquisition time for a number of correlations may increase significantly.

도 2는 본 명세서에서 제안하는 방법이 적용될 수 있는 폴딩된 로컬 코드와 수신 코드의 상관을 통한 코드 획득 과정의 일례를 나타낸다. 도 2를 참고하면, 로컬 코드의 폴딩은 로컬 코드를 여러 부분의 코드들로 분할하는 단계 및 분할된 코드들이 모두 더해져 하나로 결합하는 단계를 거쳐 수행될 수 있다. 폴딩된 로컬 코드와 수신코드의 상관을 수행하여 상관 피크를 탐색할 수 있다. 이를 통해, 여러 위상에 대한 동시 검색이 가능해지므로, 상관 수행의 연산 횟수를 줄일 수 있다. 2 shows an example of a code acquisition process through correlation between a folded local code and a received code to which the method proposed in the present specification can be applied. Referring to FIG. 2, folding of a local code may be performed through a step of dividing a local code into codes of several parts and a step of combining the divided codes into one. The correlation peak can be searched for by performing the correlation between the folded local code and the received code. Through this, since it is possible to simultaneously search for multiple phases, it is possible to reduce the number of calculations for performing correlation.

예를 들어, 로컬 코드가 C[0], C[1],…,C[23] 길이를 갖는다고 가정하고, 수신 코드의 길이가 C'[0], C'[1],…,C'[7]라고 가정할 수 있다. 도 1을 참고하면, 폴딩되지 않은 로컬코드와 수신 코드 간 3회 상관을 수행해 하는 반면, 도 2를 참고하면, 수신 코드의 길이에 대응되도록 로컬 코드를 3회 폴딩할 수 있고, 폴딩된 로컬 코드와 수신 코드 간 단 한 번의 상관을 통해 탐색이 가능해지므로 상관 연산이 크게 줄어들 수 있다.For example, the local code is C[0], C[1],... Assuming that the length is C[23], the length of the received code is C'[0], C'[1],... ,C'[7] can be assumed. Referring to FIG. 1, correlation is performed three times between the unfolded local code and the received code, while referring to FIG. 2, the local code can be folded three times to correspond to the length of the received code, and the folded local code Since the search is possible through a single correlation between the and the received code, the correlation operation can be greatly reduced.

로컬 코드에 수신 코드 시퀀스가 포함되어 있다면, 동-위상 성분(in-phase component)의 상관 피크가 발생하여, 높은 상관값을 나타낼 수 있다. 반면, 로컬 코드에 수신 코드 시퀀스가 포함되어 있지 않다면, 역-위상 성분(out-of-phase component)의 상관 피크가 발생하여 낮은 상관값을 나타낼 수 있다. 기본적으로, 신호 획득은 높은 상관값을 가지는 동-위상 성분(in-phase component)을 찾기 위해 상관 피크의 최대값을 찾는 방식으로 수행될 수 있다. 도 1과 도2를 참고하면, 로컬 코드의 폴딩은 역-위상 성분(out-of-phase component)의 상관 피크의 높이를 높이는 효과를 일으켜, 동-위상 성분(in-phase component)을 찾기 어려워질 수 있으며, 이를 상관 왜곡이라 칭한다.If the received code sequence is included in the local code, a correlation peak of an in-phase component may occur, indicating a high correlation value. On the other hand, if the received code sequence is not included in the local code, a correlation peak of an out-of-phase component may occur, indicating a low correlation value. Basically, signal acquisition may be performed by finding a maximum value of a correlation peak in order to find an in-phase component having a high correlation value. 1 and 2, folding of the local code causes an effect of increasing the height of the correlation peak of the out-of-phase component, making it difficult to find the in-phase component. Can be lost, and this is called correlation distortion.

본 발명에서는 상기와 같은 긴 주기 PN 코드를 획득할 때, 획득 속도 향상을 위해 폴딩이 적용되었을 시 획득 성능을 향상시킬 수 있도록 PN 코드를 최적화하는 방법을 제시한다. 이를 통해, 사용 가능한 폴딩의 수를 더욱 확장시킬 수 있으며, 최종적으로 획득 속도 향상을 얻을 수 있다. The present invention proposes a method of optimizing the PN code to improve the acquisition performance when folding is applied to improve the acquisition speed when acquiring the above long period PN code. Through this, the number of usable folding can be further expanded, and finally, an increase in acquisition speed can be obtained.

이하, 최적화된 PN 코드 생성을 위한 시뮬레이션 장치가 동작하는 방법을 제안한다. 도 3은 본 명세서에서 제안하는 방법이 적용될 수 있는 최적의 PN 코드 생성 장치가 동작하는 과정에 대한 순서도의 일례를 나타낸다. 도 3은 단지 설명의 편의를 위한 것일 뿐, 본 발명의 범위를 제한하는 것이 아니다.Hereinafter, a method of operating a simulation apparatus for generating an optimized PN code is proposed. 3 shows an example of a flow chart for a process of operating an optimal PN code generation apparatus to which the method proposed in the present specification can be applied. 3 is merely for convenience of description and does not limit the scope of the present invention.

로컬 코드를 생성할 수 있다(S310). 예를 들어, 로컬 PN 코드의 후보가 될 이진 유전자를 생성할 수 있다. 상기 이진 유전자는 1 혹은 -1의 값을 가질 수 있으며, 그 자체가 PN 코드 후보이므로 설정된 PN 코드 후보의 주기와 동일하게 유전자 길이를 가질 수 있다. 로컬 코드는 PN 코드의 후보군으로 두 개 이상의 로컬 코드를 생성할 수 있다.A local code can be generated (S310). For example, it is possible to generate a binary gene that will be a candidate for the local PN code. The binary gene may have a value of 1 or -1, and since itself is a PN code candidate, it may have the same length as a period of a set PN code candidate. The local code is a candidate group of PN codes, and two or more local codes can be generated.

또한, 로컬 코드를 생성할 때 폴딩 과정이 수반될 수 있다. 이하, 폴딩이 수행되는 방식의 일례를 설명한다. 특정 길이 단위로 로컬 PN 코드의 후보가 될 이진 유전자를 분할할 수 있다. 예를 들어, 미리 설정된 수신 코드 길이를 기준으로 로컬 PN 코드의 후보가 될 이진 유전자를 분할할 수 있다. 분할된 로컬 PN 코드의 후보가 될 이진 유전자는 폴딩 수만큼 겹쳐질 수 있다. 즉, 분할된 로컬 PN 코드의 후보가 될 이진 유전자들이 덧셈 또는 곱셈 중 어느 하나의 연산 방식에 따라 더해지거나 곱해져서 폴딩될 수 있다. 상술한 분할되고 겹쳐진 폴딩된 이진 유전자는 로컬 PN 코드의 역할을 할 수 있다. 상기 로컬 PN 코드는 전체 PN 코드의 일부분에 해당할 수도 있다. 전체 PN 코드의 일부분으로 상기 로컬 PN 코드가 구성된 경우, 만약 해당 부분에 수신 코드가 없는 것으로 판명된다면 검색되지 않는 나머지 부분을 검색하기 위해, 검색되지 않은 부분을 대상으로 폴딩을 수행할 수도 있다. In addition, a folding process may be involved when generating the local code. Hereinafter, an example of a method in which folding is performed will be described. Binary genes that will be candidates for the local PN code can be segmented by specific length units. For example, a binary gene that will be a candidate for a local PN code may be divided based on a preset reception code length. Binary genes that will be candidates for the divided local PN code can be overlapped by the number of folds. That is, binary genes that will be candidates for the divided local PN code may be added or multiplied according to an operation method of addition or multiplication to be folded. The segmented and overlapped folded binary genes described above can serve as local PN codes. The local PN code may correspond to a part of the entire PN code. When the local PN code is configured as a part of the entire PN code, if it is found that there is no reception code in the corresponding part, folding may be performed on the unsearched part in order to search for the remaining part that is not searched.

가상의 수신 코드를 생성할 수 있다(S320). 상기 수신 코드는 바이너리 코드의 랜덤한 지점을 선택하여 수신 코드로 추출할 수 있다. 여기서, 바이너리 코드는 상기 로컬 코드에 대응될 수 있다. 예를 들어, 두 개 이상의 로컬 코드의 일부를 랜덤하게 추출하여 수신 코드를 생성할 수 있다. 수신 코드는 로컬 코드의 전체 위상 중 랜덤하게 위상을 선택하고, 해당 부분부터 수신 신호 길이만큼을 추출할 수 있다. 추출된 코드는 실제 환경을 반영하기 위해, 시뮬레이션할 신호 대 잡음비(signal to noise ratio, SNR)에 맞춰 증폭되고, 백색 가우시안 잡음이 더해질 수 있다. 또는, 정규잡음, 비정규적 잡음, 산란, 다중 경로 효과 등이 고려되어 실제 채널 환경의 특징이 추출된 코드에 반영될 수 있다.A virtual reception code may be generated (S320). The reception code may be extracted as a reception code by selecting a random point of the binary code. Here, the binary code may correspond to the local code. For example, a reception code may be generated by randomly extracting a part of two or more local codes. The received code may randomly select a phase from among the entire phases of the local code, and extract the length of the received signal from the corresponding part. The extracted code may be amplified according to a signal to noise ratio (SNR) to be simulated to reflect an actual environment, and white Gaussian noise may be added. Alternatively, regular noise, irregular noise, scattering, multi-path effects, etc. may be considered, and the characteristics of the actual channel environment may be reflected in the extracted code.

수신 코드와 로컬 코드 간의 상관을 수행하여 코드 획득이 수행될 수 있다(S330). 예를 들어, 상기 생성된 수신 코드와 폴딩된 로컬 PN 코드를 상관하여, 폴딩된 로컬 PN 코드 내에 수신 코드 위상이 있는지 확인할 수 있다. 구체적으로, 상기 생성된 수신 코드와 폴딩된 로컬 PN 코드의 상관값 중 최대 피크를 보이는 위상을 선택한 후, 해당 위상의 상관값이 미리 설정된 문턱값을 넘는지 확인할 수 있다. 해당 위상의 상관값이 미리 설정된 문턱값을 넘는 경우, 해당 위상을 동기 위상으로 판단할 수 있다. 이 때 동기가 맞을 경우 획득 과정이 종료되고, 아니라면 획득에 실패한 것으로 획득이 완료될 때까지 폴딩, 상관, 탐색을 반복할 수 있다.Code acquisition may be performed by performing correlation between the received code and the local code (S330). For example, by correlating the generated reception code and the folded local PN code, it is possible to check whether or not there is a reception code phase in the folded local PN code. Specifically, after selecting a phase showing the maximum peak among the correlation values between the generated reception code and the folded local PN code, it is possible to check whether the correlation value of the corresponding phase exceeds a preset threshold. When the correlation value of the corresponding phase exceeds a preset threshold value, the corresponding phase may be determined as a synchronization phase. At this time, if the synchronization is correct, the acquisition process is terminated. Otherwise, the acquisition is failed and folding, correlation, and search may be repeated until acquisition is completed.

획득 시간은 상관 횟수에 비례하여 증가하므로 상관을 수행한 횟수를 카운트하여 저장할 수 있으며, 한 코드에 대한 획득이 종료되면 코드 획득에 소요된 획득 시간을 저장할 수 있다. 시뮬레이션의 신뢰도를 위해 여러 차례 수신 코드 위상을 랜덤하게 바꾸어 시뮬레이션을 수행할 수 있다. 예를 들어, 신뢰도 확보를 위해 최소 1000회 이상의 시뮬레이션이 수행될 수 있다. 반복된 시뮬레이션 각각에서 소요된 획득 시간을 평균 내어 평균 획득 시간(mean acquisition time, MAT)을 산출할 수 있다(S340). 구체적인 예로, 바이너리 코드의 위상을 랜덤하게 변경하면서 수신 코드를 생성할 수 있고, 로컬 코드와 수신 코드의 상관을 수행하여 코드를 획득하는 동작을 반복적으로 수행할 수 있다. 각각의 코드 획득에 소요된 시간을 평균하여 평균 획득 시간을 산출할 수 있다.Since the acquisition time increases in proportion to the number of correlations, the number of times the correlation is performed can be counted and stored, and when acquisition of one code is completed, the acquisition time required for acquiring the code can be stored. For the reliability of simulation, it is possible to perform simulation by randomly changing the phase of the received code several times. For example, at least 1000 simulations may be performed to secure reliability. A mean acquisition time (MAT) may be calculated by averaging the acquisition time required in each of the repeated simulations (S340). As a specific example, a received code may be generated while randomly changing a phase of a binary code, and an operation of obtaining a code by performing correlation between a local code and a received code may be repeatedly performed. The average acquisition time can be calculated by averaging the time taken to acquire each code.

이후, 상기 평균 획득 시간에 기반하여 유전 알고리즘을 활용하여 다음 세대의 PN 코드를 생성할 수 있다(S350). 유전 알고리즘(genetic algorithm)은 적합도(fitness)를 바탕으로 유전자를 선택하고, 연접, 분할, 대치, 교차 또는 돌연변이 중 적어도 하나를 수행하여 다음 세대의 유전자를 생성한다. 구체적인 예로, 평균 획득 시간이 짧을수록 해당 코드가 선택될 가능성이 높다고 판단할 수 있다. 따라서, MAT의 역수를 적합도를 판단하기 위한 기준값으로 설정할 수 있으며 초기 생성한 다수의 PN 코드 후보 별로 MAT가 모두 얻어지면, MAT의 역수를 적합도를 판단하기 위한 기준값으로 설정하고 상기 기준값이 클수록 선택될 가능성이 높아진다. 기준값이 큰 PN 코드 후보들을 선택하고, 선택된 후보들 간 교차를 수행할 수 있다. 교차가 일어나는 위치는 랜덤하게 정해질 수 있다. 교차된 유전자에 대해 변이가 수행될 수 있다. 일례로, 변이 확률에 따라 -1을 가지는 랜덤 변수가 유전자(예: PN 코드)에 곱해짐으로써 수행될 수 있다. 상술한 단계들을 거쳐 다음 세대 PN 코드를 생성할 수 있다. 즉, 유전 알고리즘을 이용하여 얻어진 새로운 PN 코드 후보를 생성할 수 있다. 새로운 유전자를 바탕으로 상기 MAT 시뮬레이션 과정을 반복하고, 반복이 종료되면 가장 우수한 적합도를 지니는 유전자를 PN 코드로 선택할 수 있다.Thereafter, based on the average acquisition time, a next generation PN code may be generated by using a genetic algorithm (S350). Genetic algorithms select genes based on fitness and perform at least one of concatenation, segmentation, substitution, crossover, or mutation to generate the next generation of genes. As a specific example, it may be determined that the shorter the average acquisition time is, the higher the probability of selecting a corresponding code. Therefore, the reciprocal of MAT can be set as a reference value for determining the degree of fitness, and when all MATs are obtained for each of the plurality of initially generated PN code candidates, the reciprocal of MAT is set as a reference value for determining the degree of fitness, and the larger the reference value, the higher the selection. The likelihood increases. PN code candidates having a large reference value may be selected, and crossing between the selected candidates may be performed. The location where the intersection occurs can be randomly determined. Mutations can be performed on the crossed genes. For example, it may be performed by multiplying a gene (eg, a PN code) by a random variable having -1 according to the probability of mutation. The next generation PN code can be generated through the above steps. That is, a new PN code candidate obtained using a genetic algorithm can be generated. Based on the new gene, the MAT simulation process is repeated, and when the repetition is completed, the gene having the best fit can be selected as the PN code.

상술한 실시 예를 통해, MAT의 역수를 적합도 판단의 기준으로 하는 유전 알고리즘을 이용하여 다음 세대의 PN 코드를 생성하고, 여러 세대를 거쳐 가장 높은 적합도를 가지는 PN 코드를 최종 PN 코드로 선택할 수 있는 효과가 있다. 이렇게 산출된 높은 적합도를 가지는 최종 PN 코드는 GNSS 수신기 및/또는 GNSS 위성 등의 장치들과 공유될 수 있고, 신호를 송수신하는데 사용될 수 있다. Through the above-described embodiment, the PN code of the next generation is generated using a genetic algorithm using the reciprocal of MAT as a criterion for determining the fitness, and the PN code having the highest fitness through several generations can be selected as the final PN code. It works. The final PN code having a high degree of suitability thus calculated may be shared with devices such as a GNSS receiver and/or a GNSS satellite, and may be used to transmit and receive signals.

도 4는 본 명세서에서 제안하는 방법이 적용될 수 있는 최적의 PN 코드 생성 장치 구성도의 일례를 나타낸다. 도 4는 단지 설명의 편의를 위한 것일 뿐, 본 발명의 범위를 제한하는 것이 아니다.4 shows an example of a configuration diagram of an optimal PN code generation apparatus to which the method proposed in the present specification can be applied. 4 is merely for convenience of description and does not limit the scope of the present invention.

도 4를 참고하면, 본 발명의 실시 예에 따른 최적화 된 PN 코드 생성 장치(400)는 제어부(410) 및, 상기 제어부(410)와 연결되는 수신 코드 생성부(420), 로컬 코드 생성부(430), 상관부(440), 유전 알고리즘 수행부(디텍터)(450)을 포함하여 구성될 수 있다. 여기서 상기 도 4에 도시된 구성요소들은 본 발명의 실시 예에 따른 최적화 된 PN 코드 생성 장치(400)를 구현하는데 있어서 필수적인 것은 아니어서, 일부 생략되거나 추가적인 구성을 가질 수도 있음은 물론이다.4, the optimized PN code generation apparatus 400 according to an embodiment of the present invention includes a control unit 410, a reception code generation unit 420 connected to the control unit 410, and a local code generation unit ( 430), a correlation unit 440, and a genetic algorithm execution unit (detector) 450. Here, the components shown in FIG. 4 are not essential in implementing the optimized PN code generation apparatus 400 according to an embodiment of the present invention, and thus, some of the components may be omitted or have additional configurations.

구체적으로, 수신 코드 생성부(420)는 제어부(410)의 제어에 따라 가상의 수신 코드를 생성할 수 있다. 상기 수신 코드 생성부(420)는 바이너리 코드의 전체 위상 중 랜덤한 위상을 선택하고, 해당 부분부터 설정된 수신 코드의 길이만큼을 추출하여 수신 코드로 생성할 수 있다. 여기서, 상기 바이너리 코드는 로컬 코드에 대응될 수 있다. 즉, 로컬 코드의 일부를 추출하여 수신 코드로 생성할 수 있다. 또한, 상기 수신 코드 생성부(420)는 실제 환경을 반영하기 위하여 백색 가우시안 잡음 생성부(422)를 포함할 수 있다.Specifically, the reception code generation unit 420 may generate a virtual reception code under the control of the control unit 410. The reception code generation unit 420 may select a random phase among all phases of the binary code, extract a length of a set reception code from a corresponding portion, and generate a reception code. Here, the binary code may correspond to a local code. That is, a part of the local code can be extracted and generated as a received code. In addition, the reception code generation unit 420 may include a white Gaussian noise generation unit 422 to reflect an actual environment.

또한, 로컬 코드 생성부(430)는 제어부(410)의 제어에 따라 로컬 코드를 생성할 수 있다. 상기 로컬 코드는 PN 코드의 후보가 될 이진 유전자를 생성하는 단계 및 폴딩을 수행하는 단계를 통해 생성될 수 있다. 따라서, 상기 로컬 코드 생성부(430)는 PN 코드의 후보가 될 이진 유전자를 폴딩하는 폴딩부(432)를 포함할 수 있다. 상기 폴딩부(432)에서 폴딩이 수행되는 방법의 일례를 설명한다. 미리 설정된 수신 코드 길이를 기준으로 로컬 PN 코드의 후보가 될 이진 유전자를 분할할 수 있다. 분할된 로컬 PN 코드의 후보가 될 이진 유전자는 폴딩 수만큼 겹쳐질 수 있다. 상기 폴딩부(432)는 분할된 로컬 PN 코드의 후보가 될 이진 유전자들을 덧셈 또는 곱셈 중 어느 하나의 연산 방식에 따라 연산을 수행하여 폴딩을 수행할 수 있다. 상술한 분할되고 겹쳐진 폴딩된 이진 유전자는 로컬 PN 코드의 역할을 할 수 있다, 상기 로컬 PN 코드는 전체 PN 코드의 일부분에 해당할 수도 있다. 전체 PN 코드의 일부분으로 상기 로컬 PN 코드가 구성된 경우, 만약 해당 부분에 수신 코드가 없는 것으로 판명된다면 검색되지 않는 나머지 부분을 검색하기 위해, 검색되지 않은 부분을 대상으로 폴딩을 수행할 수 있다.In addition, the local code generation unit 430 may generate a local code under the control of the controller 410. The local code may be generated through the steps of generating a binary gene to be a candidate for the PN code and performing folding. Accordingly, the local code generation unit 430 may include a folding unit 432 for folding a binary gene to be a candidate for a PN code. An example of a method of performing folding in the folding unit 432 will be described. A binary gene that will be a candidate for a local PN code can be divided based on a preset received code length. Binary genes that will be candidates for the divided local PN code can be overlapped by the number of folds. The folding unit 432 may perform folding by performing an operation on binary genes that will be candidates for the divided local PN code according to an operation method of addition or multiplication. The above-described divided and overlapped folded binary gene may serve as a local PN code, and the local PN code may correspond to a part of the entire PN code. When the local PN code is configured as a part of the entire PN code, if it is found that there is no reception code in the corresponding part, folding may be performed on the unsearched part in order to search for the remaining part that is not searched.

또한, 상관부(440)는 제어부(410)의 제어에 의해 상관을 수행할 수 있다. 상관부(440)를 통해 수신 코드와 로컬 코드의 상관이 수행될 수 있다. 구체적으로, 상관부(440)는 상관값 산출부(441)를 포함할 수 있으며, 상관을 수행하여 상관값을 산출할 수 있다. 일례로, 상관값 산출부(441)은 적분기(integrator)에 해당할 수 있다. 상관부(440)는 비교부(442)를 포함할 수 있으며, 산출된 상관값 중 최대 피크를 보이는 위상을 선택한 후, 해당 위상의 상관값이 미리 설정된 문턱값을 넘는지를 비교할 수 있다. 여기서, 비교부는 비교기(comparator)에 대응될 수 있다. 상관부(440)는 판단부(443)를 포함할 수 있으며, 판단부(443)는 해당 위상의 상관값이 문턱값을 넘는 경우는 동기 위상으로 판단할 수 있고, 동기가 맞는 경우 코드 획득에 성공했다고 판단할 수 있다. 여기서 판단부는 검파기(detector)라는 표현으로 대체될 수도 있다.In addition, the correlation unit 440 may perform correlation under the control of the controller 410. Correlation between the received code and the local code may be performed through the correlation unit 440. Specifically, the correlation unit 440 may include a correlation value calculation unit 441, and may calculate a correlation value by performing correlation. For example, the correlation value calculation unit 441 may correspond to an integrator. The correlation unit 440 may include a comparison unit 442, and after selecting a phase showing the maximum peak among the calculated correlation values, it may compare whether the correlation value of the corresponding phase exceeds a preset threshold value. Here, the comparator may correspond to a comparator. The correlation unit 440 may include a determination unit 443, and the determination unit 443 may determine a synchronization phase when the correlation value of the corresponding phase exceeds a threshold value, and when synchronization is correct, You can judge that you have succeeded. Here, the determination unit may be replaced with an expression of a detector.

또한, 유전 알고리즘 수행부(450)는 평균 획득 시간(MAT) 산출부(451)를 포함할 수 있다. 상기 MAT 산출부(451)는 상관부(440)에서 코드 획득에 성공했다고 판단하기 까지 걸리는 시간을 저장하는 저장할 수 있으며, 상기 코드 획득 과정을 반복하여 수행하도록 제어하고, 반복된 수행을 통한 평균 획득 시간을 연산하여 평균 획득 시간을 산출할 수 있다. 유전 알고리즘 수행부(450)는 적합도 판단부(452)를 포함할 수 있으며, 상기 MAT 산출부(451)에서 산출된 MAT를 적합도 판단의 기준으로 하여 유전 알고리즘을 수행할 수 있다. 유전 알고리즘 수행부(450)는 다음 세대 PN 코드 생성부(453)를 포함할 수 있으며, MAT가 최소인 로컬 코드를 선택, 연접, 분할, 대치, 교차 또는 돌연 변이 중 적어도 하나를 수행하여 다음 세대의 PN 코드를 생성할 수 있다.In addition, the genetic algorithm execution unit 450 may include an average acquisition time (MAT) calculation unit 451. The MAT calculation unit 451 may store and store the time it takes for the correlation unit 440 to determine that the code has been successfully acquired, control to repeat the code acquisition process, and obtain an average through repeated execution. The average acquisition time can be calculated by calculating the time. The genetic algorithm execution unit 450 may include a fitness level determination unit 452, and may perform a genetic algorithm using the MAT calculated by the MAT calculation unit 451 as a criterion for determining the fitness level. The genetic algorithm execution unit 450 may include a next generation PN code generation unit 453, and selects a local code with the minimum MAT, performs at least one of concatenation, division, substitution, intersection, or mutation PN code can be generated.

도 5는 PN 코드 생성 장치가 GNSS 수신기 및/또는 GNSS 위성과 연결된 일례를 나타낸다. 도 5는 단지 설명의 편의를 위한 것일 뿐, 본 발명의 범위를 제한하는 것이 아니다. 도 5를 참고하면, 상술한 PN 코드 생성 장치(400)은 GNSS 수신기(520) 및/또는 GNSS 위성(510) 등의 장치들과 연결되어 생성한 높은 적합도를 가지는 최종 PN 코드를 공유할 수 있고, PN 코드는 신호를 송수신하는데 사용될 수 있다. 5 shows an example in which the PN code generation apparatus is connected to a GNSS receiver and/or a GNSS satellite. 5 is only for convenience of description and does not limit the scope of the present invention. Referring to FIG. 5, the above-described PN code generation apparatus 400 may share a final PN code having a high degree of suitability generated by being connected to devices such as a GNSS receiver 520 and/or a GNSS satellite 510, and , PN code can be used to transmit and receive signals.

도 6은 본 명세서에서 제안하는 PN 코드와 기존 PN 코드의 평균 획득 시간 (mean acquisition time, MAT) 성능을 나타낸다. 도 6을 참고하면, 제안한 PN 코드와 최대 길이 코드 (m-code), 정밀 코드 (precision code: P-code)와 비교한 MAT 성능으로, 제안한 PN 코드가 가장 빠른 획득을 보임을 알 수 있다.6 shows the mean acquisition time (MAT) performance of the PN code proposed in the present specification and the existing PN code. Referring to FIG. 6, with MAT performance compared to the proposed PN code, maximum length code (m-code), and precision code (P-code), it can be seen that the proposed PN code shows the fastest acquisition.

도 7은 본 명세서에서 제안하는 PN 코드와 기존 PN 코드의 평균 획득 오류 (normalized mean acquisition error: NMAE) 성능을 나타낸다. 도 7을 참고하면, 코드 획득 속도 성능뿐 만 아니라, 평균 획득 오류 (normalized mean acquisition error: NMAE) 측면에서도 더욱 우수한 성능을 나타낸다. 7 shows the normalized mean acquisition error (NMAE) performance of the PN code proposed in the present specification and the existing PN code. Referring to FIG. 7, not only the code acquisition speed performance but also the normalized mean acquisition error (NMAE) performance is more excellent.

이상에서 설명된 방법 및 실시예들은 본 발명의 구성요소들과 특징들이 소정 형태로 결합된 것들이다. 각 구성요소 또는 특징은 별도의 명시적 언급이 없는 한 선택적인 것으로 고려되어야 한다. 각 구성요소 또는 특징은 다른 구성요소나 특징과 결합되지 않은 형태로 실시될 수 있다. 또한, 일부 구성요소들 및/또는 특징들을 결합하여 본 발명의 실시예를 구성하는 것도 가능하다. 본 발명의 실시예들에서 설명되는 동작들의 순서는 변경될 수 있다. 어느 실시예의 일부 구성이나 특징은 다른 실시예에 포함될 수 있고, 또는 다른 실시예의 대응하는 구성 또는 특징과 교체될 수 있다. 특허청구범위에서 명시적인 인용 관계가 있지 않은 청구항들을 결합하여 실시예를 구성하거나 출원 후의 보정에 의해 새로운 청구항으로 포함시킬 수 있음은 자명하다.The methods and embodiments described above are those in which components and features of the present invention are combined in a predetermined form. Each component or feature should be considered optional unless explicitly stated otherwise. Each component or feature may be implemented in a form that is not combined with other components or features. In addition, it is also possible to constitute an embodiment of the present invention by combining some components and/or features. The order of operations described in the embodiments of the present invention may be changed. Some configurations or features of one embodiment may be included in other embodiments, or may be replaced with corresponding configurations or features of other embodiments. It is obvious that the embodiments may be configured by combining claims that do not have an explicit citation relationship in the claims or may be included as new claims by amendment after filing.

본 발명은 본 발명의 필수적 특징을 벗어나지 않는 범위에서 다른 특정한 형태로 구체화될 수 있음은 당업자에게 자명하다. 따라서, 상술한 상세한 설명은 모든 면에서 제한적으로 해석되어서는 아니 되고 예시적인 것으로 고려되어야 한다. 본 발명의 범위는 첨부된 청구항의 합리적 해석에 의해 결정되어야 하고, 본 발명의 등가적 범위 내에서의 모든 변경은 본 발명의 범위에 포함된다.It is obvious to those skilled in the art that the present invention can be embodied in other specific forms without departing from the essential features of the present invention. Therefore, the above detailed description should not be construed as restrictive in all respects and should be considered as illustrative. The scope of the present invention should be determined by reasonable interpretation of the appended claims, and all changes within the equivalent scope of the present invention are included in the scope of the present invention.

400 : PN 코드 생성 장치
410 : 제어부
420 : 수신 코드 생성부
421 : 코드 생성부
422 : 잡음 생성부
430 : 로컬 코드 생성부
431 : 코드 생성부
432 : 폴딩부
440: 상관부
441 : 상관값 산출부
442 : 비교부
443 : 판단부
450 : 유전 알고리즘 수행부
451 : MAT 산출부
452 : 적합도 판단부
453 : 다음 세대 PN 코드 생성부
400: PN code generation device
410: control unit
420: receiving code generation unit
421: code generation unit
422: noise generator
430: local code generation unit
431: code generation unit
432: folding part
440: supervisor
441: correlation value calculation unit
442: comparison unit
443: judgment unit
450: Genetic algorithm execution unit
451: MAT calculation unit
452: suitability determination unit
453: next generation PN code generation unit

Claims (13)

무선 통신 시스템에서 PN 코드를 생성하는 방법에 있어서,
두 개 이상의 로컬 코드들을 생성하는 단계;
수신 코드를 생성하는 단계;
상기 두 개 이상의 로컬 코드들의 각 로컬 코드와 상기 수신 코드 간의 상관 동작을 수행하여 코드를 획득하는 단계;
상기 코드의 획득에 소요되는 평균 획득 시간(mean acquisition time, MAT)을 산출하는 단계; 및
상기 평균 획득 시간에 기반하여 적합도를 판단하는 유전 알고리즘을 이용하여 상기 PN 코드를 생성하는 단계를 포함하는 것을 특징으로 하는 PN 코드 생성 방법.
In a method for generating a PN code in a wireless communication system,
Generating two or more local codes;
Generating a receiving code;
Obtaining a code by performing a correlation operation between each local code of the two or more local codes and the received code;
Calculating a mean acquisition time (MAT) required to acquire the code; And
And generating the PN code by using a genetic algorithm for determining a fitness level based on the average acquisition time.
제 1항에 있어서,
상기 두 개 이상의 로컬 코드들의 각 로컬 코드는
바이너리 코드를 생성하는 단계; 및
상기 바이너리 코드에 대해 폴딩을 수행하는 단계를 통해 생성되는 것을 특징으로 하는 PN 코드 생성 방법.
The method of claim 1,
Each local code of the two or more local codes is
Generating a binary code; And
PN code generation method, characterized in that generated through the step of performing folding on the binary code.
제 2항에 있어서,
상기 바이너리 코드는 1 또는 -1로 구성되는 것을 특징으로 하는 PN 코드 생성 방법.
The method of claim 2,
The binary code is a PN code generation method, characterized in that consisting of 1 or -1.
제 2항에 있어서,
상기 바이너리 코드에 대한 폴딩은
상기 바이너리 코드를 분할하고, 덧셈 또는 곱셈 중 어느 하나의 연산 방식에 따라 분할된 바이너리 코드들에 대한 연산을 수행하는 것을 특징으로 하는 PN 코드 생성 방법.
The method of claim 2,
Folding for the above binary code
The method of generating a PN code, wherein the binary code is divided and the divided binary codes are operated according to an operation method of addition or multiplication.
제 2항에 있어서,
상기 수신 코드는 상기 바이너리 코드의 랜덤한 지점을 선택하여 추출하고, 채널 환경의 특징을 반영하여 생성되는 것을 특징으로 하는 PN 코드 생성 방법.
The method of claim 2,
The received code is generated by selecting and extracting a random point of the binary code and reflecting characteristics of a channel environment.
제 1항에 있어서,
상기 상관 동작을 수행하는 방법은 상기 두 개 이상의 로컬 코드들의 각 로컬 코드와 상기 수신 코드의 상관값이 미리 설정된 문턱값 이상인 경우의 위상값을 선택하는 방식으로 수행되는 것을 특징으로 하는 PN 코드 생성 방법.
The method of claim 1,
The method of performing the correlation operation is performed by selecting a phase value when a correlation value between each local code of the two or more local codes and the received code is equal to or greater than a preset threshold value. .
제 1항에 있어서,
상기 평균 획득 시간을 산출하는 단계는,
상기 두 개 이상의 로컬 코드의 일부를 랜덤하게 추출하여 상기 수신 코드를 생성하고, 상기 두 개 이상의 로컬 코드들의 각 로컬 코드와 상기 수신 코드 간의 상관 동작을 수행하여 코드를 획득하는 단계를 반복적으로 수행하여, 각각의 코드 획득에 소요된 시간을 평균하여 평균 획득 시간으로 산출하는 것을 특징으로 하는 PN 코드 생성 방법.
The method of claim 1,
The step of calculating the average acquisition time,
Iteratively performs the step of obtaining a code by randomly extracting a portion of the two or more local codes to generate the received code, and performing a correlation operation between each local code of the two or more local codes and the received code , PN code generation method, characterized in that calculating the average acquisition time by averaging the time required for each code acquisition.
제 1항에 있어서,
상기 유전 알고리즘은, 상기 평균 획득 시간에 기반하여 상기 적합도를 판단하되, 상기 평균 획득 시간의 역수를 상기 적합도를 판단하기 위한 기준값으로 적용하고, 상기 기준값이 클수록 높은 적합도 값을 갖는 것으로 판단하는 것을 특징으로 하는 PN 코드 생성 방법.
The method of claim 1,
The genetic algorithm determines the fitness based on the average acquisition time, but applies the reciprocal of the average acquisition time as a reference value for determining the fitness, and determines that the larger the reference value has a higher fitness value. PN code generation method
제 8항에 있어서,
상기 유전 알고리즘은, 상기 적합도 값이 높은 로컬 코드를 선택하고, 상기 로컬 코드의 연접, 분할, 대치, 교차 또는 돌연변이 중 적어도 하나를 수행하여 다음 세대 PN 코드를 생성하는 것을 특징으로 하는 PN 코드 생성 방법.
The method of claim 8,
The genetic algorithm selects a local code having a high fitness value, and generates a next generation PN code by performing at least one of concatenation, division, substitution, intersection, or mutation of the local code. .
무선 통신 시스템에서 PN 코드를 생성하는 장치에 있어서,
로컬 코드를 생성하는 로컬 코드 생성부;
수신 코드를 생성하는 수신 코드 생성부;
상기 로컬 코드와 상기 수신 코드 간의 상관 동작을 수행하는 상관부; 및
상기 상관부에서 상관 동작을 수행하여 코드를 획득하는데 소요된 평균 획득 시간을 산출하고, 상기 평균 획득 시간의 역수를 적합도를 판단하기 위한 기준값으로 하는 유전 알고리즘을 이용하여 다음 세대 PN 코드 생성을 수행하는 유전 알고리즘 수행부를 포함하는 PN 코드 생성 장치.
In the device for generating a PN code in a wireless communication system,
A local code generator for generating a local code;
A reception code generation unit for generating a reception code;
A correlation unit performing a correlation operation between the local code and the received code; And
The correlation unit performs a correlation operation to calculate the average acquisition time required to acquire the code, and performs the next generation PN code generation using a genetic algorithm using the reciprocal of the average acquisition time as a reference value for determining the fitness. PN code generation apparatus including a genetic algorithm execution unit.
제 10항에 있어서,
상기 로컬 코드 생성부는 폴딩부를 포함하되, 상기 폴딩부는 바이너리 코드를 분할하고, 덧셈 또는 곱셈 중 어느 하나의 연산 방식에 따라 분할된 바이너리 코드들에 대한 연산을 통해 폴딩을 수행하는 것을 특징으로 하는 PN 코드 생성 장치.
The method of claim 10,
The local code generation unit includes a folding unit, wherein the folding unit divides the binary code, and performs folding through an operation on the divided binary codes according to an operation method of addition or multiplication. Generating device.
제 10항에 있어서,
상기 유전 알고리즘 수행부는 상기 평균 획득 시간 산출을 수행하는 산출부를 포함하되, 상기 평균 획득 시간을 산출하는 단계는 상기 수신 코드 생성부가 바이너리 코드의 위상을 랜덤하게 변경하여 상기 수신 코드를 생성하고, 상기 상관부가 상기 로컬 코드와 상기 수신 코드 간의 상관 동작을 수행하여 코드를 획득하는 단계를 반복적으로 수행하여, 상기 산출부가 각각의 코드 획득에 소요된 시간을 평균하여 상기 평균 획득 시간을 산출하는 것을 특징으로 하는 PN 코드 생성 장치.
The method of claim 10,
The genetic algorithm execution unit includes a calculation unit that calculates the average acquisition time, wherein the calculating of the average acquisition time includes the reception code generation unit randomly changing a phase of a binary code to generate the reception code, and the correlation The step of obtaining a code by performing an additional correlation operation between the local code and the received code is repeatedly performed, and the calculation unit calculates the average acquisition time by averaging the time taken to acquire each code. PN code generation device.
제 10항에 있어서,
상기 유전 알고리즘 수행부는 높은 적합도 값을 갖는 로컬 코드를 선택하고 상기 로컬 코드의 연접, 분할, 대치, 교차 또는 돌연변이 중 적어도 하나를 수행하여 다음 세대 PN 코드를 생성하도록 동작하는 것을 특징으로 하는 PN 코드 생성 장치.

The method of claim 10,
The genetic algorithm execution unit is operable to generate a next generation PN code by selecting a local code having a high fitness value and performing at least one of concatenation, division, substitution, intersection, or mutation of the local code. Device.

KR1020190077324A 2019-06-27 2019-06-27 An apparatus of acquisition time simulation for PN code optimization KR102154756B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190077324A KR102154756B1 (en) 2019-06-27 2019-06-27 An apparatus of acquisition time simulation for PN code optimization

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190077324A KR102154756B1 (en) 2019-06-27 2019-06-27 An apparatus of acquisition time simulation for PN code optimization

Publications (1)

Publication Number Publication Date
KR102154756B1 true KR102154756B1 (en) 2020-09-10

Family

ID=72450467

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190077324A KR102154756B1 (en) 2019-06-27 2019-06-27 An apparatus of acquisition time simulation for PN code optimization

Country Status (1)

Country Link
KR (1) KR102154756B1 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20090004022A (en) * 2007-07-06 2009-01-12 인하대학교 산학협력단 Multiuser detect device of ds-cdma system and method thereof
KR101201029B1 (en) * 2011-10-26 2012-11-14 성균관대학교산학협력단 Method for analyzing performance of searching algorithm for time acquisition in uwb system

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20090004022A (en) * 2007-07-06 2009-01-12 인하대학교 산학협력단 Multiuser detect device of ds-cdma system and method thereof
KR101201029B1 (en) * 2011-10-26 2012-11-14 성균관대학교산학협력단 Method for analyzing performance of searching algorithm for time acquisition in uwb system

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
C. Yang, J. Chaffee, J. Abel, and M. J. Vasquez, "Fast direct P(Y)-code acquisition using XFAST," in Proc. ION GPS 2000, pp. 19-22, Salt Lake City, UT, Sep, 2000.
Keunhong Chae and Seokho Yoon, "Efficient Folding Processor for Direct Precision Code Acquisition in Global Positioning System Sensors", Sensors and Materials, Vol. 30, No. 3 (2018) 403-412, 2018.03. 1부.* *
Keunhong Chae, Seokho Yoon, "Design of a Novel PN Code Based on Genetic Algorithm for Rapid GNSS Signal Acquisition", 2019 European Navigation Conference (ENC), 16 May 2019. 1부.* *

Similar Documents

Publication Publication Date Title
JP4796626B2 (en) Spreading codes for satellite navigation systems.
CN101578799B (en) Chaotic spreading codes and their generation
JP4796589B2 (en) Spreading codes for satellite navigation systems.
US10088573B2 (en) Navigation system using spreading codes based on pseudo-random noise sequences
CN112327334B (en) GNSS long code signal capturing method and device assisted by low-orbit satellite
CN102037658B (en) Multiple correlation processing in code space search
KR101564828B1 (en) Signal processing method for ultra-fast acquisition and tracking of severely attenuated spread spectrum signals with doppler frequency and apparatus thereof
CN107817506B (en) Cepstral-based multipath mitigation for spread spectrum radio communication signals
TW201512689A (en) Method, apparatus, and article for processing combined navigation signals
US20130039392A1 (en) Satellite Signal Acquisition
US10671923B2 (en) Genetic method for the tracking of time varying signals
CN105527634B (en) A kind of satellite navigation message processing method and GPS receiver
KR102154756B1 (en) An apparatus of acquisition time simulation for PN code optimization
KR101818162B1 (en) Acquisition method for precision code based on parallel folding and receiver for acquiring precision code based on parallel folding
Macchi-Gernot et al. Combined acquisition and tracking methods for GPS L1 C/A and L1C signals
Moghaddam et al. Exploiting the orthogonality of L2C code delays for a fast acquisition
KR101702890B1 (en) Apparatus and method for receiving signal of global navigation satellite system
CA2881495A1 (en) Method for correlating a received satellite radio-navigation signal and correlation device implementing the method
CN104422939B (en) Method and apparatus for being associated with the signal received from navigational satellite system
JP6860971B2 (en) Signal processing device and receiving device and code tracking method
KR101767571B1 (en) Acquisition method for precision code at receiver
KR20170136722A (en) Acquisition method for precision code based on memory array and receiver for acquiring precision code based on memory array
KR102154753B1 (en) Method for tracking alternative binary offset carrier signal and apparatus therefor
Li et al. Direct P (Y)/M-code acquisition based on time-frequency folding technique
KR20110138152A (en) Improvements to reception of spread spectrum signals

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant