CN112596743B - 一种基于jtag接口的军用fpga通用重构电路 - Google Patents

一种基于jtag接口的军用fpga通用重构电路 Download PDF

Info

Publication number
CN112596743B
CN112596743B CN202011451796.4A CN202011451796A CN112596743B CN 112596743 B CN112596743 B CN 112596743B CN 202011451796 A CN202011451796 A CN 202011451796A CN 112596743 B CN112596743 B CN 112596743B
Authority
CN
China
Prior art keywords
instruction
pin
data
reconstruction circuit
upper computer
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
CN202011451796.4A
Other languages
English (en)
Other versions
CN112596743A (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.)
Beijing Microelectronic Technology Institute
Mxtronics Corp
Original Assignee
Beijing Microelectronic Technology Institute
Mxtronics Corp
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 Beijing Microelectronic Technology Institute, Mxtronics Corp filed Critical Beijing Microelectronic Technology Institute
Priority to CN202011451796.4A priority Critical patent/CN112596743B/zh
Publication of CN112596743A publication Critical patent/CN112596743A/zh
Application granted granted Critical
Publication of CN112596743B publication Critical patent/CN112596743B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

本发明涉及基于JTAG接口的军用FPGA通用重构电路,该重构电路设计有4个输入管脚、4个输出管脚,可分别与FPGA、CPLD、PROM的管脚连接,接收上位机指令,通过JTAG接口对链路中的FPGA、CPLD、PROM进行回读IDCODE操作,确定器件型号,根据上位机指令,通过JTAG接口对选中器件进行擦除、编程、回读、校验,通过本发明中的重构电路,实现设计产品装机后现场变更系统中FPGA、CPLD设计程序的目的,有效减少产品的外部接口,延长调试线缆的距离,提高装机产品的现场调试效率。

Description

一种基于JTAG接口的军用FPGA通用重构电路
技术领域
本发明涉及基于JTAG接口的军用FPGA通用重构电路及其实现方法,特别是用于产品装机后现场远程变更系统中FPGA、CPLD的设计程序,属于集成电路技术领域。
背景技术
当前武器装备中,SRAM型FPGA和CPLD得到了广泛的使用,目前SRAM型FPGA和CPLD的主流生产厂商有Xilinx和Altera,在实际的板级产品设计中,如果同时包含两个厂商的产品,则往往无法将其放在同一条JTAG菊花链中进行调试和烧写程序,影响板级产品小型化;
同时,在装机产品现场试验过程中,通常利用JTAG接口进行烧写和更改设计程序,其弊端在于接口占用面积大,信号线多,调试线缆不能延长,不利于现场调试的开展。
发明内容
本发明的目的在于:克服现有技术的不足,提出一种基于JTAG接口的军用FPGA通用重构电路,该电路能够实现Xilinx与Altera两个厂商的产品设计在一条JTAG菊花链中,并对链路中的选中器件进行擦除编程回读和校验,链路最大支持10个器件的直连,满足通用设计需求。同时该电路提供了UART接口,有效减少了对外接口面积和信号线数量,并有效延长了调试距离,满足装机产品现场调试过程中,调试人员与产品的安全距离,保证产品在不开盖的前提下,实现对产品内部FPGA、CPLD进行设计程序变更。
本发明的上述目的主要是通过如下技术方案予以实现的:
基于JTAG接口的军用FPGA通用重构电路,所述重构电路(102)连接上位机(101)、CPLD(103)、PROM(104)以及FPGA(105);
重构电路(102)接收上位机(101)发送的指令后,根据传输协议解析指令数据,指令数据包括链路识别指令、器件选择指令、器件擦除指令、器件编程指令、器件回读指令以及器件CRC校验指令;在确定指令数据后,重构电路(102)将之转化为相应的JTAG指令,对JTAG链路中的CPLD(103)、PROM(104)以及FPGA(105)按照指令进行操作,完成后,向上位机(101)发送“指令执行完成”响应,并进入接收上位机(101)指令的待机状态;
所述重构电路(102)包括8个功能管脚,其中输入管脚4个,分别为:时钟管脚CLK、复位管脚RST、通信数据输入管脚UART_IN、JTAG数据输出数据管脚TDO;输出管脚4个,分别为:JTAG时钟管脚TCK、JTAG模式选择管脚TMS、JTAG数据输入管脚TDI、通信数据输出管脚UART_OUT,其中:
重构电路(102)的通信数据输入管脚UART_IN管脚连接上位机(101)的输出管脚COM_OUT,重构电路(102)的通信数据输出管脚UART_OUT管脚连接上位机(101)的输入管脚COM_IN;
重构电路(102)的JTAG时钟管脚TCK管脚连接CPLD(103)的JTAG时钟管脚TCK_C、连接PROM(104)的JTAG时钟管脚TCK_P、连接FPGA(105)的JTAG时钟管脚TCK_F;
重构电路(102)的JTAG模式选择管脚TMS管脚连接CPLD(103)的JTAG模式选择管脚TMS_C、连接PROM(104)的JTAG模式选择管脚TMS_P、连接FPGA(105)的JTAG模式选择管脚TMS_F;
重构电路(102)的JTAG数据输入管脚TDI管脚连接CPLD(103)的JTAG数据输入选择管脚TDI_C;
CPLD(103)的JTAG数据输出管脚TDO_C连接PROM(104)的JTAG数据输入管脚TDI_P,PROM(104)的JTAG数据输出管脚TDO_P连接FPGA(105)的JTAG数据输入管脚TDI_F;
重构电路(102)的JTAG数据输出数据管脚TDO连接FPGA(103)的JTAG数据输出选择管脚TDO_F;
重构电路(102)通过CLK管脚接收外部时钟信号,通过RST管脚接收外部复位信号;
在重构电路(102)上电后的任一状态,若将复位管脚RST置为0电平,则重构电路(102)进入复位状态。
进一步的,该通用重构电路按照如下步骤工作:
(1)、上电后,重构电路(102)初始态为等待指令状态,等待指令状态下若通过RST管脚从外部输入的RST信号为“0”电平,则进入复位状态,且将所有寄存器清零;若所述RST信号由“0”翻转为“1”电平则进入等待指令状态,进入步骤(2);
(2)、重构电路(102)根据通信数据输入管脚UART_IN解析的接收指令选择进入下一步状态,若所述接收指令解析为“链路识别”,则进入JTAG链路识别状态,进入步骤(3);如重构电路(102)上电后未执行过“链路识别”指令,则其他指令不响应;
(3)、重构电路(102)分别通过TCK、TMS、TDI三个管脚向CPLD(103)、PROM(104)、FPGA(105)发送读取IDCODE指令,重构电路(102)通过TDO管脚接收FPGA(105)的JTAG数据输出管脚TDO_F输出的链路中所有器件的器件识别码IDCODE,重构电路(102)将接收的IDCODE通过UART_OUT管脚发送给上位机(101),完成后向上位机(101)发送“指令执行完成”,然后进入等待接收指令状态;
若接收指令为“链路识别”,则重复步骤(3);若接收指令为“器件选择”,则进入步骤(4);若重构电路(102)上电后未执行过“器件选择”指令,则除“链路识别”、“器件选择”两个指令外,其他指令不响应;
(4)、重构电路(102)根据解析接收“器件选择”指令中器件的序号,通过TCK、TMS、TDI三个管脚对除该器件外的其他器件执行旁路寄存器指令BYPASS,完成后向上位机(101)发送“指令执行完成”,然后进入等待接收指令状态;若接收指令为“链路识别”,则返回步骤(3);若接收指令为“器件选择”,则重复步骤(4);若接收指令为“器件擦除”,则进入步骤(5);若接收指令为“器件编程”,则进入步骤(6);若接收指令为“器件回读”,则进入步骤(7);若接收指令为“器件CRC校验”,则进入步骤(8);
若重构电路(102)上电后未依次执行过“链路识别”、“器件选择”指令,则重构电路(102)不响应“器件擦除、“器件编程”、“器件回读、“器件CRC校验”四个指令;
(5)、重构电路(102)通过TCK、TMS、TDI三个管脚对选中器件发送擦除指令,通过TDO管脚接收选中器件执行擦除指令完成信息,完成后向上位机(101)发送“指令执行完成”,然后进入等待指令状态;
(6)、重构电路(102)通过UART_IN管脚以1024字节为一帧不断接收上位机(101)的数据信息,同时通过TCK、TMS、TDI三个管脚对选中器件发送编程指令,将接收数据信息注入选中器件,直至数据信息结束,完成后向上位机(101)发送“指令执行完成”,然后进入等待指令状态;
(7)、重构电路(102)通过TCK、TMS、TDI、TDO四个管脚对选中器件发送回读指令,以1024字节为一帧,从选中器件TDO中读取数据,通过UART_OUT管脚发送至上位机(101),直至回数数据结束,完成后向上位机(101)发送“指令执行完成”,然后进入等待指令状态
(8)、重构电路(102)通过TCK、TMS、TDI、TDO四个管脚对选中器件发送回读指令,同时对回读数据进行CRC32校验,直至回读数据结束,得到完成数据的CRC32校验值后,将校验值发送至上位机(101),完成后向上位机(101)发送“指令执行完成”,然后进入等待指令状态。
进一步的,所述步骤(1)~(8)任何时刻重构电路检测到外部输入的RST信号为“0”电平,则进入复位状态。
进一步的,所述步骤(3)中重构电路(102)执行“链路识别”指令的具体步骤如下:
(3.1)、重构电路(102)通过UART_IN管脚从上位机(101)接收指令,解析为“链路识别”指令后,进入步骤(3.2);
(3.2)、重构电路(102)通过TCK管脚、TMS管脚、TDI管脚对CPLD(103)、PROM(104)、FPGA(105)发送回读IDCODE指令,进入步骤(3.3);
(3.3)、重构电路(102)通过TDO管脚对FPGA(105)返回的数据进行存储,并根据内部的查找表确认链路中所有器件的器件型号,同时得到所有器件的JTAG指令长度,完成后进入步骤(3.4);
(3.4)、重构电路(102)通过UART_OUT管脚将链路中的IDCODE数据发送至上位机(101),完成后向上位机(101)发送“指令执行完成”,完成后进入等待命令状态。
进一步的,所述步骤(4)中重构电路(102)执行“器件选择”指令的具体步骤如下:
(4.1)、重构电路(102)通过UART_IN管脚接收上位机(101)的指令数据,解析为“器件选择”指令后进入步骤(4.2);
(4.2)、重构电路(102)通过指令中选中器件的序号,计算器件之前的所有器件的JTAG指令长度,计算器件之后的所有器件的JTAG指令长度,完成后,进入步骤(4.3);
(4.3)、重构电路(102)通过UART_OUT管脚向上位机(101)发送发送“指令执行完成”,然后进入等待指令状态。
进一步的,所述步骤(5)中重构电路(102)执行“器件擦除”指令的具体步骤如下:
(5.1)、重构电路(102)通过UART_IN管脚接收上位机(101)的指令数据,解析为“器件擦除”指令后,进入步骤(5.2);
(5.2)重构电路(102)通过TCK管脚、TMS管脚、TDI管脚向选中器件发送擦除指令,其他器件为BYPASS指令,完成后进入步骤(5.3);
(5.3)、重构电路(102)通过TDO管脚接收链路中被擦除器件反馈的JTAG输出数据,确认选中器件完成擦除指令后,进入步骤(5.4);
(5.4)、重构电路(102)通过UART_OUT管脚向上位机(101)发送发送“指令执行完成”,然后进入等待指令状态。
进一步的,所述步骤(6)中重构电路(102)执行“器件编程”指令的具体步骤如下:
(6.1)、重构电路(102)通过UART_IN管脚接收上位机(101)的指令数据,解析为“器件编程”指令后,进入步骤(6.2);
(6.2)重构电路(102)通过UART_IN管脚接收上位机(101)的以1024字节为一帧的编程数据,接收完一帧数据后,进入步骤(6.3);
(6.3)重构电路(102)通过TCK管脚、TMS管脚、TDI管脚向选中器件发送编程指令,其他器件为BYPASS指令,完成后将接收的一帧数据注入选中器件,然后进入步骤(6.4);
(6.4)、重构电路(102)通过UART_OUT向上位机(101)发送“帧数据编程完成”,等待接收下一帧编程数据,如接收的是最后一帧数据,进入步骤(6.5),否则进入步骤(6.2);
(6.5)、重构电路(102)通过UART_OUT管脚向上位机(101)发送发送“指令执行完成”,然后进入等待指令状态。
进一步的,所述步骤(7)中重构电路(102)执行“器件回读”指令的具体步骤如下:
(7.1)、重构电路(102)通过UART_IN管脚接收上位机(101)的指令数据,解析为“器件回读”指令后,进入步骤(7.2)
(7.2)重构电路(102)通过TCK管脚、TMS管脚、TDI管脚向选中器件发送回读指令,其他器件为BYPASS指令,完成后进入步骤(7.3);
(7.3)、重构电路(102)通过TDO管脚接收链路中的tdo数据中提取选中器件的回读数据,回读数据以1024字节为一帧,从选中器件读出一帧数据后,回读数据暂停,进入步骤(7.4);
(7.4)、重构电路(102)通过UART_OUT管脚向上位机(101)发送回读的一帧数据,如回读数据为最后一帧,则进入步骤(7.5),否则进入步骤(7.2);
(7.5)、重构电路(102)通过UART_OUT管脚向上位机(101)发送发送“指令执行完成”,然后进入等待指令状态。
进一步的,所述步骤(8)中重构电路(102)执行“器件CRC校验”指令的具体步骤如下:
(8.1)、重构电路(102)通过UART_IN管脚接收上位机(101)的指令数据,解析为“器件CRC校验”指令后,进入步骤(8.2)
(8.2)重构电路(102)通过TCK管脚、TMS管脚、TDI管脚向选中器件发送回读指令,其他器件为BYPASS指令,完成后进入步骤(8.3);
(8.3)、重构电路(102)通过TDO管脚接收链路中的tdo数据中提取选中器件的回读数据,并将回读数据实时计算器CRC32校验值,直至回读数据技术,然后进入步骤(8.4);
(8.4)、重构电路(102)通过UART_OUT管脚向上位机(101)发送最终的CRC32校验值,完成后发送“指令执行完成”,然后进入等待指令状态。
进一步的,重构电路(102)在复位状态及等待接收指令状态时,重构电路(102)的TCK管脚、TMS管脚、TDI管脚、UART_OUT管脚均输出高阻。
本发明与现有技术相比具有如下有益效果:
(1)、本发明有效延长装机产品的现场调试距离,较少调试接口信号线数量,提高调试效率;
(2)、本发明支持两大厂商的主流产品,扩大设计师选用器件的范围满足不同设计需求;
(3)、本发明军用FPGA通用重构电路芯片连接简单,对用户系统设计仅新增加CLK、RST两个外部引脚,使用方便;
(4)、本发明军用FPGA通用重构电路,适用于各种主流SRAM型FPGA、CPLD、PROM器件型号,适用范围广、通用性强;
(5)、本发明军用FPGA通用重构电路,用户可以通过RST信号复位重构电路,实用性强;
(6)、本发明军用FPGA通用重构电路的实现方法通过状态机实现,为全同步时序电路,状态完备,流程简单清晰,提高了电路可靠性;
附图说明
图1为本发明重构电路与上位机、CPLD、PROM、FPGA连接示意图;
图2为本发明重构电路在空闲、复位、等待指令状态下引脚电平示意图;
图3为本发明重构电路功能流程图;
图4为本发明重构电路复位流程图。
具体实施方式
下面结合附图和具体实施例对本发明作进一步详细的描述:
如图1和图2所示为本发明重构电路与上位机、CPLD、PROM、FPGA连接示意图,由图可知重构电路102连接上位机101、CPLD103、PROM104和FPGA105。
重构电路102接收上位机101发送的指令后,根据传输协议解析指令数据,指令数据包括链路识别指令、器件选择指令、器件擦除指令、器件编程指令、器件回读指令以及器件CRC校验指令;在确定指令数据后,重构电路102将之转化为相应的JTAG指令,对JTAG链路中的CPLD103、PROM104以及FPGA105按照指令进行操作,完成后,向上位机101发送“指令执行完成”响应,并进入接收上位机101指令的待机状态。
该重构电路102包括8个功能管脚,其中输入管脚4个,分别为:时钟管脚CLK、复位管脚RST、UART通信数据输入管脚UART_IN、JTAG数据输出管脚TDO;
输出管脚4个,分别为:UART通信数据输出管脚UART_OUT、JTAG时钟管脚TCK、JTAG模式选择管脚TMS、JTAG数据输出管脚TDI,其中具体连接关系如下:
重构电路102的UART_IN管脚连接上位机101的输出管脚COM_OUT,重构电路102的UART_OUT管脚连接上位机101的输入管脚COM_IN,重构电路102的TCK管脚连接CPLD103的JTAG时钟管脚TCK_C、连接PROM104的JTAG时钟管脚TCK_P、连接FPGA105的JTAG时钟管脚TCK_F,重构电路102的TMS管脚连接CPLD103的JTAG模式选择管脚TMS_C、连接PROM104的JTAG模式选择管脚TMS_P、连接FPGA105的JTAG模式选择管脚TMS_F,重构电路102的TDI管脚连接CPLD103的JTAG数据输入选择管脚TDI_C,CPLD103的TDO_C管脚连接PROM104的TDI_P管脚,PROM104的TDO_P管脚连接FPGA105的TDI_F管脚,重构电路102的TDO管脚连接FPGA103的JTAG数据输出选择管脚TDO_F,重构电路102通过CLK管脚接收外部时钟信号,重构电路102通过RST管脚接收外部复位信号。在重构电路102上电后的任一状态,若将复位管脚RST置为0电平,则重构电路102进入复位状态。
应用时,重构电路102通过UART_IN管脚接收上位机101的指令数据,解析指令数据后,根据指令内容,对菊花链中的器件进行相应操作。
该通用重构电路按照如下步骤工作:
(1)、上电后,重构电路102初始态为等待指令状态,等待指令状态下若通过RST管脚从外部输入的RST信号为“0”电平,则进入复位状态,且将所有寄存器清零;若所述RST信号由“0”翻转为“1”电平则进入等待指令状态,进入步骤(2);
(2)、重构电路102根据通信数据输入管脚UART_IN解析的接收指令选择进入下一步状态,若所述接收指令解析为“链路识别”,则进入JTAG链路识别状态,进入步骤(3);如重构电路102上电后未执行过“链路识别”指令,则其他指令不响应;
(3)、重构电路102分别通过TCK、TMS、TDI三个管脚向CPLD103、PROM104、FPGA105发送读取IDCODE指令,重构电路102通过TDO管脚接收FPGA105的JTAG数据输出管脚TDO_F输出的链路中所有器件的器件识别码IDCODE,重构电路102将接收的IDCODE通过UART_OUT管脚发送给上位机101,完成后向上位机101发送“指令执行完成”,然后进入等待接收指令状态;
若接收指令为“链路识别”,则重复步骤(3);若接收指令为“器件选择”,则进入步骤(4);若重构电路102上电后未执行过“器件选择”指令,则除“链路识别”、“器件选择”两个指令外,其他指令不响应;
具体步骤如下:
(3.1)、重构电路102通过UART_IN管脚从上位机101接收指令,解析为“链路识别”指令后,进入步骤(3.2);
(3.2)、重构电路102通过TCK管脚、TMS管脚、TDI管脚对CPLD103、PROM104、FPGA105发送回读IDCODE指令,进入步骤(3.3);
(3.3)、重构电路102通过TDO管脚对FPGA105返回的数据进行存储,并根据内部的查找表确认链路中所有器件的器件型号,同时得到所有器件的JTAG指令长度,完成后进入步骤(3.4);
(3.4)、重构电路102通过UART_OUT管脚将链路中的IDCODE数据发送至上位机101,完成后向上位机101发送“指令执行完成”,完成后进入等待命令状态。
(4)、重构电路102根据解析接收“器件选择”指令中器件的序号,通过TCK、TMS、TDI三个管脚对除该器件外的其他器件执行旁路寄存器指令BYPASS,完成后向上位机101发送“指令执行完成”,然后进入等待接收指令状态;若接收指令为“链路识别”,则返回步骤(3);若接收指令为“器件选择”,则重复步骤(4);若接收指令为“器件擦除”,则进入步骤(5);若接收指令为“器件编程”,则进入步骤(6);若接收指令为“器件回读”,则进入步骤(7);若接收指令为“器件CRC校验”,则进入步骤(8);
若重构电路102上电后未依次执行过“链路识别”、“器件选择”指令,则重构电路102不响应“器件擦除、“器件编程”、“器件回读、“器件CRC校验”四个指令;
具体步骤如下:
(4.1)、重构电路102通过UART_IN管脚接收上位机101的指令数据,解析为“器件选择”指令后进入步骤(4.2);
(4.2)、重构电路102通过指令中选中器件的序号,计算器件之前的所有器件的JTAG指令长度,计算器件之后的所有器件的JTAG指令长度,完成后,进入步骤(4.3);
(4.3)、重构电路102通过UART_OUT管脚向上位机101发送发送“指令执行完成”,然后进入等待指令状态。
(5)、重构电路102通过TCK、TMS、TDI三个管脚对选中器件发送擦除指令,通过TDO管脚接收选中器件执行擦除指令完成信息,完成后向上位机101发送“指令执行完成”,然后进入等待指令状态;
具体步骤如下:
(5.1)、重构电路102通过UART_IN管脚接收上位机101的指令数据,解析为“器件擦除”指令后,进入步骤(5.2);
(5.2)重构电路102通过TCK管脚、TMS管脚、TDI管脚向选中器件发送擦除指令,其他器件为BYPASS指令,完成后进入步骤(5.3);
(5.3)、重构电路102通过TDO管脚接收链路中被擦除器件反馈的JTAG输出数据,确认选中器件完成擦除指令后,进入步骤(5.4);
(5.4)、重构电路102通过UART_OUT管脚向上位机101发送发送“指令执行完成”,然后进入等待指令状态。
(6)、重构电路102通过UART_IN管脚以1024字节为一帧不断接收上位机101的数据信息,同时通过TCK、TMS、TDI三个管脚对选中器件发送编程指令,将接收数据信息注入选中器件,直至数据信息结束,完成后向上位机101发送“指令执行完成”,然后进入等待指令状态;
具体步骤如下:
(6.1)、重构电路102通过UART_IN管脚接收上位机101的指令数据,解析为“器件编程”指令后,进入步骤(6.2);
(6.2)重构电路102通过UART_IN管脚接收上位机101的以1024字节为一帧的编程数据,接收完一帧数据后,进入步骤(6.3);
(6.3)重构电路102通过TCK管脚、TMS管脚、TDI管脚向选中器件发送编程指令,其他器件为BYPASS指令,完成后将接收的一帧数据注入选中器件,然后进入步骤(6.4);
(6.4)、重构电路102通过UART_OUT向上位机101发送“帧数据编程完成”,等待接收下一帧编程数据,如接收的是最后一帧数据,进入步骤(6.5),否则进入步骤(6.2);
(6.5)、重构电路102通过UART_OUT管脚向上位机101发送发送“指令执行完成”,然后进入等待指令状态。
(7)、重构电路102通过TCK、TMS、TDI、TDO四个管脚对选中器件发送回读指令,以1024字节为一帧,从选中器件TDO中读取数据,通过UART_OUT管脚发送至上位机101,直至回数数据结束,完成后向上位机101发送“指令执行完成”,然后进入等待指令状态;
具体步骤如下:
(7.1)、重构电路102通过UART_IN管脚接收上位机101的指令数据,解析为“器件回读”指令后,进入步骤(7.2)
(7.2)重构电路102通过TCK管脚、TMS管脚、TDI管脚向选中器件发送回读指令,其他器件为BYPASS指令,完成后进入步骤(7.3);
(7.3)、重构电路102通过TDO管脚接收链路中的tdo数据中提取选中器件的回读数据,回读数据以1024字节为一帧,从选中器件读出一帧数据后,回读数据暂停,进入步骤(7.4);
(7.4)、重构电路102通过UART_OUT管脚向上位机101发送回读的一帧数据,如回读数据为最后一帧,则进入步骤(7.5),否则进入步骤(7.2);
(7.5)、重构电路102通过UART_OUT管脚向上位机101发送发送“指令执行完成”,然后进入等待指令状态。
(8)、重构电路102通过TCK、TMS、TDI、TDO四个管脚对选中器件发送回读指令,同时对回读数据进行CRC32校验,直至回读数据结束,得到完成数据的CRC32校验值后,将校验值发送至上位机101,完成后向上位机101发送“指令执行完成”,然后进入等待指令状态。
具体步骤如下:
(8.1)、重构电路102通过UART_IN管脚接收上位机101的指令数据,解析为“器件CRC校验”指令后,进入步骤(8.2)
(8.2)重构电路102通过TCK管脚、TMS管脚、TDI管脚向选中器件发送回读指令,其他器件为BYPASS指令,完成后进入步骤(8.3);
(8.3)、重构电路102通过TDO管脚接收链路中的tdo数据中提取选中器件的回读数据,并将回读数据实时计算器CRC32校验值,直至回读数据技术,然后进入步骤(8.4);
(8.4)、重构电路102通过UART_OUT管脚向上位机101发送最终的CRC32校验值,完成后发送“指令执行完成”,然后进入等待指令状态。
所述步骤(1)~(8)任何时刻重构电路检测到外部输入的RST信号为“0”电平,则进入复位状态。
重构电路102在复位状态及等待接收指令状态时,重构电路102的TCK管脚、TMS管脚、TDI管脚、UART_OUT管脚均输出高阻。
实施例1
如图3和图4所示为本发明重构电路实现流程图,本发明重构电路102包括5种工作状态,包括等待指令状态201、复位状态202、执行“链路识别”状态203、执行“器件选择”状态204、执行“器件擦除”状态205、执行“器件编程”状态206、执行“器件回读”状态207、执行“器件CRC校验”状态208,本发明重构电路102的实现方法通过状态机实现,具体实现过程如下:
步骤(一)、上电后重构电路102初始态为等待指令状态,等待指令状态下若通过RST管脚从外部输入的RST信号为“0”电平,则进入复位状态,若所述RST信号由“0”翻转为“1”电平则进入等待指令状态,通过上位机的指令,如指令为“链路识别”则进入步骤(二)的执行“链路识别”指令状态,如指令为“器件选择”则进入步骤(三)的执行“器件选择”指令状态,如指令为“器件擦除”则进入步骤(四)的执行“器件擦除”指令状态,如指令为“器件编程”则进入步骤(五)的执行“器件编程”指令状态,如指令为“器件回读”则进入步骤(六)的执行“器件回读”指令状态,如指令为“器件CRC校验”则进入步骤(七)的执行“器件CRC校验”指令状态。
步骤(二)、重构电路102通过TCK、TMS、TDI三个管脚向菊花链中器件发送读取IDCODE指令,重构电路通过TDO管脚接收菊花链的tdo数据,重构电路将接收的IDCODE通过UART_OUT发送给上位机,完成后向上位机发送“指令执行完成”,然后进入步骤(一)的等待接收指令状态。
步骤(三)、重构电路根据解析接收“器件选择”指令中器件的序号,通过TCK、TMS、TDI三个管脚对除该器件外的其他器件执行BYPASS指令,完成后向上位机发送“指令执行完成”,然后进入步骤(一)的等待接收指令状态。
步骤(四)、重构电路通过TCK、TMS、TDI三个管脚对选中器件发送擦除指令,其他器件发送BYPASS指令,重构电路通过TDO管脚接收选菊花链中选中器件的完成擦除指令信息,完成后向上位机发送“指令执行完成”,然后进入步骤(一)的等待指令状态。
步骤(五)、重构电路通过UART_IN以1024字节为一帧不断接收上位机的数据信息,同时通过TCK、TMS、TDI三个管脚对菊花链中的选中器件发送编程指令,其他器件发送BYPASS指令,将接收的数据信息注入选中器件中,直至编程数据最后一帧结束,完成后向上位机发送“指令执行完成”,然后进入步骤(一)的等待指令状态。
步骤(六)、重构电路通过TCK、TMS、TDI、TDO四个管脚向菊花链中的选中器件发送回读指令,其他器件发送BYPASS指令,重构电路以1024字节为一帧,从菊花链的tdo数据中提取选中器件的回读数据,通过UART_OUT以发送至上位机,直至回数数据结束,完成后向上位机发送“指令执行完成”,然后进入步骤(一)的等待指令状态。
步骤(七)、重构电路通过TCK、TMS、TDI、TDO四个管脚向菊花链中的选中器件发送回读指令,其他器件发送BYPASS指令,通过TDO管脚接收菊花链的tdo数据,从中提取选中器件的回读数据,并对回读数据进行CRC32校验,直至回读数据结束,得到最终的CRC32校验值后,将校验值发送至上位机,完成后向上位机发送“指令执行完成”,然后进入步骤(一)的等待指令状态。
上述步骤(一)~(七)中任何时刻重构电路102检测到外部输入的RST信号为“0”电平,则进入复位状态。复位状态时,重构电路102的TCK管脚、TMS管脚、TDI管脚、UART_OUT管脚均输出高阻。
实施例2
上电后,将重构电路102的RST管脚接“0”电平,则重构电路102暂停工作,进入复位状态202。重构电路在复位状态下,将内部所有寄存器清零,同时将TCK管脚、TMS管脚、TDI管脚、UART_OUT管脚均输出为高阻态。此时,重构电路102不响应上位机101指令。
实施例3
上电后,将重构电路102的CLK管脚接固定频率40MHz的时钟信号,RST管脚接“0”电平,重构电路102进入复位状态202,将所有的内部寄存器清零,输出管脚高阻,RST管脚接“1”电平,重构电路进入等待指令状态201,通过UART_IN管脚开始接收上位机101的指令信息,上位机的指令共有6条,分别为链路识别、器件选择、器件擦除、器件编程、器件回读、器件CRC校验,重构电路根据指令信息,进入指定的状态。
重构电路首次接收的指令,只响应“链路识别”指令,进入执行链路识别状态203,重构电路102通过TCK、TMS、TDI三个管脚向菊花链中器件发送读取IDCODE指令,重构电路通过TDO管脚接收菊花链的tdo数据,重构电路将接收的IDCODE通过UART_OUT发送给上位机,完成后向上位机发送“指令执行完成”,然后进入等待接收指令状态201。
重构电路在执行完链路识别指令后,可响应“链路识别”、“器件选择”两条指令,其他指令无效,若接收指令为“器件选择”,则重构电路进入执行器件选择状态204,重构电路计算选中器件之前的所有器件的JTAG指令长度,计算选中器件之后的所有器件的JTAG指令长度,通过TCK、TMS、TDI三个管脚对除该器件外的其他器件执行BYPASS指令,完成后向上位机发送“指令执行完成”,然后进入等待接收指令状态201。
重构电路完成执行器件选择指令后,可响应所有指令信息,若指令信息为器件擦除,则重构电路进入执行器件擦除状态205,重构电路通过TCK、TMS、TDI三个管脚对选中器件发送擦除指令,其他器件发送BYPASS指令,重构电路通过TDO管脚接收选菊花链中选中器件的完成擦除指令信息,完成后向上位机发送“指令执行完成”,然后进入等待指令状态201。
重构电路完成执行器件选择指令后,可响应所有指令信息,若指令信息为器件编程,则重构电路进入执行器件编程状态206,重构电路通过UART_IN以1024字节为一帧不断接收上位机的编程数据信息,编程数据信息接收完成后,通过TCK、TMS、TDI三个管脚对菊花链中的选中器件发送编程指令,其他器件发送BYPASS指令,将接收的数据信息注入选中器件中,直至编程数据最后一帧结束,完成后向上位机发送“指令执行完成”,然后进入等待指令状态201。
重构电路完成执行器件选择指令后,可响应所有指令信息,若指令信息为器件回读,则重构电路进入执行器件回读状态207,重构电路通过TCK、TMS、TDI、TDO四个管脚向菊花链中的选中器件发送回读指令,其他器件发送BYPASS指令,重构电路以1024字节为一帧,从菊花链的tdo数据中提取选中器件的回读数据,通过UART_OUT以发送至上位机,直至回数数据结束,完成后向上位机发送“指令执行完成”,然后进入等待指令状态201。
重构电路完成执行器件选择指令后,可响应所有指令信息,若指令信息为器件CRC校验,则重构电路进入执行器件CRC校验状态208,重构电路通过TCK、TMS、TDI、TDO四个管脚向菊花链中的选中器件发送回读指令,其他器件发送BYPASS指令,通过TDO管脚接收菊花链的tdo数据,从中提取选中器件的回读数据,并对回读数据进行CRC32校验,直至回读数据结束,得到最终的CRC32校验值后,将校验值发送至上位机,完成后向上位机发送“指令执行完成”,然后进入等待指令状态201。
重构电路处于状态201、状态203、状态204、状态205、状态206、状态207、状态208的任意状态,若RST管脚接收外部RST信号为“0”电平时,重构电路进入复位状态202,直至外部RST信号由“0”翻转为“1”时,重构电路进入等待指令状态201。
通过本发明中的重构电路,实现设计产品装机后现场变更系统中FPGA、CPLD设计程序的目的,有效减少产品的外部接口,延长调试线缆的距离,提高装机产品的现场调试效率。
以上所述,仅为本发明最佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。
本发明说明书中未作详细描述的内容属于本领域专业技术人员的公知技术。

Claims (10)

1.基于JTAG接口的军用FPGA通用重构电路,其特征在于:所述重构电路(102)连接上位机(101)、CPLD(103)、PROM(104)以及FPGA(105);
重构电路(102)接收上位机(101)发送的指令后,根据传输协议解析指令数据,指令数据包括链路识别指令、器件选择指令、器件擦除指令、器件编程指令、器件回读指令以及器件CRC校验指令;在确定指令数据后,重构电路(102)将之转化为相应的JTAG指令,对JTAG链路中的CPLD(103)、PROM(104)以及FPGA(105)按照指令进行操作,完成后,向上位机(101)发送“指令执行完成”响应,并进入接收上位机(101)指令的待机状态;
所述重构电路(102)包括8个功能管脚,其中输入管脚4个,分别为:时钟管脚CLK、复位管脚RST、通信数据输入管脚UART_IN、JTAG数据输出数据管脚TDO;输出管脚4个,分别为:JTAG时钟管脚TCK、JTAG模式选择管脚TMS、JTAG数据输入管脚TDI、通信数据输出管脚UART_OUT,其中:
重构电路(102)的通信数据输入管脚UART_IN管脚连接上位机(101)的输出管脚COM_OUT,重构电路(102)的通信数据输出管脚UART_OUT管脚连接上位机(101)的输入管脚COM_IN;
重构电路(102)的JTAG时钟管脚TCK管脚连接CPLD(103)的JTAG时钟管脚TCK_C、连接PROM(104)的JTAG时钟管脚TCK_P、连接FPGA(105)的JTAG时钟管脚TCK_F;
重构电路(102)的JTAG模式选择管脚TMS管脚连接CPLD(103)的JTAG模式选择管脚TMS_C、连接PROM(104)的JTAG模式选择管脚TMS_P、连接FPGA(105)的JTAG模式选择管脚TMS_F;
重构电路(102)的JTAG数据输入管脚TDI管脚连接CPLD(103)的JTAG数据输入选择管脚TDI_C;
CPLD(103)的JTAG数据输出管脚TDO_C连接PROM(104)的JTAG数据输入管脚TDI_P,PROM(104)的JTAG数据输出管脚TDO_P连接FPGA(105)的JTAG数据输入管脚TDI_F;
重构电路(102)的JTAG数据输出数据管脚TDO连接FPGA(103)的JTAG数据输出选择管脚TDO_F;
重构电路(102)通过CLK管脚接收外部时钟信号,通过RST管脚接收外部复位信号;
在重构电路(102)上电后的任一状态,若将复位管脚RST置为0电平,则重构电路(102)进入复位状态。
2.根据权利要求1所述的基于JTAG接口的通用重构电路,其特征在于:该通用重构电路按照如下步骤工作:
(1)、上电后,重构电路(102)初始态为等待指令状态,等待指令状态下若通过RST管脚从外部输入的RST信号为“0”电平,则进入复位状态,且将所有寄存器清零;若所述RST信号由“0”翻转为“1”电平则进入等待指令状态,进入步骤(2);
(2)、重构电路(102)根据通信数据输入管脚UART_IN解析的接收指令选择进入下一步状态,若所述接收指令解析为“链路识别”,则进入JTAG链路识别状态,进入步骤(3);如重构电路(102)上电后未执行过“链路识别”指令,则其他指令不响应;
(3)、重构电路(102)分别通过TCK、TMS、TDI三个管脚向CPLD(103)、PROM(104)、FPGA(105)发送读取IDCODE指令,重构电路(102)通过TDO管脚接收FPGA(105)的JTAG数据输出管脚TDO_F输出的链路中所有器件的器件识别码IDCODE,重构电路(102)将接收的IDCODE通过UART_OUT管脚发送给上位机(101),完成后向上位机(101)发送“指令执行完成”,然后进入等待接收指令状态;
若接收指令为“链路识别”,则重复步骤(3);若接收指令为“器件选择”,则进入步骤(4);若重构电路(102)上电后未执行过“器件选择”指令,则除“链路识别”、“器件选择”两个指令外,其他指令不响应;
(4)、重构电路(102)根据解析接收“器件选择”指令中器件的序号,通过TCK、TMS、TDI三个管脚对除该器件外的其他器件执行旁路寄存器指令BYPASS,完成后向上位机(101)发送“指令执行完成”,然后进入等待接收指令状态;若接收指令为“链路识别”,则返回步骤(3);若接收指令为“器件选择”,则重复步骤(4);若接收指令为“器件擦除”,则进入步骤(5);若接收指令为“器件编程”,则进入步骤(6);若接收指令为“器件回读”,则进入步骤(7);若接收指令为“器件CRC校验”,则进入步骤(8);
若重构电路(102)上电后未依次执行过“链路识别”、“器件选择”指令,则重构电路(102)不响应“器件擦除、“器件编程”、“器件回读、“器件CRC校验”四个指令;
(5)、重构电路(102)通过TCK、TMS、TDI三个管脚对选中器件发送擦除指令,通过TDO管脚接收选中器件执行擦除指令完成信息,完成后向上位机(101)发送“指令执行完成”,然后进入等待指令状态;
(6)、重构电路(102)通过UART_IN管脚以1024字节为一帧不断接收上位机(101)的数据信息,同时通过TCK、TMS、TDI三个管脚对选中器件发送编程指令,将接收数据信息注入选中器件,直至数据信息结束,完成后向上位机(101)发送“指令执行完成”,然后进入等待指令状态;
(7)、重构电路(102)通过TCK、TMS、TDI、TDO四个管脚对选中器件发送回读指令,以1024字节为一帧,从选中器件TDO中读取数据,通过UART_OUT管脚发送至上位机(101),直至回数数据结束,完成后向上位机(101)发送“指令执行完成”,然后进入等待指令状态
(8)、重构电路(102)通过TCK、TMS、TDI、TDO四个管脚对选中器件发送回读指令,同时对回读数据进行CRC32校验,直至回读数据结束,得到完成数据的CRC32校验值后,将校验值发送至上位机(101),完成后向上位机(101)发送“指令执行完成”,然后进入等待指令状态。
3.根据权利要求2所述的基于JTAG接口的通用重构电路,其特征在于:所述步骤(1)~(8)任何时刻重构电路检测到外部输入的RST信号为“0”电平,则进入复位状态。
4.根据权利要求2所述的基于JTAG接口的通用重构电路,其特征在于:所述步骤(3)中重构电路(102)执行“链路识别”指令的具体步骤如下:
(3.1)、重构电路(102)通过UART_IN管脚从上位机(101)接收指令,解析为“链路识别”指令后,进入步骤(3.2);
(3.2)、重构电路(102)通过TCK管脚、TMS管脚、TDI管脚对CPLD(103)、PROM(104)、FPGA(105)发送回读IDCODE指令,进入步骤(3.3);
(3.3)、重构电路(102)通过TDO管脚对FPGA(105)返回的数据进行存储,并根据内部的查找表确认链路中所有器件的器件型号,同时得到所有器件的JTAG指令长度,完成后进入步骤(3.4);
(3.4)、重构电路(102)通过UART_OUT管脚将链路中的IDCODE数据发送至上位机(101),完成后向上位机(101)发送“指令执行完成”,完成后进入等待命令状态。
5.根据权利要求2所述的基于JTAG接口的军用FPGA通用重构电路,其特征在于:所述步骤(4)中重构电路(102)执行“器件选择”指令的具体步骤如下:
(4.1)、重构电路(102)通过UART_IN管脚接收上位机(101)的指令数据,解析为“器件选择”指令后进入步骤(4.2);
(4.2)、重构电路(102)通过指令中选中器件的序号,计算器件之前的所有器件的JTAG指令长度,计算器件之后的所有器件的JTAG指令长度,完成后,进入步骤(4.3);
(4.3)、重构电路(102)通过UART_OUT管脚向上位机(101)发送发送“指令执行完成”,然后进入等待指令状态。
6.根据权利要求2所述的基于JTAG接口的军用FPGA通用重构电路,其特征在于:所述步骤(5)中重构电路(102)执行“器件擦除”指令的具体步骤如下:
(5.1)、重构电路(102)通过UART_IN管脚接收上位机(101)的指令数据,解析为“器件擦除”指令后,进入步骤(5.2);
(5.2)重构电路(102)通过TCK管脚、TMS管脚、TDI管脚向选中器件发送擦除指令,其他器件为BYPASS指令,完成后进入步骤(5.3);
(5.3)、重构电路(102)通过TDO管脚接收链路中被擦除器件反馈的JTAG输出数据,确认选中器件完成擦除指令后,进入步骤(5.4);
(5.4)、重构电路(102)通过UART_OUT管脚向上位机(101)发送发送“指令执行完成”,然后进入等待指令状态。
7.根据权利要求2所述的基于JTAG接口的军用FPGA通用重构电路的实现方法,其特征在于:所述步骤(6)中重构电路(102)执行“器件编程”指令的具体步骤如下:
(6.1)、重构电路(102)通过UART_IN管脚接收上位机(101)的指令数据,解析为“器件编程”指令后,进入步骤(6.2);
(6.2)重构电路(102)通过UART_IN管脚接收上位机(101)的以1024字节为一帧的编程数据,接收完一帧数据后,进入步骤(6.3);
(6.3)重构电路(102)通过TCK管脚、TMS管脚、TDI管脚向选中器件发送编程指令,其他器件为BYPASS指令,完成后将接收的一帧数据注入选中器件,然后进入步骤(6.4);
(6.4)、重构电路(102)通过UART_OUT向上位机(101)发送“帧数据编程完成”,等待接收下一帧编程数据,如接收的是最后一帧数据,进入步骤(6.5),否则进入步骤(6.2);
(6.5)、重构电路(102)通过UART_OUT管脚向上位机(101)发送发送“指令执行完成”,然后进入等待指令状态。
8.根据权利要求2所述的基于JTAG接口的军用FPGA通用重构电路,其特征在于:所述步骤(7)中重构电路(102)执行“器件回读”指令的具体步骤如下:
(7.1)、重构电路(102)通过UART_IN管脚接收上位机(101)的指令数据,解析为“器件回读”指令后,进入步骤(7.2)
(7.2)重构电路(102)通过TCK管脚、TMS管脚、TDI管脚向选中器件发送回读指令,其他器件为BYPASS指令,完成后进入步骤(7.3);
(7.3)、重构电路(102)通过TDO管脚接收链路中的tdo数据中提取选中器件的回读数据,回读数据以1024字节为一帧,从选中器件读出一帧数据后,回读数据暂停,进入步骤(7.4);
(7.4)、重构电路(102)通过UART_OUT管脚向上位机(101)发送回读的一帧数据,如回读数据为最后一帧,则进入步骤(7.5),否则进入步骤(7.2);
(7.5)、重构电路(102)通过UART_OUT管脚向上位机(101)发送发送“指令执行完成”,然后进入等待指令状态。
9.根据权利要求2所述的基于JTAG接口的军用FPGA通用重构电路的实现方法,其特征在于:所述步骤(8)中重构电路(102)执行“器件CRC校验”指令的具体步骤如下:
(8.1)、重构电路(102)通过UART_IN管脚接收上位机(101)的指令数据,解析为“器件CRC校验”指令后,进入步骤(8.2)
(8.2)重构电路(102)通过TCK管脚、TMS管脚、TDI管脚向选中器件发送回读指令,其他器件为BYPASS指令,完成后进入步骤(8.3);
(8.3)、重构电路(102)通过TDO管脚接收链路中的tdo数据中提取选中器件的回读数据,并将回读数据实时计算器CRC32校验值,直至回读数据技术,然后进入步骤(8.4);
(8.4)、重构电路(102)通过UART_OUT管脚向上位机(101)发送最终的CRC32校验值,完成后发送“指令执行完成”,然后进入等待指令状态。
10.根据权利要求2所述的基于JTAG接口的军用FPGA通用重构电路,其特征在于:重构电路(102)在复位状态及等待接收指令状态时,重构电路(102)的TCK管脚、TMS管脚、TDI管脚、UART_OUT管脚均输出高阻。
CN202011451796.4A 2020-12-09 2020-12-09 一种基于jtag接口的军用fpga通用重构电路 Active CN112596743B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011451796.4A CN112596743B (zh) 2020-12-09 2020-12-09 一种基于jtag接口的军用fpga通用重构电路

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011451796.4A CN112596743B (zh) 2020-12-09 2020-12-09 一种基于jtag接口的军用fpga通用重构电路

Publications (2)

Publication Number Publication Date
CN112596743A CN112596743A (zh) 2021-04-02
CN112596743B true CN112596743B (zh) 2024-04-02

Family

ID=75192145

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011451796.4A Active CN112596743B (zh) 2020-12-09 2020-12-09 一种基于jtag接口的军用fpga通用重构电路

Country Status (1)

Country Link
CN (1) CN112596743B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113407223A (zh) * 2021-06-28 2021-09-17 新华三信息安全技术有限公司 一种可编程逻辑器件在线升级方法及系统
CN115629926B (zh) * 2022-11-30 2023-03-31 苏州浪潮智能科技有限公司 基于联合测试工作组接口的控制系统、方法及装置
CN117539826A (zh) * 2023-11-10 2024-02-09 中国科学院国家空间科学中心 基于jtag的星载sram型fpga加载配置系统

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111142962A (zh) * 2019-11-15 2020-05-12 北京理工大学 一种星载fpga的在轨重构方法及系统

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6567932B2 (en) * 1999-10-01 2003-05-20 Stmicroelectronics Limited System and method for communicating with an integrated circuit

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111142962A (zh) * 2019-11-15 2020-05-12 北京理工大学 一种星载fpga的在轨重构方法及系统

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
王健 ; 张烨 ; 秦霆镐 ; .基于ARM的可重构测控平台的实现.电子测量技术.2007,(05),全文. *
许建荣 ; 姚国良 ; 胡晨 ; .并口JTAG仿真器的设计与实现.电子器件.2007,(01),全文. *

Also Published As

Publication number Publication date
CN112596743A (zh) 2021-04-02

Similar Documents

Publication Publication Date Title
CN112596743B (zh) 一种基于jtag接口的军用fpga通用重构电路
CN105224345B (zh) 一种可编程逻辑器件远程更新系统及其方法
US6826717B1 (en) Synchronization of hardware and software debuggers
US5884023A (en) Method for testing an integrated circuit with user definable trace function
US6286114B1 (en) Enhanced embedded logic analyzer
US6957180B1 (en) System and a method for communication between an ICE and a production microcontroller while in a halt state
CN102542110B (zh) 一种应用于移动存储soc芯片的仿真验证方法
CN107608846B (zh) 一种针对fpga内嵌tap接口的调试链路及调试方法
US8281280B2 (en) Method and apparatus for versatile controllability and observability in prototype system
US7584456B1 (en) Method and apparatus for debugging embedded systems having read only memory
CN104459518A (zh) 基于SoPC芯片的功能自动化测试系统及其测试方法
CN103376340B (zh) 一种转接板、多平台串行测试系统及方法
CN104486169B (zh) 可重用自动检测及随机验证系统和方法
CN107907814B (zh) 一种提高芯片量产测试效率的方法
CN101102566B (zh) 一种手机jtag调试接口信号设计方法及其调试方法
KR20180072700A (ko) 회로 설계를 디버깅하기 위한 방법 및 회로
CN109885905B (zh) 一种提高数字电路功能验证效率的验证系统
CN102214132A (zh) 一种调试龙芯cpu和南北桥芯片的方法和装置
CN100487668C (zh) 一种嵌入式处理器的调试方法
CN114325333A (zh) 一种高效率规范化的soc系统级验证方法及装置
CN109426594A (zh) 一种芯片调试装置、方法及计算机可读存储介质
CN100492315C (zh) 嵌入式信号处理器模拟器
CN101377795A (zh) 一种工业便携式终端专用soc芯片逻辑验证方法
WO2022052161A1 (zh) 一种芯片调试系统及调试器
CN106844118B (zh) 一种基于Tbus总线标准的片内总线测试系统

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