电子设计自动化基础-7综合基础知识课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《电子设计自动化基础-7综合基础知识课件.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 电子设计 自动化 基础 综合 基础知识 课件
- 资源描述:
-
1、综合基本知识李晓明内容模块综合过程关键约束介绍约束文件实例DC图形界面综合的过程Synthesis =residue=16h0000;if(high_bits=2b10)residue=state_tableindex;else state_tableindex=16h0000;HDL SourceGeneric Boolean(GTECH)TranslateTarget TechnologyOptimize+MapTranslation+Optimization+MappingSynthesis Is Constraint-DrivenDesign Compiler 对设计进行优化,以达到你
2、的设计目标对设计进行优化,以达到你的设计目标LargeAreaSmallShort Delay High设计者设计者设定目标设定目标(through constraints)write模块综合过程模块综合过程gtech.dbGTECH my_chip.v(hd)writeOPTIMIZATION+MAPPINGsourceDC_MEMORYTRANSLATIONscriptsconstraints.tclmappedmy_chip.dbmy_chip.edifcompileDC_MEMORYMY_CHIPcore_slow.dbtarget_libraryHDL sourceunmappedm
3、y_chip.dbread_dbanalyze/elaborateY=A+BMY_CHIPread_vhdl read_verilog工艺库cell(OR2_3)area:8.000;pin(Y)direction:output;timing()related_pin:A;timing_sense:positive_unate;rise_propagation(drive_3_table_1)values(0.2616,0.2608,0.2831,.)rise_transition(drive_3_table_2)values(0.0223,0.0254,.).function:(A|B);m
4、ax_capacitance:1.14810;min_capacitance:0.00220;pin(A)direction:input;capacitance:0.012000;.Cell nameCell AreaPin A-Pin Y nominal delays(look-up table)Design Rules for Output PinElectrical Characteristics of Input PinsPin Y functionalityY=A|BtABYExample of a cell description in.lib Formatmodule TOP(A
5、,B,C,D,CLK,OUT1);input A,B,C,D,CLK;output 1:0 OUT1;wire INV1,INV0,bus1,bus0;ENCODER U1(.AIN(A),.Q1(bus1);INV U2(.A(BUS0),.Z(INV0),U3(.A(BUS1),.Z(INV1);REGFILE U4(.D0(INV0),.D1(INV1),.CLK(CLK);endmodule设计目标PinCellReferencePortDesignClockNetD0 Q1:0D1REGFILEU4OUT1:0INV0INV1AINBINCINDINQ0Q1ENCODERINVINV
6、U1U2ABCDCLKBUS0BUS1ABCDCLKU3TOPPinCLK设计目标设计目标ClockReference and DesignDesignCellNetPortDesigns:TOP,ENCODER,REGFILEReferences:ENCODER,REGFILE,INVCells:U1,U2,U3,U4Setting Design Rule Constraintsthe most commonly specified design rule constraints:nTransition timenFanout loadnCapacitanceSetting Transiti
7、on Time ConstraintsThe transition time of a net is the time required for its driving pin to change logic values.nDesign Compiler calculates the transition time for each net by multiplying the drive resistance of the driving pin by the sum of the capacitive loads connected to the driving pin.Setting
8、Fanout Load ConstraintsThe maximum fanout load for a net is the maximum number of loads the net can drive.nThe fanout load value does not represent capacitance;it representsthe weighted numerical contribution to the total fanout load.Setting Capacitance ConstraintsThe transition time constraints do
9、not provide a direct way to control the actual capacitance of nets.nThe set_max_capacitance command sets a maximum capacitance for the nets attached to the named ports or to all the nets in a design by setting the max_capacitance attribute on the specified objects.同步设计(同步设计(Synchronous Design)D Q QB
10、D Q QBD Q QBD Q QBClk TO_BE_SYNTHESIZEDFF1FF2FF3FF4MNXSTWhat information must you provide to constrain all the register-to-register paths in your design?定义时钟User MUST Define:lClock Source(port or pin)lClock PeriodPeriodClkN X S D QD Q TO_BE_SYNTHESIZEDFF2FF3User may also define:lDuty CyclelOffset/Sk
11、ewlClock NameClk1 Clock CycleCommands to Set Timing ConstraintsSet Timing ConstraintsMultiple clocks:npay close attention to the common base period of the clocks.The common base period is the least common multiple of all the clock periods.nFor example,if you have clock periods of 10,15,and 20,the co
12、mmon base period is 60.Virtual Clock:nIn some cases,a system clock might not exist in a block.You can use the create_clock-name command to create a virtual clock for modeling clock signals present in the system but not in the block.n By creating a virtual clock,you can represent delays that are rela
13、tive to clocks outside the block.Clock Network DelayClock Network DelaynBy default,Design Compiler assumes that clock networks have no delay(ideal clocks).nUse the set_clock_skew command to specify timing information about the clock network delay(either estimated or actual delay)nUse the-propagated
14、option:specify that you want Design Compiler to calculate clock network delay by propagating times through the clock network.nUse the-plus_uncertainty(-minus_uncertainty)options:to add some margin of error into the system to account for variances in the clock network resulting from layout.set_input_
15、delayTO_BE_SYNTHESIZEDAClk(50 MHz)EXTERNAL CIRCUITcreate_clock-period 20 get_ports Clkset_dont_touch_network get_clocks Clkset_input_delay-max 7.4-clock Clk get_ports ADQNClkCLK-OUTPUT7.4 ns(worst)U1set_output_delaycreate_clock-period 20 get_ports Clkset_dont_touch_network get_clocks Clkset_output_d
16、elay-max 7.0-clock Clk get_ports BClkSD QTO_BE_SYNTHESIZEDBEXTERNAL CIRCUITSetup Requirement:7.0 nsClock(50 MHz)U3Specifying Combinational Path DelayFor purely combinational delays that are not bounded by a clock periodnuse the set_max_delay and set_min_delay commands to define the maximum and minim
展开阅读全文