• Updated 2023-07-12: Hello, Guest! Welcome back, and be sure to check out this follow-up post about our outage a week or so ago.

Testing 333MHz IBM 604ev 288in PGA module with G3 carrier for a PCI Mac

stynx

Well-known member
I have bought an IBM 604ev CPU from eBay. There was a pin missing, that I fixed. The PGA module had no populated VID resistors and did not work in the carrier initially. I modified the G3 carrier to be able to select the VCore voltage manually.
The 604ev did finally boot into Mac OS at 4x50MHz with 1.9V VCore.
Interestingly, the FPU seems to be a bit more powerful than the 604e FPU. Any attempt to get the 604ev to run at more than 200MHz failed at one point or another. I tried to push the VCore in steps to 2.5V but it did not get more stable. I did get some benchmark results but the CPU was never completely stable.

I have a 375MHz 604ev on the way and I hope I can get that chip working more reliably.

In the end, I want to replace the two 604e from a dual-cpu card with 604ev chips and clock them higher. Apart from the VCore, the 604ev is seemingly completely backwards compatible. Just imagine a dual 400MHz card for the 9600MP :)
 

Powerbase

Well-known member
I know there's an article somewhere where someone ran one in their beige G3, but it suffered from the lack of L2.

I had one that I fitted to my Powerlogix carrier in my Powerbase. I never ran it though. Didn't want to take the chance on the one upgrade that works in my Powerbase.
 

stynx

Well-known member
At the moment i am just experimenting if there is a chance to use the 604ev in a G3-carrier and therefore in a PCI Power Macintosh. The MacOS 8.6 actually identifies the CPU and clock speed correctly. I don't jet know why the 604ev is so buggy at speeds higher than 200MHz.

The very flakey nature of my 33MHz 604ev may actually stem from the damage i saw initially (and fixed). The connection of the resoldered pin is most likely not that good and other pins might be a bit damaged as well. I really hope that the 375MHz CPU that i have on the way is better.

The IBM 333MHz variant of the 604ev seems to have no VID configuration (all versions on eBay lack the resistors). The 375MHz model does have the resistors and should work without modifications. If i interpret the setting on the 375-CPU correctly, it runs at 2V. No L2 cache is very noticeable at high clock speeds. I got a CPU score of 65 in Macbench 3 at 255MHz/57MHz with 1Mb of L2 cache (57MHz). Without L2 cache, the score drops to 44-46 in MB3. Strangely, the dual 200MHz card is not very performant and reaches only 44 point in the CPU-benchmark of MB3, even with the 1MB cache.

I have also looked into the LT1580CT linear voltage regulator on the dual 200 card. It seems that it is possible to change some resistors (or add some at the right places) to get 2V VOUT for the CPU VCORE. The two regulators should offer about 26W of available power for the CPUs. The 604ev has a power draw of about 12W max at 300MHz. That would not leave a lot of headspace for much more speed. I suspect that 350MHz would be the max for the dual-card. The additional heat-spreader on the 604ev from IBM would be a problem as well. I have no idea, if that heat spreader can be removed. I could always try to salvage a 604ev from one of my Mach5 cards. I only have 250MHz cards, though.

-Jonas
 

stynx

Well-known member
Here are some benchmark and tests. The cache is a 1MB cache from an ANS700. It has been tested with up to 60MHz bus clock.
The system does not start at 5,5 x 50 (275MHz). It will boot with 5 x 50, 5 x 52 and 5 x 56.5 only 5 x 50 is barely stable but does not complete the whole benchmark suite from MacBench 3.

I have successfully removed the heat spreader. I had it installed in the socket and used two screwdrivers on both sides of the heats-reader. I used two metal pieces i put on the G3 carrier as a counterpoint for the screwdrivers and slowly pried the heat spreader off. It was glued down with some kind of elastic adhesive but came off very cleanly. The glue left a thin layer of residue on the chip. Cleaning the CPU was a bit of a hassle since the glue did not react to any solvent i tried. I had to carefully rub it off mechanically. Be aware that the chip is very fragile without the heat spreader.

604ev_250.jpg604ev_260.jpg604ev_280.jpg
 
Last edited:

stynx

Well-known member
and now I'm imagining quadruple 604ev chips each at 250 MHz
A quad 604ev/300 system should be possible but the thermal load might be too much. My 604ev at 250Mhz has a G3 Heatsink and gets very toasty without a strong fan. I have also looked into the ppc740L that has a 60X compatible BGA255 footprint. It is not really fully SMP capable, apparently missing some features. It should be dual CPU capable but it may need additional circuitry for that. The 740L and the 604ev have the same 1.9-2V core voltage. On paper, the 740/750 is a much less capable chip than the 604 but seems to have a very effective additional branch prediction unit, that compensates for the lack of execution units (604:4 vs 750:2). The branch prediction is something that was (rightfully?) hyped by Apple engineers when the 750 was unveiled. Steve said at the keynote:
.. and a powerful branch prediction unit… whatever that is… apparently to predict branches, I don’t know…
 

stynx

Well-known member
Hence why I said a quad 604ev/250 and not 300.
A speed up from 200 to 250 seems a bit small. I don’t know if that would be impressive enough to risk one of the very rare quad-system that can run Mac OS.

The Mac/daystar dual cpu 200 card gets very toasty since the heat sink is nearly identical to the 200MHz 604e cards and a single 200 cards gets quite hot.
A dual 400MHz 604ev is most likely impossible since it has a bigger thermal footprint than the 200MHz 604e. The load on the 604e voltage regulators might even exceed the maximum rating.

I have found the 604ev-400 in greater numbers on Chinese chip supplier sites at reasonable prices. I would have to buy a few to check if these are the real deal.
 

stynx

Well-known member
I have changed the G3-carrier board for another one. I had seen over 280mV ripple (ca. 1.9V - 2.2V) on the previous carrier card. Any attempt to lessen the ripple was unsuccessful. I even replaced all the caps with new ones. A ripple of more than 10% of the core voltage is not normal and much too high.

With the new carrier board, 58MHz bus clock can be used and i am currently running MacBench to test stability at 4x58MHz (233MHz). The CPU gets barely warm at the moment. I will try to rise the multiplier in 0.5 steps to slowly verify the ability to reach higher frequencies.
 

stynx

Well-known member
The CPU did get a bit more stable. I could barely reach 300MHz for a short time but only 250 was stable.
 

Attachments

  • HDPVRPRO60_20240622_115214_013.JPG
    HDPVRPRO60_20240622_115214_013.JPG
    141.9 KB · Views: 16
  • HDPVRPRO60_20240622_115702_015.JPG
    HDPVRPRO60_20240622_115702_015.JPG
    146.3 KB · Views: 14
  • HDPVRPRO60_20240622_120553_017.JPG
    HDPVRPRO60_20240622_120553_017.JPG
    150.7 KB · Views: 16

herd

Well-known member
Interesting project! Do you have pictures of your setup? I looked on ebay and found this:

ppc604e.jpg

Is this the type of chip/carrier that you're using? It should be possible to solder on different versions, like the 740L. If this is the same type of ZIF socket that was later used for G4 processors, perhaps some of those would also work?
 

Powerbase

Well-known member
Interesting project! Do you have pictures of your setup? I looked on ebay and found this:

View attachment 75013

Is this the type of chip/carrier that you're using? It should be possible to solder on different versions, like the 740L. If this is the same type of ZIF socket that was later used for G4 processors, perhaps some of those would also work?

I believe IBM just used the same socket for some of their PowerPC-powered servers.
 

Attachments

  • IMG_1562.JPG
    IMG_1562.JPG
    2.1 MB · Views: 25

stynx

Well-known member
@herd: yes, i used a similar cpu. It came from an IBM RS6000 p-series computer. The CPU i used is the same kind as Powerbase has shown in his last post. The 333MHz variant has no voltage select resistors installed and will not work in a normal socket. You need to install the resistors R2,R3,R4,R5,R6 and the cpu will run at 2.0-2.1V core voltage when you short (zero Ohm) all 5 positions. The 375MHz variant has the resistors already installed.

The VID-bits are configured as followed for the LM2636...
Bildschirmfoto 2024-06-23 um 18.57.27.pngBildschirmfoto 2024-06-23 um 18.57.35.png

BTW: don't pay the extremely high priced 604ev from eBay (like $250 or more).
They should not be priced above $100 and even around $80 seems extremely overpriced.

-Jonas
 
Last edited:

herd

Well-known member
IBM doesn't really seem to document their part numbers. So is any 604 over 200MHz an "ev" version?

With this successful test, your plan is to solder new chips onto your apple dual 9600 board? Does that board also have the level shifters? Do you already have the new chips?

Good luck with your project; I'm looking forward to the results.
 

stynx

Well-known member
IBM doesn't really seem to document their part numbers. So is any 604 over 200MHz an "ev" version?

With this successful test, your plan is to solder new chips onto your apple dual 9600 board? Does that board also have the level shifters? Do you already have the new chips?

Good luck with your project; I'm looking forward to the results.
No, not all 200+MHz parts are -ev series cpus.

IBM often used the following labeling:
PPC604e3BB-350... -> 604ev, 2.0V vcore
PPC604e2BE225 ... -> 604e, 2.5V vcore

Motorola often used
XPC604RR ... 604ev 2.05V vcore (12W@300MHz max.)
XPC604ER ... 604e 2.5V vcore (12.1W@200MHz max.)
XPC604AR ... 604 3.3V vcore (19W@100MHz max.)

These Labels are not completely consistent and especially IBM has seemingly used several different ways to label chips.
But a PPC604e3... is 100% an ev-model.
 
Last edited:

stynx

Well-known member
Sooo ...
The 375MHz rated IBM604ev arrived and it is very overclockable.
I could easily reach the maximum that my 8500 board based system can offer.
It went to 7x58MHz without a hitch (7x is the max multiplier for that 604ev CPU).
My carrier card can only go to 58MHz without further modification.

The 604ev might go much higher than 408MHz ... and it gets barely warm.
I suspect that my previous 333MHz rated 604ev is either a bit busted or jut a bad apple.

Update:
At 400MHz, the 604ev is faster than the dual 200MHz 604e card in Cinebench 2000 multi-cpu rendering.
The dual 200MHz 604e gets 2.35 CB while
the single 400MHz 604ev gets 2.96 CB

The dual 400MHz 604ev card is not so impossible anymore, i think.

Compared to the 740 (a G3 without cache), the Integer-unit of the 604ev is about 25% faster while the FPU is about 5% faster on a clock for clock comparison. That is pretty amazing since the 604e(v) has 4 Integer units while the 740/750 has only 2 with a separate branch-unit.
The 604ev would have been a real beast if it had ever gotten a branch-prediction unit and a fast cache interface similar to the G3.

I have to benchmark the G3 with it's faster cache enabled to compare real-world examples, though :)
 

Attachments

  • HDPVRPRO60_20240626_082628_023.JPG
    HDPVRPRO60_20240626_082628_023.JPG
    521.1 KB · Views: 18
  • HDPVRPRO60_20240626_084348_029.JPG
    HDPVRPRO60_20240626_084348_029.JPG
    558.7 KB · Views: 17
Last edited:

stynx

Well-known member
I have tested a bit more and i come to the conclusion that 400MHz at 57MHz bus speed is 100% stable. I did let the computer run cinebench 2000 without active cooling. The heatsink got pretty toasty but the system did not crash. A slow-spinning 5V fan was enough to keep the heatsink at a bit above ambient temperature.

The 400MHz 604ev is comparable to a 200MHz 604e in terms of thermal load, i would say.
The headroom for overclocking might still be there and 450MHz might be possible with a higher bus speed.
 

Powerbase

Well-known member
I have tested a bit more and i come to the conclusion that 400MHz at 57MHz bus speed is 100% stable. I did let the computer run cinebench 2000 without active cooling. The heatsink got pretty toasty but the system did not crash. A slow-spinning 5V fan was enough to keep the heatsink at a bit above ambient temperature.

The 400MHz 604ev is comparable to a 200MHz 604e in terms of thermal load, i would say.
The headroom for overclocking might still be there and 450MHz might be possible with a higher bus speed.

I know that overclocking the "High Performance" cards from the 604ev powered 8600 and 9600s to 400MHz was a thing. I don't know if they had success getting to 450MHz+ on those chips, though.

It'd be neat if we could tie some L2 cache to them and run them in a Beige G3 or B&W. I'd love to see how they'd perform with a little more headroom from those two machine more robust specs.
 

stynx

Well-known member
It'd be neat if we could tie some L2 cache to them and run them in a Beige G3 or B&W. I'd love to see how they'd perform with a little more headroom from those two machine more robust specs.
The 604ev has no integrated cache-interface and needs a separate L2-cache controller. The additional circuitry on the Mach5-cards is exactly that: a cache-controller with clock-doubling feature.

The beige G3 Gossamer board has an unused onboard cache-slot (66MHz 64Bit) but that was never populated or used. I have compared the G3 cache-slot to IBM cache modules and there is a match with "75H5463" 1Mb L2 cache for RS6000 p-series. The slot itself is quite elusive since IBM used a bigger slot that would also take these smaller cache modules. I have not found anything compatible on my search.
s-l1600.jpg

The Gossamer board was originally meant for use with 603ev and 604ev CPUs but since the G3 was much more performant than anticipated, they switched gears and went with that instead. Despite having only had the integer units, the G3 is nearly as fast as the 604e with double the amount of integer units. The true power of the G3 shows with is its integrated cache-controller. The G3 CPU+Cache module is a cobbled together stopgap since Apple needed something to compete against the Pentium II. The G3 itself is not much more performant than the 604e, on the contrary, it is a bit slower. But adding a high-performance, high-speed cache into the mix and suddenly the G3 ist a performance monster. The low-power nature of the G3 (since it was originally meant as a 603ev replacement) allowed more speed without the need for a massive heatsink.

As the previous benchmarks might have indicated, the PPC platform has a big gain when the bus-speed gets higher. The PPC CPUs seem to need a lot of memory access cycles when calculations are performed. This in turn might hint at a deficiency of L1 cache stemming from the Power-platform ancestry these had much much bigger L1 caches. A fast L2 cache can compensate a bit for the lack of L1 cache and if we look at the later G4 generation and the final G3 generations, there was a clear trend to move the L2 cache ever more closer to the CPU and therefore making it mesh more seamlessly into the architecture as an extension to the L1 cache.

IBM was very aware of this flaw and added a cache-controller with onboard cache onto their CPU-cards, long before Apple designed the Mach5-card:
s-l1600-2.jpg
I am, on the other hand, quite amazed, that Apple struggled so much to implement a similar system in the Power Macs. The technology was clearly available but Apple chose to reinvent the wheel themselves.... Especially with their many ASICs and custom solutions, it seems that Apple was a bit too prideful to get 3rd party hardware into their machines as it was already common in the PC market. Only with the Gossamer board, they had swallowed their pride and began to use 3rd party parts like the Motorola 604-bus system controller that was capable of up to 100MHz bus speeds and had a much more advanced PCI interface integrated.
 
Last edited:
Top