0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

max_fanout的使用方法和技巧

電子工程師 ? 來源:lq ? 2018-12-27 13:23 ? 次閱讀

前言

vivado自帶很多命令幫助編譯器更好的實(shí)現(xiàn)設(shè)計(jì)者的想法,用得好會變成開發(fā)利器。比如,max_fanout命令,本身是用來約束扇出,減少布線擁塞的常用命令。然而很多讀者向我反映,使用這個(gè)命令之后發(fā)現(xiàn)沒有任何事情發(fā)生,完全沒有任何效果。這里我就帶大家理一理這個(gè)命令的使用方法。

max_fanout 起作用的條件

打算降低扇出的網(wǎng)絡(luò)必須是reg驅(qū)動。因?yàn)榻档蜕瘸龅脑砭褪莚eg驅(qū)動超過N(設(shè)置參數(shù))條網(wǎng)絡(luò)的時(shí)候,就復(fù)制一個(gè)同樣的reg驅(qū)動其他N條網(wǎng)絡(luò),如果復(fù)制2個(gè)還不夠就一直復(fù)制到足夠?yàn)橹?,見圖1。

-flatten_hierarchy不能設(shè)置為none。圖形界面設(shè)置位置見圖2。

如果需要優(yōu)化的信號在IP核內(nèi)部那么在布局完成后使用下面的命令phys_opt_design -force_replication_on_nets [get_nets net_name]來保證IP核取消對內(nèi)部網(wǎng)絡(luò)的保護(hù),能夠正常復(fù)制高扇出網(wǎng)絡(luò)。

圖1.寄存器復(fù)制示意圖

圖2.flatten_hierarchy設(shè)置位置

max_fanout 的使用形式

1. verilog綜合屬性設(shè)置:(*MAX_FANOUT = 50 *) reg test;

這里的綜合屬性必須設(shè)置在要降低扇出的寄存器前面,否則一定不會按照設(shè)計(jì)者意圖綜合。這種方法缺點(diǎn)是不能作用于IP核內(nèi)部的某個(gè)信號。

2.set_property MAX_FANOUT 50 [get_nets {test}]或者

set_property MAX_FANOUT 50 [get_cells {test_r}]

注意get_cells選中的必須是要求編譯器復(fù)制它來降低扇出的寄存器,因?yàn)関erilog代碼里面和最終實(shí)現(xiàn)的電路里面的寄存器名字很可能不一樣,所以建議綜合完成后在原理圖里面去找到對應(yīng)寄存器,然后復(fù)制他的名字,這樣就不會弄錯(cuò)。很多時(shí)候讀者使用命令的時(shí)候cells的名字就弄錯(cuò)了!用get_nets命令也一樣最好去原理圖里面找對應(yīng)的網(wǎng)絡(luò),復(fù)制名字。xdc約束可以作用于IP核內(nèi)部的某個(gè)信號。

max_fanout 的參數(shù)意義

(*MAX_FANOUT = 50 *) reg test;里面的參數(shù)就只有一個(gè)——50,網(wǎng)絡(luò)扇出超過50就會復(fù)制一個(gè),保證每個(gè)復(fù)制的寄存器下面的扇出都不超過此參數(shù)。xdc約束也一樣,不再敖述。

注意,圖1的綜合設(shè)置里面有-fanout_limit這個(gè)參數(shù),并且默認(rèn)是10000。這里是約束全局扇出的,但是max_fanout命令的優(yōu)先級會高于這里的設(shè)置參數(shù)。所以編譯器會優(yōu)先按照你的綜合屬性或者XDC約束來進(jìn)行優(yōu)化。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • 寄存器
    +關(guān)注

    關(guān)注

    31

    文章

    5294

    瀏覽量

    119814
  • 編譯器
    +關(guān)注

    關(guān)注

    1

    文章

    1617

    瀏覽量

    49015

原文標(biāo)題:max_fanout命令的正確打開方式

文章出處:【微信號:HaveFunFPGA,微信公眾號:玩兒轉(zhuǎn)FPGA】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    BGA fanout問題

    如上圖所示,進(jìn)行BGA fanout操作后,只有一小部分焊盤fanout成功,為何其他的焊盤沒有任何反應(yīng)?
    發(fā)表于 03-16 10:59

    PADS BGA Fanout扇出教程

    原點(diǎn)座標(biāo),Setup/origin.二、選擇BGA Fanout 的層:Setup/Layers Setup,BGA一般放在TOP Component 層,Plane Typet 選No Plane
    發(fā)表于 06-10 10:05

    濾波電容FANOUT時(shí)怎么操作?

    在我們常規(guī)設(shè)計(jì)中對濾波電容fanout時(shí),要從pin拉出一小段粗引出線,然后通過過孔和電源平面連接,接地端也是同樣。fanout過孔的基本原則就是讓這一環(huán)路面積最小,進(jìn)而使總的寄生電感最小。濾波電容的常見fanout方式如下圖所
    發(fā)表于 07-31 08:36

    verilog寫好之后,sdc約束文件到底該怎么確定?

    想問一下沒有人給訂目標(biāo),verilog寫好之后,那么復(fù)雜怎么確定uncertAInty,clock_transition,max_transition,max_fanout,輸入延時(shí),輸出延時(shí),這
    發(fā)表于 06-24 06:09

    示波器的使用方法

    示波器的使用方法 1 示波器使用        本節(jié)介紹示波器的使用方法。示波器種類、型號很多,功能也不同。
    發(fā)表于 01-14 13:06 ?1.8w次閱讀

    MAX2902與外部頻率合成器結(jié)合使用方法

    MAX2902與外部頻率合成器結(jié)合使用方法 摘要:MAX2902
    發(fā)表于 09-17 16:26 ?648次閱讀
    <b class='flag-5'>MAX</b>2902與外部頻率合成器結(jié)合<b class='flag-5'>使用方法</b>

    Matlab使用方法和程序設(shè)計(jì)

    Matlab使用方法和程序設(shè)計(jì) 實(shí)驗(yàn)一 Matlab使用方法和程序設(shè)計(jì)一、
    發(fā)表于 10-17 00:18 ?5365次閱讀
    Matlab<b class='flag-5'>使用方法</b>和程序設(shè)計(jì)

    MAX639的基本使用方法電路

    MAX639的基本使用方法電路   MAX639內(nèi)有作為開關(guān)
    發(fā)表于 10-30 14:21 ?2440次閱讀
    <b class='flag-5'>MAX</b>639的基本<b class='flag-5'>使用方法</b>電路

    示波器的使用方法

    數(shù)字萬用表使用方法和示波器的使用方法詳解。
    發(fā)表于 03-14 10:38 ?32次下載

    xilinx 原語使用方法

    xilinx 原語使用方法
    發(fā)表于 10-17 08:57 ?11次下載
    xilinx 原語<b class='flag-5'>使用方法</b>

    ORCAD PSPICE 使用方法

    ORCAD PSPICE 使用方法
    發(fā)表于 10-18 14:52 ?39次下載
    ORCAD PSPICE <b class='flag-5'>使用方法</b>

    MAX3485芯片使用方法

    本文主要介紹了MAX3485芯片使用方法MAX3485可以實(shí)現(xiàn)最高10Mbps的傳輸速率。驅(qū)動器具有短路電流限制,并可以通過熱關(guān)斷電路將驅(qū)動器輸出置為高阻狀態(tài),防止過度的功率損耗。接收器輸入具有
    發(fā)表于 01-18 16:14 ?3.3w次閱讀
    <b class='flag-5'>MAX</b>3485芯片<b class='flag-5'>使用方法</b>

    示波器的使用方法(三):示波器的使用方法詳解

    示波器的使用方法并非很難,重點(diǎn)在于正確使用示波器的使用方法。往期文章中,小編對模擬示波器的使用方法和數(shù)字示波器的使用方法均有所介紹。為增進(jìn)大家對示波器的
    的頭像 發(fā)表于 12-24 20:37 ?3145次閱讀

    時(shí)序設(shè)計(jì)基本概念之fanout

    今天要介紹的時(shí)序分析概念是fanout。中文名是扇出。指的是指定pin或者port的輸出端口數(shù)。 合理的選擇fanout的數(shù)目對設(shè)計(jì)來說是非常重要的,fanout過大與過小都會對設(shè)計(jì)帶來不利因素
    的頭像 發(fā)表于 11-26 10:31 ?1.4w次閱讀
    時(shí)序設(shè)計(jì)基本概念之<b class='flag-5'>fanout</b>

    c語言max函數(shù)的使用方法

    C語言是一門廣泛使用的編程語言,提供了許多內(nèi)置的函數(shù)來執(zhí)行各種任務(wù)。其中一個(gè)非常有用的函數(shù)是max函數(shù),它用于比較兩個(gè)值并返回較大的那個(gè)值。在本文中,我們將詳細(xì)介紹max函數(shù)的使用方法。 首先
    的頭像 發(fā)表于 11-22 10:15 ?1.3w次閱讀