- ReadWriteEnd read = (ReadWriteEnd) initiator;
- target.setValues(fromTarget, read.wireValuesExcludingMe().subVector(fromSource, fromSource + length));
+ ReadWriteEnd source = (ReadWriteEnd) initiator;
+ BitVector targetInput = (source.getWire().inputs.size() > 1)
+ ? source.wireValuesExcludingMe().subVector(fromSource, fromSource + length)
+ : BitVector.of(Bit.Z, length);
+ target.setValues(fromTarget, targetInput);