发明名称 一种基于FPGA+DSP构架的高速数据记录系统的构建方法
摘要 一种基于FPGA+DSP架构的高速数据记录系统的构建方法,包括以下五个步骤;步骤一:记录系统初始化及自检;步骤二:原始数据采集;需要采集的数据分为3个部分:1.AD芯片MAX1270采集的参考电压;2.485通信接口端传输原始数据信号;3.GSP守时、星历信息等数据;步骤三:DSP核心控制芯片写入主函数,控制系统流程;步骤四:FPGA核心控制芯片控制FLASH存储芯片实现数据存储;步骤五:PC端测控软件实现数据读取分析;数据记录系统在未连接PC的情况下完成数据记录,之后通过USB接口与PC连接,通过PC端测控软件将数据存储为Excel格式的表格,便于对数据进行分析。
申请公布号 CN103678728B 申请公布日期 2016.10.26
申请号 CN201310606616.9 申请日期 2013.11.25
申请人 北京航空航天大学 发明人 张玉玺;王晓亮;向洪;樊文贵;王俊
分类号 G06F17/40(2006.01)I;G06F13/16(2006.01)I 主分类号 G06F17/40(2006.01)I
代理机构 北京慧泉知识产权代理有限公司 11232 代理人 王顺荣;唐爱华
主权项 一种基于FPGA+DSP架构的高速数据记录系统的构建方法,该构建方法的实施是基于FPGA+DSP架构的高速数据记录系统,该系统包括:PC端测控软件、FPGA核心控制芯片、DSP核心控制芯片、电源芯片、FLASH存储芯片、USB通信芯片、HDLC协议通信芯片、AD芯片和GPS通信子板;FPGA核心控制芯片控制数据上传时PC通信的USB模块,与DSP核心控制芯片通信时的缓存模块,FLASH存储芯片的读写模块,GPS通信子板的控制,以及HDLC协议通信芯片发送、接受数据模块;DSP核心控制芯片控制数据传输记录模式下的系统自检,模拟量数据采集模块,以及与FPGA核心控制芯片的通信模块;电源芯片与各芯片连接,提供整个系统工作所需的电压;所述PC端的测控软件用VC进行设计,它完成的工作是在硬件系统与PC通信时,在PC端显示出数据,便于进行分析;所述FPGA核心控制芯片是XC5VLX50T,负责数据上传时PC通信的网口模块,与DSP通信时的缓存模块,FLASH存储芯片的读写模块,GPS子板控制,以及HDLC通信协议发送、接受数据模块;所述DSP核心控制芯片是TMS320F2812,负责数据传输记录模式下的系统自检,模拟量数据采集模块以及与FPGA核心控制芯片的通信;在此数据记录系统中,DSP核心控制芯片的外部接口有电平采集接口、GPS数据传输接口、以及与FPGA核心控制芯片的数据及地址接口;而DSP核心控制芯片与FPGA核心控制芯片之间的连接使用EMIF A接口;所述电源芯片是PTH05000芯片,提供‑0.6~10V的输出电压,该电源芯片提供整个系统工作所需的电压;所述FLASH存储芯片是K9F8G08U0M芯片,通过对使能、控制管脚的电平变化实现对FLASH芯片的读写操作,FLASH存储芯片负责数据的存储,通过FPGA核心控制芯片进行控制,便于进行试验后分析;所述USB通信芯片是EZ‑USB FX2芯片CY7C68013作为连接二者的设备芯片;CY7C68013为USB2.0协议,分为端口、GPIF和Slave FIFO三种工作方式;在系统与PC连接时,用户从PC环境界面向系统发送指令,进行命令装订或者对已存数据的查找、读取、擦除;所述HDLC协议通信芯片是AMS2486,该芯片的RS‑485差分电平特性完成系统设计的与外设的连接与通信;所述AD芯片是MAX1270AEAI;本系统需要对5路电压进行采集检测,来判定系统是否工作正常,此功能通过FPGA核心控制芯片控制的AD芯片来实现,该MAX1270芯片能采集8路模拟信号;所述GPS通信子板是OEMStar,它是一款高性能低成本的GNSS接收板卡,其采用RHCP极化方式;其特征在于:该方法具体步骤如下:步骤一:记录系统初始化及自检;系统设备加电开机后,系统自动把FPGA核心控制芯片和DSP核心控制芯片的加载FLASH里的程序加载到相应的控制芯片中,使核心芯片完成初始化;DSP核心控制芯片端是配置各个寄存器,包括总线控制寄存器、中断寄存器,以保证DSP的正常运转;FPGA核心控制芯片也将DSP核心控制芯片对应管脚进行配置,同时将DSP核心控制芯片的输出时钟作为本地的全局时钟,供该芯片工作;FPGA核心控制芯片控制自检命令判定,测控评估设备发送自检命令后通过HDLC接口发送到前段设备,前段设备通过系统自检后会向测控评估设备发送信号,数据记录系统确认系统自检完成后,点亮自检指示灯;FPGA核心控制芯片控制装订地址码,用户通过拨动拨码开关选择所需地址,FPGA核心控制芯片接收到地址指令后,通过HDLC接口对接收机系统地址进行装订,接收机装订完毕后返回信息到数据记录系统,系统通过FPGA核心控制芯片点亮对应地址指示灯;FPGA核心控制芯片控制天线选择功能,通过拨码开关选择天线地址,通过FPGA核心控制芯片程序对系统选择天线进行配置,同时点亮天线选择指示灯;FPGA核心控制芯片控制指令切换功能,通过拨码开关对下行线切换指令进行选择,选择完成后点亮相对应指示灯显示指令状态;用户使用拨码开关对设备进行设置时,设备只在上电时读取一次拨码状态,设备在正常工作时将不再读取拨码状态,直到系统工作完毕;步骤二:原始数据采集;需要采集的数据分为3个部分:1)AD芯片MAX1270采集的参考电压2)485通信接口端传输原始数据信号3)GSP守时、星历信息数据;其中,AD采集电压的数据和GPS数据直接进入FPGA核心控制芯片进行后续处理,而4通信端口传输过来的数据则是经过HDLC协议通信芯片,转换为满足协议要求的485格式数据,传输进入FPGA核心控制芯片进行后续处理;485接口实现数据记录设备与前端产生数据设备通信,与FPGA核心控制芯片进行通信的485信号需要经过DS96F174/175ME芯片进行电平转换;设备与应答机的通信由FPGA核心控制芯片控制,包括发送自检命令、应答机状态装订、下行数据发送、应答数据接收;此外,这些命令采用HDLC协议发送和接收,这个协议转换过程通过FPGA核心控制芯片完成;HDLC接口传递速率为4Mbps,采用与接收机相同速率,以实现相互通信;DS96F174/175ME芯片是为RS485通信协议设计的低电压电平转换芯片,将普通电平转换成485协议工作电平;FPGA核心控制芯片接收和发送485信号时,首先要经过一个光耦合器件进行电气性能隔离,光耦合器件选用HCPL‑5631,这两款光耦器件是由GaAsP发光二极管和一个集成的高增益光检测器构成的光电耦合器件,检测芯片输出是一个集电极开路的肖特基钳位晶体管,其内部屏蔽提供15千伏/μs的共模瞬态抗扰度;基于FPGA核心控制芯片实现的HDLC协议通信芯片包括发送和接收两个模块,发送端首先发送标志字0x7E,因为双方开机时间不同,为了避免丢失数据,标志字重复复数次,然后将待发送的并行数据进行并/串转换,同时系统自动完成CRC编码、“0”比特插入HDLC协议要求功能,再将处理后数据按同步串行传输方式发送;接收端接收同步串行数据,然后由系统自动完成标志字的检测、去“0”及CRC校验,在将同步串行数据转换成8位并行方式输出,整个系统采用同一个全局时钟;系统具有自动校准时间的功能;在没有接收到GPS信号时,系统中DS3231芯片会提供一个基准的时钟,当有GPS信号时,会对FPGA核心控制芯片和芯片时钟进行校时;对于DS3231的时钟控制与校准,都是在FPGA核心控制芯片中完成,实现控制ds3231芯片的时序,能够将校时时间由并行时间转换为串行时间写入ds3231中,并读取ds3231时间,由串行数据转化为并行数据;步骤三:DSP核心控制芯片写入主函数,控制系统流程;结合DSP核心控制芯片的定点、浮点运算能力强,代码开发简单的特点,针对本系统的实际应用指标要求,对于预存数据的装订比较、对接收数据的运算分析工作均在DSP核心控制芯片中完成;相比较与FPGA核心控制芯片,由DSP核心控制芯片完成此功能使得程序的可读性更强,系统修改、升级、适用性更加广泛;DSP核心控制芯片主要功能是实现与PC通信,检测PC端测控软件相应命令;测控单元DSP核心控制芯片程序的工作流程大致如下所示:a.上电启动DSP核心控制芯片;b.初始化DSP核心控制芯片及FPGA核心控制芯片各寄存器,查找FLASH数据尾地址,作为本次写入数据的起始地址;c.进入主函数循环,循环检测是否有来自PC机下发的命令以及由SCI口发送的指令;d.检测到PC机发送查找最新位置命令之后,则查询最新一次写入FLASH的首位地址并将该信息上传至PC机;e.检测到PC机发送读取数据命令之后,则读取FLASH芯片中相应地址的数据并上传至PC机;f.检测到PC机发送擦除FLASH命令之后,则擦除FLASH芯片中的所有数据,并将数据起始地址设为FLASH芯片首地址,完成擦除操作后向PC机发送擦除完毕命令;g.查询SCI接口是否有数据,若有,则获取数据;h.根据SCI发送的数据帧命令字分类处理处理数据帧,提取其中有效数据存储于FLASH芯片中;i.测控单元断电,跳出主循环,程序结束;首先,主函数完成对DSP核心控制芯片内部及其外接器件的初始化配置,包括FLASH、GPS和SCI接口器件,其中DSP核心控制芯片刚上电时,对FLASH存储芯片先进行一次遍历,查询得到数据结尾并记录,作为后续写入数据的起始地址,同时读取坏块地址并记录;将GPS数据清零,并重置GPS标志,读取外部拨码设置并相应设定GPS更新频率;初始化SCI接口则包括设置数据停止位及异步传输方式、读取外部拨码设置并相应设置数据传输波特率;步骤四:FPGA核心控制芯片控制FLASH存储芯片实现数据存储;FLASH存储芯片控制在PFGA核心控制芯片端的FLASH模块中实现;在此模块中,FLASH控制函数主要包括读取FLASH函数、写入FLASH函数、擦除FLASH函数以及查找FLASH坏块函数;在主函数中通过调用这些函数来完成对应功能;其中读取FLASH函数和写入FLASH函数分别通过配置FLASH读写寄存器之后将数据读取或写入FLASH存储芯片中;而擦除FLASH函数则完成将FLASH存储芯片中指定块地址的数据进行擦除的功能;查找FLASH坏块函数则通过遍历FLASH存储芯片的坏块标志来查找FLASH中坏块并记录其地址;步骤五:PC端测控软件实现数据读取分析;数据记录系统在未连接PC的情况下完成数据记录,之后通过USB接口与PC连接,通过PC端测控软件将数据存储为Excel格式的表格,便于对数据进行分析。
地址 100191 北京市海淀区学院路37号