在Zynq開發(fā)中有一個很常用的功能是將ARM端的數據導出到本地,然后通過Matlab,Python等工具對數據進行分析。
可以在Vitis的Memory窗口中觀察到Zynq內存中的數據,如下圖:
如果僅僅是觀察幾個數據的值,在這個窗口里面操作也足夠了,但是往往是需要將這些導出來進行分析的??梢酝ㄟ^外置的接口比如串口,網口等方式將內存中的數據傳到本地,但是這些方式都需要上位機的配合。
在Vitis中提供了mrd的命令來幫助我們將這些數據導出來。
基本的使用方式如下,filename.txt是指保存的文件名,0x00000000指的是起始地址,256是指保存的大小,這個大小不一定是字節(jié),這個需要注意。
mrd -bin -file filename.txt 0x00000000 256
我們在xsct console中輸入上面的命令
保存出來的文件如下所示,可以看到的確是從00000000地址起始的數據,可以和上面Memory窗口中的數據對應上。
因為每個數據都是8bit的,所以00 01 02 03這四個數據就是4個字節(jié),那么下圖中一行就是16個字節(jié),而整個文件一共有64行(篇幅有限,所以沒有全部截下來),也就是1024個字節(jié),而在命令中只輸入了256作為保存的大小,這又是為什么呢。
通過查看xilinx提供的手冊可以看到mrd還有一些其他的參數來控制保存數據的大小。
可以看到第二個選項-size,里面提供了-b也就是按字節(jié)(8 bit)大小來保存,-h按半字(16 bit)來保存,-w是按字(32 bit)來保存,-d(64 bit)是按雙字來保存,在默認情況下就按字來保存的。
因為ZYNQ是32bit處理器,所以半字,字,雙字的位寬是括號里面的值。
那么就可以解釋為啥我們給定的大小是256,而保存的文件有1024個字節(jié)了,1024=256*4(byte)。
所以我們可以通過指定-size這個選項來控制按哪種方式來保存數據的大小。
比如輸入下面這句命令
mrd-bin-sizeb-filefilename.txt0x00000000256
保存下來的數據如下圖所示:這次就真的是256個字節(jié)了,一行是16個字節(jié),一共16行
另外手冊上還有一個-unaligned-access的選項,這個選項是為了讓我們保存數據的時候可以從非對齊地址開始保存。對于32位地址空間來說就是按4字節(jié)對齊的,也就是如果不知道-unaligned-access的選項我們在獲取數據的時候起始地址必須以0,4,8等4的倍數開始的地址,如果你強行指定一共0x00000001這樣的非對齊地址,他保存數據的時候也是從0x00000000開始的。
mrd -bin -file filename.txt 0x00000001 256 mrd -bin -file filename.txt 0x00000000 256
比如上面兩句命令,他保存出來的結果是一樣的,注意值是從0開始的,如下所示:
當我們指定非對齊之后,獲取到的數據就是從01開始的,也就是從地址00000001獲取到的數據
mrd -bin -unaligned-access -file filename.txt 0x00000001 256
需要注意的是,這里的對齊并不是和多少位總線,或者操作系統(tǒng)是多少位的有關,而是和之前我們指定的-size這個選項有關,在默認情況下是按-w也就是字來對齊的,也就是按32bit對齊。在-b下就是按8bit對齊,在這種情況下也就沒有對不對齊的概念了,因為8bit對齊就是按0,1,2,3,4等等這樣的自然序對齊的。所以-d是按64bit對齊,-h是按16bit對齊。
比如下面這句話沒有指定非對齊獲取,他也能從地址1開始取數,因為他本身就是對齊的。
mrd -bin -size b -file filename.txt 0x00000001 256
上面這個小技巧是經常使用的哦,比如在FPGA中處理完一組數據后想分析一下處理的對不對就可以把數據通過這種方式取出來,然后使用Matlab python等工具進行處理。例如在FPGA中做了一個Sobel的邊緣檢測,就可以把處理完的數據拿出來,用Matlab、Python等工具把處理結果恢復成圖像,或者直接和參考模型進行比對。
審核編輯:劉清
-
FPGA
+關注
關注
1620文章
21510瀏覽量
598880 -
ARM處理器
+關注
關注
6文章
360瀏覽量
41513 -
上位機
+關注
關注
27文章
927瀏覽量
54546 -
python
+關注
關注
53文章
4753瀏覽量
84070
原文標題:Vitis調試技巧--從Vitis中導出數據到本地
文章出處:【微信號:FPGA開源工坊,微信公眾號:FPGA開源工坊】歡迎添加關注!文章轉載請注明出處。
發(fā)布評論請先 登錄
相關推薦
評論