DC经典入门问题_第1页
DC经典入门问题_第2页
DC经典入门问题_第3页
DC经典入门问题_第4页
DC经典入门问题_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、精选优质文档-倾情为你奉上在综合中,ungroup命令可以去除系统的层次,有利于减小面积。我对比了在使用ungroup -all -flatten 命令前后的Total cell area。在使用该命令之前Total cell area是,使用之后49663,减小了一半左右。时序部分也没有变差。那是不是综合脚本一般都要使用ungroup呢? 请指教,谢谢。 ungroup -all当然是能达到最大的优化力度啊, 整体timing最好,但是有时候会导致功能的变化, 仿真没法过,比如某个hier boundary没了,因此只是有限度的ungroup, 比如-level 3, 全部ungroup打散

2、后,没有boundary,一般功能是不会影响的,LEC来保证。但是function层次就没有了,比如对网表做一些verification,如STA时一些重要的点可能找不到了,如果还要debug的话几乎做不下去。后端fix后某些点发现需要做function ECO,那么很可能也没法做了。另外ungroup也分具体情况也不是所有情况下就一定明显减小面积,我们一般是有选择地对个别一些联系紧密的module会ungroup,不过目的是为了打掉boundary得到更好的timing不是面积。纯属个人理解LEC是logical equivalent check, 主要比较RTL和NETLIST, NETL

3、IST和NETLIST的逻辑功能一致性。通常来说, synthesis以后,会把RTL和综合得到的netlist比较,以保证综合没有造成逻辑的错误。PR以后, 也会做同样的check。 如果你仿真都能通过,当然flat的网表也行啊, 就是后面的debug 和升级没法做,LEC和formality一样的, 是cadence的形式验证工具,最近在做Lowpower的flow,使用UPF文件描述多电压域设计。在做综合的时候,把隔离单元的LEVEL SHIFTER单元的库还有0.9v和1.08v的标准单元库都设置在target_library中,这个时候的operating_condition应该怎么

4、设置呢?不同电压域是不是要设置不同的operating_condition?但是默认UPF模式的DC_SHELL又不支持set_poerating_condition 中 -object_list选项的设置,有哪位大侠跑通过用UPF的flow能不能帮忙指导一下?我觉得可能是环境没有搭好,但是又不知道从哪下手非常感谢!请问DC综合后做STA时,需不需要把DC 产生的SDF读入到PT中,读入和不读入对于PT,有什么区别,哪一种比较准确呢?谢谢 主要看你的SDF有没有延时信息,延时信息来自于哪里的,严格的说反标SDF是有用的,主要是看你的SDF的来源是否靠谱了。如果仅仅是dc出来的,那么是没有延时的

5、,反标进去也就没有意义了. 你所说的延时应该是PR之后的真正的版图延迟吗,DC后的延迟是有的,不过是基于线载模型预估的而已。是不是说没有真正的版图延迟就不用反标SDF到PT中,让PT基于线载模型进行计算分析,同样是基于线载模型分析,PT要比DC中的Design Time分析时序更为精确? 工程上我们一般不会用DC出来的sdf,PT分析所采用的也都是PR工具所提供的延迟信息 ,当然如果0.5u以上pr的结果和前端差异也就不会太大,所以设计迭代一般一遍也就OK。但0.18u不会这样理想,物理设计上的信息显得至关重要,所以PR的SOC ENC也会基于连续收敛的时序引擎。还会有一种硅虚拟原型的设计方法

6、,sdf的反标,PT分析,一般工程中也不会只signoff时才会做,在重要节点都会做。前提是你承认PT的结果是signoff的而用PT进行工程signoff个人理解,不知道全面不全面 在做STA时,一般可是直接使用STARRC抽出的SPEF进行时序分析,使用PT report timing。有时候,为了得到更准确点的timing信息,需要用SDF反标到PT中,再report timing。当然反标是需要时间的解决了。DC后的PT不需要反标DC产生的SDF,DC后没有真实的布线,是基于线载模型。此时PT单独分析的时序和DC中的Design Time分析的结果是一致的。 有哪位大侠能详细讲一下se

7、t_max_transition的作用吗? 在STA中有个很重要, 要FIX SLEW方面的VIOLATION。这个set_max_transition就是设定SLEW上的constrain。 设置波形从10%到90%所需要的时间对延迟和功耗都有影响 厂家提供的库中,cell延迟的值一般是通过二维非线性查找表来得到,表的两个index分为input transition ,load capacitance,如果index得值在表内,延迟值不需要计算,如果不在表内,则需要通过内插或外插来计算,这相应的带来了误差,内插的误差和外插相比小得多,如果外插计算时的index超出查找表的范围过大,计算出的

8、数值也就没有意义,所以库中一般都有default max_transitin,保证再此范围内计算的精度。至于transition 的计算用10%_90%还是20%-80%,看库中的定义好了, 设置最大的渡越时间,就是信号逻辑的转换时间。max_transition属性通常用于输入引脚。max_transition属性定义任何转换时间大于负载引脚max_transition指定值的连线不能连到该引脚。 针对初学者的提问,在eetop论坛里整理发表了一个FAQ,在这里做一个备份 如果您已经有2年以上的实战经验,下面这些雕虫小技就不太值得您去浪费时间了。先说说作为一个有经验的后端(暫不包括DFT工程

9、师和layout工程师)工程师,需要掌握哪些知识4个级别: 1)知道一些基本概念, 2)简单地掌握这门技术, 3)熟练 4)精通半导体工艺-2RTL coding - 2综合 - 2时序约束 - 3APR - 3DFT - 2DRC/LVS - 3仿真 - 2形式验证 - 2以下是FAQ分类:2楼:时序约束,STA3楼:综合DC/RC4楼:APR (floorplan, place, CTS,route)5楼:验证(LEC,DRC,LVS等)6楼:DFT7楼:低功耗8楼:面试9楼:名词解释 希望我有时间完成所有的总结。下面进入正题 时序约束,STA (1) clock Q1.1 什么是同步时钟

10、? 时钟频率是整倍数,并且相互之间的相位是固定而且相差可预知的,才可以称得上是同步时钟。其他的都算异步时钟。 比如, 5M,10M是同步 2M,3M一般算异步 一个时钟,输出到另一个芯片中,转一圈后,以同样的频率返回到自己的芯片,因为无法确定时钟在另一个芯片里面的latency,所以输出的时钟与输入的时钟算异步 一个时钟进到2个PLL,就算那2个PLL的输出频率相同,一般也算是异步时钟,除非你de-skew Q1.2 如何处理同步时钟? 设计要求严格的公司,就算是同步时钟,数据在同步时钟间传送时,依然要用meta-stability FF,可以set_false_path 如果放松要求,不用m

11、eta-stability FF,则同步时钟之间是real path,做CTS时,同步时钟要clock tree balance。 注意不同频率的同步时钟的最小时间间隔被用来检查setup 如果上升下降沿混用的话,setup的时间间隔就只有半个时钟周期了 Q1.3 如何处理异步时钟? 很简单,set_false_path 注意要from A to B,同时要from B to A Q1.4 如何定义时钟? create_clock 如果指定某个pin/port,就是实时钟,如果没有指定pin和port,就是虚拟时钟 巧妙利用waveform选项可以做出不同波形的时钟 被定义成时钟的net,在综

12、合时,自动带有ideal network和dont_touch的属性。但是当它被用作data计算延迟时,ideal net的属性会自动消失 时钟会自动穿过逻辑单元,停在时序单元的时钟端,所以用FF产生的分频时钟要再用create_generated_clock定义一次 Q1.5 如何处理多选一时钟? 在实际应用当中,如果这几个时钟不会同时出现的话,则在定义时钟时,只选择最快频率的就可以了 如果是多个时钟同时出现,可以用set_case_analysis选一个, 也可以放它们全都过去,但是在MUX后面把它们之间set_false_path Q1.6 巧妙定义时钟 直接在分频FF的Q端定义gene

13、rated clock时,有时会把分频FF的时序打掉,解决办法是在分频FF的Q端加一个时钟buf,从那个buf的输出端定义generated clock,从而保证分频FF自身的时序完整 如果从source clock到generated clock之间有多条路径,你希望PT用指定的一条路径来计算时序的话,可以用set_case_analysis, set_disbale_timing 或者一级一级地定义generated clock来引导PT达到你的要求 Q1.7 什么时候需要设置latency? latency分为source latency 和 network latency 两种。 so

14、urce latency是源时钟自带的,network latency就是CTS后的clock tree insertion delay。 在综合时,一般不需要latency, 除非, 已知不同clock带有不同的source latency,并且它们之间有时序要求 预知不同clock会有不同的clock tree insertion delay,不想平衡它们,但是要满足他们之间的时序要求 做完CTS后,要把network latency去掉 Q1.8 如何设置uncertainty clock uncertainty分为setup和hold,preCTS和postCTS几种不同的情况 一般的

15、处理原则是: preCTS,setup: uncertainty = PLL jitter + 预估的clock skew preCTS,hold: uncertainty = 预估的clock skew postCTS,set_propagate_clock all_clocks postCTS,setup: uncertainty = PLL jitter postCTS,hold: uncertainty = 0 有时fundry要求hold uncertainty保留一定的量,这时就把那个保留量加到上面的公式中 (2) IO端口的约束 Q2.1 如何加IO端口的约束? 最普通的方法是

16、对输入端,set_input_delay, set_driving_cell (也有用set_input_transition的,但是不多见) 对输出端,set_output_delay,set_load 对时钟端,set_clock_transition Q2.2 哪些端口不需要约束? 静态信号可以set_false_path,比如reset,test_mode,function_mode_select 不能真的什么约束都不加 Q2.3 什么样的reset信号可以set_false_path? 如果在工作时,reset信号有效时,时钟信号不翻转,就可以set_false_path 如果res

17、et信号动作时,时钟也有动作的话,就不能set_false_path Q2.4 像reset那样的high fanout信号需要设定为ideal net吗? 如果是false path的话,可以设为ideal net 一般不需要设为ideal net,让DC加入buffer tree后,有利于估算功耗和面积 Q2.5 如果有一组输出信号,需要他们之间对齐,但是不太在乎有多大的延迟,这时应该如何约束? 如果有输出时钟的话,在那个输出时钟端口定义一个generated_clock,其它信号的output_delay都相对于这个generated_clock而定。只要有max和min,就可以把所有信

18、号卡在一个范围之内 如果没有输出时钟的话,用set_output_delay -reference_pin Q2.6 如何计算input和output delay? 如果是block的input和output delay,可以预先分配,比如输出端,输入端各1/3,中间的连接1/3 block的端口最好都flop-in,flop-out 如果是chip IO,要度其他芯片的IO时序和电路板上面的延迟,比较麻烦 (3) DRV DRV有时也加DRC,与物理检测的DRC不是一个概念 DRV包括, set_max_transition 与工艺相关,65nm的话,在0.6ns左右 set_max_fan

19、out 与工艺相关,一般在1220之间 set_max_capacitance set_max_power set_max_area (4) false path,multicycle path Q4.1 什么情况下需要set_false_path? 异步时钟之间, 到meta-stability 的第一个FF路径, 静态信号 Q4.2 何时会用到multicycle_path? 太长的path, 不会每个周期都变的信号 注意:在RTL中,前端一定要多周期工作一次的功能 一般set_multicycle_path -setup 要同时写set_multicycle_path -hold (5)

20、 wire load model wire load model是一种简单地根据fanout来估算wire delay的方法,在综合时,一般根据设计的大小选择对应的WLM 有时也会用zero wire load model,这时的clock period要相应减小1525%,或者clock uncertainty增加1525% 更加准确的计算wire delay的方法是DC topo和RC physical, 他们在综合时会粗略地做个place,然后根据距离来计算延迟(6) clock gating Q6.1 如何加clock gating? 局部的clock gating在综合时,会自动加进

21、去。加clock gating后,不但会减小功耗,还会改善时序,因为本来到D端的逻辑,一部分被移到CK端了,简化了D端的逻辑 整个block的clock gating,一般直接在RTL里面加,因为DC没有那么聪明 Q6.2 需要对clock gating加什么特别的约束吗? 如果使用标准库里面的ICG单元,不需要附加任何特别的约束,前后端的工具都认得它 如果用latch+and自己搭的clock gating,你要对那个and单元set_disable_clock_gating_check,还要告诉后端,一定把latch和and摆在一起 一般只在没有动态切换时钟时,才可以用一个and/or做c

22、lock gating,这时也要set_disable_clock_gating_check (7) case_analysis set_case_analysis可以强制某个node为0/1 这个0/1会沿着纯逻辑组合单元向前传送,如果没有特别设定的话,会停在时序单元上 注意,只是是向前传,不会向左右2边和向后传 举例: 如果设在输出端上,那么所有fanin端都会被强制为0/1 如果只设在某个输入端上,与之相连的输出端和其他输入端都不受影响(8) ideal net/network ideal_net只作用于这条net ideal_network会把这个属性传送下去 clock net自动带

23、有ideal net属性 其他net,何时需要设定ideal net?见Q2.4 综合脚本的样本现在到处都是,最好找一个,照猫画虎改改用建议把时序约束脚本与综合脚本分开存放,这样时序约束可以单独使用。(1)综合的注意事项 Q1.1 需要fix hold吗? 不需要,hold交由后端去做就好了。 所以综合时,不需要读入min.lib,不用设wc_bc等复杂的选项 Q1.2 综合出来的网表如何验证? 如RTL做形式验证 gate-sim (网表仿真)。不要用延迟。 不需要从DC输出SDF,因为那个根本不准,而且它也无法保证没有hold违反 Q1.3 如何让DC自动插入clock gating 在脚

24、本中加入 set power_cg_always_enable_registers true set_max_leakage_power 0.0 set_max_dynamic_power 0.0 set_clock_gating_style (指定ICG) insert_clock_gating replace_clock_gates Q1.4 综合时要检查哪些项目? 最最起码要做, 综合前,check_design,check_timing,保证所有的path都有约束(含timing exception) 综合后,report_timing, report_constraint,repor

25、t_area,report_power,report_qor Q1.5 如何解决综合后setup的违法? 多综合几遍 检查约束是否合理 最后只好改RTL了 Q1.6 如何判断约束是否合理? 什么是合理的约束还真不好说,但是下面是一些不合理的情况,遇到了一定得解决 2#楼里面所列约束项目不完整的 startpoint或endpoint的clock cycle特别大的,说明那是异步时钟 某个cell或net延迟很大的,可能是clock net当作signal用了,设了dont_touch Q1.7 如何得到更好的网表? 对于DC,一般人们都喜欢把clock period调小一点(1025%),那样

26、DC会给你个timing比较好的网表,但是代价的面积的增大和功耗的增加。当然,你调clock uncertainty也有同样的效果 #*# File name: syn_script_templet.tcl# Author: xxx xxx xxx# Description: This file is just only a templet for synthesis, including basic synthesis flow.# Users can make it as reference design. #*remove_design -all#*# read design to DC

27、 memory, Assuming there are four modules#*read -f verilog ./design/mod.vread -f verilog ./design/mod1.vread -f verilog ./design/mod2.vread -f verilog ./design/mod3.v# or read like thisset all_modules mod mod1 mod2 mod3 foreach (current_module, all_modules)set design_path ./#*/# Set_dont_touch Attrib

28、ute on cell, net, reference or design# Set_dont_touch_network Attribute on clock, pin, ports#*/set_dont_touch_network find(port,CLK)set_dont_touch get_cells xxxx/xxxx/aaaset_dont_touch get_nets bbbbset_dont_touch get_designs ssss#*/# create clock info#*/create_clock -name clk -period 2.56 -waveform

29、0 1.28 get_pins ,s_x/I_PMA/I_PMA7/RXBCLKcreate_generated_clock -name clk_125 -source A_x/clk -edges 1 3 5 get_pins p_x/clk_125set_clock_uncertainty -setup 0.2 clkset_clock_uncertainty -hold 0.02 clkset_clock_uncertainty -setup 0.2 clk_125set_clock_uncertainty -hold 0.02 clk_125#*/# exceptions#*/set_

30、false_path -from clk_m -to clk_125set_max_delay 8 -from get_pins a_x/A -to get_pins P_x/x_x/dcurrent_design mcucoreset_multicycle_path 3 -through alu_x/mulb_x/*#*/# Set Disable Timing #*/set_disable_timing -from CLKA -to CLKB synopsys_mem/TP8X16C1set_disable_timing -from CLKB -to CLKA synopsys_mem/T

31、P8X16C1#*/# Report Clock Related Information#*/report_clock -attributes ./design/report_clock.repreport_clock -skew ./design/report_clock.repreport_design ./design/report_design.repreport_port -verbose ./design/report_port.rep#*/# Set Wire_load_model#*/linkset_wire_load_model -name KME_DEFAULT -libr

32、ary j1oaset_wire_load_mode enclosed#*/# Load & Input_transition Related Information#*/set_input_delay 1.0 all_inputsset_output_delay 1.0 all_outputsset_load -pin_load 75 get_ports xxx* set_load -pin_load 15 get_ports bbb* set_load -pin_load 15 get_ports ggg*#*/# MISC#*/current_design designset_fix_m

33、ultiple_port_nets -buffer_constants -allset_cost_priority -delaycurrent_design designuniquifylinkcompile -map_effort high#*/# Report Related Information #*/current_design designreport_path_group ./design/report_path_group.repreport_cell ./design/report_cell.repreport_hierarchy ./design/report_hierar

34、chy.repcheck_design ./design/check_design.repreport_area ./design/report_area.repreport_timing -group clk_125 -max_paths 20 ./design/report_timing_clk_125.repreport_timing -group clk_m -max_paths 20 ./design/report_timing_clk_m.repreport_timing -path full -delay max -transition_time -capacitance ./d

35、esign/report_timing.repreport_constraint -max_delay -all_violators ./design/report_constraint_slack_only.repreport_constraint -max_delay -verbose -all_violators ./design/report_constraint.rep#*/# Write Netlist & Sdf File #*/ungroup -all -flattenwrite -format edif -hierarchy -output ./netlist/design.

36、edifwrite -h -f verilog -o ./netlist/design.vghwrite_sdf -version 2.1 -context verilog ./sdf/design.sdfquit综合概述综合技术的研究可以追溯到20世纪60年代,IBM公司T.J.Watson研究中心开发ALERT系统,将寄存器传输级算法描述转化成逻辑级的结构实现;20世纪70年代,综合技术发展迅速,但主要致力于较低层次的逻辑综合和版图综合;20世纪80年代中期,专用集成电路的广泛应用,要求芯片设计大规模、高性能、短周期,大大推动了从算法级设计描述向寄存器传输级设计描述转换的高层次综合技术。

37、1.逻辑综合概念逻辑综合负责将寄存器传输级的结构描述转化为逻辑层的结构描述,以及将逻辑层的结构描述转化为电路的结构描述。在数字IC设计领域常用的EDA综合工具中,最权威的要算Synopsys公司提供的综合工具。Synopsys公司提供的Design Compiler(DC)是业界流行的、功能强大的逻辑综合工具。用户只需要输入设计规格的HDL描述和时间约束,就可能得到较为优化的门级综合网表。此外,DC还集成了功能强大的静态时序分析引擎,并支持与后端布局布线工具交互工作。 2.逻辑综合的流程从某种意义而言,综合就是将设计的HDL描述转化为门级网表的过程。Synopsys公司提供的综合工具DC把综合

38、分为三个步骤进行:synthesistranslationmappingoptimization。Translation是指把设计的HDL描述转化为GTECH库元件组成的逻辑电路;GTECH库是Synopsys公司提供的通用的、独立于工艺的元件库。Mapping是指将GTECH库元件映射到某一特定的半导体工艺库上,此时的电路网表包含了相关的工艺参数。Optimization是根据设计者设定的时延、面积、线负载模型等综合约束条件对电路网表进一步优化的过程。从综合工具的使用流程来看,综合包括综合环境的设置,综合约束,综合优化,综合与后端流程等。综合约束用来设定电路综合的目标,它包括设计环境约束、时

39、间约束和面积约束。设计环境约束: 指的是用来描述设计在工作时的温度、电压、驱动、负载等外部条件的一系列属性。基本的环境设置内容包括工作条件、负载模型、系统接口驱动或扇出能力等设置。这些属性约束在电路综合时是必须的,如果用户没有进行显式的说明,则DC在综合的时候会采用默认值。时间约束内容:包括定义时钟、定义时钟网络的时间约束和时序路径时间约束设定,以及非同步设计的时间约束等。了解延迟的计算是定义恰如其分的时间约束的关键。Synopsys公司支持几种延迟模型:一是CMOS通用的延迟模型,二是CMOS分段的线性延迟模型,三是非线性的查表延迟模型。深亚微米的设计,前两种模型并不常用,非线性的延迟模型以

40、输入的迁越时间和输出电容负载为参变量计算延迟的时间值,其结果以表格的形式列出供DC查找。面积约束: 和时间约束之间是一对矛盾且需要折中的关系,DC综合默认为时间约束比面积约束拥有更高的优先级。DC优化时默认不进行面积优化,如果你关注于芯片的面积,可以使用set_max_area命令设定面积的约束,使得DC完成时序约束之后继续进行面积优化。在设定综合约束之后,一般并不马上进行综合优化。因为对于一个较大的设计来说,综合一次时间很长。因此,综合前确认综合约束命令是否正确添加到设计中时很有必要的,可以减少由于综合约束不正确重新综合优化的风险,减少综合反复的时间。检查综合约束设置的命令有report_d

41、esign, report_port verbose, report_clock -skew, report_constraints, report_timimg_requirement等。 许多版图工具只接受Verilog或EDIF格式的综合网表作为输入。在综合后提供Verilog格式的网表送给后端的版图工具,IC工程师还必须对综合的网表做好一下处理:1彻底解决多次例化同一子模块的问题2修正设计中部分连线的命名以简化综合网表3删除整个设计中悬空的端口4确保每个实例化单元的引脚都是可见的5避免网表中存在assign语句、传输门和三态连线的定义6避免网表中存在不必要的门控时钟或门控复位信号7避免

42、网表中引用的实例化名不存在对应的实现逻辑在综合之后,我们还得对综合后的网表进行门级仿真,在门级仿真上Synopsys公司提供的VCS仿真工具在服务器上运行的速度是比较快的。门级仿真过程中还有一步就是带时序反标的时序仿真,通过DC或者PT写出SDF文件,在网表中将逻辑延迟和线延迟反标入电路中,模拟更加真实的情况。下面将讲述如何write synthesis script 什么是综合呢?synthesis,台湾翻译为合成,其作用就是将硬件描述语言的RTL级代码转变为门级网表。当然,现在综合技术已经很成熟了,还有推出 的行为(behavioral)综合和物理(physical)综合。我们这里讨论的是

43、逻辑(logic)综合。 综合技术是提高设计产能的一个很重要的技术,没有综合技术的发展,我们就不可能用HDL实现电路的设计,因为HDL开始是用来供电路仿真建模使用的,到了 后来才把其中一部分子集作为可综合的语言,也就是我们使用的RTL CODE。很多人入门都用HDL做设计,就以为HDL就只是用来做设计的,没有看到HDL最初始的一面,所以在验证的时候,就无法用好HDL另外一部分强 大的功能。有时间还是可以看看Writing Testbench这本书,增强对HDL语言在验证方面作用的了解,也是提高对HDL认识很好的补充。 我们以DesignCompiler为例子讲解综合的过程。 首先,综合就要必须

44、要用综合库,这个你可以向厂家要,综合库可以通过.lib这个库文件转变成.db综合库,这个基本过程可以Design Compiler里面实现,综合库里面有什么内容呢? .db 是无法阅读的,.lib是可以阅读的,里面有库的基本参数的单位,库运行的条件,各种参数,最重要的是两个部分,一个是WLM,即Wire Load Model,一个Gate的定义(输入输出,功能,时序参数,面积等等);这只是StandarCell的库,另外还有其他库,如RAM,DSP的综合 库,都以.db的形式存在。 综合需要三种输入,一个是代码,一个是综合库,一个是综合脚本Script。综合脚本主要包括了一下内容,对综合工具环

45、境的配置,对综合对象外部环境的设 置(operation condiction),对WLD的设置,对综合对象的时序的约束,综合策略,综合优化,综合报告和输出。下面给入门的人一个现成的Script例子 (tcl script)# Set Directory #set LIB typical set SYNDIR $HOME set SRCDIR $HOME/src set SCRDIR $HOME/script set RPTDIR $HOME/rptset SYNDB $HOME/dbset SYNOPSYS /cad/synopsys/# Enviroment #define_design_

46、lib WORK -path $SYNDIR/WORKset bus_naming_style %s_%dset verilogout_single_bit falseset hdlin_enable_vpp trueset hdlin_enable_vpp trueset verilogout_no_tri trueset write_name_nets_same_as_ports trueset compile_preserve_sync_resets trueset_ultra_optimization trueset verilogout_equation falseset verilogout_no_tri trueset sdc_write_unambiguous_names false# Library #set synopsys_path $SYNOPSYS/libraries/syn $SYNOPSYS/dw/sim_verset standarcell_path *set search_path $search_path $synopsys_path $standarcell_pathset target_library typical.dbs

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论