发明名称 一种FPGA/CPLD 远程调试系统及方法
摘要 本发明涉及一种FPGA/CPLD远程调试系统及方法,通过在PC端上位机设置目标FPGA/CPLD型号,经互联网对目标FPGA/CPLD板级系统进行远程配置、激励加载和边界扫描,无需额外使用存储介质或配置芯片,实时完成目标FPGA/CPLD系统的远程升级、调试和维护。提升了调试效率,降低了维护成本,且兼顾简易性和高效性。
申请公布号 CN105718339A 申请公布日期 2016.06.29
申请号 CN201511030508.7 申请日期 2015.12.31
申请人 山东大学 发明人 王祖强;王子彤;由芸;朱苏雁
分类号 G06F11/22(2006.01)I;G06F13/10(2006.01)I 主分类号 G06F11/22(2006.01)I
代理机构 济南金迪知识产权代理有限公司 37219 代理人 杨树云
主权项 一种FPGA/CPLD远程调试系统,其特征在于,包括通过互联网连接的PC端上位机与硬件电路装置,所述PC端上位机包括流程控制模块及与所述流程控制模块分别连接的图形用户接口模块、网络参数设置模块、目标FPGA/CPLD参数设置模块、网络通信模块一、数据分析模块;所述硬件电路装置包括调试控制模块及与所述调试控制模块分别连接的网络通信模块二、参数更新模块、JTAG配置模块、模拟激励模块、边界扫描模块,所述硬件电路装置连接目标FPGA/CPLD板级系统;所述图形用户接口模块用于:根据目标FPGA/CPLD的型号及其所处的网络环境,以图形界面的方式引导调试者输入参数、指令集,将与目标FPGA/CPLD匹配的配置数据发送至流程控制模块;并对所述边界扫描模块输出的边界扫描结果输出显示;所述参数包括网络参数及目标FPGA/CPLD参数;所述网络参数包括硬件电路装置的IP地址、子网掩码、端口号、所在网络网关地址;所述目标FPGA/CPLD参数包括:目标FPGA/CPLD生产厂家、型号、模拟激励格式、边界扫描指令集格式、边界扫描链长度、边界扫描时钟频率;所述指令集包括:启动所述模拟激励模块的指令、启动边界扫描模块的指令、启动所述JTAG配置模块的指令及FPGA/CPLD边界扫描指令集,所述FPGA/CPLD边界扫描指令集包括:BYPASS指令、SAMPLE指令、EXTEST指令、ERASE指令、PROGRAM指令、VERIFY指令,BYPASS指令用于将目标FPGA/CPLD边界扫描链设置为旁路模式;SAMPLE指令用于在目标FPGA/CPLD正常工作时取出管脚信号;EXTEST指令用于获取目标FPGA/CPLD管脚输入信号;ERASE指令用于擦除目标FPGA/CPLD编程存储器中的配置数据;PROGRAM指令用于启动配置;VERIFY指令用于验证配置数据;所述网络参数设置模块用于:验证通过所述图形用户接口模块输入的参数中的网络参数的格式,通过验证后将其发送至所述流程控制模块,否则,重新输入网络参数;所述目标FPGA/CPLD参数设置模块用于:验证通过所述图形用户接口模块输入的参数中的目标FPGA/CPLD参数的格式,通过验证后将其发送至所述流程控制模块,否则,重新输入目标FPGA/CPLD参数;所述流程控制模块用于:发送网络参数、目标FPGA/CPLD参数、配置数据及所述指令集中的启动所述模拟激励模块的指令、启动边界扫描模块的指令、启动所述JTAG配置模块的指令、FPGA/CPLD边界扫描指令集至所述网络通信模块一;并接收到达响应及边界扫描结果;所述数据分析模块用于:根据调试者需求,对边界扫描结果进行选取以供分析;所述网络通信模块一用于:将验证通过后的网络参数、验证通过后的目标FPGA/CPLD参数、与目标FPGA/CPLD匹配的配置数据、所述指令集中的启动所述模拟激励模块的指令、启动边界扫描模块的指令、启动所述JTAG配置模块的指令、FPGA/CPLD边界扫描指令集通过互联网发送至所述硬件电路装置;接收到达指令集到达响应及边界扫描结果;所述参数更新模块用于:根据从PC端上位机接收到的网络参数、目标FPGA/CPLD参数更新响应数据参数;所述调试控制模块用于:响应PC端上位机发送的启动所述模拟激励模块的指令、启动边界扫描模块的指令、启动所述JTAG配置模块的指令,启动所述模拟激励模块、启动边界扫描模块、启动所述JTAG配置模块;所述模拟激励模块用于:模拟出目标FPGA/CPLD板级系统的管脚输入信号;输入所述模拟激励格式的激励信号至目标FPGA/CPLD板级系统,反馈完成模拟激励响应;所述边界扫描模块用于:根据从PC端上位机接收到的FPGA/CPLD边界扫描指令集,对目标FPGA/CPLD进行边界扫描,获取边界扫描结果;所述JTAG配置模块用于:按照JTAG的时序,将所述配置数据发送至目标FPGA/CPLD,完成配置,并反馈完成配置响应;所述网络通信模块二用于:实现硬件电路装置接入互联网;接收PC端上位机传来的参数、指令集、与目标FPGA/CPLD匹配的配置数据;发送指令集到达响应及边界扫描结果至PC端上位机;指令集到达响应包括完成配置响应及模拟激励响应。
地址 250199 山东省济南市历城区山大南路27号