Electronics > Repair
Weller WMD-3 M27C256B dump needed
<< < (3/6) > >>
fzabkar:

--- Quote from: wraper on December 29, 2020, 04:45:07 pm ---
--- Quote from: fzabkar on December 29, 2020, 04:35:44 pm ---AISI, bits which should normally be high are read as low. The opposite doesn't occur. This would be consistent with a weak data bus, if the addresses were randomly distributed.

--- End quote ---
I haven't ever heard about this magical weak data bus, and why it "should read low and opposite does not occur". While retention (floating-gates losing charge) is a very real thing and bits flip to erased (high) state.

--- End quote ---
Nothing magical about it. I have seen MANY cases where a TTL level doesn't switch nicely between 0V and 5V. In fact I have used comparators to buffer these low levels in IBM PS/2 Model 25s.

Here is a quirky thread:

https://www.eevblog.com/forum/repair/kontron-8201-not-booting/msg3374750/#msg3374750

The OP is observing weak TTL levels on the data bus.

"The 5V Rail of the PROM is clean. But as you can see, the Voltage levels are at about 3V and sometimes even lower.. Is this a known failure mode of an aged PROM?"


fzabkar:

--- Code: ---Comparing files M27C256B-v1.BIN and ROM.BIN
0000000B: 00 02
0000000C: 01 03
0000000D: 1A 5A
0000006E: EE FE
00000B11: 40 44
0000121A: 03 83
00004048: 23 63
00004531: 20 A0
0000590B: 32 3A
00005950: E8 F8
0000597C: 13 1B
00007F30: F7 FF
--- End code ---


--- Code: ---Comparing files M27C256B-v2.BIN and ROM.BIN
00000008: 03 23
00000009: 5A 7A
0000000B: 00 02
0000000C: 01 03
0000000D: 1A 5A
0000004E: 63 E3
00000052: 73 F3
00000053: F2 F6
0000006E: EE FE
00000B11: 40 44
00000B33: BC FC
0000121A: 03 83
00004042: 62 E2
0000590B: 32 3A
00005934: 06 0E
00005935: 90 98
00005936: 13 1B
0000593E: 90 98
00005950: F0 F8
00007829: E7 F7
00007F30: F7 FF
--- End code ---


--- Code: ---Comparing files M27C256B-v3.BIN and ROM.BIN
00000002: 00 40
00000008: 03 23
00000009: 5A 7A
00000012: F2 F6
00000030: C2 E2
0000004E: 63 E3
0000005B: D0 F0
00000064: EE FE
0000006D: 66 E6
00000B11: 40 44
0000121A: 03 83
00004042: 62 E2
00004048: 23 63
00004069: 77 F7
0000590B: 32 3A
0000593F: 13 1B
00005950: F0 F8
00005963: 04 0C
00007829: E7 F7
--- End code ---


--- Code: ---Comparing files M27C256B-v4.BIN and ROM.BIN
00000008: 03 23
00000009: 5A 7A
00000030: C2 E2
0000004A: 02 42
0000004E: 63 E3
00000052: 73 F3
00000053: F2 F6
0000005B: 50 F0
00000060: C2 E2
0000006E: EE FE
00000B11: 40 44
00000B33: BC FC
00004007: F0 F2
00004042: 62 E2
00005934: 06 0E
00005935: 90 98
00005936: 13 1B
00005950: F0 F8
00005963: 04 0C
--- End code ---


--- Code: ---Comparing files M27C256B-v5.BIN and ROM.BIN
00000002: 00 40
00000008: 03 23
00000009: 5A 7A
0000000B: 00 02
0000000C: 01 03
0000000D: 1A 5A
0000001B: 62 E2
0000004E: 63 E3
0000005B: 50 F0
00000060: C2 E2
0000006D: 66 E6
0000006E: EE FE
00004004: A0 A2
00004007: F0 F2
00004042: 62 E2
0000590B: 32 3A
00005934: 06 0E
00005950: F0 F8
00005963: 04 0C
0000597C: 13 1B
--- End code ---


--- Code: ---Comparing files M27C256B-v6.BIN and ROM.BIN
00000002: 00 40
00000006: 00 40
00000008: 03 23
00000009: 5A 7A
0000000C: 01 03
0000000D: 1A 5A
00000012: F2 F6
0000001B: 62 E2
00000030: C2 E2
0000004E: 43 E3
00000051: 64 66
0000005B: 70 F0
0000006D: 66 E6
0000006E: EE FE
0000121A: 03 83
00004042: 62 E2
00004069: 77 F7
00005934: 06 0E
00005959: 90 98
00005963: 04 0C
00007829: E7 F7
--- End code ---

Here is an 0xE7 which flips to 0xF7 in some dumps (M27C256B-v6.BIN). It looks like it wants to be 0xFF.


--- Code: ---Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F

00007800  01 FF 01 FF 01 FF 01 FF 01 FF 01 FF 0B FF 0B FF
00007810  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
00007820  FF FF FF FF FF FF FF FF FF E7 FF FF FF FF FF FF  <--
00007830  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
00007840  49 FF 01 FF FF FF FF FF FF FF 49 FF FF FF FF FF
--- End code ---

This block looks like it needs fixing (ROM.BIN):


--- Code: ---Offset(h) 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F

00007E00  01 FF 01 FF 03 FF 03 FF 09 FF 01 FF 0B FF 0B FF
00007E10  FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
00007E20  E7 E7 F7 FF FF FF FF FF EF E7 EF EF FF FF FF FF
00007E30  F7 F7 F7 F7 FF FF FF FF FF E7 FF E7 FF FF FF E7
00007E40  01 FF 01 4B FF FF FF FF FF FF 01 01 FF FF FF FF
--- End code ---
Hooligan:
Tried to play with Vcc, but no success, everytime get a different data. Made bitwise OR on dumps with same Vcc, the result is attached.
fzabkar:
I don't understand the failure mode, especially in that other thread. I would have thought that @wraper was right, and I had already confirmed that the erased state of the EPROM was 0xFF.

Anyway, I have rewritten my tool to perform a bitwise AND. This expects that bad bits are hot.

http://www.users.on.net/~fzabkar/FreeBasic_W32/Utils/bitwand.exe
http://www.users.on.net/~fzabkar/FreeBasic_W32/Utils/bitwand.bas
wraper:
I would use as many dumps as possible (like 100+), preferably made in different conditions and run them through AND/OR tools and see if processed dump works afterwards. And continue processing additional dumps with the tool until resulting dump stops changing.
Navigation
Message Index
Next page
Previous page
There was an error while thanking
Thanking...

Go to full version
Powered by SMFPacks Advanced Attachments Uploader Mod