Skip to content

Commit

Permalink
added io_model parameter in rtl
Browse files Browse the repository at this point in the history
  • Loading branch information
moinijaz committed Dec 3, 2024
1 parent 4522165 commit c39d48d
Show file tree
Hide file tree
Showing 2 changed files with 34 additions and 1 deletion.
34 changes: 33 additions & 1 deletion rapidsilicon/ip/io_configurator/v1_0/io_configurator_gen.py
Original file line number Diff line number Diff line change
Expand Up @@ -484,6 +484,7 @@ def I_DELAY(self, platform, sel_dly, io_model, combination, io_mode, voltage_sta
self.specials += Instance("DLY_CONFIG",
# Parameters.
# -----------
p_IO_MODEL = combination,
p_DELAY = delay,
p_WEAK_KEEPER = io_mode,
p_IOSTANDARD = voltage_standard,
Expand Down Expand Up @@ -517,6 +518,7 @@ def I_DELAY(self, platform, sel_dly, io_model, combination, io_mode, voltage_sta
self.specials += Instance("DLY_CONFIG",
# Parameters.
# -----------
p_IO_MODEL = combination,
p_DELAY = delay,
p_WEAK_KEEPER = io_mode,
p_IOSTANDARD = voltage_standard,
Expand Down Expand Up @@ -562,6 +564,7 @@ def I_DELAY(self, platform, sel_dly, io_model, combination, io_mode, voltage_sta
self.specials += Instance("DLY_CONFIG",
# Parameters.
# -----------
p_IO_MODEL = combination,
p_DELAY = delay,
p_WEAK_KEEPER = io_mode,
p_IOSTANDARD = voltage_standard,
Expand Down Expand Up @@ -604,6 +607,7 @@ def I_DELAY(self, platform, sel_dly, io_model, combination, io_mode, voltage_sta
self.specials += Instance("DLY_CONFIG",
# Parameters.
# -----------
p_IO_MODEL = combination,
p_DELAY = delay,
p_WEAK_KEEPER = io_mode,
p_IOSTANDARD = voltage_standard,
Expand Down Expand Up @@ -657,6 +661,7 @@ def I_DELAY(self, platform, sel_dly, io_model, combination, io_mode, voltage_sta
self.specials += Instance("DLY_CONFIG",
# Parameters.
# -----------
p_IO_MODEL = combination,
p_DELAY = delay,
p_WEAK_KEEPER = io_mode,
p_IOSTANDARD = voltage_standard,
Expand Down Expand Up @@ -690,6 +695,7 @@ def I_DELAY(self, platform, sel_dly, io_model, combination, io_mode, voltage_sta
# ----------------
self.specials += Instance("DLY_CONFIG",
# Parameters.
p_IO_MODEL = combination,
# -----------
p_DELAY = delay,
p_WEAK_KEEPER = io_mode,
Expand Down Expand Up @@ -1892,6 +1898,7 @@ def O_DELAY(self, platform, sel_dly, io_model, combination, io_mode, voltage_sta
self.specials += Instance("DLY_CONFIG",
# Parameters.
# -----------
p_IO_MODEL = combination,
p_DELAY = delay,
p_WEAK_KEEPER = io_mode,
p_IOSTANDARD = voltage_standard,
Expand Down Expand Up @@ -1925,6 +1932,7 @@ def O_DELAY(self, platform, sel_dly, io_model, combination, io_mode, voltage_sta
self.specials += Instance("DLY_CONFIG",
# Parameters.
# -----------
p_IO_MODEL = combination,
p_DELAY = delay,
p_WEAK_KEEPER = io_mode,
p_IOSTANDARD = voltage_standard,
Expand Down Expand Up @@ -1970,6 +1978,7 @@ def O_DELAY(self, platform, sel_dly, io_model, combination, io_mode, voltage_sta
self.specials += Instance("DLY_CONFIG",
# Parameters.
# -----------
p_IO_MODEL = combination,
p_DELAY = delay,
p_WEAK_KEEPER = io_mode,
p_IOSTANDARD = voltage_standard,
Expand Down Expand Up @@ -2010,6 +2019,7 @@ def O_DELAY(self, platform, sel_dly, io_model, combination, io_mode, voltage_sta
self.specials += Instance("DLY_CONFIG",
# Parameters.
# -----------
p_IO_MODEL = combination,
p_DELAY = delay,
p_WEAK_KEEPER = io_mode,
p_IOSTANDARD = voltage_standard,
Expand Down Expand Up @@ -2062,6 +2072,7 @@ def O_DELAY(self, platform, sel_dly, io_model, combination, io_mode, voltage_sta
self.specials += Instance("DLY_CONFIG",
# Parameters.
# -----------
p_IO_MODEL = combination,
p_DELAY = delay,
p_WEAK_KEEPER = io_mode,
p_IOSTANDARD = voltage_standard,
Expand Down Expand Up @@ -2098,6 +2109,7 @@ def O_DELAY(self, platform, sel_dly, io_model, combination, io_mode, voltage_sta
self.specials += Instance("DLY_CONFIG",
# Parameters.
# -----------
p_IO_MODEL = combination,
p_DELAY = delay,
p_WEAK_KEEPER = io_mode,
p_IOSTANDARD = voltage_standard,
Expand Down Expand Up @@ -2163,6 +2175,7 @@ def Bidirectional_Delays(self, platform, sel_dly, combination, num_dly, io_type,
self.specials += Instance("DLY_CONFIG",
# Parameters.
# -----------
p_IO_MODEL = combination,
p_DELAY = delay,
p_DLY_LOC = Instance.PreformattedParam("40'b{}".format(dly_loc)),
p_NUM_DLY = num_dly,
Expand Down Expand Up @@ -2200,6 +2213,7 @@ def Bidirectional_Delays(self, platform, sel_dly, combination, num_dly, io_type,
self.specials += Instance("DLY_CONFIG",
# Parameters.
# -----------
p_IO_MODEL = combination,
p_DELAY = delay,
p_DLY_LOC = Instance.PreformattedParam("40'b{}".format(dly_loc)),
p_NUM_DLY = num_dly,
Expand Down Expand Up @@ -2249,6 +2263,7 @@ def Bidirectional_Delays(self, platform, sel_dly, combination, num_dly, io_type,
self.specials += Instance("DLY_CONFIG",
# Parameters.
# -----------
p_IO_MODEL = combination,
p_DELAY = delay,
p_DLY_LOC = Instance.PreformattedParam("40'b{}".format(dly_loc)),
p_NUM_DLY = num_dly,
Expand Down Expand Up @@ -2291,6 +2306,7 @@ def Bidirectional_Delays(self, platform, sel_dly, combination, num_dly, io_type,
self.specials += Instance("DLY_CONFIG",
# Parameters.
# -----------
p_IO_MODEL = combination,
p_DELAY = delay,
p_DLY_LOC = Instance.PreformattedParam("40'b{}".format(dly_loc)),
p_NUM_DLY = num_dly,
Expand Down Expand Up @@ -2344,6 +2360,7 @@ def Bidirectional_Delays(self, platform, sel_dly, combination, num_dly, io_type,
self.specials += Instance("DLY_CONFIG",
# Parameters.
# -----------
p_IO_MODEL = combination,
p_DELAY = delay,
p_DLY_LOC = Instance.PreformattedParam("40'b{}".format(dly_loc)),
p_NUM_DLY = num_dly,
Expand Down Expand Up @@ -2382,6 +2399,7 @@ def Bidirectional_Delays(self, platform, sel_dly, combination, num_dly, io_type,
self.specials += Instance("DLY_CONFIG",
# Parameters.
# -----------
p_IO_MODEL = combination,
p_DELAY = delay,
p_DLY_LOC = Instance.PreformattedParam("40'b{}".format(dly_loc)),
p_NUM_DLY = num_dly,
Expand Down Expand Up @@ -2432,6 +2450,7 @@ def Bidirectional_Delays(self, platform, sel_dly, combination, num_dly, io_type,
self.specials += Instance("DLY_CONFIG",
# Parameters.
# -----------
p_IO_MODEL = combination,
p_DELAY = delay,
p_DLY_LOC = Instance.PreformattedParam("40'b{}".format(dly_loc)),
p_NUM_DLY = num_dly,
Expand Down Expand Up @@ -2475,6 +2494,7 @@ def Bidirectional_Delays(self, platform, sel_dly, combination, num_dly, io_type,
self.specials += Instance("DLY_CONFIG",
# Parameters.
# -----------
p_IO_MODEL = combination,
p_DELAY = delay,
p_DLY_LOC = Instance.PreformattedParam("40'b{}".format(dly_loc)),
p_NUM_DLY = num_dly,
Expand Down Expand Up @@ -2530,6 +2550,7 @@ def Bidirectional_Delays(self, platform, sel_dly, combination, num_dly, io_type,
self.specials += Instance("DLY_CONFIG",
# Parameters.
# -----------
p_IO_MODEL = combination,
p_DELAY = delay,
p_DLY_LOC = Instance.PreformattedParam("40'b{}".format(dly_loc)),
p_NUM_DLY = num_dly,
Expand Down Expand Up @@ -2578,6 +2599,7 @@ def Bidirectional_Delays(self, platform, sel_dly, combination, num_dly, io_type,
self.specials += Instance("DLY_CONFIG",
# Parameters.
# -----------
p_IO_MODEL = combination,
p_DELAY = delay,
p_DLY_LOC = Instance.PreformattedParam("40'b{}".format(dly_loc)),
p_NUM_DLY = num_dly,
Expand Down Expand Up @@ -2639,6 +2661,7 @@ def Bidirectional_Delays(self, platform, sel_dly, combination, num_dly, io_type,
self.specials += Instance("DLY_CONFIG",
# Parameters.
# -----------
p_IO_MODEL = combination,
p_DELAY = delay,
p_DLY_LOC = Instance.PreformattedParam("40'b{}".format(dly_loc)),
p_NUM_DLY = num_dly,
Expand Down Expand Up @@ -2687,6 +2710,7 @@ def Bidirectional_Delays(self, platform, sel_dly, combination, num_dly, io_type,
self.specials += Instance("DLY_CONFIG",
# Parameters.
# -----------
p_IO_MODEL = combination,
p_DELAY = delay,
p_DLY_LOC = Instance.PreformattedParam("40'b{}".format(dly_loc)),
p_NUM_DLY = num_dly,
Expand Down Expand Up @@ -2746,6 +2770,7 @@ def Bidirectional_Delays(self, platform, sel_dly, combination, num_dly, io_type,
self.specials += Instance("DLY_CONFIG",
# Parameters.
# -----------
p_IO_MODEL = combination,
p_DELAY = delay,
p_DLY_LOC = Instance.PreformattedParam("40'b{}".format(dly_loc)),
p_NUM_DLY = num_dly,
Expand Down Expand Up @@ -2784,6 +2809,7 @@ def Bidirectional_Delays(self, platform, sel_dly, combination, num_dly, io_type,
self.specials += Instance("DLY_CONFIG",
# Parameters.
# -----------
p_IO_MODEL = combination,
p_DELAY = delay,
p_DLY_LOC = Instance.PreformattedParam("40'b{}".format(dly_loc)),
p_NUM_DLY = num_dly,
Expand Down Expand Up @@ -2834,6 +2860,7 @@ def Bidirectional_Delays(self, platform, sel_dly, combination, num_dly, io_type,
self.specials += Instance("DLY_CONFIG",
# Parameters.
# -----------
p_IO_MODEL = combination,
p_DELAY = delay,
p_DLY_LOC = Instance.PreformattedParam("40'b{}".format(dly_loc)),
p_NUM_DLY = num_dly,
Expand Down Expand Up @@ -2878,6 +2905,7 @@ def Bidirectional_Delays(self, platform, sel_dly, combination, num_dly, io_type,
self.specials += Instance("DLY_CONFIG",
# Parameters.
# -----------
p_IO_MODEL = combination,
p_DELAY = delay,
p_DLY_LOC = Instance.PreformattedParam("40'b{}".format(dly_loc)),
p_NUM_DLY = num_dly,
Expand Down Expand Up @@ -2933,6 +2961,7 @@ def Bidirectional_Delays(self, platform, sel_dly, combination, num_dly, io_type,
self.specials += Instance("DLY_CONFIG",
# Parameters.
# -----------
p_IO_MODEL = combination,
p_DELAY = delay,
p_DLY_LOC = Instance.PreformattedParam("40'b{}".format(dly_loc)),
p_NUM_DLY = num_dly,
Expand Down Expand Up @@ -2973,6 +3002,7 @@ def Bidirectional_Delays(self, platform, sel_dly, combination, num_dly, io_type,
self.specials += Instance("DLY_CONFIG",
# Parameters.
# -----------
p_IO_MODEL = combination,
p_DELAY = delay,
p_DLY_LOC = Instance.PreformattedParam("40'b{}".format(dly_loc)),
p_NUM_DLY = num_dly,
Expand Down Expand Up @@ -3215,7 +3245,9 @@ def main():
"I_DELAY_I_SERDES+O_DELAY", "I_DELAY_I_SERDES+O_SERDES_O_DELAY", "I_DELAY_I_SERDES+O_DDR_O_DELAY",
"I_DELAY_I_DDR+O_DELAY", "I_DELAY_I_DDR+O_SERDES_O_DELAY", "I_DELAY_I_DDR+O_DDR_O_DELAY"]

if (args.combination not in ["O_DELAY", "O_DELAY_O_SERDES", "O_DELAY_O_DDR"]):
if (args.combination not in ["O_DELAY", "O_DELAY_O_SERDES", "O_DELAY_O_DDR", "I_DELAY+O_DELAY", "I_DELAY+O_SERDES_O_DELAY", "I_DELAY+O_DDR_O_DELAY",
"I_DELAY_I_SERDES+O_DELAY", "I_DELAY_I_SERDES+O_SERDES_O_DELAY", "I_DELAY_I_SERDES+O_DDR_O_DELAY",
"I_DELAY_I_DDR+O_DELAY", "I_DELAY_I_DDR+O_SERDES_O_DELAY", "I_DELAY_I_DDR+O_DDR_O_DELAY"]):
option_strings_to_remove = ["--drive_strength", "--slew_rate"]
parser._actions = [action for action in parser._actions if action.option_strings and action.option_strings[0] not in option_strings_to_remove]

Expand Down
1 change: 1 addition & 0 deletions rapidsilicon/ip/io_configurator/v1_0/src/DLY_CONFIG.v
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
`include "header.vh"

module DLY_CONFIG #(
parameter IO_MODEL = "I_DELAY",
// IO_BUF
parameter WEAK_KEEPER = "NONE",
parameter IOSTANDARD = "DEFAULT",
Expand Down

0 comments on commit c39d48d

Please sign in to comment.