资源描述:
《SynthesisOptimization-综合优化,来自synopsys.pdf》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、SynthesisOptimizationTimingOptimizationsSettingsUserealisticdesignconstraints,about10-15%oftherealgoal.Overconstrainingyourdesigncanbecounter-productive.Useclock,falsepath,andmulticyclepathconstraintstomaketheconstraintsrealistic.Selectabalancedfanoutconstraint.Alargeconstrai
2、ntcreatesnetswithlargefanouts,andalowfanoutconstraintresultsinreplicatedlogic.Ifthecriticalpathgoesthrougharithmeticcomponents,trydisablingResourceSharing.YoucangetfasterTimesattheexpenseofincreasedarea,butusethistechniquecarefully.IftheP&Randsynthesistoolsreportdifferentcrit
3、icalpaths,useatimingconstraintwiththe-routeoption.ForFSMs,usetheonehotencodingstyle,becauseitisoftenthefastestimplementation.IfalargeoutputdecoderfollowsanFSM,grayorsequentialencodingcouldbefaster.Fordesignswithblackboxes,characterizethetimingmodelsaccurately,usingthesyn_tpd,
4、syn_tco,andsyn_tsodirectives.Makesurethatyoupassyourtimingconstraintstotheplace-and-routetools,sothattheycanusetheconstraintstooptimizetiming.2Re-timingFSMCompiler&FSMExplorerShannonExpansionOperandReorderingSettingFanoutLimitsRouteConstraint3Re-timingWhatisRe-timing>
5、AutomaticallymovingregistersacrosscombinatoriallogictoimprovetimingwhileensuringidenticallogicbehaviorUpto20%Faster(ave.5%)Retimingistimingbased4RetimingRetimingintheSynplifyProtoolisregisterbalancingRegistersmovedacrosscombinatoriallogictoimprovetimingTimingdrivenGlobal
6、SettingGlobalswitchinProjectwindowAssignmentbysyn_allow_retimingattributeGlobalGlobalSettingIndividualregisterLocalSetting5RetimingExampleBeforeRetiming[2]clk[1][2:0][0][0][1][0]outputnput1[2:0]DQ[0]ff_0_.Q[2]output.G_3g1g1_1.G_2nput2[2:0][2:0]NamesoftheregistersThisattri
7、butemarkstheregisterasonecreatedasaresultof[1]DQ[1]thatcanbemovedduringretiming,butretiming,andwhichdidnotexistintheRTLff_1_.Qdoesnotnecessarilyforceittobemovedview.Theaddedduringretimingregistershavea_retsuffix[2]DQ[2]AfterRetimingff_2_.Qclk[2][1][1][0]output[0]DQ[2:0][2]npu
8、t1[2:0]output.G_3ff_ret.Qg1g1_1.G_2[2:0]nput2[2:0]6Herearesomeimpli