CN109308031A - 一种基于fpga电路的参数配置方法、配置装置及存储空间 - Google Patents
一种基于fpga电路的参数配置方法、配置装置及存储空间 Download PDFInfo
- Publication number
- CN109308031A CN109308031A CN201710629375.8A CN201710629375A CN109308031A CN 109308031 A CN109308031 A CN 109308031A CN 201710629375 A CN201710629375 A CN 201710629375A CN 109308031 A CN109308031 A CN 109308031A
- Authority
- CN
- China
- Prior art keywords
- parameter
- debugged
- fpga
- file
- fpga circuitry
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/04—Programme control other than numerical control, i.e. in sequence controllers or logic controllers
- G05B19/042—Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
- G05B19/0423—Input/output
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/20—Pc systems
- G05B2219/25—Pc structure of the system
- G05B2219/25257—Microcontroller
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Automation & Control Theory (AREA)
- Stored Programmes (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明提供一种基于FPGA电路的参数配置方法,包括如下步骤:(A)导入第一mcs文件;(B)将调试值赋值给待调试参数;(C)把第一mcs文件复制,得到第二mcs文件,将参数数据段写入第二mcs文件;(D)将第二mcs文件烧录到PROM配置芯片中;(E)将PROM配置芯片中的数据加载到FPGA电路中,对FPGA控制程序中的待调试参数进行更新;(F)执行FPGA控制程序,并判断A/D转换电路的输出信号是否正常。本发明还提供一种基于FPGA电路的参数配置装置及存储空间。本发明无需修改原始的FPGA控制程序代码,省去多次重复编译和综合过程,具有人机交互良好,自动化程度高,调试效率高的特点。
Description
技术领域
本发明涉及一种光纤陀螺的调试参数配置方法,属于光纤陀螺的调试领域。
背景技术
光纤陀螺是基于萨格奈克(Sagnac)效应工作的一种角速度传感器。它具有广阔应用前景的全固态惯性仪表,它与传统的机械陀螺有所不同,摆脱了转子陀螺的范畴,具有寿命长、质量轻、体积小、功耗小、测量范围大、可快速启动、结构设计灵活等特点。光纤陀螺因其潜在的精度替代了大部分传统的机电陀螺在海、陆、空、天领域的应用,并且起到了关键作用。
光纤陀螺仪的各项配置参数直接决定最终的性能指标,因此,在陀螺装配完成后都需要对每一个陀螺的时间常数、半波电压等特征参数进行调试和配置,以保证陀螺处于最佳的工作状态。
为了完成光纤陀螺的参数配置,一般是在FPGA工程中将每个陀螺的实际特征值直接赋值给对应的程序参数后,进行编译、综合,得到该陀螺的mcs文件,然后将该配置文件在FPGA开发软件提供的iMPACT工具中通过JTAG接口下载到PROM配置芯片(如XCF04S)中,完成陀螺的程序和参数的配置,FPGA上电后通过其专用的串行程序加载接口载入控制程序并执行,FPGA和PROM与计算机的接口如图1所示。
该方法的FPGA软件代码直接呈现在操作人员面前,容易被复制或拷贝等,软件的保密性差;在修改程序参数的调试过程中有可能因为误操作在程序代码中输入错误的字符,破坏软件结构,导致软件出现各种编译错误,软件的安全性差;目前常用的FPGA开发软件完成一次程序的编译、综合需要很长时间,一个陀螺需要对多个参数进行调试,需要进行多次的编译和综合操作,这就需要大量的时间来等待该编译和综合过程,陀螺参数配置的时间很长,产品调试效率低。如果需要调试的陀螺的数量较大,则花费的时间更长,对产品的生产过程造成极大影响。编译综合所需要的时间较长,一般一次编译的时间在5分钟以上。
现有技术中,也有在电路上设计一个小型的MCU电路通过串行通信接口(UART或SPI)与FPGA相连来实现参数配置的,如图2所示。该方法中,陀螺的所有参数存储在MCU的内部存储器中,系统上电后,FPGA首先与MCU进行数据通信,获得相关的控制参数,然后对各参数进行初始化配置。该方法由于额外MCU电路的引入,导致电路结构变复杂,电路成本增加,电路板面积和尺寸增大,电路的故障点增加,对系统的可靠性将产生不利影响。
发明内容
本发明要解决的问题是针对目前光纤陀螺参数配置中程序编译综合时间较长而造成产品调试效率低的问题,提供一种基于FPGA电路的参数配置方法。
为解决上述技术问题,本发明采用的技术方案是:一种基于FPGA电路的参数配置方法,FPGA电路的输入端通过A/D转换电路与受控对象连接,FPGA电路的输出端通过D/A转换电路与受控对象连接,所述FPGA电路用于控制所述受控对象;PROM配置芯片与FPGA电路连接,PROM配置芯片的时钟信号由FPGA电路提供,所述基于FPGA电路的参数配置方法包括如下步骤:
(A)在上位机中,导入第一mcs文件,所述第一mcs文件由包含待调试参数的初始值的受控对象的FPGA控制程序编译得到;
(B)将调试值赋值给待调试参数;
(C)在上位机中,把第一mcs文件复制,得到第二mcs文件,将参数数据段写入第二mcs文件,所述参数数据段包括参数标识符和步骤(B)中的待调试参数,所述参数标识符在存储空间的起始地址为所述第二mcs文件在存储空间的结束地址的下一个地址,所述待调试参数在存储空间的起始地址为所述参数标识符在存储空间的结束地址的下一个地址;
(D)FPGA电路和受控对象上电,通过JTAG接口将步骤(C)中的第二mcs文件从上位机烧录到PROM配置芯片中,然后关闭电源;
(E)FPGA电路和受控对象上电,FPGA电路读取来自于PROM配置芯片的数据,利用待调试参数的值对FPGA控制程序中的待调试参数进行更新;
(F)FPGA电路和受控对象执行FPGA控制程序,并判断与所述待调试参数对应的A/D转换电路的输出信号是否正常,若判断结果为是,则将更新后的待调试参数作为固定值,且跳转到步骤(A),否则,不保存待调试参数,且跳转到步骤(A),若所有待调试参数均调试完成,则本方法结束。
本专利中,更改待调试参数的值后,无需再次进行编译,仅需要在上位机软件中为待调试参数赋值,将参数数据段写入第二mcs文件,即可实现对待调试参数的修改,无需再次对FPGA程序进行编译,因此大大节省了程序编译运行的时间,提高了效率。利用光纤陀螺系统中FPGA电路现有的PROM配置芯片保存陀螺的调试参数,不需要额外的电路开销,在FPGA电路中增加一个IO接口与串行程序加载接口中的CCLK信号相连,用于提供参数加载时钟即可。FPGA电路读取来自于PROM配置芯片的数据,即为将PROM配置芯片中的数据加载到FPGA电路中。第一mcs文件由包含待调试参数的初始值的受控对象的FPGA控制程序编译得到。第一mcs文件包含原始的FPGA控制程序代码。每次修改待调试参数的值时,仅需导入第一mcs文件即可,无需修改原始的FPGA控制程序代码,保证了FPGA软件的保密性和安全性。第一mcs文件中包含FPGA控制程序,而步骤(C)中的第二mcs文件是由第一mcs文件复制并写入参数数据段得到。因此,FPGA电路读取来自于PROM配置芯片的数据后,即读取了FPGA控制程序和参数数据段,即可利用待调试参数的值对FPGA控制程序中的待调试参数进行更新。
上述技术方案中,所述受控对象由光源、光电探测器、耦合器、Y波导、光纤环构成,所述FPGA电路的输入端通过A/D转换电路与光电探测器的输出端连接,FPGA电路的输出端通过D/A转换电路与Y波导连接。
上述技术方案中,所述步骤(C)包括如下子步骤:
(C-1)利用CopyFile函数把第一mcs文件复制,得到第二mcs文件;
(C-2)利用file.Open函数打开所述第二mcs文件;
(C-3)利用file.Seek函数跳转到第二mcs文件的结束地址,优选利用mcs文件解析函数计算得到第二mcs文件的结束地址;
(C-4)从第二mcs文件的结束地址的下一个地址开始,利用file.WriteString函数写入参数数据段;
(C-5)写入完成后,调用file.Close函数关闭第二mcs文件。
上述技术方案中,所述步骤(C-4)中,从所述第二mcs文件的结束地址的下一个地址开始,利用file.WriteString函数依次写入3组重复的参数数据段,所述第一组参数数据段的参数标识符在存储空间的起始地址为所述第二mcs文件在存储空间的结束地址的下一个地址。
上述技术方案中,所述步骤(E)包括如下子步骤:
(E-1)FPGA电路和受控对象上电,对FPGA电路进行初始化;
(E-2)FPGA电路读取来自于PROM配置芯片的数据,若读取到所述参数标识符,则跳转到步骤(E-3);
(E-3)读取待调试参数的值,待调试参数的值读取完毕后,对待调试参数的值进行异或校验,若检验结果正确,则得到一组待调试参数的值,跳转到步骤(E-2);
(E-4)完成3组待调试参数的读取后,对3组待调试参数的值进行一致性对比,若3组待调试参数的值一致,则输出参数有效信号;
(E-5)FPGA控制程序在收到参数有效信号后,利用待调试参数的值对FPGA控制程序中的待调试参数进行更新。
上述技术方案中,所述步骤(A)中,所述待调试参数包括采样延迟和/或时间常数和/或半波电压和/或标度系数和/或调制模式和/或调制极性和/或半波电压。
上述技术方案中,所述步骤(A)、(B)、(C)均在上位机的参数配置软件中进行,所述参数配置软件包括人机界面,所述步骤(B)中,在所述参数配置软件的人机界面中将调试值赋值给待调试参数。
本发明还提供一种实现上述任一项所述的基于FPGA电路的参数配置方法的参数配置装置,包括上位机、FPGA电路、PROM配置芯片、A/D转换电路、D/A转换电路、受控对象;FPGA电路的输入端通过A/D转换电路与受控对象连接,FPGA电路的输出端通过D/A转换电路与受控对象连接,所述FPGA电路用于控制所述受控对象;PROM配置芯片与FPGA电路连接,PROM配置芯片的时钟信号由FPGA电路提供。
本发明还提供一种存储空间,所述存储空间用于存储第二mcs文件和参数数据段,所述参数数据段包括参数标识符和待调试参数,所述参数标识符在存储空间中的起始地址为所述第二mcs文件在存储空间的结束地址的下一个地址,所述待调试参数在存储空间的起始地址为所述参数标识符在存储空间的结束地址的下一个地址。
本发明具有的优点和积极效果是:集成参数配置采用现有的PROM配置芯片存储陀螺参数,不需要额外的MCU电路,不会改变数字解调电路的结构和功能;也不需要对FPGA工程进行编译,软件的一致性很高,保密性强;生成新的FPGA配置文件的时间很短,陀螺调试时间短,调试效率高。本发明采用自动化上位机软件进行参数配置,不需要修改原始的FPGA控制程序代码,不同的陀螺产品采用同一个编译后的原始的第一mcs文件,保证了FPGA软件的保密性和安全性,省去了多次重复的FPGA工程编译和综合过程,可以节省大量的等待时间,具有人机交互良好,自动化程度高,调试效率高的特点。本发明采用参数载入模块实现的参数载入方法能快速完成陀螺调试参数的加载和FPGA工程的初始化,加载速度可达30Mbps,比UART或SPI通信的速度(最高3Mbps)要快得多,降低FPGA控制程序的启动时间。编译时间大大减少。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明的一种实施例的FPGA和PROM与计算机的接口;
图2是现有的MCU与FPGA的串行通信接口;
图3是本发明的一种实施例的FPGA电路与PROM配置芯片的电路原理图;
图4是本发明的一种实施例的参数配置过程的流程图;
图5是本发明的一种实施例的参数配置软件界面;
图6是本发明的一种实施例的新的mcs文件的数据分布;
图7是本发明的一种实施例的FPGA软件参数加载工作流程图;
图8是本发明的一种实施例的参数载入过程的状态转换图;
图9是本发明的一种实施例的基于FPGA电路的参数配置装置的结构示意图;
图10是本发明的一种实施例的基于FPGA电路的参数配置方法的流程示意图。
图中,1、FPGA电路,2、PROM配置芯片,3、A/D转换电路,4、D/A转换电路,51、光源,52、光电探测器,53、耦合器,54、Y波导,55、光纤环,10、上位机。
具体实施方式
下面将结合本申请的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
实施例
如图1—图10所示,一种基于FPGA电路的参数配置方法,FPGA电路1的输入端通过A/D转换电路3与受控对象连接,FPGA电路1的输出端通过D/A转换电路4与受控对象连接,所述FPGA电路1用于控制所述受控对象;PROM配置芯片2与FPGA电路1连接,PROM配置芯片2的时钟信号由FPGA电路1提供,利用现有的PROM配置芯片2保存陀螺的调试参数。本发明中,光纤陀螺即为受控对象。
所述基于FPGA电路的参数配置方法包括如下步骤:
(A)在上位机10中,打开参数配置软件,导入第一mcs文件,所述第一mcs文件由包含待调试参数的初始值的受控对象的FPGA控制程序编译得到;将初始值赋给FPGA控制程序的待调试参数,FPGA控制程序设计好后产生第一mcs文件。所述第一mcs文件由原始控制程序生成,原始的第一mcs文件是通过FPGA编译工具产生的。在生成第一mcs文件的FPGA控制程序中,只有FPGA控制程序和待调试参数的初始值,该初始值可能与光纤陀螺的技术参数不匹配。原始的第一mcs程序文件是一个通用的程序,可以通过编译生成所有光纤陀螺的第一mcs文件,但每个光纤陀螺的参数是不同的,需要对待调试参数进行调试后进行匹配,若待调试参数的值不正确,则光纤陀螺不能正常工作。
(B)在人机界面的对应参数位置,将调试值赋值给待调试参数;在软件中的待调试参数中设置一个调试数据,点击参数配置按钮,开始进行步骤(C)中的参数配置过程。
(C)在上位机10中,将第一数据格式的参数数据段写入第二mcs文件所述参数数据段包括参数标识符和步骤(B)中的所述待调试参数,所述参数标识符在存储空间的起始地址为所述第一mcs文件在存储空间的结束地址的下一个地址,所述待调试参数在存储空间的起始地址为所述参数标识符在存储空间的结束地址的下一个地址,所述第一数据格式为mcs文件的数据格式,参数配置过程的流程图如图4所示。
所述步骤(C)包括如下子步骤:
(C-1)利用CopyFile函数把第一mcs文件复制,得到第二mcs文件;
(C-2)利用file.Open函数打开所述第二mcs文件;
(C-3)利用file.Seek函数跳转到第二mcs文件的结束地址,优选利用mcs文件解析函数计算得到第二mcs文件的结束地址;
(C-4)从第二mcs文件的结束地址的下一个地址开始,利用file.WriteString函数写入第一数据格式的参数数据段;
(C-5)写入完成后,调用file.Close函数关闭第二mcs文件。
所述步骤(C-4)中,从所述第二mcs文件的结束地址的下一个地址开始,利用file.WriteString函数依次写入3组重复的参数数据段,所述第一组参数数据段的参数标识符在存储空间的起始地址为所述第二mcs文件在存储空间的结束地址的下一个地址。第二mcs文件由第一mcs文件复制得到。3组重复的参数数据段依次为第一组参数数据段、第二组参数数据段。如图6所示,标识符0、参数数据0构成第一组参数数据段,标识符1、参数数据1构成第二组参数数据段,标识符2、参数数据2构成第三组参数数据段,其中,标识符0、标识符1、标识符2为相同的标识符0x8F9FAFBF,参数数据0、参数数据1、参数数据2即为重复写入的3组相同的待调试参数的值。第一组数据段在存储空间中的起始地址为第二mcs文件在存储空间中的结束地址的下一个地址;第二组数据段在存储空间中的起始地址为第一组数据段在存储空间中的结束地址的下一个地址;第三组数据段在存储空间中的起始地址为第二组数据段在存储空间中的结束地址的下一个地址。在每一组参数数据段中,参数数据在存储空间中的起始地址均为标识符在存储空间中的结束地址的下一个地址。
本发明中,CopyFile函数、file.Open函数、file.Seek函数、file.WriteString函数、file.Close函数、file.WriteString函数均为VC软件中常用的编程函数,本领域人员可以理解。
本发明中,由于在步骤(C-4)中依次写入3组重复的参数数据段,因此在步骤(E)中,读取的也是3组重复的参数数据段。
其中,在步骤(C-3)中,调用file.Seek跳转到文件尾-300位置(mcs文件结束字符串长度加上一行数据长度为300)。
mcs文件以16进制进行数据存储,所以必须要进行16进制数据拼接转换,拼接为16进制是为减少参数的占用空间,二进制方便拼接16进制,也是拼接的常见处理方法。本发明中,按照标准的mcs文件的数据格式重复三次写入标识符(0x8F9FAFBF)和数据段。本发明中,通过参数编码函数将所有待调试参数转换为二进制格式后拼接成十六进制的数据格式,校验位通过异或校验格式设置(即采用异或校验格式设置校验码),由此得到一个参数数据段。
通过mcs文件解析函数对第二mcs文件进行解释,获得文件的结束标识和位置,在该位置按照标准的mcs文件格式重复三次写入标识符(0x8F9FAFBF)和数据段(待调试参数),得到一个新的包含程序数据(FPGA控制程序)和参数数据(更新后的待调试参数)的第二mcs文件。该存储空间的数据分布如图6所示。
校验位设置的方法为:数据异或计算后,在数据后面增加异或位,接收数据后,再比对异或位是否正确。
将编码后的待调试参数与第二mcs文件,软件流程如图4所示,软件界面如图5所示。
(D)FPGA电路1和受控对象上电,利用FPGA开发软件提供的iMPACT工具通过JTAG接口将步骤(C)中写入参数数据段的第二mcs文件从上位机10烧录到PROM配置芯片2中,然后关闭电源。
(E)FPGA电路1和受控对象上电,FPGA电路1读取来自于PROM配置芯片的数据,即将所述PROM配置芯片2中的数据加载到FPGA电路1中,利用待调试参数的值对FPGA控制程序中的待调试参数进行更新,关闭电源。
所述步骤(E)包括如下子步骤:
(E-1)FPGA电路1和受控对象上电,对FPGA电路1进行初始化;
(E-2)FPGA电路1读取来自于PROM配置芯片的数据,若读取到所述参数标识符,则跳转到步骤(E-3);
(E-3)读取待调试参数的值,待调试参数的值读取完毕后,对待调试参数的值进行异或校验,若检验结果正确,则得到一组待调试参数的值,跳转到步骤(E-2);
(E-4)完成3组待调试参数的读取后,对3组待调试参数的值进行一致性对比,若3组待调试参数的值一致,则输出参数有效信号;
(E-5)FPGA控制程序在收到参数有效信号后,按更新的待调试参数开始执行FPGA控制程序。
FPGA上电后,通过其专用的串行程序加载接口载入控制程序,执行参数载入过程,如图8所示。块通过增加的IO端口向串行程序加载接口的CCLK信号发送时钟信号,在该时钟信号的驱动下从数据线上读取配置在PROM配置芯片2中的参数数据段,FPGA软件参数加载工作流程如图7所示。
在FPGA电路1中增加一个IO接口与串行程序加载接口中的CCLK信号相连,如图3所示,用于提供参数加载时钟。
光纤陀螺重新上电后,FPGA控制程序按更新后的待调试参数执行程序,确认该更新后的待调试参数是否与光纤陀螺匹配,若不匹配,则重复步骤,直到待调试参数与光纤陀螺匹配,完成一项待调试参数的调试与配置。
在FPGA软件工程中设计一个参数载入模块,用于加载配置在PROM配置芯片2中的光纤陀螺的待调试参数,即加载参数数据段。
参数载入模块采用状态机设计,由复位状态、同步状态(S1)、激活状态(S2)、参数载入状态(S3)和参数更新状态(S4)组成,状态转换如图8所示。
FPGA电路和受控对象上电后,在系统时钟的驱动下,首先进入复位状态,开始读取PROM配置芯片2的数据,进入同步状态(S1),在数据中识别到标识符后进入激活状态(S2),开始读取待调试参数,待调试参数读取完毕后进入参数载入状态(S3),对待调试参数进行异或校验得到一组待调试参数的值,再次进入同步状态重复上述状态转换完成3组待调试参数的读取;对3组待调试参数进行一致性对比,若3组待调试参数一致,说明发送的重复的3组待调试参数的接收正常,通过一致性对比后进入参数更新状态(S4),完成待调试参数的更新,即利用待调试参数的值对FPGA控制程序中的待调试参数进行更新。
待调试参数更新后,根据各项待调试参数在参数数据段中的位置和字长进行数据译码,得到FPGA控制程序中的每一个参数的真实值,输出参数有效信号。FPGA控制程序在收到参数有效信号后使能其它功能模块按正确的待调试参数开始执行更新待调试参数后的FPGA控制程序。
(F)FPGA电路1和受控对象上电,执行FPGA控制程序,并判断与所述待调试参数对应的A/D转换电路3的输出信号是否正常,若判断结果为是,则将更新后的待调试参数作为固定值,且跳转到步骤(A),否则,不保存待调试参数,且跳转到步骤(A),若所有待调试参数均调试完成,且A/D转换电路3的输出信号正常,则本方法结束。
若待调试参数为时间常数,则时间常数不匹配时光纤陀螺到达AD电路前端的信号为调宽或调窄方波,时间常数匹配时才能出现标准尖峰状梳状波。在步骤(F)中,判断时间常数对应的A/D转换电路3的输出信号是否正常,即为判断与A/D转换电路3的输出信号是否为标准尖峰状梳状波。
若待调试参数为半波电压,则半波电压不匹配时光纤陀螺到达AD电路前端的信号在常规梳状信号的平坦区域幅值会大于或者小于复位梳状信号的平坦区域幅值,匹配时两者才能相等。在步骤(F)中,判断半波电压对应的A/D转换电路3的输出信号是否正常,即为判断常规梳状信号的平坦区域幅值是否等于复位梳状信号的平坦区域幅值。
待调试参数调试好之后,待调试参数保持不变,更换一个待调试参数,按步骤(B)-(F)完成所有参数的调试与配置。
若所有待调试参数均调试完成,且A/D转换电路的输出信号正常,则本方法结束。
所述受控对象为光纤陀螺的电路结构。所述受控对象由光源51、光电探测器52、耦合器53、Y波导54、光纤环55构成,所述FPGA电路1的输入端通过A/D转换电路3与光电探测器52的输出端连接,输出端通过D/A转换电路4与Y波导54连接。
所述步骤(A)中,所述待调试参数包括采样延迟和/或时间常数和/或半波电压和/或标度系数和/或调制模式和/或调制极性和/或半波电压。
所述步骤(A)、(B)、(C)均在上位机10的参数配置软件中进行,所述参数配置软件包括人机界面,所述步骤(B)中,在所述参数配置软件的人机界面中将调试值赋值给待调试参数。
图4所示为步骤(A)-(C)的流程示意图。图6所示为存储空间的结构示意图。图7为步骤(E)和(F)的部分流程的示意图。
本发明还提供一种基于FPGA电路的参数配置装置,包括上位机10、FPGA电路1、PROM配置芯片2、A/D转换电路3、D/A转换电路4、受控对象;FPGA电路1的输入端通过A/D转换电路3与受控对象连接,FPGA电路1的输出端通过D/A转换电路4与受控对象连接,所述FPGA电路1用于控制所述受控对象;PROM配置芯片2与FPGA电路1连接,PROM配置芯片2的时钟信号由FPGA电路1提供。
本发明的基于FPGA电路的参数配置装置包括:
上位机10:用于导入第一mcs文件,把第一mcs文件复制,得到第二mcs文件,将参数数据段写入第二mcs文件,将步骤第二mcs文件从上位机10烧录到PROM配置芯片2中,所述参数数据段包括参数标识符和步骤中的待调试参数,所述参数标识符在存储空间的起始地址为所述第二mcs文件在存储空间的结束地址的下一个地址,所述待调试参数在存储空间的起始地址为所述参数标识符在存储空间的结束地址的下一个地址;
PROM配置芯片2:用于烧录第二mcs文件,并将第二mcs文件加载到FPGA电路1;
FPGA电路1:用于读取来自于PROM配置芯片2的数据,执行FPGA控制程序,并判断与所述待调试参数对应的A/D转换电路3的输出信号是否正常。
本发明还提供一种存储空间,所述存储空间用于存储第二mcs文件和参数数据段,所述参数数据段包括参数标识符和待调试参数,所述参数标识符的起始地址为所述第二mcs文件的结束地址的下一个地址,所述待调试参数的起始地址为所述参数标识符的结束地址的下一个地址。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
以上对本发明的实施例进行了详细说明,但所述内容仅为本发明的较佳实施例,不能被认为用于限定本发明的实施范围。凡依本发明范围所作的均等变化与改进等,均应仍归属于本专利涵盖范围之内。
Claims (9)
1.一种基于FPGA电路的参数配置方法,其特征在于:FPGA电路(1)的输入端通过A/D转换电路(3)与受控对象连接,FPGA电路(1)的输出端通过D/A转换电路(4)与受控对象连接,所述FPGA电路(1)用于控制所述受控对象;PROM配置芯片(2)与FPGA电路(1)连接,PROM配置芯片(2)的时钟信号由FPGA电路(1)提供,所述基于FPGA电路的参数配置方法包括如下步骤:
(A)在上位机(10)中,导入第一mcs文件,所述第一mcs文件由包含待调试参数的初始值的受控对象的FPGA控制程序编译得到;
(B)将调试值赋值给待调试参数;
(C)在上位机(10)中,把第一mcs文件复制,得到第二mcs文件,将参数数据段写入第二mcs文件,所述参数数据段包括参数标识符和步骤(B)中的待调试参数,所述参数标识符在存储空间的起始地址为所述第二mcs文件在存储空间的结束地址的下一个地址,所述待调试参数在存储空间的起始地址为所述参数标识符在存储空间的结束地址的下一个地址;
(D)FPGA电路(1)和受控对象上电,通过JTAG接口将步骤(C)中的第二mcs文件从上位机(10)烧录到PROM配置芯片(2)中,然后关闭电源;
(E)FPGA电路(1)和受控对象上电,FPGA电路(1)读取来自于PROM配置芯片(2)的数据,利用待调试参数的值对FPGA控制程序中的待调试参数进行更新;
(F)FPGA电路(1)和受控对象上电,执行FPGA控制程序,并判断与所述待调试参数对应的A/D转换电路(3)的输出信号是否正常,若判断结果为是,则将更新后的待调试参数作为固定值,且跳转到步骤(A),否则,不保存待调试参数,且跳转到步骤(A),若所有待调试参数均调试完成,则本方法结束。
2.根据权利要求1所述的基于FPGA电路的参数配置方法,其特征在于:所述受控对象由光源(51)、光电探测器(52)、耦合器(53)、Y波导(54)、光纤环(55)构成,所述FPGA电路(1)的输入端通过A/D转换电路(3)与光电探测器(52)的输出端连接,FPGA电路(1)的输出端通过D/A转换电路(4)与Y波导(54)连接。
3.根据权利要求2所述的基于FPGA电路的参数配置方法,其特征在于:所述步骤(C)包括如下子步骤:
(C-1)利用CopyFile函数把第一mcs文件复制,得到第二mcs文件;
(C-2)利用file.Open函数打开所述第二mcs文件;
(C-3)利用file.Seek函数跳转到第二mcs文件的结束地址,优选利用mcs文件解析函数计算得到第二mcs文件的结束地址;
(C-4)从第二mcs文件的结束地址的下一个地址开始,利用file.WriteString函数写入参数数据段;
(C-5)写入完成后,调用file.Close函数关闭第二mcs文件。
4.根据权利要求2所述的基于FPGA电路的参数配置方法,其特征在于:所述步骤(C-4)中,从所述第二mcs文件的结束地址的下一个地址开始,利用file.WriteString函数依次连续写入3组重复的参数数据段,所述第一组参数数据段的参数标识符在存储空间的起始地址为所述第二mcs文件在存储空间的结束地址的下一个地址。
5.根据权利要求4所述的基于FPGA电路的参数配置方法,其特征在于:所述步骤(E)包括如下子步骤:
(E-1)FPGA电路(1)和受控对象上电,对FPGA电路(1)进行初始化;
(E-2)FPGA电路(1)读取来自于PROM配置芯片(2)的数据,若读取到参数标识符,则跳转到步骤(E-3);
(E-3)读取待调试参数的值,待调试参数的值读取完毕后,对待调试参数的值进行异或校验,若检验结果正确,则得到一组待调试参数的值,跳转到步骤(E-2);
(E-4)完成3组待调试参数的读取后,对3组待调试参数的值进行一致性对比,若3组待调试参数的值一致,则输出参数有效信号;
(E-5)FPGA控制程序在收到参数有效信号后,利用待调试参数的值对FPGA控制程序中的待调试参数进行更新。
6.根据权利要求1所述的基于FPGA电路的参数配置方法,其特征在于:所述步骤(A)中,所述待调试参数包括采样延迟和/或时间常数和/或半波电压和/或标度系数和/或调制模式和/或调制极性和/或半波电压。
7.根据权利要求1所述的基于FPGA电路的参数配置方法,其特征在于:所述步骤(A)、(B)、(C)均在上位机(10)的参数配置软件中进行,所述参数配置软件包括人机界面,所述步骤(B)中,在所述参数配置软件的人机界面中将调试值赋值给待调试参数。
8.一种实现权利要求1-7中任一项所述的基于FPGA电路的参数配置方法的参数配置装置,其特征在于:包括上位机(10)、FPGA电路(1)、PROM配置芯片(2)、A/D转换电路(3)、D/A转换电路(4)、受控对象;FPGA电路(1)的输入端通过A/D转换电路(3)与受控对象连接,FPGA电路(1)的输出端通过D/A转换电路(4)与受控对象连接,所述FPGA电路(1)用于控制所述受控对象;PROM配置芯片(2)与FPGA电路(1)连接,PROM配置芯片(2)的时钟信号由FPGA电路(1)提供。
9.一种存储空间,其特征在于:所述存储空间用于存储第二mcs文件和参数数据段,所述参数数据段包括参数标识符和待调试参数,所述参数标识符的起始地址为所述第二mcs文件的结束地址的下一个地址,所述待调试参数的起始地址为所述参数标识符的结束地址的下一个地址。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710629375.8A CN109308031B (zh) | 2017-07-28 | 2017-07-28 | 一种基于fpga电路的参数配置方法、配置装置及存储空间 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710629375.8A CN109308031B (zh) | 2017-07-28 | 2017-07-28 | 一种基于fpga电路的参数配置方法、配置装置及存储空间 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109308031A true CN109308031A (zh) | 2019-02-05 |
CN109308031B CN109308031B (zh) | 2021-07-23 |
Family
ID=65205057
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710629375.8A Active CN109308031B (zh) | 2017-07-28 | 2017-07-28 | 一种基于fpga电路的参数配置方法、配置装置及存储空间 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109308031B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111123084A (zh) * | 2019-12-11 | 2020-05-08 | 中国电子科技集团公司第二十研究所 | 一种基于tcl语言的数字电路快速测试方法 |
CN114676005A (zh) * | 2022-03-17 | 2022-06-28 | 杭州电子科技大学 | 基于jtag的fpga图像分类加速器测试方法及系统 |
CN114676005B (zh) * | 2022-03-17 | 2024-05-14 | 杭州电子科技大学 | 基于jtag的fpga图像分类加速器测试方法及系统 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060132211A1 (en) * | 2004-11-29 | 2006-06-22 | Fong Luk | Control adjustable device configurations to induce parameter variations to control parameter skews |
CN201549234U (zh) * | 2009-07-23 | 2010-08-11 | 西安空间无线电技术研究所 | 一种基于sram型fpga配置、刷新一体化装置 |
CN102253848A (zh) * | 2011-05-31 | 2011-11-23 | 国营红峰机械厂 | 光纤陀螺fpga逻辑的自动批量生成方法 |
CN102609286A (zh) * | 2012-02-10 | 2012-07-25 | 株洲南车时代电气股份有限公司 | 一种基于处理器控制的fpga配置程序远程更新系统及其方法 |
CN103744713A (zh) * | 2014-02-11 | 2014-04-23 | 哈尔滨工业大学 | 基于fpga的嵌入式双核系统的自主配置方法 |
CN105955783A (zh) * | 2016-05-09 | 2016-09-21 | 浙江大学 | 一种基于fpga控制的远程fpga逻辑代码的下载方法 |
CN106598650A (zh) * | 2016-11-25 | 2017-04-26 | 积成电子股份有限公司 | 基于光纤通信的fpga程序在线升级的装置及方法 |
CN106897097A (zh) * | 2017-02-27 | 2017-06-27 | 深圳市风云实业有限公司 | 一种用epld加载多片fpga的方法及系统 |
-
2017
- 2017-07-28 CN CN201710629375.8A patent/CN109308031B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060132211A1 (en) * | 2004-11-29 | 2006-06-22 | Fong Luk | Control adjustable device configurations to induce parameter variations to control parameter skews |
CN201549234U (zh) * | 2009-07-23 | 2010-08-11 | 西安空间无线电技术研究所 | 一种基于sram型fpga配置、刷新一体化装置 |
CN102253848A (zh) * | 2011-05-31 | 2011-11-23 | 国营红峰机械厂 | 光纤陀螺fpga逻辑的自动批量生成方法 |
CN102609286A (zh) * | 2012-02-10 | 2012-07-25 | 株洲南车时代电气股份有限公司 | 一种基于处理器控制的fpga配置程序远程更新系统及其方法 |
CN103744713A (zh) * | 2014-02-11 | 2014-04-23 | 哈尔滨工业大学 | 基于fpga的嵌入式双核系统的自主配置方法 |
CN105955783A (zh) * | 2016-05-09 | 2016-09-21 | 浙江大学 | 一种基于fpga控制的远程fpga逻辑代码的下载方法 |
CN106598650A (zh) * | 2016-11-25 | 2017-04-26 | 积成电子股份有限公司 | 基于光纤通信的fpga程序在线升级的装置及方法 |
CN106897097A (zh) * | 2017-02-27 | 2017-06-27 | 深圳市风云实业有限公司 | 一种用epld加载多片fpga的方法及系统 |
Non-Patent Citations (1)
Title |
---|
屈杰等: "基于网络和PowerPC系统的FPGA远程配置", 《无线电通信技术》 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111123084A (zh) * | 2019-12-11 | 2020-05-08 | 中国电子科技集团公司第二十研究所 | 一种基于tcl语言的数字电路快速测试方法 |
CN114676005A (zh) * | 2022-03-17 | 2022-06-28 | 杭州电子科技大学 | 基于jtag的fpga图像分类加速器测试方法及系统 |
CN114676005B (zh) * | 2022-03-17 | 2024-05-14 | 杭州电子科技大学 | 基于jtag的fpga图像分类加速器测试方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN109308031B (zh) | 2021-07-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102063324B (zh) | 一种实现自动化编程的方法及系统 | |
CN102375778B (zh) | 实现数字信号处理器自动测试的方法及系统 | |
CN108519889B (zh) | 一种基于jtag标准的fpga程序远程升级系统及方法 | |
CN107729233B (zh) | 一种控制器软件的仿真方法及装置 | |
CN101667134A (zh) | 一种构建编译系统的方法、一种编译系统及其构建装置 | |
CN110209419A (zh) | 一种基于can总线的嵌入式dsp设备升级方法及装置 | |
CN106293807A (zh) | 一种基于DSP的Flash芯片引导加载方法 | |
CN104267654A (zh) | 梯形图程序转换成指令表程序及其编译的方法与系统 | |
CN109542450B (zh) | 智能变电站过程层智能组件实现方法及装置 | |
CN105989894B (zh) | 一种一次性可编程存储器控制器、集成电路及程序烧写方法 | |
CN104461624A (zh) | 一种三维声波测井仪近探头测量模块的远程升级方法 | |
CN107729040A (zh) | 一种单片机的iap方法及系统 | |
CN109308031A (zh) | 一种基于fpga电路的参数配置方法、配置装置及存储空间 | |
CN108182079B (zh) | 一种基于串口的tms320c6748程序加载方法 | |
CN106325860A (zh) | 一种航天嵌入式软件接口数据的自动化维护方法 | |
CN102193860B (zh) | 微控制器在线调试电路及方法、微控制器 | |
CN104035757A (zh) | 基于MIPS处理器的u-boot移植的实现方法 | |
CN204791990U (zh) | 一种一次性可编程存储器控制器及集成电路 | |
CN111008101A (zh) | 一种risc-v处理器系统的调试验证平台及测试方法 | |
CN103678075A (zh) | 基于自动矢量生成技术的复杂微处理器测试方法 | |
CN102253875A (zh) | 基于PicoBlaze嵌入式软核处理器的FPGA逻辑模块调试与数据采集方法 | |
CN105867968A (zh) | 一种加载器及程序加载方法 | |
CN109542484A (zh) | 一种在线更新fpga配置芯片的方法及系统 | |
US7130787B1 (en) | Functional replicator of a specific integrated circuit and its use as an emulation device | |
CN106020918A (zh) | 电视软件编译方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |