class BfmStream

Public Instance Methods

add_slaver_bfm_recv(repeat:nil,rate:100,info:0) click to toggle source

def self.MasterBFM()

end

# File lib/tdl/bfm/axi_stream/axi_stream_bfm.rb, line 320
def add_slaver_bfm_recv(repeat:nil,rate:100,info:0)
    str =
"#{
    if repeat > 0
        "repeat(#{repeat})"
    else
        "forever"
    end
}
begin
    SlaverBfm#{name}.get_data(#{rate},#{info});
end"

    @_master_draw_exec_str_ << init_tap_draw(str.concat("\n"))
end
slaverbfm() { |self| ... } click to toggle source
# File lib/tdl/bfm/axi_stream/axi_stream_bfm.rb, line 304
def slaverbfm(&block)
    import_axibfm_pkg
    @_init_tap_cnt_ ||= 1
    @_master_draw_exec_str_ ||= []
    @_init_master_draw_exec_str_ ||= []

    yield self
    belong_to_module.AxiStream_draw << slaverbfm_draw()

    return self
end
slaverbfm_draw() click to toggle source
# File lib/tdl/bfm/axi_stream/axi_stream_bfm.rb, line 336
    def slaverbfm_draw()
        init_str = @_init_master_draw_exec_str_.join("")
        slaver_str = @_master_draw_exec_str_.join("")
"
AxiStreamSlaverBfm_c #(.DSIZE(#{dsize}),.FreqM(#{intf_def_freqM})) SlaverBfm#{name} = new(#{name});

initial begin:#{name}_SLAVER_BLOCK
#{init_str}
    wait(#{name}.aresetn);
    @(posedge #{name}.aclk);
#{slaver_str}
end

"
    end