數(shù)據(jù)采集器核心器件FPGA如何進行片上調(diào)試
發(fā)布人: 發(fā)布時間:2021-06-06
FPGA與STM32等嵌入式開發(fā)最大的一個優(yōu)點就是,可以在時序仿真階段驗證超過90%的功能,發(fā)現(xiàn)90%的問題。當所有的仿真沒問題了,才能進行最后一步:板級調(diào)試。如果仿真都不對,那就沒必要下載到芯片里了。
STM32等單片機,使用J-Link或ST-Link等調(diào)試器,可以進行在線調(diào)試,由于C代碼是順序執(zhí)行的,我們可以插入斷點,讓程序停在我們需要的位置,或者是實時查看一些變量的數(shù)值,大大提高了我們Debug的速度,提高產(chǎn)品的開發(fā)效率。

zynq芯片
對于FPGA來說,仿真畢竟是仿真,可以理解為理想條件,而最終我們的代碼是需要運行在實際的FPGA芯片硬件上的。
所以也會遇到仿真正常,實際下載到板子里不正常的情況。這種現(xiàn)象有兩種原因:1.程序有BUG,2.硬件有問題。比如實際程序中復位信號是低電平復位,而實際電路中設(shè)計的復位按鍵按下才是高電平,這樣按鍵未按下就會導致程序一直處于復位狀態(tài)。
當然,這只是一種最簡單的問題點,實際開發(fā)過程中,仿真與實際運行不匹配的情況還有很多。那么如何才能以最快的速度找到問題點呢?
早期的FPGA調(diào)試方法通常使用邏輯分析儀,連接到FPGA芯片的外部管腳上,如果想查看內(nèi)部信號,還需要把這些信號定義成Output引出到外部管腳進行了測量,如果是多位數(shù)據(jù),這樣就會占用大量的管腳,但是此類工具有個優(yōu)點就是支持多種協(xié)議解析,可以非常方便的查看協(xié)議的報文數(shù)據(jù)。