You may have wondered why we use the notation MiB, MB, GiB, and GB to represent the capacity of an on-board memory device. For example the Genesys 2 has 1 GiB of DDR3 memory while the Nexys Video has 512 MB of DDR3 memory. The mixed use of the notations may frustrate you but this post aims to quell any distress you may have about this topic.

The SI prefixes are for strict use with powers of 10, not powers of 2 as used by computers. To solve this the International Electrotechnical Commission (IEC) came up with a new prefix standard for powers of 2, known as binary prefixes. The solution was to add an “i” between the initial letter and the “B”. Full prefixes were also defined. As per the specification of the prefixes, the power of 2 prefix counterpart to Kilo- is Kibi-. The prefix Kilo- stands for 10^3 while Kibi- stands for 2^10. This means that a Kilobyte is 1000 bytes while a Kibibyte is 1024 bytes. This might not seem like a big difference but when it gets to Gigabytes versus Gibibytes the difference becomes much more noticeable. The full prefix chart is in the image below.

From the table, one can see that a Gibibyte is 1,073,741,824 bytes or 73,741,824 bytes more than a Gigabyte so the Genesys 2 has 1.073 GB of DDR. Also the 512 MiB on the Nexys Video can be converted to 536 MB. Since the memory world has yet to convert to the newer, more accurate notation, Digilent uses MB and MiB interchangeably. So if you see MB on any of our sites and are confused, keep in mind it means the same thing as MiB. If you find yourself questioning any of the notations or units that we use, feel free to contact us through the forum.

I have always wondered what the difference here was. Nice write up!

Something new to learn. Thank you!

>Also the 512 MiB on the Nexys Video can be converted to 536 MB. Since the memory world has yet to convert to the newer, more accurate notation,

This is absurd, computers work in binary, bits have 2 states, so powers of two are the way computers work. Memory has always been sized correctly, in MB. The problem is only with disks, where manufacturers use metric prefixes inappropriately. Disk manufacturers were sued for this in 2005, but the lawsuit was settled out of court and nothing has changed.

Memory sizes are correct, if you convert you’ll get a number that does not mean anything.

Hi Rich,

I agree that the phrase “newer, more accurate notation” is misleading, though I do have to put in the disclaimer that this was the opinion of the blog post author, rather than the official opinion of Digilent. Perhaps a better phrase of choice would have been “more consistent”, though at the very least it is not a newer notation.

I agree that the memory sizes are correct as is; the goal of this post (as my understanding of the authors original intention), was to let people new to world of computers, memory, and the base 2 number system, that “MB” and “GB” have a different meaning than 1000 Bytes and 1000000 Bytes, and that we as Digilent try to make that clear to all of our audience.

I’m a clever bloke but I didn’t understand that. It just added more technical language to the problem. What’s an “SI” for example?

All I understood was the last sentence “So if you see MB on any of our sites and are confused, keep in mind it means the same thing as MiB.”

Reduce it to its simplest ideas, then pad it out if you have to with technical language.

Hi J Jones,

“SI” is short-hand for the International System of Units, which is the over-arching and proper term for the metric system. It does cover a lot more types of measurements than what the normal metric system refers to (mass and length), including time, luminescence, temperature, electrical current, along with a number of other things.

However, the size of memory isn’t part of the Internal System of Units, and because memory (and computers) use a base 2 number system rather than a base 10 number system like we people and the metric system use, there can be some confusion about the meaning of the prefixes used, especially when the metric system prefixes are so widely used.

So, the purpose of this blog post was to help show that if we (Digilent) used the phrase “MB” when referring to memory size, we meant the base 2 version of megabytes (MB) rather than the metric version of 1000 bytes.

Let me know if you have any questions about this.

Thanks,

James Colvin

My post vanished.

I didn’t understand any of that explanation except the last sentence.

Keep it simple.

Hi JJ,

I responded to your other post. Your post didn’t vanish before, we (Digilent) just manually approve all of the blog post responses first as an effort to cut down spam posts.

I found the chart to be very helpful. The article was too. The only problem was at the end where the you said “So if you see MB on any of our sites and are confused, keep in mind it means the same thing as MiB. ” That is the reason people are confused. They are not the same and accuracy is required. Terminology should be accurate and clear. Study base 2 vs, base 10 and use the correct terminology.