25
Topic 7 - 1 Digital Integrated Circuit Design Memories and Arrays Topic 7 Memory and Array Circuits Peter Y. K. Cheung Department of Electrical & Electronic Engineering Imperial College London URL: http://www.ee.ic.ac.uk/pcheung/ Topic 7 - 2 Digital Integrated Circuit Design Memories and Arrays Based on slides/material by… K. Masselos http://cas.ee.ic.ac.uk/~kostas J. Rabaey http://bwrc.eecs.berkeley.edu/Classes/IcBook/instructors.html “Digital Integrated Circuits: A Design Perspective”, Prentice Hall D. Harris http://www.cmosvlsi.com/coursematerials.html Weste and Harris, “CMOS VLSI Design: A Circuits and Systems Perspective”, Addison Wesley Recommended Reading: J. Rabaey et. al. “Digital Integrated Circuits: A Design Perspective”: Chapter 12 Weste and Harris, “CMOS VLSI Design: A Circuits and Systems Perspective”: Chapter 11 Topic 7 - 3 Digital Integrated Circuit Design Memories and Arrays Outline Memory classification Basic building blocks ROM Non Volatile Read Write Memories Static RAM (SRAM) Dynamic RAM (DRAM) Memory peripheral circuit Content Addressable Memory (CAM) Serial access memories Programmable Logic Array Reliability and Yield Memory trends Topic 7 - 4 Digital Integrated Circuit Design Memories and Arrays Semiconductor Memory Classification RWM NVRWM ROM EPROM E 2 PROM FLASH Random Access Non-Random Access SRAM DRAM Mask-Programmed Programmable (PROM) FIFO Shift Register CAM LIFO

Memories and Arrays Digital Integrated Circuit Design

  • Upload
    others

  • View
    4

  • Download
    0

Embed Size (px)

Citation preview

Topic 7 - 1Digital Integrated Circuit DesignMemories and Arrays

Topic 7

Memory and Array Circuits

Peter Y. K. CheungDepartment of Electrical & Electronic Engineering

Imperial College London

URL: http://www.ee.ic.ac.uk/pcheung/

Topic 7 - 2Digital Integrated Circuit DesignMemories and Arrays

Based on slides/material by…

K. Masselos http://cas.ee.ic.ac.uk/~kostasJ. Rabaey http://bwrc.eecs.berkeley.edu/Classes/IcBook/instructors.html“Digital Integrated Circuits: A Design Perspective”, Prentice Hall D. Harris http://www.cmosvlsi.com/coursematerials.htmlWeste and Harris, “CMOS VLSI Design: A Circuits and Systems Perspective”, Addison Wesley

Recommended Reading:J. Rabaey et. al. “Digital Integrated Circuits: A Design Perspective”: Chapter 12

Weste and Harris, “CMOS VLSI Design: A Circuits and Systems Perspective”: Chapter 11

Topic 7 - 3Digital Integrated Circuit DesignMemories and Arrays

Outline

Memory classificationBasic building blocksROMNon Volatile Read Write MemoriesStatic RAM (SRAM)Dynamic RAM (DRAM)Memory peripheral circuitContent Addressable Memory (CAM)Serial access memoriesProgrammable Logic ArrayReliability and YieldMemory trends

Topic 7 - 4Digital Integrated Circuit DesignMemories and Arrays

Semiconductor Memory Classification

RWM NVRWM ROM

EPROM

E2PROM

FLASH

RandomAccess

Non-RandomAccess

SRAM

DRAM

Mask-Programmed

Programmable (PROM)

FIFO

Shift Register

CAM

LIFO

Topic 7 - 5Digital Integrated Circuit DesignMemories and Arrays

Memory Arrays

Memory Arrays

Random Access Memory Serial Access Memory Content Addressable Memory(CAM)

Read/Write Memory(RAM)

(Volatile)

Read Only Memory(ROM)

(Nonvolatile)

Static RAM(SRAM)

Dynamic RAM(DRAM)

Shift Registers Queues

First InFirst Out(FIFO)

Last InFirst Out(LIFO)

Serial InParallel Out

(SIPO)

Parallel InSerial Out

(PISO)

Mask ROM ProgrammableROM

(PROM)

ErasableProgrammable

ROM(EPROM)

ElectricallyErasable

ProgrammableROM

(EEPROM)

Flash ROM

Topic 7 - 6Digital Integrated Circuit DesignMemories and Arrays

Outline

Memory classificationBasic building blocksROMNon Volatile Read Write MemoriesStatic RAM (SRAM)Dynamic RAM (DRAM)Memory peripheral circuitContent Addressable Memory (CAM) Serial access memoriesProgrammable Logic ArrayReliability and YieldMemory trends

Topic 7 - 7Digital Integrated Circuit DesignMemories and Arrays

Memory Architecture: Decoders

Word 0Word 1

Word 2

Word N-1

Word N-2

Input-Output

S0

S1

S2

SN-2

SN_1

(M bits)

StorageCell

M bits

N W

ords

Word 0Word 1

Word 2

Word N-1

Word N-2

Input-Output(M bits)

StorageCell

M bits

Dec

oder

A0

A1

AK -1

S0

N words => N select signalsToo many select signals

Decoder reduces # of select signalsK = log2N

Topic 7 - 8Digital Integrated Circuit DesignMemories and Arrays

Array-Structured Memory Architecture

Input-Output(M bits)

Row

Dec

oder

AK

AK+1

AL-1

2L-K

Column Decoder

Bit Line

Word Line

A0

AK -1

Storage Cell

Sense Amplifiers / Drivers

M.2K

Problem: ASPECT RATIO or HEIGHT >> WIDTH

Amplify swing torail-to-rail amplitude

Selects appropriateword

Topic 7 - 9Digital Integrated Circuit DesignMemories and Arrays

Hierarchical Memory Architecture

Global Data Bus

RowAddress

ColumnAddress

BlockAddress

Block Selector GlobalAmplifier/Driver

I/O

ControlCircuitry

Advantages:1. Shorter wires within blocks2. Block address activates only 1 block => power savings

Topic 7 - 10Digital Integrated Circuit DesignMemories and Arrays

Memory Timing: Definitions

READ

WRITE

DATA

Read Access Read Access

Read Cycle

Data Valid

Data Written

Write Access

Write Cycle

Topic 7 - 11Digital Integrated Circuit DesignMemories and Arrays

Memory Timing: Approaches

AddressBus

RAS

CAS

RAS-CAS timing

AddressBus

Address

Address transitioninitiates memory operation

DRAM Timing SRAM Timing

Row Address Column Address

MSB LSB

Multiplexed Adressing Self-timed

Topic 7 - 12Digital Integrated Circuit DesignMemories and Arrays

Outline

Memory classificationBasic building blocksROMNon Volatile Read Write MemoriesStatic RAM (SRAM)Dynamic RAM (DRAM)Memory peripheral circuitContent Addressable Memory (CAM)Serial access memoriesProgrammable Logic ArrayReliability and YieldMemory trends

Topic 7 - 13Digital Integrated Circuit DesignMemories and Arrays

Read-Only Memories

Read-Only Memories are nonvolatile• Retain their contents when power is removed

Mask-programmed ROMs use one transistor per bit• Presence or absence determines 1 or 0

Topic 7 - 14Digital Integrated Circuit DesignMemories and Arrays

ROM Example

4-word x 6-bit ROM• Represented with dot diagram• Dots indicate 1’s in ROM

Word 0: 010101Word 1: 011001Word 2: 100101Word 3: 101010

ROM Array

2:4DEC

A0A1

Y0Y1Y2Y3Y4Y5

weakpseudo-nMOS

pullups

Looks like 6 4-input pseudo-nMOS NORs

Topic 7 - 15Digital Integrated Circuit DesignMemories and Arrays

MOS NOR ROM

WL[0]

WL[1]

WL[2]

WL[3]

BL[0] BL[1] BL[2] BL[3]

GND

GND

VDD

Pull-up devices

Topic 7 - 16Digital Integrated Circuit DesignMemories and Arrays

MOS NOR ROM Layout

Metal1 on top of diffusion

Basic cell10 λ x 7 λ

2 λ

WL[0]

WL[1]

WL[2]

WL[3]

GND (diffusion)

Metal1

Polysilicon

Only 1 layer (contact mask) is used to program memory arrayProgramming of the memory can be delayed to one of

last process steps

Topic 7 - 17Digital Integrated Circuit DesignMemories and Arrays

MOS NOR ROM Layout

Basic Cell8.5 λ x 7 λ

WL[0]

WL[1]

WL[2]

WL[3]

Metal1 over diffusion

Threshold raisingimplant

BL[0] BL[1] BL[2] BL[3]

Polysilicon

GND (diffusion)

Threshold raising implants disable transistorsTopic 7 - 18Digital Integrated Circuit DesignMemories and Arrays

MOS NAND ROM

WL[0]

WL[1]

WL[2]

WL[3]

BL[0] BL [1] BL[2] BL[3]

VDD

Pull-up devices

All word lines high by default with exception of selected row

Topic 7 - 19Digital Integrated Circuit DesignMemories and Arrays

MOS NAND ROM Layout

Basic cell

5 λ x 6 λ

Threshold

implant

Polysilicon

Diffusion

lowering

No contact to VDD or GND necessary;

Loss in performance compared to NOR ROMdrastically reduced cell size

Topic 7 - 20Digital Integrated Circuit DesignMemories and Arrays

Precharged MOS NOR ROM

WL[0]

WL[1]

WL[2]

WL[3]

BL[0] BL[1] BL[2] BL[3]

GND

GND

VDD

Precharge devicesφpre

PMOS precharge device can be made as large as necessary,but clock driver becomes harder to design.

Topic 7 - 21Digital Integrated Circuit DesignMemories and Arrays

Building Logic with ROMs

Use ROM as lookup table containing truth table• n inputs, k outputs requires 2n words x k bits• Changing function is easy – reprogram ROM

Finite State Machine• n inputs, k outputs, s bits of state• Build with 2n+s x (k+s) bit ROM and (k+s) bit reg

ninputs

2n w

ordlines

ROM Array

k outputs

DE

C ROMinputs outputs

state

n ks

ks

Topic 7 - 22Digital Integrated Circuit DesignMemories and Arrays

Outline

Memory classificationBasic building blocksROMNon Volatile Read Write MemoriesStatic RAM (SRAM)Dynamic RAM (DRAM)Memory peripheral circuitContent Addressable Memory (CAM)Serial access memoriesProgrammable Logic ArrayReliability and YieldMemory trends

Topic 7 - 23Digital Integrated Circuit DesignMemories and Arrays

Nonvolatile Read-Write Memories (NVRW)

Architecture virtually identical to the ROM structure • the memory core consists of an array of transistors placed on a word-line/bit-

line gridThe memory is programmed by selectively disabling or enabling some of those devices • in a ROM this is accomplished by mask level alterations• in a NVRW memory a modified transistor that permits its threshold to be

altered electrically is used instead – the modified threshold is retained indefinitely (or long) even when the supply voltage is turned off

To reprogram the memory the programmed values must be erased after which a new programming round can be started • The method of erasing is the main differentiating factor between the various

classes of reprogrammable non volatile memories• The programming of the memory is typically an order of magnitude slower

than the reading operation

Topic 7 - 24Digital Integrated Circuit DesignMemories and Arrays

PROMs and EPROMs

Programmable ROMs• Build array with transistors at every site• Burn out fuses to disable unwanted transistors

Electrically Programmable ROMs• Use floating gate to turn off unwanted transistors• EPROM, EEPROM, Flash

n+

p

GateSource Drain

bulk Si

Thin Gate Oxide(SiO2)

n+

PolysiliconFloating Gate

Topic 7 - 25Digital Integrated Circuit DesignMemories and Arrays

Floating-gate transistor (FAMOS)

Source Drain

GateFloating gate

tox

tox

Substraten+n+ p

(a) Device cross-section

S

D

G

(b) Schematic symbol

Topic 7 - 26Digital Integrated Circuit DesignMemories and Arrays

Floating-Gate Transistor Programming

DS

20 V

20 V

DS

0 V

0 V10 V→ 5 V −5 V

DS

5 V

5 V−2.5 V

Avalanche injection. Removing programming voltageleaves charge trapped.

Programming results inhigher VT.

Topic 7 - 27Digital Integrated Circuit DesignMemories and Arrays

Characteristics of Non Volatile Memories

Topic 7 - 28Digital Integrated Circuit DesignMemories and Arrays

Outline

Memory classificationBasic building blocksROMNon Volatile Read Write MemoriesStatic RAM (SRAM)Dynamic RAM (DRAM)Memory peripheral circuitContent Addressable Memory (CAM)Serial access memoriesProgrammable Logic ArrayReliability and YieldMemory trends

Topic 7 - 29Digital Integrated Circuit DesignMemories and Arrays

Read-Write Memories (RAM)

• STATIC (SRAM)

• DYNAMIC (DRAM)

Data stored as long as supply is appliedLarge (6 transistors/cell)FastDifferential

Periodic refresh requiredSmall (1-3 transistors/cell)SlowerSingle Ended

Topic 7 - 30Digital Integrated Circuit DesignMemories and Arrays

6-transistor CMOS SRAM Cell

VDD

QQ

M1 M3

M4M2

M5

BL

WL

BL

M6

Topic 7 - 31Digital Integrated Circuit DesignMemories and Arrays

SRAM Read/Write

Topic 7 - 32Digital Integrated Circuit DesignMemories and Arrays

CMOS SRAM Analysis (Read)

bit bit_b

N1

N2P1

A

P2

N3

N4

A_b

word

0.0

0.5

1.0

1.5

0 100 200 300 400 500 600time (ps)

word bit

A

A_b bit_b

Precharge both bitlines highThen turn on wordlineOne of the two bitlines will be pulled down by the cellEx: A = 0, A_b = 1• bit discharges, bit_b stays high• But A bumps up slightly

Read stability• A must not flip• N1 >> N2

Topic 7 - 33Digital Integrated Circuit DesignMemories and Arrays

CMOS SRAM Analysis (Write)

Drive one bitline high, the other lowThen turn on wordlineBitlines overpower cell with new valueEx: A = 0, A_b = 1, bit = 1, bit_b = 0• Force A_b low, then A rises high

Writability• Must overpower feedback inverter• N2 >> P1

time (ps)

word

A

A_b

bit_b

0.0

0.5

1.0

1.5

0 100 200 300 400 500 600 700

bit bit_b

N1

N2P1

A

P2

N3

N4

A_b

word

Topic 7 - 34Digital Integrated Circuit DesignMemories and Arrays

SRAM Sizing

High bitlines must not overpower inverters during readsBut low bitlines must write new value into cell

bit bit_b

med

A

weak

strong

med

A_b

word

Topic 7 - 35Digital Integrated Circuit DesignMemories and Arrays

6T-SRAM — Layout

VDD

GND

QQ

WL

BLBL

M1 M3

M4M2

M5 M6

Topic 7 - 36Digital Integrated Circuit DesignMemories and Arrays

Resistance-load SRAM Cell

VDD

QQ

M1 M2

M3

BL

WL

BL

M4

RL RL

Static power dissipation -- Want RL largeBit lines precharged to VDD to address tp problem

Topic 7 - 37Digital Integrated Circuit DesignMemories and Arrays

Multiple Ports

We have considered single-ported SRAM• One read or one write on each cycle

Multiported SRAM are needed for register filesExamples:• Multicycle MIPS must read two sources or write a result on some cycles• Pipelined MIPS must read two sources and write a third result each cycle• Superscalar MIPS must read and write many sources and results each cycle

Topic 7 - 38Digital Integrated Circuit DesignMemories and Arrays

Dual-Ported SRAM

Simple dual-ported SRAM• Two independent single-ended reads• Or one differential write

Do two reads and one write by time multiplexing• Read during ph1, write during ph2

Topic 7 - 39Digital Integrated Circuit DesignMemories and Arrays

True dual port SRAM

Topic 7 - 40Digital Integrated Circuit DesignMemories and Arrays

Multi-Ported SRAM

Adding more access transistors hurts read stabilityMultiported SRAM isolates reads from state nodeSingle-ended design minimizes number of bitlines

Topic 7 - 41Digital Integrated Circuit DesignMemories and Arrays

Outline

Memory classificationBasic building blocksROMNon Volatile Read Write MemoriesStatic RAM (SRAM)Dynamic RAM (DRAM)Memory peripheral circuitContent Addressable Memory (CAM)Serial access memoriesProgrammable Logic ArrayReliability and YieldMemory trends

Topic 7 - 42Digital Integrated Circuit DesignMemories and Arrays

3-Transistor DRAM Cell

M2M1

BL1

WWL

BL2

M3

RWL

CS

X

WWL

RWL

X

BL1

BL2

VDD-VT

ΔV

VDD

VDD-VT

No constraints on device ratiosReads are non-destructiveValue stored at node X when writing a “1” = VW W L-VT n

Topic 7 - 43Digital Integrated Circuit DesignMemories and Arrays

3T-DRAM — Layout

Topic 7 - 44Digital Integrated Circuit DesignMemories and Arrays

1-Transistor DRAM Cell

CSM1

BL

WL

CBL

WL

X

BL

VDD−VT

VDD/2

VDD

GND

Write "1" Read "1"

sensingVDD/2

Δ V VB L V PR E– V B IT V PR E–( )CS

CS CB L+------------------------= =

Write: CS is charged or discharged by asserting WL and BL.Read: Charge redistribution takes places between bit line and storage capacitance

Voltage swing is small; typically around 250 mV.

Topic 7 - 45Digital Integrated Circuit DesignMemories and Arrays

DRAM Cell Observations

1T DRAM requires a sense amplifier for each bit line, due to charge redistribution read-out.

DRAM memory cells are single ended in contrast to SRAM cells.

The read-out of the 1T DRAM cell is destructive; read and refresh operations are necessary for correct operation.

Unlike 3T cell, 1T cell requires presence of an extra capacitance that must be explicitly included in the design.

When writing a “1” into a DRAM cell, a threshold voltage is lost. This charge loss can be circumvented by bootstrapping the word lines to a higher value than VD D .

Topic 7 - 46Digital Integrated Circuit DesignMemories and Arrays

1-T DRAM Cell

(a) Cross-section

(b) Layout

Diffusedbit line

Polysiliconplate

M1 wordline

Capacitor

Polysilicongate

Metal word line

SiO2

n+ Field Oxide

Inversion layerinduced by plate bias

n+

poly

poly

Used Polysilicon-Diffusion Capacitance

Expensive in Area

Topic 7 - 47Digital Integrated Circuit DesignMemories and Arrays

Advanced 1T DRAM Cells

Cell Plate Si

Capacitor Insulator

Storage Node Poly

2nd Field Oxide

Refilling Poly

Si Substrate

Trench Cell Stacked-capacitor Cell

Capacitor dielectric layerCell plateWord line

Insulating Layer

IsolationTransfer gateStorage electrode

Topic 7 - 48Digital Integrated Circuit DesignMemories and Arrays

Outline

Memory classificationBasic building blocksROMNon Volatile Read Write MemoriesStatic RAM (SRAM)Dynamic RAM (DRAM)Memory peripheral circuitContent Addressable Memory (CAM)Serial access memoriesProgrammable Logic ArrayReliability and YieldMemory trends

Topic 7 - 49Digital Integrated Circuit DesignMemories and Arrays

Periphery

Decoders

Sense amplifiers

Input/output buffers

Control/timing circuit

Topic 7 - 50Digital Integrated Circuit DesignMemories and Arrays

Row Decoders

Collection of 2M complex logic gatesOrganized in regular and dense fashion

(N)AND Decoder

NOR Decoder

Topic 7 - 51Digital Integrated Circuit DesignMemories and Arrays

A NAND Decoder using 2-input Pre-Decoders

A0A1 A0A1 A0A1 A0A 1 A 2A3 A2A3 A2A3 A2A3

A1 A 0 A0 A1 A3 A2 A2 A3

WL0

WL1

Splitting decoder into two or more logic layersproduces a faster and cheaper implementation

Topic 7 - 52Digital Integrated Circuit DesignMemories and Arrays

Dynamic Decoders

WL3

GND GNDPrecharge devices

WL2

WL1

WL0

VD D φ A0 A0 A1 A1 A0 A0 A1 A1

VDD

VDD

VDD

VDD

φ

WL3

WL2

WL1

WL0

Dynamic 2-to-4 NOR decoder 2-to-4 MOS dynamic NAND Decoder

Propagation delay is primary concern

Topic 7 - 53Digital Integrated Circuit DesignMemories and Arrays

4 input Pass-Transistor based Column Decoder

BL 0 BL 1 BL 2 BL 3

D

A0

A1

S0

S1

S2

S32in

putN

OR

deco

der

Advantage: speed (t pd does not add to overall memory access time)

Disadvantage: large transistor countonly 1 extra transistor in signal path

Topic 7 - 54Digital Integrated Circuit DesignMemories and Arrays

4-to-1 Tree based Column Decoder

BL0 BL1 BL2 BL3

D

A0

A0

A1

A1

Number of devices drastically reducedDelay increases quadratically with # of sections; prohibitive for large decoders

buffersprogressive sizingcombination of tree and pass transistor approaches

Solutions:

Topic 7 - 55Digital Integrated Circuit DesignMemories and Arrays

Decoder for Circular Shift-Register

φ

φ φ

φ

VDDVDD

φ

φ φ

φ

VDDVDD

φ

φ φ

φ

VDDVDD

RRR

VDD

...

WL0 WL1 WL2

Topic 7 - 56Digital Integrated Circuit DesignMemories and Arrays

Sense Amplifiers

tpC ΔV⋅

Iav----------------=

make ΔV as smallas possible

smalllarge

Idea: Use Sense Amplifer

outputinput

s.a.smalltransition

Topic 7 - 57Digital Integrated Circuit DesignMemories and Arrays

Differential Sensing - SRAM

Diff.SenseAmp

BLBL

SRAM cell i

x xy yD D

VDDVDD

WLi

PC

EQ

VDD

x x

y

SE

VDD

xx

y

SE

VDD

x x

y

SE

(b) Doubled-ended Current Mirror Amplifier

y

(a) SRAM sensing scheme.(c) Cross-Coupled Amplifier

M1 M2

M4M3

M5

Topic 7 - 58Digital Integrated Circuit DesignMemories and Arrays

Latch-Based Sense Amplifier

VD D

BL

SE

SE

BLEQ

Initialized in its meta-stable point with EQOnce adequate voltage gap created, sense amp enabled with SEPositive feedback quickly forces output to a stable operating point.

Topic 7 - 59Digital Integrated Circuit DesignMemories and Arrays

Single-to-Differential Conversion

Diff.

S.A.cell

BL

Vref+_

WL

x x

y y

How to make good Vref?

Topic 7 - 60Digital Integrated Circuit DesignMemories and Arrays

Open Bitline Architecture

VDD

SE

SE

CS CS CS

L

...CSCS...

CS

R

BLL BLR

L0L1 R0 R1

dummycell

dummycell

EQ

Topic 7 - 61Digital Integrated Circuit DesignMemories and Arrays

DRAM Read Process with Dummy Cell

0 1 2 3 4 5t (nsec)

0.0

2.0

4.0

6.0

V (V

olt)

0 1 2 3 4 5t (nsec)

0.0

2.0

4.0

6.0

V (V

olt)

0 1 2 3 4 50.01.02.03.04.05.0

V (V

olt)

EQ

W LSE

BLBL

BL

BL

(a) reading a zero

(b) reading a one

(c) control signals

Topic 7 - 62Digital Integrated Circuit DesignMemories and Arrays

Single-Ended Cascode Amplifier

VDD

WL

WLC

Vcasc

Topic 7 - 63Digital Integrated Circuit DesignMemories and Arrays

DRAM Timing (nightmare!)

Topic 7 - 64Digital Integrated Circuit DesignMemories and Arrays

Address Transition Detection

DELAYtdA0

DELAYtd

DELAYtd

ATD

...

A1

AN-1

VDD

ATD

Topic 7 - 65Digital Integrated Circuit DesignMemories and Arrays

Outline

Memory classificationBasic building blocksROMNon Volatile Read Write MemoriesStatic RAM (SRAM)Dynamic RAM (DRAM)Memory peripheral circuitContent Addressable Memory (CAM)Serial access memoriesProgrammable Logic ArrayReliability and YieldMemory trends

Topic 7 - 66Digital Integrated Circuit DesignMemories and Arrays

Content Addressable Memories (CAMs)

Extension of ordinary memory (e.g. SRAM)• Read and write memory as usual• Also match to see which words contain a key

CAM

adr data/key

matchread

write

Topic 7 - 67Digital Integrated Circuit DesignMemories and Arrays

CAM Cell Operation

Read and write like ordinary SRAMFor matching:• Leave wordline low• Precharge matchlines• Place key on bitlines• Matchlines evaluate

Miss line• Pseudo-nMOS NOR of match lines• Goes high if no words match

row decoder

weak

missmatch0

match1

match2

match3

clk

column circuitry

CAM cell

address

data

read/write

Topic 7 - 68Digital Integrated Circuit DesignMemories and Arrays

10T CAM Cell

Add four match transistors to 6T SRAM

Topic 7 - 69Digital Integrated Circuit DesignMemories and Arrays

Outline

Memory classificationBasic building blocksROMNon Volatile Read Write MemoriesStatic RAM (SRAM)Dynamic RAM (DRAM)Memory peripheral circuitContent Addressable Memory (CAM)Serial access memoriesProgrammable Logic ArrayReliability and YieldMemory trends

Topic 7 - 70Digital Integrated Circuit DesignMemories and Arrays

Serial Access Memories

Serial access memories do not use an address• Shift Registers• Tapped Delay Lines• Serial In Parallel Out (SIPO)• Parallel In Serial Out (PISO)• Queues (FIFO, LIFO)

Topic 7 - 71Digital Integrated Circuit DesignMemories and Arrays

Shift Register

Shift registers store and delay dataSimple design: cascade of registers• Watch your hold times!

Topic 7 - 72Digital Integrated Circuit DesignMemories and Arrays

Denser Shift Registers

Flip-flops aren’t very area-efficientFor large shift registers, keep data in SRAM insteadMove read/write pointers to RAM rather than data• Initialize read address to first entry, write to last• Increment address on each cycle

Din

Dout

clk

counter counter

reset

00...00

11...11

readaddr

writeaddr

dual-portedSRAM

Topic 7 - 73Digital Integrated Circuit DesignMemories and Arrays

Tapped Delay Line

A tapped delay line is a shift register with a programmable number of stagesSet number of stages with delay controls to mux• Ex: 0 – 63 stages of delay

Topic 7 - 74Digital Integrated Circuit DesignMemories and Arrays

Serial In Parallel Out

1-bit shift register reads in serial data• After N steps, presents N-bit parallel output

Topic 7 - 75Digital Integrated Circuit DesignMemories and Arrays

Parallel In Serial Out

Load all N bits in parallel when shift = 0• Then shift one bit out per cycle

Topic 7 - 76Digital Integrated Circuit DesignMemories and Arrays

Queues

Queues allow data to be read and written at different rates.Read and write each use their own clock, dataQueue indicates whether it is full or emptyBuild with SRAM and read/write counters (pointers)

Topic 7 - 77Digital Integrated Circuit DesignMemories and Arrays

FIFO, LIFO Queues

First In First Out (FIFO)• Initialize read and write pointers to first element• Queue is EMPTY• On write, increment write pointer• If write almost catches read, Queue is FULL• On read, increment read pointer

Last In First Out (LIFO)• Also called a stack• Use a single stack pointer for read and write

Topic 7 - 78Digital Integrated Circuit DesignMemories and Arrays

Outline

Memory classificationBasic building blocksROMNon Volatile Read Write MemoriesStatic RAM (SRAM)Dynamic RAM (DRAM)Memory peripheral circuitContent Addressable Memory (CAM)Serial access memoriesProgrammable Logic ArraysReliability and YieldMemory trends

Topic 7 - 79Digital Integrated Circuit DesignMemories and Arrays

Programmable Logic Array

x0 x1 x2

f0 f1

A NDPLA NE

ORPLA NE

x0x1x2

Product Terms

Topic 7 - 80Digital Integrated Circuit DesignMemories and Arrays

PLAs

A Programmable Logic Array performs any function in sum-of-products form.Literals: inputs & complementsProducts / Minterms: AND of literalsOutputs: OR of Minterms

Example: Full Adder

out

s abc abc abc abcc ab bc ac

= + + += + +

abcabcabcabcab

bcac

sa b coutc

Topic 7 - 81Digital Integrated Circuit DesignMemories and Arrays

NOR-NOR PLAs

ANDs and ORs are not very efficient in CMOSDynamic or Pseudo-nMOS NORs are very efficientUse DeMorgan’s Law to convert to all NORs

abcabcabcabcab

bcac

sa b c

outc

abcabcabcabcab

bcac

sa b c

outc

Topic 7 - 82Digital Integrated Circuit DesignMemories and Arrays

Pseudo-Static PLA

f0 f1

GND

GND

VD D

GND

x0 x0 x1 x1 x2 x2

GND GND GND GND

VDD

AND-PLANE OR-PLANE

Topic 7 - 83Digital Integrated Circuit DesignMemories and Arrays

PLA Schematic & Layout

AND Plane OR Plane

abcabcabcabcab

bcac

sa b c

outc

Topic 7 - 84Digital Integrated Circuit DesignMemories and Arrays

Dynamic PLA

f0 f1 GND

VDD

φOR

x0 x0 x1 x1 x2 x2

GND

VDD

AND-PLANE OR-PLANE

φANDφO R

φA ND

Topic 7 - 85Digital Integrated Circuit DesignMemories and Arrays

Clock Signal Generation for self-timed dynamic PLA

φ

φAND

φOR

φ φAND

Dummy AND Row

φANDDummy AND Row

φOR

(a) Clock signals (b) Timing generation circuitry.

Topic 7 - 86Digital Integrated Circuit DesignMemories and Arrays

PLA Layout

VDD GNDφAnd-Plane Or-Plane

f0 f1x0 x0 x1 x1 x2 x2Pull-up devices Pull-up devices

Topic 7 - 87Digital Integrated Circuit DesignMemories and Arrays

PLA versus ROM

Programmable Logic Arraystructured approach to random logic“two level logic implementation”

NOR-NOR (product of sums)NAND-NAND (sum of products)

IDENTICAL TO ROM!

Main differenceROM: fully populatedPLA: one element per minterm

Note: Importance of PLA’s has drastically reduced1. slow2. better software techniques (mutli-level logic

synthesis)

Topic 7 - 88Digital Integrated Circuit DesignMemories and Arrays

Outline

Memory classificationBasic building blocksROMNon Volatile Read Write MemoriesStatic RAM (SRAM)Dynamic RAM (DRAM)Memory peripheral circuitSerial access memoriesContent Addressable Memory (CAM)Programmable Logic ArrayReliability and YieldMemory trends

Topic 7 - 89Digital Integrated Circuit DesignMemories and Arrays

Reliability and Yield

Topic 7 - 90Digital Integrated Circuit DesignMemories and Arrays

Open Bit-line Architecture —Cross Coupling

Sense

Amplifier C C CCCC

WL1 WL0 WLD WLD WL0 WL1

EQ

CWBLCWBL

CBL

BL

CBL

BL

Topic 7 - 91Digital Integrated Circuit DesignMemories and Arrays

Folded-Bitline Architecture

BL

...

WLDWLD

BL

y

yx

x

WL0

CCCCCCEQ

Sense

Amplifier

WL0WL1WL1

CBL

CBL

CWBL

CWBL

Topic 7 - 92Digital Integrated Circuit DesignMemories and Arrays

Transposed-Bitline Architecture

BLBL

BL’

BL"

SA

Ccross

SABLBL

BL’

BL"

Ccross

(a) Straightforward bitline routing.

(b) Transposed bitline architecture.

Topic 7 - 93Digital Integrated Circuit DesignMemories and Arrays

Yield

Yield curves at different stages of process maturity(from [Veendrick92])

Topic 7 - 94Digital Integrated Circuit DesignMemories and Arrays

Redundancy

Memory

Array

Redundantcolumns

Redundantrows

Column Decoder

Row

Dec

oder

RowAddress

ColumnAddress

FuseBank

:

Topic 7 - 95Digital Integrated Circuit DesignMemories and Arrays

Redundancy and Error Correction

Topic 7 - 96Digital Integrated Circuit DesignMemories and Arrays

Outline

Memory classificationBasic building blocksROMNon Volatile Read Write MemoriesStatic RAM (SRAM)Dynamic RAM (DRAM)Memory peripheral circuitSerial access memoriesContent Addressable Memory (CAM)Programmable Logic ArrayReliability and YieldMemory trends

Topic 7 - 97Digital Integrated Circuit DesignMemories and Arrays

Semiconductor Memory Trends

Memory Size as a function of time: x 4 every three yearsTopic 7 - 98Digital Integrated Circuit DesignMemories and Arrays

Semiconductor Memory Trends

Increasing die sizefactor 1.5 per generation

Combined with reducing cell sizefactor 2.6 per generation

Topic 7 - 99Digital Integrated Circuit DesignMemories and Arrays

Semiconductor Memory Trends

Technology feature size for different SRAM generations