您的当前位置:首页正文

一种芯片信号连接关系的自动化测试方法[发明专利]

2022-04-23 来源:九壹网
(19)中华人民共和国国家知识产权局

(12)发明专利申请

(10)申请公布号 CN 112306767 A(43)申请公布日 2021.02.02

(21)申请号 202010022680.2(22)申请日 2020.01.09

(71)申请人 成都华微电子科技有限公司

地址 610041 四川省成都市高新区益州大

道中段1800号天府软件园G1楼22层(72)发明人 蒋心祝 岑远军 李国 王鑫 

余若愚 赵承志 (74)专利代理机构 北京众元弘策知识产权代理

事务所(普通合伙) 11462

代理人 宋磊(51)Int.Cl.

G06F 11/22(2006.01)

权利要求书1页 说明书6页 附图2页

CN 112306767 A(54)发明名称

一种芯片信号连接关系的自动化测试方法(57)摘要

本发明公开了一种芯片信号连接关系的自动化测试方法,属于芯片验证领域。本发明的的自动化测试方法包括自动搭建通用验证环境、脚本处理信号连接关系表单、自动更新相关验证环境代码、特定方式对芯片输入信号打入激励、脚本自动比对芯片信号连接正确性。通过表单来记录迭代信号连接的关系,清晰明了,可读性强,更容易定位问题,方便后期维护,减少设计人员与验证人员的沟通成本;脚本自动化过程极大减少验证人员在更新验证环境时的时间与人力成本,并提高代码的准确性;脚本自动化测试芯片信号连接的正确性,极大缩短验证周期,避免肉眼进行验证比对带来的风险,提高验证的可靠性、充分性、准确性。

CN 112306767 A

权 利 要 求 书

1/1页

1.一种芯片信号连接关系的自动化测试方法,其特征在于所述方法包括:步骤一、自动搭建通用验证环境;步骤二、脚本处理信号连接关系表单;步骤三、自动更新相关验证环境代码;步骤四、输入激励;步骤五、脚本自动比对芯片信号连接正确性。2.根据权利要求1所述的方法,其特征在于,所述步骤二具体包括以下步骤:脚本自动读取表单信息并对读取的信息进行预处理。3.根据权利要求1所述的方法,其特征在于,所述步骤三具体包括以下步骤:将表单信息预处理后的数据存入数据库中;

脚本将数据库中的数据自动生成验证环境中涉及的代码。4.根据权利要求1所述的方法,其特征在于:步骤四中,所述输入激励的方式是:在每个时钟周期依次向每一根输入信号输入激励,相对应的、与该根信号连接的信号会在相应时钟周期产生响应,形成成对的信号连接关系。

5.根据权利要求4所述的方法,其特征在于,所述步骤五具体包括以下步骤:脚本工具自动处理仿真结束后的记录文件,提取成对的信号连接信息,并提取表单中的信号连接关系进行自动对比,比较信号连接是否存在遗漏或错误。

6.根据权利要求5所述的方法,其特征在于:

仿真结束后形成的记录文件记录某一时刻成对的输入信号与输出信号,以展现信号之间的连接关系,包括以下信息:仿真时间、区分连接关系中的输入输出信号、对应信号例化名称、信号在当前仿真时间的置起情况。

7.根据权利要求5所述的方法,其特征在于:脚本处理记录文件,提取有效信息,所述有效信息包括同一仿真时间的芯片信号;根据有效信息判断得出信号连接关系,再将该信号连接关系与表单中的原始连接关系自动进行对比。

8.根据权利要求7所述的方法,其特征在于:所述自动对比的过程是:首先排查信号遗漏错误,再循环检查,直到所有设计仿真产生的信号连接关系符合原始表单连接要求,才判定通过测试。

9.根据权利要求2所述的方法,其特征在于:所述预处理包括:将名称处理为符合设计代码习惯的形式、和/或去除特殊符号、和/或统一大小写、和/或根据需求添加前缀后缀。

10.根据权利要求1-9之一所述的方法,其特征在于:验证环境包括输入代理、输出代理与记分板;输入代理中有序列发生器、驱动器与检测器,用于产生激励与监测输出信号;输出代理中有用于监测输出信号的检测器;

环境中的记分板用于将输入输出的信息以方便脚本处理的格式打印到记录文件中。

2

CN 112306767 A

说 明 书

一种芯片信号连接关系的自动化测试方法

1/6页

技术领域

[0001]本发明属于芯片验证领域,涉及MCU(微程序控制器)、数字 ASCI(专用集成电路)和SoC(片上系统)领域,具体涉及一种芯片信号连接关系的自动化测试方法。背景技术

[0002]对于芯片而言,上市时间是决定其是否能够成功的最重要因素之一。想要赢得市场,按时提供质量过关的芯片只是基本条件,在指定时间范围内可以发布质量上乘的产品,才有可能赢得市场。随着集成电路工艺与设计能力的不断发展,芯片变得越来越复杂,为了实现日益复杂并且尺寸不断增加的优质芯片,需要大量的设计和验证工作时间,验证工作在芯片的开发过程中几乎占据了整个工作量的70%甚至更多,所以验证工作的质量直接影响着芯片是否能够占领市场。如何提高芯片验证效率、缩短验证时间、提高验证质量,都是芯片研发中最为关键的环节。[0003]传统的验证过程中,验证充分性很大程度上由验证人员的经验保证,随着芯片规模越来越大,很多验证工作即使是拥有丰富经验的验证工程师,也很难轻松应对,芯片的信号连接关系验证便是这样的工作。就验证而言,虽然信号连接关系的验证看似功能性上不难,但是非常繁琐,采用传统验证方法,由于现在芯片信号数量庞大,非常耗费时间,也极易出错,同时芯片信号连接关系正确性直接影响芯片的成功与否,也是必不可少至关重要的验证工作,如何在芯片信号连接验证工作上提高效率、快速准确地进行验证工作成为业界非常关注的话题。传统验证方法更关注功能点的验证,对于功能点的验证占据验证工作量的70%以上,对于芯片信号连接正确性这样的并不包含很多功能点却异常繁琐的验证一直缺少关注与研究。

[0004]以前芯片规模没有那么大的时候,对应的芯片连接信号数量与复杂度也没有那么大,使用传统的验证方法也可以完成验证工作。随着芯片规模日益增大,很多芯片的信号达到成千上万根,这时采用传统的验证方式来验证每根信号的连接正确性难度非常巨大。[0005]在过去的十年中,验证方法学经历了一轮主要的变化, SystemVerilog成为主要的验证语言,UVM也经过各种动态验证方法学的融合成为主流验证方法学。目前大部分验证工程师都基于 SystemVerilog与UVM开展验证工作。采用SystemVerilog与UVM进行芯片信号连接正确性的验证工作思路:搭建验证环境,为信号打入激励并监测所有信号的反应,在记分板中进行连接性的比对。这一流程中,打入激励、监测信号、记分板比对,都是验证人员在手动键入处理所有信号,但是芯片信号随着设计代码开发,随时都会有新的变动,每次变动若是设计人员没有详细记录,依靠验证人员去比对寻找,再手动进行修改,是一个非常繁琐又极易出错的过程,每一个信号的改变至少涉及序列、驱动器、检测器、记分板等处的修改,出现遗漏和错改几乎是必然的事情,对于最后仿真结束进行连接结果对比时的难度也巨大,因为仿真记录文件达到几十万上百万行,调试与定位的人力时间成本巨大,所以芯片信号连接正确性的验证工作经常被认为是“事倍功半”的工作。

3

CN 112306767 A

说 明 书

2/6页

发明内容

[0006]针对现有技术中存在的以上缺陷,本发明的目的是解决手动修改芯片信号的过程与验证信号连接正确性时极易出错与时间、人力成本大的问题,提供一种芯片信号连接关系的自动化测试方法。

[0007]为实现上述发明目的,本发明采用下述技术方案。[0008]一种芯片信号连接关系的自动化测试方法,包括:[0009]步骤一、自动搭建通用验证环境;[0010]步骤二、脚本处理信号连接关系表单;[0011]步骤三、自动更新相关验证环境代码;[0012]步骤四、输入激励;[0013]步骤五、脚本自动比对芯片信号连接正确性。[0014]优选地,所述步骤二具体包括以下步骤:

[0015]脚本自动读取表单信息并对读取的信息进行预处理。[0016]优选地,所述步骤三具体包括以下步骤:[0017]将表单信息预处理后的数据存入数据库中;

[0018]脚本将数据库中的数据自动生成验证环境中涉及的代码。[0019]优选地,步骤四中,所述输入激励的方式是:在每个时钟周期依次向每一根输入信号输入激励,相对应的、与该根信号连接的信号会在相应时钟周期产生响应,形成成对的信号连接关系。[0020]优选地,所述步骤五具体包括以下步骤:[0021]脚本工具自动处理仿真结束后的记录文件,提取成对的信号连接信息,并提取表单中的信号连接关系进行自动对比,比较信号连接是否存在遗漏或错误。[0022]优选地,仿真结束后形成的记录文件记录某一时刻成对的输入信号与输出信号,以展现信号之间的连接关系,包括以下信息:仿真时间、区分连接关系中的输入输出信号、对应信号例化名称、信号在当前仿真时间的置起情况。[0023]优选地,脚本处理记录文件,提取有效信息,所述有效信息包括同一仿真时间的芯片信号;

[0024]根据有效信息判断得出信号连接关系,再将该信号连接关系与表单中的原始连接关系自动进行对比。[0025]优选地,所述自动对比的过程是:[0026]首先排查信号遗漏错误,再循环检查,直到所有设计仿真产生的信号连接关系符合原始表单连接要求,才判定通过测试。[0027]优选地,所述预处理包括:将名称处理为符合设计代码习惯的形式、和/或去除特殊符号、和/或统一大小写、和/或根据需求添加前缀后缀。[0028]优选地,验证环境包括输入代理、输出代理与记分板;[0029]输入代理中有序列发生器、驱动器与检测器,用于产生激励与监测输出信号;[0030]输出代理中有用于监测输出信号的检测器;

[0031]环境中的记分板用于将输入输出的信息以方便脚本处理的格式打印到记录文件中。

4

CN 112306767 A[0032]

说 明 书

3/6页

相比于现有技术,本发明取得显著的技术效果:

[0033]本发明实现自动化生成通用验证环境,针对芯片信号连接正确性这一特定验证场景进行自动化测试。根据提供芯片信号连接关系的表单提取芯片信号并自动生成验证环境中所需要的关于芯片连接信号部分的代码,克服了手动处理这些部分的代码费事且极易出错的问题;以特定的方式对芯片的输入信号产生激励,对于仿真结束后的记录文件使用脚本进行处理,自动进行信号连接正确性的检查,免去人工检验流程,可靠性更高。具体可以总结为三方面的有益效果:

[0034]一是通过表单来记录迭代信号连接的关系,清晰明了,可读性强,更容易定位问题,方便后期维护,减少设计人员与验证人员的沟通成本。二是脚本自动化过程极大减少验证人员在更新验证环境时的时间与人力成本,并提高代码的准确性。三是脚本自动化测试芯片信号连接的正确性,极大缩短验证周期,避免肉眼进行验证比对带来的风险,提高验证的可靠性、充分性、准确性。附图说明

[0035]为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例中所需要使用的附图作简单地介绍,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

[0036]图1是本发明的芯片信号连接自动化测试流程图;[0037]图2是本发明的验证环境图;[0038]图3是仿真结果记录;

[0039]图4是信号连接检测结果记录。

具体实施方式

[0040]下面将详细描述本发明的各个方面的特征和示例性实施例,为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细描述。应理解,此处所描述的具体实施例仅被配置为解释本发明,并不被配置为限定本发明。对于本领域技术人员来说,本发明可以在不需要这些具体细节中的一些细节的情况下实施。下面对实施例的描述仅仅是为了通过示出本发明的示例来提供对本发明更好的理解。[0041]本发明使用一种技术方案,可以使用脚本工具读取更新后的芯片信号连接表单,自动生成对应的验证环境代码,并利用脚本自动比对信号连接关系的正确性,克服了背景技术中提到的缺点,极大地节省了人力成本,缩短了验证周期,并提高了验证的准确性与可靠性。

[0042]该技术方案遵循以下步骤:[0043]步骤1、自动搭建通用验证环境;[0044]步骤2、脚本处理信号连接关系表单;[0045]步骤3、自动更新相关验证环境代码;[0046]步骤4、特定方式对芯片输入信号打入激励;[0047]步骤5、脚本自动比对芯片信号连接正确性。[0048]步骤1中,使用脚本生成通用验证环境,在此基础上形成适用于当前待测设计的验

5

CN 112306767 A

说 明 书

4/6页

证环境;

[0049]步骤2中,对于大规模芯片设计,在进行芯片连接设计前,需先使用表单记录信号的连接关系,便于清晰信号连接关系与后续迭代。脚本可以自动读取表单中的信息。[0050]步骤3中,脚本读取表单数据后,处理表单数据并存放至数据库中,根据数据库中的预处理数据自动生成验证环境相关代码,这样每次表单修改后都可以快速地将验证环境进行相应升级,减少手动修改验证环境的风险。[0051]步骤4中,针对芯片信号连接关系验证,本技术方案会采用特定的方式给待测设计打入激励,即每一个时钟周期给一根输入信号打入激励,相对应的与这根信号连接的信号会在相应时钟周期响应形成成对的信号连接关系。[0052]步骤5中,脚本工具会自动处理仿真结束后的记录文件,提取成对的信号连接信息,并提取表单中的信号连接关系进行自动对比,比较芯片设计文件的信号连接与设计要求相比是否有遗漏与出错。[0053]实施例一

[0054]图1是本发明实施例一的芯片信号连接自动化测试方法流程图,实现从表单读取信号信息更新验证环境代码,到自动比对信号连接正确性,过程实现自动化。如图1所示,此方法包括5个步骤:自动生成通用验证环境、脚本处理信号连接关系表单、自动更新相关验证环境代码、特定方式输入激励和脚本自动比对芯片信号连接正确性。[0055]步骤1:脚本自动生成通用验证环境,仅包含验证环境基本组件并保证编译正确性。在此基础上添加验证待测设计所需的验证代码。[0056]步骤2:脚本处理信号连接关系表单。设计人员将芯片信号连接信息填入表单中,理清连接关系,并通过迭代表单信息作为信号连接关系修改的记录,脚本自动读取表单信息并对读取数据进行预处理,比如信号名称为字符串格式,需将名称处理为符合设计代码习惯的形式,去除特殊符号,统一大小写,并根据需求添加前缀后缀等,例如下表1是规范格式的信号连接表单样式。

[0057]

表1信号连接表单样式

[0059]如表1样式所示,记录信号连接信息的表单有标准格式,表1仅给出部分样式示例,示例中可以看出有两根信号PE3、PE4,PE3在选用功能一时会与TRACED0连接,选用功能二时会与TIM1_CH1连接, PE4的连接关系同理,需验证最终的设计代码中连接关系是否正确。[0060]步骤3:自动更新相关验证环境代码。芯片信号连接关系会随着设计代码的开发进行修改,尤其大规模的芯片设计,顶层需要连接的信号成千上万,对于验证人员,完成验证环境的搭建后,设计信号的修改会给验证带来很多困难。比如在没有详细的设计修改记录时,验证人员需要自己寻找对比哪些信号修改过,这一过程已经非常耗时费力,然后对对应验证环境部分进行修改,一般包含测试顶层信号连接、序列部分、监测器、驱动器、接口等验证组件需要更新,同样是非常繁琐容易出错的过程。本发明的技术方案自动读取表单信息,

6

[0058]

CN 112306767 A

说 明 书

5/6页

将表单信息预处理后的数据放入数据库中,然后使用脚本将数据库中的数据自动生成验证环境中涉及的代码,实现原有验证环境进行迭代更新,可以极大减少这步骤的时间成本,同时提高可靠性。例如,表单信息中信号PE3对应的功能信号如果增加了traced2这一信号,相应验证环境中顶层例化、驱动器、序列发生器、监测器、比较器等组件都需进行更新增加traced2这一信号的相关代码。[0061]步骤4:特定方式对芯片输入信号打入激励。因为本发明的技术方案是针对芯片信号连接进行验证,主要验证信号之间成对的连接是否正确,相较于设计要求待测设计中的信号是否有遗漏。技术方案中在给如待测设计激励时,并不采用传统的激励方式,而是在每个时钟周期依次给每一根输入信号打入激励。如图2所示,本实施例中的 UVM验证环境主要包含输入代理、输出代理与记分板,输入代理中有序列发生器、驱动器与检测器,用于产生激励与监测输出信号,输出代理中主要有用于监测输出信号的检测器,环境中的记分板用于将输入输出的信息以方便脚本处理的格式打印到记录文件中。[0062]步骤5:脚本自动比对芯片信号连接关系的正确性。仿真结束后,将会产生特定格式的记录文件,如图3所示,记录文件中需包含以下主要信息:仿真时间、区分连接关系中的输入输出信号、对应信号例化名称、信号在当前仿真时间的置起情况。通过记录下某一时刻成对的输入信号与输出信号,无论设计代码逻辑复杂程度如何,信号之间的连接关系都将清晰的展现出来,脚本将会处理记录文件,进一步将有效信息提取出来,脚本将提取同一仿真时间的芯片信号,如图3所示,在16885000ns时,激励输入信号traced0_dout,同一时间,有 umode_pe3_dout、umode_pc1_dout、umode_pg13_dout三根输出信号对应拉起,由此判断traced0_dout与另三根信号均有成对对应关系。由于大多芯片连接关系的设计中,只包含组合逻辑,故输入输出时间相同,若包含时序逻辑,输入仿真时间与输出仿真时间不同,但也有规律,可进行相应的处理。

[0063]再将提取后的信号连接关系与表单中的原始连接关系自动进行对比,首先排查信号遗漏错误,再循环检查,直到所有设计仿真产生的信号连接关系符合原始表单连接要求,才能通过。如表1中输入输出端口信号有PE3,PE3在待测设计中会例化为umode_pe3_dout,与 pe3有连接关系的有traced0这一信号,在设计中会结合方向例化为 traced0_dout。需要比对待测设计中是否遗漏了表格中填入的信号,图4中后半部分就是从图3的记录文件中进一步提取出的成对信号(’ traced0_dout’,’umode_pe3_dout’)前半部分是从表单中提取的成对信息(‘pe3’,‘traced0’),通过核心关键字’pe3’、’traced0’的比较,判断信号没有遗漏,并连接正确。若这一连接关系遗漏,会直接打印连接遗漏错误并退出遍历比较,根据打印信息与退出位置可快速定位出待测设计相较于原始表单中遗漏的信号。这一过程极大地节省了人力成本,因为并且可以保证信号连接关系验证的准确性与可靠性,比对结果如图4所示。

[0064]本实施例中的验证环境的实现可以使用除SystemVerilog与UVM 外其他的语言,如Verilog等。

[0065]脚本工具可由本领域技术人员根据本实施例的描述使用Python、 Perl等语言编写实现。

[0066]还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包

7

CN 112306767 A

说 明 书

6/6页

括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。[0067]以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

8

CN 112306767 A

说 明 书 附 图

1/2页

图1

9

CN 112306767 A

说 明 书 附 图

2/2页

图2

图3

图4

10

因篇幅问题不能全部显示,请点此查看更多更全内容