CN112948197B - 多核处理器测试装置、系统、方法及片上系统 - Google Patents

多核处理器测试装置、系统、方法及片上系统 Download PDF

Info

Publication number
CN112948197B
CN112948197B CN202110363738.4A CN202110363738A CN112948197B CN 112948197 B CN112948197 B CN 112948197B CN 202110363738 A CN202110363738 A CN 202110363738A CN 112948197 B CN112948197 B CN 112948197B
Authority
CN
China
Prior art keywords
signal
configuration signal
bit signal
test
configuration
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
CN202110363738.4A
Other languages
English (en)
Other versions
CN112948197A (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.)
Zhuhai Pantum Electronics Co Ltd
Original Assignee
Zhuhai Pantum Electronics Co Ltd
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 Zhuhai Pantum Electronics Co Ltd filed Critical Zhuhai Pantum Electronics Co Ltd
Priority to CN202110363738.4A priority Critical patent/CN112948197B/zh
Publication of CN112948197A publication Critical patent/CN112948197A/zh
Application granted granted Critical
Publication of CN112948197B publication Critical patent/CN112948197B/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/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
    • G06F11/2236Detection 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 to test CPU or processors
    • 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
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

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)

Abstract

本申请涉及一种多核处理器测试装置、系统、方法、片上系统及图像形成装置,片上系统包括多个内核、选择电路、传输线及寄存器;每个内核包括测试接口,至少两个内核的测试接口通过选择电路与传输线电连接,传输线还与寄存器及测试模块连接;测试模块用于从信号接收端接收第一配置信号并将第一配置信号发送至传输线;寄存器用于生成第二配置信号并将第二配置信号发送至传输线;选择电路用于从传输线接收第一配置信号和第二配置信号,并根据第一配置信号和第二配置信号从多个内核中选通至少一个目标内核的测试接口,以使得测试模块对目标内核进行测试。

Description

多核处理器测试装置、系统、方法及片上系统
技术领域
本申请涉及集成电路测试技术领域,具体地讲,涉及一种多核处理器测试装置、系统、方法、片上系统以及包括片上系统的图像形成装置。
背景技术
随着人们对处理器性能的不断追求,单内核的处理器芯片已经无法满足日益增长的性能需求,而多核处理器芯片已经在各个领域中得到广泛应用。但出于对芯片设计及应用角度的考虑,多核的SoC(System on Chip,系统级芯片)除了拥有多个内核及其更高的性能之外,同时也具有更多的引脚,而每个引脚的引出与芯片PKG面积及基板PCB叠层都有着较大关系,也就是说,引脚过多会造成成本的增加。因此,为了节约成本,必须在有限或者更小的面积内减少多核SoC的引脚排布。
在利用多核SoC进行产品的开发和测试阶段,每个内核都需要连接JTAG引脚进行调试检测,但在产品开发完成后,JTAG引脚就会被闲置。JTAG接口模式包括5线模式和2线模式,假设一个四核的处理器芯片,每个内核都是5线的JTAG模式,那么在产品开发完成后,就会有4*5=20个JTAG引脚被闲置,这意味着需要更大的芯片面积和PCB基板面积,也就意味着非必要成本的增加。除此之外,在利用JTAG引脚进行调试或者测试的过程中,可能出现多核SoC中当前测试内核死机的情况,且在多核SoC的内核死机后,无法进行JTAG引脚切换。
发明内容
鉴于此,本申请提出一种能够解决上述一个或多个问题的多核处理器测试装置、系统、方法、片上系统以及包括片上系统的图像形成装置,所述多核处理器测试装置、系统、方法及片上系统能够减小内核占用的芯片面积和PCB基板面积且解决内核出现死机情况时造成无法继续进行测试的问题。
本申请提供一种片上系统,包括多个内核、选择电路、传输线及寄存器;每个所述内核包括测试接口,至少两个所述内核的测试接口通过所述选择电路与所述传输线电连接,所述传输线还与所述寄存器及测试模块连接;
所述测试模块用于从信号接收端接收第一配置信号并将所述第一配置信号发送至所述传输线;
所述寄存器用于生成第二配置信号并将所述第二配置信号发送至所述传输线;
所述选择电路用于从所述传输线接收所述第一配置信号和所述第二配置信号,并根据所述第一配置信号和所述第二配置信号从多个所述内核中选通至少一个目标内核的测试接口,以使得所述测试模块对所述目标内核进行测试。
在一种实施方式中,所述测试模块还用于判断所述目标内核是否处于死机状态,当所述目标内核处于死机状态时,所述测试模块用于从信号接收端接收第三配置信号并将所述第三配置信号发送至所述传输线;
所述选择电路用于从所述传输线接收所述第二配置信号和所述第三配置信号,并根据所述第二配置信号和所述第三配置信号切换选通的目标内核;
或者,当所述目标内核处于死机状态时,所述寄存器用于生成第四配置信号并将所述第四配置信号发送至所述传输线;
所述选择电路用于从所述传输线接收所述第一配置信号和所述第四配置信号,并根据所述第一配置信号和所述第四配置信号切换选通的目标内核。
在一种实施方式中,所述第一配置信号包括第一比特信号,所述第二配置信号包括第二比特信号及第三比特信号,所述选择电路用于根据所述第二比特信号、所述第三比特信号依次排布形成的逻辑组合以及所述第一比特信号,从多个所述内核中选通至少一个目标内核的测试接口。
在一种实施方式中,所述第一配置信号包括第一比特信号,所述第二配置信号包括第二比特信号、第三比特信号及第四比特信号,所述选择电路用于根据所述第二比特信号、所述第三比特信号、所述第四比特信号依次排布形成的逻辑组合以及所述第一比特信号,从多个所述内核中选通至少一个目标内核的测试接口。
本申请还提供一种图像形成装置,包括装置主体,具备进行图像形成处理的图像形成引擎;如第一方面提供的任一项所述的片上系统,所述片上系统用于控制所述图像形成引擎。
本申请还提供一种多核处理器测试装置,用于对片上系统进行测试,所述片上系统包括多个内核、选择电路、传输线及寄存器;每个所述内核包括测试接口,至少两个所述内核的测试接口通过所述选择电路与所述传输线电连接,所述寄存器与所述传输线连接;所述多核处理器测试装置包括测试模块及信号接收端,所述测试模块分别与所述传输线及所述信号接收端连接;
所述信号接收端用于接收第一配置信号并将所述第一配置信号发送至所述测试模块;
所述测试模块用于将所述第一配置信号发送至所述传输线;
所述寄存器用于生成第二配置信号并将所述第二配置信号发送至所述传输线;
所述选择电路用于从所述传输线接收所述第一配置信号和所述第二配置信号,并根据所述第一配置信号和所述第二配置信号从多个所述内核中选通至少一个目标内核的测试接口;
所述测试模块还用于对所述目标内核进行测试。
在一种实施方式中,还包括改变模块,所述改变模块与所述信号接收端连接,所述测试模块还用于判断所述目标内核是否处于死机状态,当所述目标内核处于死机状态时,所述改变模块用于将所述第一配置信号改变为第三配置信号,并将所述第三配置信号传输至所述信号接收端,所述测试模块还用于将所述第三配置信号发送至所述传输线;所述选择电路用于从所述传输线接收所述第二配置信号和所述第三配置信号,并根据所述第二配置信号和所述第三配置信号切换选通的目标内核;
或者,当所述目标内核处于死机状态时,所述寄存器用于生成第四配置信号并将所述第四配置信号发送至所述传输线;
所述选择电路用于从所述传输线接收所述第一配置信号和所述第四配置信号,并根据所述第一配置信号和所述第四配置信号切换选通的目标内核。
在一种实施方式中,所述改变模块包括开关电路、第一电阻电路及第二电阻电路,所述第一电阻电路及所述第二电阻电路分别通过所述开关电路与所述信号接收端连接,当所述第一电阻电路通过所述开关电路与所述信号接收端建立连接时,所述第一电阻电路传输第一配置信号至所述信号接收端,当所述第二电阻电路通过所述开关电路与所述信号接收端建立连接时,所述第二电阻电路传输第三配置信号至所述信号接收端。
在一种实施方式中,所述第一配置信号包括第一比特信号,所述第二配置信号包括第二比特信号及第三比特信号,所述选择电路用于根据所述第二比特信号、所述第三比特信号依次排布形成的逻辑组合以及所述第一比特信号,从多个所述内核中选通至少一个目标内核的测试接口。
在一种实施方式中,所述第一配置信号包括第一比特信号,所述第二配置信号包括第二比特信号、第三比特信号及第四比特信号,所述选择电路用于根据所述第二比特信号、所述第三比特信号、所述第四比特信号依次排布形成的逻辑组合以及所述第一比特信号,从多个所述内核中选通至少一个目标内核的测试接口。
本申请还提供一种多核处理器测试系统,包括上述的片上系统及上述的多核处理器测试装置。
本申请还提供一种多核处理器测试方法,应用于多核处理器测试系统,所述多核处理器测试系统包括片上系统及多核处理器测试装置,所述片上系统包括多个内核、选择电路、传输线及寄存器;每个所述内核包括测试接口,至少两个所述内核的测试接口通过所述选择电路与所述传输线连接,所述传输线还与所述寄存器及测试模块连接;所述多核处理器测试装置包括测试模块及信号接收端,所述测试模块分别与所述传输线及所述信号接收端连接;所述方法包括:
接收第一配置信号和第二配置信号;
根据所述第一配置信号和所述第二配置信号从多个所述内核中选通至少一个目标内核的测试接口;
对所述目标内核进行测试。
在一种实施方式中,
还包括:
判断所述目标内核是否处于死机状态,当所述目标内核处于死机状态时,将所述第一配置信号改变为第三配置信号,根据所述第二配置信号和所述第三配置信号切换选通的目标内核;或者,
当所述目标内核处于死机状态时,生成第四配置信号,根据所述第一配置信号和所述第四配置信号切换选通的目标内核。
在一种实施方式中,所述第一配置信号包括第一比特信号,所述第二配置信号包括第二比特信号及第三比特信号,所述根据所述第一配置信号和所述第二配置信号从多个所述内核中选通至少一个目标内核的测试接口具体包括:根据所述第二比特信号、所述第三比特信号依次排布形成的逻辑组合以及所述第一比特信号,从所述多个内核中选通至少一个内核作为目标内核进行测试。
在一种实施方式中,所述第一配置信号包括第一比特信号,所述第二配置信号包括第二比特信号、第三比特信号及第四比特信号,所述根据所述第一配置信号和所述第二配置信号从多个所述内核中选通至少一个目标内核的测试接口具体包括:根据所述第二比特信号、所述第三比特信号、所述第四比特信号依次排布形成的逻辑组合以及所述第一比特信号,从所述多个内核中选通至少一个内核作为目标内核进行测试。
本申请的多核处理器测试装置、系统、方法及片上系统相对于现有技术,具有以下有益效果:
将至少两个内核的测试接口通过传输线与测试模块连接,并且根据内核选通需求设置第一配置信号和第二配置信号,从而选择电路可以根据第一配置信号和第二配置信号从多个所述内核中选通至少一个目标内核进行测试,减少内核的测试接口单独排布占用的IO端口数量,从而能够减小内核占用的芯片面积和PCB基板面积,降低了成本。并且可以通过测试模块判断当前选通需要进行测试的内核是否死机,且在死机情况下,可以通过改变第一配置信号或第二配置信号来切换选通的内核,避免死机造成测试进程被中断,从而使得可以继续测试其他内核。
附图说明
为了更清楚的说明本申请实施例或现有技术的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请一实施例提供的多核处理器测试系统的结构示意图;
图2为本申请另一实施例提供的多核处理器测试系统的结构示意图;
图3为本申请另一实施例提供的多核处理器测试系统的结构示意图;
图4为本申请一实施例提供的改变模块的结构示意图;
图5为本申请一实施例提供的多核处理器测试方法的流程图;
图6为本申请一实施例提供的图像形成装置的结构示意图。
具体实施方式
为了便于理解本申请,下面将参照相关附图对本申请进行更全面的描述。附图中给出了本申请的较佳实施方式。但是,本申请可以以许多不同的形式来实现,并不限于本文所描述的实施方式。相反地,提供这些实施方式的目的是使对本申请的公开内容理解的更加透彻全面。
除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。本文中在本申请的说明书中所使用的术语只是为了描述具体的实施方式,而非旨在于限制本申请。
请参考图1,本申请实施例提供一种多核处理器测试系统100,该多核处理器测试系统100包括片上系统10及多核处理器测试装置。片上系统10包括多个内核11、传输线12、寄存器13及选择电路14。每个内核11包括测试接口。多核处理器测试装置包括测试模块20及信号接收端30。至少两个内核11的测试接口通过选择电路14与传输线12电连接,寄存器13与传输线12连接,测试模块20分别与传输线12及信号接收端30连接。
信号接收端30用于接收第一配置信号并将第一配置信号发送至测试模块20。测试模块20用于将第一配置信号发送至传输线12。寄存器13用于生成第二配置信号并将第二配置信号发送至传输线12。选择电路14用于从传输线12接收第一配置信号和第二配置信号,并根据第一配置信号和第二配置信号从多个内核11中选通至少一个目标内核11的测试接口。测试模块20还用于对目标内核11进行测试。
每个内核11的测试接口可以是JTAG(Joint Test Action Group,联合测试工作组)接口,具体的,每个内核11的测试接口包括多个引脚,每个内核11的测试接口的引脚数可以是2个或4个或5个等,当内核11的测试接口的引脚数分别为2个、4个、5个时,相应的,内核11的测试接口可以分别称为2线的JTAG接口、4线的JTAG接口、5线的JTAG接口。
请参考图2及图3,多核处理器测试系统100还可以包括连接模块40,测试模块20通过连接模块40与传输线12连接。连接模块40可例如是JTAG插座。测试模块20通过选择电路14选通至少一个目标内核11的测试接口,从而对选通的目标内核11进行测试。
在其中一个实施例中,多核处理器测试装置100还可以包括改变模块50,改变模块50与信号接收端30连接。测试模块20还用于判断目标内核11是否处于死机状态,当目标内核11处于死机状态时,改变模块50用于将第一配置信号改变为第三配置信号,并将第三配置信号传输至信号接收端30,测试模块20还用于将从信号接收端30接收到的第三配置信号发送至传输线12。选择电路14用于从传输线12接收第二配置信号和第三配置信号,并根据第二配置信号和第三配置信号切换选通的目标内核11。
当正在测试的目标内核11处于死机状态时,通过改变模块50改变信号接收端30接收的信号,从而选择电路14根据改变后的信号以及第二配置信号切换选通的目标内核11,使得测试模块20继续进行测试,从而能够保证目标内核11的测试能够正常进行。
请参考图4,进一步的,改变模块50包括开关电路51、第一电阻电路52及第二电阻电路53,第一电阻电路52及第二电阻电路53分别通过开关电路51与信号接收端30连接。当第一电阻电路52通过开关电路51与信号接收端30建立连接时,第一电阻电路52传输第一配置信号至信号接收端30。当第二电阻电路53通过开关电路51与信号接收端30建立连接时,第二电阻电路53传输第三配置信号至信号接收端30。
开关电路51可以包括切换开关或切换按键,切换开关或切换按键可以选择将信号接收端30与第一电阻电路52连接,或者将信号接收端30与第二电阻电路53连接。信号接收端30与第一电阻电路52连接时,接收到的信号为第一配置信号,信号接收端30与第二电阻电路53连接时,接收到的信号为第三配置信号。通过开关电路51切换信号接收端30的连接方式,从而可以改变信号接收端30接收的信号。第一电阻电路52及第二电阻电路53分别包括电阻。
在其中一个实施例中,测试模块20还用于判断目标内核11是否处于死机状态,当目标内核11处于死机状态时,寄存器13用于生成第四配置信号并将第四配置信号发送至传输线12,选择电路14用于从传输线12接收第一配置信号和第四配置信号,并根据第一配置信号和第四配置信号切换选通的目标内核11。
具体的,仿真设备与测试模块20连接,仿真设备中安装仿真软件,仿真设备通过仿真软件传输控制信号至测试模块20,测试模块20再将控制信号传输至片上系统10,片上系统10根据控制信号对寄存器13进行配置,使得寄存器13生成第二配置信号。当目标内核11处于死机状态时,仿真设备改变传输至片上系统10的控制信号,片上系统10根据改变后的控制信号对寄存器13进行配置,使得寄存器13生成第四配置信号。
当正在测试的目标内核11处于死机状态时,通过改变寄存器13生成的信号,从而选择电路14根据第四配置信号以及第一配置信号切换选通目标内核11,使得测试模块20可以继续进行测试,从而能够保证目标内核11的测试能够正常进行。
本申请实施例的多核处理器测试系统100,将至少两个内核11的测试接口通过传输线12与测试模块20连接,并且根据内核11选通需求设置第一配置信号和第二配置信号,从而选择电路14可以根据第一配置信号和第二配置信号从多个所述内核中选通至少一个内核作为目标内核进行测试,减少内核的测试接口单独排布占用的IO端口数量,从而能够减小内核占用的芯片面积和PCB基板面积,降低了成本。且测试模块20还可以判断出所选通需要进行测试的目标内核是否处于死机状态,并在死机状态下,可以通过改变第一配置信号或第二配置信号来切换选通的目标内核继续进行测试,使得目标内核的测试通过切换继续正常进行。
以下通过实施例对选择电路14根据第一配置信号及第二配置信号,从多个内核11中选通至少一个内核作为目标内核11进行测试进行说明。
实施例一
第一配置信号包括第一比特信号,第二配置信号包括第二比特信号及第三比特信号,选择电路14用于根据第二比特信号、第三比特信号依次排布形成的逻辑组合以及第一比特信号,从多个内核11中选通至少一个内核11的测试接口,并以该选通的内核11作为目标内核11进行测试。其中,从多个内核中选通至少一个内核的测试接口,并以该选通的内核作为目标内核进行测试具体表现为:该选通的目标内核被上电且处于测试状态,而其他未选通的内核处于休眠状态或者被上电但并未处于测试状态。
片上系统10包括5个内核11,5个内核11分别以Core1、Core2、Core3、Core4、Core5表示,其中,Core1和Core2的测试接口是5线的JTAG接口,另外Core3、Core4、Core5的测试接口是2线的JTAG接口。若该5个内核11的JTAG接口单独排布,则需占用5*2+2*3=16个IO端口。本实施例中,5个内核11通过传输线12与同一个连接模块40(如图2所示)连接,连接模块40上设置5个IO端口,选择电路14通过选择目标内核11与该连接模块40中的IO端口导通,从而选通目标内核11进行测试。目标内核11与连接模块40中的IO端口导通,即目标内核11被上电且处于测试状态,此时,目标内核11的JTAG接口与连接模块40中的IO端口导通。
第一比特信号、第二比特信号、第三比特信号分别以二进制符号“0”或“1”表示。第一比特信号、第二比特信号、第三比特信号的符号组合列表如表1所示。
表1中第一比特信号、第二比特信号、第三比特信号分别以Bit0、Bit1、Bit2表示,连接模块40以Jtag表示。
表1
当第一电阻电路52通过开关电路51与信号接收端30建立连接时,例如用户没有按下按键时,第一比特信号为“0”,并且仿真设备通过仿真软件传输控制信号“00”至片上系统10,片上系统10根据控制信号“00”将寄存器13的第二比特信号配置为“0”及将第三比特信号配置为“0”,选择电路14根据第二比特信号、第三比特信号依次排布形成的逻辑组合“00”及第一比特信号“0”,从5个内核11中选通Core1作为目标内核11进行测试,此时,Core1被上电且处于测试状态,使Core1的5线JTAG接口与Jtag中的五个IO端口导通,其他的Core2、Core3、Core4和Core5则没有被选通,没有被选通的Core2、Core3、Core4和Core5可以是处于休眠状态,也可以是被上电但未进入测试状态。
当第一比特信号为“0”,并且仿真设备通过仿真软件传输控制信号“01”至片上系统10,片上系统10根据控制信号“01”将寄存器13的第二比特信号配置为“0”及将第三比特信号配置为“1”,选择电路14根据第二比特信号、第三比特信号依次排布形成的逻辑组合“01”及第一比特信号“0”,从5个内核11中选通Core3和Core4作为目标内核11进行测试,此时,Core3和Core4被上电且处于测试状态,使Core3的2线JTAG接口与Jtag的其中两个IO端口导通,Core4的2线JTAG接口与Jtag的其余三个IO端口中的两个导通,其他的Core1、Core2和Core5则没有被选通,没有被选通的Core1、Core2和Core5可以是处于休眠状态,也可以是被上电但未进入测试状态。
当第一比特信号为“0”,并且仿真设备通过仿真软件传输控制信号“10”至片上系统10,片上系统10根据控制信号“10”将寄存器13的第二比特信号配置为“1”及将第三比特信号配置为“0”,选择电路14根据第二比特信号、第三比特信号依次排布形成的逻辑组合“10”及第一比特信号“0”,从5个内核11中选通Core4和Core5作为目标内核11进行测试,此时,Core4和Core5被上电且处于测试状态,使Core4的2线JTAG接口与Jtag的其中两个IO端口导通,Core5的2线JTAG接口与Jtag的其余三个IO端口中的两个导通,其他的Core1、Core2和Core3则没有被选通,没有被选通的Core1、Core2和Core3可以是处于休眠状态,也可以是被上电但未进入测试状态。
当第一比特信号为“0”,并且仿真设备通过仿真软件传输控制信号“11”至片上系统10,片上系统10根据控制信号“11”将寄存器13的第二比特信号配置为“1”及将第三比特信号配置为“1”,选择电路14根据第二比特信号、第三比特信号依次排布形成的逻辑组合“11”及第一比特信号“0”,从5个内核11中选通Core2作为目标内核11进行测试,此时,Core2被上电且处于测试状态,使Core2的5线JTAG接口与Jtag中的五个IO端口导通,其他的Core1、Core3、Core4和Core5则没有被选通,没有被选通的Core1、Core3、Core4和Core5可以是处于休眠状态,也可以是被上电但未进入测试状态。
当第二电阻电路53通过开关电路51与信号接收端30建立连接时,例如用户按下按键时,第一比特信号为“1”,并且仿真设备通过仿真软件传输控制信号“00”至片上系统10,片上系统10根据控制信号“00”将寄存器13的第二比特信号配置为“0”及将第三比特信号配置为“0”,选择电路14根据第二比特信号、第三比特信号依次排布形成的逻辑组合“00”及第一比特信号“1”,从5个内核11中选通Core3和Core4作为目标内核11进行测试,此时,Core3和Core4被上电且处于测试状态,使Core3的2线JTAG接口与Jtag的其中两个IO端口导通,Core4的2线JTAG接口与Jtag的其余三个IO端口中的两个导通,其他的Core1、Core2和Core5则没有被选通,没有被选通的Core1、Core2和Core5可以是处于休眠状态,也可以是被上电但未进入测试状态。
当第一比特信号为“1”,并且仿真设备通过仿真软件传输控制信号“01”至片上系统10,片上系统10根据控制信号“01”将寄存器13的第二比特信号配置为“0”及将第三比特信号配置为“1”,选择电路14根据第二比特信号、第三比特信号依次排布形成的逻辑组合“01”及第一比特信号“1”,从5个内核11中选通Core4和Core5作为目标内核11进行测试,此时,Core4和Core5被上电且处于测试状态,使Core4的2线JTAG接口与Jtag的其中两个IO端口导通,Core5的2线JTAG接口与Jtag的其余三个IO端口中的两个导通,其他的Core1、Core2和Core3则没有被选通,没有被选通的Core1、Core2和Core3可以是处于休眠状态,也可以是被上电但未进入测试状态。
当第一比特信号为“1”,并且仿真设备通过仿真软件传输控制信号“10”至片上系统10,片上系统10根据控制信号“10”将寄存器13的第二比特信号配置为“1”及将第三比特信号配置为“0”,选择电路14根据第二比特信号、第三比特信号依次排布形成的逻辑组合“10”及第一比特信号“1”,从5个内核11中选通Core2作为目标内核11进行测试,此时,Core2被上电且处于测试状态,使Core2的5线JTAG接口与Jtag中的五个IO端口导通,其他的Core1、Core3、Core4和Core5则没有被选通,没有被选通的Core1、Core3、Core4和Core5可以是处于休眠状态,也可以是被上电但未进入测试状态。
当第一比特信号为“1”,并且仿真设备通过仿真软件传输控制信号“11”至片上系统10,片上系统10根据控制信号“11”将寄存器13的第二比特信号配置为“1”及将第三比特信号配置为“1”,选择电路14根据第二比特信号、第三比特信号依次排布形成的逻辑组合“11”及第一比特信号“1”,从5个内核11中选通Core1作为目标内核11进行测试,此时,Core1被上电且处于测试状态,使Core1的5线JTAG接口与Jtag中的五个IO端口导通,其他的Core2、Core3、Core4和Core5则没有被选通,没有被选通的Core2、Core3、Core4和Core5可以是处于休眠状态,也可以是被上电但未进入测试状态。
若在测试模块20对目标内核11的测试过程中,测试模块20在测试开始后的预设时间内没有检测到测试结果,则测试模块20判断目标内核11处于死机状态,此时,用户可以通过切换信号接收端30的连接方式,使得测试模块20切换目标内核11进行测试,从而退出死机内核11的测试。例如,当测试模块20对Core1进行测试时,在测试开始后的预设时间内没有检测到测试结果,则测试模块20判断Core1处于死机状态,用户可例如通过按下按键使得第二电阻电路53通过开关电路51与信号接收端30建立连接,从而将第一比特信号由“0”改变为“1”,此时,第一比特信号“1”为第三配置信号,仿真设备通过仿真软件传输非“11”控制信号至片上系统10,从而片上系统10根据非“11”控制信号对寄存器13进行配置,使得第二比特信号、第三比特信号依次排布形成的逻辑组合为非“11”,此时,第二比特信号、第三比特信号依次排布形成的逻辑组合由“00”改变为非“11”,第四配置信号为非“11”,从而选择电路14从Core2、Core3、Core4、Core5四个内核11中选通目标内核11进行测试,实现对目标内核11测试的切换。当然,在对Core1进行测试时,在Core1死机的情况下,还可以不对第一比特信号进行改变,而通过仿真设备传输非“00”控制信号至片上系统10,片上系统10根据非“00”控制信号对寄存器13进行配置,使得第二比特信号、第三比特信号依次排布形成的逻辑组合为非“00”,从而也可以实现对目标内核11的切换。
在该实施例中,通过设置一个连接模块40,选择电路14可以选通一个或两个目标内核11进行测试,在选通两个目标内核11同时进行测试时,两个目标内核11被同时上电且处于测试状态,而其他内核虽被上电但并不处于测试状态或者处于休眠状态中,从而可以节省能耗;而两个目标内核11被上电且处于测试状态,使两个目标内核11的JTAG接口分别与连接模块40中不同的IO端口导通,从而测试模块20能够区分两个目标内核11的测试结果,并同时获取该两个目标内核11的测试结果,既能够提高测试效率,也可以减少内核11的JTAG接口单独排布占用的IO端口数量,从而能够减小内核11占用的芯片面积和PCB基板面积,降低了成本。
而当正在测试的目标内核11处于死机状态时,通过改变信号接收端30的信号或者通过改变寄存器13生成的信号,从而可以切换测试的目标内核11,保证内核11测试的正常进行。
实施例二
第一配置信号包括第一比特信号,第二配置信号包括第二比特信号及第三比特信号,选择电路14用于根据第二比特信号、第三比特信号依次排布形成的逻辑组合以及第一比特信号,从多个内核11中选通至少一个内核11的测试接口,并以该选通的内核11作为目标内核11进行测试。其中,选通目标内核11具体为目标内核11被上电且处于测试状态,而未被选通的内核可以是处于休眠状态,也可以是被上电但并未进入测试状态。
片上系统10包括5个内核11,5个内核11分别以Core1、Core2、Core3、Core4、Core5表示,其中,Core1和Core2的测试接口是5线的JTAG接口,另外Core3、Core4、Core5的测试接口是2线的JTAG接口。若该5个内核11的JTAG接口单独排布,则需占用5*2+2*3=16个IO端口。本实施例中,5个内核11通过传输线12与两个连接模块40(如图3所示)连接,每个连接模块40上设置有5个IO端口,选择电路14通过选择目标内核11与该两个连接模块40中的IO端口导通,从而选通目标内核11进行测试。
第一比特信号、第二比特信号、第三比特信号分别以二进制符号“0”或“1”表示。第一比特信号、第二比特信号、第三比特信号的符号组合列表如表2所示。
表2中第一比特信号、第二比特信号、第三比特信号分别以Bit0、Bit1、Bit2表示,两个连接模块40分别以JTAG1和JTAG2表示。
表2
当第一电阻电路52通过开关电路51与信号接收端30建立连接时,例如用户没有按下按键时,第一比特信号为“0”,并且仿真设备通过仿真软件传输控制信号“00”至片上系统10,片上系统10根据控制信号“00”将寄存器13的第二比特信号配置为“0”及将第三比特信号配置为“0”,测试模块20根据第二比特信号、第三比特信号依次排布形成的逻辑组合“00”及第一比特信号“0”,从5个内核11中选通Core1作为目标内核11,此时,Core1被上电且处于测试状态,使Core1的5线JTAG接口与JTAG1的五个IO端口导通,或者使Core1的5线JTAG接口与JTAG2的五个IO端口导通,从而对Core1进行测试。其他的Core2、Core3、Core4和Core5则没有被选通,没有被选通的Core2、Core3、Core4和Core5可以是处于休眠状态,也可以是被上电但未进入测试状态。
当第一比特信号为“0”,并且仿真设备通过仿真软件传输控制信号“01”至片上系统10,片上系统10根据控制信号“01”将寄存器13的第二比特信号配置为“0”及将第三比特信号配置为“1”,选择电路14根据第二比特信号、第三比特信号依次排布形成的逻辑组合“01”及第一比特信号“0”,从5个内核11中选通Core3、Core4和Core5作为目标内核11进行测试,此时,Core3、Core4和Core5被上电且处于测试状态,使Core3的2线JTAG接口和Core4的2线JTAG接口与JTAG1中的两个相同的IO端口导通,Core5的2线JTAG接口与JTAG2中的其中两个IO端口导通。在对Core3和Core4进行测试时,用户可以在仿真设备上进行设置,通过该设置,选择电路14可以同时选通Core3或Core4进行测试,从而得到对应的测试结果,或者选择电路14通过该设置分别先后选通Core3和Core4进行测试,从而先后得到对应的测试结果。由于Core3和Core4只占用JTAG1的两个相同的IO端口,在寄存器13的第二比特信号被配置为“0”及将第三比特信号被配置为“1”时,选择电路14还可以将Core5的2线JTAG接口与JTAG1中的其余三个IO端口中的两个导通。此外,还可以从5个内核11中选择Core3的2线JTAG接口和Core4的2线JTAG接口分别与JTAG1中的其中4个IO端口导通,Core5的2线JTAG接口与JTAG2中的其中两个IO端口导通。其他的Core1和Core2则没有被选通,没有被选通的Core1和Core2可以是处于休眠状态,也可以是被上电但未进入测试状态。
当第一比特信号为“0”,并且仿真设备通过仿真软件传输控制信号“10”至片上系统10,片上系统10根据控制信号“10”将寄存器13的第二比特信号配置为“1”及将第三比特信号配置为“0”,选择电路14根据第二比特信号、第三比特信号依次排布形成的逻辑组合“10”及第一比特信号“0”,从5个内核11中选通Core2作为目标内核11进行测试,此时,Core2被上电且处于测试状态,使Core2的5线JTAG接口与JTAG1的五个IO端口导通,或者使Core2的5线JTAG接口与JTAG2的五个IO端口导通。其他的Core1、Core3、Core4和Core5则没有被选通,没有被选通的Core1、Core3、Core4和Core5可以是处于休眠状态,也可以是被上电但未进入测试状态。
当第二电阻电路53通过开关电路51与信号接收端30建立连接时,例如用户按下按键时,第一比特信号为“1”,并且仿真设备通过仿真软件传输控制信号“00”至片上系统10,片上系统10根据控制信号“00”将寄存器13的第二比特信号配置为“0”及将第三比特信号配置为“0”,选择电路14根据第二比特信号、第三比特信号依次排布形成的逻辑组合“00”及第一比特信号“1”,从5个内核11中选通Core3、Core4和Core5作为目标内核11进行测试,此时,Core3、Core4和Core5被上电且处于测试状态,使Core3的2线JTAG接口和Core4的2线JTAG接口与JTAG1中的两个相同的IO端口导通,Core5的2线JTAG接口与JTAG2中的其中两个IO端口导通。在对Core3和Core4进行测试时,用户可以在仿真设备上进行设置,通过该设置,选择电路14可以同时选通Core3或Core4进行测试,从而得到对应的测试结果,或者选择电路14通过该设置可以先后选通Core3和Core4进行测试,从而先后得到测试结果。由于Core3和Core4只占用JTAG1的两个相同的IO端口,在寄存器13的第二比特信号被配置为“0”及将第三比特信号被配置为“1”时,选择电路14还可以将Core5的2线JTAG接口与JTAG1中的其余三个IO端口中的两个导通。此外,还可以从5个内核11中选通Core3的2线JTAG接口和Core4的2线JTAG接口分别与JTAG1中的其中4个IO端口导通,Core5的2线JTAG接口与JTAG2中的其中两个IO端口导通。其他的Core1和Core2则没有被选通,没有被选通的Core1和Core2可以是处于休眠状态,也可以是被上电但未进入测试状态。
当第一比特信号为“1”,并且仿真设备通过仿真软件传输控制信号“01”至片上系统10,片上系统10根据控制信号“01”将寄存器13的第二比特信号配置为“0”及将第三比特信号配置为“1”,选择电路14根据第二比特信号、第三比特信号依次排布形成的逻辑组合“01”及第一比特信号“1”,从5个内核11中选通Core2作为目标内核11进行测试,此时,Core2被上电且处于测试状态,使Core2的5线JTAG接口与JTAG1的五个IO端口导通,或者使Core2的5线JTAG接口与JTAG2的五个IO端口导通,从而对Core2进行测试。其他的Core1、Core3、Core4和Core5则没有被选通,没有被选通的Core1、Core3、Core4和Core5可以是处于休眠状态,也可以是被上电但未进入测试状态。
当第一比特信号为“1”,并且仿真设备通过仿真软件传输控制信号“10”至片上系统10,片上系统10根据控制信号“10”将寄存器13的第二比特信号配置为“1”及将第三比特信号配置为“0”,选择电路14根据第二比特信号、第三比特信号依次排布形成的逻辑组合“10”及第一比特信号“1”,从5个内核11中选通Core1作为目标内核11进行测试,此时,Core1被上电且处于测试状态,使Core1的5线JTAG接口与JTAG1的五个IO端口导通,或者使Core1的5线JTAG接口与JTAG2的五个IO端口导通,从而对Core1进行测试。其他的Core2、Core3、Core4和Core5则没有被选通,没有被选通的Core2、Core3、Core4和Core5可以是处于休眠状态,也可以是被上电但未进入测试状态。
若在测试模块20对目标内核11的测试过程中,测试模块20在测试开始后的预设时间内没有检测到测试结果,则测试模块20判断目标内核11处于死机状态,此时,用户可以通过切换信号接收端30的连接方式,使得测试模块20切换目标内核11进行测试,从而退出死机内核11的测试。例如,当第一比特信号为“0”,第二比特信号、第三比特信号依次排布形成的逻辑组合为“10”,测试模块20选通Core2进行测试时,在测试开始后的预设时间内没有检测到测试结果,则测试模块20判断Core2处于死机状态,用户可通过将第一比特信号改变为“1”,此时,第一比特信号“1”为第三配置信号,从而切换至Core1进行测试。当然,当第一比特信号为“0”,第二比特信号、第三比特信号依次排布形成的逻辑组合为“10”,选择电路14选通Core2进行测试时,Core2处于死机状态,用户还可通过仿真设备传输非“10”控制信号(如“00”控制信号或“01”控制信号)至片上系统10,从而片上系统10根据非“10”控制信号对寄存器13进行配置,使得第二比特信号、第三比特信号依次排布形成的逻辑组合为非“10”,此时,第二比特信号、第三比特信号依次排布形成的逻辑组合由“10”改变为非“10”,第四配置信号为非“10”,从而测试模块20从Core2切换至Core1(控制信号为“00”)或者Core3、Core4、Core5(控制信号为“01”)进行测试,实现对目标内核11测试的切换。
仿真设备传输至片上系统10的控制信号不限于以上所列举的控制信号,因此,寄存器13生成的第二比特信号、第三比特信号依次排布形成的逻辑组合也不限于以上所列举的组合,从而选择电路14根据第二比特信号、第三比特信号依次排布形成的逻辑组合以及第一比特信号选通的目标内核11也不限于以上所列举的目标内核11组合方式,例如,当第一比特信号为“0”,第二比特信号、第三比特信号依次排布形成的逻辑组合为“11”时,选择电路14可以选通Core3、Core5和Core2作为目标内核11进行测试,Core3、Core5和Core2被上电且处于测试状态,其中,Core3的2线JTAG接口和Core5与2线JTAG接口与JTAG1中的两个相同的IO端口导通,Core2的5线JTAG接口与JTAG2的五个IO端口导通,或者Core3的2线JTAG接口和Core5与2线JTAG接口与JTAG1中的4个不同的IO端口导通,Core2的5线JTAG接口与JTAG2的五个IO端口导通。其他的Core1和Core4则没有被选通,没有被选通的Core1和Core4可以是处于休眠状态,也可以是被上电但未进入测试状态。
在该实施例中,通过设置两个连接模块40,选择电路14可以选通两个或两个以上目标内核11进行测试,其中两个目标内核11分别与其中一个连接模块40中相同或不同的IO端口导通,另外的目标内核11与另外一个连接模块40的IO端口导通,测试模块20能够通过目标内核11与连接模块40的IO端口导通连接方式,从而区分多个目标内核11的测试结果,并同时获取多个目标内核11的测试结果,从而可以进一步提高测试效率,也可以减少内核11的JTAG接口单独排布占用的IO端口数量,从而能够减小内核11占用的芯片面积和PCB基板面积,降低了成本。此外,对于未被选通的目标内核,被上电但未进入测试状态或者处于休眠状态,因此在一定程度上,降低了能耗。而当正在测试的目标内核11处于死机状态时,通过改变信号接收端30的信号或者通过改变寄存器13生成的信号,从而可以改变测试的目标内核11,保证内核11测试的正常进行。
实施例三
第一配置信号包括第一比特信号,第二配置信号包括第二比特信号、第三比特信号及第四比特信号,选择电路14用于根据第二比特信号、第三比特信号、第四比特信号依次排布形成的逻辑组合以及第一比特信号,从多个内核11中选通一个内核11的测试接口,并以该选通的内核11作为目标内核11进行测试。其中,该选通的目标内核具体为被上电且处于测试状态的内核,而未被选通的内核可以是处于休眠状态,也可以是被上电但不处于测试状态的内核。
片上系统10包括5个内核11,5个内核11分别以Core1、Core2、Core3、Core4、Core5表示,其中,Core1和Core2的测试接口是5线的JTAG接口,另外Core3、Core4、Core5的测试接口是2线的JTAG接口。若该5个内核11的JTAG接口单独排布,则需占用5*2+2*3=16个IO端口。本实施例中,5个内核11通过传输线12与同一个连接模块40(如图2所示)连接,每个连接模块40上设置有5个IO端口,选择电路14通过选择一个目标内核11与该连接模块40中的IO端口导通,从而选通目标内核11进行测试。
第一比特信号、第二比特信号、第三比特信号、第四比特信号分别以二进制符号“0”或“1”表示。第一比特信号、第二比特信号、第三比特信号、第四比特信号的符号组合列表如表3所示。
表3中第一比特信号、第二比特信号、第三比特信号、第四比特信号分别以Bit0、Bit1、Bit2、Bit3表示,连接模块40以Jtag表示。
Bit0 Bit1 Bit2 Bit3 Jtag
0 0 0 0 Core1
1 0 0 0 Core3
X 0 0 1 Core1
X 0 1 0 Core3
X 0 1 1 Core4
X 1 0 0 Core5
X 1 0 1 Core2
X 1 1 0 预留
X 1 1 1 预留
表3
当第一电阻电路52通过开关电路51与信号接收端30建立连接时,例如用户没有按下按键时,第一比特信号为“0”,并且仿真设备通过仿真软件传输控制信号“000”至片上系统10,片上系统10根据控制信号“000”将寄存器13的第二比特信号配置为“0”、将第三比特信号配置为“0”、将第四比特信号配置为“0”,选择电路14根据第二比特信号、第三比特信号、第四比特信号依次排布形成的逻辑组合“000”及第一比特信号“0”,从5个内核11中选通Core1作为目标内核11,此时,Core1被上电且处于测试状态,使Core1的5线JTAG接口与Jtag的五个IO端口导通,从而对Core1进行测试。其他的Core2、Core3、Core4和Core5则没有被选通,没有被选通的Core2、Core3、Core4和Core5可以是处于休眠状态,也可以是被上电但未进入测试状态。
当第二电阻电路53通过开关电路51与信号接收端30建立连接时,例如用户按下按键时,第一比特信号为“1”,并且仿真设备通过仿真软件传输控制信号“000”至片上系统10,片上系统10根据控制信号“000”将寄存器13的第二比特信号配置为“0”、将第三比特信号配置为“0”、将第四比特信号配置为“0”,选择电路14根据第二比特信号、第三比特信号、第四比特信号依次排布形成的逻辑组合“000”及第一比特信号“1”,从5个内核11中选通Core3作为目标内核11,此时,Core3被上电且处于测试状态,使Core3的2线JTAG接口与Jtag的其中两个IO端口导通,从而对Core3进行测试。其他的Core1、Core2、Core4和Core5则没有被选通,没有被选通的Core1、Core2、Core4和Core5可以是处于休眠状态,也可以是被上电但未进入测试状态。
当第一比特信号为“0”或“1”时,并且仿真设备通过仿真软件传输控制信号“001”至片上系统10,片上系统10根据控制信号“001”将寄存器13的第二比特信号配置为“0”、将第三比特信号配置为“0”、将第四比特信号配置为“1”,选择电路14根据第二比特信号、第三比特信号、第四比特信号依次排布形成的逻辑组合“001”,从5个内核11中选通Core1作为目标内核11,此时,Core1被上电且处于测试状态,使Core1的5线JTAG接口与Jtag的五个IO端口导通,从而对Core1进行测试。其他的Core2、Core3、Core4和Core5则没有被选通,没有被选通的Core2、Core3、Core4和Core5可以是处于休眠状态,也可以是被上电但未进入测试状态。
当第一比特信号为“0”或“1”时,并且仿真设备通过仿真软件传输控制信号“010”至片上系统10,片上系统10根据控制信号“010”将寄存器13的第二比特信号配置为“0”、将第三比特信号配置为“1”、将第四比特信号配置为“0”,选择电路14根据第二比特信号、第三比特信号、第四比特信号依次排布形成的逻辑组合“010”,从5个内核11中选通Core3作为目标内核11,此时,Core3被上电且处于测试状态,使Core3的2线JTAG接口与Jtag的其中两个IO端口导通,从而对Core3进行测试。其他的Core1、Core2、Core4和Core5则没有被选通,没有被选通的Core1、Core2、Core4和Core5可以是处于休眠状态,也可以是被上电但未进入测试状态。
当第一比特信号为“0”或“1”时,并且仿真设备通过仿真软件传输控制信号“011”至片上系统10,片上系统10根据控制信号“011”将寄存器13的第二比特信号配置为“0”、将第三比特信号配置为“1”、将第四比特信号配置为“1”,选择电路14根据第二比特信号、第三比特信号、第四比特信号依次排布形成的逻辑组合“011”,从5个内核11中选通Core4作为目标内核11,此时,Core4被上电且处于测试状态,使Core4的2线JTAG接口与Jtag的其中两个IO端口导通,从而对Core4进行测试。其他的Core1、Core2、Core3和Core5则没有被选通,没有被选通的Core1、Core2、Core3和Core5可以是处于休眠状态,也可以是被上电但未进入测试状态。
当第一比特信号为“0”或“1”时,并且仿真设备通过仿真软件传输控制信号“100”至片上系统10,片上系统10根据控制信号“100”将寄存器13的第二比特信号配置为“1”、将第三比特信号配置为“0”、将第四比特信号配置为“0”,选择电路14根据第二比特信号、第三比特信号、第四比特信号依次排布形成的逻辑组合“100”,从5个内核11中选通Core5作为目标内核11,此时,Core5被上电且处于测试状态,使Core5的2线JTAG接口与Jtag的其中两个IO端口导通,从而对Core5进行测试。其他的Core1、Core2、Core3和Core4则没有被选通,没有被选通的Core1、Core2、Core3和Core4可以是处于休眠状态,也可以是被上电但未进入测试状态。
当第一比特信号为“0”或“1”时,并且仿真设备通过仿真软件传输控制信号“101”至片上系统10,片上系统10根据控制信号“101”将寄存器13的第二比特信号配置为“1”、将第三比特信号配置为“0”、将第四比特信号配置为“1”,选择电路14根据第二比特信号、第三比特信号、第四比特信号依次排布形成的逻辑组合“101”,从5个内核11中选通Core2作为目标内核11,此时,Core2被上电且处于测试状态,使Core2的5线JTAG接口与Jtag的五个IO端口导通,从而对Core2进行测试。其他的Core1、Core3、Core4和Core5则没有被选通,没有被选通的Core1、Core3、Core4和Core5可以是处于休眠状态,也可以是被上电但未进入测试状态。
当仿真设备通过仿真软件传输控制信号“110”或“111”至片上系统10时,片上系统10可以对寄存器13进行其他的配置,以实现其他的功能。
表中以“X”表示第一比特信号为“0”或“1”。
若在测试模块20对目标内核11的测试过程中,测试模块20在测试开始后的预设时间内没有检测到测试结果,则测试模块20判断目标内核11处于死机状态,此时,用户可以通过切换信号接收端30的连接方式,使得测试模块20切换目标内核11进行测试,从而退出死机内核11的测试。例如,第一比特信号为“0”,第二比特信号、第三比特信号、第四比特信号依次排布形成的逻辑组合为“000”,测试模块20选通Core1进行测试时,在测试开始后的预设时间内没有检测到测试结果,则测试模块20判断Core1处于死机状态,用户可通过切换信号接收端30的连接方式,将第一比特信号改变为“1”,此时,第一比特信号“1”为第三配置信号,从而切换至Core3进行测试。当然,当第二比特信号、第三比特信号、第四比特信号依次排布形成的逻辑组合为非“000”时,例如第二比特信号、第三比特信号、第四比特信号依次排布形成的逻辑组合为“010”,测试模块20选通Core3进行测试时,在测试开始后的预设时间内没有检测到测试结果,则测试模块20判断Core3处于死机状态,用户可以通过改变仿真设备传输至片上系统10的控制信号,例如将控制信号“010”改变为“011”,从而片上系统10根据控制信号“011”对寄存器13进行配置,使得第二比特信号、第三比特信号、第四比特信号依次排布形成的逻辑组合为“011”,此时,第二比特信号、第三比特信号、第四比特信号依次排布形成的逻辑组合由“010”改变为“011”,第四配置信号为“011”,从而测试模块20从Core3切换至Core4进行测试,实现对目标内核11测试的切换。
在该实施例中,通过设置一个连接模块40,测试模块20可以选通一个目标内核11进行测试,该目标内核11的JTAG接口与连接模块40中的IO端口导通,从而可以减少内核11的JTAG接口单独排布占用的IO端口数量,从而能够减小内核11占用的芯片面积和PCB基板面积,降低了成本。此外,选通的目标内核被上电且处于测试状态,而其他未被选通的内核被上电但不处于测试状态或者处于休眠状态,从而还可以实现节省能耗。而当正在测试的目标内核11处于死机状态时,可以通过改变信号接收端30的信号或者通过改变寄存器13生成的信号,从而可以切换测试的目标内核11,保证内核11测试的正常进行。
实施例四
第一配置信号包括第一比特信号,第二配置信号包括第二比特信号、第三比特信号及第四比特信号,测试模块20用于根据第二比特信号、第三比特信号、第四比特信号依次排布形成的逻辑组合以及第一比特信号,从多个内核11中选通一个内核11的测试接口,并以该选通的内核11作为目标内核11进行测试。其中,选通的目标内核被上电且处于测试状态,而未被选通的内核可能处于休眠状态,也可能是被上电但不处于测试状态。
片上系统10包括5个内核11,5个内核11分别以Core1、Core2、Core3、Core4、Core5表示,其中,Core1和Core2的测试接口是5线的JTAG接口,另外Core3、Core4、Core5的测试接口是2线的JTAG接口。若该5个内核11的JTAG接口单独排布,则需占用5*2+2*3=16个IO端口。本实施例中,5个内核11通过传输线12与同一个连接模块40(如图2所示)连接,每个连接模块40上设置有5个IO端口,选择电路14通过选择一个目标内核11与该连接模块40中的IO端口导通,以对选通的目标内核11进行测试。
第一比特信号、第二比特信号、第三比特信号、第四比特信号分别以二进制符号“0”或“1”表示。第一比特信号、第二比特信号、第三比特信号、第四比特信号的符号组合列表如表4所示。
表4中第一比特信号、第二比特信号、第三比特信号、第四比特信号分别以Bit0、Bit1、Bit2、Bit3表示,连接模块40以Jtag表示。
Bit0 Bit1 Bit2 Bit3 Jtag
0 0 0 0 Core1
0 0 0 1 Core3
0 0 1 0 Core4
0 0 1 1 Core5
0 1 0 0 Core2
0 1 0 1 预留
0 1 1 0 预留
0 1 1 1 预留
1 X X X Core3
表4
当第一电阻电路52通过开关电路51与信号接收端30建立连接时,例如用户没有按下按键时,第一比特信号为“0”,并且仿真设备通过仿真软件传输控制信号“000”至片上系统10,片上系统10根据控制信号“000”将寄存器13的第二比特信号配置为“0”、将第三比特信号配置为“0”、将第四比特信号配置为“0”,选择电路14根据第二比特信号、第三比特信号、第四比特信号依次排布形成的逻辑组合“000”及第一比特信号“0”,从5个内核11中选通Core1作为目标内核11,此时,Core1被上电且处于测试状态,使Core1的5线JTAG接口与Jtag的五个IO端口导通,从而对Core1进行测试。其他的Core2、Core3、Core4和Core5则没有被选通,没有被选通的Core2、Core3、Core4和Core5可以是处于休眠状态,也可以是被上电但未进入测试状态。
当第一比特信号为“0”时,仿真设备通过仿真软件传输控制信号“001”至片上系统10,片上系统10根据控制信号“001”将寄存器13的第二比特信号配置为“0”、将第三比特信号配置为“0”、将第四比特信号配置为“1”,选择电路14根据第二比特信号、第三比特信号、第四比特信号依次排布形成的逻辑组合“001”及第一比特信号“0”,从5个内核11中选通Core3作为目标内核11,此时,Core3被上电且处于测试状态,使Core3的2线JTAG接口与Jtag的其中两个IO端口导通,从而对Core3进行测试。其他的Core1、Core2、Core4和Core5则没有被选通,没有被选通的Core1、Core2、Core4和Core5可以是处于休眠状态,也可以是被上电但未进入测试状态。
当第一比特信号为“0”时,仿真设备通过仿真软件传输控制信号“010”至片上系统10,片上系统10根据控制信号“010”将寄存器13的第二比特信号配置为“0”、将第三比特信号配置为“1”、将第四比特信号配置为“0”,选择电路14根据第二比特信号、第三比特信号、第四比特信号依次排布形成的逻辑组合“010”及第一比特信号“0”,从5个内核11中选通Core4作为目标内核11,此时,Core4被上电且处于测试状态,使Core4的2线JTAG接口与Jtag的其中两个IO端口导通,从而对Core4进行测试。其他的Core1、Core2、Core3和Core5则没有被选通,没有被选通的Core1、Core2、Core3和Core5可以是处于休眠状态,也可以是被上电但未进入测试状态。
当第一比特信号为“0”时,仿真设备通过仿真软件传输控制信号“011”至片上系统10,片上系统10根据控制信号“011”将寄存器13的第二比特信号配置为“0”、将第三比特信号配置为“1”、将第四比特信号配置为“1”,选择电路14根据第二比特信号、第三比特信号、第四比特信号依次排布形成的逻辑组合“011”及第一比特信号“0”,从5个内核11中选通Core5作为目标内核11,此时,Core5被上电且处于测试状态,使Core5的2线JTAG接口与Jtag的其中两个IO端口导通,从而对Core5进行测试。其他的Core1、Core2、Core3和Core4则没有被选通,没有被选通的Core1、Core2、Core3和Core4可以是处于休眠状态,也可以是被上电但未进入测试状态。
当第一比特信号为“0”时,仿真设备通过仿真软件传输控制信号“100”至片上系统10,片上系统10根据控制信号“100”将寄存器13的第二比特信号配置为“1”、将第三比特信号配置为“0”、将第四比特信号配置为“0”,选择电路14根据第二比特信号、第三比特信号、第四比特信号依次排布形成的逻辑组合“100”及第一比特信号“0”,从5个内核11中选通Core2作为目标内核11,此时,Core2被上电且处于测试状态,使Core2的5线JTAG接口与Jtag的五个IO端口导通,从而对Core2进行测试。其他的Core1、Core3、Core4和Core5则没有被选通,没有被选通的Core1、Core3、Core4和Core5可以是处于休眠状态,也可以是被上电但未进入测试状态。
当第一比特信号为“0”时,仿真设备通过仿真软件传输控制信号“101”、“110”或“111”至片上系统10时,片上系统10可以对寄存器13进行其他的配置,以实现其他的功能。
当第二电阻电路53通过开关电路51与信号接收端30建立连接时,例如用户按下按键时,第一比特信号为“1”,并且不管仿真设备通过仿真软件传输至片上系统10的控制信号是什么,也就是不管寄存器13生成的信号是什么,选择电路14都选通Core3作为目标内核11,此时,Core3被上电且处于测试状态,使Core3的2线JTAG接口与Jtag的其中两个IO端口导通,从而对Core3进行测试。其他的Core1、Core2、Core4和Core5则没有被选通,没有被选通的Core1、Core2、Core4和Core5可以是处于休眠状态,也可以是被上电但未进入测试状态。
若在测试模块20对目标内核11的测试过程中,测试模块20在测试开始后的预设时间内没有检测到测试结果,则测试模块20判断目标内核11处于死机状态,此时,用户可以通过切换信号接收端30的连接方式,使得测试模块20切换目标内核11进行测试,从而退出死机内核11的测试。例如,第一比特信号为“0”,第二比特信号、第三比特信号、第四比特信号依次排布形成的逻辑组合为“000”,测试模块20选通Core1进行测试时,在测试开始后的预设时间内没有检测到测试结果,则测试模块20判断Core1处于死机状态,用户可通过将第一比特信号改变为“1”,此时,第一比特信号“1”为第三配置信号,从而切换至Core3进行测试。当然,当第一比特信号为“0”,第二比特信号、第三比特信号、第四比特信号依次排布形成的逻辑组合为“000”时,用户还可以通过改变仿真设备传输至片上系统10的控制信号,例如将控制信号“000”改变为“011”,从而片上系统10根据控制信号“011”对寄存器13进行配置,使得第二比特信号、第三比特信号、第四比特信号依次排布形成的逻辑组合为“011”,此时,第二比特信号、第三比特信号、第四比特信号依次排布形成的逻辑组合由“000”改变为“011”,第四配置信号为“011”,从而测试模块20从Core1切换至Core5进行测试,实现对目标内核11测试的切换。
在该实施例中,通过设置一个连接模块40,测试模块20可以选通一个目标内核11进行测试,该目标内核11与连接模块40中的IO端口导通,从而可以减少内核11的JTAG接口单独排布占用的IO端口数量,从而能够减小内核11占用的芯片面积和PCB基板面积,降低了成本。此外,选通的目标内核被上电且处于测试状态,而未被选通的内核被上电但不处于测试状态或者处于休眠状态,从而在一定程度上降低了能耗。
而当正在测试的目标内核11处于死机状态时,可以通过改变信号接收端30的信号或者通过改变寄存器13生成的信号,从而可以改变测试的目标内核11,保证内核11测试的正常进行。
本申请实施例还提供一种多核处理器测试方法,应用于多核处理器测试系统,多核处理器测试系统包括片上系统及多核处理器测试装置。片上系统包括多个内核、选择电路、传输线及寄存器。每个内核包括测试接口,至少两个内核的测试接口通过选择电路与传输线连接,传输线还与寄存器及测试模块连接。多核处理器测试装置包括测试模块及信号接收端,测试模块分别与传输线及信号接收端连接。请参考图5,该多核处理器测试方法包括:
S101,接收第一配置信号和第二配置信号;
S102,根据第一配置信号和第二配置信号从多个内核中选通至少一个目标内核的测试接口;
S103,对目标内核进行测试。
进一步的,上述的多核处理器测试方法还包括:
判断目标内核是否处于死机状态,当目标内核处于死机状态时,将第一配置信号改变为第三配置信号,根据第二配置信号和第三配置信号切换选通的目标内核;或者,
当目标内核处于死机状态时,生成第四配置信号,根据第一配置信号和第四配置信号切换选通的目标内核。
进一步的,第一配置信号包括第一比特信号,第二配置信号包括第二比特信号及第三比特信号,步骤S102具体包括:根据第二比特信号、第三比特信号依次排布形成的逻辑组合以及第一比特信号,从多个内核中选通至少一个内核作为目标内核进行测试。
进一步的,第一配置信号包括第一比特信号,第二配置信号包括第二比特信号、第三比特信号及第四比特信号,步骤S102具体包括:根据第二比特信号、第三比特信号、第四比特信号依次排布形成的逻辑组合以及第一比特信号,从多个内核中选通至少一个内核作为目标内核进行测试。
本申请实施例还提供一种图像形成装置200,如图6所示,该图像形成装置200包括:装置主体60,具备箱体结构;图像形成引擎70,安装在装置主体60中,用于控制图像形成处理;以及如上所述的片上系统10,安装在装置主体60中,且该片上系统10用于控制图像形成引擎70。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

Claims (12)

1.一种片上系统,其特征在于,包括多个内核、选择电路、传输线及寄存器;每个所述内核包括测试接口,至少两个所述内核的测试接口通过所述选择电路与所述传输线电连接,所述传输线还与所述寄存器及测试模块连接;
所述测试模块用于从信号接收端接收第一配置信号并将所述第一配置信号发送至所述传输线;
所述寄存器用于生成第二配置信号并将所述第二配置信号发送至所述传输线;
所述选择电路用于从所述传输线接收所述第一配置信号和所述第二配置信号,并根据所述第一配置信号和所述第二配置信号从多个所述内核中选通至少一个目标内核的测试接口,以使得所述测试模块对所述目标内核进行测试;
所述测试模块还用于判断所述目标内核是否处于死机状态,当所述目标内核处于死机状态时,所述测试模块用于从信号接收端接收第三配置信号并将所述第三配置信号发送至所述传输线;
所述选择电路用于从所述传输线接收所述第二配置信号和所述第三配置信号,并根据所述第二配置信号和所述第三配置信号切换选通的目标内核;
或者,当所述目标内核处于死机状态时,所述寄存器用于生成第四配置信号并将所述第四配置信号发送至所述传输线;
所述选择电路用于从所述传输线接收所述第一配置信号和所述第四配置信号,并根据所述第一配置信号和所述第四配置信号切换选通的目标内核。
2.根据权利要求1所述的片上系统,其特征在于,所述第一配置信号包括第一比特信号,所述第二配置信号包括第二比特信号及第三比特信号,所述选择电路用于根据所述第二比特信号、所述第三比特信号依次排布形成的逻辑组合以及所述第一比特信号,从多个所述内核中选通至少一个目标内核的测试接口。
3.根据权利要求1所述的片上系统,其特征在于,所述第一配置信号包括第一比特信号,所述第二配置信号包括第二比特信号、第三比特信号及第四比特信号,所述选择电路用于根据所述第二比特信号、所述第三比特信号、所述第四比特信号依次排布形成的逻辑组合以及所述第一比特信号,从多个所述内核中选通至少一个目标内核的测试接口。
4.一种图像形成装置,其特征在于,包括装置主体,具备进行图像形成处理的图像形成引擎;如权利要求1-3任一项所述的片上系统,所述片上系统用于控制所述图像形成引擎。
5.一种多核处理器测试装置,用于对片上系统进行测试,所述片上系统包括多个内核、选择电路、传输线及寄存器;每个所述内核包括测试接口,至少两个所述内核的测试接口通过所述选择电路与所述传输线电连接,所述寄存器与所述传输线连接;其特征在于,所述多核处理器测试装置包括测试模块及信号接收端,所述测试模块分别与所述传输线及所述信号接收端连接;
所述信号接收端用于接收第一配置信号并将所述第一配置信号发送至所述测试模块;
所述测试模块用于将所述第一配置信号发送至所述传输线;
所述寄存器用于生成第二配置信号并将所述第二配置信号发送至所述传输线;
所述选择电路用于从所述传输线接收所述第一配置信号和所述第二配置信号,并根据所述第一配置信号和所述第二配置信号从多个所述内核中选通至少一个目标内核的测试接口;
所述测试模块还用于对所述目标内核进行测试;
所述多核处理器测试装置还包括改变模块,所述改变模块与所述信号接收端连接,所述测试模块还用于判断所述目标内核是否处于死机状态,当所述目标内核处于死机状态时,所述改变模块用于将所述第一配置信号改变为第三配置信号,并将所述第三配置信号传输至所述信号接收端,所述测试模块还用于将所述第三配置信号发送至所述传输线;所述选择电路用于从所述传输线接收所述第二配置信号和所述第三配置信号,并根据所述第二配置信号和所述第三配置信号切换选通的目标内核;
或者,当所述目标内核处于死机状态时,所述寄存器用于生成第四配置信号并将所述第四配置信号发送至所述传输线;
所述选择电路用于从所述传输线接收所述第一配置信号和所述第四配置信号,并根据所述第一配置信号和所述第四配置信号切换选通的目标内核。
6.根据权利要求5所述的多核处理器测试装置,其特征在于,所述改变模块包括开关电路、第一电阻电路及第二电阻电路,所述第一电阻电路及所述第二电阻电路分别通过所述开关电路与所述信号接收端连接,当所述第一电阻电路通过所述开关电路与所述信号接收端建立连接时,所述第一电阻电路传输第一配置信号至所述信号接收端,当所述第二电阻电路通过所述开关电路与所述信号接收端建立连接时,所述第二电阻电路传输第三配置信号至所述信号接收端。
7.根据权利要求5所述的多核处理器测试装置,其特征在于,所述第一配置信号包括第一比特信号,所述第二配置信号包括第二比特信号及第三比特信号,所述选择电路用于根据所述第二比特信号、所述第三比特信号依次排布形成的逻辑组合以及所述第一比特信号,从多个所述内核中选通至少一个目标内核的测试接口。
8.根据权利要求5所述的多核处理器测试装置,其特征在于,所述第一配置信号包括第一比特信号,所述第二配置信号包括第二比特信号、第三比特信号及第四比特信号,所述选择电路用于根据所述第二比特信号、所述第三比特信号、所述第四比特信号依次排布形成的逻辑组合以及所述第一比特信号,从多个所述内核中选通至少一个目标内核的测试接口。
9.一种多核处理器测试系统,其特征在于,包括如权利要求1-3任一项所述的片上系统及如权利要求5-8任一项所述的多核处理器测试装置。
10.一种多核处理器测试方法,应用于多核处理器测试系统,其特征在于,所述多核处理器测试系统包括片上系统及多核处理器测试装置,所述片上系统包括多个内核、选择电路、传输线及寄存器;每个所述内核包括测试接口,至少两个所述内核的测试接口通过所述选择电路与所述传输线连接,所述传输线还与所述寄存器及测试模块连接;所述多核处理器测试装置包括测试模块及信号接收端,所述测试模块分别与所述传输线及所述信号接收端连接;所述方法包括:
接收第一配置信号和第二配置信号;
根据所述第一配置信号和所述第二配置信号从多个所述内核中选通至少一个目标内核的测试接口;
对所述目标内核进行测试;
还包括:
判断所述目标内核是否处于死机状态,当所述目标内核处于死机状态时,将所述第一配置信号改变为第三配置信号,根据所述第二配置信号和所述第三配置信号切换选通的目标内核;或者,
当所述目标内核处于死机状态时,生成第四配置信号,根据所述第一配置信号和所述第四配置信号切换选通的目标内核。
11.根据权利要求10所述的方法,其特征在于,所述第一配置信号包括第一比特信号,所述第二配置信号包括第二比特信号及第三比特信号,所述根据所述第一配置信号和所述第二配置信号从多个所述内核中选通至少一个目标内核的测试接口具体包括:根据所述第二比特信号、所述第三比特信号依次排布形成的逻辑组合以及所述第一比特信号,从所述多个内核中选通至少一个内核作为目标内核进行测试。
12.根据权利要求10所述的方法,其特征在于,所述第一配置信号包括第一比特信号,所述第二配置信号包括第二比特信号、第三比特信号及第四比特信号,所述根据所述第一配置信号和所述第二配置信号从多个所述内核中选通至少一个目标内核的测试接口具体包括:根据所述第二比特信号、所述第三比特信号、所述第四比特信号依次排布形成的逻辑组合以及所述第一比特信号,从所述多个内核中选通至少一个内核作为目标内核进行测试。
CN202110363738.4A 2021-04-02 2021-04-02 多核处理器测试装置、系统、方法及片上系统 Active CN112948197B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110363738.4A CN112948197B (zh) 2021-04-02 2021-04-02 多核处理器测试装置、系统、方法及片上系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110363738.4A CN112948197B (zh) 2021-04-02 2021-04-02 多核处理器测试装置、系统、方法及片上系统

Publications (2)

Publication Number Publication Date
CN112948197A CN112948197A (zh) 2021-06-11
CN112948197B true CN112948197B (zh) 2024-02-06

Family

ID=76230569

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110363738.4A Active CN112948197B (zh) 2021-04-02 2021-04-02 多核处理器测试装置、系统、方法及片上系统

Country Status (1)

Country Link
CN (1) CN112948197B (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101382583A (zh) * 2008-10-30 2009-03-11 中国人民解放军国防科学技术大学 多核微处理器jtag调试方法
CN102103535A (zh) * 2011-03-07 2011-06-22 北京大学深圳研究生院 多核处理器、多核处理器的调试系统和调试方法
CN102831015A (zh) * 2012-08-01 2012-12-19 华为技术有限公司 多核处理器的调度方法和设备
CN102880536A (zh) * 2012-09-07 2013-01-16 杭州中天微系统有限公司 一种多核处理器的jtag调试方法
CN103310852A (zh) * 2013-05-13 2013-09-18 桂林电子科技大学 基于ieee 1500标准兼容sram/rom的mbist控制器结构系统

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101382583A (zh) * 2008-10-30 2009-03-11 中国人民解放军国防科学技术大学 多核微处理器jtag调试方法
CN102103535A (zh) * 2011-03-07 2011-06-22 北京大学深圳研究生院 多核处理器、多核处理器的调试系统和调试方法
CN102831015A (zh) * 2012-08-01 2012-12-19 华为技术有限公司 多核处理器的调度方法和设备
CN102880536A (zh) * 2012-09-07 2013-01-16 杭州中天微系统有限公司 一种多核处理器的jtag调试方法
CN103310852A (zh) * 2013-05-13 2013-09-18 桂林电子科技大学 基于ieee 1500标准兼容sram/rom的mbist控制器结构系统

Also Published As

Publication number Publication date
CN112948197A (zh) 2021-06-11

Similar Documents

Publication Publication Date Title
CN101329663B (zh) 一种实现片上系统管脚分时复用的装置及方法
US20080120058A1 (en) Multi-cpu mobile terminal and multi-cpu test system and method
CN109307833A (zh) 芯片测试装置及芯片测试方法
JP2003256352A (ja) 自動経路切り換え可能なusb制御回路
CN113342727A (zh) 一种信号传输装置、方法、计算机设备及存储介质
CN112948197B (zh) 多核处理器测试装置、系统、方法及片上系统
CN103049410A (zh) 服务器及其串口切换电路
US11874323B2 (en) JTAG-based burning device
CN111049706B (zh) 通讯模块测试装置
CN200986699Y (zh) 多处理器的开机切换电路
CN110825678B (zh) 智能背板及智能存储设备
CN110300405A (zh) 一种实现sim卡切换的装置及方法
CN113297020B (zh) 芯片中硬件模块的测试方法、装置、设备及可读存储介质
CN105718338A (zh) 信息处理方法及电子设备
JP2024508592A (ja) Usbインタフェースの多重化方法、回路、電子機器及び記憶媒体
CN111490912A (zh) 一种基于fpga的多通道信号传输可靠性检测系统及方法
CN201667071U (zh) 一种信号转接系统
Lin et al. Design and implementation of OTG communication system terminal based on USB
CN108009113B (zh) 一种双主控系统中调试串口的实现方法
CN218768136U (zh) 利用可编程逻辑器件切换i2c总线的装置
CN220820143U (zh) 一种汽车零部件故障测试装置
CN220154911U (zh) 一种外设共享电路及装置
CN216486426U (zh) 一种可扩展的jtag菊花链互连装置
CN218568028U (zh) 一种新型数据处理电路板
CN221007786U (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