vivado----fpga硬件調試(六)--數據導出


轉載:https://blog.csdn.net/wordwarwordwar/article/details/71250159

總結一:

 

眾所周知,ADC調試不單單是ADC芯片功能的調試,還涉及到后期對ADC芯片的性能評估和驗證,這些工作都需要在MATLAB中完成。在ISE開發環境下,一般是這樣處理:

1.ChipScope中將需要的數據導出為.prn或者.txt文件

2.在MATLAB中使用函數xlLoadChipScopeData()將文件導入緩存。(需要相應的MATLAB和ISE設置)

 

上述兩步就可以在FPGA調試過程中輕松實現對ADC數據的計算處理。

 

然而,令人沮喪的是,在Vivado的debug工具中,並沒有發現類似ChipScope中數據導出功能。在一番查找之下,在Vivado使用的相關文檔中確定了要實現該功能的Tcl命令。由於MATLAB中沒有找到類似xlLoadChipScopeData()的函數可以直接將Vivado中導出的數據導入緩存,作為一個FPGA工程師,不得不面臨這個不大不小的問題。在處理這個問題的過程中,也看到網上的很多朋友也在探討這個問題,但並沒有給出一個確切的解決途徑,希望下面的方法能幫助到遇到同樣問題的同學。

 

參考步驟:
1.在線調試過程中,在tcl console 命令行窗口中輸入:
write_hw_ila_data[upload_hw_ila_data]

2.將上面導出的數據直接在MATLAB中解壓:
unzip(‘file_name’,'tmp')

3.將上面解壓出來的文件夾中的.csv文件讀入MATLAB 。

 

上面的處理方法僅供有需要的同學參考,也許繁瑣了些,但在暫時沒有官方支持函數工具的條件下,也算是一個行之有效的辦法了。

 

 

總結二:

 

 

Vivado下debug后的波形通過圖形化界面並不能保存抓取到波形,保存按鈕只是保存波形配置,如果需要保存波形需要通過TCL命令來實現:

write_hw_ila_data0730_ila_1 [upload_hw_ila_data hw_ila_1]
write_hw_ila_data 0730_ila_2 [upload_hw_ila_data hw_ila_2]

0730_ila_1為保存的文件名,需要帶路徑,hw_ila_1為你的ILA的名字,

 

如果要讀取已保存的波形,可以用下面的命令:

read_hw_ila_data 0730_ila_1.ila
       display_hw_ila_data
       read_hw_ila_data 0730_ila_2.ila
       display_hw_ila_data

 

 

總結三:

 

 

這一段時間遇到、聽到、看到使用vivado的困惑。這些困惑,會讓初次接觸者,產生畏難的情緒。現共享出來,以共勉。

1.  vivado安裝在32位計算機上,很遇到不少莫名其妙的現象。   通過交流以及自己開發遇到的情況,經常會發現VIVADO在使用期間出現很多莫名其妙的現象。通過比較對比,發現64的win7操作系統就沒有這些莫名其妙的錯誤提示等等。

 

2.  很多人習慣使用Chipsope Pro來調試。Vivado跑出的bit能否支持呢?  答案是肯定的。請參考UG908 (v2013.4) 的 Using Legacy Debug Cores in Vivado Designs章節。 另外,有人還發現chipscope pro 和vivado debug在調試中各有各的長處,能否同時使用這兩種方法呢?答案同樣是肯定的。請參考UG908 (v2013.4) Using Vivado Logic Analyzer and ChipScope Pro Analyzer Simultaneously。

 

3.  很多做信號處理算法的工程師,經常使用chipscope抓數,然后保存為文本格式后,供MATLAB讀取來分析數據.現在很多人發現vivado似乎沒有該功能了。有兩種方法:1使用上面提到的方法,使得vivado跑出的bit能供chipscope使用不就解決了嘛。2.第二種方法,直接在vivado中保存數據。只不過這種方法在vivado的IDE中沒有在菜單對應的命令,目前該方法只支持TCL腳本的方式.請參考UG908 (v2013.4) Saving and Restoring Captured Data from the ILA。

Saving Captured ILA Data to a FileCurrently, the only way to upload captured data from an ILA core and save it to a file is to

 use the following Tcl command:        write_hw_ila_data my_hw_ila_data_file.zip [upload_hw_ila_data hw_ila_1]。

This Tcl command sequence uploads the captured data from the ILA core and writes it to an archive file called:                    

                                                         my_hw_ila_data_file.zip. The archive file contains the waveform Core。

 

4.  說到這里不得不說一個事情,現在有第三方的公司提供軟件,不需要這么多步驟,直接可以將數據獲取出來,進行各種分析。這就是xilinx的VIVADO肯定有在軟件上有接口,可以提供這些抓出來的數據。只不過這些接口目前還沒有給大家公示出來。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM