CN115657981A - 验证环境中的打印信息的打印等级的设置方法及验证方法 - Google Patents
验证环境中的打印信息的打印等级的设置方法及验证方法 Download PDFInfo
- Publication number
- CN115657981A CN115657981A CN202211403674.7A CN202211403674A CN115657981A CN 115657981 A CN115657981 A CN 115657981A CN 202211403674 A CN202211403674 A CN 202211403674A CN 115657981 A CN115657981 A CN 115657981A
- Authority
- CN
- China
- Prior art keywords
- verification
- printing
- configuration file
- information
- 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
- 238000000034 method Methods 0.000 title claims abstract description 141
- 238000012795 verification Methods 0.000 claims abstract description 307
- 238000007639 printing Methods 0.000 claims abstract description 202
- 230000008569 process Effects 0.000 claims abstract description 85
- 238000010200 validation analysis Methods 0.000 claims description 6
- 238000004088 simulation Methods 0.000 description 26
- 230000006870 function Effects 0.000 description 13
- 238000010586 diagram Methods 0.000 description 7
- 238000004891 communication Methods 0.000 description 6
- 230000008878 coupling Effects 0.000 description 4
- 238000010168 coupling process Methods 0.000 description 4
- 238000005859 coupling reaction Methods 0.000 description 4
- 238000013461 design Methods 0.000 description 4
- 238000011161 development Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 238000004590 computer program Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 239000013307 optical fiber Substances 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000008707 rearrangement Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
Images
Landscapes
- Accessory Devices And Overall Control Thereof (AREA)
Abstract
本申请提供了一种验证环境中的打印信息的打印等级的设置方法及验证方法,其中验证方法包括:获取验证用例;获取配置文件,配置文件描述了验证环境中的至少一个打印标签的打印等级;配置验证过程为不输出打印信息,以及/或者不解析配置文件;使用验证用例执行验证,当验证出现错误时,配置验证过程为可输出打印信息,以及可解析配置文件,并使用验证用例再次执行验证;在再次执行验证过程中解析配置文件,根据配置文件为验证环境中的打印信息的打印标签设置打印等级,以及根据所设置的打印等级输出匹配打印等级阈值的打印信息。本申请可实现对打印信息的打印等级的快速设置,并且由于配置文件的可重复适应性,提高了验证过程的效率。
Description
技术领域
本申请涉及验证技术领域,特别是指一种验证环境中的打印信息的打印等级的设置方法及装置、验证方法及装置。
背景技术
在芯片的电路开发过程中,通常采用电路设计工具来进行开发,例如使用电路设计自动化(Electronic Design Automation,EDA)工具进行开发。当芯片的电路初步完成开发后,会通过仿真工具来仿真该芯片的电路,即通过仿真工具模拟出该芯片的实际功能,并通过验证平台,例如基于通用验证方法(Universal Verification Methodology,UVM)的验证平台来对该芯片电路的仿真进行预期功能的测试和验证,以调试、优化芯片的设计。
在使用验证平台对芯片电路仿真验证时,会搭建验证环境,通过在验证环境中加载验证用例来测试、验证芯片电路仿真的运行过程,为了显示验证进程,以及验证出问题时方便开发人员对设计的芯片电路进行调试(debug),验证环境的程序代码中会有很多打印信息。
在验证过程中,如果将所有的打印信息都输出打印,则会由于打印信息的量巨大,对应生成的仿真的日志(log)也会非常大,这将导致:一方面,由于要打印信息的量巨大,该打印信息的输出过程会影响验证的进度;另一方面,由于所生成的仿真的log太大,信息量过于冗余,不利于开发人员的调试过程。
为解决上述原因,针对验证环境中的各打印信息,可以对各打印信息所对应的打印标签设置打印等级,在针对芯片电路仿真的验证过程中,可以仅输出符合打印等级阈值要求(一般指低于设定的阈值)的打印信息。例如,在UVM验证平台中,对于UVM_INFO类型的打印信息中,打印等级由低到高可以包括UVM_NONE、UVM_LOW、UVM_MEDIUM、UVM_HIGH、UVM_FULL、UVM_DEBUG的级别。设置打印等级时,对于关键的打印信息,可以设置为低级别,而相对可有可无显示的打印信息,可以设置为高级别,以使得关键的打印信息得以输出。
目前,对上述打印信息的打印等级的设置,是在所搭建的验证环境对应的程序代码中,由开发人员添加相应的代码进行设置,如果要设置多个打印标签的打印等级,则该程序代码会非常冗余,并且该设置过程也会降低验证过程的效率。另一方面,在使用不同的验证用例时,所设置的打印等级需根据所使用的不同的验证用例重新调整,这将导致:若某次芯片电路仿真验证出问题时,当调试完该芯片电路再次对该芯片电路仿真进行验证时,若要重新使用某个或系列个验证用例,则相应的打印等级需重新设置,这也会降低验证过程的效率。
因此,在此背景下,如何实现验证环境中的打印信息对应的打印等级的快速设置、以提高芯片电路仿真验证的效率,是有待解决的技术问题。
发明内容
鉴于现有技术的以上问题,本申请提供一种验证环境中的打印信息的打印等级的设置方法、验证方法、及相应的装置,能实现提高芯片电路仿真验证的效率。
为达到上述目的,本申请第一方面提供了一种验证环境中的打印信息的打印等级的设置方法,包括:获取配置文件,所述配置文件描述了验证环境中的至少一个打印标签的打印等级;解析所述配置文件,根据所述配置文件为验证环境中的打印信息的打印标签设置打印等级。
由上,可以通过配置文件的方式为验证环境中的打印信息的打印标签设置打印等级,使得验证环境的代码简洁,并且验证过程的代码与配置文件实现松耦合,不需要在验证过程中编写等级设置相关的代码,简化了验证过程的打印信息打印等级的设定过程,实现对打印信息的打印等级的快速设置,提高了芯片电路仿真验证的效率。并且配置文件的可重复使用性,使得打印标签的打印等级的设置更为简便,不必重复去手动添加代码,从而提高了验证过程的效率。
本申请第二方面提供了一种验证方法,包括:获取验证用例;获取配置文件,所述配置文件描述了验证环境中的至少一个打印标签的打印等级;配置验证过程为可输出打印信息,以及可解析所述配置文件;
可选的,若配置文件中不存在打印标签的打印等级,则不需要在配置文件中对打印标签的打印等级进行配置。
使用所述验证用例执行验证;在所述执行验证过程中,解析所述配置文件,根据所述配置文件为验证环境中的打印信息的打印标签设置打印等级,以及根据所设置的打印等级输出匹配打印等级阈值的打印信息。
由上,可以通过配置文件的方式为验证环境中不同组件的不同打印标签设置打印等级,使得验证环境的代码简洁,并且验证过程的代码与配置文件实现松耦合,不需要在验证过程中编写等级设置相关的代码,简化了验证过程的打印信息打印等级的设定过程,通过获取配置文件设置打印等级,实现对打印信息的打印等级的快速设置,提高了芯片电路仿真验证的效率。并且配置文件的可重复使用性,使得打印标签的打印等级的设置更为简便,不必重复去手动添加代码,从而提高了验证过程的效率。
本申请第三方面提供了一种验证方法,包括:获取验证用例;获取配置文件,所述配置文件描述了验证环境中的打印标签的打印等级,其中,若不存在打印标签的打印等级时,则不需要进行配置;配置验证过程为不输出打印信息,以及/或者不解析所述配置文件;使用所述验证用例执行验证,当验证出现错误时,配置验证过程为可输出打印信息,以及可解析所述配置文件,并使用所述验证用例再次执行验证;在所述再次执行验证过程中解析所述配置文件,根据所述配置文件为验证环境中的打印信息的打印标签设置打印等级,以及根据所设置的打印等级输出匹配打印等级阈值的打印信息。
由上,可以通过配置文件的方式为验证环境中的打印信息的打印标签设置打印等级,使得验证环境的代码简洁,并且验证过程的代码与配置文件实现松耦合,不需要在验证过程中编写等级设置相关的代码,简化了验证过程的打印信息打印等级的设定过程,通过获取配置文件设置打印等级,实现对打印信息的打印等级的快速设置,提高了芯片电路仿真验证的效率。并且配置文件的可重复使用性,使得打印标签的打印等级的设置更为简便,不必重复去手动添加代码,从而提高了验证过程的效率。另一方面,在首次验证过程中可以先不开启打印信息,不设置打印等级,并且在验证过程中当某条验证用例出错,可以重新使用该验证用例,并设置打印标签的打印等级,基于此去打印信息。这样仅在验证出错时输出打印信息,在整体上可以缩短验证真时间,提高验证过程的效率。
作为第二方面或第三方面的一种可能的实现方式,所述获取所述配置文件包括:根据所述验证用例获取与所述验证用例关联的所述配置文件。
由上,实现了验证用例与配置文件的关联,从而可以灵活的针对各验证用例分别设置配置文件。并且,作为可选的可实现方式,同一个验证用例可以关联多个配置文件,进一步实现配置文件的灵活使用。当关联的多个配置文件中的打印标签存在重复配置打印等级时,可以以预设的规则确定该打印标签的打印等级,其中预设的规则可以如下之一:以最高的打印等级为准、或以最低的打印等级为准;或配置文件本身设置有优先级,以优先级高的配置文件中的设置为准。
作为第一方面、第二方面或第三方面的一种可能的实现方式,所述配置文件描述的内容包括:至少一个组件、所述组件包括的至少一个打印标签,所述打印标签的打印等级。
由上,通过组件到打印标签的层级来设置打印等级,结构清晰。
本申请第四方面提供了一种验证环境中的打印信息的打印等级的设置装置,包括:第一获取单元,用于获取配置文件,所述配置文件描述了验证环境中的至少一个打印标签的打印等级;第一设置单元,用于解析所述配置文件,根据所述配置文件为验证环境中的打印信息的打印标签设置打印等级。
本申请第五方面提供了一种验证装置,包括:第二获取单元,用于获取验证用例;所述第二获取单元还用于获取配置文件,所述配置文件描述了验证环境中的至少一个打印标签的打印等级;第一配置单元,用于配置验证过程为可输出打印信息,以及可解析所述配置文件;第一执行单元,用于使用所述验证用例执行验证;第二设置单元,用于在所述执行验证过程中,解析所述配置文件,根据所述配置文件为验证环境中的打印信息的打印标签设置打印等级;第一输出单元,用于根据所设置的打印等级输出匹配打印等级阈值的打印信息。
本申请第六方面提供了.一种验证装置,包括:第三获取单元,用于获取验证用例;所述第三获取单元还用于获取配置文件,所述配置文件描述了验证环境中的至少一个打印标签的打印等级;第二配置单元,用于配置验证过程为不输出打印信息,以及/或者不解析所述配置文件;所述第二配置单元还用于当使用所述验证用例执行验证出现错误时,配置验证过程为可输出打印信息,以及可解析所述配置文件;
第二执行单元,用于使用所述验证用例执行验证,以及使用所述验证用例再次执行验证;第三设置单元,用于在所述再次执行验证过程中解析所述配置文件,根据所述配置文件为验证环境中的打印信息的打印标签设置打印等级;第二输出单元,用于根据所设置的打印等级输出匹配打印等级阈值的打印信息。
本申请第七方面提供了一种计算设备,包括:通信接口,以及至少一个处理器;其中,所述至少一个处理器用于执行程序指令,所述程序指令当被所述至少一个处理器执行时使得所述计算设备实现上述第一方面至第三方面的任一所述的方法。
本申请第八方面提供了一种计算机可读存储介质,其上存储有程序指令,所述程序指令当被计算机执行时使得所述计算机实现上述第一方面至第三方面的任一所述的方法。
附图说明
图1是本申请实施例提供的一种验证环境的示意图;
图2a是本申请提供的验证环境中的打印信息的打印等级的设置方法的实施例的流程图;
图2b是本申请提供的验证方法的第一实施例的流程图;
图2c是本申请提供的验证方法的第二实施例的流程图;
图3a是本申请提供的验证方法的第三实施例的流程图;
图3b是本申请实施例提供的配置文件包含的内容示意图;
图4a是本申请提供的验证环境中的打印信息的打印等级的设置装置的实施例的示意图;
图4b是本申请提供的验证装置的第一实施例的示意图;
图4c是本申请提供的验证装置的第二实施例的示意图;
图5是本申请实施例提供的一种计算设备的结构性示意性图。
应理解,上述结构示意图中,各框图的尺寸和形态仅供参考,不应构成对本发明实施例的排他性的解读。结构示意图所呈现的各框图间的相对位置和包含关系,仅为示意性地表示各框图间的结构关联,而非限制本发明实施例的物理连接方式。
具体实施方式
下面结合附图并举实施例,对本申请提供的技术方案作进一步说明。应理解,本申请实施例中提供的系统结构和业务场景主要是为了说明本申请的技术方案的可能的实施方式,不应被解读为对本申请的技术方案的唯一限定。本领域普通技术人员可知,随着系统结构的演进和新业务场景的出现,本申请提供的技术方案对类似技术问题同样适用。
应理解,本申请实施例提供了验证环境中的打印信息的打印等级的设置方法及装置、验证方法及装置、计算设备、计算机存储介质,由于这些技术方案解决问题的原理相同或相似,在如下具体实施例的介绍中,某些重复之处可能不再赘述,但应视为这些具体实施例之间已有相互引用,可以相互结合。
除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。如有不一致,以本说明书中所说明的含义或者根据本说明书中记载的内容得出的含义为准。另外,本文中所使用的术语只是为了描述本申请实施例的目的,不是旨在限制本申请。为了准确地对本申请中的技术内容进行叙述,以及为了准确地理解本发明,在对具体实施方式进行说明之前先对本说明书中所使用的术语给出如下的解释说明或定义:
1)通用验证方法(Universal Verification Methodology,UVM):UVM为一种从模块级到系统级的验证环境开发标准,基于UVM可以开发出可重复使用的验证用的组件(component)。
2)验证环境:用于验证被测设备(Device Under Test,DUT)所搭建的测试环境/测试平台,验证环境包括实现不同功能的多个组件(component),每个组件对应一实现相应功能的代码模块,多个组件形成组件库以供调用,以提高代码的可重复使用性。其中,DUT可以是真实的物理芯片,也可以是芯片电路的仿真。
如图1示出了验证环境的一个实施例,该实施例中的验证环境包括的基础组件包括驱动器(driver)、监测器(monitor)和比较器(checker)。在其他实施例中也可以包括其他组件。上述各组件简介如下:
驱动器(driver):该组件的功能包括用于根据验证用例的系列指令产生发送给DUT端口的数据或信号。
监测器(monitor):该组件的功能包括用于观测DUT的输出数据或DUT内部信号,例如:对于系统信号如时钟,可以监测其频率变化;对于总线信号,可以监测总线的传输类型和数据内容等。
比较器(checker):该组件的功能包括缓存从各个监测器收集到的DUT输出数据,通过数据比较的方法,检查所收集到的DUT输出数据是否同期望数据一致。
3)打印信息:在对DUT验证过程中,验证环境内的各组件可产生相关打印信息,打印信息例如包括:在执行验证过程中,某组件接收/监测到的信息、生成/输出的信息、所分析的DUT的运行信息、某验证步骤的备注或解释性信息、提示性/警示性信息等等。其中,各打印信息可以采用打印标签作为标识进行区分。上述打印信息可以显示给开发人员以用于调试DUT。
4)宏(Macro),或称为宏定义、宏代换、宏替换。一般说来,宏是一种规则或模式,或称语法替换,解释器或编译器在遇到宏时会自动进行相应替换来实现传递参数。宏定义时,可以定义成员参数(即要替换的参数)以及成员函数(即该宏执行的操作、实现的功能)。
本申请的方案中,定义一配置文件,该配置文件中描述了各组件的各打印标签的打印等级,在仿真验证过程中,验证程序会获取并解析该配置文件,根据该配置文件对验证环境中的打印信息的打印等级进行设置,进而,该执行验证过程中,可以根据所设置的打印等级输出匹配预设的打印等级阈值的打印信息。本申请方案采用了配置文件的方式,避免了背景技术中提到的每次验证过程都要由开发人员添加相应的代码进行设置的情况,并且配置文件的可重复使用,使得对各打印信息的打印等级的设置更为方便,免去重复设置,由此实现对打印信息的打印等级的快速设置,提高了芯片电路仿真验证的效率。
下面结合具体实施例对本申请进行详细介绍。
本申请提供了一种验证环境中的打印信息的打印等级的设置方法的实施例,该实施例可应用于验证环境,可参见如图2a示出了流程图,该方法包括以下步骤:
S11:获取配置文件,所述配置文件描述了验证环境中的至少一个打印标签的打印等级。
在一些实施例中,配置文件可以在执行验证过程之前预先进行定义,例如图3b示出了配置文件所定义的内容的一个例子,该例中的配置文件包含的字段可包括:组件、组件中包含的打印标签、打印等级。其中,组件指验证环境中的组件,字段中对应的是本实施例中组件的名称。其中,组件可以是如图1中示出的组件,如驱动器、检测器、比较器,也可以是图1中未示出的其他组件。其中,打印标签作为打印信息的标识。
在一些实施例中,不同类型的打印信息可以配置不同的打印级别。例如,对于UVM_INFO类型的打印信息中,打印等级由低到高可以包括UVM_NONE、UVM_LOW、UVM_MEDIUM、UVM_HIGH、UVM_FULL、UVM_DEBUG的级别。
在一些实施例中,可以是基于用户的操作,将配置文件加载到验证环境,或者验证环境到指定的目录下读取加载配置文件。
S12:解析所述配置文件,根据所述配置文件为验证环境中的打印信息的打印标签设置打印等级。
在一些实施例中,可以定义宏的方式来解析配置文件,以及设置打印等级。
由上,可以通过配置文件的方式为验证环境中的打印信息的打印标签设置打印等级,使得验证环境的代码简洁,并且与配置文件实现松耦合,不需要在验证过程中编写等级设置相关的代码,简化了验证过程的打印信息打印等级的设定过程,实现对打印信息的打印等级的快速设置,提高了芯片电路仿真验证的效率。
本申请还提供了一种验证方法的第一实施例,该实施例可应用于验证环境,可参见如图2b示出的流程图,该方法包括以下步骤:
S21:获取验证用例。
在一些实施例中,可以是基于用户的操作,将所要使用的验证用例加载到验证环境。也可以是验证环境去指定的目录自动读取验证用例。
S22:获取配置文件,所述配置文件描述了验证环境中的至少一个打印标签的打印等级。
在一些实施例中,配置文件可以在执行验证过程之前预先进行定义,对此可参考上述步骤S11中的描述,不再赘述。
在一些实施例中,在预先定义该配置文件时,可以将该配置文件和所要使用的验证用例关联起来。在一些实施例中,该建立关联的方式可以采用以下之一的方式:
方式一:在所述验证用例的信息中记载该配置文件的文件标识,例如文件标识可以是文件名。由此,获取配置文件时,是基于所使用的验证用例中记载的配置文件的文件标识进行获取。
方式二:可以通过一独立的文件来记录两者的关联,例如记录配置文件的文件标识与所关联的验证用例的标识。由此,获取配置文件时,是基于该独立的文件,来确定出所使用的验证用例关联的配置文件的文件标识,进而根据该文件标识获取该配置文件。
方式三:将所述配置文件与关联的验证用例存储在同一个文件夹下,来表示之间具有关联。由此,获取配置文件时,可以是到所述验证用例的同一目录下获取配置文件。
在一些实施例中,同一个验证用例,可以关联多个配置文件,也即,本步骤可以获取到与所述验证用例的关联的多个配置文件。在一些实施例中,当这些多个配置文件中的打印标签存在重复配置打印等级时,例如第一个配置文件与第二个配置文件中均对同一个打印标签描述了打印等级,此时,可以以预设的规则确定该打印标签的打印等级,其中预设的规则可以如下之一:以最高的打印等级为准、或以最低的打印等级为准;或配置文件本身设置有优先级,以优先级高的配置文件中的设置为准。
S23:配置验证过程为可输出打印信息,以及可解析所述配置文件。
在一些实施例中,可以以在验证命令中定义宏的方式,来实现本步骤的配置。
S24:使用所述验证用例执行验证。
本步骤即使用验证用例对DUT执行验证的过程。在一些实施例中,该DUT可以是仿真,例如芯片电路的仿真。在另一些实施例中,DUT也可以是物理设备,如某芯片。
S25:在所述执行验证过程中,解析所述配置文件,根据所述配置文件为验证环境中的打印信息的打印标签设置打印等级,以及根据所设置的打印等级输出匹配打印等级阈值的打印信息。
在一些实施例中,可以使用上述宏来实现配置文件的解析和打印等级的设置。
在一些实施例中,当验证过程中要输出某打印信息时,会根据所设置的打印等级与打印等级阈值进行比较,确定是否输出该打印信息,当不高于阈值时,则输出该打印信息,以便于开发人员进行调试,优化DUT。
在一些实施例中,可以设置的不同打印等级的打印信息使用不同的显示方式打印,例如显示方式包括:字体属性,例如包括字号、粗细、颜色等,显示方式还可以包括提供给打印信息显示的空间大小,例如等级越低则显示空间越大。
本申请还提供了一种验证方法的第二实施例,该实施例可应用于验证环境,可参见如图2c示出的流程图,该方法包括以下步骤:
S31:获取验证用例。
本步骤可选的实现方式,可参见上述步骤S21中的描述,对此不再赘述。
S32:获取配置文件,所述配置文件描述了验证环境中的至少一个打印标签的打印等级。
本步骤可选的实现方式,可参见上述步骤S22中的描述,对此不再赘述。
S33:配置验证过程为不输出打印信息,以及/或者不解析所述配置文件。
在一些实施例中,本步骤可以为默认步骤。
在一些实施例中,通过验证命令中是否定义宏的方式决定是否解析上述配置文件,在验证过程中,判断为首次使用所述验证用例,则默认不定义宏,从而实现不解析上述配置文件,不会设置打印等级。另一方面当判断为首次使用所述验证用例时,也默认设置不输出打印信息。
S34:使用所述验证用例执行验证,当验证出现错误时,配置验证过程为可输出打印信息,以及可解析所述配置文件,并使用所述验证用例再次执行验证。
在一些实施例中,当再次执行验证时,可以使用上述定义宏来实现配置文件的解析和打印等级的设置。
S35:在所述再次执行验证过程中解析所述配置文件,根据所述配置文件为验证环境中的打印信息的打印标签设置打印等级,以及根据所设置的打印等级输出匹配打印等级阈值的打印信息。
本步骤可选的实现方式,可参见上述步骤S25中的描述,对此不再赘述。
如图3a为本申请实施例提供的验证方法的第三实施例,该实施例中,使用基于UVM搭建的验证环境对DUT进行验证,本例中的DUT为开发人员设计的芯片电路的仿真,如图3a所示,该实施例提供的验证方法包括步骤S110-S180:
S110:定义一配置文件,该配置文件描述了所要使用的验证用例所涉及的验证环境中的各组件所包含的打印标签的打印等级。
其中,配置文件可以在执行验证过程之前预先进行定义,例如图3b示出了配置文件所定义的内容的一个例子,该例中的配置文件包含的字段可包括:组件、组件中包含的打印标签、打印等级。
图3b示出的例子中,不同的打印标签的定义信息采用了分行设置,例如,如图3b示出的内容中,配置文件的某行定义信息中包括了定义组件env.sc_mac_mdl中的send_item_base这个打印标签的打印等级为UVM_HIGH的配置信息。在一些实施例中,也可以以某标识符区分各打印标签的定义信息。
其中,定义该配置文件时,可以将该配置文件和所要使用的验证用例关联起来。可以采用以下的方式:
如,在所述验证用例的信息中记载该配置文件的文件标识(文件标识可以是文件名)。
又如,可以通过一独立的文件来记录两者的关联,例如记录配置文件的文件标识与所关联的验证用例的标识。
又如,将所述配置文件与关联的验证用例存储在同一个文件夹下,来表示之间具有关联。
在一些实施例中,同一个验证用例,可以关联多个配置文件,当关联的多个配置文件中的打印标签存在重复配置打印等级时,可以以预设的规则确定该打印标签的打印等级,其中预设的规则可以如下之一:以最高的打印等级为准、或以最低的打印等级为准;或配置文件本身设置有优先级,以优先级高的配置文件中的设置为准。
S120:由验证环境获取验证用例。
其中,可以是基于用户的操作,将所要使用的验证用例加载到验证环境。也可以是验证环境去指定的目录自动读取验证用例。
S130:由验证环境获取所定义的配置文件。
其中,可以是基于所述验证用例,读取与该验证用例关联的配置文件。
可以参考步骤S110中的描述,根据所使用的关联的方式,使用对应的方式去读取,例如根据所述验证用例中记录的一个或多个配置文件的文件标识去读取,或者根据所述独立的文件的记录的所关联一个或多个配置文件的文件标识去读取,或者读取与所述验证用例同一文件夹下的一个或多个配置文件。
当一个验证用例有多个配置文件时,这些配置文件中的打印标签存在重复配置打印等级时,根据步骤S110中描述的预设规则确定出该打印标签所要使用的打印等级的配置。
S140:配置验证过程不输出打印信息、不解析所述配置文件。
其中,本步骤的配置可以为默认配置。
本例中,通过验证命令中是否定义宏“PRINT_CFG_FILE”的方式决定是否解析上述配置文件,在验证过程中,判断为首次使用所述验证用例,则默认不定义宏“PRINT_CFG_FILE”,从而不解析上述配置文件,不会设置打印等级。另一方面当判断为首次使用所述验证用例时,也默认设置不输出打印信息。
本例中所定义的宏“PRINT_CFG_FILE”的功能是:解析配置文件,根据配置文件中的打印标签对应的打印等级,去设置验证环境中各组件中的相应打印标签的打印等级。
其中,可以在验证环境中针对验证用例设置一计数器来判断是否为该验证用例的首次使用,当计数为0或初始值,则为首次,执行跳过定义宏的代码部分,即不定义宏,以及设置打印函数的赋值为0来表示不输出打印信息。当计数器值发生变化表示是使用该验证用例再次验证的过程,则执行所述宏定义的代码部分,即定义宏,并使得打印函数赋值为1来表示输出打印信息。
S150:验证环境使用所述验证用例对DUT执行验证,当判断验证出现错误时,执行下一步,否则结束本次仿真验证。
这里的判断验证出现错误,例如收集到的DUT输出数据与期望数据不一致、验证进程挂死等。
其中,当结束本次仿真验证后,可以返回步骤S120获取下一验证用例继续对DUT使用下一验证用例进行验证。
S160:执行所述验证用例的再次验证过程,并且设置验证过程输出打印信息、并设置为解析所述配置文件。
本例中,在验证命令中定义宏“PRINT_CFG_FILE”,具体参见步骤S140中所述,不再赘述。
S170:所述再次执行DUT的验证过程中,通过宏“PRINT_CFG_FILE”解析所述配置文件,根据所述配置文件的信息为验证环境中各组件的打印标签设置打印等级,也即实现了为各打印信息设置打印等级。
S180:根据所设置的打印等级,在所述再次执行验证过程中输出匹配打印等级阈值的打印信息。
具体的,当验证过程中要输出某打印信息时,会根据所设置的打印等级与打印等级阈值进行比较,确定是否输出该打印信息,当不高于阈值时,则输出该打印信息,以便于开发人员进行调试,优化DUT。
另外,还可以设置的不同打印等级的打印信息使用不同的显示方式打印,例如显示方式包括:字体属性,例如包括字号、粗细、颜色等,显示方式还可以包括提供给打印信息显示的空间大小,例如等级越低则显示空间越大。
本申请还相应的提供了验证环境中的打印信息的打印等级的设置装置的实施例、验证装置的实施例,关于这些装置的有益效果或解决的技术问题,可以参见与各装置分别对应的方法中的描述,此处不再一一赘述。
本申请提供了一种验证环境中的打印信息的打印等级的设置装置的实施例,如图4a所示,该设置装置包括:
第一获取单元11,用于获取配置文件,所述配置文件描述了验证环境中的至少一个打印标签的打印等级。该单元具体用于实现上述步骤S11及其可选实施例。
第一设置单元12,用于解析所述配置文件,根据所述配置文件为验证环境中的打印信息的打印标签设置打印等级。该单元具体用于实现上述步骤S12及其可选实施例。
本申请提供了一种验证装置的第一实施例,如图4b所示,该验证装置包括:
第二获取单元21,用于获取验证用例。该单元具体用于实现上述步骤S21及其可选实施例。
所述第二获取单元21还用于获取配置文件,所述配置文件描述了验证环境中的至少一个打印标签的打印等级。该单元具体还用于实现上述步骤S22及其可选实施例。
第一配置单元22,用于配置验证过程为可输出打印信息,以及可解析所述配置文件。该单元具体用于实现上述步骤S23及其可选实施例。
第一执行单元23,用于使用所述验证用例执行验证。该单元具体用于实现上述步骤S24及其可选实施例。
第二设置单元24,用于在所述执行验证过程中,解析所述配置文件,根据所述配置文件为验证环境中的打印信息的打印标签设置打印等级。该单元具体用于实现上述步骤S25中的部分实施例。
第一输出单元25,用于根据所设置的打印等级输出匹配打印等级阈值的打印信息。该单元具体用于实现上述步骤S25中的部分实施例。
本申请提供了一种验证装置的第二实施例,如图4c所示,该验证装置包括:
第三获取单元31,用于获取验证用例。该单元具体用于实现上述步骤S31及其可选实施例。
所述第三获取单元31还用于获取配置文件,所述配置文件描述了验证环境中的至少一个打印标签的打印等级。该单元具体还用于实现上述步骤S32及其可选实施例。
第二配置单元32,用于配置验证过程为不输出打印信息,以及/或者不解析所述配置文件。该单元具体用于实现上述步骤S33及其可选实施例。
所述第二配置单元32还用于当使用所述验证用例执行验证出现错误时,配置验证过程为可输出打印信息,以及可解析所述配置文件。该单元具体还用于实现上述步骤S34及其可选实施例。
第二执行单元33,用于使用所述验证用例执行验证,以及使用所述验证用例再次执行验证。
第三设置单元34,用于在所述再次执行验证过程中解析所述配置文件,根据所述配置文件为验证环境中的打印信息的打印标签设置打印等级。该单元具体用于实现上述步骤S35中的部分实施例。
第二输出单元35,用于根据所设置的打印等级输出匹配打印等级阈值的打印信息。该单元具体用于实现上述步骤S35中的部分实施例。
图5是本申请实施例提供的一种计算设备900的结构性示意性图。该计算设备可以作为仿真验证中输出打印信息的装置、仿真验证装置,执行上述仿真验证中输出打印信息的或仿真验证方法中的各可选实施例,该计算设备可以是终端,也可以是终端内部的芯片或芯片系统。如图5所示,该计算设备900包括:处理器910、存储器920、通信接口930。
应理解,图5所示的计算设备900中的通信接口930可以用于与其他设备之间进行通信,具体可以包括一个或多个收发电路或接口电路。
其中,该处理器910可以与存储器920连接。该存储器920可以用于存储该程序代码和数据。因此,该存储器920可以是处理器910内部的存储单元,也可以是与处理器910独立的外部存储单元,还可以是包括处理器910内部的存储单元和与处理器910独立的外部存储单元的部件。
可选的,计算设备900还可以包括总线。其中,存储器920、通信接口930可以通过总线与处理器910连接。总线可以是外设部件互连标准(Peripheral ComponentInterconnect,PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,EISA)总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图5中采用了一条无箭头的线表示,但并不表示仅有一根总线或一种类型的总线。
应理解,在本申请实施例中,该处理器910可以采用中央处理单元(centralprocessing unit,CPU)。该处理器还可以是其它通用处理器、数字信号处理器(digitalsignal processor,DSP)、专用集成电路(application specific integrated circuit,ASIC)、现成可编程门阵列(field programmable gate Array,FPGA)或者其它可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。或者该处理器910采用一个或多个集成电路,用于执行相关程序,以实现本申请实施例所提供的技术方案。
该存储器920可以包括只读存储器和随机存取存储器,并向处理器910提供指令和数据。处理器910的一部分还可以包括非易失性随机存取存储器。例如,处理器910还可以存储设备类型的信息。
在计算设备900运行时,所述处理器910执行所述存储器920中的计算机执行指令执行上述方法的任一操作步骤以及其中任一可选的实施例。
应理解,根据本申请实施例的计算设备900可以对应于执行根据本申请各实施例的方法中的相应主体,并且计算设备900中的各个模块的上述和其它操作和/或功能分别为了实现本实施例各方法的相应流程,为了简洁,在此不再赘述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件、或计算机软件与电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。例如,上述各实施例描述的装置、或各装置所包含的各单元或模块,可以是通过进程或软件模块来实现,其中的软件模块可以是按照功能逻辑拆分得到的单元。所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
本申请实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时用于执行上述方法,该方法包括上述各个实施例所描述的方案中的至少之一。
本申请实施例的计算机存储介质,可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是,但不限于,电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括、但不限于无线、电线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本申请操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
另外,说明书和权利要求书中的词语“第一、第二、第三等”或模块A、模块B、模块C等类似用语,仅用于区别类似的对象,不代表针对对象的特定排序,可以理解地,在允许的情况下可以互换特定的顺序或先后次序,以使这里描述的本申请实施例能够以除了在这里图示或描述的以外的顺序实施。
在上述的描述中,所涉及的表示步骤的标号,如S110、S120……等,并不表示一定会按此步骤执行,在允许的情况下可以互换前后步骤的顺序,或同时执行。
说明书和权利要求书中使用的术语“包括”不应解释为限制于其后列出的内容;它不排除其它的元件或步骤。因此,其应当诠释为指定所提到的所述特征、整体、步骤或部件的存在,但并不排除存在或添加一个或更多其它特征、整体、步骤或部件及其组群。因此,表述“包括装置A和B的设备”不应局限为仅由部件A和B组成的设备。
本说明书中提到的“一个实施例”或“实施例”意味着与该实施例结合描述的特定特征、结构或特性包括在本申请的至少一个实施例中。因此,在本说明书各处出现的用语“在一个实施例中”或“在实施例中”并不一定都指同一实施例,但可以指同一实施例。此外,在一个或多个实施例中,能够以任何适当的方式组合各特定特征、结构或特性,如从本公开对本领域的普通技术人员显而易见的那样。
注意,上述仅为本申请的较佳实施例及所运用技术原理。本领域技术人员会理解,本申请不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本申请的保护范围。因此,虽然通过以上实施例对本申请进行了较为详细的说明,但是本申请不仅仅限于以上实施例,在不脱离本申请构思的情况下,还可以包括更多其他等效实施例,均属于本申请保护范畴。
Claims (10)
1.一种验证环境中的打印信息的打印等级的设置方法,其特征在于,包括:
获取配置文件,所述配置文件描述了验证环境中的至少一个打印标签的打印等级;
解析所述配置文件,根据所述配置文件为验证环境中的打印信息的打印标签设置打印等级。
2.一种验证方法,其特征在于,包括:
获取验证用例;
获取配置文件,所述配置文件描述了验证环境中的至少一个打印标签的打印等级;
配置验证过程为可输出打印信息,以及可解析所述配置文件;
使用所述验证用例执行验证;
在所述执行验证过程中,解析所述配置文件,根据所述配置文件为验证环境中的打印信息的打印标签设置打印等级,以及根据所设置的打印等级输出匹配打印等级阈值的打印信息。
3.一种验证方法,其特征在于,包括:
获取验证用例;
获取配置文件,所述配置文件描述了验证环境中的至少一个打印标签的打印等级;
配置验证过程为不输出打印信息,以及/或者不解析所述配置文件;
使用所述验证用例执行验证,当验证出现错误时,配置验证过程为可输出打印信息,以及可解析所述配置文件,并使用所述验证用例再次执行验证;
在所述再次执行验证过程中解析所述配置文件,根据所述配置文件为验证环境中的打印信息的打印标签设置打印等级,以及根据所设置的打印等级输出匹配打印等级阈值的打印信息。
4.根据权利要求2或3任一所述的方法,其特征在于,所述获取所述配置文件包括:根据所述验证用例获取与所述验证用例关联的所述配置文件。
5.根据权利要求1至3任一所述的方法,其特征在于,所述配置文件描述的内容包括:至少一个组件、所述组件包括的至少一个打印标签,所述打印标签的打印等级。
6.一种验证环境中的打印信息的打印等级的设置装置,其特征在于,包括:
第一获取单元,用于获取配置文件,所述配置文件描述了验证环境中的至少一个打印标签的打印等级;
第一设置单元,用于解析所述配置文件,根据所述配置文件为验证环境中的打印信息的打印标签设置打印等级。
7.一种验证装置,其特征在于,包括:
第二获取单元,用于获取验证用例;
所述第二获取单元还用于获取配置文件,所述配置文件描述了验证环境中的至少一个打印标签的打印等级;
第一配置单元,用于配置验证过程为可输出打印信息,以及可解析所述配置文件;
第一执行单元,用于使用所述验证用例执行验证;
第二设置单元,用于在所述执行验证过程中,解析所述配置文件,根据所述配置文件为验证环境中的打印信息的打印标签设置打印等级;
第一输出单元,用于根据所设置的打印等级输出匹配打印等级阈值的打印信息。
8.一种验证装置,其特征在于,包括:
第三获取单元,用于获取验证用例;
所述第三获取单元还用于获取配置文件,所述配置文件描述了验证环境中的至少一个打印标签的打印等级;
第二配置单元,用于配置验证过程为不输出打印信息,以及/或者不解析所述配置文件;
所述第二配置单元还用于当使用所述验证用例执行验证出现错误时,配置验证过程为可输出打印信息,以及可解析所述配置文件;
第二执行单元,用于使用所述验证用例执行验证,以及使用所述验证用例再次执行验证;
第三设置单元,用于在所述再次执行验证过程中解析所述配置文件,根据所述配置文件为验证环境中的打印信息的打印标签设置打印等级;
第二输出单元,用于根据所设置的打印等级输出匹配打印等级阈值的打印信息。
9.一种计算设备,其特征在于,包括:
处理器,以及
存储器,其上存储有程序指令,所述程序指令当被所述处理器执行时使得所述处理器执行权利要求1至5任一所述的方法。
10.一种计算机可读存储介质,其特征在于,其上存储有程序指令,所述程序指令当被计算机执行时使得所述计算机执行权利要求1至5任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211403674.7A CN115657981A (zh) | 2022-11-10 | 2022-11-10 | 验证环境中的打印信息的打印等级的设置方法及验证方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211403674.7A CN115657981A (zh) | 2022-11-10 | 2022-11-10 | 验证环境中的打印信息的打印等级的设置方法及验证方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115657981A true CN115657981A (zh) | 2023-01-31 |
Family
ID=85021852
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211403674.7A Pending CN115657981A (zh) | 2022-11-10 | 2022-11-10 | 验证环境中的打印信息的打印等级的设置方法及验证方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115657981A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116595932A (zh) * | 2023-07-17 | 2023-08-15 | 芯耀辉科技有限公司 | 一种日志打印方法及相关装置 |
-
2022
- 2022-11-10 CN CN202211403674.7A patent/CN115657981A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116595932A (zh) * | 2023-07-17 | 2023-08-15 | 芯耀辉科技有限公司 | 一种日志打印方法及相关装置 |
CN116595932B (zh) * | 2023-07-17 | 2023-10-20 | 芯耀辉科技有限公司 | 一种日志打印方法及相关装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8924937B1 (en) | Method and system for generating verification information and tests for software | |
CN107145437B (zh) | 一种java注解测试方法及装置 | |
US20110055777A1 (en) | Verification of Soft Error Resilience | |
CN107329889B (zh) | 一种c编译器自动化测试的方法 | |
US9342439B2 (en) | Command coverage analyzer | |
CN109871312B (zh) | 一种接口测试方法、装置、设备及可读存储介质 | |
CN113568839A (zh) | 软件测试和统计测试覆盖率的方法、装置、设备及介质 | |
CN110674047A (zh) | 软件测试方法、装置及电子设备 | |
CN109857637B (zh) | 基于注解的Java语言方法覆盖率和方法输入输出统计方法 | |
CN112925524A (zh) | 一种检测驱动程序中不安全直接存储器访问的方法及装置 | |
CN115657981A (zh) | 验证环境中的打印信息的打印等级的设置方法及验证方法 | |
CN110287700B (zh) | 一种iOS应用安全分析方法及装置 | |
US9176846B1 (en) | Validating correctness of expression evaluation within a debugger | |
US9280627B1 (en) | GUI based verification at multiple abstraction levels | |
US20210406158A1 (en) | Systems and methods for automated device testing | |
CN110647457B (zh) | 数据挖掘方法、数据处理方法和系统 | |
US20160224456A1 (en) | Method for verifying generated software, and verifying device for carrying out such a method | |
CN110795338B (zh) | 一种基于前后端交互的自动化测试方法、装置及电子设备 | |
CN113434405A (zh) | 测试文件的确定方法及装置、存储介质及电子装置 | |
KR101251792B1 (ko) | 디버거를 이용한 임베디드 소프트웨어 단위 테스트 자동화 장치 및 방법 | |
KR20200112477A (ko) | 소스코드 검사 시스템 및 방법 | |
CN112580282B (zh) | 用于集成电路设计验证的方法、装置、设备以及存储介质 | |
CN109800155B (zh) | 一种基于Probe的QTE联锁应用软件测试方法及装置 | |
US11989122B2 (en) | Handling mock objects that are written in the form of multiple assignment instructions | |
CN114048131B (zh) | 一种基于fuzzing测试需校验流量的方法、装置及设备 |
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 | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20240102 Address after: No. 14, 14th Floor, Unit 1, Building 2, No. 368 Tianfu Second Street, Chengdu High tech Zone, China (Sichuan) Pilot Free Trade Zone, Wuhou District, Chengdu City, Sichuan Province, 610095 Applicant after: Neuron Information Technology (Chengdu) Co.,Ltd. Address before: 100086 room 1514, 15 / F, building 1, No.1 Zhichun Road, Haidian District, Beijing Applicant before: BEIJING WUXIN TECHNOLOGY CO.,LTD. |
|
TA01 | Transfer of patent application right |