基于I3C进行测试的集成电路以及测试方法与流程

文档序号:33712225发布日期:2023-04-01 00:22阅读:189来源:国知局
基于I3C进行测试的集成电路以及测试方法与流程
基于i3c进行测试的集成电路以及测试方法
【技术领域】
1.本发明涉及集成电路设计技术领域,尤其涉及一种基于i3c进行测试的集成电路以及测试方法。


背景技术:

2.芯片的制程工艺越来越小,数字芯片的规模越来越大,测试成本进一步增加,甚至超过芯片功能部分本来的成本。如何在芯片设计的过程中考虑测试的问题,成为当前芯片设计很重要的一部分。
3.测试已经成为集成电路设计和制造过程中非常重要的因素,它已经不再单纯作为芯片产品的检验、验证手段,而是与集成电路设计有着密切联系的专门技术,与设计和制造成为了一个有机整体。可测性设计(dft)给整个测试领域开拓了一条切实可行的途径,目前国际上大中型ic(集成电路)设计公司基本上都采用了可测性设计的设计流程,dft已经成为芯片设计的关键环节。
4.扫描路径法是一种针对时序电路芯片的dft方案,其基本原理是时序电路可以模型化为一个组合电路网络和带触发器(flip-flop,简称ff)的时序电路网络的反馈。内建自测试(bist)设计技术通过在芯片的设计中加入一些额外的自测试电路,测试时只需要从外部施加必要的控制信号,通过运行内建的自测试硬件和软件,检查被测电路的缺陷或故障。
5.在现有技术中,控制dft的scan_enable(扫描使能)和mbist_enable(存储器内存内置自测试使能)等信号通常有两个方式:1、设置专用的引脚,直接将扫描使能信号和存储器内存内置自测试使能信号通过这些引脚传送,通过相关引脚直接写寄存器组件;2、采用常见的通信接口写相关寄存器。虽说第1种方式能实现相关功能,但是会增加了额外的引脚。第2种方式虽然不增加引脚,但会有用户误写导致进入dft模式的情况发生。
6.因此,亟需提出一种新的技术方案来解决上述问题。


技术实现要素:

7.本发明的目的之一在于提供一种基于i3c进行测试的集成电路以及基于i3c进行集成电路的测试方法,其不需要增加引脚,还不会发生误触发而进行可测性设计模式的情况。
8.根据本发明的一个方面,本发明提供一种基于i3c进行测试的集成电路,其特征在于,其包括:i3c接口模块,其被配置的基于i3c协议接收主设备发送的多个广播指令数据包,每个广播指令数据包包括开始标识、广播代码、命令代码、数据和结束标识,在接收每个广播指令数据包时,先接收来自所述主设备的开始标识和广播代码,之后向所述主设备回复响应信号,随后接收来自所述主设备的命令代码、数据和结束标识;处理模块,其用来解析接收到的广播指令数据包;第一寄存器,其在所述广播指令数据包中的命令代码为第一命令时被设置为有效;第二寄存器,其在所述第一寄存器被设置为有效时,存储所述广播指令数据包中第一命令后的数据;参考寄存器,其用于存储预置的参考数据;第三寄存器,其
在所述广播指令数据包中的命令代码为第二命令时被设置为有效;第四寄存器,其在所述第三寄存器被设置为有效、所述广播指令数据包中第二命令后的数据满足第一预定条件且第二寄存器内存储的数据与所述参考寄存器中存储的参考数据相同或相匹配时被设置为有效,此时进入扫描模式,在所述第三寄存器被设置为有效且所述广播指令数据包中第二命令后的数据满足第二预定条件且第二寄存器内存储的数据与所述参考寄存器中存储的参考数据相同或匹配时被设置为无效,此时退出扫描模式。
9.根据本发明的另一个方面,本发明提供一种基于i3c进行集成电路的测试方法,其包括:主设备基于i3c协议向作为从设备的集成电路发送一个或多个广播指令数据包,每个广播指令数据包包括开始标识、广播代码、命令代码、数据和结束标识,其中在发送了所述广播指令数据包的开始标识和广播代码之后,所述主设备接收所述从设备的响应信号,随后再发送所述广播指令数据包的命令代码、数据和结束标识;所述从设备解析收到的广播指令数据包,在接收到所述广播指令数据包的开始标识和广播代码之后,向所述主设备回复响应信号,之后继续接收所述广播指令数据包的命令代码、数据和结束标识,并根据所述广播指令数据包进行如下操作:所述从设备在所述广播指令数据包中的命令代码为第一命令时,所述从设备设置第一寄存器为有效,在所述第一寄存器被设置为有效时,所述从设备使得第二寄存器存储所述广播指令数据包中第一命令后的数据;所述从设备在所述广播指令数据包中的命令代码为第二命令时,设置第三寄存器为有效;所述从设备在所述第三寄存器被设置为有效、所述广播指令数据包中第二命令后的数据满足第一预定条件且第二寄存器内存储的数据与所述参考寄存器中存储的参考数据相同或相匹配时,设置第四寄存器为有效,此时进入扫描模式;所述从设备在所述第三寄存器被设置为有效且所述广播指令数据包中第二命令后的数据满足第二预定条件且第二寄存器内存储的数据与所述参考寄存器中存储的参考数据相同或匹配时,设置第四寄存器为无效,此时退出扫描模式。
10.与现有技术相比,本发明通过i3c接口模块接收的广播指令数据包,根据所述广播指令数据包设置扫描使能信号和存储器内存内置自测试使能信号,不需要增加引脚,还不会发生误触发而进行可测性设计模式的情况。
【附图说明】
11.为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其它的附图。其中:
12.图1是本发明中基于i3c进行测试的集成电路在一个实施例中的结构框图;
13.图2为本发明中的广播指令数据包的格式示意图;
14.图3为接收所述广播指令数据包以存储密码的时序示意图;
15.图4为接收所述广播指令数据包以进入扫描模式的时序示意图;
16.图5为接收所述广播指令数据包以退出扫描模式的时序示意图;
17.图6为接收所述广播指令数据包以进入存储器内存内置自测试模式的时序示意图;
18.图7为接收所述广播指令数据包以退出存储器内存内置自测试模式的时序示意
图。
【具体实施方式】
19.为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
20.此处所称的“一个实施例”或“实施例”是指可包含于本发明至少一个实现方式中的特定特征、结构或特性。在本说明书中不同地方出现的“在一个实施例中”并非均指同一个实施例,也不是单独的或选择性的与其他实施例互相排斥的实施例。除非特别说明,本文中的连接、相连、相接的表示电性连接的词均表示直接或间接电性相连。
21.在本发明的描述中,需要理解的是,术语“上”、“下”、“左”、“右”、“顶”、“底”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或者元件必须具有特定的方位、以特定的方位构造和操作,因此,不能理解为对本发明的限制。在本发明的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。本文中的“和/或”包括和以及或,比如a和/或b包括a,或者b,或者a和b三种情况。
22.在本发明中,除非另有明确的规定和限定,术语“相连”、“连接”、“耦接”等术语应做广义理解;例如,可以是直接连接,也可以通过中间媒介间接相连。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。
23.图1是本发明中基于i3c进行测试的集成电路200在一个实施例中的结构框图。所述集成电路200具有dft模式,基于i3c协议使得所述集成电路200进入或退出dft模式。i3c(improved inter integrated circuit)是一种通信协议,其兼容i2c协议。
24.如图1所示的,所述集成电路200包括i3c接口模块210、处理模块220和寄存器组220。所述寄存器组220包括有多个寄存器。所述集成电路200作为从设备与外部的主设备100依照i3c协议进行通讯。
25.所述i3c接口模块210被配置的基于i3c协议接收主设备100发送的多个广播指令数据包,即i3c协议中的广播ccc。如图2所示的,每个广播指令数据包包括开始标识s、广播代码、命令代码(command code)、数据(data)和结束标识p。所述i3c接口模块210在接收每个广播指令数据包时,先接收来自所述主设备100的开始标识s和广播代码,之后向所述主设备100回复响应信号ack,所述主设备100在收到所述相应信号ack后,会继续发送所述广播指令数据包的命令代码、数据和结束标识p,相应的,所述i3c接口模块210接收来自所述主设备100的命令代码、数据和结束标识。所述处理模块220用来解析接收到的广播指令数据包。
26.所述i3c接口模块210通过sda(serialdata)引脚和scl引脚(时钟引脚)接收所述主设备发送的广播指令数据包。sda线和scl线为i2c协议的两根信号线。所述广播指令数据包还包括位于命令代码后的第一校验位t和位于所述数据后的第二校验位t。在一个实施例中,所述开始标识为scl引脚为高,sda引脚为低,所述结束标识为scl引脚为高,sda引脚为高。
27.在一个实施例中,所述寄存器组220包括第一寄存器至第六寄存器、参考寄存器。
28.在所述广播指令数据包中的命令代码为第一命令(比如command_1)时,第一寄存
器被设置为有效,此时信号passwd_sel为1。在所述第一寄存器被设置为有效,即信号passwd_sel为1时,第二寄存器passwd_reg存储所述广播指令数据包中第一命令后的数据,所述数据即密码。如图3所示的,其示出了所述集成电路200接收所述广播指令数据包,并将密码存储至所述第二存储器中的时序示意图。所述参考寄存器用于存储预置的参考数据,所述参考数据与密码相同或相匹配,用于核验所述密码是否正确。
29.在所述广播指令数据包中的命令代码为第二命令(比如command_2)时,第三寄存器被设置为有效,此时信号scan_enable_sel为1。在所述第三寄存器被设置为有效、所述广播指令数据包中第二命令后的数据满足第一预定条件且第二寄存器内存储的数据与所述参考寄存器中存储的参考数据相同或相匹配时,第四寄存器被设置为有效,此时信号scan_enable为1,进入扫描模式scan_mode。图4为接收所述广播指令数据包以进入扫描模式的时序示意图。具体的,第一预定条件为是否为非0值,如果所述广播指令数据包中第二命令后的数据是非0值,则是满足第一预定条件,否则,不满足第一预定条件。
30.在所述广播指令数据包中的命令代码为第二命令(比如command_2)时,第三寄存器被设置为有效,此时信号scan_enable_sel为1。在所述第三寄存器被设置为有效且所述广播指令数据包中第二命令后的数据满足第二预定条件且第二寄存器内存储的数据与所述参考寄存器中存储的参考数据相同或匹配时,第四寄存器被设置为无效,此时信号scan_enable为0,此时退出扫描模式scan_mode。图5为接收所述广播指令数据包以退出扫描模式的时序示意图。具体的,第二预定条件为是否为0值,如果所述广播指令数据包中第二命令后的数据是0值,则是满足第二预定条件,否则,不满足第二预定条件。
31.在一个实施例中,所述集成电路200还包括比较模块。所述比较模块用于比较第二寄存器内存储的数据与所述参考寄存器中存储的参考数据是否相同或相匹配,以核验所述密码是否正确。
32.在所述广播指令数据包中的命令代码为第三命令(比如command_3)时,第五寄存器被设置为有效,此时信号mbist_enable_sel为1。在所述第五寄存器被设置为有效、所述广播指令数据包中第三命令后的数据满足第三预定条件且第二寄存器内存储的数据与参考寄存器中存储的参考数据相同或相匹配时,第六寄存器被设置为有效,此时信号mbist_enable为1,进入存储器内建自测试模式mbist_mode。图5为接收所述广播指令数据包以进入存储器内建自测试模式的时序示意图。具体的,第三预定条件为是否为非0值,如果所述广播指令数据包中第三命令后的数据是非0值,则是满足第三预定条件,否则,不满足第三预定条件。
33.在所述广播指令数据包中的命令代码为第三命令(比如command_3)时,第五寄存器被设置为有效,此时信号mbist_enable_sel为1。在所述第五寄存器被设置为有效且所述广播指令数据包中第三命令后的数据满足第四预定条件且第二寄存器内存储的数据与参考寄存器中存储的参考数据相同或相匹配时,第六寄存器被设置为无效,此时信号mbist_enable为0,退出存储器内建自测试模式mbist_mode。图7为接收所述广播指令数据包以退出存储器内建自测试模式的时序示意图。具体的,第四预定条件为是否为0值,如果所述广播指令数据包中第三命令后的数据是0值,则是满足第四预定条件,否则,不满足第四预定条件。
34.在一个实施例中,在扫描模式scan_mode时,所述主设备100将扫描测试向量通过
i3c接口模块210发送给所述集成电路进行扫描测试。在进入存储器内建自测试模mbist_mode式时,所述主设备100将存储器内建自测试向量通过i3c接口模块发送给所述集成电路进行存储器内建自测试。
35.所述集成电路为传感器(sensor)集成电路。
36.本发明基于i3c协议下的用户自定义的广播指令数据包(广播ccc),并在通信后在设计内部进行相关处理,从而实现对scan_enable和mbist_enable等信号的控制。这样,不增加额外的pin脚数量,并且兼顾了传输速率、安全性以及可操作性。此外,如有相关类似的信号需求,也可参照本发明的思路产生。
37.相对于传统的使用通信接口写寄存器,用户不会由于误操作的原因进入到dft模式,本发明可以提高安全性。只能在i3c模式的广播ccc下才能idf模式,广播ccc不需要分配动态地址,只需要设备支持i3c即能实现本发明。本发明可全程在12.5mhz的频率下进行,速度高。
38.根据本发明的另一个方面,本发明还提供一种基于i3c进行集成电路的测试方法。所述测试方法包括:
39.主设备基于i3c协议向作为从设备的集成电路发送一个或多个广播指令数据包,每个广播指令数据包包括开始标识、广播代码、命令代码、数据和结束标识,其中在发送了所述广播指令数据包的开始标识和广播代码之后,所述主设备接收所述从设备的响应信号,随后再发送所述广播指令数据包的命令代码、数据和结束标识;
40.所述从设备解析收到的广播指令数据包,在接收到所述广播指令数据包的开始标识和广播代码之后,向所述主设备回复响应信号,之后继续接收所述广播指令数据包的命令代码、数据和结束标识,并根据所述广播指令数据包进行如下操作:
41.所述从设备在所述广播指令数据包中的命令代码为第一命令时,所述从设备设置第一寄存器为有效,在所述第一寄存器被设置为有效时,所述从设备使得第二寄存器存储所述广播指令数据包中第一命令后的数据;
42.所述从设备在所述广播指令数据包中的命令代码为第二命令时,设置第三寄存器为有效;
43.所述从设备在所述第三寄存器被设置为有效、所述广播指令数据包中第二命令后的数据满足第一预定条件且第二寄存器内存储的数据与所述参考寄存器中存储的参考数据相同或相匹配时,设置第四寄存器为有效,此时进入扫描模式;
44.所述从设备在所述第三寄存器被设置为有效且所述广播指令数据包中第二命令后的数据满足第二预定条件且第二寄存器内存储的数据与所述参考寄存器中存储的参考数据相同或匹配时,设置第四寄存器为无效,此时退出扫描模式。
45.在一个而实施例中,所述从设备在所述广播指令数据包中的命令代码为第三命令时,设置第五寄存器为有效;
46.所述从设备在所述第五寄存器被设置为有效、所述广播指令数据包中第三命令后的数据满足第三预定条件且第二寄存器内存储的数据与参考寄存器中存储的参考数据相同或相匹配时,设置第六寄存器为有效,此时进入存储器内建自测试模式,
47.所述从设备在所述第五寄存器被设置为有效且所述广播指令数据包中第三命令后的数据满足第四预定条件且第二寄存器内存储的数据与参考寄存器中存储的参考数据
相同或相匹配时,设置第五寄存器为无效,此时退出存储器内建自测试模式。
48.所述测试方法的其他内容请参考上文中关于基于i3c进行测试的集成电路200的相关描述,此处不再赘述。
49.在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。此外,本领域人员可以将本说明书中描述的不同实施例或示例进行接合和组合。
50.尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改和变型。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1