Charles Kime & Thomas Kaminski © 2004 Pearson Education, Inc. Terms of Use (Hyperlinks are active in View Show mode) Terms of Use ECE/CS 352: Digital Systems.

Slides:



Advertisements
Similar presentations
Overview Memory definitions Random Access Memory (RAM)
Advertisements

Computer Organization and Architecture
Charles Kime & Thomas Kaminski © 2004 Pearson Education, Inc. Terms of Use (Hyperlinks are active in View Show mode) Terms of Use Chapter 7 – Registers.
COEN 180 DRAM. Dynamic Random Access Memory Dynamic: Periodically refresh information in a bit cell. Else it is lost. Small footprint: transistor + capacitor.
These slides incorporate figures from Digital Design Principles and Practices, third edition, by John F. Wakerly, Copyright 2000, and are used by permission.
EKT 221 : DIGITAL 2. Today’s Outline  Dynamic RAM (DRAM)  DRAM Cell – The Hydraulic Analogy  DRAM Block Diagram  Types of DRAM.
Charles Kime & Thomas Kaminski © 2004 Pearson Education, Inc. Terms of Use (Hyperlinks are active in View Show mode) Terms of Use Verilog Part 2 – Chapter.
Chapter 9 Memory Basics Henry Hexmoor1. 2 Memory Definitions  Memory ─ A collection of storage cells together with the necessary circuits to transfer.
ENGIN112 L30: Random Access Memory November 14, 2003 ENGIN 112 Intro to Electrical and Computer Engineering Lecture 30 Random Access Memory (RAM)
1 The Basic Memory Element - The Flip-Flop Up until know we have looked upon memory elements as black boxes. The basic memory element is called the flip-flop.
Overview Memory definitions Random Access Memory (RAM)
Registers  Flip-flops are available in a variety of configurations. A simple one with two independent D flip-flops with clear and preset signals is illustrated.
CS 151 Digital Systems Design Lecture 30 Random Access Memory (RAM)
Charles Kime & Thomas Kaminski © 2004 Pearson Education, Inc. Terms of Use (Hyperlinks are active in View Show mode) Terms of Use Chapter 3 – Combinational.
8-5 DRAM ICs High storage capacity Low cost Dominate high-capacity memory application Need “refresh” (main difference between DRAM and SRAM) -- dynamic.
Contemporary Logic Design Sequential Case Studies © R.H. Katz Transparency No Chapter #7: Sequential Logic Case Studies 7.6 Random Access Memories.
Physical Memory and Physical Addressing By: Preeti Mudda Prof: Dr. Sin-Min Lee CS147 Computer Organization and Architecture.
Charles Kime & Thomas Kaminski © 2008 Pearson Education, Inc. (Hyperlinks are active in View Show mode) Chapter 8 – Memory Basics Logic and Computer Design.
EKT 221 Digital Electronics II
Charles Kime & Thomas Kaminski © 2004 Pearson Education, Inc. Terms of Use (Hyperlinks are active in View Show mode) Terms of Use Logic and Computer Design.
EKT 221 : Digital 2 Memory Basics
Logic and Computer Design Dr. Sanjay P. Ahuja, Ph.D. FIS Distinguished Professor of CIS ( ) School of Computing, UNF.
SYEN 3330 Digital SystemsJung H. Kim 1 SYEN 3330 Digital Systems Chapter 9 – Part 1.
Charles Kime & Thomas Kaminski © 2004 Pearson Education, Inc. Terms of Use (Hyperlinks are active in View Show mode) Terms of Use ECE/CS 352: Digital Systems.
Memory and Storage Dr. Rebhi S. Baraka
Memory System Unit-IV 4/24/2017 Unit-4 : Memory System.
CPEN Digital System Design
Digital Logic Design Instructor: Kasım Sinan YILDIRIM
Charles Kime & Thomas Kaminski © 2004 Pearson Education, Inc. Terms of Use (Hyperlinks are active in View Show mode) Terms of Use Logic and Computer Design.
SEQUENTIAL CIRCUITS Component Design and Use. Register with Parallel Load  Register: Group of Flip-Flops  Ex: D Flip-Flops  Holds a Word of Data 
Chapter 3 Memory Basics. Memory ??? A major component of a digital computer and many digital systems. Stores binary data, either permanently or temporarily.
 Seattle Pacific University EE Logic System DesignMemory-1 Memories Memories store large amounts of digital data Each bit represented by a single.
Charles Kime & Thomas Kaminski © 2004 Pearson Education, Inc. Terms of Use (Hyperlinks are active in View Show mode) Terms of Use ECE/CS 352: Digital Systems.
Charles Kime & Thomas Kaminski © 2004 Pearson Education, Inc. Terms of Use (Hyperlinks are active in View Show mode) Terms of Use ECE/CS 352: Digital Systems.
Charles Kime & Thomas Kaminski © 2004 Pearson Education, Inc. Terms of Use (Hyperlinks are active in View Show mode) Terms of Use Verilog Part 3 – Chapter.
Charles Kime & Thomas Kaminski © 2004 Pearson Education, Inc. Terms of Use (Hyperlinks are active in View Show mode) Terms of Use Logic and Computer Design.
Overview Memory definitions Random Access Memory (RAM)
Charles Kime & Thomas Kaminski © 2004 Pearson Education, Inc. Terms of Use (Hyperlinks are active in View Show mode) Terms of Use ECE/CS 352: Digital Systems.
Computer Architecture Lecture 24 Fasih ur Rehman.
SYEN 3330 Digital SystemsJung H. Kim 1 SYEN 3330 Digital Systems Chapter 9 – Part 2.
Feb. 26, 2001Systems Architecture I1 Systems Architecture I (CS ) Lecture 12: State Elements, Registers, and Memory * Jeremy R. Johnson Mon. Feb.
Semiconductor Memory Types
ECE/CS 352 Digital System Fundamentals© T. Kaminski & C. Kime 1 ECE/CS 352 Digital Systems Fundamentals Spring 2001 Chapter 6 – Part 2 Tom Kaminski & Charles.
Digital Circuits Introduction Memory information storage a collection of cells store binary information RAM – Random-Access Memory read operation.
Charles Kime & Thomas Kaminski © 2008 Pearson Education, Inc. (Hyperlinks are active in View Show mode) Chapter 8 – Memory Basics Logic and Computer Design.
1 KU College of Engineering Elec 204: Digital Systems Design Lecture 22 Memory Definitions Memory ─ A collection of storage cells together with the necessary.
Computer Architecture Chapter (5): Internal Memory
RAM RAM - random access memory RAM (pronounced ramm) random access memory, a type of computer memory that can be accessed randomly;
Chapter 3 Memory Basics. Memory ??? A major component of a digital computer and many digital systems. Stores binary data, either permanently or temporarily.
Charles Kime & Thomas Kaminski © 2004 Pearson Education, Inc. Terms of Use (Hyperlinks are active in View Show mode) Terms of Use ECE/CS 352: Digital Systems.
Mini project Viva Schedule – choose date
ECE/CS 352 Digital Systems Fundamentals
Overview Memory definitions Random Access Memory (RAM)
Chapter 3 Memory Basics.
Chapter 5 Internal Memory
William Stallings Computer Organization and Architecture 7th Edition
Lecture 3 – Binary Arithmetic
Memory Units Memories store data in units from one to eight bits. The most common unit is the byte, which by definition is 8 bits. Computer memories are.
EE345: Introduction to Microcontrollers Memory
William Stallings Computer Organization and Architecture 7th Edition
Digital Logic & Design Dr. Waseem Ikram Lecture 40.
Lecture 26 – Hardwired and Microprogrammed Control
Overview Part 1 - Registers, Microoperations and Implementations
AKT211 – CAO 07 – Computer Memory
Lecture 4 – Binary Logic and Logic Gates
Presentation transcript:

Charles Kime & Thomas Kaminski © 2004 Pearson Education, Inc. Terms of Use (Hyperlinks are active in View Show mode) Terms of Use ECE/CS 352: Digital Systems Fundamentals Lecture 27 – Memory Basics

Chapter 9 2 Overview  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)  Arrays of DRAM integrated circuits

Chapter 9 3 Memory Definitions  Memory ─ Storage cells and circuits to transfer information to and from them  Memory Organization ─ structure that determines how data is accessed  Random Access Memory (RAM) ─ uniform access latency to any element in the memory  Memory Address ─ A vector of bits that identifies a particular memory element

Chapter 9 4 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 ─ Typically, read and write operations over some data element (bit, byte, word, etc.).

Chapter 9 5 Memory Block Diagram  A basic memory system is shown here:  k address lines are decoded to address 2 k words of memory.  Each word is n bits.  Read and Write control lines enable reading from and writing to memory n Data Input Lines k Address Lines Read Write n Data Output Lines Memory Unit 2 k Words n Bits per Word k 1 1 n n

Chapter 9 6 Memory Organization Example  Example memory contents: A memory with 3 address bits & 8 data bits has: k = 3 and n = 8 so 2 3 = 8 addresses labeled 0 to = 8 words of 8-bit data

Chapter 9 7 Basic Memory Operations  Memory operations 3-tuple: Data ─ written to or read from memory Address ─ specifies memory location Command ─ READ or WRITE

Chapter 9 8 Basic Memory Operations (continued)  Read Memory Place a valid address on the address lines. Wait for the read data to become stable.  Write Memory Place a valid address on the address lines and valid data on the data lines. Toggle the memory write control line  Usually the write enable line is defined as a clock with precise timing requirements (e.g. Write Strobe). Otherwise, it is just an interface signal. Sometimes memory must acknowledge that it has completed the operation.

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: Read cycle Clock Address Memory enable Read/ Write Data output 20 ns T1T2T3T4T1 Address valid 65 ns Data valid

Chapter 9 10 Memory Operation Timing  Write timing:  Critical times measured with respect to edges of write pulse (1-0-1): Setup and hold time for address: address must be valid before pulse begins and held beyond end of pulse to avoid disturbing stored contents of other addresses Setup and hold for data: data must be valid before end of pulse and held beyond end of pulse to write correctly Write cycle Clock Address Memory enable Read/ Write Data input 20 ns T1T2T3T4T1 Address valid Data valid 75 ns

Chapter 9 11 RAM Integrated Circuits  Types of random access memory Static – information stored in latches Dynamic – information stored as electrical charges on capacitors  Charge “leaks” off  Periodic refresh of charge required  Dependence on Power Supply Volatile – loses stored information when power turned off Non-volatile – retains information when power turned off

Chapter 9 12 Static RAM  Cell  Array of storage cells used to implement static RAM  Storage Cell SR Latch Select input for control Dual Rail Data Inputs B and B Dual Rail Data Outputs C and C Select B RAM cell C C B S R Q Q

Chapter 9 13 Static RAM  Bit Slice  Represents all circuitry that is required for 2 n 1-bit words Multiple RAM cells Control Lines:  Word select i – one for each word   Bit Select Data Lines:  Data in  Data out (a) Logic diagram Select S R Q Q B RAM cell C C B Select S R Q Q RAM cell X Word select 0 Word select 2 n  1 Data in Write logic Read/ Write Bit select S R Q Q X X X Word select 0 Word select 1 Word select 2 n Read/Write logic Data in Data out Read/ Write Bit select (b) Symbol RAM cell Data out Read logic  1

Chapter 9 14 Read/ 2 n -Word  1-Bit RAM IC  To build a RAM IC from a RAM slice, we need: Decoder  decodes the n address lines to 2 n word select lines A 3-state buffer  on the data output permits RAM ICs to be combined into a RAM with c  2 n words Word select Read/Write logic Data in Data out Write Bit select (b) Block diagram RAM cell RAM cell RAM cell Data input Chip select Read/Write Data output A 3 A 2 A 1 A to-16 Decoder A 3 A 2 A 1 A 0 Data input Data output (a) Symbol Read/ Write Memory enable 16 x 1 RAM

Chapter 9 15  Memory arrays can be very large => Large decoders Large fanouts for the bit lines The decoder size and fanouts can be reduced by approximately by using a coincident selection in a 2-dimensional array Uses two decoders, one for words and one for bits Word select becomes Row select Bit select becomes Column select  See next slide for example A 3 and A 2 used for Row select A 1 and A 0 for Column select Cell Arrays and Coincident Selection

Chapter 9 16 Cell Arrays and Coincident Selection (continued) Data input Read/Write XXX A 1 A 0 RAM cell Read/Write logic Data in Data out Read/ Write Bit select RAM cell Read/Write logic Data in Data out Read/ Write Bit select RAM cell RAM cell 14 Read/Write logic Data in Data out Read/ Write Bit select RAM cell RAM cell 15 Read/Write logic Data in Data out Read/ Write Bit select Column decoder 2-to-4 Decoder with enable Column select 2 Enable 3 Chip select Data output Row select Row decoder A 2 A 3 X 2-to-4 Decoder

Chapter 9 17 RAM ICs with > 1 Bit/Word  Word length can be quite high.  To better balance the number of words and word length, use ICs with > 1 bit/word

Chapter 9 18 RAM with 2 Bits/Word  Figure input bits 2 output bits Row select chooses 4 cells Column select chooses within pairs of columns

Chapter 9 19 Making Larger Memories  Tie all address, data, and R/W lines in parallel  Decode high- order address bits to control CS  Use 4x1 memories to construct 16x1 memory 

Chapter 9 20 Making Wider Memories  Tie address and control lines in parallel  Keep the data lines separate  Make a 4x4 memory from 4x1 memories

Chapter 9 21 Dynamic RAM (DRAM)  Basic Principle: Storage of information on capacitors.  Charge and discharge of capacitor to change stored value  Use of transistor as “switch” to: Store charge Charge or discharge

Chapter 9 22 Dynamic RAM (continued) (a) (c) Select D C Q B DRAM cell model C (f)(g)(h) Select B T C DRAM cell To Pump (b) (d) (e) Stored 1 Stored 0 Write 1 Write 0 Read 1 Read 0

Chapter 9 23 Dynamic RAM - Bit Slice  C is driven by 3- state drivers  Sense amplifier is used to change the small voltage change on C into H or L Data in (b) Symbol (a) Logic diagram Select B Word select 0 Word select 2 n 2 1 Write logic Bit select Data out Read logic D C Q DRAM cell model D C Q DRAM cell model C Sense amplifier Read/Write logic Data in Data out Bit select DRAM cell Word select 0 Word select 1 Word select 2 n 2 1 Read/ Write Read/ Write

Chapter 9 24 Dynamic RAM - Block Diagram

Chapter 9 25 Dynamic RAM Read Timing Read cycle 20 ns T1T2T3T4T1 Data valid 65 ns Hi-Z Read/ Write Data output Clock Row Address Column Address RAS CAS Address Output enable

Chapter 9 26 Synchronous DRAM w/Burst Read  Transfers to and from the DRAM are synchronized 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 period: 5 ns (200 MHZ) Latency to first word: 4 clock cycles Read cycle time: (4 + 8) x 5 ns = 60 ns Memory Bandwidth: 32/(60 x ) = 533 Mbytes/sec

Chapter 9 27 Double Data Rate Synchronous DRAM  Transfers data on both edges of the clock  Provides a transfer rate of 2 data words per clock cycle  Example: Same as for synchronous DRAM Read cycle time = 60 ns Memory Bandwidth: (2 x 32)/(60 x ) = Mbytes/sec

Chapter 9 28 Arrays of DRAM Integrated Circuits  Similar to arrays of SRAM ICs, but there are differences typically handled by an IC called a DRAM controller: Separation of the address into row address and column address and timing their application Providing RAS and CAS and timing their application Performing refresh operations at required intervals Providing status signals to the rest of the system (e.g., indicating whether or not the memory is active or is busy performing refresh)

Chapter 9 29 Summary  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)  Arrays of DRAM integrated circuits

Chapter 9 30 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.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 Return to Title Page