When you turn off your computer the data in the DRAM memory chips quickly degrades and leaks back to all zeroes. The controller on the memory chip has to constantly refresh the data in the cells by reading them and writing their values back, to keep up with leakage. Notice that the output data is zero! What happened is that the charge in the capacitor leaked away while you were waiting, causing it to drop from 1 to 0. Here's the full steps in case it's not clear: Wait a few seconds, then close the enable switch. This time, instead of immediately performing a read operation, open the enable switch beforehand. With the leakage switch closed, repeat the write process again and store a 1 in the cell. Once you're happy with that, it's time for another experiment. Try this a few times to get a feel for what's happening. Eventually, the capacitor voltage drops below the threshold voltage, causing it to be read as a 0 instead of a 1. If you watch the path through the leakage switch and the 10k resistor, you'll see the current dots flowing slowly along as the capacitor charge leaks out. Now change the write/read switch to read, and look at the output data. This will cause a 1 to be written to the cell. You can simulate this with the leakage switch I included in the circuit.Ĭlose the leakage switch, then set the input data to 1, the write/read switch to write, and close the enable switch. However, in reality there is always some leakage in the capacitor that causes it to slowly lose its charge. It can store a 0 or 1 almost perpetually. What we've looked at so far is an ideal memory cell. Additionally, whatever value is stored in the capacitor stays there until you turn the enable switch back on. Repeat this again, but for an input value of 0.Īlso have a play with the enable switch - you'll see that when it is open, the output data will always be 0 regardless of what you do with the input value and the write/read switch. Next, flip the write/read switch to the right, in order to read from the cell. The top part of the capacitor goes green, indicating that the capacitor is now charged up and the cell's value is set to 1. You'll see the bottom of the circuit light up green, and little yellow dots will move for a moment to indicate that a current is flowing as the capacitor charges up. Set the input data switch to 1 and the write/read switch to write. I'll get to that later - leave that switch open for now.įirst, let's write a 1 to the cell. When there are many of these cells all connected to the same input and output signals, this allows us to select just one cell to be read from or written to. The enable switch allows us to decide whether or not we want to talk to this specific cell at any point in time. When switched to the right it reads a value from the cell and displays it on the output data. When switched to the left it writes a value to the cell, using whichever value was set by the input data switch. This selects which operation we want to perform. Underneath that, we have a write/read switch. This will show as 1 or 0 when we read from the cell. We use this switch to select which value we want to write into the cell. This is a switch that selects either 5V or 0V (ground), to represent a value of 1 or 0. The parts marked 10k, 100k, and 1M are resistors - don't worry about those for now.Īt the top left of the circuit we've got our input data. I've labelled the transistor and the capacitor, so you can see where they are. If the run/stop button is red, you've stopped the simulation. You can control the simulation with the "Run/STOP" and "Reset" buttons on the top right. You can simulate this circuit in your browser here, and I'll talk you through how it works. Here's a circuit diagram of a simple memory cell: The value stored in the cell is a single bit - a value of 0 or 1, represented by a low or high voltage. A transistor is like an electronic switch, and a capacitor is like a tiny battery. Each memory cell is constructed from a transistor and a capacitor. Modern memory ICs have billions of cells each. SDRAM memory chips are constructed from an array of memory cells, with one cell per bit of data stored. Volatile means that it does not hold its state after you turn it off. Consumer memory DIMMs use volatile SDRAM memory.
0 Comments
Leave a Reply. |