RAM, basically, is a series of registers outside the CPU that get addressed with a multiplexer. The amount of ram that you can "address" is determined by the "size of the bus." Normally, you have another processor (Memory Control Unit [Not to be confused with "MicroController Unit" which has the same acronym.]) that is tasked with handling the RAM for you. In reality, those bits of memory can degrade quickly wwhen interference is present. The MCU's task is to be an abstraction for RAM, so the CPU design can focus on what it needs to do to become better. The MCU is usually on the same chip, but it is merely designed as if it's separate. Normally, an MCU has an "address bus" that go to a multiplexer to select what RAM you want. It also has a "data bus" which, like the address bus, is a series of wires, except this is "bi-directional" and gets "selected" via a wire dedicated to deciding whether you're "reading" or "writing." Let's say, for example, you have an MCU that has an 8 bit address bus and an 8 bit data bus. Basically, when you want to read from RAM, you set the "rw pin" to 0 (read), write the address (location in ram) you want to the "address register" (which goes to the address bus) and set true the "CLK pin" (clock pin, which, in this case, counts as "enable"). The "RAM data register" would then contain the data specified at the address which you wanted. You would then set false the "CLK pin," which would tell the MCU to turn off, go back to keeping the data safe, or whatever. In reality, you would have a "clock" (we'll cover that another time, but it's simple) do that for you, since it takes a certain amount of time for the input from the RAM to "stabalize" (some operations are faster than others, so we want to give it time to finish doing it), and the "clock" would be calibrated to a reasonable amount of waiting time for that to happen. Writing is done the same way, except you set the "rw pin" to true, to let it know that you want it to read from the data and stick the result at the address. Not so bad, right?

RAM is short for Random Access Memory, which is what we can do with it. Random Access is opposed to "sequential access" or something a bit less controllable. The idea is, we can specify what address we want, which is harder to do with, say, a casette tape, cd, or record. With those things, they must physically move components to get to the address which they want.

Get your own web kitty here!
┬ęCopyright 2010, 2011, 2012, 2013, 2014, 2017, 2018. All rights reserved.