CN115562930A - 用于测试多核芯片的方法及装置、电子设备、存储介质 - Google Patents
用于测试多核芯片的方法及装置、电子设备、存储介质 Download PDFInfo
- Publication number
- CN115562930A CN115562930A CN202211483326.5A CN202211483326A CN115562930A CN 115562930 A CN115562930 A CN 115562930A CN 202211483326 A CN202211483326 A CN 202211483326A CN 115562930 A CN115562930 A CN 115562930A
- Authority
- CN
- China
- Prior art keywords
- processor
- sequence
- core chip
- test
- tested
- 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.)
- Pending
Links
- 238000012360 testing method Methods 0.000 title claims abstract description 224
- 238000000034 method Methods 0.000 title claims abstract description 49
- 230000006870 function Effects 0.000 claims description 25
- 230000008569 process Effects 0.000 claims description 13
- 238000010586 diagram Methods 0.000 description 13
- 230000000630 rising effect Effects 0.000 description 8
- 238000004891 communication Methods 0.000 description 7
- 238000004590 computer program Methods 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 230000001960 triggered effect Effects 0.000 description 3
- 238000011161 development Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 235000019800 disodium phosphate Nutrition 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000005284 excitation Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/26—Functional testing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/2205—Detection 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/2236—Detection 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
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)
- Test And Diagnosis Of Digital Computers (AREA)
Abstract
本申请涉及芯片技术领域,公开一种用于测试多核芯片的方法,包括:获取多核芯片的多个处理器类型;确定各处理器类型对应的测试序列,测试序列用于测试处理器的读功能和/或写功能;利用各测试序列依次对多核芯片进行测试。这样,为多核芯片中的各处理器分别设置对应的测试序列。在进行多核芯片的测试时,只需要将多个测试序列发送给多核芯片,就能完成多核芯片的测试。操作方式简单,能够提高测试多核芯片的效率。本申请还公开一种用于测试多核芯片的装置、电子设备、存储介质。
Description
技术领域
本申请涉及芯片技术领域,例如涉及一种用于测试多核芯片的方法及装置、电子设备、存储介质。
背景技术
目前,对于芯片会存在验证芯片的各种功能的技术需求。而随着多核芯片的不断发展,多核芯片的规模越来越大,导致对多核芯片的验证越来越困难和复杂。例如:公开号为CN105205249A 的中国专利文件公开了:随着集成电路产业的飞速发展,越来越多的芯片设计成SOC(SystemOnChip)芯片,伴随着SOC芯片的规模越来越大,SOC芯片的验证也越来越困难。公开号为CN102103535A的中国专利文件公开了:对于多核处理器,由于其包含多个CPU和/或DSP等单核处理器,每个单核处理器均设置有属于自己的测试访问端口TAP,并且,各个单核处理器之间还通过外围逻辑电路连接,这些都导致多核处理器的联合调试变得复杂。
在实现本公开实施例的过程中,发现相关技术中至少存在如下问题:
相关技术中对多核芯片的测试复杂,导致测试多核芯片的效率较低。
发明内容
为了对披露的实施例的一些方面有基本的理解,下面给出了简单的概括。所述概括不是泛泛评述,也不是要确定关键/重要组成元素或描绘这些实施例的保护范围,而是作为后面的详细说明的序言。
本公开实施例提供了一种用于测试多核芯片的方法及装置、电子设备、存储介质,以提高测试多核芯片的效率。
在一些实施例中,所述用于测试多核芯片的方法,包括:获取多核芯片的多个处理器类型;确定各所述处理器类型对应的测试序列,所述测试序列用于测试处理器的读功能和/或写功能;利用各所述测试序列依次对所述多核芯片进行测试。
在一些实施例中,确定各所述处理器类型对应的测试序列,包括:利用预设的测试数据库,对各所述处理器类型分别进行查表操作,获得各所述处理器类型分别对应的测试序列;测试数据库中存储有处理器类型与测试序列之间的对应关系。
在一些实施例中,所述测试序列通过以下方式获取:根据处理器类型确定第一待测试数据、第一待测试地址和第一访问操作序列;所述第一访问操作序列为处理器执行写操作指令的过程中操作JTAG寄存器的顺序;根据所述第一待测试数据、所述第一待测试地址和所述第一访问操作序列确定第一代码;所述第一代码用于按照所述第一访问操作序列操作各JTAG寄存器,使多核芯片将第一待测试数据写入第一待测试地址;将所述第一代码确定为测试序列。
在一些实施例中,所述测试序列通过以下方式获取:根据处理器类型确定第二待测试地址和第二访问操作序列;所述第二访问操作序列为处理器执行读操作指令的过程中操作JTAG寄存器的顺序;根据所述第二待测试地址和所述第二访问操作序列确定第二代码;所述第二代码用于按照所述第二访问操作序列操作各JTAG寄存器,使多核芯片读取第二待测试地址的存储数据;将所述第二代码确定为测试序列。
在一些实施例中,所述用于测试多核芯片的装置,包括:获取模块,被配置为获取多核芯片的多个处理器类型;确定模块,被配置为确定各所述处理器类型对应的测试序列;所述测试序列用于测试处理器的读功能和/或写功能;测试模块,被配置为利用各所述测试序列依次对所述多核芯片进行测试。
在一些实施例中,确定模块被配置为通过以下方式确定各所述处理器类型对应的测试序列:利用预设的测试数据库,对各所述处理器类型分别进行查表操作,获得各所述处理器类型分别对应的测试序列;测试数据库中存储有处理器类型与测试序列之间的对应关系。
在一些实施例中,所述电子设备,包括处理器和存储有程序指令的存储器,所述处理器被配置为在执行所述程序指令时,执行上述的用于测试多核芯片的方法。
在一些实施例中,所述存储介质,存储有程序指令,所述程序指令在运行时,执行上述的用于测试多核芯片的方法。
本公开实施例提供的用于测试多核芯片的方法及装置、电子设备、存储介质,可以实现以下技术效果:通过获取多核芯片的多个处理器类型。确定各处理器类型对应的测试序列。利用各测试序列依次对多核芯片进行测试。这样,为多核芯片中的各处理器分别设置对应的测试序列。在进行多核芯片的测试时,只需要将多个测试序列发送给多核芯片,就能完成多核芯片的测试。操作方式简单,能够提高测试多核芯片的效率。
以上的总体描述和下文中的描述仅是示例性和解释性的,不用于限制本申请。
附图说明
一个或多个实施例通过与之对应的附图进行示例性说明,这些示例性说明和附图并不构成对实施例的限定,附图中具有相同参考数字标号的元件示为类似的元件,附图不构成比例限制,并且其中:
图1是本公开实施例提供的一个TAP状态控制器的状态变化示意图;
图2是本公开实施例提供的一个访问JTAG寄存器中的指令寄存器的时序图;
图3是本公开实施例提供的第一种用于测试多核芯片的方法的示意图;
图4是本公开实施例提供的第二种用于测试多核芯片的方法的示意图;
图5是本公开实施例提供的一种用于测试多核芯片的装置的示意图;
图6是本公开实施例提供的一种电子设备的示意图。
具体实施方式
为了能够更加详尽地了解本公开实施例的特点与技术内容,下面结合附图对本公开实施例的实现进行详细阐述,所附附图仅供参考说明之用,并非用来限定本公开实施例。在以下的技术描述中,为方便解释起见,通过多个细节以提供对所披露实施例的充分理解。然而,在没有这些细节的情况下,一个或多个实施例仍然可以实施。在其它情况下,为简化附图,熟知的结构和装置可以简化展示。
本公开实施例的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开实施例的实施例。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含。
除非另有说明,术语“多个”表示两个或两个以上。
本公开实施例中,字符“/”表示前后对象是一种“或”的关系。例如,A/B表示:A或B。
术语“和/或”是一种描述对象的关联关系,表示可以存在三种关系。例如,A和/或B,表示:A或B,或,A和B这三种关系。
术语“对应”可以指的是一种关联关系或绑定关系,A与B相对应指的是A与B之间是一种关联关系或绑定关系。
在一些实施例中,各类型的处理器均能够通过控制JTAG(Joint Test ActionGroup,联合测试工作组)寄存器以实现处理器的读写功能。而JTAG寄存器的具体控制由TAP(Test Access Port,测试访问口)状态控制器和TCK(Test Clock,时钟)时钟决定。TAP状态控制器的状态变化由TMS(Test Mode Select,状态选择)时序和TCK时钟决定。图1为TAP状态控制器的状态变化示意图。如图1所示,TAP状态控制器首先处于状态1。在TAP状态控制器处于状态1的情况下,若TCK时钟处于上升沿时,TMS处于高电平,则保持状态1。在TAP状态控制器处于状态1的情况下,若TCK时钟处于上升沿时TMS处于低电平,则TAP状态控制器从状态1跳转到状态2。在TAP状态控制器处于状态2的情况下,若TCK时钟处于上升沿时,TMS处于低电平,则保持状态2。在TAP状态控制器处于状态2的情况下,若TCK时钟处于上升沿时TMS处于高电平,则TAP状态控制器从状态2跳转到状态3。在TAP状态控制器处于状态3的情况下,若TCK时钟处于上升沿时TMS处于高电平,则TAP状态控制器从状态3跳转到状态4。在TAP状态控制器处于状态3情况下,若TCK时钟处于上升沿时TMS处于低电平,则TAP状态控制器从状态3跳转到状态5。其中,状态1为Test-Logic-Reset状态,用于初始化所有的内部JTAG寄存器。状态2为Run-Test/Idel状态,用于初始化读、写操作或者使JTAG寄存器停留在IDEL状态。状态3为Select-DR-Scan状态,用于选择操作DR内部数据寄存器。状态4为Select-IR-Scan状态,用于选择操作IR内部指令寄存器。状态5为Capture-DR状态,用于锁定操作DR内部数据寄存器。状态6为Shift-DR状态,用于将TDI数据移位到DR内部数据寄存器中。状态7为Exit1-DR状态。状态8为Pause-DR状态。状态9为Exit2-DR状态。状态10为Update-DR状态。状态11为Capture-IR状态,用于锁定操作IR内部指令寄存器。状态12为Shift-IR状态,用于将TDI数据移位到IR内部指令寄存器中。状态13为Exit1-IR状态。状态14为Pause-IR状态。状态15为Exit2-IR状态。状态16为Update-IR状态。根据图1可见,当TAP状态控制器的状态为Shift-DR状态的情况下,JTAG移位寄存器在TCK的上升沿采样TDI的数据,当TAP状态控制器的状态为UPDATA-DR状态时,移位寄存器的值被更新到JTAG数据寄存器中。当TAP状态控制器为SHIFT-IR状态时,JTAG指令缓冲器在TCK的上升沿采样TDI数据,当TAP状态控制器的状态为UPDATA-IR状态时,指令缓冲器的值被更新到JTAG指令寄存器中。
在一些实施例中,图2为访问JTAG寄存器中的指令寄存器的时序图,如图2所示,TCK为时钟时序,TDI(Test Data In,串行数据输入)为数据输入时序,TMS为状态选择时序,TAP为状态控制器时序,TDO(Test Data Output,串行数据输出)为数据输出时序。其中,图内的竖向波浪图案和横向波浪图案均代表省略了信号。在指令缓冲器缓存完毕后,一旦TCK时钟下降沿检测到TAP状态控制器为状态16时,指令寄存器将会锁存指令缓冲器的数据。分析JTAG指令寄存器的读写状态下的时序,根据时序编写激励函数,能够实现对JTAG指令寄存器和JTAG数据寄存器的访问。
结合图3所示,本公开实施例提供一种用于测试多核芯片的方法,包括:
步骤S301,电子设备获取多核芯片的多个处理器类型。
步骤S302,电子设备确定各处理器类型对应的测试序列,测试序列用于测试处理器的读功能和/或写功能。
步骤S303,电子设备利用各测试序列依次对多核芯片进行测试。
采用本公开实施例提供的用于测试多核芯片的方法,通过获取多核芯片的多个处理器类型。确定各处理器类型对应的测试序列。利用各测试序列依次对多核芯片进行测试。这样,为多核芯片中的各处理器分别设置对应的测试序列。在进行多核芯片的测试时,只需要将多个测试序列发送给多核芯片,就能完成多核芯片的测试。操作方式简单,能够提高测试多核芯片的效率。
可选地,确定各处理器类型对应的测试序列,包括:利用预设的测试数据库,对各处理器类型分别进行查表操作,获得各处理器类型分别对应的测试序列;测试数据库中存储有处理器类型与测试序列之间的对应关系。这样,由于触发不同的处理器执行读写操作,需要操作的JTAG寄存器的顺序不同。因此,需要为不同的处理器类型设置不同的测试序列。预先将各处理器类型分别对应的测试序列存入预设的数据库中,便于在进行多核芯片的测试时,只需要确定多核芯片中存在的处理器类型,并根据处理器类型确定各处理器类型对应的测试序列。然后将多个测试序列发送给多核芯片,就能完成多核芯片的测试。操作方式简单,能够提高测试多核芯片的效率。
可选地,测试序列通过以下方式获取:根据处理器类型确定第一待测试数据、第一待测试地址和第一访问操作序列;第一访问操作序列为处理器执行写操作指令的过程中操作JTAG寄存器的顺序;根据第一待测试数据、第一待测试地址和第一访问操作序列确定第一代码;第一代码用于按照第一访问操作序列操作各JTAG寄存器,使多核芯片将第一待测试数据写入第一待测试地址;将第一代码确定为测试序列。这样,由于不同的处理器在执行写入指令时,对应的操作JTAG寄存器的顺序不同。因此,需要根据不同的操作JTAG寄存器的顺序来确定不同的处理器的测试序列。
进一步的,根据处理器类型确定第一待测试数据,包括:利用预设的第一数据库,对各处理器类型分别进行查表操作,获得各处理器类型分别对应的第一待测试数据;第一数据库中存储有处理器类型与第一待测试数据之间的对应关系。这样,对不同的处理器类型确定不同的第一待测试数据,便于区分多核芯片中的单个处理器是否合格。
进一步的,根据处理器类型确定第一待测试地址,包括:利用预设的第二数据库,对各处理器类型分别进行查表操作,获得各处理器类型分别对应的第一待测试地址;第二数据库中存储有处理器类型与第一待测试地址之间的对应关系。这样,对不同的处理器类型确定不同的第一待测试地址,便于区分多核芯片中的单个处理器是否合格。
进一步的,根据处理器类型确定第一访问操作序列,包括:利用预设的第三数据库,对各处理器类型分别进行查表操作,获得各处理器类型分别对应的第一访问操作序列;第三数据库中存储有处理器类型与第一访问操作序列之间的对应关系。这样,由于在触发处理器进行写操作时,不同的处理器类型需要执行的JTAG寄存器顺序存在差异。因此,在编写测试序列前,需要先确定处理器类型对应的第一访问操作序列。
进一步的,根据第一待测试数据、第一待测试地址和第一访问操作序列确定第一代码,包括:将第一待测试数据、第一待测试地址和第一访问操作序列发送给预设的第一代码系统,并从第一代码系统获取第一代码;第一代码系统用于将第一待测试数据、第一待测试地址和第一访问操作序列展示给用户,使得用户根据第一待测试数据、第一待测试地址和第一访问操作序列输入第一代码。
可选地,测试序列通过以下方式获取:根据处理器类型确定第二待测试地址和第二访问操作序列;第二访问操作序列为处理器执行读操作指令的过程中操作JTAG寄存器的顺序;根据第二待测试地址和第二访问操作序列确定第二代码;第二代码用于按照第二访问操作序列操作各JTAG寄存器,使多核芯片读取第二待测试地址的存储数据;将第二代码确定为测试序列。这样,由于不同的处理器在执行读取指令时,对应的操作JTAG寄存器的顺序不同。因此,需要根据不同的操作JTAG寄存器的顺序来确定处理器的测试序列。将测试序列存入预设的数据库中,便于在进行多核芯片的测试时,只需要将多个测试序列发送给多核芯片,就能完成多核芯片的测试。操作方式简单,能够提高测试多核芯片的效率。
进一步的,根据处理器类型确定第二待测试地址,包括:利用预设的第四数据库,对各处理器类型分别进行查表操作,获得各处理器类型分别对应的第二待测试地址;第四数据库中存储有处理器类型与第二待测试地址之间的对应关系。这样,对不同的处理器类型确定不同的第二待测试地址,便于区分多核芯片中的单个处理器是否合格。
进一步的,根据处理器类型确定第二访问操作序列,包括:利用预设的第五数据库,对各处理器类型分别进行查表操作,获得各处理器类型分别对应的第二访问操作序列;第五数据库中存储有处理器类型与第二访问操作序列之间的对应关系。这样,由于在触发处理器进行读操作时,不同的处理器类型需要执行的JTAG寄存器顺序存在差异。因此,在编写测试序列前,需要先确定处理器类型对应的第二访问操作序列。
进一步的,根据第二待测试地址和第二访问操作序列确定第二代码,包括:将第二待测试地址和第二访问操作序列发送给预设的第二代码系统,并从第二代码系统获取第二代码;第二代码系统用于将第二待测试地址和第二访问操作序列展示给用户,使得用户根据第二待测试地址和第二访问操作序列输入第二代码。
可选地,利用各测试序列依次对多核芯片进行测试后,还包括:获取各测试序列的对比结果;分别记录各测试序列对多核芯片进行测试后的测试结果;将测试序列对应的对比结果与测试序列对应的测试结果进行比较,根据比较结果确定多核芯片是否合格。这样,通过对比结果与测试结果的比较,能够自动确定多核芯片是否合格,进一步提高测试多核芯片的效率。
进一步的,各测试序列的对比结果通过以下方式获取:利用预设的第六数据库,对各测试序列分别进行查表操作,获得各测试序列分别对应的对比结果;第六数据库中存储有测试序列与对比结果之间的对应关系。
在一些实施例中,在测试序列是第一代码的情况下,记录测试序列对多核芯片进行测试后的测试结果,即记录多核芯片将第一待测试数据写入第一待测试地址后,多核芯片的第一待测试地址的数据。在测试序列是第二代码的情况下,记录测试序列对多核芯片进行测试后的测试结果,即记录多核芯片读取的数据。
进一步的,根据比较结果确定多核芯片是否合格,包括:测试序列对应的对比结果与测试序列对应的测试结果一致的情况下,将该测试序列确定为合格序列。在全部测试序列均为合格序列的情况下,确定多核芯片合格。否则,多核芯片不合格。
结合图4所示,本公开实施例提供第二种用于测试多核芯片的方法,包括:
步骤S401,电子设备获取多核芯片的多个处理器类型。
步骤S402,电子设备确定各处理器类型对应的测试序列,测试序列用于测试处理器的读功能和/或写功能。
步骤S403,电子设备利用各测试序列依次对多核芯片进行测试。
步骤S404,电子设备获取各测试序列的对比结果;分别记录各测试序列对多核芯片进行测试后的测试结果;将测试序列对应的对比结果与测试序列对应的测试结果进行比较,根据比较结果确定多核芯片是否合格。
采用本公开实施例提供的用于测试多核芯片的方法,通过获取多核芯片的多个处理器类型。确定各处理器类型对应的测试序列。利用各测试序列依次对多核芯片进行测试。获取各测试序列的对比结果。分别记录各测试序列对多核芯片进行测试后的测试结果。将测试序列对应的对比结果与测试序列对应的测试结果进行比较,根据比较结果确定多核芯片是否合格。这样,为多核芯片中的各处理器分别设置对应的测试序列。在进行多核芯片的测试时,只需要将多个测试序列发送给多核芯片,就能完成多核芯片的测试。同时,通过对比结果与测试结果的比较,能够自动确定多核芯片是否合格。从而进一步提高测试多核芯片的效率。
在一些实施例中,尽管多核芯片存在多种类型的处理器。但是各种处理器的debug(调试)功能大同小异。debug功能通常包括访问处理器的内部寄存器、访问处理器的辅助寄存器、访问处理器的memory map(地址空间)等。尽管各种处理器的debug功能大同小异,但是由于每一种类型处理器都具有独立的架构以及memory map,因此,每一种类型的处理器能识别的JTAG数据包是不一样的。但是核心都是基于对JTAG电路的指令寄存器、数据寄存器的操作。因此,只需要获取处理器执行写操作指令的过程中操作JTAG寄存器的顺序,或获取处理器执行读操作指令的过程中操作JTAG寄存器的顺序,就能够操作JTAG寄存器以测试处理器的读功能和/或写功能。
在一些实施例中,处理器为ARC CPU(ARC-central processing unit,ARC处理器),通过官方手册确定ARC CPU对应的操作流程;按照操作流程操作各JTAG寄存器,能够实现控制ARC CPU处理器发起一笔写操作,从而能够通过操作JTAG寄存器测试CPU处理器。
结合图5所示,本公开实施例提供一种用于测试多核芯片的装置1,包括获取模块2、确定模块3和测试模块4。获取模块2,被配置为获取多核芯片的多个处理器类型;确定模块3,被配置为确定各处理器类型对应的测试序列;测试模块4,被配置为利用各测试序列依次对多核芯片进行测试。
采用本公开实施例提供的用于测试多核芯片的装置,通过获取模块获取多核芯片的多个处理器类型。确定模块确定各处理器类型对应的测试序列。测试模块利用各测试序列依次对多核芯片进行测试。这样,为多核芯片中的各处理器分别设置对应的测试序列。在进行多核芯片的测试时,只需要将多个测试序列发送给多核芯片,就能完成多核芯片的测试。操作方式简单,能够提高测试多核芯片的效率。
可选地,确定模块被配置为通过以下方式确定各处理器类型对应的测试序列:利用预设的测试数据库,对各处理器类型分别进行查表操作,获得各处理器类型分别对应的测试序列;测试数据库中存储有处理器类型与测试序列之间的对应关系。
结合图6所示,本公开实施例提供一种电子设备5,包括处理器(processor)6和存储器(memory)7。可选地,该装置还可以包括通信接口(Communication Interface)8和总线9。其中,处理器6、通信接口8、存储器7可以通过总线9完成相互间的通信。通信接口8可以用于信息传输。处理器6可以调用存储器7中的逻辑指令,以执行上述实施例的用于测试多核芯片的方法。
可选地,电子设备为计算机或服务器。
采用本公开实施例提供的电子设备,通过获取多核芯片的多个处理器类型。确定各处理器类型对应的测试序列。利用各测试序列依次对多核芯片进行测试。这样,为多核芯片中的各处理器分别设置对应的测试序列。在进行多核芯片的测试时,只需要将多个测试序列发送给多核芯片,就能完成多核芯片的测试。操作方式简单,能够提高测试多核芯片的效率。
此外,上述的存储器7中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。
存储器7作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序,如本公开实施例中的方法对应的程序指令/模块。处理器6通过运行存储在存储器7中的程序指令/模块,从而执行功能应用以及数据处理,即实现上述实施例中用于测试多核芯片的方法。
存储器7可包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端设备的使用所创建的数据等。此外,存储器7可以包括高速随机存取存储器,还可以包括非易失性存储器。
本公开实施例提供了一种计算机可读存储介质,存储有计算机可执行指令,所述计算机可执行指令设置为执行上述用于测试多核芯片的方法。
本公开实施例提供了一种计算机程序产品,所述计算机程序产品包括存储在计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,使所述计算机执行上述用于测试多核芯片的方法。
上述的计算机可读存储介质可以是暂态计算机可读存储介质,也可以是非暂态计算机可读存储介质。
本公开实施例的技术方案可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括一个或多个指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本公开实施例所述方法的全部或部分步骤。而前述的存储介质可以是非暂态存储介质,包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等多种可以存储程序代码的介质,也可以是暂态存储介质。
以上描述和附图充分地示出了本公开的实施例,以使本领域的技术人员能够实践它们。其他实施例可以包括结构的、逻辑的、电气的、过程的以及其他的改变。实施例仅代表可能的变化。除非明确要求,否则单独的部件和功能是可选的,并且操作的顺序可以变化。一些实施例的部分和特征可以被包括在或替换其他实施例的部分和特征。而且,本申请中使用的用词仅用于描述实施例并且不用于限制权利要求。如在实施例以及权利要求的描述中使用的,除非上下文清楚地表明,否则单数形式的“一个”(a)、“一个”(an)和“所述”(the)旨在同样包括复数形式。类似地,如在本申请中所使用的术语“和/或”是指包含一个或一个以上相关联的列出的任何以及所有可能的组合。另外,当用于本申请中时,术语“包括”(comprise)及其变型“包括”(comprises)和/或包括(comprising)等指陈述的特征、整体、步骤、操作、元素,和/或组件的存在,但不排除一个或一个以上其它特征、整体、步骤、操作、元素、组件和/或这些的分组的存在或添加。在没有更多限制的情况下,由语句“包括一个…”限定的要素,并不排除在包括所述要素的过程、方法或者设备中还存在另外的相同要素。本文中,每个实施例重点说明的可以是与其他实施例的不同之处,各个实施例之间相同相似部分可以互相参见。对于实施例公开的方法、产品等而言,如果其与实施例公开的方法部分相对应,那么相关之处可以参见方法部分的描述。
本领域技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,可以取决于技术方案的特定应用和设计约束条件。所述技术人员可以对每个特定的应用来使用不同方法以实现所描述的功能,但是这种实现不应认为超出本公开实施例的范围。所述技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
本文所披露的实施例中,所揭露的方法、产品(包括但不限于装置、设备等),可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,可以仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例。另外,在本公开实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
附图中的流程图和框图显示了根据本公开实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这可以依所涉及的功能而定。在附图中的流程图和框图所对应的描述中,不同的方框所对应的操作或步骤也可以以不同于描述中所披露的顺序发生,有时不同的操作或步骤之间不存在特定的顺序。例如,两个连续的操作或步骤实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这可以依所涉及的功能而定。框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
Claims (10)
1.一种用于测试多核芯片的方法,其特征在于,包括:
获取多核芯片的多个处理器类型;
确定各所述处理器类型对应的测试序列,所述测试序列用于测试处理器的读功能和/或写功能;
利用各所述测试序列依次对所述多核芯片进行测试。
2.根据权利要求1所述的方法,其特征在于,确定各所述处理器类型对应的测试序列,包括:
利用预设的测试数据库,对各所述处理器类型分别进行查表操作,获得各所述处理器类型分别对应的测试序列;测试数据库中存储有处理器类型与测试序列之间的对应关系。
3.根据权利要求1或2任一项所述的方法,其特征在于,所述测试序列通过以下方式获取:
根据处理器类型确定第一待测试数据、第一待测试地址和第一访问操作序列;所述第一访问操作序列为处理器执行写操作指令的过程中操作JTAG寄存器的顺序;
根据所述第一待测试数据、所述第一待测试地址和所述第一访问操作序列确定第一代码;所述第一代码用于按照所述第一访问操作序列操作各JTAG寄存器,使多核芯片将第一待测试数据写入第一待测试地址;
将所述第一代码确定为测试序列。
4.根据权利要求1或2任一项所述的方法,其特征在于,所述测试序列通过以下方式获取:
根据处理器类型确定第二待测试地址和第二访问操作序列;所述第二访问操作序列为处理器执行读操作指令的过程中操作JTAG寄存器的顺序;
根据所述第二待测试地址和所述第二访问操作序列确定第二代码;所述第二代码用于按照所述第二访问操作序列操作各JTAG寄存器,使多核芯片读取第二待测试地址的存储数据;
将所述第二代码确定为测试序列。
5.一种用于测试多核芯片的装置,其特征在于,包括:
获取模块,被配置为获取多核芯片的多个处理器类型;
确定模块,被配置为确定各所述处理器类型对应的测试序列;所述测试序列用于测试处理器的读功能和/或写功能;
测试模块,被配置为利用各所述测试序列依次对所述多核芯片进行测试。
6.根据权利要求5所述的装置,其特征在于,确定模块被配置为通过以下方式确定各所述处理器类型对应的测试序列:
利用预设的测试数据库,对各所述处理器类型分别进行查表操作,获得各所述处理器类型分别对应的测试序列;测试数据库中存储有处理器类型与测试序列之间的对应关系。
7.根据权利要求5或6任一项所述的装置,其特征在于,所述测试序列通过以下方式获取:
根据处理器类型确定第一待测试数据、第一待测试地址和第一访问操作序列;所述第一访问操作序列为处理器执行写操作指令的过程中操作JTAG寄存器的顺序;
根据所述第一待测试数据、所述第一待测试地址和所述第一访问操作序列确定第一代码;所述第一代码用于按照所述第一访问操作序列操作各JTAG寄存器,使多核芯片将第一待测试数据写入第一待测试地址;
将所述第一代码确定为测试序列。
8.根据权利要求5或6任一项所述的装置,其特征在于,所述测试序列通过以下方式获取:
根据处理器类型确定第二待测试地址和第二访问操作序列;所述第二访问操作序列为处理器执行读操作指令的过程中操作JTAG寄存器的顺序;
根据所述第二待测试地址和所述第二访问操作序列确定第二代码;所述第二代码用于按照所述第二访问操作序列操作各JTAG寄存器,使多核芯片读取第二待测试地址的存储数据;
将所述第二代码确定为测试序列。
9.一种电子设备,包括处理器和存储有程序指令的存储器,其特征在于,所述处理器被配置为在执行所述程序指令时,执行如权利要求1至4任一项所述用于测试多核芯片的方法。
10.一种存储介质,存储有程序指令,其特征在于,所述程序指令在运行时,执行如权利要求1至4任一项所述的用于测试多核芯片的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211483326.5A CN115562930A (zh) | 2022-11-24 | 2022-11-24 | 用于测试多核芯片的方法及装置、电子设备、存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211483326.5A CN115562930A (zh) | 2022-11-24 | 2022-11-24 | 用于测试多核芯片的方法及装置、电子设备、存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115562930A true CN115562930A (zh) | 2023-01-03 |
Family
ID=84769744
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211483326.5A Pending CN115562930A (zh) | 2022-11-24 | 2022-11-24 | 用于测试多核芯片的方法及装置、电子设备、存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115562930A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116819290A (zh) * | 2023-08-29 | 2023-09-29 | 北京紫光芯能科技有限公司 | 用于进行芯片测试的系统及方法、装置、设备、存储介质 |
CN116881067A (zh) * | 2023-09-07 | 2023-10-13 | 西安简矽技术有限公司 | 一种生成vcd文件的方法、装置、设备及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102541738A (zh) * | 2011-12-28 | 2012-07-04 | 华中科技大学 | 加速多核cpu抗软错误测试的方法 |
CN102929778A (zh) * | 2012-10-30 | 2013-02-13 | 无锡江南计算技术研究所 | 众核阵列上并行测试的控制方法及硅后验证系统 |
US20170153958A1 (en) * | 2015-11-30 | 2017-06-01 | Oracle International Corporation | Detecting degraded core performance in multicore processors |
CN114417563A (zh) * | 2021-12-22 | 2022-04-29 | 杭州爱芯元智科技有限公司 | 多核机制的仿真方法、装置和电子设备 |
CN115202947A (zh) * | 2022-08-02 | 2022-10-18 | 无锡众星微系统技术有限公司 | 基于调试接口的芯片测试向量生成方法 |
-
2022
- 2022-11-24 CN CN202211483326.5A patent/CN115562930A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102541738A (zh) * | 2011-12-28 | 2012-07-04 | 华中科技大学 | 加速多核cpu抗软错误测试的方法 |
CN102929778A (zh) * | 2012-10-30 | 2013-02-13 | 无锡江南计算技术研究所 | 众核阵列上并行测试的控制方法及硅后验证系统 |
US20170153958A1 (en) * | 2015-11-30 | 2017-06-01 | Oracle International Corporation | Detecting degraded core performance in multicore processors |
CN114417563A (zh) * | 2021-12-22 | 2022-04-29 | 杭州爱芯元智科技有限公司 | 多核机制的仿真方法、装置和电子设备 |
CN115202947A (zh) * | 2022-08-02 | 2022-10-18 | 无锡众星微系统技术有限公司 | 基于调试接口的芯片测试向量生成方法 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116819290A (zh) * | 2023-08-29 | 2023-09-29 | 北京紫光芯能科技有限公司 | 用于进行芯片测试的系统及方法、装置、设备、存储介质 |
CN116881067A (zh) * | 2023-09-07 | 2023-10-13 | 西安简矽技术有限公司 | 一种生成vcd文件的方法、装置、设备及存储介质 |
CN116881067B (zh) * | 2023-09-07 | 2023-11-21 | 西安简矽技术有限公司 | 一种生成vcd文件的方法、装置、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5828825A (en) | Method and apparatus for pseudo-direct access to embedded memories of a micro-controller integrated circuit via the IEEE test access port | |
US6141790A (en) | Instructions signature and primary input and primary output extraction within an IEEE 1149.1 compliance checker | |
CN115562930A (zh) | 用于测试多核芯片的方法及装置、电子设备、存储介质 | |
US6618775B1 (en) | DSP bus monitoring apparatus and method | |
US6012155A (en) | Method and system for performing automatic extraction and compliance checking of an IEEE 1149.1 standard design within a netlist | |
KR100267096B1 (ko) | 디버그 및 제조 테스트 목적을 위한 적응적 스캔 체인 | |
EP1036338B1 (en) | Boundary scan system with address dependent instructions | |
CN103675641B (zh) | 芯片故障定位方法、装置及系统 | |
Cheng et al. | Signature based diagnosis for logic BIST | |
US6721923B2 (en) | System and method for generating integrated circuit boundary register description data | |
Bernardi et al. | On-line functionally untestable fault identification in embedded processor cores | |
US7676698B2 (en) | Apparatus and method for coupling a plurality of test access ports to external test and debug facility | |
US6707313B1 (en) | Systems and methods for testing integrated circuits | |
TWI608342B (zh) | 電子系統、系統診斷電路與其操作方法 | |
US7174492B1 (en) | AC coupled line testing using boundary scan test methodology | |
CN100370430C (zh) | 一种边界扫描链自测方法 | |
CN113702798A (zh) | 一种边界扫描测试方法、装置、设备、芯片及存储介质 | |
Park et al. | A new IEEE 1149.1 boundary scan design for the detection of delay defects | |
Tulloss et al. | BIST and boundary-scan for board level test: Test program pseudocode | |
CN1463031A (zh) | 一种边界扫描芯片容错测试方法及系统 | |
CN108664387B (zh) | 基于ejtag的mips处理器调试方法及系统 | |
Crouch | Debugging and diagnosing scan chains | |
Alves et al. | From design-for-test to design-for-debug-and-test: analysis of requirements and limitations for 1149.1 | |
Gurumurthy et al. | Comparing the effectiveness of cache-resident tests against cycleaccurate deterministic functional patterns | |
US11106848B2 (en) | Diagnostic resolution enhancement with reversible scan chains |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20230103 |
|
RJ01 | Rejection of invention patent application after publication |