tag 标签: fanout

相关博文
  • 热度 17
    2021-7-6 15:40
    3737 次阅读|
    0 个评论
    1.Report Clock Networks report_clock_networks -name {network_1} 2.分析设计中逻辑级数的分布 report_design_analysis -logic_level_distribution -logic_level_dist_paths 5000 -name design_analysis_prePlace 3.筛选"clk"时钟域逻辑级数在 之间的c条路径 report_timing -name longPaths -of_objects -max_paths c = a && LOGIC_LEVELS<= b }] 4.扇出分析 扇出大于a的b条路经 report_high_fanout_nets -fanout_greater_than a -max_nets b 5. freq & level 125M以下:13级 125-250: 6级 250-350: 5级 350-400: 4级 400以上: 3级 6. ERROR : Finished Running Vector-less Activity Propagation 604 INFO: Applying IDT optimizations ... 605 INFO: Applying ODC optimizations ... 606 ERROR: Unhandled exception occurred during power optimization. 607 ERROR: Power Optimization encountered an error. 解决方法:opt_design -directive NoBramPowerOpt
  • 热度 26
    2012-8-22 09:14
    5563 次阅读|
    0 个评论
             Fanout,即扇出,指模块直接调用的下级模块的个数,如果这个数值过大的话,在FPGA直接表现为net delay较大,不利于时序收敛。因此,在写代码时应尽量避免高扇出的情况。但是,在某些特殊情况下,受到整体结构设计的需要或者无法修改代码的限制,则需要通过其它优化手段解决高扇出带来的问题。以下就介绍三个这样的方法:          首先来看下面这个实例,如图1所示为转置型FIR滤波器中的关键路径时序报告,在DSP in FPGA的FIR专题中有介绍转置型结构FIR滤波器输入数据的扇出较大,在图1中所示为11,因此net delay高达1.231ns。如图2所示,输入数据驱动了11个DSP48E1。 图1 图2          在没有优化情况下,该设计的fmax: 206.016MHz                   1. 寄存器复制          寄存器复制是解决高扇出问题最常用的方法之一,通过复制几个相同的寄存器来分担由原先一个寄存器驱动所有模块的任务,继而达到减小扇出的目的。通过简单修改代码,如图3所示,复制了4个寄存器:din_d0、din_d1、din_d2、din_d3,din_d、din_d0、din_d1、din_d2分别驱动2个DSP48E1,din_d3驱动3个DSP48E1。其中在代码中为防止综合器优化相同寄存器,在对应信号上加入了(* EQUIVALENT_REGISTER_REMOVAL="NO" *)属性避免被优化。 图3          综合实现后得到时序报告如图4所示,该数据路径上输入数据fanout减为2,对应net delay也减小到了0.57ns。得到设计如图5所示,与期望的相同,复制了4个寄存器来分担fanout。经过寄存器优化后得到fmax: 252.143MHz 图4 图5          2. max_fanout属性          在代码中可以设置信号属性,将对应信号的max_fanout属性设置成一个合理的值,当实际的设计中该信号的fanout超过了这个值,综合器就会自动对该信号采用优化手段,常用的手段其实就是寄存器复制。属性设置如下代码所示: (* max_fanout = "3" *)reg  signed din_d;          将din_d信号的max_fanout属性设置成3,经过综合实现后,得到时序报告如图6所示,其中fanout只有2,相应的net delay也只有0.61ns,自动优化效果还不错。结构如图7所示,其中din_d_12_1、din_d_12_2、din_d_12_3是综合器优化后自动添加,即实现了寄存器复制功能。经过设置max_fanout属性优化后得到fmax: 257.135MHz 图6 图7          3. BUFG          通常BUFG是用于全局时钟的资源,可以解决信号因为高扇出产生的问题。但是其一般用于时钟或者复位之类扇出超级大的信号,此类信号涉及的逻辑遍布整个芯片,而BUFG可以从全局的角度优化布线。而且一块FPGA芯片中BUFG资源也有限,在7k325tffg900上也仅有32个,如果用于普通信号的高扇出优化也不大现实。因此,在时钟上使用BUFG是必须的,但是如果设计中遇到某些复位信号因高扇出产生的时序问题时,可以在此信号上使用BUFG来优化。            综上,在遇到信号高扇出时,对于普通信号可采用寄存器复制或者设置max_fanout属性优化;而对于复位信号,可加入BUFG优化。
相关资源
  • 所需E币: 4
    时间: 2020-1-10 11:34
    大小: 2.1MB
    上传者: 978461154_qq
    MetricViaFanoutBGAMetricViaFanoutBGA’sThefollowingslidesprovideViaFanoutroutingexamplesforvariouspitchBallGridArrayPackagesPresentedBy:TomHausherrDirectorofTechnologyTom.@PCBLibraries.com光电通讯网整理www.oecomm.com100PIN0.8mmPITCHBGAViaDataPad:0.45(18)Hole:0.2(8)Anti-Pad:0.65(26)BGAPadSize:0.4(16)Trace/SpaceDataTraceWidth:0.1(4)Trace/TraceSpace:.1Trace/ViaSpace:.125RoutingGrid:0.1(4)ViaGrid:0.2(8)PartPlaceGrid:1(40)100PIN0.8mmPITCHBGAViaDataPad:0.45(18)Hole:0.2(8)Anti-Pad:0.65(26)BGAPadSize:0.4(16)Trace/SpaceDataTraceWidth:0.125(5)Trace/TraceSpace:.125Trace/ViaSpace:0.1(4)RoutingGrid:0.05(2)ViaGrid:0.2(8)PartPlaceGrid:1(40)100PIN1mmPITCHBGAViaDataPad:0.50(20)Hole:0.25(1……
  • 所需E币: 5
    时间: 2020-1-15 11:11
    大小: 80KB
    上传者: givh79_163.com
    FANOUTFanout术语举例说明作者:zois   来源:电子技术论坛网  |[pic][pic]|||| ||||||[pic]||||这是一块奔3电脑主板北桥下面的布线,红色圆形就是BGA的焊盘,带X||的是连接到内电层的过孔。||||可以看出,BGA的焊盘在向外引出时,并不是直接打得过孔,这就是Fa||nout。|……