Performa and Power Mac x200 Issues

This information is about what are commonly referred to as the x200 series of Performas and Power Macs. These machines, with the exception of the Performa 6360, were all PowerPC 603 machines with severe hardware problems.

Performa 5200The afflicted series includes the 5200, 5260, 6200, 6300, and 6320.1 These machines were unique in that they represented a new minimalist form of hardware engineering – one user studied the design and called it a Quadra 630 with a PowerPC upgrade built in. The responsible CEO was Michael Spindler – well known for his minimalist thinking and slash-and-burn theories of creating false profits by selling all the capital . . . but I digress.

These machines were built around the Quadra 630 form factor. The system usually included a built-in 14.4 Global Village modem and a built-in CD-ROM drive. These were among the first Apple machines built with internal IDE drives instead of SCSI drives.

Some options available were a TV/video/cable controller and an external remote control for multimedia/TV controls. Internally, the machine contained some standard components found in all Apple models. Slots included an LC PDS/NuBus slot and a Comm Slot. There are two SIMM slots. There is one ROM/L2 cache slot (that is not upgradable).

Hardware Issues

Modem Compromises

This series has several serious hardware flaws. All machines are shipped with a plug in the modem port because the modem port is disabled when a modem card is installed in the comm slot. If the internal modem card is removed, the modem port is usable, but because all machines shipped with the internal modem, Apple scrimped on the port controller.

There is no hardware handshaking in the ports, therefore an external modem faster than 9600 baud is useless.2 There is no solution to this, and there is no 56k support for these machines. The fastest modem made for this series is the Global Village Teleport Platinum 28.8K comm slot modem. This modem is upgradable to 33.6 via a flash ROM upgrade downloadable from Global Village’s site. Good luck in finding one of these modems (I think they made less than 10,000).

There are a few external modems that use an external port controller mode where the modem provides hardware handshaking (it is usually the computer that does this). If you can find such a modem, you may be able to use a 56k connection. Global Village makes such a modem.

Memory Bottleneck

The second hardware issue is not as obvious, but it a crucial clue in solving the performance problem. While the 603 processor has a 64-bit bus, memory can be installed 32-bits at a time – the only machines Apple ever made that have a PowerPC chip but take SIMMs that aren’t paired. For those not familiar with how memory is accessed, here’s a short description of the types of memory available for the Power Mac class machines:

The standard SIMM used in Power Macs is the 72-pin variety. This SIMM has a 32-bit data path. The old Quadra series, such as the 610 or 650, used the same SIMMs. Since the Quadra 610 has a 32-bit processor, SIMMs could be installed one at a time. The processor would simply look at the first card, and after that memory had been filled, the second card would then be used. In the Quadra series, these SIMMs stacked up in memory.

In the Power Macintosh 6100, SIMMs needed to be installed in equal sized pairs. The PowerPC chip is a 64-bit chip, so for the processor to read a page of memory in a single pass, the SIMMs were treated as if they had been merged together, 32 bits each, until both SIMMs could be read at the exact same time: 32 bits from the one, the other 32 bits from the other. In this way the 6100 was able to send information from the memory chips to the processor in one single pass.

The x200 series breaks this rule. Apple used several “inventory” chips to create this board and found a great dependence on 32-bit graphics controllers, network controllers, and other ASIC chips. During the time of their production, Apple was busy still building Quadra 605 and 630 machines – the 630 holds the same form factor (CPU case) as the 6200-6320. The idea, as I interpret it, was to put the same engineering time into building a Quadra 630 and a x200 series machine by using as many of the same motherboard parts as possible to really cut costs.

Enough with the technical. What this means to the home user is simple: Because the memory path is only 32 bits wide and the processor uses 64-bit commands, it takes four processor cycles before an instruction can be completely sent to the processor. To send a 64-bit instruction, first 32 bits of that instruction must be read from memory (cycle 1) and moved into the left 32 bits of processor cache (cycle 2), then the second 32 bits of instruction must be moved into the processor cache (cycle 3), and then moved into the processor register itself for computation (cycle 4).

In a true 64-bit bus, the memory access cycle takes one step – the instruction is read from the memory directly into the processor register. On the x200 models, it takes four times longer to process anything because of the three extra cycles needed just to get information into the processor. This goes for any data coming from the processor as well.

This ends the two most simple problems with the x200 series machines. The reason that the Performa 6360 is different is that it uses DIMM memory,which is 64 bits wide. In fact, even though the 6360 uses the same case as the 6200, it more closely resembles the 6400 motherboard.

Advanced Hardware Issues with the x200 Series

There is a more advanced issue with the x200 series that cannot easily be explained without some technical knowledge. I will attempt to fill in the blanks, but the reader should beware – there are concepts here that may require further study.

Multiple Bus Speeds

Often in the Macintosh line – and especially with the Quadra series – Apple employed a policy of multiplexing sections of a motherboard. [NOTE: The IIci was Apple’s first Mac to do this.] A multiplexer acts as a gateway chip between two different sections of a motherboard that run at different speeds. It is designed to handle bottlenecks of data on the motherboard.

I suspect an example is needed, so here goes. Apple made two perfect examples of the nature of multiplexing, both the advantages and the pitfalls. The two examples are the Centris 610 and the Quadra 610.

The Centris 610 has a 20 MHz motherboard with a (sometimes optional) built-in ethernet adapter. Ethernet chipsets routinely run at 10 MHz, meaning that there is found on nearly all ethernet cards (both Mac and IBM) a clock chip by which the 10 MHz bus is created for the ethernet controller. In the Centris 610, we have no multiplexer, because we have a way of cheating. Because of the 20 MHz motherboard speed, the ethernet controller simply skips every other clock signal to create its own 10 MHz bus. Because it would be possible to actually send twice as much information to the ethernet section of the motherboard, the built-in ethernet controller also has a built-in ethernet driver (located in the Mac ROM). The software is required, because we have no hardware chip to handle the bottleneck. Therefore, the software must be good.

The Quadra 610 has a 25 MHz motherboard with a built-in ethernet adapter. Again, the ethernet chipset must run at 10 MHz, but the clock chip is a 25 MHz chip on the motherboard for the processor bus. Apple solved this in a more expensive way. They separated the ethernet bus from the processor bus, connected the two with a multiplexer chip (which has 8k of cache for bottlenecks), and put separate clock chips on each side. This requires no software handling – everything is done through the hardware.

These machines are not unique; it’s simply unique to have them based on the same motherboard. But in the x200 series, things get a bit more complicated, and there aren’t any expensive multiplexers to sort things out. Everything is stored in the ROM.

First off, the x200 machines are 75 MHz 603 motherboards. The processor runs at 75 MHz while the motherboard runs a 37.5 MHz. Well, at least part of it does. So without further adieu, here goes the show.

Based on the 33 MHz Quadra 630, the two machines use the same graphics controller chipset. This means that the graphics part of the motherboard needs to run at 33 MHz and also be 32 bits wide.

The comm slot controller is the same controller used in previous models. It’s really a network bus controller running at 10 MHz (which is why there are ethernet comm slot cards available from third party manufacturers). This requires a 10 MHz bus that’s 8 bits wide.

The memory controller is the same 32-bit PMMU used in the 630 series. This works at any bus speed and must be 32 bits wide.

Next, Apple became inventive. On the 630 machine, everything operated on a 33 MHz bus, and there was no need for placements like this. But in this particular case, we needed the 64-bit processor bus divided into two separate 33 MHz buses for compatibility with the 32-bit (or less) chips.

Left 32

To explain how the comm slot can disable the modem port, this means that the port controller no longer exists but is handled by the comm slot controller. This saved money on the motherboard but made the network controller 16 bits wide. To fill out the rest of this particular 32-bit bus, Apple also added audio and ADB (both of which are 16 bits wide but would only interfere if music was playing while someone typed). It was also expected that no one would be networking simultaneously with disk access, or that network loads wouldn’t be that high, so an 8-bit SCSI controller was also placed on the network controller bus. Please remember that in all shipped configurations the only thing on the SCSI bus was the CD-ROM.

Right 32

First of all, the memory controller is on this side, all 32 bits of it. Swapped in cycles is also the 8 bit IDE hard drive controller, as well as the 32-bit graphics controller. If that isn’t busy enough, the 16-bit video and 8-bit TV controller are all here as well.

Now I know this is really getting complex, but it all adds up. We have four separate bus speeds: 10 MHz, 12 MHz (for the IDE controller), 33 MHz, and 37.5 MHz. Here’s the chart.

 

Processor Bus            64 bits  37.5 MHz
Network/SCSI/audio/ADB  L32 bits    10 MHz
Memory Controller       R32 bits    33 MHz
Graphics Cont           R32 bits    33 MHz
IDE/Video/TV            R32 bits    12 MHz

Now, only the right 32 and the processor have real DMA (Direct Memory Access). If anything on the left side wants to talk to the right side, it must go through the PowerPC 603 CPU. This makes things very processor intensive, especially since it takes 4 cycles for the 64-bit processor to do anything due to the 32-bit buses. The clock chip on the motherboard is 25 MHz. There is only one clock chip. Everything is handled through division.

37.5 = 3/2 x 25
12.5 = 1/2 x 25
10 = 2/5 x 25
33 = 4/3 x 25
All of this – I do mean all of this – is handled through ROM routines. There are no multiplexers; they were too expensive.

Final Notes

When Apple recalled the x200 machines for bad ROMs and incompatibility with OpenTransport, it forced a ROM replacement. The new ROM drops the 33 MHz bus speed on the Graphics controller to a more manageable 30 MHz. While this slows the graphics controller, it does gain considerable stability.

One of the biggest complaints about the x200 series is slow Internet handling. For one thing, looking at the chart above, all data from either the ports or the ethernet controller must pass through the processor to get to memory, then be processed, sent to the IDE controller for cache saving, and then interpreted for graphics display.

There are symptoms to notice because of this. While a web page is loading, typed characters will be lost. When dealing with high IDE access, the graphics controller will seem to freeze. When copying to a network or downloading a file, the monitor will rarely update and will have redraw problems. Spooled print jobs will take forever if lots of processor resizing is necessary.

The only thing that this machine really handles well is watching TV. Audio breaks if you type too fast or access the hard drive. And processor speeds, while passing benchmarks well, in real world are absolutely terrible. Neither video RAM nor L2 cache are upgradable, but in the case of this machine they would only serve to further slow it down.

These machines should have been called the caveat emptor class. Buyer beware!

If you own one, the best thing you can do is find a 6360 motherboard, which doesn’t suffer from these design flaws.

Scott L. Barber <serker@earthling.net>
Pres/CEO, SERKER Worldwide, Inc.
Providing Hardware/Networking/Telecomm for 13 years

Other Resources

  1. Apple also released European versions of these, such as the 6205 and 6220. These models automatically detect 50 Hz current, so use a different power supply than the North American models. These models also came with an external 28.8 Global Village Teleport Gold modem specifically designed to provide the full handshaking these models require.
  2. A few readers note that their Macs do support hardware handshaking. Most of these are using the European version of the x200, which uses a slightly different motherboard. Some have late production versions of the North American x200 or units repaired by Apple, which have a later version of the motherboard.

Scott L. Barber posted this to Quadlist, our email list for Quadra and Centris users, on 1997.12.30. It was updated on 1998.02.22, 1998.03.03, and 2013.09.16.

searchword: x200issues