CN105718339B - 一种fpga/cpld 远程调试系统及方法 - Google Patents
一种fpga/cpld 远程调试系统及方法 Download PDFInfo
- Publication number
- CN105718339B CN105718339B CN201511030508.7A CN201511030508A CN105718339B CN 105718339 B CN105718339 B CN 105718339B CN 201511030508 A CN201511030508 A CN 201511030508A CN 105718339 B CN105718339 B CN 105718339B
- Authority
- CN
- China
- Prior art keywords
- module
- cpld
- instruction
- fpga
- parameter
- 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.)
- Expired - Fee Related
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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Debugging And Monitoring (AREA)
- Stored Programmes (AREA)
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 CN105718339A (zh) | 2016-06-29 |
CN105718339B true 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) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106354966B (zh) * | 2016-09-06 | 2019-11-08 | 芯海科技(深圳)股份有限公司 | 芯片ide工程文件转换及快速配置仿真调试环境的方法 |
CN106354541A (zh) * | 2016-10-25 | 2017-01-25 | 杭州迪普科技有限公司 | 一种加载逻辑文件的方法及装置 |
CN108733552B (zh) * | 2017-04-18 | 2020-12-22 | 北京大学 | 一种fpga远程调试系统及远程调试方法 |
CN109684240A (zh) * | 2018-12-17 | 2019-04-26 | 北京无线电测量研究所 | 一种jtag接口设备运维服务器、终端及方法 |
CN109710479B (zh) * | 2018-12-30 | 2021-05-18 | 联想(北京)有限公司 | 一种处理方法及第一设备、第二设备 |
CN110750402A (zh) * | 2019-10-16 | 2020-02-04 | 深圳安时达电子服务有限公司 | 调试装置和远程调试系统 |
CN112230189A (zh) * | 2020-09-15 | 2021-01-15 | 北京无线电测量研究所 | 一种专用雷达阵面远程调试装置和方法 |
CN112181753B (zh) * | 2020-09-25 | 2022-11-04 | 烽火通信科技股份有限公司 | 调试方法、系统及可读存储介质 |
CN112231160A (zh) * | 2020-10-16 | 2021-01-15 | 上海国微思尔芯技术股份有限公司 | Fpga板动态调试方法及fpga板动态调试装置 |
CN112596434B (zh) * | 2020-12-07 | 2022-11-04 | 天津津航计算技术研究所 | 一种cpld引脚逻辑状态监测方法 |
CN115269293B (zh) * | 2022-07-31 | 2024-05-07 | 北京汤谷软件技术有限公司 | 一种基于芯片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控制器的处理器程序远程动态加载系统及方法 |
Also Published As
Publication number | Publication date |
---|---|
CN105718339A (zh) | 2016-06-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105718339B (zh) | 一种fpga/cpld 远程调试系统及方法 | |
CN105224345B (zh) | 一种可编程逻辑器件远程更新系统及其方法 | |
CN108733552B (zh) | 一种fpga远程调试系统及远程调试方法 | |
CN105004984A (zh) | 一种自动化芯片测试方法 | |
CN103925853B (zh) | 一种运载火箭地面测试系统装置 | |
CN101174283A (zh) | 一种基于网络的软硬件协同仿真平台 | |
CN105573798B (zh) | 一种可快速重新配置fpga的方法及电路 | |
CN101237365B (zh) | 一种eda网络实验系统及实验方法 | |
CN104778885A (zh) | 一种基于可编程逻辑器件的数字电路实验系统和方法 | |
CN112596743B (zh) | 一种基于jtag接口的军用fpga通用重构电路 | |
CN207008595U (zh) | 一种用于fpga器件远程更新配置的装置 | |
CN110011878A (zh) | 一种四can总线模拟时序通信测试板卡及其测试方法 | |
CN203118326U (zh) | 基于物联网的教育实训综合平台装置 | |
CN104462626A (zh) | 基于vmm验证方法学的rfif验证平台及实现方法 | |
CN103744315B (zh) | 一种雷达信息处理机的调试显控系统 | |
CN202267736U (zh) | 通用型数字电路板功能测试电路 | |
CN211509076U (zh) | Fpga远程加载与调试系统 | |
CN103257606A (zh) | 一种usb接口高速实时采样逻辑分析仪 | |
CN112114899A (zh) | 一种芯片调试系统及调试器 | |
CN109117160A (zh) | 具有在线升级cpld固件的gnss主机、系统和方法 | |
CN108984457A (zh) | 一种基于STM32F7的USB Host HID实验方法 | |
CN208752840U (zh) | 大学生电子竞赛训练平台 | |
CN106407554B (zh) | 一种同时支持主从机功能的lpc总线仿真验证方法和装置 | |
CN206451035U (zh) | 一种卫星控制系统地面测试设备自动化联调装置 | |
CN108491221A (zh) | 嵌入式系统的更新、故障检测系统及方法 |
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 | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20190205 Termination date: 20201231 |