Re: about the bus speed
Originally posted by beowolf
I recall reading a little while back somebody saying that the bus speed of 900mhz was not based on 1/2 the processor speed. To correct them (with a reference none the less!) this page http://www.arstechnica.com/wankerdesk/3q02/powerpc.html
has this
"One of the most important and least-discussed features of the PowerPC 970 is its 900MHz DDR frontside bus. This bus physically runs at 450MHz, but it's double-pumped. Its architecture is interesting in that the bus actually consists of two, 32-bit unidirectional point-to-point links. David Wang described it in a post to comp.arch as follows:
It's two 32 bit links: one from CPU to "companion chip" [the northbridge], and one back from that chip to the CPU. Each link runs at 900 MHz (1.8 GHz CPU core. the interface link runs at integer fraction of the CPU core, in this case 1/2)
So 4 bytes to, 4 bytes from, at 900 MHz that's 3.6 GB/s raw BW each way. The link multiplexes command and address info over the same pins, so it's some sort of packet based protocol. The math gets you 7.2 GB/s of raw bandwidth, but after subtracting out command and address overhead, raw peak data bandwidth is supposed to be about 6.4 GB of that 7.2 GB/s.
This high-bandwidth link to the northbridge is one of the elements that's going to make this chip as a media machine; it's exactly what Apple's current bandwidth-starved G4 systems lack, and it's going to be a major selling point for systems based on the PPC 970. When coupled with the right memory in an SMP configuration, the 970 should do quite well in bandwidth-intensive applications."
So it appears that the bus speed is 1/2 the processor speed (which makes me wonder about motherboard design issues with the bus speed being different for each processor. Does anybody know something about this?).
Yes, this proves (although the simple fact that the CPU is running at 1.8GHz and the FSB at 900MHz makes such arithmetically obvious) that the CPU:FSB clock multiplier is 2. HOWEVER, that does
NOT mean that that multiplier is fixed at 2.0 for all speed bumps of the processor!
Example: the 2.8GHz P4 has an FSB of 533 MHz, yielding a CPU:FSB ratio of 5.25 (21/4). However, the 3.06GHz P4 ALSO has an FSB of 533MHz, yeilding a ratio of 5.75 (23/4). Intel plans on putting an 800MHz FSB on the 3.2 GHz P4/P5 if I recall correctly, which would yield a 4.0 CPU:FSB ratio.
In fact, the CPU:FSB ratio hasn't been fixed across speed-bumps on any Intel CPU since the 486 (remember "DX/2"? That was when Intel made the CPU:FSB ratio fixed at 2.0 instead of 1.0!) On Moto/IBM chips, I'm not sure when the last fixed-ratio line of chips was put out, but I imagine it was quite a while back.
You see, if your FSB changes with every speed bump on the CPU, then you have to engineer that change into the System Controller (or North Bridge, depending on which architecture you're talking about) chip. Back in the bad old days of fixed ratios, moving from a slower chip to a faster chip - an occurence we take largely for granted these days - meant throwing out or fire-saling the old motherboards (the CPUs were soldered on anyways), designing or augmenting the silicon design of your chipset north bridge, and potentially redesigning your motherboard. Because of the changes required to support a speed bump, often they weren't all done correctly, and motherboards shipped with either the CPUs or the peripheral ISA connectors clocked at the wrong speed.
That paradigm is wasteful, error-prone, and expensive for everyone but the CPU manufacturer. It also forces the CPU manufacturer to not ship minor speed bumps, but rather concentrate on much more substantial "bumps" much less often (ie, 386-16, 386-20 (+25%), 386-25 (+20%) ... much wider differences there than 2.6GHz, 2.8GHz (+7.7%), 3.06 (+9.3%)), and still have major OEM-relations projects that ended up costing the CPU manufacturer money and resources to offset the costs to their OEMs.
Now, given that the 1.8GHz 970 has an FSB of 900 MHz, it is patently obvious that the CPU:FSB ratio
on that particular part is shipped at 2.0. However, given the 970 press release which gives a range of CPU speeds (1.8-2.5GHz) and a single FSB speed (800MHz effective, which we know from other documentation is 900MHz - overhead), I do not see any reason to conclude that the 2.5GHz part will have a 1.25GHz FSB.
In fact, to do so would cause both IBM and Apple massive re-engineering headaches and be, to be quite frank, absolutely stupid.
The only bit I can see above which might lead one to believe that the 970 has a 2:1 CPU:FSB ratio is David Wang's aside:
Each link runs at 900 MHz (1.8 GHz CPU core. the interface link runs at integer fraction of the CPU core, in this case 1/2)
If it is set at a single integer ratio (Intel uses two integers, allowing for non-integral overall ratios like 21/4) then the 2.5GHz chip would have to use either 2.0 (yielding the awkward 1.25GHz FSB) or 3.0 (yielding the even more awkward 833MHz FSB). In fact, given an integral constraint, I would have expected the "next" speed bump to be at 2.7GHz, retaining the 900MHz FSB, albeit with a massive performance difference between consecutive speed-bump chips (I am assuming that with the 1.8-2.5GHz range advertised IBM is planning on having a few speed steps between the two extremes to allow buyers flexibility).
I suppose, if this is really true (single-integer ratios) then given that reality an FSB of 1.25GHz would certainly be preferable to a "downgraded" 833MHz FSB from the consumer perspective, but would require something just short of a bona-fide miracle on the interconnect side of things to get a motherboard using this higher-frequency chip out the door. Note that with CPU frequency ramp-up escalating in general far more steeply than inter-processor interconnect frequencies, you'll very soon have to do one of the following:
1) Release a speed bump CPU with a slower FSB (say, the 2.7GHz chip with 900MHz FSB), which would quite likely make the "faster" chip perform worse than the ostensibly cheaper "slower" chip.
2) Introduce a "massive" speed bump in CPU frequency while keeping the FSB constant (2.5GHz->3.75GHz!). While consumers would "love" this, remember that this is incredibly wasteful from a CPU manufacturing standpoint, as for every, say 100 3.75GHz CPUs you might be producing 1000 CPUs that would have functioned quite well at 3.0GHz, and had you implemented a more reasonable dual-integer multiplier strategy you would have been able to sell those chips for much more than you're able to sell them rated at only 2.5GHz, or you will have to up the multiplier to 3 on those 3.0GHz chips, have a slower 1GHz FSB, and still sell them for about what the 2.5GHz chips are selling, given that overall end-user performance would probably even out if not be a bit worse. Can you imagine Intel not having produced any chips between 2.0GHz and 3.0GHz? Intel's market share certainly would not be where it is today had Intel used such an approach!
3) Force your OEMs (Apple and IBM now, but IBM wants others too) to perform chipset miracles heretofore unseen in the computing industry.
Given these highly-unsatisfactory options, I am inclined to believe that David Wang either mispoke or is somehow misinformed. IBM's too smart to stick with a design limitation that's been overcome cheaply and easily for over 10 years.