Chapter 9 - Memory Basics: Logic and Computer Design Fundamentals
Chapter 9 - Memory Basics: Logic and Computer Design Fundamentals
Chapter 9 - Memory Basics: Logic and Computer Design Fundamentals
Memory definitions
Random Access Memory (RAM)
Static RAM (SRAM) integrated circuits
• Cells and slices
• Cell arrays and coincident selection
Arrays of SRAM integrated circuits
Dynamic RAM (DRAM) integrated circuits
DRAM Types
• Synchronous (SDRAM)
• Double-Data Rate (DDR SRAM)
• RAMBUS DRAM (RDRAM)
Arrays of DRAM integrated circuits
Chapter 9 2
Memory Definitions
Chapter 9 3
Memory Definitions (Continued)
Typical data elements are:
• bit ─ a single binary digit
• byte ─ a collection of eight bits accessed together
• word ─ a collection of binary bits whose size is a
typical unit of access for the memory. It is typically
a power of two multiple of bytes (e.g., 1 byte, 2 bytes,
4 bytes, 8 bytes, etc.)
Memory Data ─ a bit or a collection of bits to
be stored into or accessed from memory cells.
Memory Operations ─ operations on memory
data supported by the memory unit. Typically,
read and write operations over some data
element (bit, byte, word, etc.).
Chapter 9 4
Memory Organization
Chapter 9 5
Memory Block Diagram
Chapter 9 6
Memory Organization Example
Example memory
contents: Memory Address Memory
• A memory with 3 Binary Decimal Content
000 0 10001111
address bits & 8
001 1 11111111
data bits has:
010 2 10110001
• k = 3 and n = 8 so 011 3 00000000
23 = 8 addresses 100 4 10111001
labeled 0 to 7. 101 5 10000110
• 23 = 8 words of 8-bit 11 0 6 00110011
data 111 7 11001100
Chapter 9 7
Basic Memory Operations
Chapter 9 9
Memory Operation Timing
Most basic memories are asynchronous
• Storage in latches or storage of electrical charge
• No clock
Controlled by control inputs and address
Timing of signal changes and data observation is critical to the
operation
Read timing:
20 ns
Clock T1 T2 T3 T4 T1
Memory
enable
Read/
Write
Data Data valid
output
65 ns
Read cycle
Chapter 9 10
Memory Operation Timing
Write timing:
20 ns
Clock T1 T2 T3 T4 T1
Memory
enable
Read/
Write
Data
input Data valid
75 ns
Critical times measured with respect
Writeto edges
cycle of write pulse (1-0-1):
• Address must be established at least a specified time before 1-0 and held for at
least a specified time after 0-1 to avoid disturbing stored contents of other
addresses
• Data must be established at least a specified time before 0-1 and held for at least
a specified time after 0-1 to write correctly
Chapter 9 11
RAM Integrated Circuits
Chapter 9 12
Static RAM Cell
Array of storage cells used to implement static RAM
Storage Cell Select
• SR Latch
• Select input for
control B
S Q
C
Chapter 9 13
Static RAM Bit Slice
Represents all circuitry that is required for 2n Select
Word
1-bit words select
0
B
XC
• Multiple RAM cells S Q
C Word
B R Q X select
• Control Lines: RAM cell 0
RAM cell
Word
Word select i select
1
– one for each word Word
select
Select RAM cell
2n 1
Re ad / Write X Word
S Q select
Bit Select 2n 1
RAM cell
R Q X
we need: A1 A1 21
4
5
• Decoder decodes A0 A0 20
6
7
RAM cell
16 x 1
the n address lines to RAM
8
9
Read/Write
Chip select
(b) Block diagram
Chapter 9 15
Cell Arrays and Coincident Selection
Chapter 9 16
Cell Arrays and Coincident Selection
(continued)
Row decoder
2-to-4
Decoder 0
A3 21
RAM cell RAM cell RAM cell RAM cell
0 1 2 3
A2 20
1
X X X X
Column select Data
0 1 2 3 output
Column 2-to-4 Decoder
decoder with enable
21 20 Enable
A1 A0
Chip select Chapter 9 17
RAM ICs with > 1 Bit/Word
Chapter 9 18
Making Larger Memories
Data In
Using the CS lines, we De c o de r
A1 D-In
can make larger A0
R/W
memories from smaller D3 CS D-Out
16-Word by A2 S0
Data Out
1-Bit memory. A1
A0
R/W
Chapter 9 19
Making Wider Memories
Chapter 9 21
Dynamic RAM (continued)
Select
To Pump
Stored 1 Stored 0
T
B
C
DRAM cell
(a) (b) (c)
Write 1 Write 0
Select
(d) (e)
B D Q C
Read 1 Read 0
C DRAM cell
model
Chapter 9 22
Dynamic RAM - Bit Slice
Word
C is driven by 3-state
Select
select
0
drivers B
D Q
C
select
voltage change on C Word Select
1
DRAM cell
into H or L select
2n 2 1
Word
In the electronics, B, C, D Q
select
2n 2 1
C DRAM cell
and the sense amplifier model DRAM cell
Write logic
Read logic Data out
Read/ Bit
Write select
(a) Logic diagram Chapter 9 23
Dynamic RAM - Block Diagram
Chapter 9 24
Dynamic RAM Read Timing
20 ns
Clock T1 T2 T3 T4 T1
RAS
CAS
Output
enable
Read/
Write
Data Hi-Z
Data valid
output
65 ns
Read cycle
Chapter 9 25
DRAM Types
Types to be discussed
• Synchronous DRAM (SDRAM)
• Double Data Rate SDRAM (DDR SDRAM)
• RAMBUS® DRAM (RDRAM)
Justification for effectiveness of these types
• DRAM often used as a part of a memory hierarchy (See details in
chapter 14)
• Reads from DRAM bring data into lower levels of the hierarchy
• Transfers from DRAM involve multiple consecutively addressed
words
• Many words are internally read within the DRAM ICs using a
single row address and captured within the memory
• This read involves a fairly long delay
Chapter 9 26
DRAM Types (continued)
Chapter 9 27
Synchronous DRAM
Transfers to and from the DRAM are synchronize with a clock
Synchronous registers appear on:
• Address input
• Data input
• Data output
Column address counter
• for addressing internal data to be transferred on each clock cycle
• beginning with the column address counts up to column address + burst
size – 1
Example: Memory data path width: 1 word = 4 bytes
Burst size: 8 words = 32 bytes
Memory clock frequency: 5 ns
Latency time (from application of row address until first word
available): 4 clock cycles
Read cycle time: (4 + 8) x 5 ns = 60 ns
Memory Bandwidth: 32/(60 x 10 -9) = 533 Mbytes/sec
Chapter 9 28
Double Data Rate Synchronous DRAM
Chapter 9 29
RAMBUS DRAM (RDRAM)
Uses a packet-based bus for interaction between the RDRAM ICs and the
memory bus to the processor
The bus consists of:
• A 3-bit row address bus
• A 5-bit column address bus
• A 16 or 18-bit (for error correction) data bus
The bus is synchronous and transfers on both edges of the clock
Packets are 4-clock cycles long giving 8 transfers per packet representing:
• A 12-bit row address packet
• A 20-bit column address packet
• A 128 or 144-bit data packet
Multiple memory banks are used to permit concurrent memory accesses
with different row addresses
The electronic design is sophisticated permitting very fast clock speeds
Chapter 9 30
Arrays of DRAM Integrated Circuits
Chapter 9 31
Terms of Use
© 2004 by Pearson Education,Inc. All rights reserved.
The following terms of use apply in addition to the standard Pearson
Education Legal Notice.
Permission is given to incorporate these materials into classroom
presentations and handouts only to instructors adopting Logic and
Computer Design Fundamentals as the course text.
Permission is granted to the instructors adopting the book to post these
materials on a protected website or protected ftp site in original or
modified form. All other website or ftp postings, including those
offering the materials for a fee, are prohibited.
You may not remove or in any way alter this Terms of Use notice or
any trademark, copyright, or other proprietary notice, including the
copyright watermark on each slide.
Return to Title Page
Chapter 9 32