CN105718339A - 一种fpga/cpld 远程调试系统及方法 - Google Patents
一种fpga/cpld 远程调试系统及方法 Download PDFInfo
- Publication number
- CN105718339A CN105718339A CN201511030508.7A CN201511030508A CN105718339A CN 105718339 A CN105718339 A CN 105718339A CN 201511030508 A CN201511030508 A CN 201511030508A CN 105718339 A CN105718339 A CN 105718339A
- Authority
- CN
- China
- Prior art keywords
- module
- cpld
- instruction
- parameter
- boundary scan
- 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
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/2294—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing by remote test
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/10—Program control for peripheral devices
- G06F13/102—Program control for peripheral devices where the programme performs an interfacing function, e.g. device driver
Abstract
本发明涉及一种FPGA/CPLD远程调试系统及方法,通过在PC端上位机设置目标FPGA/CPLD型号,经互联网对目标FPGA/CPLD板级系统进行远程配置、激励加载和边界扫描,无需额外使用存储介质或配置芯片,实时完成目标FPGA/CPLD系统的远程升级、调试和维护。提升了调试效率,降低了维护成本,且兼顾简易性和高效性。
Description
技术领域
本发明涉及一种FPGA/CPLD远程调试系统及方法,属于远程智能测控技术领域。
背景技术
目前,现场可编程门阵列/复杂可编程逻辑器件(FPGA/CPLD)因其资源丰富、使用灵活等优点,广泛应用于电子信息众多行业领域。通常对FPGA/CPLD的配置和调试需在现场借助PC完成。对于周围无法架设PC的狭小空间或人力不易到达的工作环境来说,对FPGA/CPLD系统进行升级维护将消耗巨大成本且效率较低。因此,若采用通过互联网远程对FPGA/CPLD系统进行配置与调试的方法,将有效降低维护成本,提升调试效率。
此外,在FPGA/CPLD实验教学中,若能实现实验仪器设备的网络化,使学生可以通过互联网远程对实验室内的FPGA/CPLD开发板进行操作使用,可以有效提升学生学习开发积极性,提高教学资源利用率,降低实验室建设维护成本。
目前,市面上用于FPGA/CPLD远程配置或调试的装置方法大多功能单一,如仅能完成远程配置功能;且结构冗余,需要用到专用USB转JTAG或并口转JTAG等芯片来完成边界扫描;普适性低,仅能完成特定型号的FPGA/CPLD边界扫描。
基于此,本发明提供了一种便捷高效的FPGA/CPLD远程调试系统及方法,可通过互联网对带有JTAG接口的FPGA/CPLD板级系统进行升级、调试和维护。
发明内容
针对现有技术的不足,本发明提供了一种FPGA/CPLD远程调试系统;
本发明还提供了利用上述FPGA/CPLD远程调试系统实现远程调试的方法;
本发明通过在PC端上位机设置目标FPGA/CPLD型号,经互联网对目标FPGA/CPLD板级系统进行远程配置、激励加载和边界扫描,无需额外使用存储介质或配置芯片,实时完成目标FPGA/CPLD系统的远程升级、调试和维护。提升了调试效率,降低了维护成本,且兼顾简易性和高效性。
本发明的技术方案为:
一种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端上位机;指令集到达响应包括完成配置响应及模拟激励响应。
根据本发明优选的,所述JTAG配置模块、所述边界扫描模块通过JTAG接口连接目标FPGA/CPLD板级系统,所述模拟激励模块通过通用IO口连接目标FPGA/CPLD板级系统。
利用上述FPGA/CPLD远程调试系统实现远程调试的方法,具体步骤包括:
(1)根据目标FPGA/CPLD的型号及其所处的网络环境,通过所述图形用户接口模块以图形界面的方式引导调试者输入所述参数、所述指令集;并将与目标FPGA/CPLD匹配的配置数据导入至所述图形用户接口模块;
(2)所述网络参数设置模块验证通过所述图形用户接口模块输入的参数中的网络参数的格式,通过验证后将其发送至所述流程控制模块,否则,返回步骤(1);
(3)所述目标FPGA/CPLD参数设置模块验证通过所述图形用户接口模块输入的参数中的目标FPGA/CPLD参数的格式,通过验证后将其发送至所述流程控制模块,否则,返回步骤(1);
(4)所述流程控制模块发送网络参数、目标FPGA/CPLD参数、配置数据及所述指令集中的启动所述模拟激励模块的指令、启动边界扫描模块的指令、启动所述JTAG配置模块的指令、FPGA/CPLD边界扫描指令集至所述网络通信模块一;
(5)所述网络通信模块一验证通过后的网络参数、验证通过后的目标FPGA/CPLD参数、与目标FPGA/CPLD匹配的配置数据、所述指令集中的启动所述模拟激励模块的指令、启动边界扫描模块的指令、启动所述JTAG配置模块的指令、FPGA/CPLD边界扫描指令集通过互联网发送至所述硬件电路装置;
(6)所述网络通信模块二接收PC端上位机传来的参数、指令集、与目标FPGA/CPLD匹配的配置数据;
(7)所述参数更新模块根据从PC端上位机接收到的网络参数、目标FPGA/CPLD参数更新响应数据参数;
(8)所述调试控制模块响应PC端上位机发送的启动所述模拟激励模块的指令、启动边界扫描模块的指令、启动所述JTAG配置模块的指令,启动所述模拟激励模块、启动边界扫描模块、启动所述JTAG配置模块;
(9)所述模拟激励模块模拟出目标FPGA/CPLD板级系统的管脚输入信号,并输入所述模拟激励格式的激励信号至目标FPGA/CPLD板级系统;所述边界扫描模块根据从PC端上位机接收到的FPGA/CPLD边界扫描指令集,对目标FPGA/CPLD进行边界扫描,获取边界扫描结果;所述JTAG配置模块按照JTAG的时序,将所述配置数据发送至目标FPGA/CPLD,完成配置,并反馈完成配置响应;
(10)所述网络通信模块二发送指令集到达响应及边界扫描结果至PC端上位机。
(11)所述网络通信模块一接收指令集到达响应及边界扫描结果;
(12)所述数据分析模块根据调试者需求,对边界扫描结果进行选取以供分析。
所述JTAG配置模块接收由PC端上位机程序发送来的配置数据,无需外部介质存储,直接实时通过所述调试控制模块解析后送入目标FPGA/CPLD进行配置,所述PC端上位机和所述调试控制模块通过软件方式握手,保证高效的配置速率和时序匹配。
本发明的有益效果为:
1、本发明将传统的目标FPGA/CPLD板级系统现场调试方法网络化,使得调试人员可通过互联网远程对目标FPGA/CPLD板级系统进行调试维护,提高了开发与调试效率,降低了维护成本。
2、本发明所述硬件电路装置稳定可靠,结构简明,通过参数设置,可完成对带有JTAG接口的不同型号的目标FPGA/CPLD板级系统的升级、调试和维护,兼具普适性。
附图说明
图1为本发明所述FPGA/CPLD远程调试系统的结构框图。
具体实施方式
下面结合说明书附图和实施例对本发明作进一步限定,但不限于此。
实施例1
一种FPGA/CPLD远程调试系统,包括通过互联网连接的PC端上位机与硬件电路装置,所述PC端上位机包括流程控制模块及与所述流程控制模块分别连接的图形用户接口模块、网络参数设置模块、目标FPGA/CPLD参数设置模块、网络通信模块一、数据分析模块;所述硬件电路装置包括调试控制模块及与所述调试控制模块分别连接的网络通信模块二、参数更新模块、JTAG配置模块、模拟激励模块、边界扫描模块,所述硬件电路装置连接目标FPGA/CPLD板级系统;如图1所示。
所述图形用户接口模块用于:根据目标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端上位机由C++语言编写,并通过MFC库编写界面,以供使用者进行网络参数输入、FPGA/CPLD边界扫描指令集设置、连接网络、发送配置数据、发送模拟激励信号、发送启动边界扫描模块的指令等操作。FPGA/CPLD边界扫描指令集所对应的具体JTAG信号值因目标FPGA/CPLD型号不同而异,需在PC端上位机参数设定完成后,经互联网传输给硬件电路装置的参数更新模块,完成所述目标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端上位机;指令集到达响应包括完成配置响应及模拟激励响应。
硬件电路装置由单片机、硬件协议栈网络芯片、缓冲器芯片及必要的外围电路构成。单片机驱动硬件协议栈网络芯片接入互联网,与PC端上位机建立连接,接收数据和指令;通过单片机通用IO口模拟出TCK、TDI、TMS、TDO四条边界扫描信号,并经过带有缓冲器的连接线与目标FPGA/CPLD板级系统的JTAG接口相连,由调试控制模块给出JTAG时序信号,完成配置并验证。模拟激励模块选取单片机若干引脚,按照参数设定的格式,如持续一定时间的高或低电平、特定频率的时钟信号等,采用总线方式与目标FPGA/CPLD管脚相连,以送入激励信号驱动目标FPGA/CPLD。之后由边界扫描模块对目标FPGA/CPLD进行边界扫描,并将结果读出,经网络送回PC端上位机显示分析。
实施例2
根据实施例1所述的一种FPGA/CPLD远程调试系统,其区别在于,所述JTAG配置模块、所述边界扫描模块通过JTAG接口连接目标FPGA/CPLD板级系统,所述模拟激励模块通过通用IO口连接目标FPGA/CPLD板级系统。
实施例3
利用实施例1或2所述的FPGA/CPLD远程调试系统实现远程调试的方法,具体步骤包括:
(1)根据目标FPGA/CPLD的型号及其所处的网络环境,通过所述图形用户接口模块以图形界面的方式引导调试者输入所述参数、所述指令集;并将与目标FPGA/CPLD匹配的配置数据导入至所述图形用户接口模块;
(2)所述网络参数设置模块验证通过所述图形用户接口模块输入的参数中的网络参数的格式,通过验证后将其发送至所述流程控制模块,否则,返回步骤(1);
(3)所述目标FPGA/CPLD参数设置模块验证通过所述图形用户接口模块输入的参数中的目标FPGA/CPLD参数的格式,通过验证后将其发送至所述流程控制模块,否则,返回步骤(1);
(4)所述流程控制模块发送网络参数、目标FPGA/CPLD参数、配置数据及所述指令集中的启动所述模拟激励模块的指令、启动边界扫描模块的指令、启动所述JTAG配置模块的指令、FPGA/CPLD边界扫描指令集至所述网络通信模块一;
(5)所述网络通信模块一验证通过后的网络参数、验证通过后的目标FPGA/CPLD参数、与目标FPGA/CPLD匹配的配置数据、所述指令集中的启动所述模拟激励模块的指令、启动边界扫描模块的指令、启动所述JTAG配置模块的指令、FPGA/CPLD边界扫描指令集通过互联网发送至所述硬件电路装置;
(6)所述网络通信模块二接收PC端上位机传来的参数、指令集、与目标FPGA/CPLD匹配的配置数据;
(7)所述参数更新模块根据从PC端上位机接收到的网络参数、目标FPGA/CPLD参数更新响应数据参数;
(8)所述调试控制模块响应PC端上位机发送的启动所述模拟激励模块的指令、启动边界扫描模块的指令、启动所述JTAG配置模块的指令,启动所述模拟激励模块、启动边界扫描模块、启动所述JTAG配置模块;
(9)所述模拟激励模块模拟出目标FPGA/CPLD板级系统的管脚输入信号,并输入所述模拟激励格式的激励信号至目标FPGA/CPLD板级系统;所述边界扫描模块根据从PC端上位机接收到的FPGA/CPLD边界扫描指令集,对目标FPGA/CPLD进行边界扫描,获取边界扫描结果;所述JTAG配置模块按照JTAG的时序,将所述配置数据发送至目标FPGA/CPLD,完成配置,并反馈完成配置响应;
(10)所述网络通信模块二发送指令集到达响应及边界扫描结果至PC端上位机。
(11)所述网络通信模块一接收指令集到达响应及边界扫描结果;
(12)所述数据分析模块根据调试者需求,对边界扫描结果进行选取以供分析。
与传统FPGA/CPLD调试方法相比,本发明方法打破了空间限制,可远程对目标FPGA/CPLD板级系统进行调试验证,且高效快捷。
Claims (3)
1.一种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端上位机;指令集到达响应包括完成配置响应及模拟激励响应。
2.根据权利要求1所述的一种FPGA/CPLD远程调试系统,其特征在于,所述JTAG配置模块、所述边界扫描模块通过JTAG接口连接目标FPGA/CPLD板级系统,所述模拟激励模块通过通用IO口连接目标FPGA/CPLD板级系统。
3.利用权利要求1或2所述的一种FPGA/CPLD远程调试系统实现远程调试的方法,其特征在于,具体步骤包括:
(1)根据目标FPGA/CPLD的型号及其所处的网络环境,通过所述图形用户接口模块以图形界面的方式引导调试者输入所述参数、所述指令集;并将与目标FPGA/CPLD匹配的配置数据导入至所述图形用户接口模块;
(2)所述网络参数设置模块验证通过所述图形用户接口模块输入的参数中的网络参数的格式,通过验证后将其发送至所述流程控制模块,否则,返回步骤(1);
(3)所述目标FPGA/CPLD参数设置模块验证通过所述图形用户接口模块输入的参数中的目标FPGA/CPLD参数的格式,通过验证后将其发送至所述流程控制模块,否则,返回步骤(1);
(4)所述流程控制模块发送网络参数、目标FPGA/CPLD参数、配置数据及所述指令集中的启动所述模拟激励模块的指令、启动边界扫描模块的指令、启动所述JTAG配置模块的指令、FPGA/CPLD边界扫描指令集至所述网络通信模块一;
(5)所述网络通信模块一验证通过后的网络参数、验证通过后的目标FPGA/CPLD参数、与目标FPGA/CPLD匹配的配置数据、所述指令集中的启动所述模拟激励模块的指令、启动边界扫描模块的指令、启动所述JTAG配置模块的指令、FPGA/CPLD边界扫描指令集通过互联网发送至所述硬件电路装置;
(6)所述网络通信模块二接收PC端上位机传来的参数、指令集、与目标FPGA/CPLD匹配的配置数据;
(7)所述参数更新模块根据从PC端上位机接收到的网络参数、目标FPGA/CPLD参数更新响应数据参数;
(8)所述调试控制模块响应PC端上位机发送的启动所述模拟激励模块的指令、启动边界扫描模块的指令、启动所述JTAG配置模块的指令,启动所述模拟激励模块、启动边界扫描模块、启动所述JTAG配置模块;
(9)所述模拟激励模块模拟出目标FPGA/CPLD板级系统的管脚输入信号,并输入所述模拟激励格式的激励信号至目标FPGA/CPLD板级系统;所述边界扫描模块根据从PC端上位机接收到的FPGA/CPLD边界扫描指令集,对目标FPGA/CPLD进行边界扫描,获取边界扫描结果;所述JTAG配置模块按照JTAG的时序,将所述配置数据发送至目标FPGA/CPLD,完成配置,并反馈完成配置响应;
(10)所述网络通信模块二发送指令集到达响应及边界扫描结果至PC端上位机;
(11)所述网络通信模块一接收指令集到达响应及边界扫描结果;
(12)所述数据分析模块根据调试者需求,对边界扫描结果进行选取以供分析。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201511030508.7A CN105718339B (zh) | 2015-12-31 | 2015-12-31 | 一种fpga/cpld 远程调试系统及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201511030508.7A CN105718339B (zh) | 2015-12-31 | 2015-12-31 | 一种fpga/cpld 远程调试系统及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105718339A true CN105718339A (zh) | 2016-06-29 |
CN105718339B CN105718339B (zh) | 2019-02-05 |
Family
ID=56147005
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201511030508.7A Expired - Fee Related CN105718339B (zh) | 2015-12-31 | 2015-12-31 | 一种fpga/cpld 远程调试系统及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105718339B (zh) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106354966A (zh) * | 2016-09-06 | 2017-01-25 | 芯海科技(深圳)股份有限公司 | 芯片ide工程文件转换及快速配置仿真调试环境的方法 |
CN106354541A (zh) * | 2016-10-25 | 2017-01-25 | 杭州迪普科技有限公司 | 一种加载逻辑文件的方法及装置 |
CN108733552A (zh) * | 2017-04-18 | 2018-11-02 | 北京大学 | 一种fpga远程调试系统及远程调试方法 |
CN109684240A (zh) * | 2018-12-17 | 2019-04-26 | 北京无线电测量研究所 | 一种jtag接口设备运维服务器、终端及方法 |
CN109710479A (zh) * | 2018-12-30 | 2019-05-03 | 联想(北京)有限公司 | 一种处理方法及第一设备、第二设备 |
CN112181753A (zh) * | 2020-09-25 | 2021-01-05 | 烽火通信科技股份有限公司 | 调试方法、系统及可读存储介质 |
CN112230189A (zh) * | 2020-09-15 | 2021-01-15 | 北京无线电测量研究所 | 一种专用雷达阵面远程调试装置和方法 |
CN112231160A (zh) * | 2020-10-16 | 2021-01-15 | 上海国微思尔芯技术股份有限公司 | Fpga板动态调试方法及fpga板动态调试装置 |
CN112596434A (zh) * | 2020-12-07 | 2021-04-02 | 天津津航计算技术研究所 | 一种cpld引脚逻辑状态监测方法 |
CN115269293A (zh) * | 2022-07-31 | 2022-11-01 | 北京汤谷软件技术有限公司 | 一种基于芯片fpga原型验证设备的互联接口测试方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110179211A1 (en) * | 2010-01-18 | 2011-07-21 | Inventec Corporation | Bios architecture |
US20120047371A1 (en) * | 2010-08-23 | 2012-02-23 | Raytheon Company | Secure field-programmable gate array (fpga) architecture |
CN102609286A (zh) * | 2012-02-10 | 2012-07-25 | 株洲南车时代电气股份有限公司 | 一种基于处理器控制的fpga配置程序远程更新系统及其方法 |
CN103389669A (zh) * | 2013-07-26 | 2013-11-13 | 中国船舶重工集团公司第七一五研究所 | 一种基于fpga/cpld控制器的处理器程序远程动态加载系统及方法 |
-
2015
- 2015-12-31 CN CN201511030508.7A patent/CN105718339B/zh not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110179211A1 (en) * | 2010-01-18 | 2011-07-21 | Inventec Corporation | Bios architecture |
US20120047371A1 (en) * | 2010-08-23 | 2012-02-23 | Raytheon Company | Secure field-programmable gate array (fpga) architecture |
CN102609286A (zh) * | 2012-02-10 | 2012-07-25 | 株洲南车时代电气股份有限公司 | 一种基于处理器控制的fpga配置程序远程更新系统及其方法 |
CN103389669A (zh) * | 2013-07-26 | 2013-11-13 | 中国船舶重工集团公司第七一五研究所 | 一种基于fpga/cpld控制器的处理器程序远程动态加载系统及方法 |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106354966A (zh) * | 2016-09-06 | 2017-01-25 | 芯海科技(深圳)股份有限公司 | 芯片ide工程文件转换及快速配置仿真调试环境的方法 |
CN106354966B (zh) * | 2016-09-06 | 2019-11-08 | 芯海科技(深圳)股份有限公司 | 芯片ide工程文件转换及快速配置仿真调试环境的方法 |
CN106354541A (zh) * | 2016-10-25 | 2017-01-25 | 杭州迪普科技有限公司 | 一种加载逻辑文件的方法及装置 |
CN108733552A (zh) * | 2017-04-18 | 2018-11-02 | 北京大学 | 一种fpga远程调试系统及远程调试方法 |
CN109684240A (zh) * | 2018-12-17 | 2019-04-26 | 北京无线电测量研究所 | 一种jtag接口设备运维服务器、终端及方法 |
CN109710479A (zh) * | 2018-12-30 | 2019-05-03 | 联想(北京)有限公司 | 一种处理方法及第一设备、第二设备 |
CN112230189A (zh) * | 2020-09-15 | 2021-01-15 | 北京无线电测量研究所 | 一种专用雷达阵面远程调试装置和方法 |
CN112181753A (zh) * | 2020-09-25 | 2021-01-05 | 烽火通信科技股份有限公司 | 调试方法、系统及可读存储介质 |
CN112181753B (zh) * | 2020-09-25 | 2022-11-04 | 烽火通信科技股份有限公司 | 调试方法、系统及可读存储介质 |
CN112231160A (zh) * | 2020-10-16 | 2021-01-15 | 上海国微思尔芯技术股份有限公司 | Fpga板动态调试方法及fpga板动态调试装置 |
CN112596434A (zh) * | 2020-12-07 | 2021-04-02 | 天津津航计算技术研究所 | 一种cpld引脚逻辑状态监测方法 |
CN115269293A (zh) * | 2022-07-31 | 2022-11-01 | 北京汤谷软件技术有限公司 | 一种基于芯片fpga原型验证设备的互联接口测试方法 |
Also Published As
Publication number | Publication date |
---|---|
CN105718339B (zh) | 2019-02-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105718339A (zh) | 一种fpga/cpld 远程调试系统及方法 | |
CN106054058B (zh) | 一种能够对多个σ-△adc芯片测试和温度控制的系统及方法 | |
CN107704346B (zh) | Soc芯片调试方法及调试系统 | |
CN101021551A (zh) | 智能综合电子测量仪 | |
US20110202894A1 (en) | Method and Apparatus for Versatile Controllability and Observability in Prototype System | |
CN108519889B (zh) | 一种基于jtag标准的fpga程序远程升级系统及方法 | |
CN101237365B (zh) | 一种eda网络实验系统及实验方法 | |
CN204789908U (zh) | 基于LabVIEW的电路板自动测试系统 | |
CN103713993B (zh) | 芯片验证平台及其实现芯片测试的方法 | |
CN109522165A (zh) | 显示模组测试平台 | |
CN113407393A (zh) | 芯片验证方法、终端设备、验证平台以及存储介质 | |
CN104572442A (zh) | 可编程逻辑芯片片内程序校验系统 | |
CN105573798B (zh) | 一种可快速重新配置fpga的方法及电路 | |
CN106647519A (zh) | 基于单片机的多功能usb‑jtag接口fpga下载线 | |
CN101377795A (zh) | 一种工业便携式终端专用soc芯片逻辑验证方法 | |
CN112596743B (zh) | 一种基于jtag接口的军用fpga通用重构电路 | |
CN103257606A (zh) | 一种usb接口高速实时采样逻辑分析仪 | |
WO2022052161A1 (zh) | 一种芯片调试系统及调试器 | |
CN211509076U (zh) | Fpga远程加载与调试系统 | |
CN107526351A (zh) | 一种基于jtag的通用型故障注入方法及其装置 | |
CN109117160A (zh) | 具有在线升级cpld固件的gnss主机、系统和方法 | |
CN108984457A (zh) | 一种基于STM32F7的USB Host HID实验方法 | |
CN115686988A (zh) | 一种RISC-V架构Debug协议功能验证方法及系统 | |
CN206451035U (zh) | 一种卫星控制系统地面测试设备自动化联调装置 | |
CN208589013U (zh) | 一种基于cpu通过jtag方式远程更新fpga的装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20190205 Termination date: 20201231 |
|
CF01 | Termination of patent right due to non-payment of annual fee |