Skip to content

Commit b012358

Browse files
author
Edward Nutting
committed
Bug fix split/merge: Utilise new merge bits function to compute actual output value of B/D bits.
Note that this still isn't completely accurate to real-life because split-merge is wires which should back-propagate, but (as noted in comments in the code) we can't quite simulate reality.
1 parent fb4bbc1 commit b012358

File tree

1 file changed

+2
-2
lines changed

1 file changed

+2
-2
lines changed

src/com/modsim/modules/SplitMerge.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -236,11 +236,11 @@ else if ( portB0.wasUpdated() || portB1.wasUpdated() ||
236236
a1_val.setBit(0, b2_val.getBit(0)); // c0-B0
237237

238238
// Resolution of 3-state logic for merges
239-
int val = b2_val.getBit(1) | b3_val.getBit(0);
239+
int val = BinData.mergeBits(b2_val.getBit(1), b3_val.getBit(0));
240240
a1_val.setBit(1, val);
241241
a0_val.setBit(3, val);
242242

243-
val = b0_val.getBit(1) | b1_val.getBit(0);
243+
val = BinData.mergeBits(b0_val.getBit(1), b1_val.getBit(0));
244244
a0_val.setBit(1, val);
245245
}
246246

0 commit comments

Comments
 (0)