精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

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

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

3天內不再提示

Vivado使用技巧分享:OOC綜合技術運行流程

電子設計 ? 來源:CSDN 博主 ? 作者:FPGADesigner的博客 ? 2021-01-02 09:03 ? 次閱讀

創建綜合運行
一個“運行(run)”是指定義和配置設計在綜合過程中的各方面,包括:使用 的Xilinx器件、應用的約束集、啟動單個或多個綜合的選項、控制綜合引擎結果的選項。點擊Flow菜單中的Create Funs,或在Design Runs窗口中:

o4YBAF9uIvaAJx_cAABLFGO4fo4358.png

點擊工具欄中的+,即可打開新建運行窗口:

pIYBAF9uIviATYemAACONvLvDRU169.png

選擇Synthesis,點擊Next,打開配置綜合運行的窗口:

pIYBAF9uIvmAPVxqAABnSnw_Kno694.png

設置名稱、約束集、器件和策略,如果希望該運行為激活狀態,則選中Make Active。運行的默認名稱為synth_1、synth_2等等。點擊Next彈出啟動運行窗口:

pIYBAF9uIvqAOmfuAABdFjij23U942.png

Launch directory選擇啟動運行的目錄;Number of jobs設置了可以同時啟動多少個運行(run);Generate scripts only表示僅生成運行腳本(Windows下為bat文件,Linux下為sh文件);Do not launch now只會保存先前的設置,暫時不會啟動運行。運行的相關情況都顯示在Design Runs窗口中。

o4YBAF9uIvyAEpA-AABMQ7HyC0Q273.png

該窗口顯示了工程中所有的綜合和實現運行,進行配置、管理和啟動。一個綜合運行可以包含多個實現運行,窗口中報告了相關的運行狀態(not started、in progress、complete或out-of-date)。修改源文件、約束或工程設置都會導致狀態變為out-of-date。

雖然可以有多個綜合和實現運行,但是都只能有一個為active狀態,所有 的報告顯示的都是active運行的相關信息。比如Project Summary窗口中的編譯、資源等總結信息都屬于當前狀態為active的運行。選擇一個運行,右鍵->Make Active可以設置活躍狀態。

同樣,Flow Navigator和Flow菜單中的Run Synthesis也是啟動狀態為Active的運行。如果需要啟動其它運行,只能通過Design Runs窗口。

使用OOC綜合技術
OOC(Out-of-context)是Vivado提供的一項技術,選擇將HDL對象當作一個隔離模塊運行,完成自底向上的綜合流程。OOC具有如下特點:

  • 底層的OOC模塊相對于頂層模塊獨立運行,并且擁有自己的約束集合;
  • 運行了OOC模塊之后,再運行頂層模塊綜合時可以直接調用OOC綜合結果,而不需要重新運行一次綜合(除非修改了RTL設計或約束)。

由于不需要每次綜合時都運行整個設計,這項技術可以大大減少頂層模塊的綜合運行時間。IP核就是典型的采用OOC技術的代表,配置好IP核后可以選擇綜合模式為global(與頂層設計一起綜合)或Out-of-context(作為獨立模塊綜合),最好的做法就是選擇后者,以減少整體設計的綜合運行時間。

選擇需要添加到OOC運行的模塊,右鍵->Set As Out-Of-Context for Synthesis,彈出如下窗口:

pIYBAF9uIv2ADGhNAABR_wuSsjU374.png

其中Clock Constraint File必須創建一個新的XDC文件或在下拉菜單中選擇一個已經存在的XDC文件,該約束文件中要有該模塊時鐘信號的相關約束。點擊OK后,該模塊會出現在Design Runs窗口的Out-of-Context Module Runs目錄中,還有Compile Order窗口的Block Sources目錄中。

當運行了OOC綜合后,會產生底層模塊的綜合網表和存根文件(stub文件)。存根文件僅描述了底層模塊的輸入和輸出,在綜合頂層模塊時,通過存根文件來調用底層模塊,模塊內部當作黑盒子看待。運行實現時,Vivado會將OOC模塊的綜合網表插入到頂層網表中,從而完成設計。

導入網表文件
可以通過實例化低層次網表或第三方網表來手工構造一個自底向上的設計流程。但需要知道,Vivado綜合工具不會綜合和優化網表,因此XDC約束和綜合屬性也不會對導入的網表產生作用。事實上,Vivado綜合時既不會讀取也不會修改網表中的內容。可以按照如下流程完成相關處理:
1. 創建低層次網表:創建一個工程,以要導入的網表作為頂層模塊,將Settings->Synthesis->More Options設置為-mode out_of_context。這樣綜合時不會為該模塊產生I/O緩存器。綜合后,在Tcl控制臺輸入write_edif name.edf。
2. 設計中實例化低層次網表:頂層設計需要將低層次模塊作為黑盒子實例化,類似于前面提到的stub文件。因此需要創建一個Verilog/VHDL文件,僅定義網表的端口,信號名稱必須與網表中的端口名稱完全匹配。
3. 組合為完整設計:當創建了OOC模式的低層次網表,并且在頂層設計中正確地實例化后,將第一步導出的edif網表添加到工程中。綜合后,Vivado會將網表合并到頂層設計中。

Vivado IP和第三方綜合工具
大多數Xilinx發布的IP核采用IEEE P1735進行加密,只有Vivado綜合工具才支持對IP核的綜合,第三方綜合工具不能綜合Vivado中的IP核。如果想把Vivado中的IP核在第三方綜合工具中實例化,可以參考如下步驟:
1. 在Managed IP工程中(Vivado首頁->Tasks->Manage IP)創建并配置好IP核。
2. 生成IP核的輸出文件,包括綜合設計檢查點(DCP文件)。Vivado會創建一個stub文件(*_stub.v/*_stub.vhd),該文件會包含一些指令阻止從該文件中推斷出I/O緩存器。根據使用的第三方綜合器可能需要修改此文件。
3. 使用Vivado綜合帶有stub文件的Xilinx IP核。
4. 使用第三方綜合工具產生的網表和Xilinx IP核的DCP文件一起運行實現步驟。

編輯:hfy


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

    關注

    71

    文章

    2164

    瀏覽量

    121013
  • WINDOWS
    +關注

    關注

    3

    文章

    3524

    瀏覽量

    88437
  • Vivado
    +關注

    關注

    19

    文章

    808

    瀏覽量

    66331
收藏 人收藏

    評論

    相關推薦

    U50的AMD Vivado Design Tool flow設置

    AMD Alveo 加速卡使用有兩種流程,AMD Vitis Software Platform flow 和 AMD Vivado Design Tool flow。比較常見的是 Vitis
    的頭像 發表于 11-13 10:14 ?106次閱讀
    U50的AMD <b class='flag-5'>Vivado</b> Design Tool flow設置

    Vivado使用小技巧

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

    Vivado 2024.1版本的新特性(2)

    綜合角度看,Vivado 2024.1對SystemVerilog和VHDL-2019的一些特性開始支持。先看SystemVerilog。
    的頭像 發表于 09-18 10:34 ?659次閱讀
    <b class='flag-5'>Vivado</b> 2024.1版本的新特性(2)

    變電所運行維護的流程措施

    為了確保電網的穩定運行和高效供電,變電所的運行與維護工作至關重要,這些工作不僅需要專業的技術知識,還需要細致的操作規程和嚴格的管理制度。以下詳細介紹變電所運行維護的幾個關鍵環節及其執行
    的頭像 發表于 08-30 11:05 ?533次閱讀

    spark運行的基本流程

    前言: 由于最近對spark的運行流程非常感興趣,所以閱讀了《Spark大數據處理:技術、應用與性能優化》一書。通過這本書的學習,了解了spark的核心技術、實際應用場景以及性能優化的
    的頭像 發表于 07-02 10:31 ?365次閱讀
    spark<b class='flag-5'>運行</b>的基本<b class='flag-5'>流程</b>

    CT分析儀試驗運行流程——每日了解電力知識

    今天武漢摩恩智能電氣有限公司帶大家了解一下MEVA-I CT分析儀。 MEVA-I CT分析儀試驗運行的一般流程: 儀器的軟件運行可以分為“等待新建試驗”,“等待試驗”,“查看結果”,“運行
    的頭像 發表于 05-22 09:55 ?380次閱讀
    CT分析儀試驗<b class='flag-5'>運行</b><b class='flag-5'>流程</b>——每日了解電力知識

    如何在AMD Vivado? Design Tool中用工程模式使用DFX流程

    本文介紹了在 AMD Vivado? Design Tool 中用工程模式使用 DFX 流程以及需要注意的地方。在使用 DFX 工程模式的過程中要把具體步驟映射到相應的 DFX 非工程模式的步驟,這樣才能更好地理解整個流程
    的頭像 發表于 04-17 09:28 ?764次閱讀
    如何在AMD <b class='flag-5'>Vivado</b>? Design Tool中用工程模式使用DFX<b class='flag-5'>流程</b>?

    綜合管廊環境與設備監控系統保障城市綜合管廊安全運行

    張欣 安科瑞電氣股份有限公司 上海嘉定 201801 摘要:在城市化發展進程中,城市綜合管廊綜合體作為市政管網的全新模式,得到了國家政策的大力支持,城市管廊的病害特征以及運行安全問題得到了業內人士
    的頭像 發表于 04-03 15:07 ?399次閱讀
    <b class='flag-5'>綜合</b>管廊環境與設備監控系統保障城市<b class='flag-5'>綜合</b>管廊安全<b class='flag-5'>運行</b>

    城市地下綜合管廊應如何保障安全運行

    健康運行的重要基礎設施。綜合管廊電力艙內敷設有大量電力電纜,且艙室空間相對封閉,電氣火災是綜合管廊內主要危險之一。火災自動報警系統作為附屬設施的重要組成部分,為綜合管廊提供必要的安全保
    的頭像 發表于 04-03 15:04 ?626次閱讀
    城市地下<b class='flag-5'>綜合</b>管廊應如何保障安全<b class='flag-5'>運行</b>

    深入探索Vivado非工程模式FPGA設計流程

    在設計過程的每個階段,設計者均可以打開Vivado集成開發環境,對存儲器中保存的當前設計進行分析和操作。
    發表于 04-03 09:36 ?875次閱讀
    深入探索<b class='flag-5'>Vivado</b>非工程模式FPGA設計<b class='flag-5'>流程</b>

    如何禁止vivado自動生成 bufg

    Vivado中禁止自動生成BUFG(Buffered Clock Gate)可以通過以下步驟實現。 首先,讓我們簡要了解一下什么是BUFG。BUFG是一個時鐘緩沖器,用于緩沖輸入時鐘信號,使其更穩
    的頭像 發表于 01-05 14:31 ?1981次閱讀

    Vivado時序問題分析

    有些時候在寫完代碼之后呢,Vivado時序報紅,Timing一欄有很多時序問題。
    的頭像 發表于 01-05 10:18 ?1935次閱讀

    VIVADO安裝問題解決

    vivado出現安裝問題剛開始還以為是安裝路徑包含中文空格了,重裝的注意了一下,發現還是這個問題。。。。后來又一頓操作猛如虎,終于發現了問題。出這個問題的原因是vivado壓縮包解壓的路徑包含中文了把解壓文件放到不含中文的地方,再重新安裝,安裝路徑也不能含中文。然后。。。
    發表于 12-22 10:56 ?0次下載

    VIVADO軟件使用問題總結

    【關鍵問題!!!!重要!!!】VIVADO會在MESSAGE窗口出提示很多錯誤和警告信息!
    的頭像 發表于 12-15 10:11 ?1797次閱讀
    <b class='flag-5'>VIVADO</b>軟件使用問題總結

    Vivado與ISE同時運行出現的奇怪現象

    近幾天調試開發板,主芯片是XC7A100T,用Vivado給開發板下載bit文件,正常工作。
    的頭像 發表于 12-04 09:54 ?938次閱讀