sim: Add item support to RFNoC simulation

This adds variants of the send and recv methods in RfnocBlockCtrlBfm
and ChdrIfaceBfm that input/output items instead of CHDR words.


Original-commit: aebcaea5eb4e28c5c2a1c78b5e8dd42e5d1247b6
This commit is contained in:
Wade Fife
2020-03-09 13:43:05 -05:00
parent 14dc3950cf
commit faa360a0f9
8 changed files with 420 additions and 40 deletions
@@ -92,7 +92,7 @@ module rfnoc_block_axi_ram_fifo_tb #(
AxiStreamIf #(CHDR_W) s_chdr [NUM_PORTS] (rfnoc_chdr_clk, 1'b0);
// Bus functional model for a software block controller
RfnocBlockCtrlBfm #(.CHDR_W(CHDR_W)) blk_ctrl =
RfnocBlockCtrlBfm #(CHDR_W) blk_ctrl =
new(backend, m_ctrl, s_ctrl);
// Connect block controller to BFMs
@@ -70,7 +70,7 @@ module rfnoc_block_ddc_tb();
AxiStreamIf #(CHDR_W) s_chdr [NUM_PORTS] (rfnoc_chdr_clk, 1'b0);
// Bus functional model for a software block controller
RfnocBlockCtrlBfm #(.CHDR_W(CHDR_W)) blk_ctrl =
RfnocBlockCtrlBfm #(CHDR_W, SAMP_W) blk_ctrl =
new(backend, m_ctrl, s_ctrl);
// Connect block controller to BFMs
@@ -70,7 +70,7 @@ module rfnoc_block_duc_tb();
AxiStreamIf #(CHDR_W) s_chdr [NUM_PORTS] (rfnoc_chdr_clk, 1'b0);
// Bus functional model for a software block controller
RfnocBlockCtrlBfm #(.CHDR_W(CHDR_W)) blk_ctrl =
RfnocBlockCtrlBfm #(CHDR_W, SAMP_W) blk_ctrl =
new(backend, m_ctrl, s_ctrl);
// Connect block controller to BFMs
@@ -70,7 +70,7 @@ module rfnoc_block_fft_tb();
AxiStreamIf #(CHDR_W) s_chdr (rfnoc_chdr_clk, 1'b0);
// Bus functional model for a software block controller
RfnocBlockCtrlBfm #(.CHDR_W(CHDR_W)) blk_ctrl =
RfnocBlockCtrlBfm #(CHDR_W, SAMP_W) blk_ctrl =
new(backend, m_ctrl, s_ctrl);
// Connect block controller to BFMs
@@ -96,7 +96,7 @@ module rfnoc_block_fir_filter_tb #(
AxiStreamIf #(CHDR_W) s_chdr [NUM_PORTS] (rfnoc_chdr_clk, 1'b0);
// Bus functional model for a software block controller
RfnocBlockCtrlBfm #(.CHDR_W(CHDR_W)) blk_ctrl = new(backend, m_ctrl, s_ctrl);
RfnocBlockCtrlBfm #(CHDR_W, SAMP_W) blk_ctrl = new(backend, m_ctrl, s_ctrl);
// Connect block controller to BFMs
for (genvar i = 0; i < NUM_PORTS; i++) begin : gen_bfm_connections
@@ -90,7 +90,7 @@ module rfnoc_block_radio_tb #(
typedef ChdrData #(CHDR_W, ITEM_W)::item_t sample_t;
// Bus functional model for a software block controller
RfnocBlockCtrlBfm #(.CHDR_W(CHDR_W)) blk_ctrl = new(backend, m_ctrl, s_ctrl);
RfnocBlockCtrlBfm #(CHDR_W, ITEM_W) blk_ctrl = new(backend, m_ctrl, s_ctrl);
// Connect block controller to BFMs
for (genvar i = 0; i < NUM_PORTS; i++) begin : gen_bfm_connections