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

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

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

Vivado綜合參數(shù)設(shè)置

CHANBAEK ? 來源:FPGA入門到精通 ? 作者:未可知摩爾 ? 2023-05-16 16:45 ? 次閱讀

如果你正在使用Vivado開發(fā)套件進行設(shè)計,你會發(fā)現(xiàn)綜合設(shè)置中提供了許多綜合選項。這些選項對綜合結(jié)果有著潛在的影響,而且能夠提升設(shè)計效率。為了更好地利用這些資源,需要仔細研究每一個選項的功能。本文將要介紹一下Vivado的綜合參數(shù)設(shè)置。

一、Vivado綜合參數(shù)介紹

在Vivado中,默認情況下,綜合器會根據(jù)指定的目標(biāo)芯片和設(shè)定的優(yōu)化策略來產(chǎn)生最優(yōu)的電路實現(xiàn)方案。常用的選項都可以在下圖菜單中設(shè)置。

1、flatten_hierarchy

這個參數(shù)決定了Vivado綜合工具將如何控制層次結(jié)構(gòu),一般默認為rebuilt,主要有以下3個參數(shù)選項:

(1)full

表示采用完全展平層次結(jié)構(gòu),只留下頂層。只保留頂層層次,執(zhí)行邊界優(yōu)化 。

(2)none

表示采用不展平層次結(jié)構(gòu), 綜合后的輸出具有與原始RTL相同的層次結(jié)構(gòu),且不執(zhí)行邊界優(yōu)化 。

(3)rebuilt

表示允許綜合工具展平層次結(jié)構(gòu),然后根據(jù)原始RTL重建層次結(jié)構(gòu)。 此值允許跨邊界優(yōu)化的QoR優(yōu)勢,最終層次結(jié)構(gòu)與RTL類似,便于分析。

2、gated_clock_conversion

控制綜合工具的轉(zhuǎn)換時鐘邏輯能力,使用門控時鐘轉(zhuǎn)換還需要使用RTL屬性才能工作。

3、fsm_extraction

控制狀態(tài)機的編碼方式綜合方式,默認值為auto,此時vivado會自動推斷最佳的編碼方式,它有以下幾個選項:關(guān)閉、sequential、獨熱碼、自動等等,其設(shè)定的FSM編碼方式優(yōu)先于HDL代碼中定義的方式。

4、fsm_encoding

設(shè)置針對某個狀態(tài)機設(shè)定編碼方式,綜合屬性 -fsm_coding的優(yōu)先級高于-fsm_extraction,但如果HDL代碼中已經(jīng)定義了編碼方式,該設(shè)定將無效。

5、 Keep_equivalent_registers

設(shè)置是否保留等效寄存器,equivalent registers也就是等效寄存器,共享輸入數(shù)據(jù)的寄存器。 勾選時,等效寄存器不會合并; 不勾選時,等效寄存器會被合并。

6、resource_sharing

設(shè)置算術(shù)運算通過資源共享來優(yōu)化設(shè)計資源,默認值為auto。

7、control_set_opt_threshold

設(shè)置是否開啟控制集的優(yōu)化,以減少控制集的個數(shù),但會增加LUT資源消耗。 觸發(fā)器的控制集由時鐘信號、復(fù)位/置位信號和使能信號構(gòu)成,通常只有{clk,set/rst,ce}均相同的觸發(fā)器才可以被放置在一個SLICE中,但開啟這個參數(shù)后3個觸發(fā)器會被放置到同一個SLICE中。

8、no_lc

是否開不允許出現(xiàn)LUT整合。 通過LUT整合可以降低LUT的資源消耗,但也可能導(dǎo)致布線擁塞。 因此,xilinx建議,當(dāng)整合的LUT超過了LUT總量的15%時,應(yīng)考慮勾選-no_lc,關(guān)掉LUT整合。

9、shreg_min_size

影響移位寄存器的實現(xiàn)方式,默認值為3。 當(dāng)HDL代碼描述的移位寄存器深度大于此設(shè)定值時,將采用“觸發(fā)器+SRL+觸發(fā)器”的方式實現(xiàn),其中SRL由LUT實現(xiàn)。

10、bufg

控制綜合時推斷出來的BUFG數(shù)量。 當(dāng)綜合過程中看不到設(shè)計網(wǎng)表中的其他BUFG時,Vivado設(shè)計工具會使用此選項,可以推斷出指定的數(shù)量,并跟蹤在RTL中實例化的BUFG數(shù)量。 例如,如果bufg選項設(shè)置為12并且在RTL中實例化了三個BUFG,則該工具最多可以推斷出9個BUFG。

11、fanout_limit

設(shè)置全局信號高扇出數(shù)目,但當(dāng)HDL代碼中有MAX_FANOUT時,該屬性失效。

12、directive

設(shè)置不同的優(yōu)化策略,主要選項參數(shù)如下:

  • Default,默認設(shè)置。
  • RuntimeOptimized,執(zhí)行最短時間的優(yōu)化選項,會忽略一些RTL優(yōu)化來減少綜合運行時間。
  • AreaOptimized_high/medium,執(zhí)行一些通用的面積優(yōu)化。
  • AlternateRoutability,使用算法提高布線能力,減少MUXF和CARRY的使用。
  • AreaMapLargeShiftRegToBRAM,將大型的移位寄存器用塊RAM來實現(xiàn)。
  • AreaMultThresholdDSP,會更多地使用DSP塊資源。
  • FewerCarryChains,位寬較大的操作數(shù)使用查找表(LUT)實現(xiàn),而不用進位鏈。

13、max_bram

設(shè)定當(dāng)前工程的最大塊RAM數(shù)量,通常在設(shè)計中有黑盒或第三方網(wǎng)表時使用,默認設(shè)置為-1時,表示使用當(dāng)前芯片的最大塊RAM數(shù)量。

max_uram:指定ultra ram最大使用個數(shù)。 max_bram_cascade_height:指定bram最大級聯(lián)數(shù)。 max_uram_cascade_height:指定uram最大級聯(lián)數(shù)。

14、max_dsp

設(shè)定當(dāng)前工程的胡最大塊DSP的數(shù)量。 與max_ram一樣。

15、cascase_dsp

控制sum DSP塊輸出中的加法器,默認為auto。 auto表示使用塊內(nèi)置加法器鏈計算DSP輸出的總和。 tree強制在結(jié)構(gòu)中(Fabric)實現(xiàn)總和。

16、tcl.pre和tcl.post

在綜合之前和之后立即運行的Tcl文件

二、重要選項介紹

1、Report Setting

設(shè)置是否開啟綜合資源消耗報告,默認開啟即可,如果不需要看,可以關(guān)閉。

2、Setting設(shè)置中的Strategy

這里可選不同優(yōu)化策略設(shè)計,使得設(shè)計滿足相應(yīng)的需求,如下圖所示:

(1) “速度優(yōu)化”:使時鐘頻率最快。 面積和功耗可能更大。

(2) “平衡優(yōu)化”:在速度和面積之間取得平衡。

(3) “面積優(yōu)化”:使元素數(shù)量最少,但可能會影響時鐘速度和功耗。

(4) “功耗優(yōu)化”:降低功耗。

三、HDL代碼設(shè)置綜合屬性

1、srl_style

srl_style可設(shè)定移位寄存器的不同實現(xiàn)方式,主要有以下幾種方式:

(* srl_style = “srl_reg” ),實現(xiàn)移位寄存器為SRL + FF結(jié)構(gòu)。
(
srl_style = “reg_srl” ),實現(xiàn)移位寄存器為FF + SRL結(jié)構(gòu)。
(
srl_style = “reg_srl_reg” ),實現(xiàn)移位寄存器為FF + SRL + FF 結(jié)構(gòu)。
(
srl_style = “register” ),實現(xiàn)移位寄存器為純FF結(jié)構(gòu)。
(
srl_style = “srl” *),實現(xiàn)移位寄存器為純SRL結(jié)構(gòu)。

其中SRL可以有效減小面積,相比級聯(lián)寄存器的結(jié)構(gòu)性能要更好,如果再加了FF,時序性能更好。

2、ram_style和rom_style

定義存儲器實現(xiàn)方式,主要有以下幾種方式:

(*ram_style = "block" *),表示用Block RAM實現(xiàn)
(*ram_style = "reg" *),表示用寄存器實現(xiàn)
(*ram_style = "distributed" *),表示用分布式 RAM實現(xiàn)
(*ram_style = "uram" *),表示用uram實現(xiàn)

3、use_dsp48

定義實現(xiàn)這部分算術(shù)運算使用dsp資源進行實現(xiàn),常用形式為:( use_dsp48=“yes” )。

(*use_dsp48=“yes”*) reg test;

4、dont_touch

dont_touch可以防止相關(guān)內(nèi)容被邏輯優(yōu)化,常用形勢為:( dont_touch =“yes” )

(*dont_touch =“yes”*)  reg test;

5、max_fanout

設(shè)置當(dāng)前信號的最大扇出數(shù)目,常用形式為:(* max_fanout = “20”*)

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

    關(guān)注

    8

    文章

    326

    瀏覽量

    47307
  • 編碼
    +關(guān)注

    關(guān)注

    6

    文章

    932

    瀏覽量

    54731
  • 開發(fā)套件
    +關(guān)注

    關(guān)注

    2

    文章

    150

    瀏覽量

    24249
  • 綜合器
    +關(guān)注

    關(guān)注

    0

    文章

    9

    瀏覽量

    6436
  • Vivado
    +關(guān)注

    關(guān)注

    19

    文章

    804

    瀏覽量

    66224
收藏 人收藏

    評論

    相關(guān)推薦

    PMAC_參數(shù)設(shè)置

    PMAC_參數(shù)設(shè)置主要包括下位機環(huán)境變量、電機參數(shù)設(shè)置、PID參數(shù)調(diào)節(jié)。
    發(fā)表于 04-26 10:32 ?17次下載

    pmsm電機的pid參數(shù)設(shè)置的方法學(xué)習(xí)資料分享

    pmsm電機的pid參數(shù)設(shè)置的方法學(xué)習(xí)
    發(fā)表于 04-11 10:37 ?13次下載

    變頻器的參數(shù)設(shè)置及缺陷的處理

    常用變頻器在運用中,是不是能滿意傳動體系的央求,變頻器的參數(shù)設(shè)置非常首要,假定參數(shù)設(shè)置禁絕確,會致使變頻器不能正常作業(yè)。
    發(fā)表于 09-23 14:35 ?1557次閱讀

    變頻器功能參數(shù)設(shè)置

    變頻器的參數(shù)設(shè)定較多,每個參數(shù)均有一定的選擇范圍,使用中常常遇到因個別參數(shù)設(shè)置不當(dāng)導(dǎo)致變頻器不能正常工作的現(xiàn)象。以下為變頻器參數(shù)設(shè)置的步驟。
    發(fā)表于 01-31 09:16 ?1w次閱讀

    變頻器參數(shù)設(shè)置

    變頻器參數(shù)設(shè)置 基本參數(shù)設(shè)置 選擇通過選購卡的通信方式 通信地址設(shè)置
    發(fā)表于 04-07 11:47 ?0次下載
    變頻器<b class='flag-5'>參數(shù)設(shè)置</b>

    變頻器設(shè)置面板及參數(shù)設(shè)置方法

    工業(yè)設(shè)備的使用如何達到最大效能以及最佳效果,需要使用人員充分了解設(shè)備性能以及工藝要求,所以變頻器參數(shù)設(shè)置或者優(yōu) 化是非常重要的環(huán)節(jié)。參數(shù)設(shè)置可以是手持編程器操作,也可以是面板操作,部分機型還可以是電腦軟件下載參數(shù)
    發(fā)表于 04-10 09:43 ?0次下載
    變頻器<b class='flag-5'>設(shè)置</b>面板及<b class='flag-5'>參數(shù)設(shè)置</b>方法

    Vivado布線和生成bit參數(shù)設(shè)置

    本文主要介紹Vivado布線參數(shù)設(shè)置,基本設(shè)置方式和vivado綜合參數(shù)設(shè)置基本一致,將詳細說明
    的頭像 發(fā)表于 05-16 16:40 ?4437次閱讀
    <b class='flag-5'>Vivado</b>布線和生成bit<b class='flag-5'>參數(shù)設(shè)置</b>

    變頻器參數(shù)設(shè)置方法

    變頻器的設(shè)定參數(shù)較多,每個參數(shù)均有一定的選擇范圍,使用中常常遇到因個別參數(shù)設(shè)置不當(dāng),導(dǎo)致變頻器不能正常工作的現(xiàn)象。因此,變頻器調(diào)試是從正確設(shè)置變頻器
    發(fā)表于 07-11 09:51 ?5152次閱讀

    串口屏LUA教程3-系統(tǒng)參數(shù)設(shè)置

    串口屏LUA教程3-系統(tǒng)參數(shù)設(shè)置
    發(fā)表于 04-29 13:07 ?6次下載

    變頻器的常用參數(shù)設(shè)置

    變頻器作為現(xiàn)代工業(yè)控制的核心設(shè)備,其參數(shù)設(shè)置對于設(shè)備的正常運行和性能至關(guān)重要。本文將詳細介紹變頻器的常用參數(shù)設(shè)置,包括基本參數(shù)、控制模式、輸出頻率、加速和減速時間等,并提供實際應(yīng)用中的指導(dǎo)原則,旨在幫助用戶合理配置
    的頭像 發(fā)表于 12-29 09:27 ?3577次閱讀

    匯川變頻器參數(shù)設(shè)置

    匯川變頻器參數(shù)設(shè)置是在工業(yè)領(lǐng)域中常用的一種設(shè)備,它能夠控制電動機的運行速度和輸出功率,提高生產(chǎn)效率和能源利用率。在使用匯川變頻器之前,需要對其進行參數(shù)設(shè)置,以確保其能夠滿足工作需求并達到最佳效果
    的頭像 發(fā)表于 01-11 14:23 ?6738次閱讀

    東元驅(qū)動器參數(shù)設(shè)置步驟及注意事項

    一、基本參數(shù)設(shè)置 1. 首先,連接好驅(qū)動器和電機,并確認電源和信號線連接正確。 2. 然后,進入驅(qū)動器的參數(shù)設(shè)置模式。具體方法可以參照驅(qū)動器的說明書或者網(wǎng)絡(luò)資料。 3. 找到基本參數(shù)設(shè)置選項,按照
    的頭像 發(fā)表于 04-12 08:48 ?1469次閱讀

    變頻器的基本參數(shù)設(shè)置

    變頻器作為現(xiàn)代工業(yè)中不可或缺的電力調(diào)整設(shè)備,其參數(shù)設(shè)置對于電機的穩(wěn)定運行、效率提升以及設(shè)備壽命的延長具有至關(guān)重要的作用。本文將深入探討變頻器的參數(shù)設(shè)置技術(shù),旨在為讀者提供一套全面、系統(tǒng)的參數(shù)設(shè)置方案,以滿足不同工業(yè)應(yīng)用的需求。
    的頭像 發(fā)表于 06-07 14:07 ?1191次閱讀

    金田變頻器怎么調(diào)參數(shù)設(shè)置

    金田變頻器是一種廣泛應(yīng)用于工業(yè)自動化領(lǐng)域的設(shè)備,其參數(shù)設(shè)置對于保證設(shè)備正常運行和提高生產(chǎn)效率具有重要意義。本文將詳細介紹金田變頻器的參數(shù)設(shè)置方法,包括基本參數(shù)設(shè)置、頻率設(shè)置、加減速時間
    的頭像 發(fā)表于 06-18 09:16 ?2892次閱讀

    變頻器參數(shù)設(shè)置技巧介紹

    引言 變頻器是一種通過改變電動機輸入電壓和頻率來控制電動機轉(zhuǎn)速的電力電子設(shè)備。它廣泛應(yīng)用于工業(yè)生產(chǎn)、建筑、交通等領(lǐng)域,可以有效地提高設(shè)備的運行效率和節(jié)能效果。變頻器參數(shù)設(shè)置是確保設(shè)備正常運行和提高
    的頭像 發(fā)表于 06-28 09:18 ?949次閱讀