Class: AxiStream
- Inherits:
-
TdlSpace::TdlBaseInterface
- Object
- AxiTdl::SdlModuleActiveBaseElm
- TdlSpace::TdlBaseInterface
- AxiStream
- Extended by:
- BaseFunc
- Includes:
- BaseModule
- Defined in:
- lib/tdl/elements/axi_stream.rb,
lib/tdl/exlib/axis_eth_ex.rb,
lib/tdl/exlib/axis_verify.rb,
lib/tdl/elements/axi_stream.rb,
lib/tdl/elements/axi_stream.rb,
lib/tdl/elements/axi_stream.rb,
lib/tdl/elements/axi_stream.rb,
lib/tdl/elements/axi_stream.rb,
lib/tdl/elements/axi_stream.rb,
lib/tdl/elements/axi_stream.rb,
lib/tdl/rebuild_ele/axi_stream.rb,
lib/tdl/axi4/axis_to_axi4_wr_auto.rb,
lib/tdl/axi4/wide_axis_to_axi4_wr.rb,
lib/tdl/axi_stream/axis_valve_auto.rb,
lib/tdl/axi_stream/stream_crc_auto.rb,
lib/tdl/axi_stream/axis_append_auto.rb,
lib/tdl/axi_stream/axis_direct_auto.rb,
lib/tdl/axi_stream/axis_filter_auto.rb,
lib/tdl/axi_stream/axis_mirrors_auto.rb,
lib/tdl/axi_stream/bak/_axis_mirrors.rb,
lib/tdl/axi4/bak/axis_to_axi4_wr_auto.rb,
lib/tdl/axi_stream/axis_head_cut_auto.rb,
lib/tdl/axi_stream/bak/axi_stream_S2M.rb,
lib/tdl/axi_stream/bak/axis_append_A1.rb,
lib/tdl/bfm/axi_stream/axi_stream_bfm.rb,
lib/tdl/bfm/axi_stream/axi_stream_bfm.rb,
lib/tdl/axi4/wide_axis_to_axi4_wr_auto.rb,
lib/tdl/axi_stream/axis_append_A1_auto.rb,
lib/tdl/axi_stream/bak/axis_valve_auto.rb,
lib/tdl/axi_stream/bak/stream_crc_auto.rb,
lib/tdl/axi4/axi4_rd_auxiliary_gen_auto.rb,
lib/tdl/axi_stream/axis_ram_buffer_auto.rb,
lib/tdl/axi_stream/axis_to_lite_rd_auto.rb,
lib/tdl/axi_stream/axis_to_lite_wr_auto.rb,
lib/tdl/axi_stream/axis_uncompress_auto.rb,
lib/tdl/axi_stream/bak/axis_append_auto.rb,
lib/tdl/axi_stream/bak/axis_direct_auto.rb,
lib/tdl/axi_stream/bak/axis_filter_auto.rb,
lib/tdl/axi_stream/gen_origin_axis_auto.rb,
lib/tdl/axi_stream/gen_simple_axis_auto.rb,
lib/tdl/axi_stream/axi_stream_cache_auto.rb,
lib/tdl/axi_stream/axis_length_fill_auto.rb,
lib/tdl/axi_stream/axis_slaver_pipe_auto.rb,
lib/tdl/axi_stream/axis_to_data_inf_auto.rb,
lib/tdl/axi_stream/bak/axis_mirrors_auto.rb,
lib/tdl/axi_stream/check_stream_crc_auto.rb,
lib/tdl/axi_stream/data_to_axis_inf_auto.rb,
lib/tdl/axi_stream/axis_connect_pipe_auto.rb,
lib/tdl/axi_stream/axis_length_split_auto.rb,
lib/tdl/axi_stream/axis_link_trigger_auto.rb,
lib/tdl/axi_stream/axis_master_empty_auto.rb,
lib/tdl/axi_stream/axis_slaver_empty_auto.rb,
lib/tdl/axi_stream/axis_width_combin_auto.rb,
lib/tdl/axi_stream/bak/axi_streams_scaler.rb,
lib/tdl/VideoInf/video_stream_2_axi_stream.rb,
lib/tdl/axi_stream/axi_stream_interconnect.rb,
lib/tdl/axi_stream/axi_stream_interconnect.rb,
lib/tdl/axi_stream/axi_streams_combin_auto.rb,
lib/tdl/axi_stream/axi_streams_scaler_auto.rb,
lib/tdl/axi_stream/axis_width_convert_auto.rb,
lib/tdl/axi_stream/bak/axis_append_A1_auto.rb,
lib/tdl/axi_stream/bak/data_to_axis_inf_A1.rb,
lib/tdl/axi_stream/bak/udp_server_bfm_auto.rb,
lib/tdl/axi_stream/gen_origin_axis_A1_auto.rb,
lib/tdl/bfm/axi_stream/axis_slice_to_logic.rb,
lib/tdl/axi_stream/axi_stream_cache_B1_auto.rb,
lib/tdl/axi_stream/axis_full_to_data_c_auto.rb,
lib/tdl/axi_stream/axis_slaver_pipe_A1_auto.rb,
lib/tdl/axi_stream/axis_width_destruct_auto.rb,
lib/tdl/axi_stream/bak/axis_ram_buffer_auto.rb,
lib/tdl/axi_stream/bak/axis_to_axi4_wr_auto.rb,
lib/tdl/axi_stream/bak/axis_uncompress_auto.rb,
lib/tdl/axi_stream/bak/gen_origin_axis_auto.rb,
lib/tdl/axi_stream/bak/gen_simple_axis_auto.rb,
lib/tdl/axi_stream/data_c_to_axis_full_auto.rb,
lib/tdl/axi_stream/data_to_axis_inf_A1_auto.rb,
lib/tdl/axi_stream/gen_big_field_table_auto.rb,
lib/tdl/axi_stream/axi_stream_long_fifo_auto.rb,
lib/tdl/axi_stream/axi_stream_partition_auto.rb,
lib/tdl/axi_stream/axi_stream_wide_fifo_auto.rb,
lib/tdl/axi_stream/axis_to_axi4_or_lite_auto.rb,
lib/tdl/axi_stream/axis_valve_with_pipe_auto.rb,
lib/tdl/axi_stream/axis_width_combin_A1_auto.rb,
lib/tdl/axi_stream/bak/axi_stream_cache_auto.rb,
lib/tdl/axi_stream/bak/axis_length_fill_auto.rb,
lib/tdl/axi_stream/bak/axis_slaver_pipe_auto.rb,
lib/tdl/axi_stream/bak/axis_to_data_inf_auto.rb,
lib/tdl/axi_stream/bak/check_stream_crc_auto.rb,
lib/tdl/axi_stream/bak/data_to_axis_inf_auto.rb,
lib/tdl/axi_stream/bak/dynamic_port_cfg_auto.rb,
lib/tdl/axi_stream/axi_stream_cache_verb_auto.rb,
lib/tdl/axi_stream/axi_stream_long_cache_auto.rb,
lib/tdl/axi_stream/axi_streams_combin_A1_auto.rb,
lib/tdl/axi_stream/axi_streams_scaler_A1_auto.rb,
lib/tdl/axi_stream/axis_combin_with_fifo_auto.rb,
lib/tdl/axi_stream/axis_mirror_to_master_auto.rb,
lib/tdl/axi_stream/bak/axis_connect_pipe_auto.rb,
lib/tdl/axi_stream/bak/axis_length_split_auto.rb,
lib/tdl/axi_stream/bak/axis_master_empty_auto.rb,
lib/tdl/axi_stream/bak/axis_slaver_empty_auto.rb,
lib/tdl/axi_stream/bak/axis_width_combin_auto.rb,
lib/tdl/axi_stream/bak/dynnamic_addr_cfg_auto.rb,
lib/tdl/axi_stream/parse_big_field_table_auto.rb,
lib/tdl/axi_stream/axi_stream_cache_35bit_auto.rb,
lib/tdl/axi_stream/axi_stream_interconnect_M2S.rb,
lib/tdl/axi_stream/axi_stream_interconnect_S2M.rb,
lib/tdl/axi_stream/axi_stream_packet_fifo_auto.rb,
lib/tdl/axi_stream/bak/axi_streams_combin_auto.rb,
lib/tdl/axi_stream/bak/axi_streams_scaler_auto.rb,
lib/tdl/axi_stream/bak/axis_width_convert_auto.rb,
lib/tdl/axi_stream/axi_stream_cache_mirror_auto.rb,
lib/tdl/axi_stream/axi_stream_partition_A1_auto.rb,
lib/tdl/axi_stream/axis_connect_pipe_A1.sv_auto.rb,
lib/tdl/axi_stream/bak/axi_stream_cache_B1_auto.rb,
lib/tdl/axi_stream/bak/axis_slaver_pipe_A1_auto.rb,
lib/tdl/axi_stream/bak/axis_width_destruct_auto.rb,
lib/tdl/axi_stream/bak/data_to_axis_inf_A1_auto.rb,
lib/tdl/axi_stream/bak/gen_big_field_table_auto.rb,
lib/tdl/axi_stream/bak/udp_server_ctrl_bfm_auto.rb,
lib/tdl/axi_stream/bak/axi_stream_long_fifo_auto.rb,
lib/tdl/axi_stream/bak/axi_stream_partition_auto.rb,
lib/tdl/axi_stream/bak/axis_valve_with_pipe_auto.rb,
lib/tdl/axi_stream/parse_big_field_table_A1_auto.rb,
lib/tdl/axi_stream/parse_big_field_table_A2_auto.rb,
lib/tdl/axi_stream/axi_stream_interconnect_M2S_A1.rb,
lib/tdl/axi_stream/axi_stream_long_fifo_verb_auto.rb,
lib/tdl/axi_stream/axis_pkt_fifo_filter_keep_auto.rb,
lib/tdl/axi_stream/axis_width_destruct_A1.sv_auto.rb,
lib/tdl/axi_stream/bak/axi_stream_cache_verb_auto.rb,
lib/tdl/axi_stream/bak/axis_combin_with_fifo_auto.rb,
lib/tdl/axi_stream/bak/parse_big_field_table_auto.rb,
lib/tdl/axi_stream/bak/axi_stream_cache_35bit_auto.rb,
lib/tdl/axi_stream/bak/axi_stream_packet_fifo_auto.rb,
lib/tdl/axi_stream/axi_stream_interconnect_M2S_auto.rb,
lib/tdl/axi_stream/axi_stream_interconnect_S2M_auto.rb,
lib/tdl/axi_stream/axis_connect_pipe_with_info_auto.rb,
lib/tdl/axi_stream/axis_length_split_with_addr_auto.rb,
lib/tdl/axi_stream/bak/axi_stream_cache_mirror_auto.rb,
lib/tdl/axi_stream/bak/axi_stream_partition_A1_auto.rb,
lib/tdl/axi_stream/bak/axis_connect_pipe_A1.sv_auto.rb,
lib/tdl/axi4/axi4_wr_auxiliary_gen_without_resp_auto.rb,
lib/tdl/axi_stream/axis_length_split_writh_user_auto.rb,
lib/tdl/axi_stream/axis_pkt_fifo_filter_keep_A1_auto.rb,
lib/tdl/axi_stream/bak/__axi_stream_interconnect_S2M.rb,
lib/tdl/axi_stream/bak/parse_big_field_table_A1_auto.rb,
lib/tdl/axi_stream/bak/parse_big_field_table_A2_auto.rb,
lib/tdl/axi4/bak/__axi4_wr_auxiliary_gen_without_resp.rb,
lib/tdl/axi_stream/bak/axis_pkt_fifo_filter_keep_auto.rb,
lib/tdl/axi_stream/axi_stream_interconnect_M2S_A1_auto.rb,
lib/tdl/axi_stream/bak/axi_stream_interconnect_S2M_auto.rb,
lib/tdl/axi_stream/bak/axis_connect_pipe_with_info_auto.rb,
lib/tdl/axi_stream/bak/axis_length_split_with_addr_auto.rb,
lib/tdl/axi4/bak/axi4_wr_auxiliary_gen_without_resp_auto.rb,
lib/tdl/axi_stream/axi_stream_interconnect_S2M_auto_auto.rb,
lib/tdl/axi_stream/axi_stream_packet_fifo_with_info_auto.rb,
lib/tdl/axi_stream/axi_stream_cache_72_95bit_with_keep_auto.rb,
lib/tdl/axi_stream/bak/axi_stream_packet_fifo_with_info_auto.rb,
lib/tdl/axi_stream/axi_stream_interconnect_M2S_bind_tuser_auto.rb,
lib/tdl/axi_stream/bak/axi_stream_cache_72_95bit_with_keep_auto.rb,
lib/tdl/axi_stream/axi_stream_interconnect_S2M_with_keep.sv_auto.rb,
lib/tdl/axi_stream/bak/axi_stream_interconnect_S2M_with_keep.sv_auto.rb
Overview
2018-05-04 14:40:10 +0800 require_relative “.././tdl” require_relative ‘....tdltdl’
Constant Summary collapse
- Synth_REP =
parse text for autogen method and constant ###
/\(\*\s+axi_stream\s*=\s*"true"\s+\*\)/
- PORT_REP =
def initialize(name: “test_axis”,clock: nil,reset: nil,dsize: nil,port: false,dimension: [],freqM: nil,belong_to_module: nil)
super belong_to_module self.dsize = dsize self.clock = clock self.reset = reset self.dimension = dimension self.freqM = freqM self.inst_name = name self.modport_type = port
end
/(?<up_down>\(\*\s+(?<ud_name>axis_up|axis_down|up_stream|down_stream)\s*=\s*"true"\s+\*\))?\s*(axi_stream_inf\.)(?<modport>master|slaver|mirror|out_mirror)\s+(?<name>\w+)\s*(?<vector>\[.*?\])?/m
- UP_STREAM_REP =
Regexp.union(/axis_up/,/up_stream/)
Instance Attribute Summary collapse
-
#branch_total ⇒ Object
Returns the value of attribute branch_total.
-
#dsize ⇒ Object
<tdl_key><hdl_key><default_value>.
-
#ghost ⇒ Object
Returns the value of attribute ghost.
-
#id ⇒ Object
Returns the value of attribute id.
-
#m2s_interconnect_addr ⇒ Object
Returns the value of attribute m2s_interconnect_addr.
-
#name ⇒ Object
Returns the value of attribute name.
-
#port ⇒ Object
Returns the value of attribute port.
Attributes inherited from TdlSpace::TdlBaseInterface
Attributes included from TdlSpace::VarElemenCore
#dimension, #inst_name, #logic_type
Class Method Summary collapse
- .aclk(obj) ⇒ Object
- .aresetn(obj) ⇒ Object
- .axi4_rd_auxiliary_gen(id_add_len_in: "id_add_len_in", axi_rd_aux: "axi_rd_aux", belong_to_module: nil) ⇒ Object
- .axi4_wr_auxiliary_gen_without_resp(stream_en: "stream_en", id_add_len_in: "id_add_len_in", axi_wr_aux: "axi_wr_aux") ⇒ Object
- .axi_stream_cache(axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
- .axi_stream_cache_35bit(axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
- .axi_stream_cache_72_95bit_with_keep(axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
- .axi_stream_cache_b1(axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
- .axi_stream_cache_mirror(axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
- .axi_stream_cache_verb(axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
- .axi_stream_interconnect_m2s(num: 8, nsize: "NUM <= 2? 1 :", addr: "addr", s00: "s00", m00: "m00", belong_to_module: nil) ⇒ Object
- .axi_stream_interconnect_m2s_a1(num: 8, s00: "s00", m00: "m00", up_stream: nil, down_stream: nil, belong_to_module: nil) ⇒ Object
- .axi_stream_interconnect_m2s_bind_tuser(num: 8, s00: "s00", m00: "m00", up_stream: nil, down_stream: nil, belong_to_module: nil) ⇒ Object
- .axi_stream_interconnect_s2m(num: 8, addr: "addr", s00: "s00", m00: "m00") ⇒ Object
- .axi_stream_interconnect_s2m_auto(head_dummy: 4, num: 4, slaver: "slaver", sub_tx_inf: "sub_tx_inf", up_stream: nil, belong_to_module: nil) ⇒ Object
- .axi_stream_interconnect_s2m_with_keep(num: 8, nsize: "NUM <= 2? 1 :", addr: "addr", s00: "s00", m00: "m00") ⇒ Object
- .axi_stream_long_cache(depth: 8192, axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil, belong_to_module: nil) ⇒ Object
- .axi_stream_long_fifo(depth: 2, byte_depth: 8192*2, axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
- .axi_stream_long_fifo_verb(depth: 2, byte_depth: 8192*2, axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil, belong_to_module: nil) ⇒ Object
- .axi_stream_packet_fifo(depth: 2, axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
- .axi_stream_packet_fifo_with_info(depth: 2, esize: 8, info_in: "info_in", info_out: "info_out", axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
- .axi_stream_partition(valve: "valve", partition_len: "partition_len", req_new_len: "req_new_len", axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
- .axi_stream_partition_a1(valve: "valve", partition_len: "partition_len", axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
- .axi_stream_wide_fifo(depth: 2, axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil, belong_to_module: nil) ⇒ Object
- .axi_streams_combin(mode: "BOTH", cut_or_combin_body: "ON", dsize: 8, new_body_len: "new_body_len", trigger_signal: "trigger_signal", head_inf: "head_inf", body_inf: "body_inf", end_inf: "end_inf", m00: "m00", up_stream: nil, down_stream: nil) ⇒ Object
- .axi_streams_combin_a1(mode: "BOTH", cut_or_combin_body: "ON", new_body_len: "new_body_len", trigger_signal: "trigger_signal", head_inf: "head_inf", body_inf: "body_inf", end_inf: "end_inf", m00: "m00", up_stream: nil, down_stream: nil, belong_to_module: nil) ⇒ Object
- .axi_streams_scaler(mode: "BOTH", cut_or_combin_body: "ON", dsize: 8, new_body_len: "new_body_len", head_inf: "head_inf", body_inf: "body_inf", end_inf: "end_inf", m00: "m00", up_stream: nil, down_stream: nil) ⇒ Object
- .axi_streams_scaler_a1(mode: "BOTH", cut_or_combin_body: "ON", new_body_len: "new_body_len", head_inf: "head_inf", body_inf: "body_inf", end_inf: "end_inf", m00: "m00", up_stream: nil, down_stream: nil, belong_to_module: nil) ⇒ Object
- .axis_append(mode: "BOTH", dsize: 8, head_field_len: 16*8, head_field_name: "HEAD Filed", end_field_len: 16*8, end_field_name: "END Filed", head_value: "head_value", end_value: "end_value", origin_in: "origin_in", append_out: "append_out", up_stream: nil, down_stream: nil) ⇒ Object
- .axis_append_a1(mode: "BOTH", dsize: 8, head_field_len: 16*8, head_field_name: "HEAD Filed", end_field_len: 16*8, end_field_name: "END Filed", enable: "enable", head_value: "head_value", end_value: "end_value", origin_in: "origin_in", append_out: "append_out", up_stream: nil, down_stream: nil) ⇒ Object
- .axis_combin_with_fifo(mode: "BOTH", cut_or_combin_body: "ON", new_body_len: "new_body_len", head_inf: "head_inf", body_inf: "body_inf", end_inf: "end_inf", m00: "m00", up_stream: nil, down_stream: nil) ⇒ Object
- .axis_connect_pipe(axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
- .axis_connect_pipe_a1(axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
- .axis_connect_pipe_with_info(ifsize: 32, info_in: "info_in", info_out: "info_out", axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
- .axis_direct(slaver: "slaver", master: "master", up_stream: nil, down_stream: nil) ⇒ Object
- .axis_filter(button: "button", axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
- .axis_full_to_data_c(data_out_inf: "data_out_inf", axis_in: "axis_in", belong_to_module: nil) ⇒ Object
- .axis_head_cut(len: 1, slaver: "slaver", master: "master", up_stream: nil, down_stream: nil, belong_to_module: nil) ⇒ Object
- .axis_length_fill(length: "length", axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
- .axis_length_split(length: "length", axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
- .axis_length_split_with_addr(addr_step: 1024, origin_addr: "origin_addr", length: "length", band_addr: "band_addr", axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
- .axis_length_split_with_user(length: "length", axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil, belong_to_module: nil) ⇒ Object
- .axis_link_trigger(mode: "STREAM", dsize: 32, data: "data", trigger_inf: "trigger_inf", mirror: "mirror", belong_to_module: nil) ⇒ Object
- .axis_master_empty(master: "master", down_stream: nil) ⇒ Object
- .axis_mirror_to_master(depth: 4, mirror: "mirror", master: "master", up_stream: nil, down_stream: nil, belong_to_module: nil) ⇒ Object
- .axis_mirrors(h: 0, l: 0, num: 8, mode: "CDS_MODE", condition_data: "condition_data", axis_in: "axis_in", axis_mirror: "axis_mirror", up_stream: nil, down_stream: nil) ⇒ Object
- .axis_pkt_fifo_filter_keep(depth: 2, axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
- .axis_pkt_fifo_filter_keep_a1(depth: 2, axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil, belong_to_module: nil) ⇒ Object
- .axis_ram_buffer(length: 4096, wr_en: "wr_en", gen_en: "gen_en", gen_ready: "gen_ready", axis_wr_inf: "axis_wr_inf", axis_data_inf: "axis_data_inf", up_stream: nil, down_stream: nil) ⇒ Object
- .axis_slaver_empty(slaver: "slaver", up_stream: nil) ⇒ Object
- .axis_slaver_pipe(axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
- .axis_slaver_pipe_a1(depth: 1, axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
- .axis_to_axi4_or_lite(lite: "lite", axis_in: "axis_in", rd_rel_axis: "rd_rel_axis", axi4: "axi4", belong_to_module: nil) ⇒ Object
- .axis_to_axi4_wr(addr: "addr", max_length: "max_length", axis_in: "axis_in", axi_wr: "axi_wr") ⇒ Object
- .axis_to_data_inf(data_out_inf: "data_out_inf", axis_in: "axis_in") ⇒ Object
- .axis_to_lite_rd(dummy: 8, lite: "lite", axis_in: "axis_in", rd_rel_axis: "rd_rel_axis", belong_to_module: nil) ⇒ Object
- .axis_to_lite_wr(dummy: 8, lite: "lite", axis_in: "axis_in", belong_to_module: nil) ⇒ Object
- .axis_uncompress(asize: 8, lsize: 8, axis_zip: "axis_zip", axis_unzip: "axis_unzip") ⇒ Object
- .axis_valve(button: "button", axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
- .axis_valve_with_pipe(button: "button", axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
- .axis_width_combin(slim_axis: "slim_axis", wide_axis: "wide_axis", up_stream: nil, down_stream: nil) ⇒ Object
- .axis_width_combin_a1(slim_axis: "slim_axis", wide_axis: "wide_axis", up_stream: nil, down_stream: nil, belong_to_module: nil) ⇒ Object
- .axis_width_convert(in_axis: "in_axis", out_axis: "out_axis", up_stream: nil, down_stream: nil) ⇒ Object
- .axis_width_destruct(wide_axis: "wide_axis", slim_axis: "slim_axis", up_stream: nil, down_stream: nil) ⇒ Object
- .axis_width_destruct_a1(wide_axis: "wide_axis", slim_axis: "slim_axis", up_stream: nil, down_stream: nil, belong_to_module: nil) ⇒ Object
- .check_stream_crc(axis_in: "axis_in") ⇒ Object
- .collect_vector(main: nil, vector: nil) ⇒ Object
- .copy(obj) ⇒ Object
- .data_c_to_axis_full(data_in_inf: "data_in_inf", axis_out: "axis_out", belong_to_module: nil) ⇒ Object
- .data_to_axis_inf(mark_curr_data: "mark_curr_data", last_flag: "last_flag", data_slaver: "data_slaver", axis_master: "axis_master") ⇒ Object
- .data_to_axis_inf_a1(last_flag: "last_flag", data_slaver: "data_slaver", axis_master: "axis_master") ⇒ Object
- .direct(slaver: "slaver", master: "master", up_stream: nil, down_stream: nil, belong_to_module: nil) ⇒ Object
- .dynamic_port_cfg(udp_port: "udp_port", port_index: "port_index", valid: "valid", tap_ex_udp_ctrl_inf: "tap_ex_udp_ctrl_inf", tap_local_udp_ctrl_inf: "tap_local_udp_ctrl_inf", tap_broadcast_udp_inf: "tap_broadcast_udp_inf", send_inf: "send_inf") ⇒ Object
- .dynnamic_addr_cfg(server_ip: "server_ip", server_mac: "server_mac", tap_local_udp_ctrl_inf: "tap_local_udp_ctrl_inf", tap_broadcast_udp_inf: "tap_broadcast_udp_inf", send_inf: "send_inf") ⇒ Object
- .gen_big_field_table(master_mode: "OFF", dsize: 8, field_len: 16*8, field_name: "Big Filed", enable: "enable", value: "value", cm_tb: "cm_tb", down_stream: nil) ⇒ Object
- .gen_origin_axis(mode: "RANGE", enable: "enable", ready: "ready", length: "length", axis_out: "axis_out", down_stream: nil) ⇒ Object
- .gen_origin_axis_a1(mode: "RANGE", enable: "enable", ready: "ready", length: "length", start: "start", axis_out: "axis_out", down_stream: nil, belong_to_module: nil) ⇒ Object
- .gen_simple_axis(mode: "RANGE", trigger: "trigger", gen_en: "gen_en", length: "length", led: "led", axis_out: "axis_out", down_stream: nil) ⇒ Object
-
.leave_empty(curr_type: :master, dsize: 8, clock: "", reset: "", belong_to_module: nil) ⇒ Object
.
- .leave_master_empty(*ss) ⇒ Object
-
.leave_slaver_empty(*ms) ⇒ Object
—- new ————–.
- .master_empty(*ms) ⇒ Object
- .parse_big_field_table(dsize: 8, field_len: 16*8, field_name: "Big Filed", try_parse: "OFF", enable: "enable", value: "value", out_valid: "out_valid", cm_tb_s: "cm_tb_s", cm_tb_m: "cm_tb_m", cm_mirror: "cm_mirror", up_stream: nil, down_stream: nil) ⇒ Object
- .parse_big_field_table_a1(dsize: 8, field_len: 16*8, field_name: "Big Filed", try_parse: "OFF", enable: "enable", value: "value", out_valid: "out_valid", cm_tb_s: "cm_tb_s", cm_tb_m: "cm_tb_m", cm_mirror: "cm_mirror", up_stream: nil, down_stream: nil) ⇒ Object
- .parse_big_field_table_a2(dsize: 8, field_len: 16*8, field_name: "Big Filed", try_parse: "OFF", enable: "enable", value: "value", out_valid: "out_valid", cm_tb_s: "cm_tb_s", cm_tb_m: "cm_tb_m", cm_mirror: "cm_mirror", up_stream: nil, down_stream: nil) ⇒ Object
- .parse_ports(port_array = nil) ⇒ Object
- .slaver_empty(*ss) ⇒ Object
- .stream_crc(crc: "crc", axis_in: "axis_in") ⇒ Object
- .string_copy_inf(strs, belong_to_module) ⇒ Object
- .udp_server_bfm(tx_udp_inf: "tx_udp_inf", rx_udp_inf: "rx_udp_inf") ⇒ Object
- .udp_server_ctrl_bfm(tx_udp_inf: "tx_udp_inf", rx_udp_inf: "rx_udp_inf") ⇒ Object
- .video_stream_2_axi_stream(video_slaver: nil, axis_master: nil, mode: "LINE") ⇒ Object
- .wide_axis_to_axi4_wr(addr: "addr", max_length: "max_length", axis_in: "axis_in", axi_wr: "axi_wr", belong_to_module: nil) ⇒ Object
Instance Method Summary collapse
- #%(plength) ⇒ Object
- #*(num) ⇒ Object
- #+(other_stream) ⇒ Object
- #/(num) ⇒ Object
- #<<(*up_streams) ⇒ Object
- #>>(down_stream) ⇒ Object
- #__inf_signal__(name) ⇒ Object
- #_axi4_rd_auxiliary_gen(id_add_len_in: "id_add_len_in", axi_rd_aux: "axi_rd_aux") ⇒ Object
- #_axi4_wr_auxiliary_gen_without_resp(stream_en: "stream_en", id_add_len_in: "id_add_len_in", axi_wr_aux: "axi_wr_aux") ⇒ Object
- #_axi4_wr_auxiliary_gen_without_resp_draw(stream_en: "stream_en", id_add_len_in: "id_add_len_in", axi_wr_aux: "axi_wr_aux") ⇒ Object
- #_axi_stream_interconnect_m2s(num: 8, nsize: "NUM <= 2? 1 :", addr: "addr", s00: "s00", m00: "m00") ⇒ Object
- #_axi_stream_interconnect_s2m(num: 8, addr: "addr", s00: "s00", m00: "m00") ⇒ Object
- #_axi_stream_interconnect_s2m_auto(head_dummy: 4, num: 4, slaver: "slaver", sub_tx_inf: "sub_tx_inf", up_stream: nil) ⇒ Object
- #_axi_stream_interconnect_s2m_draw(num: 8, addr: "addr", s00: "s00", m00: "m00") ⇒ Object
- #_axi_stream_interconnect_s2m_with_keep(num: 8, nsize: "NUM <= 2? 1 :", addr: "addr", s00: "s00", m00: "m00") ⇒ Object
- #_axi_stream_interconnect_s2m_with_keep_draw(num: 8, nsize: "NUM <= 2? 1 :", addr: "addr", s00: "s00", m00: "m00") ⇒ Object
- #_axis_full_to_data_c(data_out_inf: "data_out_inf", axis_in: "axis_in") ⇒ Object
- #_axis_link_trigger(mode: "STREAM", dsize: 32, data: "data", trigger_inf: "trigger_inf", mirror: "mirror") ⇒ Object
- #_axis_slaver_empty(slaver: "slaver", up_stream: nil) ⇒ Object
- #_axis_slaver_empty_draw(slaver: "slaver", up_stream: nil) ⇒ Object
- #_axis_to_axi4_or_lite(lite: "lite", axis_in: "axis_in", rd_rel_axis: "rd_rel_axis", axi4: "axi4") ⇒ Object
- #_axis_to_axi4_wr(addr: "addr", max_length: "max_length", axis_in: "axis_in", axi_wr: "axi_wr") ⇒ Object
- #_axis_to_axi4_wr_draw(addr: "addr", max_length: "max_length", axis_in: "axis_in", axi_wr: "axi_wr") ⇒ Object
- #_axis_to_data_inf(data_out_inf: "data_out_inf", axis_in: "axis_in") ⇒ Object
- #_axis_to_data_inf_draw(data_out_inf: "data_out_inf", axis_in: "axis_in") ⇒ Object
- #_axis_to_lite_rd(dummy: 8, lite: "lite", axis_in: "axis_in", rd_rel_axis: "rd_rel_axis") ⇒ Object
- #_axis_to_lite_wr(dummy: 8, lite: "lite", axis_in: "axis_in") ⇒ Object
- #_axis_uncompress(asize: 8, lsize: 8, axis_zip: "axis_zip", axis_unzip: "axis_unzip") ⇒ Object
- #_axis_uncompress_draw(asize: 8, lsize: 8, axis_zip: "axis_zip", axis_unzip: "axis_unzip") ⇒ Object
- #_check_stream_crc(axis_in: "axis_in") ⇒ Object
- #_check_stream_crc_draw(axis_in: "axis_in") ⇒ Object
- #_data_c_to_axis_full(data_in_inf: "data_in_inf", axis_out: "axis_out") ⇒ Object
- #_data_to_axis_inf(mark_curr_data: "mark_curr_data", last_flag: "last_flag", data_slaver: "data_slaver", axis_master: "axis_master") ⇒ Object
- #_data_to_axis_inf_a1(last_flag: "last_flag", data_slaver: "data_slaver", axis_master: "axis_master") ⇒ Object
- #_data_to_axis_inf_a1_draw(last_flag: "last_flag", data_slaver: "data_slaver", axis_master: "axis_master") ⇒ Object
- #_data_to_axis_inf_draw(mark_curr_data: "mark_curr_data", last_flag: "last_flag", data_slaver: "data_slaver", axis_master: "axis_master") ⇒ Object
- #_dynamic_port_cfg(udp_port: "udp_port", port_index: "port_index", valid: "valid", tap_ex_udp_ctrl_inf: "tap_ex_udp_ctrl_inf", tap_local_udp_ctrl_inf: "tap_local_udp_ctrl_inf", tap_broadcast_udp_inf: "tap_broadcast_udp_inf", send_inf: "send_inf") ⇒ Object
- #_dynamic_port_cfg_draw(udp_port: "udp_port", port_index: "port_index", valid: "valid", tap_ex_udp_ctrl_inf: "tap_ex_udp_ctrl_inf", tap_local_udp_ctrl_inf: "tap_local_udp_ctrl_inf", tap_broadcast_udp_inf: "tap_broadcast_udp_inf", send_inf: "send_inf") ⇒ Object
- #_dynnamic_addr_cfg(server_ip: "server_ip", server_mac: "server_mac", tap_local_udp_ctrl_inf: "tap_local_udp_ctrl_inf", tap_broadcast_udp_inf: "tap_broadcast_udp_inf", send_inf: "send_inf") ⇒ Object
- #_dynnamic_addr_cfg_draw(server_ip: "server_ip", server_mac: "server_mac", tap_local_udp_ctrl_inf: "tap_local_udp_ctrl_inf", tap_broadcast_udp_inf: "tap_broadcast_udp_inf", send_inf: "send_inf") ⇒ Object
- #_stream_crc(crc: "crc", axis_in: "axis_in") ⇒ Object
- #_stream_crc_draw(crc: "crc", axis_in: "axis_in") ⇒ Object
- #_udp_server_bfm(tx_udp_inf: "tx_udp_inf", rx_udp_inf: "rx_udp_inf") ⇒ Object
- #_udp_server_bfm_draw(tx_udp_inf: "tx_udp_inf", rx_udp_inf: "rx_udp_inf") ⇒ Object
- #_udp_server_ctrl_bfm(tx_udp_inf: "tx_udp_inf", rx_udp_inf: "rx_udp_inf") ⇒ Object
- #_udp_server_ctrl_bfm_draw(tx_udp_inf: "tx_udp_inf", rx_udp_inf: "rx_udp_inf") ⇒ Object
- #_wide_axis_to_axi4_wr(addr: "addr", max_length: "max_length", axis_in: "axis_in", axi_wr: "axi_wr") ⇒ Object
-
#aclk(n = 0) ⇒ Object
<tdl_key><hdl_key><default_freqM>.
-
#all_bits_slice(start: 8*4, length: 32) ⇒ Object
截取流数据段.
- #aresetn(n = 0) ⇒ Object
- #array_chain_vld_rdy_inst(pre_str) ⇒ Object
- #array_chain_vld_rdy_last_inst(pre_str) ⇒ Object
- #axi_stream_cache(axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
- #axi_stream_cache_35bit(axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
- #axi_stream_cache_35bit_draw(axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
- #axi_stream_cache_72_95bit_with_keep(axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
- #axi_stream_cache_72_95bit_with_keep_draw(axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
- #axi_stream_cache_b1(axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
- #axi_stream_cache_b1_draw(axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
- #axi_stream_cache_draw(axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
- #axi_stream_cache_mirror(axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
- #axi_stream_cache_mirror_draw(axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
- #axi_stream_cache_verb(axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
- #axi_stream_cache_verb_draw(axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
- #axi_stream_interconnect_m2s_a1(num: 8, s00: "s00", m00: "m00", up_stream: nil, down_stream: nil) ⇒ Object
- #axi_stream_interconnect_m2s_bind_tuser(num: 8, s00: "s00", m00: "m00", up_stream: nil, down_stream: nil) ⇒ Object
- #axi_stream_long_cache(depth: 8192, axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
- #axi_stream_long_fifo(depth: 2, byte_depth: 8192*2, axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
- #axi_stream_long_fifo_draw(depth: 2, byte_depth: 8192*2, axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
- #axi_stream_long_fifo_verb(depth: 2, byte_depth: 8192*2, axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
- #axi_stream_packet_fifo(depth: 2, axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
- #axi_stream_packet_fifo_draw(depth: 2, axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
- #axi_stream_packet_fifo_with_info(depth: 2, esize: 8, info_in: "info_in", info_out: "info_out", axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
- #axi_stream_packet_fifo_with_info_draw(depth: 2, esize: 8, info_in: "info_in", info_out: "info_out", axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
- #axi_stream_partition(valve: "valve", partition_len: "partition_len", req_new_len: "req_new_len", axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
- #axi_stream_partition_a1(valve: "valve", partition_len: "partition_len", axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
- #axi_stream_partition_a1_draw(valve: "valve", partition_len: "partition_len", axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
- #axi_stream_partition_draw(valve: "valve", partition_len: "partition_len", req_new_len: "req_new_len", axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
- #axi_stream_s2m(addr, *down_streams) ⇒ Object
- #axi_stream_s2m_draw(addr, num = 0) ⇒ Object
- #axi_stream_wide_fifo(depth: 2, axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
- #axi_streams_combin(mode: "BOTH", cut_or_combin_body: "ON", dsize: 8, new_body_len: "new_body_len", trigger_signal: "trigger_signal", head_inf: "head_inf", body_inf: "body_inf", end_inf: "end_inf", m00: "m00", up_stream: nil, down_stream: nil) ⇒ Object
- #axi_streams_combin_a1(mode: "BOTH", cut_or_combin_body: "ON", new_body_len: "new_body_len", trigger_signal: "trigger_signal", head_inf: "head_inf", body_inf: "body_inf", end_inf: "end_inf", m00: "m00", up_stream: nil, down_stream: nil) ⇒ Object
- #axi_streams_combin_draw(mode: "BOTH", cut_or_combin_body: "ON", dsize: 8, new_body_len: "new_body_len", trigger_signal: "trigger_signal", head_inf: "head_inf", body_inf: "body_inf", end_inf: "end_inf", m00: "m00", up_stream: nil, down_stream: nil) ⇒ Object
- #axi_streams_scaler(mode: "BOTH", cut_or_combin_body: "ON", dsize: 8, new_body_len: "new_body_len", head_inf: "head_inf", body_inf: "body_inf", end_inf: "end_inf", m00: "m00", up_stream: nil, down_stream: nil) ⇒ Object
- #axi_streams_scaler_a1(mode: "BOTH", cut_or_combin_body: "ON", new_body_len: "new_body_len", head_inf: "head_inf", body_inf: "body_inf", end_inf: "end_inf", m00: "m00", up_stream: nil, down_stream: nil) ⇒ Object
- #axi_streams_scaler_draw(mode: "BOTH", cut_or_combin_body: "ON", dsize: 8, new_body_len: "new_body_len", head_inf: "head_inf", body_inf: "body_inf", end_inf: "end_inf", m00: "m00", up_stream: nil, down_stream: nil) ⇒ Object
- #axis_append(mode: "BOTH", dsize: 8, head_field_len: 16*8, head_field_name: "HEAD Filed", end_field_len: 16*8, end_field_name: "END Filed", head_value: "head_value", end_value: "end_value", origin_in: "origin_in", append_out: "append_out", up_stream: nil, down_stream: nil) ⇒ Object
- #axis_append_a1(mode: "BOTH", dsize: 8, head_field_len: 16*8, head_field_name: "HEAD Filed", end_field_len: 16*8, end_field_name: "END Filed", enable: "enable", head_value: "head_value", end_value: "end_value", origin_in: "origin_in", append_out: "append_out", up_stream: nil, down_stream: nil) ⇒ Object
- #axis_append_a1_draw(mode: "BOTH", dsize: 8, head_field_len: 16*8, head_field_name: "HEAD Filed", end_field_len: 16*8, end_field_name: "END Filed", enable: "enable", head_value: "head_value", end_value: "end_value", origin_in: "origin_in", append_out: "append_out", up_stream: nil, down_stream: nil) ⇒ Object
- #axis_append_draw(mode: "BOTH", dsize: 8, head_field_len: 16*8, head_field_name: "HEAD Filed", end_field_len: 16*8, end_field_name: "END Filed", head_value: "head_value", end_value: "end_value", origin_in: "origin_in", append_out: "append_out", up_stream: nil, down_stream: nil) ⇒ Object
- #axis_combin_with_fifo(mode: "BOTH", cut_or_combin_body: "ON", new_body_len: "new_body_len", head_inf: "head_inf", body_inf: "body_inf", end_inf: "end_inf", m00: "m00", up_stream: nil, down_stream: nil) ⇒ Object
- #axis_combin_with_fifo_draw(mode: "BOTH", cut_or_combin_body: "ON", new_body_len: "new_body_len", head_inf: "head_inf", body_inf: "body_inf", end_inf: "end_inf", m00: "m00", up_stream: nil, down_stream: nil) ⇒ Object
- #axis_connect_pipe(axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
- #axis_connect_pipe_a1(axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
- #axis_connect_pipe_a1_draw(axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
- #axis_connect_pipe_draw(axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
- #axis_connect_pipe_with_info(ifsize: 32, info_in: "info_in", info_out: "info_out", axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
- #axis_connect_pipe_with_info_draw(ifsize: 32, info_in: "info_in", info_out: "info_out", axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
- #axis_direct(slaver: "slaver", master: "master", up_stream: nil, down_stream: nil) ⇒ Object
- #axis_direct_draw(slaver: "slaver", master: "master", up_stream: nil, down_stream: nil) ⇒ Object
- #axis_filter(button: "button", axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
- #axis_filter_draw(button: "button", axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
- #axis_head_cut(len: 1, slaver: "slaver", master: "master", up_stream: nil, down_stream: nil) ⇒ Object
- #axis_length_fill(length: "length", axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
- #axis_length_fill_draw(length: "length", axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
- #axis_length_split(length: "length", axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
- #axis_length_split_draw(length: "length", axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
- #axis_length_split_with_addr(addr_step: 1024, origin_addr: "origin_addr", length: "length", band_addr: "band_addr", axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
- #axis_length_split_with_addr_draw(addr_step: 1024, origin_addr: "origin_addr", length: "length", band_addr: "band_addr", axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
- #axis_length_split_with_user(length: "length", axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
- #axis_master_empty(master: "master", down_stream: nil) ⇒ Object
- #axis_master_empty_draw(master: "master", down_stream: nil) ⇒ Object
- #axis_mirror_to_master(depth: 4, mirror: "mirror", master: "master", up_stream: nil, down_stream: nil) ⇒ Object
- #axis_mirrors(h: 0, l: 0, num: 8, mode: "CDS_MODE", condition_data: "condition_data", axis_in: "axis_in", axis_mirror: "axis_mirror", up_stream: nil, down_stream: nil) ⇒ Object
- #axis_mirrors_draw(h: 0, l: 0, num: 8, mode: "CDS_MODE", condition_data: "condition_data", axis_in: "axis_in", axis_mirror: "axis_mirror", up_stream: nil, down_stream: nil) ⇒ Object
- #axis_pkt_fifo_filter_keep(depth: 2, axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
- #axis_pkt_fifo_filter_keep_a1(depth: 2, axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
- #axis_pkt_fifo_filter_keep_draw(depth: 2, axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
- #axis_ram_buffer(length: 4096, wr_en: "wr_en", gen_en: "gen_en", gen_ready: "gen_ready", axis_wr_inf: "axis_wr_inf", axis_data_inf: "axis_data_inf", up_stream: nil, down_stream: nil) ⇒ Object
- #axis_ram_buffer_draw(length: 4096, wr_en: "wr_en", gen_en: "gen_en", gen_ready: "gen_ready", axis_wr_inf: "axis_wr_inf", axis_data_inf: "axis_data_inf", up_stream: nil, down_stream: nil) ⇒ Object
- #axis_slaver_pipe(axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
- #axis_slaver_pipe_a1(depth: 1, axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
- #axis_slaver_pipe_a1_draw(depth: 1, axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
- #axis_slaver_pipe_draw(axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
- #axis_tdata(h = nil, l = nil) ⇒ Object
- #axis_valve(button: "button", axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
- #axis_valve_draw(button: "button", axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
- #axis_valve_with_pipe(button: "button", axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
- #axis_valve_with_pipe_draw(button: "button", axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
- #axis_width_combin(slim_axis: "slim_axis", wide_axis: "wide_axis", up_stream: nil, down_stream: nil) ⇒ Object
- #axis_width_combin_a1(slim_axis: "slim_axis", wide_axis: "wide_axis", up_stream: nil, down_stream: nil) ⇒ Object
- #axis_width_combin_draw(slim_axis: "slim_axis", wide_axis: "wide_axis", up_stream: nil, down_stream: nil) ⇒ Object
- #axis_width_convert(in_axis: "in_axis", out_axis: "out_axis", up_stream: nil, down_stream: nil) ⇒ Object
- #axis_width_convert_draw(in_axis: "in_axis", out_axis: "out_axis", up_stream: nil, down_stream: nil) ⇒ Object
- #axis_width_destruct(wide_axis: "wide_axis", slim_axis: "slim_axis", up_stream: nil, down_stream: nil) ⇒ Object
- #axis_width_destruct_a1(wide_axis: "wide_axis", slim_axis: "slim_axis", up_stream: nil, down_stream: nil) ⇒ Object
- #axis_width_destruct_draw(wide_axis: "wide_axis", slim_axis: "slim_axis", up_stream: nil, down_stream: nil) ⇒ Object
- #branch(name: nil, clock: @clock, reset: @reset, dsize: @dsize, freqM: nil) ⇒ Object
- #clock_reset_taps(def_clock_name, def_reset_name) ⇒ Object
- #collect_vector(axis_vector) ⇒ Object
-
#direct(slaver: "slaver", master: "master", up_stream: nil, down_stream: nil) ⇒ Object
alias_method :direct,:axis_direct @@pre_inst << lambda { alias_method :direct,:axis_direct return “” }.
- #from_video_stream(video_slaver: nil, mode: "LINE") ⇒ Object
- #gen_big_field_table(master_mode: "OFF", dsize: 8, field_len: 16*8, field_name: "Big Filed", enable: "enable", value: "value", cm_tb: "cm_tb", down_stream: nil) ⇒ Object
- #gen_big_field_table_draw(master_mode: "OFF", dsize: 8, field_len: 16*8, field_name: "Big Filed", enable: "enable", value: "value", cm_tb: "cm_tb", down_stream: nil) ⇒ Object
- #gen_origin_axis(mode: "RANGE", enable: "enable", ready: "ready", length: "length", axis_out: "axis_out", down_stream: nil) ⇒ Object
- #gen_origin_axis_a1(mode: "RANGE", enable: "enable", ready: "ready", length: "length", start: "start", axis_out: "axis_out", down_stream: nil) ⇒ Object
- #gen_origin_axis_draw(mode: "RANGE", enable: "enable", ready: "ready", length: "length", axis_out: "axis_out", down_stream: nil) ⇒ Object
- #gen_origin_draw ⇒ Object
- #gen_simple_axis(mode: "RANGE", trigger: "trigger", gen_en: "gen_en", length: "length", led: "led", axis_out: "axis_out", down_stream: nil) ⇒ Object
- #gen_simple_axis_draw(mode: "RANGE", trigger: "trigger", gen_en: "gen_en", length: "length", led: "led", axis_out: "axis_out", down_stream: nil) ⇒ Object
- #inherited(name: nil, clock: nil, reset: nil, dsize: nil, freqM: nil, dimension: []) ⇒ Object (also: #copy)
-
#initialize(name: "test_axis", clock: nil, reset: nil, dsize: nil, port: false, dimension: [], freqM: nil) ⇒ AxiStream
constructor
A new instance of AxiStream.
-
#inst ⇒ Object
def signal(index=nil) square_str = super(index) if @port String.new(@name.to_s).concat square_str else unless @nc String.new(“axis_#@name_id#@id#square_str”) else String.new(“nc_axis_#@name_id#@id#square_str”) end end end.
- #inst_port ⇒ Object
-
#last(latency: 0) ⇒ Object
—– Design Ref ————————-.
-
#mirror_seq(start, lr) ⇒ Object
lr must larger than zero, START : START+lr-1.
- #mirror_to(axis) ⇒ Object
- #parse_big_field_table(dsize: 8, field_len: 16*8, field_name: "Big Filed", try_parse: "OFF", enable: "enable", value: "value", out_valid: "out_valid", cm_tb_s: "cm_tb_s", cm_tb_m: "cm_tb_m", cm_mirror: "cm_mirror", up_stream: nil, down_stream: nil) ⇒ Object
- #parse_big_field_table_a1(dsize: 8, field_len: 16*8, field_name: "Big Filed", try_parse: "OFF", enable: "enable", value: "value", out_valid: "out_valid", cm_tb_s: "cm_tb_s", cm_tb_m: "cm_tb_m", cm_mirror: "cm_mirror", up_stream: nil, down_stream: nil) ⇒ Object
- #parse_big_field_table_a1_draw(dsize: 8, field_len: 16*8, field_name: "Big Filed", try_parse: "OFF", enable: "enable", value: "value", out_valid: "out_valid", cm_tb_s: "cm_tb_s", cm_tb_m: "cm_tb_m", cm_mirror: "cm_mirror", up_stream: nil, down_stream: nil) ⇒ Object
- #parse_big_field_table_a2(dsize: 8, field_len: 16*8, field_name: "Big Filed", try_parse: "OFF", enable: "enable", value: "value", out_valid: "out_valid", cm_tb_s: "cm_tb_s", cm_tb_m: "cm_tb_m", cm_mirror: "cm_mirror", up_stream: nil, down_stream: nil) ⇒ Object
- #parse_big_field_table_a2_draw(dsize: 8, field_len: 16*8, field_name: "Big Filed", try_parse: "OFF", enable: "enable", value: "value", out_valid: "out_valid", cm_tb_s: "cm_tb_s", cm_tb_m: "cm_tb_m", cm_mirror: "cm_mirror", up_stream: nil, down_stream: nil) ⇒ Object
- #parse_big_field_table_draw(dsize: 8, field_len: 16*8, field_name: "Big Filed", try_parse: "OFF", enable: "enable", value: "value", out_valid: "out_valid", cm_tb_s: "cm_tb_s", cm_tb_m: "cm_tb_m", cm_mirror: "cm_mirror", up_stream: nil, down_stream: nil) ⇒ Object
- #port_length ⇒ Object
- #s2m_sub_direct(*down_streams) ⇒ Object
- #s2m_sub_inst(num = 0) ⇒ Object
-
#seq(start, lr) ⇒ Object
lr must larger than zero, START : START+lr-1.
- #simple_verify_by_coe(file) ⇒ Object
- #slaverbfm(info: true, rate: 100, repeat: 100) ⇒ Object
-
#slaverbfm_draw(info: 0, repeat: 0, rate: 100) ⇒ Object
def self.MasterBFM().
- #slice_to_logic(range) ⇒ Object
-
#to_eth(esize = 8) ⇒ Object
转到 网络流.
- #to_master_bfm ⇒ Object
- #to_simple_sim_master_coe(enable: 1.b1, length: [10,200], gap_len: [0,10], data: [ (0...100) ], vld_perc: [50, 100], loop_coe: true) ⇒ Object
- #to_simple_sim_slaver(rdy_percetage = 50, loop_rdy = true) ⇒ Object
- #vcs_comptable(origin: 'master', to: 'slaver') ⇒ Object
-
#vld_rdy ⇒ Object
super(port_array,rep,“axi_stream_inf”,up_stream_rep) do |h| h = AxiStream yield h end end.
- #vld_rdy_last ⇒ Object
- #x_all_bits_slice(name: "slice_#{globle_random_name_flag()}", start: 8*4, length: 32) ⇒ Object
-
#|(down_stream) ⇒ Object
pipe.
Methods included from BaseFunc
check_same, check_same_class, check_same_clock, check_same_dsize
Methods included from BaseModule
Methods inherited from TdlSpace::TdlBaseInterface
#element_to_module, inherited, #name_copy, #path_refs, subclass, #use_which_freq_when_copy
Methods included from TdlSpace::VarElemenAttr
#_io_map, #clock_io_map, #comm_io_map, #comm_io_maps_same, #gen_sv_interface, #get_class_var, #hdl_name, #modports, #param_map, #pdata_map, #reset_io_map, #sdata_maps, #set_class_var
Methods included from TdlSpace::VarElemenCore
#[], #_inner_inst, #instance, #modport_type, #modport_type=, #to_s
Methods included from TdlSpace::ExCreateTP
Methods included from AxiTdl::TestUnitTrack
Constructor Details
#initialize(name: "test_axis", clock: nil, reset: nil, dsize: nil, port: false, dimension: [], freqM: nil) ⇒ AxiStream
Returns a new instance of AxiStream.
14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 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/elements/axi_stream.rb', line 14 def initialize(name:"test_axis",clock:nil,reset:nil,dsize:nil,port:false,dimension:[],freqM:nil) name_legal?(name) super(dimension:dimension,clock:clock,reset:reset,freqM:freqM) @name = name.to_s # @id = GlobalParam.CurrTdlModule.BindEleClassVars.AxiStream.id @port = port # raise TdlError.new("AXI STREAM CLOCK ERROR >>#{clock.class}<<") unless clock.is_a? Clock # raise TdlError.new("AXI STREAM RESET ERROR") unless reset.is_a? Reset # raise TdlError.new("AXI STREAM DATA ERROR") unless dsize.is_a? Fixnum @dsize = dsize unless port @dsize = dsize @clock = clock @reset = reset else if dimension.empty? @dsize = "#{name.to_s}.DSIZE".to_nq unless dsize @clock = "#{name.to_s}.aclk".to_nq unless clock @reset = "#{name.to_s}.aresetn".to_nq unless reset else @dsize = "#{name.to_s}[0].DSIZE".to_nq unless dsize @clock = "#{name.to_s}[0].aclk".to_nq unless clock @reset = "#{name.to_s}[0].aresetn".to_nq unless reset end end # add_dsize_func # @correlation_proc = "" # @up_streams = [] # if @port # GlobalParam.CurrTdlModule.BindEleClassVars.AxiStream.ports << self # else # GlobalParam.CurrTdlModule.BindEleClassVars.AxiStream.inst_stack << method(:inst).to_proc # end # @interconnect_up_streams = [] # GlobalParam.CurrTdlModule.BindEleClassVars.AxiStream.draw_stack << method(:draw).to_proc end |
Instance Attribute Details
#branch_total ⇒ Object
Returns the value of attribute branch_total.
5 6 7 |
# File 'lib/tdl/axi_stream/axi_stream_interconnect.rb', line 5 def branch_total @branch_total end |
#dsize ⇒ Object
<tdl_key><hdl_key><default_value>
6 7 8 |
# File 'lib/tdl/rebuild_ele/axi_stream.rb', line 6 def dsize @dsize end |
#ghost ⇒ Object
Returns the value of attribute ghost.
12 13 14 |
# File 'lib/tdl/elements/axi_stream.rb', line 12 def ghost @ghost end |
#id ⇒ Object
Returns the value of attribute id.
12 13 14 |
# File 'lib/tdl/elements/axi_stream.rb', line 12 def id @id end |
#m2s_interconnect_addr ⇒ Object
Returns the value of attribute m2s_interconnect_addr.
4 5 6 |
# File 'lib/tdl/axi_stream/axi_stream_interconnect.rb', line 4 def m2s_interconnect_addr @m2s_interconnect_addr end |
#name ⇒ Object
Returns the value of attribute name.
12 13 14 |
# File 'lib/tdl/elements/axi_stream.rb', line 12 def name @name end |
#port ⇒ Object
Returns the value of attribute port.
13 14 15 |
# File 'lib/tdl/elements/axi_stream.rb', line 13 def port @port end |
Class Method Details
.aclk(obj) ⇒ Object
590 591 592 593 594 595 596 |
# File 'lib/tdl/elements/axi_stream.rb', line 590 def self.aclk(obj) if(obj.is_a? AxiStream) obj.aclk elsif obj.is_a? String NqString.new(obj.concat ".aclk") end end |
.aresetn(obj) ⇒ Object
598 599 600 601 602 603 604 |
# File 'lib/tdl/elements/axi_stream.rb', line 598 def self.aresetn(obj) if(obj.is_a? AxiStream) obj.aresetn elsif obj.is_a? String NqString.new(obj.concat ".aresetn") end end |
.axi4_rd_auxiliary_gen(id_add_len_in: "id_add_len_in", axi_rd_aux: "axi_rd_aux", belong_to_module: nil) ⇒ Object
54 55 56 57 58 59 60 61 62 63 64 65 66 67 |
# File 'lib/tdl/axi4/axi4_rd_auxiliary_gen_auto.rb', line 54 def self.axi4_rd_auxiliary_gen( id_add_len_in:"id_add_len_in", axi_rd_aux:"axi_rd_aux", belong_to_module:nil ) return_stream = nil belong_to_module = [id_add_len_in].first.belong_to_module unless belong_to_module belong_to_module.AxiStream_NC._axi4_rd_auxiliary_gen( id_add_len_in:id_add_len_in, axi_rd_aux:axi_rd_aux) return return_stream end |
.axi4_wr_auxiliary_gen_without_resp(stream_en: "stream_en", id_add_len_in: "id_add_len_in", axi_wr_aux: "axi_wr_aux") ⇒ Object
59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 |
# File 'lib/tdl/axi4/axi4_wr_auxiliary_gen_without_resp_auto.rb', line 59 def self.axi4_wr_auxiliary_gen_without_resp( stream_en:"stream_en", id_add_len_in:"id_add_len_in", axi_wr_aux:"axi_wr_aux", belong_to_module:nil ) return_stream = nil belong_to_module = [id_add_len_in].first.belong_to_module unless belong_to_module belong_to_module.AxiStream_NC._axi4_wr_auxiliary_gen_without_resp( stream_en:stream_en, id_add_len_in:id_add_len_in, axi_wr_aux:axi_wr_aux) return return_stream end |
.axi_stream_cache(axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 |
# File 'lib/tdl/axi_stream/axi_stream_cache_auto.rb', line 73 def self.axi_stream_cache( axis_in:"axis_in", axis_out:"axis_out", up_stream:nil, down_stream:nil, belong_to_module:nil ) return_stream = nil ms = [axis_in,axis_out,up_stream,down_stream].map do |e| if e.respond_to? :belong_to_module e.belong_to_module else nil end end belong_to_module = ms.compact.first unless belong_to_module if down_stream.nil? && axis_out.eql?("axis_out") if up_stream.is_a? AxiStream down_stream = up_stream.copy else down_stream = axis_in.copy end return_stream = down_stream end if up_stream.nil? && axis_in.eql?("axis_in") if down_stream.is_a? AxiStream up_stream = down_stream.copy else up_stream = axis_out.copy end return_stream = up_stream end if down_stream.is_a? AxiStream down_stream.axi_stream_cache( axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) elsif axis_out.is_a? AxiStream axis_out.axi_stream_cache( axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) else belong_to_module.AxiStream_NC.axi_stream_cache( axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) end return return_stream end |
.axi_stream_cache_35bit(axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 |
# File 'lib/tdl/axi_stream/axi_stream_cache_35bit_auto.rb', line 73 def self.axi_stream_cache_35bit( axis_in:"axis_in", axis_out:"axis_out", up_stream:nil, down_stream:nil, belong_to_module:nil ) return_stream = nil belong_to_module = [axis_in,axis_out].first.belong_to_module unless belong_to_module if down_stream.nil? && axis_out.eql?("axis_out") if up_stream.is_a? AxiStream down_stream = up_stream.copy else down_stream = axis_in.copy end return_stream = down_stream end if up_stream.nil? && axis_in.eql?("axis_in") if down_stream.is_a? AxiStream up_stream = down_stream.copy else up_stream = axis_out.copy end return_stream = up_stream end if down_stream.is_a? AxiStream down_stream.axi_stream_cache_35bit( axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) elsif axis_out.is_a? AxiStream axis_out.axi_stream_cache_35bit( axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) else belong_to_module.AxiStream_NC.axi_stream_cache_35bit( axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) end return return_stream end |
.axi_stream_cache_72_95bit_with_keep(axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 |
# File 'lib/tdl/axi_stream/axi_stream_cache_72_95bit_with_keep_auto.rb', line 73 def self.axi_stream_cache_72_95bit_with_keep( axis_in:"axis_in", axis_out:"axis_out", up_stream:nil, down_stream:nil, belong_to_module:nil ) return_stream = nil belong_to_module = [axis_in,axis_out].first.belong_to_module unless belong_to_module if down_stream.nil? && axis_out.eql?("axis_out") if up_stream.is_a? AxiStream down_stream = up_stream.copy else down_stream = axis_in.copy end return_stream = down_stream end if up_stream.nil? && axis_in.eql?("axis_in") if down_stream.is_a? AxiStream up_stream = down_stream.copy else up_stream = axis_out.copy end return_stream = up_stream end if down_stream.is_a? AxiStream down_stream.axi_stream_cache_72_95bit_with_keep( axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) elsif axis_out.is_a? AxiStream axis_out.axi_stream_cache_72_95bit_with_keep( axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) else belong_to_module.AxiStream_NC.axi_stream_cache_72_95bit_with_keep( axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) end return return_stream end |
.axi_stream_cache_b1(axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 |
# File 'lib/tdl/axi_stream/axi_stream_cache_B1_auto.rb', line 73 def self.axi_stream_cache_b1( axis_in:"axis_in", axis_out:"axis_out", up_stream:nil, down_stream:nil, belong_to_module:nil ) return_stream = nil belong_to_module = [axis_in,axis_out].first.belong_to_module unless belong_to_module if down_stream.nil? && axis_out.eql?("axis_out") if up_stream.is_a? AxiStream down_stream = up_stream.copy else down_stream = axis_in.copy end return_stream = down_stream end if up_stream.nil? && axis_in.eql?("axis_in") if down_stream.is_a? AxiStream up_stream = down_stream.copy else up_stream = axis_out.copy end return_stream = up_stream end if down_stream.is_a? AxiStream down_stream.axi_stream_cache_b1( axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) elsif axis_out.is_a? AxiStream axis_out.axi_stream_cache_b1( axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) else belong_to_module.AxiStream_NC.axi_stream_cache_b1( axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) end return return_stream end |
.axi_stream_cache_mirror(axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 |
# File 'lib/tdl/axi_stream/axi_stream_cache_mirror_auto.rb', line 73 def self.axi_stream_cache_mirror( axis_in:"axis_in", axis_out:"axis_out", up_stream:nil, down_stream:nil, belong_to_module:nil ) return_stream = nil belong_to_module = [axis_in,axis_out].first.belong_to_module unless belong_to_module if down_stream.nil? && axis_out.eql?("axis_out") if up_stream.is_a? AxiStream down_stream = up_stream.copy else down_stream = axis_in.copy end return_stream = down_stream end if up_stream.nil? && axis_in.eql?("axis_in") if down_stream.is_a? AxiStream up_stream = down_stream.copy else up_stream = axis_out.copy end return_stream = up_stream end if down_stream.is_a? AxiStream down_stream.axi_stream_cache_mirror( axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) elsif axis_out.is_a? AxiStream axis_out.axi_stream_cache_mirror( axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) else belong_to_module.AxiStream_NC.axi_stream_cache_mirror( axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) end return return_stream end |
.axi_stream_cache_verb(axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 |
# File 'lib/tdl/axi_stream/axi_stream_cache_verb_auto.rb', line 73 def self.axi_stream_cache_verb( axis_in:"axis_in", axis_out:"axis_out", up_stream:nil, down_stream:nil, belong_to_module:nil ) return_stream = nil belong_to_module = [axis_in,axis_out].first.belong_to_module unless belong_to_module if down_stream.nil? && axis_out.eql?("axis_out") if up_stream.is_a? AxiStream down_stream = up_stream.copy else down_stream = axis_in.copy end return_stream = down_stream end if up_stream.nil? && axis_in.eql?("axis_in") if down_stream.is_a? AxiStream up_stream = down_stream.copy else up_stream = axis_out.copy end return_stream = up_stream end if down_stream.is_a? AxiStream down_stream.axi_stream_cache_verb( axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) elsif axis_out.is_a? AxiStream axis_out.axi_stream_cache_verb( axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) else belong_to_module.AxiStream_NC.axi_stream_cache_verb( axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) end return return_stream end |
.axi_stream_interconnect_m2s(num: 8, nsize: "NUM <= 2? 1 :", addr: "addr", s00: "s00", m00: "m00", belong_to_module: nil) ⇒ Object
65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 |
# File 'lib/tdl/axi_stream/axi_stream_interconnect_M2S.rb', line 65 def self.axi_stream_interconnect_m2s( num:8, addr:"addr", s00:"s00", m00:"m00", belong_to_module:nil ) return_stream = nil belong_to_module = [m00].first.belong_to_module unless belong_to_module belong_to_module.AxiStream_NC._axi_stream_interconnect_m2s( num:num, addr:addr, s00:s00, m00:m00) return return_stream end |
.axi_stream_interconnect_m2s_a1(num: 8, s00: "s00", m00: "m00", up_stream: nil, down_stream: nil, belong_to_module: nil) ⇒ Object
72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 |
# File 'lib/tdl/axi_stream/axi_stream_interconnect_M2S_A1.rb', line 72 def self.axi_stream_interconnect_m2s_a1( num:nil, s00:"s00", m00:"m00", up_stream:nil, down_stream:nil, belong_to_module:nil ) return_stream = nil belong_to_module = [s00,m00].first.belong_to_module unless belong_to_module if down_stream.nil? && m00.eql?("m00") if up_stream.is_a? AxiStream down_stream = up_stream.copy(name:"m00") else down_stream = s00.copy(name:"m00") end return_stream = down_stream end if up_stream.nil? && s00.eql?("s00") if down_stream.is_a? AxiStream up_stream = down_stream.copy(name:"s00") else up_stream = m00.copy(name:"s00") end return_stream = up_stream end if down_stream.is_a? AxiStream down_stream.axi_stream_interconnect_m2s_a1( num:num, s00:s00, m00:m00, up_stream:up_stream, down_stream:down_stream) elsif m00.is_a? AxiStream m00.axi_stream_interconnect_m2s_a1( num:num, s00:s00, m00:m00, up_stream:up_stream, down_stream:down_stream) else belong_to_module.AxiStream_NC.axi_stream_interconnect_m2s_a1( num:num, s00:s00, m00:m00, up_stream:up_stream, down_stream:down_stream) end return return_stream end |
.axi_stream_interconnect_m2s_bind_tuser(num: 8, s00: "s00", m00: "m00", up_stream: nil, down_stream: nil, belong_to_module: nil) ⇒ Object
79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 |
# File 'lib/tdl/axi_stream/axi_stream_interconnect_M2S_bind_tuser_auto.rb', line 79 def self.axi_stream_interconnect_m2s_bind_tuser( num:8, s00:"s00", m00:"m00", up_stream:nil, down_stream:nil, belong_to_module:nil ) return_stream = nil belong_to_module = [s00,m00].first.belong_to_module unless belong_to_module if down_stream.nil? && m00.eql?("m00") if up_stream.is_a? AxiStream down_stream = up_stream.copy else down_stream = s00.copy end return_stream = down_stream end if up_stream.nil? && s00.eql?("s00") if down_stream.is_a? AxiStream up_stream = down_stream.copy else up_stream = m00.copy end return_stream = up_stream end if down_stream.is_a? AxiStream down_stream.axi_stream_interconnect_m2s_bind_tuser( num:num, s00:s00, m00:m00, up_stream:up_stream, down_stream:down_stream) elsif m00.is_a? AxiStream m00.axi_stream_interconnect_m2s_bind_tuser( num:num, s00:s00, m00:m00, up_stream:up_stream, down_stream:down_stream) else belong_to_module.AxiStream_NC.axi_stream_interconnect_m2s_bind_tuser( num:num, s00:s00, m00:m00, up_stream:up_stream, down_stream:down_stream) end return return_stream end |
.axi_stream_interconnect_s2m(num: 8, addr: "addr", s00: "s00", m00: "m00") ⇒ Object
66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 |
# File 'lib/tdl/axi_stream/axi_stream_interconnect_S2M.rb', line 66 def self.axi_stream_interconnect_s2m( num:8, addr:"addr", s00:"s00", m00:"m00", belong_to_module:nil ) return_stream = nil belong_to_module = [s00,m00].first.belong_to_module unless belong_to_module belong_to_module.AxiStream_NC._axi_stream_interconnect_s2m( num:num, addr:addr, s00:s00, m00:m00) return return_stream end |
.axi_stream_interconnect_s2m_auto(head_dummy: 4, num: 4, slaver: "slaver", sub_tx_inf: "sub_tx_inf", up_stream: nil, belong_to_module: nil) ⇒ Object
68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 |
# File 'lib/tdl/axi_stream/axi_stream_interconnect_S2M_auto_auto.rb', line 68 def self.axi_stream_interconnect_s2m_auto( head_dummy:4, num:4, slaver:"slaver", sub_tx_inf:"sub_tx_inf", up_stream:nil, belong_to_module:nil ) return_stream = nil belong_to_module = [slaver,sub_tx_inf].first.belong_to_module unless belong_to_module belong_to_module.AxiStream_NC._axi_stream_interconnect_s2m_auto( head_dummy:head_dummy, num:num, slaver:slaver, sub_tx_inf:sub_tx_inf, up_stream:up_stream) return return_stream end |
.axi_stream_interconnect_s2m_with_keep(num: 8, nsize: "NUM <= 2? 1 :", addr: "addr", s00: "s00", m00: "m00") ⇒ Object
70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 |
# File 'lib/tdl/axi_stream/axi_stream_interconnect_S2M_with_keep.sv_auto.rb', line 70 def self.axi_stream_interconnect_s2m_with_keep( num:8, nsize:"NUM <= 2? 1 :", addr:"addr", s00:"s00", m00:"m00", belong_to_module:nil ) return_stream = nil belong_to_module = [s00,m00].first.belong_to_module unless belong_to_module belong_to_module.AxiStream_NC._axi_stream_interconnect_s2m_with_keep( num:num, nsize:nsize, addr:addr, s00:s00, m00:m00) return return_stream end |
.axi_stream_long_cache(depth: 8192, axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil, belong_to_module: nil) ⇒ Object
79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 |
# File 'lib/tdl/axi_stream/axi_stream_long_cache_auto.rb', line 79 def self.axi_stream_long_cache( depth:8192, axis_in:"axis_in", axis_out:"axis_out", up_stream:nil, down_stream:nil, belong_to_module:nil ) return_stream = nil belong_to_module = [axis_in,axis_out].first.belong_to_module unless belong_to_module if down_stream.nil? && axis_out.eql?("axis_out") if up_stream.is_a? AxiStream down_stream = up_stream.copy else down_stream = axis_in.copy end return_stream = down_stream end if up_stream.nil? && axis_in.eql?("axis_in") if down_stream.is_a? AxiStream up_stream = down_stream.copy else up_stream = axis_out.copy end return_stream = up_stream end if down_stream.is_a? AxiStream down_stream.axi_stream_long_cache( depth:depth, axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) elsif axis_out.is_a? AxiStream axis_out.axi_stream_long_cache( depth:depth, axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) else belong_to_module.AxiStream_NC.axi_stream_long_cache( depth:depth, axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) end return return_stream end |
.axi_stream_long_fifo(depth: 2, byte_depth: 8192*2, axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 |
# File 'lib/tdl/axi_stream/axi_stream_long_fifo_auto.rb', line 84 def self.axi_stream_long_fifo( depth:2, byte_depth:8192*2, axis_in:"axis_in", axis_out:"axis_out", up_stream:nil, down_stream:nil, belong_to_module:nil ) return_stream = nil belong_to_module = [axis_in,axis_out].first.belong_to_module unless belong_to_module if down_stream.nil? && axis_out.eql?("axis_out") if up_stream.is_a? AxiStream down_stream = up_stream.copy else down_stream = axis_in.copy end return_stream = down_stream end if up_stream.nil? && axis_in.eql?("axis_in") if down_stream.is_a? AxiStream up_stream = down_stream.copy else up_stream = axis_out.copy end return_stream = up_stream end if down_stream.is_a? AxiStream down_stream.axi_stream_long_fifo( depth:depth, byte_depth:byte_depth, axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) elsif axis_out.is_a? AxiStream axis_out.axi_stream_long_fifo( depth:depth, byte_depth:byte_depth, axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) else belong_to_module.AxiStream_NC.axi_stream_long_fifo( depth:depth, byte_depth:byte_depth, axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) end return return_stream end |
.axi_stream_long_fifo_verb(depth: 2, byte_depth: 8192*2, axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil, belong_to_module: nil) ⇒ Object
84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 |
# File 'lib/tdl/axi_stream/axi_stream_long_fifo_verb_auto.rb', line 84 def self.axi_stream_long_fifo_verb( depth:2, byte_depth:8192*2, axis_in:"axis_in", axis_out:"axis_out", up_stream:nil, down_stream:nil, belong_to_module:nil ) return_stream = nil belong_to_module = [axis_in,axis_out].first.belong_to_module unless belong_to_module if down_stream.nil? && axis_out.eql?("axis_out") if up_stream.is_a? AxiStream down_stream = up_stream.copy else down_stream = axis_in.copy end return_stream = down_stream end if up_stream.nil? && axis_in.eql?("axis_in") if down_stream.is_a? AxiStream up_stream = down_stream.copy else up_stream = axis_out.copy end return_stream = up_stream end if down_stream.is_a? AxiStream down_stream.axi_stream_long_fifo_verb( depth:depth, byte_depth:byte_depth, axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) elsif axis_out.is_a? AxiStream axis_out.axi_stream_long_fifo_verb( depth:depth, byte_depth:byte_depth, axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) else belong_to_module.AxiStream_NC.axi_stream_long_fifo_verb( depth:depth, byte_depth:byte_depth, axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) end return return_stream end |
.axi_stream_packet_fifo(depth: 2, axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 |
# File 'lib/tdl/axi_stream/axi_stream_packet_fifo_auto.rb', line 79 def self.axi_stream_packet_fifo( depth:2 , axis_in:"axis_in", axis_out:"axis_out", up_stream:nil, down_stream:nil, belong_to_module:nil ) return_stream = nil belong_to_module = [axis_in,axis_out].first.belong_to_module unless belong_to_module if down_stream.nil? && axis_out.eql?("axis_out") if up_stream.is_a? AxiStream down_stream = up_stream.copy else down_stream = axis_in.copy end return_stream = down_stream end if up_stream.nil? && axis_in.eql?("axis_in") if down_stream.is_a? AxiStream up_stream = down_stream.copy else up_stream = axis_out.copy end return_stream = up_stream end if down_stream.is_a? AxiStream down_stream.axi_stream_packet_fifo( depth:depth, axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) elsif axis_out.is_a? AxiStream axis_out.axi_stream_packet_fifo( depth:depth, axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) else belong_to_module.AxiStream_NC.axi_stream_packet_fifo( depth:depth, axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) end return return_stream end |
.axi_stream_packet_fifo_with_info(depth: 2, esize: 8, info_in: "info_in", info_out: "info_out", axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 |
# File 'lib/tdl/axi_stream/axi_stream_packet_fifo_with_info_auto.rb', line 94 def self.axi_stream_packet_fifo_with_info( depth:2, esize:8, info_in:"info_in", info_out:"info_out", axis_in:"axis_in", axis_out:"axis_out", up_stream:nil, down_stream:nil, belong_to_module:nil ) return_stream = nil belong_to_module = [axis_in,axis_out].first.belong_to_module unless belong_to_module if down_stream.nil? && axis_out.eql?("axis_out") if up_stream.is_a? AxiStream down_stream = up_stream.copy else down_stream = axis_in.copy end return_stream = down_stream end if up_stream.nil? && axis_in.eql?("axis_in") if down_stream.is_a? AxiStream up_stream = down_stream.copy else up_stream = axis_out.copy end return_stream = up_stream end if down_stream.is_a? AxiStream down_stream.axi_stream_packet_fifo_with_info( depth:depth, esize:esize, info_in:info_in, info_out:info_out, axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) elsif axis_out.is_a? AxiStream axis_out.axi_stream_packet_fifo_with_info( depth:depth, esize:esize, info_in:info_in, info_out:info_out, axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) else belong_to_module.AxiStream_NC.axi_stream_packet_fifo_with_info( depth:depth, esize:esize, info_in:info_in, info_out:info_out, axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) end return return_stream end |
.axi_stream_partition(valve: "valve", partition_len: "partition_len", req_new_len: "req_new_len", axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 |
# File 'lib/tdl/axi_stream/axi_stream_partition_auto.rb', line 88 def self.axi_stream_partition( valve:"valve", partition_len:"partition_len", req_new_len:"req_new_len", axis_in:"axis_in", axis_out:"axis_out", up_stream:nil, down_stream:nil, belong_to_module:nil ) return_stream = nil belong_to_module = [axis_in,axis_out].first.belong_to_module unless belong_to_module if down_stream.nil? && axis_out.eql?("axis_out") if up_stream.is_a? AxiStream down_stream = up_stream.copy else down_stream = axis_in.copy end return_stream = down_stream end if up_stream.nil? && axis_in.eql?("axis_in") if down_stream.is_a? AxiStream up_stream = down_stream.copy else up_stream = axis_out.copy end return_stream = up_stream end if down_stream.is_a? AxiStream down_stream.axi_stream_partition( valve:valve, partition_len:partition_len, req_new_len:req_new_len, axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) elsif axis_out.is_a? AxiStream axis_out.axi_stream_partition( valve:valve, partition_len:partition_len, req_new_len:req_new_len, axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) else belong_to_module.AxiStream_NC.axi_stream_partition( valve:valve, partition_len:partition_len, req_new_len:req_new_len, axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) end return return_stream end |
.axi_stream_partition_a1(valve: "valve", partition_len: "partition_len", axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 |
# File 'lib/tdl/axi_stream/axi_stream_partition_A1_auto.rb', line 83 def self.axi_stream_partition_a1( valve:"valve", partition_len:"partition_len", axis_in:"axis_in", axis_out:"axis_out", up_stream:nil, down_stream:nil, belong_to_module:nil ) return_stream = nil belong_to_module = [axis_in,axis_out].first.belong_to_module unless belong_to_module if down_stream.nil? && axis_out.eql?("axis_out") if up_stream.is_a? AxiStream down_stream = up_stream.copy else down_stream = axis_in.copy end return_stream = down_stream end if up_stream.nil? && axis_in.eql?("axis_in") if down_stream.is_a? AxiStream up_stream = down_stream.copy else up_stream = axis_out.copy end return_stream = up_stream end if down_stream.is_a? AxiStream down_stream.axi_stream_partition_a1( valve:valve, partition_len:partition_len, axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) elsif axis_out.is_a? AxiStream axis_out.axi_stream_partition_a1( valve:valve, partition_len:partition_len, axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) else belong_to_module.AxiStream_NC.axi_stream_partition_a1( valve:valve, partition_len:partition_len, axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) end return return_stream end |
.axi_stream_wide_fifo(depth: 2, axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil, belong_to_module: nil) ⇒ Object
79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 |
# File 'lib/tdl/axi_stream/axi_stream_wide_fifo_auto.rb', line 79 def self.axi_stream_wide_fifo( depth:2, axis_in:"axis_in", axis_out:"axis_out", up_stream:nil, down_stream:nil, belong_to_module:nil ) return_stream = nil belong_to_module = [axis_in,axis_out].first.belong_to_module unless belong_to_module if down_stream.nil? && axis_out.eql?("axis_out") if up_stream.is_a? AxiStream down_stream = up_stream.copy else down_stream = axis_in.copy end return_stream = down_stream end if up_stream.nil? && axis_in.eql?("axis_in") if down_stream.is_a? AxiStream up_stream = down_stream.copy else up_stream = axis_out.copy end return_stream = up_stream end if down_stream.is_a? AxiStream down_stream.axi_stream_wide_fifo( depth:depth, axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) elsif axis_out.is_a? AxiStream axis_out.axi_stream_wide_fifo( depth:depth, axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) else belong_to_module.AxiStream_NC.axi_stream_wide_fifo( depth:depth, axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) end return return_stream end |
.axi_streams_combin(mode: "BOTH", cut_or_combin_body: "ON", dsize: 8, new_body_len: "new_body_len", trigger_signal: "trigger_signal", head_inf: "head_inf", body_inf: "body_inf", end_inf: "end_inf", m00: "m00", up_stream: nil, down_stream: nil) ⇒ Object
111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 |
# File 'lib/tdl/axi_stream/axi_streams_combin_auto.rb', line 111 def self.axi_streams_combin( mode:"BOTH", cut_or_combin_body:"ON", dsize:8, new_body_len:"new_body_len", trigger_signal:"trigger_signal", head_inf:"head_inf", body_inf:"body_inf", end_inf:"end_inf", m00:"m00", up_stream:nil, down_stream:nil, belong_to_module:nil ) return_stream = nil belong_to_module = [head_inf,body_inf,end_inf,m00].first.belong_to_module unless belong_to_module if down_stream.nil? && m00.eql?("m00") if up_stream.is_a? AxiStream down_stream = up_stream.copy else down_stream = body_inf.copy end return_stream = down_stream end if up_stream.nil? && body_inf.eql?("body_inf") if down_stream.is_a? AxiStream up_stream = down_stream.copy else up_stream = m00.copy end return_stream = up_stream end if down_stream.is_a? AxiStream down_stream.axi_streams_combin( mode:mode, cut_or_combin_body:cut_or_combin_body, dsize:dsize, new_body_len:new_body_len, trigger_signal:trigger_signal, head_inf:head_inf, body_inf:body_inf, end_inf:end_inf, m00:m00, up_stream:up_stream, down_stream:down_stream) elsif m00.is_a? AxiStream m00.axi_streams_combin( mode:mode, cut_or_combin_body:cut_or_combin_body, dsize:dsize, new_body_len:new_body_len, trigger_signal:trigger_signal, head_inf:head_inf, body_inf:body_inf, end_inf:end_inf, m00:m00, up_stream:up_stream, down_stream:down_stream) else belong_to_module.AxiStream_NC.axi_streams_combin( mode:mode, cut_or_combin_body:cut_or_combin_body, dsize:dsize, new_body_len:new_body_len, trigger_signal:trigger_signal, head_inf:head_inf, body_inf:body_inf, end_inf:end_inf, m00:m00, up_stream:up_stream, down_stream:down_stream) end return return_stream end |
.axi_streams_combin_a1(mode: "BOTH", cut_or_combin_body: "ON", new_body_len: "new_body_len", trigger_signal: "trigger_signal", head_inf: "head_inf", body_inf: "body_inf", end_inf: "end_inf", m00: "m00", up_stream: nil, down_stream: nil, belong_to_module: nil) ⇒ Object
106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 |
# File 'lib/tdl/axi_stream/axi_streams_combin_A1_auto.rb', line 106 def self.axi_streams_combin_a1( mode:"BOTH", cut_or_combin_body:"ON", new_body_len:"new_body_len", trigger_signal:"trigger_signal", head_inf:"head_inf", body_inf:"body_inf", end_inf:"end_inf", m00:"m00", up_stream:nil, down_stream:nil, belong_to_module:nil ) return_stream = nil belong_to_module = [head_inf,body_inf,end_inf,m00].first.belong_to_module unless belong_to_module if down_stream.nil? && m00.eql?("m00") if up_stream.is_a? AxiStream down_stream = up_stream.copy else down_stream = body_inf.copy end return_stream = down_stream end if up_stream.nil? && body_inf.eql?("body_inf") if down_stream.is_a? AxiStream up_stream = down_stream.copy else up_stream = m00.copy end return_stream = up_stream end if down_stream.is_a? AxiStream down_stream.axi_streams_combin_a1( mode:mode, cut_or_combin_body:cut_or_combin_body, new_body_len:new_body_len, trigger_signal:trigger_signal, head_inf:head_inf, body_inf:body_inf, end_inf:end_inf, m00:m00, up_stream:up_stream, down_stream:down_stream) elsif m00.is_a? AxiStream m00.axi_streams_combin_a1( mode:mode, cut_or_combin_body:cut_or_combin_body, new_body_len:new_body_len, trigger_signal:trigger_signal, head_inf:head_inf, body_inf:body_inf, end_inf:end_inf, m00:m00, up_stream:up_stream, down_stream:down_stream) else belong_to_module.AxiStream_NC.axi_streams_combin_a1( mode:mode, cut_or_combin_body:cut_or_combin_body, new_body_len:new_body_len, trigger_signal:trigger_signal, head_inf:head_inf, body_inf:body_inf, end_inf:end_inf, m00:m00, up_stream:up_stream, down_stream:down_stream) end return return_stream end |
.axi_streams_scaler(mode: "BOTH", cut_or_combin_body: "ON", dsize: 8, new_body_len: "new_body_len", head_inf: "head_inf", body_inf: "body_inf", end_inf: "end_inf", m00: "m00", up_stream: nil, down_stream: nil) ⇒ Object
42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 |
# File 'lib/tdl/axi_stream/bak/axi_streams_scaler.rb', line 42 def self.axi_streams_scaler(mode:"BOTH",cut_or_combin_body:"ON",dsize:8,new_body_len:"new_body_len",head_inf:"head_inf",body_inf:"body_inf",end_inf:"end_inf",m00:"m00",up_stream:nil,down_stream:nil) return_stream = nil if down_stream==nil && m00=="m00" if up_stream.is_a? AxiStream down_stream = up_stream.copy(name:"m00") else down_stream = body_inf.copy(name:"m00") end return_stream = down_stream end if up_stream==nil && body_inf=="body_inf" if down_stream.is_a? AxiStream up_stream = down_stream.copy(name:"body_inf") else up_stream = m00.copy(name:"body_inf") end return_stream = up_stream end if down_stream.is_a? AxiStream down_stream.axi_streams_scaler(mode:mode,cut_or_combin_body:cut_or_combin_body,dsize:dsize,new_body_len:new_body_len,head_inf:head_inf,body_inf:body_inf,end_inf:end_inf,m00:m00,up_stream:up_stream,down_stream:down_stream) elsif m00.is_a? AxiStream m00.axi_streams_scaler(mode:mode,cut_or_combin_body:cut_or_combin_body,dsize:dsize,new_body_len:new_body_len,head_inf:head_inf,body_inf:body_inf,end_inf:end_inf,m00:m00,up_stream:up_stream,down_stream:down_stream) else NC.axi_streams_scaler(mode:mode,cut_or_combin_body:cut_or_combin_body,dsize:dsize,new_body_len:new_body_len,head_inf:head_inf,body_inf:body_inf,end_inf:end_inf,m00:m00,up_stream:up_stream,down_stream:down_stream) end return return_stream end |
.axi_streams_scaler_a1(mode: "BOTH", cut_or_combin_body: "ON", new_body_len: "new_body_len", head_inf: "head_inf", body_inf: "body_inf", end_inf: "end_inf", m00: "m00", up_stream: nil, down_stream: nil, belong_to_module: nil) ⇒ Object
101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 |
# File 'lib/tdl/axi_stream/axi_streams_scaler_A1_auto.rb', line 101 def self.axi_streams_scaler_a1( mode:"BOTH", cut_or_combin_body:"ON", new_body_len:"new_body_len", head_inf:"head_inf", body_inf:"body_inf", end_inf:"end_inf", m00:"m00", up_stream:nil, down_stream:nil, belong_to_module:nil ) return_stream = nil belong_to_module = [head_inf,body_inf,end_inf,m00].first.belong_to_module unless belong_to_module if down_stream.nil? && m00.eql?("m00") if up_stream.is_a? AxiStream down_stream = up_stream.copy else down_stream = body_inf.copy end return_stream = down_stream end if up_stream.nil? && body_inf.eql?("body_inf") if down_stream.is_a? AxiStream up_stream = down_stream.copy else up_stream = m00.copy end return_stream = up_stream end if down_stream.is_a? AxiStream down_stream.axi_streams_scaler_a1( mode:mode, cut_or_combin_body:cut_or_combin_body, new_body_len:new_body_len, head_inf:head_inf, body_inf:body_inf, end_inf:end_inf, m00:m00, up_stream:up_stream, down_stream:down_stream) elsif m00.is_a? AxiStream m00.axi_streams_scaler_a1( mode:mode, cut_or_combin_body:cut_or_combin_body, new_body_len:new_body_len, head_inf:head_inf, body_inf:body_inf, end_inf:end_inf, m00:m00, up_stream:up_stream, down_stream:down_stream) else belong_to_module.AxiStream_NC.axi_streams_scaler_a1( mode:mode, cut_or_combin_body:cut_or_combin_body, new_body_len:new_body_len, head_inf:head_inf, body_inf:body_inf, end_inf:end_inf, m00:m00, up_stream:up_stream, down_stream:down_stream) end return return_stream end |
.axis_append(mode: "BOTH", dsize: 8, head_field_len: 16*8, head_field_name: "HEAD Filed", end_field_len: 16*8, end_field_name: "END Filed", head_value: "head_value", end_value: "end_value", origin_in: "origin_in", append_out: "append_out", up_stream: nil, down_stream: nil) ⇒ Object
114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 |
# File 'lib/tdl/axi_stream/axis_append_auto.rb', line 114 def self.axis_append( mode:"BOTH", dsize:8, head_field_len:16*8, head_field_name:"HEAD Filed", end_field_len:16*8, end_field_name:"END Filed", head_value:"head_value", end_value:"end_value", origin_in:"origin_in", append_out:"append_out", up_stream:nil, down_stream:nil, belong_to_module:nil ) return_stream = nil belong_to_module = [origin_in,append_out].first.belong_to_module unless belong_to_module if down_stream.nil? && append_out.eql?("append_out") if up_stream.is_a? AxiStream down_stream = up_stream.copy else down_stream = origin_in.copy end return_stream = down_stream end if up_stream.nil? && origin_in.eql?("origin_in") if down_stream.is_a? AxiStream up_stream = down_stream.copy else up_stream = append_out.copy end return_stream = up_stream end if down_stream.is_a? AxiStream down_stream.axis_append( mode:mode, dsize:dsize, head_field_len:head_field_len, head_field_name:head_field_name, end_field_len:end_field_len, end_field_name:end_field_name, head_value:head_value, end_value:end_value, origin_in:origin_in, append_out:append_out, up_stream:up_stream, down_stream:down_stream) elsif append_out.is_a? AxiStream append_out.axis_append( mode:mode, dsize:dsize, head_field_len:head_field_len, head_field_name:head_field_name, end_field_len:end_field_len, end_field_name:end_field_name, head_value:head_value, end_value:end_value, origin_in:origin_in, append_out:append_out, up_stream:up_stream, down_stream:down_stream) else belong_to_module.AxiStream_NC.axis_append( mode:mode, dsize:dsize, head_field_len:head_field_len, head_field_name:head_field_name, end_field_len:end_field_len, end_field_name:end_field_name, head_value:head_value, end_value:end_value, origin_in:origin_in, append_out:append_out, up_stream:up_stream, down_stream:down_stream) end return return_stream end |
.axis_append_a1(mode: "BOTH", dsize: 8, head_field_len: 16*8, head_field_name: "HEAD Filed", end_field_len: 16*8, end_field_name: "END Filed", enable: "enable", head_value: "head_value", end_value: "end_value", origin_in: "origin_in", append_out: "append_out", up_stream: nil, down_stream: nil) ⇒ Object
38 39 40 41 42 43 44 45 46 47 48 |
# File 'lib/tdl/axi_stream/bak/axis_append_A1.rb', line 38 def self.axis_append_a1(mode:"BOTH",dsize:8,head_field_len:16*8,head_field_name:"HEAD Filed",end_field_len:16*8,end_field_name:"END Filed",enable:"enable",head_value:"head_value",end_value:"end_value",origin_in:"origin_in",append_out:"append_out",up_stream:nil,down_stream:nil) if down_stream.is_a? AxiStream down_stream.axis_append_a1(mode:mode,dsize:dsize,head_field_len:head_field_len,head_field_name:head_field_name,end_field_len:end_field_len,end_field_name:end_field_name,enable:enable,head_value:head_value,end_value:end_value,origin_in:origin_in,append_out:append_out,up_stream:up_stream,down_stream:down_stream) elsif append_out.is_a? AxiStream append_out.axis_append_a1(mode:mode,dsize:dsize,head_field_len:head_field_len,head_field_name:head_field_name,end_field_len:end_field_len,end_field_name:end_field_name,enable:enable,head_value:head_value,end_value:end_value,origin_in:origin_in,append_out:append_out,up_stream:up_stream,down_stream:down_stream) else NC.axis_append_a1(mode:mode,dsize:dsize,head_field_len:head_field_len,head_field_name:head_field_name,end_field_len:end_field_len,end_field_name:end_field_name,enable:enable,head_value:head_value,end_value:end_value,origin_in:origin_in,append_out:append_out,up_stream:up_stream,down_stream:down_stream) end end |
.axis_combin_with_fifo(mode: "BOTH", cut_or_combin_body: "ON", new_body_len: "new_body_len", head_inf: "head_inf", body_inf: "body_inf", end_inf: "end_inf", m00: "m00", up_stream: nil, down_stream: nil) ⇒ Object
101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 |
# File 'lib/tdl/axi_stream/axis_combin_with_fifo_auto.rb', line 101 def self.axis_combin_with_fifo( mode:"BOTH", cut_or_combin_body:"ON", new_body_len:"new_body_len", head_inf:"head_inf", body_inf:"body_inf", end_inf:"end_inf", m00:"m00", up_stream:nil, down_stream:nil, belong_to_module:nil ) return_stream = nil belong_to_module = [head_inf,body_inf,end_inf,m00].first.belong_to_module unless belong_to_module if down_stream.nil? && m00.eql?("m00") if up_stream.is_a? AxiStream down_stream = up_stream.copy else down_stream = body_inf.copy end return_stream = down_stream end if up_stream.nil? && body_inf.eql?("body_inf") if down_stream.is_a? AxiStream up_stream = down_stream.copy else up_stream = m00.copy end return_stream = up_stream end if down_stream.is_a? AxiStream down_stream.axis_combin_with_fifo( mode:mode, cut_or_combin_body:cut_or_combin_body, new_body_len:new_body_len, head_inf:head_inf, body_inf:body_inf, end_inf:end_inf, m00:m00, up_stream:up_stream, down_stream:down_stream) elsif m00.is_a? AxiStream m00.axis_combin_with_fifo( mode:mode, cut_or_combin_body:cut_or_combin_body, new_body_len:new_body_len, head_inf:head_inf, body_inf:body_inf, end_inf:end_inf, m00:m00, up_stream:up_stream, down_stream:down_stream) else belong_to_module.AxiStream_NC.axis_combin_with_fifo( mode:mode, cut_or_combin_body:cut_or_combin_body, new_body_len:new_body_len, head_inf:head_inf, body_inf:body_inf, end_inf:end_inf, m00:m00, up_stream:up_stream, down_stream:down_stream) end return return_stream end |
.axis_connect_pipe(axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 |
# File 'lib/tdl/axi_stream/axis_connect_pipe_auto.rb', line 73 def self.axis_connect_pipe( axis_in:"axis_in", axis_out:"axis_out", up_stream:nil, down_stream:nil, belong_to_module:nil ) return_stream = nil belong_to_module = [axis_in,axis_out].first.belong_to_module unless belong_to_module if down_stream.nil? && axis_out.eql?("axis_out") if up_stream.is_a? AxiStream down_stream = up_stream.copy else down_stream = axis_in.copy end return_stream = down_stream end if up_stream.nil? && axis_in.eql?("axis_in") if down_stream.is_a? AxiStream up_stream = down_stream.copy else up_stream = axis_out.copy end return_stream = up_stream end if down_stream.is_a? AxiStream down_stream.axis_connect_pipe( axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) elsif axis_out.is_a? AxiStream axis_out.axis_connect_pipe( axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) else belong_to_module.AxiStream_NC.axis_connect_pipe( axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) end return return_stream end |
.axis_connect_pipe_a1(axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 |
# File 'lib/tdl/axi_stream/axis_connect_pipe_A1.sv_auto.rb', line 73 def self.axis_connect_pipe_a1( axis_in:"axis_in", axis_out:"axis_out", up_stream:nil, down_stream:nil, belong_to_module:nil ) return_stream = nil belong_to_module = [axis_in,axis_out].first.belong_to_module unless belong_to_module if down_stream.nil? && axis_out.eql?("axis_out") if up_stream.is_a? AxiStream down_stream = up_stream.copy else down_stream = axis_in.copy end return_stream = down_stream end if up_stream.nil? && axis_in.eql?("axis_in") if down_stream.is_a? AxiStream up_stream = down_stream.copy else up_stream = axis_out.copy end return_stream = up_stream end if down_stream.is_a? AxiStream down_stream.axis_connect_pipe_a1( axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) elsif axis_out.is_a? AxiStream axis_out.axis_connect_pipe_a1( axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) else belong_to_module.AxiStream_NC.axis_connect_pipe_a1( axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) end return return_stream end |
.axis_connect_pipe_with_info(ifsize: 32, info_in: "info_in", info_out: "info_out", axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 |
# File 'lib/tdl/axi_stream/axis_connect_pipe_with_info_auto.rb', line 89 def self.axis_connect_pipe_with_info( ifsize:32, info_in:"info_in", info_out:"info_out", axis_in:"axis_in", axis_out:"axis_out", up_stream:nil, down_stream:nil, belong_to_module:nil ) return_stream = nil belong_to_module = [axis_in,axis_out].first.belong_to_module unless belong_to_module if down_stream.nil? && axis_out.eql?("axis_out") if up_stream.is_a? AxiStream down_stream = up_stream.copy else down_stream = axis_in.copy end return_stream = down_stream end if up_stream.nil? && axis_in.eql?("axis_in") if down_stream.is_a? AxiStream up_stream = down_stream.copy else up_stream = axis_out.copy end return_stream = up_stream end if down_stream.is_a? AxiStream down_stream.axis_connect_pipe_with_info( ifsize:ifsize, info_in:info_in, info_out:info_out, axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) elsif axis_out.is_a? AxiStream axis_out.axis_connect_pipe_with_info( ifsize:ifsize, info_in:info_in, info_out:info_out, axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) else belong_to_module.AxiStream_NC.axis_connect_pipe_with_info( ifsize:ifsize, info_in:info_in, info_out:info_out, axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) end return return_stream end |
.axis_direct(slaver: "slaver", master: "master", up_stream: nil, down_stream: nil) ⇒ Object
73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 |
# File 'lib/tdl/axi_stream/axis_direct_auto.rb', line 73 def self.axis_direct( slaver:"slaver", master:"master", up_stream:nil, down_stream:nil, belong_to_module:nil ) return_stream = nil belong_to_module = [slaver,master].first.belong_to_module unless belong_to_module if down_stream.nil? && master.eql?("master") if up_stream.is_a? AxiStream down_stream = up_stream.copy else down_stream = slaver.copy end return_stream = down_stream end if up_stream.nil? && slaver.eql?("slaver") if down_stream.is_a? AxiStream up_stream = down_stream.copy else up_stream = master.copy end return_stream = up_stream end if down_stream.is_a? AxiStream down_stream.axis_direct( slaver:slaver, master:master, up_stream:up_stream, down_stream:down_stream) elsif master.is_a? AxiStream master.axis_direct( slaver:slaver, master:master, up_stream:up_stream, down_stream:down_stream) else belong_to_module.AxiStream_NC.axis_direct( slaver:slaver, master:master, up_stream:up_stream, down_stream:down_stream) end return return_stream end |
.axis_filter(button: "button", axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 |
# File 'lib/tdl/axi_stream/axis_filter_auto.rb', line 78 def self.axis_filter( button:"button", axis_in:"axis_in", axis_out:"axis_out", up_stream:nil, down_stream:nil, belong_to_module:nil ) return_stream = nil belong_to_module = [axis_in,axis_out].first.belong_to_module unless belong_to_module if down_stream.nil? && axis_out.eql?("axis_out") if up_stream.is_a? AxiStream down_stream = up_stream.copy else down_stream = axis_in.copy end return_stream = down_stream end if up_stream.nil? && axis_in.eql?("axis_in") if down_stream.is_a? AxiStream up_stream = down_stream.copy else up_stream = axis_out.copy end return_stream = up_stream end if down_stream.is_a? AxiStream down_stream.axis_filter( button:, axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) elsif axis_out.is_a? AxiStream axis_out.axis_filter( button:, axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) else belong_to_module.AxiStream_NC.axis_filter( button:, axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) end return return_stream end |
.axis_full_to_data_c(data_out_inf: "data_out_inf", axis_in: "axis_in", belong_to_module: nil) ⇒ Object
54 55 56 57 58 59 60 61 62 63 64 65 66 67 |
# File 'lib/tdl/axi_stream/axis_full_to_data_c_auto.rb', line 54 def self.axis_full_to_data_c( data_out_inf:"data_out_inf", axis_in:"axis_in", belong_to_module:nil ) return_stream = nil belong_to_module = [axis_in].first.belong_to_module unless belong_to_module belong_to_module.AxiStream_NC._axis_full_to_data_c( data_out_inf:data_out_inf, axis_in:axis_in) return return_stream end |
.axis_head_cut(len: 1, slaver: "slaver", master: "master", up_stream: nil, down_stream: nil, belong_to_module: nil) ⇒ Object
79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 |
# File 'lib/tdl/axi_stream/axis_head_cut_auto.rb', line 79 def self.axis_head_cut( len:1, slaver:"slaver", master:"master", up_stream:nil, down_stream:nil, belong_to_module:nil ) return_stream = nil belong_to_module = [slaver,master].first.belong_to_module unless belong_to_module if down_stream.nil? && master.eql?("master") if up_stream.is_a? AxiStream down_stream = up_stream.copy else down_stream = slaver.copy end return_stream = down_stream end if up_stream.nil? && slaver.eql?("slaver") if down_stream.is_a? AxiStream up_stream = down_stream.copy else up_stream = master.copy end return_stream = up_stream end if down_stream.is_a? AxiStream down_stream.axis_head_cut( len:len, slaver:slaver, master:master, up_stream:up_stream, down_stream:down_stream) elsif master.is_a? AxiStream master.axis_head_cut( len:len, slaver:slaver, master:master, up_stream:up_stream, down_stream:down_stream) else belong_to_module.AxiStream_NC.axis_head_cut( len:len, slaver:slaver, master:master, up_stream:up_stream, down_stream:down_stream) end return return_stream end |
.axis_length_fill(length: "length", axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 |
# File 'lib/tdl/axi_stream/axis_length_fill_auto.rb', line 78 def self.axis_length_fill( length:"length", axis_in:"axis_in", axis_out:"axis_out", up_stream:nil, down_stream:nil, belong_to_module:nil ) return_stream = nil belong_to_module = [axis_in,axis_out].first.belong_to_module unless belong_to_module if down_stream.nil? && axis_out.eql?("axis_out") if up_stream.is_a? AxiStream down_stream = up_stream.copy else down_stream = axis_in.copy end return_stream = down_stream end if up_stream.nil? && axis_in.eql?("axis_in") if down_stream.is_a? AxiStream up_stream = down_stream.copy else up_stream = axis_out.copy end return_stream = up_stream end if down_stream.is_a? AxiStream down_stream.axis_length_fill( length:length, axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) elsif axis_out.is_a? AxiStream axis_out.axis_length_fill( length:length, axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) else belong_to_module.AxiStream_NC.axis_length_fill( length:length, axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) end return return_stream end |
.axis_length_split(length: "length", axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 |
# File 'lib/tdl/axi_stream/axis_length_split_auto.rb', line 78 def self.axis_length_split( length:"length", axis_in:"axis_in", axis_out:"axis_out", up_stream:nil, down_stream:nil, belong_to_module:nil ) return_stream = nil belong_to_module = [axis_in,axis_out].first.belong_to_module unless belong_to_module if down_stream.nil? && axis_out.eql?("axis_out") if up_stream.is_a? AxiStream down_stream = up_stream.copy else down_stream = axis_in.copy end return_stream = down_stream end if up_stream.nil? && axis_in.eql?("axis_in") if down_stream.is_a? AxiStream up_stream = down_stream.copy else up_stream = axis_out.copy end return_stream = up_stream end if down_stream.is_a? AxiStream down_stream.axis_length_split( length:length, axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) elsif axis_out.is_a? AxiStream axis_out.axis_length_split( length:length, axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) else belong_to_module.AxiStream_NC.axis_length_split( length:length, axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) end return return_stream end |
.axis_length_split_with_addr(addr_step: 1024, origin_addr: "origin_addr", length: "length", band_addr: "band_addr", axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 |
# File 'lib/tdl/axi_stream/axis_length_split_with_addr_auto.rb', line 94 def self.axis_length_split_with_addr( addr_step:1024 , origin_addr:"origin_addr", length:"length", band_addr:"band_addr", axis_in:"axis_in", axis_out:"axis_out", up_stream:nil, down_stream:nil, belong_to_module:nil ) return_stream = nil belong_to_module = [axis_in,axis_out].first.belong_to_module unless belong_to_module if down_stream.nil? && axis_out.eql?("axis_out") if up_stream.is_a? AxiStream down_stream = up_stream.copy else down_stream = axis_in.copy end return_stream = down_stream end if up_stream.nil? && axis_in.eql?("axis_in") if down_stream.is_a? AxiStream up_stream = down_stream.copy else up_stream = axis_out.copy end return_stream = up_stream end if down_stream.is_a? AxiStream down_stream.axis_length_split_with_addr( addr_step:addr_step, origin_addr:origin_addr, length:length, band_addr:band_addr, axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) elsif axis_out.is_a? AxiStream axis_out.axis_length_split_with_addr( addr_step:addr_step, origin_addr:origin_addr, length:length, band_addr:band_addr, axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) else belong_to_module.AxiStream_NC.axis_length_split_with_addr( addr_step:addr_step, origin_addr:origin_addr, length:length, band_addr:band_addr, axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) end return return_stream end |
.axis_length_split_with_user(length: "length", axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil, belong_to_module: nil) ⇒ Object
78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 |
# File 'lib/tdl/axi_stream/axis_length_split_writh_user_auto.rb', line 78 def self.axis_length_split_with_user( length:"length", axis_in:"axis_in", axis_out:"axis_out", up_stream:nil, down_stream:nil, belong_to_module:nil ) return_stream = nil belong_to_module = [axis_in,axis_out].first.belong_to_module unless belong_to_module if down_stream.nil? && axis_out.eql?("axis_out") if up_stream.is_a? AxiStream down_stream = up_stream.copy else down_stream = axis_in.copy end return_stream = down_stream end if up_stream.nil? && axis_in.eql?("axis_in") if down_stream.is_a? AxiStream up_stream = down_stream.copy else up_stream = axis_out.copy end return_stream = up_stream end if down_stream.is_a? AxiStream down_stream.axis_length_split_with_user( length:length, axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) elsif axis_out.is_a? AxiStream axis_out.axis_length_split_with_user( length:length, axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) else belong_to_module.AxiStream_NC.axis_length_split_with_user( length:length, axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) end return return_stream end |
.axis_link_trigger(mode: "STREAM", dsize: 32, data: "data", trigger_inf: "trigger_inf", mirror: "mirror", belong_to_module: nil) ⇒ Object
70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 |
# File 'lib/tdl/axi_stream/axis_link_trigger_auto.rb', line 70 def self.axis_link_trigger( mode:"STREAM", dsize:32, data:"data", trigger_inf:"trigger_inf", mirror:"mirror", belong_to_module:nil ) return_stream = nil belong_to_module = [mirror].first.belong_to_module unless belong_to_module belong_to_module.AxiStream_NC._axis_link_trigger( mode:mode, dsize:dsize, data:data, trigger_inf:trigger_inf, mirror:mirror) return return_stream end |
.axis_master_empty(master: "master", down_stream: nil) ⇒ Object
57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 |
# File 'lib/tdl/axi_stream/axis_master_empty_auto.rb', line 57 def self.axis_master_empty( master:"master", down_stream:nil, belong_to_module:nil ) return_stream = nil belong_to_module = [master].first.belong_to_module unless belong_to_module if down_stream.is_a? AxiStream down_stream.axis_master_empty( master:master, down_stream:down_stream) elsif master.is_a? AxiStream master.axis_master_empty( master:master, down_stream:down_stream) else belong_to_module.AxiStream_NC.axis_master_empty( master:master, down_stream:down_stream) end return return_stream end |
.axis_mirror_to_master(depth: 4, mirror: "mirror", master: "master", up_stream: nil, down_stream: nil, belong_to_module: nil) ⇒ Object
79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 |
# File 'lib/tdl/axi_stream/axis_mirror_to_master_auto.rb', line 79 def self.axis_mirror_to_master( depth:4, mirror:"mirror", master:"master", up_stream:nil, down_stream:nil, belong_to_module:nil ) return_stream = nil belong_to_module = [mirror,master].first.belong_to_module unless belong_to_module if down_stream.nil? && master.eql?("master") if up_stream.is_a? AxiStream down_stream = up_stream.copy else down_stream = mirror.copy end return_stream = down_stream end if up_stream.nil? && mirror.eql?("mirror") if down_stream.is_a? AxiStream up_stream = down_stream.copy else up_stream = master.copy end return_stream = up_stream end if down_stream.is_a? AxiStream down_stream.axis_mirror_to_master( depth:depth, mirror:mirror, master:master, up_stream:up_stream, down_stream:down_stream) elsif master.is_a? AxiStream master.axis_mirror_to_master( depth:depth, mirror:mirror, master:master, up_stream:up_stream, down_stream:down_stream) else belong_to_module.AxiStream_NC.axis_mirror_to_master( depth:depth, mirror:mirror, master:master, up_stream:up_stream, down_stream:down_stream) end return return_stream end |
.axis_mirrors(h: 0, l: 0, num: 8, mode: "CDS_MODE", condition_data: "condition_data", axis_in: "axis_in", axis_mirror: "axis_mirror", up_stream: nil, down_stream: nil) ⇒ Object
99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 |
# File 'lib/tdl/axi_stream/axis_mirrors_auto.rb', line 99 def self.axis_mirrors( h:0, l:0, num:8, mode:"CDS_MODE", condition_data:"condition_data", axis_in:"axis_in", axis_mirror:"axis_mirror", up_stream:nil, down_stream:nil, belong_to_module:nil ) return_stream = nil belong_to_module = [axis_in,axis_mirror].first.belong_to_module unless belong_to_module if down_stream.nil? && axis_mirror.eql?("axis_mirror") if up_stream.is_a? AxiStream down_stream = up_stream.copy else down_stream = axis_in.copy end return_stream = down_stream end if up_stream.nil? && axis_in.eql?("axis_in") if down_stream.is_a? AxiStream up_stream = down_stream.copy else up_stream = axis_mirror.copy end return_stream = up_stream end if down_stream.is_a? AxiStream down_stream.axis_mirrors( h:h, l:l, num:num, mode:mode, condition_data:condition_data, axis_in:axis_in, axis_mirror:axis_mirror, up_stream:up_stream, down_stream:down_stream) elsif axis_mirror.is_a? AxiStream axis_mirror.axis_mirrors( h:h, l:l, num:num, mode:mode, condition_data:condition_data, axis_in:axis_in, axis_mirror:axis_mirror, up_stream:up_stream, down_stream:down_stream) else belong_to_module.AxiStream_NC.axis_mirrors( h:h, l:l, num:num, mode:mode, condition_data:condition_data, axis_in:axis_in, axis_mirror:axis_mirror, up_stream:up_stream, down_stream:down_stream) end return return_stream end |
.axis_pkt_fifo_filter_keep(depth: 2, axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 |
# File 'lib/tdl/axi_stream/axis_pkt_fifo_filter_keep_auto.rb', line 79 def self.axis_pkt_fifo_filter_keep( depth:2 , axis_in:"axis_in", axis_out:"axis_out", up_stream:nil, down_stream:nil, belong_to_module:nil ) return_stream = nil belong_to_module = [axis_in,axis_out].first.belong_to_module unless belong_to_module if down_stream.nil? && axis_out.eql?("axis_out") if up_stream.is_a? AxiStream down_stream = up_stream.copy else down_stream = axis_in.copy end return_stream = down_stream end if up_stream.nil? && axis_in.eql?("axis_in") if down_stream.is_a? AxiStream up_stream = down_stream.copy else up_stream = axis_out.copy end return_stream = up_stream end if down_stream.is_a? AxiStream down_stream.axis_pkt_fifo_filter_keep( depth:depth, axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) elsif axis_out.is_a? AxiStream axis_out.axis_pkt_fifo_filter_keep( depth:depth, axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) else belong_to_module.AxiStream_NC.axis_pkt_fifo_filter_keep( depth:depth, axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) end return return_stream end |
.axis_pkt_fifo_filter_keep_a1(depth: 2, axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil, belong_to_module: nil) ⇒ Object
79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 |
# File 'lib/tdl/axi_stream/axis_pkt_fifo_filter_keep_A1_auto.rb', line 79 def self.axis_pkt_fifo_filter_keep_a1( depth:2 , axis_in:"axis_in", axis_out:"axis_out", up_stream:nil, down_stream:nil, belong_to_module:nil ) return_stream = nil belong_to_module = [axis_in,axis_out].first.belong_to_module unless belong_to_module if down_stream.nil? && axis_out.eql?("axis_out") if up_stream.is_a? AxiStream down_stream = up_stream.copy else down_stream = axis_in.copy end return_stream = down_stream end if up_stream.nil? && axis_in.eql?("axis_in") if down_stream.is_a? AxiStream up_stream = down_stream.copy else up_stream = axis_out.copy end return_stream = up_stream end if down_stream.is_a? AxiStream down_stream.axis_pkt_fifo_filter_keep_a1( depth:depth, axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) elsif axis_out.is_a? AxiStream axis_out.axis_pkt_fifo_filter_keep_a1( depth:depth, axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) else belong_to_module.AxiStream_NC.axis_pkt_fifo_filter_keep_a1( depth:depth, axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) end return return_stream end |
.axis_ram_buffer(length: 4096, wr_en: "wr_en", gen_en: "gen_en", gen_ready: "gen_ready", axis_wr_inf: "axis_wr_inf", axis_data_inf: "axis_data_inf", up_stream: nil, down_stream: nil) ⇒ Object
94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 |
# File 'lib/tdl/axi_stream/axis_ram_buffer_auto.rb', line 94 def self.axis_ram_buffer( length:4096, wr_en:"wr_en", gen_en:"gen_en", gen_ready:"gen_ready", axis_wr_inf:"axis_wr_inf", axis_data_inf:"axis_data_inf", up_stream:nil, down_stream:nil, belong_to_module:nil ) return_stream = nil belong_to_module = [axis_wr_inf,axis_data_inf].first.belong_to_module unless belong_to_module if down_stream.nil? && axis_data_inf.eql?("axis_data_inf") if up_stream.is_a? AxiStream down_stream = up_stream.copy else down_stream = axis_wr_inf.copy end return_stream = down_stream end if up_stream.nil? && axis_wr_inf.eql?("axis_wr_inf") if down_stream.is_a? AxiStream up_stream = down_stream.copy else up_stream = axis_data_inf.copy end return_stream = up_stream end if down_stream.is_a? AxiStream down_stream.axis_ram_buffer( length:length, wr_en:wr_en, gen_en:gen_en, gen_ready:gen_ready, axis_wr_inf:axis_wr_inf, axis_data_inf:axis_data_inf, up_stream:up_stream, down_stream:down_stream) elsif axis_data_inf.is_a? AxiStream axis_data_inf.axis_ram_buffer( length:length, wr_en:wr_en, gen_en:gen_en, gen_ready:gen_ready, axis_wr_inf:axis_wr_inf, axis_data_inf:axis_data_inf, up_stream:up_stream, down_stream:down_stream) else belong_to_module.AxiStream_NC.axis_ram_buffer( length:length, wr_en:wr_en, gen_en:gen_en, gen_ready:gen_ready, axis_wr_inf:axis_wr_inf, axis_data_inf:axis_data_inf, up_stream:up_stream, down_stream:down_stream) end return return_stream end |
.axis_slaver_empty(slaver: "slaver", up_stream: nil) ⇒ Object
51 52 53 54 55 56 57 58 59 60 61 62 63 64 |
# File 'lib/tdl/axi_stream/axis_slaver_empty_auto.rb', line 51 def self.axis_slaver_empty( slaver:"slaver", up_stream:nil, belong_to_module:nil ) return_stream = nil belong_to_module = [slaver].first.belong_to_module unless belong_to_module belong_to_module.AxiStream_NC._axis_slaver_empty( slaver:slaver, up_stream:up_stream) return return_stream end |
.axis_slaver_pipe(axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 |
# File 'lib/tdl/axi_stream/axis_slaver_pipe_auto.rb', line 73 def self.axis_slaver_pipe( axis_in:"axis_in", axis_out:"axis_out", up_stream:nil, down_stream:nil, belong_to_module:nil ) return_stream = nil belong_to_module = [axis_in,axis_out].first.belong_to_module unless belong_to_module if down_stream.nil? && axis_out.eql?("axis_out") if up_stream.is_a? AxiStream down_stream = up_stream.copy else down_stream = axis_in.copy end return_stream = down_stream end if up_stream.nil? && axis_in.eql?("axis_in") if down_stream.is_a? AxiStream up_stream = down_stream.copy else up_stream = axis_out.copy end return_stream = up_stream end if down_stream.is_a? AxiStream down_stream.axis_slaver_pipe( axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) elsif axis_out.is_a? AxiStream axis_out.axis_slaver_pipe( axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) else belong_to_module.AxiStream_NC.axis_slaver_pipe( axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) end return return_stream end |
.axis_slaver_pipe_a1(depth: 1, axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 |
# File 'lib/tdl/axi_stream/axis_slaver_pipe_A1_auto.rb', line 79 def self.axis_slaver_pipe_a1( depth:1, axis_in:"axis_in", axis_out:"axis_out", up_stream:nil, down_stream:nil, belong_to_module:nil ) return_stream = nil belong_to_module = [axis_in,axis_out].first.belong_to_module unless belong_to_module if down_stream.nil? && axis_out.eql?("axis_out") if up_stream.is_a? AxiStream down_stream = up_stream.copy else down_stream = axis_in.copy end return_stream = down_stream end if up_stream.nil? && axis_in.eql?("axis_in") if down_stream.is_a? AxiStream up_stream = down_stream.copy else up_stream = axis_out.copy end return_stream = up_stream end if down_stream.is_a? AxiStream down_stream.axis_slaver_pipe_a1( depth:depth, axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) elsif axis_out.is_a? AxiStream axis_out.axis_slaver_pipe_a1( depth:depth, axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) else belong_to_module.AxiStream_NC.axis_slaver_pipe_a1( depth:depth, axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) end return return_stream end |
.axis_to_axi4_or_lite(lite: "lite", axis_in: "axis_in", rd_rel_axis: "rd_rel_axis", axi4: "axi4", belong_to_module: nil) ⇒ Object
66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 |
# File 'lib/tdl/axi_stream/axis_to_axi4_or_lite_auto.rb', line 66 def self.axis_to_axi4_or_lite( lite:"lite", axis_in:"axis_in", rd_rel_axis:"rd_rel_axis", axi4:"axi4", belong_to_module:nil ) return_stream = nil belong_to_module = [axis_in,rd_rel_axis].first.belong_to_module unless belong_to_module belong_to_module.AxiStream_NC._axis_to_axi4_or_lite( lite:lite, axis_in:axis_in, rd_rel_axis:rd_rel_axis, axi4:axi4) return return_stream end |
.axis_to_axi4_wr(addr: "addr", max_length: "max_length", axis_in: "axis_in", axi_wr: "axi_wr") ⇒ Object
64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 |
# File 'lib/tdl/axi4/axis_to_axi4_wr_auto.rb', line 64 def self.axis_to_axi4_wr( addr:"addr", max_length:"max_length", axis_in:"axis_in", axi_wr:"axi_wr", belong_to_module:nil ) return_stream = nil belong_to_module = [axis_in].first.belong_to_module unless belong_to_module belong_to_module.AxiStream_NC._axis_to_axi4_wr( addr:addr, max_length:max_length, axis_in:axis_in, axi_wr:axi_wr) return return_stream end |
.axis_to_data_inf(data_out_inf: "data_out_inf", axis_in: "axis_in") ⇒ Object
60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 |
# File 'lib/tdl/axi_stream/axis_to_data_inf_auto.rb', line 60 def self.axis_to_data_inf( contain_last:"OFF", data_out_inf:"data_out_inf", axis_in:"axis_in", belong_to_module:nil ) return_stream = nil belong_to_module = [axis_in].first.belong_to_module unless belong_to_module belong_to_module.AxiStream_NC._axis_to_data_inf( contain_last:contain_last, data_out_inf:data_out_inf, axis_in:axis_in) return return_stream end |
.axis_to_lite_rd(dummy: 8, lite: "lite", axis_in: "axis_in", rd_rel_axis: "rd_rel_axis", belong_to_module: nil) ⇒ Object
66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 |
# File 'lib/tdl/axi_stream/axis_to_lite_rd_auto.rb', line 66 def self.axis_to_lite_rd( dummy:8, lite:"lite", axis_in:"axis_in", rd_rel_axis:"rd_rel_axis", belong_to_module:nil ) return_stream = nil belong_to_module = [axis_in,rd_rel_axis].first.belong_to_module unless belong_to_module belong_to_module.AxiStream_NC._axis_to_lite_rd( dummy:dummy, lite:lite, axis_in:axis_in, rd_rel_axis:rd_rel_axis) return return_stream end |
.axis_to_lite_wr(dummy: 8, lite: "lite", axis_in: "axis_in", belong_to_module: nil) ⇒ Object
60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 |
# File 'lib/tdl/axi_stream/axis_to_lite_wr_auto.rb', line 60 def self.axis_to_lite_wr( dummy:8, lite:"lite", axis_in:"axis_in", belong_to_module:nil ) return_stream = nil belong_to_module = [axis_in].first.belong_to_module unless belong_to_module belong_to_module.AxiStream_NC._axis_to_lite_wr( dummy:dummy, lite:lite, axis_in:axis_in) return return_stream end |
.axis_uncompress(asize: 8, lsize: 8, axis_zip: "axis_zip", axis_unzip: "axis_unzip") ⇒ Object
65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 |
# File 'lib/tdl/axi_stream/axis_uncompress_auto.rb', line 65 def self.axis_uncompress( asize:8, lsize:8, axis_zip:"axis_zip", axis_unzip:"axis_unzip", belong_to_module:nil ) return_stream = nil belong_to_module = [axis_zip,axis_unzip].first.belong_to_module unless belong_to_module belong_to_module.AxiStream_NC._axis_uncompress( asize:asize, lsize:lsize, axis_zip:axis_zip, axis_unzip:axis_unzip) return return_stream end |
.axis_valve(button: "button", axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 |
# File 'lib/tdl/axi_stream/axis_valve_auto.rb', line 78 def self.axis_valve( button:"button", axis_in:"axis_in", axis_out:"axis_out", up_stream:nil, down_stream:nil, belong_to_module:nil ) return_stream = nil belong_to_module = [axis_in,axis_out].first.belong_to_module unless belong_to_module if down_stream.nil? && axis_out.eql?("axis_out") if up_stream.is_a? AxiStream down_stream = up_stream.copy else down_stream = axis_in.copy end return_stream = down_stream end if up_stream.nil? && axis_in.eql?("axis_in") if down_stream.is_a? AxiStream up_stream = down_stream.copy else up_stream = axis_out.copy end return_stream = up_stream end if down_stream.is_a? AxiStream down_stream.axis_valve( button:, axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) elsif axis_out.is_a? AxiStream axis_out.axis_valve( button:, axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) else belong_to_module.AxiStream_NC.axis_valve( button:, axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) end return return_stream end |
.axis_valve_with_pipe(button: "button", axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 |
# File 'lib/tdl/axi_stream/axis_valve_with_pipe_auto.rb', line 84 def self.axis_valve_with_pipe( mode:"BOTH", button:"button", axis_in:"axis_in", axis_out:"axis_out", up_stream:nil, down_stream:nil, belong_to_module:nil ) return_stream = nil ms = [axis_in,axis_out,up_stream,down_stream].map do |e| if e.respond_to? :belong_to_module e.belong_to_module else nil end end belong_to_module = ms.compact.first unless belong_to_module if down_stream.nil? && axis_out.eql?("axis_out") if up_stream.is_a? AxiStream down_stream = up_stream.copy else down_stream = axis_in.copy end return_stream = down_stream end if up_stream.nil? && axis_in.eql?("axis_in") if down_stream.is_a? AxiStream up_stream = down_stream.copy else up_stream = axis_out.copy end return_stream = up_stream end if down_stream.is_a? AxiStream down_stream.axis_valve_with_pipe( mode:mode, button:, axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) elsif axis_out.is_a? AxiStream axis_out.axis_valve_with_pipe( mode:mode, button:, axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) else belong_to_module.AxiStream_NC.axis_valve_with_pipe( mode:mode, button:, axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) end return return_stream end |
.axis_width_combin(slim_axis: "slim_axis", wide_axis: "wide_axis", up_stream: nil, down_stream: nil) ⇒ Object
73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 |
# File 'lib/tdl/axi_stream/axis_width_combin_auto.rb', line 73 def self.axis_width_combin( slim_axis:"slim_axis", wide_axis:"wide_axis", up_stream:nil, down_stream:nil, belong_to_module:nil ) return_stream = nil belong_to_module = [slim_axis,wide_axis].first.belong_to_module unless belong_to_module if down_stream.nil? && wide_axis.eql?("wide_axis") if up_stream.is_a? AxiStream down_stream = up_stream.copy else down_stream = slim_axis.copy end return_stream = down_stream end if up_stream.nil? && slim_axis.eql?("slim_axis") if down_stream.is_a? AxiStream up_stream = down_stream.copy else up_stream = wide_axis.copy end return_stream = up_stream end if down_stream.is_a? AxiStream down_stream.axis_width_combin( slim_axis:slim_axis, wide_axis:wide_axis, up_stream:up_stream, down_stream:down_stream) elsif wide_axis.is_a? AxiStream wide_axis.axis_width_combin( slim_axis:slim_axis, wide_axis:wide_axis, up_stream:up_stream, down_stream:down_stream) else belong_to_module.AxiStream_NC.axis_width_combin( slim_axis:slim_axis, wide_axis:wide_axis, up_stream:up_stream, down_stream:down_stream) end return return_stream end |
.axis_width_combin_a1(slim_axis: "slim_axis", wide_axis: "wide_axis", up_stream: nil, down_stream: nil, belong_to_module: nil) ⇒ Object
73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 |
# File 'lib/tdl/axi_stream/axis_width_combin_A1_auto.rb', line 73 def self.axis_width_combin_a1( slim_axis:"slim_axis", wide_axis:"wide_axis", up_stream:nil, down_stream:nil, belong_to_module:nil ) return_stream = nil belong_to_module = [slim_axis,wide_axis].first.belong_to_module unless belong_to_module if down_stream.nil? && wide_axis.eql?("wide_axis") if up_stream.is_a? AxiStream down_stream = up_stream.copy else down_stream = slim_axis.copy end return_stream = down_stream end if up_stream.nil? && slim_axis.eql?("slim_axis") if down_stream.is_a? AxiStream up_stream = down_stream.copy else up_stream = wide_axis.copy end return_stream = up_stream end if down_stream.is_a? AxiStream down_stream.axis_width_combin_a1( slim_axis:slim_axis, wide_axis:wide_axis, up_stream:up_stream, down_stream:down_stream) elsif wide_axis.is_a? AxiStream wide_axis.axis_width_combin_a1( slim_axis:slim_axis, wide_axis:wide_axis, up_stream:up_stream, down_stream:down_stream) else belong_to_module.AxiStream_NC.axis_width_combin_a1( slim_axis:slim_axis, wide_axis:wide_axis, up_stream:up_stream, down_stream:down_stream) end return return_stream end |
.axis_width_convert(in_axis: "in_axis", out_axis: "out_axis", up_stream: nil, down_stream: nil) ⇒ Object
73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 |
# File 'lib/tdl/axi_stream/axis_width_convert_auto.rb', line 73 def self.axis_width_convert( in_axis:"in_axis", out_axis:"out_axis", up_stream:nil, down_stream:nil, belong_to_module:nil ) return_stream = nil belong_to_module = [in_axis,out_axis].first.belong_to_module unless belong_to_module if down_stream.nil? && out_axis.eql?("out_axis") if up_stream.is_a? AxiStream down_stream = up_stream.copy else down_stream = in_axis.copy end return_stream = down_stream end if up_stream.nil? && in_axis.eql?("in_axis") if down_stream.is_a? AxiStream up_stream = down_stream.copy else up_stream = out_axis.copy end return_stream = up_stream end if down_stream.is_a? AxiStream down_stream.axis_width_convert( in_axis:in_axis, out_axis:out_axis, up_stream:up_stream, down_stream:down_stream) elsif out_axis.is_a? AxiStream out_axis.axis_width_convert( in_axis:in_axis, out_axis:out_axis, up_stream:up_stream, down_stream:down_stream) else belong_to_module.AxiStream_NC.axis_width_convert( in_axis:in_axis, out_axis:out_axis, up_stream:up_stream, down_stream:down_stream) end return return_stream end |
.axis_width_destruct(wide_axis: "wide_axis", slim_axis: "slim_axis", up_stream: nil, down_stream: nil) ⇒ Object
73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 |
# File 'lib/tdl/axi_stream/axis_width_destruct_auto.rb', line 73 def self.axis_width_destruct( wide_axis:"wide_axis", slim_axis:"slim_axis", up_stream:nil, down_stream:nil, belong_to_module:nil ) return_stream = nil belong_to_module = [wide_axis,slim_axis].first.belong_to_module unless belong_to_module if down_stream.nil? && slim_axis.eql?("slim_axis") if up_stream.is_a? AxiStream down_stream = up_stream.copy else down_stream = wide_axis.copy end return_stream = down_stream end if up_stream.nil? && wide_axis.eql?("wide_axis") if down_stream.is_a? AxiStream up_stream = down_stream.copy else up_stream = slim_axis.copy end return_stream = up_stream end if down_stream.is_a? AxiStream down_stream.axis_width_destruct( wide_axis:wide_axis, slim_axis:slim_axis, up_stream:up_stream, down_stream:down_stream) elsif slim_axis.is_a? AxiStream slim_axis.axis_width_destruct( wide_axis:wide_axis, slim_axis:slim_axis, up_stream:up_stream, down_stream:down_stream) else belong_to_module.AxiStream_NC.axis_width_destruct( wide_axis:wide_axis, slim_axis:slim_axis, up_stream:up_stream, down_stream:down_stream) end return return_stream end |
.axis_width_destruct_a1(wide_axis: "wide_axis", slim_axis: "slim_axis", up_stream: nil, down_stream: nil, belong_to_module: nil) ⇒ Object
73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 |
# File 'lib/tdl/axi_stream/axis_width_destruct_A1.sv_auto.rb', line 73 def self.axis_width_destruct_a1( wide_axis:"wide_axis", slim_axis:"slim_axis", up_stream:nil, down_stream:nil, belong_to_module:nil ) return_stream = nil belong_to_module = [wide_axis,slim_axis].first.belong_to_module unless belong_to_module if down_stream.nil? && slim_axis.eql?("slim_axis") if up_stream.is_a? AxiStream down_stream = up_stream.copy else down_stream = wide_axis.copy end return_stream = down_stream end if up_stream.nil? && wide_axis.eql?("wide_axis") if down_stream.is_a? AxiStream up_stream = down_stream.copy else up_stream = slim_axis.copy end return_stream = up_stream end if down_stream.is_a? AxiStream down_stream.axis_width_destruct_a1( wide_axis:wide_axis, slim_axis:slim_axis, up_stream:up_stream, down_stream:down_stream) elsif slim_axis.is_a? AxiStream slim_axis.axis_width_destruct_a1( wide_axis:wide_axis, slim_axis:slim_axis, up_stream:up_stream, down_stream:down_stream) else belong_to_module.AxiStream_NC.axis_width_destruct_a1( wide_axis:wide_axis, slim_axis:slim_axis, up_stream:up_stream, down_stream:down_stream) end return return_stream end |
.check_stream_crc(axis_in: "axis_in") ⇒ Object
48 49 50 51 52 53 54 55 56 57 58 59 |
# File 'lib/tdl/axi_stream/check_stream_crc_auto.rb', line 48 def self.check_stream_crc( axis_in:"axis_in", belong_to_module:nil ) return_stream = nil belong_to_module = [axis_in].first.belong_to_module unless belong_to_module belong_to_module.AxiStream_NC._check_stream_crc( axis_in:axis_in) return return_stream end |
.collect_vector(main: nil, vector: nil) ⇒ Object
159 160 161 162 163 164 165 166 167 168 169 170 171 172 |
# File 'lib/tdl/axi_stream/axi_stream_interconnect.rb', line 159 def self.collect_vector(main:nil,vector:nil) raise TdlError.new("AxiStream collect_vector `VECTOR` must be AxiStream Class") unless vector.is_a? AxiStream if main raise TdlError.new("AxiStream collect_vector `MAIN` must be AxiStream Class") unless main.is_a? AxiStream end main = vector.copy(dimension:[]) if main.nil? main.collect_vector(vector) return main end |
.copy(obj) ⇒ Object
619 620 621 622 623 624 625 |
# File 'lib/tdl/elements/axi_stream.rb', line 619 def self.copy(obj) if obj.is_a? AxiStream obj.copy elsif obj.is_a? String AxiStream.new(name:"copy_#{obj}",clock:AxiStream.aclk(obj),reset:AxiStream.aresetn(obj),dsize:AxiStream.DSIZE(obj)) end end |
.data_c_to_axis_full(data_in_inf: "data_in_inf", axis_out: "axis_out", belong_to_module: nil) ⇒ Object
54 55 56 57 58 59 60 61 62 63 64 65 66 67 |
# File 'lib/tdl/axi_stream/data_c_to_axis_full_auto.rb', line 54 def self.data_c_to_axis_full( data_in_inf:"data_in_inf", axis_out:"axis_out", belong_to_module:nil ) return_stream = nil belong_to_module = [axis_out].first.belong_to_module unless belong_to_module belong_to_module.AxiStream_NC._data_c_to_axis_full( data_in_inf:data_in_inf, axis_out:axis_out) return return_stream end |
.data_to_axis_inf(mark_curr_data: "mark_curr_data", last_flag: "last_flag", data_slaver: "data_slaver", axis_master: "axis_master") ⇒ Object
64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 |
# File 'lib/tdl/axi_stream/data_to_axis_inf_auto.rb', line 64 def self.data_to_axis_inf( mark_curr_data:"mark_curr_data", last_flag:"last_flag", data_slaver:"data_slaver", axis_master:"axis_master", belong_to_module:nil ) return_stream = nil belong_to_module = [axis_master].first.belong_to_module unless belong_to_module belong_to_module.AxiStream_NC._data_to_axis_inf( mark_curr_data:mark_curr_data, last_flag:last_flag, data_slaver:data_slaver, axis_master:axis_master) return return_stream end |
.data_to_axis_inf_a1(last_flag: "last_flag", data_slaver: "data_slaver", axis_master: "axis_master") ⇒ Object
29 30 31 32 |
# File 'lib/tdl/axi_stream/bak/data_to_axis_inf_A1.rb', line 29 def self.data_to_axis_inf_a1(last_flag:"last_flag",data_slaver:"data_slaver",axis_master:"axis_master") NC._data_to_axis_inf_a1(last_flag:last_flag,data_slaver:data_slaver,axis_master:axis_master) end |
.direct(slaver: "slaver", master: "master", up_stream: nil, down_stream: nil, belong_to_module: nil) ⇒ Object
510 511 512 |
# File 'lib/tdl/elements/axi_stream.rb', line 510 def self.direct(slaver:"slaver",master:"master",up_stream:nil,down_stream:nil,belong_to_module:nil) self.axis_direct(slaver:slaver,master:master,up_stream:up_stream,down_stream:down_stream,belong_to_module:belong_to_module) end |
.dynamic_port_cfg(udp_port: "udp_port", port_index: "port_index", valid: "valid", tap_ex_udp_ctrl_inf: "tap_ex_udp_ctrl_inf", tap_local_udp_ctrl_inf: "tap_local_udp_ctrl_inf", tap_broadcast_udp_inf: "tap_broadcast_udp_inf", send_inf: "send_inf") ⇒ Object
35 36 37 38 39 40 41 |
# File 'lib/tdl/axi_stream/bak/dynamic_port_cfg_auto.rb', line 35 def self.dynamic_port_cfg(udp_port:"udp_port",port_index:"port_index",valid:"valid",tap_ex_udp_ctrl_inf:"tap_ex_udp_ctrl_inf",tap_local_udp_ctrl_inf:"tap_local_udp_ctrl_inf",tap_broadcast_udp_inf:"tap_broadcast_udp_inf",send_inf:"send_inf") return_stream = nil NC._dynamic_port_cfg(udp_port:udp_port,port_index:port_index,valid:valid,tap_ex_udp_ctrl_inf:tap_ex_udp_ctrl_inf,tap_local_udp_ctrl_inf:tap_local_udp_ctrl_inf,tap_broadcast_udp_inf:tap_broadcast_udp_inf,send_inf:send_inf) return return_stream end |
.dynnamic_addr_cfg(server_ip: "server_ip", server_mac: "server_mac", tap_local_udp_ctrl_inf: "tap_local_udp_ctrl_inf", tap_broadcast_udp_inf: "tap_broadcast_udp_inf", send_inf: "send_inf") ⇒ Object
33 34 35 36 37 38 39 |
# File 'lib/tdl/axi_stream/bak/dynnamic_addr_cfg_auto.rb', line 33 def self.dynnamic_addr_cfg(server_ip:"server_ip",server_mac:"server_mac",tap_local_udp_ctrl_inf:"tap_local_udp_ctrl_inf",tap_broadcast_udp_inf:"tap_broadcast_udp_inf",send_inf:"send_inf") return_stream = nil NC._dynnamic_addr_cfg(server_ip:server_ip,server_mac:server_mac,tap_local_udp_ctrl_inf:tap_local_udp_ctrl_inf,tap_broadcast_udp_inf:tap_broadcast_udp_inf,send_inf:send_inf) return return_stream end |
.gen_big_field_table(master_mode: "OFF", dsize: 8, field_len: 16*8, field_name: "Big Filed", enable: "enable", value: "value", cm_tb: "cm_tb", down_stream: nil) ⇒ Object
88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 |
# File 'lib/tdl/axi_stream/gen_big_field_table_auto.rb', line 88 def self.gen_big_field_table( master_mode:"OFF", dsize:8, field_len:16*8, field_name:"Big Filed", enable:"enable", value:"value", cm_tb:"cm_tb", down_stream:nil, belong_to_module:nil ) return_stream = nil belong_to_module = [cm_tb].first.belong_to_module unless belong_to_module if down_stream.is_a? AxiStream down_stream.gen_big_field_table( master_mode:master_mode, dsize:dsize, field_len:field_len, field_name:field_name, enable:enable, value:value, cm_tb:cm_tb, down_stream:down_stream) elsif cm_tb.is_a? AxiStream cm_tb.gen_big_field_table( master_mode:master_mode, dsize:dsize, field_len:field_len, field_name:field_name, enable:enable, value:value, cm_tb:cm_tb, down_stream:down_stream) else belong_to_module.AxiStream_NC.gen_big_field_table( master_mode:master_mode, dsize:dsize, field_len:field_len, field_name:field_name, enable:enable, value:value, cm_tb:cm_tb, down_stream:down_stream) end return return_stream end |
.gen_origin_axis(mode: "RANGE", enable: "enable", ready: "ready", length: "length", axis_out: "axis_out", down_stream: nil) ⇒ Object
78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 |
# File 'lib/tdl/axi_stream/gen_origin_axis_auto.rb', line 78 def self.gen_origin_axis( mode:"RANGE", enable:"enable", ready:"ready", length:"length", axis_out:"axis_out", down_stream:nil, belong_to_module:nil ) return_stream = nil belong_to_module = [axis_out].first.belong_to_module unless belong_to_module if down_stream.is_a? AxiStream down_stream.gen_origin_axis( mode:mode, enable:enable, ready:ready, length:length, axis_out:axis_out, down_stream:down_stream) elsif axis_out.is_a? AxiStream axis_out.gen_origin_axis( mode:mode, enable:enable, ready:ready, length:length, axis_out:axis_out, down_stream:down_stream) else belong_to_module.AxiStream_NC.gen_origin_axis( mode:mode, enable:enable, ready:ready, length:length, axis_out:axis_out, down_stream:down_stream) end return return_stream end |
.gen_origin_axis_a1(mode: "RANGE", enable: "enable", ready: "ready", length: "length", start: "start", axis_out: "axis_out", down_stream: nil, belong_to_module: nil) ⇒ Object
83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 |
# File 'lib/tdl/axi_stream/gen_origin_axis_A1_auto.rb', line 83 def self.gen_origin_axis_a1( mode:"RANGE", enable:"enable", ready:"ready", length:"length", start:"start", axis_out:"axis_out", down_stream:nil, belong_to_module:nil ) return_stream = nil belong_to_module = [axis_out].first.belong_to_module unless belong_to_module if down_stream.is_a? AxiStream down_stream.gen_origin_axis_a1( mode:mode, enable:enable, ready:ready, length:length, start:start, axis_out:axis_out, down_stream:down_stream) elsif axis_out.is_a? AxiStream axis_out.gen_origin_axis_a1( mode:mode, enable:enable, ready:ready, length:length, start:start, axis_out:axis_out, down_stream:down_stream) else belong_to_module.AxiStream_NC.gen_origin_axis_a1( mode:mode, enable:enable, ready:ready, length:length, start:start, axis_out:axis_out, down_stream:down_stream) end return return_stream end |
.gen_simple_axis(mode: "RANGE", trigger: "trigger", gen_en: "gen_en", length: "length", led: "led", axis_out: "axis_out", down_stream: nil) ⇒ Object
83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 |
# File 'lib/tdl/axi_stream/gen_simple_axis_auto.rb', line 83 def self.gen_simple_axis( mode:"RANGE", trigger:"trigger", gen_en:"gen_en", length:"length", led:"led", axis_out:"axis_out", down_stream:nil, belong_to_module:nil ) return_stream = nil belong_to_module = [axis_out].first.belong_to_module unless belong_to_module if down_stream.is_a? AxiStream down_stream.gen_simple_axis( mode:mode, trigger:trigger, gen_en:gen_en, length:length, led:led, axis_out:axis_out, down_stream:down_stream) elsif axis_out.is_a? AxiStream axis_out.gen_simple_axis( mode:mode, trigger:trigger, gen_en:gen_en, length:length, led:led, axis_out:axis_out, down_stream:down_stream) else belong_to_module.AxiStream_NC.gen_simple_axis( mode:mode, trigger:trigger, gen_en:gen_en, length:length, led:led, axis_out:axis_out, down_stream:down_stream) end return return_stream end |
.leave_empty(curr_type: :master, dsize: 8, clock: "", reset: "", belong_to_module: nil) ⇒ Object
164 165 166 167 168 169 170 171 172 173 174 175 176 |
# File 'lib/tdl/elements/axi_stream.rb', line 164 def self.leave_empty(curr_type: :master,dsize:8,clock:"",reset:"",belong_to_module:nil) nc = belong_to_module.Def.axi_stream(name:"empty_#{belong_to_module.AxiStream_NC.signal}",dsize:dsize,clock:clock,reset:reset) # puts belong_to_module.module_name if curr_type.to_sym == :slaver self.axis_master_empty(master:nc) elsif curr_type.to_sym == :master self.axis_slaver_empty(slaver:nc) else raise TdlError.new("\n\n Axi Stream don't has this type << #{type} >> \n\n") end return nc end |
.leave_master_empty(*ss) ⇒ Object
158 159 160 161 162 |
# File 'lib/tdl/elements/axi_stream.rb', line 158 def self.leave_master_empty(*ss) ss.each do |e| self.axis_slaver_empty(slaver:e) end end |
.leave_slaver_empty(*ms) ⇒ Object
—- new ————–
151 152 153 154 155 156 |
# File 'lib/tdl/elements/axi_stream.rb', line 151 def self.leave_slaver_empty(*ms) ms.each do |e| # puts e self.axis_master_empty(master:e) end end |
.master_empty(*ms) ⇒ Object
136 137 138 139 140 141 |
# File 'lib/tdl/elements/axi_stream.rb', line 136 def self.master_empty(*ms) ms.each do |e| # puts e self.axis_master_empty(master:e) end end |
.parse_big_field_table(dsize: 8, field_len: 16*8, field_name: "Big Filed", try_parse: "OFF", enable: "enable", value: "value", out_valid: "out_valid", cm_tb_s: "cm_tb_s", cm_tb_m: "cm_tb_m", cm_mirror: "cm_mirror", up_stream: nil, down_stream: nil) ⇒ Object
115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 |
# File 'lib/tdl/axi_stream/parse_big_field_table_auto.rb', line 115 def self.parse_big_field_table( dsize:8, field_len:16*8, field_name:"Big Filed", try_parse:"OFF", enable:"enable", value:"value", out_valid:"out_valid", cm_tb_s:"cm_tb_s", cm_tb_m:"cm_tb_m", cm_mirror:"cm_mirror", up_stream:nil, down_stream:nil, belong_to_module:nil ) return_stream = nil belong_to_module = [cm_tb_s,cm_tb_m,cm_mirror].first.belong_to_module unless belong_to_module if down_stream.nil? && cm_tb_m.eql?("cm_tb_m") if up_stream.is_a? AxiStream down_stream = up_stream.copy else down_stream = cm_tb_s.copy end return_stream = down_stream end if up_stream.nil? && cm_tb_s.eql?("cm_tb_s") if down_stream.is_a? AxiStream up_stream = down_stream.copy else up_stream = cm_tb_m.copy end return_stream = up_stream end if down_stream.is_a? AxiStream down_stream.parse_big_field_table( dsize:dsize, field_len:field_len, field_name:field_name, try_parse:try_parse, enable:enable, value:value, out_valid:out_valid, cm_tb_s:cm_tb_s, cm_tb_m:cm_tb_m, cm_mirror:cm_mirror, up_stream:up_stream, down_stream:down_stream) elsif cm_tb_m.is_a? AxiStream cm_tb_m.parse_big_field_table( dsize:dsize, field_len:field_len, field_name:field_name, try_parse:try_parse, enable:enable, value:value, out_valid:out_valid, cm_tb_s:cm_tb_s, cm_tb_m:cm_tb_m, cm_mirror:cm_mirror, up_stream:up_stream, down_stream:down_stream) else belong_to_module.AxiStream_NC.parse_big_field_table( dsize:dsize, field_len:field_len, field_name:field_name, try_parse:try_parse, enable:enable, value:value, out_valid:out_valid, cm_tb_s:cm_tb_s, cm_tb_m:cm_tb_m, cm_mirror:cm_mirror, up_stream:up_stream, down_stream:down_stream) end return return_stream end |
.parse_big_field_table_a1(dsize: 8, field_len: 16*8, field_name: "Big Filed", try_parse: "OFF", enable: "enable", value: "value", out_valid: "out_valid", cm_tb_s: "cm_tb_s", cm_tb_m: "cm_tb_m", cm_mirror: "cm_mirror", up_stream: nil, down_stream: nil) ⇒ Object
115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 |
# File 'lib/tdl/axi_stream/parse_big_field_table_A1_auto.rb', line 115 def self.parse_big_field_table_a1( dsize:8, field_len:16*8, field_name:"Big Filed", try_parse:"OFF", enable:"enable", value:"value", out_valid:"out_valid", cm_tb_s:"cm_tb_s", cm_tb_m:"cm_tb_m", cm_mirror:"cm_mirror", up_stream:nil, down_stream:nil, belong_to_module:nil ) return_stream = nil belong_to_module = [cm_tb_s,cm_tb_m,cm_mirror].first.belong_to_module unless belong_to_module if down_stream.nil? && cm_tb_m.eql?("cm_tb_m") if up_stream.is_a? AxiStream down_stream = up_stream.copy else down_stream = cm_tb_s.copy end return_stream = down_stream end if up_stream.nil? && cm_tb_s.eql?("cm_tb_s") if down_stream.is_a? AxiStream up_stream = down_stream.copy else up_stream = cm_tb_m.copy end return_stream = up_stream end if down_stream.is_a? AxiStream down_stream.parse_big_field_table_a1( dsize:dsize, field_len:field_len, field_name:field_name, try_parse:try_parse, enable:enable, value:value, out_valid:out_valid, cm_tb_s:cm_tb_s, cm_tb_m:cm_tb_m, cm_mirror:cm_mirror, up_stream:up_stream, down_stream:down_stream) elsif cm_tb_m.is_a? AxiStream cm_tb_m.parse_big_field_table_a1( dsize:dsize, field_len:field_len, field_name:field_name, try_parse:try_parse, enable:enable, value:value, out_valid:out_valid, cm_tb_s:cm_tb_s, cm_tb_m:cm_tb_m, cm_mirror:cm_mirror, up_stream:up_stream, down_stream:down_stream) else belong_to_module.AxiStream_NC.parse_big_field_table_a1( dsize:dsize, field_len:field_len, field_name:field_name, try_parse:try_parse, enable:enable, value:value, out_valid:out_valid, cm_tb_s:cm_tb_s, cm_tb_m:cm_tb_m, cm_mirror:cm_mirror, up_stream:up_stream, down_stream:down_stream) end return return_stream end |
.parse_big_field_table_a2(dsize: 8, field_len: 16*8, field_name: "Big Filed", try_parse: "OFF", enable: "enable", value: "value", out_valid: "out_valid", cm_tb_s: "cm_tb_s", cm_tb_m: "cm_tb_m", cm_mirror: "cm_mirror", up_stream: nil, down_stream: nil) ⇒ Object
115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 |
# File 'lib/tdl/axi_stream/parse_big_field_table_A2_auto.rb', line 115 def self.parse_big_field_table_a2( dsize:8, field_len:16*8, field_name:"Big Filed", try_parse:"OFF", enable:"enable", value:"value", out_valid:"out_valid", cm_tb_s:"cm_tb_s", cm_tb_m:"cm_tb_m", cm_mirror:"cm_mirror", up_stream:nil, down_stream:nil, belong_to_module:nil ) return_stream = nil belong_to_module = [cm_tb_s,cm_tb_m,cm_mirror].first.belong_to_module unless belong_to_module if down_stream.nil? && cm_tb_m.eql?("cm_tb_m") if up_stream.is_a? AxiStream down_stream = up_stream.copy else down_stream = cm_tb_s.copy end return_stream = down_stream end if up_stream.nil? && cm_tb_s.eql?("cm_tb_s") if down_stream.is_a? AxiStream up_stream = down_stream.copy else up_stream = cm_tb_m.copy end return_stream = up_stream end if down_stream.is_a? AxiStream down_stream.parse_big_field_table_a2( dsize:dsize, field_len:field_len, field_name:field_name, try_parse:try_parse, enable:enable, value:value, out_valid:out_valid, cm_tb_s:cm_tb_s, cm_tb_m:cm_tb_m, cm_mirror:cm_mirror, up_stream:up_stream, down_stream:down_stream) elsif cm_tb_m.is_a? AxiStream cm_tb_m.parse_big_field_table_a2( dsize:dsize, field_len:field_len, field_name:field_name, try_parse:try_parse, enable:enable, value:value, out_valid:out_valid, cm_tb_s:cm_tb_s, cm_tb_m:cm_tb_m, cm_mirror:cm_mirror, up_stream:up_stream, down_stream:down_stream) else belong_to_module.AxiStream_NC.parse_big_field_table_a2( dsize:dsize, field_len:field_len, field_name:field_name, try_parse:try_parse, enable:enable, value:value, out_valid:out_valid, cm_tb_s:cm_tb_s, cm_tb_m:cm_tb_m, cm_mirror:cm_mirror, up_stream:up_stream, down_stream:down_stream) end return return_stream end |
.parse_ports(port_array = nil) ⇒ Object
183 184 185 186 187 188 189 190 191 192 |
# File 'lib/tdl/elements/axi_stream.rb', line 183 def self.parse_ports(port_array=nil) rep = /(?<up_down>\(\*\s+(?<ud_name>axis_up|axis_down|up_stream|down_stream)\s*=\s*"true"\s+\*\))?\s*(axi_stream_inf\.)(?<modport>master|slaver|mirror|out_mirror)\s+(?<name>\w+)\s*(?<vector>\[.*?\])?/m up_stream_rep = Regexp.union(/axis_up/,/up_stream/) super(port_array,rep,"axi_stream_inf",up_stream_rep) do |h| h[:type] = AxiStream # puts h yield h end end |
.slaver_empty(*ss) ⇒ Object
143 144 145 146 147 |
# File 'lib/tdl/elements/axi_stream.rb', line 143 def self.slaver_empty(*ss) ss.each do |e| self.axis_slaver_empty(slaver:e) end end |
.stream_crc(crc: "crc", axis_in: "axis_in") ⇒ Object
53 54 55 56 57 58 59 60 61 62 63 64 65 66 |
# File 'lib/tdl/axi_stream/stream_crc_auto.rb', line 53 def self.stream_crc( crc:"crc", axis_in:"axis_in", belong_to_module:nil ) return_stream = nil belong_to_module = [axis_in].first.belong_to_module unless belong_to_module belong_to_module.AxiStream_NC._stream_crc( crc:crc, axis_in:axis_in) return return_stream end |
.string_copy_inf(strs, belong_to_module) ⇒ Object
125 126 127 128 129 130 |
# File 'lib/tdl/elements/axi_stream.rb', line 125 def self.string_copy_inf(strs,belong_to_module) @@_str_cp_id ||= 0 a = belong_to_module.Def.axi_stream(name:"string_copy_axis_#{@@_str_cp_id}",clock:"#{strs}.aclk",reset:"#{strs}.aresetn",dsize:"#{strs}.dsize") @@_str_cp_id += 1 a end |
.udp_server_bfm(tx_udp_inf: "tx_udp_inf", rx_udp_inf: "rx_udp_inf") ⇒ Object
30 31 32 33 34 35 36 |
# File 'lib/tdl/axi_stream/bak/udp_server_bfm_auto.rb', line 30 def self.udp_server_bfm(tx_udp_inf:"tx_udp_inf",rx_udp_inf:"rx_udp_inf") return_stream = nil NC._udp_server_bfm(tx_udp_inf:tx_udp_inf,rx_udp_inf:rx_udp_inf) return return_stream end |
.udp_server_ctrl_bfm(tx_udp_inf: "tx_udp_inf", rx_udp_inf: "rx_udp_inf") ⇒ Object
30 31 32 33 34 35 36 |
# File 'lib/tdl/axi_stream/bak/udp_server_ctrl_bfm_auto.rb', line 30 def self.udp_server_ctrl_bfm(tx_udp_inf:"tx_udp_inf",rx_udp_inf:"rx_udp_inf") return_stream = nil NC._udp_server_ctrl_bfm(tx_udp_inf:tx_udp_inf,rx_udp_inf:rx_udp_inf) return return_stream end |
.video_stream_2_axi_stream(video_slaver: nil, axis_master: nil, mode: "LINE") ⇒ Object
51 52 53 |
# File 'lib/tdl/VideoInf/video_stream_2_axi_stream.rb', line 51 def self.video_stream_2_axi_stream(video_slaver:nil,axis_master:nil,mode:"LINE") VideoInf.video_stream_2_axi_stream(video_slaver:video_slaver,axis_master:axis_master,mode:"LINE") end |
.wide_axis_to_axi4_wr(addr: "addr", max_length: "max_length", axis_in: "axis_in", axi_wr: "axi_wr", belong_to_module: nil) ⇒ Object
64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 |
# File 'lib/tdl/axi4/wide_axis_to_axi4_wr.rb', line 64 def self.wide_axis_to_axi4_wr( addr:"addr", max_length:"max_length", axis_in:"axis_in", axi_wr:"axi_wr", belong_to_module:nil ) return_stream = nil belong_to_module = [axis_in].first.belong_to_module unless belong_to_module belong_to_module.AxiStream_NC._wide_axis_to_axi4_wr( addr:addr, max_length:max_length, axis_in:axis_in, axi_wr:axi_wr) return return_stream end |
Instance Method Details
#%(plength) ⇒ Object
446 447 448 449 450 451 452 453 |
# File 'lib/tdl/elements/axi_stream.rb', line 446 def %(plength) raise TdlError.new("#{plength} is not a Integer") unless plength.is_a? Integer down_stream = self.copy(name:"partition") AxiStream.axi_stream_partition(valve:"1'b1",partition_len:plength,req_new_len:"",up_stream:self,down_stream:down_stream) return down_stream end |
#*(num) ⇒ Object
429 430 431 432 |
# File 'lib/tdl/elements/axi_stream.rb', line 429 def *(num) raise TdlError.new("#{num} is not a Integer") unless num.is_a? Integer div_mul(num,"*") end |
#+(other_stream) ⇒ Object
421 422 423 424 425 426 427 |
# File 'lib/tdl/elements/axi_stream.rb', line 421 def +(other_stream) raise TdlError.new("#{other_stream} is not a AxiStream") unless other_stream.is_a? AxiStream master_stream = self.copy(name:"#{name}_scaler_m00") # AxiStream.axi_streams_scaler(mode:"HEAD",cut_or_combin_body:"OFF",dsize:@dsize,new_body_len:"16'hFFFF",head_inf:self,body_inf:other_stream,end_inf:self.copy(name:"tmp"),m00:master_stream) AxiStream.axi_streams_scaler_a1(mode:"HEAD",cut_or_combin_body:"OFF",new_body_len:"16'hFFFF",head_inf:self,body_inf:other_stream,end_inf:self.copy(name:"tmp"),m00:master_stream) return master_stream end |
#/(num) ⇒ Object
434 435 436 437 |
# File 'lib/tdl/elements/axi_stream.rb', line 434 def /(num) raise TdlError.new("#{num} is not a Integer") unless num.is_a? Integer div_mul(num,"/") end |
#<<(*up_streams) ⇒ Object
22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 |
# File 'lib/tdl/axi_stream/axi_stream_interconnect.rb', line 22 def <<(*up_streams) @interconnect_up_streams ||= [] push_to_stack up_streams.each do |e| # next unless e.is_a? AxiStream if e.is_a? AxiStream raise TdlError.new("AxiStream << [sub..] sub.dimension must 1") unless dimension_num(e).eql?(1) @interconnect_up_streams << e check_branch_num end if e.is_a? TdlSpace::ArrayChain if e.obj.is_a? AxiStream @interconnect_up_streams << e check_branch_num end end end end |
#>>(down_stream) ⇒ Object
42 43 44 |
# File 'lib/tdl/axi_stream/axi_stream_interconnect.rb', line 42 def >>(down_stream) down_stream.<< self end |
#__inf_signal__(name) ⇒ Object
518 519 520 521 522 523 524 525 |
# File 'lib/tdl/elements/axi_stream.rb', line 518 def __inf_signal__(name) raise TdlError.new("\nARRAY Don't have '#{name}'\n") unless @dimension.empty? # puts "--------------" # puts $new_m.instance_variable_get("@port_axisinfs") # puts "=============" NqString.new(signal.concat ".#{name}") # signal.concat ".#{name}" end |
#_axi4_rd_auxiliary_gen(id_add_len_in: "id_add_len_in", axi_rd_aux: "axi_rd_aux") ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
# File 'lib/tdl/axi4/axi4_rd_auxiliary_gen_auto.rb', line 9 def _axi4_rd_auxiliary_gen( id_add_len_in:"id_add_len_in", axi_rd_aux:"axi_rd_aux" ) Tdl.add_to_all_file_paths('axi4_rd_auxiliary_gen','../../axi/AXI4/axi4_rd_auxiliary_gen.sv') # GlobalParam.CurrTdlModule.add_to_all_file_paths(['axi4_rd_auxiliary_gen','../../axi/AXI4/axi4_rd_auxiliary_gen.sv']) return_stream = self id_add_len_in = AxiStream.same_name_socket(:from_up,mix=true,id_add_len_in,nil,belong_to_module) unless id_add_len_in.is_a? String axi_rd_aux = Axi4.same_name_socket(:mirror,mix=true,axi_rd_aux,nil,belong_to_module) unless axi_rd_aux.is_a? String belong_to_module.AxiStream_draw << _axi4_rd_auxiliary_gen_draw( id_add_len_in:id_add_len_in, axi_rd_aux:axi_rd_aux) return return_stream end |
#_axi4_wr_auxiliary_gen_without_resp(stream_en: "stream_en", id_add_len_in: "id_add_len_in", axi_wr_aux: "axi_wr_aux") ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 |
# File 'lib/tdl/axi4/axi4_wr_auxiliary_gen_without_resp_auto.rb', line 9 def _axi4_wr_auxiliary_gen_without_resp( stream_en:"stream_en", id_add_len_in:"id_add_len_in", axi_wr_aux:"axi_wr_aux" ) Tdl.add_to_all_file_paths('axi4_wr_auxiliary_gen_without_resp','../../axi/AXI4/axi4_wr_auxiliary_gen_without_resp.sv') # GlobalParam.CurrTdlModule.add_to_all_file_paths(['axi4_wr_auxiliary_gen_without_resp','../../axi/AXI4/axi4_wr_auxiliary_gen_without_resp.sv']) return_stream = self id_add_len_in = AxiStream.same_name_socket(:from_up,mix=true,id_add_len_in,nil,belong_to_module) unless id_add_len_in.is_a? String axi_wr_aux = Axi4.same_name_socket(:mirror,mix=true,axi_wr_aux,nil,belong_to_module) unless axi_wr_aux.is_a? String belong_to_module.AxiStream_draw << _axi4_wr_auxiliary_gen_without_resp_draw( stream_en:stream_en, id_add_len_in:id_add_len_in, axi_wr_aux:axi_wr_aux) return return_stream end |
#_axi4_wr_auxiliary_gen_without_resp_draw(stream_en: "stream_en", id_add_len_in: "id_add_len_in", axi_wr_aux: "axi_wr_aux") ⇒ Object
35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 |
# File 'lib/tdl/axi4/axi4_wr_auxiliary_gen_without_resp_auto.rb', line 35 def _axi4_wr_auxiliary_gen_without_resp_draw( stream_en:"stream_en", id_add_len_in:"id_add_len_in", axi_wr_aux:"axi_wr_aux" ) large_name_len( stream_en, id_add_len_in, axi_wr_aux ) instance_name = "axi4_wr_auxiliary_gen_without_resp_#{signal}_inst" " // FilePath:::../../axi/AXI4/axi4_wr_auxiliary_gen_without_resp.sv axi4_wr_auxiliary_gen_without_resp #{instance_name}( /* output */ .stream_en (#{align_signal(stream_en,q_mark=false)}), /* axi_stream_inf.slaver */ .id_add_len_in (#{align_signal(id_add_len_in,q_mark=false)}), /* axi_inf.master_wr_aux_no_resp*/ .axi_wr_aux (#{align_signal(axi_wr_aux,q_mark=false)}) ); " end |
#_axi_stream_interconnect_m2s(num: 8, nsize: "NUM <= 2? 1 :", addr: "addr", s00: "s00", m00: "m00") ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
# File 'lib/tdl/axi_stream/axi_stream_interconnect_M2S.rb', line 9 def _axi_stream_interconnect_m2s( num:8, addr:"addr", s00:"s00", m00:"m00" ) num = dimension_num(s00) Tdl.add_to_all_file_paths('axi_stream_interconnect_m2s','../../axi/AXI_stream/axi_stream_interconnect_M2S.sv') # GlobalParam.CurrTdlModule.add_to_all_file_paths(['axi_stream_interconnect_m2s','../../axi/AXI_stream/axi_stream_interconnect_M2S.sv']) return_stream = self s00 = AxiStream.same_name_socket(:from_up,mix=false,s00) unless s00.is_a? String m00 = AxiStream.same_name_socket(:to_down,mix=true,m00) unless m00.is_a? String belong_to_module.AxiStream_draw << _axi_stream_interconnect_m2s_draw( num:num, addr:addr, s00:s00, m00:m00) return return_stream end |
#_axi_stream_interconnect_s2m(num: 8, addr: "addr", s00: "s00", m00: "m00") ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
# File 'lib/tdl/axi_stream/axi_stream_interconnect_S2M.rb', line 9 def _axi_stream_interconnect_s2m( num:8, addr:"addr", s00:"s00", m00:"m00" ) num = dimension_num(m00) Tdl.add_to_all_file_paths('axi_stream_interconnect_s2m','../../axi/AXI_stream/axi_stream_interconnect_S2M.sv') # GlobalParam.CurrTdlModule.add_to_all_file_paths(['axi_stream_interconnect_s2m','../../axi/AXI_stream/axi_stream_interconnect_S2M.sv']) return_stream = self s00 = AxiStream.same_name_socket(:from_up,mix=true,s00) unless s00.is_a? String m00 = AxiStream.same_name_socket(:to_down,mix=false,m00) unless m00.is_a? String belong_to_module.AxiStream_draw << _axi_stream_interconnect_s2m_draw( num:num, addr:addr, s00:s00, m00:m00) return return_stream end |
#_axi_stream_interconnect_s2m_auto(head_dummy: 4, num: 4, slaver: "slaver", sub_tx_inf: "sub_tx_inf", up_stream: nil) ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 |
# File 'lib/tdl/axi_stream/axi_stream_interconnect_S2M_auto_auto.rb', line 9 def _axi_stream_interconnect_s2m_auto( head_dummy:4, num:4, slaver:"slaver", sub_tx_inf:"sub_tx_inf", up_stream:nil ) Tdl.add_to_all_file_paths('axi_stream_interconnect_s2m_auto','../../axi/AXI_stream/axi_stream_interconnect_S2M_auto.sv') # GlobalParam.CurrTdlModule.add_to_all_file_paths(['axi_stream_interconnect_s2m_auto','../../axi/AXI_stream/axi_stream_interconnect_S2M_auto.sv']) return_stream = self slaver = AxiStream.same_name_socket(:from_up,mix=true,slaver,nil,belong_to_module) unless slaver.is_a? String sub_tx_inf = AxiStream.same_name_socket(:to_down,mix=false,sub_tx_inf,nil,belong_to_module) unless sub_tx_inf.is_a? String slaver = up_stream if up_stream belong_to_module.AxiStream_draw << _axi_stream_interconnect_s2m_auto_draw( head_dummy:head_dummy, num:num, slaver:slaver, sub_tx_inf:sub_tx_inf, up_stream:up_stream) return return_stream end |
#_axi_stream_interconnect_s2m_draw(num: 8, addr: "addr", s00: "s00", m00: "m00") ⇒ Object
38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 |
# File 'lib/tdl/axi_stream/axi_stream_interconnect_S2M.rb', line 38 def _axi_stream_interconnect_s2m_draw( num:8, addr:"addr", s00:"s00", m00:"m00" ) large_name_len( num, addr, s00, m00 ) instance_name = "axi_stream_interconnect_S2M_#{signal}_inst" " // FilePath:::../../axi/AXI_stream/axi_stream_interconnect_S2M.sv axi_stream_interconnect_S2M#( .NUM (#{align_signal(num)}) ) #{instance_name}( /* input [NSIZE-1:0] */ .addr (#{align_signal(addr,q_mark=false)}), /* axi_stream_inf.slaver*/ .s00 (#{align_signal(s00,q_mark=false)}), /* axi_stream_inf.master*/ .m00 (#{align_signal(m00,q_mark=false)}) ); " end |
#_axi_stream_interconnect_s2m_with_keep(num: 8, nsize: "NUM <= 2? 1 :", addr: "addr", s00: "s00", m00: "m00") ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 |
# File 'lib/tdl/axi_stream/axi_stream_interconnect_S2M_with_keep.sv_auto.rb', line 9 def _axi_stream_interconnect_s2m_with_keep( num:8, nsize:"NUM <= 2? 1 :", addr:"addr", s00:"s00", m00:"m00" ) Tdl.add_to_all_file_paths('axi_stream_interconnect_s2m_with_keep','../../axi/AXI_stream/axi_stream_interconnect_S2M_with_keep.sv.bak') # GlobalParam.CurrTdlModule.add_to_all_file_paths(['axi_stream_interconnect_s2m_with_keep','../../axi/AXI_stream/axi_stream_interconnect_S2M_with_keep.sv.bak']) return_stream = self s00 = AxiStream.same_name_socket(:from_up,mix=true,s00,nil,belong_to_module) unless s00.is_a? String m00 = AxiStream.same_name_socket(:to_down,mix=false,m00,nil,belong_to_module) unless m00.is_a? String belong_to_module.AxiStream_draw << _axi_stream_interconnect_s2m_with_keep_draw( num:num, nsize:nsize, addr:addr, s00:s00, m00:m00) return return_stream end |
#_axi_stream_interconnect_s2m_with_keep_draw(num: 8, nsize: "NUM <= 2? 1 :", addr: "addr", s00: "s00", m00: "m00") ⇒ Object
39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 |
# File 'lib/tdl/axi_stream/axi_stream_interconnect_S2M_with_keep.sv_auto.rb', line 39 def _axi_stream_interconnect_s2m_with_keep_draw( num:8, nsize:"NUM <= 2? 1 :", addr:"addr", s00:"s00", m00:"m00" ) large_name_len( num, nsize, addr, s00, m00 ) instance_name = "axi_stream_interconnect_S2M_with_keep_#{signal}_inst" " // FilePath:::../../axi/AXI_stream/axi_stream_interconnect_S2M_with_keep.sv.bak axi_stream_interconnect_S2M_with_keep#( .NUM (#{align_signal(num)}), .NSIZE (#{align_signal(nsize)}) ) #{instance_name}( /* input [NSIZE-1:0] */ .addr (#{align_signal(addr,q_mark=false)}), /* axi_stream_inf.slaver*/ .s00 (#{align_signal(s00,q_mark=false)}), /* axi_stream_inf.master*/ .m00 (#{align_signal(m00,q_mark=false)}) ); " end |
#_axis_full_to_data_c(data_out_inf: "data_out_inf", axis_in: "axis_in") ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
# File 'lib/tdl/axi_stream/axis_full_to_data_c_auto.rb', line 9 def _axis_full_to_data_c( data_out_inf:"data_out_inf", axis_in:"axis_in" ) Tdl.add_to_all_file_paths('axis_full_to_data_c','../../axi/AXI_stream/axis_full_to_data_c.sv') # GlobalParam.CurrTdlModule.add_to_all_file_paths(['axis_full_to_data_c','../../axi/AXI_stream/axis_full_to_data_c.sv']) return_stream = self data_out_inf = DataInf_C.same_name_socket(:to_down,mix=true,data_out_inf,nil,belong_to_module) unless data_out_inf.is_a? String axis_in = AxiStream.same_name_socket(:from_up,mix=true,axis_in,nil,belong_to_module) unless axis_in.is_a? String belong_to_module.AxiStream_draw << _axis_full_to_data_c_draw( data_out_inf:data_out_inf, axis_in:axis_in) return return_stream end |
#_axis_link_trigger(mode: "STREAM", dsize: 32, data: "data", trigger_inf: "trigger_inf", mirror: "mirror") ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 |
# File 'lib/tdl/axi_stream/axis_link_trigger_auto.rb', line 9 def _axis_link_trigger( mode:"STREAM", dsize:32, data:"data", trigger_inf:"trigger_inf", mirror:"mirror" ) Tdl.add_to_all_file_paths('axis_link_trigger','../../axi/AXI_stream/axis_link_trigger.sv') # GlobalParam.CurrTdlModule.add_to_all_file_paths(['axis_link_trigger','../../axi/AXI_stream/axis_link_trigger.sv']) return_stream = self trigger_inf = DataInf_C.same_name_socket(:to_down,mix=true,trigger_inf,nil,belong_to_module) unless trigger_inf.is_a? String mirror = AxiStream.same_name_socket(:mirror,mix=true,mirror,nil,belong_to_module) unless mirror.is_a? String belong_to_module.AxiStream_draw << _axis_link_trigger_draw( mode:mode, dsize:dsize, data:data, trigger_inf:trigger_inf, mirror:mirror) return return_stream end |
#_axis_slaver_empty(slaver: "slaver", up_stream: nil) ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
# File 'lib/tdl/axi_stream/axis_slaver_empty_auto.rb', line 9 def _axis_slaver_empty( slaver:"slaver", up_stream:nil ) Tdl.add_to_all_file_paths('axis_slaver_empty','../../axi/AXI_stream/axis_slaver_empty.sv') # GlobalParam.CurrTdlModule.add_to_all_file_paths(['axis_slaver_empty','../../axi/AXI_stream/axis_slaver_empty.sv']) return_stream = self slaver = AxiStream.same_name_socket(:from_up,mix=true,slaver,nil,belong_to_module) unless slaver.is_a? String slaver = up_stream if up_stream belong_to_module.AxiStream_draw << _axis_slaver_empty_draw( slaver:slaver, up_stream:up_stream) return return_stream end |
#_axis_slaver_empty_draw(slaver: "slaver", up_stream: nil) ⇒ Object
32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 |
# File 'lib/tdl/axi_stream/axis_slaver_empty_auto.rb', line 32 def _axis_slaver_empty_draw( slaver:"slaver", up_stream:nil ) large_name_len( slaver ) instance_name = "axis_slaver_empty_#{signal}_inst" " // FilePath:::../../axi/AXI_stream/axis_slaver_empty.sv axis_slaver_empty #{instance_name}( /* axi_stream_inf.slaver*/ .slaver (#{align_signal(slaver,q_mark=false)}) ); " end |
#_axis_to_axi4_or_lite(lite: "lite", axis_in: "axis_in", rd_rel_axis: "rd_rel_axis", axi4: "axi4") ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 |
# File 'lib/tdl/axi_stream/axis_to_axi4_or_lite_auto.rb', line 9 def _axis_to_axi4_or_lite( lite:"lite", axis_in:"axis_in", rd_rel_axis:"rd_rel_axis", axi4:"axi4" ) Tdl.add_to_all_file_paths('axis_to_axi4_or_lite','../../axi/AXI_stream/axis_to_axi4_or_lite.sv') # GlobalParam.CurrTdlModule.add_to_all_file_paths(['axis_to_axi4_or_lite','../../axi/AXI_stream/axis_to_axi4_or_lite.sv']) return_stream = self lite = AxiLite.same_name_socket(:to_down,mix=true,lite,nil,belong_to_module) unless lite.is_a? String axis_in = AxiStream.same_name_socket(:from_up,mix=true,axis_in,nil,belong_to_module) unless axis_in.is_a? String rd_rel_axis = AxiStream.same_name_socket(:to_down,mix=true,rd_rel_axis,nil,belong_to_module) unless rd_rel_axis.is_a? String axi4 = Axi4.same_name_socket(:to_down,mix=true,axi4,nil,belong_to_module) unless axi4.is_a? String belong_to_module.AxiStream_draw << _axis_to_axi4_or_lite_draw( lite:lite, axis_in:axis_in, rd_rel_axis:rd_rel_axis, axi4:axi4) return return_stream end |
#_axis_to_axi4_wr(addr: "addr", max_length: "max_length", axis_in: "axis_in", axi_wr: "axi_wr") ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
# File 'lib/tdl/axi4/axis_to_axi4_wr_auto.rb', line 9 def _axis_to_axi4_wr( addr:"addr", max_length:"max_length", axis_in:"axis_in", axi_wr:"axi_wr" ) Tdl.add_to_all_file_paths('axis_to_axi4_wr','../../axi/AXI4/axis_to_axi4_wr.sv') # GlobalParam.CurrTdlModule.add_to_all_file_paths(['axis_to_axi4_wr','../../axi/AXI4/axis_to_axi4_wr.sv']) return_stream = self axis_in = AxiStream.same_name_socket(:from_up,mix=true,axis_in,nil,belong_to_module) unless axis_in.is_a? String axi_wr = Axi4.same_name_socket(:mirror,mix=true,axi_wr,nil,belong_to_module) unless axi_wr.is_a? String belong_to_module.AxiStream_draw << _axis_to_axi4_wr_draw( addr:addr, max_length:max_length, axis_in:axis_in, axi_wr:axi_wr) return return_stream end |
#_axis_to_axi4_wr_draw(addr: "addr", max_length: "max_length", axis_in: "axis_in", axi_wr: "axi_wr") ⇒ Object
37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 |
# File 'lib/tdl/axi4/axis_to_axi4_wr_auto.rb', line 37 def _axis_to_axi4_wr_draw( addr:"addr", max_length:"max_length", axis_in:"axis_in", axi_wr:"axi_wr" ) large_name_len( addr, max_length, axis_in, axi_wr ) instance_name = "axis_to_axi4_wr_#{signal}_inst" " // FilePath:::../../axi/AXI4/axis_to_axi4_wr.sv axis_to_axi4_wr #{instance_name}( /* input [31:0] */ .addr (#{align_signal(addr,q_mark=false)}), /* input [31:0] */ .max_length (#{align_signal(max_length,q_mark=false)}), /* axi_stream_inf.slaver*/ .axis_in (#{align_signal(axis_in,q_mark=false)}), /* axi_inf.master_wr */ .axi_wr (#{align_signal(axi_wr,q_mark=false)}) ); " end |
#_axis_to_data_inf(data_out_inf: "data_out_inf", axis_in: "axis_in") ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 |
# File 'lib/tdl/axi_stream/axis_to_data_inf_auto.rb', line 9 def _axis_to_data_inf( contain_last:"OFF", data_out_inf:"data_out_inf", axis_in:"axis_in" ) Tdl.add_to_all_file_paths('axis_to_data_inf','../../axi/AXI_stream/axis_to_data_inf.sv') # GlobalParam.CurrTdlModule.add_to_all_file_paths(['axis_to_data_inf','../../axi/AXI_stream/axis_to_data_inf.sv']) return_stream = self data_out_inf = DataInf_C.same_name_socket(:to_down,mix=true,data_out_inf,nil,belong_to_module) unless data_out_inf.is_a? String axis_in = AxiStream.same_name_socket(:from_up,mix=true,axis_in,nil,belong_to_module) unless axis_in.is_a? String belong_to_module.AxiStream_draw << _axis_to_data_inf_draw( contain_last:contain_last, data_out_inf:data_out_inf, axis_in:axis_in) return return_stream end |
#_axis_to_data_inf_draw(data_out_inf: "data_out_inf", axis_in: "axis_in") ⇒ Object
35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 |
# File 'lib/tdl/axi_stream/axis_to_data_inf_auto.rb', line 35 def _axis_to_data_inf_draw( contain_last:"OFF", data_out_inf:"data_out_inf", axis_in:"axis_in" ) large_name_len( contain_last, data_out_inf, axis_in ) instance_name = "axis_to_data_inf_#{signal}_inst" " // FilePath:::../../axi/AXI_stream/axis_to_data_inf.sv axis_to_data_inf#( .CONTAIN_LAST (#{align_signal(contain_last)}) ) #{instance_name}( /* data_inf_c.master */ .data_out_inf (#{align_signal(data_out_inf,q_mark=false)}), /* axi_stream_inf.slaver*/ .axis_in (#{align_signal(axis_in,q_mark=false)}) ); " end |
#_axis_to_lite_rd(dummy: 8, lite: "lite", axis_in: "axis_in", rd_rel_axis: "rd_rel_axis") ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
# File 'lib/tdl/axi_stream/axis_to_lite_rd_auto.rb', line 9 def _axis_to_lite_rd( dummy:8, lite:"lite", axis_in:"axis_in", rd_rel_axis:"rd_rel_axis" ) Tdl.add_to_all_file_paths('axis_to_lite_rd','../../axi/AXI_stream/axis_to_lite_rd.sv') # GlobalParam.CurrTdlModule.add_to_all_file_paths(['axis_to_lite_rd','../../axi/AXI_stream/axis_to_lite_rd.sv']) return_stream = self lite = AxiLite.same_name_socket(:mirror,mix=true,lite,nil,belong_to_module) unless lite.is_a? String axis_in = AxiStream.same_name_socket(:from_up,mix=true,axis_in,nil,belong_to_module) unless axis_in.is_a? String rd_rel_axis = AxiStream.same_name_socket(:to_down,mix=true,rd_rel_axis,nil,belong_to_module) unless rd_rel_axis.is_a? String belong_to_module.AxiStream_draw << _axis_to_lite_rd_draw( dummy:dummy, lite:lite, axis_in:axis_in, rd_rel_axis:rd_rel_axis) return return_stream end |
#_axis_to_lite_wr(dummy: 8, lite: "lite", axis_in: "axis_in") ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 |
# File 'lib/tdl/axi_stream/axis_to_lite_wr_auto.rb', line 9 def _axis_to_lite_wr( dummy:8, lite:"lite", axis_in:"axis_in" ) Tdl.add_to_all_file_paths('axis_to_lite_wr','../../axi/AXI_stream/axis_to_lite_wr.sv') # GlobalParam.CurrTdlModule.add_to_all_file_paths(['axis_to_lite_wr','../../axi/AXI_stream/axis_to_lite_wr.sv']) return_stream = self lite = AxiLite.same_name_socket(:mirror,mix=true,lite,nil,belong_to_module) unless lite.is_a? String axis_in = AxiStream.same_name_socket(:from_up,mix=true,axis_in,nil,belong_to_module) unless axis_in.is_a? String belong_to_module.AxiStream_draw << _axis_to_lite_wr_draw( dummy:dummy, lite:lite, axis_in:axis_in) return return_stream end |
#_axis_uncompress(asize: 8, lsize: 8, axis_zip: "axis_zip", axis_unzip: "axis_unzip") ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
# File 'lib/tdl/axi_stream/axis_uncompress_auto.rb', line 9 def _axis_uncompress( asize:8, lsize:8, axis_zip:"axis_zip", axis_unzip:"axis_unzip" ) Tdl.add_to_all_file_paths('axis_uncompress','../../axi/AXI_stream/axis_uncompress.sv') # GlobalParam.CurrTdlModule.add_to_all_file_paths(['axis_uncompress','../../axi/AXI_stream/axis_uncompress.sv']) return_stream = self axis_zip = AxiStream.same_name_socket(:from_up,mix=true,axis_zip,nil,belong_to_module) unless axis_zip.is_a? String axis_unzip = AxiStream.same_name_socket(:to_down,mix=true,axis_unzip,nil,belong_to_module) unless axis_unzip.is_a? String belong_to_module.AxiStream_draw << _axis_uncompress_draw( asize:asize, lsize:lsize, axis_zip:axis_zip, axis_unzip:axis_unzip) return return_stream end |
#_axis_uncompress_draw(asize: 8, lsize: 8, axis_zip: "axis_zip", axis_unzip: "axis_unzip") ⇒ Object
37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 |
# File 'lib/tdl/axi_stream/axis_uncompress_auto.rb', line 37 def _axis_uncompress_draw( asize:8, lsize:8, axis_zip:"axis_zip", axis_unzip:"axis_unzip" ) large_name_len( asize, lsize, axis_zip, axis_unzip ) instance_name = "axis_uncompress_#{signal}_inst" " // FilePath:::../../axi/AXI_stream/axis_uncompress.sv axis_uncompress#( .ASIZE (#{align_signal(asize)}), .LSIZE (#{align_signal(lsize)}) ) #{instance_name}( /* axi_stream_inf.slaver*/ .axis_zip (#{align_signal(axis_zip,q_mark=false)}), /* axi_stream_inf.master*/ .axis_unzip (#{align_signal(axis_unzip,q_mark=false)}) ); " end |
#_check_stream_crc(axis_in: "axis_in") ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
# File 'lib/tdl/axi_stream/check_stream_crc_auto.rb', line 9 def _check_stream_crc( axis_in:"axis_in" ) Tdl.add_to_all_file_paths('check_stream_crc','../../axi/AXI_stream/check_stream_crc.sv') # GlobalParam.CurrTdlModule.add_to_all_file_paths(['check_stream_crc','../../axi/AXI_stream/check_stream_crc.sv']) return_stream = self axis_in = AxiStream.same_name_socket(:mirror,mix=true,axis_in,nil,belong_to_module) unless axis_in.is_a? String belong_to_module.AxiStream_draw << _check_stream_crc_draw( axis_in:axis_in) return return_stream end |
#_check_stream_crc_draw(axis_in: "axis_in") ⇒ Object
30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 |
# File 'lib/tdl/axi_stream/check_stream_crc_auto.rb', line 30 def _check_stream_crc_draw( axis_in:"axis_in" ) large_name_len( axis_in ) instance_name = "check_stream_crc_#{signal}_inst" " // FilePath:::../../axi/AXI_stream/check_stream_crc.sv check_stream_crc #{instance_name}( /* axi_stream_inf.mirror*/ .axis_in (#{align_signal(axis_in,q_mark=false)}) ); " end |
#_data_c_to_axis_full(data_in_inf: "data_in_inf", axis_out: "axis_out") ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
# File 'lib/tdl/axi_stream/data_c_to_axis_full_auto.rb', line 9 def _data_c_to_axis_full( data_in_inf:"data_in_inf", axis_out:"axis_out" ) Tdl.add_to_all_file_paths('data_c_to_axis_full','../../axi/AXI_stream/data_c_to_axis_full.sv') # GlobalParam.CurrTdlModule.add_to_all_file_paths(['data_c_to_axis_full','../../axi/AXI_stream/data_c_to_axis_full.sv']) return_stream = self data_in_inf = DataInf_C.same_name_socket(:from_up,mix=true,data_in_inf,nil,belong_to_module) unless data_in_inf.is_a? String axis_out = AxiStream.same_name_socket(:to_down,mix=true,axis_out,nil,belong_to_module) unless axis_out.is_a? String belong_to_module.AxiStream_draw << _data_c_to_axis_full_draw( data_in_inf:data_in_inf, axis_out:axis_out) return return_stream end |
#_data_to_axis_inf(mark_curr_data: "mark_curr_data", last_flag: "last_flag", data_slaver: "data_slaver", axis_master: "axis_master") ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
# File 'lib/tdl/axi_stream/data_to_axis_inf_auto.rb', line 9 def _data_to_axis_inf( mark_curr_data:"mark_curr_data", last_flag:"last_flag", data_slaver:"data_slaver", axis_master:"axis_master" ) Tdl.add_to_all_file_paths('data_to_axis_inf','../../axi/AXI_stream/data_to_axis_inf.sv') # GlobalParam.CurrTdlModule.add_to_all_file_paths(['data_to_axis_inf','../../axi/AXI_stream/data_to_axis_inf.sv']) return_stream = self data_slaver = DataInf_C.same_name_socket(:from_up,mix=true,data_slaver,nil,belong_to_module) unless data_slaver.is_a? String axis_master = AxiStream.same_name_socket(:to_down,mix=true,axis_master,nil,belong_to_module) unless axis_master.is_a? String belong_to_module.AxiStream_draw << _data_to_axis_inf_draw( mark_curr_data:mark_curr_data, last_flag:last_flag, data_slaver:data_slaver, axis_master:axis_master) return return_stream end |
#_data_to_axis_inf_a1(last_flag: "last_flag", data_slaver: "data_slaver", axis_master: "axis_master") ⇒ Object
9 10 11 12 13 14 15 16 |
# File 'lib/tdl/axi_stream/bak/data_to_axis_inf_A1.rb', line 9 def _data_to_axis_inf_a1(last_flag:"last_flag",data_slaver:"data_slaver",axis_master:"axis_master") $_draw = lambda { _data_to_axis_inf_a1_draw(last_flag:last_flag,data_slaver:data_slaver,axis_master:axis_master) } @correlation_proc += $_draw.call return self end |
#_data_to_axis_inf_a1_draw(last_flag: "last_flag", data_slaver: "data_slaver", axis_master: "axis_master") ⇒ Object
18 19 20 21 22 23 24 25 26 27 |
# File 'lib/tdl/axi_stream/bak/data_to_axis_inf_A1.rb', line 18 def _data_to_axis_inf_a1_draw(last_flag:"last_flag",data_slaver:"data_slaver",axis_master:"axis_master") large_name_len(last_flag,data_slaver,axis_master) " data_to_axis_inf_A1 data_to_axis_inf_a1_#{signal}_inst( /* input */ .last_flag (#{align_signal(last_flag,q_mark=false)}), /* data_inf_c.slaver */ .data_slaver (#{align_signal(data_slaver,q_mark=false)}), /* axi_stream_inf.master*/ .axis_master (#{align_signal(axis_master,q_mark=false)}) ); " end |
#_data_to_axis_inf_draw(mark_curr_data: "mark_curr_data", last_flag: "last_flag", data_slaver: "data_slaver", axis_master: "axis_master") ⇒ Object
37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 |
# File 'lib/tdl/axi_stream/data_to_axis_inf_auto.rb', line 37 def _data_to_axis_inf_draw( mark_curr_data:"mark_curr_data", last_flag:"last_flag", data_slaver:"data_slaver", axis_master:"axis_master" ) large_name_len( mark_curr_data, last_flag, data_slaver, axis_master ) instance_name = "data_to_axis_inf_#{signal}_inst" " // FilePath:::../../axi/AXI_stream/data_to_axis_inf.sv data_to_axis_inf #{instance_name}( /* input */ .mark_curr_data (#{align_signal(mark_curr_data,q_mark=false)}), /* input */ .last_flag (#{align_signal(last_flag,q_mark=false)}), /* data_inf_c.slaver */ .data_slaver (#{align_signal(data_slaver,q_mark=false)}), /* axi_stream_inf.master*/ .axis_master (#{align_signal(axis_master,q_mark=false)}) ); " end |
#_dynamic_port_cfg(udp_port: "udp_port", port_index: "port_index", valid: "valid", tap_ex_udp_ctrl_inf: "tap_ex_udp_ctrl_inf", tap_local_udp_ctrl_inf: "tap_local_udp_ctrl_inf", tap_broadcast_udp_inf: "tap_broadcast_udp_inf", send_inf: "send_inf") ⇒ Object
9 10 11 12 13 14 15 16 17 18 |
# File 'lib/tdl/axi_stream/bak/dynamic_port_cfg_auto.rb', line 9 def _dynamic_port_cfg(udp_port:"udp_port",port_index:"port_index",valid:"valid",tap_ex_udp_ctrl_inf:"tap_ex_udp_ctrl_inf",tap_local_udp_ctrl_inf:"tap_local_udp_ctrl_inf",tap_broadcast_udp_inf:"tap_broadcast_udp_inf",send_inf:"send_inf") return_stream = self $_draw = lambda { _dynamic_port_cfg_draw(udp_port:udp_port,port_index:port_index,valid:valid,tap_ex_udp_ctrl_inf:tap_ex_udp_ctrl_inf,tap_local_udp_ctrl_inf:tap_local_udp_ctrl_inf,tap_broadcast_udp_inf:tap_broadcast_udp_inf,send_inf:send_inf) } @correlation_proc += $_draw.call return return_stream end |
#_dynamic_port_cfg_draw(udp_port: "udp_port", port_index: "port_index", valid: "valid", tap_ex_udp_ctrl_inf: "tap_ex_udp_ctrl_inf", tap_local_udp_ctrl_inf: "tap_local_udp_ctrl_inf", tap_broadcast_udp_inf: "tap_broadcast_udp_inf", send_inf: "send_inf") ⇒ Object
20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
# File 'lib/tdl/axi_stream/bak/dynamic_port_cfg_auto.rb', line 20 def _dynamic_port_cfg_draw(udp_port:"udp_port",port_index:"port_index",valid:"valid",tap_ex_udp_ctrl_inf:"tap_ex_udp_ctrl_inf",tap_local_udp_ctrl_inf:"tap_local_udp_ctrl_inf",tap_broadcast_udp_inf:"tap_broadcast_udp_inf",send_inf:"send_inf") large_name_len(udp_port,port_index,valid,tap_ex_udp_ctrl_inf,tap_local_udp_ctrl_inf,tap_broadcast_udp_inf,send_inf) " dynamic_port_cfg dynamic_port_cfg_#{signal}_inst( /* output [15:0] */ .udp_port (#{align_signal(udp_port,q_mark=false)}), /* output [7:0] */ .port_index (#{align_signal(port_index,q_mark=false)}), /* output */ .valid (#{align_signal(valid,q_mark=false)}), /* axi_stream_inf.mirror*/ .tap_ex_udp_ctrl_inf (#{align_signal(tap_ex_udp_ctrl_inf,q_mark=false)}), /* axi_stream_inf.mirror*/ .tap_local_udp_ctrl_inf (#{align_signal(tap_local_udp_ctrl_inf,q_mark=false)}), /* axi_stream_inf.mirror*/ .tap_broadcast_udp_inf (#{align_signal(tap_broadcast_udp_inf,q_mark=false)}), /* axi_stream_inf.master*/ .send_inf (#{align_signal(send_inf,q_mark=false)}) ); " end |
#_dynnamic_addr_cfg(server_ip: "server_ip", server_mac: "server_mac", tap_local_udp_ctrl_inf: "tap_local_udp_ctrl_inf", tap_broadcast_udp_inf: "tap_broadcast_udp_inf", send_inf: "send_inf") ⇒ Object
9 10 11 12 13 14 15 16 17 18 |
# File 'lib/tdl/axi_stream/bak/dynnamic_addr_cfg_auto.rb', line 9 def _dynnamic_addr_cfg(server_ip:"server_ip",server_mac:"server_mac",tap_local_udp_ctrl_inf:"tap_local_udp_ctrl_inf",tap_broadcast_udp_inf:"tap_broadcast_udp_inf",send_inf:"send_inf") return_stream = self $_draw = lambda { _dynnamic_addr_cfg_draw(server_ip:server_ip,server_mac:server_mac,tap_local_udp_ctrl_inf:tap_local_udp_ctrl_inf,tap_broadcast_udp_inf:tap_broadcast_udp_inf,send_inf:send_inf) } @correlation_proc += $_draw.call return return_stream end |
#_dynnamic_addr_cfg_draw(server_ip: "server_ip", server_mac: "server_mac", tap_local_udp_ctrl_inf: "tap_local_udp_ctrl_inf", tap_broadcast_udp_inf: "tap_broadcast_udp_inf", send_inf: "send_inf") ⇒ Object
20 21 22 23 24 25 26 27 28 29 30 31 |
# File 'lib/tdl/axi_stream/bak/dynnamic_addr_cfg_auto.rb', line 20 def _dynnamic_addr_cfg_draw(server_ip:"server_ip",server_mac:"server_mac",tap_local_udp_ctrl_inf:"tap_local_udp_ctrl_inf",tap_broadcast_udp_inf:"tap_broadcast_udp_inf",send_inf:"send_inf") large_name_len(server_ip,server_mac,tap_local_udp_ctrl_inf,tap_broadcast_udp_inf,send_inf) " dynnamic_addr_cfg dynnamic_addr_cfg_#{signal}_inst( /* output [31:0] */ .server_ip (#{align_signal(server_ip,q_mark=false)}), /* output [47:0] */ .server_mac (#{align_signal(server_mac,q_mark=false)}), /* axi_stream_inf.mirror*/ .tap_local_udp_ctrl_inf (#{align_signal(tap_local_udp_ctrl_inf,q_mark=false)}), /* axi_stream_inf.mirror*/ .tap_broadcast_udp_inf (#{align_signal(tap_broadcast_udp_inf,q_mark=false)}), /* axi_stream_inf.master*/ .send_inf (#{align_signal(send_inf,q_mark=false)}) ); " end |
#_stream_crc(crc: "crc", axis_in: "axis_in") ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
# File 'lib/tdl/axi_stream/stream_crc_auto.rb', line 9 def _stream_crc( crc:"crc", axis_in:"axis_in" ) Tdl.add_to_all_file_paths('stream_crc','../../axi/AXI_stream/stream_crc.sv') # GlobalParam.CurrTdlModule.add_to_all_file_paths(['stream_crc','../../axi/AXI_stream/stream_crc.sv']) return_stream = self axis_in = AxiStream.same_name_socket(:mirror,mix=true,axis_in,nil,belong_to_module) unless axis_in.is_a? String belong_to_module.AxiStream_draw << _stream_crc_draw( crc:crc, axis_in:axis_in) return return_stream end |
#_stream_crc_draw(crc: "crc", axis_in: "axis_in") ⇒ Object
32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 |
# File 'lib/tdl/axi_stream/stream_crc_auto.rb', line 32 def _stream_crc_draw( crc:"crc", axis_in:"axis_in" ) large_name_len( crc, axis_in ) instance_name = "stream_crc_#{signal}_inst" " // FilePath:::../../axi/AXI_stream/stream_crc.sv stream_crc #{instance_name}( /* output [31:0] */ .crc (#{align_signal(crc,q_mark=false)}), /* axi_stream_inf.mirror*/ .axis_in (#{align_signal(axis_in,q_mark=false)}) ); " end |
#_udp_server_bfm(tx_udp_inf: "tx_udp_inf", rx_udp_inf: "rx_udp_inf") ⇒ Object
9 10 11 12 13 14 15 16 17 18 |
# File 'lib/tdl/axi_stream/bak/udp_server_bfm_auto.rb', line 9 def _udp_server_bfm(tx_udp_inf:"tx_udp_inf",rx_udp_inf:"rx_udp_inf") return_stream = self $_draw = lambda { _udp_server_bfm_draw(tx_udp_inf:tx_udp_inf,rx_udp_inf:rx_udp_inf) } @correlation_proc += $_draw.call return return_stream end |
#_udp_server_bfm_draw(tx_udp_inf: "tx_udp_inf", rx_udp_inf: "rx_udp_inf") ⇒ Object
20 21 22 23 24 25 26 27 28 |
# File 'lib/tdl/axi_stream/bak/udp_server_bfm_auto.rb', line 20 def _udp_server_bfm_draw(tx_udp_inf:"tx_udp_inf",rx_udp_inf:"rx_udp_inf") large_name_len(tx_udp_inf,rx_udp_inf) " udp_server_bfm udp_server_bfm_#{signal}_inst( /* axi_stream_inf.master*/ .tx_udp_inf (#{align_signal(tx_udp_inf,q_mark=false)}), /* axi_stream_inf.slaver*/ .rx_udp_inf (#{align_signal(rx_udp_inf,q_mark=false)}) ); " end |
#_udp_server_ctrl_bfm(tx_udp_inf: "tx_udp_inf", rx_udp_inf: "rx_udp_inf") ⇒ Object
9 10 11 12 13 14 15 16 17 18 |
# File 'lib/tdl/axi_stream/bak/udp_server_ctrl_bfm_auto.rb', line 9 def _udp_server_ctrl_bfm(tx_udp_inf:"tx_udp_inf",rx_udp_inf:"rx_udp_inf") return_stream = self $_draw = lambda { _udp_server_ctrl_bfm_draw(tx_udp_inf:tx_udp_inf,rx_udp_inf:rx_udp_inf) } @correlation_proc += $_draw.call return return_stream end |
#_udp_server_ctrl_bfm_draw(tx_udp_inf: "tx_udp_inf", rx_udp_inf: "rx_udp_inf") ⇒ Object
20 21 22 23 24 25 26 27 28 |
# File 'lib/tdl/axi_stream/bak/udp_server_ctrl_bfm_auto.rb', line 20 def _udp_server_ctrl_bfm_draw(tx_udp_inf:"tx_udp_inf",rx_udp_inf:"rx_udp_inf") large_name_len(tx_udp_inf,rx_udp_inf) " udp_server_ctrl_bfm udp_server_ctrl_bfm_#{signal}_inst( /* axi_stream_inf.master*/ .tx_udp_inf (#{align_signal(tx_udp_inf,q_mark=false)}), /* axi_stream_inf.slaver*/ .rx_udp_inf (#{align_signal(rx_udp_inf,q_mark=false)}) ); " end |
#_wide_axis_to_axi4_wr(addr: "addr", max_length: "max_length", axis_in: "axis_in", axi_wr: "axi_wr") ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
# File 'lib/tdl/axi4/wide_axis_to_axi4_wr.rb', line 9 def _wide_axis_to_axi4_wr( addr:"addr", max_length:"max_length", axis_in:"axis_in", axi_wr:"axi_wr" ) # Tdl.add_to_all_file_paths('wide_axis_to_axi4_wr','../../axi/AXI4/wide_axis_to_axi4_wr.sv') # GlobalParam.CurrTdlModule.add_to_all_file_paths(['wide_axis_to_axi4_wr','../../axi/AXI4/wide_axis_to_axi4_wr.sv']) return_stream = self axis_in = AxiStream.same_name_socket(:from_up,mix=true,axis_in,nil,belong_to_module) unless axis_in.is_a? String axi_wr = Axi4.same_name_socket(:mirror,mix=true,axi_wr,nil,belong_to_module) unless axi_wr.is_a? String belong_to_module.AxiStream_draw << _wide_axis_to_axi4_wr_draw( addr:addr, max_length:max_length, axis_in:axis_in, axi_wr:axi_wr) return return_stream end |
#aclk(n = 0) ⇒ Object
<tdl_key><hdl_key><default_freqM>
9 10 11 12 13 14 15 16 17 18 19 |
# File 'lib/tdl/rebuild_ele/axi_stream.rb', line 9 def aclk(n=0) if @clock.is_a? Clock @clock else if dimension.empty? NqString.new(signal.concat ".aclk") else NqString.new(signal(n).concat ".aclk") end end end |
#all_bits_slice(start: 8*4, length: 32) ⇒ Object
截取流数据段
26 27 28 |
# File 'lib/tdl/exlib/axis_eth_ex.rb', line 26 def all_bits_slice(start: 8*4,length:32) return AxiTdl::EthernetStreamDefAtom.new(belong_to_module: @belong_to_module, stream: self, start: start, length: length) end |
#aresetn(n = 0) ⇒ Object
541 542 543 544 545 546 547 548 549 550 551 |
# File 'lib/tdl/elements/axi_stream.rb', line 541 def aresetn(n=0) if @reset.is_a? Reset @reset else if dimension.empty? NqString.new(signal.concat ".aresetn") else NqString.new(signal(n).concat ".aresetn") end end end |
#array_chain_vld_rdy_inst(pre_str) ⇒ Object
46 47 48 |
# File 'lib/tdl/rebuild_ele/axi_stream.rb', line 46 def array_chain_vld_rdy_inst(pre_str) "(#{pre_str}.axis_tvalid && #{pre_str}.axis_tready )".to_nq end |
#array_chain_vld_rdy_last_inst(pre_str) ⇒ Object
54 55 56 |
# File 'lib/tdl/rebuild_ele/axi_stream.rb', line 54 def array_chain_vld_rdy_last_inst(pre_str) "(#{pre_str}.axis_tvalid && #{pre_str}.axis_tready && #{pre_str}.axis_tlast)".to_nq end |
#axi_stream_cache(axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 |
# File 'lib/tdl/axi_stream/axi_stream_cache_auto.rb', line 9 def axi_stream_cache( axis_in:"axis_in", axis_out:"axis_out", up_stream:nil, down_stream:nil ) Tdl.add_to_all_file_paths('axi_stream_cache','../../axi/AXI_stream/stream_cache/axi_stream_cache.sv') # GlobalParam.CurrTdlModule.add_to_all_file_paths(['axi_stream_cache','../../axi/AXI_stream/stream_cache/axi_stream_cache.sv']) return_stream = self axis_in = AxiStream.same_name_socket(:from_up,mix=true,axis_in,nil,belong_to_module) unless axis_in.is_a? String axis_out = AxiStream.same_name_socket(:to_down,mix=true,axis_out,nil,belong_to_module) unless axis_out.is_a? String if up_stream.nil? && axis_in.eql?("axis_in") && (!(axis_out.eql?("axis_out")) || !down_stream.nil?) # up_stream = self.copy(name:"axis_in") # return_stream = up_stream axis_out = down_stream if down_stream return down_stream.axi_stream_cache(axis_in:self) end axis_in = up_stream if up_stream unless self.eql? belong_to_module.AxiStream_NC axis_out = self else if down_stream axis_out = down_stream end end belong_to_module.AxiStream_draw << axi_stream_cache_draw( axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) return return_stream end |
#axi_stream_cache_35bit(axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 |
# File 'lib/tdl/axi_stream/axi_stream_cache_35bit_auto.rb', line 9 def axi_stream_cache_35bit( axis_in:"axis_in", axis_out:"axis_out", up_stream:nil, down_stream:nil ) Tdl.add_to_all_file_paths('axi_stream_cache_35bit','../../axi/AXI_stream/stream_cache/axi_stream_cache_35bit.sv') # GlobalParam.CurrTdlModule.add_to_all_file_paths(['axi_stream_cache_35bit','../../axi/AXI_stream/stream_cache/axi_stream_cache_35bit.sv']) return_stream = self axis_in = AxiStream.same_name_socket(:from_up,mix=true,axis_in,nil,belong_to_module) unless axis_in.is_a? String axis_out = AxiStream.same_name_socket(:to_down,mix=true,axis_out,nil,belong_to_module) unless axis_out.is_a? String if up_stream.nil? && axis_in.eql?("axis_in") && (!(axis_out.eql?("axis_out")) || !down_stream.nil?) # up_stream = self.copy(name:"axis_in") # return_stream = up_stream axis_out = down_stream if down_stream return down_stream.axi_stream_cache_35bit(axis_in:self) end axis_in = up_stream if up_stream unless self.eql? belong_to_module.AxiStream_NC axis_out = self else if down_stream axis_out = down_stream end end belong_to_module.AxiStream_draw << axi_stream_cache_35bit_draw( axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) return return_stream end |
#axi_stream_cache_35bit_draw(axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 |
# File 'lib/tdl/axi_stream/axi_stream_cache_35bit_auto.rb', line 50 def axi_stream_cache_35bit_draw( axis_in:"axis_in", axis_out:"axis_out", up_stream:nil, down_stream:nil ) large_name_len( axis_in, axis_out ) instance_name = "axi_stream_cache_35bit_#{signal}_inst" " // FilePath:::../../axi/AXI_stream/stream_cache/axi_stream_cache_35bit.sv axi_stream_cache_35bit #{instance_name}( /* axi_stream_inf.slaver*/ .axis_in (#{align_signal(axis_in,q_mark=false)}), /* axi_stream_inf.master*/ .axis_out (#{align_signal(axis_out,q_mark=false)}) ); " end |
#axi_stream_cache_72_95bit_with_keep(axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 |
# File 'lib/tdl/axi_stream/axi_stream_cache_72_95bit_with_keep_auto.rb', line 9 def axi_stream_cache_72_95bit_with_keep( axis_in:"axis_in", axis_out:"axis_out", up_stream:nil, down_stream:nil ) Tdl.add_to_all_file_paths('axi_stream_cache_72_95bit_with_keep','../../axi/AXI_stream/stream_cache/axi_stream_cache_72_95bit_with_keep.sv') # GlobalParam.CurrTdlModule.add_to_all_file_paths(['axi_stream_cache_72_95bit_with_keep','../../axi/AXI_stream/stream_cache/axi_stream_cache_72_95bit_with_keep.sv']) return_stream = self axis_in = AxiStream.same_name_socket(:from_up,mix=true,axis_in,nil,belong_to_module) unless axis_in.is_a? String axis_out = AxiStream.same_name_socket(:to_down,mix=true,axis_out,nil,belong_to_module) unless axis_out.is_a? String if up_stream.nil? && axis_in.eql?("axis_in") && (!(axis_out.eql?("axis_out")) || !down_stream.nil?) # up_stream = self.copy(name:"axis_in") # return_stream = up_stream axis_out = down_stream if down_stream return down_stream.axi_stream_cache_72_95bit_with_keep(axis_in:self) end axis_in = up_stream if up_stream unless self.eql? belong_to_module.AxiStream_NC axis_out = self else if down_stream axis_out = down_stream end end belong_to_module.AxiStream_draw << axi_stream_cache_72_95bit_with_keep_draw( axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) return return_stream end |
#axi_stream_cache_72_95bit_with_keep_draw(axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 |
# File 'lib/tdl/axi_stream/axi_stream_cache_72_95bit_with_keep_auto.rb', line 50 def axi_stream_cache_72_95bit_with_keep_draw( axis_in:"axis_in", axis_out:"axis_out", up_stream:nil, down_stream:nil ) large_name_len( axis_in, axis_out ) instance_name = "axi_stream_cache_72_95bit_with_keep_#{signal}_inst" " // FilePath:::../../axi/AXI_stream/stream_cache/axi_stream_cache_72_95bit_with_keep.sv axi_stream_cache_72_95bit_with_keep #{instance_name}( /* axi_stream_inf.slaver*/ .axis_in (#{align_signal(axis_in,q_mark=false)}), /* axi_stream_inf.master*/ .axis_out (#{align_signal(axis_out,q_mark=false)}) ); " end |
#axi_stream_cache_b1(axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 |
# File 'lib/tdl/axi_stream/axi_stream_cache_B1_auto.rb', line 9 def axi_stream_cache_b1( axis_in:"axis_in", axis_out:"axis_out", up_stream:nil, down_stream:nil ) Tdl.add_to_all_file_paths('axi_stream_cache_b1','../../axi/AXI_stream/stream_cache/axi_stream_cache_B1.sv') # GlobalParam.CurrTdlModule.add_to_all_file_paths(['axi_stream_cache_b1','../../axi/AXI_stream/stream_cache/axi_stream_cache_B1.sv']) return_stream = self axis_in = AxiStream.same_name_socket(:from_up,mix=true,axis_in,nil,belong_to_module) unless axis_in.is_a? String axis_out = AxiStream.same_name_socket(:to_down,mix=true,axis_out,nil,belong_to_module) unless axis_out.is_a? String if up_stream.nil? && axis_in.eql?("axis_in") && (!(axis_out.eql?("axis_out")) || !down_stream.nil?) # up_stream = self.copy(name:"axis_in") # return_stream = up_stream axis_out = down_stream if down_stream return down_stream.axi_stream_cache_b1(axis_in:self) end axis_in = up_stream if up_stream unless self.eql? belong_to_module.AxiStream_NC axis_out = self else if down_stream axis_out = down_stream end end belong_to_module.AxiStream_draw << axi_stream_cache_b1_draw( axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) return return_stream end |
#axi_stream_cache_b1_draw(axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 |
# File 'lib/tdl/axi_stream/axi_stream_cache_B1_auto.rb', line 50 def axi_stream_cache_b1_draw( axis_in:"axis_in", axis_out:"axis_out", up_stream:nil, down_stream:nil ) large_name_len( axis_in, axis_out ) instance_name = "axi_stream_cache_B1_#{signal}_inst" " // FilePath:::../../axi/AXI_stream/stream_cache/axi_stream_cache_B1.sv axi_stream_cache_B1 #{instance_name}( /* axi_stream_inf.slaver*/ .axis_in (#{align_signal(axis_in,q_mark=false)}), /* axi_stream_inf.master*/ .axis_out (#{align_signal(axis_out,q_mark=false)}) ); " end |
#axi_stream_cache_draw(axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 |
# File 'lib/tdl/axi_stream/axi_stream_cache_auto.rb', line 50 def axi_stream_cache_draw( axis_in:"axis_in", axis_out:"axis_out", up_stream:nil, down_stream:nil ) large_name_len( axis_in, axis_out ) instance_name = "axi_stream_cache_#{signal}_inst" " // FilePath:::../../axi/AXI_stream/stream_cache/axi_stream_cache.sv axi_stream_cache #{instance_name}( /* axi_stream_inf.slaver*/ .axis_in (#{align_signal(axis_in,q_mark=false)}), /* axi_stream_inf.master*/ .axis_out (#{align_signal(axis_out,q_mark=false)}) ); " end |
#axi_stream_cache_mirror(axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 |
# File 'lib/tdl/axi_stream/axi_stream_cache_mirror_auto.rb', line 9 def axi_stream_cache_mirror( axis_in:"axis_in", axis_out:"axis_out", up_stream:nil, down_stream:nil ) Tdl.add_to_all_file_paths('axi_stream_cache_mirror','../../axi/AXI_stream/stream_cache/axi_stream_cache_mirror.sv') # GlobalParam.CurrTdlModule.add_to_all_file_paths(['axi_stream_cache_mirror','../../axi/AXI_stream/stream_cache/axi_stream_cache_mirror.sv']) return_stream = self axis_in = AxiStream.same_name_socket(:mirror,mix=true,axis_in,nil,belong_to_module) unless axis_in.is_a? String axis_out = AxiStream.same_name_socket(:mirror,mix=true,axis_out,nil,belong_to_module) unless axis_out.is_a? String if up_stream.nil? && axis_in.eql?("axis_in") && (!(axis_out.eql?("axis_out")) || !down_stream.nil?) # up_stream = self.copy(name:"axis_in") # return_stream = up_stream axis_out = down_stream if down_stream return down_stream.axi_stream_cache_mirror(axis_in:self) end axis_in = up_stream if up_stream unless self.eql? belong_to_module.AxiStream_NC axis_out = self else if down_stream axis_out = down_stream end end belong_to_module.AxiStream_draw << axi_stream_cache_mirror_draw( axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) return return_stream end |
#axi_stream_cache_mirror_draw(axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 |
# File 'lib/tdl/axi_stream/axi_stream_cache_mirror_auto.rb', line 50 def axi_stream_cache_mirror_draw( axis_in:"axis_in", axis_out:"axis_out", up_stream:nil, down_stream:nil ) large_name_len( axis_in, axis_out ) instance_name = "axi_stream_cache_mirror_#{signal}_inst" " // FilePath:::../../axi/AXI_stream/stream_cache/axi_stream_cache_mirror.sv axi_stream_cache_mirror #{instance_name}( /* axi_stream_inf.mirror */ .axis_in (#{align_signal(axis_in,q_mark=false)}), /* axi_stream_inf.out_mirror*/ .axis_out (#{align_signal(axis_out,q_mark=false)}) ); " end |
#axi_stream_cache_verb(axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 |
# File 'lib/tdl/axi_stream/axi_stream_cache_verb_auto.rb', line 9 def axi_stream_cache_verb( axis_in:"axis_in", axis_out:"axis_out", up_stream:nil, down_stream:nil ) Tdl.add_to_all_file_paths('axi_stream_cache_verb','../../axi/AXI_stream/stream_cache/axi_stream_cache_verb.sv') # GlobalParam.CurrTdlModule.add_to_all_file_paths(['axi_stream_cache_verb','../../axi/AXI_stream/stream_cache/axi_stream_cache_verb.sv']) return_stream = self axis_in = AxiStream.same_name_socket(:from_up,mix=true,axis_in,nil,belong_to_module) unless axis_in.is_a? String axis_out = AxiStream.same_name_socket(:to_down,mix=true,axis_out,nil,belong_to_module) unless axis_out.is_a? String if up_stream.nil? && axis_in.eql?("axis_in") && (!(axis_out.eql?("axis_out")) || !down_stream.nil?) # up_stream = self.copy(name:"axis_in") # return_stream = up_stream axis_out = down_stream if down_stream return down_stream.axi_stream_cache_verb(axis_in:self) end axis_in = up_stream if up_stream unless self.eql? belong_to_module.AxiStream_NC axis_out = self else if down_stream axis_out = down_stream end end belong_to_module.AxiStream_draw << axi_stream_cache_verb_draw( axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) return return_stream end |
#axi_stream_cache_verb_draw(axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 |
# File 'lib/tdl/axi_stream/axi_stream_cache_verb_auto.rb', line 50 def axi_stream_cache_verb_draw( axis_in:"axis_in", axis_out:"axis_out", up_stream:nil, down_stream:nil ) large_name_len( axis_in, axis_out ) instance_name = "axi_stream_cache_verb_#{signal}_inst" " // FilePath:::../../axi/AXI_stream/stream_cache/axi_stream_cache_verb.sv axi_stream_cache_verb #{instance_name}( /* axi_stream_inf.slaver*/ .axis_in (#{align_signal(axis_in,q_mark=false)}), /* axi_stream_inf.master*/ .axis_out (#{align_signal(axis_out,q_mark=false)}) ); " end |
#axi_stream_interconnect_m2s_a1(num: 8, s00: "s00", m00: "m00", up_stream: nil, down_stream: nil) ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 |
# File 'lib/tdl/axi_stream/axi_stream_interconnect_M2S_A1.rb', line 9 def axi_stream_interconnect_m2s_a1( num:nil, s00:"s00", m00:"m00", up_stream:nil, down_stream:nil ) Tdl.add_to_all_file_paths('axi_stream_interconnect_m2s_a1','../../axi/AXI_stream/axi_stream_interconnect_M2S_A1.sv') # GlobalParam.CurrTdlModule.add_to_all_file_paths(['axi_stream_interconnect_m2s_a1','../../axi/AXI_stream/axi_stream_interconnect_M2S_A1.sv']) return_stream = self s00 = AxiStream.same_name_socket(:from_up,mix=false,s00,nil,belong_to_module) unless s00.is_a? String m00 = AxiStream.same_name_socket(:to_down,mix=true,m00,nil,belong_to_module) unless m00.is_a? String if up_stream.nil? && s00.eql?("s00") up_stream = self.copy(name:"s00") return_stream = up_stream end s00 = up_stream if up_stream m00 = self unless self==belong_to_module.AxiStream_NC num = dimension_num(s00) unless num belong_to_module.AxiStream_draw << axi_stream_interconnect_m2s_a1_draw( num:num, s00:s00, m00:m00, up_stream:up_stream, down_stream:down_stream) return return_stream end |
#axi_stream_interconnect_m2s_bind_tuser(num: 8, s00: "s00", m00: "m00", up_stream: nil, down_stream: nil) ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 |
# File 'lib/tdl/axi_stream/axi_stream_interconnect_M2S_bind_tuser_auto.rb', line 9 def axi_stream_interconnect_m2s_bind_tuser( num:8, s00:"s00", m00:"m00", up_stream:nil, down_stream:nil ) Tdl.add_to_all_file_paths('axi_stream_interconnect_m2s_bind_tuser','../../axi/AXI_stream/axi_stream_interconnect_M2S_bind_tuser.sv') # GlobalParam.CurrTdlModule.add_to_all_file_paths(['axi_stream_interconnect_m2s_bind_tuser','../../axi/AXI_stream/axi_stream_interconnect_M2S_bind_tuser.sv']) return_stream = self s00 = AxiStream.same_name_socket(:from_up,mix=false,s00,nil,belong_to_module) unless s00.is_a? String m00 = AxiStream.same_name_socket(:to_down,mix=true,m00,nil,belong_to_module) unless m00.is_a? String if up_stream.nil? && s00.eql?("s00") && (!(m00.eql?("m00")) || !down_stream.nil?) # up_stream = self.copy(name:"s00") # return_stream = up_stream m00 = down_stream if down_stream return down_stream.axi_stream_interconnect_m2s_bind_tuser(s00:self) end s00 = up_stream if up_stream unless self.eql? belong_to_module.AxiStream_NC m00 = self else if down_stream m00 = down_stream end end belong_to_module.AxiStream_draw << axi_stream_interconnect_m2s_bind_tuser_draw( num:num, s00:s00, m00:m00, up_stream:up_stream, down_stream:down_stream) return return_stream end |
#axi_stream_long_cache(depth: 8192, axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 |
# File 'lib/tdl/axi_stream/axi_stream_long_cache_auto.rb', line 9 def axi_stream_long_cache( depth:8192, axis_in:"axis_in", axis_out:"axis_out", up_stream:nil, down_stream:nil ) Tdl.add_to_all_file_paths('axi_stream_long_cache','../../axi/AXI_stream/stream_cache/axi_stream_long_cache.sv') # GlobalParam.CurrTdlModule.add_to_all_file_paths(['axi_stream_long_cache','../../axi/AXI_stream/stream_cache/axi_stream_long_cache.sv']) return_stream = self axis_in = AxiStream.same_name_socket(:from_up,mix=true,axis_in,nil,belong_to_module) unless axis_in.is_a? String axis_out = AxiStream.same_name_socket(:to_down,mix=true,axis_out,nil,belong_to_module) unless axis_out.is_a? String if up_stream.nil? && axis_in.eql?("axis_in") && (!(axis_out.eql?("axis_out")) || !down_stream.nil?) # up_stream = self.copy(name:"axis_in") # return_stream = up_stream axis_out = down_stream if down_stream return down_stream.axi_stream_long_cache(axis_in:self) end axis_in = up_stream if up_stream unless self.eql? belong_to_module.AxiStream_NC axis_out = self else if down_stream axis_out = down_stream end end belong_to_module.AxiStream_draw << axi_stream_long_cache_draw( depth:depth, axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) return return_stream end |
#axi_stream_long_fifo(depth: 2, byte_depth: 8192*2, axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 |
# File 'lib/tdl/axi_stream/axi_stream_long_fifo_auto.rb', line 9 def axi_stream_long_fifo( depth:2, byte_depth:8192*2, axis_in:"axis_in", axis_out:"axis_out", up_stream:nil, down_stream:nil ) Tdl.add_to_all_file_paths('axi_stream_long_fifo','../../axi/AXI_stream/packet_fifo/axi_stream_long_fifo.sv') # GlobalParam.CurrTdlModule.add_to_all_file_paths(['axi_stream_long_fifo','../../axi/AXI_stream/packet_fifo/axi_stream_long_fifo.sv']) return_stream = self axis_in = AxiStream.same_name_socket(:from_up,mix=true,axis_in,nil,belong_to_module) unless axis_in.is_a? String axis_out = AxiStream.same_name_socket(:to_down,mix=true,axis_out,nil,belong_to_module) unless axis_out.is_a? String if up_stream.nil? && axis_in.eql?("axis_in") && (!(axis_out.eql?("axis_out")) || !down_stream.nil?) # up_stream = self.copy(name:"axis_in") # return_stream = up_stream axis_out = down_stream if down_stream return down_stream.axi_stream_long_fifo(axis_in:self) end axis_in = up_stream if up_stream unless self.eql? belong_to_module.AxiStream_NC axis_out = self else if down_stream axis_out = down_stream end end belong_to_module.AxiStream_draw << axi_stream_long_fifo_draw( depth:depth, byte_depth:byte_depth, axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) return return_stream end |
#axi_stream_long_fifo_draw(depth: 2, byte_depth: 8192*2, axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 |
# File 'lib/tdl/axi_stream/axi_stream_long_fifo_auto.rb', line 54 def axi_stream_long_fifo_draw( depth:2, byte_depth:8192*2, axis_in:"axis_in", axis_out:"axis_out", up_stream:nil, down_stream:nil ) large_name_len( depth, byte_depth, axis_in, axis_out ) instance_name = "axi_stream_long_fifo_#{signal}_inst" " // FilePath:::../../axi/AXI_stream/packet_fifo/axi_stream_long_fifo.sv axi_stream_long_fifo#( .DEPTH (#{align_signal(depth)}), .BYTE_DEPTH (#{align_signal(byte_depth)}) ) #{instance_name}( /* axi_stream_inf.slaver*/ .axis_in (#{align_signal(axis_in,q_mark=false)}), /* axi_stream_inf.master*/ .axis_out (#{align_signal(axis_out,q_mark=false)}) ); " end |
#axi_stream_long_fifo_verb(depth: 2, byte_depth: 8192*2, axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 |
# File 'lib/tdl/axi_stream/axi_stream_long_fifo_verb_auto.rb', line 9 def axi_stream_long_fifo_verb( depth:2, byte_depth:8192*2, axis_in:"axis_in", axis_out:"axis_out", up_stream:nil, down_stream:nil ) Tdl.add_to_all_file_paths('axi_stream_long_fifo_verb','../../axi/AXI_stream/packet_fifo/axi_stream_long_fifo_verb.sv') # GlobalParam.CurrTdlModule.add_to_all_file_paths(['axi_stream_long_fifo_verb','../../axi/AXI_stream/packet_fifo/axi_stream_long_fifo_verb.sv']) return_stream = self axis_in = AxiStream.same_name_socket(:from_up,mix=true,axis_in,nil,belong_to_module) unless axis_in.is_a? String axis_out = AxiStream.same_name_socket(:to_down,mix=true,axis_out,nil,belong_to_module) unless axis_out.is_a? String if up_stream.nil? && axis_in.eql?("axis_in") && (!(axis_out.eql?("axis_out")) || !down_stream.nil?) # up_stream = self.copy(name:"axis_in") # return_stream = up_stream axis_out = down_stream if down_stream return down_stream.axi_stream_long_fifo_verb(axis_in:self) end axis_in = up_stream if up_stream unless self.eql? belong_to_module.AxiStream_NC axis_out = self else if down_stream axis_out = down_stream end end belong_to_module.AxiStream_draw << axi_stream_long_fifo_verb_draw( depth:depth, byte_depth:byte_depth, axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) return return_stream end |
#axi_stream_packet_fifo(depth: 2, axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 |
# File 'lib/tdl/axi_stream/axi_stream_packet_fifo_auto.rb', line 9 def axi_stream_packet_fifo( depth:2 , axis_in:"axis_in", axis_out:"axis_out", up_stream:nil, down_stream:nil ) Tdl.add_to_all_file_paths('axi_stream_packet_fifo','../../axi/AXI_stream/packet_fifo/axi_stream_packet_fifo.sv') # GlobalParam.CurrTdlModule.add_to_all_file_paths(['axi_stream_packet_fifo','../../axi/AXI_stream/packet_fifo/axi_stream_packet_fifo.sv']) return_stream = self axis_in = AxiStream.same_name_socket(:from_up,mix=true,axis_in,nil,belong_to_module) unless axis_in.is_a? String axis_out = AxiStream.same_name_socket(:to_down,mix=true,axis_out,nil,belong_to_module) unless axis_out.is_a? String if up_stream.nil? && axis_in.eql?("axis_in") && (!(axis_out.eql?("axis_out")) || !down_stream.nil?) # up_stream = self.copy(name:"axis_in") # return_stream = up_stream axis_out = down_stream if down_stream return down_stream.axi_stream_packet_fifo(axis_in:self) end axis_in = up_stream if up_stream unless self.eql? belong_to_module.AxiStream_NC axis_out = self else if down_stream axis_out = down_stream end end belong_to_module.AxiStream_draw << axi_stream_packet_fifo_draw( depth:depth, axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) return return_stream end |
#axi_stream_packet_fifo_draw(depth: 2, axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 |
# File 'lib/tdl/axi_stream/axi_stream_packet_fifo_auto.rb', line 52 def axi_stream_packet_fifo_draw( depth:2 , axis_in:"axis_in", axis_out:"axis_out", up_stream:nil, down_stream:nil ) large_name_len( depth, axis_in, axis_out ) instance_name = "axi_stream_packet_fifo_#{signal}_inst" " // FilePath:::../../axi/AXI_stream/packet_fifo/axi_stream_packet_fifo.sv axi_stream_packet_fifo#( .DEPTH (#{align_signal(depth)}) ) #{instance_name}( /* axi_stream_inf.slaver*/ .axis_in (#{align_signal(axis_in,q_mark=false)}), /* axi_stream_inf.master*/ .axis_out (#{align_signal(axis_out,q_mark=false)}) ); " end |
#axi_stream_packet_fifo_with_info(depth: 2, esize: 8, info_in: "info_in", info_out: "info_out", axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 |
# File 'lib/tdl/axi_stream/axi_stream_packet_fifo_with_info_auto.rb', line 9 def axi_stream_packet_fifo_with_info( depth:2, esize:8, info_in:"info_in", info_out:"info_out", axis_in:"axis_in", axis_out:"axis_out", up_stream:nil, down_stream:nil ) Tdl.add_to_all_file_paths('axi_stream_packet_fifo_with_info','../../axi/AXI_stream/packet_fifo/axi_stream_packet_fifo_with_info.sv') # GlobalParam.CurrTdlModule.add_to_all_file_paths(['axi_stream_packet_fifo_with_info','../../axi/AXI_stream/packet_fifo/axi_stream_packet_fifo_with_info.sv']) return_stream = self axis_in = AxiStream.same_name_socket(:from_up,mix=true,axis_in,nil,belong_to_module) unless axis_in.is_a? String axis_out = AxiStream.same_name_socket(:to_down,mix=true,axis_out,nil,belong_to_module) unless axis_out.is_a? String if up_stream.nil? && axis_in.eql?("axis_in") && (!(axis_out.eql?("axis_out")) || !down_stream.nil?) # up_stream = self.copy(name:"axis_in") # return_stream = up_stream axis_out = down_stream if down_stream return down_stream.axi_stream_packet_fifo_with_info(axis_in:self) end axis_in = up_stream if up_stream unless self.eql? belong_to_module.AxiStream_NC axis_out = self else if down_stream axis_out = down_stream end end belong_to_module.AxiStream_draw << axi_stream_packet_fifo_with_info_draw( depth:depth, esize:esize, info_in:info_in, info_out:info_out, axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) return return_stream end |
#axi_stream_packet_fifo_with_info_draw(depth: 2, esize: 8, info_in: "info_in", info_out: "info_out", axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 |
# File 'lib/tdl/axi_stream/axi_stream_packet_fifo_with_info_auto.rb', line 58 def axi_stream_packet_fifo_with_info_draw( depth:2, esize:8, info_in:"info_in", info_out:"info_out", axis_in:"axis_in", axis_out:"axis_out", up_stream:nil, down_stream:nil ) large_name_len( depth, esize, info_in, info_out, axis_in, axis_out ) instance_name = "axi_stream_packet_fifo_with_info_#{signal}_inst" " // FilePath:::../../axi/AXI_stream/packet_fifo/axi_stream_packet_fifo_with_info.sv axi_stream_packet_fifo_with_info#( .DEPTH (#{align_signal(depth)}), .ESIZE (#{align_signal(esize)}) ) #{instance_name}( /* input [ESIZE-1:0] */ .info_in (#{align_signal(info_in,q_mark=false)}), /* output [ESIZE-1:0] */ .info_out (#{align_signal(info_out,q_mark=false)}), /* axi_stream_inf.slaver*/ .axis_in (#{align_signal(axis_in,q_mark=false)}), /* axi_stream_inf.master*/ .axis_out (#{align_signal(axis_out,q_mark=false)}) ); " end |
#axi_stream_partition(valve: "valve", partition_len: "partition_len", req_new_len: "req_new_len", axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 |
# File 'lib/tdl/axi_stream/axi_stream_partition_auto.rb', line 9 def axi_stream_partition( valve:"valve", partition_len:"partition_len", req_new_len:"req_new_len", axis_in:"axis_in", axis_out:"axis_out", up_stream:nil, down_stream:nil ) Tdl.add_to_all_file_paths('axi_stream_partition','../../axi/AXI_stream/axi_stream_partition.sv') # GlobalParam.CurrTdlModule.add_to_all_file_paths(['axi_stream_partition','../../axi/AXI_stream/axi_stream_partition.sv']) return_stream = self axis_in = AxiStream.same_name_socket(:from_up,mix=true,axis_in,nil,belong_to_module) unless axis_in.is_a? String axis_out = AxiStream.same_name_socket(:to_down,mix=true,axis_out,nil,belong_to_module) unless axis_out.is_a? String if up_stream.nil? && axis_in.eql?("axis_in") && (!(axis_out.eql?("axis_out")) || !down_stream.nil?) # up_stream = self.copy(name:"axis_in") # return_stream = up_stream axis_out = down_stream if down_stream return down_stream.axi_stream_partition(axis_in:self) end axis_in = up_stream if up_stream unless self.eql? belong_to_module.AxiStream_NC axis_out = self else if down_stream axis_out = down_stream end end belong_to_module.AxiStream_draw << axi_stream_partition_draw( valve:valve, partition_len:partition_len, req_new_len:req_new_len, axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) return return_stream end |
#axi_stream_partition_a1(valve: "valve", partition_len: "partition_len", axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 |
# File 'lib/tdl/axi_stream/axi_stream_partition_A1_auto.rb', line 9 def axi_stream_partition_a1( valve:"valve", partition_len:"partition_len", axis_in:"axis_in", axis_out:"axis_out", up_stream:nil, down_stream:nil ) Tdl.add_to_all_file_paths('axi_stream_partition_a1','../../axi/AXI_stream/axi_stream_partition_A1.sv') # GlobalParam.CurrTdlModule.add_to_all_file_paths(['axi_stream_partition_a1','../../axi/AXI_stream/axi_stream_partition_A1.sv']) return_stream = self axis_in = AxiStream.same_name_socket(:from_up,mix=true,axis_in,nil,belong_to_module) unless axis_in.is_a? String axis_out = AxiStream.same_name_socket(:to_down,mix=true,axis_out,nil,belong_to_module) unless axis_out.is_a? String if up_stream.nil? && axis_in.eql?("axis_in") && (!(axis_out.eql?("axis_out")) || !down_stream.nil?) # up_stream = self.copy(name:"axis_in") # return_stream = up_stream axis_out = down_stream if down_stream return down_stream.axi_stream_partition_a1(axis_in:self) end axis_in = up_stream if up_stream unless self.eql? belong_to_module.AxiStream_NC axis_out = self else if down_stream axis_out = down_stream end end belong_to_module.AxiStream_draw << axi_stream_partition_a1_draw( valve:valve, partition_len:partition_len, axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) return return_stream end |
#axi_stream_partition_a1_draw(valve: "valve", partition_len: "partition_len", axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 |
# File 'lib/tdl/axi_stream/axi_stream_partition_A1_auto.rb', line 54 def axi_stream_partition_a1_draw( valve:"valve", partition_len:"partition_len", axis_in:"axis_in", axis_out:"axis_out", up_stream:nil, down_stream:nil ) large_name_len( valve, partition_len, axis_in, axis_out ) instance_name = "axi_stream_partition_A1_#{signal}_inst" " // FilePath:::../../axi/AXI_stream/axi_stream_partition_A1.sv axi_stream_partition_A1 #{instance_name}( /* input */ .valve (#{align_signal(valve,q_mark=false)}), /* input [31:0] */ .partition_len (#{align_signal(partition_len,q_mark=false)}), /* axi_stream_inf.slaver*/ .axis_in (#{align_signal(axis_in,q_mark=false)}), /* axi_stream_inf.master*/ .axis_out (#{align_signal(axis_out,q_mark=false)}) ); " end |
#axi_stream_partition_draw(valve: "valve", partition_len: "partition_len", req_new_len: "req_new_len", axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 |
# File 'lib/tdl/axi_stream/axi_stream_partition_auto.rb', line 56 def axi_stream_partition_draw( valve:"valve", partition_len:"partition_len", req_new_len:"req_new_len", axis_in:"axis_in", axis_out:"axis_out", up_stream:nil, down_stream:nil ) large_name_len( valve, partition_len, req_new_len, axis_in, axis_out ) instance_name = "axi_stream_partition_#{signal}_inst" " // FilePath:::../../axi/AXI_stream/axi_stream_partition.sv axi_stream_partition #{instance_name}( /* input */ .valve (#{align_signal(valve,q_mark=false)}), /* input [31:0] */ .partition_len (#{align_signal(partition_len,q_mark=false)}), /* output */ .req_new_len (#{align_signal(req_new_len,q_mark=false)}), /* axi_stream_inf.slaver*/ .axis_in (#{align_signal(axis_in,q_mark=false)}), /* axi_stream_inf.master*/ .axis_out (#{align_signal(axis_out,q_mark=false)}) ); " end |
#axi_stream_s2m(addr, *down_streams) ⇒ Object
7 8 9 10 11 |
# File 'lib/tdl/axi_stream/bak/axi_stream_S2M.rb', line 7 def axi_stream_s2m(addr,*down_streams) $_draw = lambda { s2m_sub_inst(down_streams.length) + s2m_sub_direct(*down_streams)+ axi_stream_s2m_draw(addr,down_streams.length) } @correlation_proc += $_draw.call return self end |
#axi_stream_s2m_draw(addr, num = 0) ⇒ Object
32 33 34 35 36 37 38 39 40 41 42 |
# File 'lib/tdl/axi_stream/bak/axi_stream_S2M.rb', line 32 def axi_stream_s2m_draw(addr,num=0) " axi_stream_interconnect_S2M #( .NUM (#{num}) )axi_stream_interconnect_S2M_#{signal}_inst( /* input [NSIZE-1:0] */ addr (#{align_signal(addr)}), /* axi_stream_inf.slaver */ s00 (#{signal}), /* axi_stream_inf.master */ m00 (sub_#{(signal)})//[NUM-1:0], ); " end |
#axi_stream_wide_fifo(depth: 2, axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 |
# File 'lib/tdl/axi_stream/axi_stream_wide_fifo_auto.rb', line 9 def axi_stream_wide_fifo( depth:2, axis_in:"axis_in", axis_out:"axis_out", up_stream:nil, down_stream:nil ) Tdl.add_to_all_file_paths('axi_stream_wide_fifo','../../axi/AXI_stream/packet_fifo/axi_stream_wide_fifo.sv') # GlobalParam.CurrTdlModule.add_to_all_file_paths(['axi_stream_wide_fifo','../../axi/AXI_stream/packet_fifo/axi_stream_wide_fifo.sv']) return_stream = self axis_in = AxiStream.same_name_socket(:from_up,mix=true,axis_in,nil,belong_to_module) unless axis_in.is_a? String axis_out = AxiStream.same_name_socket(:to_down,mix=true,axis_out,nil,belong_to_module) unless axis_out.is_a? String if up_stream.nil? && axis_in.eql?("axis_in") && (!(axis_out.eql?("axis_out")) || !down_stream.nil?) # up_stream = self.copy(name:"axis_in") # return_stream = up_stream axis_out = down_stream if down_stream return down_stream.axi_stream_wide_fifo(axis_in:self) end axis_in = up_stream if up_stream unless self.eql? belong_to_module.AxiStream_NC axis_out = self else if down_stream axis_out = down_stream end end belong_to_module.AxiStream_draw << axi_stream_wide_fifo_draw( depth:depth, axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) return return_stream end |
#axi_streams_combin(mode: "BOTH", cut_or_combin_body: "ON", dsize: 8, new_body_len: "new_body_len", trigger_signal: "trigger_signal", head_inf: "head_inf", body_inf: "body_inf", end_inf: "end_inf", m00: "m00", up_stream: nil, down_stream: nil) ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 |
# File 'lib/tdl/axi_stream/axi_streams_combin_auto.rb', line 9 def axi_streams_combin( mode:"BOTH", cut_or_combin_body:"ON", dsize:8, new_body_len:"new_body_len", trigger_signal:"trigger_signal", head_inf:"head_inf", body_inf:"body_inf", end_inf:"end_inf", m00:"m00", up_stream:nil, down_stream:nil ) Tdl.add_to_all_file_paths('axi_streams_combin','../../axi/AXI_stream/axi_streams_combin.sv') # GlobalParam.CurrTdlModule.add_to_all_file_paths(['axi_streams_combin','../../axi/AXI_stream/axi_streams_combin.sv']) return_stream = self head_inf = AxiStream.same_name_socket(:from_up,mix=true,head_inf,nil,belong_to_module) unless head_inf.is_a? String body_inf = AxiStream.same_name_socket(:from_up,mix=true,body_inf,nil,belong_to_module) unless body_inf.is_a? String end_inf = AxiStream.same_name_socket(:from_up,mix=true,end_inf,nil,belong_to_module) unless end_inf.is_a? String m00 = AxiStream.same_name_socket(:to_down,mix=true,m00,nil,belong_to_module) unless m00.is_a? String if up_stream.nil? && body_inf.eql?("body_inf") && (!(m00.eql?("m00")) || !down_stream.nil?) # up_stream = self.copy(name:"body_inf") # return_stream = up_stream m00 = down_stream if down_stream return down_stream.axi_streams_combin(body_inf:self) end body_inf = up_stream if up_stream unless self.eql? belong_to_module.AxiStream_NC m00 = self else if down_stream m00 = down_stream end end belong_to_module.AxiStream_draw << axi_streams_combin_draw( mode:mode, cut_or_combin_body:cut_or_combin_body, dsize:dsize, new_body_len:new_body_len, trigger_signal:trigger_signal, head_inf:head_inf, body_inf:body_inf, end_inf:end_inf, m00:m00, up_stream:up_stream, down_stream:down_stream) return return_stream end |
#axi_streams_combin_a1(mode: "BOTH", cut_or_combin_body: "ON", new_body_len: "new_body_len", trigger_signal: "trigger_signal", head_inf: "head_inf", body_inf: "body_inf", end_inf: "end_inf", m00: "m00", up_stream: nil, down_stream: nil) ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 |
# File 'lib/tdl/axi_stream/axi_streams_combin_A1_auto.rb', line 9 def axi_streams_combin_a1( mode:"BOTH", cut_or_combin_body:"ON", new_body_len:"new_body_len", trigger_signal:"trigger_signal", head_inf:"head_inf", body_inf:"body_inf", end_inf:"end_inf", m00:"m00", up_stream:nil, down_stream:nil ) Tdl.add_to_all_file_paths('axi_streams_combin_a1','../../axi/AXI_stream/axi_streams_combin_A1.sv') # GlobalParam.CurrTdlModule.add_to_all_file_paths(['axi_streams_combin_a1','../../axi/AXI_stream/axi_streams_combin_A1.sv']) return_stream = self head_inf = AxiStream.same_name_socket(:from_up,mix=true,head_inf,nil,belong_to_module) unless head_inf.is_a? String body_inf = AxiStream.same_name_socket(:from_up,mix=true,body_inf,nil,belong_to_module) unless body_inf.is_a? String end_inf = AxiStream.same_name_socket(:from_up,mix=true,end_inf,nil,belong_to_module) unless end_inf.is_a? String m00 = AxiStream.same_name_socket(:to_down,mix=true,m00,nil,belong_to_module) unless m00.is_a? String if up_stream.nil? && body_inf.eql?("body_inf") && (!(m00.eql?("m00")) || !down_stream.nil?) # up_stream = self.copy(name:"body_inf") # return_stream = up_stream m00 = down_stream if down_stream return down_stream.axi_streams_combin_a1(body_inf:self) end body_inf = up_stream if up_stream unless self.eql? belong_to_module.AxiStream_NC m00 = self else if down_stream m00 = down_stream end end belong_to_module.AxiStream_draw << axi_streams_combin_a1_draw( mode:mode, cut_or_combin_body:cut_or_combin_body, new_body_len:new_body_len, trigger_signal:trigger_signal, head_inf:head_inf, body_inf:body_inf, end_inf:end_inf, m00:m00, up_stream:up_stream, down_stream:down_stream) return return_stream end |
#axi_streams_combin_draw(mode: "BOTH", cut_or_combin_body: "ON", dsize: 8, new_body_len: "new_body_len", trigger_signal: "trigger_signal", head_inf: "head_inf", body_inf: "body_inf", end_inf: "end_inf", m00: "m00", up_stream: nil, down_stream: nil) ⇒ Object
66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 |
# File 'lib/tdl/axi_stream/axi_streams_combin_auto.rb', line 66 def axi_streams_combin_draw( mode:"BOTH", cut_or_combin_body:"ON", dsize:8, new_body_len:"new_body_len", trigger_signal:"trigger_signal", head_inf:"head_inf", body_inf:"body_inf", end_inf:"end_inf", m00:"m00", up_stream:nil, down_stream:nil ) large_name_len( mode, cut_or_combin_body, dsize, new_body_len, trigger_signal, head_inf, body_inf, end_inf, m00 ) instance_name = "axi_streams_combin_#{signal}_inst" " // FilePath:::../../axi/AXI_stream/axi_streams_combin.sv axi_streams_combin#( .MODE (#{align_signal(mode)}), .CUT_OR_COMBIN_BODY (#{align_signal(cut_or_combin_body)}), .DSIZE (#{align_signal(dsize)}) ) #{instance_name}( /* input [15:0] */ .new_body_len (#{align_signal(new_body_len,q_mark=false)}), /* input */ .trigger_signal (#{align_signal(trigger_signal,q_mark=false)}), /* axi_stream_inf.slaver*/ .head_inf (#{align_signal(head_inf,q_mark=false)}), /* axi_stream_inf.slaver*/ .body_inf (#{align_signal(body_inf,q_mark=false)}), /* axi_stream_inf.slaver*/ .end_inf (#{align_signal(end_inf,q_mark=false)}), /* axi_stream_inf.master*/ .m00 (#{align_signal(m00,q_mark=false)}) ); " end |
#axi_streams_scaler(mode: "BOTH", cut_or_combin_body: "ON", dsize: 8, new_body_len: "new_body_len", head_inf: "head_inf", body_inf: "body_inf", end_inf: "end_inf", m00: "m00", up_stream: nil, down_stream: nil) ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
# File 'lib/tdl/axi_stream/bak/axi_streams_scaler.rb', line 9 def axi_streams_scaler(mode:"BOTH",cut_or_combin_body:"ON",dsize:8,new_body_len:"new_body_len",head_inf:"head_inf",body_inf:"body_inf",end_inf:"end_inf",m00:"m00",up_stream:nil,down_stream:nil) return_stream = self if up_stream==nil && body_inf=="body_inf" up_stream = self.copy(name:"body_inf") return_stream = up_stream end body_inf = up_stream if up_stream m00 = self $_draw = lambda { axi_streams_scaler_draw(mode:mode,cut_or_combin_body:cut_or_combin_body,dsize:dsize,new_body_len:new_body_len,head_inf:head_inf,body_inf:body_inf,end_inf:end_inf,m00:m00,up_stream:up_stream,down_stream:down_stream) } @correlation_proc += $_draw.call return return_stream end |
#axi_streams_scaler_a1(mode: "BOTH", cut_or_combin_body: "ON", new_body_len: "new_body_len", head_inf: "head_inf", body_inf: "body_inf", end_inf: "end_inf", m00: "m00", up_stream: nil, down_stream: nil) ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 |
# File 'lib/tdl/axi_stream/axi_streams_scaler_A1_auto.rb', line 9 def axi_streams_scaler_a1( mode:"BOTH", cut_or_combin_body:"ON", new_body_len:"new_body_len", head_inf:"head_inf", body_inf:"body_inf", end_inf:"end_inf", m00:"m00", up_stream:nil, down_stream:nil ) Tdl.add_to_all_file_paths('axi_streams_scaler_a1','../../axi/AXI_stream/axi_streams_scaler_A1.sv') # GlobalParam.CurrTdlModule.add_to_all_file_paths(['axi_streams_scaler_a1','../../axi/AXI_stream/axi_streams_scaler_A1.sv']) return_stream = self head_inf = AxiStream.same_name_socket(:from_up,mix=true,head_inf,nil,belong_to_module) unless head_inf.is_a? String body_inf = AxiStream.same_name_socket(:from_up,mix=true,body_inf,nil,belong_to_module) unless body_inf.is_a? String end_inf = AxiStream.same_name_socket(:from_up,mix=true,end_inf,nil,belong_to_module) unless end_inf.is_a? String m00 = AxiStream.same_name_socket(:to_down,mix=true,m00,nil,belong_to_module) unless m00.is_a? String if up_stream.nil? && body_inf.eql?("body_inf") && (!(m00.eql?("m00")) || !down_stream.nil?) # up_stream = self.copy(name:"body_inf") # return_stream = up_stream m00 = down_stream if down_stream return down_stream.axi_streams_scaler_a1(body_inf:self) end body_inf = up_stream if up_stream unless self.eql? belong_to_module.AxiStream_NC m00 = self else if down_stream m00 = down_stream end end belong_to_module.AxiStream_draw << axi_streams_scaler_a1_draw( mode:mode, cut_or_combin_body:cut_or_combin_body, new_body_len:new_body_len, head_inf:head_inf, body_inf:body_inf, end_inf:end_inf, m00:m00, up_stream:up_stream, down_stream:down_stream) return return_stream end |
#axi_streams_scaler_draw(mode: "BOTH", cut_or_combin_body: "ON", dsize: 8, new_body_len: "new_body_len", head_inf: "head_inf", body_inf: "body_inf", end_inf: "end_inf", m00: "m00", up_stream: nil, down_stream: nil) ⇒ Object
25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 |
# File 'lib/tdl/axi_stream/bak/axi_streams_scaler.rb', line 25 def axi_streams_scaler_draw(mode:"BOTH",cut_or_combin_body:"ON",dsize:8,new_body_len:"new_body_len",head_inf:"head_inf",body_inf:"body_inf",end_inf:"end_inf",m00:"m00",up_stream:nil,down_stream:nil) large_name_len(mode,cut_or_combin_body,dsize,new_body_len,head_inf,body_inf,end_inf,m00) " axi_streams_scaler#( .MODE (#{align_signal(mode)}), .CUT_OR_COMBIN_BODY (#{align_signal(cut_or_combin_body)}), .DSIZE (#{align_signal(dsize,q_mark=false)}) ) axi_streams_scaler_#{signal}_inst( /* input [15:0] */ .new_body_len (#{align_signal(new_body_len,q_mark=false)}), /* axi_stream_inf.slaver*/ .head_inf (#{align_signal(head_inf,q_mark=false)}), /* axi_stream_inf.slaver*/ .body_inf (#{align_signal(body_inf,q_mark=false)}), /* axi_stream_inf.slaver*/ .end_inf (#{align_signal(end_inf,q_mark=false)}), /* axi_stream_inf.master*/ .m00 (#{align_signal(m00,q_mark=false)}) ); " end |
#axis_append(mode: "BOTH", dsize: 8, head_field_len: 16*8, head_field_name: "HEAD Filed", end_field_len: 16*8, end_field_name: "END Filed", head_value: "head_value", end_value: "end_value", origin_in: "origin_in", append_out: "append_out", up_stream: nil, down_stream: nil) ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 |
# File 'lib/tdl/axi_stream/axis_append_auto.rb', line 9 def axis_append( mode:"BOTH", dsize:8, head_field_len:16*8, head_field_name:"HEAD Filed", end_field_len:16*8, end_field_name:"END Filed", head_value:"head_value", end_value:"end_value", origin_in:"origin_in", append_out:"append_out", up_stream:nil, down_stream:nil ) Tdl.add_to_all_file_paths('axis_append','../../axi/AXI_stream/axis_append.sv') # GlobalParam.CurrTdlModule.add_to_all_file_paths(['axis_append','../../axi/AXI_stream/axis_append.sv']) return_stream = self origin_in = AxiStream.same_name_socket(:from_up,mix=true,origin_in,nil,belong_to_module) unless origin_in.is_a? String append_out = AxiStream.same_name_socket(:to_down,mix=true,append_out,nil,belong_to_module) unless append_out.is_a? String if up_stream.nil? && origin_in.eql?("origin_in") && (!(append_out.eql?("append_out")) || !down_stream.nil?) # up_stream = self.copy(name:"origin_in") # return_stream = up_stream append_out = down_stream if down_stream return down_stream.axis_append(origin_in:self) end origin_in = up_stream if up_stream unless self.eql? belong_to_module.AxiStream_NC append_out = self else if down_stream append_out = down_stream end end belong_to_module.AxiStream_draw << axis_append_draw( mode:mode, dsize:dsize, head_field_len:head_field_len, head_field_name:head_field_name, end_field_len:end_field_len, end_field_name:end_field_name, head_value:head_value, end_value:end_value, origin_in:origin_in, append_out:append_out, up_stream:up_stream, down_stream:down_stream) return return_stream end |
#axis_append_a1(mode: "BOTH", dsize: 8, head_field_len: 16*8, head_field_name: "HEAD Filed", end_field_len: 16*8, end_field_name: "END Filed", enable: "enable", head_value: "head_value", end_value: "end_value", origin_in: "origin_in", append_out: "append_out", up_stream: nil, down_stream: nil) ⇒ Object
9 10 11 12 13 14 15 16 |
# File 'lib/tdl/axi_stream/bak/axis_append_A1.rb', line 9 def axis_append_a1(mode:"BOTH",dsize:8,head_field_len:16*8,head_field_name:"HEAD Filed",end_field_len:16*8,end_field_name:"END Filed",enable:"enable",head_value:"head_value",end_value:"end_value",origin_in:"origin_in",append_out:"append_out",up_stream:nil,down_stream:nil) origin_in = up_stream if up_stream append_out = self $_draw = lambda { axis_append_a1_draw(mode:mode,dsize:dsize,head_field_len:head_field_len,head_field_name:head_field_name,end_field_len:end_field_len,end_field_name:end_field_name,enable:enable,head_value:head_value,end_value:end_value,origin_in:origin_in,append_out:append_out,up_stream:up_stream,down_stream:down_stream) } @correlation_proc += $_draw.call return self end |
#axis_append_a1_draw(mode: "BOTH", dsize: 8, head_field_len: 16*8, head_field_name: "HEAD Filed", end_field_len: 16*8, end_field_name: "END Filed", enable: "enable", head_value: "head_value", end_value: "end_value", origin_in: "origin_in", append_out: "append_out", up_stream: nil, down_stream: nil) ⇒ Object
18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 |
# File 'lib/tdl/axi_stream/bak/axis_append_A1.rb', line 18 def axis_append_a1_draw(mode:"BOTH",dsize:8,head_field_len:16*8,head_field_name:"HEAD Filed",end_field_len:16*8,end_field_name:"END Filed",enable:"enable",head_value:"head_value",end_value:"end_value",origin_in:"origin_in",append_out:"append_out",up_stream:nil,down_stream:nil) large_name_len(mode,dsize,head_field_len,head_field_name,end_field_len,end_field_name,enable,head_value,end_value,origin_in,append_out) " axis_append_A1#( .MODE (#{align_signal(mode)}), .DSIZE (#{align_signal(dsize)}), .HEAD_FIELD_LEN (#{align_signal(head_field_len)}), .HEAD_FIELD_NAME (#{align_signal(head_field_name)}), .END_FIELD_LEN (#{align_signal(end_field_len)}), .END_FIELD_NAME (#{align_signal(end_field_name)}) ) axis_append_a1_#{signal}_inst( /* input */ .enable (#{align_signal(enable,q_mark=false)}), /* input [HEAD_FIELD_LEN*DSIZE-1:0]*/ .head_value (#{align_signal(head_value,q_mark=false)}), /* input [END_FIELD_LEN*DSIZE-1:0] */ .end_value (#{align_signal(end_value,q_mark=false)}), /* axi_stream_inf.slaver */ .origin_in (#{align_signal(origin_in,q_mark=false)}), /* axi_stream_inf.master */ .append_out (#{align_signal(append_out,q_mark=false)}) ); " end |
#axis_append_draw(mode: "BOTH", dsize: 8, head_field_len: 16*8, head_field_name: "HEAD Filed", end_field_len: 16*8, end_field_name: "END Filed", head_value: "head_value", end_value: "end_value", origin_in: "origin_in", append_out: "append_out", up_stream: nil, down_stream: nil) ⇒ Object
66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 |
# File 'lib/tdl/axi_stream/axis_append_auto.rb', line 66 def axis_append_draw( mode:"BOTH", dsize:8, head_field_len:16*8, head_field_name:"HEAD Filed", end_field_len:16*8, end_field_name:"END Filed", head_value:"head_value", end_value:"end_value", origin_in:"origin_in", append_out:"append_out", up_stream:nil, down_stream:nil ) large_name_len( mode, dsize, head_field_len, head_field_name, end_field_len, end_field_name, head_value, end_value, origin_in, append_out ) instance_name = "axis_append_#{signal}_inst" " // FilePath:::../../axi/AXI_stream/axis_append.sv axis_append#( .MODE (#{align_signal(mode)}), .DSIZE (#{align_signal(dsize)}), .HEAD_FIELD_LEN (#{align_signal(head_field_len)}), .HEAD_FIELD_NAME (#{align_signal(head_field_name)}), .END_FIELD_LEN (#{align_signal(end_field_len)}), .END_FIELD_NAME (#{align_signal(end_field_name)}) ) #{instance_name}( /* input [HEAD_FIELD_LEN*DSIZE-1:0]*/ .head_value (#{align_signal(head_value,q_mark=false)}), /* input [END_FIELD_LEN*DSIZE-1:0] */ .end_value (#{align_signal(end_value,q_mark=false)}), /* axi_stream_inf.slaver */ .origin_in (#{align_signal(origin_in,q_mark=false)}), /* axi_stream_inf.master */ .append_out (#{align_signal(append_out,q_mark=false)}) ); " end |
#axis_combin_with_fifo(mode: "BOTH", cut_or_combin_body: "ON", new_body_len: "new_body_len", head_inf: "head_inf", body_inf: "body_inf", end_inf: "end_inf", m00: "m00", up_stream: nil, down_stream: nil) ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 |
# File 'lib/tdl/axi_stream/axis_combin_with_fifo_auto.rb', line 9 def axis_combin_with_fifo( mode:"BOTH", cut_or_combin_body:"ON", new_body_len:"new_body_len", head_inf:"head_inf", body_inf:"body_inf", end_inf:"end_inf", m00:"m00", up_stream:nil, down_stream:nil ) Tdl.add_to_all_file_paths('axis_combin_with_fifo','../../axi/AXI_stream/axis_combin_with_fifo.sv') # GlobalParam.CurrTdlModule.add_to_all_file_paths(['axis_combin_with_fifo','../../axi/AXI_stream/axis_combin_with_fifo.sv']) return_stream = self head_inf = AxiStream.same_name_socket(:from_up,mix=true,head_inf,nil,belong_to_module) unless head_inf.is_a? String body_inf = AxiStream.same_name_socket(:from_up,mix=true,body_inf,nil,belong_to_module) unless body_inf.is_a? String end_inf = AxiStream.same_name_socket(:from_up,mix=true,end_inf,nil,belong_to_module) unless end_inf.is_a? String m00 = AxiStream.same_name_socket(:to_down,mix=true,m00,nil,belong_to_module) unless m00.is_a? String if up_stream.nil? && body_inf.eql?("body_inf") && (!(m00.eql?("m00")) || !down_stream.nil?) # up_stream = self.copy(name:"body_inf") # return_stream = up_stream m00 = down_stream if down_stream return down_stream.axis_combin_with_fifo(body_inf:self) end body_inf = up_stream if up_stream unless self.eql? belong_to_module.AxiStream_NC m00 = self else if down_stream m00 = down_stream end end belong_to_module.AxiStream_draw << axis_combin_with_fifo_draw( mode:mode, cut_or_combin_body:cut_or_combin_body, new_body_len:new_body_len, head_inf:head_inf, body_inf:body_inf, end_inf:end_inf, m00:m00, up_stream:up_stream, down_stream:down_stream) return return_stream end |
#axis_combin_with_fifo_draw(mode: "BOTH", cut_or_combin_body: "ON", new_body_len: "new_body_len", head_inf: "head_inf", body_inf: "body_inf", end_inf: "end_inf", m00: "m00", up_stream: nil, down_stream: nil) ⇒ Object
62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 |
# File 'lib/tdl/axi_stream/axis_combin_with_fifo_auto.rb', line 62 def axis_combin_with_fifo_draw( mode:"BOTH", cut_or_combin_body:"ON", new_body_len:"new_body_len", head_inf:"head_inf", body_inf:"body_inf", end_inf:"end_inf", m00:"m00", up_stream:nil, down_stream:nil ) large_name_len( mode, cut_or_combin_body, new_body_len, head_inf, body_inf, end_inf, m00 ) instance_name = "axis_combin_with_fifo_#{signal}_inst" " // FilePath:::../../axi/AXI_stream/axis_combin_with_fifo.sv axis_combin_with_fifo#( .MODE (#{align_signal(mode)}), .CUT_OR_COMBIN_BODY (#{align_signal(cut_or_combin_body)}) ) #{instance_name}( /* input [15:0] */ .new_body_len (#{align_signal(new_body_len,q_mark=false)}), /* axi_stream_inf.slaver*/ .head_inf (#{align_signal(head_inf,q_mark=false)}), /* axi_stream_inf.slaver*/ .body_inf (#{align_signal(body_inf,q_mark=false)}), /* axi_stream_inf.slaver*/ .end_inf (#{align_signal(end_inf,q_mark=false)}), /* axi_stream_inf.master*/ .m00 (#{align_signal(m00,q_mark=false)}) ); " end |
#axis_connect_pipe(axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 |
# File 'lib/tdl/axi_stream/axis_connect_pipe_auto.rb', line 9 def axis_connect_pipe( axis_in:"axis_in", axis_out:"axis_out", up_stream:nil, down_stream:nil ) Tdl.add_to_all_file_paths('axis_connect_pipe','../../axi/AXI_stream/axis_connect_pipe.sv') # GlobalParam.CurrTdlModule.add_to_all_file_paths(['axis_connect_pipe','../../axi/AXI_stream/axis_connect_pipe.sv']) return_stream = self axis_in = AxiStream.same_name_socket(:from_up,mix=true,axis_in,nil,belong_to_module) unless axis_in.is_a? String axis_out = AxiStream.same_name_socket(:to_down,mix=true,axis_out,nil,belong_to_module) unless axis_out.is_a? String if up_stream.nil? && axis_in.eql?("axis_in") && (!(axis_out.eql?("axis_out")) || !down_stream.nil?) # up_stream = self.copy(name:"axis_in") # return_stream = up_stream axis_out = down_stream if down_stream return down_stream.axis_connect_pipe(axis_in:self) end axis_in = up_stream if up_stream unless self.eql? belong_to_module.AxiStream_NC axis_out = self else if down_stream axis_out = down_stream end end belong_to_module.AxiStream_draw << axis_connect_pipe_draw( axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) return return_stream end |
#axis_connect_pipe_a1(axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 |
# File 'lib/tdl/axi_stream/axis_connect_pipe_A1.sv_auto.rb', line 9 def axis_connect_pipe_a1( axis_in:"axis_in", axis_out:"axis_out", up_stream:nil, down_stream:nil ) Tdl.add_to_all_file_paths('axis_connect_pipe_a1','../../axi/AXI_stream/axis_connect_pipe_A1.sv.bak') # GlobalParam.CurrTdlModule.add_to_all_file_paths(['axis_connect_pipe_a1','../../axi/AXI_stream/axis_connect_pipe_A1.sv.bak']) return_stream = self axis_in = AxiStream.same_name_socket(:from_up,mix=true,axis_in,nil,belong_to_module) unless axis_in.is_a? String axis_out = AxiStream.same_name_socket(:to_down,mix=true,axis_out,nil,belong_to_module) unless axis_out.is_a? String if up_stream.nil? && axis_in.eql?("axis_in") && (!(axis_out.eql?("axis_out")) || !down_stream.nil?) # up_stream = self.copy(name:"axis_in") # return_stream = up_stream axis_out = down_stream if down_stream return down_stream.axis_connect_pipe_a1(axis_in:self) end axis_in = up_stream if up_stream unless self.eql? belong_to_module.AxiStream_NC axis_out = self else if down_stream axis_out = down_stream end end belong_to_module.AxiStream_draw << axis_connect_pipe_a1_draw( axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) return return_stream end |
#axis_connect_pipe_a1_draw(axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 |
# File 'lib/tdl/axi_stream/axis_connect_pipe_A1.sv_auto.rb', line 50 def axis_connect_pipe_a1_draw( axis_in:"axis_in", axis_out:"axis_out", up_stream:nil, down_stream:nil ) large_name_len( axis_in, axis_out ) instance_name = "axis_connect_pipe_A1_#{signal}_inst" " // FilePath:::../../axi/AXI_stream/axis_connect_pipe_A1.sv.bak axis_connect_pipe_A1 #{instance_name}( /* axi_stream_inf.slaver*/ .axis_in (#{align_signal(axis_in,q_mark=false)}), /* axi_stream_inf.master*/ .axis_out (#{align_signal(axis_out,q_mark=false)}) ); " end |
#axis_connect_pipe_draw(axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 |
# File 'lib/tdl/axi_stream/axis_connect_pipe_auto.rb', line 50 def axis_connect_pipe_draw( axis_in:"axis_in", axis_out:"axis_out", up_stream:nil, down_stream:nil ) large_name_len( axis_in, axis_out ) instance_name = "axis_connect_pipe_#{signal}_inst" " // FilePath:::../../axi/AXI_stream/axis_connect_pipe.sv axis_connect_pipe #{instance_name}( /* axi_stream_inf.slaver*/ .axis_in (#{align_signal(axis_in,q_mark=false)}), /* axi_stream_inf.master*/ .axis_out (#{align_signal(axis_out,q_mark=false)}) ); " end |
#axis_connect_pipe_with_info(ifsize: 32, info_in: "info_in", info_out: "info_out", axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 |
# File 'lib/tdl/axi_stream/axis_connect_pipe_with_info_auto.rb', line 9 def axis_connect_pipe_with_info( ifsize:32, info_in:"info_in", info_out:"info_out", axis_in:"axis_in", axis_out:"axis_out", up_stream:nil, down_stream:nil ) Tdl.add_to_all_file_paths('axis_connect_pipe_with_info','../../axi/AXI_stream/axis_connect_pipe_with_info.sv') # GlobalParam.CurrTdlModule.add_to_all_file_paths(['axis_connect_pipe_with_info','../../axi/AXI_stream/axis_connect_pipe_with_info.sv']) return_stream = self axis_in = AxiStream.same_name_socket(:from_up,mix=true,axis_in,nil,belong_to_module) unless axis_in.is_a? String axis_out = AxiStream.same_name_socket(:to_down,mix=true,axis_out,nil,belong_to_module) unless axis_out.is_a? String if up_stream.nil? && axis_in.eql?("axis_in") && (!(axis_out.eql?("axis_out")) || !down_stream.nil?) # up_stream = self.copy(name:"axis_in") # return_stream = up_stream axis_out = down_stream if down_stream return down_stream.axis_connect_pipe_with_info(axis_in:self) end axis_in = up_stream if up_stream unless self.eql? belong_to_module.AxiStream_NC axis_out = self else if down_stream axis_out = down_stream end end belong_to_module.AxiStream_draw << axis_connect_pipe_with_info_draw( ifsize:ifsize, info_in:info_in, info_out:info_out, axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) return return_stream end |
#axis_connect_pipe_with_info_draw(ifsize: 32, info_in: "info_in", info_out: "info_out", axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 |
# File 'lib/tdl/axi_stream/axis_connect_pipe_with_info_auto.rb', line 56 def axis_connect_pipe_with_info_draw( ifsize:32, info_in:"info_in", info_out:"info_out", axis_in:"axis_in", axis_out:"axis_out", up_stream:nil, down_stream:nil ) large_name_len( ifsize, info_in, info_out, axis_in, axis_out ) instance_name = "axis_connect_pipe_with_info_#{signal}_inst" " // FilePath:::../../axi/AXI_stream/axis_connect_pipe_with_info.sv axis_connect_pipe_with_info#( .IFSIZE (#{align_signal(ifsize)}) ) #{instance_name}( /* input [IFSIZE-1:0] */ .info_in (#{align_signal(info_in,q_mark=false)}), /* output [IFSIZE-1:0] */ .info_out (#{align_signal(info_out,q_mark=false)}), /* axi_stream_inf.slaver*/ .axis_in (#{align_signal(axis_in,q_mark=false)}), /* axi_stream_inf.master*/ .axis_out (#{align_signal(axis_out,q_mark=false)}) ); " end |
#axis_direct(slaver: "slaver", master: "master", up_stream: nil, down_stream: nil) ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 |
# File 'lib/tdl/axi_stream/axis_direct_auto.rb', line 9 def axis_direct( slaver:"slaver", master:"master", up_stream:nil, down_stream:nil ) Tdl.add_to_all_file_paths('axis_direct','../../axi/AXI_stream/axis_direct.sv') # GlobalParam.CurrTdlModule.add_to_all_file_paths(['axis_direct','../../axi/AXI_stream/axis_direct.sv']) return_stream = self slaver = AxiStream.same_name_socket(:from_up,mix=true,slaver,nil,belong_to_module) unless slaver.is_a? String master = AxiStream.same_name_socket(:to_down,mix=true,master,nil,belong_to_module) unless master.is_a? String if up_stream.nil? && slaver.eql?("slaver") && (!(master.eql?("master")) || !down_stream.nil?) # up_stream = self.copy(name:"slaver") # return_stream = up_stream master = down_stream if down_stream return down_stream.axis_direct(slaver:self) end slaver = up_stream if up_stream unless self.eql? belong_to_module.AxiStream_NC master = self else if down_stream master = down_stream end end belong_to_module.AxiStream_draw << axis_direct_draw( slaver:slaver, master:master, up_stream:up_stream, down_stream:down_stream) return return_stream end |
#axis_direct_draw(slaver: "slaver", master: "master", up_stream: nil, down_stream: nil) ⇒ Object
50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 |
# File 'lib/tdl/axi_stream/axis_direct_auto.rb', line 50 def axis_direct_draw( slaver:"slaver", master:"master", up_stream:nil, down_stream:nil ) large_name_len( slaver, master ) instance_name = "axis_direct_#{signal}_inst" " // FilePath:::../../axi/AXI_stream/axis_direct.sv axis_direct #{instance_name}( /* axi_stream_inf.slaver*/ .slaver (#{align_signal(slaver,q_mark=false)}), /* axi_stream_inf.master*/ .master (#{align_signal(master,q_mark=false)}) ); " end |
#axis_filter(button: "button", axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 |
# File 'lib/tdl/axi_stream/axis_filter_auto.rb', line 9 def axis_filter( button:"button", axis_in:"axis_in", axis_out:"axis_out", up_stream:nil, down_stream:nil ) Tdl.add_to_all_file_paths('axis_filter','../../axi/AXI_stream/axis_filter.sv') # GlobalParam.CurrTdlModule.add_to_all_file_paths(['axis_filter','../../axi/AXI_stream/axis_filter.sv']) return_stream = self axis_in = AxiStream.same_name_socket(:from_up,mix=true,axis_in,nil,belong_to_module) unless axis_in.is_a? String axis_out = AxiStream.same_name_socket(:to_down,mix=true,axis_out,nil,belong_to_module) unless axis_out.is_a? String if up_stream.nil? && axis_in.eql?("axis_in") && (!(axis_out.eql?("axis_out")) || !down_stream.nil?) # up_stream = self.copy(name:"axis_in") # return_stream = up_stream axis_out = down_stream if down_stream return down_stream.axis_filter(axis_in:self) end axis_in = up_stream if up_stream unless self.eql? belong_to_module.AxiStream_NC axis_out = self else if down_stream axis_out = down_stream end end belong_to_module.AxiStream_draw << axis_filter_draw( button:, axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) return return_stream end |
#axis_filter_draw(button: "button", axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 |
# File 'lib/tdl/axi_stream/axis_filter_auto.rb', line 52 def axis_filter_draw( button:"button", axis_in:"axis_in", axis_out:"axis_out", up_stream:nil, down_stream:nil ) large_name_len( , axis_in, axis_out ) instance_name = "axis_filter_#{signal}_inst" " // FilePath:::../../axi/AXI_stream/axis_filter.sv axis_filter #{instance_name}( /* input */ .button (#{align_signal(,q_mark=false)}), /* axi_stream_inf.slaver*/ .axis_in (#{align_signal(axis_in,q_mark=false)}), /* axi_stream_inf.master*/ .axis_out (#{align_signal(axis_out,q_mark=false)}) ); " end |
#axis_head_cut(len: 1, slaver: "slaver", master: "master", up_stream: nil, down_stream: nil) ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 |
# File 'lib/tdl/axi_stream/axis_head_cut_auto.rb', line 9 def axis_head_cut( len:1, slaver:"slaver", master:"master", up_stream:nil, down_stream:nil ) Tdl.add_to_all_file_paths('axis_head_cut','../../axi/AXI_stream/axis_head_cut.sv') # GlobalParam.CurrTdlModule.add_to_all_file_paths(['axis_head_cut','../../axi/AXI_stream/axis_head_cut.sv']) return_stream = self slaver = AxiStream.same_name_socket(:from_up,mix=true,slaver,nil,belong_to_module) unless slaver.is_a? String master = AxiStream.same_name_socket(:to_down,mix=true,master,nil,belong_to_module) unless master.is_a? String if up_stream.nil? && slaver.eql?("slaver") && (!(master.eql?("master")) || !down_stream.nil?) # up_stream = self.copy(name:"slaver") # return_stream = up_stream master = down_stream if down_stream return down_stream.axis_head_cut(slaver:self) end slaver = up_stream if up_stream unless self.eql? belong_to_module.AxiStream_NC master = self else if down_stream master = down_stream end end belong_to_module.AxiStream_draw << axis_head_cut_draw( len:len, slaver:slaver, master:master, up_stream:up_stream, down_stream:down_stream) return return_stream end |
#axis_length_fill(length: "length", axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 |
# File 'lib/tdl/axi_stream/axis_length_fill_auto.rb', line 9 def axis_length_fill( length:"length", axis_in:"axis_in", axis_out:"axis_out", up_stream:nil, down_stream:nil ) Tdl.add_to_all_file_paths('axis_length_fill','../../axi/AXI_stream/axis_length_fill.sv') # GlobalParam.CurrTdlModule.add_to_all_file_paths(['axis_length_fill','../../axi/AXI_stream/axis_length_fill.sv']) return_stream = self axis_in = AxiStream.same_name_socket(:from_up,mix=true,axis_in,nil,belong_to_module) unless axis_in.is_a? String axis_out = AxiStream.same_name_socket(:to_down,mix=true,axis_out,nil,belong_to_module) unless axis_out.is_a? String if up_stream.nil? && axis_in.eql?("axis_in") && (!(axis_out.eql?("axis_out")) || !down_stream.nil?) # up_stream = self.copy(name:"axis_in") # return_stream = up_stream axis_out = down_stream if down_stream return down_stream.axis_length_fill(axis_in:self) end axis_in = up_stream if up_stream unless self.eql? belong_to_module.AxiStream_NC axis_out = self else if down_stream axis_out = down_stream end end belong_to_module.AxiStream_draw << axis_length_fill_draw( length:length, axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) return return_stream end |
#axis_length_fill_draw(length: "length", axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 |
# File 'lib/tdl/axi_stream/axis_length_fill_auto.rb', line 52 def axis_length_fill_draw( length:"length", axis_in:"axis_in", axis_out:"axis_out", up_stream:nil, down_stream:nil ) large_name_len( length, axis_in, axis_out ) instance_name = "axis_length_fill_#{signal}_inst" " // FilePath:::../../axi/AXI_stream/axis_length_fill.sv axis_length_fill #{instance_name}( /* input [15:0] */ .length (#{align_signal(length,q_mark=false)}), /* axi_stream_inf.slaver*/ .axis_in (#{align_signal(axis_in,q_mark=false)}), /* axi_stream_inf.master*/ .axis_out (#{align_signal(axis_out,q_mark=false)}) ); " end |
#axis_length_split(length: "length", axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 |
# File 'lib/tdl/axi_stream/axis_length_split_auto.rb', line 9 def axis_length_split( length:"length", axis_in:"axis_in", axis_out:"axis_out", up_stream:nil, down_stream:nil ) Tdl.add_to_all_file_paths('axis_length_split','../../axi/AXI_stream/axis_length_split.sv') # GlobalParam.CurrTdlModule.add_to_all_file_paths(['axis_length_split','../../axi/AXI_stream/axis_length_split.sv']) return_stream = self axis_in = AxiStream.same_name_socket(:from_up,mix=true,axis_in,nil,belong_to_module) unless axis_in.is_a? String axis_out = AxiStream.same_name_socket(:to_down,mix=true,axis_out,nil,belong_to_module) unless axis_out.is_a? String if up_stream.nil? && axis_in.eql?("axis_in") && (!(axis_out.eql?("axis_out")) || !down_stream.nil?) # up_stream = self.copy(name:"axis_in") # return_stream = up_stream axis_out = down_stream if down_stream return down_stream.axis_length_split(axis_in:self) end axis_in = up_stream if up_stream unless self.eql? belong_to_module.AxiStream_NC axis_out = self else if down_stream axis_out = down_stream end end belong_to_module.AxiStream_draw << axis_length_split_draw( length:length, axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) return return_stream end |
#axis_length_split_draw(length: "length", axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 |
# File 'lib/tdl/axi_stream/axis_length_split_auto.rb', line 52 def axis_length_split_draw( length:"length", axis_in:"axis_in", axis_out:"axis_out", up_stream:nil, down_stream:nil ) large_name_len( length, axis_in, axis_out ) instance_name = "axis_length_split_#{signal}_inst" " // FilePath:::../../axi/AXI_stream/axis_length_split.sv axis_length_split #{instance_name}( /* input [31:0] */ .length (#{align_signal(length,q_mark=false)}), /* axi_stream_inf.slaver*/ .axis_in (#{align_signal(axis_in,q_mark=false)}), /* axi_stream_inf.master*/ .axis_out (#{align_signal(axis_out,q_mark=false)}) ); " end |
#axis_length_split_with_addr(addr_step: 1024, origin_addr: "origin_addr", length: "length", band_addr: "band_addr", axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 |
# File 'lib/tdl/axi_stream/axis_length_split_with_addr_auto.rb', line 9 def axis_length_split_with_addr( addr_step:1024 , origin_addr:"origin_addr", length:"length", band_addr:"band_addr", axis_in:"axis_in", axis_out:"axis_out", up_stream:nil, down_stream:nil ) Tdl.add_to_all_file_paths('axis_length_split_with_addr','../../axi/AXI_stream/axis_length_split_with_addr.sv') # GlobalParam.CurrTdlModule.add_to_all_file_paths(['axis_length_split_with_addr','../../axi/AXI_stream/axis_length_split_with_addr.sv']) return_stream = self axis_in = AxiStream.same_name_socket(:from_up,mix=true,axis_in,nil,belong_to_module) unless axis_in.is_a? String axis_out = AxiStream.same_name_socket(:to_down,mix=true,axis_out,nil,belong_to_module) unless axis_out.is_a? String if up_stream.nil? && axis_in.eql?("axis_in") && (!(axis_out.eql?("axis_out")) || !down_stream.nil?) # up_stream = self.copy(name:"axis_in") # return_stream = up_stream axis_out = down_stream if down_stream return down_stream.axis_length_split_with_addr(axis_in:self) end axis_in = up_stream if up_stream unless self.eql? belong_to_module.AxiStream_NC axis_out = self else if down_stream axis_out = down_stream end end belong_to_module.AxiStream_draw << axis_length_split_with_addr_draw( addr_step:addr_step, origin_addr:origin_addr, length:length, band_addr:band_addr, axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) return return_stream end |
#axis_length_split_with_addr_draw(addr_step: 1024, origin_addr: "origin_addr", length: "length", band_addr: "band_addr", axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 |
# File 'lib/tdl/axi_stream/axis_length_split_with_addr_auto.rb', line 58 def axis_length_split_with_addr_draw( addr_step:1024 , origin_addr:"origin_addr", length:"length", band_addr:"band_addr", axis_in:"axis_in", axis_out:"axis_out", up_stream:nil, down_stream:nil ) large_name_len( addr_step, origin_addr, length, band_addr, axis_in, axis_out ) instance_name = "axis_length_split_with_addr_#{signal}_inst" " // FilePath:::../../axi/AXI_stream/axis_length_split_with_addr.sv axis_length_split_with_addr#( .ADDR_STEP (#{align_signal(addr_step)}) ) #{instance_name}( /* input [31:0] */ .origin_addr (#{align_signal(origin_addr,q_mark=false)}), /* input [31:0] */ .length (#{align_signal(length,q_mark=false)}), /* output [31:0] */ .band_addr (#{align_signal(band_addr,q_mark=false)}), /* axi_stream_inf.slaver*/ .axis_in (#{align_signal(axis_in,q_mark=false)}), /* axi_stream_inf.master*/ .axis_out (#{align_signal(axis_out,q_mark=false)}) ); " end |
#axis_length_split_with_user(length: "length", axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 |
# File 'lib/tdl/axi_stream/axis_length_split_writh_user_auto.rb', line 9 def axis_length_split_with_user( length:"length", axis_in:"axis_in", axis_out:"axis_out", up_stream:nil, down_stream:nil ) Tdl.add_to_all_file_paths('axis_length_split_with_user','../../axi/AXI_stream/axis_length_split_writh_user.sv') # GlobalParam.CurrTdlModule.add_to_all_file_paths(['axis_length_split_with_user','../../axi/AXI_stream/axis_length_split_writh_user.sv']) return_stream = self axis_in = AxiStream.same_name_socket(:from_up,mix=true,axis_in,nil,belong_to_module) unless axis_in.is_a? String axis_out = AxiStream.same_name_socket(:to_down,mix=true,axis_out,nil,belong_to_module) unless axis_out.is_a? String if up_stream.nil? && axis_in.eql?("axis_in") && (!(axis_out.eql?("axis_out")) || !down_stream.nil?) # up_stream = self.copy(name:"axis_in") # return_stream = up_stream axis_out = down_stream if down_stream return down_stream.axis_length_split_with_user(axis_in:self) end axis_in = up_stream if up_stream unless self.eql? belong_to_module.AxiStream_NC axis_out = self else if down_stream axis_out = down_stream end end belong_to_module.AxiStream_draw << axis_length_split_with_user_draw( length:length, axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) return return_stream end |
#axis_master_empty(master: "master", down_stream: nil) ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
# File 'lib/tdl/axi_stream/axis_master_empty_auto.rb', line 9 def axis_master_empty( master:"master", down_stream:nil ) Tdl.add_to_all_file_paths('axis_master_empty','../../axi/AXI_stream/axis_master_empty.sv') # GlobalParam.CurrTdlModule.add_to_all_file_paths(['axis_master_empty','../../axi/AXI_stream/axis_master_empty.sv']) return_stream = self master = AxiStream.same_name_socket(:to_down,mix=true,master,nil,belong_to_module) unless master.is_a? String unless self.eql? belong_to_module.AxiStream_NC master = self else if down_stream master = down_stream end end belong_to_module.AxiStream_draw << axis_master_empty_draw( master:master, down_stream:down_stream) return return_stream end |
#axis_master_empty_draw(master: "master", down_stream: nil) ⇒ Object
38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 |
# File 'lib/tdl/axi_stream/axis_master_empty_auto.rb', line 38 def axis_master_empty_draw( master:"master", down_stream:nil ) large_name_len( master ) instance_name = "axis_master_empty_#{signal}_inst" " // FilePath:::../../axi/AXI_stream/axis_master_empty.sv axis_master_empty #{instance_name}( /* axi_stream_inf.master*/ .master (#{align_signal(master,q_mark=false)}) ); " end |
#axis_mirror_to_master(depth: 4, mirror: "mirror", master: "master", up_stream: nil, down_stream: nil) ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 |
# File 'lib/tdl/axi_stream/axis_mirror_to_master_auto.rb', line 9 def axis_mirror_to_master( depth:4, mirror:"mirror", master:"master", up_stream:nil, down_stream:nil ) Tdl.add_to_all_file_paths('axis_mirror_to_master','../../axi/AXI_stream/axis_mirror_to_master.sv') # GlobalParam.CurrTdlModule.add_to_all_file_paths(['axis_mirror_to_master','../../axi/AXI_stream/axis_mirror_to_master.sv']) return_stream = self mirror = AxiStream.same_name_socket(:mirror,mix=true,mirror,nil,belong_to_module) unless mirror.is_a? String master = AxiStream.same_name_socket(:to_down,mix=true,master,nil,belong_to_module) unless master.is_a? String if up_stream.nil? && mirror.eql?("mirror") && (!(master.eql?("master")) || !down_stream.nil?) # up_stream = self.copy(name:"mirror") # return_stream = up_stream master = down_stream if down_stream return down_stream.axis_mirror_to_master(mirror:self) end mirror = up_stream if up_stream unless self.eql? belong_to_module.AxiStream_NC master = self else if down_stream master = down_stream end end belong_to_module.AxiStream_draw << axis_mirror_to_master_draw( depth:depth, mirror:mirror, master:master, up_stream:up_stream, down_stream:down_stream) return return_stream end |
#axis_mirrors(h: 0, l: 0, num: 8, mode: "CDS_MODE", condition_data: "condition_data", axis_in: "axis_in", axis_mirror: "axis_mirror", up_stream: nil, down_stream: nil) ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 |
# File 'lib/tdl/axi_stream/axis_mirrors_auto.rb', line 9 def axis_mirrors( h:0, l:0, num:8, mode:"CDS_MODE", condition_data:"condition_data", axis_in:"axis_in", axis_mirror:"axis_mirror", up_stream:nil, down_stream:nil ) Tdl.add_to_all_file_paths('axis_mirrors','../../axi/AXI_stream/axis_mirrors.sv') # GlobalParam.CurrTdlModule.add_to_all_file_paths(['axis_mirrors','../../axi/AXI_stream/axis_mirrors.sv']) return_stream = self axis_in = AxiStream.same_name_socket(:from_up,mix=true,axis_in,nil,belong_to_module) unless axis_in.is_a? String axis_mirror = AxiStream.same_name_socket(:to_down,mix=false,axis_mirror,nil,belong_to_module) unless axis_mirror.is_a? String if up_stream.nil? && axis_in.eql?("axis_in") && (!(axis_mirror.eql?("axis_mirror")) || !down_stream.nil?) # up_stream = self.copy(name:"axis_in") # return_stream = up_stream axis_mirror = down_stream if down_stream return down_stream.axis_mirrors(axis_in:self) end axis_in = up_stream if up_stream unless self.eql? belong_to_module.AxiStream_NC axis_mirror = self else if down_stream axis_mirror = down_stream end end belong_to_module.AxiStream_draw << axis_mirrors_draw( h:h, l:l, num:num, mode:mode, condition_data:condition_data, axis_in:axis_in, axis_mirror:axis_mirror, up_stream:up_stream, down_stream:down_stream) return return_stream end |
#axis_mirrors_draw(h: 0, l: 0, num: 8, mode: "CDS_MODE", condition_data: "condition_data", axis_in: "axis_in", axis_mirror: "axis_mirror", up_stream: nil, down_stream: nil) ⇒ Object
60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 |
# File 'lib/tdl/axi_stream/axis_mirrors_auto.rb', line 60 def axis_mirrors_draw( h:0, l:0, num:8, mode:"CDS_MODE", condition_data:"condition_data", axis_in:"axis_in", axis_mirror:"axis_mirror", up_stream:nil, down_stream:nil ) large_name_len( h, l, num, mode, condition_data, axis_in, axis_mirror ) instance_name = "axis_mirrors_#{signal}_inst" " // FilePath:::../../axi/AXI_stream/axis_mirrors.sv axis_mirrors#( .H (#{align_signal(h)}), .L (#{align_signal(l)}), .NUM (#{align_signal(num)}), .MODE (#{align_signal(mode)}) ) #{instance_name}( /* input [H:L] */ .condition_data (#{align_signal(condition_data,q_mark=false)}), /* axi_stream_inf.slaver*/ .axis_in (#{align_signal(axis_in,q_mark=false)}), /* axi_stream_inf.master*/ .axis_mirror (#{align_signal(axis_mirror,q_mark=false)}) ); " end |
#axis_pkt_fifo_filter_keep(depth: 2, axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 |
# File 'lib/tdl/axi_stream/axis_pkt_fifo_filter_keep_auto.rb', line 9 def axis_pkt_fifo_filter_keep( depth:2 , axis_in:"axis_in", axis_out:"axis_out", up_stream:nil, down_stream:nil ) Tdl.add_to_all_file_paths('axis_pkt_fifo_filter_keep','../../axi/AXI_stream/packet_fifo/axis_pkt_fifo_filter_keep.sv') # GlobalParam.CurrTdlModule.add_to_all_file_paths(['axis_pkt_fifo_filter_keep','../../axi/AXI_stream/packet_fifo/axis_pkt_fifo_filter_keep.sv']) return_stream = self axis_in = AxiStream.same_name_socket(:from_up,mix=true,axis_in,nil,belong_to_module) unless axis_in.is_a? String axis_out = AxiStream.same_name_socket(:to_down,mix=true,axis_out,nil,belong_to_module) unless axis_out.is_a? String if up_stream.nil? && axis_in.eql?("axis_in") && (!(axis_out.eql?("axis_out")) || !down_stream.nil?) # up_stream = self.copy(name:"axis_in") # return_stream = up_stream axis_out = down_stream if down_stream return down_stream.axis_pkt_fifo_filter_keep(axis_in:self) end axis_in = up_stream if up_stream unless self.eql? belong_to_module.AxiStream_NC axis_out = self else if down_stream axis_out = down_stream end end belong_to_module.AxiStream_draw << axis_pkt_fifo_filter_keep_draw( depth:depth, axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) return return_stream end |
#axis_pkt_fifo_filter_keep_a1(depth: 2, axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 |
# File 'lib/tdl/axi_stream/axis_pkt_fifo_filter_keep_A1_auto.rb', line 9 def axis_pkt_fifo_filter_keep_a1( depth:2 , axis_in:"axis_in", axis_out:"axis_out", up_stream:nil, down_stream:nil ) Tdl.add_to_all_file_paths('axis_pkt_fifo_filter_keep_a1','../../axi/AXI_stream/packet_fifo/axis_pkt_fifo_filter_keep_A1.sv') # GlobalParam.CurrTdlModule.add_to_all_file_paths(['axis_pkt_fifo_filter_keep_a1','../../axi/AXI_stream/packet_fifo/axis_pkt_fifo_filter_keep_A1.sv']) return_stream = self axis_in = AxiStream.same_name_socket(:from_up,mix=true,axis_in,nil,belong_to_module) unless axis_in.is_a? String axis_out = AxiStream.same_name_socket(:to_down,mix=true,axis_out,nil,belong_to_module) unless axis_out.is_a? String if up_stream.nil? && axis_in.eql?("axis_in") && (!(axis_out.eql?("axis_out")) || !down_stream.nil?) # up_stream = self.copy(name:"axis_in") # return_stream = up_stream axis_out = down_stream if down_stream return down_stream.axis_pkt_fifo_filter_keep_a1(axis_in:self) end axis_in = up_stream if up_stream unless self.eql? belong_to_module.AxiStream_NC axis_out = self else if down_stream axis_out = down_stream end end belong_to_module.AxiStream_draw << axis_pkt_fifo_filter_keep_a1_draw( depth:depth, axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) return return_stream end |
#axis_pkt_fifo_filter_keep_draw(depth: 2, axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 |
# File 'lib/tdl/axi_stream/axis_pkt_fifo_filter_keep_auto.rb', line 52 def axis_pkt_fifo_filter_keep_draw( depth:2 , axis_in:"axis_in", axis_out:"axis_out", up_stream:nil, down_stream:nil ) large_name_len( depth, axis_in, axis_out ) instance_name = "axis_pkt_fifo_filter_keep_#{signal}_inst" " // FilePath:::../../axi/AXI_stream/packet_fifo/axis_pkt_fifo_filter_keep.sv axis_pkt_fifo_filter_keep#( .DEPTH (#{align_signal(depth)}) ) #{instance_name}( /* axi_stream_inf.slaver*/ .axis_in (#{align_signal(axis_in,q_mark=false)}), /* axi_stream_inf.master*/ .axis_out (#{align_signal(axis_out,q_mark=false)}) ); " end |
#axis_ram_buffer(length: 4096, wr_en: "wr_en", gen_en: "gen_en", gen_ready: "gen_ready", axis_wr_inf: "axis_wr_inf", axis_data_inf: "axis_data_inf", up_stream: nil, down_stream: nil) ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 |
# File 'lib/tdl/axi_stream/axis_ram_buffer_auto.rb', line 9 def axis_ram_buffer( length:4096, wr_en:"wr_en", gen_en:"gen_en", gen_ready:"gen_ready", axis_wr_inf:"axis_wr_inf", axis_data_inf:"axis_data_inf", up_stream:nil, down_stream:nil ) Tdl.add_to_all_file_paths('axis_ram_buffer','../../axi/AXI_stream/axis_ram_buffer.sv') # GlobalParam.CurrTdlModule.add_to_all_file_paths(['axis_ram_buffer','../../axi/AXI_stream/axis_ram_buffer.sv']) return_stream = self axis_wr_inf = AxiStream.same_name_socket(:from_up,mix=true,axis_wr_inf,nil,belong_to_module) unless axis_wr_inf.is_a? String axis_data_inf = AxiStream.same_name_socket(:to_down,mix=true,axis_data_inf,nil,belong_to_module) unless axis_data_inf.is_a? String if up_stream.nil? && axis_wr_inf.eql?("axis_wr_inf") && (!(axis_data_inf.eql?("axis_data_inf")) || !down_stream.nil?) # up_stream = self.copy(name:"axis_wr_inf") # return_stream = up_stream axis_data_inf = down_stream if down_stream return down_stream.axis_ram_buffer(axis_wr_inf:self) end axis_wr_inf = up_stream if up_stream unless self.eql? belong_to_module.AxiStream_NC axis_data_inf = self else if down_stream axis_data_inf = down_stream end end belong_to_module.AxiStream_draw << axis_ram_buffer_draw( length:length, wr_en:wr_en, gen_en:gen_en, gen_ready:gen_ready, axis_wr_inf:axis_wr_inf, axis_data_inf:axis_data_inf, up_stream:up_stream, down_stream:down_stream) return return_stream end |
#axis_ram_buffer_draw(length: 4096, wr_en: "wr_en", gen_en: "gen_en", gen_ready: "gen_ready", axis_wr_inf: "axis_wr_inf", axis_data_inf: "axis_data_inf", up_stream: nil, down_stream: nil) ⇒ Object
58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 |
# File 'lib/tdl/axi_stream/axis_ram_buffer_auto.rb', line 58 def axis_ram_buffer_draw( length:4096, wr_en:"wr_en", gen_en:"gen_en", gen_ready:"gen_ready", axis_wr_inf:"axis_wr_inf", axis_data_inf:"axis_data_inf", up_stream:nil, down_stream:nil ) large_name_len( length, wr_en, gen_en, gen_ready, axis_wr_inf, axis_data_inf ) instance_name = "axis_ram_buffer_#{signal}_inst" " // FilePath:::../../axi/AXI_stream/axis_ram_buffer.sv axis_ram_buffer#( .LENGTH (#{align_signal(length)}) ) #{instance_name}( /* input */ .wr_en (#{align_signal(wr_en,q_mark=false)}), /* input */ .gen_en (#{align_signal(gen_en,q_mark=false)}), /* output */ .gen_ready (#{align_signal(gen_ready,q_mark=false)}), /* axi_stream_inf.slaver*/ .axis_wr_inf (#{align_signal(axis_wr_inf,q_mark=false)}), /* axi_stream_inf.master*/ .axis_data_inf (#{align_signal(axis_data_inf,q_mark=false)}) ); " end |
#axis_slaver_pipe(axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 |
# File 'lib/tdl/axi_stream/axis_slaver_pipe_auto.rb', line 9 def axis_slaver_pipe( axis_in:"axis_in", axis_out:"axis_out", up_stream:nil, down_stream:nil ) Tdl.add_to_all_file_paths('axis_slaver_pipe','../../axi/AXI_stream/axis_slaver_pipe.sv') # GlobalParam.CurrTdlModule.add_to_all_file_paths(['axis_slaver_pipe','../../axi/AXI_stream/axis_slaver_pipe.sv']) return_stream = self axis_in = AxiStream.same_name_socket(:from_up,mix=true,axis_in,nil,belong_to_module) unless axis_in.is_a? String axis_out = AxiStream.same_name_socket(:to_down,mix=true,axis_out,nil,belong_to_module) unless axis_out.is_a? String if up_stream.nil? && axis_in.eql?("axis_in") && (!(axis_out.eql?("axis_out")) || !down_stream.nil?) # up_stream = self.copy(name:"axis_in") # return_stream = up_stream axis_out = down_stream if down_stream return down_stream.axis_slaver_pipe(axis_in:self) end axis_in = up_stream if up_stream unless self.eql? belong_to_module.AxiStream_NC axis_out = self else if down_stream axis_out = down_stream end end belong_to_module.AxiStream_draw << axis_slaver_pipe_draw( axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) return return_stream end |
#axis_slaver_pipe_a1(depth: 1, axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 |
# File 'lib/tdl/axi_stream/axis_slaver_pipe_A1_auto.rb', line 9 def axis_slaver_pipe_a1( depth:1, axis_in:"axis_in", axis_out:"axis_out", up_stream:nil, down_stream:nil ) Tdl.add_to_all_file_paths('axis_slaver_pipe_a1','../../axi/AXI_stream/axis_slaver_pipe_A1.sv') # GlobalParam.CurrTdlModule.add_to_all_file_paths(['axis_slaver_pipe_a1','../../axi/AXI_stream/axis_slaver_pipe_A1.sv']) return_stream = self axis_in = AxiStream.same_name_socket(:from_up,mix=true,axis_in,nil,belong_to_module) unless axis_in.is_a? String axis_out = AxiStream.same_name_socket(:to_down,mix=true,axis_out,nil,belong_to_module) unless axis_out.is_a? String if up_stream.nil? && axis_in.eql?("axis_in") && (!(axis_out.eql?("axis_out")) || !down_stream.nil?) # up_stream = self.copy(name:"axis_in") # return_stream = up_stream axis_out = down_stream if down_stream return down_stream.axis_slaver_pipe_a1(axis_in:self) end axis_in = up_stream if up_stream unless self.eql? belong_to_module.AxiStream_NC axis_out = self else if down_stream axis_out = down_stream end end belong_to_module.AxiStream_draw << axis_slaver_pipe_a1_draw( depth:depth, axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) return return_stream end |
#axis_slaver_pipe_a1_draw(depth: 1, axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 |
# File 'lib/tdl/axi_stream/axis_slaver_pipe_A1_auto.rb', line 52 def axis_slaver_pipe_a1_draw( depth:1, axis_in:"axis_in", axis_out:"axis_out", up_stream:nil, down_stream:nil ) large_name_len( depth, axis_in, axis_out ) instance_name = "axis_slaver_pipe_A1_#{signal}_inst" " // FilePath:::../../axi/AXI_stream/axis_slaver_pipe_A1.sv axis_slaver_pipe_A1#( .DEPTH (#{align_signal(depth)}) ) #{instance_name}( /* axi_stream_inf.slaver*/ .axis_in (#{align_signal(axis_in,q_mark=false)}), /* axi_stream_inf.master*/ .axis_out (#{align_signal(axis_out,q_mark=false)}) ); " end |
#axis_slaver_pipe_draw(axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 |
# File 'lib/tdl/axi_stream/axis_slaver_pipe_auto.rb', line 50 def axis_slaver_pipe_draw( axis_in:"axis_in", axis_out:"axis_out", up_stream:nil, down_stream:nil ) large_name_len( axis_in, axis_out ) instance_name = "axis_slaver_pipe_#{signal}_inst" " // FilePath:::../../axi/AXI_stream/axis_slaver_pipe.sv axis_slaver_pipe #{instance_name}( /* axi_stream_inf.slaver*/ .axis_in (#{align_signal(axis_in,q_mark=false)}), /* axi_stream_inf.master*/ .axis_out (#{align_signal(axis_out,q_mark=false)}) ); " end |
#axis_tdata(h = nil, l = nil) ⇒ Object
567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 |
# File 'lib/tdl/elements/axi_stream.rb', line 567 def axis_tdata(h=nil,l=nil) raise TdlError.new("\nARRAY Don't have 'axis_tdata'") unless @dimension.empty? if h.is_a? Range l = h.to_a.min h = h.to_a.max end if h if l sqr = "[#{h.to_s}:#{l.to_s}]" else sqr = "[#{h.to_s}]" end else sqr = "" end NqString.new(signal.concat(".axis_tdata").concat(sqr)) end |
#axis_valve(button: "button", axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 |
# File 'lib/tdl/axi_stream/axis_valve_auto.rb', line 9 def axis_valve( button:"button", axis_in:"axis_in", axis_out:"axis_out", up_stream:nil, down_stream:nil ) Tdl.add_to_all_file_paths('axis_valve','../../axi/AXI_stream/axis_valve.sv') # GlobalParam.CurrTdlModule.add_to_all_file_paths(['axis_valve','../../axi/AXI_stream/axis_valve.sv']) return_stream = self axis_in = AxiStream.same_name_socket(:from_up,mix=true,axis_in,nil,belong_to_module) unless axis_in.is_a? String axis_out = AxiStream.same_name_socket(:to_down,mix=true,axis_out,nil,belong_to_module) unless axis_out.is_a? String if up_stream.nil? && axis_in.eql?("axis_in") && (!(axis_out.eql?("axis_out")) || !down_stream.nil?) # up_stream = self.copy(name:"axis_in") # return_stream = up_stream axis_out = down_stream if down_stream return down_stream.axis_valve(axis_in:self) end axis_in = up_stream if up_stream unless self.eql? belong_to_module.AxiStream_NC axis_out = self else if down_stream axis_out = down_stream end end belong_to_module.AxiStream_draw << axis_valve_draw( button:, axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) return return_stream end |
#axis_valve_draw(button: "button", axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 |
# File 'lib/tdl/axi_stream/axis_valve_auto.rb', line 52 def axis_valve_draw( button:"button", axis_in:"axis_in", axis_out:"axis_out", up_stream:nil, down_stream:nil ) large_name_len( , axis_in, axis_out ) instance_name = "axis_valve_#{signal}_inst" " // FilePath:::../../axi/AXI_stream/axis_valve.sv axis_valve #{instance_name}( /* input */ .button (#{align_signal(,q_mark=false)}), /* axi_stream_inf.slaver*/ .axis_in (#{align_signal(axis_in,q_mark=false)}), /* axi_stream_inf.master*/ .axis_out (#{align_signal(axis_out,q_mark=false)}) ); " end |
#axis_valve_with_pipe(button: "button", axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 |
# File 'lib/tdl/axi_stream/axis_valve_with_pipe_auto.rb', line 9 def axis_valve_with_pipe( mode:"BOTH", button:"button", axis_in:"axis_in", axis_out:"axis_out", up_stream:nil, down_stream:nil ) Tdl.add_to_all_file_paths('axis_valve_with_pipe','../../axi/AXI_stream/axis_valve_with_pipe.sv') # GlobalParam.CurrTdlModule.add_to_all_file_paths(['axis_valve_with_pipe','../../axi/AXI_stream/axis_valve_with_pipe.sv']) return_stream = self axis_in = AxiStream.same_name_socket(:from_up,mix=true,axis_in,nil,belong_to_module) unless axis_in.is_a? String axis_out = AxiStream.same_name_socket(:to_down,mix=true,axis_out,nil,belong_to_module) unless axis_out.is_a? String if up_stream.nil? && axis_in.eql?("axis_in") && (!(axis_out.eql?("axis_out")) || !down_stream.nil?) # up_stream = self.copy(name:"axis_in") # return_stream = up_stream axis_out = down_stream if down_stream return down_stream.axis_valve_with_pipe(axis_in:self) end axis_in = up_stream if up_stream unless self.eql? belong_to_module.AxiStream_NC axis_out = self else if down_stream axis_out = down_stream end end belong_to_module.AxiStream_draw << axis_valve_with_pipe_draw( mode:mode, button:, axis_in:axis_in, axis_out:axis_out, up_stream:up_stream, down_stream:down_stream) return return_stream end |
#axis_valve_with_pipe_draw(button: "button", axis_in: "axis_in", axis_out: "axis_out", up_stream: nil, down_stream: nil) ⇒ Object
54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 |
# File 'lib/tdl/axi_stream/axis_valve_with_pipe_auto.rb', line 54 def axis_valve_with_pipe_draw( mode:"BOTH", button:"button", axis_in:"axis_in", axis_out:"axis_out", up_stream:nil, down_stream:nil ) large_name_len( mode, , axis_in, axis_out ) instance_name = "axis_valve_with_pipe_#{signal}_inst" " // FilePath:::../../axi/AXI_stream/axis_valve_with_pipe.sv axis_valve_with_pipe#( .MODE (#{align_signal(mode)}) ) #{instance_name}( /* input */ .button (#{align_signal(,q_mark=false)}), /* axi_stream_inf.slaver*/ .axis_in (#{align_signal(axis_in,q_mark=false)}), /* axi_stream_inf.master*/ .axis_out (#{align_signal(axis_out,q_mark=false)}) ); " end |
#axis_width_combin(slim_axis: "slim_axis", wide_axis: "wide_axis", up_stream: nil, down_stream: nil) ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 |
# File 'lib/tdl/axi_stream/axis_width_combin_auto.rb', line 9 def axis_width_combin( slim_axis:"slim_axis", wide_axis:"wide_axis", up_stream:nil, down_stream:nil ) Tdl.add_to_all_file_paths('axis_width_combin','../../axi/AXI_stream/data_width/axis_width_combin.sv') # GlobalParam.CurrTdlModule.add_to_all_file_paths(['axis_width_combin','../../axi/AXI_stream/data_width/axis_width_combin.sv']) return_stream = self slim_axis = AxiStream.same_name_socket(:from_up,mix=true,slim_axis,nil,belong_to_module) unless slim_axis.is_a? String wide_axis = AxiStream.same_name_socket(:to_down,mix=true,wide_axis,nil,belong_to_module) unless wide_axis.is_a? String if up_stream.nil? && slim_axis.eql?("slim_axis") && (!(wide_axis.eql?("wide_axis")) || !down_stream.nil?) # up_stream = self.copy(name:"slim_axis") # return_stream = up_stream wide_axis = down_stream if down_stream return down_stream.axis_width_combin(slim_axis:self) end slim_axis = up_stream if up_stream unless self.eql? belong_to_module.AxiStream_NC wide_axis = self else if down_stream wide_axis = down_stream end end belong_to_module.AxiStream_draw << axis_width_combin_draw( slim_axis:slim_axis, wide_axis:wide_axis, up_stream:up_stream, down_stream:down_stream) return return_stream end |
#axis_width_combin_a1(slim_axis: "slim_axis", wide_axis: "wide_axis", up_stream: nil, down_stream: nil) ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 |
# File 'lib/tdl/axi_stream/axis_width_combin_A1_auto.rb', line 9 def axis_width_combin_a1( slim_axis:"slim_axis", wide_axis:"wide_axis", up_stream:nil, down_stream:nil ) Tdl.add_to_all_file_paths('axis_width_combin_a1','../../axi/AXI_stream/data_width/axis_width_combin_A1.sv') # GlobalParam.CurrTdlModule.add_to_all_file_paths(['axis_width_combin_a1','../../axi/AXI_stream/data_width/axis_width_combin_A1.sv']) return_stream = self slim_axis = AxiStream.same_name_socket(:from_up,mix=true,slim_axis,nil,belong_to_module) unless slim_axis.is_a? String wide_axis = AxiStream.same_name_socket(:to_down,mix=true,wide_axis,nil,belong_to_module) unless wide_axis.is_a? String if up_stream.nil? && slim_axis.eql?("slim_axis") && (!(wide_axis.eql?("wide_axis")) || !down_stream.nil?) # up_stream = self.copy(name:"slim_axis") # return_stream = up_stream wide_axis = down_stream if down_stream return down_stream.axis_width_combin_a1(slim_axis:self) end slim_axis = up_stream if up_stream unless self.eql? belong_to_module.AxiStream_NC wide_axis = self else if down_stream wide_axis = down_stream end end belong_to_module.AxiStream_draw << axis_width_combin_a1_draw( slim_axis:slim_axis, wide_axis:wide_axis, up_stream:up_stream, down_stream:down_stream) return return_stream end |
#axis_width_combin_draw(slim_axis: "slim_axis", wide_axis: "wide_axis", up_stream: nil, down_stream: nil) ⇒ Object
50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 |
# File 'lib/tdl/axi_stream/axis_width_combin_auto.rb', line 50 def axis_width_combin_draw( slim_axis:"slim_axis", wide_axis:"wide_axis", up_stream:nil, down_stream:nil ) large_name_len( slim_axis, wide_axis ) instance_name = "axis_width_combin_#{signal}_inst" " // FilePath:::../../axi/AXI_stream/data_width/axis_width_combin.sv axis_width_combin #{instance_name}( /* axi_stream_inf.slaver*/ .slim_axis (#{align_signal(slim_axis,q_mark=false)}), /* axi_stream_inf.master*/ .wide_axis (#{align_signal(wide_axis,q_mark=false)}) ); " end |
#axis_width_convert(in_axis: "in_axis", out_axis: "out_axis", up_stream: nil, down_stream: nil) ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 |
# File 'lib/tdl/axi_stream/axis_width_convert_auto.rb', line 9 def axis_width_convert( in_axis:"in_axis", out_axis:"out_axis", up_stream:nil, down_stream:nil ) Tdl.add_to_all_file_paths('axis_width_convert','../../axi/AXI_stream/data_width/axis_width_convert.sv') # GlobalParam.CurrTdlModule.add_to_all_file_paths(['axis_width_convert','../../axi/AXI_stream/data_width/axis_width_convert.sv']) return_stream = self in_axis = AxiStream.same_name_socket(:from_up,mix=true,in_axis,nil,belong_to_module) unless in_axis.is_a? String out_axis = AxiStream.same_name_socket(:to_down,mix=true,out_axis,nil,belong_to_module) unless out_axis.is_a? String if up_stream.nil? && in_axis.eql?("in_axis") && (!(out_axis.eql?("out_axis")) || !down_stream.nil?) # up_stream = self.copy(name:"in_axis") # return_stream = up_stream out_axis = down_stream if down_stream return down_stream.axis_width_convert(in_axis:self) end in_axis = up_stream if up_stream unless self.eql? belong_to_module.AxiStream_NC out_axis = self else if down_stream out_axis = down_stream end end belong_to_module.AxiStream_draw << axis_width_convert_draw( in_axis:in_axis, out_axis:out_axis, up_stream:up_stream, down_stream:down_stream) return return_stream end |
#axis_width_convert_draw(in_axis: "in_axis", out_axis: "out_axis", up_stream: nil, down_stream: nil) ⇒ Object
50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 |
# File 'lib/tdl/axi_stream/axis_width_convert_auto.rb', line 50 def axis_width_convert_draw( in_axis:"in_axis", out_axis:"out_axis", up_stream:nil, down_stream:nil ) large_name_len( in_axis, out_axis ) instance_name = "axis_width_convert_#{signal}_inst" " // FilePath:::../../axi/AXI_stream/data_width/axis_width_convert.sv axis_width_convert #{instance_name}( /* axi_stream_inf.slaver*/ .in_axis (#{align_signal(in_axis,q_mark=false)}), /* axi_stream_inf.master*/ .out_axis (#{align_signal(out_axis,q_mark=false)}) ); " end |
#axis_width_destruct(wide_axis: "wide_axis", slim_axis: "slim_axis", up_stream: nil, down_stream: nil) ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 |
# File 'lib/tdl/axi_stream/axis_width_destruct_auto.rb', line 9 def axis_width_destruct( wide_axis:"wide_axis", slim_axis:"slim_axis", up_stream:nil, down_stream:nil ) Tdl.add_to_all_file_paths('axis_width_destruct','../../axi/AXI_stream/data_width/axis_width_destruct.sv') # GlobalParam.CurrTdlModule.add_to_all_file_paths(['axis_width_destruct','../../axi/AXI_stream/data_width/axis_width_destruct.sv']) return_stream = self wide_axis = AxiStream.same_name_socket(:from_up,mix=true,wide_axis,nil,belong_to_module) unless wide_axis.is_a? String slim_axis = AxiStream.same_name_socket(:to_down,mix=true,slim_axis,nil,belong_to_module) unless slim_axis.is_a? String if up_stream.nil? && wide_axis.eql?("wide_axis") && (!(slim_axis.eql?("slim_axis")) || !down_stream.nil?) # up_stream = self.copy(name:"wide_axis") # return_stream = up_stream slim_axis = down_stream if down_stream return down_stream.axis_width_destruct(wide_axis:self) end wide_axis = up_stream if up_stream unless self.eql? belong_to_module.AxiStream_NC slim_axis = self else if down_stream slim_axis = down_stream end end belong_to_module.AxiStream_draw << axis_width_destruct_draw( wide_axis:wide_axis, slim_axis:slim_axis, up_stream:up_stream, down_stream:down_stream) return return_stream end |
#axis_width_destruct_a1(wide_axis: "wide_axis", slim_axis: "slim_axis", up_stream: nil, down_stream: nil) ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 |
# File 'lib/tdl/axi_stream/axis_width_destruct_A1.sv_auto.rb', line 9 def axis_width_destruct_a1( wide_axis:"wide_axis", slim_axis:"slim_axis", up_stream:nil, down_stream:nil ) Tdl.add_to_all_file_paths('axis_width_destruct_a1','../../axi/AXI_stream/data_width/axis_width_destruct_A1.sv.new') # GlobalParam.CurrTdlModule.add_to_all_file_paths(['axis_width_destruct_a1','../../axi/AXI_stream/data_width/axis_width_destruct_A1.sv.new']) return_stream = self wide_axis = AxiStream.same_name_socket(:from_up,mix=true,wide_axis,nil,belong_to_module) unless wide_axis.is_a? String slim_axis = AxiStream.same_name_socket(:to_down,mix=true,slim_axis,nil,belong_to_module) unless slim_axis.is_a? String if up_stream.nil? && wide_axis.eql?("wide_axis") && (!(slim_axis.eql?("slim_axis")) || !down_stream.nil?) # up_stream = self.copy(name:"wide_axis") # return_stream = up_stream slim_axis = down_stream if down_stream return down_stream.axis_width_destruct_a1(wide_axis:self) end wide_axis = up_stream if up_stream unless self.eql? belong_to_module.AxiStream_NC slim_axis = self else if down_stream slim_axis = down_stream end end belong_to_module.AxiStream_draw << axis_width_destruct_a1_draw( wide_axis:wide_axis, slim_axis:slim_axis, up_stream:up_stream, down_stream:down_stream) return return_stream end |
#axis_width_destruct_draw(wide_axis: "wide_axis", slim_axis: "slim_axis", up_stream: nil, down_stream: nil) ⇒ Object
50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 |
# File 'lib/tdl/axi_stream/axis_width_destruct_auto.rb', line 50 def axis_width_destruct_draw( wide_axis:"wide_axis", slim_axis:"slim_axis", up_stream:nil, down_stream:nil ) large_name_len( wide_axis, slim_axis ) instance_name = "axis_width_destruct_#{signal}_inst" " // FilePath:::../../axi/AXI_stream/data_width/axis_width_destruct.sv axis_width_destruct #{instance_name}( /* axi_stream_inf.slaver*/ .wide_axis (#{align_signal(wide_axis,q_mark=false)}), /* axi_stream_inf.master*/ .slim_axis (#{align_signal(slim_axis,q_mark=false)}) ); " end |
#branch(name: nil, clock: @clock, reset: @reset, dsize: @dsize, freqM: nil) ⇒ Object
119 120 121 122 123 |
# File 'lib/tdl/elements/axi_stream.rb', line 119 def branch(name:@name,clock:@clock,reset:@reset,dsize:@dsize,freqM:nil) a = copy(name:name,clock:clock,reset:reset,dsize:dsize,freqM:freqM) self << a return a end |
#clock_reset_taps(def_clock_name, def_reset_name) ⇒ Object
669 670 671 672 |
# File 'lib/tdl/elements/axi_stream.rb', line 669 def clock_reset_taps(def_clock_name,def_reset_name) super(def_clock_name,def_reset_name,self.aclk,self.aresetn) end |
#collect_vector(axis_vector) ⇒ Object
151 152 153 154 155 156 157 |
# File 'lib/tdl/axi_stream/axi_stream_interconnect.rb', line 151 def collect_vector(axis_vector) num = dimension_num(axis_vector) if num.eql?(1) return self.axis_direct(up_stream:axis_vector) end belong_to_module.ExOther_inst << collect_vector_draw(num,axis_vector) end |
#direct(slaver: "slaver", master: "master", up_stream: nil, down_stream: nil) ⇒ Object
alias_method :direct,:axis_direct @@pre_inst << lambda
alias_method :direct,:axis_direct
return ""
506 507 508 |
# File 'lib/tdl/elements/axi_stream.rb', line 506 def direct(slaver:"slaver",master:"master",up_stream:nil,down_stream:nil) axis_direct(slaver:slaver,master:master,up_stream:up_stream,down_stream:down_stream) end |
#from_video_stream(video_slaver: nil, mode: "LINE") ⇒ Object
46 47 48 49 |
# File 'lib/tdl/VideoInf/video_stream_2_axi_stream.rb', line 46 def from_video_stream(video_slaver:nil,mode:"LINE") video_inf.to_axi_stream(axi_master:self,mode:mode) return video_slaver end |
#gen_big_field_table(master_mode: "OFF", dsize: 8, field_len: 16*8, field_name: "Big Filed", enable: "enable", value: "value", cm_tb: "cm_tb", down_stream: nil) ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 |
# File 'lib/tdl/axi_stream/gen_big_field_table_auto.rb', line 9 def gen_big_field_table( master_mode:"OFF", dsize:8, field_len:16*8, field_name:"Big Filed", enable:"enable", value:"value", cm_tb:"cm_tb", down_stream:nil ) Tdl.add_to_all_file_paths('gen_big_field_table','../../axi/AXI_stream/gen_big_field_table.sv') # GlobalParam.CurrTdlModule.add_to_all_file_paths(['gen_big_field_table','../../axi/AXI_stream/gen_big_field_table.sv']) return_stream = self cm_tb = AxiStream.same_name_socket(:to_down,mix=true,cm_tb,nil,belong_to_module) unless cm_tb.is_a? String unless self.eql? belong_to_module.AxiStream_NC cm_tb = self else if down_stream cm_tb = down_stream end end belong_to_module.AxiStream_draw << gen_big_field_table_draw( master_mode:master_mode, dsize:dsize, field_len:field_len, field_name:field_name, enable:enable, value:value, cm_tb:cm_tb, down_stream:down_stream) return return_stream end |
#gen_big_field_table_draw(master_mode: "OFF", dsize: 8, field_len: 16*8, field_name: "Big Filed", enable: "enable", value: "value", cm_tb: "cm_tb", down_stream: nil) ⇒ Object
50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 |
# File 'lib/tdl/axi_stream/gen_big_field_table_auto.rb', line 50 def gen_big_field_table_draw( master_mode:"OFF", dsize:8, field_len:16*8, field_name:"Big Filed", enable:"enable", value:"value", cm_tb:"cm_tb", down_stream:nil ) large_name_len( master_mode, dsize, field_len, field_name, enable, value, cm_tb ) instance_name = "gen_big_field_table_#{signal}_inst" " // FilePath:::../../axi/AXI_stream/gen_big_field_table.sv gen_big_field_table#( .MASTER_MODE (#{align_signal(master_mode)}), .DSIZE (#{align_signal(dsize)}), .FIELD_LEN (#{align_signal(field_len)}), .FIELD_NAME (#{align_signal(field_name)}) ) #{instance_name}( /* input */ .enable (#{align_signal(enable,q_mark=false)}), /* input [DSIZE*FIELD_LEN-1:0]*/ .value (#{align_signal(value,q_mark=false)}), /* axi_stream_inf.master */ .cm_tb (#{align_signal(cm_tb,q_mark=false)}) ); " end |
#gen_origin_axis(mode: "RANGE", enable: "enable", ready: "ready", length: "length", axis_out: "axis_out", down_stream: nil) ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 |
# File 'lib/tdl/axi_stream/gen_origin_axis_auto.rb', line 9 def gen_origin_axis( mode:"RANGE", enable:"enable", ready:"ready", length:"length", axis_out:"axis_out", down_stream:nil ) Tdl.add_to_all_file_paths('gen_origin_axis','../../axi/AXI_stream/gen_origin_axis.sv') # GlobalParam.CurrTdlModule.add_to_all_file_paths(['gen_origin_axis','../../axi/AXI_stream/gen_origin_axis.sv']) return_stream = self axis_out = AxiStream.same_name_socket(:to_down,mix=true,axis_out,nil,belong_to_module) unless axis_out.is_a? String unless self.eql? belong_to_module.AxiStream_NC axis_out = self else if down_stream axis_out = down_stream end end belong_to_module.AxiStream_draw << gen_origin_axis_draw( mode:mode, enable:enable, ready:ready, length:length, axis_out:axis_out, down_stream:down_stream) return return_stream end |
#gen_origin_axis_a1(mode: "RANGE", enable: "enable", ready: "ready", length: "length", start: "start", axis_out: "axis_out", down_stream: nil) ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 |
# File 'lib/tdl/axi_stream/gen_origin_axis_A1_auto.rb', line 9 def gen_origin_axis_a1( mode:"RANGE", enable:"enable", ready:"ready", length:"length", start:"start", axis_out:"axis_out", down_stream:nil ) Tdl.add_to_all_file_paths('gen_origin_axis_a1','../../axi/AXI_stream/gen_origin_axis_A1.sv') # GlobalParam.CurrTdlModule.add_to_all_file_paths(['gen_origin_axis_a1','../../axi/AXI_stream/gen_origin_axis_A1.sv']) return_stream = self axis_out = AxiStream.same_name_socket(:to_down,mix=true,axis_out,nil,belong_to_module) unless axis_out.is_a? String unless self.eql? belong_to_module.AxiStream_NC axis_out = self else if down_stream axis_out = down_stream end end belong_to_module.AxiStream_draw << gen_origin_axis_a1_draw( mode:mode, enable:enable, ready:ready, length:length, start:start, axis_out:axis_out, down_stream:down_stream) return return_stream end |
#gen_origin_axis_draw(mode: "RANGE", enable: "enable", ready: "ready", length: "length", axis_out: "axis_out", down_stream: nil) ⇒ Object
46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 |
# File 'lib/tdl/axi_stream/gen_origin_axis_auto.rb', line 46 def gen_origin_axis_draw( mode:"RANGE", enable:"enable", ready:"ready", length:"length", axis_out:"axis_out", down_stream:nil ) large_name_len( mode, enable, ready, length, axis_out ) instance_name = "gen_origin_axis_#{signal}_inst" " // FilePath:::../../axi/AXI_stream/gen_origin_axis.sv gen_origin_axis#( .MODE (#{align_signal(mode)}) ) #{instance_name}( /* input */ .enable (#{align_signal(enable,q_mark=false)}), /* output */ .ready (#{align_signal(ready,q_mark=false)}), /* input [31:0] */ .length (#{align_signal(length,q_mark=false)}), /* axi_stream_inf.master*/ .axis_out (#{align_signal(axis_out,q_mark=false)}) ); " end |
#gen_origin_draw ⇒ Object
132 133 134 |
# File 'lib/tdl/elements/axi_stream.rb', line 132 def gen_origin_draw "" end |
#gen_simple_axis(mode: "RANGE", trigger: "trigger", gen_en: "gen_en", length: "length", led: "led", axis_out: "axis_out", down_stream: nil) ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 |
# File 'lib/tdl/axi_stream/gen_simple_axis_auto.rb', line 9 def gen_simple_axis( mode:"RANGE", trigger:"trigger", gen_en:"gen_en", length:"length", led:"led", axis_out:"axis_out", down_stream:nil ) Tdl.add_to_all_file_paths('gen_simple_axis','../../axi/AXI_stream/gen_simple_axis.sv') # GlobalParam.CurrTdlModule.add_to_all_file_paths(['gen_simple_axis','../../axi/AXI_stream/gen_simple_axis.sv']) return_stream = self axis_out = AxiStream.same_name_socket(:to_down,mix=true,axis_out,nil,belong_to_module) unless axis_out.is_a? String unless self.eql? belong_to_module.AxiStream_NC axis_out = self else if down_stream axis_out = down_stream end end belong_to_module.AxiStream_draw << gen_simple_axis_draw( mode:mode, trigger:trigger, gen_en:gen_en, length:length, led:led, axis_out:axis_out, down_stream:down_stream) return return_stream end |
#gen_simple_axis_draw(mode: "RANGE", trigger: "trigger", gen_en: "gen_en", length: "length", led: "led", axis_out: "axis_out", down_stream: nil) ⇒ Object
48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 |
# File 'lib/tdl/axi_stream/gen_simple_axis_auto.rb', line 48 def gen_simple_axis_draw( mode:"RANGE", trigger:"trigger", gen_en:"gen_en", length:"length", led:"led", axis_out:"axis_out", down_stream:nil ) large_name_len( mode, trigger, gen_en, length, led, axis_out ) instance_name = "gen_simple_axis_#{signal}_inst" " // FilePath:::../../axi/AXI_stream/gen_simple_axis.sv gen_simple_axis#( .MODE (#{align_signal(mode)}) ) #{instance_name}( /* input */ .trigger (#{align_signal(trigger,q_mark=false)}), /* input */ .gen_en (#{align_signal(gen_en,q_mark=false)}), /* input [15:0] */ .length (#{align_signal(length,q_mark=false)}), /* output */ .led (#{align_signal(led,q_mark=false)}), /* axi_stream_inf.master*/ .axis_out (#{align_signal(axis_out,q_mark=false)}) ); " end |
#inherited(name: nil, clock: nil, reset: nil, dsize: nil, freqM: nil, dimension: []) ⇒ Object Also known as: copy
103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 |
# File 'lib/tdl/elements/axi_stream.rb', line 103 def inherited(name:@name.to_s,clock: nil,reset: nil,dsize: nil,freqM: nil,dimension:[]) a = nil ClassHDL::AssignDefOpertor.with_rollback_opertors(:old) do append_name = name_copy(name) _freqM = use_which_freq_when_copy(clock,freqM) a = belong_to_module.Def.axi_stream( name:append_name, clock: clock || self.aclk, reset: reset || self.aresetn, dsize: dsize || self.DSIZE, freqM: _freqM, dimension: dimension) end a end |
#inst ⇒ Object
68 69 70 71 72 73 74 75 76 77 78 79 |
# File 'lib/tdl/elements/axi_stream.rb', line 68 def inst return "" if @ghost if @reset.is_a? SignalElm if @reset.active.casecmp("LOW") == 0 "axi_stream_inf #(.DSIZE(#{dsize}),.FreqM(#{intf_def_freqM})) #{signal}#{array_inst} (.aclk(#{compact_signal(@clock)}),.aresetn(#{@reset.signal}),.aclken(1'b1));" else "axi_stream_inf #(.DSIZE(#{dsize}),.FreqM(#{intf_def_freqM})) #{signal}#{array_inst} (.aclk(#{compact_signal(@clock)}),.aresetn(!#{@reset.signal}),.aclken(1'b1));" end else "axi_stream_inf #(.DSIZE(#{dsize}),.FreqM(#{intf_def_freqM})) #{signal}#{array_inst} (.aclk(#{compact_signal(@clock)}),.aresetn(#{compact_signal(@reset)}),.aclken(1'b1));" end end |
#inst_port ⇒ Object
85 86 87 88 89 90 91 92 |
# File 'lib/tdl/elements/axi_stream.rb', line 85 def inst_port # if @port # ("axi_stream_inf." + @port.to_s + " " + " "*sub_len + @name.to_s + array_inst) # end return ["axi_stream_inf." + @port.to_s,@name.to_s,array_inst] end |
#last(latency: 0) ⇒ Object
—– Design Ref ————————-
196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 |
# File 'lib/tdl/elements/axi_stream.rb', line 196 def last(latency:0) lat = %Q{ //----->> #{signal} LAST DELAY <<------------------ logic #{signal}_last_Q; latency #( .LAT (#{latency}), .DSIZE (1) )#{signal}_last_lat( #{signal}.aclk, #{signal}.aresetn, (#{signal}.axis_tvalid && #{signal}.axis_tready && #{signal}.axis_tlast), #{signal}_last_Q ); //-----<< #{signal} LAST DELAY >>------------------ } if latency > 0 # GlobalParam.CurrTdlModule.BindEleClassVars.AxiStream.pre_inst << lambda { lat } belong_to_module.AxiStream_draw << lat return "#{signal}_last_Q" else return "(#{signal}.axis_tvalid && #{signal}.axis_tready && #{signal}.axis_tlast)" end end |
#mirror_seq(start, lr) ⇒ Object
lr must larger than zero, START : START+lr-1
321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 |
# File 'lib/tdl/elements/axi_stream.rb', line 321 def mirror_seq(start,lr) #lr must larger than zero, START : START+lr-1 RedefOpertor.with_old_operators do @__mirror_seq_start_ ||= 1024 @__mirror_seq_end_ ||= 0 @__mirror_seq_start_ = start if @__mirror_seq_start_ > start @__mirror_seq_end_ = (start+lr) if (@__mirror_seq_end_ < (start+lr)) unless @_sub_mirror_seq_value @_sub_mirror_seq_value = belong_to_module.Def.logic(name:"#{signal(square:false)}_seq_value",dsize: -@dsize*(@__mirror_seq_end_-@__mirror_seq_start_),msb_high:false,port: :origin) end @_sub_mirror_seq_value.dsize = -@dsize*(@__mirror_seq_end_-@__mirror_seq_start_) if @__mirror_seq_start_ > 0 # @_sub_mirror_seq_value.send(:define_singleton_method,:inst) do @_sub_mirror_seq_value.instance_variable_set("@__mirror_seq_start_",@__mirror_seq_start_*@dsize) @_sub_mirror_seq_value.instance_variable_set("@__signal_name_",signal(square:false)+"_seq_value") @_sub_mirror_seq_value.define_singleton_method(:inst) do # puts @__mirror_seq_start_,@dsize "logic [#{@__mirror_seq_start_}:#{(@dsize.abs-1)+@__mirror_seq_start_}] #{@__signal_name_};\n" end end unless @_sub_mirror_seq_out_vld @_sub_mirror_seq_out_vld = belong_to_module.Def.logic(name:"#{signal(square:false)}_seq_vld",dsize:1,port: :origin) end unless @_mirror_seq_call_ @_mirror_seq_call_ = lambda { if @__mirror_seq_start_ == 0 enable = "1'b1" else enable = "(#{signal}.axis_tcnt >= #{@__mirror_seq_start_})" end @_mirror_p_cm_tb_m = copy(name:"cm_tb_m") AxiStream.parse_big_field_table_a2( dsize: @dsize, field_len:@__mirror_seq_end_ - @__mirror_seq_start_ , try_parse:"ON", enable:enable, value:@_sub_mirror_seq_value.signal(square:false), out_valid:@_sub_mirror_seq_out_vld, cm_tb_s:self, cm_tb_m:@_mirror_p_cm_tb_m, cm_mirror:self) } # Tdl.module_stack << @_mirror_seq_call_ belong_to_module.AxiStream_pre_inst_stack << @_mirror_seq_call_ end end return "#{@_sub_mirror_seq_value[start*@dsize,(start+lr)*@dsize-1]}" end |
#mirror_to(axis) ⇒ Object
401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 |
# File 'lib/tdl/elements/axi_stream.rb', line 401 def mirror_to(axis) a = "\n//--->> #{signal} MIRROR <<-----------------------\n" a +="assign #{axis.signal}.axis_tvalid = #{signal}.axis_tvalid;\n" a +="assign #{axis.signal}.axis_tdata = #{signal}.axis_tdata ;\n" a +="assign #{axis.signal}.axis_tlast = #{signal}.axis_tlast ;\n" a +="assign #{axis.signal}.axis_tready = #{signal}.axis_tready;\n" a +="assign #{axis.signal}.axis_tuser = #{signal}.axis_tuser;\n" a +="assign #{axis.signal}.axis_tkeep = #{signal}.axis_tkeep;\n" a += "//---<< #{signal} MIRROR >>-----------------------\n" # GlobalParam.CurrTdlModule.BindEleClassVars.AxiStream.draw_stack << lambda{ a } belong_to_module.AxiStream_draw << a "" end |
#parse_big_field_table(dsize: 8, field_len: 16*8, field_name: "Big Filed", try_parse: "OFF", enable: "enable", value: "value", out_valid: "out_valid", cm_tb_s: "cm_tb_s", cm_tb_m: "cm_tb_m", cm_mirror: "cm_mirror", up_stream: nil, down_stream: nil) ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 |
# File 'lib/tdl/axi_stream/parse_big_field_table_auto.rb', line 9 def parse_big_field_table( dsize:8, field_len:16*8, field_name:"Big Filed", try_parse:"OFF", enable:"enable", value:"value", out_valid:"out_valid", cm_tb_s:"cm_tb_s", cm_tb_m:"cm_tb_m", cm_mirror:"cm_mirror", up_stream:nil, down_stream:nil ) Tdl.add_to_all_file_paths('parse_big_field_table','../../axi/AXI_stream/parse_big_field_table.sv') # GlobalParam.CurrTdlModule.add_to_all_file_paths(['parse_big_field_table','../../axi/AXI_stream/parse_big_field_table.sv']) return_stream = self cm_tb_s = AxiStream.same_name_socket(:from_up,mix=true,cm_tb_s,nil,belong_to_module) unless cm_tb_s.is_a? String cm_tb_m = AxiStream.same_name_socket(:to_down,mix=true,cm_tb_m,nil,belong_to_module) unless cm_tb_m.is_a? String cm_mirror = AxiStream.same_name_socket(:mirror,mix=true,cm_mirror,nil,belong_to_module) unless cm_mirror.is_a? String if up_stream.nil? && cm_tb_s.eql?("cm_tb_s") && (!(cm_tb_m.eql?("cm_tb_m")) || !down_stream.nil?) # up_stream = self.copy(name:"cm_tb_s") # return_stream = up_stream cm_tb_m = down_stream if down_stream return down_stream.parse_big_field_table(cm_tb_s:self) end cm_tb_s = up_stream if up_stream unless self.eql? belong_to_module.AxiStream_NC cm_tb_m = self else if down_stream cm_tb_m = down_stream end end belong_to_module.AxiStream_draw << parse_big_field_table_draw( dsize:dsize, field_len:field_len, field_name:field_name, try_parse:try_parse, enable:enable, value:value, out_valid:out_valid, cm_tb_s:cm_tb_s, cm_tb_m:cm_tb_m, cm_mirror:cm_mirror, up_stream:up_stream, down_stream:down_stream) return return_stream end |
#parse_big_field_table_a1(dsize: 8, field_len: 16*8, field_name: "Big Filed", try_parse: "OFF", enable: "enable", value: "value", out_valid: "out_valid", cm_tb_s: "cm_tb_s", cm_tb_m: "cm_tb_m", cm_mirror: "cm_mirror", up_stream: nil, down_stream: nil) ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 |
# File 'lib/tdl/axi_stream/parse_big_field_table_A1_auto.rb', line 9 def parse_big_field_table_a1( dsize:8, field_len:16*8, field_name:"Big Filed", try_parse:"OFF", enable:"enable", value:"value", out_valid:"out_valid", cm_tb_s:"cm_tb_s", cm_tb_m:"cm_tb_m", cm_mirror:"cm_mirror", up_stream:nil, down_stream:nil ) Tdl.add_to_all_file_paths('parse_big_field_table_a1','../../axi/AXI_stream/parse_big_field_table_A1.sv') # GlobalParam.CurrTdlModule.add_to_all_file_paths(['parse_big_field_table_a1','../../axi/AXI_stream/parse_big_field_table_A1.sv']) return_stream = self cm_tb_s = AxiStream.same_name_socket(:from_up,mix=true,cm_tb_s,nil,belong_to_module) unless cm_tb_s.is_a? String cm_tb_m = AxiStream.same_name_socket(:to_down,mix=true,cm_tb_m,nil,belong_to_module) unless cm_tb_m.is_a? String cm_mirror = AxiStream.same_name_socket(:mirror,mix=true,cm_mirror,nil,belong_to_module) unless cm_mirror.is_a? String if up_stream.nil? && cm_tb_s.eql?("cm_tb_s") && (!(cm_tb_m.eql?("cm_tb_m")) || !down_stream.nil?) # up_stream = self.copy(name:"cm_tb_s") # return_stream = up_stream cm_tb_m = down_stream if down_stream return down_stream.parse_big_field_table_a1(cm_tb_s:self) end cm_tb_s = up_stream if up_stream unless self.eql? belong_to_module.AxiStream_NC cm_tb_m = self else if down_stream cm_tb_m = down_stream end end belong_to_module.AxiStream_draw << parse_big_field_table_a1_draw( dsize:dsize, field_len:field_len, field_name:field_name, try_parse:try_parse, enable:enable, value:value, out_valid:out_valid, cm_tb_s:cm_tb_s, cm_tb_m:cm_tb_m, cm_mirror:cm_mirror, up_stream:up_stream, down_stream:down_stream) return return_stream end |
#parse_big_field_table_a1_draw(dsize: 8, field_len: 16*8, field_name: "Big Filed", try_parse: "OFF", enable: "enable", value: "value", out_valid: "out_valid", cm_tb_s: "cm_tb_s", cm_tb_m: "cm_tb_m", cm_mirror: "cm_mirror", up_stream: nil, down_stream: nil) ⇒ Object
67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 |
# File 'lib/tdl/axi_stream/parse_big_field_table_A1_auto.rb', line 67 def parse_big_field_table_a1_draw( dsize:8, field_len:16*8, field_name:"Big Filed", try_parse:"OFF", enable:"enable", value:"value", out_valid:"out_valid", cm_tb_s:"cm_tb_s", cm_tb_m:"cm_tb_m", cm_mirror:"cm_mirror", up_stream:nil, down_stream:nil ) large_name_len( dsize, field_len, field_name, try_parse, enable, value, out_valid, cm_tb_s, cm_tb_m, cm_mirror ) instance_name = "parse_big_field_table_A1_#{signal}_inst" " // FilePath:::../../axi/AXI_stream/parse_big_field_table_A1.sv parse_big_field_table_A1#( .DSIZE (#{align_signal(dsize)}), .FIELD_LEN (#{align_signal(field_len)}), .FIELD_NAME (#{align_signal(field_name)}), .TRY_PARSE (#{align_signal(try_parse)}) ) #{instance_name}( /* input */ .enable (#{align_signal(enable,q_mark=false)}), /* output [DSIZE-1:0] */ .value (#{align_signal(value,q_mark=false)}), /* output */ .out_valid (#{align_signal(out_valid,q_mark=false)}), /* axi_stream_inf.slaver*/ .cm_tb_s (#{align_signal(cm_tb_s,q_mark=false)}), /* axi_stream_inf.master*/ .cm_tb_m (#{align_signal(cm_tb_m,q_mark=false)}), /* axi_stream_inf.mirror*/ .cm_mirror (#{align_signal(cm_mirror,q_mark=false)}) ); " end |
#parse_big_field_table_a2(dsize: 8, field_len: 16*8, field_name: "Big Filed", try_parse: "OFF", enable: "enable", value: "value", out_valid: "out_valid", cm_tb_s: "cm_tb_s", cm_tb_m: "cm_tb_m", cm_mirror: "cm_mirror", up_stream: nil, down_stream: nil) ⇒ Object
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 |
# File 'lib/tdl/axi_stream/parse_big_field_table_A2_auto.rb', line 9 def parse_big_field_table_a2( dsize:8, field_len:16*8, field_name:"Big Filed", try_parse:"OFF", enable:"enable", value:"value", out_valid:"out_valid", cm_tb_s:"cm_tb_s", cm_tb_m:"cm_tb_m", cm_mirror:"cm_mirror", up_stream:nil, down_stream:nil ) Tdl.add_to_all_file_paths('parse_big_field_table_a2','../../axi/AXI_stream/parse_big_field_table_A2.sv') # GlobalParam.CurrTdlModule.add_to_all_file_paths(['parse_big_field_table_a2','../../axi/AXI_stream/parse_big_field_table_A2.sv']) return_stream = self cm_tb_s = AxiStream.same_name_socket(:from_up,mix=true,cm_tb_s,nil,belong_to_module) unless cm_tb_s.is_a? String cm_tb_m = AxiStream.same_name_socket(:to_down,mix=true,cm_tb_m,nil,belong_to_module) unless cm_tb_m.is_a? String cm_mirror = AxiStream.same_name_socket(:mirror,mix=true,cm_mirror,nil,belong_to_module) unless cm_mirror.is_a? String if up_stream.nil? && cm_tb_s.eql?("cm_tb_s") && (!(cm_tb_m.eql?("cm_tb_m")) || !down_stream.nil?) # up_stream = self.copy(name:"cm_tb_s") # return_stream = up_stream cm_tb_m = down_stream if down_stream return down_stream.parse_big_field_table_a2(cm_tb_s:self) end cm_tb_s = up_stream if up_stream unless self.eql? belong_to_module.AxiStream_NC cm_tb_m = self else if down_stream cm_tb_m = down_stream end end belong_to_module.AxiStream_draw << parse_big_field_table_a2_draw( dsize:dsize, field_len:field_len, field_name:field_name, try_parse:try_parse, enable:enable, value:value, out_valid:out_valid, cm_tb_s:cm_tb_s, cm_tb_m:cm_tb_m, cm_mirror:cm_mirror, up_stream:up_stream, down_stream:down_stream) return return_stream end |
#parse_big_field_table_a2_draw(dsize: 8, field_len: 16*8, field_name: "Big Filed", try_parse: "OFF", enable: "enable", value: "value", out_valid: "out_valid", cm_tb_s: "cm_tb_s", cm_tb_m: "cm_tb_m", cm_mirror: "cm_mirror", up_stream: nil, down_stream: nil) ⇒ Object
67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 |
# File 'lib/tdl/axi_stream/parse_big_field_table_A2_auto.rb', line 67 def parse_big_field_table_a2_draw( dsize:8, field_len:16*8, field_name:"Big Filed", try_parse:"OFF", enable:"enable", value:"value", out_valid:"out_valid", cm_tb_s:"cm_tb_s", cm_tb_m:"cm_tb_m", cm_mirror:"cm_mirror", up_stream:nil, down_stream:nil ) large_name_len( dsize, field_len, field_name, try_parse, enable, value, out_valid, cm_tb_s, cm_tb_m, cm_mirror ) instance_name = "parse_big_field_table_A2_#{signal}_inst" " // FilePath:::../../axi/AXI_stream/parse_big_field_table_A2.sv parse_big_field_table_A2#( .DSIZE (#{align_signal(dsize)}), .FIELD_LEN (#{align_signal(field_len)}), .FIELD_NAME (#{align_signal(field_name)}), .TRY_PARSE (#{align_signal(try_parse)}) ) #{instance_name}( /* input */ .enable (#{align_signal(enable,q_mark=false)}), /* output [0:DSIZE*FIELD_LEN-1]*/ .value (#{align_signal(value,q_mark=false)}), /* output */ .out_valid (#{align_signal(out_valid,q_mark=false)}), /* axi_stream_inf.slaver */ .cm_tb_s (#{align_signal(cm_tb_s,q_mark=false)}), /* axi_stream_inf.master */ .cm_tb_m (#{align_signal(cm_tb_m,q_mark=false)}), /* axi_stream_inf.mirror */ .cm_mirror (#{align_signal(cm_mirror,q_mark=false)}) ); " end |
#parse_big_field_table_draw(dsize: 8, field_len: 16*8, field_name: "Big Filed", try_parse: "OFF", enable: "enable", value: "value", out_valid: "out_valid", cm_tb_s: "cm_tb_s", cm_tb_m: "cm_tb_m", cm_mirror: "cm_mirror", up_stream: nil, down_stream: nil) ⇒ Object
67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 |
# File 'lib/tdl/axi_stream/parse_big_field_table_auto.rb', line 67 def parse_big_field_table_draw( dsize:8, field_len:16*8, field_name:"Big Filed", try_parse:"OFF", enable:"enable", value:"value", out_valid:"out_valid", cm_tb_s:"cm_tb_s", cm_tb_m:"cm_tb_m", cm_mirror:"cm_mirror", up_stream:nil, down_stream:nil ) large_name_len( dsize, field_len, field_name, try_parse, enable, value, out_valid, cm_tb_s, cm_tb_m, cm_mirror ) instance_name = "parse_big_field_table_#{signal}_inst" " // FilePath:::../../axi/AXI_stream/parse_big_field_table.sv parse_big_field_table#( .DSIZE (#{align_signal(dsize)}), .FIELD_LEN (#{align_signal(field_len)}), .FIELD_NAME (#{align_signal(field_name)}), .TRY_PARSE (#{align_signal(try_parse)}) ) #{instance_name}( /* input */ .enable (#{align_signal(enable,q_mark=false)}), /* output [DSIZE*FIELD_LEN-1:0]*/ .value (#{align_signal(value,q_mark=false)}), /* output */ .out_valid (#{align_signal(out_valid,q_mark=false)}), /* axi_stream_inf.slaver */ .cm_tb_s (#{align_signal(cm_tb_s,q_mark=false)}), /* axi_stream_inf.master */ .cm_tb_m (#{align_signal(cm_tb_m,q_mark=false)}), /* axi_stream_inf.mirror */ .cm_mirror (#{align_signal(cm_mirror,q_mark=false)}) ); " end |
#port_length ⇒ Object
81 82 83 |
# File 'lib/tdl/elements/axi_stream.rb', line 81 def port_length ("axi_stream_inf." + @port.to_s + " ").length end |
#s2m_sub_direct(*down_streams) ⇒ Object
20 21 22 23 24 25 26 27 28 29 30 |
# File 'lib/tdl/axi_stream/bak/axi_stream_S2M.rb', line 20 def s2m_sub_direct(*down_streams) str = "" for i in 0...(down_streams.length) str += "\naxis_direct axis_direct_#{signal}_inst#{i} ( /* axi_stream_inf.slaver*/ .slaver (sub_#{(signal)}[#{i}]), /* axi_stream_inf.master*/ .master (#{down_streams[i].signal}) );\n" end return str end |
#s2m_sub_inst(num = 0) ⇒ Object
13 14 15 16 17 18 |
# File 'lib/tdl/axi_stream/bak/axi_stream_S2M.rb', line 13 def s2m_sub_inst(num=0) return '' if num == 0 " axi_stream_inf #(.DSIZE(#{signal}.DSIZE)) sub_#{(signal)}[#{num}-1:0](.aclk(#{signal}.aclk),.aresetn(#{signal}.aresetn),.aclken(1'b1));\n " end |
#seq(start, lr) ⇒ Object
lr must larger than zero, START : START+lr-1
227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 |
# File 'lib/tdl/elements/axi_stream.rb', line 227 def seq(start,lr) #lr must larger than zero, START : START+lr-1 RedefOpertor.with_old_operators do @__seq_start_ ||= 1024 @__seq_end_ ||= 0 @__seq_start_ = start if @__seq_start_ > start @__seq_end_ = (start+lr) if (@__seq_end_ < (start+lr)) unless @_sub_sel_value ## dsize < 0 [0:X-1] if @dsize.is_a? Numeric @_sub_sel_value = belong_to_module.Def.logic(name:"#{signal(square:false)}_seq_value",dsize: -@dsize*(@__seq_end_-@__seq_start_),msb_high:false,port: :origin) @_full_sub_sel_value = belong_to_module.Def.logic(name:"#{signal(square:false)}_full_seq_value",dsize: -@dsize*(@__seq_end_-0),msb_high:false,port: :origin) else @_sub_sel_value = belong_to_module.Def.logic(name:"#{signal(square:false)}_seq_value",dsize: "#{@dsize}*#{(@__seq_end_-@__seq_start_)}",msb_high:false,port: :origin) @_full_sub_sel_value = belong_to_module.Def.logic(name:"#{signal(square:false)}_full_seq_value",dsize: "#{@dsize}*#{(@__seq_end_-0)}",msb_high:false,port: :origin) @_sub_sel_value.force_nege_index(true) @_full_sub_sel_value.force_nege_index(true) end else if @dsize.is_a? Numeric @_sub_sel_value.dsize = -@dsize*(@__seq_end_-@__seq_start_) @_full_sub_sel_value.dsize = -@dsize*(@__seq_end_-0) else @_sub_sel_value.dsize = "#{@dsize}*#{(@__seq_end_-@__seq_start_)}" @_full_sub_sel_value.dsize = "#{@dsize}*#{(@__seq_end_-0)}" end end belong_to_module.AxiStream_pre_inst_stack << Proc.new do if @dsize.is_a? Numeric belong_to_module.Assign do @_full_sub_sel_value[@__seq_start_*@dsize,@__seq_end_*@dsize-1] <= @_sub_sel_value end else belong_to_module.Assign do "#{@_full_sub_sel_value.signal(square:false)}[#{@__seq_start_}*#{self.DSIZE}:#{@__seq_end_}*#{self.DSIZE}-1]".to_nq <= @_sub_sel_value end end "" end @_sub_sel_out_vld ||= belong_to_module.Def.logic(name:"#{signal(square:false)}_seq_vld",dsize:1,port: :origin) # unless seq_vld() self.define_singleton_method(:seq_vld) do @_sub_sel_out_vld end # end unless @_seq_call_ @_p_cm_tb_m = copy(name:"cm_tb_m_#{@name}") self.define_singleton_method(:seq_tail_stream) do @_called_seq_tail_stream = true @_p_cm_tb_m end self.define_singleton_method(:seq_vld_rdy_last) do @_p_cm_tb_m.vld_rdy_last end @_vcs_self_cpt_ = self.vcs_comptable(origin: 'slaver',to: 'mirror') @_seq_call_ = lambda { if @__seq_start_ == 0 enable = "1'b1" else enable = "(#{signal}.axis_tcnt >= #{@__seq_start_})" end AxiStream.parse_big_field_table_a2( dsize: @dsize, field_len:@__seq_end_ - @__seq_start_ , try_parse:"OFF", enable:enable, value:@_sub_sel_value.signal(square:false), out_valid:@_sub_sel_out_vld, cm_tb_s:self, cm_tb_m:@_p_cm_tb_m, cm_mirror: @_vcs_self_cpt_, belong_to_module:belong_to_module ) AxiStream.slaver_empty(@_p_cm_tb_m) unless @_called_seq_tail_stream } belong_to_module.AxiStream_pre_inst_stack << @_seq_call_ end end if @dsize.is_a? Numeric return @_full_sub_sel_value[start*@dsize,(start+lr)*@dsize-1] else return "#{@_full_sub_sel_value.signal(square:false)}[#{start}*#{self.DSIZE}:#{(start+lr)}*#{self.DSIZE}-1]".to_nq end end |
#simple_verify_by_coe(file) ⇒ Object
218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 |
# File 'lib/tdl/exlib/axis_verify.rb', line 218 def simple_verify_by_coe(file) unless File.file?(file) if file.is_a?(String) wfile = File.join(AxiTdl::TDL_PATH,"./auto_script/tmp/","#{self.name}_#{globle_random_name_flag}.coe") File.open(wfile,'w') do |f| f.puts file end file = wfile end end require_hdl 'axis_sim_verify_by_coe.sv' @belong_to_module.instance_exec(self,File.open(file).readlines.size,file) do |_self,_ram_depth,_file| Instance(:axis_sim_verify_by_coe, "axis_sim_verify_by_coe_inst_#{_self.name}") do |h|#( h.param.RAM_DEPTH _ram_depth h.param.VERIFY_KEEP "OFF" h.param.VERIFY_USER "OFF" h.input.load_trigger 1.b0 h.input[32].total_length _ram_depth h.input[4096].mem_file File.(_file) h.port.axis.mirror.mirror_inf _self end end end |
#slaverbfm(info: true, rate: 100, repeat: 100) ⇒ Object
263 264 265 266 267 268 269 270 271 272 273 |
# File 'lib/tdl/bfm/axi_stream/axi_stream_bfm.rb', line 263 def slaverbfm(info:true,rate:100,repeat:100) if info info_str = 1 else info_str = 0 end belong_to_module.AxiStream_draw << slaverbfm_draw(info:info_str,repeat:repeat,rate:rate) return self end |
#slaverbfm_draw(info: 0, repeat: 0, rate: 100) ⇒ Object
def self.MasterBFM()
end
279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 |
# File 'lib/tdl/bfm/axi_stream/axi_stream_bfm.rb', line 279 def slaverbfm_draw(info:0,repeat:0,rate:100) " AxiStreamSlaverBfm_c #(.DSIZE(#{@dsize}),.FreqM(#{intf_def_freqM})) SlaverBfm#{name} = new(#{name}); initial begin:#{name}_SLAVER_BLOCK wait(#{name}.aresetn); @(posedge #{name}.aclk); #{ if repeat > 0 "repeat(#{repeat})" else "forever" end } begin SlaverBfm#{name}.get_data(#{rate},#{info}); end end " end |
#slice_to_logic(range) ⇒ Object
4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
# File 'lib/tdl/bfm/axi_stream/axis_slice_to_logic.rb', line 4 def slice_to_logic(range) @_slice_id_ ||= 0 smin = range.min smax = range.max if range.to_a.first.eql? smin cc = :increase else cc = :decrease end slice_logic = nil RedefOpertor.with_normal_operators do slice_logic = belong_to_module.Def().logic(name:"#{name}_slice_#{@_slice_id_}",dsize:@dsize*(smax+1-smin)) slice_logic.clock = @clock slice_logic.reset = @reset belong_to_module.AxiStream_draw << slice_to_logic_draw(cc,slice_logic,range.to_a) end @_slice_id_ += 1 return slice_logic end |
#to_eth(esize = 8) ⇒ Object
转到 网络流
21 22 23 |
# File 'lib/tdl/exlib/axis_eth_ex.rb', line 21 def to_eth(esize=8) # SIZE:8 ,64, 32 @__ethernet_type__ = esize end |
#to_master_bfm ⇒ Object
3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 |
# File 'lib/tdl/bfm/axi_stream/axi_stream_bfm.rb', line 3 def to_master_bfm define_singleton_method(:import_axibfm_pkg) do unless @__AXI_BFM_IMPORT__ import_str = "import AxiBfmPkg::*;\n" belong_to_module.ex_up_code = import_str.concat belong_to_module.ex_up_code.to_s @__AXI_BFM_IMPORT__ = true end end define_singleton_method(:masterbfm) do |info:true,wait:nil,wait_every_raising:nil,wdata_name:"wdata_queue",&block| import_axibfm_pkg @wdata_name = wdata_name @_init_tap_cnt_ ||= 1 @_master_draw_exec_str_ ||= [] @_init_master_draw_exec_str_ ||= [] # define_singleton_method(:wdata_queue) do # "wdata_queue" # end block.call self if info info_str = "ON" else info_str = "OFF" end belong_to_module.ExOther_draw << masterbfm_draw(info:info_str) return self end define_singleton_method("masterbfm_draw") do |info:"OFF"| init_str = @_init_master_draw_exec_str_.join("") master_str = @_master_draw_exec_str_.join("") " AxiStreamMasterBfm_c #(.DSIZE(#{dsize}),.MSG(\"#{info}\"),.FreqM(#{freqM})) MasterBfm#{name}; initial begin:#{name}_MASTER_BLOCK logic [#{dsize}-1:0] #{@wdata_name} [$]; MasterBfm#{name} = new(#{name}); #{init_str} wait(#{name}.aresetn); #{master_str} end " end define_singleton_method(:exec) do |str=nil,&block| if block_given? ystr = block.call(self) str = str.to_s + ystr end @_master_draw_exec_str_ << init_tap_draw("#{str.to_s};\n") end define_singleton_method(:init_exec) do |str| @_master_draw_exec_str_ ||= [] @_master_draw_exec_str_ << init_tap_draw("#{str.to_s};\n") end # def stream_exec(delay:"#(10us)",str:"") # @_master_draw_exec_str_ << "#(100ns) wdata_queue = #{str.to_s};\n" # end define_singleton_method(:repeat) do |num=nil,&block| if num @_master_draw_exec_str_ << init_tap_draw("repeat(#{num}) begin\n") else @_master_draw_exec_str_ << init_tap_draw("forever begin\n") end @_init_tap_cnt_ += 1 block.call self @_init_tap_cnt_ -= 1 @_master_draw_exec_str_ << init_tap_draw("end\n") end define_singleton_method("bif") do |cond,&block| @_master_draw_exec_str_ << init_tap_draw("if(#{cond}) begin\n") @_init_tap_cnt_ += 1 block.call self @_init_tap_cnt_ -= 1 @_master_draw_exec_str_ << init_tap_draw("end\n") end define_singleton_method("belsif") do |cond,&block| @_master_draw_exec_str_ << init_tap_draw("else if(#{cond}) begin\n") @_init_tap_cnt_ += 1 block.call self @_init_tap_cnt_ -= 1 @_master_draw_exec_str_ << init_tap_draw("end\n") end define_singleton_method("belse") do |&block| @_master_draw_exec_str_ << init_tap_draw("else begin\n") @_init_tap_cnt_ += 1 block.call self @_init_tap_cnt_ -= 1 @_master_draw_exec_str_ << init_tap_draw("end\n") end define_singleton_method(:wait) do |s,edge=nil| if edge.nil? @_master_draw_exec_str_ << init_tap_draw("wait(#{s});\n") elsif edge.to_s.eql? "raising" @_master_draw_exec_str_ << init_tap_draw("@(posedge #{align_signal(s)});\n") elsif edge.to_s.eql? "falling" @_master_draw_exec_str_ << init_tap_draw("@(negedge #{align_signal(s)});\n") end end define_singleton_method("gen_axi_stream") do |len:0,rate:100| @_master_draw_exec_str_ << init_tap_draw("MasterBfm#{name}.gen_axi_stream(#{len},#{rate},#{@wdata_name});\n") end define_singleton_method(:init_tap_draw) do |str| "#{" "*@_init_tap_cnt_}#{str.to_s}" end return self end |
#to_simple_sim_master_coe(enable: 1.b1, length: [10,200], gap_len: [0,10], data: [ (0...100) ], vld_perc: [50, 100], loop_coe: true) ⇒ Object
131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 |
# File 'lib/tdl/exlib/axis_verify.rb', line 131 def to_simple_sim_master_coe(enable: 1.b1, length: [10,200], gap_len: [0,10], data: [ (0...100) ] , vld_perc: [50, 100], loop_coe: true) # raise TdlError.new "file cant be empty" unless file file = File.join(AxiTdl::TDL_PATH,"./auto_script/tmp/","coe_#{self.name}_#{globle_random_name_flag}.coe") _sps = nil ClassHDL::AssignDefOpertor.with_rollback_opertors(:old) do require_sdl 'axis_sim_master_model.rb' File.open(file,'w') do |f| _sps = AxiTdl::AxisVerify::SimpleStreams.new(length: length, gap_len: gap_len, data: data , vld_perc: vld_perc) f.print _sps.coe end end self.define_singleton_method(:verification) do _sps end @belong_to_module.instance_exec(self,file,loop_coe,enable) do |_self,file,loop_coe,_enable| Instance(:axis_sim_master_model,"sim_model_inst_#{_self.name}") do |h| h.param.LOOP (loop_coe ? "TRUE" : "FALSE") h.param.RAM_DEPTH File.open(File.(file)).readlines.size h.input.enable _enable h.input.load_trigger 1.b0 h.input[32].total_length h.param.RAM_DEPTH h.input[512*8].mem_file File.(file) # {axis_tvalid, axis_tuser, axis_tkeep, axis_tlast, axis_tdata} h.port.axis.master.out_inf _self end end end |
#to_simple_sim_slaver(rdy_percetage = 50, loop_rdy = true) ⇒ Object
162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 |
# File 'lib/tdl/exlib/axis_verify.rb', line 162 def to_simple_sim_slaver(rdy_percetage=50,loop_rdy=true) unless rdy_percetage.is_a?(Array) @belong_to_module.instance_exec(self) do |_self| always_ff(posedge: _self.aclk) do IF ~_self.aresetn do _self.axis_tready <= 1.b0 end ELSE do _self.axis_tready <= rdy_percetage.precent_true end end end else @belong_to_module.instance_exec(self,rdy_percetage,loop_rdy) do |_self,rdy_percetage,loop_rdy| __xx = logic[32] - "#{_self.name}_rdy_percetage_index" __rr = logic[rdy_percetage.size, 32] - "#{_self.name}_rdy_percetage" Initial do __xx <= 0 rdy_percetage.each_index do |index| __rr[index] <= rdy_percetage[index] end end Always(posedge: _self.aclk) do IF _self.vld_rdy_last do IF __xx >= (rdy_percetage.size - 1 ) do if loop_rdy __xx <= 0 else __xx <= __xx __rr[__xx] = 0 end end ELSE do __xx <= __xx + 1.b1 end end ELSE do __xx <= __xx end end always_ff(posedge: _self.aclk) do IF ~_self.aresetn do _self.axis_tready <= 1.b0 end ELSE do _self.axis_tready <= "($urandom_range(0,99) <= #{__rr[__xx]})".to_nq end end end end end |
#vcs_comptable(origin: 'master', to: 'slaver') ⇒ Object
633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 |
# File 'lib/tdl/elements/axi_stream.rb', line 633 def vcs_comptable(origin: 'master',to: 'slaver') if belong_to_module.respond_to? "#{@name}_#{origin}_to_#{to}" return belong_to_module.send("#{@name}_#{origin}_to_#{to}").name.to_nq end ''' 返回字符串''' # idm = belong_to_module.instance_variable_get("@_include_define_macro_") # unless idm # unless belong_to_module.ex_up_code # belong_to_module.ex_up_code = '`include "define_macro.sv"'+"\n" # else # belong_to_module.ex_up_code += "`include \"define_macro.sv\"\n" # end # belong_to_module.instance_variable_set("@_include_define_macro_",true) # end # str = "\n`VCS_AXIS_CPT(#{@name},#{origin},#{to})\n" # belong_to_module.AxiStream_draw << str # @_vcs_cpt_ = "`#{@name}_vcs_cpt".to_nq # return @_vcs_cpt_ belong_to_module.instance_exec(self,origin,to) do |origin_inf,origin_modport,to_modport| Instance(:vcs_axis_comptable,"vcs_axis_comptable_#{origin_inf.name}_#{origin_modport}_#{to_modport}_inst") do |h| h[:ORIGIN] = origin_modport h[:TO] = to_modport h[:origin] = origin_inf h[:to] = origin_inf.copy(name: "#{origin_inf.name}_#{origin_modport}_to_#{to_modport}") end end return belong_to_module.send("#{@name}_#{origin}_to_#{to}").name.to_nq end |
#vld_rdy ⇒ Object
super(port_array,rep,“axi_stream_inf”,up_stream_rep) do |h|
h[:type] = AxiStream
yield h
end
end
42 43 44 |
# File 'lib/tdl/rebuild_ele/axi_stream.rb', line 42 def vld_rdy axis_tvalid.concat(" && ").concat(axis_tready) end |
#vld_rdy_last ⇒ Object
563 564 565 |
# File 'lib/tdl/elements/axi_stream.rb', line 563 def vld_rdy_last axis_tvalid.concat(" && ").concat(axis_tready).concat(" && ").concat(axis_tlast) end |
#x_all_bits_slice(name: "slice_#{globle_random_name_flag()}", start: 8*4, length: 32) ⇒ Object
30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 |
# File 'lib/tdl/exlib/axis_eth_ex.rb', line 30 def x_all_bits_slice(name: "slice_#{globle_random_name_flag()}", start: 8*4,length:32) raise TdlError.new("#{name} is not ethernet stream, before used it must be call to_eth") unless @__ethernet_type__ # @belong_to_module.logic[length] - name @belong_to_module.instance_exec(self,name,start,length,@__ethernet_type__) do |_targget_axis, _name, _start, _length, _ethernet_type| logic[_length] - _name _end = _start + _length -1 ## 如果选的区域在一个Clock里面 if _start / _ethernet_type == (_end) / _ethernet_type _target_cnt = _start/_ethernet_type always_ff(posedge: _targget_axis.aclk, negedge: _targget_axis.aresetn) do IF ~_targget_axis.aresetn do signal(_name) <= 0.A end ELSE do IF _targget_axis.vld_rdy do IF (_targget_axis.axis_tcnt[15,0] == "16'd#{_target_cnt}".to_nq) do signal(_name) <= _targget_axis.axis_tdata[rubyOP{_ethernet_type - _start%_ethernet_type - 1}, rubyOP{_ethernet_type - _end%_ethernet_type - 1}, ] end ELSE do signal(_name) <= signal(_name) end end ELSE do signal(_name) <= signal(_name) end end end end ## 如果夸Clock if _start / _ethernet_type != (_end) / _ethernet_type _slice_range = ( (_start / _ethernet_type)..(_end) / _ethernet_type ).to_a always_ff(posedge: _targget_axis.aclk, negedge: _targget_axis.aresetn) do IF ~_targget_axis.aresetn do signal(_name) <= 0.A end ELSE do IF _targget_axis.vld_rdy do _slice_range.each do |e| IF (_targget_axis.axis_tcnt[15,0] == "16'd#{e}".to_nq) do ##第一个 if ClassHDL::AssignDefOpertor.with_rollback_opertors(:old,&(proc { e == _slice_range.first}) ) signal(_name)[rubyOP{_length-1}, rubyOP{_length - (_ethernet_type - _start%_ethernet_type)}] <= _targget_axis.axis_tdata[rubyOP{_ethernet_type - _start%_ethernet_type-1}, 0] ## 最后一个 elsif ClassHDL::AssignDefOpertor.with_rollback_opertors(:old,&(proc { e == _slice_range.last}) ) signal(_name)[rubyOP{_end%_ethernet_type},0] <= _targget_axis.axis_tdata[rubyOP{_ethernet_type-1}, rubyOP{_ethernet_type-_end%_ethernet_type-1}] else signal(_name)[rubyOP{(_end - e*_ethernet_type)}, rubyOP{(_end - e*_ethernet_type - _ethernet_type+1)}] <= _targget_axis.axis_tdata end end end end ELSE do signal(_name) <= signal(_name) end end end end end @belong_to_module.signal(name) end |
#|(down_stream) ⇒ Object
pipe
439 440 441 442 443 444 |
# File 'lib/tdl/elements/axi_stream.rb', line 439 def |(down_stream) # pipe raise TdlError.new("#{down_stream} is not a AxiStream") unless down_stream.is_a? AxiStream raise TdlError.new("PIPE '|' axi stream dsize dont eql !!! \n") if down_stream.dsize != @dsize AxiStream.axis_connect_pipe(dsize:@dsize,up_stream:self,down_stream:down_stream) return down_stream end |