1 导言
选用光纤陀螺的捷联惯性导航体系是一种极具发展潜力的导航体系,关于其间心部件的光纤陀螺,尤其是中高精度光纤陀螺,环境温度带来的漂移是不容忽视的,因而对体系进行温度操控很有必要。温度操控电路是整个温控体系的硬件根底,其间涉及到温度收集,与微处理器通讯,串口输出,操控数模转化芯片等多个组成部分。本文提出一种高效有用的FPGA 接口规划,它能够完结和谐各个组成部分有序作业,精确、快速完结数据传输,严厉操控信号时序等作业。
2 温控电路全体结构
温控电路的全体结构框图如图1 所示。其间包括七路温度传感器,DSP, 232 接口芯片,DAC ,后端操控电路,上位机和FPGA 等多个组成部分。FPGA 接口是整个电路的中心。
图1 温控电路的全体结构框图
其间,温度传感器选用DALLAS 公司的DS18B20,它选用1-wire 总线协议,仅需1 根数据线进行通讯。DSP 选用TI 公司的TMSVC33,它能够完结高速浮点运算。232 接口芯片选用MAXIM 公司的MAX3232,支撑高达120kbps 的传输速率。DAC 选用TI 公司的TLV5620I,它是通过4 条串行信号操控的8 位4 路数模转化芯片。FPGA 选用ALTERA 公司的ACEX 系列的EP1K100,它时钟频率高,具有丰厚内部资源,供给很多可编程IO 管脚,装备十分便利。依据FPGA 的温控电路接口在整个电路中具有十分重要的效果。FPGA 自身的高速并行结构为整个电路的功用供给了牢靠确保。
3 温控电路作业流程
温控电路的作业流程如图2 所示。FPGA 与七路温度传感器通讯,读取温度值,并存储于内部存储器中,每秒更新一次。FPGA 发送中止信号告诉DSP 读取FPGA 中存储的温度值,DSP 依据当时温度值和操控算法计算出操控量。然后将温度值和操控量打包成一帧数据发送给FPGA。FPGA 将DSP 发送来的数据存储在内部存储器后,对数据进行操作,生成输出信号。
FPGA 一方面将数据串行发送给232 接口芯片,然后通过232 串口发送给上位机。上位机可通过监督软件实时观测温度值和操控量的改变状况,便利体系调试与*估;另一方面从数据中提取出操控量,将其串行输出到DAC,数字操控信号通过DA 转化后输出模仿操控电压到后端操控电路,完结对七路温度的闭环操控。
图2 温控电路的作业流程
4 FPGA 与外围电路之间的通讯接口
FPGA 与外围电路之间的通讯接口首要包括与温度传感器,DSP,232 接口芯片和DAC的通讯接口四个部分。
(1) 与温度传感器的通讯接口
本方案的温度传感器选用DS18B20,它通过硬件十分简略的1-wire 总线通讯,因为硬件简略所以通讯协议比较杂乱。要完结与它的通讯接口将占用很多FPGA 片内资源,并且本方案要进行七路温度收集,因而优化程序规划,削减冗余,节约资源显得尤为重要。
(2) 与DSP 的通讯接口
DSP 与FPGA 的组合已经成为当今数字电路中十分盛行的方式。FPGA 十分合适与DSP合作。本方案中,DSP 与FPGA 的通讯接口首要由数据总线,地址总线和一些操控信号组成。FPGA 和DSP 之间由8 位数据总线衔接,数据以字节方式并行传输。DSP 通过地址总线对FPGA的片内资源寻址。操控信号首要包括复位信号,中止信号和读写信号。
(3) 与232 接口芯片的通讯接口
FPGA 与232 接口芯片的通讯是通过收发两条数据线完结的。本方案中,只存在温控体系到上位机的单向数据传输,故仅需一条发送数据线就能够完结与232 接口芯片的通讯。
(4) 与DAC 的通讯接口
本方案选用TI 公司的TLV5620I 芯片作为DAC。它是8 位4 路电压数模转化器。关于它的数字操控依据由4 条信号线组成的串行总线。包括CLK,DATA,LOAD 和LDAC 四种信号。
5 FPGA 的逻辑规划
在温控电路的总体方案,硬件结构,作业流程和接口协议都确认后,就能够进行FPGA的逻辑规划了。FPGA 的逻辑规划是整个温控电路接口规划的重中之重。它依据verilog 硬件描绘言语。杰出的FPGA 逻辑规划应该是时序明晰,运转安稳,成果清晰和节约资源的。它能够确保整个体系的牢靠,安稳和高效。FPGA 的逻辑模块图如图3 所示。FPGA 内部逻辑大致分为RESET 模块,DS18B20 接口模块,总线操控模块,DSP 接口模块,双口RAM 模块,232 接口模块和DAC 接口模块等几部分。
图3 FPGA 的逻辑模块图
(1)RESET 模块
该模块生成大局复位信号。是一切模块中优先级最高的。体系上电后,该模块将复位信号拉低并继续1 秒然后拉高,对DSP 和FPGA 内部其他模块进行复位。
(2)DS18B20 接口模块
该模块用于完结与DS18B20 通讯,读取并存储温度值。它包括2 个子模块。
一、温度收集模块
该模块完结与DS18B20 的通讯协议。首要通过一个初始化序列对DS18B20 进行初始化,包括一个由主机宣布的复位脉冲和其后由从机宣布的存在脉冲。探测到存在脉冲之后,代表初始化完结,模块将发送ROM 操作指令。本方案中,履行SKIP ROM 越过ROM 匹配。之后将发送存储器操作指令。温度转化和读取温度就在这部分完结。其间每一次读写操作都需求严厉依照DS18B20 的读写时隙进行。该模块杂乱程度高和占用资源多,是整个FPGA 中的重要模块。本方案一共有七路温度收集模块,它们的并行结构使得体系能够便利地完结对七路温度的实时监控。
二、温度存储模块
该模块的首要构成部分是一个14*8 位存储器,用于存储七路温度数值,每一路数值需求2 个8 位寄存器寄存。存储结束后,等候DSP 读取。
(3)DSP 接口模块
该模块首要用于与DSP 进行通讯。它包括3 个子模块。
一、DSP 写信号同步模块
DSP 的数据写入在写信号操控下完结。因为DSP 和FPGA 选用不同的时钟源,所以DSP发生的写信号无法和FPGA 的主时钟同步。这样就会导致写数据过错。该模块用于将DSP 写信号与FPGA 的主时钟同步。
二、中止生成模块
因为本方案中,温度值每秒更新一次。在温度值更新后,通过中止信号告诉DSP 读取温度值。该模块用于生成周期为1 秒的中止脉冲。
三、寻址模块
该模块对FPGA 片内资源进行编址,由DSP 的地址总线操控寻址。精确读写所需的数据。
(4)总线操控模块
DSP 和FPGA 之间的数据总线是双向总线,总线操控模块用于操控总线的数据流向。当DSP 从FPGA 中读取温度值时,总线操控模块将温度存储模块和数据总线相连,输出数据。当DSP 向FPGA 中写数据时,总线操控模块将数据总线和双口RAM 模块相连,输入数据。
(5)双口RAM 模块
该模块首要完结以下三个功用:当DSP 写数据时,将数据存储于内部存储器中;当数据存储结束后,将其间的操控量发送给DAC 操控模块;与串口发送模块通讯,将一切数据顺次串行输出。
(6) 232 接口模块
该模块用于完结串口数据输出,它包括2 个子模块:
一、串口波特率模块
串口通讯协议要求数据收发两边有相同的波特率。该模块用于设定串口通讯波特率。
二、串口发送模块
双口RAM 模块将数据存储结束后,将给串口发送模块一个标志信号。串口发送模块接到此信号后,顺次将双口RAM 模块中存储的数据串行输出。
(7)DAC 接口模块
该模块包括2 个子模块:
一、DAC 时钟模块
DAC 需求特定频率规模的时钟来驱动。该模块用于生成驱动DAC 的时钟信号。
二、DAC 操控模块
该模块用于生成DAC 操控信号。它的基本原理是将双口RAM 模块输出的7 路操控量存储在内部存储器,然后依据DAC 的接口协议生成CLK,DATA,LOAD 和LDAC 等操控信号,这些信号将驱动DAC 的作业,将数字操控量转化成模仿电压值。
图4 温度操控电路
6 结束语
FPGA 接口规划需求归纳考虑硬件衔接,作业流程,接口协议和逻辑模块等多方面要素,是一项体系工程。本文分别从以上几方面介绍了依据FPGA 的光纤陀螺惯导体系温控电路接口规划,该规划现在已使用于实践体系中。通过验证,接口满意体系要求,作业状况杰出。本文所述的FPGA 接口规划方案是牢靠,安稳和高效的。可为其他相关使用供给有利的学习。