2016-08-23 29 views
1

AXIバスを含むプロジェクトにテストベンチを作成する必要があります。AXIバス用テストベンチの作成

私は書き込みと読み取りのためのインターフェイスとトランザクションを書き始めます。これは、インターフェイスをブログよる http://blog.verificationgentleman.com/2016/08/testing-uvm-drivers-part-2.html?showComment=1471877179631#c7809781639091671746

する必要があります:私は、次のブログを読んで他のすべての信号(例えばARBURST、ARLOCK、ARCACHE、ARPROT、ARQOS、ARREGION)について

interface vgm_axi_interface(input bit ACLK, input bit ARESETn); 
    logic [3:0] AWID; 
    logic [31:0] AWADDR; 
    logic [3:0] AWLEN; 
    logic AWVALID; 
    logic AWREADY; 


    logic [3:0] WID; 
    logic [31:0] WDATA; 
    logic WLAST; 
    logic WVALID; 
    logic WREADY; 

    logic [3:0] BID; 
    logic [1:0] BRESP; 
    logic BVALID; 
    logic BREADY; 
endinterface 

何? AXI4の仕様にはより多くの信号があります。

さらに、トランザクションの次のプロパティは書き込みトランザクションに十分ですか?

typedef enum bit [3:0] { LENGTH_[1:16] } length_e; 


class sequence_item extends uvm_sequence_item; 
    rand bit [3:0] id; 
    rand bit [31:0] address; 
    rand length_e length; 
    rand transfer transfers[]; 
    rand int unsigned delay; 
endclass 


class transfer extends uvm_sequence_item; 
    rand bit[31:0] data; 
    rand int unsigned delay; 
endclass 
+0

ブログの例はサンプル用です。もちろん、ユーザーは必要に応じて信号を追加/削除することができます。 – sharvil111

答えて

3

このインターフェイスの信号には、固定サイズとバーストタイプのAXIバスでのシングルライト操作を実行するために必要な最小セットの信号しか含まれていません。あなたのDUTが単なる書き込み以上のものをサポートしている場合は、他の信号を追加する必要があります。たとえば、読み取り操作をテストする場合は、読み取りアドレスチャネルと読み取りデータチャネルに必要なすべての信号も追加する必要があります。

一部のAXI信号は、デザインでサポートされていないことが分かっている場合にのみ、省略できます。書き込み操作で異なるバーストタイプをサポートしている場合、AWBURST信号をインターフェースおよびトランザクションに追加する必要があります。

関連する問題