[LMH] e1 tag diag
Brad Parker
brad@heeltoe.com
Fri, 21 Oct 2005 07:14:16 -0400
Hi -
Both meroko and nevermore pass the E1 tag diag (#7) but both report a
bad condition code for condition 17. I thought it was an ALU bug
in meroko but I noticed nevermore does that same thing.
I looked at the microcode and I am wondering if it's a bug int he microcode
which no one noticed.
Below is a little history trace when the problem occurs. The code at
10131 and 10132 make sense. It sets the tag memory address in the
read at 10132.
The code at 10134 & 10135 does not make sense. It does the imod-low setting
with (L=5 C=10) but then it does an alu instruction. This doesn't seem
right at all. The (L=5 C=10) field is for a jump.
I suspect that the diag passed on the real hardware and no one ever noticed
this bug.
[this is more for Daniel & Alastair and anyone else who's hacking on meroko
and nevermore]
-brad
CONDITION-17-USED
last imod hi 318 lo 3c00
[10135] (M-31) SETA <A-64,M-0> OBus-Normal IF 17
----
9: 002000000000000016040 [9579] JUMP 0 <A-0,M-0> IF ALWAYS
10: 002003545422554006040 [9587] JUMP 9580 <A-600,M-29> IF NOT-EQ
11: 100043500140072616310 [9580] (M-29) ADD <A-3,M-29> OBus-Normal IF ALWAYS
12: 000000056640002616050 [9581] (M-1) SETA <A-749,M-0> OBus-Normal IF ALWAYS
13: 102040000022566016000 [9582] Jump-XCT-Next 9590 <A-0,M-0> IF ALWAYS
14: 100040104146000616310 [9583] (M-0 MF-MD) ADD <A-67,M-1> OBus-Normal IF ALWAYS
15: 000000045600002616050 [9590] (M-1) SETA <A-604,M-0> OBus-Normal IF ALWAYS
0: 001000100101401416722 [9591] (M-0 MF-IMod-Low) Deposit-Byte (L=14 C=18) <A-2,M-1> IF ALWAYS
1: 002000000000000016040 [9592] JUMP 0 <A-0,M-0> IF ALWAYS
2: 001003500100012416274 [10129] (M-5) Load-Byte (L=5 C=28) <A-2,M-29> IF ALWAYS
3: 101040500100013416271 [10130] (M-5) Deposit-Byte (L=5 C=25) <A-2,M-5> IF ALWAYS
4: 001003500101401416252 [10131] (M-0 MF-IMod-Low) Deposit-Byte (L=5 C=10) <A-2,M-29> IF ALWAYS
5: 102040500022571040000 [10132] Jump-XCT-Next 9593 <A-0,M-5> TM-Rd-0 (Bit 0 )
6: 000000004000076616050 [10133] (M-31) SETA <A-64,M-0> OBus-Normal IF ALWAYS
7: 001003500101401416252 [10134] (M-0 MF-IMod-Low) Deposit-Byte (L=5 C=10) <A-2,M-29> IF ALWAYS
8: 000000004000076616050 [10135] (M-31) SETA <A-64,M-0> OBus-Normal IF ALWAYS
37777777777
36000
36xxx
000000004000076616050 [10135] (M-31) SETA <A-64,M-0> OBus-Normal IF ALWAYS