64 Bits From Hell

(This column first appeared in Vol. 6-1 of the Panacea Perspective, circa May, 1994)

The latest request we’ve seen on the electronic airwaves have been from users looking for 64-bit PCs to run those newfangled, fast 64-Bit graphics boards. Why? Because with the waves of “lotsa-bits is faster than not-so-many-bits” mania that periodically sweep across our industry, not many people are well informed enough to be able to distinguish between various bit types, or even understand what they all mean. And all this just when you thought all bits were just 0s and 1s!

By our count, there appear to be four distinct types of bits intermingled in articles and marketing literature:

  • CPU Bits: These bits are used to describe the type of CPU you’re dealing with, generally reflecting its addressing capability, i.e. the 386, and all 486 and Pentium CPUs are 32-bit chips because they can internally address up to 32- bits worth of addresses (2^32 = 4 Gigabytes of addressing).
  • Bus Data Bits: These bits define the amount of data that can be processed by a device at a time across a bus. For example, a 386SX CPU addresses 32 CPU bits internally, but only handles 16 bus bits across the bus. Really old VGA boards are generally 8 bus data bit boards because they could only handle 8 bits of data across the bus at a time, while newer graphics boards can be (all in bus data bits) 16-bit (ISA), 32-bit (EISA, VL-Bus, and PCI), or 64-bit (VL- Bus 2.0 and PCI).
  • Memory Data Bits: Even more confusing, memory data bits refer to the amount of data that can be transferred to/from local memory, relative to a CPU or graphics processor. A Pentium CPU, while being a 32 CPU bit device, supports 64 memory bit cycles to load its on-chip caches. The new breed of “64-bit” graphics chips support 64 memory bit wide cycles to transfer data within their on-board memory, but not necessarily 64 bus bit transfers to or from the board across the system’s bus.
  • Graphic Bits: These cause lots of confusion, because users get them totally mixed up with both types of data bits. Graphic Bits describe the color capability or depth of a graphics board. Ideally, these bits should be differentiated from the other by referring to them as “Bits per pixel”, or “BPP” for short. The BPP of a graphics device in a given graphics mode defines the range of colors that device can support. For example, an 8 BPP graphics mode supports 2^8 (or 256) colors, while the 24-bit (per pixel) and 32 BPP boards both support approximately 16.8 million possible colors (2^24 in both cases – the extra 8 bits for 32 BPP pixels are usually reserved for non-color related uses). With the exception of some really expensive Pixar machines and other similar equipment used to generate film quality images (which may go as high as 48 BPP), today’s graphics hardware peaks at 32 BPP.

Back to the 64-bit trauma, as you can tell, things get kind of muddy. When a graphics hardware company announces a new 64-bit part, it needs to be made clear what type of bits they are referring to. Intelligent observers will realize they aren’t talking about graphics bits or CPU bits, but a distinction still needs to be made between Memory and Bus Bits.

Let’s take a look at the value behind each kind.

64 Memory Bits
As best we can tell, all of today’s “64-bit Graphics” products fall into this category.

Having a 64-bit memory bandwidth (unfortunately this is sometimes also referred to as a “64-bit memory bus”) helps a device improve its memory-to-memory operations. For a Pentium, the on-chip data cache gets loaded twice as quickly than a similar external cache on 486 systems. For graphics devices, it means that memory intensive operations, such as copying or moving large blocks of data (also known as BitBLTs) will occur faster than in more traditional 16 or 32 bit wide memory architectures.

This is great for on-board operations, especially because even ISA (16 bus data bits wide) boards will benefit, but by itself does little to improve operations which require memory to be moved across the system bus to or from the graphics device.

On the down side, the 64-bit support also means that the 64-bit devices will probably need to have at least 2MB of RAM allocated to them, with growth in 2MB chunks, based on prevailing memory chip architectures. This means slightly higher costs for 64-bit graphics boards.

64 Bus Bits
On PCs, 64-bit wide system busses are only available in two flavors: PCI 2.0 and VL-Bus 2.0. If you don’t have one (or both) of these busses in your PC, your chance of having real 64-bit bus support is nil.

However, having one or both of those busses in your system is not a guarantee of immediate performance boosts either. not all 64-bit graphics boards (i.e. with on-board 64-bit wide memory support) are 64-bit bus capable. And, even if the device is 64-bit bus capable, it doesn’t necessarily buy you a lot of extra performance. Since 486 and Pentium CPUs are still basically 32-bit parts, they really have no concept of moving a chunk of 64-bits of data around at a time. The way that the 64-bit wide data bus transfers get used is  ia a mechanism called “burst mode”, which, as the name might imply, requires a burst of data to be sent across the bus. The only time this can happen in a beneficial way is if  your system software is moving large chunks of contiguous data from the PC to the graphics board or back, something that the average PC user’s applications rarely do. If the  data isn’t contiguous, the 64-bit bus doesn’t buy you anything. Additionally, if the system software (usually a display driver or low-level application) doesn’t use certain types of  CPU instructions, burst mode will never even kick in. From what we’ve seen, this lack of burst mode support in system software is quite common.

Whether 64-bit busses will make much of an impact on real users in the next couple of years is definitely debatable. However, 64-bit memory technology shows more promise –  it is certainly inevitable on graphics boards, where it can provide a significant boost in raw pixel pumping power. And 128-bit memory devices are lurking just around the corner!