- self.reference_output_values = {
- lane: Value.cast(reference(lane, tuple(
- inp.sig[lane.translate_to(layout).as_slice()]
- for inp, layout in zip(self.inputs, self.layouts))))
- for lane in self.layouts[0].lanes()
- }
- self.reference_outputs = {
- lane: Signal(value.shape(),
- name=f"reference_output_{lane.start}_{lane.size}")
- for lane, value in self.reference_output_values.items()
- }
+ self.reference_output_values = {}
+ for lane in self.layouts[0].lanes():
+ in_t = []
+ for inp, layout in zip(self.inputs, self.layouts):
+ in_t.append(inp.sig[lane.translate_to(layout).as_slice()])
+ v = Value.cast(reference(lane, tuple(in_t)))
+ self.reference_output_values[lane] = v
+ self.reference_outputs = {}