一种基于fpga的导航计算机协处理器的制造方法

文档序号:6228496阅读:231来源:国知局
一种基于fpga的导航计算机协处理器的制造方法
【专利摘要】本发明公开的一种基于FPGA的导航计算机协处理器,完成高精度惯性测量单元IMU信号的实时采集与处理、导航参数及外部指令的双缓冲、全双工异步串行通信。本发明完成的FPGA协处理器克服了传统嵌入式导航计算机在体积、开发复杂度及通用性上的不足,其与主处理器之间任务分配均衡,接口关系清晰,大大提高了导航计算机开发的灵活性和通用性,降低了导航计算机系统软件开发的复杂度。
【专利说明】
—种基于FPGA的导航计算机协处理器

【技术领域】
[0001]本发明涉及一种基于FPGA的导航计算机协处理器,属惯性导航领域。

【背景技术】
[0002]近年来,随着电子技术及惯性技术的高速发展,捷联惯导系统以其低成本、小体积、高性能等优势广泛应用于诸多战术、战略武器型号,为国防建设做出了重要贡献,高性能捷联惯导系统的研究和应用也逐渐成为惯性技术的重要发展方向之一。导航计算机是保证惯导系统实时性和精度的核心单元,主要完成数据采集、时间同步、导航计算和导航参数输出等功能。
[0003]传统的基于专用计算机或工控机的导航计算机体积大、结构复杂,且通用性欠佳。为了满足小型化、高精度应用要求,目前基于嵌入式系统的导航计算机的任务调度及导航计算等核心功能均由主处理器完成,往往采用双主处理器结构,例如DSP/单片机,DSP/DSP,DSP/CPLD,DSP/FPGA等,导航计算机的由DSP主处理器实现,任务的过度集中及主处理器有限的外部接口大幅增加了系统软件设计的复杂度,也降低了系统的可靠性和通用性,导致该类导航计算机不适用于数据交互量大、实时性要求苛刻的高精度导航领域。


【发明内容】

[0004]本发明所要解决的问题:克服现有技术的的不足,提供了一种基于FPGA的导航计算机协处理器,通过设计导航计算机协处理器,完成高精度MU信号的实时采集与处理、导航参数及外部指令的双缓冲、全双工异步串行通信,有效提高导航计算机的性能。
[0005]本发明的技术解决方案:
[0006]一种基于FPGA的导航计算机协处理器,实现方式如下:
[0007]FPGA协处理器完成IMU信号的采集控制和处理,并将IMU信号发送至主处理器;主处理器根据FPGA发送的IMU信号完成导航计算,并将导航计算的导航参数通过FPGA协处理器发送至主控计算机及其他外设;主控计算机及其他外设通过FPGA将控制指令及辅助信息发送至主处理器;FPGA协处理器控制模数转换单元完成MU信号的模数转换,将多路MU模拟信号转换为数字信号;MU信号包括3路高精度光纤陀螺信号、3路高精度加速度计信号、I路温度信号,对应的模数转换器路数为7路;
[0008]其中FPGA协处理器包括:IMU信号采集模块、IMU信号处理模块、通信协议设置模块、发送缓冲模块、接收缓冲模块、异步串行收发模块;
[0009]IMU信号采集模块对模数转换器进行初始化,将7路模数转换器进行同步,并设置一定的模数转换频率信号采集模块查询其中I路模数转换器的转换状态,当查询到模数转换完毕后,产生取数时序,得到7路模数转换器的数字信号,并送往MU信号处理模块;
[0010]IMU信号处理模块对7路模数转换器的转换数据进行二阶IIR低通数字滤波处理得到滤波后的IMU数字信号,并产生与模数转换频率相等的导航计算时标用以触发主处理器外部中断,主处理器在中断服务程序中产生地址信号及读信号,一次读入模数转换完毕的IMU数字信号,完成导航计算,并进行导航计算时标的对准;
[0011]通信协议设置模块对异步串行通信的波特率及奇偶校验进行设置;
[0012]发送缓冲模块对主处理器导航计算完毕准备发往主控计算机及其他外设的导航参数进行缓冲,并等待异步串行收发模块完成并串行转换;
[0013]接收缓冲模块对由异步串行收发模块完成串并转换的来自主控计算机及其他外设的串行指令及辅助参数进行缓冲,等待主处理器的读取;
[0014]异步串行收发模块将发送缓冲模块中主处理器向主控计算机和其他外设之间发送的导航参数进行并串行转换后发送至主控计算机和其他外设;并将接收到主控计算机和其他外设发送至主处理器的异步串行数据进行串并行转换送至接收缓冲模块。
[0015]所述的导航计算时标为一个基准时钟宽度的高电平,频率为ΙΚΗζ,基准时钟频率为 14.7456MHz ο
[0016]所述进行二阶IIR低通数字滤波处理方法具体如下:
[0017]二阶IIR滤波器递归方程为:
[0018]y (n) = a0x (n) +a^ (η-1) +a2x (η_2) -bj (η-1) -b2y (η_2), η = 2, 3, 4,..., N
[0019]其中,X(η)为当前时刻的采样值,x(n-l)为前一时刻的采样值,x(n_2)为更前一时刻的米样值,y(η)为当前时刻滤波器的输出值,y(n-l)为前一时刻滤波器的输出值,y(n-2)为更前一时刻滤波器的输出值。
[0020]所述的通信协议设置模块包括波特率配置寄存器、奇偶校验配置寄存器;通信协议设置模块对异步串行通信的波特率及奇偶校验进行设置的实现方式如下:
[0021]波特率配置寄存器、奇偶校验配置寄存器映射为主处理器的外设地址用二进制码分别表示为1001、1010,主处理器往外设地址写入波特率及奇偶校验的配置数据,通信协议设置模块使用主处理器的地址信号及写信号边沿将配置数据锁存,更新配置寄存器,即完成通信协议的设置;
[0022]波特率及奇偶校验的配置数据的具体数值为:基准时钟14.7456MHz除以波特率配置寄存器的值加I即为异步串行通信波特率;奇偶校验配置寄存器BitO值为‘I’表示奇偶校验使能,‘0’表不奇偶校验不使能;奇偶校验使能时,奇偶校验配置寄存器Bitl值为‘I’表示奇校验,‘0’表示偶校验。
[0023]所述的发送缓冲模块包括发送缓冲寄存器、状态寄存器;发送缓冲寄存器、状态寄存器映射为主处理器的外设地址用二进制码分别表示为1000、1011 ;
[0024]发送缓冲模块进行数据缓冲的具体实现方式如下:
[0025]异步串行数据发送时,主处理器往发送缓冲寄存器连续写入待发送导航参数,发送缓冲模块将发送缓冲寄存器的待发导航参数存入512字节的发送FIFO,当异步串行收发模块发送状态空闲,则发送缓冲模块产生发送FIFO缓冲单元读时序及异步串行收发模块写时序,将待发数据从发送FIFO缓冲单元取出并写入异步串行收发模块发送寄存器,由异步串行收发模块完成数据的并串行转换;状态寄存器的Bitl用以标识发送FIFO的状态,‘I’表示发送FIFO非空,‘O,表示发送FIFO空。
[0026]所述的接收缓冲模块包括接收缓冲寄存器、状态寄存器;接收缓冲寄存器、状态寄存器映射为主处理器的外设地址用二进制码分别表示为1000、1011 ;
[0027]接收缓冲模块进行数据缓冲的具体实现方式如下:
[0028]异步串行数据接收时,异步串行收发模块完成串并行转换后产生接收有效标志,将串行并行转换完毕的数据从异步串行收发模块取出并写入接收FIFO缓冲单元,接收缓冲模块将接收FIFO缓冲单元中的数据存入接收缓冲寄存器等待主处理器读取;状态寄存器的BitO用以标识接收FIFO的状态,‘I’表示接收FIFO非空,‘0’表示接收FIFO空;接收FIFO缓冲单元中的所有数据被读取完毕后将状态寄存器中BitO置O。
[0029]所述的异步串行收发模块实现方式如下:
[0030](I)并串行转换时,若异步串行收发模块发送寄存器被写入待发送数据,则以波特率配置寄存器设置的时钟为基准,完成主处理器向主控计算机及其他外设发送数据的并串转换,串行数据格式为I个起始位,8个数据位,I位奇偶校验位,I个停止位,发送空闲状态时,输出为高电平;
[0031](2)串行并行转换时,异步串行收发模块以波特率配置寄存器设置的时钟为基准检测外部串行输入信号的电平状态,当检测到低电平时,则认为是串行输入信号的起始位,顺序接收到8个数据位及I个奇偶校验位后,判断当前电平是否为高电平,若是高电平则为结束位,当前字节接收完毕;否则重新开始检测低电平判断起始位;完成串行并行转换后,将数据放入接收寄存器中,同时置接收寄存器标志,等待接受FIFO缓冲单元的读取。
[0032]本发明与现有技术相比具有如下优点:
[0033](I)本发明实现了高精度MU信号的实时采集与处理,并产生时标用于导航计算周期的控制,提高了导航计算机主处理器的运行效率,减轻了主处理器的任务调度压力,效率更高,可靠性更强。
[0034](2)本发明基于FPGA实现了通信协议设置模块、发送缓冲模块、接收缓冲模块、通用异步串行收发模块,避免使用专用的异步串行通信协议转换电路,降低了导航计算机的体积和成本,同时使导航计算机主处理器无需频繁响应外部中断进行信息交互,提高了主处理器的计算效率,也节省了其宝贵的外部中断资源。
[0035](3)本发明基于FPGA完成导航计算机协处理器的功能,完成了其与主处理器在功能模块上的科学分工,使二者各取所长,充分发挥各自优势。由于所有外设均通过FPGA协处理器与主处理器进行信息交互,因此导航计算机接口关系非常简单、清晰,提高了导航计算机开发的灵活性和通用性,降低了导航计算机系统软件开发的复杂度。

【专利附图】

【附图说明】
[0036]图1为本发明组成结构示意图。

【具体实施方式】
[0037]下面结合附图对本发明作进一步说明。
[0038]如图1所示,本发明一种基于FPGA的导航计算机协处理器,实现方式如下:
[0039]FPGA协处理器完成IMU信号的采集和处理,并将IMU信号发送至主处理器;主处理器根据FPGA发送的IMU信号完成导航计算,并将导航计算的导航参数通过FPGA协处理器发送至主控计算机及其他外设;主控计算机及其他外设通过FPGA将控制指令及辅助信息发送至主处理器。
[0040]FPGA协处理器控制模数转换单元(模数转换单元包括多路模数转换器)完成MU信号的模数转换,将7路IMU模拟信号转换为数字信号;IMU信号包括3路高精度光纤陀螺信号、3路高精度加速度计信号、I路温度信号,对应的模数转换器路数为高精度光纤陀螺信号、高精度加速度计信号、温度信号路数之和,模数转换单元包括7路模数转换器。
[0041]其中FPGA协处理器包括:MU(惯性测量单元)信号采集模块、頂U信号处理模块、通信协议设置模块、发送缓冲模块、接收缓冲模块、异步串行收发模块。
[0042]IMU信号采集模块对模数转换器进行初始化,将7路模数转换器进行同步,并设置一定的模数转换频率信号采集模块查询其中I路模数转换器的转换状态,当查询到模数转换完毕后,产生取数时序,得到多路模数转换器的数字信号,并送往MU信号处理模块。
[0043]IMU信号处理模块对7路模数转换器的转换数据进行二阶IIR(无限长单位冲激响应)低通数字滤波处理得到滤波后的MU数字信号,并产生与模数转换频率相等的导航计算时标(导航计算时标为一个基准时钟宽度的高电平,频率为ΙΚΗζ,基准时钟频率为14.7456MHz)用以触发主处理器外部中断,主处理器在中断服务程序中产生地址信号及读信号,一次读入模数转换完毕的IMU数字信号数字,完成导航计算,并进行导航计算时标的对准;
[0044]二阶IIR低通数字滤波处理方法具体如下:
[0045]二阶IIR滤波器递归方程为:
[0046]y (n) = a0x (n) +a^ (η-1) +a2x (η_2) -bj (η-1) -b2y (η_2), η = 2, 3, 4,.., N
[0047]其中,X(η)为当前时刻的采样值,x(n-l)为前一时刻的采样值,x(n_2)为更前一时刻的米样值,y(η)为当前时刻滤波器的输出值,y(n-l)为前一时刻滤波器的输出值,y(n-2)为更前一时刻滤波器的输出值。
[0048]通信协议设置模块对异步串行通信的波特率及奇偶校验进行设置;
[0049]通信协议设置模块包括波特率配置寄存器、奇偶校验配置寄存器;通信协议设置模块对异步串行通信的波特率及奇偶校验进行设置的实现方式如下:
[0050]波特率配置寄存器、奇偶校验配置寄存器映射为主处理器的外设地址用二进制码分别表示为1001、1010,主处理器往外设地址写入波特率及奇偶校验的配置数据,通信协议设置模块使用主处理器的地址信号及写信号边沿将配置数据锁存,更新配置寄存器,即可进行通信协议的设置;
[0051]波特率及奇偶校验的配置数据的具体数值为:基准时钟14.7456MHz除以波特率配置寄存器的值加I即为异步串行通信波特率;奇偶校验配置寄存器BitO值为‘I’表示奇偶校验使能,‘0’表不奇偶校验不使能;奇偶校验使能时,奇偶校验配置寄存器Bitl值为‘I’表示奇校验,‘0’表示偶校验。
[0052]发送缓冲模块对主处理器导航计算完毕准备发往主控计算机及其他外设的导航参数进行缓冲,并等待异步串行收发模块完成并串行转换;
[0053]发送缓冲模块包括发送缓冲寄存器、状态寄存器;发送缓冲寄存器、状态寄存器映射为主处理器的外设地址用二进制码分别表示为1000、1011 ;
[0054]发送缓冲模块进行数据缓冲的具体实现方式如下:
[0055]异步串行数据发送时,主处理器往发送缓冲寄存器连续写入待发送导航参数,发送缓冲模块将发送缓冲寄存器的待发导航参数存入512字节的发送FIFO(先入先出堆栈),当异步串行收发模块发送状态空闲,则发送缓冲模块产生发送FIFO缓冲单元读时序及异步串行收发模块写时序,将待发数据从发送FIFO缓冲单元取出并写入异步串行收发模块发送寄存器,由异步串行收发模块完成数据的并串行转换;状态寄存器的Bitl用以标识发送FIFO的状态,‘I’表示发送FIFO非空,‘0’表示发送FIFO空。
[0056]接收缓冲模块对由异步串行收发模块完成串并转换的来自主控计算机及其他外设的串行指令及辅助参数进行缓冲,等待主处理器的读取;
[0057]接收缓冲模块包括接收缓冲寄存器、状态寄存器;接收缓冲寄存器、状态寄存器映射为主处理器的外设地址用二进制码分别表示为1000、1011 ;
[0058]接收缓冲模块进行数据缓冲的具体实现方式如下:
[0059]异步串行数据接收时,异步串行收发模块完成串并行转换后产生接收有效标志,将串行并行转换完毕的数据从异步串行收发模块取出并写入接收FIFO缓冲单元,接收缓冲模块将接收FIFO缓冲单元中的数据存入接收缓冲寄存器等待主处理器读取;状态寄存器的BitO用以标识接收FIFO的状态,‘I’表示接收FIFO非空,‘0’表示接收FIFO空;接收FIFO缓冲单元中的所有数据被读取完毕后将状态寄存器中BitO置O。
[0060]异步串行收发模块将发送缓冲模块中主处理器向主控计算机和其他外设之间发送的导航参数进行并串行转换后发送至主控计算机和其他外设;并将接收到主控计算机和其他外设发生至主处理器的数据进行串并行转换送至接收缓冲模块。
[0061]异步串行收发模块实现方式如下:
[0062](I)并串行转换时,若异步串行收发模块发送寄存器被写入待发送数据,则以波特率配置寄存器设置的时钟为基准,完成主处理器向主控计算机及其他外设发送数据的并串转换,串行数据格式为I个起始位(低电平),8个数据位,I位奇偶校验位(可选),I个停止位(高电平),发送空闲状态时,输出为高电平;
[0063](2)串行并行转换时,异步串行收发模块以波特率配置寄存器设置的时钟为基准检测外部串行输入信号的电平状态,当检测到低电平时,则认为是串行输入信号的起始位,顺序接收到8个数据位(可选)及I个奇偶校验位后,判断当前电平是否为高电平,若是高电平则为结束位,当前字节接收完毕;否则重新开始检测低电平判断起始位;完成串行并行转换后,将数据放入接收寄存器中,同时置接收寄存器标志,等待接受FIFO缓冲单元的读取。
[0064]下面以一个具体实施例来进一步说明本发明的工作过程和工作原理:
[0065]本实施例中,以基于TMS320C6713DSP/Cyclone II FPGA的导航计算机为例。
[0066]FPGA协处理器完成的功能包括高精度IMU信号的实时采集与处理模块、导航参数及外部指令的双缓冲、全双工异步串行通信模块,其与导航计算机DSP主处理器的信息交互通过DSP的外部存储器接口(EMIF)进行。其中,MU信号包括3路高精度光纤陀螺信号、3路高精度加速度计信号及I路温度信号,共计7路模拟信号。
[0067]本发明使用7路24位高精度模-数转换器ADS1210对IMU输出信号和温度传感器输出信号进行采集、处理。高精度MU信号的采集与处理步骤如下:
[0068](I)系统上电后,FPGA对IMU信号模数转换器进行初始化,设置模拟信号输入为双极性输入。ADS1210的工作时钟为8MHz,设置配置寄存器的“Turbo Mode Rate”为16,“Decimat1n Rat1”为249,则模数转换数据率为ΙΚΗζ。将7路ADS1210的同步信号DSYNC同时置为低电平,5us后置为高电平,完成7路ADS1210的同步。
[0069](2)FPGA查询I路ADS1210的转换状态标识busy信号,当busy为低电平时,表明模-数转换完毕,则产生取数时序,将7路模-数转换器的数据存入FPGA内部存储区,并对各路数据进行二阶IIR低通数字滤波处理。
[0070]二阶IIR滤波器递归方程为,
[0071 ] y (n) = a0x (n) +a^ (η-1) +a2x (η_2) -bj (η-1) -b2y (η_2)
[0072]模数转换数据率为IKHz,设置二阶IIR低通数字滤波截止频率为80Hz,则有aQ =
0.0461318, B1 = 0.0922636, a2 = 0.0461318,、= -1.307285,b2 = 0.4918122。由于 FPGA不能直接进行浮点运算,对上述系数进行16位字长量化,其中小数占14位,则对应的量化后的二进制数分别为:
[0073]a0 = 0000001011110011, B1 = 0000010111100110, a2 = 0000001011110011, b!=1010110001010110, b2 = 0001111101111001
[0074]FPGA完成对7路模-数转换数据的二阶IIR低通数字滤波后,产生一个基准脉冲宽度的高电平,频率为ΙΚΗζ,用作导航计算时标。主处理器响应该时标触发的外部中断,一次读取模-数转换数据进行导航计算,并进行导航计算时标的对准。
[0075]导航参数及外部指令的双缓冲、全双工异步串行通信,包含发送/接收缓冲寄存器、波特率配置寄存器、奇偶校验配置寄存器,状态寄存器,映射为主处理器的外设地址用二进制码表示分别为1000、1001、1010、1011,寄存器地址及功能描述如下表:
[0076]

【权利要求】
1.一种基于FPGA的导航计算机协处理器,其特征在于实现方式如下: FPGA协处理器完成IMU信号的采集控制和处理,并将IMU信号发送至主处理器;主处理器根据FPGA发送的IMU信号完成导航计算,并将导航计算的导航参数通过FPGA协处理器发送至主控计算机及其他外设;主控计算机及其他外设通过FPGA将控制指令及辅助信息发送至主处理器;FPGA协处理器控制模数转换单元完成MU信号的模数转换,将多路IMU模拟信号转换为数字信号;IMU信号包括3路高精度光纤陀螺信号、3路高精度加速度计信号、I路温度信号,对应的模数转换器路数为7路; 其中FPGA协处理器包括:MU信号采集模块、頂U信号处理模块、通信协议设置模块、发送缓冲模块、接收缓冲模块、异步串行收发模块; IMU信号采集模块对模数转换器进行初始化,将7路模数转换器进行同步,并设置一定的模数转换频率信号采集模块查询其中I路模数转换器的转换状态,当查询到模数转换完毕后,产生取数时序,得到7路模数转换器的数字信号,并送往MU信号处理模块; IMU信号处理模块对7路模数转换器的转换数据进行二阶IIR低通数字滤波处理得到滤波后的IMU数字信号,并产生与模数转换频率相等的导航计算时标用以触发主处理器外部中断,主处理器在中断服务程序中产生地址信号及读信号,一次读入模数转换完毕的MU数字信号,完成导航计算,并进行导航计算时标的对准; 通信协议设置模块对异步串行通信的波特率及奇偶校验进行设置; 发送缓冲模块对主处理器导航计算完毕准备发往主控计算机及其他外设的导航参数进行缓冲,并等待异步串行收发模块完成并串行转换; 接收缓冲模块对由异步串行收发模块完成串并转换的来自主控计算机及其他外设的串行指令及辅助参数进行缓冲,等待主处理器的读取; 异步串行收发模块将发送缓冲模块中主处理器向主控计算机和其他外设之间发送的导航参数进行并串行转换后发送至主控计算机和其他外设;并将接收到主控计算机和其他外设发送至主处理器的异步串行数据进行串并行转换送至接收缓冲模块。
2.根据权利要求1所述的一种基于FPGA的导航计算机协处理器,其特征在于:所述的导航计算时标为一个基准时钟宽度的高电平,频率为ΙΚΗζ,基准时钟频率为14.7456MHzο
3.根据权利I要求的一种基于FPGA的导航计算机协处理器,其特征在于:所述进行二阶IIR低通数字滤波处理方法具体如下: 二阶IIR滤波器递归方程为:
y (n) = a0x (n) +a^ (η-1) +a2x (η_2) -b^ (η-1) -b2y (η_2), η = 2, 3, 4,..., N其中,X(η)为当前时刻的采样值,x(n-l)为前一时刻的采样值,x(n-2)为更前一时刻的采样值,y(n)为当前时刻滤波器的输出值,y(n-l)为前一时刻滤波器的输出值,y(n-2)为更前一时刻滤波器的输出值。
4.根据权利I要求所述的一种基于FPGA的导航计算机协处理器,其特征在于:所述的通信协议设置模块包括波特率配置寄存器、奇偶校验配置寄存器;通信协议设置模块对异步串行通信的波特率及奇偶校验进行设置的实现方式如下: 波特率配置寄存器、奇偶校验配置寄存器映射为主处理器的外设地址用二进制码分别表示为1001、1010,主处理器往外设地址写入波特率及奇偶校验的配置数据,通信协议设置模块使用主处理器的地址信号及写信号边沿将配置数据锁存,更新配置寄存器,即完成通信协议的设置; 波特率及奇偶校验的配置数据的具体数值为:基准时钟14.7456MHz除以波特率配置寄存器的值加I即为异步串行通信波特率;奇偶校验配置寄存器BitO值为‘I’表示奇偶校验使能,‘0’表不奇偶校验不使能;奇偶校验使能时,奇偶校验配置寄存器Bitl值为‘I’表示奇校验,‘0’表示偶校验。
5.根据权利I要求所述的一种基于FPGA的导航计算机协处理器,其特征在于:所述的发送缓冲模块包括发送缓冲寄存器、状态寄存器;发送缓冲寄存器、状态寄存器映射为主处理器的外设地址用二进制码分别表示为1000、1011 ; 发送缓冲模块进行数据缓冲的具体实现方式如下: 异步串行数据发送时,主处理器往发送缓冲寄存器连续写入待发送导航参数,发送缓冲模块将发送缓冲寄存器的待发导航参数存入512字节的发送FIFO,当异步串行收发模块发送状态空闲,则发送缓冲模块产生发送FIFO缓冲单元读时序及异步串行收发模块写时序,将待发数据从发送FIFO缓冲单元取出并写入异步串行收发模块发送寄存器,由异步串行收发模块完成数据的并串行转换;状态寄存器的Bitl用以标识发送FIFO的状态,‘I’表示发送FIFO非空,‘0’表示发送FIFO空。
6.根据权利I要求所述的一种基于FPGA的导航计算机协处理器,其特征在于:所述的接收缓冲模块包括接收缓冲寄存器、状态寄存器;接收缓冲寄存器、状态寄存器映射为主处理器的外设地址用二进制码分别表示为1000、1011 ; 接收缓冲模块进行数据缓冲的具体实现方式如下: 异步串行数据接收时,异步串行收发模块完成串并行转换后产生接收有效标志,将串行并行转换完毕的数据从异步串行收发模块取出并写入接收FIFO缓冲单元,接收缓冲模块将接收FIFO缓冲单元中的数据存入接收缓冲寄存器等待主处理器读取;状态寄存器的BitO用以标识接收FIFO的状态,‘I’表示接收FIFO非空,‘0’表示接收FIFO空;接收FIFO缓冲单元中的所有数据被读取完毕后将状态寄存器中BitO置O。
7.根据权利I要求的一种基于FPGA的导航计算机协处理器,其特征在于:所述的异步串行收发模块实现方式如下: (1)并串行转换时,若异步串行收发模块发送寄存器被写入待发送数据,则以波特率配置寄存器设置的时钟为基准,完成主处理器向主控计算机及其他外设发送数据的并串转换,串行数据格式为I个起始位,8个数据位,I位奇偶校验位,I个停止位,发送空闲状态时,输出为高电平; (2)串行并行转换时,异步串行收发模块以波特率配置寄存器设置的时钟为基准检测外部串行输入信号的电平状态,当检测到低电平时,则认为是串行输入信号的起始位,顺序接收到8个数据位及I个奇偶校验位后,判断当前电平是否为高电平,若是高电平则为结束位,当前字节接收完毕;否则重新开始检测低电平判断起始位;完成串行并行转换后,将数据放入接收寄存器中,同时置接收寄存器标志,等待接受FIFO缓冲单元的读取。
【文档编号】G01C21/20GK104132663SQ201410228512
【公开日】2014年11月5日 申请日期:2014年5月27日 优先权日:2014年5月27日
【发明者】王松, 刘海涛, 阙兴涛, 刘尔静, 汪守利 申请人:北京遥测技术研究所, 航天长征火箭技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1