CN108519889B - 一种基于jtag标准的fpga程序远程升级系统及方法 - Google Patents

一种基于jtag标准的fpga程序远程升级系统及方法 Download PDF

Info

Publication number
CN108519889B
CN108519889B CN201810241203.8A CN201810241203A CN108519889B CN 108519889 B CN108519889 B CN 108519889B CN 201810241203 A CN201810241203 A CN 201810241203A CN 108519889 B CN108519889 B CN 108519889B
Authority
CN
China
Prior art keywords
jtag
fpga
file
upgraded
chip
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.)
Active
Application number
CN201810241203.8A
Other languages
English (en)
Other versions
CN108519889A (zh
Inventor
尤新革
戴忍
徐端全
夏北浩
徐匡义
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Huazhong University of Science and Technology Research Institute
Original Assignee
Shenzhen Huazhong University of Science and Technology Research Institute
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shenzhen Huazhong University of Science and Technology Research Institute filed Critical Shenzhen Huazhong University of Science and Technology Research Institute
Priority to CN201810241203.8A priority Critical patent/CN108519889B/zh
Publication of CN108519889A publication Critical patent/CN108519889A/zh
Application granted granted Critical
Publication of CN108519889B publication Critical patent/CN108519889B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/654Updates using techniques specially adapted for alterable solid state memories, e.g. for EEPROM or flash memories

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本发明公开一种基于JTAG标准的FPGA程序远程升级系统及方法,包括:存储模块和微处理器;存储模块用于存储FPGA程序的升级文件;微处理器用于读取并解析所述FPGA程序的升级文件,在JTAG标准下,通过控制串行的IO口模拟电平变化,把解析后得到FPGA程序的升级数据和JTAG指令写入FPGA芯片,使得FPGA芯片中的FPGA程序完成升级。本发明在减少查询开销的同时缩短查询流程。本发明依据JTAG标准下完成在线配置的过程,通过技术手段巧妙的解决了远程升级FPGA的问题,并具有最高的优先级。与现有的通过JTAG接口配置FPGA的技术相比,具有成本低、速度快、通用性好、稳定性强的优点。

Description

一种基于JTAG标准的FPGA程序远程升级系统及方法
技术领域
本发明涉及计算机技术领域,更具体地,涉及一种基于JTAG标准的FPGA程序远程升级系统及方法。
背景技术
目前FPGA芯片已经广泛应用于市面上的产品中,特别是成本相对低的Altera系列的FPGA。FPGA程序升级的配置方式有多种,而最为广泛使用的是IEEE 1149.1标准也就是JTAG标准。JTAG模式下配置FPGA不仅优先级高于其他任何的配置模式(AS、AP、PS、FPP等模式),还有鲁棒性高、成本低等特点。
在JTAG配置模式中的器件操作所需的四个管脚为TDI、TDO、TMS和TCK,通过这四个管脚,微处理器(DSP、ARM、单片机等)就能基于JTAG标准对FPGA进行在线配置完成升级。其中,TDI、TDO分别是输入和输出端口(对DSP来说),TMS是控制JTAG协议中状态机变化的端口,TCK是驱动TDI、TDO、TMS信号的时钟。
一般来说,对于JTAG模式下FPGA程序的升级过程如下:首先要打开器件裸露出FPGA电路,通过昂贵的Altera专用仿真器连接至电路板上的JTAG接口,然后在装有Quartus软件的计算机上由开发人员对程序进行升级。
JTAG标准下这种常用的程序升级方式存在多种缺陷。第一,需要硬件电路上配备专门的JTAG接口,复杂化了电路设计和布局,同时也增加了硬件成本;第二,Altera专用仿真器购买十分昂贵而且保存不当易损坏,增加了成本;第三,每次升级程序都要拔插接口,特别是大规模升级和多FPGA芯片的情况下,更是增加了时间成本和人力物力成本;第四,这种升级不适用远程升级的应用场景,每次升级都要专业的技术人员到现场操作。因此,研究出一种基于JTAG标准且硬件简单、成本低、稳定性高、通用性强、可远程升级的系统和方法是很有必要的。
发明内容
针对现有技术的缺陷,本发明的目的在于解决现有JTAG标准下FPGA程序升级方式存在多种缺陷的技术问题。
为实现上述目的,第一方面,本发明提供一种基于JTAG标准的FPGA程序远程升级系统,包括:存储模块和微处理器;
所述存储模块用于存储FPGA程序的升级文件;所述微处理器用于读取并解析所述FPGA程序的升级文件,在JTAG标准下,通过控制串行的IO口模拟电平变化,把解析后得到FPGA程序的升级数据和JTAG指令写入FPGA芯片,使得FPGA芯片中的FPGA程序完成升级。
可选地,所述升级文件的包括*.cdf格式和*.rbf格式文件;所述微处理器读取并解析所述FPGA程序的升级文件,具体包括:
所述微处理器解析*.cdf格式文件,确定待升级的FPGA芯片的数目,每一个待升级的FPGA芯片对应的升级文件*.rbf文件的位置,每个待升级的FPGA芯片的升级文件*.rbf文件对应的指令长度;
所述微处理器根据JTAG协议,通过FPGA芯片的TMS端口复位待升级的FPGA芯片,并使JTAG状态机移位至SHIFT_DR状态;
所述微处理器往待升级的FPGA芯片的TDI端口写入IDCODE的操作码,从而根据该芯片对应的*.rbf文件对应的指令长度从TDO端口读出芯片的IDCODE;
所述微处理器把JTAG状态机移位至SHIFT_IR状态,然后根据JTAG协议,写入PROGRAM指令,使得待升级的FPGA芯片进入可编程状态;
所述微处理器开始编程待升级的FPGA芯片,首先往TDI端口送入一个高电平,然后将JTAG状态机至SHIFT_DR状态,再往TDI端口送入MAX_JTAG_INIT_CLOC数量的高电平,使芯片进入JTAG编程模式;
所述微处理器打开每个待升级FPGA芯片对应的*.rbf文件,从低位到高位,每次读取1字节,依次写入TDI端口;
当*.rbf文件写入完毕后,所述微处理器往TDI端口连续写入128位高电平,然后把JTAG状态机移位至RUN/IDLE状态;
所述微处理器把JTAG状态机移位至SHIFT_IR状态,写入STARTUP指令,使得FPGA芯片进入用户模式,然后往TMS端口写入0,使JTAG状态机移位至RUN/IDLE状态;
所述微处理器往TCK端口送入INIT_COUNT个时钟周期,使刚刚烧写进去的*.rbf文件对应的代码生效,完成FPGA芯片中的FPGA程序升级。
第二方面,本发明提供一种基于JTAG标准的FPGA程序远程升级方法,包括:
预存FPGA程序的升级文件;读取并解析所述FPGA程序的升级文件,在JTAG标准下,通过控制串行的IO口模拟电平变化,把解析后得到FPGA程序的升级数据和JTAG指令写入FPGA芯片,使得FPGA芯片中的FPGA程序完成升级。
可选地,所述升级文件的包括*.cdf格式和*.rbf格式文件;
解析*.cdf格式文件,确定待升级的FPGA芯片的数目,每一个待升级的FPGA芯片对应的升级文件*.rbf文件的位置,每个待升级的FPGA芯片的升级文件*.rbf文件对应的指令长度;
根据JTAG协议,通过FPGA芯片的TMS端口复位待升级的FPGA芯片,并使JTAG状态机移位至SHIFT_DR状态;
向待升级的FPGA芯片的TDI端口写入IDCODE的操作码,从而根据该芯片对应的*.rbf文件对应的指令长度从TDO端口读出芯片的IDCODE;
把JTAG状态机移位至SHIFT_IR状态,然后根据JTAG协议,写入PROGRAM指令,使得待升级的FPGA芯片进入可编程状态;
编程待升级的FPGA芯片,首先往TDI端口送入一个高电平,然后将JTAG状态机至SHIFT_DR状态,再往TDI端口送入MAX_JTAG_INIT_CLOC数量的高电平,使芯片进入JTAG编程模式;
打开每个待升级FPGA芯片对应的*.rbf文件,从低位到高位,每次读取1字节,依次写入TDI端口;
当*.rbf文件写入完毕后,往TDI端口连续写入128位高电平,然后把JTAG状态机移位至RUN/IDLE状态;
把JTAG状态机移位至SHIFT_IR状态,写入STARTUP指令,使得FPGA芯片进入用户模式,然后往TMS端口写入0,使JTAG状态机移位至RUN/IDLE状态;
往TCK端口送入INIT_COUNT个时钟周期,使刚刚烧写进去的*.rbf文件对应的代码生效,完成FPGA芯片中的FPGA程序升级。
本发明严格按照IEEE 1149.1标准,在当前几乎所有FPGA设计都有的JTAG电路的背景下上,巧妙的使用LVTTL I/O端口模拟了JTAG标准,对FPGA进行在线配置完成了远程升级的功能。
总体而言,通过本发明所构思的以上技术方案与现有技术相比,具有以下有益效果:
(1)由于升级文件放在外部存储,省去了昂贵的专用EPROM存储,降低了成本;当要远程升级的时候,只需把升级文件发送过去或者工作人员携带过去,即可基于通用处理器对FPGA进行配置,既解决了远程升级的问题又提高了工作效率。
(2)由于本方案实现了基于串行IO端口来模拟JTAG标准的升级过程,不必使用专用的仿真器烧写,也不必专门打开电路连接JTAG接口,降低了硬件成本,简化了升级过程。
(3)由于本发明严格基于JTAG标准,而JTAG标准允许在一条JTAG链中级联无限数量的FPGA芯片,所以本发明可调用一次升级函数来配置多个FPGA芯片,大大提升速度与易用性;FPGA升级方法中,JTAG模式具有最高的优先级,JTAG升级不易受FPGA引脚电平状态的干扰,所以具有很强的稳定性。
(4)由于本发明所用串行IO电平模拟JTAG输入信号,支持LVTTL I/O标准的微处理器都可以适用,所以具有通用性好的优点;同时,本发明提供的升级过程也无需连接JTAG仿真器,软件过程也有一定的容错机制,所以具有鲁棒性好的优点。
附图说明
图1为本发明提供的基于JTAG标准的FPGA系统远程程序系统结构示意图;
图2为本发明提供的基于JTAG标准的FPGA系统远程程序升级的方法的流程示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。
针对现有技术的缺陷,本发明的目的在于提供一种JTAG标准下的FPGA程序远程升级的设计系统和方法,旨在解决FPGA升级存在的成本高、通用性不强、鲁棒性不好的问题。
本发明提供了一种JTAG标准下,对FPGA程序进行远程升级的系统与方法。现在很多系统采用如单片机、DSP、ARM等微处理器与FPGA进行联合设计的架构,基于此,本发明包括:与FPGA联合设计的处理器(DSP、ARM等),用于使用通用串行IO端口来模拟JTAG标准要求的电平变化,从而对FPGA进行在线配置;存储设备,用于存储远程发过去的FPGA升级程序文件,可以是便携式U盘或一块廉价的FLASH芯片;升级的入口函数,该函数基于JTAG标准,使用通用的IO口电平模拟JTAG协议。
进一步地,与FPGA联合设计的处理器应为可进行基本运算与可读写LVTTL标准电平的处理器芯片,如DSP、ARM等通用处理器,可产生JTAG标准下升级需要的TCK、TMS、TDO信号和读取TDI信号。
进一步地,对于存储设备,本设计提供两种方案:
(1)使用便携式U盘+USB驱动电路,用于连接处理器与存储设备,该方法的好处是U盘便携可通用,大规模生产中基本不计入成本。
(2)使用一块通用的FLASH芯片,相对于ALTERA官方指定的FPGA专用FLASH也就是EPCS,价格低了几倍不止,并且该flash挂载在微处理器上,也可拓展用于其他目的。
进一步地,FPGA程序升级需要的输入文件为*.RBF和*.CDF格式,这两个文件是使用Altera官方软件Quartus II生成的原始二进制源文件和设备链描述文件。原始二进制源文件也就是我们升级的程序源文件,设备链描述文件包含了要烧写的各个FPGA芯片的信息以及每个芯片对应的*.RBF源文件的信息。JTAG配置允许在一条JTAG链中级联无限数量的FPGA芯片,所以本发明可调用一次升级函数来配置多个FPGA芯片,大大提升速度与易用性。
本发明提供了一种基于JTAG标准,使用串行IO口模拟电平进行在线配置多级联FPGA芯片的软件方法,在线配置函数大致包括三个步骤:
第一步:匹配芯片,进入升级模式。包括以下:
(1)解析.cdf格式的设备链描述文件,按照IEEE 1149.1标准操作TMS电平信号控制的状态机至SHIFT_IR状态,往TDI端口写入IDCODE操作码,从TDO读入返回的信息,确认JTAG硬件设备链信息是否相匹配。
(2)针对每个FPGA芯片,确认操作码是否为“CFG”(升级标志位),如果是,则说明该芯片需要进行配置升级。
第二步:解析源文件,进行升级。包括以下:
(3)控制状态机至SHIFT_IR状态,写入PROGRAM操作码开始配置过程,然后打开该FPGA芯片对应的.RBF源文件,移位状态机至SHIFT_DR状态,依次读取一字节的数据并送入TDI端口。
(4)配置文件烧写完毕,从JTAG的TDO接口检测FPGA芯片上的CONF_DONE引脚电平状态,如若是高电平,则源文件烧写正确。
第三步:复位FPGA,并继续处理JTAG链上剩余的芯片。包括以下:
(5)根据FPGA芯片不同的型号,往TDI送入不同数量时钟周期的电平跳变,让该型号芯片进行正确初始化和进入用户模式。
(6)判断该JTAG链中级联的芯片是否处理完毕,是则退出升级函数,否则继续配置下一个芯片。
更进一步地,在步骤(1)中,如果读出的设备链信息与*.CDF文件不匹配,则无法完成升级,退出函数,返回错误代码-1。
更进一步地,在步骤(2)中,操作码如果不是“CFG”,则该芯片不用升级,跳过该芯片。
更进一步地,在步骤(4)中,如果FPGA芯片上的CONF_DONE引脚不是高电平,则状态不正确,再次尝试配置,本发明中该函数共计尝试3次,如果状态检测都不正确,则无法完成升级,退出函数,返回错误代码-2。
通过本发明所构思的以上系统与软件方法设计,依据JTAG标准下完成在线配置的过程,通过技术手段巧妙的解决了远程升级FPGA的问题,并具有最高的优先级。与现有的通过JTAG接口配置FPGA的技术相比,具有成本低、速度快、通用性好、稳定性强的优点。
本发明基于通用性最广、优先级最高的JTAG(Joint Test Action Group)标准,设计了一种使用串行IO端口模拟LVTTL I/O标准电平,从而实现了一种FPGA远程升级的系统和方法。目前FPGA升级常用的配置模式有主动串行(AS)、被动串行(PS)、主动并行(AP)、快速被动并行(FPP)、JTAG这些方式,JTAG相比于其他的配置方法本身就有着稳定高、优先级高、通用性好的优点。
如图1所示,本发明提供的基于JTAG标准的FPGA远程升级系统包括:存储模块1,微处理器模块2,FPGA模块3。
如图1所示,存储模块1,可以是便携式U盘或一块廉价的FLASH芯片,用于存储远程发送过去的升级文件,包括*.RBF和*.CDF文件。微处理器模块2,用于读取并解析升级文件,在JTAG标准下,通过控制串行的IO口模拟电平变化,把升级数据和JTAG指令写入FPGA模块3中。
如图2所示,是本发明提供的基于JTAG标准的FPGA远程升级系统的方法流程示意图,具体包括以下步骤:
(1)Quartus II软件生成通用的*.cdf和*.rbf文件,微处理器从外部存储设备读入升级文件。
(2)微处理器解析*.cdf格式的设备链描述文件,确认JTAG硬件设备链信息是否相匹配。
S21解析*.cdf文件,获得要升级的FPGA芯片的数目count,每一个芯片对应的*.rbf文件的位置path,每个芯片对应的指令长度inst_len等信息。
S22根据JTAG协议,往TMS端口送入5个高电平复位FPGA芯片。然后往TMS写入100三个电平,使得JTAG状态机移位至SHIFT_DR状态。
S23在SHIFT_DR状态下,读取JTAG设备链上设备的个数,确认JTAG硬件设备链信息是否相匹配。
(3)针对设备链中每个要升级FPGA芯片,烧写对应的.RBF源文件。
S31首先,将JTAG状态机至SHIFT_DR状态,然后往TDI端口写入IDCODE的操作码从而根据该芯片对应的指令长度inst_len从TDO端口读出芯片的IDCODE,要与*.cdf文件中的相匹配才能继续下一步。
S32把JTAG状态机移位至SHIFT_IR状态,然后根据JTAG协议,写入PROGRAM指令,使得FPGA进入可编程状态。
S33开始编程芯片,首先往TDI送入一个高电平,然后同S22的步骤,将JTAG状态机至SHIFT_DR状态,再往TDI送入MAX_JTAG_INIT_CLOC数量的高电平,使芯片进入JTAG编程模式。
S34打开芯片对应的*.rbf文件,从低位到高位,每次读取1字节,依次写入TDI端口,*.rbf源文件写入完毕后,往TDI连续写入128位高电平表示源文件烧写结束,然后把JTAG状态机移位至RUN/IDLE状态。
S35把JTAG状态机移位至SHIFT_DR状态,然后通过TDO口检测FPGA芯片上的CONF_DONE引脚电平状态是否为高电平(HIGH),是高电平则说明FPGA升级正确,配置过程得到了正确的响应,继续下一步。如果CONF_DONE引脚不是高电平,则重新重复S32、S33、S34的配置过程,本发明共尝试3次,如果尝试了3次都不能成功,则说明该FPGA芯片或者对应的源文件出错,跳过该芯片。
S36把JTAG状态机移位至SHIFT_IR状态,写入STARTUP指令,使得FPGA进入用户模式。然后往TMS写入0,使JTAG状态机移位至RUN/IDLE状态。
S37往TCK送入INIT_COUNT个时钟周期(高低电平),使刚刚烧写进去的*.rbf文件对应的新代码生效,使得FPGA芯片完成升级。
(4)把升级后的芯片复位到用户模式,同S22步骤。
当待升级的FPGA芯片为JTAG链上的最后一个芯片时,则升级结束,若不是,则继续对其他FPGA芯片进行升级。
根据本发明的一个实例,FPGA芯片为Altera公司的cyclone iv型号,微处理器是TMS320C6437型号的DSP;存储模块为一块串口式NOR闪存,型号W25X40CL,每片不到1元钱。
根据本发明的一个实施例,步骤S21中,芯片指令长度为10;步骤S31中,读出的IDCODE为0x20F10DD与*.cdf文件中IDCODE相匹配;步骤S33中,MAX_JTAG_INIT_CLOCK数量为3192;步骤S37中,INIT_COUNT为3192。
本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

Claims (2)

1.一种基于JTAG标准的FPGA程序远程升级系统,其特征在于,包括:存储模块和微处理器;
所述存储模块用于存储FPGA程序的升级文件;其中,所述升级文件的包括*.cdf格式和*.rbf格式文件;
所述微处理器用于读取并解析所述FPGA程序的升级文件,在JTAG标准下,通过控制串行的IO口模拟电平变化,把解析后得到FPGA程序的升级数据和JTAG指令写入FPGA芯片,使得FPGA芯片中的FPGA程序完成升级;具体包括:
所述微处理器解析*.cdf格式文件,确定待升级的FPGA芯片的数目,每一个待升级的FPGA芯片对应的升级文件*.rbf文件的位置,每个待升级的FPGA芯片的升级文件*.rbf文件对应的指令长度;
所述微处理器根据JTAG协议,通过FPGA芯片的TMS端口复位待升级的FPGA芯片,并使JTAG状态机移位至SHIFT_DR状态;
所述微处理器往待升级的FPGA芯片的TDI端口写入IDCODE的操作码,从而根据该芯片对应的*.rbf文件对应的指令长度从TDO端口读出芯片的IDCODE,判断所述IDCODE是否与所述*.cdf格式文件中的相匹配;
所述微处理器把JTAG状态机移位至SHIFT_IR状态,然后根据JTAG协议,写入PROGRAM指令,使得待升级的FPGA芯片进入可编程状态;
所述微处理器开始编程待升级的FPGA芯片,首先往TDI端口送入一个高电平,然后将JTAG状态机至SHIFT_DR状态,再往TDI端口送入MAX_JTAG_INIT_CLOC数量的高电平,使芯片进入JTAG编程模式;
所述微处理器打开每个待升级FPGA芯片对应的*.rbf文件,从低位到高位,每次读取1字节,依次写入TDI端口;
当*.rbf文件写入完毕后,所述微处理器往TDI端口连续写入128位高电平,然后把JTAG状态机移位至RUN/IDLE状态;
所述微处理器把JTAG状态机移位至SHIFT_IR状态,写入STARTUP指令,使得FPGA芯片进入用户模式,然后往TMS端口写入0,使JTAG状态机移位至RUN/IDLE状态;
所述微处理器往TCK端口送入INIT_COUNT个时钟周期,使刚刚烧写进去的*.rbf文件对应的代码生效,完成FPGA芯片中的FPGA程序升级。
2.一种基于JTAG标准的FPGA程序远程升级方法,其特征在于,包括:
预存FPGA程序的升级文件;其中,所述升级文件的包括*.cdf格式和*.rbf格式文件;
读取并解析所述FPGA程序的升级文件,在JTAG标准下,通过控制串行的IO口模拟电平变化,把解析后得到FPGA程序的升级数据和JTAG指令写入FPGA芯片,使得FPGA芯片中的FPGA程序完成升级;具体包括:
解析*.cdf格式文件,确定待升级的FPGA芯片的数目,每一个待升级的FPGA芯片对应的升级文件*.rbf文件的位置,每个待升级的FPGA芯片的升级文件*.rbf文件对应的指令长度;
根据JTAG协议,通过FPGA芯片的TMS端口复位待升级的FPGA芯片,并使JTAG状态机移位至SHIFT_DR状态;
向待升级的FPGA芯片的TDI端口写入IDCODE的操作码,从而根据该芯片对应的*.rbf文件对应的指令长度从TDO端口读出芯片的IDCODE,判断所述IDCODE是否与所述*.cdf格式文件中的相匹配;
把JTAG状态机移位至SHIFT_IR状态,然后根据JTAG协议,写入PROGRAM指令,使得待升级的FPGA芯片进入可编程状态;
编程待升级的FPGA芯片,首先往TDI端口送入一个高电平,然后将JTAG状态机至SHIFT_DR状态,再往TDI端口送入MAX_JTAG_INIT_CLOC数量的高电平,使芯片进入JTAG编程模式;
打开每个待升级FPGA芯片对应的*.rbf文件,从低位到高位,每次读取1字节,依次写入TDI端口;
当*.rbf文件写入完毕后,往TDI端口连续写入128位高电平,然后把JTAG状态机移位至RUN/IDLE状态;
把JTAG状态机移位至SHIFT_IR状态,写入STARTUP指令,使得FPGA芯片进入用户模式,然后往TMS端口写入0,使JTAG状态机移位至RUN/IDLE状态;
往TCK端口送入INIT_COUNT个时钟周期,使刚刚烧写进去的*.rbf文件对应的代码生效,完成FPGA芯片中的FPGA程序升级。
CN201810241203.8A 2018-03-22 2018-03-22 一种基于jtag标准的fpga程序远程升级系统及方法 Active CN108519889B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810241203.8A CN108519889B (zh) 2018-03-22 2018-03-22 一种基于jtag标准的fpga程序远程升级系统及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810241203.8A CN108519889B (zh) 2018-03-22 2018-03-22 一种基于jtag标准的fpga程序远程升级系统及方法

Publications (2)

Publication Number Publication Date
CN108519889A CN108519889A (zh) 2018-09-11
CN108519889B true CN108519889B (zh) 2021-06-11

Family

ID=63434025

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810241203.8A Active CN108519889B (zh) 2018-03-22 2018-03-22 一种基于jtag标准的fpga程序远程升级系统及方法

Country Status (1)

Country Link
CN (1) CN108519889B (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110196726B (zh) * 2019-05-17 2023-05-26 江西山水光电科技股份有限公司 一种基于cpu+cpld实现fpga程序远程升级加载的方法
CN110879717B (zh) * 2019-11-27 2023-06-27 四川虹美智能科技有限公司 Eeprom参数烧写装置及方法
CN111241020B (zh) * 2019-12-31 2022-04-22 广州展讯信息科技有限公司 一种基于fpga的串口切换装置、方法及存储介质
CN112148319A (zh) * 2020-10-21 2020-12-29 上海船舶电子设备研究所(中国船舶重工集团公司第七二六研究所) 基于高速串行口的并行工作fpga在线配置系统及方法
CN112730478A (zh) * 2020-12-24 2021-04-30 明峰医疗系统股份有限公司 一种ct探测器的配置升级方法及系统、ct扫描仪
CN113806282A (zh) * 2021-08-31 2021-12-17 歌尔股份有限公司 异构控制系统及异构控制系统的加载方法
TWI785923B (zh) * 2021-12-09 2022-12-01 英業達股份有限公司 Jtag轉接電路板

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101493770A (zh) * 2008-01-23 2009-07-29 中兴通讯股份有限公司 一种远程下载可擦除编程逻辑器件epld的方法
CN102436385A (zh) * 2011-11-15 2012-05-02 电子科技大学 一种可编程逻辑器件配置文件在线更新装置
CN102855150B (zh) * 2012-08-14 2016-02-10 北京华环电子股份有限公司 一种向待编程设备烧录信息的方法及系统
CN105224345B (zh) * 2014-05-28 2019-02-15 株洲变流技术国家工程研究中心有限公司 一种可编程逻辑器件远程更新系统及其方法
CN107066276A (zh) * 2017-04-17 2017-08-18 中国电子科技集团公司第三十四研究所 一种通信设备内的fpga器件远程配置更新的方法
CN107621819B (zh) * 2017-08-24 2019-12-27 电子科技大学 一种三维声波测井仪的fpga配置文件在线更新装置

Also Published As

Publication number Publication date
CN108519889A (zh) 2018-09-11

Similar Documents

Publication Publication Date Title
CN108519889B (zh) 一种基于jtag标准的fpga程序远程升级系统及方法
US5596734A (en) Method and apparatus for programming embedded memories of a variety of integrated circuits using the IEEE test access port
US20150253387A1 (en) Programmable interface-based validation and debug
CN103000230B (zh) 一种非易失性存储器ip核的测试和验证开发系统
CN102542110B (zh) 一种应用于移动存储soc芯片的仿真验证方法
CN109783340B (zh) SoC的测试代码烧写方法、IP测试方法及装置
CN107451025B (zh) 控制存储芯片的测试方法及系统
CN102521444A (zh) 软硬件协同仿真/验证方法及装置
WO2018018978A1 (zh) 一种通用串行总线控制器验证方法、系统及设备
CN107907814B (zh) 一种提高芯片量产测试效率的方法
CN111221693B (zh) 一种NOR flash配置模块验证方法、系统、装置和存储介质
CN103309693A (zh) 复杂可编程逻辑器件更新方法及系统
CN113157508B (zh) 嵌入式系统的测试方法、系统、装置、设备及存储介质
CN108664264A (zh) 一种基于cpu通过jtag方式远程更新fpga的装置和方法
CN112034330A (zh) 一种soc芯片自动化qc方法及装置
CN116541032B (zh) 数据烧录方法、装置、设备及计算机存储介质
CN104503898A (zh) 一种嵌入式软件调试参数实时查看的方法及系统
US20060212768A1 (en) Verification circuitry for master-slave system
CN109684152B (zh) 一种risc-v处理器指令下载方法及其装置
US5515530A (en) Method and apparatus for asynchronous, bi-directional communication between first and second logic elements having a fixed priority arbitrator
CN113901754A (zh) 基于fpga的以太网macip的板级验证结构和方法
CN117407301A (zh) Fpga软核的程序调试方法、验证方法、系统、计算机设备及存储介质
CN105677560A (zh) 一种测试方法、装置及系统
CN102193860A (zh) 微控制器在线调试电路及方法、微控制器
CN117234831B (zh) 一种基于多核cpu的芯片功能测试方法及系统

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