對於比較高級的ip核,altera一般都會提供仿真案例,網上有關於這個IP核的各種仿真方法,但都比較繁瑣,前幾日,朋友跟我分享了一個比較快速高效的仿真方法,這個方法也是他摸索折騰了一段時間才總結出來的,在此,也謝謝他這種毫無保留的分享奉獻精神,估計此套方法可以針對Altera的大多數復雜ip核仿真。
新建工程,生成ip核的步驟我就省略了,直接進入ip核調用仿真部分。
在生成的工程里找到“testbench”文件夾,里面有一個README.txt,打開按照里面的步驟操作即可。

根據上面的步驟,首先是打開“testbench”文件夾里的"generate_sim.qpf"工程

然后運行 “generate_sim_verilog.tcl”或者“generate_sim_vhdl.tcl”,到這里可以關閉quartus這個工程了,然后去打開modelsim,將路徑“Change Directory”到“run_irene_tb.tcl”所在的路徑

接着在modelsim運行命令框輸入“do run_irene_tb.tcl”,按回車鍵

接下來就不用人為干預了,modelsim 會自動執行直到仿真波形自動輸出

可以重點關注下它的“control interface”時序以及它的用戶側時鍾,MAC IP的工作時鍾。
至於control interface接口時序比較簡單,通過仿真我們可以看到
在waitrequest拉低的時候可以進行讀寫操作。
接下來簡單說一下它的工作時鍾:
1)ff_tx_clk:用戶側發送端時鍾,
2)ff_rx_clk:用戶側接收端時鍾;
MAC IP核工作時鍾是125M,接口是8 bit,但是由於IP核內部fifo的隔離,因此ff_tx_clk與ff_rx_clk無須配置為125M,只要滿足125M X 8bit = 1G的速率即可。
3)rx_clk: MAC IP RX測時鍾125M,是PHY芯片發給IP核的,PHY芯片跟據工作速率從網絡中恢復成125M時鍾,給IP核。
4)tx_clk: MAC IP TX測時鍾125M, 這個時鍾可以由PLL產生。
5)gtx_clk: 由pll產生的125M 時鍾,送給MAC芯片。
假設時鍾源clk是50M,可用一個pll產生兩路時鍾,一路100M給用戶側ff_tx_clk與ff_rx_clk,一路125M給 MAC IP核tx_clk,然后PHY芯片從網絡中恢復成125M時鍾給rx_clk。
至此,altera三速以太網IP核仿真結束,后續會陸續補充關於這個ip核的使用。
注:本文未經允許,禁止轉載,違者必究。
