CN107862155A - 对芯片进行功能覆盖率模型验证的方法和装置 - Google Patents
对芯片进行功能覆盖率模型验证的方法和装置 Download PDFInfo
- Publication number
- CN107862155A CN107862155A CN201711243042.8A CN201711243042A CN107862155A CN 107862155 A CN107862155 A CN 107862155A CN 201711243042 A CN201711243042 A CN 201711243042A CN 107862155 A CN107862155 A CN 107862155A
- Authority
- CN
- China
- Prior art keywords
- upf
- power supply
- supply status
- chip
- power
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/39—Circuit design at the physical level
- G06F30/398—Design verification or optimisation, e.g. using design rule check [DRC], layout versus schematics [LVS] or finite element methods [FEM]
Abstract
本发明实施例提供一种对芯片进行功能覆盖率模型验证的方法和装置。本发明对芯片进行功能覆盖率模型验证的方法,包括:从芯片的统一电源管理格式UPF文件中提取用于描述电源策略的UPF指令;根据所述UPF指令确定电源状态表,所述电源状态表包括多个电源状态,每个电源状态由各个电源域的目标开关状态组成;根据所述电源状态表生成功能覆盖率模型对应的文件;使用逻辑设计的层次结构中各个电源域的实际开关状态实例化所述功能覆盖率模型对应的文件,对所述芯片进行功能覆盖率模型验证,并生成所述芯片的功能覆盖率报告。本发明实施例可以实现无需人工参与,自动化生成功能覆盖率模型,有效提高验证效率。
Description
技术领域
本发明实施例涉及电子技术,尤其涉及一种对芯片进行功能覆盖率模型验证的方法和装置。
背景技术
随着计算机技术和微电子技术的迅速发展,芯片(chip)的应用领域越来越广泛。芯片是内含集成电路(Integrated Circuit,简称IC)的硅片,其体积很小,常常是计算机或其他电子设备的一部分。其中,集成电路就是把一定数量的常用电子元件,如电阻、电容、晶体管等,以及上述电子元件之间的连线,通过半导体工艺集成在一起的具有特定功能的电路。随着半导体工艺的飞速发展和芯片工作频率的提高,芯片的功耗迅速增加,而功耗的增加又将导致芯片发热量的增大和可靠性的下降。因此,功耗已经成为集成电路设计中的一个重要考虑因素。为了使产品更具竞争力,对芯片设计的要求已从单纯追求高性能、小面积转为对性能、面积、功耗的综合要求。
芯片设计通常包括芯片的验证,芯片的验证就是验证所设计的逻辑代码是否符合预期的要求,是否符合原来定义好的规范。随着芯片规模的增大,芯片设计中验证需要的时间越来越长,占整个设计周期的比例越来越大。为了提高验证速度,出现多种验证方法。比如动态仿真、静态检查、虚拟模型、硬件加速、以及现场可编程门阵列(Field-ProgrammableGate Array,简称FPGA)原型验证等。其中,动态仿真中又可以分为受控随机激励、断言检查、以及功能覆盖率模型等验证方法。其中,功能覆盖率模型使得对芯片功能验证的完备程度有了量化指标,因而在验证中得到了广泛应用。
针对低功耗设计的验证,相比普通逻辑设计的验证,有更多的挑战。比如隔离器件,电压转换器件连接错误,电源控制时序的错误,寄存器存储器掉电保持的错误,电源恢复后软硬件配合不当造成的死锁等。为了更全面的验证低功耗设计,使用功能覆盖率模型对于低功耗有关行为进行建模,定量反映验证完备程度有助于提高验证质量。
然而,上述功能覆盖率模型通常需要人工进行编写,每次进行设计更改时,都需要人工更改功能覆盖率模型,从而使得验证效率低。
发明内容
本发明实施例提供一种对芯片进行功能覆盖率模型验证的方法和装置,以实现无需人工参与,自动化生成功能覆盖率模型,有效提高验证效率。
第一方面,本发明实施例提供一种对芯片进行功能覆盖率模型验证的方法,包括:
从芯片的统一电源管理格式UPF文件中提取用于描述电源策略的UPF指令;
根据所述UPF指令确定电源状态表,所述电源状态表包括多个电源状态,每个电源状态由各个电源域的目标开关状态组成;
根据所述电源状态表生成功能覆盖率模型对应的文件;
使用逻辑设计的层次结构中各个电源域的实际开关状态实例化所述功能覆盖率模型对应的文件,对所述芯片进行功能覆盖率模型验证,并生成所述芯片的功能覆盖率报告;
其中,所述逻辑设计的层次结构是根据所述芯片的寄存器传输级RTL文件确定的。
第二方面,本发明实施例提供一种对芯片进行功能覆盖率模型验证的装置,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序,以实现如上述第一方面所述的方法。
第三方面,本发明实施例提供一种计算机存储介质,包括:所述计算机存储介质用于存储计算机程序,所述计算机程序执行时用于实现如如上述第一方面所述的方法。
本发明实施例对芯片进行功能覆盖率模型验证的方法和装置,通过从芯片的统一电源管理格式UPF文件中提取用于描述电源策略的UPF指令,根据所述UPF指令确定电源状态表,根据所述电源状态表生成功能覆盖率模型对应的文件,使用逻辑设计的层次结构中各个电源域的实际开关状态实例化所述功能覆盖率模型对应的文件,对所述芯片进行功能覆盖率模型验证,并生成所述芯片的功能覆盖率报告,由于可以自动提取用于描述电源策略的UPF指令,进而根据用于描述电源策略的UPF指令自动生成功能覆盖率模型对应的文件,使用该功能覆盖率模型对应的文件对芯片进行功能覆盖率模型验证,从而实现无需人工参与,自动化生成功能覆盖率模型,有效提高验证效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明对芯片进行功能覆盖率模型验证的方法实施例一的流程图;
图2为本发明对芯片进行功能覆盖率模型验证的方法实施例二的流程图;
图3为本发明一种编译工具下实现对芯片进行功能覆盖率模型验证的方法的示意图;
图4为本发明对芯片进行功能覆盖率模型验证的装置实施例一的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
芯片的集成电路的低功耗设计主要体现在降低静态功耗以及动态翻转率。其中,降低静态功耗可以通过降低电源电压、关闭电源、以及使用高阈值晶体管实现。降低动态翻转率可以通过软硬件的协同优化、逻辑电路的优化以及关闭非工作时钟来实现。对于后者,可以直接在寄存器传输级(Register Transfer Level,简称RTL)设计中得到体现。对于前者,可以使用统一电源管理格式(Unified Power Format,简称UPF)标准,描述集成电路的功耗管理行为。即RTL为电路的逻辑实现的描述,UPF为电源管理的属性行为的描述,二者结合可以完整描述集成电路的功能行为。将RTL设计和UPF设计经过集成电路设计工具的编译,得到集成电路的网表以及精确到模块和逻辑门的电源描述,进一步进行物理实现,便可以得到完整的集成电路版图设计。
其中,UPF描述的电源管理属性行为可以包括:1、电源分布结构:电源域、电源连线、关断控制;2、电源策略:电源状态表、电源电压;3、相关电源管理器件:隔离器件、电压转换器件、电源开关、保持寄存器。
针对低功耗设计的验证,相比普通逻辑设计的验证,有更多的挑战。比如隔离器件、电压转换器件连接错误、电源控制时序的错误、寄存器存储器掉电保持的错误以及电源恢复后软硬件配合不当造成的死锁等。为了更全面的验证低功耗设计,使用功能覆盖率模型对低功耗有关行为进行建模,定量反映验证完备程度,有助于提高验证质量。本申请实施例可以实现自动化生成功能覆盖率模型,有助于提高验证效率。其具体实施方式可以参见下述实施例的解释说明。
其中,用于描述电源策略的UPF指令具体可以参见表1。
表1用于描述电源策略的UPF指令和作用对应表
属于电源策略属性类的UPF指令名称 | 指令作用 |
add_port_state | 定义电源端口的状态 |
create_pst | 创建电源状态表 |
add_pst_state | 定义创建的电源状态表中的电源状态 |
add_power_state | 定义电源状态 |
describe_state_transition | 描述电源状态之间跳转的合法性 |
通过对UPF文件中表1中的UPF指令的提取,根据提取出的用于描述电源策略的UPF指令确定电源状态表,进而生成功能覆盖率模型对应的文件,使用该功能覆盖率模型对应的文件对芯片进行功能覆盖率模型验证,从而实现无需人工参与,自动化生成功能覆盖率模型,有效提高验证效率。
需要说明的是,表1中前三条为UPF1.0使用的指令,第四条是UPF2.0中用于替换前三条指令的指令,最后一条指令是UPF2.0新增的描述状态跳转的指令。通过上述指令,能够指定芯片中所有电源状态以及电源状态的跳转,其中,电源状态的跳转也可以称之为电源状态的变化路径。
还需要说明的是,本发明实施例的用于描述电源策略的UPF指令不以上述表1中的指令作为限制,其还可以是用于指定芯片中电源状态以及电源状态的跳转的其他指令,其也可以通过本发明实施例的方法进行提取,以实现自动化生成功能覆盖率模型,有效提高验证效率。
图1为本发明对芯片进行功能覆盖率模型验证的方法实施例一的流程图,如图1所示,本实施例的方法可以包括:
步骤101、从芯片的统一电源管理格式UPF文件中提取用于描述电源策略的UPF指令。
其中,UPF文件用于描述该芯片的低功耗电源管理的行为,UPF文件的格式可以为.upf,UPF文件中包括一条或者多条UPF指令。
具体的,从该UPF文件中提取出用于描述电源策略的UPF指令。例如,该用于描述电源策略的UPF指令可以是上述表1中任意一条或多条指令。
步骤102、根据所述UPF指令确定电源状态表,所述电源状态表包括多个电源状态。
其中,每个电源状态由各个电源域的目标开关状态组成。
步骤103、根据所述电源状态表生成功能覆盖率模型对应的文件。
其中,该功能覆盖率模型对应的文件可以是该功能覆盖率模型对应的高级验证语言文件,例如硬件描述语言(System Verilog,SV)文件。
步骤104、使用逻辑设计的层次结构中各个电源域的实际开关状态实例化所述功能覆盖率模型对应的文件,对所述芯片进行功能覆盖率模型验证,并生成所述芯片的功能覆盖率报告。
其中,所述逻辑设计的层次结构是根据所述芯片的寄存器传输级RTL文件确定的。
具体的,对逻辑设计的层次结构中各个电源域的实际开关状态进行采样,利用所述各个电源域的实际开关状态在仿真环境中实例化该功能覆盖率模型,对该芯片进行功能覆盖率模型验证。
可选的,上述步骤102的一种可实现方式可以为:当所述用于描述电源策略的UPF指令包括用于定义电源端口的状态的UPF指令、用于创建电源状态表的UPF指令和用于定义创建的电源状态表中的电源状态的UPF指令时,则根据所述用于创建电源状态表的UPF指令的指令操作对象、所述用于定义创建的电源状态表中的电源状态的UPF指令的指令操作对象以及用于定义电源端口的状态的UPF指令的指令操作对象确定所述电源状态表。
其中,多个电源端口组成一个电源域。可以根据多个电源端口的开关状态确定对应的电源域的开关状态,电源状态由多个电源域的开关状态组成。
举例而言,UPF指令为create_pst表2;add_pst_state active;add_port_stateX1X2,其中,表2为上述用于创建电源状态表的UPF指令的指令操作对象,active为上述用于定义创建的电源状态表中的电源状态的UPF指令的指令操作对象,X1、X2为上述用于定义电源端口的状态的UPF指令的指令操作对象,根据X1和X2可以得到电源域VDD_AON的开关状态。根据该指令操作对象便可以确定如表2的第二行第二列。
可选的,上述步骤102的另一种可实现方式可以为:当所述UPF指令为用于定义电源状态的UPF指令,则根据所述UPF指令的指令操作对象确定电源状态表。
举例而言,UPF指令为add_power_state active VDD_AON on(1.08v)VSS on(0.00v)FD_ISLAND2_sw/VDD off(0.00v)CORDIO_RET on(1.08v)CORDIO_CORE on(1.08v)FD_ISLAND6_sw/VDD on(1.08v),其中,active VDD_AON on(1.08v)VSS on(0.00v)FD_ISLAND2_sw/VDD off(0.00v)CORDIO_RET on(1.08v)CORDIO_CORE on(1.08v)FD_ISLAND6_sw/VDD on(1.08v)为上述用于定义电源状态的UPF指令的指令操作对象。根据该指令操作对象便可以确定如表2的第二行。
可选的,上述步骤102的另一种可实现方式可以为:当所述UPF指令为用于描述电源状态之间跳转的合法性的UPF指令时,则根据所述UPF指令的指令操作对象和已知的电源状态确定所述电源状态表。
本实施例,通过从芯片的统一电源管理格式UPF文件中提取用于描述电源策略的UPF指令,根据所述UPF指令确定电源状态表,根据所述电源状态表生成功能覆盖率模型对应的文件,使用逻辑设计的层次结构中各个电源域的实际开关状态实例化所述功能覆盖率模型对应的文件,对所述芯片进行功能覆盖率模型验证,并生成所述芯片的功能覆盖率报告,由于可以自动提取用于描述电源策略的UPF指令,进而根据用于描述电源策略的UPF指令自动生成功能覆盖率模型对应的文件,使用该功能覆盖率模型对应的文件对芯片进行功能覆盖率模型验证,从而实现无需人工参与,自动化生成功能覆盖率模型,有效提高验证效率。
下面采用几个具体的实施例,对图1所示方法实施例的技术方案进行详细说明。
图2为本发明对芯片进行功能覆盖率模型验证的方法实施例二的流程图,如图2所示,本实施例的方法可以包括:
步骤201、对UPF文件中的所有UPF指令进行词义解析,分别生成每条UPF指令的语义树。
步骤202、根据每条UPF指令的语义树提取用于描述电源策略的UPF指令。
具体的,根据每条UPF指令的语义树提取如表1所述的UPF指令。
其中,如表1所述,用于描述电源策略的UPF指令包括:用于定义电源端口的状态的UPF指令、用于创建电源状态表的UPF指令和用于定义创建的电源状态表中的电源状态的UPF指令;或者,用于定义电源状态的UPF指令;或者,用于描述电源状态之间跳转的合法性的UPF指令。从UPF文件中可以提取出上述中任意一项或多项。
步骤203、根据所述UPF指令确定电源状态表,所述电源状态表包括多个电源状态。
步骤204、根据所述电源状态表生成功能覆盖率模型对应的文件。
步骤205、使用逻辑设计的层次结构中各个电源域的实际开关状态实例化所述功能覆盖率模型对应的文件,对所述芯片进行功能覆盖率模型验证,并生成所述芯片的功能覆盖率报告。
其中,步骤203至步骤205的解释说明可以参见图1所示实施例的步骤102至步骤104,此处不再赘述。
可选的,上述步骤203的一种具体的可实现方式,根据提取的用于描述电源策略的UPF指令可以生成一个电源状态表,该电源状态表的每一列代表一个电源域,该电源状态表的每一行代表一个电源状态。举例而言,由UPF文件解析得到如表2所示电源状态表。如表2所示,电源状态表包括多个电源状态,表2以7个电源状态为例做举例说明,7个电源状态分别为活跃状态active、等待状态stby、关闭状态shdn、无线连接睡眠stby_cordio_sleep、无线连接活跃stby_cordio_awake、活跃前状态actv_pre、以及活跃前接口连接态actv_pre_llcc。如表2所示,每一列代表一个电源域,如电源域名称为VDD_AON、VSS、FD_ISLAND2_sw/VDD、CORDIO_RET、CORDIO_CORE以及FD_ISLAND6_sw/VDD。每个电源域的开关状态组成电源状态,如表2所示,电源域VDD_AON为开启状态,且电压为1.08v(on(1.08v)),电源域VSS为开启状态,且电压为0.00v(on(0.00v)),电源域FD_ISLAND2_sw/VDD为开启状态,且电压为1.08v(on(1.08v)),电源域CORDIO_RET为开启状态,且电压为1.08v(on(1.08v))、电源域CORDIO_CORE为开启状态,且电压为1.08v(on(1.08v)),以及电源域FD_ISLAND6_sw/VDD为开启状态,且电压为1.08v(on(1.08v)),对应的电压状态为活跃状态(active)。
表2电源状态表
可选的,所述功能覆盖率模型对应的文件包括覆盖率组、覆盖率点和至少一个容器,每个所述容器用于定义电源状态或者电源状态之间的跳转关系。
以上述表2为例做进一步举例说明,根据表2所示的电源状态表生成功能覆盖率模型对应的文件,以硬件描述语言(SystemVerilog,SV)为例做举例说明,该功能覆盖率模型对应的文件,主要使用覆盖率组(covergroup)、覆盖率点(coverpoint)和容器(bins)的结构来定义功能覆盖率模型。其中覆盖率组(covergroup)可以看做是一个功能检查点集合的容器,覆盖率点(coverpoint)是一个单一检查点,容器(bins)是检查点所应该覆盖到的变量,包括固定值以及各个值之间的跳转序列。例如以上表2的电源状态表,对应的功能覆盖率模型可以是如下代码。
其中,s1对应UPF2.0命令的add_power_state中的所有电源状态,或者UPF1.0命令的add_pst_state中所有电源状态。t1,t2,t3由UPF2.0命令的describe_state_transition中合法命令产生,bad_trans由UPF2.0命令的describe_state_transition中非法命令产生。
可选的,上述步骤205的一种具体的可实现方式,对逻辑设计的层次结构中各个电源域的实际开关状态进行采样,利用所述各个电源域的实际开关状态在仿真环境中实例化该功能覆盖率模型,对该芯片进行功能覆盖率模型验证,生成所述芯片的功能覆盖率报告。
具体的,通过上述步骤204覆盖率模型生成后,需要在仿真环境中实例化并绑定到相关信号进行采样。以上述表2做进一步举例说明,对6个电源域的实际开关状态进行采样,并在仿真环境顶层实例化上述功能覆盖率模型。该实例化采样过程具体可以如下。
上述代码为根据表2生成的,即每个电源状态的各个电源域的目标开关状态。
Pst_state_type pst_cp;
Assign pst_cp[0]=’PMU_PATH.pd6_vdd;
Assign pst_cp[1]=’PMU_PATH.cordio_core_vdd;
Assign pst_cp[2]=’PMU_PATH.cordio_ret_vdd;
Assign pst_cp[3]=’PMU_PATH.pd2_vdd;
Assign pst_cp[4]=’PMU_PATH.vss;
Assign pst_cp[5]=’PMU_PATH.aon_vdd;
上述代码为对6个电源域的实际开关状态进行采样。
上述代码为根据6个电源域的实际开关状态实例化上述功能覆盖率模型,仿真过程中,仿真器可以根据以上功能覆盖率模型,记录测试用例测试到的状态以及状态跳转路径,并在仿真结束后给出功能覆盖率报告。该功能覆盖率报告用于确定功能点的覆盖状况,以及根据功能点的覆盖状况确定是否对测试集增加特定的测试用例来改善功能覆盖率。最终达到测试用例能够覆盖到所有期望被覆盖的功能点,达到测试收敛的状态。
可选的,本发明实例所涉及的芯片具体可以为SoC芯片或BLE芯片。
本实施例,通过对UPF文件中的所有UPF指令进行词义解析,分别生成每条UPF指令的语义树,根据每条UPF指令的语义树提取用于描述电源策略的UPF指令,根据用于描述电源策略的UPF指令确定电源状态表,根据所述电源状态表生成功能覆盖率模型对应的文件,使用逻辑设计的层次结构中各个电源域的实际开关状态实例化所述功能覆盖率模型对应的文件,对所述芯片进行功能覆盖率模型验证,并生成所述芯片的功能覆盖率报告,由于可以自动提取属于电源策略属性类的UPF指令,从而实现无需人工参与,自动化生成功能覆盖率模型,有效提高验证效率。
图3为本发明一种编译工具下实现对芯片进行功能覆盖率模型验证的方法的示意图,不同编译工具下实现上述方法所包括的各个步骤的具体实现方式可以不同,如图3所示,本实施例以一种编译工具为例对上述方法实施例进行举例说明:可以使用UPF词法分析(UPF lexer)模块和UPF语法分析(UPF parser)模块实现上述步骤201和步骤202,使用分类模块1实现上述步骤203的确定电源状态表,使用生成功能覆盖率模型模块实现上述步骤204,使用分类模块2实现上述步骤205的确定逻辑设计的层次结构中各个电源域的实际开关状态,使用实例化模块实现上述步骤205的实例化所述功能覆盖率模型对应的文件,对所述芯片进行功能覆盖率模型验证,并生成所述芯片的功能覆盖率报告。这里以UPF文件具体为*.upf为例做举例说明,具体的,将*.upf输入至UPF lexer模块,由该UPF lexer模块对*.upf中的代码进行词义分析,生成token文件,将该token文件输入至UPF parser模块,由该UPF parser模块进行语法分析,生成每一条UPF指令的语义树,并输出给分类模块1和分类模块2,由分类模块1和分类模块2对接收到的多条UPF指令的语义树进行分类,这里的分类可以具体为根据语义树提取用于描述电源策略的UPF指令,并确定出电源状态表和逻辑设计的层次结构中各个电源域的实际开关状态,其中一路通过生成功能覆盖率模型模块根据电源状态表生成功能覆盖率模型对应的SV文件。另一路通过实例化模块在仿真环境中例化功能覆盖率模型并进行电源域的实际开关状态的采样,对芯片进行功能覆盖率模型效验。
本实施例可以实现无需人工参与,自动化生成功能覆盖率模型,有效提高验证效率。
图4为本发明对芯片进行功能覆盖率模型验证的装置实施例一的结构示意图,如图4所示,本实施例的装置可以包括:存储器11和处理器12,其中,存储器11用于存储计算机程序,处理器12,用于执行所述计算机程序,用于执行上述方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
当本发明实施例的对芯片进行功能覆盖率模型验证的方法的至少一部分功能通过软件实现时,本发明实施例还提供一种计算机存储介质,计算机存储介质用于储存为上述对芯片进行功能覆盖率模型验证的装置的计算机软件指令,当其在计算机上运行时,使得计算机可以执行上述方法实施例中各种可能的对芯片进行功能覆盖率模型验证的方法。在计算机上加载和执行所述计算机执行指令时,可全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机指令可以存储在计算机存储介质中,或者从一个计算机存储介质向另一个计算机存储介质传输,所述传输可以通过无线(例如蜂窝通信、红外、短距离无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如SSD)等。
此外,本发明实施例还提供一种包含指令的计算机程序产品,即软件产品,当其在计算机上运行时,使得计算机执行上述方法实施例中各种可能的对芯片进行功能覆盖率模型验证的方法。其实现原理和技术效果类似,此处不再赘述。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (10)
1.一种对芯片进行功能覆盖率模型验证的方法,其特征在于,包括:
从芯片的统一电源管理格式UPF文件中提取用于描述电源策略的UPF指令;
根据所述UPF指令确定电源状态表,所述电源状态表包括多个电源状态,每个电源状态由各个电源域的目标开关状态组成;
根据所述电源状态表生成功能覆盖率模型对应的文件;
使用逻辑设计的层次结构中各个电源域的实际开关状态实例化所述功能覆盖率模型对应的文件,对所述芯片进行功能覆盖率模型验证,并生成所述芯片的功能覆盖率报告;
其中,所述逻辑设计的层次结构是根据所述芯片的寄存器传输级RTL文件确定的。
2.根据权利要求1所述的方法,其特征在于,所述从芯片的UPF文件中提取用于描述电源策略的UPF指令,包括:
对所述UPF文件中的所有UPF指令进行词义解析,分别生成每条UPF指令的语义树;
根据每条UPF指令的语义树提取用于描述电源策略的UPF指令。
3.根据权利要1所述的方法,其特征在于,所述根据所述UPF指令确定电源状态表具体包括:
根据所述UPF指令确定电源状态之间的跳转关系;
根据已知的电源状态以及所述跳转关系确定电源状态表。
4.根据权利要求1-3中任一项所述的方法,其特征在于,所述根据所述UPF指令确定电源状态表,包括:
当所述用于描述电源策略的UPF指令包括用于定义电源端口的状态的UPF指令、用于创建电源状态表的UPF指令和用于定义创建的电源状态表中的电源状态的UPF指令时,则根据所述用于创建电源状态表的UPF指令的指令操作对象、所述用于定义创建的电源状态表中的电源状态的UPF指令的指令操作对象以及用于定义电源端口的状态的UPF指令的指令操作对象确定所述电源状态表。
5.根据权利要求1-3中任一项所述的方法,其特征在于,所述根据所述UPF指令确定电源状态表,包括:
当所述UPF指令为用于定义电源状态的UPF指令,则根据所述UPF指令的指令操作对象确定电源状态表。
6.根据权利要求1-3任一项所述的方法,其特征在于,所述根据所述UPF指令确定电源状态表,包括:
当所述UPF指令为用于描述电源状态之间跳转的合法性的UPF指令时,则根据所述UPF指令的指令操作对象和已知的电源状态确定所述电源状态表。
7.根据权利要求1-3中任一项所述的方法,其特征在于,所述功能覆盖率模型对应的文件包括覆盖率组、覆盖率点和至少一个容器,每个所述容器用于定义电源状态或者电源状态之间的跳转关系。
8.根据权利要求1-3中任一项所述的方法,其特征在于,所述芯片为SoC芯片或BLE芯片。
9.一种对芯片进行功能覆盖率模型验证的装置,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序,以实现如权利要求1-8中任一项所述的方法。
10.一种计算机存储介质,其特征在于,包括:所述计算机存储介质用于存储计算机程序,所述计算机程序执行时用于实现如权利要求1-8中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711243042.8A CN107862155A (zh) | 2017-11-30 | 2017-11-30 | 对芯片进行功能覆盖率模型验证的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711243042.8A CN107862155A (zh) | 2017-11-30 | 2017-11-30 | 对芯片进行功能覆盖率模型验证的方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107862155A true CN107862155A (zh) | 2018-03-30 |
Family
ID=61704353
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711243042.8A Pending CN107862155A (zh) | 2017-11-30 | 2017-11-30 | 对芯片进行功能覆盖率模型验证的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107862155A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112364595A (zh) * | 2020-11-26 | 2021-02-12 | 大唐半导体科技有限公司 | 一种数模混合芯片的低功耗验证方法和测试平台 |
CN112596966A (zh) * | 2020-12-17 | 2021-04-02 | 海光信息技术股份有限公司 | 芯片验证方法、装置、设备、存储介质 |
CN112989752A (zh) * | 2019-12-18 | 2021-06-18 | 深圳云天励飞技术有限公司 | 一种电源方案的仿真方法、仿真装置、终端设备及介质 |
WO2021134200A1 (zh) * | 2019-12-30 | 2021-07-08 | 成都海光集成电路设计有限公司 | 芯片设计方法、芯片设计装置、芯片及电子设备 |
CN114384403A (zh) * | 2022-03-22 | 2022-04-22 | 浙江大学 | 一种芯片验证ip装置及其测试方法 |
CN117454809A (zh) * | 2023-12-26 | 2024-01-26 | 奇捷科技(深圳)有限公司 | 一种低功耗的电路设计变更处理方法、系统和装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102096628A (zh) * | 2009-12-15 | 2011-06-15 | 上海华虹集成电路有限责任公司 | 基于vmm验证方法学的mcu验证平台实现方法 |
CN104731576A (zh) * | 2013-12-20 | 2015-06-24 | 联发科技股份有限公司 | 显示给定电源目标与硬件设计的层级结构的装置及方法 |
-
2017
- 2017-11-30 CN CN201711243042.8A patent/CN107862155A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102096628A (zh) * | 2009-12-15 | 2011-06-15 | 上海华虹集成电路有限责任公司 | 基于vmm验证方法学的mcu验证平台实现方法 |
CN104731576A (zh) * | 2013-12-20 | 2015-06-24 | 联发科技股份有限公司 | 显示给定电源目标与硬件设计的层级结构的装置及方法 |
Non-Patent Citations (3)
Title |
---|
JANICK BERGERON,等: "《SystemVerilog验证方法学》", 31 May 2007, 北京:北京航空航天大学出版社 * |
SHIREESH VERMA, IAN G. HARRIS, KIRAN RAMINENI: "《Automatic Generation of Functional Coverage Models from Behavioral Verilog Descriptions》", 《AUTOMATION & TEST IN EUROPE CONFERENCE & EXHIBITION》 * |
郑亚民,董晓舟: "《VHDL与VerilogHDL比较学习及建模指导》", 30 June 2008, 北京:国防工业出版社 * |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112989752A (zh) * | 2019-12-18 | 2021-06-18 | 深圳云天励飞技术有限公司 | 一种电源方案的仿真方法、仿真装置、终端设备及介质 |
WO2021134200A1 (zh) * | 2019-12-30 | 2021-07-08 | 成都海光集成电路设计有限公司 | 芯片设计方法、芯片设计装置、芯片及电子设备 |
CN113330388A (zh) * | 2019-12-30 | 2021-08-31 | 成都海光集成电路设计有限公司 | 芯片设计方法、芯片设计装置、芯片及电子设备 |
US11775717B2 (en) | 2019-12-30 | 2023-10-03 | Chengdu Haiguang Integrated Circuit Design Co., Ltd. | Chip design method, chip design device, chip, and electronic device |
CN112364595A (zh) * | 2020-11-26 | 2021-02-12 | 大唐半导体科技有限公司 | 一种数模混合芯片的低功耗验证方法和测试平台 |
CN112596966A (zh) * | 2020-12-17 | 2021-04-02 | 海光信息技术股份有限公司 | 芯片验证方法、装置、设备、存储介质 |
CN112596966B (zh) * | 2020-12-17 | 2022-11-01 | 海光信息技术股份有限公司 | 芯片验证方法、装置、设备、存储介质 |
CN114384403A (zh) * | 2022-03-22 | 2022-04-22 | 浙江大学 | 一种芯片验证ip装置及其测试方法 |
CN117454809A (zh) * | 2023-12-26 | 2024-01-26 | 奇捷科技(深圳)有限公司 | 一种低功耗的电路设计变更处理方法、系统和装置 |
CN117454809B (zh) * | 2023-12-26 | 2024-04-16 | 奇捷科技(深圳)有限公司 | 一种低功耗的电路设计变更处理方法、系统和装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107862155A (zh) | 对芯片进行功能覆盖率模型验证的方法和装置 | |
USRE44479E1 (en) | Method and mechanism for implementing electronic designs having power information specifications background | |
US7610571B2 (en) | Method and system for simulating state retention of an RTL design | |
US9703921B1 (en) | Naturally connecting mixed-signal power networks in mixed-signal simulations | |
US9223915B1 (en) | Method, system, and computer program product for checking, verifying, or testing a multi-fabric electronic design spanning across multiple design fabrics | |
US7669165B2 (en) | Method and system for equivalence checking of a low power design | |
US8732636B2 (en) | Method, system, and computer program product for implementing multi-power domain digital / mixed-signal verification and low power simulation | |
US7954078B1 (en) | High level IC design with power specification and power source hierarchy | |
US20070245278A1 (en) | Simulation of power domain isolation | |
CN108153920A (zh) | 集成电路设计的rtl阶段期间的时钟门控验证 | |
CN101008963B (zh) | 设计验证的方法和系统 | |
US20220067251A1 (en) | Formal Gated Clock Conversion for Field Programmable Gate Array (FPGA) Synthesis | |
CN107766619A (zh) | 对芯片进行fpga原型验证的方法和装置 | |
US20210374314A1 (en) | Engineering Change Order Scenario Compression by Applying Hybrid of Live and Static Timing Views | |
US7328415B2 (en) | Modeling blocks of an integrated circuit for timing verification | |
Trummer et al. | Simulation-based verification of power aware System-on-Chip designs using UPF IEEE 1801 | |
US20220284161A1 (en) | Automated design hierarchy identification and simplified reduced model generation for static verification of circuit designs | |
Nagy et al. | Current sensing completion detection in dual-rail asynchronous systems | |
Dunlop et al. | Managing complexity in IC design—past, present, and future | |
Golshan | The Art of Timing Closure | |
Sciuto et al. | SystemC and SystemVerilog: Where do they fit? where are they going? | |
Taraate et al. | Prototyping Design | |
Malaquias et al. | From the Standards to Silicon: Formally Proved Memory Controllers | |
Mohsin | Verification of a Single Port RAM Using UVM Methodology | |
Lee | Introduction to physical integration and tapeout in VLSIs |
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 | ||
CB02 | Change of applicant information | ||
CB02 | Change of applicant information |
Address after: 266555 Qingdao economic and Technological Development Zone, Shandong, Hong Kong Road, No. 218 Applicant after: Hisense Video Technology Co., Ltd Address before: 266100 Zhuzhou Road, Laoshan District, Shandong, No. 151, No. Applicant before: HISENSE ELECTRIC Co.,Ltd. |
|
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180330 |