Lec 05 - Memory
DRAM
The basic cell used in DRAM is shown as follows:

This structure is known as 1T1C (One Transistor, One Capacitor). At the end of the Bit Line (BL), we have a sense amplifier (we will discuss its usage later).
Refresh
As we know, DRAM uses a capacitor to store bit information:
When the capacitor is charged, a 1 is stored (voltage ≈VDD).
When it is discharged, a 0 is stored (voltage ≈0V).
Since the access transistor controlled by the Word Line (WL) cannot isolate the capacitor completely, leakage current exists. Consequently, the charge stored in the capacitor will slowly leak away. This is why we need to recharge (refresh) the capacitor periodically.
Steps to Refresh
Precharge: Preload all Bit Lines to VDD/2.
Access: Activate one Word Line (only one at a time) → The NMOS access transistor turns ON.
Charge Sharing: The sense amplifier at the end of each BL detects the voltage change on the Bit Line caused by the capacitor connecting to it.
If 1 was stored: Charge moves from the capacitor to the Bit Line, causing the Bit Line voltage to rise slightly.
If 0 was stored: Charge moves from the Bit Line to the capacitor, causing the Bit Line voltage to drop slightly.
Sensing & Restoration: The sense amplifier amplifies this small voltage difference.
If the voltage increased, it pulls the Bit Line up to a constant VDD. This recharges the capacitor, refreshing the 1.
If the voltage decreased, it pulls the Bit Line down to 0V. This fully discharges the capacitor, refreshing the 0.
Read
The Read operation in DRAM is destructive, meaning the act of reading discharges the cell. Therefore, a "Read" is essentially the same process as the "Refresh" described above. Once the Sense Amplifier has sensed and latched the data (driving the BL to 0 or VDD), the data is effectively read and restored simultaneously. We simply read the voltage state of the Bit Line.
Write
To write to a DRAM cell:
The row is activated, and the sense amplifiers latch the current values (effectively a refresh/read cycle begins).
To write new data, the write driver circuits overpower the sense amplifiers, driving the Bit Lines to the desired value (VDD for 1, 0V for 0).
This forces the capacitor to charge or discharge to the new logic level.
Why refresh is needed?
We do not write to every bit cell in a Word Line every time it is accessed. Even if we modify some bits, the remaining cells in that row are activated and connected to the Bit Lines. If the Sense Amplifier did not restore (refresh) their values during this cycle, their stored charge would be lost due to charge sharing. Furthermore, leakage occurs even when rows are not activated, necessitating periodic refresh cycles for the entire array.
SRAM
We start with the bistable element. The following is a classic bistable circuit composed of two cross-coupled inverters. If Q is 1,

This bistable element can store 1 bit of information. However, the problem is: how do we write new information into it? To solve this, we add access transistors to build the 6T SRAM bit cell shown below:

Read
Precharge: Precharge both Bit Lines (BL and BL) to VDD.
Access: Activate the Word Line (WL) to high. This turns on the access transistors (M5 and M6)
Sensing: The internal node storing 0 will pull down the corresponding Bit Line.
For example, if Q=0, it will pull BL down towards the ground.
The other side (Q=1) will leave BL at VDD.
Output: A sense amplifier reads the voltage difference between BL and BL to determine the stored bit.
Read Stability Constraint
During the read operation, a potential problem arises. The Bit Line is precharged to VDD, and the internal node Q is at 0. When the access transistor (M5) turns on, it forms a voltage divider with the driver transistor (M1).
We must ensure that the voltage at node Q does not rise high enough to flip the state of the other inverter. The driver (M1) must be stronger than the access transistor (M5).

We model the transistors as resistors (RM1 for the driver, RM5 for the access). Since BL acts as a voltage source of VDD, the voltage at node Q is determined by the voltage divider rule:
To prevent the cell from flipping, VQ must stay below the switching threshold (Vth) of the other inverter (M2/M4):
Since we want VQ to be very low, we require RM1≪RM5. In transistor design, resistance is inversely proportional to width (W). Therefore, the Driver (M1) must be wider than the Access (M5).
This defines the Cell Ratio (CR):
Read 0 and Read 1 are symmetric, so the CR requirement applies to both sides!
Write
Drive Bit Lines: Drive one Bit Line to 0 and the other to VDD (depending on the value you want to write).
Example: To write a 0 (when Q was previously 1), we force BL=0 and BL=1.
Access: Activate the Word Line (WL).
Force State: The access transistor connected to the 0V. Bit Line must overpower the internal PMOS pull-up transistor to flip the cell.
Write Ability Constraint
During the write, the access transistor (M6) is trying to pull node Q down to 0, while the PMOS pull-up transistor (M4) is trying to keep it up at VDD. The access transistor must be stronger.

We model the transistors as a voltage divider between the Access Transistor (M6, connected to 0V) and the PMOS Pull-Up (M4, connected to VDD).
To successfully write a 0, we must pull VQ below the switching threshold (Vth) of the inverter (M1/M3) so the feedback loop flips:
This implies that RM6 must be smaller than RM4 (Access requires lower resistance than Pull-Up). In other words, RM4 must be very large so that VQ is very low. Therefore, the Access transistor must be stronger (wider) than the PMOS Pull-Up.
This defines the Pull-up Ratio (PR):
NAND Flash
The building blocks of NAND Flash are the Floating Gate (FG) and the Floating Gate Transistor. It is essential to understand their working principles before analyzing the NAND Flash architecture.
Floating Gate Physics
If a sufficiently strong electric field is applied, the Fowler-Nordheim (FN) Tunneling effect occurs: electrons pass through the oxide insulator and get trapped in the conductive floating gate.
Conversely, if a strong electric field is applied in the opposite direction, the electrons are pushed out of the floating gate.
Floating Gate Transistor
By placing a floating gate between the control gate and the channel of an NMOS transistor, we create a floating gate transistor.

We can perform the following three operations on the floating gate transistor:
Program (Write 0): Apply a high programming voltage (Vpgm) to the control gate and 0V to the substrate. Electrons tunnel into the floating gate and are stored there. This increases the threshold voltage (Vth).
Erase (Write 1): Apply a high erase voltage (Vera, usually the same as Vpgm) to the substrate and 0V to the control gate. This creates an opposite electric field, forcing electrons out of the floating gate. This decreases the threshold voltage.
Read: We use the shift in threshold voltage (Vth) to determine the state. Apply a reference voltage (usually 0V) to the gate.
If electrons are present (Programmed/0): The negative charge in the FG cancels out the gate voltage. The effective voltage is below the Vth of the transistor. The device is in cutoff (does not conduct).
No conduction → Electrons present → Read 0.
If no electrons are present (Erased/1): There is no cancellation. The NMOS turns ON.
Conduction → No electrons → Read 1.
SLC/MLC/TLC/QLC
In the section above, the floating gate has only 2 options:
Has electrons (0)
No electrons (1)
This is called SLC (Single Level Cell). The other types are:
MLC (Multi-Level Cell): 1 floating gate stores 4 states (2 bits).
TLC (Triple-Level Cell): 8 states (3 bits).
QLC (Quad-Level Cell): 16 states (4 bits).
The circuit diagram for NAND Flash is shown below:

The diagram above represents a Block. It is composed of several Strings, where each string is connected to one Bit Line.
SSL (String Select Line) and GSL (Ground Select Line) control standard NMOS transistors at the top and bottom of the stack.
The remaining transistors, controlled by different Word Lines (WLs), are floating gate transistors.
All floating gate transistors connected to the same Word Line form a Page.
Within the same block, all floating gates and NMOS transistors share a common p-substrate (p-well).
Read
In NAND Flash, read operations are performed at the Page granularity.
Select String: Apply high voltage to SSL and GSL to turn on the selection transistors.
Bypass Unselected Cells: Apply a Pass Voltage (Vpass) to all other Word Lines (the ones we are not reading).
Note: Vpass is a voltage high enough to turn on a transistor regardless of whether its floating gate is charged (programmed) or empty (erased), but not high enough to trigger tunneling (programming). This turns the unselected cells into "pass-through" wires.
Read Selected Cell: Apply the read reference voltage (0V) to the specific Word Line we are reading.
If the Floating Gate has electrons (programmed), the transistor does not conduct.
If the Floating Gate is empty (erased), the transistor conducts.
Sense: The sense amplifiers detect if current flows through the string (Bit Line voltage drops) or not (Bit Line stays high).
Write
Writing (Programming) is also performed at the Page granularity. Note that we can only program 1s to 0s. To turn 0s back to 1s, we must Erase (see below).
Setup: Apply high voltage to SSL (to connect the string to BL) and 0V to GSL (to disconnect from ground).
Data Setup: Set the Bit Lines based on the data to be written:
To Write 0 (Program): Set Bit Line to 0V. This creates a high potential difference between the Gate and the Channel, allowing tunneling.
To Write 1 (Inhibit): Set Bit Line to VDD. This raises the channel potential, reducing the voltage difference between the Gate and Channel so that tunneling does not occur (Program Inhibit).
Pass Voltage: Apply Vpass to the unselected Word Lines (to pass the Bit Line voltage down the string).
Program Voltage: Apply the Programming Voltage (Vpgm, a very high voltage, e.g., 20V) to the specific Word Line we are writing to.
If BL is 0V: Electrons tunnel into the floating gate → Write 0.
If BL is High: No tunneling occurs → State remains 1.
Erase
Erase operations in NAND Flash are performed at the Block granularity (you cannot erase just one Page).
Apply Erase Voltage: Apply a high Erase Voltage (Vera) to the common substrate (p-well).
Ground Gates: Set all Word Lines (control gates) in the block to 0V.
Result: Electrons in the floating gates are attracted to the substrate (tunneling out of the FG) due to the strong electric field. All cells in the block are reset to 1.
Last updated