CN105182377B - A kind of receiver board and receiver - Google Patents
A kind of receiver board and receiver Download PDFInfo
- Publication number
- CN105182377B CN105182377B CN201510520389.7A CN201510520389A CN105182377B CN 105182377 B CN105182377 B CN 105182377B CN 201510520389 A CN201510520389 A CN 201510520389A CN 105182377 B CN105182377 B CN 105182377B
- Authority
- CN
- China
- Prior art keywords
- data
- read
- write
- dual
- storage region
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S19/00—Satellite radio beacon positioning systems; Determining position, velocity or attitude using signals transmitted by such systems
- G01S19/01—Satellite radio beacon positioning systems transmitting time-stamped messages, e.g. GPS [Global Positioning System], GLONASS [Global Orbiting Navigation Satellite System] or GALILEO
- G01S19/13—Receivers
- G01S19/33—Multimode operation in different systems which transmit time stamped messages, e.g. GPS/GLONASS
Landscapes
- Engineering & Computer Science (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Position Fixing By Use Of Radio Waves (AREA)
Abstract
本发明实施例公开了一种接收机板卡及接收机。本发明实施例中,基带处理模块用于根据卫星数字中频信号得到第一数据,将第一数据写入N个双口RAM中,并向定位解算模块发送第一指令;以及在接收到第二指令的情况下,从N个双口RAM中读取第二数据;N为大于1的整数;定位解算模块接收用于在接收到第一指令的情况下,通过EMIF总线从N个双口RAM中读取第一数据;根据第一数据,得到第二数据,通过EMIF总线将第二数据写入到N个双口RAM中,并向基带处理模块发送第二指令。本发明实施例中通过EMIF总线和N个双口RAM有效提高了基带处理模块与定位解算模块之间的数据交互的能力。
The embodiment of the invention discloses a receiver board and a receiver. In the embodiment of the present invention, the baseband processing module is used to obtain the first data according to the satellite digital intermediate frequency signal, write the first data in N dual-port RAMs, and send the first instruction to the positioning calculation module; and after receiving the first data In the case of two instructions, read the second data from N dual-port RAMs; N is an integer greater than 1; Read the first data in the dual-port RAM; obtain the second data according to the first data, write the second data into N dual-port RAMs through the EMIF bus, and send the second instruction to the baseband processing module. In the embodiment of the present invention, the capability of data interaction between the baseband processing module and the positioning solution module is effectively improved through the EMIF bus and N dual-port RAMs.
Description
技术领域technical field
本发明涉及卫星导航技术领域,尤其涉及一种接收机板卡及接收机。The invention relates to the technical field of satellite navigation, in particular to a receiver board and a receiver.
背景技术Background technique
目前全球卫星导航接收系统中,主要包括了主要包括了中国BDS(BeiDouNavigation Satellite System,北斗卫星导航系统)、美国GPS(Global NavigationSatellite System,全球定位系统)、俄国格洛纳斯(GLONASS)和欧洲伽利略(Galileo),每个卫星系统又有多个频点信号,加在一起有十几个频点。为设计能容纳更多频点的多模多频接收机,基带中的卫星跟踪通道可能会达到几百个,基带处理模块与定位解算模块每一次的数据交互量会达到10K左右。卫星导航接收机基带处理模块与定位解算模块通信方法主要有两种方式:第一种方式:定位解算模块中的CPU(Central Processing Unit,处理器)通过总线访问基带处理模块中的寄存器;第二种方式定位解算模块中的CPU通过总线方式访问基带处理模块中的单个RAM(Random Access Memory,随机存储器)的数据。At present, the global satellite navigation receiving system mainly includes Chinese BDS (BeiDou Navigation Satellite System, Beidou Satellite Navigation System), American GPS (Global Navigation Satellite System, Global Positioning System), Russian GLONASS (GLONASS) and European Galileo (Galileo), each satellite system has multiple frequency point signals, adding up to more than a dozen frequency points. In order to design a multi-mode multi-frequency receiver that can accommodate more frequency points, the number of satellite tracking channels in the baseband may reach hundreds, and the amount of data interaction between the baseband processing module and the positioning calculation module will reach about 10K each time. The satellite navigation receiver baseband processing module and the positioning solution module communication method mainly contain two modes: the first way: the CPU (Central Processing Unit, processor) in the positioning solution module accesses the register in the baseband processing module through the bus; In the second way, the CPU in the positioning calculation module accesses the data of a single RAM (Random Access Memory, Random Access Memory) in the baseband processing module through a bus.
上述第一种方式,基带处理模块每隔一定时间将卫星数据锁存到寄存器组中,然后定位解算模块中的CPU通过总线读写寄存器中的数据,因此,这种方式中的总线数据更新速率由基带处理模块的时钟控制,通信效率很低,一般最大也只能达到几十兆的通信速率;此外,将所有卫星通道寄存器通过一个数据选择器与地址逻辑连接,影响基带处理模块FPGA综合布线的成功率。In the above-mentioned first method, the baseband processing module latches the satellite data into the register set at regular intervals, and then the CPU in the positioning solution module reads and writes the data in the register through the bus. Therefore, the bus data in this method is updated The rate is controlled by the clock of the baseband processing module, and the communication efficiency is very low. Generally, the maximum communication rate can only reach tens of megabits. In addition, all satellite channel registers are connected to the address logic through a data selector, which affects the FPGA synthesis of the baseband processing module. Wiring success rate.
上述第二种方式,使用单个RAM作为总线与基带之间的数据缓冲,一方面会导致基带处理模块内部布线时RAM的扇入太大,另一方面,传统单口RAM只有一个数据地址端口,读写不能同时进行,通信效率较低。此外,基带处理模块将所有卫星通道的数据都写入到一个RAM中需要较长时间,降低了通信时总线利用效率,且当通道足够多时,有可能不能满足卫星跟踪所需的实时处理时间。In the above second method, using a single RAM as a data buffer between the bus and the baseband, on the one hand, the fan-in of the RAM will be too large when the baseband processing module is wired internally; on the other hand, the traditional single-port RAM has only one data address port, and the read Writing cannot be performed at the same time, and the communication efficiency is low. In addition, it takes a long time for the baseband processing module to write the data of all satellite channels into a RAM, which reduces the bus utilization efficiency during communication, and when there are enough channels, it may not be able to meet the real-time processing time required for satellite tracking.
综上,目前亟需一种稳定可靠的方法用于实现基带处理模块与定位解算模块之间的数据交互。To sum up, there is an urgent need for a stable and reliable method for data interaction between the baseband processing module and the positioning calculation module.
发明内容Contents of the invention
本发明实施例提供一种接收机板卡,用以提高基带处理模块与定位解算模块之间的数据交互能力。An embodiment of the present invention provides a receiver board, which is used to improve the data interaction capability between a baseband processing module and a positioning solution module.
本发明实施例提供的一种接收机板卡,包括射频模块、基带处理模块和定位解算模块,所述射频模块与所述基带处理模块连接,所述基带处理模块与所述定位解算模块通过外部存储器接口EMIF总线连接;所述基带处理模块包括N个双口RAM;所述射频模块用于通过对接收到的卫星导航信号进行处理得到卫星数字中频信号,并将所述卫星数字中频信号发送给所述基带处理模块;A receiver board provided by an embodiment of the present invention includes a radio frequency module, a baseband processing module, and a positioning calculation module, the radio frequency module is connected to the baseband processing module, and the baseband processing module is connected to the positioning calculation module Connected through an external memory interface EMIF bus; the baseband processing module includes N dual-port RAMs; the radio frequency module is used to obtain a satellite digital intermediate frequency signal by processing the received satellite navigation signal, and convert the satellite digital intermediate frequency signal Send to the baseband processing module;
所述基带处理模块用于根据接收到的所述卫星数字中频信号得到第一数据,将所述第一数据写入N个双口RAM中,并向所述定位解算模块发送第一指令;以及在接收到第二指令的情况下,从所述N个双口RAM中读取第二数据;N为大于1的整数;The baseband processing module is used to obtain first data according to the received satellite digital intermediate frequency signal, write the first data into N dual-port RAMs, and send a first instruction to the positioning calculation module; And in the case of receiving the second instruction, read the second data from the N dual-port RAMs; N is an integer greater than 1;
所述定位解算模块用于在接收到所述第一指令的情况下,通过所述EMIF总线从所述N个双口RAM中读取所述第一数据;根据所述第一数据,得到所述第二数据,以及通过所述EMIF总线将所述第二数据写入所述N个双口RAM中,并向所述基带处理模块发送第二指令。The positioning calculation module is configured to read the first data from the N dual-port RAMs through the EMIF bus when the first instruction is received; according to the first data, obtain The second data, and writing the second data into the N dual-port RAMs through the EMIF bus, and sending a second instruction to the baseband processing module.
较佳地,所述双口RAM包括第一读写端口和第二读写端口;Preferably, the dual-port RAM includes a first read-write port and a second read-write port;
所述基带处理模块用于将所述第一数据通过所述第一读写端口写入所述N个双口RAM中,以及通过所述第一读写端口从所述N个RAM中读取所述第二数据;The baseband processing module is used to write the first data into the N dual-port RAMs through the first read-write port, and read from the N RAMs through the first read-write port said second data;
所述定位解算模块用于将所述第二数据通过所述第二读写端口写入所述N个双口RAM中,以及通过所述第二读写端口从所述N个双口RAM中读取所述第一数据。The positioning calculation module is used to write the second data into the N dual-port RAMs through the second read-write port, and write data from the N dual-port RAMs through the second read-write port. Read the first data in.
较佳地,所述基带处理模块通过所述第一读写端口读写数据的速度由第一时钟信号控制;Preferably, the speed at which the baseband processing module reads and writes data through the first read/write port is controlled by a first clock signal;
所述定位解算模块通过所述第二读写端口读写数据的速度由第二时钟信号控制。The speed of reading and writing data by the positioning solution module through the second read-write port is controlled by a second clock signal.
较佳地,所述双口RAM包括第一存储区域和第二存储区域;Preferably, the dual-port RAM includes a first storage area and a second storage area;
所述基带处理模块还包括第一读写选择单元;所述第一读写选择单元用于将所述第一数据选择性地写入N个所述第一存储区域或N个所述第二存储区域,以及选择性地从N个所述第一存储区域或N个所述第二存储区域读取所述第二数据;The baseband processing module also includes a first read-write selection unit; the first read-write selection unit is used to selectively write the first data into the N first storage areas or the N second storage areas. a storage area, and selectively read the second data from N first storage areas or N second storage areas;
所述定位解算模块还包括第二读写选择单元;所述第二读写选择单元用于将所述第二数据选择性地写入N个所述第一存储区域或N个所述第二存储区域,以及选择性地从N个所述第一存储区域或N个所述第二存储区域读取所述第一数据;The positioning calculation module also includes a second read-write selection unit; the second read-write selection unit is used to selectively write the second data into the N first storage areas or the N first storage areas. Two storage areas, and selectively read the first data from N first storage areas or N second storage areas;
所述第一读写选择单元写入第一数据的存储区域与所述第二读写选择单元写入所述第二数据的存储区域不同。The storage area where the first data is written by the first read-write selection unit is different from the storage area where the second data is written by the second read-write selection unit.
较佳地,所述第一读写选择单元包括与所述N个RAM一一对应的N个内部逻辑控制;Preferably, the first read-write selection unit includes N internal logic controls corresponding to the N RAMs one-to-one;
所述第一读写选择单元用于将所述第一数据选择性地写入N个所述第一存储区域或N个所述第二存储区域,以及选择性地从N个所述第一存储区域或N个所述第二存储区域读取所述第二数据,包括:The first read/write selection unit is used to selectively write the first data into the N first storage areas or the N second storage areas, and selectively write the first data from the N first storage areas. Reading the second data from the storage area or the N second storage areas includes:
所述N个内部逻辑控制通过写逻辑将所述第一数据选择性地写入N个所述第一存储区域或N个所述第二存储区域,以及通过读逻辑选择性地从N个所述第一存储区域或N个所述第二存储区域读取所述第二数据。The N internal logic controls to selectively write the first data into the N first storage areas or the N second storage areas through the write logic, and selectively write the first data from the N second storage areas through the read logic. Read the second data from the first storage area or the N second storage areas.
较佳地,所述第二读写选择单元包括EMIF总线控制器;所述基带处理模块还包括RAM选择逻辑;Preferably, the second read-write selection unit includes an EMIF bus controller; the baseband processing module also includes RAM selection logic;
所述第二读写选择单元用于将所述第二数据选择性地写入N个所述第一存储区域或N个所述第二存储区域,以及选择性地从N个所述第一存储区域或N个所述第二存储区域读取所述第一数据,包括:The second read-write selection unit is used to selectively write the second data into the N first storage areas or the N second storage areas, and selectively write the second data from the N first storage areas. Reading the first data from the storage area or the N second storage areas includes:
所述EMIF总线控制器通过所述RAM选择逻辑将所述第二数据选择性地写入N个所述第一存储区域或N个所述第二存储区域,以及选择性地从N个所述第一存储区域或N个所述第二存储区域读取所述第一数据。The EMIF bus controller selectively writes the second data into the N first storage areas or the N second storage areas through the RAM selection logic, and selectively writes the second data from the N The first storage area or the N second storage areas read the first data.
较佳地,所述第一数据包括各卫星IQ通道累加量、码片计数值,码周计数值、载波周计数值;所述第二数据包括移位寄存器抽头字、移位寄存器初始状态字、移位寄存器截止状态、载波频率控制字、载波相位控制字、码频率控制字、码相位控制字。Preferably, the first data includes the cumulative amount of each satellite IQ channel, the chip count value, the code cycle count value, and the carrier cycle count value; the second data includes the shift register tap word, the shift register initial state word , Shift register cut-off state, carrier frequency control word, carrier phase control word, code frequency control word, code phase control word.
较佳地,所述基带处理模块为现场可编程门阵列模块FPGA;所述定位解算模块为数字信号处理器DSP。Preferably, the baseband processing module is a field programmable gate array module FPGA; the positioning solution module is a digital signal processor DSP.
较佳地,所述定位解算模块包括增强型直接内存存取EDMA控制器;Preferably, the positioning solution module includes an enhanced direct memory access EDMA controller;
所述EDMA控制器用于控制所述EMIF总线从所述N个双口RAM中读取所述第一数据,以及控制所述EMIF总线将所述第二数据写入所述N个双口RAM中。The EDMA controller is used to control the EMIF bus to read the first data from the N dual-port RAMs, and control the EMIF bus to write the second data into the N dual-port RAMs .
本发明实施例提供的一种接收机,包括天线以及上述实施例所述的接收机板卡;A receiver provided by an embodiment of the present invention includes an antenna and the receiver board described in the above embodiments;
所述天线,用于接收卫星导航信号,并将所述卫星导航信号发送给所述接收机板卡。The antenna is used to receive satellite navigation signals and send the satellite navigation signals to the receiver board.
本发明实施例中的接收机板卡包括射频模块、基带处理模块和定位解算模块,射频模块与基带处理模块连接,基带处理模块与定位解算模块通过EMIF总线连接;基带处理模块包括N个双口RAM;射频模块用于通过对接收到的卫星导航信号进行处理得到卫星数字中频信号,并将所述卫星数字中频信号发送给基带处理模块;基带处理模块用于根据卫星数字中频信号得到第一数据,将第一数据写入N个双口RAM中,并向定位解算模块发送第一指令;以及在接收到第二指令的情况下,从N个双口RAM中读取第二数据;N为大于1的整数;定位解算模块接收用于在接收到第一指令的情况下,通过EMIF总线从N个双口RAM中读取第一数据;根据第一数据,得到第二数据,通过EMIF总线将第二数据写入到N个双口RAM中,并向基带处理模块发送第二指令。本发明实施例中基带处理模块和定位解算模块采用基于EMIF总线和N个双口RAM的数据通信方式,使得基带处理模块能够以并行的方式同时对N个双口RAM进行读写,有效缩短了基带处理模块读写RAM的时间,提高了基带处理模块FPFA综合布线的成功率;而且,通过EMIF总线和N个双口RAM有效提高了基带处理模块与定位解算模块之间的数据交互的能力。The receiver board in the embodiment of the present invention includes a radio frequency module, a baseband processing module and a positioning solution module, the radio frequency module is connected to the baseband processing module, and the baseband processing module is connected to the positioning solution module through the EMIF bus; the baseband processing module includes N Dual-port RAM; the radio frequency module is used to obtain the satellite digital intermediate frequency signal by processing the received satellite navigation signal, and sends the satellite digital intermediate frequency signal to the baseband processing module; the baseband processing module is used to obtain the first satellite digital intermediate frequency signal according to the satellite digital intermediate frequency signal One data, write the first data into N dual-port RAMs, and send the first instruction to the positioning solution module; and read the second data from the N dual-port RAMs when receiving the second instruction ; N is an integer greater than 1; the positioning solution module is used to read the first data from N dual-port RAMs through the EMIF bus when the first instruction is received; according to the first data, the second data is obtained , write the second data into N dual-port RAMs through the EMIF bus, and send the second instruction to the baseband processing module. In the embodiment of the present invention, the baseband processing module and the positioning calculation module adopt a data communication method based on the EMIF bus and N dual-port RAMs, so that the baseband processing module can simultaneously read and write to N dual-port RAMs in a parallel manner, effectively shortening the The time for reading and writing RAM of the baseband processing module is reduced, and the success rate of FPFA integrated wiring of the baseband processing module is improved; moreover, the data interaction between the baseband processing module and the positioning calculation module is effectively improved through the EMIF bus and N dual-port RAMs. ability.
附图说明Description of drawings
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。In order to more clearly illustrate the technical solutions in the embodiments of the present invention, the drawings that need to be used in the description of the embodiments will be briefly introduced below. Obviously, the drawings in the following description are only some embodiments of the present invention. For Those of ordinary skill in the art can also obtain other drawings based on these drawings without any creative effort.
图1为本发明实施例提供的一种接收机板卡的结构示意图;FIG. 1 is a schematic structural diagram of a receiver board provided by an embodiment of the present invention;
图2为本发明实施例提供的一种接收机板卡的具体结构示意图;FIG. 2 is a schematic structural diagram of a receiver board provided by an embodiment of the present invention;
图3为本发明实施例提供的一种数据交互示意图;FIG. 3 is a schematic diagram of data interaction provided by an embodiment of the present invention;
图4为本发明实施例提供的EMIF总线与FPGA中的双口RAM的连接方式示意图;4 is a schematic diagram of the connection mode between the EMIF bus and the dual-port RAM in the FPGA provided by the embodiment of the present invention;
图5为本发明实施例提供的一种接收机的结构示意图。Fig. 5 is a schematic structural diagram of a receiver provided by an embodiment of the present invention.
具体实施方式Detailed ways
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。In order to make the purpose, technical solutions and advantages of the present invention clearer, the present invention will be further described in detail below in conjunction with the accompanying drawings. Obviously, the described embodiments are only some of the embodiments of the present invention, rather than all of them. Based on the embodiments of the present invention, all other embodiments obtained by persons of ordinary skill in the art without making creative efforts belong to the protection scope of the present invention.
图1为本发明实施例提供的一种接收机板卡的结构示意图,适用于导航接收机,该接收机板卡包括与天线101连接的射频模块102、基带处理模块103和定位解算模块104,所述射频模块102与所述基带处理模块103连接,所述基带处理模块103与所述定位解算模块104通过EMIF(External Memory Interface,外部存储器接口)总线连接;所述基带处理模块103包括N个双口RAM;Figure 1 is a schematic structural diagram of a receiver board provided by an embodiment of the present invention, which is suitable for a navigation receiver, and the receiver board includes a radio frequency module 102 connected to an antenna 101, a baseband processing module 103 and a positioning calculation module 104 , the radio frequency module 102 is connected to the baseband processing module 103, and the baseband processing module 103 is connected to the positioning calculation module 104 through an EMIF (External Memory Interface, external memory interface) bus; the baseband processing module 103 includes N dual-port RAM;
所述射频模块102用于通过对接收到的卫星导航信号进行处理得到卫星数字中频信号,并将所述卫星数字中频信号发送给所述基带处理模块103;The radio frequency module 102 is used to process the received satellite navigation signal to obtain a satellite digital intermediate frequency signal, and send the satellite digital intermediate frequency signal to the baseband processing module 103;
所述基带处理模块103用于根据接收到的所述卫星数字中频信号得到第一数据,将所述第一数据写入N个双口RAM中,并向所述定位解算模块104发送第一指令;在接收到第二指令的情况下,从所述N个双口RAM中读取第二数据;N为大于1的整数;The baseband processing module 103 is used to obtain first data according to the received satellite digital intermediate frequency signal, write the first data into N dual-port RAMs, and send the first data to the positioning calculation module 104. instruction; in the case of receiving the second instruction, read the second data from the N dual-port RAMs; N is an integer greater than 1;
所述定位解算模块104用于在接收到所述第一指令的情况下,通过所述EMIF总线从所述N个双口RAM中读取所述第一数据;根据所述第一数据,得到所述第二数据,通过所述EMIF总线将所述第二数据写入到所述N个双口RAM中,并向所述基带处理模块103发送第二指令。The positioning solution module 104 is configured to read the first data from the N dual-port RAMs through the EMIF bus when the first instruction is received; according to the first data, Obtaining the second data, writing the second data into the N dual-port RAMs through the EMIF bus, and sending a second instruction to the baseband processing module 103 .
本发明实施例中基带处理模块和定位解算模块采用基于EMIF总线和N个双口RAM的数据通信方式,使得基带处理模块能够以并行的方式同时对N个双口RAM进行读写,有效缩短了基带处理模块读写RAM的时间,提高了基带处理模块FPGA综合布线的成功率;而且,通过EMIF总线和N个双口RAM有效提高了基带处理模块与定位解算模块之间的数据交互的能力。In the embodiment of the present invention, the baseband processing module and the positioning calculation module adopt a data communication method based on the EMIF bus and N dual-port RAMs, so that the baseband processing module can simultaneously read and write to N dual-port RAMs in a parallel manner, effectively shortening the The time for the baseband processing module to read and write RAM is reduced, and the success rate of the FPGA integrated wiring of the baseband processing module is improved; moreover, the data interaction between the baseband processing module and the positioning calculation module is effectively improved through the EMIF bus and N dual-port RAMs. ability.
本发明实施例中天线接收到的卫星导航信号可为多种卫星导航系统的信号,较佳的,卫星导航信号为以下内容中的一项或几项:全球定位系统(Global PositioningSystem,GPS)、北斗卫星导航系统(BeiDou Navigation Satellite System,BDS)、全球卫星导航系统(GLONASS)、伽利略卫星导航(GALILEO)。In the embodiment of the present invention, the satellite navigation signal received by the antenna can be a signal of various satellite navigation systems. Preferably, the satellite navigation signal is one or more of the following: Global Positioning System (Global Positioning System, GPS), BeiDou Navigation Satellite System (BDS), Global Satellite Navigation System (GLONASS), Galileo Satellite Navigation (GALILEO).
本发明实施例中,天线接收到卫星导航信号后,将其发送给接收机板卡中的射频模块,射频模块通过对接收到的卫星导航信号进行处理得到卫星数字中频信号,并将所述卫星数字中频信号发送给所述基带处理模块,所述基带处理模块根据接收到的所述卫星数字中频信号得到第一数据。In the embodiment of the present invention, after the antenna receives the satellite navigation signal, it sends it to the radio frequency module in the receiver board, and the radio frequency module obtains the satellite digital intermediate frequency signal by processing the received satellite navigation signal, and sends the satellite The digital intermediate frequency signal is sent to the baseband processing module, and the baseband processing module obtains first data according to the received satellite digital intermediate frequency signal.
本发明实施例中,所述第一数据包括各卫星IQ通道累加量、码片计数值、码周计数值、载波周期计数值;所述第二数据包括移位寄存器抽头字、移位寄存器初始状态字、移位寄存器截止状态、载波频率控制字、载波相位控制字、码频率控制字、码相位控制字。In the embodiment of the present invention, the first data includes the cumulative amount of each satellite IQ channel, the chip count value, the code cycle count value, and the carrier cycle count value; the second data includes the shift register tap word, the shift register initial Status word, shift register cut-off state, carrier frequency control word, carrier phase control word, code frequency control word, code phase control word.
本发明实施例中,双口RAM包括第一读写端口和第二读写端口,从而使得基带处理模块和定位解算模块能够通过不同的读写端口访问N个双口RAM,具体地,基带处理模块将所述第一数据通过所述第一读写端口写入所述N个双口RAM中,以及通过所述第一读写端口从所述N个RAM中读取所述第二数据;定位解算模块用于将所述第二数据通过所述第二端口写入所述N个双口RAM中,以及通过所述第二端口从所述N个双口RAM中读取所述第一数据。In the embodiment of the present invention, the dual-port RAM includes a first read-write port and a second read-write port, so that the baseband processing module and the positioning calculation module can access N dual-port RAMs through different read-write ports. Specifically, the baseband The processing module writes the first data into the N dual-port RAMs through the first read-write port, and reads the second data from the N RAMs through the first read-write port The positioning calculation module is used to write the second data into the N dual-port RAMs through the second port, and read the N dual-port RAMs through the second port. first data.
由于基带处理模块和定位解算模块能够通过不同的读写端口访问N个双口RAM,因此,基带处理模块和定位解算模块读写数据的速度也可通过不同的时钟信号来控制。Since the baseband processing module and the positioning calculation module can access N dual-port RAMs through different read and write ports, the speed of reading and writing data of the baseband processing module and the positioning calculation module can also be controlled by different clock signals.
具体地,基带处理模块通过所述第一读写端口读写数据的速度由第一时钟信号控制,定位解算模块通过所述第二读写端口读写数据的速度由第二时钟信号控制,从而实现了基带处理模块和定位解算模块对双口RAM的操作时钟相互独立,读写互不干扰。例如,基带处理模块以50M的时钟将数据并行写入双口RAM中,写完后定位解算模块可用200M的时钟从双口RAM中读取数据,二者无需保持同步,从而使得定位解算模块能够以更快的速度访问双口RAM,有效提高了定位解算模块的访问双口RAM的效率。Specifically, the speed at which the baseband processing module reads and writes data through the first read-write port is controlled by a first clock signal, and the speed at which the positioning calculation module reads and writes data through the second read-write port is controlled by a second clock signal, In this way, the operation clocks of the baseband processing module and the positioning calculation module for the dual-port RAM are independent of each other, and reading and writing do not interfere with each other. For example, the baseband processing module writes data into the dual-port RAM in parallel with a 50M clock. After writing, the positioning solution module can use a 200M clock to read data from the dual-port RAM. The two do not need to be synchronized, so that the positioning solution The module can access the dual-port RAM at a faster speed, which effectively improves the efficiency of accessing the dual-port RAM of the positioning solution module.
本发明实施例中,第一指令可以为基带处理模块向定位解算模块发送的一个握手信号,第二指令可以为定位解算模块向基带处理模块发送的一个握手信号。In the embodiment of the present invention, the first instruction may be a handshake signal sent from the baseband processing module to the positioning calculation module, and the second instruction may be a handshake signal sent from the positioning calculation module to the baseband processing module.
本发明实施例中,基带信号处理模块为可以FPGA(FieldProgrammable GateArray,现场可编程门阵列模块);定位解算模块可以为DSP(DigitalSignal Processors,数字信号处理器)。基于DSP和FPGA的接收机板卡充分发挥了FPGA中基带处理过程可编程和DSP强大的数据处理能力。In the embodiment of the present invention, the baseband signal processing module may be FPGA (Field Programmable Gate Array, Field Programmable Gate Array module); the positioning solution module may be DSP (Digital Signal Processors, digital signal processor). The receiver board based on DSP and FPGA fully utilizes the programmable baseband processing process in FPGA and the powerful data processing capability of DSP.
FPGA和DSP通过EMIF总线连接,实现双向通信。具体地,FPGA将捕获后的卫星数据(第一数据)写入到N个双口RAM后,发送一个握手信号给DSP,DSP接收到握手信号后,通过EMIF总线从N个双口RAM中读取卫星数据,并根据卫星数据得到环路参数值(第二数据)。DSP通过EMIF总线将第二数据写入到N个双口RAM中,并向FPGA发送一个握手信号。FPGA接收到握手信号后,从N个双口RAM中取出第二数据,以根据第二数据调整各卫星通道的参数值,保证对卫星信号的紧密跟踪。FPGA and DSP are connected through EMIF bus to realize two-way communication. Specifically, after the FPGA writes the captured satellite data (first data) into N dual-port RAMs, it sends a handshake signal to the DSP. After receiving the handshake signal, the DSP reads the data from the N dual-port RAMs through the EMIF bus. The satellite data is obtained, and the loop parameter value (second data) is obtained according to the satellite data. The DSP writes the second data into N dual-port RAMs through the EMIF bus, and sends a handshake signal to the FPGA. After the FPGA receives the handshake signal, it takes out the second data from the N dual-port RAMs, so as to adjust the parameter values of each satellite channel according to the second data, so as to ensure close tracking of satellite signals.
本发明实施例中,N的大小可根据基带卫星通道一次更新的数据量来设置,同时还应考虑FPGA布线的扇入扇出大小。例如,基带卫星跟踪通道数为M,每次通道更新的总数据量为Q,每次调整通道参数数据量为S,那么每个RAM中的数据量可以按照(Q+S)/N进行设计,N、Q和S决定了RAM的位宽和深度。本发明实施例中,当N为1时,FPGA中RAM的布线的扇入最大,不利于时序约束,因此,优选地,N为大于1的整数。In the embodiment of the present invention, the size of N can be set according to the data volume of one update of the baseband satellite channel, and the fan-in and fan-out size of the FPGA wiring should also be considered. For example, the number of baseband satellite tracking channels is M, the total data volume of each channel update is Q, and the data volume of each channel parameter adjustment is S, then the data volume in each RAM can be designed according to (Q+S)/N , N, Q and S determine the bit width and depth of RAM. In the embodiment of the present invention, when N is 1, the fan-in of the RAM wiring in the FPGA is the largest, which is not conducive to timing constraints. Therefore, preferably, N is an integer greater than 1.
由于FPGA将Q个数据一次性地写入到双口RAM中后,才向DSP发送握手信号,因此,通道数M的值越大,数据总量Q的值便越高,FPGA写入数据所需的时间越长,难以满足需求。为进一步提高FPGA与DSP之间的数据传输效率,本发明实施例优选将FPGA中的每个双口RAM的存储区域划分为两部分,即第一存储区域和第二存储区域。基带处理模块还包括第一读写选择单元,用于将所述第一数据选择性地写入N个所述第一存储区域或N个所述第二存储区域,以及选择性地从N个所述第一存储区域或N个所述第二存储区域读取所述第二数据;定位解算模块还包括第二读写选择单元,用于将所述第二数据选择性地写入N个所述第一存储区域或N个所述第二存储区域,以及选择性地从N个所述第一存储区域或N个所述第二存储区域读取所述第一数据。Since the FPGA writes Q pieces of data into the dual-port RAM at one time, it sends a handshake signal to the DSP. Therefore, the larger the value of the number of channels M, the higher the value of the total amount of data Q. The longer it takes, the harder it is to meet the demand. In order to further improve the data transmission efficiency between the FPGA and the DSP, the embodiment of the present invention preferably divides the storage area of each dual-port RAM in the FPGA into two parts, namely the first storage area and the second storage area. The baseband processing module also includes a first read/write selection unit, configured to selectively write the first data into the N first storage areas or the N second storage areas, and selectively read from the N The first storage area or the N second storage areas read the second data; the positioning calculation module also includes a second read-write selection unit for selectively writing the second data into N the first storage areas or the N second storage areas, and selectively read the first data from the N first storage areas or the N second storage areas.
本发明实施例中,第一读写选择单元写入第一数据的存储区域与第二读写选择单元写入所述第二数据的存储区域不同。若第一读写选择单元将所述第一数据写入N个第一存储区域,则相应地,第二读写选择单元将第二数据写入N个第二存储区域;若第一读写选择单元将所述第一数据写入N个第二存储区域,则相应地,第二读写选择单元将第二数据写入N个第一存储区域。In the embodiment of the present invention, the storage area where the first data is written by the first read-write selection unit is different from the storage area where the second data is written by the second read-write selection unit. If the first read-write selection unit writes the first data into N first storage areas, then correspondingly, the second read-write selection unit writes the second data into N second storage areas; if the first read-write The selection unit writes the first data into the N second storage areas, and correspondingly, the second read/write selection unit writes the second data into the N first storage areas.
图2为本发明实施例提供的一种接收机板卡的具体结构示意图。如上述所述,本发明实施例中的N的值可进行设置。此处为方便解释本发明实施例中的接收机板卡的具体结构,仅示出FPGA中的两个双口RAM,即双口RAM1和双口RAM2。其中,双口RAM1包括存储区域1a和存储区域1b,双口RAM2包括存储区域2a和存储区域2b。N个双口RAM的结构与两个双口RAM的结构类似,可参照两个双口RAM的结构,此处不再赘述。FIG. 2 is a schematic structural diagram of a receiver board provided by an embodiment of the present invention. As mentioned above, the value of N in the embodiment of the present invention can be set. Here, for the convenience of explaining the specific structure of the receiver board in the embodiment of the present invention, only two dual-port RAMs in the FPGA are shown, that is, dual-port RAM1 and dual-port RAM2. Wherein, the dual-port RAM1 includes a storage area 1a and a storage area 1b, and the dual-port RAM2 includes a storage area 2a and a storage area 2b. The structure of the N dual-port RAMs is similar to the structure of the two dual-port RAMs, and reference may be made to the structures of the two dual-port RAMs, which will not be repeated here.
具体地,本发明实施例中,第一读写选择单元可以包括与N个双口RAM一一对应的N个内部逻辑控制,每个内部逻辑控制包括一个读逻辑和一个写逻辑,其中,读逻辑用于从双口RAM的一个存储区域内读取数据,写逻辑用于将数据写入双口RAM的另一个存储区域内。所述N个内部逻辑控制通过写逻辑将所述第一数据选择性地写入N个所述第一存储区域或N个所述第二存储区域,以及通过读逻辑选择性地从N个所述第一存储区域或N个所述第二存储区域读取所述第二数据。Specifically, in the embodiment of the present invention, the first read-write selection unit may include N internal logic controls corresponding to N dual-port RAMs one-to-one, and each internal logic control includes a read logic and a write logic, wherein the read The logic is used to read data from one storage area of the dual-port RAM, and the write logic is used to write data into another storage area of the dual-port RAM. The N internal logic controls to selectively write the first data into the N first storage areas or the N second storage areas through the write logic, and selectively write the first data from the N second storage areas through the read logic. Read the second data from the first storage area or the N second storage areas.
第二读写选择单元可以为EMIF总线控制器,其中,EMIF总线中的一部分地址线与双口RAM中的地址线连接,另一部分与FPGA中的RAM选择逻辑相连接,此部分地址线能够通过组合逻辑的方式依次片选所有的双口RAM,从而实现通过所述RAM选择逻辑将所述第二数据选择性地写入N个所述第一存储区域或N个所述第二存储区域,以及选择性地从N个所述第一存储区域或N个所述第二存储区域读取所述第一数据。The second read-write selection unit can be an EMIF bus controller, wherein, a part of the address lines in the EMIF bus is connected with the address lines in the dual-port RAM, and the other part is connected with the RAM selection logic in the FPGA, and this part of the address lines can be passed through Selecting all the dual-port RAMs sequentially in a combinational logic manner, so as to selectively write the second data into the N first storage areas or the N second storage areas through the RAM selection logic, And selectively read the first data from the N first storage areas or the N second storage areas.
本发明实施例中的DSP中包括处理器,可以由处理器控制EMIF总线进行数据的读取和写入。优选地,本发明实施例中还可以包括EDMA(Enhanced Direct Memory Access,增强型直接内存存取)控制器,由于EDMA控制器具有独立于处理器的后台批量数据传输的能力,因此,通过EDMA控制器控制EMIF总线进行数据的读取和写入,能够有效减少DSP中的处理器的使用率,充分发挥DSP的高速性能,使得处理器能够有更多的资源去完成更多通道的卫星定位解算,降低了DSP选型的成本。The DSP in the embodiment of the present invention includes a processor, and the processor can control the EMIF bus to read and write data. Preferably, an EDMA (Enhanced Direct Memory Access, Enhanced Direct Memory Access) controller can also be included in the embodiment of the present invention. Since the EDMA controller has the ability to transfer batches of data in the background independent of the processor, therefore, through the EDMA control The controller controls the EMIF bus to read and write data, which can effectively reduce the usage rate of the processor in the DSP, give full play to the high-speed performance of the DSP, and enable the processor to have more resources to complete more channels of satellite positioning solutions. Calculated, reducing the cost of DSP selection.
图3为本发明实施例提供的一种数据交互示意图。同样地,为方便解释本发明实施例中的数据交互过程,仅示出FPGA中的两个双口RAM。N个双口RAM的数据交互过程与两个双口RAM的数据交互过程类似,可参照两个双口RAM得到,此处不再赘述。FIG. 3 is a schematic diagram of data interaction provided by an embodiment of the present invention. Likewise, for the convenience of explaining the data interaction process in the embodiment of the present invention, only two dual-port RAMs in the FPGA are shown. The data exchange process of N dual-port RAMs is similar to the data exchange process of two dual-port RAMs, which can be obtained by referring to two dual-port RAMs, and will not be repeated here.
如图3所示,FPGA中包括双口RAM1和双口RAM2,第一内部逻辑控制用于控制双口RAM1中数据的读取和写入,第二内部逻辑控制用于控制双口RAM2中数据的读取和写入;其中,第一内部逻辑控制可以通过写逻辑将数据写入存储区域1b中,通过读逻辑从存储区域1a中读取数据,第二内部逻辑控制可以通过写逻辑将数据写入存储区域2b中,通过读逻辑从存储区域2a中读取数据;或者,第一内部逻辑控制也可以通过写逻辑将数据写入存储区域1a中,通过读逻辑从存储区域1b中读取数据,第二内部逻辑控制也可以通过写逻辑将数据写入存储区域2a中,通过读逻辑从存储区域2b中读取数据。图3中仅示出其中的一种情形,本发明实施例对此不做具体限定。FPGA中还可以包括第一信号处理单元,用于接收DSP发送的握手信号以及向DSP发送握手信号。As shown in Figure 3, the FPGA includes dual-port RAM1 and dual-port RAM2, the first internal logic control is used to control the reading and writing of data in the dual-port RAM1, and the second internal logic control is used to control the data in the dual-port RAM2 read and write; wherein, the first internal logic control can write data into the storage area 1b through the write logic, read data from the storage area 1a through the read logic, and the second internal logic control can write the data through the write logic Write in the storage area 2b, read data from the storage area 2a through the read logic; or, the first internal logic control can also write data into the storage area 1a through the write logic, and read from the storage area 1b through the read logic Data, the second internal logic control can also write data into the storage area 2a through the write logic, and read data from the storage area 2b through the read logic. FIG. 3 only shows one of the situations, which is not specifically limited in this embodiment of the present invention. The FPGA may further include a first signal processing unit, configured to receive the handshake signal sent by the DSP and send the handshake signal to the DSP.
DSP中包括处理器、EDMA控制器、EMIF总线控制器,还可以包括第二信号处理单元,用于接收FPGA发送的握手信号以及向FPGA发送握手信号。一方面,处理器用于在第二信号处理单元接收到FPGA发送的握手信号后,启动EDMA控制器,通过EMIF总线控制器控制EMIF总线从FPGA的双口RAM中读取数据;另一方面,处理器用于在通过EDMA控制器、EMIF总线控制器以及EMIF总线将数据写入到FPGA的双口RAM中后,指示第二信号处理单元向FPGA发送握手信号,以通知FPGA已准备好数据。The DSP includes a processor, an EDMA controller, an EMIF bus controller, and may also include a second signal processing unit for receiving the handshake signal sent by the FPGA and sending the handshake signal to the FPGA. On the one hand, the processor is used to start the EDMA controller after the second signal processing unit receives the handshake signal sent by the FPGA, and controls the EMIF bus to read data from the dual-port RAM of the FPGA through the EMIF bus controller; on the other hand, the processing The controller is used to instruct the second signal processing unit to send a handshake signal to the FPGA to notify the FPGA that data is ready after writing data into the dual-port RAM of the FPGA through the EDMA controller, the EMIF bus controller and the EMIF bus.
下面结合图3对FPGA与DSP之间的数据交互流程做进一步介绍。The data interaction process between FPGA and DSP will be further introduced in conjunction with Fig. 3 below.
FPGA通过对卫星的捕获、跟踪,计算出包括各通道同相支路、正交支路相干积分值和码周计数等卫星数据,通过第一内部逻辑控制和第二内部逻辑控制中的写逻辑将卫星数据写入到两个双口RAM中的存储区域1b和存储区域2b;当数据写完后,FPGA通过第一信号处理单元向DSP发送一个握手信号,用来通知DSP从两个双口RAM中的存储区域1b和存储区域2b中读取数据。DSP中的处理器在确定第二信号处理单元接收到FPGA中的第一信号处理单元发送的握手信号后,启动EDMA控制器,通过EMIF总线控制器控制EMIF总线,采用组合逻辑的方式从FPGA的存储区域1b和存储区域2b中读取数据。DSP中的处理器对读取到的数据进行处理,并将运算出来的载波偏移量和码片偏移量等数据,通过EDMA控制器、EMIF总线控制器发送到EMIF总线,进而通过EMIF总线,采用组合逻辑的方式写入到两个双口RAM的存储区域1a和存储区域2a;当数据写完后,DSP中的第二信号处理单元向FPGA中的第一信号处理单元发送一个握手信号,用来通知FPGA已经完成数据的写入。FPGA中的第一信号处理单元接收到握手信号后,通过第一内部逻辑控制和第二内部逻辑控制中的读逻辑从两个双口RAM的存储区域1a和存储区域2a中读取数据。FPGA使用读取到的存储区域1a和存储区域2a中的数据更新M个卫星通道的载波频率控制字和码频率控制字,以便更好的捕获或跟踪卫星信号。The FPGA calculates the satellite data including the coherent integral value and the code cycle count of the in-phase branch and the orthogonal branch of each channel by capturing and tracking the satellite, and writes the data through the first internal logic control and the writing logic in the second internal logic control The satellite data is written into the storage area 1b and the storage area 2b in the two dual-port RAMs; when the data is written, the FPGA sends a handshake signal to the DSP through the first signal processing unit, which is used to notify the DSP from the two dual-port RAMs Read data in the storage area 1b and storage area 2b in. After the processor in the DSP determines that the second signal processing unit receives the handshake signal sent by the first signal processing unit in the FPGA, it starts the EDMA controller, controls the EMIF bus through the EMIF bus controller, and uses combinational logic from the FPGA Data is read from storage area 1b and storage area 2b. The processor in the DSP processes the read data, and sends the calculated data such as carrier offset and chip offset to the EMIF bus through the EDMA controller and the EMIF bus controller, and then through the EMIF bus , written into the storage area 1a and storage area 2a of two dual-port RAMs by means of combinational logic; when the data is written, the second signal processing unit in the DSP sends a handshake signal to the first signal processing unit in the FPGA , which is used to notify the FPGA that the data writing has been completed. After receiving the handshake signal, the first signal processing unit in the FPGA reads data from the storage area 1a and the storage area 2a of the two dual-port RAMs through the read logic in the first internal logic control and the second internal logic control. The FPGA uses the read data in the storage area 1a and the storage area 2a to update the carrier frequency control words and code frequency control words of the M satellite channels, so as to better capture or track satellite signals.
下面对本发明实施例中EMIF总线与FPGA中的双口RAM的连接方式进行具体介绍。The connection mode between the EMIF bus and the dual-port RAM in the FPGA in the embodiment of the present invention will be specifically introduced below.
本发明实施例中选用的是Xilinx的FPGA,FPGA内部集成的的块存储器资源可以配置成N个双口RAM,访问速度可以达到几百兆。FPGA内部的双口RAM有两个完全独立的读写端口,分别是第一读写端口和第二读写端口,两个读写端口共享一个RAM的存储空间,并且有独立的地址线、数据线、读写控制线,因此,针对任意一个RAM,既可以通过第一读写端口读写数据,也可以通过第二读写端口读写数据。本发明实施例中,DSP可以通过EMIF总线,从第一读写端口访问双口RAM,FPGA可以通过第二读写端口访问双口RAM,实现了DSP和FPGA共享双口RAM的存储空间。The FPGA of Xilinx is selected in the embodiment of the present invention, and the block memory resources integrated in the FPGA can be configured as N dual-port RAMs, and the access speed can reach hundreds of megabytes. The dual-port RAM inside the FPGA has two completely independent read-write ports, which are the first read-write port and the second read-write port. The two read-write ports share the storage space of a RAM, and have independent address lines, data line, read and write control line, therefore, for any RAM, data can be read and written through the first read and write port, and data can also be read and written through the second read and write port. In the embodiment of the present invention, the DSP can access the dual-port RAM from the first read-write port through the EMIF bus, and the FPGA can access the dual-port RAM through the second read-write port, realizing the storage space of the dual-port RAM shared by the DSP and the FPGA.
图4为本发明实施例提供的EMIF总线与FPGA中的双口RAM的连接方式示意图。同样地,为方便解释本发明实施例中的EMIF总线与双口RAM的连接方式,仅示出FPGA中的两个双口RAM,即RAM1和RAM2。EMIF总线与N个双口RAM的连接方式,可参照EMIF总线与两个双口RAM得到,此处不再赘述。FIG. 4 is a schematic diagram of a connection mode between an EMIF bus and a dual-port RAM in an FPGA provided by an embodiment of the present invention. Similarly, for the convenience of explaining the connection mode between the EMIF bus and the dual-port RAM in the embodiment of the present invention, only two dual-port RAMs in the FPGA are shown, namely RAM1 and RAM2. The connection method between the EMIF bus and the N dual-port RAMs can be obtained by referring to the EMIF bus and the two dual-port RAMs, and will not be repeated here.
本发明实施例中,EMIF数据总线E_DATA的位宽可根据实际情况进行配置,例如,可配置为8位、16位、32位、64位。本发明实施例中的双口RAM均包括第一读写端口和第二读写端口,第一读写端口对应的引脚包括数据输入端口DIA、数据输出端口DOA、地址线ADRRA、读/写选择信号WEA、使能信号ENA、时钟信号CLKA,第二读写端口对应的引脚包括数据输入端口DIB、数据输出端口DOB、地址线ADRRB、读/写选择信号WEB、使能信号ENB、时钟信号CLKB。In the embodiment of the present invention, the bit width of the EMIF data bus E_DATA can be configured according to actual conditions, for example, it can be configured as 8 bits, 16 bits, 32 bits, or 64 bits. The dual-port RAM in the embodiment of the present invention includes a first read-write port and a second read-write port, and the corresponding pins of the first read-write port include data input port DIA, data output port DOA, address line ADRRA, read/write Selection signal WEA, enable signal ENA, clock signal CLKA, the pins corresponding to the second read and write port include data input port DIB, data output port DOB, address line ADRRB, read/write selection signal WEB, enable signal ENB, clock Signal CLKB.
下面结合图4具体介绍EMIF总线控制器中的各引脚与双口RAM的连接关系。本发明实施例中,EMIF总线控制器的引脚包括EMIF数据总线E_DATA、SOE信号、EMIF地址总线E_ADDR、时钟输出信号E_CLKOUT1、地址选通控制信号ADS、读写控制信号WE、片选信号CE、字节控制BE。The connection relationship between each pin in the EMIF bus controller and the dual-port RAM will be described in detail below in conjunction with FIG. 4 . In the embodiment of the present invention, the pins of the EMIF bus controller include EMIF data bus E_DATA, SOE signal, EMIF address bus E_ADDR, clock output signal E_CLKOUT1, address strobe control signal ADS, read and write control signal WE, chip select signal CE, Byte controls BE.
如图4所示,EMIF数据总线E_DATA通过数据选择器分别与两个双口RAM的数据输入端口DIA和数据输出端口DOA连接,并由SOE信号控制是从双口RAM读取数据还是将数据写入双口RAM中。EMIF地址总线E_ADDR分为高位[22:13]地址线和低位[12:0]地址线两个部分,其中,高位[22:13]地址线与双口RAM的片选组合逻辑连接,片选组合逻辑分别与两个双口RAM的ENA连接,通过组合逻辑的方式选择EMIF总线与哪一个双口RAM进行数据交互;低位[12:0]地址线和双口RAM的第一读写端口的地址线ADRRA连接,用于访问RAM中的全部存储空间。EMIF总线控制器中的时钟输出信号E_CLKOUT1分别与两个双口RAM的第一读写端口的时钟信号CLKA连接,用于控制DSP读写双口RAM的速度。ADS、WE、CE、BE信号经FPGA内部的组合逻辑电路,一方面,用于控制RAM选择逻辑是否有效,另一方面,用于与两个双口RAM的WEA相连,控制DSP对FPGA内部双口RAM的读写功能。As shown in Figure 4, the EMIF data bus E_DATA is respectively connected to the data input port DIA and the data output port DOA of the two dual-port RAMs through the data selector, and is controlled by the SOE signal to read data from the dual-port RAM or write data into the dual-port RAM. The EMIF address bus E_ADDR is divided into high order [22:13] address lines and low order [12:0] address lines. Among them, the high order [22:13] address lines are logically connected with the chip selection combination of dual-port RAM, chip selection The combinatorial logic is respectively connected to the ENA of the two dual-port RAMs, and selects which dual-port RAM the EMIF bus interacts with through the combinatorial logic; the low [12:0] address line and the first read-write port of the dual-port RAM The address line ADRRA is connected for accessing all storage spaces in RAM. The clock output signal E_CLKOUT1 in the EMIF bus controller is respectively connected to the clock signal CLKA of the first read and write ports of the two dual-port RAMs, and is used to control the speed of the DSP to read and write the dual-port RAMs. The ADS, WE, CE, and BE signals pass through the combined logic circuit inside the FPGA. On the one hand, they are used to control whether the RAM selection logic is valid. Read and write function of RAM.
下面结合图4具体介绍FPGA中的内部逻辑控制与双口RAM的连接关系。The connection relationship between the internal logic control and the dual-port RAM in the FPGA is introduced in detail below in conjunction with Fig. 4 .
本发明实施例中,FPGA中包括与双口RAM1对应的第一内部读写逻辑和与双口RAM2对应的第二内部读写逻辑。第一内部读写逻辑和第二内部读写逻辑分别与双口RAM1和双口RAM2的第二读写端口的地址线ADRRB连接,用于访问RAM中的全部存储空间。第一内部读写逻辑通过第一选择器与双口RAM1中的数据输入端口DIB和数据输出端口DOB相连接,第二内部读写逻辑通过第二选择器与双口RAM2中的数据输入端口DIB和数据输出端口DOB相连接,从而能够实现通过第一选择器和第二选择器控制FPGA是从双口RAM读取数据还是将数据写入双口RAM中。第一内部读写逻辑分别与双口RAM1中的WEB、ENB连接,第二内部读写逻辑分别与双口RAM2中的WEB、ENB连接。第一内部读写逻辑和第二内部读写逻辑还分别与双口RAM1和双口RAM2的时钟信号引脚CLKB连接,用于控制FPGA读写双口RAM的速度。In the embodiment of the present invention, the FPGA includes a first internal read-write logic corresponding to the dual-port RAM1 and a second internal read-write logic corresponding to the dual-port RAM2. The first internal read-write logic and the second internal read-write logic are respectively connected to the address line ADRRB of the second read-write port of the dual-port RAM1 and the dual-port RAM2, and are used to access all storage spaces in the RAM. The first internal read-write logic is connected with the data input port DIB and the data output port DOB in the dual-port RAM1 through the first selector, and the second internal read-write logic is connected with the data input port DIB in the dual-port RAM2 through the second selector It is connected with the data output port DOB, so as to control whether the FPGA reads data from the dual-port RAM or writes data into the dual-port RAM through the first selector and the second selector. The first internal read-write logic is respectively connected to WEB and ENB in the dual-port RAM1, and the second internal read-write logic is respectively connected to WEB and ENB in the dual-port RAM2. The first internal read-write logic and the second internal read-write logic are also respectively connected to the clock signal pins CLKB of the dual-port RAM1 and the dual-port RAM2, and are used to control the speed of reading and writing the dual-port RAM by the FPGA.
本发明实施例中,由于DSP访问两个双口RAM的速度是由EMIF总线控制器中的时钟输出信号控制的,而FPGA访问两个双口RAM的速度由其内部的时钟信号控制的,因此DSP和FPGA对双口RAM的操作时钟相互独立,读写互不干扰。例如,FPGA以50M时钟将数据并行写入双口RAM中,写完后DSP可用200M的时钟从双口RAM中读取数据,二者无需保持同步,从而使得DSP能够以更快的速度访问双口RAM,有效提高了DSP的访问双口RAM的效率。In the embodiment of the present invention, since the speed at which DSP accesses two dual-port RAMs is controlled by the clock output signal in the EMIF bus controller, and the speed at which FPGA accesses two dual-port RAMs is controlled by its internal clock signal, therefore The operating clocks of DSP and FPGA to dual-port RAM are independent of each other, and reading and writing do not interfere with each other. For example, FPGA uses 50M clock to write data into dual-port RAM in parallel. After writing, DSP can use 200M clock to read data from dual-port RAM. The dual-port RAM effectively improves the efficiency of DSP's access to dual-port RAM.
本发明实施例中的接收机板卡包括射频模块、基带处理模块和定位解算模块,射频模块与基带处理模块连接,基带处理模块与定位解算模块通过EMIF总线连接;基带处理模块包括N个双口RAM;射频模块用于通过对接收到的卫星导航信号进行处理得到卫星数字中频信号,并将所述卫星数字中频信号发送给基带处理模块;基带处理模块用于根据卫星数字中频信号得到第一数据,将第一数据写入N个双口RAM中,并向定位解算模块发送第一指令;以及在接收到第二指令的情况下,从N个双口RAM中读取第二数据;N为大于1的整数;定位解算模块接收用于在接收到第一指令的情况下,通过EMIF总线从N个双口RAM中读取第一数据;根据第一数据,得到第二数据,通过EMIF总线将第二数据写入到N个双口RAM中,并向基带处理模块发送第二指令。本发明实施例中基带处理模块和定位解算模块采用基于EMIF总线和N个双口RAM的数据通信方式,使得基带处理模块能够以并行的方式同时对N个双口RAM进行读写,有效缩短了基带处理模块读写RAM的时间,提高了基带处理模块FPGA综合布线的成功率;而且,通过EMIF总线和N个双口RAM有效提高了基带处理模块与定位解算模块之间的数据交互的能力。The receiver board in the embodiment of the present invention includes a radio frequency module, a baseband processing module and a positioning solution module, the radio frequency module is connected to the baseband processing module, and the baseband processing module is connected to the positioning solution module through the EMIF bus; the baseband processing module includes N Dual-port RAM; the radio frequency module is used to obtain the satellite digital intermediate frequency signal by processing the received satellite navigation signal, and sends the satellite digital intermediate frequency signal to the baseband processing module; the baseband processing module is used to obtain the first satellite digital intermediate frequency signal according to the satellite digital intermediate frequency signal One data, write the first data into N dual-port RAMs, and send the first instruction to the positioning solution module; and read the second data from the N dual-port RAMs when receiving the second instruction ; N is an integer greater than 1; the positioning solution module is used to read the first data from N dual-port RAMs through the EMIF bus when the first instruction is received; according to the first data, the second data is obtained , write the second data into N dual-port RAMs through the EMIF bus, and send the second instruction to the baseband processing module. In the embodiment of the present invention, the baseband processing module and the positioning calculation module adopt a data communication method based on the EMIF bus and N dual-port RAMs, so that the baseband processing module can simultaneously read and write to N dual-port RAMs in a parallel manner, effectively shortening the The time for the baseband processing module to read and write RAM is reduced, and the success rate of the FPGA integrated wiring of the baseband processing module is improved; moreover, the data interaction between the baseband processing module and the positioning calculation module is effectively improved through the EMIF bus and N dual-port RAMs. ability.
图5为本发明实施例提供的一种接收机的结构示意图,该接收机包括天线501以及如上述实施例中所述的接收机板卡502;FIG. 5 is a schematic structural diagram of a receiver provided by an embodiment of the present invention, the receiver includes an antenna 501 and a receiver board 502 as described in the above embodiments;
所述天线501用于接收卫星导航信号,并将所述卫星导航信号发送给所述接收机板卡502。The antenna 501 is used for receiving satellite navigation signals and sending the satellite navigation signals to the receiver board 502 .
从上述内容可以看出:本发明实施例中的接收机板卡包括射频模块、基带处理模块和定位解算模块,射频模块与基带处理模块连接,基带处理模块与定位解算模块通过EMIF总线连接;基带处理模块包括N个双口RAM;射频模块用于通过对接收到的卫星导航信号进行处理得到卫星数字中频信号,并将所述卫星数字中频信号发送给基带处理模块;基带处理模块用于根据卫星数字中频信号得到第一数据,将第一数据写入N个双口RAM中,并向定位解算模块发送第一指令;以及在接收到第二指令的情况下,从N个双口RAM中读取第二数据;N为大于1的整数;定位解算模块接收用于在接收到第一指令的情况下,通过EMIF总线从N个双口RAM中读取第一数据;根据第一数据,得到第二数据,通过EMIF总线将第二数据写入到N个双口RAM中,并向基带处理模块发送第二指令。本发明实施例中基带处理模块和定位解算模块采用基于EMIF总线和N个双口RAM的数据通信方式,使得基带处理模块能够以并行的方式同时对N个双口RAM进行读写,有效缩短了基带处理模块读写RAM的时间,提高了基带处理模块FPGA综合布线的成功率;而且,通过EMIF总线和N个双口RAM有效提高了基带处理模块与定位解算模块之间的数据交互的能力。It can be seen from the above that the receiver board in the embodiment of the present invention includes a radio frequency module, a baseband processing module and a positioning calculation module, the radio frequency module is connected to the baseband processing module, and the baseband processing module is connected to the positioning calculation module through the EMIF bus The baseband processing module includes N dual-port RAMs; the radio frequency module is used to obtain the satellite digital intermediate frequency signal by processing the received satellite navigation signal, and sends the satellite digital intermediate frequency signal to the baseband processing module; the baseband processing module is used for Obtain the first data according to the satellite digital intermediate frequency signal, write the first data in N dual-port RAMs, and send the first instruction to the positioning solution module; and in the case of receiving the second instruction, from the N dual-port Read the second data in the RAM; N is an integer greater than 1; the positioning solution module receives and is used to read the first data from N dual-port RAMs through the EMIF bus when the first instruction is received; according to the first instruction First data, obtain second data, write the second data into N dual-port RAMs through the EMIF bus, and send the second instruction to the baseband processing module. In the embodiment of the present invention, the baseband processing module and the positioning calculation module adopt a data communication method based on the EMIF bus and N dual-port RAMs, so that the baseband processing module can simultaneously read and write to N dual-port RAMs in a parallel manner, effectively shortening the The time for the baseband processing module to read and write RAM is reduced, and the success rate of the FPGA integrated wiring of the baseband processing module is improved; moreover, the data interaction between the baseband processing module and the positioning calculation module is effectively improved through the EMIF bus and N dual-port RAMs. ability.
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。While preferred embodiments of the invention have been described, additional changes and modifications to these embodiments can be made by those skilled in the art once the basic inventive concept is appreciated. Therefore, it is intended that the appended claims be construed to cover the preferred embodiment as well as all changes and modifications which fall within the scope of the invention.
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。Obviously, those skilled in the art can make various changes and modifications to the present invention without departing from the spirit and scope of the present invention. Thus, if these modifications and variations of the present invention fall within the scope of the claims of the present invention and their equivalent technologies, the present invention also intends to include these modifications and variations.
Claims (10)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510520389.7A CN105182377B (en) | 2015-08-21 | 2015-08-21 | A kind of receiver board and receiver |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510520389.7A CN105182377B (en) | 2015-08-21 | 2015-08-21 | A kind of receiver board and receiver |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105182377A CN105182377A (en) | 2015-12-23 |
CN105182377B true CN105182377B (en) | 2018-06-19 |
Family
ID=54904573
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510520389.7A Active CN105182377B (en) | 2015-08-21 | 2015-08-21 | A kind of receiver board and receiver |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105182377B (en) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108226967B (en) * | 2016-12-15 | 2021-08-20 | 展讯通信(上海)有限公司 | GNSS signal tracking method and device |
CN111224877A (en) * | 2019-12-10 | 2020-06-02 | 中国航空工业集团公司西安航空计算技术研究所 | VL query method and device of AFDX switch |
CN111398996A (en) * | 2020-03-17 | 2020-07-10 | 广州南方卫星导航仪器有限公司 | Surveying and mapping satellite navigation receiver |
CN111737191B (en) * | 2020-07-20 | 2021-01-15 | 长沙海格北斗信息技术有限公司 | Shared cache method, baseband processing unit and chip thereof |
CN116232826A (en) * | 2023-03-13 | 2023-06-06 | 南京理工大学 | A very high frequency signal receiver |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101105401A (en) * | 2007-08-06 | 2008-01-16 | 北京航空航天大学 | A Time Synchronization and Synchronization Data Extraction Method of SDINS/GPS Integrated Navigation System |
CN101261129A (en) * | 2008-02-22 | 2008-09-10 | 北京航空航天大学 | A Combined Navigation Computer Based on DSP and FPGA |
CN104597458A (en) * | 2015-01-22 | 2015-05-06 | 上海海积信息科技股份有限公司 | Receiver board card and navigation receiver |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030191876A1 (en) * | 2000-02-03 | 2003-10-09 | Fallon James J. | Data storewidth accelerator |
CN102760106A (en) * | 2011-04-28 | 2012-10-31 | 北京京师励耘教育科技有限公司 | PCI (peripheral component interconnect) academic data mining chip and operation method thereof |
CN102832090B (en) * | 2012-08-29 | 2015-04-22 | 安徽华东光电技术研究所 | Heater assembly for space traveling wave tube and preparation method thereof |
-
2015
- 2015-08-21 CN CN201510520389.7A patent/CN105182377B/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101105401A (en) * | 2007-08-06 | 2008-01-16 | 北京航空航天大学 | A Time Synchronization and Synchronization Data Extraction Method of SDINS/GPS Integrated Navigation System |
CN101261129A (en) * | 2008-02-22 | 2008-09-10 | 北京航空航天大学 | A Combined Navigation Computer Based on DSP and FPGA |
CN104597458A (en) * | 2015-01-22 | 2015-05-06 | 上海海积信息科技股份有限公司 | Receiver board card and navigation receiver |
Non-Patent Citations (2)
Title |
---|
DSP EMIF与FPGA双口RAM高速通信实现;杨龙等;《现代电子技术》;20140701;第37卷(第13期);第10-12页,图2-3 * |
利用EDMA和DSP/BIOS实现高速数据搬移与处理;于凤芹等;《仪表技术与传感器》;20080229(第2期);第65-67页 * |
Also Published As
Publication number | Publication date |
---|---|
CN105182377A (en) | 2015-12-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105182377B (en) | A kind of receiver board and receiver | |
CN102981776B (en) | Double data rate virtual static random access memory and its controller, access and operation method, writing and reading method | |
CN113615088B (en) | Synchronization circuit and method across clock domains | |
CN100405343C (en) | A kind of asynchronous data cache device | |
JP5232019B2 (en) | Apparatus, system, and method for multiple processor cores | |
KR910010315A (en) | 2-way data transfer device | |
KR20080026723A (en) | Multiport memory device | |
CN112306924A (en) | Data interaction method, device and system and readable storage medium | |
CN101145777A (en) | GPS time system terminal system | |
CN111832240A (en) | FIFO data transmission method and FIFO storage device | |
US8593902B2 (en) | Controller and access method for DDR PSRAM and operating method thereof | |
CN112416823A (en) | Sensor data read-write control method, system and chip in burst mode | |
CN102436840A (en) | Digital radio frequency memory board | |
CN109800192A (en) | Electronic equipment, fpga chip and its interface circuit | |
CN105608028A (en) | EMIF (External Memory Interface) and dual-port RAM (Random Access Memory)-based method for realizing high-speed communication of DSP (Digital Signal Processor) and FPGA (Field Programmable Gate Array) | |
CN101825997A (en) | Asynchronous first-in first-out storage | |
US9201448B2 (en) | Observing embedded signals of varying clock domains by fowarding signals within a system on a chip concurrently with a logic module clock signal | |
CN102253917B (en) | Serial peripheral interface (SPI) controller and data sending method | |
CN106776467A (en) | For the SPI FLASH control chips of order reception system | |
CN103135097B (en) | 16-channel double-mode radar digital down conversion method based on field programmable gate array (FPGA) | |
KR100598010B1 (en) | Clock divider, system with clock divider, clock distribution method and data reading and writing method using clock distribution | |
CN108053856B (en) | Circuit for reading and writing SRAM and SRAM data access method | |
US20070208980A1 (en) | Method of transmitting data between different clock domains | |
CN101980140B (en) | SSRAM access control system | |
US9959230B2 (en) | Data transfer device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
PE01 | Entry into force of the registration of the contract for pledge of patent right |
Denomination of invention: A receiver board and receiver Effective date of registration: 20220826 Granted publication date: 20180619 Pledgee: China Merchants Bank Co.,Ltd. Shanghai Branch Pledgor: SHANGHAI HIGH GAIN INFORMATION TECHNOLOGY Co.,Ltd. Registration number: Y2022310000205 |
|
PE01 | Entry into force of the registration of the contract for pledge of patent right | ||
PC01 | Cancellation of the registration of the contract for pledge of patent right |
Date of cancellation: 20230818 Granted publication date: 20180619 Pledgee: China Merchants Bank Co.,Ltd. Shanghai Branch Pledgor: SHANGHAI HIGH GAIN INFORMATION TECHNOLOGY Co.,Ltd. Registration number: Y2022310000205 |
|
PC01 | Cancellation of the registration of the contract for pledge of patent right | ||
PE01 | Entry into force of the registration of the contract for pledge of patent right |
Denomination of invention: A receiver board and receiver Effective date of registration: 20230829 Granted publication date: 20180619 Pledgee: China Merchants Bank Co.,Ltd. Shanghai Branch Pledgor: SHANGHAI HIGH GAIN INFORMATION TECHNOLOGY Co.,Ltd. Registration number: Y2023310000499 |
|
PE01 | Entry into force of the registration of the contract for pledge of patent right | ||
PC01 | Cancellation of the registration of the contract for pledge of patent right |
Granted publication date: 20180619 Pledgee: China Merchants Bank Co.,Ltd. Shanghai Branch Pledgor: SHANGHAI HIGH GAIN INFORMATION TECHNOLOGY Co.,Ltd. Registration number: Y2023310000499 |
|
PC01 | Cancellation of the registration of the contract for pledge of patent right | ||
PE01 | Entry into force of the registration of the contract for pledge of patent right |
Denomination of invention: A receiver board and receiver Granted publication date: 20180619 Pledgee: Shanghai Pudong Development Bank Co.,Ltd. Qingpu Branch Pledgor: SHANGHAI HIGH GAIN INFORMATION TECHNOLOGY Co.,Ltd. Registration number: Y2025310000341 |
|
PE01 | Entry into force of the registration of the contract for pledge of patent right |