CN100483429C - 验证操作支持系统及其方法 - Google Patents

验证操作支持系统及其方法 Download PDF

Info

Publication number
CN100483429C
CN100483429C CNB2006101446890A CN200610144689A CN100483429C CN 100483429 C CN100483429 C CN 100483429C CN B2006101446890 A CNB2006101446890 A CN B2006101446890A CN 200610144689 A CN200610144689 A CN 200610144689A CN 100483429 C CN100483429 C CN 100483429C
Authority
CN
China
Prior art keywords
information
test case
file
test
verification operation
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.)
Expired - Fee Related
Application number
CNB2006101446890A
Other languages
English (en)
Other versions
CN1983288A (zh
Inventor
宪昭朝本
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of CN1983288A publication Critical patent/CN1983288A/zh
Application granted granted Critical
Publication of CN100483429C publication Critical patent/CN100483429C/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • G06F30/23Design optimisation, verification or simulation using finite element methods [FEM] or finite difference methods [FDM]

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

提供了能够自动执行复杂验证操作的验证操作支持系统。这个系统10配备有:用于管理员的输入装置12,用于输入所有测试实例共有的测试实例共有信息183和因每个测试实例而异的测试实例差别信息184;文本编辑器16,用于生成包含基本信息183和184的模板文件18;用于验证人员的输入装置14,用于输入验证人员个别信息141和测试条件个别信息142;参数文件自动生成程序20,用于通过将个别信息141和142增添到模板文件18中的基本信息183和184中,生成描述每个测试实例的验证操作的测试实例信息文件222;以及,验证操作执行程序24,用于在运行TOS 26和HDL模拟器28时,根据测试实例信息文件222,执行验证操作。

Description

验证操作支持系统及其方法
技术领域
本发明涉及验证操作支持系统,更具体地说,涉及用于支持利用模拟器、通过一个或多个测试实例对一个或多个设计数据进行验证的验证操作的验证操作支持系统。
背景技术
SOC(片上系统)是一种半导体集成电路,其中,不仅将核心处理器,而且将高效外围设备,如USB(通用串行总线)主机控制器或PCI(外围设备互连)总线控制器,集成在一个芯片上。在开发SOC的过程中,根据逻辑模拟验证设计数据。通过对每个测试实例重复循环,进行SOC的验证操作,一个循环包括(1)组织测试环境,(2)生成测试代码,以及(3)进行模拟。
(1)根据SOC开发项目中共享的测试台,针对每个测试实例人工组织他/她自己的工作环境的每个验证人员(负责验证的人员)对测试环境进行组织。具体地说,验证人员生成一个工作目录,用于为每个测试实例临时存储一个用于模拟的文件,HDL(Hardware descriptionlanguage(硬件描述语言))模拟器向该文件输出和从该文件输入,并且,验证人员在这个工作目录中复制必要的文件。由于为了提高速度而在验证人员的本地主机上生成工作目录,因此,对于每个验证人员,工作环境不同。
(2)在对SOC进行系统逻辑验证,即,对整个SOC芯片进行逻辑验证的情况下,生成测试代码相当复杂。为此,需要现有的验证工具,如在美国专利No.6658633中披露的TOS(Test Operating System(测试操作系统))。生成测试代码需要很多参数,在TOS的情况下,在系统定义文件(system definition file(SDF))中对此进行了描述。一般情况下,认为生成测试代码需要某些与SDF对应的装置。
(3)通过读取由TOS生成的测试代码并且将它输入到HDL模拟器,进行模拟。由于在实际操作中,不能一次由一个测试代码验证所有测试实例,因此必须准备多个系统定义文件并且多次进行模拟。此外,由于随着SOC开发的进步,系统定义文件会被修改,无论何时系统定义文件的公共部分被部分修改,都必须对所有系统定义文件进行修改,以便再次生成测试代码。此外,有这样的情况,其中,即使当没有改变源代码等时,也会再次生成测试代码,并且会再次进行模拟。这是由于,实际上一个测试代码由许多测试实例构成,并且,包含在一个测试代码中的、每个测试实例的执行型式随机变化。
在模拟之前和之后,每个验证人员必须人工进行必要的预处理和后处理。具体地说,在执行模拟之前,每个验证人员复制必要的相关文件或者按照他/她自己的工作环境,改变用于每个测试实例的模拟条件。在执行模拟之后,每个验证人员生成模拟结果报告。
在对SOC进行系统逻辑验证的过程中,为了验证各个IP(知识产权)核之间的协同操作,测试台包含所有外围设备的模型,并且,测试代码包含所有外围设备的初始化代码。当负责USB核的验证人员改变测试台或设置时,它必须也反映在负责PCI核的验证人员的验证环境中。
根据以上详细描述可见,为了验证SOC的设计数据,必须在生成测试代码之前以及在模拟之前和之后,进行大量复杂的人工工作。为此,出现的问题是验证操作占用了很长时间,并且,很可能出现混淆和错误。尽管模拟本身日益复杂,但是,还没有提供使这种大量复杂的人工工作自动化的系统。
[专利文献1]
未经审查的日本专利公报(Kokai)No.04-171533
[专利文献2]
未经审查的日本专利公报(Kokai)No.02-8939
发明内容
[本发明要解决的问题]
本发明的目的是提供一种能够自动执行复杂的验证操作的验证操作支持系统。
[解决问题的手段和本发明的优点]
按照本发明的一个方面,提供一种用于支持利用模拟器、通过一个或多个测试实例对一个或多个设计数据进行验证的验证操作的验证操作支持系统,包括:基本信息输入装置,用于接收指定所述测试实例所需要的基本信息的输入;模板文件生成装置,用于生成包括由所述基本信息输入装置输入的所述基本信息的模板文件;个别信息输入装置,用于接收指定除所述测试实例以外的项目所需要的个别信息的输入;参数文件生成装置,用于通过从所述模板文件中读取所述基本信息,并且将由所述个别信息输入装置输入的所述个别信息增添到所述基本信息中,生成所述验证操作所需要的参数文件;以及验证操作执行装置,用于在运行所述模拟器时,按照所述参数文件执行所述验证操作,其中,所述基本信息包括多个测试实例所共有的测试实例共有信息和因每个测试实例而异的多条测试实例差别信息。
按照验证操作支持系统,仅通过管理员输入基本信息(如用于每个测试实例的验证操作过程)和主管验证人员输入个别信息(如表示工作目录或设计数据的位置的路径),就可以生成每个测试实例的参数文件,因此,通过根据参数文件执行模拟,能够自动执行复杂的验证操作。
在这种情况下,可以减小模板文件的数据规模,并且,还可以将重新写入的测试实例共有信息反映到每个测试实例的参数文件。
最好,参数文件生成装置通过将与每个测试实例对应的测试实例差别信息增添到测试实例共有信息中,生成测试实例信息文件。参数文件包括与多个测试实例对应的多个测试实例信息文件。
最好,个别信息包括用于表示要被验证的设计数据的位置的路径信息。参数文件生成装置通过增添由个别信息输入装置输入的路径信息,生成用于每个测试实例的测试实例信息文件。每个测试实例信息文件包括路径信息。
根据本发明的另一个方面,提供一种验证操作支持方法,该方法可以由计算机执行,用于支持利用模拟器、通过一个或多个测试实例对一个或多个设计数据进行验证的验证操作,该方法包括如下步骤:接收指定测试实例所需要的基本信息的输入;生成包括输入的基本信息的模板文件;接收指定除测试实例以外的项目所需要的个别信息的输入;通过从所述模板文件中读取所述基本信息,并且将输入的个别信息增添到所述基本信息中,生成所述验证操作所需要的参数文件;以及在运行所述模拟器时,按照所述参数文件执行所述验证操作,其中,所述基本信息包括多个测试实例所共有的测试实例共有信息和因每个测试实例而异的多条测试实例差别信息。
根据本发明的另一个方面,提供一种参数文件产生方法,该方法可以由计算机执行,用于支持利用模拟器、通过一个或多个测试实例对一个或多个设计数据进行验证的验证操作,该方法包括如下步骤:接收指定测试实例所需要的基本信息的输入;生成包括输入的基本信息的模板文件;接收指定除所述测试实例以外的项目所需要的个别信息的输入;通过从所述模板文件中读取所述基本信息并且将输入的个别信息增添到所述基本信息中,生成所述验证操作所需要的参数文件,其中,所述基本信息包括多个测试实例所共有的测试实例共有信息和因每个测试实例而异的多条测试实例差别信息。
根据本发明的另一个方面,提供一种验证操作所需要的参数文件的数据结构,该验证操作利用编译器、通过多个测试实例对一个或多个设计数据进行验证,所述数据结构包括与多个测试实例对应的多个测试实例信息文件,每个测试实例信息文件包括:路径信息,用于表示要被验证的设计数据的位置;操作过程信息,用于表示对于对应的测试实例的验证操作的过程;第一参数信息,被提供给所述编译器,用于为对应的测试实例生成测试代码;以及第二参数信息,被提供给所述模拟器。
附图说明
图1为示出了按照本发明实施例的验证操作支持系统的配置的功能框图;
图2示出了图1中的模板文件的数据结构;
图3为图2所示的模板文件的例子;
图4示出了图1中的参数文件的数据结构;
图5示出了在图4所示的参数文件中的测试实例信息文件的数据结构;
图6为图5所示的测试实例信息文件的例子;
图7为说明图1所示的验证操作支持系统(验证操作支持方法及其程序产品)的操作的流程图;
图8为说明图7中的参数文件生成处理的子程序的流程图;
图9示出了依据图1中的参数自动生成程序的测试实例信息文件生成方法;
图10为说明图7中的验证操作执行处理的子程序的流程图;并且
图11为对于每个测试实例,改变由图1中示出的验证操作支持系统自动执行的验证操作的内容的例子。
具体实施方式
以下将参照附图,对本发明的实施例进行详细描述。在所有附图中,给相似或相同的部分以相似的附图标记,并且不对其进行重复描述。
参照图1,按照本发明实施例的验证操作支持系统10配备有用于管理员的输入装置12、用于验证人员(负责验证的人员)的输入装置14、文本编辑器16、模板文件18、参数文件自动生成程序20、参数文件22和验证操作执行程序24。
验证操作支持系统10支持通过利用TOS(测试操作系统)26和HDL模拟器28预先准备的一个或多个测试实例,对SOC的一个或多个设计数据进行验证的验证操作。TOS26是现有的验证工具中的一个,用于根据系统定义文件(system definition file,SDF),自动生成测试代码261,在美国专利No.6658633的说明书中对此进行了详细披露。HDL模拟器28利用测试代码261对设计数据进行模拟,并且输出模拟结果报告281。尽管这里描述了使用TOS 26的例子,但是,可以用任何与TOS26对应的验证工具来代替它。
文本编辑器16、参数文件自动生成程序20和验证操作执行程序24都是计算机程序,并且,用作验证操作支持系统10中的模块。程序16、20和24,以及文件18和22被存储在存储介质如硬盘中。
用于管理员的输入装置12按照管理员的操作,接收将在模板文件18中描述的基本信息的输入。如图2所示,模板文件18包括指定测试组所需要的测试组基本信息181和指定测试实例所需要的测试实例基本信息182。测试实例基本信息182包括为多个测试实例所共有的测试实例共有信息183,以及因每个测试实例而异的多个测试实例差别信息184。由于测试实例基本信息182由多个测试实例共享,因此减小了模板文件18的数据规模。
以XML(可扩展标记语言)格式描述模板文件18。这是由于,数据是以文本格式构成的,并且,用于数据处理的API(应用程序接口)被标准化,因而XML便于处理。通过扩展XML的API,还可以按照分层管理的节点名和关于某个层次的位置信息(出现顺序),单独提取需要的数据。图3示出了模板文件18的例子。
如图3所示,在测试组基本信息181中,描述了生成参数文件22中的测试组文件(图4中的附图标记221)所需要的基本信息。在测试实例共有信息183中,描述了基本上为所有测试实例所共有的基本信息,具体地说,是包括验证操作的过程或测试条件的信息。在每个测试实例差别信息184中,描述了测试实例特有的信息,具体地说,是包括验证操作的过程或测试条件的差别信息(如增添信息、替代信息或删除信息)。
增添信息(图3中的<append>到</append>部分)是没有被包括在测试实例共有信息183中的信息,并且是要被增添到测试实例共有信息183中的信息。替代信息(图3中的<replace>到</replace>部分)是被包括在测试实例共有信息183中的信息,并且是要被替代的信息。删除信息是被包括在测试实例共有信息183中的信息,并且是要被删除的信息。
再次参照图1,用于验证人员的输入装置14按照验证人员的操作,接收指定除了测试实例以外的项目所需要的个别信息的输入,具体地说,是验证人员个别信息141和测试条件个别信息142。验证人员个别信息141是因每个验证人员而异的信息,并且,该信息与工作环境如工作目录有关。测试条件个别信息142是因每个测试阶段而异的信息,并且是用于表示作为验证目标的SOC的设计数据的位置的路径信息,并且,该信息与用于验证的测试模式(IP核单元测试模式、随机协作测试模式等)有关。
参数文件自动生成程序20通过从模板文件18中读取测试组基本信息181和测试实例基本信息182,并且将验证人员个别信息141和测试条件个别信息142增添到基本信息181和182中,生成验证操作所需的参数文件22。
如图4所示,参数文件22包括多个测试组文件221和多个测试实例信息文件222。由于针对每个执行型式(单元测试、协作测试等)对多个测试实例进行分组,因此,对应于多个执行型式,生成多个测试组文件221,然后,对应于每个测试组文件221,生成多个测试实例信息文件222。与模板文件18相似,参数文件22也是以XML格式描述的。
在每个测试组文件221中,描述了多个对应测试实例信息文件222的列表(尤其是用于表示每个测试实例信息文件222的位置的路径信息)和执行验证操作执行程序24所需的设置信息等。参数文件自动生成程序20通过从模板文件18中读取测试组基本信息181,并且将它复制到参数文件22,生成测试组文件221。
针对每个测试实例,生成测试实例信息文件222。在每个测试实例信息文件222中,描述了测试实例中的验证操作的过程。TOS26能够顺序或同时执行多个测试实例,并且,当对组合的多个测试实例进行集中编译时,能够生成一个测试代码。尽管利用一个测试代码执行一个HDL模拟导致事实上执行了多个测试实例,但是,这里认为是一个测试实例,因为它们与一个测试代码对应。
参数文件自动生成程序20通过从模板文件18中读取测试实例共有信息183和用于测试实例的测试实例差别信息184,并且,将用于测试实例的测试实例差别信息184增添到测试实例共有信息183中,生成用于测试实例的测试实例信息文件222。
如图5所示,每个测试实例信息文件222包括工作环境信息(路径信息)223、操作过程信息224、测试代码生成/模拟参数信息225和系统定义文件差别信息226。图6示出了测试实例信息文件222的例子。
在工作环境信息223中,描述了用于表示要作为验证目标的设计数据的位置的路径信息223(图6中的<chip>到</chip>部分)、用于表示生成测试代码所需的系统定义文件的位置的路径信息(图6中的<sdf>到</sdf>部分)、以及用于表示每个验证人员的工作目录的位置的路径信息(图6中的<work>到</work>部分)。
操作过程信息224由以下信息构成:测试代码生成之前的操作过程信息227、模拟之前的操作过程信息228和模拟之后的过程信息229。在每个操作过程信息227到229中,描述了诸如要复制的文件的复制源和复制目的地、要执行的外部程序(如由图6中的<exec>到</exec>中的“preprocess.pl”表达的脚本程序)以及其执行目录的信息。验证操作执行程序24按照这里描述的顺序,执行外部程序。
在测试代码生成/模拟参数信息225中,描述了要提供给TOS26的测试代码生成参数和要提供给HDL模拟器28的模拟参数。
在系统定义文件差别信息226中,描述了来自系统定义文件的差别信息,作为在生成与测试实例对应的测试代码的过程中,生成系统定义文件所需的基础。由于系统定义文件还包括测试代码生成参数等,因此,它可以被包括在测试代码生成/模拟参数信息225中,但是,由于它本身不是参数,而是系统定义文件的差别信息,因此,它与这里的测试代码生成/模拟参数信息225不同。
另外,在图6所示的测试实例信息文件222中,第8到第21行的<pre-compile>到</pre-compile>部分表示生成(编译)测试代码之前的操作过程。第9到第12行和第13到第16行的<filecopy>到</filecopy>部分表示在生成测试代码之前复制指定文件。第17到第20行的<exec>到</exec>部分表示生成测试代码之前执行的外部程序。通过改变这些部分,可以添加任何处理。此外,第11行中的$(CHIP)表示用上述的<chip>到</chip>部分代替这个部分,而第12行中的$(WORK)部分表示用上述的<work>到</work>部分代替这个部分。在本例中,例如,描述了将名为“preprocess.pl”的脚本程序复制到要执行的工作目录中。
再次参照图1,验证操作执行程序24在运行TOS26和HDL模拟器28时,根据参数文件22,自动执行验证操作。
以下将对上述的验证操作支持系统10的运行进行描述。
参照图1和7,输入装置12根据管理员的操作,接收基本信息(测试组基本信息181和测试实例基本信息182)输入(S1)。文本编辑器16生成包括输入的基本信息的模板文件18(S2)。
随后,输入装置14根据验证人员的操作,接收个别信息(验证人员个别信息141和测试条件个别信息142)输入(S3)。参数文件自动生成程序20通过从模板文件18中读取基本信息,并且将输入的个别信息增添到基本信息中,生成参数文件22。图8示出了其细节。
参照图8,参数文件自动生成程序20读取由输入装置14输入的验证人员个别信息141和测试条件个别信息142(S30),另外读取模板文件18(S31)。然后,参数文件自动生成程序20用读取的个别信息141和142代替模板文件18中的变量(如,图3中的$(PARM),$(BASE))(S32)。
随后,参数文件自动生成程序20从模板文件18中提取测试组基本信息181(S33),并且生成多个测试组文件221(S34)。
在生成了所有测试组文件221之后(在S35为YES),参数文件自动生成程序20从模板文件18中提取测试实例共有信息183(S36)。然后,参数文件自动生成程序20还应用模板文件18的删除信息,从而从测试实例共有信息183中删除预定信息(S37)。参数文件自动生成程序20还应用模板文件18的增添信息,从而将预定信息增添到测试实例共有信息183中(S38)。参数文件自动生成程序20还应用模板文件18的替代信息,从而用不同的预定信息替代测试实例共有信息183中的预定信息(S39)。由此,参数文件自动生成程序20生成测试实例信息文件222(S40)。
参数文件自动生成程序20重复上述的步骤S36到40,直到完成了生成所有测试实例信息文件222为止(S41)。
例如,如图9所示,在有两个测试实例的情况下,模板文件18包括一个测试实例共有信息183(TC)和两个测试实例差别信息184(T1,T2)。此外,在有三个验证人员的情况下,输入三条验证人员个别信息141,具体地说,是用于表示工作目录的位置的三个路径信息P1到P3。此外,当有两个设计数据时,输入两条测试条件个别信息142,具体地说,是用于表示设计数据的位置的两条路径信息D1和D2。在这种情况下,尽管参数文件自动生成程序20能够生成十二种测试实例信息文件222,但是,它实际上生成任意一个测试实例信息文件222并且将该文件存储在参数文件22中。
然后,验证操作执行程序24根据参数文件22,通过运行TOS26和HDL模拟器28,自动执行验证操作。图10示出了其细节。
参照图10,概括地说,验证操作执行程序24按顺序执行测试代码生成预处理S6、测试代码生成处理S54、模拟预处理S7、模拟处理S57和模拟后处理S8。
在测试代码生成预处理S6中,验证操作执行程序24从参数文件22中读取作为目标的一个测试实例信息文件222,由此根据其中的路径信息223,生成工作目录(S50)。随后,验证操作执行程序24根据测试实例信息文件222中的路径信息223和操作过程信息224,执行预定处理(<pre-compile>到</pre-compile>部分;例如将进行模拟所需的文件复制到工作目录)(S51)。在完成了所有预定处理之后(在S52为YES),验证操作执行程序24通过将测试实例信息文件222中的系统定义文件(SDF)差别信息226应用于被用作基础的系统定义文件,新生成系统定义文件230(S53)。
在测试代码生成预处理S6之后,验证操作执行程序24将生成的系统定义文件230以及测试实例信息文件222中的测试代码生成/模拟参数信息225提供给TOS26,并且,TOS26通过对它们进行编译,生成测试代码261(S54)。
接着,在模拟预处理S7中,验证操作执行程序24根据测试实例信息文件222中的路径信息223和操作过程信息224,执行预定处理(<pre-simulation>到</pre-simulation>部分;例如将指定文件复制到指定目录)(S55)。在完成了所有预定处理之后(在S56为YES),验证操作执行程序24进行到下一个步骤。
在完成模拟预处理S7之后,验证操作执行程序24将由TOS26生成的测试代码261作为输入,提供给HDL模拟器28,然后,执行模拟(S57)。
接着,在模拟后处理S8,验证操作执行程序24根据测试实例信息文件222中的路径信息223和操作过程信息224,执行预定处理(例如将指定文件复制到指定目录)(S58)。在完成了所有预定处理之后(在S59为YES),验证操作执行程序24进行到下一个步骤。
最后,根据由HDL模拟器28输出的结果文件281,对测试结果进行总结,并且,将模拟结果报告输出到报告目录(S60)。
再次参照图7,对每个测试阶段,验证操作支持系统10重复上述的S3到S5的处理。
如上所述,按照本发明的实施例,仅依据管理员输入测试组基本信息181和测试实例基本信息182,以利用文本编辑器16生成模板文件18,以及,每个验证人员输入验证人员个别信息141和测试条件个别信息142的事实,参数文件自动生成程序20为每个测试实例生成测试实例信息文件222,使TOS 26根据每个测试实例信息文件222生成测试代码261,并且,使HDL模拟器28执行模拟。结果,将包括生成测试代码261生成的一系列复杂的验证操作合并在一起,对于整个验证操作,允许整体自动化,而不是部分自动化。
此外,由于管理员在模板文件18中描述了验证操作的基本内容并对其进行集中管理,因此,每个验证人员不需要了解细节。此外,当需要对验证信息进行修改时,只通过管理员改变模板文件来进行修改,因此每个验证人员不需要了解操作内容的变化。例如,即使当要被HDL模拟器28读取的配置文件增加了一个时,每个验证人员也完全不需要对此加以了解。当模板文件18被更新时,每个验证人员仅通过重新生成参数文件22,就能够根据他/她自己的工作环境或测试条件得到参数文件22。
此外,由于测试实例基本信息182被分为测试实例共有信息183和测试实例差别信息184,因此,不需要对描述测试实例共有信息183进行重复,允许减少多余信息。此外,仅通过改变测试实例共有信息183的一部分,就可以将它反映到所有测试实例信息文件222。
此外,验证操作执行程序24对测试实例信息文件222中的各个部分不仅作为数据而且作为处理过程来进行处理。换句话说,测试实例信息文件222不仅用作数据文件,而且用作验证操作执行程序24的一部分。为此,对于每个测试实例,通过改变测试实例差别信息184,可以改变验证操作的内容。图11示出了其例子。
尽管已经示出了本发明的一个实施例,但是,本发明不限于上述实施例。虽然上述实施例的前提是,将所有验证操作支持系统10与编译器、例如在SOC设计承包人的一个营业场所中的TOS 26和HDL模拟器28一起建立,但是,也可以在建立SOC设计支持供应商中的文本编辑器16和参数文件自动生成程序20的同时,将用于管理员的输入装置12、用于验证人员的输入装置14和验证操作执行程序24与编译器、例如在SOC设计承包人的每个营业场所中的TOS 26和HDL模拟器28一起建立。在这种情况下,某个SOC设计支持供应商从每个SOC设计承包人得到基本信息和个别信息,并且,将由参数文件自动生成程序20生成的(产生的)参数文件22发送回每个SOC设计承包人。此外,不必将硬件资源和软件资源,如用于管理员的输入装置12、用于验证人员的输入装置14、文本编辑器16、模板文件18、参数文件自动生成程序20、参数文件22、验证操作执行程序24、TOS 26和HDL模拟器28建立在单个计算机上,而是可以将它们分别建立在与网络连接的多个计算机上。
尽管以上已经对本发明的实施例进行了描述,但是,上述实施例只是实现本发明的范例。因此,本发明不限于上述实施例,在不脱离本发明的精神的情况下,可以通过对上述实施例进行适当修改来实现本发明。

Claims (9)

1.一种验证操作支持系统,用于支持利用模拟器、通过一个或多个测试实例对一个或多个设计数据进行验证的验证操作,该系统包括:
基本信息输入装置,用于接收指定所述测试实例所需要的基本信息的输入;
模板文件生成装置,用于生成包括由所述基本信息输入装置输入的所述基本信息的模板文件;
个别信息输入装置,用于接收指定除所述测试实例以外的项目所需要的个别信息的输入;
参数文件生成装置,用于通过从所述模板文件中读取所述基本信息,并且将由所述个别信息输入装置输入的所述个别信息增添到所述基本信息中,生成所述验证操作所需要的参数文件;以及
验证操作执行装置,用于在运行所述模拟器时,按照所述参数文件执行所述验证操作,
其中,所述基本信息包括多个测试实例所共有的测试实例共有信息和因每个测试实例而异的多条测试实例差别信息。
2.如权利要求1所述的验证操作支持系统,其中,所述参数文件生成装置通过将与每个测试实例对应的所述测试实例差别信息增添到所述测试实例共有信息中,生成用于每个测试实例的测试实例信息文件,并且,所述参数文件包括与多个测试实例对应的多个测试实例信息文件。
3.如权利要求1所述的验证操作支持系统,其中,
所述参数文件包括与多个测试实例对应的多个测试实例信息文件,并且,所述个别信息包括用于表示要被验证的设计数据的位置的路径信息,并且,其中
所述参数文件生成装置通过增添由所述个别信息输入装置输入的路径信息,生成用于每个测试实例的测试实例信息文件,并且,每个测试实例信息文件包括所述路径信息。
4.如权利要求1所述的验证操作支持系统,其中,
每个测试实例信息文件包括描述在生成要提供给所述模拟器的测试代码之前要执行的操作以及在所述模拟器进行模拟之前和之后要执行的操作的操作过程信息,其中
所述验证操作执行装置包括:
用于在生成所述测试代码之前,执行在所述操作过程信息中描述的操作的装置,
用于使编译器生成所述测试代码的装置,
用于在进行模拟之前,执行在所述操作过程信息中描述的操作的装置,
用于使所述模拟器执行模拟的装置,以及
用于在进行模拟之后,执行在所述操作过程信息中描述的操作的装置。
5.一种验证操作支持方法,该方法可以由计算机执行,用于支持利用模拟器、通过一个或多个测试实例对一个或多个设计数据进行验证的验证操作,该方法包括如下步骤:
接收指定测试实例所需要的基本信息的输入;
生成包括输入的基本信息的模板文件;
接收指定除测试实例以外的项目所需要的个别信息的输入;
通过从所述模板文件中读取所述基本信息,并且将输入的个别信息增添到所述基本信息中,生成所述验证操作所需要的参数文件;以及
在运行所述模拟器时,按照所述参数文件执行所述验证操作,
其中,所述基本信息包括多个测试实例所共有的测试实例共有信息和因每个测试实例而异的多条测试实例差别信息。
6.如权利要求5所述的验证操作支持方法,其中,生成所述参数文件的步骤通过将与每个测试实例对应的测试实例差别信息增添到所述测试实例共有信息中,生成用于每个测试实例的测试实例信息文件,并且,所述参数文件包括与多个测试实例对应的多个测试实例信息文件。
7.如权利要求5所述的验证操作支持方法,其中,
所述参数文件包括与多个测试实例对应的多个测试实例信息文件,并且,所述个别信息包括用于表示要被验证的设计数据的位置的路径信息,并且,其中,
生成所述参数文件的步骤通过增添由所述个别信息输入装置输入的路径信息,生成用于每个测试实例的测试实例信息文件,并且每个测试实例信息文件包括所述路径信息。
8.如权利要求5所述的验证操作支持方法,其中,
每个测试实例信息文件包括描述在生成要提供给所述模拟器的测试代码之前要执行的操作以及在所述模拟器进行模拟之前和之后要执行的操作的操作过程信息,并且其中,
执行验证操作的步骤包括如下步骤:
在生成所述测试代码之前,执行在所述操作过程信息中描述的操作,
使编译器生成所述测试代码,
在进行模拟之前,执行在所述操作过程信息中描述的操作,
使所述模拟器执行模拟,以及
在进行模拟之后,执行在所述操作过程信息中描述的操作。
9.一种参数文件产生方法,该方法可以由计算机执行,用于支持利用模拟器、通过一个或多个测试实例对一个或多个设计数据进行验证的验证操作,该方法包括如下步骤:
接收指定测试实例所需要的基本信息的输入;
生成包括输入的基本信息的模板文件;
接收指定除所述测试实例以外的项目所需要的个别信息的输入;
通过从所述模板文件中读取所述基本信息并且将输入的个别信息增添到所述基本信息中,生成所述验证操作所需要的参数文件,
其中,所述基本信息包括多个测试实例所共有的测试实例共有信息和因每个测试实例而异的多条测试实例差别信息。
CNB2006101446890A 2005-12-16 2006-11-14 验证操作支持系统及其方法 Expired - Fee Related CN100483429C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2005371566 2005-12-16
JP2005371566A JP4140917B2 (ja) 2005-12-26 2005-12-26 検証作業支援システム及びその方法

Publications (2)

Publication Number Publication Date
CN1983288A CN1983288A (zh) 2007-06-20
CN100483429C true CN100483429C (zh) 2009-04-29

Family

ID=38165809

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2006101446890A Expired - Fee Related CN100483429C (zh) 2005-12-16 2006-11-14 验证操作支持系统及其方法

Country Status (3)

Country Link
US (1) US20070150249A1 (zh)
JP (1) JP4140917B2 (zh)
CN (1) CN100483429C (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009541871A (ja) * 2006-07-03 2009-11-26 ベイジン ファチ インフォメーション デジタル テクノロジー カンパニー リミテッド サービス証憑としての機器によるネットワークからの情報獲得の方法、機器及びシステム
US7917873B1 (en) * 2007-02-12 2011-03-29 Zocalo Tech, Inc. System and method for verification of integrated circuit design
JP2009181180A (ja) * 2008-01-29 2009-08-13 Advantest Corp プログラム生成ツールの検査プログラムおよびプログラム生成ツールの検査方法ならびにプログラム生成ツールの検査装置
CN102402628B (zh) * 2010-09-07 2016-03-09 无锡中感微电子股份有限公司 一种生成SoC验证平台的方法及系统
CN102622234B (zh) * 2012-03-07 2015-07-15 迈普通信技术股份有限公司 一种自动化测试用例的开发系统及开发方法
US9213613B2 (en) * 2012-11-16 2015-12-15 Nvidia Corporation Test program generator using key enumeration and string replacement
CN103150281B (zh) * 2013-03-28 2016-04-06 青岛中星微电子有限公司 总线互联模块的集成方法、装置以及验证方法和装置
CN117217163B (zh) * 2023-09-19 2024-05-28 上海灵动微电子股份有限公司 一种基于脚本的soc芯片的测试方法
CN117493168A (zh) * 2023-09-28 2024-02-02 中国长江电力股份有限公司 一种可离线测试的水利模型调用方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6453276B1 (en) * 1998-12-22 2002-09-17 Unisys Corporation Method and apparatus for efficiently generating test input for a logic simulator
CN1519703A (zh) * 2003-01-23 2004-08-11 英业达股份有限公司 可组合挂接的计算机多线程测试系统及其方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6353904B1 (en) * 1998-12-17 2002-03-05 Vlsi Technology, Inc. Method of automatically generating new test programs for mixed-signal integrated circuit based on reusable test-block templates according to user-provided driver file
US6681351B1 (en) * 1999-10-12 2004-01-20 Teradyne, Inc. Easy to program automatic test equipment
US6658633B2 (en) * 2001-10-03 2003-12-02 International Business Machines Corporation Automated system-on-chip integrated circuit design verification system
TW548562B (en) * 2002-01-16 2003-08-21 Springsoft Inc Method and system for drawing layout of process testing components
US7376876B2 (en) * 2004-12-23 2008-05-20 Honeywell International Inc. Test program set generation tool

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6453276B1 (en) * 1998-12-22 2002-09-17 Unisys Corporation Method and apparatus for efficiently generating test input for a logic simulator
CN1519703A (zh) * 2003-01-23 2004-08-11 英业达股份有限公司 可组合挂接的计算机多线程测试系统及其方法

Also Published As

Publication number Publication date
CN1983288A (zh) 2007-06-20
JP4140917B2 (ja) 2008-08-27
US20070150249A1 (en) 2007-06-28
JP2007172444A (ja) 2007-07-05

Similar Documents

Publication Publication Date Title
CN100483429C (zh) 验证操作支持系统及其方法
US6182245B1 (en) Software test case client/server system and method
CN106940428B (zh) 芯片验证方法、装置及系统
US5995736A (en) Method and system for automatically modelling registers for integrated circuit design
US6298319B1 (en) Incremental compilation of electronic design for work group
US7627843B2 (en) Dynamically interleaving randomly generated test-cases for functional verification
US7434101B2 (en) Highly specialized scenarios in random test generation
US7367006B1 (en) Hierarchical, rules-based, general property visualization and editing method and system
CN109189479B (zh) 一种用于处理器指令集的并行自动化验证方法
US7444257B2 (en) Generation of a testbench for a representation of a device
US20070061641A1 (en) Apparatus and method for generating test driver
JP2007012003A (ja) フィーチャ指向ソフトウェア製品ラインの開発環境を提供するシステム
US9047260B2 (en) Model-based testing of a graphical user interface
CN111859833B (zh) 可配置系统级验证环境构造方法、系统及介质
US6453450B1 (en) Timing diagram compiler and runtime environment for interactive generation of executable test programs for logic verification
CN111859834A (zh) 一种基于uvm的验证平台开发方法、系统、终端及存储介质
CN111382065B (zh) 基于测试模板的验证流程管理系统及其方法
US7949509B2 (en) Method and tool for generating simulation case for IC device
CN115935865A (zh) 一种可重构芯片的验证方法及平台
US7962796B2 (en) State testing device and methods thereof
JP2002304429A (ja) 集積回路有効化の方法と装置
Klammer et al. Testing Autogenerated OPC UA NodeSet Models for Product Variants in Industry
KR100656559B1 (ko) Bibd 방법론을 이용하는 프로그램 자동 개발 장치
JPH09265489A (ja) シミュレーション処理方法
US20070101226A1 (en) Method of test pattern generation in ic design simulation system

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20090429

Termination date: 20101114