CN117574822B - 用于芯片的面向优化设计测试方法、计算机设备及介质 - Google Patents
用于芯片的面向优化设计测试方法、计算机设备及介质 Download PDFInfo
- Publication number
- CN117574822B CN117574822B CN202410048551.9A CN202410048551A CN117574822B CN 117574822 B CN117574822 B CN 117574822B CN 202410048551 A CN202410048551 A CN 202410048551A CN 117574822 B CN117574822 B CN 117574822B
- Authority
- CN
- China
- Prior art keywords
- oriented
- design
- chip
- test
- register
- 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
Links
- 238000012360 testing method Methods 0.000 title claims abstract description 163
- 238000005457 optimization Methods 0.000 title claims abstract description 58
- 238000013461 design Methods 0.000 claims description 163
- 230000006870 function Effects 0.000 claims description 50
- 238000000034 method Methods 0.000 claims description 32
- 238000004590 computer program Methods 0.000 claims description 14
- 238000003860 storage Methods 0.000 claims description 11
- 238000012937 correction Methods 0.000 claims description 6
- 230000005540 biological transmission Effects 0.000 claims description 5
- 238000004519 manufacturing process Methods 0.000 claims description 5
- 238000010998 test method Methods 0.000 claims description 5
- 238000011161 development Methods 0.000 abstract description 18
- 238000012795 verification Methods 0.000 abstract description 14
- 238000012545 processing Methods 0.000 description 13
- 238000010586 diagram Methods 0.000 description 12
- 238000004891 communication Methods 0.000 description 5
- 238000012986 modification Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 238000013528 artificial neural network Methods 0.000 description 2
- 230000001427 coherent effect Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 238000004904 shortening Methods 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000000802 evaporation-induced self-assembly Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/32—Circuit design at the digital level
- G06F30/333—Design for testability [DFT], e.g. scan chain or built-in self-test [BIST]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
Abstract
本申请涉及计算机技术领域并提供一种用于芯片的面向优化设计测试方法、计算机设备及介质。该面向优化设计测试方法包括:确定第一芯片的第一面向优化设计测试需求;基于计数器寄存器模型基类和所述第一面向优化设计测试需求来例化第一计数器寄存器模型,然后利用所述第一计数器寄存器模型执行所述第一芯片的面向优化设计测试。如此,提升了验证效率以及缩短了开发时间。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及一种用于芯片的面向优化设计测试方法、计算机设备及介质。
背景技术
为了提升芯片产品的竞争力,在对芯片产品功能性属性进行设计开发同时也通过面向优化设计来加强芯片产品非功能性属性。例如,为了增强芯片产品的生命周期及其中环节的竞争力,在如成本、可靠性、性能、可服务型、能效等方面进行设计开发。这种面向产品的非功能性属性的开发设计一般统称为面向优化设计。芯片自身设计,例如规划芯片的系统布局或者设计芯片的电路逻辑图,一般与芯片的面向优化设计是并行进行。但是,在芯片设计开发过程中,需要频繁地进行代码迭代和执行大量的验证,也因此需要适配地进行大量的芯片的面向优化设计测试。现有技术中,芯片的面向优化设计测试是通过测试人员来设计开发寄存器模型并且单独开发测试用例,这样导致验证效率低下且占用验证人员大量时间。
为此,本申请提供了一种用于芯片的面向优化设计测试方法、计算机设备及介质,用于应对现有技术中的技术难题。
发明内容
第一方面,本申请提供了一种用于芯片的面向优化设计测试方法。所述面向优化设计测试方法包括:确定第一芯片的第一面向优化设计测试需求,其中,所述第一面向优化设计测试需求包括一个或者多个面向优化设计子项目,所述一个或者多个面向优化设计子项目从多个面向优化设计子项目中选取;基于计数器寄存器模型基类和所述第一面向优化设计测试需求来例化第一计数器寄存器模型,然后利用所述第一计数器寄存器模型执行所述第一芯片的面向优化设计测试,其中,所述第一计数器寄存器模型由第一部分和第二部分组成,所述第一部分用于实现所述第一芯片的面向优化设计测试的边界测试,所述第二部分用于所述一个或者多个面向优化设计子项目的测试,所述计数器寄存器模型基类包括与所述多个面向优化设计子项目一一对应的多个寄存器抽象化层次模型类,基于所述计数器寄存器模型基类和所述第一面向优化设计测试需求来例化所述第一计数器寄存器模型,包括:声明所述计数器寄存器模型基类并且连接所述计数器寄存器模型基类所包括的所述多个寄存器抽象化层次模型类中与所述一个或者多个面向优化设计子项目对应的寄存器抽象化层次模型类以便生成所述第二部分。
通过本申请的第一方面,利用解耦化的结构来设计所述第一计数器寄存器模型,通过所述第一计数器寄存器模型的第一部分实现所述第一芯片的面向优化设计测试的边界测试,以及通过所述第一计数器寄存器模型的第二部分实现所述一个或者多个面向优化设计子项目的测试,并且利用了多个寄存器抽象化层次模型类来覆盖对应的多个面向优化设计子项目,有效地简化了例化第一计数器寄存器模型的过程,并且可以灵活地适配第一芯片的当前设计和当前面向优化设计测试需求,提升了验证效率以及缩短了开发时间。
在本申请的第一方面的一种可能的实现方式中,基于所述计数器寄存器模型基类和所述第一面向优化设计测试需求来例化所述第一计数器寄存器模型,还包括:声明所述计数器寄存器模型基类并且设定所述第一计数器寄存器模型的域、寄存器地址、访问属性、总线配置、存储器配置以便生成所述第一部分。
在本申请的第一方面的一种可能的实现方式中,所述第一芯片的面向优化设计测试的边界测试与所述第一计数器寄存器模型的所述第一部分的一个或者多个函数相关联,所述一个或者多个函数包括以下一项或者多项:添加函数、清零函数、复位函数、读清函数、动态测试函数、仿真结束检查函数、设置较大值函数。
在本申请的第一方面的一种可能的实现方式中,所述第一部分的所述一个或者多个函数被调用从而实现所述第一芯片的面向优化设计测试的边界测试。
在本申请的第一方面的一种可能的实现方式中,所述多个寄存器抽象化层次模型类中的每一个寄存器抽象化层次模型类的中断使能信号、传输数据长度、时钟沿设置、寄存器宽度、虚拟功能均可被配置从而适配与该寄存器抽象化层次模型类对应的面向优化设计子项目。
在本申请的第一方面的一种可能的实现方式中,通过更新所述多个寄存器抽象化层次模型类或者更新所述多个寄存器抽象化层次模型类中与所述一个或者多个面向优化设计子项目对应的寄存器抽象化层次模型类之间的连接关系,从而更新所述第二部分。
在本申请的第一方面的一种可能的实现方式中,生成所述第一部分与生成所述第二部分是解耦的。
在本申请的第一方面的一种可能的实现方式中,确定所述第一芯片的所述第一面向优化设计测试需求,包括:获取与所述第一芯片相关联的第一寄存器表单,解析所述第一寄存器表单从而确定所述第一芯片的面向优化设计测试的边界测试以及所述一个或者多个面向优化设计子项目。
在本申请的第一方面的一种可能的实现方式中,所述第一芯片的面向优化设计测试的边界测试是基于所述第一芯片的应用场景预先确定,所述一个或者多个面向优化设计子项目是随机化生成。
在本申请的第一方面的一种可能的实现方式中,所述一个或者多个面向优化设计子项目包括以下一项或者多项:面向硬件纠错设计、面向产品测试设计、面向生产设计、面向采购设计、面向诊断设计、面向服务设计、面向可靠性设计、面向成本设计。
第二方面,本申请实施例还提供了一种计算机设备,所述计算机设备包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现根据上述任一方面的任一种实现方式的方法。
第三方面,本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,当所述计算机指令在计算机设备上运行时使得所述计算机设备执行根据上述任一方面的任一种实现方式的方法。
第四方面,本申请实施例还提供了一种计算机程序产品,所述计算机程序产品包括存储在计算机可读存储介质上的指令,当所述指令在计算机设备上运行时使得所述计算机设备执行根据上述任一方面的任一种实现方式的方法。
附图说明
为了更清楚地说明本申请实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种用于芯片的面向优化设计测试方法的流程示意图;
图2为本申请实施例提供的一种用于芯片的面向优化设计测试平台的示意图;
图3为本申请实施例提供的一种计算设备的结构示意图。
具体实施方式
下面将结合附图对本申请实施例作进一步地详细描述。
应当理解的是,在本申请的描述中,“至少一个”指一个或一个以上,“多个”指两个或两个以上。另外,“第一”、“第二”等词汇,除非另有说明,否则仅用于区分描述的目的,而不能理解为指示或暗示相对重要性,也不能理解为指示或暗示顺序。
图1为本申请实施例提供的一种用于芯片的面向优化设计测试方法的流程示意图。如图1所示,面向优化设计测试方法包括以下步骤。
步骤S110:确定第一芯片的第一面向优化设计测试需求,其中,所述第一面向优化设计测试需求包括一个或者多个面向优化设计子项目,所述一个或者多个面向优化设计子项目从多个面向优化设计子项目中选取。
步骤S120:基于计数器寄存器模型基类和所述第一面向优化设计测试需求来例化第一计数器寄存器模型,然后利用所述第一计数器寄存器模型执行所述第一芯片的面向优化设计测试。
其中,所述第一计数器寄存器模型由第一部分和第二部分组成,所述第一部分用于实现所述第一芯片的面向优化设计测试的边界测试,所述第二部分用于所述一个或者多个面向优化设计子项目的测试。所述计数器寄存器模型基类包括与所述多个面向优化设计子项目一一对应的多个寄存器抽象化层次模型类。基于所述计数器寄存器模型基类和所述第一面向优化设计测试需求来例化所述第一计数器寄存器模型,包括:声明所述计数器寄存器模型基类并且连接所述计数器寄存器模型基类所包括的所述多个寄存器抽象化层次模型类中与所述一个或者多个面向优化设计子项目对应的寄存器抽象化层次模型类以便生成所述第二部分。
参阅图1,为了提升芯片产品的竞争力,在对芯片产品功能性属性进行设计开发同时也通过面向优化设计来加强芯片产品非功能性属性。例如,为了增强芯片产品的生命周期及其中环节的竞争力,在如成本、可靠性、性能、可服务型、能效等方面进行设计开发。这种面向产品的非功能性属性的开发设计一般统称为面向优化设计。芯片自身设计,例如规划芯片的系统布局或者设计芯片的电路逻辑图,一般与芯片的面向优化设计是并行进行。但是,在芯片设计开发过程中,需要频繁地进行代码迭代和执行大量的验证,也因此需要适配地进行大量的芯片的面向优化设计测试。图1所示的用于芯片的面向优化设计测试方法,可以适配任意的面向优化设计的具体内容,例如针对成本、可靠性、性能、可服务型、能效等方面提供面向优化设计。图1所示的用于芯片的面向优化设计测试方法,在步骤S110,确定第一芯片的第一面向优化设计测试需求,然后,在步骤S120,基于计数器寄存器模型基类和所述第一面向优化设计测试需求来例化第一计数器寄存器模型,然后利用所述第一计数器寄存器模型执行所述第一芯片的面向优化设计测试。这里,第一芯片可以指代任意需要提供面向优化设计测试的芯片设计成果或者芯片设计产品,例如网络芯片。第一芯片的第一面向优化设计测试需求代表了需要通过面向优化设计来加强第一芯片的某些非功能性属性的有关需求。例如,针对第一芯片的可纠错性方面,可能需要提供额外的电路来帮助工程师纠错硬件软件方面的问题。再例如,针对第一芯片的可测试性方面,可能需要提供额外的电路来帮助工程师发现并定位生产过程中的问题缺陷等。再例如,针对第一芯片的可生产性方面,可能需要提供额外的电路来帮助工程师定位良品率的问题。考虑到第一芯片的设计开发过程中,可能存在芯片前端设计节点与芯片后端设计节点之间的多次协调且修改规划的情况,也可能存在对局部电路或者模块的设计进行多次更改的情况,类似的这些情况会导致第一芯片的系统规划、电路逻辑设计还有寄存器代码等出现多次更新和代码迭代,而这些更新和代码迭代意味着之前进行的面向优化设计可能不再适用,因此,在频繁地对第一芯片相关的芯片设计进行更新和代码迭代的情况下,可能需要适配地进行大量的芯片的面向优化设计测试。面向优化设计测试可能需要针对第一芯片的多种非功能性属性,并且每一次进行面向优化设计测试所需要覆盖的非功能性属性可能不一致,例如上一次的面向优化设计测试需要覆盖第一芯片的第一版本的可纠错性方面而下一次的面向优化设计测试需要覆盖第一芯片的第二版本的可生产性方面。换句话说,执行所述第一芯片的面向优化设计测试所需要应对的第一芯片的第一面向优化设计测试需求可能是变化的,并且可能需要结合第一芯片的当前版本、当前电路逻辑设计还有当前寄存器代码等因素做出调节。图1所示的用于芯片的面向优化设计测试方法,利用解耦化结构的第一计数器寄存器模型,通过可复用的寄存器抽象化层次模型类,提升了验证效率以及缩短了开发时间,下面详细说明。
继续参阅图1,第一计数器寄存器模型的结构是解耦化的,所述第一计数器寄存器模型由第一部分和第二部分组成,所述第一部分用于实现所述第一芯片的面向优化设计测试的边界测试,所述第二部分用于所述一个或者多个面向优化设计子项目的测试。这里,第一计数器寄存器模型的第一部分与第二部分之间是解耦的,如此,可以通过第一计数器寄存器模型的第一部分来执行边界测试,以及通过第一计数器寄存器模型的第二部分来执行相应的面向优化设计子项目的测试。并且,基于所述计数器寄存器模型基类和所述第一面向优化设计测试需求来例化所述第一计数器寄存器模型,包括:声明所述计数器寄存器模型基类并且连接所述计数器寄存器模型基类所包括的所述多个寄存器抽象化层次模型类中与所述一个或者多个面向优化设计子项目对应的寄存器抽象化层次模型类以便生成所述第二部分。如此,可以通过声明同一个计数器寄存器模型基类,以及更新所述计数器寄存器模型基类所包括的寄存器抽象化层次模型类及其连接关系,从而将所述第一面向优化设计测试需求的变化体现在例化得到的所述第一计数器寄存器模型。另外,所述计数器寄存器模型基类包括与所述多个面向优化设计子项目一一对应的多个寄存器抽象化层次模型类,如此,可以利用所述计数器寄存器模型基类事先准备好多个寄存器抽象化层次模型类,再基于所述第一面向优化设计测试需求从中选取所述一个或者多个面向优化设计子项目,进而再连接所述多个寄存器抽象化层次模型类中与所述一个或者多个面向优化设计子项目对应的寄存器抽象化层次模型类以便生成所述第二部分。这样不仅实现了第一计数器寄存器模型的第一部分和第二部分之间的解耦,可以分别独立地生成第一部分和第二部分,而且第二部分是用于执行与所述第一面向优化设计测试需求相应的所述一个或者多个面向优化设计子项目,也就是实现了非面向优化设计测试与面向优化设计测试之间的解耦。因此,一方面,对第一芯片相关的芯片设计进行更新和代码迭代,可以结合第一芯片的当前版本、当前电路逻辑设计还有当前寄存器代码等因素来生成第一计数器寄存器模型的第一部分,进而提供适配了第一芯片的边界测试;另一方面,结合进行面向优化设计测试所需要覆盖的非功能性属性,也就是基于第一面向优化设计测试需求来生成第一计数器寄存器模型的第二部分,进而提供适配了第一芯片的面向优化设计测试;并且,第一计数器寄存器模型是基于计数器寄存器模型基类例化得到,这样可以利用计数器寄存器的特性,通过连接所述多个寄存器抽象化层次模型类中与所述一个或者多个面向优化设计子项目对应的寄存器抽象化层次模型类以便生成所述第二部分,有效地简化了例化第一计数器寄存器模型的过程。
总之,图1所示的用于芯片的面向优化设计测试方法,利用解耦化的结构来设计所述第一计数器寄存器模型,通过所述第一计数器寄存器模型的第一部分实现所述第一芯片的面向优化设计测试的边界测试,以及通过所述第一计数器寄存器模型的第二部分实现所述一个或者多个面向优化设计子项目的测试,并且利用了多个寄存器抽象化层次模型类来覆盖对应的多个面向优化设计子项目,有效地简化了例化第一计数器寄存器模型的过程,并且可以灵活地适配第一芯片的当前设计和当前面向优化设计测试需求,提升了验证效率以及缩短了开发时间。
在一种可能的实施方式中,基于所述计数器寄存器模型基类和所述第一面向优化设计测试需求来例化所述第一计数器寄存器模型,还包括:声明所述计数器寄存器模型基类并且设定所述第一计数器寄存器模型的域、寄存器地址、访问属性、总线配置、存储器配置以便生成所述第一部分。如上所述,一方面,对第一芯片相关的芯片设计进行更新和代码迭代,可以结合第一芯片的当前版本、当前电路逻辑设计还有当前寄存器代码等因素来生成第一计数器寄存器模型的第一部分,进而提供适配了第一芯片的边界测试;另一方面,结合进行面向优化设计测试所需要覆盖的非功能性属性,也就是基于第一面向优化设计测试需求来生成第一计数器寄存器模型的第二部分,进而提供适配了第一芯片的面向优化设计测试。这里,通过声明同一个计数器寄存器模型基类,可以分别地进行第一部分的生成(声明所述计数器寄存器模型基类并且设定所述第一计数器寄存器模型的域、寄存器地址、访问属性、总线配置、存储器配置)和第二部分的生成(声明所述计数器寄存器模型基类并且连接所述计数器寄存器模型基类所包括的所述多个寄存器抽象化层次模型类中与所述一个或者多个面向优化设计子项目对应的寄存器抽象化层次模型类)。这样不仅解耦了第一部分的生成和第二部分的生成,而且可以分别地且独立地更新第一部分和更新第二部分。在第一芯片相关的芯片设计进行更新和代码迭代之后,可以通过声明所述计数器寄存器模型基类以及结合第一芯片的当前版本、当前电路逻辑设计还有当前寄存器代码等因素来设定所述第一计数器寄存器模型的域、寄存器地址、访问属性、总线配置、存储器配置,从而生成所述第一部分以便例化所述第一计数器寄存器模型。如此,可以提供适配了第一芯片的边界测试,也即可以创建寄存器模型并且定义寄存器模型中的有关细节以便在后续测试环节覆盖边界测试场景;并且,可以提供适配了第一芯片的面向优化设计测试,也即可以在创建寄存器模型的例化过程中,通过连接对应的寄存器抽象化层次模型类,从而使得例化得到的第一计数器寄存器模型可以覆盖所需要的面向优化设计测试的有关内容。进一步地,在一些实施例中,所述第一芯片的面向优化设计测试的边界测试与所述第一计数器寄存器模型的所述第一部分的一个或者多个函数相关联,所述一个或者多个函数包括以下一项或者多项:添加函数、清零函数、复位函数、读清函数、动态测试函数、仿真结束检查函数、设置较大值函数。在一些实施例中,所述第一部分的所述一个或者多个函数被调用从而实现所述第一芯片的面向优化设计测试的边界测试。如此,利用解耦化结构的第一计数器寄存器模型,通过可复用的寄存器抽象化层次模型类,提升了验证效率以及缩短了开发时间。
在一种可能的实施方式中,所述多个寄存器抽象化层次模型类中的每一个寄存器抽象化层次模型类的中断使能信号、传输数据长度、时钟沿设置、寄存器宽度、虚拟功能均可被配置从而适配与该寄存器抽象化层次模型类对应的面向优化设计子项目。通过声明所述计数器寄存器模型基类以及连接所述计数器寄存器模型基类中的相应寄存器抽象化层次模型类,例如在通用验证方法学下的寄存器抽象化层次模型类,可以使得例化得到的第一计数器寄存器模型可以覆盖所需要的面向优化设计测试的有关内容。这里,每一个寄存器抽象化层次模型类的中断使能信号、传输数据长度、时钟沿设置、寄存器宽度、虚拟功能均可被配置。如此,通过配置寄存器抽象化层次模型类的中断使能信号、传输数据长度、时钟沿设置、寄存器宽度、虚拟功能,从而避免了在例化过程中对每一个面向优化设计子项目进行声明,而只需要声明同一个计数器寄存器模型基类并且连接对应的寄存器抽象化层次模型类(事先可以配置相应的寄存器抽象化层次模型类以满足对应的面向优化设计子项目的测试需要)从而满足所有面向优化设计子项目的测试需要。应当理解的是,针对第一部分的生成以及更新,在基于所述计数器寄存器模型基类和所述第一面向优化设计测试需求来例化所述第一计数器寄存器模型的过程中,是通过声明所述计数器寄存器模型基类并且设定所述第一计数器寄存器模型的域、寄存器地址、访问属性、总线配置、存储器配置来实现的。针对第二部分的生成以及更新,在基于所述计数器寄存器模型基类和所述第一面向优化设计测试需求来例化所述第一计数器寄存器模型的过程中,是通过声明所述计数器寄存器模型基类并且连接所述计数器寄存器模型基类所包括的所述多个寄存器抽象化层次模型类中与所述一个或者多个面向优化设计子项目对应的寄存器抽象化层次模型类来实现的。并且,进一步地,通过配置所述多个寄存器抽象化层次模型类中的每一个寄存器抽象化层次模型类的中断使能信号、传输数据长度、时钟沿设置、寄存器宽度、虚拟功能,实现了分别满足所述第一面向优化设计测试需求所包括的一个或者多个面向优化设计子项目的各自的测试要求。如此,利用所述第一计数器寄存器模型还有所述多个寄存器抽象化层次模型类,不仅解耦了第一部分的生成和第二部分的生成,而且可以分别地且独立地更新第一部分和更新第二部分。在一些实施例中,通过更新所述多个寄存器抽象化层次模型类或者更新所述多个寄存器抽象化层次模型类中与所述一个或者多个面向优化设计子项目对应的寄存器抽象化层次模型类之间的连接关系,从而更新所述第二部分。如此,不仅解耦了第一部分的生成和第二部分的生成,而且可以分别地且独立地更新第一部分和更新第二部分。
在一种可能的实施方式中,生成所述第一部分与生成所述第二部分是解耦的。如此,不仅解耦了第一部分的生成和第二部分的生成,而且可以分别地且独立地更新第一部分和更新第二部分。
在一种可能的实施方式中,确定所述第一芯片的所述第一面向优化设计测试需求,包括:获取与所述第一芯片相关联的第一寄存器表单,解析所述第一寄存器表单从而确定所述第一芯片的面向优化设计测试的边界测试以及所述一个或者多个面向优化设计子项目。如此,在例如电子设计自动化平台上,当有一个待测设计需要进行面向优化设计测试时,可以事先确定该待测设计的面向优化设计的测试需求,也就是获取第一寄存器表单。通过解析第一寄存器表单,可以确定与该待测设计相关联的寄存器模型的有关内容,包括基础部分的定义如寄存器地址、各种域等,还包括与面向优化设计有关的部分。例如,该待测设计的仿真验证包括了各种可能的面向优化设计组合,也就是所述一个或者多个面向优化设计子项目。其中,与面向优化设计有关的部分,通过解析第一寄存器表单确定后,就可以通过声明计数器寄存器模型以及连接所述多个寄存器抽象化层次模型类中与所述一个或者多个面向优化设计子项目对应的寄存器抽象化层次模型类来实现。如此,在设计上和更新上都可以做到解耦。在一些实施例中,所述第一芯片的面向优化设计测试的边界测试是基于所述第一芯片的应用场景预先确定,所述一个或者多个面向优化设计子项目是随机化生成。如此,避免了单独开发用例,能够随机各种情况,降低代码开发冗余度,缩短验证周期,有利于提升芯片开发效率。
在一种可能的实施方式中,所述一个或者多个面向优化设计子项目包括以下一项或者多项:面向硬件纠错设计、面向产品测试设计、面向生产设计、面向采购设计、面向诊断设计、面向服务设计、面向可靠性设计、面向成本设计。面向优化设计测试可能需要针对第一芯片的多种非功能性属性,并且每一次进行面向优化设计测试所需要覆盖的非功能性属性可能不一致,例如上一次的面向优化设计测试需要覆盖第一芯片的第一版本的可纠错性方面而下一次的面向优化设计测试需要覆盖第一芯片的第二版本的可生产性方面。如此,考虑到执行所述第一芯片的面向优化设计测试所需要应对的第一芯片的第一面向优化设计测试需求可能是变化的,并且可能需要结合第一芯片的当前版本、当前电路逻辑设计还有当前寄存器代码等因素做出调节,实现了灵活地适配第一芯片的当前设计和当前面向优化设计测试需求,提升了验证效率以及缩短了开发时间。
图2为本申请实施例提供的一种用于芯片的面向优化设计测试平台的示意图。如图2所示,用于芯片的面向优化设计测试平台包括第一芯片210。这里,第一芯片210可以指代任意需要提供面向优化设计测试的芯片设计成果或者芯片设计产品,例如网络芯片。围绕第一芯片210,图2所示的面向优化设计测试平台,首先确定第一芯片210的第一面向优化设计测试需求220。其中,所述第一面向优化设计测试需求220包括一个或者多个面向优化设计子项目,所述一个或者多个面向优化设计子项目从多个面向优化设计子项目中选取。接着,图2所示的面向优化设计测试平台,基于计数器寄存器模型基类230和所述第一面向优化设计测试需求220来例化第一计数器寄存器模型240,然后利用所述第一计数器寄存器模型240执行所述第一芯片210的面向优化设计测试。其中,所述第一计数器寄存器模型240由第一部分和第二部分组成,所述第一部分用于实现所述第一芯片210的面向优化设计测试的边界测试,所述第二部分用于所述一个或者多个面向优化设计子项目的测试。所述计数器寄存器模型基类230包括与所述多个面向优化设计子项目一一对应的多个寄存器抽象化层次模型类。基于所述计数器寄存器模型基类230和所述第一面向优化设计测试需求220来例化所述第一计数器寄存器模型240,包括:声明所述计数器寄存器模型基类230并且连接所述计数器寄存器模型基类230所包括的所述多个寄存器抽象化层次模型类中与所述一个或者多个面向优化设计子项目对应的寄存器抽象化层次模型类以便生成所述第二部分。参阅图2,用于芯片的面向优化设计测试平台还可以包括其它任意合适的组件、模块,例如测试模块用于对第一芯片210和第一计数器寄存器模型240进行仿真验证。
图2所示的用于芯片的面向优化设计测试平台,利用解耦化的结构来设计所述第一计数器寄存器模型,通过所述第一计数器寄存器模型的第一部分实现所述第一芯片的面向优化设计测试的边界测试,以及通过所述第一计数器寄存器模型的第二部分实现所述一个或者多个面向优化设计子项目的测试,并且利用了多个寄存器抽象化层次模型类来覆盖对应的多个面向优化设计子项目,有效地简化了例化第一计数器寄存器模型的过程,并且可以灵活地适配第一芯片的当前设计和当前面向优化设计测试需求,提升了验证效率以及缩短了开发时间。
图3是本申请实施例提供的一种计算设备的结构示意图,该计算设备300包括:一个或者多个处理器310、通信接口320以及存储器330。所述处理器310、通信接口320以及存储器330通过总线340相互连接。可选地,该计算设备300还可以包括输入/输出接口350,输入/输出接口350连接有输入/输出设备,用于接收用户设置的参数等。该计算设备300能够用于实现上述的本申请实施例中设备实施例或者系统实施例的部分或者全部功能;处理器310还能够用于实现上述的本申请实施例中方法实施例的部分或者全部操作步骤。例如,该计算设备300执行各种操作的具体实现可参照上述实施例中的具体细节,如处理器310用于执行上述方法实施例中部分或者全部步骤或者上述方法实施例中的部分或者全部操作。再例如,本申请实施例中,计算设备300可用于实现上述装置实施例中一个或者多个部件的部分或者全部功能,此外通信接口320具体可用于为了实现这些装置、部件的功能所必须的通讯功能等,以及处理器310具体可用于为了实现这些装置、部件的功能所必须的处理功能等。
应当理解的是,图3的计算设备300可以包括一个或者多个处理器310,并且多个处理器310可以按照并行化连接方式、串行化连接方式、串并行连接方式或者任意连接方式来协同提供处理能力,或者多个处理器310可以构成处理器序列或者处理器阵列,或者多个处理器310之间可以分成主处理器和辅助处理器,或者多个处理器310之间可以具有不同的架构如采用异构计算架构。另外,图3所示的计算设备300,相关的结构性描述及功能性描述是示例性且非限制性的。在一些示例性实施例中,计算设备300可以包括比图3所示的更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者具有不同的部件布置。
处理器310可以有多种具体实现形式,例如处理器310可以包括中央处理器(central processing unit,CPU)、图形处理器(graphic processing unit,GPU)、神经网络处理器(neural-network processing unit,NPU)、张量处理器(tensor processingunit,TPU)或数据处理器(data processing unit,DPU)等一种或多种的组合,本申请实施例不做具体限定。处理器310还可以是单核处理器或多核处理器。处理器310可以由CPU和硬件芯片的组合。上述硬件芯片可以是专用集成电路(application-specific integratedcircuit,ASIC),可编程逻辑器件(programmable logic device,PLD)或其组合。上述PLD可以是复杂可编程逻辑器件(complex programmable logic device,CPLD),现场可编程逻辑门阵列(field-programmable gate array,FPGA),通用阵列逻辑(generic array logic,GAL)或其任意组合。处理器310也可以单独采用内置处理逻辑的逻辑器件来实现,例如FPGA或数字信号处理器(digital signal processor,DSP)等。通信接口320可以为有线接口或无线接口,用于与其他模块或设备进行通信,有线接口可以是以太接口、局域互联网络(local interconnect network,LIN)等,无线接口可以是蜂窝网络接口或使用无线局域网接口等。
存储器330可以是非易失性存储器,例如,只读存储器(read-only memory,ROM)、可编程只读存储器(programmable ROM,PROM)、可擦除可编程只读存储器(erasable PROM,EPROM)、电可擦除可编程只读存储器(electrically EPROM,EEPROM)或闪存。存储器330也可以是易失性存储器,易失性存储器可以是随机存取存储器(random access memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(static RAM,SRAM)、动态随机存取存储器(dynamic RAM,DRAM)、同步动态随机存取存储器(synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(double data rate SDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(enhancedSDRAM,ESDRAM)、同步连接动态随机存取存储器(synchlink DRAM,SLDRAM)和直接内存总线随机存取存储器(direct rambus RAM,DR RAM)。存储器330也可用于存储程序代码和数据,以便于处理器310调用存储器330中存储的程序代码执行上述方法实施例中的部分或者全部操作步骤,或者执行上述设备实施例中的相应功能。此外,计算设备300可能包含相比于图3展示的更多或者更少的组件,或者有不同的组件配置方式。
总线340可以是快捷外围部件互连标准(peripheral component interconnectexpress,PCIe)总线,或扩展工业标准结构(extended industry standard architecture,EISA)总线、统一总线(unified bus,Ubus或UB)、计算机快速链接(compute express link,CXL)、缓存一致互联协议(cache coherent interconnect for accelerators,CCIX)等。总线340可以分为地址总线、数据总线、控制总线等。总线340除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线等。但是为了清楚说明起见,图3中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
本申请实施例提供的方法和设备是基于同一发明构思的,由于方法及设备解决问题的原理相似,因此方法与设备的实施例、实施方式、示例或实现方式可以相互参见,其中重复之处不再赘述。本申请实施例还提供一种系统,该系统包括多个计算设备,每个计算设备的结构可以参照上述所描述的计算设备的结构。该系统可实现的功能或者操作可以参照上述方法实施例中的具体实现步骤和/或上述装置实施例中所描述的具体功能,在此不再赘述。
本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机指令,当所述计算机指令在计算机设备(如一个或者多个处理器)上运行时可以实现上述方法实施例中的方法步骤。所述计算机可读存储介质的处理器在执行上述方法步骤的具体实现可参照上述方法实施例中所描述的具体操作和/或上述装置实施例中所描述的具体功能,在此不再赘述。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。本申请实施例可以全部或部分地通过软件、硬件、固件或其他任意组合来实现。当使用软件实现时,上述实施例可以全部或部分地以计算机程序产品的形式实现。本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质上实施的计算机程序产品的形式。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载或执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以为通用计算机、专用计算机、计算机网络、或者其他可编程装置。计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线)或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集合的服务器、数据中心等数据存储设备。可用介质可以是磁性介质(如软盘、硬盘、磁带)、光介质、或者半导体介质。半导体介质可以是固态硬盘,也可以是随机存取存储器,闪存,只读存储器,可擦可编程只读存储器,电可擦可编程只读存储器,寄存器或任何其他形式的合适存储介质。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述。可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。显然,本领域的技术人员可以对本申请实施例进行各种改动和变型而不脱离本申请实施例的精神和范围。本申请实施例方法中的步骤可以根据实际需要进行顺序调整、合并或删减;本申请实施例系统中的模块可以根据实际需要进行划分、合并或删减。如果本申请实施例的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
Claims (10)
1.一种用于芯片的面向优化设计测试方法,其特征在于,所述面向优化设计测试方法包括:
确定第一芯片的第一面向优化设计测试需求,其中,所述第一面向优化设计测试需求包括一个或者多个面向优化设计子项目,所述一个或者多个面向优化设计子项目从多个面向优化设计子项目中选取;
基于计数器寄存器模型基类和所述第一面向优化设计测试需求来例化第一计数器寄存器模型,然后利用所述第一计数器寄存器模型执行所述第一芯片的面向优化设计测试,
其中,所述第一计数器寄存器模型由第一部分和第二部分组成,所述第一部分用于实现所述第一芯片的面向优化设计测试的边界测试,所述第二部分用于所述一个或者多个面向优化设计子项目的测试,
所述计数器寄存器模型基类包括与所述多个面向优化设计子项目一一对应的多个寄存器抽象化层次模型类,
基于所述计数器寄存器模型基类和所述第一面向优化设计测试需求来例化所述第一计数器寄存器模型,包括:声明所述计数器寄存器模型基类并且连接所述计数器寄存器模型基类所包括的所述多个寄存器抽象化层次模型类中与所述一个或者多个面向优化设计子项目对应的寄存器抽象化层次模型类以便生成所述第二部分,
基于所述计数器寄存器模型基类和所述第一面向优化设计测试需求来例化所述第一计数器寄存器模型,还包括:声明所述计数器寄存器模型基类并且设定所述第一计数器寄存器模型的域、寄存器地址、访问属性、总线配置、存储器配置以便生成所述第一部分,
生成所述第一部分与生成所述第二部分是解耦的。
2.根据权利要求1所述的面向优化设计测试方法,其特征在于,所述第一芯片的面向优化设计测试的边界测试与所述第一计数器寄存器模型的所述第一部分的一个或者多个函数相关联,所述一个或者多个函数包括以下一项或者多项:添加函数、清零函数、复位函数、读清函数、动态测试函数、仿真结束检查函数、设置较大值函数。
3.根据权利要求2所述的面向优化设计测试方法,其特征在于,所述第一部分的所述一个或者多个函数被调用从而实现所述第一芯片的面向优化设计测试的边界测试。
4.根据权利要求1所述的面向优化设计测试方法,其特征在于,所述多个寄存器抽象化层次模型类中的每一个寄存器抽象化层次模型类的中断使能信号、传输数据长度、时钟沿设置、寄存器宽度、虚拟功能均可被配置从而适配与该寄存器抽象化层次模型类对应的面向优化设计子项目。
5.根据权利要求4所述的面向优化设计测试方法,其特征在于,通过更新所述多个寄存器抽象化层次模型类或者更新所述多个寄存器抽象化层次模型类中与所述一个或者多个面向优化设计子项目对应的寄存器抽象化层次模型类之间的连接关系,从而更新所述第二部分。
6.根据权利要求1所述的面向优化设计测试方法,其特征在于,确定所述第一芯片的所述第一面向优化设计测试需求,包括:获取与所述第一芯片相关联的第一寄存器表单,解析所述第一寄存器表单从而确定所述第一芯片的面向优化设计测试的边界测试以及所述一个或者多个面向优化设计子项目。
7.根据权利要求6所述的面向优化设计测试方法,其特征在于,所述第一芯片的面向优化设计测试的边界测试是基于所述第一芯片的应用场景预先确定,所述一个或者多个面向优化设计子项目是随机化生成。
8.根据权利要求1所述的面向优化设计测试方法,其特征在于,所述一个或者多个面向优化设计子项目包括以下一项或者多项:面向硬件纠错设计、面向产品测试设计、面向生产设计、面向采购设计、面向诊断设计、面向服务设计、面向可靠性设计、面向成本设计。
9.一种计算机设备,其特征在于,所述计算机设备包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现根据权利要求1至8中任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机指令,当所述计算机指令在计算机设备上运行时使得所述计算机设备执行根据权利要求1至8中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410048551.9A CN117574822B (zh) | 2024-01-12 | 2024-01-12 | 用于芯片的面向优化设计测试方法、计算机设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410048551.9A CN117574822B (zh) | 2024-01-12 | 2024-01-12 | 用于芯片的面向优化设计测试方法、计算机设备及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117574822A CN117574822A (zh) | 2024-02-20 |
CN117574822B true CN117574822B (zh) | 2024-04-05 |
Family
ID=89888410
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410048551.9A Active CN117574822B (zh) | 2024-01-12 | 2024-01-12 | 用于芯片的面向优化设计测试方法、计算机设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117574822B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113835945A (zh) * | 2021-09-29 | 2021-12-24 | 深圳大普微电子科技有限公司 | 芯片的测试方法、装置、设备及系统 |
CN113901745A (zh) * | 2021-10-11 | 2022-01-07 | 海宁奕斯伟集成电路设计有限公司 | 芯片测试方法、装置、电子设备及计算机可读存储介质 |
CN114121139A (zh) * | 2022-01-27 | 2022-03-01 | 合肥悦芯半导体科技有限公司 | 芯片测试方法、装置、电子设备及存储介质 |
CN116341428A (zh) * | 2023-01-16 | 2023-06-27 | 成都登临科技有限公司 | 构建参考模型的方法、芯片验证方法及系统 |
-
2024
- 2024-01-12 CN CN202410048551.9A patent/CN117574822B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113835945A (zh) * | 2021-09-29 | 2021-12-24 | 深圳大普微电子科技有限公司 | 芯片的测试方法、装置、设备及系统 |
CN113901745A (zh) * | 2021-10-11 | 2022-01-07 | 海宁奕斯伟集成电路设计有限公司 | 芯片测试方法、装置、电子设备及计算机可读存储介质 |
CN114121139A (zh) * | 2022-01-27 | 2022-03-01 | 合肥悦芯半导体科技有限公司 | 芯片测试方法、装置、电子设备及存储介质 |
CN116341428A (zh) * | 2023-01-16 | 2023-06-27 | 成都登临科技有限公司 | 构建参考模型的方法、芯片验证方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN117574822A (zh) | 2024-02-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109408373B (zh) | 智能合约的测试方法、计算机可读存储介质及测试终端 | |
US7996816B2 (en) | Method and apparatus for dynamically binding service component implementations for specific unit test cases | |
US20210326500A1 (en) | Generation of dynamic design flows for integrated circuits | |
US8161439B2 (en) | Method and apparatus for processing assertions in assertion-based verification of a logic design | |
US8418093B2 (en) | Method and system for design simplification through implication-based analysis | |
US20060064680A1 (en) | Extensible internal representation of systems with parallel and sequential implementations | |
JPH11353357A (ja) | 再コンフュギュレ―ション可能なハ―ドウェアの評価装置及び評価方法 | |
CN113342583B (zh) | 芯片验证系统、方法、装置、设备和存储介质 | |
CN116501305B (zh) | 用于寄存器代码自动生成的方法、设备、介质及系统 | |
US7370312B1 (en) | System and method for controlling simulation of hardware in a hardware development process | |
CN115618801B (zh) | 缓存一致性检验方法、装置及电子设备 | |
CN117034821B (zh) | 用于芯片设计前端仿真验证的回归验证方法及介质 | |
CN116069726B (zh) | 一种集成电路设计库的管理方法、设备及介质 | |
CN113420520A (zh) | 集成电路装置设计仿真方法、装置、设备和可读存储介质 | |
CN116228515B (zh) | 硬件加速系统、方法及相关装置 | |
CN117574822B (zh) | 用于芯片的面向优化设计测试方法、计算机设备及介质 | |
US8327311B1 (en) | Generating a simulation model of a circuit design | |
CN113760751B (zh) | 生成测试用例的方法、电子设备及存储介质 | |
US20070220338A1 (en) | Method and system for generating checkpoints of hardware description language simulations that include a specific model state together with a software testcase state | |
US7236917B1 (en) | Method and apparatus for generating minimal node data and dynamic assertions for a simulation | |
CN116956789B (zh) | 一种用于寄存器后门访问的方法、计算设备及介质 | |
US7246053B2 (en) | Method for transforming behavioral architectural and verification specifications into cycle-based compliant specifications | |
CN117724984B (zh) | 用于测试用例实例代码生成的方法、计算机设备及介质 | |
CN117034841B (zh) | 一种用于数模混合仿真验证的方法、计算设备及介质 | |
CN117291132B (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 |