Add passthrough CPUIF
This commit is contained in:
19
peakrdl/regblock/cpuif/passthrough/__init__.py
Normal file
19
peakrdl/regblock/cpuif/passthrough/__init__.py
Normal file
@@ -0,0 +1,19 @@
|
||||
from ..base import CpuifBase
|
||||
|
||||
class PassthroughCpuif(CpuifBase):
|
||||
template_path = "cpuif/passthrough/passthrough_tmpl.sv"
|
||||
|
||||
@property
|
||||
def port_declaration(self) -> str:
|
||||
lines = [
|
||||
"input wire s_cpuif_req",
|
||||
"input wire s_cpuif_req_is_wr",
|
||||
f"input wire [{self.addr_width-1}:0] s_cpuif_addr",
|
||||
f"input wire [{self.data_width-1}:0] s_cpuif_wr_data",
|
||||
"output wire s_cpuif_rd_ack",
|
||||
"output wire s_cpuif_rd_err",
|
||||
f"output wire [{self.data_width-1}:0] s_cpuif_rd_data",
|
||||
"output wire s_cpuif_wr_ack",
|
||||
"output wire s_cpuif_wr_err",
|
||||
]
|
||||
return ",\n".join(lines)
|
||||
9
peakrdl/regblock/cpuif/passthrough/passthrough_tmpl.sv
Normal file
9
peakrdl/regblock/cpuif/passthrough/passthrough_tmpl.sv
Normal file
@@ -0,0 +1,9 @@
|
||||
assign cpuif_req = s_cpuif_req;
|
||||
assign cpuif_req_is_wr = s_cpuif_req_is_wr;
|
||||
assign cpuif_addr = s_cpuif_addr;
|
||||
assign cpuif_wr_data = s_cpuif_wr_data;
|
||||
assign s_cpuif_rd_ack = cpuif_rd_ack;
|
||||
assign s_cpuif_rd_err = cpuif_rd_err;
|
||||
assign s_cpuif_rd_data = cpuif_rd_data;
|
||||
assign s_cpuif_wr_ack = cpuif_wr_ack;
|
||||
assign s_cpuif_wr_err = cpuif_wr_err;
|
||||
Reference in New Issue
Block a user