mirror of
https://github.com/ehw-fit/ariths-gen.git
synced 2025-04-10 09:12:11 +01:00
connection checks (asserts)
This commit is contained in:
parent
44e0a920d1
commit
a4741db191
@ -311,16 +311,19 @@ class TwoOneMultiplexer(ThreeInputOneBitCircuit):
|
|||||||
if not self.use_verilog_instance:
|
if not self.use_verilog_instance:
|
||||||
return super().get_init_v_flat()
|
return super().get_init_v_flat()
|
||||||
|
|
||||||
# TODO - replace by one verilog_instance_format!
|
if self.out[0].is_const():
|
||||||
neg_out_w_name = f"neg_{self.out.get_wire(0).name}"
|
return ""
|
||||||
return f" wire {neg_out_w_name};\n " + self.use_verilog_instance.format(
|
else:
|
||||||
**{
|
# TODO - replace by one verilog_instance_format!
|
||||||
"unit": self.prefix,
|
neg_out_w_name = f"neg_{self.out.get_wire(0).name}"
|
||||||
"wirea": f"1'b{self.a.value}" if self.a.is_const() else self.a.name,
|
return f" wire {neg_out_w_name};\n " + self.use_verilog_instance.format(
|
||||||
"wireb": f"1'b{self.b.value}" if self.b.is_const() else self.b.name,
|
**{
|
||||||
"wires": f"1'b{self.c.value}" if self.c.is_const() else self.c.name,
|
"unit": self.prefix,
|
||||||
"wirey": neg_out_w_name,
|
"wirea": self.a.get_wire_value_v_hier(), # former version: f"1'b{self.a.value}" if self.a.is_const() else self.a.name,
|
||||||
}) + ";\n" + f" assign {self.out.get_wire(0).name} = ~{neg_out_w_name};\n"
|
"wireb": self.b.get_wire_value_v_hier(), #f"1'b{self.b.value}" if self.b.is_const() else self.b.name,
|
||||||
|
"wires": self.c.get_wire_value_v_hier(), #f"1'b{self.c.value}" if self.c.is_const() else self.c.name,
|
||||||
|
"wirey": neg_out_w_name,
|
||||||
|
}) + ";\n" + f" assign {self.out.get_wire(0).name} = ~{neg_out_w_name};\n"
|
||||||
|
|
||||||
def get_self_init_v_hier(self):
|
def get_self_init_v_hier(self):
|
||||||
""" support of custom PDK """
|
""" support of custom PDK """
|
||||||
|
@ -75,11 +75,9 @@ class Bus():
|
|||||||
Returns:
|
Returns:
|
||||||
Wire: Returning wire from the bus.
|
Wire: Returning wire from the bus.
|
||||||
"""
|
"""
|
||||||
|
assert wire_index < self.N, f"Wire index {wire_index} is out of bounds of the bus {self.prefix} with size {self.N}"
|
||||||
return self.bus[wire_index]
|
return self.bus[wire_index]
|
||||||
|
|
||||||
def __getitem__(self, i):
|
|
||||||
return self.bus[i]
|
|
||||||
|
|
||||||
def __getitem__(self, i):
|
def __getitem__(self, i):
|
||||||
return self.get_wire(i)
|
return self.get_wire(i)
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user