0. ILA概述
在FPGA開發(fā)中,當(dāng)我們寫完代碼,進(jìn)行仿真,確定設(shè)計(jì)沒有問題后,下載到硬件上一般都能按照我們的設(shè)計(jì)意愿執(zhí)行相應(yīng)功能。但這也并非絕對(duì)的,有時(shí)候你會(huì)遇到一些突然情況,比如時(shí)序問題或者仿真時(shí)我沒有考慮到某種情況,但實(shí)際中它確實(shí)存在的,這就會(huì)造成功能上的錯(cuò)誤了。也有時(shí)候你的設(shè)計(jì)似乎你沒法進(jìn)行仿真或者做起來很費(fèi)勁,比如設(shè)計(jì)一個(gè)SDRAM或者DDR控制器,讓你相應(yīng)寫一個(gè)SDRAM或者DDR之類的模型進(jìn)行仿真,這時(shí)候是不是就很為難了哈哈。
所以在很多時(shí)候,一個(gè)FPGA工程師應(yīng)該學(xué)會(huì)使用在線調(diào)試工具進(jìn)行分析。我沒法寫一個(gè)DDR模型,我還不能采集它的時(shí)序進(jìn)行修改,直到滿足要求嗎?這里給大家介紹Xilinx公司的開發(fā)軟件Vivado上的在線調(diào)試工具——ILA。Vivado中對(duì)ILA的使用非常靈活,操作也很方便,這里先介紹做常用的調(diào)試方式,即使用ILA核。
1. ILA核如何調(diào)用
ILA核,也可以當(dāng)做是一個(gè)IP核。他可以把用戶指定的信號(hào)存入RAM中,然后讀取出來,用于查看分析。如下圖所示,在Vivado中,左邊欄有一個(gè)“IP Catalog”,雙擊這個(gè)選項(xiàng)就可以進(jìn)行IP選擇了。
此時(shí)會(huì)彈出一個(gè)IP核選擇界面,在右上角方框里輸入“ila”,接著ILA核便會(huì)出現(xiàn),我們只需雙擊即可。
2. ILA核如何配置
接下來便會(huì)看到ILA核的真面目了,它的幫助文檔,在左上角的“Documentation”看到?jīng)],這個(gè)可以鏈接到IP核的data_sheet,如果對(duì)IP核的使用不是很懂可以點(diǎn)擊此處獲取IP核的詳細(xì)信息。下面我們介紹最經(jīng)常的使用。
圖中最上面的“Component Name”可以給IP核取一個(gè)名字,注意,必須IP核名與代碼中的IP名一致,才能關(guān)聯(lián)起來,而且一旦生成了IP核,就算打開IP核,也不能再更改這個(gè)IP核的名字了,所以取名需謹(jǐn)慎。
黃色框里是輸入信號(hào)的格式,如何你是AXI總線,就可以選擇"AXI",如果不是就選“Native”。
"Number of Probes"是要采集的信號(hào)數(shù)量,如果要采集5個(gè)信號(hào)就在方框里輸入5即可。
“Sample Data Depth”是采樣深度,深度越大意味著能看到的信息量越多。但是要切記一點(diǎn),采樣的數(shù)據(jù)都是要存儲(chǔ)在芯片內(nèi)的RAM里,所以選擇越大占用的資源就越多,用戶要根據(jù)自己芯片的情況選擇采樣深度。另外,因?yàn)槭褂昧薘AM,所以也會(huì)對(duì)布局布線產(chǎn)生影響,使用越多對(duì)時(shí)序可能影響越大,應(yīng)該根據(jù)實(shí)際情況選擇。
“Trigger Out Port”和“Trigger In Port”是用于觸發(fā),可以不選,觸發(fā)在后面調(diào)試時(shí)可以靈活使用。
"Trigger And Strorage Setting"是數(shù)據(jù)捕獲的設(shè)計(jì),一般直接勾上即可。
“Probe_Ports”這個(gè)頁面就比較簡(jiǎn)單了,在"Number of Probes"中用戶設(shè)置了多少個(gè)采樣數(shù)量,這里就會(huì)有多少個(gè)通道。如前面所示,我們?cè)O(shè)置了3,這里就出現(xiàn)了3個(gè)通道。
“Probe_Width”數(shù)據(jù)寬度,有多少位就填多少,像“PROBE1”通道是一個(gè)3Bit的數(shù)據(jù),就填3.其他的默認(rèn)即可。
最后點(diǎn)擊“OK”就行了,等待ILA核的生成就行了,是不是很簡(jiǎn)單哈哈。
當(dāng)然,我們的代碼也必須有這個(gè)核的定義才行,如下圖所示,這樣才是一個(gè)完整的ILA核設(shè)計(jì)。
3. 總結(jié)
通過ILA核的使用,可以快速的幫助我們調(diào)試bug。另外,還有一個(gè)非常有用的VIO核,他就是虛擬輸入輸出IO,可以用來改變PL端的輸入信號(hào)的值,觀測(cè)輸出的值,至于ILA的使用VIO的介紹和使用以后再講。
-
FPGA
+關(guān)注
關(guān)注
1645文章
22040瀏覽量
618171 -
信號(hào)
+關(guān)注
關(guān)注
11文章
2851瀏覽量
78257
原文標(biāo)題:FPGA開發(fā)要懂得使用硬件分析儀調(diào)試——ILA(1)
文章出處:【微信號(hào):FPGAer_Club,微信公眾號(hào):FPGAer俱樂部】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
開發(fā)軟件
常用的調(diào)試開發(fā)軟件工具分享!
Vivado+FPGA:如何使用Debug Cores(ILA)在線調(diào)試
Xilinx公司的開發(fā)軟件Vivado上的在線調(diào)試工具——ILA
介紹一下xilinx的開發(fā)軟件vivado的仿真模式
FPGA開發(fā)要懂得使用硬件分析儀調(diào)試——ILA

Keil開發(fā)軟件和六種實(shí)用工具免費(fèi)下載

評(píng)論