This is a complicated subject so I will try to make it as simple as possible.
There are two basic SDRAM packages: 64 Megabit and 128 Megabit.
64 Megabit is low-density and 128 Megabit is high-density.
Notice I am saying Megabit(Mb) not MegaByte(MB). To get 64 MegaBytes you use 8 x 64Mb chips: 8 bits = 1 byte so 8Mb = 1MB so 8 x 64Mb = 64MB.
To make a 128MB DIMM you need 16 x 64Mb chips. But wait, you say "My DIMM only has 8 chips."
That's because they stack the 64Mb chips on top of each other. They can stack up to 4 chips on top of each other.
So a 128MB DIMM could have 4 chips ( 4 x 4 x 64Mb = 16 x 64Mb = 128MB).
Or a 128MB DIMM could have 8 chips ( 8 x 2 x 64Mb = 16 x 64Mb = 128MB).
Or it could have 16 chips. That's 8 on each side and that's called a double-sided DIMM ( 16 x 64Mb = 128MB).
To get up to 1024MB or 1GB on a DIMM they needed to use 128Mb chips. (16 x 4 x 128Mb = 1024MB).
Some memory manufacturers use 128Mb chips on other modules also. For example ( 8 x 128Mb = 128MB) these are high-density DIMMs and won't work on many motherboards because of the way memory is addressed.
If you stick to 64Mb packages you will be okay. Most memory vendors list their memory by the density ie. 16 x 64Mb or 16 x 128Mb.
In an earlier post I mistakenly said RAMBUS used 64Mb packages. In truth, RAMBUS uses 128Mb packages.
Now that's about as clear as mud isn't it?
Hope this helps. Good luck.
John