CN108319526B - 基于片上嵌入式微系统及其内部fpga资源内建自测试方法 - Google Patents

基于片上嵌入式微系统及其内部fpga资源内建自测试方法 Download PDF

Info

Publication number
CN108319526B
CN108319526B CN201711363686.0A CN201711363686A CN108319526B CN 108319526 B CN108319526 B CN 108319526B CN 201711363686 A CN201711363686 A CN 201711363686A CN 108319526 B CN108319526 B CN 108319526B
Authority
CN
China
Prior art keywords
test
fpga
resource
internal processor
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
CN201711363686.0A
Other languages
English (en)
Other versions
CN108319526A (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 CN201711363686.0A priority Critical patent/CN108319526B/zh
Publication of CN108319526A publication Critical patent/CN108319526A/zh
Application granted granted Critical
Publication of CN108319526B publication Critical patent/CN108319526B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2273Test methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2205Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Tests Of Electronic Circuits (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

一种基于片上嵌入式微系统及其内部FPGA资源内建自测试方法,针对微系统芯片内部FPGA资源进行测试。考虑单片FPGA资源利用率的限制,每种待测资源分别对应多个测试文件,所有测试文件存储于嵌入式微系统存储器中。依据测试顺序,通过嵌入式微系统内部处理器模拟SelectMAP时序将测试文件分时加载。测试文件还可通过内部处理器实现在线更新。测试过程中对应的FPGA输入输出信号亦由微系统内部处理器提供或检测。本发明方法依靠微系统芯片自身资源实现对微系统内部FPGA的功能测试,无需外部复杂的控制和存储器件,亦不需要大型测试设备,极大简化了系统设计。采用SelectMap模式加载,测试效率得到大幅提高。测试文件还可在线更新,使得测试系统更加灵活。

Description

基于片上嵌入式微系统及其内部FPGA资源内建自测试方法
技术领域
本发明涉及一种基于片上嵌入式微系统及其内部FPGA资源内建自测试方法,特别是一种基于片上嵌入式微系统及一种基于片上嵌入式微系统的包含内部处理器单元和FPGA单元的FPGA资源测试方法,属于集成电路设计领域。
背景技术
随着集成电路和电子技术的发展,集成电路的集成化、小型化、低功耗、高可靠需求日趋强烈。传统将处理器、FPGA、存储等分立资源全部集成于板上的方式,使得电子系统体积大,功耗高,设计复杂,不利于系统集成和应用。近年来,将处理器、FPGA、存储等分立器件集成于同一片上的嵌入式微系统芯片发展迅速,有效解决了分立器件带来的问题。
将多种器件全部集成于同一芯片,芯片功能更加完善,但另一方面复杂的系统使得整个微系统芯片的测试更加困难。传统的自动化测试设备(ATE)针对的大都是单一功能的集成电路,后期开发的全功能测试系统是将芯片的不同功能分别测试,特别是针对微系统内部的FPGA资源,需借助外部FPGA复杂的控制逻辑并辅以微系统芯片内部处理器,没有有效利用微系统芯片自身的资源,使得测试系统复杂,价格昂贵,且最终的测试覆盖不全,测试效率不高。
发明内容
本发明中技术解决的问题是:针对传统测试方法所需测试系统复杂,价格昂贵,测试覆盖率不高,测试效率低的问题,提出一种基于片上嵌入式微系统及其内部FPGA资源内建自测试方法,该方法在不加大微系统芯片设计复杂度的情况下,提高了微系统芯片FPGA资源的测试覆盖率,简化了测试系统的硬件设计,加快了FPGA资源的测试速度,提高了测试效率。
本发明的技术解决方案是:一种基于片上嵌入式微系统及其内部FPGA资源内建自测试方法,步骤如下:
(1)将FPGA资源测试所需的测试文件和内部处理器的运行程序存储于微系统的相应存储器中;
(2)上电后,内部处理器从存储器中加载运行程序,并将FPGA的测试文件读出,模拟SelectMAP时序将测试文件分时加载到FPGA中,根据测试文件固化FPGA资源;
(3)FPGA资源测试时,内部处理器提供资源测试所需信号,并根据测试文件固化的FPGA资源进行相应测试,得到并检测测试输出信号。
所述嵌入式微系统芯片包含内部处理器单元和FPGA,存储器部件可位于微系统芯片内或芯片外部;内部处理器单元实现基本的控制和运算,通过自身的IO管脚实现对FPGA的快速加载。
FPGA资源测试所需的硬件测试平台除包含基于片上嵌入式微系统和存储器件外,还需外围电路提供电信号、地信号、时钟信号,并实现板级互联。
存储于存储器中的测试文件能够根据测试需求实现在线更新,而不必更改硬件,极大提高了测试方案的灵活性和通用性。
FPGA资源的测试包括CLB,BlockRAM,IO。
FPGA内部的资源CLB的测试方法如下:
(1)FPGA内部的CLB测试时,通过原语将CLB内部LUT和锁存器例化;
(2)将CLB同一列的所有Slice串行连接,将所有CLB例化成若干条串行链,通过内部处理器给串行链提供高低电平信号,并检测串行链的输出。
FPGA内部的资源BlockRAM的测试方法如下:
(1)FPGA内部的BlockRAM测试时,将BlockRAM分别例化成不同位宽的存储器模块;
(2)内部处理器通过March C算法实现对BlockRAM例化成的存储器模块测试,算法对应的测试信号通过内部处理器提供。
FPGA内部的资源IO的测试方法如下:
(1)FPGA内部的IO测试时,将所有可测IO分别例化成输入、输出和三态。
(2)例化IO内部所有锁存器和MUX单元,每4个IO为一组进行测试,测试所需输入输出信号同样由内部处理器提供。
一种基于片上嵌入式微系统,包括:内部处理器、FPGA;内部处理器和 FPGA通过内部总线实现互联;内部处理器能够控制FPGA进行资源测试,提供资源测试,并检测资源测试输出信号;
对FPGA资源的测试包括CLB,BlockRAM,IO等资源,结合具体资源的测试方法,每种资源对应多个测试文件,测试时依次加载到FPGA中。
相应存储器可以为ROM;存储器ROM可以设置于基于片上嵌入式微系统内部,也可以使用基于片上嵌入式微系统外部的ROM;存储器还存储了内部处理器的运行程序。
FPGA测试所需的测试文件是以Bit文件存储于相应存储器中。
本发明与现有技术相比的有益效果是:
(1)本发明提出了一套完整的基于片上嵌入式微系统的FPGA资源的测试设计流程,弥补了传统的ATE测试和全功能测试系统测试覆盖不全,测试效率低的缺陷,最大程度上提高了测试覆盖率,简化了系统测试流程。
(2)本发明在测试设计上,不仅考虑了FPGA资源测试的完整性,同时将测试效率、测试成本、测试必要性等均列入考虑范围之内,仅利用微系统芯片自身的资源来实现FPGA资源的测试,不再需要微系统芯片之外的处理器件参与。省去了动辄十几万的ATE设备,除待测微系统芯片外,仅需很少的外围硬件,测试成本大幅降低。
(3)通过微系统内部处理器控制测试时序,提供测试所需输入信号,检测测试资源的输出信号,同时通过SelectMAP模式加载测试文件,简化了测试系统设计复杂度,提高了测试效率。SelectMAP实现对FPGA的快速加载,相对于传统的主串或从串模式,加载速度可提高至少8倍。当内部处理器工作时钟不低于100MHz时,整个测试时间可控制在2s之内,极大提高了测试效率。
(4)设计的测试方法将FPGA中的CLB,BlockRAM,IO等资源分别例化成相应模块,覆盖了至少95%的可测资源,测试方法简单高效。
(5)FPGA测试文件与处理器运行程序共享存储器,省去了FPGA的外部专用PROM。测试文件可根据待测资源优化升级,测试文件的数量可不受外部PROM存储器容量的限制。
(6)测试文件的存储方式和SelectMAP的加载方式使得测试系统可通过串口实现在线升级,不必更改任何硬件,提高了测试系统的灵活性。
附图说明
图1是本发明硬件测试平台设计示意图。
图2是SelectMAP写时序图。
图3是FPGA内部输入输出单元IO的内部结构图。
图4是FPGA内部可配置逻辑单元CLB的内部结构图。
图5是FPGA内部BlockRAM的功能结构图。
具体实施方式
本发明针对的微系统芯片可用于各种控制系统,特别是如武器系统、空间系统和飞行器等对小型化、可编程、高可靠和低功耗有较高要求的领域,在系统中实现核心的控制和运算功能。通常微系统芯片由内部处理器和FPGA组成,同时还可包含内部ROM和RAM,微系统芯片内部处理器和FPGA通过内部总线实现互联。本发明所述的FPGA通常用于实现功能扩展和高速运算,内部资源包含可配置逻辑块CLB、BolockRAM、输入输出单元IO等。
本发明所述方法是基于设计方的,生产环节均不在发明范围之内。本发明采用的基于片上嵌入式微系统的芯片内部FPGA资源内建自测试方法包括两个部分:硬件测试平台设计和软件测试方案设计。两个设计部分之间的牵连较大,需要同时协调进行。
本发明一种基于片上嵌入式微系统的芯片内部FPGA资源内建自测试方法,步骤如下:
(1)将FPGA资源测试所需的测试文件和内部处理器的运行程序存储于微系统的相应存储器中,为保证存储足够多的测试文件,存储器容量要求大于 4MB。运行程序于存储器中的具体位置由处理器上电加载时的起始运行地址决定,测试文件的存储位置可根据实际测试顺序确定;
(2)上电后,内部处理器从存储器中加载运行程序,并将存储于存储器中的FPGA测试文件读出,模拟SelectMAP时序(SelectMAP为一种配置和读取FPGA配置文件的协议,SelectMAP写时序如附图2所示)将测试文件分时加载到FPGA中,根据测试文件固化FPGA资源;
(3)FPGA资源测试时,内部处理器提供资源测试所需的时序和逻辑信号,并根据测试文件固化的FPGA资源依次对FPGA内部的可配置逻辑块CLB、 BlockRAM和输入输出单元IO展开测试,得到FPGA反馈的信号并对该反馈信号进行判断。
嵌入式微系统芯片包含内部处理器单元和FPGA,存储器部件可位于微系统芯片内或芯片外部;内部处理器单元实现基本的控制和运算,并通过自身的 IO管脚实现对FPGA的快速加载,相对于传统的主串或从串模式,加载速度可提高至少8倍。
FPGA资源测试所需的硬件测试平台除包含片上嵌入式微系统和存储器件外,还需外围电路提供电信号、地信号、时钟信号,并实现板级互联。以北京微电子技术研究所的微系统芯片BM3109IB为例,设计时需提供3.3V、2.5V、 1.8V共3种电源,且上电先后顺序为2.5V、3.3V、1.8V,上电时间间隔为1ms 左右,同时保证各路电源稳定输出电流不小于2A。板上地信号的设计需提供良好的电流回路。
存储于存储器中的测试文件能够根据测试需求实现在线更新,而不必更改硬件,极大提高了测试方案的灵活性和通用性。更新时上位机通过串口将测试文件发送给微系统即可。
FPGA资源包含基本的可配置逻辑块CLB,BlockRAM,输入输出单元IO 等。
FPGA内部的资源CLB的测试方法如下:
(1)FPGA内部的可配置逻辑块CLB由至少两个Slice构成,每个Slice 又包含多个LUT和锁存器。FPGA内部的CLB测试时,通过Verillog原语将 CLB内部LUT和锁存器例化;
(2)将CLB同一列的所有Slice串行连接,将所有CLB例化成若干条串行链,通过内部处理器给串行链提供高低电平信号,并检测串行链的输出;
FPGA内部的资源BlockRAM的测试方法如下:
(1)FPGA内部的BlockRAM测试时,将BlockRAM分别例化成不同位宽的存储器模块;
(2)内部处理器通过March C算法实现对BlockRAM例化成的存储器模块测试,算法对应的测试信号通过内部处理器提供。
FPGA内部的资源IO的测试方法如下:
(1)微系统内部FPGA的所有IO分为两部分:一部分为微系统对外使用的IO,另一部分为与微系统内部处理器通讯的内部IO。IO的测试仅针对对外使用的IO。测试时,将所有待测IO分别例化成输入、输出和三态。
(2)IO内部同样由多个锁存器和MUX单元组成,测试时需将IO内部所有锁存器和MUX单元例化,每4个IO为一组进行测试,测试所需输入输出信号同样由内部处理器提供。
本发明一种基于片上嵌入式微系统,包括:内部处理器、FPGA;内部处理器和FPGA通过内部总线互联;内部处理器能够控制FPGA进行资源测试,提供资源测试所需信号,并检测资源测试输出信号。
对FPGA资源的测试包括CLB,BlockRAM,IO等资源,结合具体资源的测试方法,每种资源对应多个测试文件,测试时依次加载到FPGA中。
相应存储器可以为ROM;存储器ROM可以设置于基于片上嵌入式微系统内部,也可以使用基于片上嵌入式微系统外部的ROM;存储器还存储了内部处理器的运行程序。RAM资源提供了处理器程序的运行环境,RAM资源同样可设置于片上嵌入式微系统内部,也可以使用基于片上嵌入式微系统外部。
FPGA测试所需的测试文件是以Bit文件存储于相应存储器中。
图1为本发明的硬件测试平台设计示意图,外围电路为整板(包括待测器件)提供系统资源(电信号、地信号、时钟信号等)和板级互联。以北京微电子技术研究所的微系统芯片BM3109IB为例,设计时需提供3.3V、2.5V、1.8V 共3种电源,且上电先后顺序为2.5V、3.3V、1.8V,上电时间间隔为1ms左右,同时保证各路电源稳定输出电流不小于2A。板上地信号的设计需提供良好的电流回路。
嵌入式微系统内部处理器引脚与FPGA通过内部总线实现互联,用来提供 FPGA测试所需的部分输入和输出信号。RAM提供处理器程序的运行环境, ROM用来存储FPGA测试所需的多个测试文件和处理器程序,将测试文件存储在ROM中,可节省FPGA外部配置PROM,同时使得测试文件的数量可不受外部PROM空间大小的限制。处理器的GPIO与FPGA的配置管脚在微系统芯片内部相连,用来模拟SelectMAP时序实现FPGA配置文件的加载 (SelectMAP写时序如附图2所示)。SelectMAP能够实现对FPGA的快速加载,相对于传统的主串或从串模式,加载速度可提高至少8倍。当内部处理器工作时钟不低于100MHz时,整个测试时间可控制在2s之内,极大提高了测试效率。
串口用来向上位机传输测试报告同时作为更新FPGA测试文件的接口。内部处理器通过串口接收上位机发送的待更新测试文件实现测试文件的在线更新,测试系统的灵活性大大提高。外部MUX单元用来连接处理器的GPIO和 FPGA的IO管脚,用来向FPGA提供测试所需的部分输入和输出信号,并保证信号准确到达FPGA对应的IO管脚。
本发明优选的一种基于片上嵌入式微系统的芯片内部FPGA资源内建自测试方法,包括下列步骤:
(1)设计硬件测试平台,将嵌入式微系统芯片、译码器组成的MUX单元以及外围电路设计在硬件测试平台上,硬件测试平台为嵌入式微系统芯片、译码器组成的MUX单元以及外围电路提供电信号、地信号、时钟信号,并实现板级互联;
(2)将FPGA资源测试所需的测试文件和内部处理器的运行程序存储于微系统的相应存储器中,为保证存储足够多的测试文件,存储器容量要求大于 4MB。运行程序于存储器中的具体位置由处理器上电加载时的起始运行地址决定,测试文件的存储位置可根据实际测试顺序确定;
(3)上电后,内部处理器从存储器中加载运行程序,并将存储于存储器中的FPGA测试文件读出,模拟SelectMAP时序(SelectMAP为一种配置和读取FPGA配置文件的协议,SelectMAP写时序如附图2所示)将测试文件加载到FPGA中,根据测试文件固化FPGA资源;SelectMAP能够实现对FPGA 的快速加载,相对于传统的主串或从串模式,加载速度可提高至少8倍。当内部处理器工作时钟不低于100MHz时,整个测试时间可控制在2s之内,极大提高了测试效率。随着处理器频率的提高,效率还可进一步提升。
(4)利用微系统芯片内部处理器对FPGA资源分别进行测试,具体方法如下:
(a)IO资源测试
鉴于FPGA中的CLB和BolockRAM的测试都需要IO参与,故应首先对 IO展开测试。FPGA中的IO资源众多,且每个IO均包含输入、输出和三态控制的锁存器、与门、三态门等(如附图3所示)。测试时,将所有IO分别例化成输入、输出和三态三种模式。每4个IO为一组,其中两个设置为输入,一个设置为三态,一个设置为输出。为覆盖尽可能多的IO资源,IO测试共需要 4个测试文件,在4个测试文件中,同一个IO将分别被设置为输入、输出和三态三种模式,其中输入被设置两次。所有测试文件均由内部处理器从存储器中读出并通过SelectMAP方式依次加载进FPGA中。上述设置方式和测试文件的数量使得IO资源的测试覆盖率达到94%。
测试时,一组中的4个IO,按照设计要求由两个输入IO依次输入高低电平,同时检测输出和三态IO是否为对应的高低电平。高低电平的提供和检测均由内部处理器实现。由于FPGA中的IO资源较多,而处理器的GPIO资源有限,方法中采用译码器构成MUX单元对GPIO的输入输出译码,保证FPGA 中所有IO均能被测试到。
测试结果由内部处理器存储,并通过串口发送给上位机,测试结果能准确反映出所测IO资源功能是否正确,以及故障时对应故障点。
(b)CLB资源测试
BlockRAM的测试需要IO和CLB参与,所以CLB测试应先于BlockRAM 测试。FPGA中的每个CLB通常由2个slice构成(slice0和slice1),每个Slice 又包含2个LUT和2个锁存器以及构成进位链的MUX单元(如附图4所示),设计时通过底层原语将每个slice内部的所有资源例化。将所有slice0中的LUT 组成一条串行测试链,同时将所有slice1中的LUT组成一条串行测试链;同样的,将所有slice0中的锁存器组成一条串行测试链,将所有slice1中的锁存器组成一条串行测试链,组成串行测试链的同时包含进位链中的MUX单元。最终CLB资源的测试需要4个测试文件,所有测试文件均由内部处理器从存储器中读出并依据测试顺序通过SelectMAP方式依次加载进FPGA中。
锁存器链测试时,串行链的一端依次输入高电平或者低电平,通过内部处理器测试输出端是否为对应的高电平或者低电平,以此判定锁存器功能是否正常。LUT测试时,将LUT例化成固定的查找表结构,遍历查找表所有输入,检测输出是否正确。所有的输入输出信号均由内部处理器提供。该测试方法简单可靠,测试方便,CLB资源测试覆盖率可达85%。
测试结果同样由内部处理器存储,并通过串口发送给上位机,测试结果能准确反映出所测CLB资源功能是否正确,以及故障时对应故障点。
(c)BlockRAM资源测试
BlockRAM的功能结构如附图5所示。测试时需要将FPGA内部的 BlockRAM模块分别例化成1位、2位、4位、8位和16位,考虑FPGA资源利用率的限制,每次仅测试一半的BlockRAM资源,故BlockRAM测试共需要 10个测试文件。系统上电,待内部处理器初始化完成后,从存储器中读出已设计好的测试文件并通过SelectMAP加载到FPGA中,采用March C算法对BlockRAM进行测试,系统内部互联总线提供测试所需的输入输出信号。待一个测试文件测试完成后,加载下一个测试文件,直至所有10个测试文件测试完成。
测试完成后所有的测试结果被内部处理器存储,并通过串口发送给上位机,测试结果能够准确反映所测BlockRAM资源功能是否正确,以及故障时准确的故障点。
(5)测试时通过不同编程语言实现上述不同的测试功能:嵌入式汇编语言 (SPARC汇编)设计主要针对内部处理器的上电初始化;嵌入式C语言设计主要针对方案中具体设计方法的实现,包括测试顺序控制,提供测试所需的输入信号,检测并判断待测模块的输出,读取存储器中指定位置的测试文件并通过模拟SelectMAP加载FPGA等;硬件描述语言(Verilog HDL)和FPGA底层原语设计主要例化和实现FPGA中具体资源,将其配置成测试所需的逻辑电路,实现对FPGA资源的测试。
(6)硬件电路设计完毕且无法更改时,FPGA的测试文件可通过串口更新到存储器中,用以进一步完善测试方案。
本发明依据嵌入式微系统芯片的优势,充分利用微系统芯片内部的资源,提出了一种基于片上嵌入式微系统的芯片内部FPGA资源内建自测试方法,并通过软硬件协同执行,实现了针对微系统芯片内部FPGA资源的测试。该方法在不加大微系统芯片设计复杂度的情况下,提高了微系统芯片FPGA资源的测试覆盖率,简化了测试系统的硬件设计,加快了FPGA资源的测试速度,提高了测试效率,同时使得测试系统更加灵活。

Claims (3)

1.一种基于片上嵌入式微系统的芯片内部FPGA资源内建自测试方法,其特征在于:嵌入式微系统芯片包含内部处理器单元和FPGA,存储器部件可位于微系统芯片内或芯片外部;内部处理器单元实现基本的控制和运算,通过自身的IO管脚实现对FPGA的快速加载;
步骤如下:
(1)将FPGA资源测试所需的测试文件和内部处理器的运行程序存储于微系统的相应存储器中;FPGA资源测试所需的硬件测试平台除包含基于片上嵌入式微系统和存储器件外,还需外围电路提供电信号、地信号、时钟信号,并实现板级互联;存储于存储器中的测试文件能够根据测试需求实现在线更新,而不必更改硬件,极大提高了测试方案的灵活性和通用性;
(2)上电后,内部处理器从存储器中加载运行程序,并将FPGA的测试文件读出,模拟SelectMAP时序将测试文件分时加载到FPGA中,根据测试文件固化FPGA资源;
(3)FPGA资源测试时,内部处理器提供资源测试所需信号,并根据测试文件固化的FPGA资源进行相应测试,得到并检测测试输出信号;
FPGA资源的测试包括CLB,BlockRAM,IO;
FPGA内部的资源CLB的测试方法如下:
(1)FPGA内部的CLB测试时,通过原语将CLB内部LUT和锁存器例化;
(2)将CLB同一列的所有Slice串行连接,将所有CLB例化成若干条串行链,通过内部处理器给串行链提供高低电平信号,并检测串行链的输出;
FPGA内部的资源BlockRAM的测试方法如下:
(1)FPGA内部的BlockRAM测试时,将BlockRAM分别例化成不同位宽的存储器模块;
(2)内部处理器通过March C算法实现对BlockRAM例化成的存储器模块测试,算法对应的测试信号通过内部处理器提供;
FPGA内部的资源IO的测试方法如下:
(1)FPGA内部的IO测试时,将所有可测IO分别例化成输入、输出和三态;
(2)例化IO内部所有锁存器和MUX单元,每4个IO为一组进行测试,测试所需输入输出信号同样由内部处理器提供。
2.一种基于片上嵌入式微系统,其特征在于包括:内部处理器、FPGA;内部处理器和FPGA通过内部总线实现互联;内部处理器能够控制FPGA进行资源测试,提供资源测试,并检测资源测试输出信号;
对FPGA资源的测试包括CLB,BlockRAM,IO资源,结合具体资源的测试方法,每种资源对应多个测试文件,测试时依次加载到FPGA中;
相应存储器为ROM;存储器ROM设置于基于片上嵌入式微系统内部;存储器还存储了内部处理器的运行程序;
FPGA测试所需的测试文件是以Bit文件存储于相应存储器中;
嵌入式微系统芯片包含内部处理器单元和FPGA,存储器部件可位于微系统芯片内或芯片外部;内部处理器单元实现基本的控制和运算,通过自身的IO管脚实现对FPGA的快速加载;上电后,内部处理器从存储器中加载运行程序,并将FPGA的测试文件读出,模拟SelectMAP时序将测试文件分时加载到FPGA中,根据测试文件固化FPGA资源;FPGA资源测试时,内部处理器提供资源测试所需信号,并根据测试文件固化的FPGA资源进行相应测试,得到并检测测试输出信号;
FPGA资源测试所需的硬件测试平台除包含基于片上嵌入式微系统和存储器件外,还需外围电路提供电信号、地信号、时钟信号,并实现板级互联;
存储于存储器中的测试文件能够根据测试需求实现在线更新,而不必更改硬件,极大提高了测试方案的灵活性和通用性;
FPGA资源的测试包括CLB,BlockRAM,IO;
FPGA内部的资源CLB的测试方法如下:
(1)FPGA内部的CLB测试时,通过原语将CLB内部LUT和锁存器例化;
(2)将CLB同一列的所有Slice串行连接,将所有CLB例化成若干条串行链,通过内部处理器给串行链提供高低电平信号,并检测串行链的输出;
FPGA内部的资源BlockRAM的测试方法如下:
(1)FPGA内部的BlockRAM测试时,将BlockRAM分别例化成不同位宽的存储器模块;
(2)内部处理器通过March C算法实现对BlockRAM例化成的存储器模块测试,算法对应的测试信号通过内部处理器提供;
FPGA内部的资源IO的测试方法如下:
(1)FPGA内部的IO测试时,将所有可测IO分别例化成输入、输出和三态;
(2)例化IO内部所有锁存器和MUX单元,每4个IO为一组进行测试,测试所需输入输出信号同样由内部处理器提供。
3.根据权利要求2所述的一种基于片上嵌入式微系统,其特征在于,存储器使用基于片上嵌入式微系统外部的ROM。
CN201711363686.0A 2017-12-18 2017-12-18 基于片上嵌入式微系统及其内部fpga资源内建自测试方法 Active CN108319526B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201711363686.0A CN108319526B (zh) 2017-12-18 2017-12-18 基于片上嵌入式微系统及其内部fpga资源内建自测试方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711363686.0A CN108319526B (zh) 2017-12-18 2017-12-18 基于片上嵌入式微系统及其内部fpga资源内建自测试方法

Publications (2)

Publication Number Publication Date
CN108319526A CN108319526A (zh) 2018-07-24
CN108319526B true CN108319526B (zh) 2021-09-21

Family

ID=62893055

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711363686.0A Active CN108319526B (zh) 2017-12-18 2017-12-18 基于片上嵌入式微系统及其内部fpga资源内建自测试方法

Country Status (1)

Country Link
CN (1) CN108319526B (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110362434B (zh) * 2019-03-22 2023-08-15 斑马网络技术有限公司 对象测试方法及设备
CN111044887B (zh) * 2019-12-09 2022-05-13 北京时代民芯科技有限公司 一种ddr2/3 phy bist命令通道测试向量生成方法
CN111611167B (zh) * 2020-05-22 2023-04-18 厦门理工学院 基于dsp的嵌入式软件测试方法与系统
CN111693848B (zh) * 2020-06-11 2022-08-02 西安微电子技术研究所 一种SiP模块的电参数测试程序注入及多模测试实现方法
CN112231160A (zh) * 2020-10-16 2021-01-15 上海国微思尔芯技术股份有限公司 Fpga板动态调试方法及fpga板动态调试装置
CN112799889A (zh) * 2020-12-30 2021-05-14 杭州涂鸦信息技术有限公司 一种flash芯片的测试方法及相关装置
CN113505063B (zh) * 2021-07-05 2022-09-30 中航机载系统共性技术有限公司 一种fpga逻辑测试方法及装置
CN117033112B (zh) * 2023-08-07 2024-06-25 西安微电子技术研究所 一种系统级dft实现方法、系统、设备及介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103198868A (zh) * 2013-04-16 2013-07-10 西北核技术研究所 一种用于单粒子翻转的故障模拟系统及分析方法
CN103823139A (zh) * 2014-02-27 2014-05-28 北京时代民芯科技有限公司 一种基于sip模块的老炼方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7225416B1 (en) * 2004-06-15 2007-05-29 Altera Corporation Methods and apparatus for automatic test component generation and inclusion into simulation testbench

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103198868A (zh) * 2013-04-16 2013-07-10 西北核技术研究所 一种用于单粒子翻转的故障模拟系统及分析方法
CN103823139A (zh) * 2014-02-27 2014-05-28 北京时代民芯科技有限公司 一种基于sip模块的老炼方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
FPGA故障检测方法研究及软件实现;罗俊杰;《中国优秀硕士学位论文全文数据库-信息科技辑》;20160315;正文第1-91页 *

Also Published As

Publication number Publication date
CN108319526A (zh) 2018-07-24

Similar Documents

Publication Publication Date Title
CN108319526B (zh) 基于片上嵌入式微系统及其内部fpga资源内建自测试方法
US10281524B2 (en) Test partition external input/output interface control for test partitions in a semiconductor
CN105866665B (zh) 面向高性能SoC FPGA的功能遍历测试方法
US5968196A (en) Configuration control in a programmable logic device using non-volatile elements
US7552370B2 (en) Application specific distributed test engine architecture system and method
EP1133702B1 (en) A reconfigurable integrated circuit with integrated debugging facilities for use in an emulation system
US6937493B2 (en) Programming flash memory via a boundary scan register
CN111366841B (zh) 一种fpga可编程逻辑单元测试设备及使用方法
CN207965049U (zh) 用于将tap信号耦合到集成电路封装中的jtag接口的电路
CN109445366B (zh) 一种fpga可编程逻辑资源的筛选测试方法
WO2016191013A1 (en) Remote bus wrapper for testing remote cores using automatic test pattern generation and other techniques
CN104751896A (zh) 内建自测试电路
CN104515951A (zh) 一种板级嵌入式测试控制器及测试方法
US20070075736A1 (en) FPGA powerup to known functional state
CN108919006A (zh) 接口扩展模组、老化测试系统、老化测试方法及存储介质
US9009457B2 (en) Integrated circuit boot code and fuse storage implemented on interposer-mounted non-volatile memory
US20090144595A1 (en) Built-in self-testing (bist) of field programmable object arrays
US7533211B2 (en) Cross-bar switching in an emulation environment
CN112241388A (zh) 基于flash和继电器的fpga配置测试系统及方法
JP2002203398A (ja) 不良な列にあるアドレスでプログラミングするのに時間を消費することを回避する方法
US20030046625A1 (en) Method and apparatus for efficient control of multiple tap controllers
US20170370988A1 (en) Burn-in testing of individually personalized semiconductor device configuration
Vanitha et al. Implementation of an integrated FPGA based automatic test equipment and test generation for digital circuits
CN109656350A (zh) 一种基于dft扫描链的低功耗实现方法
US20180275736A1 (en) Phase lock loop bypass for board-level testing of systems

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