summaryrefslogtreecommitdiff
path: root/rtl/gfx/gfx_xbar_vram.sv
diff options
context:
space:
mode:
authorAlejandro Soto <alejandro@34project.org>2024-05-21 12:29:30 -0600
committerAlejandro Soto <alejandro@34project.org>2024-05-24 05:58:42 -0600
commitbd5f7ec56e966855bc3c878fde3819bafe6f6c1e (patch)
tree1a154e7c5bd83b7554e1f13fd53fb96db9d00b12 /rtl/gfx/gfx_xbar_vram.sv
parente15674334408644143aa6dbce6657614e59da370 (diff)
rtl/gfx, platform/wavelet3d, target/w3d_de1soc: add system-wide RAM mappings
Diffstat (limited to '')
-rw-r--r--rtl/gfx/gfx_xbar_vram.sv39
1 files changed, 34 insertions, 5 deletions
diff --git a/rtl/gfx/gfx_xbar_vram.sv b/rtl/gfx/gfx_xbar_vram.sv
index 3ce8425..c643948 100644
--- a/rtl/gfx/gfx_xbar_vram.sv
+++ b/rtl/gfx/gfx_xbar_vram.sv
@@ -3,17 +3,17 @@ module gfx_xbar_vram
input logic clk,
srst_n,
- if_axib.s shader_0_data,
+ if_axib.s sched,
+ shader_0_data,
shader_0_insn,
if_axib.m vram
);
- defparam xbar.NM = 2;
- defparam xbar.NS = 1;
- defparam xbar.OPT_LOWPOWER = 0;
-
defparam
+ xbar.NM = 3,
+ xbar.NS = 1,
+ xbar.OPT_LOWPOWER = 0,
xbar.SLAVE_ADDR = '0,
xbar.SLAVE_MASK = '0,
xbar.C_AXI_ID_WIDTH = 8;
@@ -24,30 +24,37 @@ module gfx_xbar_vram
.S_AXI_ARESETN(srst_n),
.S_AXI_AWVALID({
+ sched.awvalid,
shader_0_data.awvalid,
shader_0_insn.awvalid
}),
.S_AXI_AWREADY({
+ sched.awready,
shader_0_data.awready,
shader_0_insn.awready
}),
.S_AXI_AWID({
+ sched.awid,
shader_0_data.awid,
shader_0_insn.awid
}),
.S_AXI_AWADDR({
+ sched.awaddr,
shader_0_data.awaddr,
shader_0_insn.awaddr
}),
.S_AXI_AWLEN({
+ sched.awlen,
shader_0_data.awlen,
shader_0_insn.awlen
}),
.S_AXI_AWSIZE({
+ sched.awsize,
shader_0_data.awsize,
shader_0_insn.awsize
}),
.S_AXI_AWBURST({
+ sched.awburst,
shader_0_data.awburst,
shader_0_insn.awburst
}),
@@ -57,68 +64,84 @@ module gfx_xbar_vram
.S_AXI_AWQOS('0),
.S_AXI_WVALID({
+ sched.wvalid,
shader_0_data.wvalid,
shader_0_insn.wvalid
}),
.S_AXI_WREADY({
+ sched.wready,
shader_0_data.wready,
shader_0_insn.wready
}),
.S_AXI_WDATA({
+ sched.wdata,
shader_0_data.wdata,
shader_0_insn.wdata
}),
.S_AXI_WSTRB({
+ sched.wstrb,
shader_0_data.wstrb,
shader_0_insn.wstrb
}),
.S_AXI_WLAST({
+ sched.wlast,
shader_0_data.wlast,
shader_0_insn.wlast
}),
.S_AXI_BVALID({
+ sched.bvalid,
shader_0_data.bvalid,
shader_0_insn.bvalid
}),
.S_AXI_BREADY({
+ sched.bready,
shader_0_data.bready,
shader_0_insn.bready
}),
.S_AXI_BID({
+ sched.bid,
shader_0_data.bid,
shader_0_insn.bid
}),
.S_AXI_BRESP({
+ sched.bresp,
shader_0_data.bresp,
shader_0_insn.bresp
}),
.S_AXI_ARVALID({
+ sched.arvalid,
shader_0_data.arvalid,
shader_0_insn.arvalid
}),
.S_AXI_ARREADY({
+ sched.arready,
shader_0_data.arready,
shader_0_insn.arready
}),
.S_AXI_ARID({
+ sched.arid,
shader_0_data.arid,
shader_0_insn.arid
}),
.S_AXI_ARADDR({
+ sched.araddr,
shader_0_data.araddr,
shader_0_insn.araddr
}),
.S_AXI_ARLEN({
+ sched.arlen,
shader_0_data.arlen,
shader_0_insn.arlen
}),
.S_AXI_ARSIZE({
+ sched.arsize,
shader_0_data.arsize,
shader_0_insn.arsize
}),
.S_AXI_ARBURST({
+ sched.arburst,
shader_0_data.arburst,
shader_0_insn.arburst
}),
@@ -128,26 +151,32 @@ module gfx_xbar_vram
.S_AXI_ARQOS('0),
.S_AXI_RVALID({
+ sched.rvalid,
shader_0_data.rvalid,
shader_0_insn.rvalid
}),
.S_AXI_RREADY({
+ sched.rready,
shader_0_data.rready,
shader_0_insn.rready
}),
.S_AXI_RID({
+ sched.rid,
shader_0_data.rid,
shader_0_insn.rid
}),
.S_AXI_RDATA({
+ sched.rdata,
shader_0_data.rdata,
shader_0_insn.rdata
}),
.S_AXI_RRESP({
+ sched.rresp,
shader_0_data.rresp,
shader_0_insn.rresp
}),
.S_AXI_RLAST({
+ sched.rlast,
shader_0_data.rlast,
shader_0_insn.rlast
}),