Memory Explained
In order to enable computers to work faster, there are several types of memory available today. Within a single computer there is no longer just one type of memory. Because the types of memory relate to speed, it is important to understand the differences when comparing the components of a computer. So get your memory ready as the following will explain what all those crazy abbreviations mean. But first, here is a brief description of how memory works. All actual computing starts with the the CPU (Central Processing Unit). The chipset supports the CPU and contains several controllers that control how information travels between the CPU and other components in the PC. The memory controller is part of the chipset and establishes the information flow between memory and the CPU. A bus is a data path that consists of parallel wires and connects the CPU, memory and other devices. The bus architecture determines how much and how fast data can move around the motherboard. The memory bus goes from thememory controller to the computer's memory sockets. Newer systems have a frontside bus (FSB) from the CPU to main memory and a backside bus (BSB) from the memory controller to L2 cache. For the PC to get information... The CPU sends a request to the memory controller to memory and gets a report back of when the information will be available. This cycle can vary in length according to memory speed as well as other factors, such as bus speed. Residing on the motherboard, the system clock sends a signal to all components, just like a metronome ticking. Each click of the clock represents a clock cycle. A clock running at 100Mhz represents 100 million clock cycles per second. Every action is timed by the clock where different actions require a different number of clock cycles. Many people assume that the speed of the processor is the speed of the computer. Most of the time, the system bus and other components run at different speeds. Because all information processed by the CPU is written or read from memory, the performance of a system is dramatically affected by how fast information can travel between the CPU and memory. Therefore, faster memory technology contributes greatly to the overall system performance. Cache memory is a relatively small amount (normally less than 1 MB) of high speed memory and resides very close to the CPU. It is designed to supply the CPU with the most frequently requested data. It takes a fraction of the time, compared to normal memory, to access cache memory. The concept is that 20% of the time, what is needed is in cache. The cache memory tracks instructions, putting the most frequent used instruction at the top of the list. Once the cache is full, the lowest need is dropped. Today, most cache memory is incorporated in the CPU. It can also be located just outside of the CPU. Cache that is closest to the CPU is labeled Level 1, the next closest Level 2, etc. Interleaving is a process in which the CPU alternates between two or more memory banks. Every time the CPU addresses a memory bank, the bank needs about one clock cycle to reset. The CPU can save processing time by addressing a second bank while the first bank is resetting. PCB (Printed Circuit Board) The green board that holds the memory chips is made up of several layers. Each layer contains traces and circuitry to control the movement of data. Usually, higher quality memory modules use more layers. The more layers, the more space there is between traces. With more space between traces, the module has less chance of noise interference and is more reliable. Traces (Internal Trace Layer) Think of traces as roads that data travels on. The width and curvature as well as the distance between affect both the speed and reliability. Contact Fingers The contact fingers (connections or leads) are used to plug the memory chips into the module. Contacts can either be tin or gold. Gold is a better conductor than tin, but more expensive. To help avoid corrosion, It's always best to match the metal of the module to the metal of the socket. Chip Packaging This is the material coating around the actual silicon. Today's most common packaging are. . . DIP (Dual In-Line Package) This type of packaging was used when memory was installed directly on the computer's system board. It installed into holes extending into the surface of the PCB and could either be soldered or inserted into sockets. SOJ (Small Outline J-Lead) This type of packaging was used for surface mount components where they mounted directly onto the surface of the PCB. TSOP (Thin Small Outline Package) This is also a surface mount design and was first used to make thin credit card modules for notebook computers. CSP (Chip Scale Package) CSP doesn't use pins to connect to the board. It uses electrical connections to the board on the underside of the package. RDRAM chips utilize this type of packaging. Chip Stacking For higher capacity modules, it is necessary to stack chips on top of one another. Stacking can be internally (not visible) or externally (visible). SIMM (Single In-line Memory Modules) SIMMs are used to store a single row of DRAM, EDO or BEDO chips where the module is soldered onto a PCB. One SIMM can contain several chips. When you add more memory to a computer, most likely you are adding a SIMM. The first SIMMs transferred 8 bits of data at a time and contained 30 pins. When CPU's began to read 32-bit chunks, a wider SIMM was developed and contained 72 pins. 72 pin SIMMS are 3/4" longer than 30 pin SIMMs and have a notch in the lower middle of the PCB. 72 pin SIMMs install at a slight angle. DIMM (Dual In-line Memory Modules) DIMMs allow the ability to have two rows of DRAM, EDO or BEDO chips. They are able to contain twice as much memory on the same size circuit board. DIMMs contain 168 pins and transfer data in 64 bit chunks. DIMMs install straight up and down and have two notches on the bottom of the PCB. SO DIMM (Small Outline DIMM) SO DIMMs are commonly used in notebooks and are smaller than normal DIMMs. There are two types of SO DIMMs. Either 72 pins and a transfer rate of 32 bits or 144 pins with a transfer rate of 64 bits. RDRAM - RIMM Rambus, Inc, in conjunction with Intel has created new technology, Direct RDRAM, to increase the access speed for memory. RIMMs appeared on motherboards sometime during 1999. The in-line memory modules are called RIMMs. They have 184 pins and provide 1.6 GB per second of peak bandwidth in 16 bit chunks. As chip speed gets faster, so does the access to memory and the amount of heat produced. An aluminum sheath, called a heat spreader, covers the module to protect the chips from overheating. SO RIMM Similar in appearance to a SO DIMM and uses Rambus technology. DRAM (Dynamic Random Access Memory) One of the most common types of computer memory (RAM). It can only hold data for a short period of time and must be refreshed periodically. DRAMs are measured by storage capability and access time. * Storage is rated in megabytes (8 MB, 16 MB, etc). * Access time is rated in nanoseconds (60ns, 70ns, 80ns, etc) and represents the amount of time to save or return information. With a 60ns DRAM, it would require 60 billionths of a second to save or return information. The lower the nanospeed, the faster the memory operates. * DRAM chips require two CPU wait states for each execution. * Can only execute either a read or write operation at one time. FPM (Fast Page Mode) At one time, this was the most common and was often just referred to as DRAM. It offered faster access to data located within the same row. EDO (Extended Data Out) Newer than DRAM (1995) and requires only one CPU wait state. You can gain a 10 to 15% improvement in performance with EDO memory. BEDO (Burst Extended Data Out) A step up from the EDO chips. It requires zero wait states and provides at least another 13 percent increase in performance. SDRAM (Static RAM) Introduced in late 1996, retains memory and does not require refreshing. It synchronizes itself with the timing of the CPU. It also takes advantage of interleaving and burst mode functions. SDRAM is faster and more expensive than DRAM. It comes in speeds of 66, 100, 133, 200, and 266MHz. DDR SDRAM (Double Data Rate Synchronous DRAM) Allows transactions on both the rising and falling edges of the clock cycle. It has a bus clock speed of 100MHz and will yield an effective data transfer rate of 200MHz. Direct Rambus Extraordinarily fast. By using doubled clocked provides a transfer rate up to 1.6GBs yielding a 800MHz speed over a narrow 16 bit bus. Cache RAM This is where SRAM is used for storing information required by the CPU. It is in kilobyte sizes of 128KB, 256KB, etc. Other Memory Types VRAM (Video RAM) VRAM is a video version of FPM and is most often used in video accelerator cards. Because it has two ports, It provides the extra benefit over DRAM of being able to execute simultaneous read/write operations at the same time. One channel is used to refresh the screen and the other manages image changes. VRAM tends to be more expensive. Flash Memory This is a solid-state, nonvolatile, rewritable memory that functions like RAM and a hard disk combined. If power is lost, all data remains in memory. Because of its high speed, durability, and low voltage requirements, it is ideal for digital cameras, cell phones, printers, handheld computers, pagers and audio recorders. Shadow RAM When your computer starts up (boots), minimal instructions for performing the startup procedures and video controls are stored in ROM (Read Only Memory) in what is commonly called BIOS. ROM executes slowly. Shadow RAM allows for the capability of moving selected parts of the BIOS code from ROM to the faster RAM memory.
In order to ensure that memory is working correctly, data integrity, there are two primary means - parity and error correction code (ECC) or no checking at all - non-parity. Parity This is the most common used method. It can detect errors, but not correct them. ECC (Error Correction Code) ECC can detect and correct single-bit errors. It is used in high-end PC's and servers. Non-Parity Because there has been an increased quality of memory components and an infrequency of errors, more and more manufacturers do no include error checking capabilities. This also lowers the cost of the PC. Prior to SDRAM, speed was expressed in terms of nanoseconds (ns). This measured the amount of time it takes the module to deliver a data request. Therefore, the lower the nanosecond speed, the faster. Typical speeds were 90, 80, 70 and 60ns. Older 486 machines may have 80 or 90. More recent Pentiums will have 60 or 70. Often, the last digit of a memory part number will represents the speed such as -6 = 60ns. SDRAM speed is measured in megahertz (MHz). Speed markings on the memory chips may still specific nanoseconds, but in this case in represents the number of nanoseconds between clock cycles. To add to the confusion the markings on t he chips don't match the Mhz value. Here is a conversion chart.
To calculate bytes per second you need to know the Bus Width and Bus Speed of your PC. The first thing to remember is 8-bits = 1 byte. If you have a 64-bit bus, than 8 bytes of information can be transferred at one time. (64 / 8 bits = 8 bytes) If your bus speed is 100Mhz (100 million clock cycles per second) and the bus width is 1 byte wide, the speed is 100 MB's per second. With a 64-bit width, the speed is 800 MBs per second (64 / 8 * 100,000,000) Rambus modules are measured in megabytes per second. Rambus modules are either 400 or 300Mhz. Because they send two pieces of information every clock cycle, you get 800 or 600Mhz. They have a 16-bit bus width or 2 bytes (16/8). The 400Mhz module speed is 1600MB a second or 1.6GB a second. (400,000,000 * 2) * 2. The 300Mhz module provides 1.2GBs a second. If you are running Windows 95 or 98, a minimum of 16 MBs of memory is necessary. If you have several applications open at once, you will find by increasing your memory, everything will run faster. Currently the cost for adding additional memory is very low. Installation of memory is also fairly simple. It does not require any reconfiguration.The difficult part is determining what type of memory you need.
More information on memory determination... Looking Inside | Check the Manual | Identification | Still not sure * FPM ? Fast Page - If you have a 486, you probably have FPM * EDO ? Extended Data Out - If you have an early Pentium system, you probably have EDO * SDRAM - If you have a Pentium or Celeron system purchased in 1999, you probably have SDRAM Memory modules plug into a socket on the motherboard. There are three socket types. * SIMM ? 30 pin ? 3 inches in length * SIMM ? 72 pin? 4 inches in length * DIMM ? 168 pin ? 5 inches in length Most older 486 machines will use 30 pin modules. Later model 486 and Pentium machines will probably use 72 pin modules. More recent Pentium machines may have 168 pin. Memory sizes increase by the power of 2. This results in sizes of 1, 2, 4, 8, 16, 32, 64, 128, 256 MBs. * On some older 486 machines, one memory module can be added at a time. * On most Pentium machines, modules must be added in pairs. Each pair must be of the same size * SDRAM modules can be added one at a time. For example, if you have 8 MBs of memory on a Pentium, you have two 4 MB modules. To increase to 16 MBs, you need to add two more 4 MB modules. To increase to 24 MBs, you need to add two 8 MB modules. Now that you know the parameters, how do you determine which type you need? Looking inside the computer will not provide all of the information. It will confirm how many modules you currently have. You can also confirm the type and quantity of open sockets. If you only have four sockets and each socket contains a module, you will have to replace some of the existing memory modules. The other place to find the correct information is your owner?s manual. The manufacturer should have listed the type of memory required. You will need to determine the parity and speed. Now that you have the necessary information, you find an ad for memory and still you may not be able to determine which modules you need. Why? Because the computer industry thrives on confusion and abbreviations. Here?s how to interpret the coding scheme. 30 pin modules For 30 pin modules you will see something like * 1 x 9-60 * 4 x 9-70 * 4 x 8-70 The first number is the size in MB?s. In our example this would be 1MB or 4MB. The second number represents parity. The value 9 represents parity and 8 represents non-parity. (Of course that makes a lot of sense!) The 9 or 8 also identifies that it is a 30 pin module. The third value represents the speed. 72 pin modules For 72 pin modules you will see something like * 1 x 32-60 * 2 x 32-70 * 4 x 36-60 * 8 x 36-70 Just like the 30 pin modules, the first value represents the size, EXCEPT it only represents ? of the total memory size. Don?t ask why, just accept it. So the value of 4 represents a 16 MB (4 x 4) module. A value of 8 represents a 32 MB (4 x 8) module. The second value, again just like the 30 pin, represents parity and the number of pins. 36 is used for parity and 32 for non-parity. You aren?t asking why again, are you? The third value represents the speed, the same as the 30 pin. If you still are not sure what type of memory you need, call the manufacturer or call us. We have a database of about 90% of all manufactured computers that can provide us with the type of memory and upgrade options. You will need to provide the manufacturer and model of your PC. The more memory the better. |