mirror of
https://github.com/openhwgroup/cva6.git
synced 2025-04-24 14:17:16 -04:00
Add new hierarchy cva6_pipeline (cva6 without L1 caches)
This commit is contained in:
parent
9bba417f01
commit
052fa737bb
7 changed files with 1986 additions and 1723 deletions
|
@ -117,6 +117,7 @@ ${CVA6_REPO_DIR}/vendor/pulp-platform/obi/src/obi_xbar.sv
|
|||
|
||||
// Top-level source files (not necessarily instantiated at the top of the cva6).
|
||||
${CVA6_REPO_DIR}/core/cva6.sv
|
||||
${CVA6_REPO_DIR}/core/cva6_pipeline.sv
|
||||
${CVA6_REPO_DIR}/core/cva6_rvfi_probes.sv
|
||||
${CVA6_REPO_DIR}/core/alu.sv
|
||||
// Note: depends on fpnew_pkg, above
|
||||
|
|
1616
core/cva6.sv
1616
core/cva6.sv
File diff suppressed because it is too large
Load diff
1496
core/cva6_pipeline.sv
Normal file
1496
core/cva6_pipeline.sv
Normal file
File diff suppressed because it is too large
Load diff
|
@ -756,8 +756,6 @@ ariane_axi::resp_t axi_ariane_resp;
|
|||
|
||||
ariane #(
|
||||
.CVA6Cfg ( CVA6Cfg ),
|
||||
.rvfi_probes_instr_t ( rvfi_probes_instr_t ),
|
||||
.rvfi_probes_csr_t ( rvfi_probes_csr_t ),
|
||||
.rvfi_probes_t ( rvfi_probes_t )
|
||||
) i_ariane (
|
||||
.clk_i ( clk ),
|
||||
|
|
|
@ -16,8 +16,6 @@
|
|||
|
||||
module ariane import ariane_pkg::*; #(
|
||||
parameter config_pkg::cva6_cfg_t CVA6Cfg = config_pkg::cva6_cfg_empty,
|
||||
parameter type rvfi_probes_instr_t = logic,
|
||||
parameter type rvfi_probes_csr_t = logic,
|
||||
parameter type rvfi_probes_t = struct packed {
|
||||
logic csr;
|
||||
logic instr;
|
||||
|
@ -70,28 +68,8 @@ module ariane import ariane_pkg::*; #(
|
|||
cvxif_resp_t cvxif_resp;
|
||||
|
||||
cva6 #(
|
||||
.CVA6Cfg ( CVA6Cfg ),
|
||||
.rvfi_probes_instr_t ( rvfi_probes_instr_t ),
|
||||
.rvfi_probes_csr_t ( rvfi_probes_csr_t ),
|
||||
.rvfi_probes_t ( rvfi_probes_t ),
|
||||
.axi_ar_chan_t (axi_ar_chan_t),
|
||||
.axi_aw_chan_t (axi_aw_chan_t),
|
||||
.axi_w_chan_t (axi_w_chan_t),
|
||||
.noc_req_t (noc_req_t),
|
||||
.noc_resp_t (noc_resp_t),
|
||||
.readregflags_t (readregflags_t),
|
||||
.writeregflags_t (writeregflags_t),
|
||||
.id_t (id_t),
|
||||
.hartid_t (hartid_t),
|
||||
.x_compressed_req_t (x_compressed_req_t),
|
||||
.x_compressed_resp_t (x_compressed_resp_t),
|
||||
.x_issue_req_t (x_issue_req_t),
|
||||
.x_issue_resp_t (x_issue_resp_t),
|
||||
.x_register_t (x_register_t),
|
||||
.x_commit_t (x_commit_t),
|
||||
.x_result_t (x_result_t),
|
||||
.cvxif_req_t (cvxif_req_t),
|
||||
.cvxif_resp_t (cvxif_resp_t)
|
||||
.CVA6Cfg ( CVA6Cfg ),
|
||||
.rvfi_probes_t ( rvfi_probes_t )
|
||||
) i_cva6 (
|
||||
.clk_i ( clk_i ),
|
||||
.rst_ni ( rst_ni ),
|
||||
|
|
|
@ -628,11 +628,7 @@ module ariane_testharness #(
|
|||
|
||||
ariane #(
|
||||
.CVA6Cfg ( CVA6Cfg ),
|
||||
.rvfi_probes_instr_t ( rvfi_probes_instr_t ),
|
||||
.rvfi_probes_csr_t ( rvfi_probes_csr_t ),
|
||||
.rvfi_probes_t ( rvfi_probes_t ),
|
||||
.noc_req_t ( ariane_axi::req_t ),
|
||||
.noc_resp_t ( ariane_axi::resp_t )
|
||||
.rvfi_probes_t ( rvfi_probes_t )
|
||||
) i_ariane (
|
||||
.clk_i ( clk_i ),
|
||||
.rst_ni ( ndmreset_n ),
|
||||
|
|
|
@ -81,6 +81,7 @@ module cva6_tb_wrapper import uvmt_cva6_pkg::*; #(
|
|||
uvma_obi_memory_if obi_amo_slave,
|
||||
uvma_obi_memory_if obi_load_slave,
|
||||
//uvma_obi_memory_if obi_mmu_ptw_slave,
|
||||
//uvma_obi_memory_if obi_zcmt_slave,
|
||||
uvmt_axi_switch_intf axi_switch_vif,
|
||||
uvmt_default_inputs_intf default_inputs_vif
|
||||
);
|
||||
|
@ -102,9 +103,7 @@ module cva6_tb_wrapper import uvmt_cva6_pkg::*; #(
|
|||
|
||||
cva6 #(
|
||||
.CVA6Cfg ( CVA6Cfg ),
|
||||
.rvfi_probes_instr_t ( rvfi_probes_instr_t ),
|
||||
.rvfi_probes_csr_t ( rvfi_probes_csr_t ),
|
||||
.rvfi_probes_t ( rvfi_probes_t )
|
||||
.rvfi_probes_t ( rvfi_probes_t )
|
||||
) i_cva6 (
|
||||
.clk_i ( clk_i ),
|
||||
.rst_ni ( rst_ni ),
|
||||
|
@ -263,276 +262,329 @@ module cva6_tb_wrapper import uvmt_cva6_pkg::*; #(
|
|||
|
||||
//Obi Interface
|
||||
if (CVA6Cfg.PipelineOnly) begin
|
||||
assign obi_fetch_slave.req = i_cva6.obi_fetch_req_if_cache.req;
|
||||
assign obi_fetch_slave.addr = i_cva6.obi_fetch_req_if_cache.a.addr;
|
||||
assign obi_fetch_slave.we = i_cva6.obi_fetch_req_if_cache.a.we;
|
||||
assign obi_fetch_slave.be = i_cva6.obi_fetch_req_if_cache.a.be;
|
||||
assign obi_fetch_slave.wdata = i_cva6.obi_fetch_req_if_cache.a.wdata;
|
||||
assign obi_fetch_slave.auser = i_cva6.obi_fetch_req_if_cache.a.a_optional.auser;
|
||||
assign obi_fetch_slave.wuser = i_cva6.obi_fetch_req_if_cache.a.a_optional.wuser;
|
||||
assign obi_fetch_slave.aid = i_cva6.obi_fetch_req_if_cache.a.aid;
|
||||
assign obi_fetch_slave.atop = i_cva6.obi_fetch_req_if_cache.a.a_optional.atop;
|
||||
assign obi_fetch_slave.memtype = i_cva6.obi_fetch_req_if_cache.a.a_optional.memtype;
|
||||
assign obi_fetch_slave.prot = i_cva6.obi_fetch_req_if_cache.a.a_optional.prot;
|
||||
assign obi_fetch_slave.reqpar = i_cva6.obi_fetch_req_if_cache.reqpar;
|
||||
assign obi_fetch_slave.achk = i_cva6.obi_fetch_req_if_cache.a.a_optional.achk;
|
||||
assign obi_fetch_slave.rready = i_cva6.obi_fetch_req_if_cache.rready;
|
||||
assign obi_fetch_slave.rreadypar = i_cva6.obi_fetch_req_if_cache.rreadypar;
|
||||
assign i_cva6.obi_fetch_rsp_cache_if.gnt = obi_fetch_slave.gnt;
|
||||
assign i_cva6.obi_fetch_rsp_cache_if.gntpar = obi_fetch_slave.gntpar;
|
||||
assign i_cva6.obi_fetch_rsp_cache_if.rvalid = obi_fetch_slave.rvalid;
|
||||
assign i_cva6.obi_fetch_rsp_cache_if.r.rdata = obi_fetch_slave.rdata;
|
||||
assign i_cva6.obi_fetch_rsp_cache_if.r.err = obi_fetch_slave.err;
|
||||
assign i_cva6.obi_fetch_rsp_cache_if.r.r_optional.ruser = obi_fetch_slave.ruser;
|
||||
assign i_cva6.obi_fetch_rsp_cache_if.r.rid = obi_fetch_slave.rid;
|
||||
assign i_cva6.obi_fetch_rsp_cache_if.r.r_optional.exokay = obi_fetch_slave.exokay;
|
||||
assign i_cva6.obi_fetch_rsp_cache_if.rvalidpar = obi_fetch_slave.rvalidpar;
|
||||
assign i_cva6.obi_fetch_rsp_cache_if.r.r_optional.rchk = obi_fetch_slave.rchk;
|
||||
assign obi_fetch_slave.req = i_cva6.obi_fetch_req.req;
|
||||
assign obi_fetch_slave.addr = i_cva6.obi_fetch_req.a.addr;
|
||||
assign obi_fetch_slave.we = i_cva6.obi_fetch_req.a.we;
|
||||
assign obi_fetch_slave.be = i_cva6.obi_fetch_req.a.be;
|
||||
assign obi_fetch_slave.wdata = i_cva6.obi_fetch_req.a.wdata;
|
||||
assign obi_fetch_slave.auser = i_cva6.obi_fetch_req.a.a_optional.auser;
|
||||
assign obi_fetch_slave.wuser = i_cva6.obi_fetch_req.a.a_optional.wuser;
|
||||
assign obi_fetch_slave.aid = i_cva6.obi_fetch_req.a.aid;
|
||||
assign obi_fetch_slave.atop = i_cva6.obi_fetch_req.a.a_optional.atop;
|
||||
assign obi_fetch_slave.memtype = i_cva6.obi_fetch_req.a.a_optional.memtype;
|
||||
assign obi_fetch_slave.prot = i_cva6.obi_fetch_req.a.a_optional.prot;
|
||||
assign obi_fetch_slave.reqpar = i_cva6.obi_fetch_req.reqpar;
|
||||
assign obi_fetch_slave.achk = i_cva6.obi_fetch_req.a.a_optional.achk;
|
||||
assign obi_fetch_slave.rready = i_cva6.obi_fetch_req.rready;
|
||||
assign obi_fetch_slave.rreadypar = i_cva6.obi_fetch_req.rreadypar;
|
||||
assign i_cva6.obi_fetch_rsp.gnt = obi_fetch_slave.gnt;
|
||||
assign i_cva6.obi_fetch_rsp.gntpar = obi_fetch_slave.gntpar;
|
||||
assign i_cva6.obi_fetch_rsp.rvalid = obi_fetch_slave.rvalid;
|
||||
assign i_cva6.obi_fetch_rsp.r.rdata = obi_fetch_slave.rdata;
|
||||
assign i_cva6.obi_fetch_rsp.r.err = obi_fetch_slave.err;
|
||||
assign i_cva6.obi_fetch_rsp.r.r_optional.ruser = obi_fetch_slave.ruser;
|
||||
assign i_cva6.obi_fetch_rsp.r.rid = obi_fetch_slave.rid;
|
||||
assign i_cva6.obi_fetch_rsp.r.r_optional.exokay = obi_fetch_slave.exokay;
|
||||
assign i_cva6.obi_fetch_rsp.rvalidpar = obi_fetch_slave.rvalidpar;
|
||||
assign i_cva6.obi_fetch_rsp.r.r_optional.rchk = obi_fetch_slave.rchk;
|
||||
initial begin // TODO: workaround, need to emulate with OBI agent
|
||||
force i_cva6.fetch_dreq_cache_if.ready = 1;
|
||||
force i_cva6.fetch_dreq_cache_if.invalid_data = 0;
|
||||
end
|
||||
|
||||
assign obi_store_slave.req = i_cva6.obi_store_req_ex_cache.req;
|
||||
assign obi_store_slave.addr = i_cva6.obi_store_req_ex_cache.a.addr;
|
||||
assign obi_store_slave.we = i_cva6.obi_store_req_ex_cache.a.we;
|
||||
assign obi_store_slave.be = i_cva6.obi_store_req_ex_cache.a.be;
|
||||
assign obi_store_slave.wdata = i_cva6.obi_store_req_ex_cache.a.wdata;
|
||||
assign obi_store_slave.auser = i_cva6.obi_store_req_ex_cache.a.a_optional.auser;
|
||||
assign obi_store_slave.wuser = i_cva6.obi_store_req_ex_cache.a.a_optional.wuser;
|
||||
assign obi_store_slave.aid = i_cva6.obi_store_req_ex_cache.a.aid;
|
||||
assign obi_store_slave.atop = i_cva6.obi_store_req_ex_cache.a.a_optional.atop;
|
||||
assign obi_store_slave.memtype = i_cva6.obi_store_req_ex_cache.a.a_optional.memtype;
|
||||
assign obi_store_slave.prot = i_cva6.obi_store_req_ex_cache.a.a_optional.prot;
|
||||
assign obi_store_slave.reqpar = i_cva6.obi_store_req_ex_cache.reqpar;
|
||||
assign obi_store_slave.achk = i_cva6.obi_store_req_ex_cache.a.a_optional.achk;
|
||||
assign obi_store_slave.rready = i_cva6.obi_store_req_ex_cache.rready;
|
||||
assign obi_store_slave.rreadypar = i_cva6.obi_store_req_ex_cache.rreadypar;
|
||||
assign i_cva6.obi_store_rsp_cache_ex.gnt = obi_store_slave.gnt;
|
||||
assign i_cva6.obi_store_rsp_cache_ex.gntpar = obi_store_slave.gntpar;
|
||||
assign i_cva6.obi_store_rsp_cache_ex.rvalid = obi_store_slave.rvalid;
|
||||
assign i_cva6.obi_store_rsp_cache_ex.r.rdata = obi_store_slave.rdata;
|
||||
assign i_cva6.obi_store_rsp_cache_ex.r.err = obi_store_slave.err;
|
||||
assign i_cva6.obi_store_rsp_cache_ex.r.r_optional.ruser = obi_store_slave.ruser;
|
||||
assign i_cva6.obi_store_rsp_cache_ex.r.rid = obi_store_slave.rid;
|
||||
assign i_cva6.obi_store_rsp_cache_ex.r.r_optional.exokay = obi_store_slave.exokay;
|
||||
assign i_cva6.obi_store_rsp_cache_ex.rvalidpar = obi_store_slave.rvalidpar;
|
||||
assign i_cva6.obi_store_rsp_cache_ex.r.r_optional.rchk = obi_store_slave.rchk;
|
||||
assign obi_store_slave.req = i_cva6.obi_store_req.req;
|
||||
assign obi_store_slave.addr = i_cva6.obi_store_req.a.addr;
|
||||
assign obi_store_slave.we = i_cva6.obi_store_req.a.we;
|
||||
assign obi_store_slave.be = i_cva6.obi_store_req.a.be;
|
||||
assign obi_store_slave.wdata = i_cva6.obi_store_req.a.wdata;
|
||||
assign obi_store_slave.auser = i_cva6.obi_store_req.a.a_optional.auser;
|
||||
assign obi_store_slave.wuser = i_cva6.obi_store_req.a.a_optional.wuser;
|
||||
assign obi_store_slave.aid = i_cva6.obi_store_req.a.aid;
|
||||
assign obi_store_slave.atop = i_cva6.obi_store_req.a.a_optional.atop;
|
||||
assign obi_store_slave.memtype = i_cva6.obi_store_req.a.a_optional.memtype;
|
||||
assign obi_store_slave.prot = i_cva6.obi_store_req.a.a_optional.prot;
|
||||
assign obi_store_slave.reqpar = i_cva6.obi_store_req.reqpar;
|
||||
assign obi_store_slave.achk = i_cva6.obi_store_req.a.a_optional.achk;
|
||||
assign obi_store_slave.rready = i_cva6.obi_store_req.rready;
|
||||
assign obi_store_slave.rreadypar = i_cva6.obi_store_req.rreadypar;
|
||||
assign i_cva6.obi_store_rsp.gnt = obi_store_slave.gnt;
|
||||
assign i_cva6.obi_store_rsp.gntpar = obi_store_slave.gntpar;
|
||||
assign i_cva6.obi_store_rsp.rvalid = obi_store_slave.rvalid;
|
||||
assign i_cva6.obi_store_rsp.r.rdata = obi_store_slave.rdata;
|
||||
assign i_cva6.obi_store_rsp.r.err = obi_store_slave.err;
|
||||
assign i_cva6.obi_store_rsp.r.r_optional.ruser = obi_store_slave.ruser;
|
||||
assign i_cva6.obi_store_rsp.r.rid = obi_store_slave.rid;
|
||||
assign i_cva6.obi_store_rsp.r.r_optional.exokay = obi_store_slave.exokay;
|
||||
assign i_cva6.obi_store_rsp.rvalidpar = obi_store_slave.rvalidpar;
|
||||
assign i_cva6.obi_store_rsp.r.r_optional.rchk = obi_store_slave.rchk;
|
||||
|
||||
assign obi_amo_slave.req = i_cva6.obi_amo_req_ex_cache.req;
|
||||
assign obi_amo_slave.addr = i_cva6.obi_amo_req_ex_cache.a.addr;
|
||||
assign obi_amo_slave.we = i_cva6.obi_amo_req_ex_cache.a.we;
|
||||
assign obi_amo_slave.be = i_cva6.obi_amo_req_ex_cache.a.be;
|
||||
assign obi_amo_slave.wdata = i_cva6.obi_amo_req_ex_cache.a.wdata;
|
||||
assign obi_amo_slave.auser = i_cva6.obi_amo_req_ex_cache.a.a_optional.auser;
|
||||
assign obi_amo_slave.wuser = i_cva6.obi_amo_req_ex_cache.a.a_optional.wuser;
|
||||
assign obi_amo_slave.aid = i_cva6.obi_amo_req_ex_cache.a.aid;
|
||||
assign obi_amo_slave.atop = i_cva6.obi_amo_req_ex_cache.a.a_optional.atop;
|
||||
assign obi_amo_slave.memtype = i_cva6.obi_amo_req_ex_cache.a.a_optional.memtype;
|
||||
assign obi_amo_slave.prot = i_cva6.obi_amo_req_ex_cache.a.a_optional.prot;
|
||||
assign obi_amo_slave.reqpar = i_cva6.obi_amo_req_ex_cache.reqpar;
|
||||
assign obi_amo_slave.achk = i_cva6.obi_amo_req_ex_cache.a.a_optional.achk;
|
||||
assign obi_amo_slave.rready = i_cva6.obi_amo_req_ex_cache.rready;
|
||||
assign obi_amo_slave.rreadypar = i_cva6.obi_amo_req_ex_cache.rreadypar;
|
||||
assign i_cva6.obi_amo_rsp_cache_ex.gnt = obi_amo_slave.gnt;
|
||||
assign i_cva6.obi_amo_rsp_cache_ex.gntpar = obi_amo_slave.gntpar;
|
||||
assign i_cva6.obi_amo_rsp_cache_ex.rvalid = obi_amo_slave.rvalid;
|
||||
assign i_cva6.obi_amo_rsp_cache_ex.r.rdata = obi_amo_slave.rdata;
|
||||
assign i_cva6.obi_amo_rsp_cache_ex.r.err = obi_amo_slave.err;
|
||||
assign i_cva6.obi_amo_rsp_cache_ex.r.r_optional.ruser = obi_amo_slave.ruser;
|
||||
assign i_cva6.obi_amo_rsp_cache_ex.r.rid = obi_amo_slave.rid;
|
||||
assign i_cva6.obi_amo_rsp_cache_ex.r.r_optional.exokay = obi_amo_slave.exokay;
|
||||
assign i_cva6.obi_amo_rsp_cache_ex.rvalidpar = obi_amo_slave.rvalidpar;
|
||||
assign i_cva6.obi_amo_rsp_cache_ex.r.r_optional.rchk = obi_amo_slave.rchk;
|
||||
assign obi_amo_slave.req = i_cva6.obi_amo_req.req;
|
||||
assign obi_amo_slave.addr = i_cva6.obi_amo_req.a.addr;
|
||||
assign obi_amo_slave.we = i_cva6.obi_amo_req.a.we;
|
||||
assign obi_amo_slave.be = i_cva6.obi_amo_req.a.be;
|
||||
assign obi_amo_slave.wdata = i_cva6.obi_amo_req.a.wdata;
|
||||
assign obi_amo_slave.auser = i_cva6.obi_amo_req.a.a_optional.auser;
|
||||
assign obi_amo_slave.wuser = i_cva6.obi_amo_req.a.a_optional.wuser;
|
||||
assign obi_amo_slave.aid = i_cva6.obi_amo_req.a.aid;
|
||||
assign obi_amo_slave.atop = i_cva6.obi_amo_req.a.a_optional.atop;
|
||||
assign obi_amo_slave.memtype = i_cva6.obi_amo_req.a.a_optional.memtype;
|
||||
assign obi_amo_slave.prot = i_cva6.obi_amo_req.a.a_optional.prot;
|
||||
assign obi_amo_slave.reqpar = i_cva6.obi_amo_req.reqpar;
|
||||
assign obi_amo_slave.achk = i_cva6.obi_amo_req.a.a_optional.achk;
|
||||
assign obi_amo_slave.rready = i_cva6.obi_amo_req.rready;
|
||||
assign obi_amo_slave.rreadypar = i_cva6.obi_amo_req.rreadypar;
|
||||
assign i_cva6.obi_amo_rsp.gnt = obi_amo_slave.gnt;
|
||||
assign i_cva6.obi_amo_rsp.gntpar = obi_amo_slave.gntpar;
|
||||
assign i_cva6.obi_amo_rsp.rvalid = obi_amo_slave.rvalid;
|
||||
assign i_cva6.obi_amo_rsp.r.rdata = obi_amo_slave.rdata;
|
||||
assign i_cva6.obi_amo_rsp.r.err = obi_amo_slave.err;
|
||||
assign i_cva6.obi_amo_rsp.r.r_optional.ruser = obi_amo_slave.ruser;
|
||||
assign i_cva6.obi_amo_rsp.r.rid = obi_amo_slave.rid;
|
||||
assign i_cva6.obi_amo_rsp.r.r_optional.exokay = obi_amo_slave.exokay;
|
||||
assign i_cva6.obi_amo_rsp.rvalidpar = obi_amo_slave.rvalidpar;
|
||||
assign i_cva6.obi_amo_rsp.r.r_optional.rchk = obi_amo_slave.rchk;
|
||||
|
||||
assign obi_load_slave.req = i_cva6.obi_load_req_ex_cache.req;
|
||||
assign obi_load_slave.addr = i_cva6.obi_load_req_ex_cache.a.addr;
|
||||
assign obi_load_slave.we = i_cva6.obi_load_req_ex_cache.a.we;
|
||||
assign obi_load_slave.be = i_cva6.obi_load_req_ex_cache.a.be;
|
||||
assign obi_load_slave.wdata = i_cva6.obi_load_req_ex_cache.a.wdata;
|
||||
assign obi_load_slave.auser = i_cva6.obi_load_req_ex_cache.a.a_optional.auser;
|
||||
assign obi_load_slave.wuser = i_cva6.obi_load_req_ex_cache.a.a_optional.wuser;
|
||||
assign obi_load_slave.aid = i_cva6.obi_load_req_ex_cache.a.aid;
|
||||
assign obi_load_slave.atop = i_cva6.obi_load_req_ex_cache.a.a_optional.atop;
|
||||
assign obi_load_slave.memtype = i_cva6.obi_load_req_ex_cache.a.a_optional.memtype;
|
||||
assign obi_load_slave.prot = i_cva6.obi_load_req_ex_cache.a.a_optional.prot;
|
||||
assign obi_load_slave.reqpar = i_cva6.obi_load_req_ex_cache.reqpar;
|
||||
assign obi_load_slave.achk = i_cva6.obi_load_req_ex_cache.a.a_optional.achk;
|
||||
assign obi_load_slave.rready = i_cva6.obi_load_req_ex_cache.rready;
|
||||
assign obi_load_slave.rreadypar = i_cva6.obi_load_req_ex_cache.rreadypar;
|
||||
assign i_cva6.obi_load_rsp_cache_ex.gnt = obi_load_slave.gnt;
|
||||
assign i_cva6.obi_load_rsp_cache_ex.gntpar = obi_load_slave.gntpar;
|
||||
assign i_cva6.obi_load_rsp_cache_ex.rvalid = obi_load_slave.rvalid;
|
||||
assign i_cva6.obi_load_rsp_cache_ex.r.rdata = obi_load_slave.rdata;
|
||||
assign i_cva6.obi_load_rsp_cache_ex.r.err = obi_load_slave.err;
|
||||
assign i_cva6.obi_load_rsp_cache_ex.r.r_optional.ruser = obi_load_slave.ruser;
|
||||
assign i_cva6.obi_load_rsp_cache_ex.r.rid = obi_load_slave.rid;
|
||||
assign i_cva6.obi_load_rsp_cache_ex.r.r_optional.exokay = obi_load_slave.exokay;
|
||||
assign i_cva6.obi_load_rsp_cache_ex.rvalidpar = obi_load_slave.rvalidpar;
|
||||
assign i_cva6.obi_load_rsp_cache_ex.r.r_optional.rchk = obi_load_slave.rchk;
|
||||
assign obi_load_slave.req = i_cva6.obi_load_req.req;
|
||||
assign obi_load_slave.addr = i_cva6.obi_load_req.a.addr;
|
||||
assign obi_load_slave.we = i_cva6.obi_load_req.a.we;
|
||||
assign obi_load_slave.be = i_cva6.obi_load_req.a.be;
|
||||
assign obi_load_slave.wdata = i_cva6.obi_load_req.a.wdata;
|
||||
assign obi_load_slave.auser = i_cva6.obi_load_req.a.a_optional.auser;
|
||||
assign obi_load_slave.wuser = i_cva6.obi_load_req.a.a_optional.wuser;
|
||||
assign obi_load_slave.aid = i_cva6.obi_load_req.a.aid;
|
||||
assign obi_load_slave.atop = i_cva6.obi_load_req.a.a_optional.atop;
|
||||
assign obi_load_slave.memtype = i_cva6.obi_load_req.a.a_optional.memtype;
|
||||
assign obi_load_slave.prot = i_cva6.obi_load_req.a.a_optional.prot;
|
||||
assign obi_load_slave.reqpar = i_cva6.obi_load_req.reqpar;
|
||||
assign obi_load_slave.achk = i_cva6.obi_load_req.a.a_optional.achk;
|
||||
assign obi_load_slave.rready = i_cva6.obi_load_req.rready;
|
||||
assign obi_load_slave.rreadypar = i_cva6.obi_load_req.rreadypar;
|
||||
assign i_cva6.obi_load_rsp.gnt = obi_load_slave.gnt;
|
||||
assign i_cva6.obi_load_rsp.gntpar = obi_load_slave.gntpar;
|
||||
assign i_cva6.obi_load_rsp.rvalid = obi_load_slave.rvalid;
|
||||
assign i_cva6.obi_load_rsp.r.rdata = obi_load_slave.rdata;
|
||||
assign i_cva6.obi_load_rsp.r.err = obi_load_slave.err;
|
||||
assign i_cva6.obi_load_rsp.r.r_optional.ruser = obi_load_slave.ruser;
|
||||
assign i_cva6.obi_load_rsp.r.rid = obi_load_slave.rid;
|
||||
assign i_cva6.obi_load_rsp.r.r_optional.exokay = obi_load_slave.exokay;
|
||||
assign i_cva6.obi_load_rsp.rvalidpar = obi_load_slave.rvalidpar;
|
||||
assign i_cva6.obi_load_rsp.r.r_optional.rchk = obi_load_slave.rchk;
|
||||
initial begin // TODO: workaround, need to emulate with OBI agent
|
||||
force i_cva6.load_dreq_cache_exec.gnt = 1;
|
||||
end
|
||||
|
||||
//assign obi_mmu_ptw_slave.req = i_cva6.obi_fetch_req_ex_cache.req;
|
||||
//assign obi_mmu_ptw_slave.addr = i_cva6.obi_fetch_req_ex_cache.a.addr;
|
||||
//assign obi_mmu_ptw_slave.we = i_cva6.obi_fetch_req_ex_cache.a.we;
|
||||
//assign obi_mmu_ptw_slave.be = i_cva6.obi_fetch_req_ex_cache.a.be;
|
||||
//assign obi_mmu_ptw_slave.wdata = i_cva6.obi_fetch_req_ex_cache.a.wdata;
|
||||
//assign obi_mmu_ptw_slave.auser = i_cva6.obi_fetch_req_ex_cache.a.a_optional.auser;
|
||||
//assign obi_mmu_ptw_slave.wuser = i_cva6.obi_fetch_req_ex_cache.a.a_optional.wuser;
|
||||
//assign obi_mmu_ptw_slave.aid = i_cva6.obi_fetch_req_ex_cache.a.aid;
|
||||
//assign obi_mmu_ptw_slave.atop = i_cva6.obi_fetch_req_ex_cache.a.a_optional.atop;
|
||||
//assign obi_mmu_ptw_slave.memtype = i_cva6.obi_fetch_req_ex_cache.a.a_optional.memtype;
|
||||
//assign obi_mmu_ptw_slave.prot = i_cva6.obi_fetch_req_ex_cache.a.a_optional.prot;
|
||||
//assign obi_mmu_ptw_slave.reqpar = i_cva6.obi_fetch_req_ex_cache.reqpar;
|
||||
//assign obi_mmu_ptw_slave.achk = i_cva6.obi_fetch_req_ex_cache.a.a_optional.achk;
|
||||
//assign obi_mmu_ptw_slave.rready = i_cva6.obi_fetch_req_ex_cache.rready;
|
||||
//assign obi_mmu_ptw_slave.rreadypar = i_cva6.obi_fetch_req_ex_cache.rreadypar;
|
||||
//assign i_cva6.obi_fetch_rsp_cache_ex.gnt = obi_mmu_ptw_slave.gnt;
|
||||
//assign i_cva6.obi_fetch_rsp_cache_ex.gntpar = obi_mmu_ptw_slave.gntpar;
|
||||
//assign i_cva6.obi_fetch_rsp_cache_ex.rvalid = obi_mmu_ptw_slave.rvalid;
|
||||
//assign i_cva6.obi_fetch_rsp_cache_ex.r.rdata = obi_mmu_ptw_slave.rdata;
|
||||
//assign i_cva6.obi_fetch_rsp_cache_ex.r.err = obi_mmu_ptw_slave.err;
|
||||
//assign i_cva6.obi_fetch_rsp_cache_ex.r.r_optional.ruser = obi_mmu_ptw_slave.ruser;
|
||||
//assign i_cva6.obi_fetch_rsp_cache_ex.r.rid = obi_mmu_ptw_slave.rid;
|
||||
//assign i_cva6.obi_fetch_rsp_cache_ex.r.r_optional.exokay = obi_mmu_ptw_slave.exokay;
|
||||
//assign i_cva6.obi_fetch_rsp_cache_ex.rvalidpar = obi_mmu_ptw_slave.rvalidpar;
|
||||
//assign i_cva6.obi_fetch_rsp_cache_ex.r.r_optional.rchk = obi_mmu_ptw_slave.rchk;
|
||||
//assign obi_mmu_ptw_slave.req = i_cva6.obi_fetch_req.req;
|
||||
//assign obi_mmu_ptw_slave.addr = i_cva6.obi_fetch_req.a.addr;
|
||||
//assign obi_mmu_ptw_slave.we = i_cva6.obi_fetch_req.a.we;
|
||||
//assign obi_mmu_ptw_slave.be = i_cva6.obi_fetch_req.a.be;
|
||||
//assign obi_mmu_ptw_slave.wdata = i_cva6.obi_fetch_req.a.wdata;
|
||||
//assign obi_mmu_ptw_slave.auser = i_cva6.obi_fetch_req.a.a_optional.auser;
|
||||
//assign obi_mmu_ptw_slave.wuser = i_cva6.obi_fetch_req.a.a_optional.wuser;
|
||||
//assign obi_mmu_ptw_slave.aid = i_cva6.obi_fetch_req.a.aid;
|
||||
//assign obi_mmu_ptw_slave.atop = i_cva6.obi_fetch_req.a.a_optional.atop;
|
||||
//assign obi_mmu_ptw_slave.memtype = i_cva6.obi_fetch_req.a.a_optional.memtype;
|
||||
//assign obi_mmu_ptw_slave.prot = i_cva6.obi_fetch_req.a.a_optional.prot;
|
||||
//assign obi_mmu_ptw_slave.reqpar = i_cva6.obi_fetch_req.reqpar;
|
||||
//assign obi_mmu_ptw_slave.achk = i_cva6.obi_fetch_req.a.a_optional.achk;
|
||||
//assign obi_mmu_ptw_slave.rready = i_cva6.obi_fetch_req.rready;
|
||||
//assign obi_mmu_ptw_slave.rreadypar = i_cva6.obi_fetch_req.rreadypar;
|
||||
//assign i_cva6.obi_fetch_rsp.gnt = obi_mmu_ptw_slave.gnt;
|
||||
//assign i_cva6.obi_fetch_rsp.gntpar = obi_mmu_ptw_slave.gntpar;
|
||||
//assign i_cva6.obi_fetch_rsp.rvalid = obi_mmu_ptw_slave.rvalid;
|
||||
//assign i_cva6.obi_fetch_rsp.r.rdata = obi_mmu_ptw_slave.rdata;
|
||||
//assign i_cva6.obi_fetch_rsp.r.err = obi_mmu_ptw_slave.err;
|
||||
//assign i_cva6.obi_fetch_rsp.r.r_optional.ruser = obi_mmu_ptw_slave.ruser;
|
||||
//assign i_cva6.obi_fetch_rsp.r.rid = obi_mmu_ptw_slave.rid;
|
||||
//assign i_cva6.obi_fetch_rsp.r.r_optional.exokay = obi_mmu_ptw_slave.exokay;
|
||||
//assign i_cva6.obi_fetch_rsp.rvalidpar = obi_mmu_ptw_slave.rvalidpar;
|
||||
//assign i_cva6.obi_fetch_rsp.r.r_optional.rchk = obi_mmu_ptw_slave.rchk;
|
||||
|
||||
//assign obi_zcmt_slave.req = i_cva6.obi_fetch_req.req;
|
||||
//assign obi_zcmt_slave.addr = i_cva6.obi_fetch_req.a.addr;
|
||||
//assign obi_zcmt_slave.we = i_cva6.obi_fetch_req.a.we;
|
||||
//assign obi_zcmt_slave.be = i_cva6.obi_fetch_req.a.be;
|
||||
//assign obi_zcmt_slave.wdata = i_cva6.obi_fetch_req.a.wdata;
|
||||
//assign obi_zcmt_slave.auser = i_cva6.obi_fetch_req.a.a_optional.auser;
|
||||
//assign obi_zcmt_slave.wuser = i_cva6.obi_fetch_req.a.a_optional.wuser;
|
||||
//assign obi_zcmt_slave.aid = i_cva6.obi_fetch_req.a.aid;
|
||||
//assign obi_zcmt_slave.atop = i_cva6.obi_fetch_req.a.a_optional.atop;
|
||||
//assign obi_zcmt_slave.memtype = i_cva6.obi_fetch_req.a.a_optional.memtype;
|
||||
//assign obi_zcmt_slave.prot = i_cva6.obi_fetch_req.a.a_optional.prot;
|
||||
//assign obi_zcmt_slave.reqpar = i_cva6.obi_fetch_req.reqpar;
|
||||
//assign obi_zcmt_slave.achk = i_cva6.obi_fetch_req.a.a_optional.achk;
|
||||
//assign obi_zcmt_slave.rready = i_cva6.obi_fetch_req.rready;
|
||||
//assign obi_zcmt_slave.rreadypar = i_cva6.obi_fetch_req.rreadypar;
|
||||
//assign i_cva6.obi_fetch_rsp.gnt = obi_zcmt_slave.gnt;
|
||||
//assign i_cva6.obi_fetch_rsp.gntpar = obi_zcmt_slave.gntpar;
|
||||
//assign i_cva6.obi_fetch_rsp.rvalid = obi_zcmt_slave.rvalid;
|
||||
//assign i_cva6.obi_fetch_rsp.r.rdata = obi_zcmt_slave.rdata;
|
||||
//assign i_cva6.obi_fetch_rsp.r.err = obi_zcmt_slave.err;
|
||||
//assign i_cva6.obi_fetch_rsp.r.r_optional.ruser = obi_zcmt_slave.ruser;
|
||||
//assign i_cva6.obi_fetch_rsp.r.rid = obi_zcmt_slave.rid;
|
||||
//assign i_cva6.obi_fetch_rsp.r.r_optional.exokay = obi_zcmt_slave.exokay;
|
||||
//assign i_cva6.obi_fetch_rsp.rvalidpar = obi_zcmt_slave.rvalidpar;
|
||||
//assign i_cva6.obi_fetch_rsp.r.r_optional.rchk = obi_zcmt_slave.rchk;
|
||||
|
||||
end else begin //OBI in PASSIVE mode
|
||||
assign obi_fetch_slave.req = i_cva6.obi_fetch_req_if_cache.req;
|
||||
assign obi_fetch_slave.addr = i_cva6.obi_fetch_req_if_cache.a.addr;
|
||||
assign obi_fetch_slave.we = i_cva6.obi_fetch_req_if_cache.a.we;
|
||||
assign obi_fetch_slave.be = i_cva6.obi_fetch_req_if_cache.a.be;
|
||||
assign obi_fetch_slave.wdata = i_cva6.obi_fetch_req_if_cache.a.wdata;
|
||||
assign obi_fetch_slave.auser = i_cva6.obi_fetch_req_if_cache.a.a_optional.auser;
|
||||
assign obi_fetch_slave.wuser = i_cva6.obi_fetch_req_if_cache.a.a_optional.wuser;
|
||||
assign obi_fetch_slave.aid = i_cva6.obi_fetch_req_if_cache.a.aid;
|
||||
assign obi_fetch_slave.atop = i_cva6.obi_fetch_req_if_cache.a.a_optional.atop;
|
||||
assign obi_fetch_slave.memtype = i_cva6.obi_fetch_req_if_cache.a.a_optional.memtype;
|
||||
assign obi_fetch_slave.prot = i_cva6.obi_fetch_req_if_cache.a.a_optional.prot;
|
||||
assign obi_fetch_slave.reqpar = i_cva6.obi_fetch_req_if_cache.reqpar;
|
||||
assign obi_fetch_slave.achk = i_cva6.obi_fetch_req_if_cache.a.a_optional.achk;
|
||||
assign obi_fetch_slave.rready = i_cva6.obi_fetch_req_if_cache.rready;
|
||||
assign obi_fetch_slave.rreadypar = i_cva6.obi_fetch_req_if_cache.rreadypar;
|
||||
assign obi_fetch_slave.gnt = i_cva6.obi_fetch_rsp_cache_if.gnt;
|
||||
assign obi_fetch_slave.gntpar = i_cva6.obi_fetch_rsp_cache_if.gntpar;
|
||||
assign obi_fetch_slave.rvalid = i_cva6.obi_fetch_rsp_cache_if.rvalid;
|
||||
assign obi_fetch_slave.rdata = i_cva6.obi_fetch_rsp_cache_if.r.rdata;
|
||||
assign obi_fetch_slave.err = i_cva6.obi_fetch_rsp_cache_if.r.err;
|
||||
assign obi_fetch_slave.ruser = i_cva6.obi_fetch_rsp_cache_if.r.r_optional.ruser;
|
||||
assign obi_fetch_slave.rid = i_cva6.obi_fetch_rsp_cache_if.r.rid;
|
||||
assign obi_fetch_slave.exokay = i_cva6.obi_fetch_rsp_cache_if.r.r_optional.exokay;
|
||||
assign obi_fetch_slave.rvalidpar = i_cva6.obi_fetch_rsp_cache_if.rvalidpar;
|
||||
assign obi_fetch_slave.rchk = i_cva6.obi_fetch_rsp_cache_if.r.r_optional.rchk;
|
||||
assign obi_fetch_slave.req = i_cva6.obi_fetch_req.req;
|
||||
assign obi_fetch_slave.addr = i_cva6.obi_fetch_req.a.addr;
|
||||
assign obi_fetch_slave.we = i_cva6.obi_fetch_req.a.we;
|
||||
assign obi_fetch_slave.be = i_cva6.obi_fetch_req.a.be;
|
||||
assign obi_fetch_slave.wdata = i_cva6.obi_fetch_req.a.wdata;
|
||||
assign obi_fetch_slave.auser = i_cva6.obi_fetch_req.a.a_optional.auser;
|
||||
assign obi_fetch_slave.wuser = i_cva6.obi_fetch_req.a.a_optional.wuser;
|
||||
assign obi_fetch_slave.aid = i_cva6.obi_fetch_req.a.aid;
|
||||
assign obi_fetch_slave.atop = i_cva6.obi_fetch_req.a.a_optional.atop;
|
||||
assign obi_fetch_slave.memtype = i_cva6.obi_fetch_req.a.a_optional.memtype;
|
||||
assign obi_fetch_slave.prot = i_cva6.obi_fetch_req.a.a_optional.prot;
|
||||
assign obi_fetch_slave.reqpar = i_cva6.obi_fetch_req.reqpar;
|
||||
assign obi_fetch_slave.achk = i_cva6.obi_fetch_req.a.a_optional.achk;
|
||||
assign obi_fetch_slave.rready = i_cva6.obi_fetch_req.rready;
|
||||
assign obi_fetch_slave.rreadypar = i_cva6.obi_fetch_req.rreadypar;
|
||||
assign obi_fetch_slave.gnt = i_cva6.obi_fetch_rsp.gnt;
|
||||
assign obi_fetch_slave.gntpar = i_cva6.obi_fetch_rsp.gntpar;
|
||||
assign obi_fetch_slave.rvalid = i_cva6.obi_fetch_rsp.rvalid;
|
||||
assign obi_fetch_slave.rdata = i_cva6.obi_fetch_rsp.r.rdata;
|
||||
assign obi_fetch_slave.err = i_cva6.obi_fetch_rsp.r.err;
|
||||
assign obi_fetch_slave.ruser = i_cva6.obi_fetch_rsp.r.r_optional.ruser;
|
||||
assign obi_fetch_slave.rid = i_cva6.obi_fetch_rsp.r.rid;
|
||||
assign obi_fetch_slave.exokay = i_cva6.obi_fetch_rsp.r.r_optional.exokay;
|
||||
assign obi_fetch_slave.rvalidpar = i_cva6.obi_fetch_rsp.rvalidpar;
|
||||
assign obi_fetch_slave.rchk = i_cva6.obi_fetch_rsp.r.r_optional.rchk;
|
||||
|
||||
assign obi_store_slave.req = i_cva6.obi_store_req_ex_cache.req;
|
||||
assign obi_store_slave.addr = i_cva6.obi_store_req_ex_cache.a.addr;
|
||||
assign obi_store_slave.we = i_cva6.obi_store_req_ex_cache.a.we;
|
||||
assign obi_store_slave.be = i_cva6.obi_store_req_ex_cache.a.be;
|
||||
assign obi_store_slave.wdata = i_cva6.obi_store_req_ex_cache.a.wdata;
|
||||
assign obi_store_slave.auser = i_cva6.obi_store_req_ex_cache.a.a_optional.auser;
|
||||
assign obi_store_slave.wuser = i_cva6.obi_store_req_ex_cache.a.a_optional.wuser;
|
||||
assign obi_store_slave.aid = i_cva6.obi_store_req_ex_cache.a.aid;
|
||||
assign obi_store_slave.atop = i_cva6.obi_store_req_ex_cache.a.a_optional.atop;
|
||||
assign obi_store_slave.memtype = i_cva6.obi_store_req_ex_cache.a.a_optional.memtype;
|
||||
assign obi_store_slave.prot = i_cva6.obi_store_req_ex_cache.a.a_optional.prot;
|
||||
assign obi_store_slave.reqpar = i_cva6.obi_store_req_ex_cache.reqpar;
|
||||
assign obi_store_slave.achk = i_cva6.obi_store_req_ex_cache.a.a_optional.achk;
|
||||
assign obi_store_slave.rready = i_cva6.obi_store_req_ex_cache.rready;
|
||||
assign obi_store_slave.rreadypar = i_cva6.obi_store_req_ex_cache.rreadypar;
|
||||
assign obi_store_slave.gnt = i_cva6.obi_store_rsp_cache_ex.gnt;
|
||||
assign obi_store_slave.gntpar = i_cva6.obi_store_rsp_cache_ex.gntpar;
|
||||
assign obi_store_slave.rvalid = i_cva6.obi_store_rsp_cache_ex.rvalid;
|
||||
assign obi_store_slave.rdata = i_cva6.obi_store_rsp_cache_ex.r.rdata;
|
||||
assign obi_store_slave.err = i_cva6.obi_store_rsp_cache_ex.r.err;
|
||||
assign obi_store_slave.ruser = i_cva6.obi_store_rsp_cache_ex.r.r_optional.ruser;
|
||||
assign obi_store_slave.rid = i_cva6.obi_store_rsp_cache_ex.r.rid;
|
||||
assign obi_store_slave.exokay = i_cva6.obi_store_rsp_cache_ex.r.r_optional.exokay;
|
||||
assign obi_store_slave.rvalidpar = i_cva6.obi_store_rsp_cache_ex.rvalidpar;
|
||||
assign obi_store_slave.rchk = i_cva6.obi_store_rsp_cache_ex.r.r_optional.rchk;
|
||||
assign obi_store_slave.req = i_cva6.obi_store_req.req;
|
||||
assign obi_store_slave.addr = i_cva6.obi_store_req.a.addr;
|
||||
assign obi_store_slave.we = i_cva6.obi_store_req.a.we;
|
||||
assign obi_store_slave.be = i_cva6.obi_store_req.a.be;
|
||||
assign obi_store_slave.wdata = i_cva6.obi_store_req.a.wdata;
|
||||
assign obi_store_slave.auser = i_cva6.obi_store_req.a.a_optional.auser;
|
||||
assign obi_store_slave.wuser = i_cva6.obi_store_req.a.a_optional.wuser;
|
||||
assign obi_store_slave.aid = i_cva6.obi_store_req.a.aid;
|
||||
assign obi_store_slave.atop = i_cva6.obi_store_req.a.a_optional.atop;
|
||||
assign obi_store_slave.memtype = i_cva6.obi_store_req.a.a_optional.memtype;
|
||||
assign obi_store_slave.prot = i_cva6.obi_store_req.a.a_optional.prot;
|
||||
assign obi_store_slave.reqpar = i_cva6.obi_store_req.reqpar;
|
||||
assign obi_store_slave.achk = i_cva6.obi_store_req.a.a_optional.achk;
|
||||
assign obi_store_slave.rready = i_cva6.obi_store_req.rready;
|
||||
assign obi_store_slave.rreadypar = i_cva6.obi_store_req.rreadypar;
|
||||
assign obi_store_slave.gnt = i_cva6.obi_store_rsp.gnt;
|
||||
assign obi_store_slave.gntpar = i_cva6.obi_store_rsp.gntpar;
|
||||
assign obi_store_slave.rvalid = i_cva6.obi_store_rsp.rvalid;
|
||||
assign obi_store_slave.rdata = i_cva6.obi_store_rsp.r.rdata;
|
||||
assign obi_store_slave.err = i_cva6.obi_store_rsp.r.err;
|
||||
assign obi_store_slave.ruser = i_cva6.obi_store_rsp.r.r_optional.ruser;
|
||||
assign obi_store_slave.rid = i_cva6.obi_store_rsp.r.rid;
|
||||
assign obi_store_slave.exokay = i_cva6.obi_store_rsp.r.r_optional.exokay;
|
||||
assign obi_store_slave.rvalidpar = i_cva6.obi_store_rsp.rvalidpar;
|
||||
assign obi_store_slave.rchk = i_cva6.obi_store_rsp.r.r_optional.rchk;
|
||||
|
||||
assign obi_amo_slave.req = i_cva6.obi_amo_req_ex_cache.req;
|
||||
assign obi_amo_slave.addr = i_cva6.obi_amo_req_ex_cache.a.addr;
|
||||
assign obi_amo_slave.we = i_cva6.obi_amo_req_ex_cache.a.we;
|
||||
assign obi_amo_slave.be = i_cva6.obi_amo_req_ex_cache.a.be;
|
||||
assign obi_amo_slave.wdata = i_cva6.obi_amo_req_ex_cache.a.wdata;
|
||||
assign obi_amo_slave.auser = i_cva6.obi_amo_req_ex_cache.a.a_optional.auser;
|
||||
assign obi_amo_slave.wuser = i_cva6.obi_amo_req_ex_cache.a.a_optional.wuser;
|
||||
assign obi_amo_slave.aid = i_cva6.obi_amo_req_ex_cache.a.aid;
|
||||
assign obi_amo_slave.atop = i_cva6.obi_amo_req_ex_cache.a.a_optional.atop;
|
||||
assign obi_amo_slave.memtype = i_cva6.obi_amo_req_ex_cache.a.a_optional.memtype;
|
||||
assign obi_amo_slave.prot = i_cva6.obi_amo_req_ex_cache.a.a_optional.prot;
|
||||
assign obi_amo_slave.reqpar = i_cva6.obi_amo_req_ex_cache.reqpar;
|
||||
assign obi_amo_slave.achk = i_cva6.obi_amo_req_ex_cache.a.a_optional.achk;
|
||||
assign obi_amo_slave.rready = i_cva6.obi_amo_req_ex_cache.rready;
|
||||
assign obi_amo_slave.rreadypar = i_cva6.obi_amo_req_ex_cache.rreadypar;
|
||||
assign obi_amo_slave.gnt = i_cva6.obi_amo_rsp_cache_ex.gnt;
|
||||
assign obi_amo_slave.gntpar = i_cva6.obi_amo_rsp_cache_ex.gntpar;
|
||||
assign obi_amo_slave.rvalid = i_cva6.obi_amo_rsp_cache_ex.rvalid;
|
||||
assign obi_amo_slave.rdata = i_cva6.obi_amo_rsp_cache_ex.r.rdata;
|
||||
assign obi_amo_slave.err = i_cva6.obi_amo_rsp_cache_ex.r.err;
|
||||
assign obi_amo_slave.ruser = i_cva6.obi_amo_rsp_cache_ex.r.r_optional.ruser;
|
||||
assign obi_amo_slave.rid = i_cva6.obi_amo_rsp_cache_ex.r.rid;
|
||||
assign obi_amo_slave.exokay = i_cva6.obi_amo_rsp_cache_ex.r.r_optional.exokay;
|
||||
assign obi_amo_slave.rvalidpar = i_cva6.obi_amo_rsp_cache_ex.rvalidpar;
|
||||
assign obi_amo_slave.rchk = i_cva6.obi_amo_rsp_cache_ex.r.r_optional.rchk;
|
||||
assign obi_amo_slave.req = i_cva6.obi_amo_req.req;
|
||||
assign obi_amo_slave.addr = i_cva6.obi_amo_req.a.addr;
|
||||
assign obi_amo_slave.we = i_cva6.obi_amo_req.a.we;
|
||||
assign obi_amo_slave.be = i_cva6.obi_amo_req.a.be;
|
||||
assign obi_amo_slave.wdata = i_cva6.obi_amo_req.a.wdata;
|
||||
assign obi_amo_slave.auser = i_cva6.obi_amo_req.a.a_optional.auser;
|
||||
assign obi_amo_slave.wuser = i_cva6.obi_amo_req.a.a_optional.wuser;
|
||||
assign obi_amo_slave.aid = i_cva6.obi_amo_req.a.aid;
|
||||
assign obi_amo_slave.atop = i_cva6.obi_amo_req.a.a_optional.atop;
|
||||
assign obi_amo_slave.memtype = i_cva6.obi_amo_req.a.a_optional.memtype;
|
||||
assign obi_amo_slave.prot = i_cva6.obi_amo_req.a.a_optional.prot;
|
||||
assign obi_amo_slave.reqpar = i_cva6.obi_amo_req.reqpar;
|
||||
assign obi_amo_slave.achk = i_cva6.obi_amo_req.a.a_optional.achk;
|
||||
assign obi_amo_slave.rready = i_cva6.obi_amo_req.rready;
|
||||
assign obi_amo_slave.rreadypar = i_cva6.obi_amo_req.rreadypar;
|
||||
assign obi_amo_slave.gnt = i_cva6.obi_amo_rsp.gnt;
|
||||
assign obi_amo_slave.gntpar = i_cva6.obi_amo_rsp.gntpar;
|
||||
assign obi_amo_slave.rvalid = i_cva6.obi_amo_rsp.rvalid;
|
||||
assign obi_amo_slave.rdata = i_cva6.obi_amo_rsp.r.rdata;
|
||||
assign obi_amo_slave.err = i_cva6.obi_amo_rsp.r.err;
|
||||
assign obi_amo_slave.ruser = i_cva6.obi_amo_rsp.r.r_optional.ruser;
|
||||
assign obi_amo_slave.rid = i_cva6.obi_amo_rsp.r.rid;
|
||||
assign obi_amo_slave.exokay = i_cva6.obi_amo_rsp.r.r_optional.exokay;
|
||||
assign obi_amo_slave.rvalidpar = i_cva6.obi_amo_rsp.rvalidpar;
|
||||
assign obi_amo_slave.rchk = i_cva6.obi_amo_rsp.r.r_optional.rchk;
|
||||
|
||||
assign obi_load_slave.req = i_cva6.obi_load_req_ex_cache.req;
|
||||
assign obi_load_slave.addr = i_cva6.obi_load_req_ex_cache.a.addr;
|
||||
assign obi_load_slave.we = i_cva6.obi_load_req_ex_cache.a.we;
|
||||
assign obi_load_slave.be = i_cva6.obi_load_req_ex_cache.a.be;
|
||||
assign obi_load_slave.wdata = i_cva6.obi_load_req_ex_cache.a.wdata;
|
||||
assign obi_load_slave.auser = i_cva6.obi_load_req_ex_cache.a.a_optional.auser;
|
||||
assign obi_load_slave.wuser = i_cva6.obi_load_req_ex_cache.a.a_optional.wuser;
|
||||
assign obi_load_slave.aid = i_cva6.obi_load_req_ex_cache.a.aid;
|
||||
assign obi_load_slave.atop = i_cva6.obi_load_req_ex_cache.a.a_optional.atop;
|
||||
assign obi_load_slave.memtype = i_cva6.obi_load_req_ex_cache.a.a_optional.memtype;
|
||||
assign obi_load_slave.prot = i_cva6.obi_load_req_ex_cache.a.a_optional.prot;
|
||||
assign obi_load_slave.reqpar = i_cva6.obi_load_req_ex_cache.reqpar;
|
||||
assign obi_load_slave.achk = i_cva6.obi_load_req_ex_cache.a.a_optional.achk;
|
||||
assign obi_load_slave.rready = i_cva6.obi_load_req_ex_cache.rready;
|
||||
assign obi_load_slave.rreadypar = i_cva6.obi_load_req_ex_cache.rreadypar;
|
||||
assign obi_load_slave.gnt = i_cva6.obi_load_rsp_cache_ex.gnt;
|
||||
assign obi_load_slave.gntpar = i_cva6.obi_load_rsp_cache_ex.gntpar;
|
||||
assign obi_load_slave.rvalid = i_cva6.obi_load_rsp_cache_ex.rvalid;
|
||||
assign obi_load_slave.rdata = i_cva6.obi_load_rsp_cache_ex.r.rdata;
|
||||
assign obi_load_slave.err = i_cva6.obi_load_rsp_cache_ex.r.err;
|
||||
assign obi_load_slave.ruser = i_cva6.obi_load_rsp_cache_ex.r.r_optional.ruser;
|
||||
assign obi_load_slave.rid = i_cva6.obi_load_rsp_cache_ex.r.rid;
|
||||
assign obi_load_slave.exokay = i_cva6.obi_load_rsp_cache_ex.r.r_optional.exokay;
|
||||
assign obi_load_slave.rvalidpar = i_cva6.obi_load_rsp_cache_ex.rvalidpar;
|
||||
assign obi_load_slave.rchk = i_cva6.obi_load_rsp_cache_ex.r.r_optional.rchk;
|
||||
assign obi_load_slave.req = i_cva6.obi_load_req.req;
|
||||
assign obi_load_slave.addr = i_cva6.obi_load_req.a.addr;
|
||||
assign obi_load_slave.we = i_cva6.obi_load_req.a.we;
|
||||
assign obi_load_slave.be = i_cva6.obi_load_req.a.be;
|
||||
assign obi_load_slave.wdata = i_cva6.obi_load_req.a.wdata;
|
||||
assign obi_load_slave.auser = i_cva6.obi_load_req.a.a_optional.auser;
|
||||
assign obi_load_slave.wuser = i_cva6.obi_load_req.a.a_optional.wuser;
|
||||
assign obi_load_slave.aid = i_cva6.obi_load_req.a.aid;
|
||||
assign obi_load_slave.atop = i_cva6.obi_load_req.a.a_optional.atop;
|
||||
assign obi_load_slave.memtype = i_cva6.obi_load_req.a.a_optional.memtype;
|
||||
assign obi_load_slave.prot = i_cva6.obi_load_req.a.a_optional.prot;
|
||||
assign obi_load_slave.reqpar = i_cva6.obi_load_req.reqpar;
|
||||
assign obi_load_slave.achk = i_cva6.obi_load_req.a.a_optional.achk;
|
||||
assign obi_load_slave.rready = i_cva6.obi_load_req.rready;
|
||||
assign obi_load_slave.rreadypar = i_cva6.obi_load_req.rreadypar;
|
||||
assign obi_load_slave.gnt = i_cva6.obi_load_rsp.gnt;
|
||||
assign obi_load_slave.gntpar = i_cva6.obi_load_rsp.gntpar;
|
||||
assign obi_load_slave.rvalid = i_cva6.obi_load_rsp.rvalid;
|
||||
assign obi_load_slave.rdata = i_cva6.obi_load_rsp.r.rdata;
|
||||
assign obi_load_slave.err = i_cva6.obi_load_rsp.r.err;
|
||||
assign obi_load_slave.ruser = i_cva6.obi_load_rsp.r.r_optional.ruser;
|
||||
assign obi_load_slave.rid = i_cva6.obi_load_rsp.r.rid;
|
||||
assign obi_load_slave.exokay = i_cva6.obi_load_rsp.r.r_optional.exokay;
|
||||
assign obi_load_slave.rvalidpar = i_cva6.obi_load_rsp.rvalidpar;
|
||||
assign obi_load_slave.rchk = i_cva6.obi_load_rsp.r.r_optional.rchk;
|
||||
|
||||
//assign obi_mmu_ptw_slave.req = i_cva6.obi_mmu_ptw_req_ex_cache.req;
|
||||
//assign obi_mmu_ptw_slave.addr = i_cva6.obi_mmu_ptw_req_ex_cache.a.addr;
|
||||
//assign obi_mmu_ptw_slave.we = i_cva6.obi_mmu_ptw_req_ex_cache.a.we;
|
||||
//assign obi_mmu_ptw_slave.be = i_cva6.obi_mmu_ptw_req_ex_cache.a.be;
|
||||
//assign obi_mmu_ptw_slave.wdata = i_cva6.obi_mmu_ptw_req_ex_cache.a.wdata;
|
||||
//assign obi_mmu_ptw_slave.auser = i_cva6.obi_mmu_ptw_req_ex_cache.a.a_optional.auser;
|
||||
//assign obi_mmu_ptw_slave.wuser = i_cva6.obi_mmu_ptw_req_ex_cache.a.a_optional.wuser;
|
||||
//assign obi_mmu_ptw_slave.aid = i_cva6.obi_mmu_ptw_req_ex_cache.a.aid;
|
||||
//assign obi_mmu_ptw_slave.atop = i_cva6.obi_mmu_ptw_req_ex_cache.a.a_optional.atop;
|
||||
//assign obi_mmu_ptw_slave.memtype = i_cva6.obi_mmu_ptw_req_ex_cache.a.a_optional.memtype;
|
||||
//assign obi_mmu_ptw_slave.prot = i_cva6.obi_mmu_ptw_req_ex_cache.a.a_optional.prot;
|
||||
//assign obi_mmu_ptw_slave.reqpar = i_cva6.obi_mmu_ptw_req_ex_cache.reqpar;
|
||||
//assign obi_mmu_ptw_slave.achk = i_cva6.obi_mmu_ptw_req_ex_cache.a.a_optional.achk;
|
||||
//assign obi_mmu_ptw_slave.rready = i_cva6.obi_mmu_ptw_req_ex_cache.rready;
|
||||
//assign obi_mmu_ptw_slave.rreadypar = i_cva6.obi_mmu_ptw_req_ex_cache.rreadypar;
|
||||
//assign obi_mmu_ptw_slave.gnt = i_cva6.obi_mmu_ptw_rsp_cache_ex.gnt;
|
||||
//assign obi_mmu_ptw_slave.gntpar = i_cva6.obi_mmu_ptw_rsp_cache_ex.gntpar;
|
||||
//assign obi_mmu_ptw_slave.rvalid = i_cva6.obi_mmu_ptw_rsp_cache_ex.rvalid;
|
||||
//assign obi_mmu_ptw_slave.rdata = i_cva6.obi_mmu_ptw_rsp_cache_ex.r.rdata;
|
||||
//assign obi_mmu_ptw_slave.err = i_cva6.obi_mmu_ptw_rsp_cache_ex.r.err;
|
||||
//assign obi_mmu_ptw_slave.ruser = i_cva6.obi_mmu_ptw_rsp_cache_ex.r.r_optional.ruser;
|
||||
//assign obi_mmu_ptw_slave.rid = i_cva6.obi_mmu_ptw_rsp_cache_ex.r.rid;
|
||||
//assign obi_mmu_ptw_slave.exokay = i_cva6.obi_mmu_ptw_rsp_cache_ex.r.r_optional.exokay;
|
||||
//assign obi_mmu_ptw_slave.rvalidpar = i_cva6.obi_mmu_ptw_rsp_cache_ex.rvalidpar;
|
||||
//assign obi_mmu_ptw_slave.rchk = i_cva6.obi_mmu_ptw_rsp_cache_ex.r.r_optional.rchk;
|
||||
//assign obi_mmu_ptw_slave.req = i_cva6.obi_mmu_ptw_req.req;
|
||||
//assign obi_mmu_ptw_slave.addr = i_cva6.obi_mmu_ptw_req.a.addr;
|
||||
//assign obi_mmu_ptw_slave.we = i_cva6.obi_mmu_ptw_req.a.we;
|
||||
//assign obi_mmu_ptw_slave.be = i_cva6.obi_mmu_ptw_req.a.be;
|
||||
//assign obi_mmu_ptw_slave.wdata = i_cva6.obi_mmu_ptw_req.a.wdata;
|
||||
//assign obi_mmu_ptw_slave.auser = i_cva6.obi_mmu_ptw_req.a.a_optional.auser;
|
||||
//assign obi_mmu_ptw_slave.wuser = i_cva6.obi_mmu_ptw_req.a.a_optional.wuser;
|
||||
//assign obi_mmu_ptw_slave.aid = i_cva6.obi_mmu_ptw_req.a.aid;
|
||||
//assign obi_mmu_ptw_slave.atop = i_cva6.obi_mmu_ptw_req.a.a_optional.atop;
|
||||
//assign obi_mmu_ptw_slave.memtype = i_cva6.obi_mmu_ptw_req.a.a_optional.memtype;
|
||||
//assign obi_mmu_ptw_slave.prot = i_cva6.obi_mmu_ptw_req.a.a_optional.prot;
|
||||
//assign obi_mmu_ptw_slave.reqpar = i_cva6.obi_mmu_ptw_req.reqpar;
|
||||
//assign obi_mmu_ptw_slave.achk = i_cva6.obi_mmu_ptw_req.a.a_optional.achk;
|
||||
//assign obi_mmu_ptw_slave.rready = i_cva6.obi_mmu_ptw_req.rready;
|
||||
//assign obi_mmu_ptw_slave.rreadypar = i_cva6.obi_mmu_ptw_req.rreadypar;
|
||||
//assign obi_mmu_ptw_slave.gnt = i_cva6.obi_mmu_ptw_rsp.gnt;
|
||||
//assign obi_mmu_ptw_slave.gntpar = i_cva6.obi_mmu_ptw_rsp.gntpar;
|
||||
//assign obi_mmu_ptw_slave.rvalid = i_cva6.obi_mmu_ptw_rsp.rvalid;
|
||||
//assign obi_mmu_ptw_slave.rdata = i_cva6.obi_mmu_ptw_rsp.r.rdata;
|
||||
//assign obi_mmu_ptw_slave.err = i_cva6.obi_mmu_ptw_rsp.r.err;
|
||||
//assign obi_mmu_ptw_slave.ruser = i_cva6.obi_mmu_ptw_rsp.r.r_optional.ruser;
|
||||
//assign obi_mmu_ptw_slave.rid = i_cva6.obi_mmu_ptw_rsp.r.rid;
|
||||
//assign obi_mmu_ptw_slave.exokay = i_cva6.obi_mmu_ptw_rsp.r.r_optional.exokay;
|
||||
//assign obi_mmu_ptw_slave.rvalidpar = i_cva6.obi_mmu_ptw_rsp.rvalidpar;
|
||||
//assign obi_mmu_ptw_slave.rchk = i_cva6.obi_mmu_ptw_rsp.r.r_optional.rchk;
|
||||
|
||||
//assign obi_zcmt_slave.req = i_cva6.obi_zcmt_req.req;
|
||||
//assign obi_zcmt_slave.addr = i_cva6.obi_zcmt_req.a.addr;
|
||||
//assign obi_zcmt_slave.we = i_cva6.obi_zcmt_req.a.we;
|
||||
//assign obi_zcmt_slave.be = i_cva6.obi_zcmt_req.a.be;
|
||||
//assign obi_zcmt_slave.wdata = i_cva6.obi_zcmt_req.a.wdata;
|
||||
//assign obi_zcmt_slave.auser = i_cva6.obi_zcmt_req.a.a_optional.auser;
|
||||
//assign obi_zcmt_slave.wuser = i_cva6.obi_zcmt_req.a.a_optional.wuser;
|
||||
//assign obi_zcmt_slave.aid = i_cva6.obi_zcmt_req.a.aid;
|
||||
//assign obi_zcmt_slave.atop = i_cva6.obi_zcmt_req.a.a_optional.atop;
|
||||
//assign obi_zcmt_slave.memtype = i_cva6.obi_zcmt_req.a.a_optional.memtype;
|
||||
//assign obi_zcmt_slave.prot = i_cva6.obi_zcmt_req.a.a_optional.prot;
|
||||
//assign obi_zcmt_slave.reqpar = i_cva6.obi_zcmt_req.reqpar;
|
||||
//assign obi_zcmt_slave.achk = i_cva6.obi_zcmt_req.a.a_optional.achk;
|
||||
//assign obi_zcmt_slave.rready = i_cva6.obi_zcmt_req.rready;
|
||||
//assign obi_zcmt_slave.rreadypar = i_cva6.obi_zcmt_req.rreadypar;
|
||||
//assign obi_zcmt_slave.gnt = i_cva6.obi_zcmt_rsp.gnt;
|
||||
//assign obi_zcmt_slave.gntpar = i_cva6.obi_zcmt_rsp.gntpar;
|
||||
//assign obi_zcmt_slave.rvalid = i_cva6.obi_zcmt_rsp.rvalid;
|
||||
//assign obi_zcmt_slave.rdata = i_cva6.obi_zcmt_rsp.r.rdata;
|
||||
//assign obi_zcmt_slave.err = i_cva6.obi_zcmt_rsp.r.err;
|
||||
//assign obi_zcmt_slave.ruser = i_cva6.obi_zcmt_rsp.r.r_optional.ruser;
|
||||
//assign obi_zcmt_slave.rid = i_cva6.obi_zcmt_rsp.r.rid;
|
||||
//assign obi_zcmt_slave.exokay = i_cva6.obi_zcmt_rsp.r.r_optional.exokay;
|
||||
//assign obi_zcmt_slave.rvalidpar = i_cva6.obi_zcmt_rsp.rvalidpar;
|
||||
//assign obi_zcmt_slave.rchk = i_cva6.obi_zcmt_rsp.r.r_optional.rchk;
|
||||
end
|
||||
///assign obi_slave.mid = i_cva6.obi_fetch_rsp_cache_if.a.a_optional.mid;
|
||||
///assign obi_slave.dbg = i_cva6.obi_fetch_rsp_cache_if.a.a_optional.dbg;
|
||||
///assign obi_slave.mid = i_cva6.obi_fetch_rsp.a.a_optional.mid;
|
||||
///assign obi_slave.dbg = i_cva6.obi_fetch_rsp.a.a_optional.dbg;
|
||||
|
||||
|
||||
AXI_BUS #(
|
||||
.AXI_ADDR_WIDTH ( CVA6Cfg.AxiAddrWidth ),
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue