Notch filter code phase impact mitigation

By using notch filter technology in the GNSS receiver, the influence of local interference signals on code phase measurement was resolved, positioning accuracy was improved, and more accurate GNSS positioning was achieved.

CN116802519BActive Publication Date: 2026-02-24QUALCOMM INC
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202180091132.8
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Priority Date
2021-09-13
Filing Date
2021-11-23
Publication Date
2026-02-24
Estimated Expiration
2041-11-23

AI Technical Summary

Technical Problem

In wireless communication systems, Global Navigation Satellite System (GNSS) receivers are affected by local interference signals, leading to inaccurate code phase measurements and affecting the accuracy of positioning estimation.

Method used

By employing notch filter technology, the pseudo-random noise code and Doppler frequency are determined through the configuration of the notch filter, and the code phase correction value is calculated to mitigate the impact of interference signals on the GNSS receiver and improve positioning accuracy.

Benefits of technology

By using notch filter technology, the impact of interference signals on the GNSS receiver is reduced, the accuracy of code phase measurement is improved, and thus the accuracy of GNSS positioning is enhanced.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116802519B_ABST
    Figure CN116802519B_ABST
Patent Text Reader

Abstract

Techniques are provided for overcoming narrowband interference with notch filters. An example method for determining, with a receiver, a distance to a satellite vehicle includes receiving a signal from the satellite vehicle, determining one or more notch filter configurations, determining a pseudo-random noise code and a Doppler frequency associated with the signal, determining a code phase correction value based at least on the one or more notch filter configurations, the pseudo-random noise code, and the Doppler frequency, and calculating the distance to the satellite vehicle based at least in part on the signal and the code phase correction value.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] background

[0002] Wireless communication systems have undergone several generations of development, including first-generation analog wireless telephony (1G), second-generation (2G) digital wireless telephony (including transitional 2.5G and 2.75G networks), third-generation (3G) high-speed data wireless services with Internet capabilities, fourth-generation (4G) services (e.g., LTE or WiMax), and fifth-generation (5G) services. Currently, many different types of wireless communication systems are in use, including cellular and Personal Communication Services (PCS) systems. Known examples of cellular systems include cellular analog Advanced Mobile Phone Systems (AMPS), and digital cellular systems based on Code Division Multiple Access (CDMA), Frequency Division Multiple Access (FDMA), Time Division Multiple Access (TDMA), and GSM TDMA variants.

[0003] It is typically desired to know the location of a user equipment (UE) (e.g., a cellular phone), where the terms "location" and "positioning" are synonymous and can be used interchangeably herein. A Location Services (LCS) client may require knowledge of the UE's location and may communicate with a location center to request the UE's location. The location center and the UE may exchange messages appropriately to obtain a location estimate for the UE. The location center may then return this location estimate to the LCS client, for example, for use in one or more applications.

[0004] Obtaining the location of a mobile device accessing a wireless network can be useful for many applications, including emergency calls, personal navigation, asset tracking, and locating friends or family members. Existing location methods include those based on measuring radio signals transmitted from various devices, including satellite carriers and terrestrial radio sources (such as base stations and access points) within the wireless network.

[0005] Many UEs include Global Navigation Satellite System (GNSS) receivers and can determine their location by precisely measuring the arrival times of signaling events received from multiple satellites. Satellite carriers (SVs) in GNSS systems typically use spread spectrum decoding to transmit data. For example, the Global Positioning System (GPS) utilizes Code Division Multiple Access (CDMA). Each SV is assigned a coarse acquisition (CA) code, which is similar to pseudo-random noise and unique to that SV. Each SV uses its own CA code to encode data and transmit the encoded data on a carrier frequency. Thus, multiple SVs can transmit data simultaneously on a shared carrier frequency. Each CA code consists of a sequence of 1023 “chips,” each assigned a value of 0 or 1. The CA code is transmitted at a rate of 1.023 MHz, therefore, each chip period is approximately 0.977 μs. Each SV continuously transmits a repeating pattern including its own CA code. GPS SVs can encode navigation or system data by reversing the transmitted CA code. The CA code phase is the relationship between the CA code and a reference clock or other CA codes transmitted by other SVs. Although the CA code phase can be synchronized between each SV during transmission, the CA code may be received at different delays at the GPS receiver due to different propagation times. Typically, the GPS receiver determines which CA codes are being received in order to determine which GPS satellites are in the field of view.

[0006] Receiving signals from GPS satellites presents numerous obstacles. Specifically, UEs configured to utilize other wireless technologies, such as Wi-Fi, Bluetooth, and other cellular-based technologies, can generate signals that interfere with the spread spectrum used by GNSS receivers. For example, harmonics or other artifacts from the oscillator within the UE can cause localized interference in one or more areas of the radio frequency spectrum used by the GNSS receiver. Notch filtering within the GNSS receiver can be used to reduce the impact of such interfering signals.

[0007] Overview

[0008] An example method for determining the distance to a satellite launcher using a receiver, according to this disclosure, includes: receiving a signal from the satellite launcher; determining one or more notch filter configurations; determining a pseudo-random noise code and a Doppler frequency associated with the signal; determining a code phase correction value based at least on the one or more notch filter configurations, the pseudo-random noise code, and the Doppler frequency; and calculating the distance to the satellite launcher based at least in part on the signal and the code phase correction value.

[0009] Implementation of such methods may include one or more of the following features. Determining the code phase correction value may include obtaining the code phase correction value from a lookup table based on the one or more notch filter configurations, the pseudo-random noise code, and the Doppler frequency. Ancillary data may be received from a network entity, wherein the ancillary data includes the lookup table. The ancillary data may be received via one or more Long Term Evolution Positioning Protocol (LPP) messages. The ancillary data may be received via one or more Radio Resource Control (RRC) messages. Determining the code phase correction value may include obtaining the code phase correction value based on an interpolation function. The lookup table may be generated by the receiver based on a modeled autocorrelation function for multiple notch filter configurations, and wherein determining the code phase correction value includes obtaining the code phase correction value from the lookup table based on the one or more notch filter configurations, the pseudo-random noise code, and the Doppler frequency. The one or more notch filters may be configured to include one or more notch frequencies and one or more bandwidths associated with the one or more notch frequencies. Calculating the distance to the satellite launch vehicle may include determining the pseudorange to the satellite launch vehicle based on the signal. The receiver may include one or more notch filters, which may include one or more digital filters having a programmable center frequency and bandwidth.

[0010] An example apparatus according to this disclosure includes a memory, at least one satellite positioning system receiver configured to receive a signal from a satellite launch vehicle, and at least one processor communicatively coupled to the memory and the at least one satellite positioning system receiver and configured to: receive the signal from the satellite launch vehicle; determine one or more notch filter configurations; determine a pseudo-random noise code and a Doppler frequency associated with the signal; determine a code phase correction value based at least on the one or more notch filter configurations, the pseudo-random noise code, and the Doppler frequency; and calculate a distance to the satellite launch vehicle based at least in part on the signal and the code phase correction value.

[0011] Implementations of such an apparatus may include one or more of the following features. The at least one processor may be further configured to obtain the code phase correction value from a lookup table based on the one or more notch filter configurations, the pseudo-random noise code, and the Doppler frequency. The apparatus may include at least one transceiver communicatively coupled to the at least one processor, such that the at least one processor is further configured to receive auxiliary data from a network entity, wherein the auxiliary data includes the lookup table. The auxiliary data may be received via one or more Long Term Evolution Positioning Protocol (LPP) messages. The auxiliary data may be received via one or more Radio Resource Control (RRC) messages. The at least one processor may be further configured to obtain the code phase correction value based on an interpolation function. The at least one processor may be further configured to generate a lookup table based on a modeled autocorrelation function for a plurality of notch filter configurations, and obtain the code phase correction value from the lookup table based on the one or more notch filter configurations, the pseudo-random noise code, and the Doppler frequency. The one or more notch filter configurations may include one or more notch frequencies and one or more bandwidths associated with the one or more notch frequencies. The at least one processor may be further configured to determine the pseudorange to the satellite launch vehicle based on the signal. The one or more notch filter configurations may include one or more digital filters with programmable center frequencies and bandwidths.

[0012] An example apparatus for determining the distance to a satellite launch vehicle according to the present disclosure includes: means for receiving a signal from the satellite launch vehicle; means for determining one or more notch filter configurations; means for determining a pseudo-random noise code and a Doppler frequency associated with the signal; means for determining a code phase correction value based at least on the one or more notch filter configurations, the pseudo-random noise code, and the Doppler frequency; and means for calculating the distance to the satellite launch vehicle based at least in part on the signal and the code phase correction value.

[0013] An example non-transient processor-readable storage medium according to this disclosure includes processor-readable instructions for enabling one or more processors to determine the distance to a satellite launcher, comprising: code for receiving a signal from the satellite launcher; code for determining one or more notch filter configurations; code for determining a pseudo-random noise code and a Doppler frequency associated with the signal; code for determining a code phase correction value based at least on the one or more notch filter configurations, the pseudo-random noise code, and the Doppler frequency; and code for calculating the distance to the satellite launcher based at least in part on the signal and the code phase correction value.

[0014] The items and / or techniques described herein can provide one or more of the following capabilities, as well as others not mentioned. A GNSS receiver can receive signals from a satellite launcher in the radio frequency spectrum. Reception within one or more frequencies in the spectrum can be degraded due to local jammers. Notch filters can be used to mitigate the effects of interference. The accuracy of code phase measurements can be reduced due to the use of notch filters. The impact on code phase measurements depends on the pseudo-random noise code of the received signal, the satellite launcher's Doppler frequency, and the notch configuration. A lookup table can be generated to select a code phase correction value based on the pseudo-random noise code of the received signal, the satellite launcher's Doppler frequency, and the notch configuration. The lookup table can be generated locally on the GNSS receiver and / or received from a network as auxiliary data. The code phase correction value can be used to improve distance calculations. The accuracy of GNSS positioning estimation can be improved. Other capabilities can be provided, and not every implementation according to this disclosure is required to provide any, let alone all, of the capabilities discussed. Brief description of the attached diagram

[0016] Figure 1 This is a simplified diagram of an example wireless communication system.

[0017] Figure 2 yes Figure 1 The diagram shows a block diagram of the components of an example user equipment.

[0018] Figure 3 This is a block diagram of the components of an example send / receive point.

[0019] Figure 4 This is a block diagram of the components of the example server, and various embodiments of this example server are shown below. Figure 1 As shown in the image.

[0020] Figure 5 This is a diagram of an example GNSS receiver in user equipment.

[0021] Figure 6A This is a graph of an example GNSS spectrum with a notch filter applied.

[0022] Figure 6B This is a graph comparing the example autocorrelation functions with and without a notch filter.

[0023] Figure 6C This is a plot of the code phase error values ​​based on the frequency of the example notch filter.

[0024] Figure 7 This is a block diagram of an example process for offline phase compensation based on a notch filter configuration.

[0025] Figure 8 This is a block diagram of an example process for calculating code phase correction values.

[0026] Figure 9 This is a block diagram of an example procedure for online phase calculation based on notch filter configuration.

[0027] Figure 10A-10D Includes example plots of code phase errors for multiple satellite launch vehicle and notch filter configurations.

[0028] Figure 11 This is a flowchart of an example method for calculating the distance to a satellite launch vehicle.

[0029] Detailed description

[0030] This article discusses techniques for overcoming narrowband interference using notch filters. A notch filter is defined as any receiver element or process that attenuates or removes a portion of the received signal. For example, a programmable filter can be used to attenuate a portion of the received spectrum around a programmed narrowband jammer frequency. Alternatively, an adaptive filter can be used, which automatically updates its frequency response to attenuate the received spectrum around any dynamically occurring narrowband jammer. Alternatively, an interference canceller can be used, where the narrowband jammer signal is estimated and subtracted from the received signal. Filtering or interference cancellation can be implemented by analog or digital devices, or any combination thereof. The digital front-end (DFE) in a GNSS receiver can utilize notch filters to mitigate the effects of narrowband interference such as main signals and / or harmonic signals generated by other oscillators in the mobile device. In operation, notch filters can affect code phase measurements obtained by the GNSS receiver, and thus also affect the accuracy of positioning estimates based on these measurements. Distortion in code phase measurements can be based on several factors, such as the number and bandwidth of the notch filters, the pseudo-random noise (PRN) code of the transmitting SV, and the notch frequency relative to the SV Doppler frequency. In one example, the techniques presented herein utilize one or more lookup tables (LUTs) to determine code phase error values ​​based on the PRN code, notch frequency, notch bandwidth, and SV Doppler frequency. The LUTs can be provided to the UE via a communication network (e.g., as distance-aided data) and / or other device-to-device communication links. In another example, the code phase error values ​​can be generated online based on the PRN code, notch frequency, notch bandwidth, and SV Doppler frequency (i.e., locally generated on the UE). Online generation of code phase errors can mitigate dynamic notch filtering. These techniques and configurations are examples, and other techniques and configurations can be used.

[0031] Reference Figure 1Examples of communication system 100 include UE 105, radio access network (RAN) 135 (here, fifth-generation (5G) next-generation (NG) RAN (NG-RAN)), and 5G core network (5GC) 140. UE 105 can be, for example, an IoT device, a location tracker device, a cellular phone, or other device. The 5G network can also be referred to as a new radio (NR) network; NG-RAN 135 can be referred to as 5G RAN or NR RAN; and 5GC 140 can be referred to as NG core network (NGC). Standardization of NG-RAN and 5GC is underway within the 3rd Generation Partnership Project (3GPP). Accordingly, NG-RAN 135 and 5GC 140 can comply with current or future standards from 3GPP for 5G support. RAN 135 can be another type of RAN, such as 3G RAN, 4G Long Term Evolution (LTE) RAN, etc. Communication system 100 may utilize information from constellation 185 of satellite launchers (SVs) 190, 191, 192, and 193 of a satellite positioning system (SPS) such as GPS, GLONASS, Galileo, or BeiDou, or some other local or regional SPS (such as the Indian Regional Navigation Satellite System (IRNSS), the European Geostationary Navigation Coverage Service (EGNOS), or the Wide Area Augmentation System (WAAS)). Additional components of communication system 100 are described below. Communication system 100 may include additional or replacement components.

[0032] like Figure 1 As shown, NG-RAN 135 includes NR B-nodes (gNB) 110a, 110b and a next-generation evolved B-node (ng-eNB) 114, and 5GC 140 includes Access and Mobility Management Functions (AMF) 115, Session Management Functions (SMF) 117, Location Management Functions (LMF) 120 and Gateway Mobility Location Center (GMLC) 125. gNBs 110a, 110b and ng-eNB 114 are communicatively coupled to each other, each configured to conduct bidirectional wireless communication with UE 105, and each communicatively coupled to and configured to conduct bidirectional communication with AMF 115. AMF 115, SMF 117, LMF 120 and GMLC 125 are communicatively coupled to each other, and the GMLC is communicatively coupled to an external client 130. SMF 117 can be used as the initial contact point for Service Control Functions (SCF) (not shown) to create, control and delete media sessions.

[0033] Figure 1A general explanation of each component is provided, wherein any or all of the components may be used appropriately, and each component may be repeated or omitted as needed. Specifically, although one UE 105 is explained, many UEs (e.g., hundreds, thousands, millions, etc.) may be used in communication system 100. Similarly, communication system 100 may include a larger (or smaller) number of SVs (i.e., more or fewer than the four SVs 190-193 shown), gNB 110a, 110b, ng-eNB 114, AMF 115, external client 130, and / or other components. The explained connections connecting the various components in communication system 100 include data and signaling connections, which may include additional (intermediate) components, direct or indirect physical and / or wireless connections, and / or additional networks. Furthermore, components may be rearranged, combined, separated, replaced, and / or omitted depending on the desired functionality.

[0034] Although Figure 1 While 5G-based networks have been described, similar network implementations and configurations can be used for other communication technologies, such as 3G, Long Term Evolution (LTE), etc. The implementations described herein (for 5G technologies and / or for one or more other communication technologies and / or protocols) can be used to transmit (or broadcast) directional synchronization signals, receive and measure directional signals at a UE (e.g., UE 105), and / or provide location assistance to UE 105 (via GMLC 125 or other location servers), and / or calculate the location of UE 105 at a location-capable device (such as UE 105, gNB 110a, 110b, or LMF 120) based on measurement parameters of such directional transmissions received at UE 105. Gateway Mobile Location Center (GMLC) 125, Location Management Function (LMF) 120, Access and Mobility Management Function (AMF) 115, SMF 117, ng-eNB (eNodeB) 114, and gNB (gNodeB) 110a, 110b are examples and may be replaced by or include various other location server functions and / or base station functions in various embodiments.

[0035] UE 105 may include and / or may be referred to as a device, mobile device, wireless device, mobile terminal, terminal, mobile station (MS), Secure User Plane Positioning Enabled (SUPL) terminal (SET), or some other name. Furthermore, UE 105 may correspond to a cellular phone, smartphone, laptop device, tablet device, PDA, tracking device, navigation device, Internet of Things (IoT) device, asset tracker, health monitor, security system, smart city sensor, smart meter, wearable tracker, or some other portable or mobile device. Typically, although not mandatory, UE 105 may support one or more Radio Access Technologies (RATs) such as Global System for Mobile Communications (GSM), Code Division Multiple Access (CDMA), Wideband CDMA (WCDMA), LTE, High Rate Packet Data (HRPD), IEEE 802.11 WiFi (also known as Wi-Fi). Wireless communication can be achieved using technologies such as Bit-Band (BT), WiMAX, and 5G New Radio (NR) (e.g., using NG-RAN 135 and 5GC 140). UE 105 can support wireless communication using a Wireless Local Area Network (WLAN), which can connect to other networks (e.g., the Internet) using, for example, digital subscriber line (DSL) or packet cable. Using one or more of these RATs allows UE 105 (e.g., via elements of 5GC 140) to... Figure 1 (not shown in the diagram) or possibly via GMLC 125, communicate with external client 130 and / or allow external client 130 (e.g., via GMLC 125) to receive location information about UE 105.

[0036] UE 105 may include a single entity or may include multiple entities, such as in a personal area network, where the user may employ audio, video, and / or data I / O (input / output) devices, and / or body sensors, as well as separate wired or wireless modems. An estimate of the location of UE 105 may be referred to as location, location estimation, location locking, lock, positioning, location estimation, or location locking, and may be geographic, providing location coordinates (e.g., latitude and longitude) of UE 105, which may or may not include an elevation component (e.g., height above sea level; height above ground level, floor level, or basement level, or depth below). Alternatively, the location of UE 105 may be expressed as a municipal location (e.g., expressed as a postal address or a designation of a point or smaller area within a building (such as a specific room or floor)). The location of UE 105 may be expressed as an area or volume (geographically or municipally defined) within which UE 105 is expected to be located with a certain probability or confidence level (e.g., 67%, 95%, etc.). The location of UE 105 can be expressed as a relative location, which includes, for example, distance and direction from a known location. A relative location can be expressed as relative coordinates (e.g., X, Y (and Z) coordinates) defined relative to an origin at a known location, which can be, for example, geographically, municipally, or with reference to a point, area, or volume indicated, for example, on a map, floor plan, or building plan. In the description contained herein, the use of the term "location" can include any of these variations unless otherwise indicated. When calculating the location of the UE, local x, y, and possibly z coordinates are typically solved, and then (if necessary) the local coordinates are converted to absolute coordinates (e.g., with respect to latitude, longitude, and elevation above or below mean sea level).

[0037] UE 105 can be configured to communicate with other entities using one or more of a variety of technologies. UE 105 can be configured to indirectly connect to one or more communication networks via one or more device-to-device (D2D) peer-to-peer (P2P) links. D2D P2P links can use any suitable D2D radio access technology (RAT) (such as LTE Direct (LTE-D), WiFi Direct (WiFi-D), etc.). Supported by (etc.). One or more UEs in a group of UEs utilizing D2D communication may be within the geographic coverage area of ​​a Transmit / Receive Point (TRP) (such as one or more of gNB 110a, 110b and / or ng-eNB 114). Other UEs in the group may be outside such geographic coverage areas or may be unable to receive transmissions from the base station for other reasons. A group of UEs communicating via D2D communication may utilize a one-to-many (1:M) system, where each UE may transmit to other UEs in the group. The TRP facilitates the scheduling of resources for D2D communication. In other cases, D2D communication may be performed between UEs without involving a TRP.

[0038] Figure 1 The base stations (BSs) in the NG-RAN 135 shown include NRB nodes (referred to as gNBs 110a and 110b). Each pair of gNBs 110a and 110b in the NG-RAN 135 can be interconnected via one or more other gNBs. Access to the 5G network is provided to UE 105 via wireless communication between UE 105 and one or more of the gNBs 110a and 110b. gNBs 110a and 110b can use 5G to provide wireless communication access to the 5GC 140 on behalf of UE 105. Figure 1 In this context, it is assumed that the serving gNB of UE 105 is gNB 110a, but another gNB (e.g., gNB 110b) may act as the serving gNB or as a secondary gNB to provide additional throughput and bandwidth to UE 105 if UE 105 moves to another location.

[0039] Figure 1 The base station (BS) in NG-RAN 135 shown may include ng-eNB 114 (also referred to as a next-generation evolved B node). ng-eNB 114 may be connected to one or more of gNBs 110a and 110b in NG-RAN 135 (possibly via one or more other gNBs and / or one or more other ng-eNBs). ng-eNB 114 may provide LTE radio access and / or evolved LTE (eLTE) radio access to UE 105. One or more of gNBs 110a, 110b and / or ng-eNB 114 may be configured to act as a location-only beacon, transmitting signals to aid in determining the location of UE 105, but may not be able to receive signals from UE 105 or other UEs.

[0040] Base stations (such as gNB 110a, gNB 110b, and ng-eNB 114) may each include one or more TRPs. For example, each sector within a BS cell may include a TRP, but multiple TRPs may share one or more components (e.g., share a processor but have separate antennas). System 100 may include macro TRPs, or system 100 may have different types of TRPs, such as macro, pico, and / or femto TRPs. Macro TRPs may cover a relatively large geographic area (e.g., a radius of several kilometers) and allow unrestricted access by terminals with service subscriptions. Pico TRPs may cover a relatively small geographic area (e.g., a pico cell) and allow unrestricted access by terminals with service subscriptions. Femto or home TRPs may cover a relatively small geographic area (e.g., a femto cell) and allow restricted access by terminals associated with that femto cell (e.g., terminals of users in a residence).

[0041] As mentioned, although Figure 1 The diagram depicts nodes configured to communicate according to 5G communication protocols, but nodes configured to communicate according to other communication protocols (such as, for example, LTE or IEEE 802.11x protocols) can also be used. For example, in an evolved packet system (EPS) providing LTE radio access to UE 105, the RAN may include an evolved universal mobile telecommunications system (UMTS) terrestrial radio access network (E-UTRAN), which may include base stations containing evolved B-nodes (eNBs). The core network for the EPS may include an evolved packet core (EPC). The EPS may include the E-UTRAN plus the EPC, where the E-UTRAN corresponds to... Figure 1 NG-RAN 135 and EPC corresponds to Figure 1 5GC 140 in the middle.

[0042] gNB 110a, 110b, and ng-eNB 114 can communicate with AMF 115; for positioning functionality, AMF 115 communicates with LMF 120. AMF 115 supports the mobility of UE 105 (including cell changes and handovers) and can participate in supporting signaling connections to UE 105 and potentially data and voice bearers for UE 105. LMF 120 can communicate directly with UE 105, for example, wirelessly. LMF 120 can support the positioning of UE 105 when UE 105 accesses NG-RAN 135 and supports various positioning protocols / methods, such as Auxiliary GNSS (A-GNSS), Observed Time Difference of Arrival (OTDOA), Real-Time Kinematics (RTK), Precise Point Positioning (PPP), Differential GNSS (DGNSS), Enhanced Cellular ID (E-CID), Angle of Arrival (AOA), Angle of Departure (AOD), and / or other positioning methods. LMF 120 can process location service requests for UE 105, for example, received from AMF 115 or GMLC 125. LMF 120 can connect to AMF 115 and / or GMLC 125. LMF 120 may be referred to by other names, such as Location Manager (LM), Location Function (LF), Commercial LMF (CLMF), or Value-Added LMF (VLMF). Nodes / systems implementing LMF 120 may additionally or alternatively implement other types of location support modules, such as Enhanced Serving Mobility Location Center (E-SMLC) or Secure User Plane Positioning (SUPL) Location Platform (SLP). At least some of the location functionality (including the derivation of the location of UE 105) can be performed at UE 105 (e.g., using signal measurements obtained by UE 105 against signals transmitted by radio nodes (such as gNB 110a, 110b, and / or ng-eNB 114), and / or auxiliary data provided to UE 105, for example, by LMF 120).

[0043] GMLC 125 can support location requests for UE 105 received from external client 130 and can forward such requests to AMF 115 for forwarding to LMF 120, or can forward them directly to LMF 120. A location response from LMF 120 (e.g., containing a location estimate for UE 105) can be returned to GMLC 125 directly or via AMF 115, and GMLC 125 can then return the location response (e.g., containing the location estimate) to external client 130. GMLC 125 is shown connected to both AMF 115 and LMF 120, but in some implementations, 5GC 140 may support only one of these connections.

[0044] like Figure 1 Further explanation is provided: the LMF 120 can use the new Radio Positioning Protocol A (which may be referred to as NPPa or NRPPa) to communicate with gNB 110a, 110b, and / or ng-eNB 114. This new Radio Positioning Protocol A is defined in 3GPP Technical Specification (TS) 38.455. NRPPa can be the same as, similar to, or an extension of the LTE Positioning Protocol A (LPPa) defined in 3GPP TS 36.455, where NRPPa messages are transmitted via AMF 115 between gNB 110a (or gNB 110b) and the LMF 120, and / or between ng-eNB 114 and the LMF 120. Figure 1 As further explained, LMF 120 and UE 105 can communicate using the LTE Location Protocol (LPP), which is defined in 3GPP TS 36.355. LMF 120 and UE 105 can also communicate using a new radio positioning protocol (which may be referred to as NPP or NRPP), which may be the same as, similar to, or an extension of LPP. Here, LPP and / or NPP messages can be transmitted between UE 105 and LMF 120 via AMF 115 and UE 105's serving gNB 110a, 110b, or serving ng-eNB 114. For example, LPP and / or NPP messages can be transmitted between LMF 120 and AMF 115 using the 5G Location Services Application Protocol (LCS AP), and between AMF 115 and UE 105 using the 5G Non-Access Stratum (NAS) protocol. The LPP and / or NPP protocols can be used to support the location of UE 105 using UE-assisted and / or UE-based location methods (such as A-GNSS, RTK, OTDOA, and / or E-CID). The NRPPa protocol can be used to support the location of UE 105 using network-based location methods (such as E-CID) (e.g., in conjunction with measurements obtained by gNB110a, 110b, or ng-eNB 114) and / or can be used by LMF 120 to obtain location-related information from gNB 110a, 110b, and / or ng-eNB 114, such as defining parameters for directional SS transmissions from gNB 110a, 110b, and / or ng-eNB 114.

[0045] Using a UE-assisted positioning method, UE 105 can obtain location measurements and send them to network entities (such as base stations or location servers (e.g., LMF 120)) for calculating the location estimate of UE 105. For example, location measurements may include one or more of the following: Received Signal Strength Indication (RSSI), Round-Trip Time (RTT), Reference Signal Time Difference (RSTD), Reference Signal Received Power (RSRP), and / or Reference Signal Received Quality (RSRQ) for gNB 110a, 110b, ng-eNB 114, and / or WLAN AP. Location measurements may additionally or alternatively include measurements of GNSS pseudorange, code phase, and / or carrier phase for SV 190-193.

[0046] Using a UE-based positioning method, UE 105 can obtain location measurements (e.g., which may be the same as or similar to location measurements for a UE-assisted positioning method) and can calculate the location of UE 105 (e.g., by means of auxiliary data received from network entities (such as location servers (such as LMF 120)) or broadcast by gNB 110a, 110b, ng-eNB 114 or other base stations or APs).

[0047] Using a network-based positioning method, one or more base stations (e.g., gNB 110a, 110b, and / or ng-eNB 114) or APs may obtain location measurements (e.g., measurements of RSSI, RTT, RSRP, RSRQ, or Time of Arrival (TOA) of signals transmitted by UE 105) and / or receive measurements obtained by UE 105. These base stations or APs may then transmit these measurements to a network entity (such as a location server (e.g., LMF 120)) for calculating a location estimate for UE 105.

[0048] The information provided to the LMF 120 by the gNB 110a, 110b and / or ng-eNB 114 using NRPPa may include timing and configuration information for directional SS transmissions, as well as location coordinates. The LMF 120 may provide some or all of this information as supplementary data to the UE 105 in LPP and / or NPP messages via NG-RAN 135 and 5GC 140.

[0049] The LPP or NPP message sent from a network entity (such as LMF 120) to UE 105 may instruct UE 105 to perform any of a variety of tasks, depending on the desired functionality. For example, an LPP or NPP message may contain instructions for UE 105 to obtain measurements for GNSS (or A-GNSS), WLAN, E-CID, and / or OTDOA (or some other positioning method). In the case of E-CID, the LPP or NPP message may instruct UE 105 to obtain one or more measurement parameters (e.g., beam ID, beamwidth, average angle, RSRP, RSRQ measurements) of directional signals transmitted within a specific cell supported by one or more of gNB 110a, 110b, and / or ng-eNB 114 (or supported by some other type of base station (such as eNB or WiFi AP)). UE105 can send these measurement parameters back to LMF 120 via service gNB 110a (or service ng-eNB 114) and AMF 115 in an LPP or NPP message (e.g., within a 5GNAS message).

[0050] As mentioned, while a communication system 100 is described in relation to 5G technology, the communication system 100 can be implemented to support other communication technologies (such as GSM, WCDMA, LTE, etc.) used to support and interact with mobile devices (such as UE 105) (e.g., to enable voice, data, location, and other functionalities). In some such embodiments, the 5GC 140 can be configured to control different air interfaces. For example, non-3GPP interoperability functions (N3IWF) in the 5GC 150 can be used. Figure 1(Not shown) Connect 5GC 140 to a WLAN. For example, the WLAN may support IEEE 802.11 WiFi access for UE 105 and may include one or more WiFi APs. Here, N3IWF may connect to the WLAN and other components in 5GC 140, such as AMF 115. In some embodiments, both NG-RAN 135 and 5GC 140 may be replaced by one or more other RANs and one or more other core networks. For example, in EPS, NG-RAN 135 may be replaced by E-UTRAN containing eNBs, and 5GC 140 may be replaced by EPC containing a Mobility Management Entity (MME) instead of AMF 115, an E-SMLC instead of LMF 120, and a GMLC similar to GMLC 125. In such EPS, the E-SMLC may use LPPa instead of NRPPa to send location information to and receive location information from eNBs in the E-UTRAN, and may use LPP to support UE 105's positioning. In these other embodiments, the location of UE 105 using directional PRS can be supported in a manner similar to that described herein for 5G networks, the difference being that the functions and procedures described herein for gNB 110a, 110b, ng-eNB 114, AMF 115 and LMF120 can be applied alternatively to other network elements, such as eNB, WiFi AP, MME and E-SMLC, in some cases.

[0051] As mentioned, in some embodiments, positioning functionality can be achieved at least in part using directional SS beams transmitted by base stations (such as gNB 110a, 110b and / or ng-eNB 114) to determine the location of the UE (e.g., Figure 1 Within the range of UE 105. In some instances, the UE can use directional SS beams from multiple base stations (such as gNB 110a, 110b, ng-eNB 114, etc.) to calculate the UE's location.

[0052] Also refer to Figure 2UE 200 is an example of UE 105 and includes a computing platform containing processor 210, a memory 211 containing software (SW) 212, one or more sensors 213, a transceiver interface 214 for transceivers 215 (which include wireless transceivers 240 and / or wired transceivers 250), a user interface 216, a satellite positioning system (SPS) receiver 217, a camera 218, and a positioning (motion) device 219. The processor 210, memory 211, sensors 213, transceiver interface 214, user interface 216, SPS receiver 217, camera 218, and positioning (motion) device 219 are communicatively coupled to each other via a bus 220 (which can be configured, for example, for optical and / or electrical communication). One or more of the processor-readable instruction devices shown (e.g., camera 218, positioning (motion) device 219, and / or one or more sensors among (a few) sensors 213, etc.) may be omitted from UE 200. Processor 210 may include one or more intelligent hardware devices (e.g., central processing unit (CPU), microcontroller, application-specific integrated circuit (ASIC), etc.). Processor 210 may include multiple processors, including a general-purpose / application processor 230, a digital signal processor (DSP) 231, a modem processor 232, a video processor 233, and / or a sensor processor 234. One or more of processors 230-234 may include multiple devices (e.g., multiple processors). Modem processor 232 may support dual SIM / dual connectivity (or even more SIMs). For example, one SIM (subscriber identity module or subscriber identification module) may be used by the original equipment manufacturer (OEM), and another SIM may be used by the end user of UE 200 to obtain connectivity. Memory 211 is a non-transient storage medium, which may include random access memory (RAM), flash memory, disk storage, and / or read-only memory (ROM), etc. Memory 211 stores software 212, which may be processor-readable, processor-executable software code containing instructions configured to cause processor 210 to perform the various functions described herein when executed. Alternatively, software 212 may not be directly executable by processor 210, but may be configured (e.g., when compiled and executed) to cause processor 210 to perform various functions. This specification may refer to processor 210 performing functions, but this includes other implementations, such as processor 210 performing software and / or firmware implementations. This specification may refer to processor 210 performing functions as an abbreviation for one or more of processors 230-234 performing that function. This specification may refer to UE 200 performing functions as an abbreviation for one or more appropriate components of UE 200 performing that function. Processor 210 may include memory with stored instructions as a supplement and / or alternative to memory 211. The functionality of processor 210 will be discussed more comprehensively below.

[0053] Figure 2 The configuration of UE 200 shown is exemplary and not intended to limit this disclosure (including the claims), and other configurations may be used. For example, an exemplary configuration of the UE includes one or more of processors 230-234 in processor 210, memory 211, and wireless transceiver 240. Other exemplary configurations include one or more of processors 230-234 in processor 210, memory 211, wireless transceiver 240, and one or more of the following: (a) sensors 213, user interface 216, SPS receiver 217, camera 218, PMD 219, and / or wired transceiver 250.

[0054] UE 200 may include a modem processor 232, which may be capable of performing baseband processing on signals received and downconverted by transceiver 215 and / or SPS receiver 217. Modem processor 232 may also perform baseband processing on signals to be upconverted for transmission by transceiver 215. Alternatively or alternatively, baseband processing may be performed by general-purpose processor 230 and / or DSP 231. However, other configurations may be used to perform baseband processing.

[0055] UE 200 may include sensors 213, which may include, for example, an inertial measurement unit (IMU) 270, one or more magnetometers (M) 271, and / or one or more environmental sensors (E) 272. IMU 270 may include one or more inertial sensors, such as one or more accelerometers (A) 273 (e.g., those collectively responding to acceleration of UE 200 in three dimensions) and / or one or more gyroscopes (G) 274. The magnetometers may provide measurements to determine orientation (e.g., relative to magnetic north and / or true north) that can be used for any of a variety of purposes (e.g., to support one or more compass applications). The environmental sensors 272 may include, for example, one or more temperature sensors, one or more barometric pressure sensors, one or more ambient light sensors, one or more camera imagers, and / or one or more microphones, etc. (Various) Sensors 213 may generate analog and / or digital signals, and indications of these signals may be stored in memory 211 and processed by DSP 231 and / or general-purpose processor 230 to support one or more applications (such as, for example, applications involving positioning and / or navigation operations).

[0056] Sensors 213 can be used for relative position measurement, relative position determination, motion determination, etc. Information detected by sensors 213 can be used for motion detection, relative displacement, dead reckoning, sensor-based position determination, and / or sensor-assisted position determination. Sensors 213 can be used to determine whether the UE 200 is stationary or moving and / or whether to report certain useful information related to the mobility of the UE 200 to the LMF 120. For example, based on information obtained / measured by sensors 213, the UE 200 can notify / report to the LMF 120 that the UE 200 has detected movement or that the UE 200 has moved, and report relative displacement / distance (e.g., via dead reckoning implemented by sensors 213, or sensor-based position determination, or sensor-assisted position determination). In another example, for relative positioning information, sensors / IMUs can be used to determine the angle and / or orientation of another device relative to the UE 200, etc.

[0057] IMU 270 can be configured to provide measurements of the direction and / or velocity of motion of UE 200, which can be used for relative position determination. For example, one or more accelerometers 273 and / or one or more gyroscopes 274 of IMU 270 can detect the linear acceleration and rotational velocity of UE 200, respectively. The linear acceleration and rotational velocity measurements of UE 200 can be integrated over time to determine the instantaneous direction of motion and displacement of UE 200. The instantaneous direction of motion and displacement can be integrated to track the position of UE 200. For example, a reference position of UE 200 at a given moment can be determined, for example, using SPS receiver 217 (and / or by some other means), and measurements acquired from (the) accelerometers 273 and (the) gyroscopes 274 after that moment can be used for dead reckoning to determine the current position of UE 200 based on the movement (direction and distance) of UE 200 relative to that reference position.

[0058] Magnetometer 271 can determine the intensity of magnetic fields in different directions, which can be used to determine the orientation of UE 200. For example, this orientation can be used to provide a digital compass for UE 200. Magnetometer 271 may include a two-dimensional magnetometer configured to detect and provide an indication of magnetic field intensity in two orthogonal dimensions. Alternatively or alternatively, magnetometer 271 may include a three-dimensional magnetometer configured to detect and provide an indication of magnetic field intensity in three orthogonal dimensions. Magnetometer 271 may provide means for sensing magnetic fields and, for example, providing a magnetic field indication to processor 210.

[0059] Transceiver 215 may include a wireless transceiver 240 and a wired transceiver 250 configured to communicate with other devices via wireless and wired connections, respectively. For example, wireless transceiver 240 may include a transmitter 242 and a receiver 244 coupled to one or more antennas 246 for transmitting (e.g., on one or more uplink channels and / or one or more sidelink channels) and / or receiving (e.g., on one or more downlink channels and / or one or more sidelink channels) wireless signals 248 and converting signals from wireless signals 248 to wired (e.g., electrical and / or optical) signals and from wired (e.g., electrical and / or optical) signals to wireless signals 248. Thus, transmitter 242 may include multiple transmitters that may be discrete components or combined / integrated components, and / or receiver 244 may include multiple receivers that may be discrete components or combined / integrated components. The wireless transceiver 240 can be configured to transmit signals according to various radio access technologies (RATs) (e.g., with TRP and / or one or more other devices), such as 5G New Radio (NR), GSM (Global System for Mobile Communications), UMTS (Universal Mobile Telecommunications System), AMPS (Advanced Mobile Telephone Systems), CDMA (Code Division Multiple Access), WCDMA (Wideband CDMA), LTE (Long Term Evolution), LTE Direct (LTE-D), 3GPP LTE-Vehicle-to-Everything (V2X) (PC5), IEEE 802.11 (including IEEE 802.11p), WiFi, and WiFi Direct (WiFi-D). Zigbee, etc. The new radio can use millimeter-wave frequencies and / or sub-6 GHz frequencies. Wired transceiver 250 may include a transmitter 252 and a receiver 254 configured for wired communication (e.g., with network 135) to, for example, send and receive communications to and from gNB 110a. Transmitter 252 may include multiple transmitters, which may be discrete components or combined / integrated components, and / or receiver 254 may include multiple receivers, which may be discrete components or combined / integrated components. Wired transceiver 250 may be configured for, for example, optical and / or electrical communication. Transceiver 215 may be communicatively coupled to transceiver interface 214 (e.g., via optical and / or electrical connections). Transceiver interface 214 may be at least partially integrated with transceiver 215.

[0060] User interface 216 may include one or more of a number of devices, such as, for example, speakers, microphones, display devices, vibration devices, keyboards, touchscreens, etc. User interface 216 may include any device that includes more than one of these devices. User interface 216 may be configured to enable a user to interact with one or more applications stored in the main memory of UE 200. For example, user interface 216 may store indications of analog and / or digital signals in memory 211 in response to actions from the user, for processing by DSP 231 and / or general-purpose processor 230. Similarly, applications in the main memory of UE 200 may store indications of analog and / or digital signals in memory 211 to present output signals to the user. User interface 216 may include audio input / output (I / O) devices, including, for example, speakers, microphones, digital-to-analog circuitry systems, analog-to-digital circuitry systems, amplifiers, and / or gain control circuitry systems (any device including more than one of these devices). Other configurations of the audio I / O devices may be used. Alternatively or concurrently, the user interface 216 may include one or more touch sensors that respond to touch and / or pressure on, for example, the keyboard and / or touchscreen of the user interface 216.

[0061] SPS receiver 217 (e.g., a Global Positioning System (GPS) receiver) can receive and acquire SPS signal 260 via SPS antenna 262. Antenna 262 is configured to convert the wireless SPS signal 260 into a wired signal (e.g., an electrical or optical signal) and can be integrated with antenna 246. SPS receiver 217 can be configured to process the acquired SPS signal 260 fully or partially to estimate the location of UE 200. For example, SPS receiver 217 can be configured to determine the location of UE 200 by performing trilateration using SPS signal 260. SPS receiver 217 can be combined with general-purpose processor 230, memory 211, DSP 231 and / or one or more dedicated processors (not shown) to process the acquired SPS signal fully or partially and / or calculate the estimated location of UE 200. Memory 211 may store indications (e.g., measurements) of SPS signal 260 and / or other signals (e.g., signals acquired from wireless transceiver 240) for use during positioning operations. General-purpose processor 230, DSP 231, and / or one or more dedicated processors, and / or memory 211 may provide or support a position engine for processing measurements to estimate the position of UE 200.

[0062] UE 200 may include a camera 218 for capturing still or moving images. Camera 218 may include, for example, an imaging sensor (e.g., a charge-coupled device or a CMOS imager), lenses, analog-to-digital circuitry, frame buffers, etc. Additional processing, conditioning, encoding, and / or compression of the signals representing the captured images may be performed by a general-purpose processor 230 and / or a DSP 231. Alternatively, video processor 233 may perform conditioning, encoding, compression, and / or manipulation of the signals representing the captured images. Video processor 233 may decode / decompress stored image data for presentation on a display device (not shown), for example, a user interface 216.

[0063] A positioning (motion) device (PMD) 219 may be configured to determine the location and possible motion of the UE 200. For example, the PMD 219 may communicate with, and / or include some or all of, the SPS receiver 217. The PMD 219 may additionally or alternatively be configured to: use trilateration with ground-based signals (e.g., at least some signals 248), assist in obtaining and using the SPS signal 260, or both, to determine the location of the UE 200. The PMD 219 may be configured to: use one or more other techniques (e.g., those that rely on the UE's self-reported location (e.g., part of the UE's positioning beacon)) to determine the location of the UE 200, and may use a combination of techniques (e.g., SPS and ground positioning signals) to determine the location of the UE 200. PMD 219 may include one or more sensors 213 (e.g., gyroscopes, accelerometers, magnetometers, etc.) that sense the orientation and / or motion of UE 200 and provide indication of such orientation and / or motion. Processor 210 (e.g., general-purpose processor 230 and / or DSP 231) may be configured to use this indication to determine the motion of UE 200 (e.g., velocity vector and / or acceleration vector). PMD 219 may be configured to provide indication of uncertainty and / or error in the determined positioning and / or motion. In one example, PMD 219 may be referred to as a positioning engine (PE) and may be executed by general-purpose processor 230. For example, PMD 219 may be a logical entity and may be integrated with general-purpose processor 230 and memory 211.

[0064] Also refer to Figure 3Examples of TRP 300 for gNB 110a, gNB 110b, and ng-eNB 114 include a computing platform containing processor 310, memory 311 including software (SW) 312, transceiver 315, and (optionally) SPS receiver 317. Processor 310, memory 311, transceiver 315, and SPS receiver 317 are communicatively coupled to each other via bus 320 (which may be configured for, for example, optical and / or electrical communication). One or more of the illustrated devices (e.g., wireless interface and / or SPS receiver 317) may be omitted from TRP 300. SPS receiver 317 may be configured similarly to SPS receiver 217 to receive and acquire SPS signal 360 via SPS antenna 362. Processor 310 may include one or more intelligent hardware devices (e.g., central processing unit (CPU), microcontroller, application-specific integrated circuit (ASIC), etc.). Processor 310 may include multiple processors (e.g., including such processors) Figure 2 (The general-purpose / application processor, DSP, modem processor, video processor, and / or sensor processor shown). Memory 311 is a non-transient storage medium, which may include random access memory (RAM), flash memory, disk storage, and / or read-only memory (ROM), etc. Memory 311 stores software 312, which may be processor-readable, processor-executable software code containing instructions configured to cause processor 310 to perform the various functions described herein when executed. Alternatively, software 312 may not be directly executable by processor 310, but may be configured (e.g., when compiled and executed) to cause processor 310 to perform various functions. This specification may refer to processor 310 performing functions, but this includes other implementations, such as processor 310 performing software and / or firmware implementations. This specification may refer to processor 310 performing functions as a shorthand for one or more processors included in processor 310 performing that function. This specification may refer to the TRP 300 execution function as a shorthand for the TRP 300 (and thus one or more appropriate components of gNB 110a, gNB 110b, ng-eNB 114) performing this function. Processor 310 may include memory with stored instructions as a supplement and / or replacement for memory 311. The functionality of processor 310 is discussed more fully below.

[0065] Transceiver 315 may include a wireless transceiver 340 and a wired transceiver 350 configured to communicate with other devices via wireless and wired connections, respectively. For example, wireless transceiver 340 may include a transmitter 342 and a receiver 344 coupled to one or more antennas 346 for transmitting and / or receiving wireless signals 348 (e.g., on one or more uplink channels, downlink channels, and / or sidelink channels) and converting signals from wireless signals 348 to wired (e.g., electrical and / or optical) signals and from wired (e.g., electrical and / or optical) signals to wireless signals 348. Thus, transmitter 342 may include multiple transmitters that may be discrete components or combined / integrated components, and / or receiver 344 may include multiple receivers that may be discrete components or combined / integrated components. The wireless transceiver 340 can be configured to support various radio access technologies (RATs) such as 5G New Radio (NR), GSM (Global System for Mobile Communications), UMTS (Universal Mobile Telecommunications System), AMPS (Advanced Mobile Telephone System), CDMA (Code Division Multiple Access), WCDMA (Wideband CDMA), LTE (Long Term Evolution), LTE Direct (LTE-D), 3GPP LTE-V2X (PC5), IEEE 802.11 (including IEEE 802.11p), WiFi, and WiFi Direct (WiFi-D). The wired transceiver 350 may include a transmitter 352 and a receiver 354 configured to conduct wired communication (e.g., with network 140) to send and receive communications, for example, to and from LMF 120. The transmitter 352 may include multiple transmitters, which may be discrete components or combined / integrated components, and / or the receiver 354 may include multiple receivers, which may be discrete components or combined / integrated components. The wired transceiver 350 may be configured for, for example, optical and / or electrical communication.

[0066] Figure 3 The configuration of TRP 300 shown is exemplary and not intended to limit this disclosure (including the claims), and other configurations may be used. For example, the description herein discusses TRP 300 being configured to perform several functions or TRP 300 performing several functions, but one or more of these functions may be performed by LMF 120 and / or UE 200 (i.e., LMF 120 and / or UE 200 may be configured to perform one or more of these functions).

[0067] Also refer to Figure 4Server 400 (LMF 120 is an example thereof) includes: a computing platform containing processor 410, a memory 411 containing software (SW) 412, and a transceiver 415. Processor 410, memory 411, and transceiver 415 are communicatively coupled to each other via bus 420 (which may be configured for, for example, optical communication and / or electrical communication). One or more of the illustrated devices (e.g., a wireless interface) may be omitted from server 400. Processor 410 may include one or more intelligent hardware devices (e.g., a central processing unit (CPU), a microcontroller, an application-specific integrated circuit (ASIC), etc.). Processor 410 may include multiple processors (e.g., including such...). Figure 2 (The general-purpose / application processor, DSP, modem processor, video processor, and / or sensor processor shown). Memory 411 is a non-transient storage medium, which may include random access memory (RAM), flash memory, disk storage, and / or read-only memory (ROM), etc. Memory 411 stores software 412, which may be processor-readable, processor-executable software code containing instructions configured to cause processor 410 to perform the various functions described herein when executed. Alternatively, software 412 may not be directly executable by processor 410, but may be configured (e.g., when compiled and executed) to cause processor 410 to perform various functions. This specification may refer to processor 410 performing functions, but this includes other implementations, such as processor 410 performing software and / or firmware implementations. This specification may refer to processor 410 performing functions as a shorthand for one or more processors included in processor 410 performing that function. This specification may refer to the server 400 (or LMF 120) performing functions as a shorthand for one or more appropriate components of the server 400 (e.g., LMF 120) performing such functions. The processor 410 may include memory with stored instructions as a supplement to and / or replacement of memory 411. The functionality of the processor 410 is discussed more fully below.

[0068] Transceiver 415 may include a wireless transceiver 440 and a wired transceiver 450 configured to communicate with other devices via wireless and wired connections, respectively. For example, wireless transceiver 440 may include a transmitter 442 and a receiver 444 coupled to one or more antennas 446 for transmitting (e.g., on one or more downlink channels) and / or receiving (e.g., on one or more uplink channels) wireless signals 448 and converting signals from wireless signals 448 to wired (e.g., electrical and / or optical) signals and from wired (e.g., electrical and / or optical) signals to wireless signals 448. Thus, transmitter 442 may include multiple transmitters, which may be discrete components or combined / integrated components, and / or receiver 444 may include multiple receivers, which may be discrete components or combined / integrated components. The wireless transceiver 440 can be configured to support various radio access technologies (RATs) such as 5G New Radio (NR), GSM (Global System for Mobile Communications), UMTS (Universal Mobile Telecommunications System), AMPS (Advanced Mobile Telephone System), CDMA (Code Division Multiple Access), WCDMA (Wideband CDMA), LTE (Long Term Evolution), LTE Direct (LTE-D), 3GPP LTE-V2X (PC5), IEEE 802.11 (including IEEE 802.11p), WiFi, and WiFi Direct (WiFi-D). The wired transceiver 450 may include a transmitter 452 and a receiver 454 configured to conduct wired communication (e.g., with network 135) to send and receive communications to, for example, TRP 300. The transmitter 452 may include multiple transmitters, which may be discrete components or combined / integrated components, and / or the receiver 454 may include multiple receivers, which may be discrete components or combined / integrated components. The wired transceiver 450 may be configured for, for example, optical communication and / or electrical communication.

[0069] Figure 4 The configuration of server 400 shown is exemplary and not intended to limit this disclosure (including the claims), and other configurations may be used. For example, wireless transceiver 440 may be omitted. Alternatively or additionally, the description herein discusses server 400 being configured to perform several functions, but one or more of these functions may be performed by TRP 300 and / or UE 200 (i.e., TRP 300 and / or UE 200 may be configured to perform one or more of these functions).

[0070] Reference Figure 5A diagram illustrating an example GNSS receiver 500 is shown. SPS receivers 217 and 317 in UE 200 and TRP 300 may include one or more components of the GNSS receiver 500 and thus may be examples of the GNSS receiver 500. In one example, the GNSS receiver 500 includes, but is not limited to, an antenna 501, an analog section 502, a digital section 503, and a processor 504. Antennas 262 and 362 on UE 200 and TRP 300 are examples of antenna 501. GNSS satellite signals are received by antenna 501 and coupled to the input of analog section 502. Analog section 502 is configured to process the GNSS satellite signals by sampling them with an analog-to-digital converter (ADC) and generate a digital intermediate frequency (IF) signal. In one embodiment, the sampling rate may be approximately 83 megasamples per second (Ms / s). The digital IF signal is coupled to the input of digital section 503. Digital section 503 is configured to acquire and track satellites within a GNSS satellite constellation by generating acquisition and tracking data coupled to processor 504 using digital IF signals. Digital section 503 may be configured to implement one or more notch filters based on the presence of narrowband interference signals in the GNSS spectrum. In one example, digital section 503 may configure one or more notch filters as one or more digital filters with programmable center frequencies and bandwidths. Processor 504 may be a central processing unit (CPU), microprocessor, digital signal processor, or any other such device capable of reading and executing programming instructions. Processor 504 is configured to analyze the acquisition and tracking data to determine navigation information such as position and velocity. SVs may transmit signals at multiple frequencies, and processor 504 may be configured to determine pseudorange and carrier phase measurements based on GNSS models as known in the art. For example, in general, pseudorange measurements to satellite [i] at frequency f1. It can be modeled as:

[0071]

[0072] in:

[0073] r [i] It is the actual distance between the satellite [i] and the user's location.

[0074] δt u It is a shared bias in user equipment.

[0075] It is the satellite clock bias of satellite [i], including any satellite cluster delay at frequency f1.

[0076] c is the speed of light.

[0077] 1 is an additional bias shared by user equipment for measurements performed at frequency f.

[0078] It is the ionospheric delay that affects the signal from satellite [i] at frequency f1.

[0079] T [i] It is the delay introduced by the troposphere into the signal from satellite [i] and is frequency-independent.

[0080] Used to account for noise and any unmodeled effects.

[0081] Other GNSS models and variables can also be used to determine the distance to the SV.

[0082] Reference Figure 6A Figure 600 shows an example GNSS spectrum 602. In operation, radio carriers can be modulated in various ways. A GPS system, for example, can utilize three different frequency bands (e.g., L1, L2, and L5) and use phase modulation to transmit the code from the SV to the receiver. The GPS signal can utilize spread spectrum so that the total bandwidth of the GPS signal is much wider than the bandwidth of the information carried by the signal. Specifically, L1 is centered at 1575.42 MHz, L2 at 1227.60 MHz, and L5 at 1176.45 MHz, and the width of the GPS signal at these frequencies is greater than expected. For example, the CA code signal is spread over a width of approximately 2.046 MHz, and the P(Y) code signal is spread over a width of approximately 20.46 MHz on L1. Spectrum 602 depicts approximately 2 MHz (i.e., + / - 1 MHz) around the Doppler frequency of the SV. The digital front-end (DFE) (e.g., digital section 503) of the GNSS receiver is configured to perform an autocorrelation process on the received signal in spectrum 602 to obtain a code phase measurement. Local interference (e.g., harmonic signals) caused by other transmitters or oscillators can significantly affect or impair the autocorrelation process. The GNSS receiver may be configured to implement one or more notch filters to reduce the effects of interference. For example, a notch filter at +0.5 MHz in spectrum 602 will reduce the received power in spectrum 602, as depicted by signal dip 604. The notch filter and the corresponding signal dip 604 can affect the received autocorrelation function and the corresponding code phase measurement. For example, refer to... Figure 6BFigure 610 shows a comparison of example autocorrelation functions (ACFs) with and without notch filters. Typical ACF 612 provides a relatively higher peak amplitude compared to notch-filtered ACF 614. Distortion of the overall ACF shape due to one or more notch filters, and amplitude loss of the ACF in some cases, can reduce the accuracy of GNSS positioning calculations. That is, distortion of the ACF shape can lead to the detection of peaks in incorrect code phases, which can cause measurement bias. Accordingly, since the accuracy of GNSS positioning estimation is partly based on the accuracy of its measurable code phase, the use of a notch filter also affects positioning accuracy. The extent of positioning error (i.e., code phase effect) depends on the PRN code, SV Doppler, notch frequency, and notch bandwidth. For example, refer to... Figure 6C Plot 620 shows a code phase error value 622 based on an example notch filter frequency. Plot 620 depicts the code phase error value 622 when the notch filter frequency is at the SV Doppler frequency (i.e., Figure 6C The code phase error (in centimeters) of the SV (i.e., SVID 5) around zero in the range of -1 MHz to +1 MHz. Each of the error values ​​622 is based on a 100 kHz step size from -1 MHz to +1 MHz. Example error values ​​622 vary from approximately -50 cm to +25 cm. Other SVs (e.g., PRN codes), SV Doppler values, and notch bandwidths (which may include multiple notch filters) may have different error distance values ​​and different distributions of error values.

[0083] Reference Figure 7 and further refer to Figure 5 and Figures 6A-6CA block diagram of an example process 700 for offline phase compensation based on notch filter configuration is shown. Process 700 utilizes one or more offline lookup tables (LUTs) 702 to apply code phase correction in stage 710 based on notch filter configuration 704 and SV PRN and Doppler frequency information 706. Generally, the code phase correction value in LUT 702 depends on three parameters: SVID (e.g., SV PRN), SV Doppler frequency, and notch configuration information (i.e., the number of notches, the frequency per notch, and the bandwidth per notch). In one example, a two-dimensional array LUT can be computed and stored for each notch configuration. Different LUTs can also be used for different notch combinations, and each LUT can be a two-dimensional array such that the {i,j}th element will be the code phase correction value corresponding to the i-th SVID and j-th SV Doppler (where SVID is a finite number). Different notch filter configurations 704 and SV Doppler resolutions in the LUT grid can be selected based on operational requirements. For example, in a 2MHz bandwidth, SV Doppler can vary in 1kHz steps to provide 2001 grid points, or in 100kHz steps to provide 21 grid points. The size of the corresponding LUT can be multiplied accordingly.

[0084] In one embodiment, processor 504 may be configured to access a local memory module containing one or more LUTs 702, which store code phase error values ​​based on PRN code, notch frequency, notch bandwidth, and SV Doppler information. For example, notch filter configuration 704 may indicate the notch frequency (e.g., 1 MHz from the SV Doppler value) and the notch bandwidth (e.g., 1, 2, 5, 10 kHz, etc.). SV PRN and Doppler frequency information 706 is associated with the SV of the signal being received by the GNSS receiver 500. LUT 702 contains error measurement data points, such as... Figure 6C As depicted in [the text]. The code phase correction determination at stage 708 can be based on a selection, sorting, and / or matching function or algorithm, or other stored procedures executed on processor 504, to select a code phase error value from LUT 702 based on notch filter configuration 704 and SV PRN and Doppler frequency information 706. The code phase correction value can be a distance (e.g., 1 cm, 5 cm, 10 cm, 100 cm, etc.), and processor 504 is configured to apply the correction to distance measurements (e.g., pseudorange, carrier phase measurements) based on the SV signal at stage 710. The offline LUT 702 provides the advantage of obtaining a relatively fast code phase error solution at the expense of memory usage, because different variations of notch filter configuration and SV information must be stored. Some memory efficiency can be achieved by increasing the quantization of values ​​in LUT 702 and using interpolation routines to estimate the code phase error.

[0085] Reference Figure 8 An example procedure 800 for calculating code phase correction values ​​is shown. Based on the notch filter configuration 704 being received by the GNSS receiver 500 and the SV PRN and Doppler frequency information 706 (i.e., SVID 706a and SV Doppler 706b), the code phase correction can be calculated by smooth interpolation between the values ​​in the LUT 702. Generally, the code phase values ​​in the LUT 702 are known at a finite and discrete number of points in a two-dimensional space, and the interpolation function can be used to calculate the values ​​at any other arbitrary point in that space. For example, in stage 802, the processor 504 can be configured to receive an input associated with the received SV signal from the digital section 503. This input may include SVID 706a, SV Doppler 706b, and the notch configuration 704. The processor 504 is configured to obtain the 'k' neighbors in the LUT 702 that are closest to the input value, and then, in stage 804, calculate a weighted average 'y' of the code phase error for each neighbor. The weighted average 'y' can be applied as the code phase correction value in stage 806. Process 800 is an example and not a limitation, as other multivariate interpolation techniques can also be used to determine the final code phase correction value.

[0086] Reference Figure 9 This illustrates an example procedure 900 for online phase calculation based on notch filter configuration. Figure 7 In contrast to the offline process 700 which depends on LUT 702, the online process 900 calculates the LUT value locally when the configuration of the GNSS receiver 500 changes (e.g., when a new interference signal is detected). For example, processor 504 may receive notch filter configuration information 902 and SV PRN and Doppler frequency information 904 from the digital section 503 as previously described. In stage 906, processor 504 may, via... Figures 6A-6C The LUT table values ​​of SV are calculated using a simulation with discrete points as described in the paper. In stage 908, processor 504 can utilize notch filter configuration information 902 and SV PRN and Doppler frequency information 904, as well as interpolation techniques (such as...) Figure 8 The code phase correction value is obtained based on a locally generated LUT (as described in the document). In stage 910, the processor 504 can apply the code phase correction to a distance measurement (e.g., pseudorange, carrier phase measurement) calculated for the received SV signal.

[0087] Reference Figure 10A-10DExample plots of code phase errors for multiple satellite launch vehicles and notch filter configurations are shown. These plots are examples and are provided to illustrate that different SV PRNs can have different notch frequency error distributions. The error values ​​depicted represent discrete values ​​in the LUT, which can be generated offline (as in process 700) or online (as in process 900). The plotted error values ​​represent notch frequencies in steps of 100 kHz between -1 MHz and +1 MHz relative to the SV Doppler frequency (e.g., zero Doppler in the plot). As an example and not a limitation, typical code phase correction values ​​for GPS L1 CA signals are between +1 meter and -1 meter. Other signal types may have different ranges of correction values. Figure 10A A first example SV (SV:14) is depicted with a first error distribution between -60cm and +30cm. Figure 10B A second example SV (SV:25) is depicted, which has a second error distribution between -90cm and +10cm. Figure 10C A third example SV (SV:17) is depicted, which has a third error distribution between -60cm and +30cm. Figure 10D A fourth example SV (SV:08) is depicted with a fourth error distribution between -70 cm and 20 cm. SV, plotting, and sample size (e.g., notch filter step size value) are examples and not limitations. Other simulations can be run with other SVs and increased or decreased notch filter step sizes.

[0088] Reference Figure 11 and further refer to Figure 1-10D The method 1100 for calculating the distance to the satellite launch vehicle includes the stages shown. However, method 1100 is illustrative and not limiting. Method 1100 can be modified, for example, by adding, removing, rearranging, combining, concurrently executing, and / or splitting a single stage into multiple stages.

[0089] In phase 1102, the method includes receiving signals from a satellite carrier. The analog portion 502 of the GNSS receiver 500 is an apparatus for receiving signals from the SV. Generally, GNSS SVs transmit navigation signals at two or more frequencies in the L-band. These signals contain ranging codes and navigation data to allow the GNSS receiver 500 to calculate the travel time from the satellite to the receiver and the satellite coordinates at any epoch. The signals may include a carrier wave, ranging codes (e.g., SVID, PRN sequence, or PRN code), and other navigation data (e.g., information about the SV ephemeris, clock offset parameters, almanac information, SV information, and other associated navigation information).

[0090] At stage 1104, the method includes determining one or more notch filter configurations. Digital portion 503 and processor 504 are means for determining the one or more notch filter configurations. The notch filter may be based on the presence of narrowband interference signals generated by a local or external RF source. In one example, the one or more interference signals may be known based on the state of the UE (i.e., when the Wi-Fi or Bluetooth transmitter is active). In one embodiment, processor 504 may be configured to perform spectrum analysis to find interference signals. The notch filter configuration may include frequency components and bandwidth components to mitigate interference from one or more interference signals. In one embodiment, the notch filter configuration may include multiple frequencies, wherein each notch filter has the same or different bandwidths.

[0091] In stage 1106, the method includes determining a pseudo-random noise code and a Doppler frequency associated with the signal. Processor 504 is an apparatus for determining the PRN code and the Doppler frequency. The PRN code is included in the signal received in stage 1102. The Doppler frequency corresponds to the Doppler shift of the received signal, which is primarily based on the relative velocity between the antenna on the SV and the GNSS receiver. Other clock frequency error offsets may also be included in the Doppler frequency. Generally, the Doppler shift of the signal is the time derivative of the carrier phase.

[0092] At stage 1108, the method includes determining a code phase correction value based at least on the one or more notch filter configurations, the pseudo-random noise code, and the Doppler frequency. Processor 504 is an apparatus for determining the code phase correction value. In operation, processor 504 may utilize one or more LUTs including notch filter configuration information, SV PRN and Doppler frequency information, and associated code phase correction values. For example, query tools (such as sorting, selection, matching, etc.) may be used to determine the code phase correction value based on the notch filter and SV configuration information. The LUT may be provided to the UE via auxiliary data (i.e., offline solution), and / or one or more LUTs may be generated locally on the UE (i.e., online solution). In the offline solution, communication network 100 may provide auxiliary data with LUTs to the UE via radio transceiver 240. The auxiliary data may be transmitted via network protocols (such as LPP) and Radio Resource Control (RRC) message reception. Other message reception (such as sidelink technology) may also be used to propagate the LUT to other UEs in the network. One or more LUT tables include code phase correction values ​​for various combinations of PRN codes (e.g., SV ID), Doppler frequencies, and notch filter configurations. The code phase correction values ​​can be distances, such as... Figure 6C and Figure 10A-10D The values ​​in. Such as Figure 8 The interpolation technique described in the paper can also be used to obtain code phase correction values ​​from LUTs.

[0093] In stage 1110, the method includes calculating the distance to the satellite launch vehicle, at least in part, based on the signal and the code phase correction value. Processor 504 is an apparatus for calculating the distance to the SV. In one example, processor 504 may determine the pseudorange to the SV based on the signal and apply appropriate offset and correction as known in the art and described in Equation 1. The code phase value determined in stage 1108 may be applied to the pseudorange to produce a distance value.

[0094] Other examples and implementations fall within the scope of this disclosure and the appended claims. For example, due to the nature of software and computers, the above-described functions can be implemented using software executed by a processor, hardware, firmware, hardwired, or any combination thereof. Features implementing the functions can also be physically located in various locations, including being distributed such that different parts of the functions are implemented at different physical locations.

[0095] Unless otherwise stated, the interconnected or communicating components (functionally or otherwise) shown in the figures and / or discussed herein are communicatively coupled. That is, they may be connected directly or indirectly to enable communication between them.

[0096] As used herein, the singular forms of “a,” “some,” and “the” also include the plural forms, unless the context clearly indicates otherwise. For example, “processor” can include one or more processors. As used herein, the terms “comprising,” “having,” “including,” and / or “containing” indicate the presence of the described features, integers, steps, operations, elements, and / or components, but do not exclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and / or groups thereof.

[0097] As used herein, unless otherwise stated, a description of a function or operation “based on” an item or condition means that the function or operation is based on the described item or condition and may be based on one or more items and / or conditions other than the described item or condition.

[0098] Similarly, as used herein, the "or" (possibly followed by "at least one of" or "one or more of") used in item enumeration indicates a disjunctive enumeration such that an enumeration of, for example, "at least one of A, B, or C," or an enumeration of "one or more of A, B, or C," or an enumeration of "A or B or C" represents A or B or C or AB (A and B) or AC (A and C) or BC (B and C) or ABC (i.e., A and B and C), or a combination having more than one feature (e.g., AA, AAB, ABBC, etc.). Therefore, an item (e.g., a processor) being configured to perform a function with respect to at least one of A or B, or an item being configured to perform a function A or function B, means that the item can be configured to perform a function with respect to A, or can be configured to perform a function with respect to B, or can be configured to perform a function with respect to both A and B. For example, the phrase "the processor is configured to measure at least one of A or B" or "the processor is configured to measure A or measure B" means that the processor can be configured to measure A (and may or may not be configured to measure B), or can be configured to measure B (and may or may not be configured to measure A), or can be configured to measure both A and B (and may be configured to select which or both of A and B to measure). Similarly, a description of means for measuring at least one of A or B includes: means for measuring A (which may or may not measure B), or means for measuring B (and may or may not be configured to measure A), or means for measuring A and B (which may be able to select which or both of A and B to measure). As another example, a description of an item (e.g., a processor) being configured to perform at least one of function X or function Y indicates that the item can be configured to perform function X, or can be configured to perform function Y, or can be configured to perform both function X and function Y. For example, the phrase "the processor is configured to measure at least one of X or Y" means that the processor can be configured to measure X (and may or may not be configured to measure Y), or can be configured to measure Y (and may or may not be configured to measure X), or can be configured to measure both X and Y (and can be configured to select which or both of X and Y to measure).

[0099] Substantial modifications can be made to suit specific requirements. For example, custom hardware can be used, and / or specific elements can be implemented in the hardware, in processor-executed software (including portable software such as applets), or both. Furthermore, connectivity to other computing devices (such as network input / output devices) can be employed.

[0100] The systems and devices discussed above are examples. Various configurations may appropriately omit, substitute, or add various procedures or components. For example, features described with reference to certain configurations may be combined in various other configurations. Different aspects and elements of a configuration may be combined in a similar manner. Furthermore, technology evolves, and thus many elements are examples and do not limit the scope of this disclosure or the claims.

[0101] A wireless communication system is a system in which communication is transmitted wirelessly, that is, through the atmospheric space via electromagnetic waves and / or sound waves rather than through wires or other physical connections. A wireless communication network may not necessarily transmit all communications wirelessly, but may be configured to transmit at least some communications wirelessly. Furthermore, the term "wireless communication device" or similar terms do not require that the device's functionality be exclusively or uniformly primarily used for communication, or that the device is a mobile device, but rather indicate that the device includes wireless communication capabilities (one-way or two-way), for example, including at least one radio (each radio being part of a transmitter, receiver, or transceiver) for wireless communication.

[0102] Specific details are provided in this specification to provide a thorough understanding of the example configurations (including implementations). However, these configurations can be practiced without these specific details. For example, well-known circuits, processes, algorithms, structures, and techniques have been shown without unnecessary detail to avoid obscuring these configurations. This specification provides example configurations without limiting the scope, applicability, or configuration of the claims. Rather, the preceding description of the configurations provides a description for implementing the techniques described. Various changes can be made to the function and arrangement of the elements without departing from the scope of this disclosure.

[0103] As used herein, the terms “processor-readable medium,” “machine-readable medium,” and “computer-readable medium” refer to any medium that participates in providing data that enables a machine to operate in a particular manner. Using a computing platform, various processor-readable media may involve providing instructions / code to (such as) processors for execution, and / or being used to store and / or carry such instructions / code (e.g., as signals). In many implementations, processor-readable media are physical and / or tangible storage media. Such media can take many forms, including but not limited to non-volatile and volatile media. Non-volatile media include, for example, optical discs and / or magnetic disks. Volatile media include, but are not limited to, dynamic memory.

[0104] A statement whose value exceeds (or is greater than or higher than) a first threshold is equivalent to a statement whose value meets or exceeds a second threshold slightly greater than the first threshold. For example, in the resolution of the computing system, the second threshold is one value higher than the first threshold. A statement whose value is less than the first threshold (or within or below the first threshold) is equivalent to a statement whose value is less than or equal to a second threshold slightly lower than the first threshold. For example, in the resolution of the computing system, the second threshold is one value lower than the first threshold.

[0105] Examples of implementations are described in the following numbered clauses:

[0106] 1. A method for determining the distance to a satellite launch vehicle using a receiver, comprising:

[0107] Receive signals from the satellite launch vehicle;

[0108] Determine the configuration of one or more notch filters;

[0109] Determine the pseudo-random noise code and Doppler frequency associated with the signal;

[0110] The code phase correction value is determined at least based on the configuration of the one or more notch filters, the pseudo-random noise code, and the Doppler frequency; and

[0111] The distance to the satellite launch vehicle is calculated at least in part based on the signal and the code phase correction value.

[0112] 2. The method of Clause 1, wherein determining the code phase correction value comprises: obtaining the code phase correction value from a lookup table based on the configuration of the one or more notch filters, the pseudo-random noise code, and the Doppler frequency.

[0113] 3. The method of Clause 2 further includes: receiving auxiliary data from a network entity, wherein the auxiliary data includes the lookup table.

[0114] 4. The method of Clause 3, wherein the auxiliary data is received via one or more Long Term Evolution Positioning Protocol (LPP) messages.

[0115] 5. The method of Clause 3, wherein the auxiliary data is received via one or more Radio Resource Control (RRC) messages.

[0116] 6. The method of Clause 2, wherein determining the code phase correction value comprises: obtaining the code phase correction value based on an interpolation function.

[0117] 7. The method of Clause 1 further includes: generating a lookup table with the receiver based on a modeled autocorrelation function for a plurality of notch filter configurations, and wherein determining the code phase correction value includes: obtaining the code phase correction value from the lookup table based on the one or more notch filter configurations, the pseudo-random noise code, and the Doppler frequency.

[0118] 8. The method of Clause 1, wherein the one or more notch filter configuration includes one or more notch frequencies and one or more bandwidths associated with the one or more notch frequencies.

[0119] 9. The method of Clause 1, wherein calculating the distance to the satellite launch vehicle includes: determining the pseudorange to the satellite launch vehicle based on the signal.

[0120] 10. The method of Clause 1, wherein the receiver includes one or more notch filters, the one or more notch filters including one or more digital filters having a programmable center frequency and bandwidth.

[0121] 11. An apparatus comprising:

[0122] Memory;

[0123] At least one satellite positioning system receiver configured to receive signals from a satellite launch vehicle;

[0124] At least one processor, communicatively coupled to the memory and the at least one satellite positioning system receiver, and configured to:

[0125] The signal was received from the satellite launch vehicle;

[0126] Determine the configuration of one or more notch filters;

[0127] Determine the pseudo-random noise code and Doppler frequency associated with the signal;

[0128] The code phase correction value is determined at least based on the configuration of the one or more notch filters, the pseudo-random noise code, and the Doppler frequency; and

[0129] The distance to the satellite launch vehicle is calculated at least in part based on the signal and the code phase correction value.

[0130] 12. The apparatus of Clause 11, wherein the at least one processor is further configured to obtain the code phase correction value from a lookup table based on the configuration of the one or more notch filters, the pseudo-random noise code, and the Doppler frequency.

[0131] 13. The apparatus of Clause 12 further includes at least one transceiver communicatively coupled to the at least one processor, wherein the at least one processor is further configured to receive auxiliary data from a network entity, and wherein the auxiliary data includes the lookup table.

[0132] 14. The apparatus of Clause 13, wherein the auxiliary data is received via one or more Long Term Evolution Positioning Protocol (LPP) messages.

[0133] 15. The apparatus of Clause 13, wherein the auxiliary data is received via one or more Radio Resource Control (RRC) messages.

[0134] 16. The apparatus of Clause 12, wherein the at least one processor is further configured to obtain the code phase correction value based on an interpolation function.

[0135] 17. The apparatus of Clause 11, wherein the at least one processor is further configured to: generate a lookup table based on a modeled autocorrelation function for a plurality of notch filter configurations, and obtain the code phase correction value from the lookup table based on the one or more notch filter configurations, the pseudo-random noise code, and the Doppler frequency.

[0136] 18. The apparatus of Clause 11, wherein the one or more notch filters are configured to include one or more notch frequencies and one or more bandwidths associated with the one or more notch frequencies.

[0137] 19. The apparatus of Clause 11, wherein the at least one processor is further configured to determine the pseudorange to the satellite launch vehicle based on the signal.

[0138] 20. The apparatus of Clause 11, wherein the one or more notch filters are configured to include one or more digital filters having a programmable center frequency and bandwidth.

[0139] 21. An apparatus for determining the distance to a satellite launch vehicle, comprising:

[0140] Device for receiving signals from the satellite launch vehicle;

[0141] A means for determining the configuration of one or more notch filters;

[0142] A means for determining the pseudo-random noise code and Doppler frequency associated with the signal;

[0143] Means for determining a code phase correction value based at least on the configuration of the one or more notch filters, the pseudo-random noise code, and the Doppler frequency; and

[0144] A means for calculating the distance to the satellite launch vehicle based at least in part on the signal and the code phase correction value.

[0145] 22. The apparatus of Clause 21, wherein the means for determining the code phase correction value includes: means for obtaining the code phase correction value from a lookup table based on the configuration of the one or more notch filters, the pseudo-random noise code, and the Doppler frequency.

[0146] 23. The apparatus of Clause 22 further includes: means for receiving auxiliary data from a network entity, wherein the auxiliary data includes the lookup table.

[0147] 24. The equipment as described in Clause 23, wherein the auxiliary data is received via one or more Long Term Evolution Positioning Protocol (LPP) messages.

[0148] 25. The equipment as described in Clause 23, wherein the auxiliary data is received via one or more Radio Resource Control (RRC) messages.

[0149] 26. The apparatus of Clause 22, wherein the means for determining the code phase correction value includes: means for obtaining the code phase correction value based on an interpolation function.

[0150] 27. The apparatus of Clause 21 further includes: means for generating a lookup table based on a modeled autocorrelation function for a plurality of notch filter configurations, and wherein the means for determining the code phase correction value includes: means for obtaining the code phase correction value from the lookup table based on the one or more notch filter configurations, the pseudo-random noise code, and the Doppler frequency.

[0151] 28. The equipment as described in Clause 21, wherein the one or more notch filter configuration includes one or more notch frequencies and one or more bandwidths associated with the one or more notch frequencies.

[0152] 29. The equipment as described in Clause 21, wherein the means for calculating the distance to the satellite launch vehicle includes: means for determining the pseudorange to the satellite launch vehicle based on the signal.

[0153] 30. The apparatus of Clause 21 further includes one or more notch filters, the one or more notch filters including one or more digital filters having a programmable center frequency and bandwidth.

[0154] 31. A non-transient processor-readable storage medium comprising processor-readable instructions for enabling one or more processors to determine the distance to a satellite launch vehicle, comprising:

[0155] Code used to receive signals from the satellite launch vehicle;

[0156] Code used to determine the configuration of one or more notch filters;

[0157] The code used to determine the pseudo-random noise code and Doppler frequency associated with the signal;

[0158] Code for determining code phase correction values ​​based at least on the configuration of the one or more notch filters, the pseudo-random noise code, and the Doppler frequency; and

[0159] Code used to calculate the distance to the satellite launch vehicle, at least in part, based on the signal and the code phase correction value.

[0160] 32. A non-transient processor-readable storage medium as described in Clause 31, wherein the code for determining the code phase correction value includes: code for obtaining the code phase correction value from a lookup table based on the configuration of the one or more notch filters, the pseudo-random noise code, and the Doppler frequency.

[0161] 33. The non-transient processor-readable storage medium of Clause 32 further includes: code for receiving auxiliary data from a network entity, wherein the auxiliary data includes the lookup table.

[0162] 34. A non-transient processor-readable storage medium as described in Clause 33, wherein the auxiliary data is received via one or more Long Term Evolution Positioning Protocol (LPP) messages.

[0163] 35. A non-transient processor-readable storage medium as described in Clause 33, wherein the auxiliary data is received via one or more Radio Resource Control (RRC) messages.

[0164] 36. A non-transient processor-readable storage medium as described in Clause 32, wherein the code for determining the code phase correction value includes: code for obtaining the code phase correction value based on an interpolation function.

[0165] 37. The non-transient processor-readable storage medium of Clause 31 further includes: code for generating a lookup table based on a modeled autocorrelation function for a plurality of notch filter configurations, and wherein the code for determining the code phase correction value includes: code for obtaining the code phase correction value from the lookup table based on the one or more notch filter configurations, the pseudo-random noise code, and the Doppler frequency.

[0166] 38. A non-transient processor-readable storage medium as described in Clause 31, wherein the one or more notch filter configurations include one or more notch frequencies and one or more bandwidths associated with the one or more notch frequencies.

[0167] 39. A non-transient processor-readable storage medium as described in Clause 31, wherein the code for calculating the distance to the satellite launch vehicle includes: code for determining the pseudorange to the satellite launch vehicle based on the signal.

[0168] 40. The non-transient processor-readable storage medium of Clause 31 further includes one or more notch filters, the one or more notch filters including one or more digital filters having a programmable center frequency and bandwidth.

Claims

1. A method for determining the distance to a satellite launch vehicle using a receiver, comprising: Receive signals from the satellite launch vehicle; Determine the configuration of one or more notch filters; Determine the pseudo-random noise code and Doppler frequency associated with the signal; The code phase correction value is determined based at least on the configuration of the one or more notch filters, the pseudo-random noise code, and the Doppler frequency; as well as The distance to the satellite launch vehicle is calculated at least in part based on the signal and the code phase correction value.

2. The method as described in claim 1, wherein, Determining the code phase correction value includes obtaining the code phase correction value from a lookup table based on the configuration of the one or more notch filters, the pseudo-random noise code, and the Doppler frequency.

3. The method of claim 2, further comprising: Receive auxiliary data from network entities, wherein the auxiliary data includes the lookup table.

4. The method of claim 3, wherein, The auxiliary data is received via one or more Long Term Evolution Positioning Protocol (LPP) messages.

5. The method of claim 3, wherein, The auxiliary data is received via one or more Radio Resource Control (RRC) messages.

6. The method of claim 2, wherein, Determining the code phase correction value includes obtaining the code phase correction value based on an interpolation function.

7. The method of claim 1, further comprising: The receiver generates a lookup table based on a modeled autocorrelation function for multiple notch filter configurations, and determining the code phase correction value includes obtaining the code phase correction value from the lookup table based on the one or more notch filter configurations, the pseudo-random noise code, and the Doppler frequency.

8. The method of claim 1, wherein, The one or more notch filter configurations include one or more notch frequencies and one or more bandwidths associated with the one or more notch frequencies.

9. The method of claim 1, wherein, Calculating the distance to the satellite launch vehicle includes determining the pseudorange to the satellite launch vehicle based on the signal.

10. The method of claim 1, wherein, The receiver includes one or more notch filters, which include one or more digital filters having programmable center frequencies and bandwidths.

11. An apparatus comprising: Memory; At least one satellite positioning system receiver configured to receive signals from a satellite launch vehicle; At least one processor, communicatively coupled to the memory and the at least one satellite positioning system receiver, and configured to: Receive the signal from the satellite launch vehicle; Determine the configuration of one or more notch filters; Determine the pseudo-random noise code and Doppler frequency associated with the signal; The code phase correction value is determined based at least on the configuration of the one or more notch filters, the pseudo-random noise code, and the Doppler frequency; as well as The distance to the satellite launch vehicle is calculated at least in part based on the signal and the code phase correction value.

12. The apparatus of claim 11, wherein, The at least one processor is further configured to obtain the code phase correction value from a lookup table based on the configuration of the one or more notch filters, the pseudo-random noise code, and the Doppler frequency.

13. The apparatus of claim 12, further comprising at least one transceiver communicatively coupled to the at least one processor, wherein the at least one processor is further configured to receive auxiliary data from a network entity, and wherein the auxiliary data includes the lookup table.

14. The apparatus of claim 13, wherein, The auxiliary data is received via one or more Long Term Evolution Positioning Protocol (LPP) messages.

15. The apparatus of claim 13, wherein, The auxiliary data is received via one or more Radio Resource Control (RRC) messages.

16. The apparatus of claim 12, wherein, The at least one processor is further configured to obtain the code phase correction value based on an interpolation function.

17. The apparatus of claim 11, wherein, The at least one processor is further configured to: generate a lookup table based on a modeled autocorrelation function for multiple notch filter configurations, and obtain the code phase correction value from the lookup table based on the one or more notch filter configurations, the pseudo-random noise code, and the Doppler frequency.

18. The apparatus of claim 11, wherein, The one or more notch filter configurations include one or more notch frequencies and one or more bandwidths associated with the one or more notch frequencies.

19. The apparatus of claim 11, wherein, The at least one processor is further configured to determine the pseudorange to the satellite launch vehicle based on the signal.

20. The apparatus of claim 11, wherein, The one or more notch filter configurations include one or more digital filters with programmable center frequency and bandwidth.

21. An apparatus for determining the distance to a satellite launch vehicle, comprising: A means for receiving signals from the satellite launch vehicle; A means for determining the configuration of one or more notch filters; A means for determining the pseudo-random noise code and Doppler frequency associated with the signal; A means for determining a code phase correction value based at least on the configuration of the one or more notch filters, the pseudo-random noise code, and the Doppler frequency; as well as A means for calculating the distance to the satellite launch vehicle based at least in part on the signal and the code phase correction value.

22. The equipment as claimed in claim 21, wherein, The means for determining the code phase correction value includes: means for obtaining the code phase correction value from a lookup table based on the configuration of the one or more notch filters, the pseudo-random noise code, and the Doppler frequency.

23. The equipment of claim 22, further comprising: A means for receiving auxiliary data from a network entity, wherein the auxiliary data includes the lookup table.

24. The equipment as claimed in claim 23, wherein, The auxiliary data is received via one or more Long Term Evolution Positioning Protocol (LPP) messages.

25. The equipment as claimed in claim 23, wherein, The auxiliary data is received via one or more Radio Resource Control (RRC) messages.

26. The equipment as claimed in claim 22, wherein, The apparatus for determining the code phase correction value includes: an apparatus for obtaining the code phase correction value based on an interpolation function.

27. The equipment of claim 21, further comprising: The means for generating a lookup table based on a modeled autocorrelation function for multiple notch filter configurations, wherein the means for determining the code phase correction value includes: means for obtaining the code phase correction value from the lookup table based on the one or more notch filter configurations, the pseudo-random noise code, and the Doppler frequency.

28. The equipment as claimed in claim 21, wherein, The one or more notch filter configurations include one or more notch frequencies and one or more bandwidths associated with the one or more notch frequencies.

29. The equipment as claimed in claim 21, wherein, The apparatus for calculating the distance to the satellite launch vehicle includes: an apparatus for determining the pseudorange to the satellite launch vehicle based on the signal.

30. The apparatus of claim 21, further comprising one or more notch filters, the one or more notch filters comprising one or more digital filters having a programmable center frequency and bandwidth.

31. A non-transient processor-readable storage medium comprising processor-readable instructions for enabling one or more processors to determine the distance to a satellite launch vehicle, comprising: Code used to receive signals from the satellite launch vehicle; Code used to determine the configuration of one or more notch filters; Codes used to determine the pseudo-random noise code and Doppler frequency associated with the signal; Code used to determine code phase correction values ​​based at least on the configuration of the one or more notch filters, the pseudo-random noise code, and the Doppler frequency; as well as Code used to calculate the distance to the satellite launch vehicle based at least in part on the signal and the code phase correction value.

32. The non-transient processor-readable storage medium of claim 31, wherein, The code used to determine the code phase correction value includes: code for obtaining the code phase correction value from a lookup table based on the configuration of the one or more notch filters, the pseudo-random noise code, and the Doppler frequency.

33. The non-transient processor-readable storage medium of claim 32, further comprising: Code for receiving auxiliary data from network entities, wherein the auxiliary data includes the lookup table.

34. The non-transient processor-readable storage medium as described in claim 33, wherein, The auxiliary data is received via one or more Long Term Evolution Positioning Protocol (LPP) messages.

35. The non-transient processor-readable storage medium as described in claim 33, wherein, The auxiliary data is received via one or more Radio Resource Control (RRC) messages.

36. The non-transient processor-readable storage medium of claim 32, wherein, The code used to determine the code phase correction value includes: code used to obtain the code phase correction value based on an interpolation function.

37. The non-transient processor-readable storage medium of claim 31, further comprising: Code for generating a lookup table based on a modeled autocorrelation function for multiple notch filter configurations, wherein code for determining the code phase correction value includes: code for obtaining the code phase correction value from the lookup table based on the one or more notch filter configurations, the pseudo-random noise code, and the Doppler frequency.

38. The non-transient processor-readable storage medium of claim 31, wherein, The one or more notch filter configurations include one or more notch frequencies and one or more bandwidths associated with the one or more notch frequencies.

39. The non-transient processor-readable storage medium of claim 31, wherein, The code used to calculate the distance to the satellite launch vehicle includes: code used to determine the pseudorange to the satellite launch vehicle based on the signal.

40. The non-transient processor-readable storage medium of claim 31, further comprising one or more notch filters, the one or more notch filters comprising one or more digital filters having a programmable center frequency and bandwidth.

Citation Information

Patent Citations

  • Adaptive notch filter and resonance suppression device using the same

    JP2011145726A

  • Method and system for GPS position measuring and frequency error detecting method

    US20080272960A1