VOGONS


First post, by feipoa

User metadata
Rank l33t++
Rank
l33t++

Does anyone have detailed information on the UMC UM8881F Northbridge chip sub-revisions?

It appears that not all UM8881F chips support the same features. The identifier following the datecode appears to be a sub-revision. About 12 years ago I hard ordered some spare UM8881F chips and specified a datecode of 1997+. Unfortunately, what arrived in the mail were chips with a datecode of 1995. Last week, I replaced the the UM8881F 9651-EYA chip on my PC Chips M919 with a UM8881F 9527-BTS chip. The options in the BIOS to select between EDO and FPM disappeared, as did the option to enable the Cyrix Cx5x86 Linear Burst mode. Attempting to use EDO memory with the -BTS chip doesn't work (screen goes blank after POST). Attempting to use Linear Burst mode results in a full system hang-up.

Curiously, and if my memory is correct, my Shuttle HOT-433 (early versions 1-3) contained the UM8881F Northbridge with datecode 9527-BCT and it had no problem with EDO memory, so I am confused why the M919 doesn't like EDO now that I've changed northbridge. I remember reading in the unofficial PC Chips M919 manual that an -E** was needed following the datecode for EDO to work, but this doesn't appear true for the HOT-433.

Perhaps someone has some detailed information on these UM8881F sub-versions?

Ultimate 486 Benchmark | Ultimate 686 Benchmark | Cyrix 5x86 Enhancements | 486 Overkill Graphics | Worlds Fastest 486

Reply 1 of 15, by pshipkov

User metadata
Rank Oldbie
Rank
Oldbie

While i don't have detailed information about that can use EDO RAM:
Chicony TK8880F (BCT) Note: sees 64Mb EDO memory modules as 16Mb. Hmm ...
Biostar MB-8433UUD-A revision 2 (EYS)
Biostar MB-8433UUD-A revision 3.1 (EYA)
Shuttle HOT-433 version 4 (EYA)
PC-Chips M919 V3.4B/F (EYT)

2 that cannot:
Gigabyte GA486AM/S revision 2.20 (BTA)
Octek Hippo 12 VIP revision 1.01 (BCA)

So you are probably right.

* None of the other motherboards with earlier UMC chipsets (that i tried myself so far) can use EDO RAM.

retro bits and bytes

Reply 3 of 15, by mkarcher

User metadata
Rank Oldbie
Rank
Oldbie
jakethompson1 wrote on 2022-05-31, 03:10:

It might be possible to look at the BIOS and figure out how it's determining whether to show or hide those options.

I already did so: It looks at the chip revision number stored in the PCI header and patches itself like MODBIN would do to enable or disable these options. I don't have any mapping between revision labels printed on the chip and electronic revision code labels, but I'm going to look up the threshold for "EDO" tonight in the BIOS code.

Reply 4 of 15, by bakemono

User metadata
Rank Oldbie
Rank
Oldbie

Might be interesting to check different BIOS versions too. I have a HOT-433 and my UMC8881 date/revision is 9548ETS. I tried three different BIOSs on it. IIRC, the board was always able to run with EDO installed, but only one BIOS had an option for enhanced timing for the EDO RAM, and enabling it caused memory performance to vastly improve.

yet another retro game on itch: https://90soft90.itch.io/super-wild-war-22

Reply 5 of 15, by mkarcher

User metadata
Rank Oldbie
Rank
Oldbie
bakemono wrote on 2022-05-31, 13:55:

Might be interesting to check different BIOS versions too. I have a HOT-433 and my UMC8881 date/revision is 9548ETS. I tried three different BIOSs on it. IIRC, the board was always able to run with EDO installed, but only one BIOS had an option for enhanced timing for the EDO RAM, and enabling it caused memory performance to vastly improve.

That's interesting. To be EDO compatible, the DRAM controller has to issue a dummy cycle (looks like the start of a write cycle) when it is done reading a burst from a page. This cycle is unneeded on FPM RAM, so you typically want to omit it to slightly improve memory performance. If a board works with EDO installed, it is a sign for the dummy cycle being issued, which is not the optimal configuration for FPM. At the same time, the slower read timing is not the optimal configuration for EDO. Sounds like the new north bridge defaults to a pattern that's compatible to both, but suboptimal on both types of RAM.

Furthermore, the initial RAM configuration is performed by the boot block, which might be at a completely different revision than the main BIOS. The coupling of boot block and main BIOS is very loose, so updating to a new boot block designed for some chipset is a quite easy and low-risk task, whereas updating the chipset support code in the main BIOS might be tedious, if the old chipset support code was already customized by the board vendor. So possibly all your boards used EDO-compatible boot blocks, while only one has an EDO-aware main BIOS.

Reply 6 of 15, by feipoa

User metadata
Rank l33t++
Rank
l33t++

Thank you. This certainly helps explain why nearly all 486 motherboards show no improvement with EDO memory installed.

Ultimate 486 Benchmark | Ultimate 686 Benchmark | Cyrix 5x86 Enhancements | 486 Overkill Graphics | Worlds Fastest 486

Reply 7 of 15, by jakethompson1

User metadata
Rank Oldbie
Rank
Oldbie
feipoa wrote on 2022-06-02, 03:11:

Thank you. This certainly helps explain why nearly all 486 motherboards show no improvement with EDO memory installed.

I wonder if EDO support on late 486 chipsets was not so much about a performance improvement as needing to be compatible as the price of 16MB EDO SIMMs (in mass production at the time to build 32MB Pentium systems) may have dropped below FPM ones.
So it would make sense that some chipsets merely "tolerate" EDO RAM rather than taking advantage of the modified access timings.
Thoughts?

Reply 8 of 15, by mkarcher

User metadata
Rank Oldbie
Rank
Oldbie
mkarcher wrote on 2022-05-31, 13:00:

I already did so: It looks at the chip revision number stored in the PCI header and patches itself like MODBIN would do to enable or disable these options. I don't have any mapping between revision labels printed on the chip and electronic revision code labels, but I'm going to look up the threshold for "EDO" tonight in the BIOS code.

EDO option is only available if the UM8881F reports revision code 4.

Reply 9 of 15, by feipoa

User metadata
Rank l33t++
Rank
l33t++

I guess we just need a means to translate the chip's surface markings to the revision code. Is there a simple DOS tool that the majority of users of the forum can run to determine the revision?

Ultimate 486 Benchmark | Ultimate 686 Benchmark | Cyrix 5x86 Enhancements | 486 Overkill Graphics | Worlds Fastest 486

Reply 10 of 15, by jakethompson1

User metadata
Rank Oldbie
Rank
Oldbie
feipoa wrote on 2022-06-04, 23:14:

I guess we just need a means to translate the chip's surface markings to the revision code. Is there a simple DOS tool that the majority of users of the forum can run to determine the revision?

Anything that can list PCI devices including revision numbers, analogous to lspci -vmm on Linux, could do it. Perhaps SIV or HWINFO though I haven't tried. If all else fails, it would be a straightforward DOS program.

Reply 11 of 15, by feipoa

User metadata
Rank l33t++
Rank
l33t++

It looks like pretty much every hardware checking utility for DOS will list the chipset revisions. I'm attaching a freeware program which, after testing about a dozen, will list the revision with a single command and is quick to run without any sub-menu to navigate. Run the lspci.exe command from within the attached archives's DOS folder. You'll see something like:

00:10.0 Host bridge: United Microelectronics (UMC) UM8881F (rev 04)

To correlate the markings on the UM8881F chip, we will probably need to tabulate results. The particular rev 04 chipset I tested had these markings:

UM8881F
9639-EYA
M82832

When I get more time, I'll setup a testbed to tabulate more data from all my boards based on the UM8881 chipset. In the meantime, I've attached a simple DOS utility if anyone else wants to help.

Do we know which chipset revision supports Cyrix linear bust mode?

Attachments

Ultimate 486 Benchmark | Ultimate 686 Benchmark | Cyrix 5x86 Enhancements | 486 Overkill Graphics | Worlds Fastest 486

Reply 12 of 15, by feipoa

User metadata
Rank l33t++
Rank
l33t++

I ran some tests with various motherboards. The results are as follows.

Biostar MB-8433UUD v3
UM8881F
9639-EYA
M82832
Rev 04

Biostar MB-8433UUD v2
UM8881F
9623-EYT
R51537
Rev 04

Biostar MB-8433UUD
UM8881F
9540-ETA
133760
Rev 04

Biostar MB-8433UUD v2
UM8881F
9535-ETO
134730
Rev 04

Gigabyte GA486AM/S v2.21
UM8881F
9523-BCS
N42845
Rev 01

PC Chips M919 v3.4
UM8881F
9651-EYA
MB1948
Rev 04

PC Chips M919 v3.4
UM8881F (replacement)
9527-BTS
130760
Rev 01

Shuttle HOT-433 v4
UM8881F
9651-EYA
MB1327
Rev 04

Shuttle HOT-433 v1
UM8881F
9521-BTS
124040
Rev 01

Shuttle HOT-433 v1
UM8881F
9511-BCA
R11748
Rev 01

Looks like I have one other motherboard with the BTS revision (Rev 01). It is on a HOT-433 v1. I noticed that if I am using the latest AMI WINBIOS, the board functions correctly with EDO memory, even though it is not of Rev 04. However, if I use the HOT-433's AWARD BIOS, EDO memory does not function properly. Curiously, the M919 with the same BTS chipset does not function correctly with EDO and its WINBIOS. What does the BIOS on the Shuttle HOT-433 do to enable compatibility with EDO memory even though the chipset revision (Rev 01) does not support EDO?

What else I noticed from the data is that the datecode jump from Rev 01 to Rev 04 is a relatively short period of time (8 weeks), that is, 9527-BTS to 9535-ETO. I don't have enough data points, but I it is possible that there aren't any Rev 02 or Rev 03's. Maybe others here can fill in the gaps.

Last edited by feipoa on 2022-06-08, 02:40. Edited 1 time in total.

Ultimate 486 Benchmark | Ultimate 686 Benchmark | Cyrix 5x86 Enhancements | 486 Overkill Graphics | Worlds Fastest 486

Reply 13 of 15, by mkarcher

User metadata
Rank Oldbie
Rank
Oldbie
feipoa wrote on 2022-06-05, 08:21:

Do we know which chipset revision supports Cyrix linear bust mode?

On Award BIOSes, both the EDO stuff and the Cyrix linear burst mode stuff seem to be gated by "rev == 04" (Yeah, they compare for equal, not "greater or equal").

I guess that UMC might have intended to map rev 00 = A, rev 01 = B, rev 02 = C, rev 03 = D, rev 04 = E, and then decided to name the EDO-optimized revision "E" even though the next available letter would have been "C", and that's why we only see rev 01 and rev 04.

Reply 14 of 15, by jakethompson1

User metadata
Rank Oldbie
Rank
Oldbie
mkarcher wrote on 2022-06-06, 15:50:
feipoa wrote on 2022-06-05, 08:21:

Do we know which chipset revision supports Cyrix linear bust mode?

On Award BIOSes, both the EDO stuff and the Cyrix linear burst mode stuff seem to be gated by "rev == 04" (Yeah, they compare for equal, not "greater or equal").

I guess that UMC might have intended to map rev 00 = A, rev 01 = B, rev 02 = C, rev 03 = D, rev 04 = E, and then decided to name the EDO-optimized revision "E" even though the next available letter would have been "C", and that's why we only see rev 01 and rev 04.

Nice. I haven't dug into these compressed BIOSes much. So do these per-chipset-revision settings have a pointer in the settings table to a callback function that determines whether to show them? Or as you were alluding earlier, does something custom coded in the boot block patch the BIOS on the fly during the decompression/shadowing process?

It sure seems like the BIOSes are the closest thing to a datasheet that's ever going to come for these UMC chipsets.

Reply 15 of 15, by mkarcher

User metadata
Rank Oldbie
Rank
Oldbie
jakethompson1 wrote on 2022-06-08, 02:26:

Nice. I haven't dug into these compressed BIOSes much. So do these per-chipset-revision settings have a pointer in the settings table to a callback function that determines whether to show them? Or as you were alluding earlier, does something custom coded in the boot block patch the BIOS on the fly during the decompression/shadowing process?

Shadow write protection can be temporarily or permanently disabled at any team, not only during the initial shadowing process. The boot block usually doen't even know enough about the runtime BIOS to be able to patch it. Remember that the core idea of boot blocks is that you can update the runtime BIOS while keeping the boot block, so a fallback mechanism in the boot block can help you recover from a bad flash.

Instead, the runtime BIOS during POST sometimes disables write protection for a short time to change shadow contents. I currently can't find wich BIOS hot-patched the EDO option, but I'm confident I've seen one. I have some BIOSes that have the EDO option permanently shown and some BIOSes that have the opton permanently hidden. Usage of the value from that option is gated by the northbridge revision. I do find BIOSes that detect the type of the onboard UMC Super-IO chip and adjust the available options in the CMOS setup, for example the GA-486AM BIOS dated 11/07/95.