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

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

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

        3天內不再提示

        Vivado工程升級及板級信號調試方案

        FPGA技術江湖 ? 來源:網絡交換FPGA ? 2023-02-09 09:36 ? 次閱讀

        本次操作包括:工程的版本遷移,板級測試時信號的抓取。

        如何使用新版本的vivado去打開舊版本的vivado工程

        如何使用新版本的vivado去打開舊版本的vivado工程。

        對于舊版本的vivado工程或者是ise工程,更新到新版本的vivado環境下有兩種方法:

        1、直接用新版本vivado打開原有工程文件,進行IP核更新; 2、拷貝原有工程設計文件、約束文件、IP核文件夾至新建新版本vivado空白工程文件下,進行更新。

        1、在舊版本vivado基礎上直接升級

        我們先來介紹一下如何直接使用新版本打開舊版本工程并且進行升級。

        814029b2-a7d5-11ed-bfe3-dac502259ad0.png

        直接使用新版本vivado打開vivado的工程文件。

        81699f5e-a7d5-11ed-bfe3-dac502259ad0.png

        對于新版本vivado一般在打開舊版本工程時都會自動進行更新默認自動更新就好。 打開工程之后,需要對舊版本工程的IP核進行升級操作。點擊Reports->Report IP Status查看IP核被鎖狀態進行升級。 818bbde6-a7d5-11ed-bfe3-dac502259ad0.png

        81a07fd8-a7d5-11ed-bfe3-dac502259ad0.png

        選中所有IP核進行升級。

        81cd416c-a7d5-11ed-bfe3-dac502259ad0.png

        點擊確定。

        81e7726c-a7d5-11ed-bfe3-dac502259ad0.jpg

        保持默認不使用核容器,(Core Container沒有用過,我都是默認不使用)。

        8207998e-a7d5-11ed-bfe3-dac502259ad0.png

        升級完成之后的界面如圖所示。

        如何使用新版本的vivado去打開舊版本的vivado工程

        debug步驟:

        在需要debug的輸入輸出端口列表前加 (* mark_debug = “true” *)。

        在編譯通過后,進行綜合生成網表等文件,點setup debug進行添加。

        保存,xdc中應該有約束了,原理圖里也有ila_core 模塊,直接進行實現即布局布線。

        在線調試:生成比特后下載,run trigger。

        注意:在有多個debug端口時,會引入1個以上ila_core,每一個ila_core 的時鐘域都是獨立的,且在每一個ila_core中各個端口的時鐘域是一樣的。

        1、設置信號抓取標記

        將需要測試的端口前標記上(*mark_debug = “1”*)或者(*mark_debug = “true”*)

        注意:這里最好將需要測試的端口信號打一拍再進行測試,因為輸入輸出端口的驅動單元類型往往是不一樣的,比如兩個紅框之間的rgmii_txd信號它的驅動單元類型就是ODDR,這將影響布線到此處的邏輯分析儀ila的探針的連接,具體的我也不清楚應該是驅動能力不匹配之類的,反正最好實現的時候會報錯。如果不打拍則在后續設置setup debug的時候就要注意去除不符合驅動類型的信號。

        822af32a-a7d5-11ed-bfe3-dac502259ad0.jpg

        2、建立debug文件

        824b9512-a7d5-11ed-bfe3-dac502259ad0.png

        添加完debug標記后,進行編譯、綜合,沒有問題則可以查看當前原理圖(其實也可以不用看,這里只是為了對比ila模塊)然后點擊Set Up Debug對剛剛添加的信號進行設置。

        8274be56-a7d5-11ed-bfe3-dac502259ad0.jpg

        設置的信號有幾個需要注意的地方:

        1、關于時鐘域的選擇,如圖紅框部分,這些時鐘需要選擇free clock,所謂free clock(按照我自己的理解,也可能不準確)就是系統一上電就能運行的時鐘,并且不會因為復位以外的條件停振,比如有些時鐘為了節省功耗,僅在需要進行數據交換時振動,在其他時刻保持低電平,但是這種時鐘就不是free clock。

        8297fd3a-a7d5-11ed-bfe3-dac502259ad0.jpg

        2、注意選擇具有符合標準驅動單元的信號,這里右側紅框中都是可以的,但是對于DDR型的驅動信號就會出錯。

        3、同一個時鐘域的信號都在同一個ila模塊下,即有幾個時鐘域就會有幾個ila模塊。

        82cb2e6c-a7d5-11ed-bfe3-dac502259ad0.png

        這里需要注意:

        1、是選擇采樣深度,會占用一定的FPGA資源,所以如果設計系統簡單就可以選擇多一點,可以看到較長時鐘周期內存儲的信號變化。

        2、選擇上后,可以進行高級設置操作(選了也沒用上==)。

        82e8dfd4-a7d5-11ed-bfe3-dac502259ad0.png

        可以看到這里的summary是4個時鐘域和之前選擇一致。

        83150636-a7d5-11ed-bfe3-dac502259ad0.png

        83413e04-a7d5-11ed-bfe3-dac502259ad0.png

        這是兩張原理圖,后者的紅框框部分是添加的4個ila模塊,中間藍色圓框部分是debug hub,即連接FPGA和jtag的部分。

        835d60de-a7d5-11ed-bfe3-dac502259ad0.png

        83767af6-a7d5-11ed-bfe3-dac502259ad0.png

        在底部Debug窗口可以看到各個ila模塊的時鐘選擇。

        83b03188-a7d5-11ed-bfe3-dac502259ad0.png

        對于debug hub時鐘域的選擇查看可以通過tcl命令也可以點擊原理圖連線的方式,在左側會有連接顯示,這里看到是連接到了ila3模塊上,這樣不太好,因為如果ila3的時鐘沒選擇對就會導致整個debug hub在后面下載比特時無法被檢測到,就算其他ila的時鐘對了也白瞎。因為計算機是通過jtag返回數據的,而jtag又靠著debug hub 連接fpga的ila。

        3、完善XDC文件,實現電路

        83e7ceb8-a7d5-11ed-bfe3-dac502259ad0.jpg

        修改完成之后,依然需要保存修改,看到這里沒有保存約束文件在214行。

        8404a66e-a7d5-11ed-bfe3-dac502259ad0.jpg

        保存之后xdc增加了ila模塊的對應約束。

        843f01ec-a7d5-11ed-bfe3-dac502259ad0.jpg

        這里對應debug hub 的連接時鐘。

        845ae68c-a7d5-11ed-bfe3-dac502259ad0.png

        之前說了debug hub時鐘保持默認的缺點,這里通過tcl命令進行修改,通過查看ug908文檔可以知道推薦的debug hub時鐘在100Mhz左右,且至少在JTAG下載速率的2.5倍以上,采樣定理嘛,一般jtag速率默認15Mhz,查看代碼中時鐘生成部分,發現CLK_OUT2也就是mac的用戶側時鐘就是100Mhz,所以我們選擇debug hub時鐘為100Mhz。

        847cb37a-a7d5-11ed-bfe3-dac502259ad0.jpg

        修改完成后,查看xdc確認已經修改了(其實也可以直接通過xdc

        修改,但是直接修改xdc軟件可能會提示綜合過期,讓重新綜合,而通過tcl則可以直接進行后面的步驟)。

        8499de32-a7d5-11ed-bfe3-dac502259ad0.png

        我們再次查看原理圖,可以看到debug hub的時鐘域已經修改。

        4、生成比特流文件,進行板級調試并抓取信號

        84ce7e12-a7d5-11ed-bfe3-dac502259ad0.png

        直接生成比特文件。

        84ee80a4-a7d5-11ed-bfe3-dac502259ad0.png

        相比較之前的工程版本遷移時的下載界面,紅框部分多出了后綴為ltx的文件,即邏輯分析儀的探針文件。

        850e140a-a7d5-11ed-bfe3-dac502259ad0.png

        下載完成后會彈出4個dashboard對應著4個不同時鐘域的ila模塊,可是沒有信號,這時可以點擊+號進行添加。

        85325310-a7d5-11ed-bfe3-dac502259ad0.png

        ctrl+a選中所有進行添加。

        8551905e-a7d5-11ed-bfe3-dac502259ad0.png

        添加完信號后注意右下角的觸發條件設置,同樣點擊+號設置需要添加的信號,這里選則的是幀起始標志sop,并且選擇觸發條件的關系為或,同時觸發值設置為1’b1,之后再點擊三角型的 run trigger符號即可。

        85804f7a-a7d5-11ed-bfe3-dac502259ad0.png

        這里lower部分已經有波形了。

        85aadb6e-a7d5-11ed-bfe3-dac502259ad0.png

        放大看所有的信號。

        85d8ada0-a7d5-11ed-bfe3-dac502259ad0.png

        這里發現沒有前導碼是因為這里的4字節數據已經是進了mac之后經過了8轉32的數據了已經去掉了前導碼和CRC。但是upper client沒有數據,原來是沒有ping都沒有發怎么有?

        8600540e-a7d5-11ed-bfe3-dac502259ad0.png

        86223ccc-a7d5-11ed-bfe3-dac502259ad0.png

        結果發現ping了也沒有,好氣。

        86488daa-a7d5-11ed-bfe3-dac502259ad0.png

        注意之前設置的觸發條件,是或關系,于是lower的sop信號在當前的1024個鐘內比其他的sop先觸發,而各個sop的間隔周期大于我們設置的采樣深度1024,所以無法同時顯示,刪除lower觸發條件后就有了,當然lower又沒有了。

        867534cc-a7d5-11ed-bfe3-dac502259ad0.png

        869c8144-a7d5-11ed-bfe3-dac502259ad0.png

        86c8080a-a7d5-11ed-bfe3-dac502259ad0.png

        這邊按照同樣的步驟,添加觀察信號、添加設置觸發條件、點擊run trigger,就能看到波形了,注意放大后的紅框部分,有了前導碼,按單字節應該是 55 55 55 d5的順序而這里由于是rgmii只是半字節,所以是 5 5 5 5 5 5 5 d。

        86f260c8-a7d5-11ed-bfe3-dac502259ad0.png

        871a7860-a7d5-11ed-bfe3-dac502259ad0.png

        對ila3按同樣的步驟操作當我們點擊run trigger的時候會發現出現unable to arm ila core的錯誤,這就是時鐘域的問題,由于我們選擇的是rgmii_rx_clk這是由phy提供的,但是ila3即例化時的client對應的phy沒有插網線,所以也沒有時鐘,自然無法arm ila core。

        這里特意為了對比不同時鐘域的選擇對于ila的影響,其實也可以將lower upper client的ila時鐘域都設置成用戶側即CLK_OUT2因為這個時鐘一直存在,這樣即使ila3對應的模塊的網口沒有插網線,在dashboard上顯示也會有全0 的數據,就和ila0 一樣,可以翻到前面去看看,這里的lower upper client的ff_rx_data[31: 0]來自三個獨立的例化模塊,但是也可以放到同一個時鐘域。表達的不太好實踐一下就能知道了。

        審核編輯:湯梓紅

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

          關注

          11

          文章

          2781

          瀏覽量

          76649
        • 調試
          +關注

          關注

          7

          文章

          574

          瀏覽量

          33900
        • 文件
          +關注

          關注

          1

          文章

          561

          瀏覽量

          24703
        • 端口
          +關注

          關注

          4

          文章

          955

          瀏覽量

          32016
        • Vivado
          +關注

          關注

          19

          文章

          808

          瀏覽量

          66349

        原文標題:Vivado工程升級及板級信號調試

        文章出處:【微信號:HXSLH1010101010,微信公眾號:FPGA技術江湖】歡迎添加關注!文章轉載請注明出處。

        收藏 人收藏

          評論

          相關推薦

          vivado ILA在線調試求助

          在用Vivado實現某個工程時,功能仿真正確,時序滿足要求,比特流也能生成,但是在ILA調試和下板子時,無法得到正確的結果信號,請問各位大神可能是什么問題?
          發表于 12-11 11:10

          vivado在線調試

          DSP的CCS軟件在線調試,不僅能觀察數據,還能在線修改參數值,我想問一下vivado在線調試有這個功能嗎,我看見debug好像只能在線觀察,我想把bit文件下載到上,我不僅要觀察,
          發表于 12-20 14:03

          玩轉Zynq連載5——基于Vivado的在線板調試概述

          `玩轉Zynq連載5——基于Vivado的在線板調試概述 更多資料共享 鏈接:https://share.weiyun.com/5s6bA0s Vivado在線
          發表于 05-24 15:16

          玩轉Zynq連載33——基于Vivado的在線邏輯分析儀調試

          /1XTQtP5LZAedkCwQtllAEyw提取碼:ld9c 1概述基于Vivado調試介紹,可以參考文檔《玩轉Zynq-基礎篇:基于Vi
          發表于 10-28 11:14

          玩轉Zynq連載36——[ex55] 基于VIO在線板調試的AXI GP總線讀寫實例

          PL代碼中VIO的配置和例化PL工程中,需要將作為開關量控制或狀態顯示的信號連接到VIO IP核的接口中。具體可以參考文檔《玩轉Zynq-工具篇:基于Vivado的Virtual IO在線板
          發表于 11-21 10:04

          Vivado中綜合,實現,編程和調試工程可能會出現的問題及解決方案

          調試PRX100-D開發注意事項1.與Vivado軟件本身相關的問題Vivado在添加新的工程/HDL文件后會自動崩潰退出這一問題出現在
          發表于 07-31 09:09

          Vivado中使用debug工具步驟與調試技巧

          在ISE中稱為ChipScope而Vivado中就稱為in system debug。下面就介紹Vivado中如何使用debug工具。 Debug分為3個階段: 1. 探測信號:在設計中標志想要查看的
          發表于 11-17 14:05 ?6w次閱讀
          <b class='flag-5'>Vivado</b>中使用debug工具步驟與<b class='flag-5'>調試</b>技巧

          使用Vivado 2016.3中IBERT調試的好處及步驟

          了解使用Vivado 2016.3中引入的系統內IBERT進行調試的好處,以及將其添加到設計中所需的步驟。
          的頭像 發表于 11-20 06:43 ?5750次閱讀

          如何使用Vivado Logic Analyzer與邏輯調試IP進行交互

          了解Vivado中的Logic Debug功能,如何將邏輯調試IP添加到設計中,以及如何使用Vivado Logic Analyzer與邏輯調試IP進行交互。
          的頭像 發表于 11-30 06:22 ?3360次閱讀

          如何使用Vivado在設備啟動時進行調試

          了解如何使用Vivado在設備啟動時及其周??圍進行調試。 你也會學習 使用Vivado 2014.1中引入的Trigger at Startup功能來配置和預先安裝a 調試核心
          的頭像 發表于 11-22 07:05 ?4408次閱讀

          如何升級Vivado工程腳本

          Vivado可以導出腳本,保存創建工程的相關命令和配置,并可以在需要的時候使用腳本重建Vivado工程。腳本通常只有KB級別大小,遠遠小于工程
          發表于 08-02 10:10 ?1799次閱讀

          ISE工程升級Vivado信號調試

          版本遷移的操作想必大家已經做過不少了,其中包括從ISE轉換到vivadovivado老版本遷移到新版本。鄭智海同學給大家介紹了一下如何把工程從ISE遷移到vivado中。
          的頭像 發表于 01-30 09:11 ?4216次閱讀

          Vivado Design Suite用戶指南:編程和調試

          電子發燒友網站提供《Vivado Design Suite用戶指南:編程和調試.pdf》資料免費下載
          發表于 09-13 14:47 ?0次下載
          <b class='flag-5'>Vivado</b> Design Suite用戶指南:編程和<b class='flag-5'>調試</b>

          Vivado設計套件用戶指南:編程和調試

          電子發燒友網站提供《Vivado設計套件用戶指南:編程和調試.pdf》資料免費下載
          發表于 09-13 11:37 ?0次下載
          <b class='flag-5'>Vivado</b>設計套件用戶指南:編程和<b class='flag-5'>調試</b>

          Vivado Design Suite 用戶指南:編程和調試

          Vivado Design Suite 用戶指南:編程和調試》 文檔涵蓋了以下設計進程: 硬件、IP 和平臺開發 : 為硬件平臺創建 PL IP 塊、創建 PL 內核、功能仿真以及評估 AMD
          的頭像 發表于 10-25 16:15 ?859次閱讀
          <b class='flag-5'>Vivado</b> Design Suite 用戶指南:編程和<b class='flag-5'>調試</b>