《一种基于FPGA的导航计算机协处理器.pdf》由会员分享,可在线阅读,更多相关《一种基于FPGA的导航计算机协处理器.pdf(11页珍藏版)》请在专利查询网上搜索。
1、10申请公布号CN104132663A43申请公布日20141105CN104132663A21申请号201410228512322申请日20140527G01C21/2020060171申请人北京遥测技术研究所地址100076北京市丰台区北京9200信箱74分箱申请人航天长征火箭技术有限公司72发明人王松刘海涛阙兴涛刘尔静汪守利74专利代理机构中国航天科技专利中心11009代理人安丽54发明名称一种基于FPGA的导航计算机协处理器57摘要本发明公开的一种基于FPGA的导航计算机协处理器,完成高精度惯性测量单元IMU信号的实时采集与处理、导航参数及外部指令的双缓冲、全双工异步串行通信。本发明完。
2、成的FPGA协处理器克服了传统嵌入式导航计算机在体积、开发复杂度及通用性上的不足,其与主处理器之间任务分配均衡,接口关系清晰,大大提高了导航计算机开发的灵活性和通用性,降低了导航计算机系统软件开发的复杂度。51INTCL权利要求书2页说明书7页附图1页19中华人民共和国国家知识产权局12发明专利申请权利要求书2页说明书7页附图1页10申请公布号CN104132663ACN104132663A1/2页21一种基于FPGA的导航计算机协处理器,其特征在于实现方式如下FPGA协处理器完成IMU信号的采集控制和处理,并将IMU信号发送至主处理器;主处理器根据FPGA发送的IMU信号完成导航计算,并将导。
3、航计算的导航参数通过FPGA协处理器发送至主控计算机及其他外设;主控计算机及其他外设通过FPGA将控制指令及辅助信息发送至主处理器;FPGA协处理器控制模数转换单元完成IMU信号的模数转换,将多路IMU模拟信号转换为数字信号;IMU信号包括3路高精度光纤陀螺信号、3路高精度加速度计信号、1路温度信号,对应的模数转换器路数为7路;其中FPGA协处理器包括IMU信号采集模块、IMU信号处理模块、通信协议设置模块、发送缓冲模块、接收缓冲模块、异步串行收发模块;IMU信号采集模块对模数转换器进行初始化,将7路模数转换器进行同步,并设置一定的模数转换频率;IMU信号采集模块查询其中1路模数转换器的转换状。
4、态,当查询到模数转换完毕后,产生取数时序,得到7路模数转换器的数字信号,并送往IMU信号处理模块;IMU信号处理模块对7路模数转换器的转换数据进行二阶IIR低通数字滤波处理得到滤波后的IMU数字信号,并产生与模数转换频率相等的导航计算时标用以触发主处理器外部中断,主处理器在中断服务程序中产生地址信号及读信号,一次读入模数转换完毕的IMU数字信号,完成导航计算,并进行导航计算时标的对准;通信协议设置模块对异步串行通信的波特率及奇偶校验进行设置;发送缓冲模块对主处理器导航计算完毕准备发往主控计算机及其他外设的导航参数进行缓冲,并等待异步串行收发模块完成并串行转换;接收缓冲模块对由异步串行收发模块完。
5、成串并转换的来自主控计算机及其他外设的串行指令及辅助参数进行缓冲,等待主处理器的读取;异步串行收发模块将发送缓冲模块中主处理器向主控计算机和其他外设之间发送的导航参数进行并串行转换后发送至主控计算机和其他外设;并将接收到主控计算机和其他外设发送至主处理器的异步串行数据进行串并行转换送至接收缓冲模块。2根据权利要求1所述的一种基于FPGA的导航计算机协处理器,其特征在于所述的导航计算时标为一个基准时钟宽度的高电平,频率为1KHZ,基准时钟频率为147456MHZ。3根据权利1要求的一种基于FPGA的导航计算机协处理器,其特征在于所述进行二阶IIR低通数字滤波处理方法具体如下二阶IIR滤波器递归方。
6、程为YNA0XNA1XN1A2XN2B1YN1B2YN2,N2,3,4,N其中,XN为当前时刻的采样值,XN1为前一时刻的采样值,XN2为更前一时刻的采样值,YN为当前时刻滤波器的输出值,YN1为前一时刻滤波器的输出值,YN2为更前一时刻滤波器的输出值。4根据权利1要求所述的一种基于FPGA的导航计算机协处理器,其特征在于所述的通信协议设置模块包括波特率配置寄存器、奇偶校验配置寄存器;通信协议设置模块对异步串行通信的波特率及奇偶校验进行设置的实现方式如下波特率配置寄存器、奇偶校验配置寄存器映射为主处理器的外设地址用二进制码分别表示为1001、1010,主处理器往外设地址写入波特率及奇偶校验的配。
7、置数据,通信协议设置模块使用主处理器的地址信号及写信号边沿将配置数据锁存,更新配置寄存器,即完成通权利要求书CN104132663A2/2页3信协议的设置;波特率及奇偶校验的配置数据的具体数值为基准时钟147456MHZ除以波特率配置寄存器的值加1即为异步串行通信波特率;奇偶校验配置寄存器BIT0值为1表示奇偶校验使能,0表示奇偶校验不使能;奇偶校验使能时,奇偶校验配置寄存器BIT1值为1表示奇校验,0表示偶校验。5根据权利1要求所述的一种基于FPGA的导航计算机协处理器,其特征在于所述的发送缓冲模块包括发送缓冲寄存器、状态寄存器;发送缓冲寄存器、状态寄存器映射为主处理器的外设地址用二进制码分。
8、别表示为1000、1011;发送缓冲模块进行数据缓冲的具体实现方式如下异步串行数据发送时,主处理器往发送缓冲寄存器连续写入待发送导航参数,发送缓冲模块将发送缓冲寄存器的待发导航参数存入512字节的发送FIFO,当异步串行收发模块发送状态空闲,则发送缓冲模块产生发送FIFO缓冲单元读时序及异步串行收发模块写时序,将待发数据从发送FIFO缓冲单元取出并写入异步串行收发模块发送寄存器,由异步串行收发模块完成数据的并串行转换;状态寄存器的BIT1用以标识发送FIFO的状态,1表示发送FIFO非空,0表示发送FIFO空。6根据权利1要求所述的一种基于FPGA的导航计算机协处理器,其特征在于所述的接收缓冲。
9、模块包括接收缓冲寄存器、状态寄存器;接收缓冲寄存器、状态寄存器映射为主处理器的外设地址用二进制码分别表示为1000、1011;接收缓冲模块进行数据缓冲的具体实现方式如下异步串行数据接收时,异步串行收发模块完成串并行转换后产生接收有效标志,将串行并行转换完毕的数据从异步串行收发模块取出并写入接收FIFO缓冲单元,接收缓冲模块将接收FIFO缓冲单元中的数据存入接收缓冲寄存器等待主处理器读取;状态寄存器的BIT0用以标识接收FIFO的状态,1表示接收FIFO非空,0表示接收FIFO空;接收FIFO缓冲单元中的所有数据被读取完毕后将状态寄存器中BIT0置0。7根据权利1要求的一种基于FPGA的导航计算。
10、机协处理器,其特征在于所述的异步串行收发模块实现方式如下1并串行转换时,若异步串行收发模块发送寄存器被写入待发送数据,则以波特率配置寄存器设置的时钟为基准,完成主处理器向主控计算机及其他外设发送数据的并串转换,串行数据格式为1个起始位,8个数据位,1位奇偶校验位,1个停止位,发送空闲状态时,输出为高电平;2串行并行转换时,异步串行收发模块以波特率配置寄存器设置的时钟为基准检测外部串行输入信号的电平状态,当检测到低电平时,则认为是串行输入信号的起始位,顺序接收到8个数据位及1个奇偶校验位后,判断当前电平是否为高电平,若是高电平则为结束位,当前字节接收完毕;否则重新开始检测低电平判断起始位;完成串。
11、行并行转换后,将数据放入接收寄存器中,同时置接收寄存器标志,等待接受FIFO缓冲单元的读取。权利要求书CN104132663A1/7页4一种基于FPGA的导航计算机协处理器技术领域0001本发明涉及一种基于FPGA的导航计算机协处理器,属惯性导航领域。背景技术0002近年来,随着电子技术及惯性技术的高速发展,捷联惯导系统以其低成本、小体积、高性能等优势广泛应用于诸多战术、战略武器型号,为国防建设做出了重要贡献,高性能捷联惯导系统的研究和应用也逐渐成为惯性技术的重要发展方向之一。导航计算机是保证惯导系统实时性和精度的核心单元,主要完成数据采集、时间同步、导航计算和导航参数输出等功能。0003传统。
12、的基于专用计算机或工控机的导航计算机体积大、结构复杂,且通用性欠佳。为了满足小型化、高精度应用要求,目前基于嵌入式系统的导航计算机的任务调度及导航计算等核心功能均由主处理器完成,往往采用双主处理器结构,例如DSP/单片机,DSP/DSP,DSP/CPLD,DSP/FPGA等,导航计算机的由DSP主处理器实现,任务的过度集中及主处理器有限的外部接口大幅增加了系统软件设计的复杂度,也降低了系统的可靠性和通用性,导致该类导航计算机不适用于数据交互量大、实时性要求苛刻的高精度导航领域。发明内容0004本发明所要解决的问题克服现有技术的的不足,提供了一种基于FPGA的导航计算机协处理器,通过设计导航计算。
13、机协处理器,完成高精度IMU信号的实时采集与处理、导航参数及外部指令的双缓冲、全双工异步串行通信,有效提高导航计算机的性能。0005本发明的技术解决方案0006一种基于FPGA的导航计算机协处理器,实现方式如下0007FPGA协处理器完成IMU信号的采集控制和处理,并将IMU信号发送至主处理器;主处理器根据FPGA发送的IMU信号完成导航计算,并将导航计算的导航参数通过FPGA协处理器发送至主控计算机及其他外设;主控计算机及其他外设通过FPGA将控制指令及辅助信息发送至主处理器;FPGA协处理器控制模数转换单元完成IMU信号的模数转换,将多路IMU模拟信号转换为数字信号;IMU信号包括3路高精。
14、度光纤陀螺信号、3路高精度加速度计信号、1路温度信号,对应的模数转换器路数为7路;0008其中FPGA协处理器包括IMU信号采集模块、IMU信号处理模块、通信协议设置模块、发送缓冲模块、接收缓冲模块、异步串行收发模块;0009IMU信号采集模块对模数转换器进行初始化,将7路模数转换器进行同步,并设置一定的模数转换频率;IMU信号采集模块查询其中1路模数转换器的转换状态,当查询到模数转换完毕后,产生取数时序,得到7路模数转换器的数字信号,并送往IMU信号处理模块;0010IMU信号处理模块对7路模数转换器的转换数据进行二阶IIR低通数字滤波处理得到滤波后的IMU数字信号,并产生与模数转换频率相等。
15、的导航计算时标用以触发主处理说明书CN104132663A2/7页5器外部中断,主处理器在中断服务程序中产生地址信号及读信号,一次读入模数转换完毕的IMU数字信号,完成导航计算,并进行导航计算时标的对准;0011通信协议设置模块对异步串行通信的波特率及奇偶校验进行设置;0012发送缓冲模块对主处理器导航计算完毕准备发往主控计算机及其他外设的导航参数进行缓冲,并等待异步串行收发模块完成并串行转换;0013接收缓冲模块对由异步串行收发模块完成串并转换的来自主控计算机及其他外设的串行指令及辅助参数进行缓冲,等待主处理器的读取;0014异步串行收发模块将发送缓冲模块中主处理器向主控计算机和其他外设之间。
16、发送的导航参数进行并串行转换后发送至主控计算机和其他外设;并将接收到主控计算机和其他外设发送至主处理器的异步串行数据进行串并行转换送至接收缓冲模块。0015所述的导航计算时标为一个基准时钟宽度的高电平,频率为1KHZ,基准时钟频率为147456MHZ。0016所述进行二阶IIR低通数字滤波处理方法具体如下0017二阶IIR滤波器递归方程为0018YNA0XNA1XN1A2XN2B1YN1B2YN2,N2,3,4,N0019其中,XN为当前时刻的采样值,XN1为前一时刻的采样值,XN2为更前一时刻的采样值,YN为当前时刻滤波器的输出值,YN1为前一时刻滤波器的输出值,YN2为更前一时刻滤波器的输。
17、出值。0020所述的通信协议设置模块包括波特率配置寄存器、奇偶校验配置寄存器;通信协议设置模块对异步串行通信的波特率及奇偶校验进行设置的实现方式如下0021波特率配置寄存器、奇偶校验配置寄存器映射为主处理器的外设地址用二进制码分别表示为1001、1010,主处理器往外设地址写入波特率及奇偶校验的配置数据,通信协议设置模块使用主处理器的地址信号及写信号边沿将配置数据锁存,更新配置寄存器,即完成通信协议的设置;0022波特率及奇偶校验的配置数据的具体数值为基准时钟147456MHZ除以波特率配置寄存器的值加1即为异步串行通信波特率;奇偶校验配置寄存器BIT0值为1表示奇偶校验使能,0表示奇偶校验不。
18、使能;奇偶校验使能时,奇偶校验配置寄存器BIT1值为1表示奇校验,0表示偶校验。0023所述的发送缓冲模块包括发送缓冲寄存器、状态寄存器;发送缓冲寄存器、状态寄存器映射为主处理器的外设地址用二进制码分别表示为1000、1011;0024发送缓冲模块进行数据缓冲的具体实现方式如下0025异步串行数据发送时,主处理器往发送缓冲寄存器连续写入待发送导航参数,发送缓冲模块将发送缓冲寄存器的待发导航参数存入512字节的发送FIFO,当异步串行收发模块发送状态空闲,则发送缓冲模块产生发送FIFO缓冲单元读时序及异步串行收发模块写时序,将待发数据从发送FIFO缓冲单元取出并写入异步串行收发模块发送寄存器,由。
19、异步串行收发模块完成数据的并串行转换;状态寄存器的BIT1用以标识发送FIFO的状态,1表示发送FIFO非空,0表示发送FIFO空。0026所述的接收缓冲模块包括接收缓冲寄存器、状态寄存器;接收缓冲寄存器、状态寄存器映射为主处理器的外设地址用二进制码分别表示为1000、1011;说明书CN104132663A3/7页60027接收缓冲模块进行数据缓冲的具体实现方式如下0028异步串行数据接收时,异步串行收发模块完成串并行转换后产生接收有效标志,将串行并行转换完毕的数据从异步串行收发模块取出并写入接收FIFO缓冲单元,接收缓冲模块将接收FIFO缓冲单元中的数据存入接收缓冲寄存器等待主处理器读取;。
20、状态寄存器的BIT0用以标识接收FIFO的状态,1表示接收FIFO非空,0表示接收FIFO空;接收FIFO缓冲单元中的所有数据被读取完毕后将状态寄存器中BIT0置0。0029所述的异步串行收发模块实现方式如下00301并串行转换时,若异步串行收发模块发送寄存器被写入待发送数据,则以波特率配置寄存器设置的时钟为基准,完成主处理器向主控计算机及其他外设发送数据的并串转换,串行数据格式为1个起始位,8个数据位,1位奇偶校验位,1个停止位,发送空闲状态时,输出为高电平;00312串行并行转换时,异步串行收发模块以波特率配置寄存器设置的时钟为基准检测外部串行输入信号的电平状态,当检测到低电平时,则认为是。
21、串行输入信号的起始位,顺序接收到8个数据位及1个奇偶校验位后,判断当前电平是否为高电平,若是高电平则为结束位,当前字节接收完毕;否则重新开始检测低电平判断起始位;完成串行并行转换后,将数据放入接收寄存器中,同时置接收寄存器标志,等待接受FIFO缓冲单元的读取。0032本发明与现有技术相比具有如下优点00331本发明实现了高精度IMU信号的实时采集与处理,并产生时标用于导航计算周期的控制,提高了导航计算机主处理器的运行效率,减轻了主处理器的任务调度压力,效率更高,可靠性更强。00342本发明基于FPGA实现了通信协议设置模块、发送缓冲模块、接收缓冲模块、通用异步串行收发模块,避免使用专用的异步串。
22、行通信协议转换电路,降低了导航计算机的体积和成本,同时使导航计算机主处理器无需频繁响应外部中断进行信息交互,提高了主处理器的计算效率,也节省了其宝贵的外部中断资源。00353本发明基于FPGA完成导航计算机协处理器的功能,完成了其与主处理器在功能模块上的科学分工,使二者各取所长,充分发挥各自优势。由于所有外设均通过FPGA协处理器与主处理器进行信息交互,因此导航计算机接口关系非常简单、清晰,提高了导航计算机开发的灵活性和通用性,降低了导航计算机系统软件开发的复杂度。附图说明0036图1为本发明组成结构示意图。具体实施方式0037下面结合附图对本发明作进一步说明。0038如图1所示,本发明一种基。
23、于FPGA的导航计算机协处理器,实现方式如下0039FPGA协处理器完成IMU信号的采集和处理,并将IMU信号发送至主处理器;主处理器根据FPGA发送的IMU信号完成导航计算,并将导航计算的导航参数通过FPGA协处理器发送至主控计算机及其他外设;主控计算机及其他外设通过FPGA将控制指令及辅助信息发送至主处理器。说明书CN104132663A4/7页70040FPGA协处理器控制模数转换单元模数转换单元包括多路模数转换器完成IMU信号的模数转换,将7路IMU模拟信号转换为数字信号;IMU信号包括3路高精度光纤陀螺信号、3路高精度加速度计信号、1路温度信号,对应的模数转换器路数为高精度光纤陀螺信。
24、号、高精度加速度计信号、温度信号路数之和,模数转换单元包括7路模数转换器。0041其中FPGA协处理器包括IMU惯性测量单元信号采集模块、IMU信号处理模块、通信协议设置模块、发送缓冲模块、接收缓冲模块、异步串行收发模块。0042IMU信号采集模块对模数转换器进行初始化,将7路模数转换器进行同步,并设置一定的模数转换频率;IMU信号采集模块查询其中1路模数转换器的转换状态,当查询到模数转换完毕后,产生取数时序,得到多路模数转换器的数字信号,并送往IMU信号处理模块。0043IMU信号处理模块对7路模数转换器的转换数据进行二阶IIR无限长单位冲激响应低通数字滤波处理得到滤波后的IMU数字信号,并。
25、产生与模数转换频率相等的导航计算时标导航计算时标为一个基准时钟宽度的高电平,频率为1KHZ,基准时钟频率为147456MHZ用以触发主处理器外部中断,主处理器在中断服务程序中产生地址信号及读信号,一次读入模数转换完毕的IMU数字信号数字,完成导航计算,并进行导航计算时标的对准;0044二阶IIR低通数字滤波处理方法具体如下0045二阶IIR滤波器递归方程为0046YNA0XNA1XN1A2XN2B1YN1B2YN2,N2,3,4,N0047其中,XN为当前时刻的采样值,XN1为前一时刻的采样值,XN2为更前一时刻的采样值,YN为当前时刻滤波器的输出值,YN1为前一时刻滤波器的输出值,YN2为更。
26、前一时刻滤波器的输出值。0048通信协议设置模块对异步串行通信的波特率及奇偶校验进行设置;0049通信协议设置模块包括波特率配置寄存器、奇偶校验配置寄存器;通信协议设置模块对异步串行通信的波特率及奇偶校验进行设置的实现方式如下0050波特率配置寄存器、奇偶校验配置寄存器映射为主处理器的外设地址用二进制码分别表示为1001、1010,主处理器往外设地址写入波特率及奇偶校验的配置数据,通信协议设置模块使用主处理器的地址信号及写信号边沿将配置数据锁存,更新配置寄存器,即可进行通信协议的设置;0051波特率及奇偶校验的配置数据的具体数值为基准时钟147456MHZ除以波特率配置寄存器的值加1即为异步串。
27、行通信波特率;奇偶校验配置寄存器BIT0值为1表示奇偶校验使能,0表示奇偶校验不使能;奇偶校验使能时,奇偶校验配置寄存器BIT1值为1表示奇校验,0表示偶校验。0052发送缓冲模块对主处理器导航计算完毕准备发往主控计算机及其他外设的导航参数进行缓冲,并等待异步串行收发模块完成并串行转换;0053发送缓冲模块包括发送缓冲寄存器、状态寄存器;发送缓冲寄存器、状态寄存器映射为主处理器的外设地址用二进制码分别表示为1000、1011;0054发送缓冲模块进行数据缓冲的具体实现方式如下0055异步串行数据发送时,主处理器往发送缓冲寄存器连续写入待发送导航参数,发说明书CN104132663A5/7页8送。
28、缓冲模块将发送缓冲寄存器的待发导航参数存入512字节的发送FIFO先入先出堆栈,当异步串行收发模块发送状态空闲,则发送缓冲模块产生发送FIFO缓冲单元读时序及异步串行收发模块写时序,将待发数据从发送FIFO缓冲单元取出并写入异步串行收发模块发送寄存器,由异步串行收发模块完成数据的并串行转换;状态寄存器的BIT1用以标识发送FIFO的状态,1表示发送FIFO非空,0表示发送FIFO空。0056接收缓冲模块对由异步串行收发模块完成串并转换的来自主控计算机及其他外设的串行指令及辅助参数进行缓冲,等待主处理器的读取;0057接收缓冲模块包括接收缓冲寄存器、状态寄存器;接收缓冲寄存器、状态寄存器映射为主。
29、处理器的外设地址用二进制码分别表示为1000、1011;0058接收缓冲模块进行数据缓冲的具体实现方式如下0059异步串行数据接收时,异步串行收发模块完成串并行转换后产生接收有效标志,将串行并行转换完毕的数据从异步串行收发模块取出并写入接收FIFO缓冲单元,接收缓冲模块将接收FIFO缓冲单元中的数据存入接收缓冲寄存器等待主处理器读取;状态寄存器的BIT0用以标识接收FIFO的状态,1表示接收FIFO非空,0表示接收FIFO空;接收FIFO缓冲单元中的所有数据被读取完毕后将状态寄存器中BIT0置0。0060异步串行收发模块将发送缓冲模块中主处理器向主控计算机和其他外设之间发送的导航参数进行并串行。
30、转换后发送至主控计算机和其他外设;并将接收到主控计算机和其他外设发生至主处理器的数据进行串并行转换送至接收缓冲模块。0061异步串行收发模块实现方式如下00621并串行转换时,若异步串行收发模块发送寄存器被写入待发送数据,则以波特率配置寄存器设置的时钟为基准,完成主处理器向主控计算机及其他外设发送数据的并串转换,串行数据格式为1个起始位低电平,8个数据位,1位奇偶校验位可选,1个停止位高电平,发送空闲状态时,输出为高电平;00632串行并行转换时,异步串行收发模块以波特率配置寄存器设置的时钟为基准检测外部串行输入信号的电平状态,当检测到低电平时,则认为是串行输入信号的起始位,顺序接收到8个数据。
31、位可选及1个奇偶校验位后,判断当前电平是否为高电平,若是高电平则为结束位,当前字节接收完毕;否则重新开始检测低电平判断起始位;完成串行并行转换后,将数据放入接收寄存器中,同时置接收寄存器标志,等待接受FIFO缓冲单元的读取。0064下面以一个具体实施例来进一步说明本发明的工作过程和工作原理0065本实施例中,以基于TMS320C6713DSP/CYCLONEIIFPGA的导航计算机为例。0066FPGA协处理器完成的功能包括高精度IMU信号的实时采集与处理模块、导航参数及外部指令的双缓冲、全双工异步串行通信模块,其与导航计算机DSP主处理器的信息交互通过DSP的外部存储器接口EMIF进行。其中。
32、,IMU信号包括3路高精度光纤陀螺信号、3路高精度加速度计信号及1路温度信号,共计7路模拟信号。0067本发明使用7路24位高精度模数转换器ADS1210对IMU输出信号和温度传感器输出信号进行采集、处理。高精度IMU信号的采集与处理步骤如下00681系统上电后,FPGA对IMU信号模数转换器进行初始化,设置模拟信号输入为双极性输入。ADS1210的工作时钟为8MHZ,设置配置寄存器的“TURBOMODERATE”为16,说明书CN104132663A6/7页9“DECIMATIONRATIO”为249,则模数转换数据率为1KHZ。将7路ADS1210的同步信号DSYNC同时置为低电平,5US。
33、后置为高电平,完成7路ADS1210的同步。00692FPGA查询1路ADS1210的转换状态标识BUSY信号,当BUSY为低电平时,表明模数转换完毕,则产生取数时序,将7路模数转换器的数据存入FPGA内部存储区,并对各路数据进行二阶IIR低通数字滤波处理。0070二阶IIR滤波器递归方程为,0071YNA0XNA1XN1A2XN2B1YN1B2YN20072模数转换数据率为1KHZ,设置二阶IIR低通数字滤波截止频率为80HZ,则有A000461318,A100922636,A200461318,B11307285,B204918122。由于FPGA不能直接进行浮点运算,对上述系数进行16位。
34、字长量化,其中小数占14位,则对应的量化后的二进制数分别为0073A00000001011110011,A10000010111100110,A20000001011110011,B11010110001010110,B200011111011110010074FPGA完成对7路模数转换数据的二阶IIR低通数字滤波后,产生一个基准脉冲宽度的高电平,频率为1KHZ,用作导航计算时标。主处理器响应该时标触发的外部中断,一次读取模数转换数据进行导航计算,并进行导航计算时标的对准。0075导航参数及外部指令的双缓冲、全双工异步串行通信,包含发送/接收缓冲寄存器、波特率配置寄存器、奇偶校验配置寄存器,状。
35、态寄存器,映射为主处理器的外设地址用二进制码表示分别为1000、1001、1010、1011,寄存器地址及功能描述如下表007600771主处理器往地址1010中写入00000011,设置为奇校验,往地址1001中写入00001111,设置波特率为147456MHZ/151,即为921600BPS。00782异步串行数据发送时,主处理器往地址1000连续写入待发送数据,FPGA将发送缓冲寄存器的待发数据存入发送FIFO,当异步串行收发模块发送寄存器为空,则自动产说明书CN104132663A7/7页10生发送FIFO缓冲单元读时序及异步串行收发模块写时序,将待发数据从发送FIFO缓冲单元取出并。
36、由写入异步串行收发模块发送寄存器,完成数据的并行串行转换。00793异步串行数据接收时,异步串行收发模块完成串并行转换后产生接收寄存器满标志,触发FPGA的异步串行收发模块读时序以及接收FIFO缓冲单元的写时序,将串行并行转换完毕的数据从异步串行收发模块接收寄存器中取出并写入接收FIFO缓冲单元,同时将状态寄存器BIT0置1。主处理器在空闲时间查询状态寄存器,状态寄存器BIT0为1时,主处理器读取接收缓冲寄存器,FPGA将接收FIFO缓冲单元中的数据存入接收缓冲寄存器等待主处理器读取,接收FIFO缓冲单元中的所有数据被读取完毕后将状态寄存器BIT0置0。00804异步串行通信模块完成并串行转换。
37、时,若异步串行收发模块发送寄存器被写入待发送数据,则以波特率配置寄存器设置的时钟为基准,完成数据的并串转换,数据格式为1个起始位低电平,8个数据位,1位奇偶校验位可选,1个停止位高电平,发送空闲状态时,输出为高电平。异步串行收发模块完成串行并行转换时,异步串行收发模块以波特率配置寄存器设置的时钟为基准检测外部串行输入信号地电平状态,当检测到低电平时,则认为是串行输入信号地起始位,顺序接收到8个数据位及1个奇偶校验位后,判断当前电平是否为高电平。若是高电平则为结束位,当前字节接收完毕,否则重新开始检测低电平判断起始位。完成串行并行转换后,将数据放入接收寄存器中,同时置接收寄存器标志,等待接受FIFO缓冲单元的读取。0081本发明说明书中未作详细描述的内容属于本领域技术人员的公知技术。说明书CN104132663A101/1页11图1说明书附图CN104132663A11。