• Hello MLAers! We've re-enabled auto-approval for accounts. If you are still waiting on account approval, please check this thread for more information.

CPU swap PPC604e

stynx

6502
I will post my attempts to swap PPC604e CPUs here now.

First steps - desolder old CPUs:
IMG_1518.pngIMG_1519.pngIMG_1521.png

I used a stack of 2mm thick heat-transfer pads on the backside for better contact with my hot-plate. The hotplate was @200 deg C
A hot-air station @300 deg C was then used to heat the CPUs directly.
After about 2 minutes, the chip was loose enough be lifted with a vacuum pen.

Next: Reball a replacement CPU
 
What is it you are doing, swapping in a higher rating chip?
Yes!

My final goal will be to upgrade a Power Mac 9600/200MP card to 350MHz chips and try to get to 400MHz.
This card will then have two 400MHz chips :-)

The three cards shown above are first tests to get comfortable with the process.
I can very easily remove the original CPUs now with no damage to the CPU-cards.

The next step will be to install a 200MHz "Helmwind" CPU on the 180MHz PPC604e CPU card.
The "Helmwind" 604e CPU is basically the same as the PPC604e (Shirocco) but has a smaller (finer) metal-layer but uses the same voltages.
They are drop-in replacements. Some people have claimed that some revision of the "Helmwind" CPU can reach >300MHz...
Helmwind CPUs were rated at 250MHz maximum.

The Mach5 604e CPU uses 2V core voltage instead of 2.5V and it can go as high as 450MHz with selected chips.
The Mach5 (High Performance Processor) cards will be a test for a more complex card.
Mach5 CPUs were rated at 375/400MHz maximum

I will post when i have done my first swap.

My reasons: Just for fun :cool:

-Jonas
 
Pitfalls and "solutions":

- the solder balls will not all stick to the pads
-> replace CPU

- the CPU is defective
-> replace CPU

- the spacing to the CPU cooler is too big
-> modify cooler

- the processor board is damaged
-> try another one :)
 
First card:
Apple 180 MHz 604e BGA card
New CPU: PPC604E2BE200E (Helmwind)

Works @250MHz, 50MHz bus
Unstable @270MHz, 54MHz bus -> Boots but crashes some minutes when running applications

Runs cooler than a normal 604e (Shirocco).
IMG_1527.pngIMG_1528.png

The recalling was a real pain in the a**. The kit i have bought to position and melt the solder balls was not really usable. It deformed a lot during heating and pushed the solder balls around. I had another mask, that was smaller which i placed under the mask from the kit. I them used a generous amount of flux and melted that onto the CPU and solder balls. I removed to upper mask after the flux had cooled a bit. I removed the CPU with the lower mask and solder balls and placed it on a hot-plate (@200 deg.C). Then i could melt the solder balls and remove the grid after the solder was firmly attached to the CPU and slightly cooled. The Solder was then heated again to get uniform solder-balls.

The soldering itself was actually very easy. The CPU did still have a good amount of tacky flux when i placed it onto the PCB. The hot-bed was set to 230 deg.C and the hotter to 330 deg.C. I heated the CPU on the PCB until it would be a bit bouncy when poked from above.

The heatsink is less than 1mm too far away from the chip. I had to use a very thin heat-transfer pad for proper contact.

This was my first PPC CPU swap and it was much easier than expected.
 
Last edited:
The 2nd CPU swap "High Performance Processor Card", 250MHz CPU -> 350MHz CPU did not work. Maybe the card is defective or i did not solder the CPU correctly. I will pause a few days and try again next week with the other "High Performance Processor Card".

I think i will not be able to swap the CPUs on the dual 200 card. That is much more difficult than the High Performance Processor Card.
 
It looks like you're having fun, thanks for sharing your progress! Are you re-balling the CPUs because they are salvaged from other boards? I've seen some salvage CPUs that were re-balled with lead free solder. This is more difficult to work with so for these I first re-ball with regular solder. Also, on the card that didn't work, what does the voltage do on power-up?
 
I think i will not be able to swap the CPUs on the dual 200 card.
That's a bummer - but following with interest (and 🤞) anyway! I'd love to boost the speed of my Interware(Daystar) dual 200Mhz which I have in a 8500 I run BeOS on... I also have a small stack of original Apple CPU cards - would have to check the specs, but nothing super fast - if you need any more for experimenting... 🙂

Good luck with this!!
 
I did try another swap with a UMAX 604-150 card. The core-voltage has derived from a LT1584 and easily changed to 1.9V from 3.5V
I had removed the 604, which was actually a 166MHz variant (which i have never encountered!) and measured everything related to core-voltage after the mod. Everything seemed fine at first. I reballed a 604e3 @250MHz for starters and soldered it not the card. It did chime, started with a happy mac but randomly stopped working with a bus-error while booting. I changed the multiplier, to no avail. I removed the cache-module and got into Mac OS @275MHz but it was unstable. I was i bit baffled about what was happening. I tried to change the multiplier but then the CPU-card did not work anymore but sometimes started @50MHz and later it did not chime anymore.

I removed the 604e3-250 and reballed a MOT XPC604R-300. The chip did solder quite easily, to the point where i thought i had done something wrong. Testing the card gave a chime and start-screen but no happy mac symbol and only when the cache card is installed... otherwise only a chime and black screen.

I think there is something not right with the UMAX 604-150 card.

On another note,: I made me a Kansas ROM-module by removing the Rom-chips from a dead 8600-Kansas board and transplanted the chips onto a lone PM7100-Rom module. It did work after i found a unsoldered pin, which i fixed.

Here are some Infos from "PowerMacInfo" and "LSCPI" and the tools used as well:

604e 200MP
604e 200MP  LSPCI.png604e 200MP CPU info.png

Helmwind (PPC604e2) @250
Helmwind 250 LSPCI.pngHelmwind 250 CPU info.png

Mach5 (PPC604e3) @406 (58MHz bus)
Mach5_LSPCI.pngMach5 400  CPU info.png
 

Attachments

Are you re-balling the CPUs because they are salvaged from other boards?
Some are reclaimed and others are not. I have to reball all the CPUs regardless, since the PPC CPUs use very big lead solder-balls that have a high melting temperature (>280 degC) and have to be soldered with solder paste. The solder-balls are not meant to melt but are a kind of separator between the PCB and the CPU.

I think they thought that soldering the CPU directly onto the PCB could stress the CPU too much when the heatsink is pressed against.

The long time that the NOS CPUs have stayed "in stock" have deformed the original solder-balls as well. All CPUs that i own have flat-spots at the rim of the grid of solder-balls where they contact the tray. These will not solder well.

I use 0.76mm 63/37 solder balls for reballing. They work ok but are a lot closer to the PCB than the original solder balls. most CPU-cards will have enough give in the cpu-board that the heatsink will still fit.

I typically use a SN62PB35AG2 solder but i have not seen solder-balls using that alloy being offered.
 
Some are reclaimed and others are not. I have to reball all the CPUs regardless, since the PPC CPUs use very big lead solder-balls that have a high melting temperature (>280 degC) and have to be soldered with solder paste. The solder-balls are not meant to melt but are a kind of separator between the PCB and the CPU.

I think they thought that soldering the CPU directly onto the PCB could stress the CPU too much when the heatsink is pressed against.

The long time that the NOS CPUs have stayed "in stock" have deformed the original solder-balls as well. All CPUs that i own have flat-spots at the rim of the grid of solder-balls where they contact the tray. These will not solder well.

I use 0.76mm 63/37 solder balls for reballing. They work ok but are a lot closer to the PCB than the original solder balls. most CPU-cards will have enough give in the cpu-board that the heatsink will still fit.

I typically use a SN62PB35AG2 solder but i have not seen solder-balls using that alloy being offered.
That reminds me. I think I could fix both my iBook/600 and iMac G5/1.8 whose issues are very indicative of bad solder joints on the GPUs. However, I've also heard that heating up the chips to try and melt the balls underneath doesn't last for very long. Given that you've had lots of experience with reballing, would you say that's true? How would you approach the same tasks?
 
That reminds me. I think I could fix both my iBook/600 and iMac G5/1.8 whose issues are very indicative of bad solder joints on the GPUs. However, I've also heard that heating up the chips to try and melt the balls underneath doesn't last for very long. Given that you've had lots of experience with reballing, would you say that's true? How would you approach the same tasks?
Cannot really say. The heating/reflowing GPUs never really worked for me. The reason for the GPU problems were related to the variation of the solder balls size, if I recall correctly. With the GPU having much more delta in the low and high temperatures (GPUs often get very hot for short bursts) compared to typical chips, it is much more important to have high uniformity of the contact to the PCB. A single cracked joint can make it inoperable.

I don’t have much experience with BGA soldering and reballing and I am surprised at how well it went so far.

The reballing is a tedious process and I often need more than one attempt to get a homogenous result. The only way to correct any errors is to start over.

I am not that good when it comes to repeated de soldering of CPUs. You may have had the hot air a bit too long on one spot and suddenly the board puffes up because there was moisture and you did not wait long enough in preheating.

Such errors may cost 100€ because waiting a minute was just too long.
 
Mach5 (PPC604e3) @406 (58MHz bus)
Mach5_LSPCI.png
Mach5 400  CPU info.png

Perhaps im mistaken and it turns out that IBM Mach5 604EV's use a different PVR, but are you sure thats a 604ev/Mach5 CPU?

I ask the CPU type part of the PVR (Processor Version Register) given as "cpu-version" in your screenshots is listed there 0009 is that of a regular 604e CPU, my Own 300Mhz Kansas Apple Mach5 CPU card from has a Motorola XPC604RRX350RB has a PVR value of 000a

so I would just double check what CPU it is ya actually to be safe before you blame your own skills or the CPU card itself :)

upload_2018-10-16_5-24-48-png.795398


upload_2018-10-11_23-9-36-png.794161
 
Last edited:
Perhaps im mistaken and it turns out that IBM Mach5 604EV's use a different PVR, but are you sure thats a 604ev/Mach5 CPU?

I ask the CPU type part of the PVR (Processor Version Register) given as "cpu-version" in your screenshots is listed there 0009 is that of a regular 604e CPU, my Own 300Mhz Kansas Apple Mach5 CPU card from has a Motorola XPC604RRX350RB has a PVR value of 000a

so I would just double check what CPU it is ya actually to be safe before you blame your own skills or the CPU card itself :)
The CPU in question is a IBM PGA PPC604E3DBCG375E on a carrier board.
I have yet to make one of my 604(e) CPU cards work with a swapped in Mach5 CPU.

Here is the info about the
PGA CPU (on carrier card)
IBM PPC604e3BBCG333
IBM604e3 333 LSPCI.pngIBM604e3 333 CPUinfo.pngIBM604e3 333 GaugePro.png
 
The marking on the CPU heat-spreader for the 375MHz CPU has a DB in it, suggesting a later process than the BB marking of the 333MHz CPU.
The 333MHz CPU only goes to just below 300MHz, though.Bildschirmfoto 2024-09-01 um 17.23.54.png
 
I just found this juicy bit:

POSSIBLE REPLACEMENT PARTS
--------------------------
The XPC740PRX device is pin-compatible and voltage-compatible with the 604R.
IBM offers a 604R-class device that is pin-compatible.

Subject: Motorola PRODUCT DISCONTINUANCE 4346

TITLE: XPC604RRX END-OF-LIFE ANNOUNCEMENT

LAST BUY DATE: 21-JAN-2000 LAST SHIP DATE: 21-JUL-2000

AFFECTED CHANGE CATEGORIES


AFFECTED PRODUCT DIVISIONS
PERSONAL COMPUTING

ADDITIONAL RELIABILITY DATA: None

SAMPLES: No Ref:

DISCLAIMER:

CUSTOMERS MUST NOTIFY MOTOROLA IN WRITING WITHIN 90 DAYS OF RECEIPT
OF THIS NOTIFICATION IF THEY CONSIDER THE DISCONTINUED PRODUCT TO BE
"SOLE SOURCE." MOTOROLA AND THE CUSTOMER MAY NEGOTIATE AN
APPROPRIATE END-OF-LIFE
GPCN FORMAT: CUSTOMER

DO NOT REPLY TO THIS MESSAGE.

1
Motorola Page:2
Semiconductor Products Sector
**********************************************************************
PRODUCT DISCONTINUANCE
**********************************************************************
ISSUE DATE: 20-Jan-1999 NOTIFICATION #:4346

LAST BUY DATE: 21-Jan-2000 LAST SHIP DATE: 21-Jul-2000
DESCRIPTION AND PURPOSE
-----------------------
Motorola is announcing the End-of-Life on the 604R

product. Recommended replacements
include the XPC740PRX, XPC750PRX, and the upcoming G4 device.
Additionally, a
similar
604 product is available from IBM. Some of these replacements may
require the
customer
to redesign their board. This announcement affects the 604R in all
revisions and
at all
speeds, and includes daughtercards.

The 604R microprocessor products are being discontinued due to
significant errata
and
minimal customer interest. They are not considered a part of the
long-term
embedded
PowerPC strategy. These parts will be handled under standard
End-of-Life
procedures,
allowing twelve months for Last Time Buy orders and an additional
six months for
Last
Shipments.

Customers must notify Motorola, in writing, within ninety days of
notification, if
they
consider the discontinued product to be "Sole Source." Motorola and
the customer
may
negotiate an appropriate End-of-Life Buy period on these devices.

POSSIBLE REPLACEMENT PARTS
--------------------------
The XPC740PRX device is pin-compatible and voltage-compatible

with the 604R.
IBM offers a 604R-class device that is pin-compatible.




FILE FORMAT: ASCII TEXT
FONT - Courier
SIZE - 12 Point
LINE - 70 characters/line
PAGE - 55 lines/page
PAGEBREAK CHARACTER - ^L (Control L)


123456789|123456789|123456789|123456789|123456789|123456789|123456789|

AFCTD DEVICE (W/O SPECIALS),FORMAT: PN, REPL MOT PN, NON MOT INFO
---------------------------------------
SC440087UP , ,
SC440088UP , ,
XPC604RRX250PB , ,
XPC604RRX250PBR2, ,
XPC604RRX266LD , ,
XPC604RRX300LD , ,
XPC604RRX300PB , ,
XPC604RRX300RB , ,
XPC604RRX300RBR2, ,
XPC604RRX333LD , ,
XPC604RRX350LD , ,
XPC604RRX350RB , ,
XPC604RRX350RBR2, ,
XPC604RRXD , ,
XPC604RRXD , ,
 

The 740 has been played with before, @dosdude1 has done a couple of swaps onto 603ev machines like the TAM and Power Macintosh 6500, and I recently have installed both an MPC740ARX266 and PPC740L-GB500A2 onto a Power Macintosh 6500 board:


They should work on single 604ev cards as well, but do note that it is hindered from a lack of a L2 cache interface compared to the "full" 750 G3.
As most of these 604 machines had CPU slots that could take full G3s, doing a 740 swap makes a little less sense than it does on a 603ev machines, especially as their G3 accelerators used a cache slot and required OS-specific extensions to actually work, which Mac OS X, BeOS, Linux, etc., do not have.
 
Ok, i think i might be crazy but i dug out the Mach5 card that i deemed to be defective after the CPU swap and installed it in a 8600 Mainboard (not Kansas) with a Kansas ROM module installed. The Upgraded Mac5 card did boot @350MHz. It did not finish booting @400Mhz, though.
The boot process is extremely slow, though. Maybe there are some modifications or later chip-revisions on the Kansas board that do not play nicely with a Nitro board. It also does not want to start from my ATA card.

Screenshots later :-)

-Jonas
 
Last edited:
IBM PPC604E3DB-350 Mach5 card (1MB L2 @100MHz)

@350MHz CPU speed

HDPVRPRO60_20240910_135101_005.JPGHDPVRPRO60_20240910_135132_007.JPG
HDPVRPRO60_20240910_135148_009.JPGHDPVRPRO60_20240910_135207_011.JPG

@400MHz CPU-speed

HDPVRPRO60_20240910_141847_015.JPGHDPVRPRO60_20240910_141901_017.JPG
HDPVRPRO60_20240910_141916_021.JPGHDPVRPRO60_20240910_141910_019.JPG

Benchmarks:
HDPVRPRO60_20240910_142249_025.JPG

The CPU is super stable @400MHz. It might still have some juice left.

-Jonas
 

Attachments

  • HDPVRPRO60_20240910_141847_015.JPG
    HDPVRPRO60_20240910_141847_015.JPG
    385.7 KB · Views: 17
very interesting results! indeed as I understand it, the Mach5 motherboards and CPU cards use some extra pins on the CPU connector that are not used on older motherboards, so you will want to stick with Kansas motherboards for playing with Mach5 cards

again its strange to see the IBM Mach5 CPU's show up as 604e not 640ev and from what I can make out they displaying a 604e PVR not a 604ev PVR, next time you post a Gauge Pro screenshot, can you do "Cmd D" this will get Gauge pro to display detailed extra information including the PVR value :)
 
Back
Top