CN106598840B - 基于软件自测试技术的慢速外设高效测试架构及方法 - Google Patents

基于软件自测试技术的慢速外设高效测试架构及方法 Download PDF

Info

Publication number
CN106598840B
CN106598840B CN201610935265.XA CN201610935265A CN106598840B CN 106598840 B CN106598840 B CN 106598840B CN 201610935265 A CN201610935265 A CN 201610935265A CN 106598840 B CN106598840 B CN 106598840B
Authority
CN
China
Prior art keywords
test
peripheral hardware
slow speed
period
stand
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
CN201610935265.XA
Other languages
English (en)
Other versions
CN106598840A (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.)
Nanjing University of Aeronautics and Astronautics
Original Assignee
Nanjing University of Aeronautics and Astronautics
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 Nanjing University of Aeronautics and Astronautics filed Critical Nanjing University of Aeronautics and Astronautics
Priority to CN201610935265.XA priority Critical patent/CN106598840B/zh
Publication of CN106598840A publication Critical patent/CN106598840A/zh
Application granted granted Critical
Publication of CN106598840B publication Critical patent/CN106598840B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3684Test management for test design, e.g. generating new test cases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites

Landscapes

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

Abstract

本发明公开了基于软件自测试技术的慢速外设高效测试架构及方法,属于处理器测试的技术领域。本发明采用伪随机数生成程序模拟线性反馈移位寄存器以生成满足各慢速测试要求的测试图形,消除了增加额外特定测试硬件电路的需求,可灵活配置本原多项式,运用微处理器自身指令集完成测试图形的产生和施加,并依据长等待测试组优先测试原则排列各慢速外设测试组的测试顺序,使得多个外设的总测试时间能够尽量地缩减,提高处理器的空闲利用率。

Description

基于软件自测试技术的慢速外设高效测试架构及方法
技术领域
本发明公开电路基于软件自测试技术的慢速外设高效测试架构及方法,属于处理器测试的技术领域。
背景技术
慢速外设的测试是处理器系统测试的研究方向之一。慢速外设的时钟频率远远低于处理器时钟频率导致处理器在测试慢速外设时长时间处于空闲阶段。
现有的慢速外设(如:UART、I2C、SPI)的时钟频率远低于处理器的时钟频率,例如,处理器的时钟为100M,而外设时钟只有10M、20M,甚至更低。同时又由于采用的是串行的数据传输方式,上述原因导致处理器与这类外设之间进行数据传输时所需等待的时间过长,严重限制了处理器的高速处理性能,也影响了慢速外设的测试效率。
传统的内建自测试、边界扫描技术等,除了需要增加硬件电路开销以外,还有随之而来的功耗开销,同时缺乏灵活的可扩展性。软件自测试技术是利用处理器可编程资源来运行规范的程序以实现测试处理的一种新型处理器测试技术,本发明旨在提出一种新型的基于软件自测试技术的慢速外设高效测试架构及方法。
发明内容
本发明的发明目的是针对上述背景技术的不足,提供基于软件自测试技术的慢速外设高效测试架构及方法,无需另外添加的伪随机数发生器电路,同时利用测试调度算法合理、高效地实现慢速外设的测试,解决了现有慢速外设测试功耗大、可扩展性差的技术问题。
本发明为实现上述发明目的采用如下技术方案:
基于软件自测试技术的慢速外设高效测试系统为具有软件自测功能的微处理器系统,采用该微处理器系统对挂接在外部总线上的外设进行测试,
所述微处理器系统包含:
ROM,存储测试向量生成程序以及测试调度程序;
挂接在外部总线上的微处理器核,调用测试向量生成程序以产生符合各慢速外设测试要求的测试向量集,调用测试调度程序生成用于调整测试地址、调用测试向量生成程序、按照优先测试等待时间最长测试组并利用执行等待时间最长测试组中各测试行为的时间间隔执行其余测试组的原则生成测试向量施加顺序、按序施加测试向量、按序收集测试响应数据的测试指令,所述按序施加测试向量、按序收集测试响应数据的测试指令通过外部总线传输至外设;
RAM,存储微处理器核生成的测试向量集以及慢速外设反馈的测试响应数据。
基于软件自测试技术的慢速外设高效测试方法,采用上述系统实现,具体为:根据慢速外设外部特性生成测试向量集,基于微处理器系统自身指令集生成测试指令,对测试指令进行取指、译码、执行、访存、回写处理以实现测试向量的施加,根据优先测试等待时间最长测试组并利用执行等待时间最长测试组中各测试行为的时间间隔执行其余测试组的原则对外挂在总线上的慢速外设依次进行测试。
基于软件自测试技术的慢速外设高效测试方法中,根据慢速外设外部特性生成测试向量集的方法为:根据被测慢速外设的特性分析并选取线性反馈移位寄存器的初始状态、本原多项式,调用伪随机数发生程序模拟线性反馈移位寄存器以生成位宽满足各慢速外设测试要求的伪随机数,满足各慢速外设测试要求的伪随机数组成测试向量集。
基于软件自测试技术的慢速外设高效测试方法中,基于微处理器系统自身指令集生成测试指令通过修改或添加微处理器系统自身指令集中的定制指令实现。
基于软件自测试技术的慢速外设高效测试方法中,根据优先测试等待时间最长测试组并利用执行等待时间最长测试组中各测试行为的时间间隔执行其余测试组的原则对外挂在总线上的慢速外设依次进行测试的方法为:
首先,安排等待时间最长的测试组进行测试;
接着,当等待时间次长的测试组在等待时间最长的测试组中各测试行为执行时间的间隔中能够完成时,在所述时间间隔中将等待时间次长的测试组中各测试行为安排在紧邻等待时间最长测试组中对应测试行为的空闲时钟,否则,将等待时间次长的测试组中各测试行为安排在等待时间最长测试组中对应测试行为完成后的第一个空闲时钟,依次类推,完成所有测试组执行顺序的排列;
最后,按测试组执行顺序依次向外挂在总线上的慢速外设传输测试指令,并按序取回各慢速外设的测试响应数据。
本发明采用上述技术方案,具有以下有益效果:
(1)本发明提出了一种无需增加额外特定测试硬件电路即可实现慢速外设高效测试的架构,减小了系统开销;
(2)采用伪随机数生成程序模拟线性反馈移位寄存器以生成满足各慢速测试要求的测试图形,消除了增加额外特定测试硬件电路的需求,可灵活配置本原多项式,运用微处理器自身指令集完成测试图形的产生和施加,并依据优先测试等待时间最长测试组并利用执行等待时间最长测试组中各测试行为的时间间隔执行其余测试组的原则排列各慢速外设测试组的测试顺序,使得多个外设的总测试时间能够尽量地缩减,提高处理器的空闲利用率。
附图说明
图1为基于软件自测的慢速设备测试系统整体框图。
图2为测试流程图。
图3为外设测试调度算法的伪代码。
图4为长等待时间最长测试组优先调度算法的框图。
具体实施方式
下面详细描述本发明的实施方式,下面通过参考附图描述的实施方式是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。为便于对本发明实施例的理解,下面将结合附图以几个具体实施例为例做进一步的解释说明,且各个实施例并不构成对本发明实施例的限定。本领域普通技术人员可以理解:附图只是一个实施例的示意图,附图中的模块或流程并不一定是实施本发明所必须的。
基于软件自测试的慢速外设高效测试架构由微处理器核和慢速外设挂接在外部总线上形成。外设的测试向量由微处理器核产生;根据等待时间最长测试组优先测试的原则,微处理器核通过外部总线控制测试图形施加于各自对应的慢速外设的顺序,并有序地取回外设反馈的测试响应数据,存储测试向量以及测试响应数据于指定的数据RAM中,从而实现慢速外设的高效测试。
这种测试架构基于紧凑的微处理器系统搭建而成。这个处理器系统包括微处理器核、外部总线、ROM以及RAM,慢速外设挂接在外部总线上,微处理器核与慢速外设的数据交互通过总线接口得以实现,ROM存储了控制整个测试流程的测试调度程序,RAM存储了施加于被测外设的测试向量和被测外设的测试响应数据。而微处理器核内部是五级流水线工作,每一条指令都包括取指、译码、执行、访存和回写五个阶段,其中,取指阶段负责根据微处理器核的运行状态取得微处理器核执行的每一条用于测试外设的指令,设计的测试程序通过编译器编译后生成测试指令,测试指令存储在指令存储器中;译码阶段将测试指令翻译成微处理器核能够执行的测试行为,并传输数据和控制信号至其它阶段;执行阶段根据测试指令的要求执行操作数,比如,测试地址的循环叠加和循环递减、测试数据的配置、外设存取的数据传输等;访存阶段负责存储各个外设的测试图形,同时管理微处理器核与外设的接口;回写阶段根据测试指令,在执行阶段的执行结果和访存阶段读取的测试图形之间进行选择,将结果送回目标寄存器。在测试外设时,处理器按照测试执行程序的测试指令从总线上读写数据,以便完成慢速外设的测试。
以图1所给出的慢速外设测试系统框图为基础,阐述基于软件自测试的慢速外设高速测试方法,测试方法流程图如图2所示:
首先,准备测试:
根据伪随机数发生器电路的原理编写测试向量生成程序,测试向量生成程序能产生符合各慢速外设测试要求的不同位宽的测试向量;
根据被测外设的个数、独立测试时间长度编写测试调度程序,测试调度程序能够变化测试地址、调用测试向量生成程序,按照等待时间最长测试组优先的原则(伪代码如图3所示)生成微处理器向各外设施加测试图形的顺序,微处理器核调度该程序后向各慢速外设按序施加测试图形并按序取回各慢速外设的测试响应数据;
设计好的测试调度程度通过编译器编译后产生微处理器核能够执行的二进制代码(即为测试指令),下载测试向量生成程序以及测试指令到指令ROM;
接着,激活测试:
微处理器核读取各慢速外设的测试特征信号(特征信号表明了线性反馈移位寄存器的初始图形以及本原多项式),慢速外设的数量决定了测试向量的数量,从指令ROM中调用测试向量生成程序(软件模拟线性反馈移位寄存器电路)以产生各个慢速外设的测试向量(即为测试图形),然后存储于数据RAM中以备调用;
然后,开始测试:
微处理器读取各慢速外设响应施加在其自身测试向量的时间,调用测试调度程序生成包含测试地址、CPU时钟分配信息、向各慢速外设施加测试图形顺序的测试指令,从存储器RAM按序读取测试向量,按序向各慢速外设施加测试向量,在一个外设处于占用等待的时候,处理器操作总线向另一个外设送测试向量,在占用等待结束时按序读回各慢速外设的测试响应数据,并存储测试响应数据于数据RAM中。
采用软件方式实现用于生成随机测试图形的线性反馈移位寄存器。对于4位线性反馈移位寄存器,根据本原多项式x4+x+1的系数连接反馈所形成的电路,可以生成最大长度的伪随机序列,而且序列的每一位不具有周期性。当给予1个初始状态0001后,程序可以依次产生1000,0100,0010,1001,1100,0110,1011,0101,1010,1101,1110,1111,0111,0011,0001,最长为24-1的伪随机序列。相比硬件实现的线性反馈移位寄存器,软件实现的程序的优点是:不需要增加额外的硬件电路,直接通过处理器指令实现伪随机图形生成;易于配置初始状态和总共产生的序列数量。而本架构采取的方法是,通过编写一个基于处理器指令集的伪随机数生成程序来模拟硬件的伪随机生成硬件结构,优点是基于程序生成随机数,可灵活配置本原多项式,又无需额外硬件电路。
以图4所示外设测试采用的调度算法框图阐述高效的慢速外设测试方法。设定对每个外设的一组测试为(W,R)即(写,读)操作。由于外设工作在远低于处理器的频率范围,所以每一组(W,R)操作的写和读之间需要等待相应长的时间。期间,处理器处于空闲。本方法的目的是利用一个外设测试等待的时间,进行另一外设的读或写操作,从而使得多个外设的总测试时间能够尽量地缩减,提高处理器的空闲利用率。本方法采用等待时间最长测试组优先测试的调度算法,即最先安排所需等待时间最长的测试组(W1,R1)。接着安排所需等待时间第二长的测试组,将W2紧接着W1之后的第一个空闲时钟,同时,如果R2能够在R1执行之前的一个时钟执行,则将R2安排在R1之前的一个时钟,如果不能,则R2安排在R1之后的一个时钟。执行上一步骤,直到最后一组测试(Wn,Rn)。
给出测试实例如下,测试对象为三片EEPROM,它们都通过I2C总线与总线接口电路相连,测试的地址宽度为256bit。处理器的时钟频率为100MHz,EEPROM0的时钟频率为10MHz,EEPROM1的时钟频率为20MHz,EEPROM2的时钟频率为25MHz。三片EEPROM完成一次写或者读操作需要40个I2C时钟周期。单独进行EEPROM0的测试所需的测试时间为100ns×40×256×2=2048000ns。(100ns是EEPROM0的时钟周期,40是一次读或写操作占用总线周期的个数,256表示测试的数据有256个,2代表一次读遍历和一次写遍历),实验结果如下表所示:

Claims (5)

1.基于软件自测试技术的慢速外设高效测试系统,其特征在于,所述系统为具有软件自测功能的微处理器系统,采用该微处理器系统对挂接在外部总线上的外设进行测试,
所述微处理器系统包含:
ROM,存储测试向量生成程序以及测试调度程序;
挂接在外部总线上的微处理器核,调用测试向量生成程序以产生符合各慢速外设测试要求的测试向量集,调用测试调度程序生成用于调整测试地址、调用测试向量生成程序、按照优先测试等待时间最长测试组并利用执行等待时间最长测试组中各测试行为的时间间隔执行其余测试组的原则生成测试向量施加顺序、按序施加测试向量、按序收集测试响应数据的测试指令,所述按序施加测试向量、按序收集测试响应数据的测试指令通过外部总线传输至外设;
RAM,存储微处理器核生成的测试向量集以及慢速外设反馈的测试响应数据。
2.基于软件自测试技术的慢速外设高效测试方法,其特征在于,采用权利要求1所述系统实现,具体为:根据慢速外设外部特性生成测试向量集,基于微处理器系统自身指令集生成测试指令,对测试指令进行取指、译码、执行、访存、回写处理以实现测试向量的施加,根据优先测试等待时间最长测试组并利用执行等待时间最长测试组中各测试行为的时间间隔执行其余测试组的原则对外挂在总线上的慢速外设依次进行测试。
3.根据权利要求2所述基于软件自测试技术的慢速外设高效测试方法,其特征在于,根据慢速外设外部特性生成测试向量集的方法为:根据被测慢速外设的特性分析并选取线性反馈移位寄存器的初始状态、本原多项式,调用伪随机数发生程序模拟线性反馈移位寄存器以生成位宽满足各慢速外设测试要求的伪随机数,满足各慢速外设测试要求的伪随机数组成测试向量集。
4.根据权利要求2或3所述基于软件自测试技术的慢速外设高效测试方法,其特征在于,基于微处理器系统自身指令集生成测试指令通过修改或添加微处理器系统自身指令集中的定制指令实现。
5.根据权利要求4所述基于软件自测试技术的慢速外设高效测试方法,其特征在于,根据优先测试等待时间最长测试组并利用执行等待时间最长测试组中各测试行为的时间间隔执行其余测试组的原则对外挂在总线上的慢速外设依次进行测试的方法为:
首先,安排等待时间最长的测试组进行测试;
接着,当等待时间次长的测试组在等待时间最长的测试组中各测试行为执行时间的间隔中能够完成时,在所述时间间隔中将等待时间次长的测试组中各测试行为安排在紧邻等待时间最长测试组中对应测试行为的空闲时钟,否则,将等待时间次长的测试组中各测试行为安排在等待时间最长测试组中对应测试行为完成后的第一个空闲时钟,依次类推,完成所有测试组执行顺序的排列;
最后,按测试组执行顺序依次向外挂在总线上的慢速外设传输测试指令,并按序取回各慢速外设的测试响应数据。
CN201610935265.XA 2016-10-25 2016-10-25 基于软件自测试技术的慢速外设高效测试架构及方法 Active CN106598840B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610935265.XA CN106598840B (zh) 2016-10-25 2016-10-25 基于软件自测试技术的慢速外设高效测试架构及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610935265.XA CN106598840B (zh) 2016-10-25 2016-10-25 基于软件自测试技术的慢速外设高效测试架构及方法

Publications (2)

Publication Number Publication Date
CN106598840A CN106598840A (zh) 2017-04-26
CN106598840B true CN106598840B (zh) 2018-03-13

Family

ID=58555925

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610935265.XA Active CN106598840B (zh) 2016-10-25 2016-10-25 基于软件自测试技术的慢速外设高效测试架构及方法

Country Status (1)

Country Link
CN (1) CN106598840B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109143023A (zh) * 2018-06-26 2019-01-04 北京中电华大电子设计有限责任公司 一种普遍适用于lsi的iddq测试图形设计方法
CN110502439B (zh) * 2019-08-07 2024-01-12 Oppo广东移动通信有限公司 调试方法、装置、电子设备以及存储介质
CN116243147B (zh) * 2023-05-09 2023-08-18 武汉芯必达微电子有限公司 基于pad功能矩阵的集成控制芯片外设自测试方法及装置

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04323732A (ja) * 1991-04-24 1992-11-12 Nec Corp 周辺装置の試験方式
JP2001125837A (ja) * 1999-10-28 2001-05-11 Nec Software Hokuriku Ltd 周辺装置試験方式およびそのプログラム記録媒体
TW200407711A (en) * 2003-10-17 2004-05-16 Via Tech Inc Testing apparatus
CN101038325B (zh) * 2007-02-14 2010-11-10 北京中星微电子有限公司 一种测试芯片的方法及装置
CN102508753B (zh) * 2011-11-29 2014-09-03 青岛海信信芯科技有限公司 Ip核验证系统
CN103678075B (zh) * 2013-12-27 2018-04-06 北京自动测试技术研究所 基于自动矢量生成技术的复杂微处理器测试方法

Also Published As

Publication number Publication date
CN106598840A (zh) 2017-04-26

Similar Documents

Publication Publication Date Title
CN105487838B (zh) 一种动态可重构处理器的任务级并行调度方法与系统
JP4234925B2 (ja) データ処理装置、制御方法およびその記録媒体
WO2022170997A1 (zh) 基于risc-v指令集进行数据处理的方法、系统、设备及介质
WO2017185389A1 (zh) 一种用于执行矩阵乘运算的装置和方法
JP4292198B2 (ja) 実行スレッドをグループ化するための方法
EP2372530A1 (en) Data processing method and device
CN106598840B (zh) 基于软件自测试技术的慢速外设高效测试架构及方法
CN103197916A (zh) 用于源操作数收集器高速缓存的方法和装置
CN102402415B (zh) 一种动态可重构阵列内数据缓存的装置及方法
CN101625635B (zh) 一种处理循环任务的方法、系统和设备
CN112667289B (zh) 一种cnn推理加速系统、加速方法及介质
EP2806361B1 (en) Memory unit for emulated shared memory architectures
EP2866138B1 (en) Floating-point supportive pipeline for emulated shared memory architectures
CN112580792B (zh) 一种神经网络多核张量处理器
KR100331565B1 (ko) 매트릭스 연산 장치 및 매트릭스 연산기능을 갖는 디지털신호처리 장치
Sunitha et al. Performance improvement of CUDA applications by reducing CPU-GPU data transfer overhead
Xie et al. Pim-vr: Erasing motion anomalies in highly-interactive virtual reality world with customized memory cube
US9274831B2 (en) Information processing apparatus, information processing method, and storage medium
WO2016024508A1 (ja) マルチプロセッサ装置
Yan et al. A reconfigurable processor architecture combining multi-core and reconfigurable processing unit
CN115983348A (zh) 支持卷积神经网络扩展指令的risc-v加速器系统
CN103294449A (zh) 发散操作的预调度重演
KR100863080B1 (ko) 저전력형 컨피규레이션 캐시와 이를 포함하는 재구성형프로세싱 시스템
Tan et al. A pipelining loop optimization method for dataflow architecture
CN101819608B (zh) 一种微处理器指令级随机验证中加速取指的装置和方法

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
EE01 Entry into force of recordation of patent licensing contract
EE01 Entry into force of recordation of patent licensing contract

Application publication date: 20170426

Assignee: Nanjing Rong Ce detection techniques Co.,Ltd.

Assignor: Nanjing University of Aeronautics and Astronautics

Contract record no.: X2021980000115

Denomination of invention: Efficient testing architecture and method of slow peripheral based on software self testing technology

Granted publication date: 20180313

License type: Common License

Record date: 20210107