天天看點

Verilog——Chipscope簡單實用的使用方法Verilog——Chipscope簡單實用的使用方法

Verilog——Chipscope簡單實用的使用方法

FPGA程式設計也避免不了需要進行線上調試工作,XILINX的ISE提供了Chipscope工具進行線上調試。

但之前查閱了很多Chipscope的調試方法,總是覺得這些方法很多都複雜冗長。最近尋找到一種較為簡單的Chipscope的線上調試方法。

Chipscope線上調試的兩個步驟:
  • 生成Chipscope檔案(生成的檔案可以儲存起來,以後重複利用)
  • 項目中Chipscope線上調試

1. 生成Chipscope檔案

本步驟生成的四個檔案可以儲存起來,在以後其他項目中直接拷貝過去,并将這四個檔案添加到項目中。

Verilog——Chipscope簡單實用的使用方法Verilog——Chipscope簡單實用的使用方法

最後生成的四個檔案分别是:

  • chipscope_ila.v
  • chipscope_ila.ngc
  • chipscope_icon.v
  • chipscope_icon.ngc

2.項目中Chipscope線上調試

1) 代碼修改

将上一步驟中最後生成的四個檔案加入到要調試的項目中,然後根據程式中出現的問題推斷大概是哪個module的哪些信号(以rd_req和rd_cmd信号為例)出現問題,然後在有問題的module中加入調試代碼:

//DEBUG
//---------------------------------------------------------------------
wire [ 35:0]    CONTROL0        ;
wire [255:0]    TRIG0           ;
chipscope_icon  icon_debug(
    .CONTROL0   (CONTROL0) //INOUT BUS[35:0]
);
chipscope_ila  ila_filter_debug(
    .CONTROL    (CONTROL0       ),
    .CLK        (clk50M         ),
    .TRIG0      (TRIG0          )
);
//以上代碼直接複制粘貼

//=====================================================================
//以下代碼請根據自己的程式進行修改
//---------------------------------------------------------------------
assign TRIG0[0]     = rd_req        ;//待觀測信号
assign TRIG0[4:1]   = rd_cmd        ;//待觀測信号
           

完成代碼修改後重新編譯工程,并連接配接仿真器下載下傳程式。

2)啟動Chipscope

  • 點選Xilinx Designer Tools -> Analyzer啟動Chipscope
    Verilog——Chipscope簡單實用的使用方法Verilog——Chipscope簡單實用的使用方法
  • 啟動後點選下面的按鈕與電路闆連接配接
    Verilog——Chipscope簡單實用的使用方法Verilog——Chipscope簡單實用的使用方法
  • 彈出下面的對話框單擊ok
    Verilog——Chipscope簡單實用的使用方法Verilog——Chipscope簡單實用的使用方法
  • 進入到Chipscope主界面。Chipscope的主界面主要包括工程視窗、信号視窗、觸發條件設定序列槽、波形視窗。
    Verilog——Chipscope簡單實用的使用方法Verilog——Chipscope簡單實用的使用方法
  • 在主界面首先對波形視窗waveform的信号進行設定。主要是對DataPort各個信号進行組合和命名,使debug代碼中輸出的信号和觀測資料接口對應起來。右鍵單擊信号選擇Rename即可重命名:
    Verilog——Chipscope簡單實用的使用方法Verilog——Chipscope簡單實用的使用方法
    選擇多個信号後右鍵單擊選擇Move to Bus -> New Bus即可将選擇的多個信号組合起來。
    Verilog——Chipscope簡單實用的使用方法Verilog——Chipscope簡單實用的使用方法
  • 然後對Trigger Setup觸發條件設定視窗内的信号進行觸發條件設定。找到Trigger Setup序列槽下面Match視窗裡面的觸發信号,對觸發條件Value進行設定,觸發條件包括:
符号 觸發條件
X 不定值(預設)
邏輯0
1 邏輯1
R 上升沿
F 下降沿
N 非沿
  • 完成觸發條件設定後點選“▶”開始調試,當遇到設定的觸發條件時Waveform視窗會展現捕捉到的波形,這樣就可以開始觀察波形尋找bug了。如果不對觸發條件進行修改,即全部都是X,波形視窗會展現波形,但可能不是想要的。

繼續閱讀