VOGONS


First post, by BurnedPinguin

User metadata
Rank Newbie
Rank
Newbie

I have an Am5x86 here in a motherboard I recently fixed (https://www.ultimateretro.net/en/motherboards/7273), and right when I did fix it, I saw the L1 on the CPU was running in WT mode. And after some jumper manipulation (thanks Tiido) I managed to get my 256K of L2 working, and thought that would fix the problem and now the L1 would be running in WB mode, but it doesn't. I've tinkered around with the BIOS in every category and I didn't find any settings that switch the CPU's L1 cache mode. Maybe I've missed something, or maybe I could use a software tool to switch to WB mode, which is why I am posting here to see if anyone can help. I've captured the CACHECHK and CHKCPU results in text files, and they are as follows:

CHKCPU (what actually told me that the CPU is in WT mode)

CPU Identification utility v1.25                 (c) 1997-2016 Jan Steunebrink
------------------------------------------------------------------------------
CPU Vendor and Model: AMD 5x86-133 P75 (X5)
Internal CPU speed : 133.1 MHz
Clock Multiplier : 4.0
Bus clock speed : 33.2 MHz
CPU-ID Vendor string: AuthenticAMD
CPU-ID Signature : 0004E4
|||||+- Stepping or sub-model no.
||||+- Model: Indicates CPU Model and 486 L1 cache mode
|||+- Family: 4=486, Am5x86, Cx5x86
||| 5=Pentium, Nx586, Cx6x86, K5/K6, C6, mP6
||| 6=PentiumPro/II/III, CxMII/III, Athlon, C3
||| F=Pentium4, Athlon64
||+- Type: 0=Standard, 1=Overdrive, 2=2nd Dual Pentium
|+- Ext. Model: Extends the Base Model to an 8-bit value
+- Ext. Family: Extends the Base Family value
Current CPU mode : Real
Internal (L1) cache : Enabled in Write-Through mode

CACHECHK

 CACHECHK v4 2/7/96  Copyright (c) 1995 by Ray Van Tassle. (-h for help)
CMOS reports: conv_mem= 640K, ext_mem= 15,360K, Total RAM= 16,000K
"AuthenticAMD" 486 Clocked at 132.9 MHz
Reading from memory.
MegaByte#: --------- Memory Access Block sizes (KB)-----
1 2 4 8 16 32 64 128 256 512 1024 2048 4096 <-- KB
0: 8 8 8 8 8 26 26 26 26 42 -- -- -- æs/KB
1: 8 8 8 8 8 26 26 26 26 42 42 42 42 æs/KB
2 3 4 5 6 7 8 9 10 11 12 13 14 15 <--- same as above.

Extra tests----
Wrt 40 40 40 40 40 40 40 40 40 40 40 40 40<-Write mem
This machine seems to have both L1 and L2 cache. [read]
L1 cache is 16KB -- 134.8 MB/s 7.8 ns/byte (514%) (315%) 3.9 clks
L2 cache is 256KB -- 42.7 MB/s 24.5 ns/byte (162%) (100%) 12.4 clks
Main memory speed -- 26.2 MB/s 40.0 ns/byte (100%) [read] 20.3 clks
Effective RAM access time (read ) is 160ns (a RAM bank is 4 bytes wide).
Effective RAM access time (write) is 152ns (a RAM bank is 4 bytes wide).
"AuthenticAMD" 486 Clocked at 132.9 MHz. Cache ENABLED.
Options: -t0

Reply 1 of 12, by GigAHerZ

User metadata
Rank Oldbie
Rank
Oldbie

I have a Sis 471 based motherboard and it has a specific jumper that sets the CPU cache into WT or WB. In docs, it's just one of the many jumpers based on the cpu type, but i found out that one particular jumper has a specific function of switching the CPU cache mode.

Maybe it's similar to your's? Play around with the jumpers that are part of setting the cpu type for the board.
As your board is a bit newer with PCI bus, maybe it's going to be BIOS setting. (Or maybe even both) If such setting doesn't exist in bios, try modbin and amisetup programs to see/reveal hidden settings.

"640K ought to be enough for anybody." - And i intend to get every last bit out of it even after loading every damn driver!

Reply 2 of 12, by zapbuzz

User metadata
Rank Oldbie
Rank
Oldbie

It could very well be in the bios but hidden and need to enable or unhide it with an official bios unlocking and edit tools to enable your desired feature.
What I am suggesting requires you to dump your bios into a file to edit the menu strings then flash it.
oem's can be silly there are many bios out there that suffer your concern.
but being a jumper board there are less chance.
I will recommend try an intel cpu if available what won't go for one might go for the other no 2 cpu are the same.

Reply 3 of 12, by BurnedPinguin

User metadata
Rank Newbie
Rank
Newbie
GigAHerZ wrote on 2022-07-11, 12:18:

I have a Sis 471 based motherboard and it has a specific jumper that sets the CPU cache into WT or WB. In docs, it's just one of the many jumpers based on the cpu type, but i found out that one particular jumper has a specific function of switching the CPU cache mode.

Maybe it's similar to your's? Play around with the jumpers that are part of setting the cpu type for the board.
As your board is a bit newer with PCI bus, maybe it's going to be BIOS setting. (Or maybe even both) If such setting doesn't exist in bios, try modbin and amisetup programs to see/reveal hidden settings.

The problem is that my board is very, very unknown as you will quickly realise if you search for V1-HJ3 on VOGONS. Only a few people have it, and that guy I mentioned, Tiido, did reverse engineer some of the jumpers, and found nothing for CPU L1 cache mode. And I am surely not as smart as him so I won't find anything either.

Reply 4 of 12, by BurnedPinguin

User metadata
Rank Newbie
Rank
Newbie
zapbuzz wrote on 2022-07-11, 12:21:
It could very well be in the bios but hidden and need to enable or unhide it with an official bios unlocking and edit tools to e […]
Show full quote

It could very well be in the bios but hidden and need to enable or unhide it with an official bios unlocking and edit tools to enable your desired feature.
What I am suggesting requires you to dump your bios into a file to edit the menu strings then flash it.
oem's can be silly there are many bios out there that suffer your concern.
but being a jumper board there are less chance.
I will recommend try an intel cpu if available what won't go for one might go for the other no 2 cpu are the same.

I have already done that, the problem is here that the BIOS on this board is an AMI 101094 BIOS which is compressed, and for which we have no (working) tools that know how to modify it.

Reply 6 of 12, by BurnedPinguin

User metadata
Rank Newbie
Rank
Newbie
majestyk wrote on 2022-07-11, 13:33:

Have you checked if this ALi chipset (I can´t read the printing) supports L1 WB-mode in the first place? Otherwise any jumpering is useless.

I would say it does.

Attachments

  • M1489-2_Page_001.png
    Filename
    M1489-2_Page_001.png
    File size
    169.01 KiB
    Views
    729 views
    File comment
    picture of first page with CPU L1 WB support highlighted
    File license
    Public domain
  • Filename
    M1489-2.pdf
    File size
    3.37 MiB
    Downloads
    38 downloads
    File comment
    M1489 datasheet
    File license
    Public domain

Reply 8 of 12, by majestyk

User metadata
Rank Oldbie
Rank
Oldbie

That looks quite promising. Time to do some measuring at Pin B13. I guess it needs to be pulled up or down at startup to enable WB.
I´m not quite sure if I have seen some BIOSes where you could select WB/WT...this would probably mean some registers come into play also.

Reply 9 of 12, by BurnedPinguin

User metadata
Rank Newbie
Rank
Newbie

I'd have to at the very least take the computer apart, and I'm not sure if I could measure with the motherboard in the case either, so I'd have to take the whole computer apart get the motherboard out and measure. Well, I would do that, but I just don't think it is worth the effort for something that I don't think will be a huge performance benefit anyway (WT vs WB L1). So I think I'll just contact someone who might have the motherboard loose, and see if they can measure it, mostly for the sake of documentation really (Ultimate Retro project), and less for only my own benefit.