Fun fact: people like to say that unlike Flash memory, RAM can be read or written to one byte at a time, but that's a lie. A typical DIMM's memory array can only be addressed in 64KiB blocks! Writing one byte means reading 64K, modifying one byte, and writing 64K! (1/n)
-
Show this thread
-
In fact, *reading* is a destructive operation in RAM. Reading one byte means reading 64K (which destroys it), then writing back the 64K untouched! However, the RAM chips perform this read-write operation when directed, so the 64K doesn't have to go out via the bus and back. (2/n)
3 replies 10 retweets 41 likesShow this thread -
The difference is that RAM doesn't wear out, so nobody cares that it works this way. The RAM can also combine a long sequence of reads or writes, sequential or scattered, within one page, into one read, a sequence of I/Os, and a write back to the array. (3/n)
3 replies 6 retweets 34 likesShow this thread -
So next time someone tells you "RAM can be accessed at a granularity of one bit", remember that's not really true. It actually uses huge pages just like Flash, which is fundamental when memory is organized as a big 2D array (the page size is one dimension). (4/4)
5 replies 7 retweets 50 likesShow this thread -
Replying to @marcan42
Even SRAM and similar tend to be addressed in at best "lowest addressable unit" of CPU, not bits.
1 reply 0 retweets 0 likes
True, externally they can usually be addressed at best bytewise (wider SRAM usually has byte enables). However, SRAM reads are not destructive, so they *do* qualify as bit-addressable at the array level (given appropriate column select mux). But you pay for that with 6T/bit.
Loading seems to be taking a while.
Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.