一、為啥別忘了我 嵌入式邏輯分析儀—SigbalTap II,是Altera Quartus II 自帶的嵌入式邏輯分析儀,與Modelsim軟件仿真有所不同,是在線式的仿真,更準確的觀察數據的變化,方便調試。 很多學過單片機的孩子認為,單片機可以在線單步調試,而FPGA是并發的,不能單步調試,這使得FPGA的調試學習帶來了困難。其實這個說法不是完全正確的。別忘了,還有SignalTap II Logic Analyzer。有了這個嵌入式邏輯分析儀,在調試多通道或單通道數據,進行數據采樣、監控等操作時,給我們帶來了很大的方便,因此,FPGA的學習中,利用JTAG來調試SiganlTap II將會有很大的幫助。 二、應用實例 本例中用正弦波、三角波、鋸齒波、方波波形數據為參考,簡要講解SignalTap II Logic Analyzer軟件的應用,步驟如下: (1)新建工程,設計代碼,引腳配置,RTL圖如下 (2)新建SignalTap II 文件 (3) 設置待測信號名 (4)在node雙擊添加需要觀察的數字信號;不要調入系統時鐘,因為本例打算用系統時鐘來做邏輯分析儀的采樣時鐘 (5)添加系統采樣時鐘(類似示波器的采樣) (6)設置采樣深度:因為占用ESB/M9K,采樣深度最好小于9K,這里設置為2K (7)設置采樣其實觸發位置:跳變沿觸發 (8)觸發方式: (此處我也不是很清楚,大概各種模式吧) (9)設置觸發輸入:選擇觸發信號以及觸發方式,flag為觸發使能信號,實際工程中沒用,只是signaltap ii的使能信號;高電平觸發,設置如下: 注意:flag為邊沿采樣信號,當flag變化的時候,恰好warm_data在穩態,因此將flag作為采樣的觸發;當然在低速地要求的情況下,flag也可以省略,SiganlTap II 會自動根據一定頻率采樣。 (10)Save and Yes,再次編譯,和本工程捆綁在一起Download to Device,(當然也可以在Settings設置);關于PIN,如果沒有邏輯分析儀測試沒有信號輸入,如果你懶得設置,可以不分配out的信號,但是clk和rst_n必須分配,因為那是系統的驅動信號。 (11)設置Handware Setup,鏈接Device (12)Download sof文件(當然也可以在Q II直接download) (13)進程—Anturon Analysis,自動分析 (14) 觀察輸出信號,設置為模擬信號,如下,方便觀察 (15)為什么可以那么帥。。。。 (16)實際測試到一段時間后,會出現bug,可能長時間采樣倒是邏輯邊沿不能對齊吧,畢竟沒那么完美,復位一下就好了。 (17)測試ok 后,取消下圖中的enable SignalTap II Logic Analyzer ,減少邏輯單元,精簡成本設計: (17) OK ,白白,Just Try,Try,Try。。。。 |