CN101859330B - 验证集成电路效能模型的方法 - Google Patents

验证集成电路效能模型的方法 Download PDF

Info

Publication number
CN101859330B
CN101859330B CN2009101318928A CN200910131892A CN101859330B CN 101859330 B CN101859330 B CN 101859330B CN 2009101318928 A CN2009101318928 A CN 2009101318928A CN 200910131892 A CN200910131892 A CN 200910131892A CN 101859330 B CN101859330 B CN 101859330B
Authority
CN
China
Prior art keywords
scope
request
accumulated
waiting time
piecewise linear
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
Application number
CN2009101318928A
Other languages
English (en)
Other versions
CN101859330A (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.)
Nvidia Corp
Original Assignee
Nvidia 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 Nvidia Corp filed Critical Nvidia Corp
Priority to CN2009101318928A priority Critical patent/CN101859330B/zh
Priority to US12/638,865 priority patent/US8489377B2/en
Publication of CN101859330A publication Critical patent/CN101859330A/zh
Application granted granted Critical
Publication of CN101859330B publication Critical patent/CN101859330B/zh
Active 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/30Circuit design
    • G06F30/32Circuit design at the digital level
    • G06F30/33Design verification, e.g. functional simulation or model checking
    • G06F30/3323Design verification, e.g. functional simulation or model checking using formal methods, e.g. equivalence checking or property checking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/32Circuit design at the digital level
    • G06F30/33Design verification, e.g. functional simulation or model checking

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)
  • Complex Calculations (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)
  • Tests Of Electronic Circuits (AREA)

Abstract

一种验证集成电路效能模型的方法,包含:取得存取存储器的请求的统计数目与其对应等待时间值;根据统计数目与对应的等待时间值产生等待时间的函数;将随机数代入等待时间的函数以取得等待时间值;根据所取得的等待时间值验证集成电路效能模型的逻辑。

Description

验证集成电路效能模型的方法
技术领域
本发明是关于集成电路的计算器辅助设计;特别是,关于在一存储器等待时间仿真环境中对集成电路效能模型进行验证。
背景技术
当处理器发送请求至存储器装置,例如动态随机存取存储器(DRAM),处理器在一段时间之后,才能读取到存储器装置的响应,这种情况称为“等待时间(latency)”。举例来说,处理器发出读取请求到高速缓冲寄存器(Cache)***,然后在一段时间后,高速缓冲寄存器***产生响应,并将所请求的数据放在总线,而在等待时间结束后,处理器可从总线中取得所要的数据。如果处理器在等待时间结束前就试着要取得数据,则处理器可能取得不正确或是无效的数据。因此在设计处理器时,需要将存储器的等待时间一并考虑。
在先前技术中,处理器或是其它集成电路的计算器辅助设计需要许多的人力与物力,来验证集成电路模型是否是正确无误。举例来说,集成电路中定义功能需求的架构模型,一般是先由一个工程小组来负责编写。接着另一个工程小组负责集成电路的寄存器传输级(register transfer level)模型,并以架构模型来验证寄存器传输级模型的逻辑或是功能。在先前技术中,乃是利用“固定等待时间”模型(或称为仿真环境)来进行验证,其中存储器的等待时间被设定为固定值。但实际上,等待时间会因为种种的因素而变动,例如不同种类的请求会有不同的等待时间。因此以“固定等待时间”所进行的验证可能是不准确的。
根据以上所述,因此需要一种更准确且动态的等待时间模型,来进行集成电路的验证。
发明内容
本发明提供一种验证集成电路效能模型的方法、一种设计集成电路的方法、以及一种动态仿真存储器等待时间以设计集成电路的方法。
在一实施例中,本发明提出一种验证集成电路效能模型的方法,包含:取得存取存储器的请求的统计数目与其对应等待时间值;根据统计数目与对应的等待时间值产生等待时间的函数;将随机数代入等待时间的函数以取得一等待时间值;根据所取得的等待时间值验证集成电路效能模型的逻辑。
在另一实施例中,本发明提出一种设计集成电路的方法,包含编写集成电路的源编码;产生集成电路的效能模型;以及验证效能模型。验证效能模型的步骤还包含:取得存取存储器的请求的统计数目与其对应等待时间值;根据统计数目与对应的等待时间值产生等待时间的函数;将随机数代入等待时间的函数以取得一等待时间值;根据所取得的等待时间值验证效能模型的逻辑。
在又一实施例中,本发明提出一种动态仿真存储器等待时间以设计集成电路的方法,包含编写该集成电路的源编码;产生集成电路的效能模型;以及验证效能模型。验证效能模型的步骤还包含:取得存取存储器的请求的统计数目与其对应等待时间值;根据统计数目与对应的等待时间值产生等待时间的函数;将一随机数代入等待时间的函数以取得一等待时间值;将另一随机数代入等待时间的函数以取得另一等待时间值;根据所取得的等待时间值验证效能模型的逻辑。
通过以下的较佳实施例的叙述并配合图式说明,本发明的目的、特征与优点将更为清楚。
附图说明
图1为本发明实施例设计集成电路的方法流程图;
图2显示本发明实施例的统计数据;以及
图3a-3d显示本发明实施例的分段线形函数。
具体实施方式
图1显示本发明一实施例中设计集成电路(例如图形处理单元(GPU))的流程图。在步骤100,利用例如C++的编程语言编写集成电路的源编码,接着建立寄存器传输级(RTL)的效能模型。在集成电路的设计中,寄存器传输级的描述是一种描述同步数字电路运作的方式。在寄存器传输级的设计中,电路的行为是由硬件寄存器间的信号流动(或是数据搬移)来定义,而通过这些信号来进行逻辑操作。
在步骤102中,取得统计数据,例如存取存储器的请求的统计请求数目与其对应等待时间值,以建立一存储器等待时间分布模型。图2显示存储器等待时间分布模型的范例,其中X轴代表以频率(Clk)来表示的等待时间值,Y轴则代表请求数目。需说明的是,本发明中的统计请求数目与等待时间值可以从一真实***的历史数据中取得,或是如同图2范例中,由计算器仿真来产生。此外需说明的是,统计请求数目可只针对某一种类的请求,例如读取请求或是写入请求,但在其它范例中,所取得的统计请求数目与请求的种类无关。
从图2范例中所显示的统计数据,假设全部共有2000个请求,而其等待时间值的范围从600Clks到900Clks。整个等待时间值的范围(也就是600-900Clks)可被细分为600-700Clks、700-800Clks、800-900Clks。而在600-700Clks这个范围中,累积有300个请求,占全部请求的15%;在700-800Clks这个范围中,累积有700个请求,占全部请求的35%;在800-900Clks这个范围中,累积有1000个请求,占全部请求的50%。需说明的是,在其它实施例中,因应不同的使用目的,整个等待时间值的范围可被细分为任何数目、相等或不等、的“子范围”,而在相应地,每个“子范围”中所累积的请求或其对应全部请求的比例也会跟着改变。
在步骤104中,根据在此细分范围(也就是600-700Clks、700-800Clks、800-900Clks其中之一)中所累积的请求,对每一个细分的范围(或称“子范围”)分别产生一预定函数。较佳地,此预定函数为分段线性函数(piecewiselinear function),但本发明其它实施例亦可利用连续、不连续、线性、或非线性函数来描述等待时间的分布状况。
在此范例中,还用每一细分范围中所累积的请求相对于全部请求的比例,来决定分段线性函数的区段。举例来说,在600-700Clks这个范围中所累积的请求,占全部请求的15%,因此600-700Clks这个范围的分段线性函数便建立在0与0.15之间。依此,700-800Clks这个范围的分段线性函数便建立在0.15与0.5之间;800-900Clks这个范围的分段线性函数便建立在0.5与1之间。此范例的分段线性函数条列于下并显示于图3a,其中X轴代表相对于全部请求的累积比例,Y轴代表以频率(Clk)来表示的等待时间值。
Y=X*(700-600)/(0.15-0.0)+600,其中X在0与0.15之间;
Y=(X-0.15)*(800-700)/(0.5-0.15)+700,其中X在0.15与0.5之间;
Y=(X-0.5)*(900-800)/(1.0-0.5)+800,其中X在0.5与1之间。
在步骤106中,从0到1之间选择一随机数,且将此随机数代入上述三个分段线性函数其中之一,以取得Y轴的等待时间值。举例来说,如果随机数为0.1,其位于0与0.15间的范围中,则此随机数0.1被代入第一个分段线性函数,而取得等待时间值为666.67Clks。如果随机数为0.75,其位于0.5与1间的范围中,则此随机数0.1被代入第三个分段线性函数,而取得等待时间值为850Clks。根据此方法,存储器存取的请求能够以动态的方式进行仿真,且更接近真实的状况。在步骤108中,一或多个等待时间值被用来验证集成电路效能模型的逻辑。
需说明的是,在上述步骤104中,并非一定要采用每一细分范围中所累积的请求相对于全部请求的比例。在其它实施例中,分段线性函数的区段可直接用统计请求数目来决定,而相应地,在步骤106中的随机数将从整个统计请求数目的范围中来挑选。
此外,需说明的是,上述步骤102至106可通过软件产品来实施,此软件产品可由编程语言例如“C++”来编写,且可在个人计算器或工作站上执行。执行步骤102至106的软件产品可以是独立的产品,或是仅为功能模块,而需与其它功能模块(例如用来分析排队行为的模块)结合为完整的用于验证的软件产品。
在另一实施例中,统计数据亦如图2所示,假设全部共有2000个请求,而其等待时间值的范围从600Clks到900Clks。整个等待时间值的范围(也就是600-900Clks)可被细分为600-750Clks与750-900Clks两个相等的范围。而在600-750Clks这个范围中,累积有650个请求,占全部请求的32.5%;在750-900Clks这个范围中,累积有1350个请求,占全部请求的67.4%。
在步骤104中,根据在600-750Clks与750-900Clks两个范围中所累积的请求,分别产生分段线性函数。如先前所述,还用每一细分范围中所累积的请求相对于全部请求的比例,来决定分段线性函数的区段。举例来说,在600-750Clks这个范围中所累积的请求,占全部请求的32.5%,因此600-750Clks这个范围的分段线性函数便建立在0与0.325之间。依此,750-900Clks这个范围的分段线性函数便建立在0.325与1之间。此范例的分段线性函数条列于下并显示于图3b。
Y=X*(750-600)/(0.325-0.0)+600,其中X在0与0.325之间;
Y=(X-0.325)*(900-750)/(1-0.325)+750,其中X在0.325与1之间。
在步骤106中,如果随机数为0.1,其位于0与0.325间的范围中,则此随机数0.1被代入第一个分段线性函数,而取得等待时间值为646.15Clks。如果随机数为0.75,其位于0.325与1间的范围中,则此随机数0.75被代入第二个分段线性函数,而取得等待时间值为844.44Clks。
在又一实施例中,统计数据亦如图2所示,假设全部共有2000个请求,而其等待时间值的范围从600Clks到900Clks。整个等待时间值的范围(也就是600-900Clks)可被细分为600-700Clks与700-900Clks两个不相等的范围。而在600-700Clks这个范围中,累积有300个请求,占全部请求的15%;在700-900Clks这个范围中,累积有1700个请求,占全部请求的85%。
在步骤104中,根据在600-700Clks与700-900Clks两个范围中所累积的请求,分别产生分段线性函数。如先前所述,还用每一细分范围中所累积的请求相对于全部请求的比例,来决定分段线性函数的区段。举例来说,在600-700Clks这个范围中所累积的请求,占全部请求的15%,因此600-700Clks这个范围的分段线性函数便建立在0与0.15之间。依此,700-900Clks这个范围的分段线性函数便建立在0.15与1之间。此范例的分段线性函数条列于下并显示于图3c。
Y=X*(700-600)/(0.15-0.0)+600,其中X在0与0.15之间;
Y=(X-0.15)*(900-700)/(1-0.15)+700,其中X在0.15与1之间。
在步骤106中,如果随机数为0.1,其位于0与0.15间的范围中,则此随机数0.1被代入第一个分段线性函数,而取得等待时间值为666.67Clks。如果随机数为0.75,其位于0.15与1间的范围中,则此随机数0.75被代入第二个分段线性函数,而取得等待时间值为841.18Clks。
在另一实施例中,统计数据亦如图2所示,但等待时间值落在700-800Clks范围内的请求被忽略不计,因此全部共有1300个请求,而其等待时间值的范围从600Clks到700Clks以及从800Clks到900Clks。而在600-700Clks这个范围中,累积有300个请求,占全部请求的23.1%;在800-900Clks这个范围中,累积有1000个请求,占全部请求的76.9%。
在步骤104中,根据在600-700Clks与800-900Clks两个范围中所累积的请求,分别产生分段线性函数。如先前所述,还用每一细分范围中所累积的请求相对于全部请求的比例,来决定分段线性函数的区段。举例来说,在600-700Clks这个范围中所累积的请求,占全部请求的23.1%,因此600-700Clks这个范围的分段线性函数便建立在0与0.231之间。依此,800-900Clks这个范围的分段线性函数便建立在0.231与1之间。此范例的分段线性函数条列于下并显示于图3d。
Y=X*(700-600)/(0.231-0.0)+600,其中X在0与0.231之间;
Y=(X-0.231)*(900-800)/(1-0.231)+800,其中X在0.231与1之间。
在步骤106中,如果随机数为0.1,其位于0与0.231间的范围中,则此随机数0.1被代入第一个分段线性函数,而取得等待时间值为643.29Clks。如果随机数为0.75,其位于0.231与1间的范围中,则此随机数0.75被代入第二个分段线性函数,而取得等待时间值为867.49Clks。
虽然本发明已以实施例揭露如上,然其并非用以限定本发明,任何具有本发明所属技术领域的通常知识者,在不脱离本发明的精神和范围内,当可作各种更动与润饰,并可思揣其它不同的实施例,因此本发明的保护范围当视所附权利要求范围所界定者为准。

Claims (20)

1.一种验证集成电路效能模型的方法,包含:
(a)取得存取存储器的请求的统计数目与其对应等待时间值;
(b)根据该统计数目与该对应等待时间值产生至少一等待时间的函数;
(c)将一随机数代入该等待时间的函数以取得一等待时间值;以及
(d)根据所取得的等待时间值验证该集成电路效能模型的逻辑。
2.根据权利要求1所述的方法,其中该等待时间的函数为分段线性函数。
3.根据权利要求2所述的方法,其中步骤(a):在该对应等待时间值的范围内决定至少一第一范围与一第二范围,以及导出在该第一范围内所累积的请求的第一请求数目与在该第二范围内所累积的请求的第二请求数目。
4.根据权利要求3所述的方法,其中步骤(b):根据该第一请求数目产生该第一范围的第一分段线性函数,以及根据该第二请求数目产生该第二范围的第二分段线性函数。
5.根据权利要求4所述的方法,其中该第一范围与该第二范围不相等。
6.根据权利要求4所述的方法,其中该第一范围与该第二范围不相邻。
7.根据权利要求4所述的方法,其中另有请求累积在该第一范围与该第二范围以外的第三范围。
8.根据权利要求4所述的方法,其中从该统计数目的范围中选择该随机数。
9.根据权利要求4所述的方法,其中该第一范围内所累积的请求与在该第二范围内所累积的请求合计为一总和,而步骤(a):导出在该第一范围内所累积的请求相对于该总和的第一比例,以及导出在该第二范围内所累积的请求相对于该总和的第二比例;
其中步骤(b)还以该第一比例决定该第一分段线性函数的区段,以该第二比例决定该第二分段线性函数的区段。
10.根据权利要求9所述的方法,其中从0至1之间选择该随机数。
11.一种设计集成电路的方法,包含:
编写该集成电路的源编码;
产生该集成电路的效能模型;以及
验证该效能模型,该验证包含:
(a)取得存取存储器的请求的统计数目与其对应等待时间值;
(b)根据该统计数目与该对应等待时间值产生至少一等待时间的函数;
(c)将一随机数代入该等待时间的函数以取得一等待时间值;以及
(d)根据所取得的等待时间值验证该效能模型的逻辑。
12.根据权利要求11所述的方法,其中该等待时间的函数为分段线性函数。
13.根据权利要求12所述的方法,其中步骤(a):在该对应等待时间值的范围内决定至少一第一范围与一第二范围,以及导出在该第一范围内所累积的请求的第一请求数目与在该第二范围内所累积的请求的第二请求数目。
14.根据权利要求13所述的方法,其中步骤(b):根据该第一请求数目产生该第一范围的第一分段线性函数,以及根据该第二请求数目产生该第二范围的第二分段线性函数。
15.根据权利要求14所述的方法,其中该第一范围内所累积的请求与在该第二范围内所累积的请求合计为一总和,而步骤(a):导出在该第一范围内所累积的请求相对于该总和的第一比例,以及导出在该第二范围内所累积的请求相对于该总和的第二比例;
其中步骤(b)还以该第一比例决定该第一分段线性函数的区段,以该第二比例决定该第二分段线性函数的区段。
16.一种动态仿真存储器等待时间以设计集成电路的方法,包含:
编写该集成电路的源编码;
产生该集成电路的效能模型;以及
验证该效能模型,该验证包含:
(a)取得存取存储器的请求的统计数目与其对应等待时间值;
(b)根据该统计数目与该对应等待时间值产生至少一等待时间的函数;
(c)将一随机数代入该等待时间的函数以取得一等待时间值;
(d)将另一随机数代入该等待时间的函数以取得另一等待时间值;以及
(e)根据所取得的等待时间值验证该效能模型的逻辑。
17.根据权利要求16所述的方法,其中该等待时间的函数为分段线性函数。
18.根据权利要求17所述的方法,其中步骤(a):在该对应等待时间值的范围内决定至少一第一范围与一第二范围,以及导出在该第一范围内所累积的请求的第一请求数目与在该第二范围内所累积的请求的第二请求数目。
19.根据权利要求18所述的方法,其中步骤(b):根据该第一请求数目产生该第一范围的第一分段线性函数,以及根据该第二请求数目产生该第二范围的第二分段线性函数。
20.根据权利要求19所述的方法,其中该第一范围内所累积的请求与在该第二范围内所累积的请求合计为一总和,而步骤(a):导出在该第一范围内所累积的请求相对于该总和的第一比例,以及导出在该第二范围内所累积的请求相对于该总和的第二比例;
其中步骤(b)还以该第一比例决定该第一分段线性函数的区段,以该第二比例决定该第二分段线性函数的区段。
CN2009101318928A 2009-04-09 2009-04-09 验证集成电路效能模型的方法 Active CN101859330B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN2009101318928A CN101859330B (zh) 2009-04-09 2009-04-09 验证集成电路效能模型的方法
US12/638,865 US8489377B2 (en) 2009-04-09 2009-12-15 Method of verifying the performance model of an integrated circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2009101318928A CN101859330B (zh) 2009-04-09 2009-04-09 验证集成电路效能模型的方法

Publications (2)

Publication Number Publication Date
CN101859330A CN101859330A (zh) 2010-10-13
CN101859330B true CN101859330B (zh) 2012-11-21

Family

ID=42935068

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2009101318928A Active CN101859330B (zh) 2009-04-09 2009-04-09 验证集成电路效能模型的方法

Country Status (2)

Country Link
US (1) US8489377B2 (zh)
CN (1) CN101859330B (zh)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0453394A2 (en) * 1990-04-18 1991-10-23 International Business Machines Corporation Dynamic process for the generation of biased pseudo-random test patterns for the functional verification of hardware designs
CN1940944A (zh) * 2005-09-29 2007-04-04 上海奇码数字信息有限公司 电路状态扫描链、数据采集***和仿真验证方法

Family Cites Families (55)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4063308A (en) * 1975-06-27 1977-12-13 International Business Machines Corporation Automatic clock tuning and measuring system for LSI computers
US5276858A (en) * 1991-12-26 1994-01-04 Intel Corporation Memory controller with integrated delay line circuitry
US5643086A (en) * 1995-06-29 1997-07-01 Silicon Gaming, Inc. Electronic casino gaming apparatus with improved play capacity, authentication and security
US6016474A (en) * 1995-09-11 2000-01-18 Compaq Computer Corporation Tool and method for diagnosing and correcting errors in a computer program
US5752062A (en) * 1995-10-02 1998-05-12 International Business Machines Corporation Method and system for performance monitoring through monitoring an order of processor events during execution in a processing system
US5815154A (en) * 1995-12-20 1998-09-29 Solidworks Corporation Graphical browser system for displaying and manipulating a computer model
US5978484A (en) * 1996-04-25 1999-11-02 Microsoft Corporation System and method for safety distributing executable objects
US6088774A (en) * 1996-09-20 2000-07-11 Advanced Memory International, Inc. Read/write timing for maximum utilization of bidirectional read/write bus
US5757919A (en) * 1996-12-12 1998-05-26 Intel Corporation Cryptographically protected paging subsystem
US6330008B1 (en) * 1997-02-24 2001-12-11 Torrent Systems, Inc. Apparatuses and methods for monitoring performance of parallel computing
JP4739465B2 (ja) * 1997-06-09 2011-08-03 インタートラスト テクノロジーズ コーポレイション ソフトウェアセキュリティを増強するための混乱化技術
US6771264B1 (en) * 1998-08-20 2004-08-03 Apple Computer, Inc. Method and apparatus for performing tangent space lighting and bump mapping in a deferred shading graphics processor
US6438670B1 (en) * 1998-10-02 2002-08-20 International Business Machines Corporation Memory controller with programmable delay counter for tuning performance based on timing parameter of controlled memory storage device
US6362825B1 (en) * 1999-01-19 2002-03-26 Hewlett-Packard Company Real-time combination of adjacent identical primitive data sets in a graphics call sequence
US6157618A (en) * 1999-01-26 2000-12-05 Microsoft Corporation Distributed internet user experience monitoring system
US6378066B1 (en) * 1999-02-04 2002-04-23 Sun Microsystems, Inc. Method, apparatus, and article of manufacture for developing and executing data flow programs, and optimizing user input specifications
US7383205B1 (en) * 1999-03-27 2008-06-03 Microsoft Corporation Structure of a digital content package
US6901582B1 (en) * 1999-11-24 2005-05-31 Quest Software, Inc. Monitoring system for monitoring the performance of an application
JP2001325103A (ja) * 2000-05-16 2001-11-22 Denso Corp シミュレータ作成方法、シミュレータ作成装置およびシミュレータの作成支援方法
US6684314B1 (en) * 2000-07-14 2004-01-27 Agilent Technologies, Inc. Memory controller with programmable address configuration
KR100432218B1 (ko) * 2001-07-28 2004-05-22 삼성전자주식회사 데이타 액세스 타이밍을 조정하는 듀얼 포트 메모리콘트롤러
US6424198B1 (en) * 2001-08-09 2002-07-23 International Business Machines Corporation Memory clock generation with configurable phase advance and delay capability
US6943800B2 (en) * 2001-08-13 2005-09-13 Ati Technologies, Inc. Method and apparatus for updating state data
US20030043022A1 (en) * 2001-08-31 2003-03-06 Burgan John M. Messaging system providing message redundancy reduction
US7047519B2 (en) * 2001-09-26 2006-05-16 International Business Machines Corporation Dynamic setting of breakpoint count attributes
US7749076B2 (en) * 2002-09-13 2010-07-06 Bally Gaming, Inc. System and method for an alterable storage media in a gaming machine
US6779096B1 (en) * 2001-09-29 2004-08-17 Apple Computer, Inc. Method and apparatus for a calibrated variable phase offset timing between synchronous clock subdomains
US6934899B2 (en) * 2002-01-30 2005-08-23 Etron Technology, Inc. Variable self-time scheme for write recovery by low speed tester
US6732060B1 (en) * 2002-05-06 2004-05-04 Adaptec, Inc. System and method for an interface invariant test case
US7436531B2 (en) * 2002-05-14 2008-10-14 Xerox Corporation Systems and methods for using multiple processors for imaging
JP2004046599A (ja) * 2002-07-12 2004-02-12 Nec Corp フォルトトレラントコンピュータ装置、その再同期化方法及び再同期化プログラム
US6898682B2 (en) * 2002-08-12 2005-05-24 Freescale Semiconductor, Inc. Automatic READ latency calculation without software intervention for a source-synchronous interface
US7260066B2 (en) * 2002-10-31 2007-08-21 Conexant Systems, Inc. Apparatus for link failure detection on high availability Ethernet backplane
US7237151B2 (en) * 2002-12-17 2007-06-26 Texas Instruments Incorporated Apparatus and method for trace stream identification of a processor reset
US7173635B2 (en) * 2003-03-25 2007-02-06 Nvidia Corporation Remote graphical user interface support using a graphics processing unit
KR100755683B1 (ko) * 2003-05-07 2007-09-05 삼성전자주식회사 컨텐츠 제공자 인증 및 컨텐츠 무결성 보장 방법
US7505953B2 (en) * 2003-07-11 2009-03-17 Computer Associates Think, Inc. Performance monitoring of method calls and database statements in an application server
US7277826B2 (en) * 2003-08-25 2007-10-02 International Business Machines Corporation Apparatus and method for detecting and forecasting resource bottlenecks
US7095416B1 (en) * 2003-09-22 2006-08-22 Microsoft Corporation Facilitating performance analysis for processing
US6829191B1 (en) * 2003-12-03 2004-12-07 Hewlett-Packard Development Company, L.P. Magnetic memory equipped with a read control circuit and an output control circuit
US20050222881A1 (en) * 2004-04-05 2005-10-06 Garry Booker Management work system and method
US7570267B2 (en) * 2004-05-03 2009-08-04 Microsoft Corporation Systems and methods for providing an enhanced graphics pipeline
US7730456B2 (en) * 2004-05-19 2010-06-01 Sony Computer Entertainment Inc. Methods and apparatus for handling processing errors in a multi-processing system
US7203922B2 (en) * 2004-06-01 2007-04-10 Agilent Technologies, Inc. Merging of infrastructure within a development environment
US7555499B2 (en) * 2004-08-17 2009-06-30 Oracle International Corporation Diagnosing database performance problems using a plurality of wait classes
US7249331B2 (en) * 2004-10-07 2007-07-24 International Business Machines Corporation Architectural level throughput based power modeling methodology and apparatus for pervasively clock-gated processor cores
US8379553B2 (en) * 2004-11-22 2013-02-19 Qualcomm Incorporated Method and apparatus for mitigating the impact of receiving unsolicited IP packets at a wireless device
JP2006153628A (ja) * 2004-11-29 2006-06-15 Shimadzu Corp 分析データ管理装置及び分析データ管理プログラム
US7805765B2 (en) * 2004-12-28 2010-09-28 Lenovo (Singapore) Pte Ltd. Execution validation using header containing validation data
US7577848B2 (en) * 2005-01-18 2009-08-18 Microsoft Corporation Systems and methods for validating executable file integrity using partial image hashes
US8817029B2 (en) * 2005-10-26 2014-08-26 Via Technologies, Inc. GPU pipeline synchronization and control system and method
US7688809B2 (en) * 2006-05-03 2010-03-30 Cisco Technology, Inc. Media inactivity detection in VoIP networks
US20080007563A1 (en) * 2006-07-10 2008-01-10 Microsoft Corporation Pixel history for a graphics application
US7778800B2 (en) * 2006-08-01 2010-08-17 Nvidia Corporation Method and system for calculating performance parameters for a processor
KR100781705B1 (ko) * 2006-10-24 2007-12-03 삼성전자주식회사 이동통신 단말기에서 모드 제어 장치 및 방법

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0453394A2 (en) * 1990-04-18 1991-10-23 International Business Machines Corporation Dynamic process for the generation of biased pseudo-random test patterns for the functional verification of hardware designs
CN1940944A (zh) * 2005-09-29 2007-04-04 上海奇码数字信息有限公司 电路状态扫描链、数据采集***和仿真验证方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
JP特开2001-306647A 2001.11.02

Also Published As

Publication number Publication date
CN101859330A (zh) 2010-10-13
US20100262415A1 (en) 2010-10-14
US8489377B2 (en) 2013-07-16

Similar Documents

Publication Publication Date Title
US8122398B2 (en) Conversion of circuit description to an abstract model of the circuit
US7324363B2 (en) SPICE optimized for arrays
JP4994393B2 (ja) 単一のマスターモデルから異なる抽象化レベルの複数のモデルを生成するシステムと方法
US6295517B1 (en) Method and apparatus for adaptively or selectively choosing event-triggered cycle-based simulation or oblivious-triggered cycle-based simulation on a cluster-by-cluster basis
US20090204380A1 (en) Performance evaluation simulation
CN103116069B (zh) 芯片频率的测试方法、装置及***
CN111046624A (zh) 芯片模块接口时钟结构的构建方法、装置、设备及介质
JP5034916B2 (ja) 性能評価モデル生成方法、システム性能評価方法、及び性能評価モデル生成装置
JP2002099584A (ja) 設計検証システム、設計検証方法および設計検証プログラムを格納したコンピュータ読取り可能な記録媒体
JP5785725B2 (ja) 電力見積装置、電力見積方法及びプログラム
CN101859330B (zh) 验证集成电路效能模型的方法
US20090234620A1 (en) Verification support apparatus, verification support method, and computer product
CN109324838B (zh) 单片机程序的执行方法、执行装置及终端
CN111028128A (zh) 一种基于SystemC的面向GPU顶点输出控制方法及单元
US6701490B1 (en) Cycle and phase accurate hardware-software coverification
US20210375341A1 (en) Phase-Aware DDR Command Dynamic Scheduling
US20180139306A1 (en) Software optimization for multicore systems
CN113934628A (zh) 软件模型的测试方法及其装置、计算机可读存储介质
CN113688543A (zh) 一种跌落仿真方法及装置
JP5071297B2 (ja) 設計支援プログラム、設計支援装置、および設計支援方法
JPH10221410A (ja) Lsiの自動論理検証方式
US6339751B1 (en) Circuit design support apparatus and a method
CN116842902B (zh) 针对黑盒模型的***级仿真建模方法
CN106777503A (zh) 基于代码转换的高级综合优化方法
CN113688587A (zh) 一种电路布图的生成方法、装置、计算机设备及存储介质

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