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

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

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

帶大家一起體驗一下Vivado的ECO流程

FPGA之家 ? 來源:賽靈思中文社區(qū)論壇 ? 作者:Hong Han ? 2020-11-29 11:04 ? 次閱讀

有時我們需要在設(shè)計網(wǎng)表的基礎(chǔ)上微調(diào)一下邏輯,這樣可以無需修改代碼,也無需重新做綜合,在設(shè)計調(diào)試中可以節(jié)省時間同時維持其他邏輯無任何改動。

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

1. 打開Vivado 界面

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

3. 點擊左側(cè)Flow Navigator 窗口 Run Implementation 按鈕, 完成綜合實現(xiàn).

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

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

%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

路徑的原理圖

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 屬性

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

7. 創(chuàng)建一個LUT1,并設(shè)置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]

可以看到這個新創(chuàng)建的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. 創(chuàng)建一個新的net用來連接LUT1的輸出pin和之前斷下來的寄存器D pin

%create_net clkx_spd_i0/meta_harden_bus_new_i0/my_net

10. 連接LUT1的輸出pin和之前斷下來的寄存器D pin 到新創(chuàng)建的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}

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

對應(yīng)的命令:

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.檢查布線結(jié)果確保沒有布線錯誤

%report_route_status

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

15. 生成bit文件

%write_bitstream test.bit

責(zé)任編輯:lq

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

    關(guān)注

    0

    文章

    51

    瀏覽量

    14853
  • 腳本
    +關(guān)注

    關(guān)注

    1

    文章

    387

    瀏覽量

    14811
  • Vivado
    +關(guān)注

    關(guān)注

    19

    文章

    805

    瀏覽量

    66230

原文標(biāo)題:【干貨分享】用ECO腳本的方式在網(wǎng)表中插入LUT1

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

收藏 人收藏

    評論

    相關(guān)推薦

    有鉛錫膏跟無鉛錫膏可以一起用嗎

    的錫膏丟掉就很浪費,如果下次貼片用的是另款錫膏,這樣的話這兩種錫膏能一起攪拌來用嗎?下面深圳佳金源錫膏廠家為大家講解一下:首先,我們了解
    的頭像 發(fā)表于 10-14 15:36 ?158次閱讀
    有鉛錫膏跟無鉛錫膏可以<b class='flag-5'>一起</b>用嗎

    模擬地和電源地能接在一起

    模擬地和電源地是否能接在一起,取決于電子系統(tǒng)的具體要求和設(shè)計。在電子系統(tǒng)中,地(Ground)是個共同的參考點,用于構(gòu)建電位參考平面。電源地是所有電源網(wǎng)絡(luò)的參考點,用于確保電源的穩(wěn)定性和系統(tǒng)的正常工作。模擬地則與模擬電路相關(guān),用于提供參考電位。
    的頭像 發(fā)表于 09-15 11:43 ?756次閱讀

    數(shù)字地跟模擬地能不能接一起

    ),它們分別對應(yīng)數(shù)字電路和模擬電路的參考電位。在某些情況,設(shè)計者可能會考慮將數(shù)字地和模擬地連接在一起,但這種做法需要謹慎處理,因為不當(dāng)?shù)倪B接可能會導(dǎo)致電路性能下降,甚至損壞設(shè)備。 數(shù)字地與模擬地的概念 數(shù)字地 : 數(shù)字電路處理的是離散的信號,如二進制數(shù)據(jù)。
    的頭像 發(fā)表于 09-06 10:36 ?384次閱讀

    增量式編碼器3大特點,工作模式,精度,輸出脈沖信號 一起了解一下

    增量式編碼器3大特點,工作模式,精度,輸出脈沖信號...一起了解一下嗎?在現(xiàn)代工業(yè)自動化和控制系統(tǒng)中,增量式編碼器扮演著至關(guān)重要的角色。它可以將機械運動轉(zhuǎn)化為電信號,為各類設(shè)備提供精確的位置和速度
    的頭像 發(fā)表于 08-15 14:20 ?493次閱讀
    增量式編碼器3大特點,工作模式,精度,輸出脈沖信號 <b class='flag-5'>一起</b>了解<b class='flag-5'>一下</b>嗎

    絕對值編碼器原理,特性,應(yīng)用...一起了解一下

    絕對值編碼器特性:絕對值編碼器的最大特點就是其輸出的位置值是絕對的,不受電源中斷或系統(tǒng)重啟的影響。這意味著旦確定了位置,無論何時重新上電或系統(tǒng)重新啟動,編碼器都能準(zhǔn)確地報告當(dāng)前位置,無需進行回零
    的頭像 發(fā)表于 07-26 10:00 ?586次閱讀
    絕對值編碼器原理,特性,應(yīng)用...<b class='flag-5'>一起</b>了解<b class='flag-5'>一下</b>唄

    請問idf.py build是否可以配置多個進程一起編譯?

    請教一下 idf.py build 如何配置多個進程一起編譯? 就像make -j4 謝謝!
    發(fā)表于 06-21 06:41

    數(shù)字地跟模擬地能不能接一起,數(shù)字地跟模擬地的區(qū)別

    數(shù)字地和模擬地在些情況可以接在一起,但在另外些情況需要分開處理。這主要取決于具體的應(yīng)用場景和設(shè)計要求。
    的頭像 發(fā)表于 06-10 16:31 ?2457次閱讀

    使用FatFS和FreeRTOS一起工作時,發(fā)現(xiàn)運行段時間后,F(xiàn)ATFS就會出現(xiàn)m_sync不成功的情況,為什么?

    程序流程是這樣的:每1秒寫7個字節(jié),先m_write,再m_sync。 當(dāng)使用FatFS和FreeRTOS一起工作時,發(fā)現(xiàn)運行段時間后,F(xiàn)ATFS就會出現(xiàn)m_sync不成功的情況。 但不
    發(fā)表于 04-30 06:36

    六類網(wǎng)線可以和強電一起走嗎

    六類網(wǎng)線理論上不建議和強電一起走。從布線規(guī)范的角度來看,弱電線路和強電線路通常不建議共用同橋架,以避免潛在的電磁干擾。然而,多年的施工經(jīng)驗表明,在某些情況,強電線和弱電網(wǎng)線可能一起
    的頭像 發(fā)表于 04-19 09:55 ?4941次閱讀

    #新開端、新起點,2024一起加油#

    ;2024一起加油\"則表達了大家共同努力,相互支持的決心和信念。 在2024年,無論你的目標(biāo)是什么,都希望你能保持這種積極的心態(tài),勇敢地面對挑戰(zhàn),不斷地學(xué)習(xí)和進步。同時,也希望大家能夠相互鼓勵,共同前進,
    發(fā)表于 02-26 21:01

    變壓器有沒有過負荷?幾種經(jīng)典狀態(tài)給大家分析一下

    變壓器有沒有過負荷?幾種經(jīng)典狀態(tài)給大家分析一下 變壓器是種電力設(shè)備,在電力傳輸和配電系統(tǒng)中起著重要的作用。它能夠改變電壓的大小,使得電能可以高效地傳輸和分配。然而,在長時間運行或特定情況
    的頭像 發(fā)表于 12-19 15:47 ?943次閱讀

    AD7606的AGND和VXGND是否定要接在一起?

    你好: 想咨詢一下,我們正使用貴公司AD7606作為模擬輸入轉(zhuǎn)換芯片,在使用過程中遇到了個問題,因為芯片的AGND和VXGND分開設(shè)計沒有共接在一起,這樣VXGND和VIN就可以實現(xiàn)正負電壓采集
    發(fā)表于 12-14 07:36

    電源地和設(shè)備地連一起了造成USB信號不穩(wěn)定,該怎么解決?

    改善,但還是會偶爾掉一下。 再接上信號增強轉(zhuǎn)接板,可以避免這問題。 問題:1、如果不想接信號增強轉(zhuǎn)接板,可以怎么避免這問題 2、雖然做了物理隔離,但是不是還是因為電源地和設(shè)備地連一起了?從而接到了金屬外殼,導(dǎo)致地平面對USB信號有影響
    發(fā)表于 12-04 18:26

    盤點一下CST電磁仿真軟件的求解器

    今天我們一起來盤點一下CST電磁仿真軟件那些牛叉的求解器??靵頂?shù)一下,你用了里面的幾種吧!
    的頭像 發(fā)表于 11-20 10:18 ?5898次閱讀
    盤點<b class='flag-5'>一下</b>CST電磁仿真軟件的求解器

    javaweb和springboot能一起用嗎

    JavaWeb 和 SpringBoot 是兩種針對 Java 程序開發(fā)的框架,它們可以在一起使用。在本文中,我將詳細介紹 JavaWeb 和 SpringBoot 的關(guān)系,并探討如何結(jié)合使用這兩個
    的頭像 發(fā)表于 11-16 10:54 ?1949次閱讀