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

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

3天內不再提示

使用Python提取ILA數據的流程

OpenFPGA ? 來源:OpenFPGA ? 2024-05-01 10:43 ? 次閱讀

ILA應該是調試AMD-Xilinx FPGA最常用的IP。

20e92de0-01e1-11ef-a297-92fbcf53809c.png

在調試中,我們希望 ILA 中的波形可以提供有關設計問題的所有信息,但情況并非如此。對于復雜的調試,我們還需要將 ILA 捕獲的真實數據存儲到可以進一步處理的文件中。根據放置 ILA 的位置,我們可以通過不同的方式使用文件中包含的信息。

ILA 監視輸出數據 – 可用于驗證實例化的模型的正確性。

ILA 監視輸入數據 – 可用于將數據輸入到測試臺模塊中,嘗試不同數據對測試平臺的影響。當然,在這種情況下也可以復制硬件中觀察到的信號時序。

這兩種方法在我們的開發、驗證和驗證中都非常強大。在使用 ILA 時,我們更熟悉波形視圖,但是,我們可以使用以下命令輕松地將 ILA 信息保存為 CVS 文件。

write_hw_ila_dataila_file.csv[upload_hw_ila_datahw_ila_1]-csv

這將 CSV 文件保存到 Vivado 的當前工作目錄中(如果不確定,請在 tcl 窗口中運行 pwd 命令來確定)。

我們還可以使用“文件”->“導出”->“導出 ILA 數據”來保存 ILA 數據。將打開一個對話框,詢問要導出哪個 ILA、導出數據的位置以及數據格式。

21030878-01e1-11ef-a297-92fbcf53809c.png

我們使用一個簡單的 LFSR 實例進行演示,可以在 Vivado 中打開 ILA 并導出 CSV。

211670f2-01e1-11ef-a297-92fbcf53809c.png

通過查看 ILA CSV 數據,第一列顯示緩沖區中的樣本,第二列顯示窗口中的樣本。

無論是否在觸發中配置窗口,樣本緩沖區都會按順序對緩沖區中的每個樣本進行計數。窗口中的第二個樣本計數將從 0 計數到窗口大小。

例如,如果我們為 4 個窗口配置了 1024 個樣本緩沖區,則窗口計數中的樣本將在 0 到 255 之間計數四次,而緩沖區計數中的樣本從 0 線性遞增到 1023。

第三個要素是觸發器。該值設置為 1 指示采樣窗口中何時發生觸發??梢栽谙旅娴拇翱谥锌吹?,當看到觸發值時,該窗口在第三列中顯示 1(在本例中為 0x00 為 LFSR 序列的開始)。

21262542-01e1-11ef-a297-92fbcf53809c.png

我們將 LFSR 序列寫到一個文本文件中,可以使用一點 Python 將文本文件的結果與 ILA CSV 進行比較。

importcsv
csv_file='iladata_trig.csv'
text_file='fibonacci.txt'

withopen(csv_file,newline='')ascsvfile:
reader=csv.reader(csvfile)
#SkipthetoptworowsoftheCSVFile
next(reader)
next(reader)

Fibonacci_hw_values=[]
#StoreFibonacciSequence
fori,rowinenumerate(reader):
ifi

在Python中,我們可以打開這兩個文件并將它們讀入Python列表中;一個來自測試臺文本文件,另一個來自 CSV 文件。初步結果如下。

21333b24-01e1-11ef-a297-92fbcf53809c.png

運行 Python 腳本展示了我們如何使用 Python CSV 包處理來自 ILA 的數據。如果我們想提取一列數據并生成一個文本文件,也很簡單。如下:

214451f2-01e1-11ef-a297-92fbcf53809c.png

注意:如果使用 Versal 設備,我們可以使用一個名為 ChipScoPy 的 Python 接口來控制 Versal ILA。


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

    關注

    1608

    文章

    21367

    瀏覽量

    594663
  • 數據存儲
    +關注

    關注

    5

    文章

    921

    瀏覽量

    50663
  • 觸發器
    +關注

    關注

    14

    文章

    1915

    瀏覽量

    60630
  • LFSR
    +關注

    關注

    0

    文章

    16

    瀏覽量

    12722
  • python
    +關注

    關注

    52

    文章

    4698

    瀏覽量

    83610

原文標題:【Vivado那些事兒】使用 Python 提取 ILA 數據

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

收藏 人收藏

    評論

    相關推薦

    如何實現ILA Cross Trigger

    ILA Cross Triggering功能使得ILA核心之間、以及ILA核心與處理器(例如,AMD Zynq 7000 SoC)之間可以進行Cross Trigger。這個功能在你需要在不同時鐘域的兩個
    的頭像 發表于 11-30 10:17 ?803次閱讀
    如何實現<b class='flag-5'>ILA</b> Cross Trigger

    實現ila時出錯

    [Chipscope 16-119]實現調試核心u_ila_0 failed.ERROR:無法為u_ila_0生成核心。中止IP生成操作。錯誤:[Chipscope 16-218]嘗試從IP緩存
    發表于 10-26 15:10

    是否可以僅將捕獲的數據ILA保存到文件中?

    大家好我試圖只將從ILA捕獲的數據保存到特定文件中。我從xilinx網站上找到的是write_hw_ila_data命令但是,當我打開捕獲的數據時(.
    發表于 04-16 07:40

    ILA數據和波形的關系

    ILA簡介添加ILAILA數據和波形的關系
    發表于 02-22 06:24

    Python中的流程控制

    流程控制無非就是if else之類的控制語句,今天我們來看一下Python中的流程控制會有什么不太一樣的地方。
    發表于 06-28 08:54

    python基礎語法及流程控制

    爬蟲復習1.python基礎python基礎語法 流程控制 函數封裝2.防爬措施整體防爬User-AgentrefererIP代理池Cookie代理池 各自防爬數據內部動態加載網頁設置
    發表于 08-31 07:41

    什么是Python中的流程控制?

    什么是Python中的流程控制?
    發表于 10-09 07:24

    什么是D-ILA投影技術

    什么是D-ILA投影技術 D-ILA(Direct-Drive Image Light Amplifier,直接驅動圖像光源放大器)技術。D-ILA技術在提供高分辨率和高對比度方面顯示了技術優勢,
    發表于 02-05 10:42 ?651次閱讀

    Vivado中關于ILA的詳解

    集成邏輯分析儀 (Integrated Logic Analyzer :ILA) 功能允許用戶在 FPGA 設備上執行系統內調試后實現的設計。當設計中需要監視信號時,應使用此功能。用戶還可以使用此功能在硬件事件和以系統速度捕獲數據時觸發。
    的頭像 發表于 02-08 11:35 ?2.3w次閱讀
    Vivado中關于<b class='flag-5'>ILA</b>的詳解

    ILA工作原理 ILA使用方法與注意

    不一致,從而出現Bug。一種debug的方式就是用FPGA工具提供的ILA模塊(xilixn在ISE中叫:chipscope),來實時抓取FPGA內部數字信號的波形,分析邏輯錯誤的原因,幫助debug。 ILA
    的頭像 發表于 08-09 14:12 ?1.6w次閱讀
    <b class='flag-5'>ILA</b>工作原理 <b class='flag-5'>ILA</b>使用方法與注意

    Python的PDF表格提取器-Camelot

    Python 第三方模塊 Camelot 能夠精準識別PDF中的表格信息,并提取為pandas數據結構,而且還能導出為多種格式:JSON,Excel,HTML和Sqlite。
    的頭像 發表于 02-24 11:04 ?1785次閱讀
    <b class='flag-5'>Python</b>的PDF表格<b class='flag-5'>提取</b>器-Camelot

    如何使用Python腳本調試賽靈思PCIe設計?

    現在,您不僅可以使用 Python 腳本執行調試分析,更重要的是,借由 Vivado ILA 所生成的 ILA 文件可以進一步簡化此操作。通過將 *.ila 擴展名重命名為 *.zip
    的頭像 發表于 06-26 09:20 ?791次閱讀
    如何使用<b class='flag-5'>Python</b>腳本調試賽靈思PCIe設計?

    Camelot:Python超強大的PDF表格提取

    如果你有從PDF中批量提取表格的需求,那么這篇文章就是你的福音。 Python 第三方模塊 Camelot 能夠精準識別PDF中的表格信息,并提取為pandas數據結構,而且還能導出為
    的頭像 發表于 10-21 10:57 ?861次閱讀
    Camelot:<b class='flag-5'>Python</b>超強大的PDF表格<b class='flag-5'>提取</b>器

    Newspaper:用于提取和整理文章的python

    提取關鍵字 自動提取摘要 自動提取作者 自動提取 Google 趨勢詞 下面是這個開源模塊的安裝和使用教程。 1.準備 開始之前,你要確保Pyth
    的頭像 發表于 10-30 14:24 ?359次閱讀

    python如何遍歷列表并提取

    遍歷列表是Python中非常常見的操作之一,可以使用for循環或者while循環來實現。下面我將詳細介紹如何使用for循環遍歷列表并提取元素。 首先,讓我們簡單了解一下Python中的列表。列表
    的頭像 發表于 11-23 15:55 ?773次閱讀
    亚洲欧美日韩精品久久_久久精品AⅤ无码中文_日本中文字幕有码在线播放_亚洲视频高清不卡在线观看
    <acronym id="s8ci2"><small id="s8ci2"></small></acronym>
    <rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
    <acronym id="s8ci2"></acronym>
    <acronym id="s8ci2"><center id="s8ci2"></center></acronym>