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

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

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

3天內不再提示

一文詳解Vivado的ECO流程

FPGA之家 ? 來源:賽靈思中文社區論壇 ? 作者:Hong Han ? 2022-04-29 09:03 ? 次閱讀

有時我們需要在設計網表的基礎上微調一下邏輯,這樣可以無需修改代碼,也無需重新做綜合,在設計調試中可以節省時間同時維持其他邏輯無任何改動。

這里帶大家一起體驗一下Vivado 的ECO流程,以vivado自帶的Example Design為例, 直接用TCL命令修改網表,在正常的寄存器路徑之間加一級LUT。

1. 打開Vivado 界面

2. 打開Example Design "Wavegen":
File -> Project -> Open Example
選中Wavegen(HDL), 器件選擇xcku035

3. 點擊左側Flow Navigator 窗口 Run Implementation 按鈕, 完成綜合實現.

4. 打開Implemented Design (點擊左側Flow Navigator 窗口 Open Implemented Design 按鈕)

5. 選一條兩個寄存器之間的路徑
運行以下命令,選中打印出的路徑,雙擊可以查看時序報告,F4 鍵可以打開這條路徑的原理圖

 %report_timing -from [get_cells 
clkx_spd_i0/meta_harden_bus_new_i0/signal_meta_reg] -to [get_cells 
clkx_spd_i0/meta_harden_bus_new_i0/signal_dst_reg] -delay_type max -name test1

可以看到Data Path的布線延遲是0.504ns

5422a960-c751-11ec-bce3-dac502259ad0.png

路徑的原理圖

542d2854-c751-11ec-bce3-dac502259ad0.png

6. 把目的寄存器的D端從net上斷下來

%disconnect_net -net 
clkx_spd_i0/meta_harden_bus_new_i0/signal_meta_reg_n_0  -objects 
{clkx_spd_i0/meta_harden_bus_new_i0/signal_dst_reg/D}

在這里獲取操作對象(net, Pin) 的方法: 在原理圖中選中對象,然后查看走下角Property 窗口中的NAME 屬性

543974b0-c751-11ec-bce3-dac502259ad0.png

Pin被從Net上斷開后,會在原理圖上顯示n/c

5445524e-c751-11ec-bce3-dac502259ad0.png

7. 創建一個LUT1,并設置LUT的INIT property

%create_cell -reference LUT1clkx_spd_i0/meta_harden_bus_new_i0/my_lut1 
%set_property INIT 2'h1 [get_cells clkx_spd_i0/meta_harden_bus_new_i0/my_lut1]
54543d54-c751-11ec-bce3-dac502259ad0.png

可以看到這個新創建的LUT1所有端口(Pin)都是懸空的. 接下來的步驟要將這些pin連接到合適的net上.

8. 把LUT1的輸入端口連接到之前斷開的net上.

%connect_net -net clkx_spd_i0/meta_harden_bus_new_i0/signal_meta_reg_n_0  -objects {clkx_spd_i0/meta_harden_bus_new_i0/my_lut1/I0}

9. 創建一個新的net用來連接LUT1的輸出pin和之前斷下來的寄存器D pin

%create_net  clkx_spd_i0/meta_harden_bus_new_i0/my_net

10. 連接LUT1的輸出pin和之前斷下來的寄存器D pin 到新創建的net上

%connect_net -net clkx_spd_i0/meta_harden_bus_new_i0/my_net   -objects {clkx_spd_i0/meta_harden_bus_new_i0/my_lut1/O clkx_spd_i0/meta_harden_bus_new_i0/signal_dst_reg/D}

545fdaa6-c751-11ec-bce3-dac502259ad0.png

11. 在Netlist窗口選窗口選中新建的LUT1,將其拖曳到Device中空著的slice LUT bel中

對應的命令:

place_cell clkx_spd_i0/meta_harden_bus_new_i0/my_lut1 SLICE_X52Y83/B6LUT

12. 對新的LUT1兩端的net進行布線

%route_design -nets [get_nets -of [get_pins clkx_spd_i0/meta_harden_bus_new_i0/my_lut1/*]]

13.檢查布線結果確保沒有布線錯誤

%report_route_status

546c5704-c751-11ec-bce3-dac502259ad0.png

14.用步驟5的命令重新報一下時序

5476bfc8-c751-11ec-bce3-dac502259ad0.png

15. 生成bit文件

%write_bitstream test.bit

原文標題:【干貨分享】用ECO腳本的方式在網表中插入LUT1

文章出處:【微信公眾號:FPGA之家】歡迎添加關注!文章轉載請注明出處。

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

    關注

    10

    文章

    1715

    瀏覽量

    88471
  • ECO
    ECO
    +關注

    關注

    0

    文章

    52

    瀏覽量

    14867
  • Vivado
    +關注

    關注

    19

    文章

    808

    瀏覽量

    66329

原文標題:【干貨分享】用ECO腳本的方式在網表中插入LUT1

文章出處:【微信號:zhuyandz,微信公眾號:FPGA之家】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    ECO導入詳解

    ECO導入詳解
    發表于 08-20 15:13

    Vivado使用誤區與進階——在Vivado中實現ECO功能

    關于Tcl在Vivado中的應用文章從Tcl的基本語法和在Vivado中的應用展開,介紹了如何擴展甚至是定制FPGA設計實現流程后,引出了個更細節的應用場景:如何利用Tcl在已完成布
    發表于 11-18 18:26 ?5362次閱讀
    <b class='flag-5'>Vivado</b>使用誤區與進階——在<b class='flag-5'>Vivado</b>中實現<b class='flag-5'>ECO</b>功能

    如何在Vivado中執行工程變更命令 (ECO)

    了解如何在Vivado中執行工程變更單(ECO)。 本視頻將向您介紹ECO的常見用例,我們推薦的完成ECO流程,優勢和局限性,并將演示功
    的頭像 發表于 11-21 06:40 ?5135次閱讀
    如何在<b class='flag-5'>Vivado</b>中執行工程變更命令 (<b class='flag-5'>ECO</b>)

    使用ECO進行調試有哪些好處

    了解使用Vivado 2016.1中引入的ECO流程進行調試的好處,以及在ECO布局中替換ILA調試探針所需的步驟。
    的頭像 發表于 11-29 06:01 ?3676次閱讀
    使用<b class='flag-5'>ECO</b>進行調試有哪些好處

    用Tcl定制Vivado設計流程詳解

    工程模式的關鍵優勢在于可以通過在Vivado 中創建工程的方式管理整個設計流程,包括工程文件的位置、階段性關鍵報告的生成、重要數據的輸出和存儲等。
    的頭像 發表于 07-24 17:30 ?4571次閱讀
    用Tcl定制<b class='flag-5'>Vivado</b>設計<b class='flag-5'>流程</b><b class='flag-5'>詳解</b>

    Vivado綜合引擎的增量綜合流程

    Vivado 2019.1 版本開始,Vivado 綜合引擎就已經可以支持增量流程了。這使用戶能夠在設計變化較小時減少總的綜合運行時間。
    發表于 07-21 11:02 ?1645次閱讀

    起體驗VivadoECO流程

    帶大家起體驗VivadoECO流程,以vivado自帶的Example Design為
    的頭像 發表于 10-26 09:45 ?3658次閱讀
    <b class='flag-5'>一</b>起體驗<b class='flag-5'>Vivado</b> 的<b class='flag-5'>ECO</b><b class='flag-5'>流程</b>

    帶大家起體驗VivadoECO流程

    這里帶大家起體驗VivadoECO流程,以vivado自帶的Example Desig
    的頭像 發表于 11-29 11:04 ?4279次閱讀
    帶大家<b class='flag-5'>一</b>起體驗<b class='flag-5'>一</b>下<b class='flag-5'>Vivado</b>的<b class='flag-5'>ECO</b><b class='flag-5'>流程</b>

    Vivado設計流程指導手冊

    Vivado 設計分為 Project Mode 和 Non-project Mode 兩種模式,般簡單設計中,我們常用的是 Project Mode。在本手冊中,我們將以個簡單的實驗案例,
    發表于 03-22 11:39 ?50次下載
    <b class='flag-5'>Vivado</b>設計<b class='flag-5'>流程</b>指導手冊

    Vivado設計流程指導說明

    Vivado 設計分為 Project Mode 和 Non-project Mode 兩種模式,般簡單設計中,我們常用的是 Project Mode。在本手冊中,我們將以個簡單的實驗案例,
    發表于 03-25 14:39 ?28次下載

    詳解Xilinx FPGA的ECO功能

    ECO 指的是 Engineering Change Order ,即工程變更指令。目的是為了在設計的后期,快速靈活地做小范圍修改,從而盡可能的保持已經驗證的功能和時序。ECO 是從 IC 設計領域繼承而來,Vivado上 的
    的頭像 發表于 08-02 09:18 ?3782次閱讀
    <b class='flag-5'>詳解</b>Xilinx FPGA的<b class='flag-5'>ECO</b>功能

    用TCL定制Vivado設計實現流程

    今天推出Xilinx已發布的《Vivado使用誤區與進階》系列:用TCL定制Vivado設計實現流程
    的頭像 發表于 05-05 09:44 ?1048次閱讀
    用TCL定制<b class='flag-5'>Vivado</b>設計實現<b class='flag-5'>流程</b>

    Vivado中實現ECO功能

    關于 Tcl 在 Vivado中的應用文章從 Tcl 的基本語法和在 Vivado 中的 應用展開,繼上篇《用 Tcl 定制 Vivado 設計實現流程》介紹了如何擴展甚 至是定制 F
    的頭像 發表于 05-05 15:34 ?2574次閱讀
    在<b class='flag-5'>Vivado</b>中實現<b class='flag-5'>ECO</b>功能

    vivado仿真流程

    vivado開發軟件自帶了仿真工具,下面將介紹vivado的仿真流程,方便初學者進行仿真實驗。
    的頭像 發表于 07-18 09:06 ?4236次閱讀
    <b class='flag-5'>vivado</b>仿真<b class='flag-5'>流程</b>

    vivado主界面及設計流程

    Vivado設計主界面,它的左邊是設計流程導航窗口,是按照FPGA的設計流程設置的,只要按照導航窗口項往下進行,就會完成從設計輸入到最
    的頭像 發表于 09-17 15:40 ?2831次閱讀
    <b class='flag-5'>vivado</b>主界面及設計<b class='flag-5'>流程</b>