用于配置数据格式化过程的方法和装置的制作方法

文档序号:6124188阅读:169来源:国知局
专利名称:用于配置数据格式化过程的方法和装置的制作方法
技术领域
本发明涉及用于配置数据格式化过程的方法和装置。
背景技术
数据格式化过程常常需要被配置。有时,配置值被存储在许多位置,并且被需要消耗配置值的不同的数据格式化代码片段所管理。在其他情况下,数据格式化过程的配置值中的一些或全部可被存储在配置文件中,并且随后被从配置文件中取回。

发明内容
在一个实施例中,一种用于配置数据格式化过程的方法,包括1)访问限定多个配置关键字(configuration key)和多个配置值之间的关联的一个或多个数据结构,并且为多个配置关键字中的每一个取回优先级最高的配置值,以及2)根据取回的多个配置关键字的配置值来配置数据格式化过程。多个配置值被存储在多个配置层中的一层或多层之中,多个配置层中的每一层向存储在其中的配置值赋予优先级。多个配置关键字中的至少一些的配置值可在多个配置层中的多层中同时指定。
在另一实施例中,一种用于配置数据格式化过程的装置包括计算机可读介质以及存储在计算机可读介质上的计算机可读代码。计算机可读代码可被配置为实现前一段中描述的方法。
在另一实施例中,一种用于配置数据格式化过程的装置包括计算机可读介质以及存储在计算机可读介质上的计算机可读代码。该计算机可读代码包括1)限定数据格式化过程的代码;2)限定用于存储数据格式化过程的配置值的一个或多个数据结构的代码;3)用于访问数据结构并为多个配置关键字中的每一个取回优先级最高的配置值的代码;以及4)用于根据取回的多个配置关键字的配置值来配置数据格式化过程的代码。存储在数据结构中的配置值对应于多个配置关键字,并且被存储在多个配置层中的一层或多层之中。多个配置层中的每一层向存储在其中的配置值赋予优先级;并且多个配置关键字中的至少一些的配置值可在多个配置层中的多层中同时指定。
还公开了其他实施例。


本发明的示例性实施例在附图中示出,附图中图1示出用于配置数据格式化过程的示例性方法;图2示出被图1所示的方法所访问的(一个或多个)数据结构的示例性实施例;以及图3示出存储图2所示的配置关键字和配置值的示例性的有用方式。
具体实施例方式
图1示出了用于配置数据格式化过程的示例性方法100。方法100包括访问限定多个配置关键字和多个配置值之间的关联的一个或多个数据结构,并且为多个配置关键字中的每一个取回优先级最高的配置值(参见块102)。在取回配置值期间或之后,根据取回的配置值配置数据格式化过程(参见块104)。
被方法100访问的(一个或多个)数据结构的示例性实施例在图2中示出。如图所示,(一个或多个)数据结构200包括多个配置层(即两个或更多个层,例如层202、204和206)。多个配置关键字(例如KEY1-KEY6)的配置值被存储在多个层202、204、206中的一个或多个之中。在一些情况下,可在配置层202、204、206中的多层之中同时指定一些或所有配置关键字的配置值。例如参见为KEY1指定的两个值(Va11a、Va11c)以及为KEY6指定的三个值(Va16a、Va16b、Va16c)。在其他情况下,可以只在配置层202、204、206中的一层之中指定一些配置关键字的配置值。例如参见为KEY3指定的值Va13a。
优选地,每个配置关键字的配置值是在(一个或多个)数据结构200中指定的。这样,在经由方法100访问(一个或多个)数据结构200之后,可为每个配置关键字(例如关键字KEY1-KEY6中的每一个)取回一个配置值。
(一个或多个)数据结构200中的配置层202、204、206中的每一层向存储在其中的配置值赋予一个优先级。例如,图2所示的默认层202可向其值(例如值Va11a、Va12a、Va13a、Va14a、Va15a、Va16a)赋予最低的优先级,而测试系统层204和被测器件(DUT)层206向其各自的值(例如系统层204中的值Va12b、Va14b、Va16b以及器件层206中的值Va11c、Va15c、Va16c)赋予顺序增高的优先级。从而,当方法100被用于访问(一个或多个)数据结构200并取回配置关键字(KEY1-KEY6)的值时,方法100可查看在DUT层206中是否存在特定配置关键字的值;如果没找到值,则方法100可继续查看系统层204,然后查看默认层202。如果在优先级较高的层中找到配置关键字的值,则不需要再检查优先级较低的(一个或多个)层。或者,可以按相反的顺序遍历这些层,其中当在优先级较高的层中找到相应值时则丢弃在优先级较低的层中找到的值。
例如,当方法100访问数据结构200以取回配置关键字KEY1-KEY6的值时,方法100可取回以下“最高优先级配置值”KEY1=Va11cKEY2=Va12bKEY3=Va13aKEY4=Va14bKEY5=Va15cKEY6=Va16c在方法100的一个实施例中,存储在(一个或多个)数据结构200的默认层202中的值可由数据格式化软件中包含的预置(preset)来确定;存储在测试系统层204中的值可由为测试系统提供的预置来确定;而存储在DUT层206中的值可由为特定DUT提供的预置来确定。在其他实施例中,一些或所有配置值可以由用户指定。但是,最好预置至少一些配置值,以确保对于所有配置关键字都存在一个配置值。在一个实施例中,这可通过在默认层(例如层202)中为所有配置关键字预置配置值,然后允许用户在优先级更高的层中(例如在测试系统和DUT层204、206中)指定不同配置值来实现。
虽然用户在一些情况下可能被授权改变默认配置值,但这一般不是优选地,除非用户始终被强迫替换默认值(而不是删除默认值)。
图3示出了用于存储配置关键字及其值的一种有用的方式。如图所示,层300、302、304中存储了配置值的每一层由单独的数据结构表示,例如由单独的配置文件表示。例如,图3示出了与软件默认层300、客户的测试系统层302和客户的DUT层304相对应的配置文件。在这些配置文件中的每一个之内,配置关键字可被表示为树结构(例如,“key1=value1”、“key1.key2=value2”、“key1.key3=value3”、“key1.key3.key4=value4”)。
优选地,所有的配置文件都被表示为单个“主”配置树结构的分支。但是,并非主配置树的所有分支都需要被表示在每个配置文件中。即,如果在特定配置层300、302、304中没有为特定配置关键字指定值,则代表该特定配置关键字的分支不需要被包括在该特定层中。
如图3所示,在配置文件的一行中可引用多个配置树分支。例如,“软件默认层”300中的行“formatter.stdf.<any instance>.item1=value1”指示当在电路测试环境中采用多个STDF(标准测试数据格式)格式化器时,应当使用其相应的配置关键字“item1”的“value1”来配置每个STDF格式化器。但是,“客户的测试系统层”302中的行“formatter.stdf.instanceName2.item1=value3a”却指示对于名称为“instanceName2”的STDF格式化器,配置关键字“item1”的值应当变为“value3a”而不是“value1”。
当多个配置关键字中每一个的最高优先级配置值被取回时,它们可被存储在反映图3所示的各种配置文件300、302、304的格式的存储器内配置树或配置文件中。
在一个实施例中,配置关键字被填充到存储器内配置树中,作为双端队列(deque)的节点。双端队列(double-ended queue)是结合了队列和堆栈的属性的数据结构。与堆栈相似,项目(item)可被推入双端队列中。但是,与队列相似,可从双端队列的一侧提取推入双端队列中的最后一个项目,并且从双端队列的另一侧提取推入双端队列中的第一个项目。
优选地,存储器内配置树具有占位符(placeholder)根节点。这样,所有可能的测试系统、DUT和其他变量的所有配置关键字都可在单个配置树中指定。
在一个实施例中,方法100可被包含在存储在计算机可读介质上的计算机可读代码中,并由该代码实现。计算机可读介质例如可包括位于一个位置或分布在网络上的任何数目或组合的固定或可移动介质(例如一个或多个固定盘、随机访问存储器(RAM)、只读存储器(ROM)或致密盘)。计算机可读代码一般将包括软件,但也可包括固件或编程电路。
除了用于执行方法100的动作102、104的代码之外,实现方法100的计算机可读代码还可包括1)限定数据格式化过程的代码,2)限定存储数据格式化过程的配置值的一个或多个数据结构200的代码,以及3)限定用于接收存储在数据结构200中的配置值中的一些或全部的用户界面(例如图形用户界面(GUI))的代码。
这里公开的方法和装置可用于许多情境中。但是,在结合测试数据格式化过程,包括电路测试数据格式化过程(例如片上系统(SOC)测试数据格式化过程)时,它们尤其有用。
取决于其实现方式,这里公开的方法和装置有用的原因可能在于1)它们提供了用于存储配置值的灵活结构,2)它们提供了用于指定“默认”配置值的便利手段,3)配置层的数目可以更多或更少,并且配置层可以很容易地被交换(例如,当测试不同的DUT时,可以用与当前被测试的器件相对应的DUT层来替换DUT层206、304)。
权利要求
1.一种用于配置数据格式化过程的方法,包括访问限定多个配置关键字和多个配置值之间的关联的一个或多个数据结构,并且为所述多个配置关键字中的每一个取回优先级最高的配置值,其中所述多个配置值被存储在多个配置层中的一层或多层之中,所述多个配置层中的每一层向存储在其中的配置值赋予优先级,并且所述多个配置关键字中的至少一些的配置值可在所述多个配置层中的多层中同时指定;以及根据取回的所述多个配置关键字的配置值来配置数据格式化过程。
2.如权利要求1所述的方法,其中所述多个配置层包括默认层、测试系统层和被测器件层,并且所述默认层具有比所述测试系统层和所述被测器件层低的优先级。
3.如权利要求2所述的方法,其中所述测试系统层具有比所述被测器件层低的优先级。
4.如权利要求1所述的方法,其中所述多个配置层包括具有所述多个配置层的最低优先级的默认层,所述默认层存储所述多个配置关键字中每一个的配置值。
5.如权利要求1所述的方法,其中所述数据格式化过程是测试数据格式化过程。
6.如权利要求1所述的方法,其中所述数据格式化过程是片上系统测试数据格式化过程。
7.一种用于配置数据格式化过程的装置,包括计算机可读介质;以及存储在所述计算机可读介质上的计算机可读代码,包括用于访问限定多个配置关键字和多个配置值之间的关联的一个或多个数据结构,并且为所述多个配置关键字中的每一个取回优先级最高的配置值的代码,其中所述多个配置值被存储在多个配置层中的一层或多层之中,所述多个配置层中的每一层向存储在其中的配置值赋予优先级,并且所述多个配置关键字中的至少一些的配置值可在所述多个配置层中的多层中同时指定;以及用于根据取回的所述多个配置关键字的配置值来配置数据格式化过程的代码。
8.如权利要求7所述的装置,其中所述多个配置层包括默认层、测试系统层和被测器件层,并且所述默认层具有比所述测试系统层和所述被测器件层低的优先级。
9.如权利要求8所述的装置,其中所述测试系统层具有比所述被测器件层低的优先级。
10.如权利要求7所述的装置,其中所述多个配置层包括具有所述多个配置层的最低优先级的默认层,所述默认层存储所述多个配置关键字中每一个的配置值。
11.如权利要求7所述的装置,其中所述多个配置关键字是树结构。
12.如权利要求7所述的装置,其中所述数据格式化过程是测试数据格式化过程。
13.如权利要求7所述的装置,其中所述数据格式化过程是片上系统测试数据格式化过程。
14.一种用于配置数据格式化过程的装置,包括计算机可读介质;以及存储在所述计算机可读介质上的计算机可读代码,包括限定数据格式化过程的代码;限定用于存储所述数据格式化过程的配置值的一个或多个数据结构的代码,其中所述配置值对应于多个配置关键字,所述配置值被存储在多个配置层中的一层或多层之中,所述多个配置层中的每一层向存储在其中的配置值赋予优先级,并且所述多个配置关键字中的至少一些的配置值可在所述多个配置层中的多层中同时指定;用于访问所述数据结构并为所述多个配置关键字中的每一个取回优先级最高的配置值的代码;以及用于根据取回的所述多个配置关键字的配置值来配置所述数据格式化过程的代码。
15.如权利要求14所述的装置,其中所述多个配置层包括默认层、测试系统层和被测器件层,并且所述默认层具有比所述测试系统层和所述被测器件层低的优先级。
16.如权利要求15所述的装置,其中所述测试系统层具有比所述被测器件层低的优先级。
17.如权利要求15所述的装置,其中存储在所述默认层中的配置值不能由用户指定,并且存储在除所述默认层外的配置层中的至少一些配置值可由用户指定。
18.如权利要求14所述的装置,其中所述多个配置层包括具有所述多个配置层的最低优先级的默认层,所述默认层存储所述多个配置关键字中每一个的配置值。
19.如权利要求14所述的装置,其中所述多个配置关键字是树结构。
20.如权利要求19所述的装置,其中所述多个配置关键字均是单个配置树结构的分支。
21.如权利要求19所述的装置,其中所述多个配置关键字是由两端队列的节点限定的。
22.如权利要求14所述的装置,其中所述计算机可读介质还包括限定用于接收所述配置值的用户界面的代码。
23.如权利要求14所述的装置,其中所述数据格式化过程是测试数据格式化过程。
24.如权利要求14所述的装置,其中所述数据格式化过程是片上系统测试数据格式化过程。
全文摘要
在一个实施例中,访问限定多个配置关键字和多个配置值之间的关联的一个或多个数据结构,并且为多个配置关键字中的每一个取回优先级最高的配置值。多个配置值被存储在多个配置层中的一层或多层之中,多个配置层中的每一层向存储在其中的配置值赋予优先级。多个配置关键字中的至少一些的配置值可在多个配置层中的多层中同时指定。根据取回的多个配置关键字的配置值来配置数据格式化过程。还公开了其他实施例。
文档编号G01R31/319GK101013428SQ200710002749
公开日2007年8月8日 申请日期2007年1月30日 优先权日2006年1月31日
发明者布莱恩·F·卡宾特, 卡利·康纳利, 瑞德·哈郝 申请人:韦瑞吉(新加坡)私人有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1