SEM IP在上板調試過程中有時會出現一些錯誤,比如無法執行IP的插錯糾錯功能,或者自身的初始化無法完成等等,需要對SEM IP本身進行調試定位。我們最推薦客戶去查看IP從上電開始打印出來的串口信息。這里面的log不僅包含了IP從初始化開始經歷的一系列狀態,還能清楚地顯示出一些事件的時間戳。
但是很多客戶反應,實際調試的硬件板上沒有連接串口,沒辦法查看log,只能靠抓取SEM IP Status Interface的 status_*信號,通過其可以查看 IP有無心跳,或者IP是否進入了正確的狀態等。困難的是,很多問題需要同時查看所有的status_*信號組合,并且綜合分析status_*的歷史狀態以及當前狀態,復雜且需要較多的調試經驗。
解決方法其實很簡單,我們只要在設計里面添加一個FIFO,將SEM IP Monitor Interface輸出的ASCII字符 log全部存入FIFO。需要定位的時候,用ILA+VIO控制讀出來并直接顯示就行了。
這里以VCU118 (VU9P) 開發板為例說明, 步驟如下:
1. 生成適配VCU118開發板的SEM IP example design。
2. 按照開發板的構造, 按需修改icap_clk的頻率及管腳位置。也可以添加其他想要查看的信號。比如,可以綁定6個status_*信號到LED管腳上方便查看。
3. 頂層引入FIFO讀寫時鐘clk300p/n (300MHz)。
XDC里面做好相應的約束:
4. 生成并添加用于存儲log的FIFO,讀取顯示FIFO字符的ILA和用于控制的VIO。
至于FIFO的大小,SEM IP 正常情況下除了最開始會打印出初始化過程和基本信息,進入工作狀態Observation后就基本沒有輸出了。只有發生了SEU事件或者其他異常,才會在串口推送出對應的報告。由于SEU事件是極為偶發的罕見事件,報告字符也不會多。所以這里設定500 bytes已經能滿足絕大多數應用需求:
更多步驟,請點擊閱讀原文移步賽靈思中文博客如何利用FIFO+ILA/VIO抓取SEM IP的串口log
原文標題:開發者分享|如何利用FIFO+ILA/VIO抓取SEM IP的串口log
文章出處:【微信公眾號:XILINX開發者社區】歡迎添加關注!文章轉載請注明出處。
審核編輯:湯梓紅
-
賽靈思
+關注
關注
32文章
1794瀏覽量
131322 -
fifo
+關注
關注
3文章
389瀏覽量
43719 -
串口
+關注
關注
14文章
1555瀏覽量
76631
原文標題:開發者分享|如何利用FIFO+ILA/VIO抓取SEM IP的串口log
文章出處:【微信號:gh_2d1c7e2d540e,微信公眾號:XILINX開發者社區】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論