31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
|
# File 'lib/tdl/bfm/axi_stream/axis_bfm_module_build.rb', line 31
def build_single_master_stream_bfm(sdlm,stream_name,stream_hash)
a = sdlm.AxiStream.master(stream_name,freqM: stream_hash["FreqM"].to_f)
ba = sdlm.Def.bfm_stream(name:"#{stream_name}_b",freqM: stream_hash["FreqM"].to_f,clock: a.aclk,reset: a.aresetn, dsize: stream_hash["dsize"].to_i )
a.direct(up_stream: ba)
set_bfm_pkg_import(ba)
ba.masterbfm(info:stream_hash["info"],wait: nil,wait_every_raising: nil,wdata_name: "wdata_queue") do |b|
b.init_exec("#(#{stream_hash["wait"]})") if stream_hash["wait"]
stream_hash["queue"].each do |burst|
buidl_master_burst(ba,burst,stream_hash['dsize'].to_i)
end
end
@__AXI_BFM_IMPORT__ = true
end
|