Jump to content
max1zzz

iMac G3 (Rev A -> C) G4 CPU Upgrade

Recommended Posts

To follow up on the cache theory: I know several accelerator vendors distributed "Cache control panels" to help users fiddle with the setting of their G3 ZIFs, might it be worth trying them to see what divisor the cache SRAM is set at? I guarantee that if Apple used a fixed 1/2-core ratio the original chips aren't going to be good for 433+mhz.

Share this post


Link to post
Share on other sites

You might be right, if i'm reading the data sheet of the cache chips correctly they are rated for about 150mhz, if we assumed the best case and the chips are running at 1/3 of the cpu clock 433mhz should *just* work in theory, but it's so close it's reasonable to assume it might be the problem. On this theory 400mhz is comfortably in the range the chips can do, 466mhz and 500mhz are way out

 

So, perhaps without swapping the cache chips 400mhz is the max - maybe i'll just have to swap the chips and see :)

Share this post


Link to post
Share on other sites

Well something bad just happened, only i'm not sure what.... Just tried to solder new cache chips on (stolen from a dead powerbook G4) Decided to do it the quick way and just plonk the new chips on and heat them up (rather than applying new solder. After I stopped heating there were several loud pops and the chip wasn't sitting flat. i assumed I had popcorned either the chip or the board, but both look fine. So i'm not sure what popped and why the chip wasn't sitting flat at the end.

 

Think i'm just going to clean them up and try soldering them down again Thew worst that can happen is it just won't work.

Share this post


Link to post
Share on other sites

Well, Think i'm gonna order new chips and solder them in properly. But that will have to wait as I screwed up licensing the FTP software on my server and just had to fork out $200 to rectify it, So that's eaten up my project budget for now....

 

Might swap a G4 onto one of my other cards though so I can keep playing around with it :)

Edited by max1zzz

Share this post


Link to post
Share on other sites

the 2300 and 5300 use TQFP processors. 

 

Those things are a PITA to change compared to BGA, I remember doing a countless amount of BGA rework back in the xbox and PS3 repair days.

Edited by techknight

Share this post


Link to post
Share on other sites

I was wrong when I wrote that the cache should be fine if the bus speed stayed the same. I forgot that the cache speed keys off of the CPU speed, not the bus speed. It's been a long time since I dealt with the finer points of overclocking chips with backside cache.

 

So given my earlier blunder, I hesitate to mention this, but is it not the case that the cache isn't even active until the cache control extension/CP loads?. My memory recalls that the external backside cache is configured and activated by the CPU at some point in the boot sequence. If that is the case, the cache speed still shouldn't affect whether the machine boots. It would just cause fatal errors partway through the process.

Edited by trag

Share this post


Link to post
Share on other sites

I would imagine on a machine that has firmware that natively understands the installed CPU enough to know about the cache control registers it would probably set it up before an os loads... But that said, I sort of wonder if it is possible to override the default divisor set at boot by modifying a structure in NVRAM, possibly via an Open Firmware command. That may well be how the cache control panels for ZIFs work.

Edited by Gorgonops

Share this post


Link to post
Share on other sites

Well it should be quite easy to test when the the cache is set up, if iplonk my cache-less card back into the iMac it should start booting if the cache is set up by the OS (but will then probably fail), if it is set up by the firmware it simply won't boot whatever I set the CPU multiplier to

 

Edit, it doesn't boot without cache, however I have a horrible feeling I have killed the G4 trying to solder the cache chips last night...

Edited by max1zzz

Share this post


Link to post
Share on other sites

For laughs I was looking for the relevant developer notes to try to figure out what the divisor *should* be for iMacs of different CPU speeds, but so far I've run into conflicting information. The Developer Note for the original 233mhz model says it runs it at the 2:1 divisor, IE, 117mhz, but that note *only* covers the 233, not the faster models. Meanwhile the note for the first slot-loaders (350/400mhz) says it's set at 5:2 for both of them, which if true would have it running at between 140 and 160mhz. Low End Mac's profile of the 333mhz iMac says it also uses 5:2, which would equal 133mhz, while wikipedia and everymac.com claims it's set to 2:1 like the original model, which would have it running at 166mhz. By any chance does System Profiler tell you what it's set at?

 

Here's a thread that has a link to Powerlogic's old "Cache Profiler" software for OS 9, maybe see if that can tell you? It would be interesting to determine once and for all if it's the same regardless of CPU speed (IE, move the jumpers and see if it changes as the speed increases) or if it's just hard set in the iMac.

Share this post


Link to post
Share on other sites

the "popcorning" is caused by moisture stuck inside the chips plastic epoxy or the PCB itself. 

 

Any time you want to properly rework a board, you have to pre-bake the chips and the PCB to drive any moisture out so it avoids that problem. Popcorning usually results in instant death. Anytime I had a GPU popcorn on a 360, it was done. 

Share this post


Link to post
Share on other sites

Yep, never had a popcorned chip work again. Just kinda pissed that I popcorned the CPU and not the SRAM....

I'm gonna order now SRAM chips for that board and give one last go before putting a new chip on the board as i'm not 100% sure if it popcorned or not (i'm not seeing any obvious blisters on the chip, but there is one section that dosen't seem quite flat.)

 

Edit: I'm thinking of using these as the replacement SRAM chips http://uk.farnell.com/cypress-semiconductor/cy7c1347g-133axc/sram-4mbit-parallel-4ns-100tqfp/dp/2115424They look to be compatible with the originals, but are twice the capacity and can run at faster speeds. I'm not sure if the iMac could use any more L2 cache without further modification, but I can't find any 2mbit chips anyway

Edited by max1zzz

Share this post


Link to post
Share on other sites

The popcorn happens underneath the IC in the BGA ball area and shorts out connections. That happens alot... I had a Sonnet L2 G3 500Mhz and a CPU swap on that did the same thing :(

Share this post


Link to post
Share on other sites

oh damn.... Guess I'll just start with a new card then....

I was assuming it was the chip as that what I always used to popcorn on the xbox's.... I'll try and be more careful next time :)

Share this post


Link to post
Share on other sites

I've done this about a dozen times, still trying to perfect this operation though (About ~40% success rate).

What temperature/equipment do you use to clean the pads after you remove the CPU? My boards almost ALWAYS lose a pad or two after cleaning them off with my Hakko and solder wick.

Also, what size balls do you use on your replacement chips? I've been using .76MM lead balls, but I feel they are too big. I can't find any way to get the suggested ones in the Datasheet.

Edited by asaggynoodle

Share this post


Link to post
Share on other sites

I use my aoyue 936 soldering iron with a blade type tip to remove most of the solder, just apply a little leaded solder to the tip and wipe it across the pads (if you have a proper ir bottom heater do this with the board still on the heater and it's way easier). Then I switch the tip to a normal pointed type and use desoldering braid to remove anything remaining (get good quality chemtronics braid and not the cheap stuff). If there is anything left I use some very very fine grain sandpaper to remove anything remaining. I had my iron set pretty hot, around 400C, I would have gone a bit cooler if the board was on a prehaeter.

 

I haven't been reballing the chips, mine came from china with balls attached. However from what I have read on the datasheets they should be 0.89mm, I haven't been able to find any solder balls or stencils of this size though. I'm pretty sure my chips from china have .76mm balls as they sit a little lower than the original.

Share this post


Link to post
Share on other sites

Thank you so much for posting that, the only reason I've to reball my chips is because finding them new is usually about the cost of the actual upgrade card for retail price.

I managed to find a Soldering stencil on eBay that worked pretty well, I'd say 90% accuracy. It came in a kit with about ~20 different stencils. The stencil itself is about 2x the surface area of the chip, so actually applying the balls is a major PITA even with a holder. 

Share this post


Link to post
Share on other sites

Are you using direct heat stencils or not? I have tried reballing xbox chips with them before and found it quite easy, but the stencils always stuck to the chip and where a right pain to get off again. I then tried with the better quality non direct heat ones and could never get them to work, I either knocked the balls off center removing the stencil, or they moved when I started heating

Share this post


Link to post
Share on other sites

Yep, the direct heat ones. I've had ALL of the problems you've mentioned. 
I always have to put them between two slices of wood and try to crush them so they flatten back out after ripping the chip out. 

You can see the lot of them I got, and the one I use for PPC stuff. The Flux outline on the stencil shows how small the chip is. 

9iSWs8y.jpg

 

Edited by asaggynoodle

Share this post


Link to post
Share on other sites

Pretty interesting to see this, as this is an idea I've had going for a while, after being told the 7410 is pincompatible with the 750. I've always wanted to try it and this convinced me I can do it, as the way you're doing it is exactly how I envision doing it. Though I really want to try it on a slotloading iMac, which is probably going to be a bit more complicated. But nothing a bit of Kapton tape can't fix, right? :p  

Share this post


Link to post
Share on other sites

It should work on a slotloading iMac just fine, I was planning to try this on a iBook G3 (Dual USB) for no reason other than I have one spare and it should work

Share this post


Link to post
Share on other sites

Just signed up to say what an awesome project this is turning out to be (some of you might recognise me from Mac rumors I hang around the PowerPC section). like Dan above. I have been looking into doing something like this and its awesome to see that it works. I know of one other person who did this with a G3 Pismo card. Just a couple notes that might help. on Gossamer machines (G3 Beige tray load iMac etc) the L2 cache is indeed tied to the CPUs multiplier so you can end up limited by how fast you can clock due to the L2 cache. and also G4 chips can run a bit hotter then the same clocked G3 chip so keep that in mind you might want to add on some extra cooling. anyway I have been wondering if you could also turn G3 ZIF CPUs into G4s that and try a slot loading iMac like dan (ones with normal 750s should work) also the first gen clamshell used a 750 so that might even work. (but all the iBooks ahead of it used 750CXs and up which are not pin compatible with a 7400/7410) one of the Main reasons I wanna do all of this is Just to run leopard on these machines :) (that and its such a cool thing to do)

 

so yeah Awesome work guys cant wait to see what happens next :)

Share this post


Link to post
Share on other sites

Hrm. Are you sure you can do it to a "dual usb" iBook? A quick Google claims that uses the 750CX with built-in cache, is that still the same pinout?

I never even considered that, and the answer is no, it's a completely different package so it wouldn't work

 

Edit: Looks like LightBulbFun beat me to it

 

Anyhow, my next step with this is going to be to try modifying a second card and swapping the cache chips for faster ones an seeinf if I can clock the chip all the way up :)

Edited by max1zzz

Share this post


Link to post
Share on other sites

one more thing I should mention is that I have found that when you Put G4 CPUs into G3 Gossamer systems (Say a G4 ZIF from a Yikes into a G3 Beige) sometimes the L2 cache will not show up unless you install an enabler so when doing this iMac tray loader modding if you do not see L2 cache try installing an enabler and running before and after benchmarks to see if the L2 cache is actually being used 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×