CN117355838A - 经混合信号仿真中的实时视图交换 - Google Patents
经混合信号仿真中的实时视图交换 Download PDFInfo
- Publication number
- CN117355838A CN117355838A CN202280024897.4A CN202280024897A CN117355838A CN 117355838 A CN117355838 A CN 117355838A CN 202280024897 A CN202280024897 A CN 202280024897A CN 117355838 A CN117355838 A CN 117355838A
- Authority
- CN
- China
- Prior art keywords
- simulation
- file
- digital
- time window
- block
- 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
- 238000004088 simulation Methods 0.000 title claims abstract description 238
- 238000000034 method Methods 0.000 claims abstract description 40
- 230000015654 memory Effects 0.000 claims description 18
- 238000004378 air conditioning Methods 0.000 claims 4
- 230000000873 masking effect Effects 0.000 claims 2
- 238000013461 design Methods 0.000 description 27
- 238000012545 processing Methods 0.000 description 15
- 238000003860 storage Methods 0.000 description 13
- 238000010586 diagram Methods 0.000 description 12
- 230000008569 process Effects 0.000 description 12
- 238000012795 verification Methods 0.000 description 11
- 238000012360 testing method Methods 0.000 description 8
- 238000004519 manufacturing process Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 6
- 230000003287 optical effect Effects 0.000 description 4
- 230000006399 behavior Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 3
- 238000004590 computer program Methods 0.000 description 3
- 238000001459 lithography Methods 0.000 description 3
- 230000003068 static effect Effects 0.000 description 3
- 230000007704 transition Effects 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 230000003139 buffering effect Effects 0.000 description 1
- 239000003990 capacitor Substances 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 239000004020 conductor Substances 0.000 description 1
- 238000013440 design planning Methods 0.000 description 1
- 238000012938 design process Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000005284 excitation Effects 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000007274 generation of a signal involved in cell-cell signaling Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 230000001902 propagating effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000000523 sample Substances 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 235000013599 spices Nutrition 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/36—Circuit design at the analogue level
- G06F30/367—Design verification, e.g. using simulation, simulation program with integrated circuit emphasis [SPICE], direct methods or relaxation methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/32—Circuit design at the digital level
- G06F30/33—Design verification, e.g. functional simulation or model checking
- G06F30/3308—Design verification, e.g. functional simulation or model checking using simulation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/38—Circuit design at the mixed level of analogue and digital signals
-
- 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/392—Floor-planning or layout, e.g. partitioning or placement
-
- 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]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
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)
- Microelectronics & Electronic Packaging (AREA)
- Architecture (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
- Tests Of Electronic Circuits (AREA)
Abstract
提供一种用于对电路进行仿真的方法、系统及非暂时性计算机可读介质。所述方法包含:针对包含块的所述电路生成数字仿真文件;针对所述电路生成经混合仿真文件;通过在仿真的第一时间窗口内执行所述数字仿真文件来生成波形文件;基于所述波形文件来确定所述块的多个模拟值;及由处理器在所述仿真的第二时间窗口内执行所述经混合仿真文件,其中所述多个模拟值在所述第二时间窗口的开始时被注释到所述块。所述数字仿真文件对应于数字视图中的所述块,并且所述经混合仿真文件对应于模拟视图中的所述块。
Description
相关申请案的交叉参考
本申请案主张于2021年3月31日提出申请的美国临时专利申请案第63/168,763号的35U.S.C.§119(e)下的权益,所述美国临时专利申请案出于所有目的以其全文引用方式并入本文中。
技术领域
本公开涉及集成电路的仿真。更具体来说,本公开涉及经混合信号仿真中的实时视图交换。
背景技术
在电子设计自动化(EDA)中,仿真器被设计成对电路响应于激励的行为进行仿真。存在两种主要类型的仿真器:模拟电路仿真器及数字逻辑仿真器。模拟电路仿真器使用电路的高准确度模型(即,表示)来实现高准确度。信号在模拟电路仿真中作为连续变化的值进行传播。模拟电路仿真器的输入电路一般是利用集成电路强调(SPICE)格式的仿真程序。数字逻辑仿真器使用了电路的功能表示。不是传播连续变化的值,而是传播了几个离散电压电平(例如,主要逻辑0及逻辑1)。数字逻辑仿真器的输入逻辑设计一般呈硬件描述语言(HDL)格式,例如Verilog。与数字逻辑仿真器相比,模拟电路仿真器可在预测电路的行为方面实现更高准确度。然而,数字逻辑仿真器通常比模拟电路仿真器快两个数量级。因此,存在准确度与速度之间的折衷。
发明内容
在一个方面中,一种方法包含:针对包含块的电路生成数字仿真文件;针对所述电路生成经混合仿真文件;通过在仿真的第一时间窗口内执行所述数字仿真文件来生成波形文件;基于所述波形文件来确定所述块的多个模拟值;及由处理器在所述仿真的第二时间窗口内执行所述经混合仿真文件,其中所述多个模拟值在所述第二时间窗口的开始时被注释到所述块。所述数字仿真文件对应于数字视图中的所述块,并且所述经混合仿真文件对应于模拟视图中的所述块。
在一个方面中,一种系统包含存储指令的存储器及与所述存储器耦合并执行所述指令的处理器。所述指令在被执行时致使所述处理器:针对包含块的电路生成数字仿真文件,且其中所述数字仿真文件对应于数字视图中的所述块;针对所述电路生成经混合仿真文件,其中所述经混合仿真文件对应于模拟视图中的所述块;通过在仿真的第一时间窗口内执行所述数字仿真文件来生成波形文件;基于所述波形文件来确定所述块的多个模拟值;且在所述仿真的第二时间窗口内执行所述经混合模拟文件,其中所述多个模拟值在所述第二时间窗口的开始时被注释到所述块。
附图说明
将从下文给出的详细描述及本公开的实施例的附图更全面地理解本公开。各图用于提供对本公开的实施例的知识及理解,并且不将本公开的范围限制于这些具体实施例。此外,各图未必按比例绘制。
图1A是图解说明常规经混合信号仿真(具有固定块设置)的示意图。
图1B是图解说明根据本公开的实施例的经混合信号仿真的示意图,其中在仿真期间块设置在数字视图与模拟视图之间切换。
图2是图解说明根据本公开的实施例的具有三个时间窗口的经混合信号仿真的示意图。
图3到5是图解说明根据本公开的实施例的经混合信号仿真的实例性输出的示意图。
图6是根据本公开的实施例的用于执行经混合信号仿真的方法的流程图。
图7描绘根据本公开的一些实施例的在集成电路的设计及制造期间使用的各种过程的流程图。
图8描绘其中本公开的实施例可进行操作的实例性计算机系统的图式。
具体实施方式
本公开的各方面涉及经混合信号仿真中的实时视图交换(RTVS)。在经混合信号仿真中,为了使准确度与速度得到更好的折衷,模拟电路仿真及数字逻辑仿真被组合在一个仿真中。在经混合信号仿真的常规流程中,用户可设定电路设计的将由数字仿真器在数字视图(例如,Verilog)中仿真的某些块。并且,可在模拟视图(例如,SPICE)中设定将由模拟仿真器仿真的其它块。这被称为经混合信号仿真或经混合信号检验(MSV)。然而,在经混合信号仿真的常规流程中,对数字视图及模拟视图的块设置贯穿仿真是固定的(即,块贯穿仿真在数字视图中或者在模拟视图中)。
本文中所公开的实施例解决了经混合信号仿真中贯穿仿真周期的固定视图的问题。在一些实施例中,用户可在同一块的仿真期间在不同时间窗口处动态地规定不同视图(由不同仿真器进行仿真)。在一些实施例中,本文中所描述的方法提供基于时间的协同仿真,使得用户可在瞬态仿真中动态地切换装置视图。
本公开的优点包含但不限于为用户提供折衷准确度及性能的灵活性。举例来说,益处可包含比常规经混合信号仿真更高的速度,同时保持仿真的某些部分的所期望准确度,因为块设置贯穿模拟并非固定的。
在一些实施例中,使用了数字仿真器及模拟仿真器。在一些方面中,数字仿真器可以是Synopsys在一些方面中,模拟仿真器可以是来自Synopsys的FineSimTM及/或PrimeSimTM。然而,本文中所描述的技术不限于任何特定仿真器。
为了图解说明目的,包含三个仿真窗口(第一窗口、第二窗口及第三窗口)的实例被用来描述RTVS实施。在此实例中,第一窗口及第三窗口是纯数字仿真。第二窗口是MSV仿真。因此,在第二窗口的开始及第三窗口的开始时,电路的一些块要求从数字视图切换到模拟视图,且然后从模拟视图切换到数字视图。
图1A是图解说明常规经混合信号仿真的示意图。在常规经混合信号仿真中,块设置是固定的。举例来说,在数字视图中测试第一块110,并且在模拟视图中测试第二块112。在一些方面中,命令“use_spice-cell inv_chain”可用于在仿真窗口102期间运行协同仿真t0到t3。波形114展示对应于第一块110的数字波形,并且波形116展示对应于第二块112的模拟波形。如本文中先前所论述,在常规经混合信号仿真中,块设置是固定的。因此,第一块110在整个仿真窗口102(即,从t0到t3)内数字视图中运行,并且第二块112在整个仿真窗口102内在模拟视图中运行。
图1B是图解说明根据本公开的实施例的经混合信号仿真的示意图。在整个仿真窗口(即,从t0到t3)内在数字视图中测试第一块110。在数字视图及模拟视图中测试第二块112。在仿真期间,第二块112的设置在数字视图与模拟视图之间切换。因此,在第一时间窗口104中,第一块110及第二块112两者都在数字视图中,并且运行纯数字仿真。在第二时间窗口106中,第一块110是数字视图,并且第二块112是模拟视图。在第三时间窗口108中,第一块110及第二块112两者都在数字视图中,并且针对两个块运行纯数字仿真。
在一些实施例中,在第二时间窗口106中,可使用以下命令:
use_spice-cell inv_chain enter=t1exit=t2。
图2是图解说明根据本公开的实施例的具有三个时间窗口的经混合信号仿真的示意图200。示意图200图解说明与相继运行的数字仿真及经混合仿真(即,数字simv及msvsimv)相关联的两个可执行文件的实例。
在一些实施例中,用户可在初始文件中规定MSV窗口204。举例来说,用户可在初始文件中规定MSV窗口204的开始时间及结束时间(例如,从30ns到60ns)。本文中所描述的RTVS流程可自动生成可执行文件(即,simv)并根据用户的说明书启动仿真。
在一些实施例中,为了实现基于时间的协同仿真,自动生成不同经编译Verilog二进制文件(数字/经混合)并在由用户规定的不同时间窗口中逐个运行。在一些方面中,此功能性由经混合信号检验工具的设置文件或配置文件中的新命令调用。举例来说,可在经混合信号检验工具的配置文件(例如,cosim设置文件)中使用命令(例如,multi_view_sim)。所述命令可用于描述每一视图配置的窗口持续时间。在一些实施例中,所述命令(例如,multi_view_sim命令)可允许用户规定多个(无限制的)窗口。每一窗口可具有其自身视图配置及其自身仿真控制,包含初始条件。此在经混合信号仿真中提供了最大灵活性及控制。
在一些实施例中,二进制实用程序(例如,称为“msv_mview_vcs”)可执行经混合信号编译及数字编译以生成对应可执行文件,并基于窗口规范逐个启动数字及经混合信号仿真。
在一些实施例中,实用程序(例如,“msv_mview_vcs”)可自动启动第一运行,然后第二运行,且然后第三运行,如图2中所展示。
第一运行与第一窗口202相关联。因此,在数字视图中运行仿真0ns到30ns。第二运行与第二窗口204相关联。在经混合信号视图中运行仿真30ns到60ns。第三运行与第三窗口206相关联。在数字视图中运行仿真60ns到90ns,并且从第一窗口202继续仿真。
在一些实施例中,以下命令可用于启动第一运行、第二运行及第三运行。对于第一窗口202:
>simv_dig–ucli–do snps_rtvs_0.ucli
ucli%dump-file snps_rtvs_0.fsdb-type fsdb
ucli%dump-add/-depth 0-fid FSDB0
ucli%run 30ns
对于第二窗口204:
>simv_msv–ucli–do snps_rtvs_1.ucli
ucli%dump–file snps_rtvs_1.fsdb-type fsdb
ucli%dump-add/-depth 0-fid FSDB0
ucli%dump–disable
#internal issue“skip_analog 30ns”cmd
ucli%run 30ns#analog engine does not simulate
ucli%dump-enable
#auto apply initial value for analog nodes
ucli%run 30ns
对于第三窗口206:
ucli%dump–disable#No output waveform
ucli%run 30ns#results are not adopted for the second window
ucli%dump-enable
ucli%run#run the third window to the end
如先前所描述,所述命令可在经混合信号检验工具的控制文件中使用,以启用具有不同视图配置的多个仿真窗口。在一些方面中,所述命令可具有以下句法规则:
multi_view_sim start=time1[icfile=file1][afile=file2][end=time2][start…icfile...afile...end…][control=”control_file”]simv_cmd=”simv_commands”[node_map=node_map_file]
命令的第一参数(例如,start=time1)可用于指示仿真的开始时间。在一些方面中,开始时间可对应于经混合仿真的开始时间。
命令的第二参数(例如,icfile=file1)可用于设定经混合模拟的初始值。举例来说,初始值可对应于一或多个单元的初始值。第二参数是任选的。在一些方面中,在规定开始时间的第一参数与规定窗口的结束时间的第四参数之间规定第二参数。由第二参数设定的初始值与单个窗口槽相关联。单个窗口槽由开始时间及结束时间定义。
命令的第三参数(例如,afile=file2)可用于在附加文件中附加经混合仿真的额外仿真器设置(例如,添加一些仿真控制选项)。控制设置可包含但不限于准确度/速度控制选项。举例来说,rtvs_win start=10ns afile=new.cfg end=20ns start=30ns end=40ns control=spice1.init。第三参数是任选的且可不由用户提供。可在规定窗口的开始时间的第一参数与规定窗口的结束时间的第四参数之间提供第三参数。额外仿真器设置仅影响单个窗口槽。因此,可在命令中所规定的每一时间窗口内提供附加文件。举例来说,模拟仿真器(例如,SPICE)设置可包含温度、SPICE激励、探针等等。
命令的第四参数(例如,end=time2)可用于规定经混合仿真的结束时间。结束时间与开始时间配对。在一些方面中,用户可规定多对开始时间及结束时间。在一些方面中,如果没有规定所述多对的最后结束时间,那么结束时间可被设定为仿真的结束时间。
命令的第五参数(例如,control=“control_file”)可用于规定包含经混合信号仿真器的设置的文件。根据非限制性实例,不同窗口的视图选择设置“use_[view]”可使用经混合仿真窗口的文件(例如,“use_spice”)来规定。
在一些实施例中,如果配置文件包含多个命令(例如,multi_view_sim),那么由第五参数规定的控制文件仅应用于当前命令窗口(即,未经积累)。在一些实施例中,如果用户期望将模拟仿真器设置应用于所有窗口,那么用户可在初始文件中规定模拟仿真器设置。举例来说,作为非限制性实例,这可通过在初始文件中使用全局“use_spice”来实现。
在一些实施例中,命令的第六参数(例如,simv_commands)可用于规定运行时仿真选项。所述选项可包含在给定点处捕获并保存仿真可执行文件(例如,simv)的存储器映像以及退出仿真的命令。在一些方面中,第六参数是任选的,因为无需使用本文中所描述的方法手动地运行可执行二进制文件(例如,simv)。在一些方面中,如果没有规定仿真选项,那么可应用默认设置。举例来说,可应用simv_cmd=simv。对统一命令行接口(UCLI)的支持是有限制的。下文将进一步描述可能被支持的UCLI文件格式。
命令的第七参数(例如,node_map=node_map_file)可用于规定数字视图与模拟视图之间的节点映射。在一些实施例中,可提供节点在模拟视图及数字视图中具有不同名称时的文件。
如先前所描述,实用程序可依序启动编译时间及运行时间。所述实用程序对命令(例如,multi_view_sim)进行解析以获得关于RTVS仿真的信息。所述信息可包含与仿真窗口相关联的信息。所述实用程序控制流程以启用仿真并监控仿真的状态。在一些方面中,所述实用程序可实现自动化流程。在一些实施例中,所述实用程序可具有以下句法规则:
msv_mview_vcs vcs_elabration_options[-no_elab]
在一些实施例中,用户可使用实用程序(例如,使用vcs_elabration_options)来规定数字仿真器的命令行选项。举例来说,用户可规定数字仿真器(例如,VCS)的命令行选项。所述选项被传递给数字仿真器(例如,VCS)的运行时间命令。在一些方面中,可使用控制文件来启用数字仿真器中的经混合信号特征。根据非限制性实例,在VCS中规定了选项“-ad=”,否则实用程序msv_mview_vcs可能出错。
在一些方面中,用户可启用交互模式。在一些方面中,如果没有规定“-debug_access+all”,msv_mview_vcs会自动将其添加。此选项可启用调试能力。在一些方面中,可跳过使仿真运行的参数(例如-R),因为RTVS流程可在编译之后自动启动运行时间。
在一些方面中,数字的命令行选项可用于规定哪些特征被接通以及哪些特征被关断。宏(例如,RTVS_Mixed)可用于包含跨模块引用(XMR)语句。举例来说,如果用户具有XMR(跨模块引用)语句,例如在节点上强制施加电压的语句(例如,snps_force_volt())或从节点采样电压值的语句(例如,snps_get_volt()),那么用户可在宏(例如,RTVS_MIXED)内部包含这些语句。并且用户可规定一选项(例如,+define)来规定实用程序的细化选项中的宏。根据非限制性实例,用户可在细化选项中使用“+define+RTVS_MIXED”。这可由用户用来规定哪些特征被接通以及哪些特征被关断。宏(例如,RTVS_MIXED)仅能被定义用于经混合信号仿真,使得可在用户源代码(例如,Verilog)内部规定不同测试台,以解决不同视图的不同名称及用法。
在一些方面中,实用程序的参数(例如,[-no_elab])可被用户用来调整窗口设置而无需对设计进行重新编译。举例来说,经混合信号控制文件(例如,vcsAD.init)可由用户修改,并且可用参数(例如,[-no_elab])来运行实用程序(例如,msv_mview_vcs)。
在一些实施例中,由于数字测试台的复杂性,数字仿真不能在仿真的中间开始。举例来说,如果仿真包含第一时间窗口及第二时间窗口,那么数字仿真不能在第二时间窗口处开始。因此,为了确保仿真状态的完整性,不能跳过数字仿真。所述数字仿真可贯穿整个仿真周期而运行。另一方面,通过在模拟视图中的仿真窗口的开始时提供适当初始状态,可在仿真周期的中间开始模拟仿真。
在一些实施例中,由于常规MSV流程不支持动态视图切换,所以创建单独可执行二进制文件(例如,simv)而不是单个可执行二进制文件(例如,simv)来进行基于时间的协同仿真。
返回参考图2,在数字仿真窗口(即,第一窗口及第三窗口)中,数字仿真器执行仿真。举例来说,纯数字simv(simv_dig)进行仿真。在MSV窗口(即,第二窗口)中,模拟仿真器执行仿真。举例来说,MSV simv(simv_msv)进行仿真。
这两个可执行文件(simv_dig、simv_msv)可通过以下方式启动:
在纯数字仿真窗口中,启动数字simv。所述数字simv运行到仿真窗口的结束。信号的波形被转储到波形文件中。出于RTVS流程目的,仅使用了要被切换到模拟视图的块中的信号。
在下一MSV窗口中,启动MSV可执行文件(MSV simv)。MSV simv可从开始t=0开始仿真。数字测试台仍可对数字块进行仿真。但对于第一窗口(纯数字),跳过了对模拟块的仿真。此特征由模拟引擎实施。模拟引擎可跳过事件仿真,但可向前移动仿真时间。并且从第一数字仿真(例如,simv_dig仿真)捕获此第一窗口(纯数字)中的模/数接口事件。在第一数字仿真(即,simv_dig仿真)中,可从波形文件重构模/数转换事件。在MSV仿真(即,simv_msv仿真)的第一窗口周期中对这些事件进行仿真。接口事件的此重构可确保第一纯数字窗口的数字块的MSV仿真的完整性。
在MSV通过跳过模拟块仿真来完成第一窗口之后,MSV在第二经混合信号(MSV)窗口内设置适当初始状态。由于数字块在第一窗口中被正确仿真,此时,对模拟块的初始状态进行注释。
可在第一窗口内从来自数字仿真的波形文件检索模拟块的初始状态。然后,模拟块中的所有节点的最新状态(即,来自数字仿真)可被注释到第二窗口的开始时的模拟块。此命令可作为语句传递给模拟仿真器,从而针对模拟块中的节点提供初始条件。根据非限制性实例,在SPICE中,这可使用标准SPICE格式中的“.ic”语句来完成。另一方面,数字块的初始状态可不被注释,因为在此经混合仿真中对数字块的仿真已从t=0的开始继续。在初始状态被恰当注释之后,可执行文件可用MSV视图配置对第二窗口进行仿真。
在第三窗口中,仿真切换回数字仿真。仿真可从第一窗口数字仿真(simv_dig)继续。可保证仿真状态的正确性。在同一时间,仿真可被独立启动以缩短结果的总体等待时间。
在一些实施例中,当切换窗口时,下一窗口的初始值来自于从前一窗口转储的波形文件。本文中所描述的RTVS方法可实施从波形文件读取节点数据点的最新状态的任务。这用于注释来自第一窗口数字结果的模拟块初始值。表1展示数字值及对应模拟值。
表1:数字值及对应模拟值。
输出模拟值 | 模拟值 |
0 | lov(d2a的low_voltage) |
1 | hiv(d2a的high_voltage) |
X | x2v控制 |
Z | lov(d2a的low_voltage) |
在一些实施例中,数字仿真在simv_msv仿真的第一窗口中继续。然而,可能不会生成仿真结果,因为仿真仅是出于延续目的而执行的。
在一些实施例中,生成两个不同可执行文件(例如,simv)使得能够并行运行仿真,以改进获得最终结果的总体速度。举例来说,虽然simv_msv的第二窗口取决于第一窗口结果,但数字仿真(即,可执行simv_dig)不取决于经混合信号仿真(即,simv_msv)结果。因此数字仿真的可执行文件(例如,simv_dig)可作为并行任务启动而无需等待经混合信号仿真(例如,simv_msv)结果。
在一些实施例中,实用程序(例如,msv_mview_vcs)可在经混合信号仿真器中启动两个命令行来生成数字simv及经混合simv二进制文件。举例来说,命令行可能是:
msv_mview_vcs tb.v-ad=vcsAD.init-debug_access-l vcs.log-Mdir=csrc
所述实用程序可在VCS中调用以下实时编译时间命令:
vcs tb.v-debug_access–l vcs.log_dig–Mdir=csrc_dig-o simv_dig
vcs tb.v–ad=snps_rtvs_0.init-debug_access–l vcs.log_msv–Mdir=csrc_msv-osimv_msv
在一些实施例中,实用程序针对每一simv窗口生成simv命令行及对应ucli文件。举例来说,所述实用程序可生成以下内容:
simv_dig–ucli–do snps_rtvs_0.ucli…
simv_msv–ucli–do snps_rtvs_1.ucli…
simv_dig–ucli–do snps_rtvs_2.ucli…
…
在一些实施例中,为了确保不同窗口(不同视图配置)之间的清晰转变,用户可选择适合时间来切换窗口(视图)。在一些方面中,适合时间可对应于在交换视图时没有未完成的关键事件或转变的时间。在图2中所展示的实例中,可选择t1及t2,使得所有关键操作在切换视图的时间点之前完成。关键操作可包含例如双态切换等操作,使得转变不会发生在双态切换的中间。举例来说,第一时间窗口302中的所有关键操作可在t1之前完成。在一些实施例中,即使不满足此条件,仿真也可运行,然而结果可能不准确或未显示。
在一些实施例中,可在切换时刻之前及之后使用闲置周期(即,无刺激、时间缓冲)。切换之前的闲置周期是为了让前一窗口的所有所调度(关键)事件完成。切换之后的闲置周期允许初始条件传播到整个设计,使得设计处于稳定及一致状态。在一些实施例中,可跳过闲置周期及/或切换。
在一些实施例中,在仿真期间生成输出波形。在一些实施例中,数字仿真(例如,数字simv)可生成一个波形文件,并且经混合仿真(例如,MSV simv)可生成额外波形文件。默认情况下,此特征启用统一转储。针对仿真的无效周期在波形文件中生成恰当状态。无效周期可以指当块不在数字视图或模拟视图中运行时的时间窗口。举例来说,第一窗口202是经混合仿真的无效周期。
图3是图解说明根据本公开的实施例的图形波形查看器(WV)300的示意图。图形WV300展示经混合信号仿真的实例性输出。图形WV 300可在一个层级树下显示与两个波形(数字仿真及经混合仿真)相关联的所有信号。数字信号及对应模拟信号不能合并到一个面板中。举例来说,如果用户点击信号名称302,那么数字信号及对应模拟信号可展示在一个层级树304下(例如,数字信号306(top.dut.addr_3.a)及经混合信号308(top.dut.addr_3.v(a))。图形WV 300可展示具有未连接的禁用窗口的信号。如由散列模式310所展示,数字信号306在从30ns到60ns的范围中被标记为禁用。经混合信号308在分别对应于图2的第一窗口202及第三窗口206的从0ns到30ns的范围中及从60ns到80ns的范围中被标记为空白。
图4是图解说明根据本公开的实施例的经混合信号仿真的实例性输出的示意图。纯数字信号可合并到图形WV 400的一个面板中。举例来说,对应于图1B的第一块110的信号402可在整个仿真窗口内展示。数字波形404(top.dut.addr_0.a)在从0ns到80ns的范围中(即,在整个仿真窗口内)被合并。因此,来自图2的第一窗口、第二窗口及第三窗口的结果被合并并展示为单个波形。
图5是图解说明根据本公开的实施例的经混合信号仿真的实例性输出的示意图500。可使用来自Synopsys的nWave工具来显示波形。利用Synopsys/>nWavetool工具,用户可个别地打开例如快速信号数据库(fsdb)等两个文件来观察波形。第一面板502展示信号的数字视图,而第二面板504展示信号的模拟视图。无效周期可展示为块506。
在一些实施例中,交叉模块参考(XMR)是数字测试台中的常见用法。然而,当采用本文中所描述的RTVS技术时,用户可能期望考虑数字视图与模拟视图之间的等效性。举例来说,SPICE中不存在与Verilog中的“force”语句等效的设置。并且这可能导致一些复杂性或限制,如下文进一步所描述。
在一些实施例中,当使用本文中所描述的RTVS技术时,可在纯数字块(例如,图1的第一块110)上应用force语句。可在第一窗口或第二窗口中使用force,因为force/deposit可能不会在那些所强制节点上生效。并且这是所期望行为。
在一些实施例中,如果将力施加在切换块上。那么,可对SPICE块使用等效设置。
举例来说,当等效SPICE节点具有相同名称时,用户可使用以下句法:
force test.i1d.d1=1’b0;
如果等效节点具有不同名称,那么可在经混合仿真(即,simv_msv)的第二窗口中使用以下宏:
`ifdef RTVS_MIXED
snps_force_volt(test.xi1d.d1,0.0);
`else
force test.i1d.d1=1’b0;
`endif
图6图解说明根据本公开的实施例的用于执行经混合信号仿真的方法600的流程图。根据一或多个实施例,在仿真期间,块设置可在数字视图与模拟视图之间切换。在一些方面中,电路可包含一或多个块。仿真可包含两个或更多个窗口。在一些方面中,在第一窗口期间,期望纯数字仿真。在第二窗口中,期望经混合仿真。举例来说,至少一个块在数字视图中,并且另一块在模拟视图中。
在602处,生成电路的数字仿真文件(例如,可执行文件simv_dig)。在数字仿真文件中,一或多个块在数字视图中。
在604处,针对电路生成经混合仿真文件(例如,可执行文件simv_msv)。在经混合仿真文件中,块在仿真视图中。在一些方面中,额外块在数字视图中。
在606处,通过在仿真的第一时间窗口内执行数字仿真文件来生成波形文件。波形文件是在第一时间窗口内执行数字仿真文件的结果。在一些方面中,基于或使用波形文件在第一时间内执行经混合仿真文件。具体来说,如上文所论述,模/数接口事件(来自第一窗口期间数字仿真文件的执行)可从波形文件重构,且然后在第一窗口期间用于经混合仿真文件的仿真。
第一时间窗口的经混合仿真文件的执行跳过了第一时间窗口期间的块的仿真。在一些方面中,在执行经混合仿真文件之后,数字值与额外块相关联。在所有仿真窗口中,额外块可处于数字视图中。举例来说,在第一时间窗口内执行经混合仿真文件之后,与所述块相关联的最终数字值被结转用于第二时间窗口的开始。如上文所论述,数字块的初始状态无需被注释,因为在经混合仿真文件(例如,simv_msv)中,对数字块的仿真已从t=0的开始继续。
在608处,基于波形文件来确定块的模拟值。具体来说,与所述块相关联的数字值(在第一时间窗口的结束时)被转换成第二时间窗口的开始时的模拟值(即,从步骤606开始)。
在610处,在仿真的第二时间窗口内执行经混合仿真文件,其中模拟值在第二时间窗口的开始时被注释到块。在一些方面中,在仿真的第二时间窗口及第三时间窗口内执行数字仿真文件。
在一些实施例中,在仿真的第二时间窗口及仿真的第三窗口内恢复数字仿真文件的执行。这可与步骤610并行地执行。
在一些实施例中,来自步骤606及610的输出可被合并并显示在波形查看器上(例如,如图3中所展示)。
在一些实施例中,仿真可包含从数字视图到模拟视图的另外一或多个切换。举例来说,对块的仿真可从数字视图切换到模拟视图,然后从模拟视图切换到数字视图,且然后从数字视图切换到模拟视图。因此,可在仿真的第四时间窗口内执行经混合仿真文件。
图7图解说明在例如集成电路的制品的设计、检验及制作期间使用以变换并检验表示集成电路的设计数据及指令的实例性的一组过程700。这些过程中的每一者都可作为多个模块或操作来结构化及实现。术语“EDA”表示术语“电子设计自动化”。这些过程开始于利用由设计者提供的信息创建产品理念710,所述信息被变换以创建使用一组EDA过程712的制品。当设计最终完成时,设计被流片734,这是在集成电路的原图(例如,几何图案)被发送到制作设施以制造掩模组时,掩模组然后被用于制造集成电路。在流片之后,制作736半导体裸片,并且执行封装及组装过程738,以产生已完成的集成电路740。
电路或电子结构的规格可从低级晶体管材料布局到高级描述语言。使用硬件描述语言(“HDL”)(例如VHDL、Verilog、SystemVerilog、SystemC、MyHDL或OpenVera),高级抽象可用来设计电路及系统。HDL描述可变换为逻辑级寄存器传送级(“RTL”)描述、门级描述、布局级描述或掩模级描述。每一较低抽象级别(即抽象程度较低的描述)都会向设计描述中添加更多有用细节,例如,包含所述描述的模块的更多细节。抽象程度较低的抽象描述可由计算机生成,从设计库导出,或者由另一设计自动化过程创建。用于规定更详细描述的抽象语言的较低级规范语言的一实例是SPICE,其用于具有许多模拟组件的电路的详细描述。抽象的每一级描述能够被那一层的对应工具(例如,形式检验工具)使用。设计过程可使用图7中所描绘的序列。所描述的过程可通过EDA产品(或工具)来实现。
在系统设计714期间,规定要制造的集成电路的功能性。所述设计可针对例如功率消耗、性能、面积(物理及/或代码行)及成本降低等所期望特性进行优化。在这个阶段,可将设计划分成不同类型的模块或组件。
在逻辑设计和功能检验716期间,以一或多种描述语言来规定电路中的模块或组件,并且检查规范的功能准确性。举例来说,可检验电路的组件以生成与所设计的电路或系统的规格的要求相匹配的输出。功能检验可使用仿真器及其它程序,例如测试台生成器、静态HDL检查器及形式检验器。在一些实施例中,被称为“仿真器”或“原型系统”的特定组件系统被用于加速功能检验。
在合成和测试设计718期间,HDL代码被变换为网表。在一些实施例中,网表可以是图表结构,其中图表结构的边缘表示电路的组件,且其中图表结构的节点表示组件如何进行互连。HDL代码及网表两者都是层级式制品,EDA产品可使用所述两者来检验集成电路在制造时是否根据所规定设计来执行。可针对目标半导体制造技术优化网表。另外,可测试已完成的集成电路以检验集成电路满足规范的要求。
在网表检验720期间,检查网表是否符合时序约束以及是否与HDL代码一致。在设计规划722期间,针对时序及顶层布线构造并分析集成电路的总体平面图。
在布局或物理实施724期间,物理放置(例如晶体管或电容器的电路组件的定位)及布线(通过多个导体连接电路组件)发生,并且可执行从库选择单元以实现特定逻辑功能。如本文中所使用,术语“单元”可规定提供布尔逻辑功能(例如,AND、OR、NOT、XOR)或存储功能(例如触发器或锁存器)的一组晶体管、其它组件及互连件。如本文中所使用,电路“块”可以指两个或更多个单元。单元及电路块两者都可被称为模块或组件,并被实现为物理结构及仿真中两者。针对所选择单元(基于“标准单元”)规定参数,例如大小,并且可在数据库中进行访问以供EDA产品使用。
在分析和提取726期间,在布局级别下验证电路功能,这准许布局设计的细化。在物理检验728期间,检查布局设计以确保制造约束是正确的,例如DRC约束、电约束、光刻约束,并且电路系统功能与HDL设计规格相匹配。在分辨率增强730期间,布局的几何形状被变换以改进电路设计的制造方式。
在流片期间,创建数据以用于(如果适当,在应用光刻增强之后)光刻掩模的产生。在掩模数据准备732期间,“流片”数据用于产生光刻掩模,所述光刻掩模用于产生已完成的集成电路。
计算机系统(例如图8的计算机系统800)的存储子系统可用于存储程序及数据结构,所述程序及数据结构由本文中所描述的一些或所有EDA产品使用,并用于针对所述库开发单元以及用于使用所述库的物理及逻辑设计的产品。
图8图解说明计算机系统800的实例性机器,可在所述计算机系统中执行一组指令,用于致使所述机器执行本文中所论述的方法中的任何一或多者。在替代实施方案中,可将所述机器连接(例如,联网)到LAN、内联网、外联网及/或互联网中的其它机器。所述机器可以客户端-服务器网络环境中的服务器或客户端机器的能力操作为同级间(或分散式)网络环境中的同级机器或者云计算基础设施或环境中的服务器或客户端机器。
所述机器可以是个人计算机(PC)、平板PC、机顶盒(STB)、个人数字助理(PDA)、蜂窝式电话、web器具、服务器、网络路由器、交换机或桥接器或者能够执行规定将由那一机器采取的动作的指令集(依序的或以其它方式)的任何机器。此外,虽然图解说明了单个机器,但还应将术语“机器”视为包含个别地或联合地执行一组(或多组)指令以执行本文中所论述的方法中的任何一或多者的任何机器集合。
实例性计算机系统800包含处理装置802、主存储器804(例如,只读存储器(ROM)、快闪存储器、例如同步DRAM(SDRAM)的动态随机存取存储器(DRAM))、静态存储器806(例如,快闪存储器、静态随机存取存储器(SRAM)等)及数据存储装置818,所述装置经由总线830彼此通信。
处理装置802表示一或多个处理器,例如微处理器、中央处理单元等等。更特定来说,所述处理装置可以是复杂指令集计算(CISC)微处理器、精简指令集计算(RISC)微处理器、极长指令字(VLIW)微处理器或者实施其它指令集的处理器或者实施指令集组合的处理器。处理装置802还可以是一或多个特殊用途处理装置,例如专用集成电路(ASIC)、现场可编程门阵列(FPGA)、数字信号处理器(DSP)、网络处理器等等。处理装置802可经配置以执行用于执行本文中所论述的操作及步骤的指令826。
计算机系统800可进一步包含网络接口装置808以通过网络820进行通信。计算机系统800还可包含视频显示单元810(例如,液晶显示器(LCD)或阴极射线管(CRT))、文数输入装置812(例如,键盘)、光标控制装置814(例如,鼠标)、图形处理单元822、信号生成装置816(例如,扬声器)、图形处理单元822、视频处理单元828及音频处理单元832。
数据存储装置818可包含上面存储有体现本文中所描述的方法或功能中的任何一或多者的一或多个指令集826或软件的机器可读存储介质824(也称作非暂时性计算机可读介质)。指令826也可在由计算机系统800执行其期间完全地或至少部分地驻存于主存储器804及/或处理装置802内,主存储器804及处理装置802也构成机器可读存储介质。
在一些实施方案中,指令826包含实施对应于本公开的功能性的指令。虽然在实例性实施方案中将机器可读存储介质824展示为单个介质,但术语“机器可读存储介质”应被视为包含存储一或多个指令集的单个介质或多个介质(例如,集中式或分散式数据库及/或相关联高速缓冲存储器及服务器)。术语“机器可读存储介质”还应被视为包含能够存储或编码用于由机器执行的指令集并致使机器及处理装置802执行本公开的方法中的任何一或多者的任何介质。因此,术语“机器可读存储介质”应被视为包含但不限于固态存储器、光学介质及磁性介质。
已在算法及对计算机存储器内的数据位的操作的符号表示方面呈现前述详细说明的一些部分。这些算法说明及表示是由所属数据处理领域的技术人员用以最有效地将其工作的实质传达给所属领域的技术人员的方式。算法可以是导致所期望结果的一系列操作。所述操作是需要对物理量的物理操纵的操作。此类等量可采取能够被存储、组合、比较及以其它方式加以操纵的电信号或磁信号的形式。此类信号可被称为位、值、元素、符号、字符、术语、数字等等。
然而,应记住,所有这些术语及类似术语均与适当物理量相关联,且仅仅是应用于这些量的方便标签。除非另有特定陈述,否则从本公开显而易见的是,应了解,在说明书通篇中,某些术语是指计算机系统或类似电子计算装置的动作及过程,其将表示为计算机系统的寄存器及存储器内的物理(电子)量的数据操纵并变换成类似地表示为计算机系统存储器或寄存器或者其它此类信息存储装置内的物理量及其它数据。
本公开还涉及一种用于执行本文中的操作的设备。所述设备可为了所预期目的而特别构造,或者其可包含由存储在计算机中的计算机程序选择性激活或重新配置的计算机。此种计算机程序可存储在计算机可读存储介质中,例如但不限于任何类型的磁盘(包含软盘、光学磁盘、CD-ROM及磁性-光学磁盘)、只读存储器(ROM)、随机存取存储器(RAM)、EPROM、EEPROM、磁性卡或光学卡或适合于存储电子指令的任何类型的介质,其各自耦合到计算机系统总线。
本文中所呈现的算法及显示器并不与任何特定计算机或其它设备内在地相关。各种其它系统可与根据本文中的教导的过程搭配使用,或者可证明构造用以执行方法的更专门化设备是方便的。另外,本公开并非参考任何特定编程语言而描述。将了解,各种编程语言可用于实施如本文中所描述的本公开的教导。
本公开可提供为计算机程序产品或软件,所述计算机程序产品或软件可包含上面存储有指令的机器可读介质,所述指令可用于对计算机系统(或其它电子装置)进行编程以执行根据本公开的过程。机器可读介质包含用于以由机器(例如,计算机)可读的形式存储信息的任何机构。举例来说,机器可读(例如,计算机可读)介质包含机器(例如,计算机)可读存储介质,例如只读存储器(“ROM”)、随机存取存储器(“RAM”)、磁盘存储介质、光学存储介质、快闪存储器装置等。
在前述公开中,已参考本公开的具体实例性实施方案描述了本公开的实施方案。将显而易见,在不背离如以下权利要求书中所陈述的本公开的实施方案的较宽广精神及范围的情况下,可对本公开做出各种修改。在本公开以单数形式提及一些元件的情况下,在各图中可描绘不止一个元件,并且用相似数字标记相似元件。因此,本公开及图式应被视为说明性意义而不是限制性意义。
Claims (20)
1.一种用于对电路进行仿真的方法,其包括:
针对所述电路生成数字仿真文件,其中所述电路包括块,且其中所述数字仿真文件对应于数字视图中的所述块;
针对所述电路生成经混合仿真文件,其中所述经混合仿真文件对应于模拟视图中的所述块;
通过在仿真的第一时间窗口内执行所述数字仿真文件来生成波形文件;
基于所述波形文件来确定所述块的多个模拟值;及
由一或多个处理器在所述仿真的第二时间窗口内执行所述经混合仿真文件,其中所述多个模拟值在所述第二时间窗口的开始时被注释到所述块。
2.根据权利要求1所述的方法,其中所述电路包括额外块,其中所述数字仿真文件对应于所述数字视图中的所述额外块,且其中所述经混合仿真文件对应于所述数字视图中的所述额外块。
3.根据权利要求2所述的方法,其进一步包括:
基于所述波形文件在所述仿真的所述第一时间窗口内执行所述经混合仿真文件,其中所述在所述第一时间窗口内执行所述经混合仿真文件跳过了在所述第一时间窗口期间对所述块的仿真。
4.根据权利要求2所述的方法,其进一步包括:
在于所述第一时间窗口内执行所述经混合仿真文件之后将所述额外块与数字值相关联。
5.根据权利要求2所述的方法,其进一步包括:
在所述仿真的所述第二时间窗口及所述仿真的第三时间窗口内执行所述数字仿真文件。
6.根据权利要求5所述的方法,其中在所述第二时间窗口内执行所述经混合仿真文件是与在所述第二时间窗口内执行所述数字仿真文件并行地执行的。
7.根据权利要求1所述的方法,其中所述模拟值对应于所述块的一或多个节点的初始状态;并且所述方法进一步包括:
从所述波形文件获取所述初始状态。
8.根据权利要求1所述的方法,其中所述第二时间窗口包含所述第二时间窗口的所述开始时的第一闲置周期以及所述第二时间窗口的结束时的第二闲置周期。
9.根据权利要求1所述的方法,其进一步包括:
在图形窗口中显示第一波形及第二波形,其中所述第一波形对应于数字信号,并且所述第二波形对应于对应模拟信号;及
在所述第二时间窗口的持续时间内掩蔽所述第一波形。
10.根据权利要求1所述的方法,其进一步包括:
接收指示所述仿真的多个经混合仿真窗口的开始时间及结束时间的信息;及
在所述多个经混合仿真窗口中的每一者内执行所述经混合仿真文件。
11.一种用于对电路进行仿真的系统,其包括:
存储器,其存储指令;及
处理器,其与所述存储器耦合并执行所述指令,所述指令在被执行时致使所述处理器:
针对所述电路生成数字仿真文件,其中所述电路包括块,且其中所述数字仿真文件对应于数字视图中的所述块;
针对所述电路生成经混合仿真文件,其中所述经混合仿真文件对应于模拟视图中的所述块;
通过在仿真的第一时间窗口内执行所述数字仿真文件来生成波形文件,
基于所述波形文件来确定所述块的多个模拟值;且
在所述仿真的第二时间窗口内执行所述经混合仿真文件,其中所述多个模拟值在所述第二时间窗口的开始时被注释到所述块。
12.根据权利要求11所述的系统,其中所述电路包括额外块,其中所述数字仿真文件对应于所述数字视图中的所述额外块,且其中所述经混合仿真文件对应于所述数字视图中的所述额外块。
13.根据权利要求12所述的系统,其中所述处理器进一步经配置以:
基于所述波形文件在所述仿真的所述第一时间窗口内执行所述经混合仿真文件,其中所述在所述第一时间窗口内执行所述经混合仿真文件跳过了在所述第一时间窗口期间对所述块的仿真。
14.根据权利要求12所述的系统,其中所述处理器进一步经配置以:
在于所述第一时间窗口内执行所述经混合仿真文件之后将所述额外块与数字值相关联。
15.根据权利要求12所述的系统,其中所述处理器进一步经配置以:
在所述仿真的所述第二时间窗口及所述仿真的第三窗口内执行所述数字仿真文件。
16.根据权利要求15所述的系统,其中在所述第二时间窗口内执行所述经混合仿真文件是与在所述第二时间窗口内执行所述数字仿真文件并行地执行的。
17.根据权利要求11所述的系统,其中所述模拟值对应于所述块的一或多个节点的初始状态;并且所述处理器进一步经配置以:
从所述波形文件获取所述初始状态。
18.根据权利要求11的系统,其中所述第二时间窗口包含所述第二时间窗口的所述开始时的第一闲置周期以及所述第二时间窗口的结束时的第二闲置周期。
19.根据权利要求11所述的系统,其中所述处理器进一步经配置以:
在图形窗口中显示第一波形及第二波形,其中所述第一波形对应于数字信号,并且所述第二波形对应于对应模拟信号;且
在所述第二时间窗口的持续时间内掩蔽所述第一波形。
20.一种非暂时性计算机可读介质,其包括用于对包括第一块及第二块的电路进行仿真的所存储指令,所述指令在由处理器执行时致使所述处理器:
针对所述电路生成数字仿真文件,其中所述电路包括块,且其中所述数字仿真文件对应于数字视图中的所述块;
针对所述电路生成经混合仿真文件,其中所述经混合仿真文件对应于模拟视图中的所述块;
通过在仿真的第一时间窗口内执行所述数字仿真文件来生成波形文件;
基于所述波形文件来确定所述块的多个模拟值;且
在所述仿真的第二时间窗口内执行所述经混合仿真文件,其中所述多个模拟值在所述第二时间窗口的开始时被注释到所述块。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US202163168763P | 2021-03-31 | 2021-03-31 | |
US63/168,763 | 2021-03-31 | ||
PCT/US2022/022898 WO2022212751A1 (en) | 2021-03-31 | 2022-03-31 | Real time view swapping in a mixed signal simulation |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117355838A true CN117355838A (zh) | 2024-01-05 |
Family
ID=81385127
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202280024897.4A Pending CN117355838A (zh) | 2021-03-31 | 2022-03-31 | 经混合信号仿真中的实时视图交换 |
Country Status (5)
Country | Link |
---|---|
US (1) | US20220327272A1 (zh) |
EP (1) | EP4298546A1 (zh) |
KR (1) | KR20230160880A (zh) |
CN (1) | CN117355838A (zh) |
WO (1) | WO2022212751A1 (zh) |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060190230A1 (en) * | 2005-02-24 | 2006-08-24 | Patterson Sylvia D | Method and apparatus for cross simulation data sharing to facilitate higher resolution data measurements for complex designs |
-
2022
- 2022-03-31 WO PCT/US2022/022898 patent/WO2022212751A1/en active Application Filing
- 2022-03-31 CN CN202280024897.4A patent/CN117355838A/zh active Pending
- 2022-03-31 EP EP22718453.8A patent/EP4298546A1/en active Pending
- 2022-03-31 US US17/710,237 patent/US20220327272A1/en active Pending
- 2022-03-31 KR KR1020237036234A patent/KR20230160880A/ko unknown
Also Published As
Publication number | Publication date |
---|---|
EP4298546A1 (en) | 2024-01-03 |
WO2022212751A1 (en) | 2022-10-06 |
US20220327272A1 (en) | 2022-10-13 |
KR20230160880A (ko) | 2023-11-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20110184713A1 (en) | Dynamic-based verification apparatus for verification from electronic system level to gate level, and verification method using the same | |
US20210287120A1 (en) | Machine learning-based prediction of metrics at early-stage circuit design | |
US11526641B2 (en) | Formal gated clock conversion for field programmable gate array (FPGA) synthesis | |
CN114586036A (zh) | 利用寄存器传输级矢量的毛刺功率分析 | |
US20210374314A1 (en) | Engineering Change Order Scenario Compression by Applying Hybrid of Live and Static Timing Views | |
US20210312113A1 (en) | Method for finding equivalent classes of hard defects in stacked mosfet arrays | |
Oruklu et al. | System-on-chip design using high-level synthesis tools | |
US11443087B2 (en) | System and method for power analysis for design logic circuit with irregular clock | |
US12015411B2 (en) | Testable time-to-digital converter | |
US11231462B1 (en) | Augmenting an integrated circuit (IC) design simulation model to improve performance during verification | |
CN116611386A (zh) | 将局部穿线电阻变换成全局分布电阻 | |
US11430496B2 (en) | Phase-aware DDR command dynamic scheduling | |
CN117355838A (zh) | 经混合信号仿真中的实时视图交换 | |
US20240104279A1 (en) | Multicycle path prediction of reset signals | |
US20240111660A1 (en) | Managing high performance simulation representation of an emulation system | |
US20230352069A1 (en) | On-chip automation of clock-to-q access time measurement of a memory device | |
US11544435B1 (en) | On-the-fly computation of analog mixed-signal (AMS) measurements | |
US11947885B1 (en) | Low-power static signoff verification from within an implementation tool | |
US20230195982A1 (en) | Transformations for multicycle path prediction of clock signals | |
US11829692B1 (en) | Machine-learning-based design-for-test (DFT) recommendation system for improving automatic test pattern generation (ATPG) quality of results (QOR) | |
US20230016865A1 (en) | Diagnosis of inconsistent constraints in a power intent for an integrated circuit design | |
US12014205B2 (en) | Advanced register merging | |
US20240028812A1 (en) | Waveform capture using multicycle path properties | |
US11868694B1 (en) | System and method for optimizing emulation throughput by selective application of a clock pattern | |
US20230071521A1 (en) | Detecting simulation, emulation and prototyping issues using static analysis tools |
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 |