PC Architecture. A book by Michael B. Karbo

Copyright Michael Karbo and ELI Aps., Denmark, Europe.


  • Next chapter.
  • Previous chapter.


    Chapter 35. Different types of RAM

    RAM works in synch with the system bus, as I described in the previous chapter. But what is RAM actually? RAM is a very central component in a PC, for without RAM there can be no data processing. RAM is simply the storage area where all software is loaded and works from.

    Silicon storage area

    RAM is made in electronic chips made of so-called semiconductor material, just like processors and many other types of chips.

    In RAM, transistors make up the individual storage cells which can each “remember” an amount of data, for example, 1 or 4 bits – as long as the PC is switched on.

    Figure 126. Manufacturing RAM.

    Normal RAM is dynamic (called DRAM), and requires constant electronic recharging to preserve its data contents. Without power, all RAM cells are cleared. RAM is very closely linked to the CPU, and it is very important to both have enough RAM, and to have fast RAM. If both conditions are not met, the RAM will be a bottleneck which will slow down the PC. What follows is an introduction to RAM, as it is used in modern PC’s. After this I will discuss the various types I more detail.

    Several types

    At the time of writing, there are several types of RAM, which are quite different. This means that they normally cannot be used on the same motherboard – they are not compatible.

    However, some motherboards can have sockets for two types of RAM. You typically see this during periods where there is a change taking place from one type of RAM to another. Such motherboards are really designed for the new type, but are made “backwards compatible”, by making room for RAM modules of the old type.

    The RAM types on the market at the moment are:

    RAM
    type

    Pins

    Width

    Usage

    SD RAM

    168

    64 bit

    Older and slower type. No use.

    Rambus RAM

    184

    16 bit

    Advanced RAM. Only used for very few Pentium 4’s with certain Intel chipsets.

    DDR RAM

    184

    64 bit

    A faster version of SD RAM.
    Used both for Athlon and
    Pentium 4’s. 2,5 Volt.

    DDR2
    RAM

    240

    64 bit

    New version of DDR RAM with higher clock frequencies. 1,8 Volt.

    Figure 127. Very different types of RAM.

    In any case, there is a lot of development taking place in DDR. A number of new RAM products will be released within the next few years. The modules are packaged differently, so they cannot be mixed. The notches in the sides are different as the he bottom edges of the modules are.

    SDRAM is an old and proven type, which is used in the majority of existing PC’s. DDR RAM is a refinement of SDRAM, which is in reality double clocked. Rambus RAM is an advanced technology which in principle is superior to DDR RAM in many ways. However, Rambus has had a difficult birth. The technology has been patented by Rambus Inc., which has been involved in many legal suits. A number of important manufacturers (such as VIA) have opted out of Rambus, and only develop products which use DDR RAM. With the new DDR2 standard, there is no obvious need for Rambus RAM.

    Notes on the physical RAM

    RAM stands for Random Access Memory. Physically, RAM consists of small electronic chips which are mounted in modules (small printed circuit boards). The modules are installed in the PC’s motherboard using sockets — there are typically 2, 3 or 4 of these. On this motherboard there are only two, and that’s a bit on the low side of what is reasonable.

    Figure 128. RAM modules are installed in sockets on the motherboard. In the background you see the huge fan on a Pentium 4 processor.

    Each RAM module is a rectangular printed circuit board which fits into the sockets on the motherboard:

    Figure 129. A 512 MB DDR RAM module.

    On a module there are typically 8 RAM chips which are soldered in place. There can also be 16 if it is a double-sided module. Below is a single RAM chip:

    Figure 130.
    A single RAM chip, a 256 megabit circuit.

     

    On the bottom edge of the module you can see the copper coated tracks which make electrical contact (the edge connector). Note also the profile of the module; this makes it only possible to install it one way round and in the right socket.

    Figure 131. Anatomy of the SD RAM module.

    The notches in the sides of the module fit the brackets or “handles” which hold the module in place in the motherboard socket:

    Module or chip size

    All RAM modules have a particular data width, which has to match the motherboard, chipset, and ultimately the CPU. Modules using the two most common RAM types, SD and DDR RAM, are 64 bits wide.

    The modules are built using chips which each contain a number of megabits. And since each byte needs 8 bits, more than one chip is needed to make a module. Look at the RAM chip in Fig. 130. You can see the text ”64MX4”:

    Figure 132. Text on a RAM chip.

    The text in Fig. 132 indicates that the chip contains 64 x 4 mega bits of data, which is the same as 256 megabits. If we want to do some calculations, each chip contains 1024 x 1024 x 64 = 67,108,864 cells, which can each hold 4 bits of data. That gives 268,435,456 bits in total, which (when divided by 8) equals 33,554,432 bytes = 32,768 KB = 32 MB.

    So a 64MX4 circuit contains 32 MB, and is a standard product. This type of chip is used by many different manufacturers to make RAM modules. Modules are sold primarily in four common sizes, from 64 to 512 MB:

    Number of chips per module

    Module size

    2 (single-sided)

    2 x 256 Mbit = 64 Mbyte

    4 (single-sided)

    4 x 256 Mbit = 128 Mbyte

    8 (single-sided)

    8x 256 Mbit = 256 Mbyte

    16 (double-sided)

    16 x 256 Mbit = 512 Mbyte

    Figure 133. The module size is determined by what RAM chips are used.

    RAM speeds

    For each type of RAM, there are modules of various sizes. But there are also modules with various speeds. The faster the RAM chips are, the more expensive the modules.


    Name

    Type

    PC700

    2x 356 MHz Rambus RAM

    PC800

    2x 400 MHz Rambus RAM

    PC1066

    2 x 533 MHz Rambus RAM

    DDR266 el. PC2100

    2x 133 MHz DDR RAM

    DDR333 el. PC2700

    2x 166 MHz DDR RAM

    DDR400 el. PC3200

    2x 200 MHz DDR RAM

    DDR2-400

    400 MHz DDR2 RAM

    DDR2-533

    533 MHz DDR2 RAM

    DDR2-667

    667 MHz DDR2 RAM

    Figure 134. The speed is measured in megahertz, but it is not possible to compare directly between the three types of RAM shown in the table. The names shown are those which are being used on the market at the time of writing, but they may change.

    RAM technologies

    Let’s look a little more closely at the technology which is used in the various types of RAM.

    In the old days

    Back in the 1980’s, DRAM was used. This was dynamic RAM, which was relatively slow. It was replaced by FPM (Fast Page Mode) RAM which was also dynamic, only a bit faster.

    Originally, loose RAM chips were installed directly in large banks on the motherboard. Later people started combining the chips in modules. These came in widths of 8 bits (with 30 pins) and 32 bits (with 72 pins). The 32-bit modules were suited to the system bus for the 80486 processor, which was also 32 bits wide.

    Figure 135. Older RAM modules.

    FPM RAM could not run any faster than 66 MHz, but that was fine for the system bus clock frequency in the original Pentium processors.

    After FPM came EDO RAM (Extended Data Out). EDO is a bit faster than FPM because the data paths to and from the RAM cells have been optimised. The gain was a 3-5 % improvement in bandwidth. The clock frequency could be increased to 75 MHz, but basically, EDO is not very different to FPM RAM.

    When Intel launched the Pentium processor, there was a change to using the 64 bit wide RAM modules (with 168 pins, as in Fig. 127, which are still used for SDRAM today.

    Figure 136. An old motherboard with sockets for both 64-bit and 32-bit RAM modules. From the transition period between EDO and SDRAM.

    SDRAM

    The big qualitative shift came in around 1997, when SDRAM (Synchronous DRAM) began to break in. This is a completely new technology, which of course required new chipsets. SDRAM, in contrast to the earlier types of RAM, operates synchronously with the system bus.

    Data can (in burst mode) be fetched on every clock pulse. Thus the module can operate fully synchronised with (at the same beat as) the bus – without so-called wait states (inactive clock pulses). Because they are linked synchronously to the system bus, SDRAM modules can run at much higher clock frequencies.

    The 100 MHz SDRAM (PC100) quickly became popular, and with new processors and chipsets, the speed was brought up to 133 MHz (PC133).

    Another innovation in SDRAM is the small EEPROM chip called the Serial Presence Detect chip, which is mounted on the modules. It is a very small chip containing data on the modules speed, etc.

    Figure 137. The motherboard BIOS can now read SDRAM module specifications directly.

    DDR RAM

    It is expensive to produce fast RAM chips. So someone hit on a smart trick in 1999-2000, which in one blow made normal RAM twice as fast. That was the beginning of DDR RAM (Double Data Rate). See the module in Fig. 131.

    In DDR RAM, the clock signal is used twice. Data is transferred both when the signal rises, and when it falls. This makes it possible to perform twice as many operations per clock pulse, compared to earlier RAM types:

    Figure 138. DDR RAM sends off two data packets for each clock pulse.

    Timings

    DDR RAM exist in many versions, with different the clock frequencies and timings. The timing indicates how many clock cycles there are wasted, when the motherboard waits for the memory to deliver the requested data.

    With smaller numbers, we have better timings and the CPU having fewer idle clock cycles. You may find memory modules of the same clock frequency but with different timings. The better timing, the more expensive the RAM module is.

    Ordinary pc users need not to speculate in special RAM with fast timing; this is primary sold to gamers and over-clockers, who tries to achieve the maximum performance from their motherboards.

    Module

    Clock frequency

    Timing

    PC2100

    2 x 133 MHz

    2-2-2

    PC 2700

    2 x 166 MHz

    2-2-2
    2-3-3

    PC 3200

    2 x 200 MHz

    2-3-2
    2-3-3

    PC 3700

    2 x 233 MHz

    3-4-4

    PC 4000

    2 x 250 MHz

    3-4-4

    PC 4400

    2 x 275 MHz

    3-4-4

    Note that different timing means that the gain in terms of increased bandwidth doesn’t quite match the clock speed. It is a bit less.

    Next generation RAM

    In the beginning the problem with DDR RAM, was that the RAM modules were poorly standardized. A module might work with a particular motherboard, but not with another. But this – which was typical for a new technological standard – is not a big problem anymore. Intel was initially against DDR RAM. They claimed that Rambus was a much better design, and that they wouldn’t use DDR RAM. But consumers wanted DDR RAM, which Intel’s competitors were able to deliver, and in the end even Intel had to give in. At the end of 2001, the i845 chipset was released, which uses DDR RAM for the Pentium 4, and later we had the i865 and i875 chip sets, which use dual channel DDR RAM.

    The next generation of RAM is the DDR2, which is a new and better standardized version of DDR using less power. The DDR2 modules operates at higher clock speeds due to better design with higher signal integrity and a more advanced internal data bus. The first chip sets to use DDR2 was Intel’s i915 and i925. Later DDR4 is expected with clock frequencies of up to 1,6 GHz!

    Rambus RAM

    Rambus Inc., as already mentioned, has developed a completely new type of RAM technology. Rambus uses a completely different type of chip, which are mounted in intelligent modules that can operate at very high clock frequencies. Here is a brief summary of the system:

  • The memory controller delivers data to a narrow high-speed bus which connects all the RDRAM modules in a long series.

  • The modules contain logic (Rambus ASIC), which stores the data in the format the chips use.

  • Data is written to one chip at a time, in contrast to SDRAM where it is spread across several chips.

  • The modules work at 2.5 volts, which is reduced to 0.5 volts whenever possible. In this way, both the build up of heat, and electromagnetic radiation can be kept down. They are encapsulated in a heat conducting, aluminium casing.

    Rambus RAM thus has a completely new and different design. The modules are only 16 bits wide. Less data is transferred per clock pulse, but the clock frequencies are much higher. The actual Rambus modules (also called RIMM modules) look a bit like the normal SDRAM modules as we know them. They have 184 pins, but as mentioned, the ships are protected by a heat-conducting casing:

    Figure 139. Rambus module.

    As the advanced Rambus modules are quite costly to produce, the technology is on its way out of the market.

    Advice on RAM

    RAM can be a tricky thing to work out. In this chapter I will give a couple of tips to anyone having to choose between the various RAM products.

    Bandwidth

    Of course you want to choose the best and fastest RAM. It’s just not that easy to work out what type of RAM is the fastest in any given situation.

    We can start by looking at the theoretical maximum bandwidth for the various systems. This is easy to calculate by multiplying the clock frequency by the bus width. This gives:

    Module type

    Max.
    transfer

    SD RAM, PC100

    800 MB/sec

    SD RAM,  PC133

    1064 MB/sec

    Rambus, PC800

    1600 MB/sec

    Rambus, Dual PC800

    3200 MB/sec

    DDR 266 (PC2100)

    2128 MB/sec

    DDR 333 (PC2700)

    2664 MB/sec

    DDR 400  (PC3200)

    3200 MB/sec

    DUAL DDR PC3200

    6400 MB/sec

    DUAL DDR2-400

    8600 MB/sec

    DUAL DDR2-533

    10600 MB/sec

    Figure 140. The highest possible bandwidth  (peak bandwidth) for the various types of RAM.

    However, RAM also has to match the motherboard, chipset and the CPU system bus. You can try experimenting with overclocking, where you intentionally increase the system bus clock frequency. That will mean you need faster RAM than what is normally used in a given motherboard. However, normally, we simply have to stick to the type of RAM currently recommended for the chosen motherboard and CPU.

    RAM quality

    The type of RAM is one thing; the RAM quality is something else. There are enormous differences in RAM prices, and there are also differences in quality. And since it is important to have a lot of RAM, and it is generally expensive, you have to shop around.

    One of the advantages of buying a clone PC (whether you build it yourself or buy it complete) is that you can use standard RAM. The brand name suppliers (like IBM and Compaq) use their own RAM, which can be several times more expensive than the standard product. The reason for this is that the RAM modules have to meet very specific specifications. That means that out a particular production run, only 20% may be “good enough”, and that makes them expensive.

    Over the years I have experimented with many types of RAM in many combinations. In my experience, for desktop PC’s (not servers), you can use standard RAM without problems. But follow these precautions:

  • Avoid mixing RAM from various suppliers and with various specifications in the same PC – even if others say it is fine to do so.

  • Note that the RAM chips are produced at one factory, and the RAM modules may be produced at another.

  • Buy standard RAM from a supplier you trust. You need to know who manufactured the RAM modules and the seller needs to have sold them over a longer period of time. Good brands are Samsung, Kingston and Corsair.

  • The modules have to match the motherboard. Ensure that they have been tested at the speed you need to use them at.

  • The best thing is to buy the motherboard and RAM together. It’s just not always the cheapest.

  • Avoid modules with more than 8 chips on each side.

    How much RAM?

    RAM has a very big impact on a PC’s capacity. So if you have to choose between the fastest CPU, or more RAM, I would definitely recommend that you go for the RAM. Some will choose the fastest CPU, with the expectation of buying extra RAM later, “when the price falls again”. You can also go that way, but ideally, you should get enough RAM from the beginning. But how much is that?

    If you still use Windows 98, then 256 MB is enough. The system can’t normally make use of any more, so more would be a waste. For the much better Windows 2000 operating system, you should ideally have at least 512 MB RAM; it runs fine with this, but of course 1024 MB or more is better. The same goes for Windows XP:

     

     

    128 MB

    256 MB

    512 MB

    1024
    MB

    Windows 98

    **

    ***

    Waste

    Waste

    Windows 2000

    *

    **

    ***

    ****

    Windows XP

     

    *

    ***

    ****

    Figure 141. Recommended amount of PC RAM, which has to be matched to the operating system.

    The advantage of having enough RAM is that you avoid swapping. When Windows doesn’t have any more free RAM, it begins to artificially increase the amount of RAM using a swap file. The swap file is stored on the hard disk, and leads to a much slower performance than if there was sufficient RAM in the PC.

    RAM addressing

    Over the years there have been many myths, such as ”Windows 98 can’t use more than 128 MB of RAM”, etc. The issue is RAM addressing.

    Below are the three components which each have an upper limit to how much RAM they can address (access):

  • The operating system (Windows).

  • The chipset and motherboard.

  • The processor.

    Windows 95/98 has always been able to access lots of RAM, at least in theory. The fact that the memory management is so poor that it is often meaningless to use more than 256 MB, is something else. Windows NT/2000 and XP can manage several gigabytes of RAM, so there are no limits at the moment.

    In Windows XP, you have to press Control+Alt+Delete in order to select the Job list. A dialog box will then be displayed with two tabs, Processes and Performance, which provide information on RAM usage:

    Under the Processes tab, you can see how much RAM each program is using at the moment. In my case, the image browser, FotoAlbum is using 73 MB, Photoshop, 51 MB, etc., as shown in Fig. 143.

    Modern motherboards for desktop use can normally address in the region of 1˝-3 GB RAM, and that is more than adequate for most people. Server motherboards with special chipsets can address much more.

    Figure 143. This window shows how much RAM each program is using (Windows XP).

    Standard motherboards normally have a limited number of RAM sockets. If, for example, there are only three, you cannot use any more than three RAM modules (e.g. 3 x 256 MB or 3 x 512 MB).

    CPU’s have also always had an upper limit to how much RAM they can address:

     

    Processor

    Address bus
    width (bits)

    Maximum
    System RAM

    8088, 8086

    20

    1 MB

    80286, 80386SX

    24

    16 MB

    80386DX, 80486, Pentium, Pentium MMX, K5, K6 etc.

    32

    4 GB

    Pentium Pro, Pentium II, III
    Pentium 4

    36

    64 GB

    Figure 144. The width of the CPU’s address bus determines the maximum amount of RAM that can be used.

    Let me conclude this examination with a quote. It’s about RAM quantity:

    ”640K ought to be enough for anybody.”
    Bill Gates, 1981.


  • Next chapter.
  • Previous chapter.