Unverified Commit 17db7573 authored by enjoy-digital's avatar enjoy-digital Committed by GitHub

Merge pull request #229 from craigjb/port_width

Add customizable standalone user port data widths
parents 2f578443 5c32dc71
...@@ -545,7 +545,8 @@ class LiteDRAMCore(SoCCore): ...@@ -545,7 +545,8 @@ class LiteDRAMCore(SoCCore):
for name, port in core_config["user_ports"].items(): for name, port in core_config["user_ports"].items():
# Native ------------------------------------------------------------------------------- # Native -------------------------------------------------------------------------------
if port["type"] == "native": if port["type"] == "native":
user_port = self.sdram.crossbar.get_port() user_port = self.sdram.crossbar.get_port(
data_width=port.get("data_width", None))
platform.add_extension(get_native_user_port_ios(name, platform.add_extension(get_native_user_port_ios(name,
user_port.address_width, user_port.address_width,
user_port.data_width)) user_port.data_width))
...@@ -570,7 +571,8 @@ class LiteDRAMCore(SoCCore): ...@@ -570,7 +571,8 @@ class LiteDRAMCore(SoCCore):
] ]
# Wishbone ----------------------------------------------------------------------------- # Wishbone -----------------------------------------------------------------------------
elif port["type"] == "wishbone": elif port["type"] == "wishbone":
user_port = self.sdram.crossbar.get_port() user_port = self.sdram.crossbar.get_port(
data_width=port.get("data_width", None))
wb_port = wishbone.Interface( wb_port = wishbone.Interface(
user_port.data_width, user_port.data_width,
user_port.address_width) user_port.address_width)
...@@ -593,7 +595,8 @@ class LiteDRAMCore(SoCCore): ...@@ -593,7 +595,8 @@ class LiteDRAMCore(SoCCore):
] ]
# AXI ---------------------------------------------------------------------------------- # AXI ----------------------------------------------------------------------------------
elif port["type"] == "axi": elif port["type"] == "axi":
user_port = self.sdram.crossbar.get_port() user_port = self.sdram.crossbar.get_port(
data_width=port.get("data_width", None))
axi_port = LiteDRAMAXIPort( axi_port = LiteDRAMAXIPort(
user_port.data_width, user_port.data_width,
user_port.address_width + log2_int(user_port.data_width//8), user_port.address_width + log2_int(user_port.data_width//8),
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment