RM新时代网站-首页

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

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

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

Xilinx FPGA案例學習之Vivado設計綜合約束

電子設計 ? 來源:FPGA開源工作室 ? 作者:FPGA開源工作室 ? 2020-11-23 14:16 ? 次閱讀

在 Flow Navigator 中點擊設置, 然后選擇Synthesis,或者 selectFlow > Settings > Synthesis Settings。

如圖1所示:


1、綜合約束

在“設置”對話框的“約束”部分下,選擇“默認約束設置”作為活動約束設置;包含在Xilinx設計約束(XDC)文件中捕獲的設計約束的一組文件,可以將其應用于設計中。兩種類型的設計約束是:

1) 物理約束:這些約束定義引腳的位置以及單元(例如Block RAM,LUT,觸發(fā)器和設備配置設置)的絕對或相對位置。

2) 時序約束:這些約束定義了設計的頻率要求。由于沒有時序限制,Vivado設計套件僅針對線長度和布局擁堵來優(yōu)化設計。

2、綜合策略


1) Defaults(默認設置)


2) RuntimeOptimized

執(zhí)行較少的時序優(yōu)化,并消除一些RTL優(yōu)化以減少綜合運行時間。

3) AreaOptimized_high

執(zhí)行常規(guī)面積優(yōu)化,包括強制執(zhí)行三進制加法器,在比較器中使用新閾值以使用進位鏈以及實現(xiàn)面積優(yōu)化的多路復用器。

4) AreaOptimized_medium

執(zhí)行常規(guī)面積優(yōu)化,包括更改控制集優(yōu)化的閾值,強制執(zhí)行三進制加法器,將推理的乘法器閾值降低到DSP模塊,將移位寄存器移入BRAM,在比較器中使用較低閾值以使用進位鏈,以及進行區(qū)域優(yōu)化的MUX操作。

5) AlternateRoutability

一組提高路由能力的算法(較少使用MUXF和CARRY)。

6) AreaMapLargeShiftRegToBRAM

檢測大型移位寄存器,并使用專用的Block RAM實現(xiàn)它們。

7) AreaMultThresholdDSP

專用DSP塊推斷的下限閾值。

8) FewerCarryChains

較高的操作數(shù)大小閾值以使用LUT代替進位鏈。

3、其他選項

-flatten_hierarchy:確定Vivado綜合如何控制層次結構。

- none:指示綜合工具不要展平層次結構。綜合的輸出與原始RTL具有相同的層次結構。

-full :指示工具完全展平層次結構,僅保留頂層。

-rebuilt:設置后,重新構建允許綜合工具展平層次結構,執(zhí)行綜合,然后基于原始RTL重建層次結構。該值使QoR受益于跨邊界優(yōu)化,其最終層次類似于RTL,以便于分析。

-gated_clock_conversion:啟用和禁用綜合工具轉換時鐘邏輯的功能。

-bufg: 控制工具在設計中推斷出多少BUFG。當設計網(wǎng)表中的其他BUFG對合成過程不可見時,Vivado設計工具將使用此選項。該工具可以推斷出指定的數(shù)量,并跟蹤RTL中實例化的BUFG數(shù)量。例如,如果-bufg選項設置為12,并且在RTL中實例化了三個BUFG,則Vivado綜合工具最多可以推斷出另外九個BUFG。

-fanout_limit:指定信號在開始復制邏輯之前必須驅動的負載數(shù)。此全局限制是一般指南,當工具確定有必要時,可以忽略該選項。

-retiming :布爾選項通過跨組合門或LUT自動移動寄存器(寄存器平衡)來提供選項,以提高時鐘內(nèi)順序路徑的電路性能。它保持了電路的原始行為和等待時間,并且不需要更改RTL源。默認為關閉。

-fsm_extraction : 控制綜合如何提取和映射有限狀態(tài)機。 FSM_ENCODING更詳細地描述了這些選項。

FSM_ENCODING可以放在狀態(tài)機寄存器上。合法的值是“ one_hot”,“ sequential”,“johnson”,“ gray”,“ auto”和“ none”。“ auto”值是默認值,并允許該工具確定最佳編碼??梢栽赗TL或XDC中設置此屬性。

-keep_equivalent_registers :防止合并具有相同輸入邏輯的寄存器。

-resource_sharing:設置不同信號之間的算術運算符共享。這些值是自動的,打開的和關閉的。自動值集執(zhí)行資源共享以取決于設計時間。

-control_set_opt_threshold: 將時鐘使能優(yōu)化的閾值設置為較少的控制集。默認值為自動,這意味著該工具將根據(jù)目標設備選擇一個值。支持任何正整數(shù)值。

給定值是工具將控制集移入寄存器的D邏輯所需的扇出數(shù)量。如果扇出大于該值,則該工具嘗試使該信號驅動該寄存器上的control_set_pin。

-no_lc:選中后,此選項將關閉LUT合并。

-no_srlextract:選中后,此選項將關閉完整設計的SRL提取,以便將其實現(xiàn)為簡單寄存器。

-shreg_min_size:推斷SRL的閾值。默認設置為3。這將設置順序元素的數(shù)量,這些元素將導致推斷固定延遲鏈的SRL(靜態(tài)SRL)。策略也將此設置定義為5和10。

-max_bram:描述設計中允許的最大塊RAM數(shù)量。通常在設計中有黑匣子或第三方網(wǎng)表時使用此選項,并允許設計人員為這些網(wǎng)表節(jié)省空間。

-max_uram:設置設計中允許的最大UltraRAM(UltraScale+?設備塊RAM)塊。默認設置為-1表示該工具選擇指定零件允許的最大數(shù)量。

-max_dsp:描述設計中允許的最大塊DSP數(shù)量。通常在設計中有黑匣子或第三方網(wǎng)表時使用,并為這些網(wǎng)表留出空間。默認設置為-1表示該工具選擇指定零件允許的最大數(shù)量。

-max_bram_cascade_height:控制該工具可以級聯(lián)的BRAM的最大數(shù)量。默認設置為-1表示該工具選擇指定零件允許的最大數(shù)量。

-max_uram_cascade_height:控制該工具可以級聯(lián)的UltraScale+設備UltraRAM塊的最大數(shù)量。默認設置為-1表示該工具選擇指定零件允許的最大數(shù)量。

-cascade_dsp: 控制如何實現(xiàn)總和DSP模塊輸出中的加法器。默認情況下,使用塊內(nèi)置加法器鏈計算DSP輸出的總和。價值樹迫使總和在結構中實現(xiàn)。值是:auto,tree和force。默認為自動。

-no_timing_driven: (可選)禁用默認的時序驅動綜合算法。這導致減少了綜合運行時間,但忽略了時序對綜合的影響。

-sfcu:在單文件編譯單元模式下運行綜合。

-assert: 啟用要評估的VHDL斷言語句。故障或錯誤的嚴重性級別會停止綜合流程并產(chǎn)生錯誤。警告的嚴重性級別會生成警告。

tcl.pre和tcl.post選項是在合成之前和之后立即運行的Tcl文件的掛鉤。

4、Tcl Commands to Get Property

get_property DIRECTORY [current_project]
get_property DIRECTORY [current_run]

編輯:hfy


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

    關注

    1629

    文章

    21729

    瀏覽量

    602986
  • Xilinx
    +關注

    關注

    71

    文章

    2167

    瀏覽量

    121303
  • Vivado
    +關注

    關注

    19

    文章

    812

    瀏覽量

    66470
收藏 人收藏

    評論

    相關推薦

    助力AIoT應用:在米爾FPGA開發(fā)板上實現(xiàn)Tiny YOLO V4

    Darknet 上訓練的截圖 四、 通過 Vivado HLS 為 FPGA 準備模型要將模型部署到 FPGA,需要將神經(jīng)網(wǎng)絡操作轉換為硬件級描述。使用 Xilinx 的 Vitis
    發(fā)表于 12-06 17:18

    Xilinx_Vivado_SDK的安裝教程

    首先是去官網(wǎng)下載安裝包:https://www.xilinx.com/support/download.html。 下載這個最大的、支持所有的 OS 如 Windows/Linux 的安裝包。 下載
    的頭像 發(fā)表于 11-16 09:53 ?799次閱讀
    <b class='flag-5'>Xilinx_Vivado</b>_SDK的安裝教程

    正點原子fpga開發(fā)指南

    定制硬件加速的應用。 1. 開發(fā)環(huán)境搭建 1.1 安裝Xilinx Vivado VivadoXilinx提供的綜合設計環(huán)境,用于設計、仿
    的頭像 發(fā)表于 11-13 09:35 ?369次閱讀

    Vivado使用小技巧

    有時我們對時序約束進行了一些調(diào)整,希望能夠快速看到對應的時序報告,而又不希望重新布局布線。這時,我們可以打開布線后的dcp,直接在Vivado Tcl Console里輸入更新后的時序約束。如果調(diào)整
    的頭像 發(fā)表于 10-24 15:08 ?305次閱讀
    <b class='flag-5'>Vivado</b>使用小技巧

    深度解析FPGA中的時序約束

    建立時間和保持時間是FPGA時序約束中兩個最基本的概念,同樣在芯片電路時序分析中也存在。
    的頭像 發(fā)表于 08-06 11:40 ?660次閱讀
    深度解析<b class='flag-5'>FPGA</b>中的時序<b class='flag-5'>約束</b>

    FPGA 高級設計:時序分析和收斂

    FPGA/ASIC 時序定義的基礎概念。后面要講到的其它時序約束都是建立在周期約束的基礎上的,很多其它時序公式,可以用周期公式推導。周期約束是一個基本時序和
    發(fā)表于 06-17 17:07

    FPGA | Xilinx ISE14.7 LVDS應用

    今天給大俠帶來 Xilinx ISE14.7 LVDS應用,話不多說,上貨。 最近項目需要用到差分信號傳輸,于是看了一下FPGA上差分信號的使用。Xilinx FPGA中,主要通過
    發(fā)表于 06-13 16:28

    一個更適合工程師和研究僧的FPGA提升課程

    各位編程精英er~ F學社打造的FPGA工程師培訓班上線后,有不少同學后臺私信詢問:“能不能出個那種專門針對某個知識點的課程呢?我想針對自己的薄弱點深入學習?!? 貼心如我,當然會滿足大家的學習
    發(fā)表于 06-05 10:09

    Xilinx FPGA編程技巧常用時序約束詳解

    今天給大俠帶來Xilinx FPGA編程技巧常用時序約束詳解,話不多說,上貨。 基本的約束方法 為了保證成功的設計,所有路徑的時序要求
    發(fā)表于 05-06 15:51

    Xilinx FPGA約束設置基礎

    LOC約束FPGA設計中最基本的布局約束綜合約束,能夠定義基本設計單元在FPGA芯片中的位置,可實現(xiàn)絕對定位、范圍定位以及區(qū)域定位。
    發(fā)表于 04-26 17:05 ?1185次閱讀
    <b class='flag-5'>Xilinx</b> <b class='flag-5'>FPGA</b>的<b class='flag-5'>約束</b>設置基礎

    Xilinx FPGA編程技巧常用時序約束詳解

    今天給大俠帶來Xilinx FPGA編程技巧常用時序約束詳解,話不多說,上貨。 基本的約束方法為了保證成功的設計,所有路徑的時序要求
    發(fā)表于 04-12 17:39

    Xilinx fpga芯片系列有哪些

    Xilinx FPGA芯片擁有多個系列和型號,以滿足不同應用領域的需求。以下是一些主要的Xilinx FPGA芯片系列及其特點。
    的頭像 發(fā)表于 03-14 16:24 ?3280次閱讀

    FPGA設計高級技巧 Xilinx

    FPGA設計高級技巧 Xilinx
    發(fā)表于 01-08 22:15

    值得多看的FPGA 學習路線

    時序和面積的約束、各個階段的仿真等等。我們至少應該知道,為什么需要這些步驟,每個步驟都完成了什么功能。 FPGA入門學習第三部分:開發(fā)工具 FPGA開發(fā)工具的使用也是入門
    發(fā)表于 01-02 23:03

    FPGA物理約束布局約束

    在進行布局約束前,通常會對現(xiàn)有設計進行設計實現(xiàn)(Implementation)編譯。在完成第一次設計實現(xiàn)編譯后,工程設計通常會不斷更新迭代,此時對于設計中一些固定不變的邏輯,設計者希望它們的編譯結果
    的頭像 發(fā)表于 01-02 14:13 ?1498次閱讀
    <b class='flag-5'>FPGA</b>物理<b class='flag-5'>約束</b><b class='flag-5'>之</b>布局<b class='flag-5'>約束</b>
    RM新时代网站-首页