55:035 Computer Architecture and Organization

Slides:



Advertisements
Similar presentations
MEMORY popo.
Advertisements

Chapter 5 Internal Memory
55:035 Computer Architecture and Organization Lecture 7 155:035 Computer Architecture and Organization.
Semiconductor Memory Design. Organization of Memory Systems Driven only from outside Data flow in and out A cell is accessed for reading by selecting.
+ CS 325: CS Hardware and Software Organization and Architecture Internal Memory.
5-1 Memory System. Logical Memory Map. Each location size is one byte (Byte Addressable) Logical Memory Map. Each location size is one byte (Byte Addressable)
Sistemi Elettronici Programmabili1 Progettazione di circuiti e sistemi VLSI Anno Accademico Lezione Memorie (vedi anche i file pcs1_memorie.pdf.
COEN 180 DRAM. Dynamic Random Access Memory Dynamic: Periodically refresh information in a bit cell. Else it is lost. Small footprint: transistor + capacitor.
Digital Integrated Circuits A Design Perspective
CML CML CS 230: Computer Organization and Assembly Language Aviral Shrivastava Department of Computer Science and Engineering School of Computing and Informatics.
Introduction to CMOS VLSI Design Lecture 13: SRAM
Kevin Walsh CS 3410, Spring 2010 Computer Science Cornell University Memory See: P&H Appendix C.8, C.9.
Chapter 9 Memory Basics Henry Hexmoor1. 2 Memory Definitions  Memory ─ A collection of storage cells together with the necessary circuits to transfer.
11/29/2004EE 42 fall 2004 lecture 371 Lecture #37: Memory Last lecture: –Transmission line equations –Reflections and termination –High frequency measurements.
1 Lecture 16B Memories. 2 Memories in General Computers have mostly RAM ROM (or equivalent) needed to boot ROM is in same class as Programmable Logic.
S. Reda EN160 SP’07 Design and Implementation of VLSI Systems (EN0160) Lecture 32: Array Subsystems (DRAM/ROM) Prof. Sherief Reda Division of Engineering,
Introduction to CMOS VLSI Design SRAM/DRAM
S. Reda EN160 SP’07 Design and Implementation of VLSI Systems (EN0160) Lecture 31: Array Subsystems (SRAM) Prof. Sherief Reda Division of Engineering,
Chapter 5 Internal Memory
Lecture 19: SRAM.
Memory Key component of a computer system is its memory system to store programs and data. ITCS 3181 Logic and Computer Systems 2014 B. Wilkinson Slides12.ppt.
1 Lecture 16B Memories. 2 Memories in General RAM - the predominant memory ROM (or equivalent) needed to boot ROM is in same class as Programmable Logic.
Parts from Lecture 9: SRAM Parts from
Chapter 6 Memory and Programmable Logic Devices
CS1104-8Memory1 CS1104: Computer Organisation Lecture 8: Memory
Semiconductor Memories Lecture 1: May 10, 2006 EE Summer Camp Abhinav Agarwal.
Lecture on Electronic Memories. What Is Electronic Memory? Electronic device that stores digital information Types –Volatile v. non-volatile –Static v.
Basic concepts Maximum size of the memory depends on the addressing scheme: 16-bit computer generates 16-bit addresses and can address up to 216 memory.
Review: Basic Building Blocks  Datapath l Execution units -Adder, multiplier, divider, shifter, etc. l Register file and pipeline registers l Multiplexers,
Logic and Computer Design Dr. Sanjay P. Ahuja, Ph.D. FIS Distinguished Professor of CIS ( ) School of Computing, UNF.
FPGA-Based System Design: Chapter 3 Copyright  2004 Prentice Hall PTR Topics n Latches and flip-flops. n RAMs and ROMs.
Modern VLSI Design 4e: Chapter 6 Copyright  2008 Wayne Wolf Topics Memories: –ROM; –SRAM; –DRAM; –Flash. Image sensors. FPGAs. PLAs.
Memory and Storage Dr. Rebhi S. Baraka
Z. Feng MTU EE4800 CMOS Digital IC Design & Analysis 12.1 EE4800 CMOS Digital IC Design & Analysis Lecture 12 SRAM Zhuo Feng.
Memory System Unit-IV 4/24/2017 Unit-4 : Memory System.
Memory Semiconductor Memory Classification ETEG 431 SG Size: Bits, Bytes, Words. Timing Parameter: Read, Write Cycle… Function: ROM, RWM, Volatile, Static,
Digital Design: Principles and Practices
CPEN Digital System Design
Digital Logic Design Instructor: Kasım Sinan YILDIRIM
Advanced VLSI Design Unit 06: SRAM
CSE477 L24 RAM Cores.1Irwin&Vijay, PSU, 2002 CSE477 VLSI Digital Circuits Fall 2002 Lecture 24: RAM Cores Mary Jane Irwin ( )
Penn ESE370 Fall DeHon 1 ESE370: Circuit-Level Modeling, Design, and Optimization for Digital Systems Day 24: November 5, 2010 Memory Overview.
SEQUENTIAL CIRCUITS Component Design and Use. Register with Parallel Load  Register: Group of Flip-Flops  Ex: D Flip-Flops  Holds a Word of Data 
CSE477 L23 Memories.1Irwin&Vijay, PSU, 2002 CSE477 VLSI Digital Circuits Fall 2002 Lecture 23: Semiconductor Memories Mary Jane Irwin (
+ CS 325: CS Hardware and Software Organization and Architecture Memory Organization.
Memory Array Subsystems
Computer Memory Storage Decoding Addressing 1. Memories We've Seen SIMM = Single Inline Memory Module DIMM = Dual IMM SODIMM = Small Outline DIMM RAM.
Memory Hierarchy Registers Cache Main Memory Fixed Disk (virtual memory) Tape Floppy Zip CD-ROM CD-RWR Cost/Bit Access/Speed Capacity.
Washington State University
CMPEN 411 VLSI Digital Circuits Spring 2009 Lecture 22: Memery, ROM
CMPEN 411 VLSI Digital Circuits Spring 2009 Lecture 24: Peripheral Memory Circuits [Adapted from Rabaey’s Digital Integrated Circuits, Second Edition,
Introduction to Computer Organization and Architecture Lecture 7 By Juthawut Chantharamalee wut_cha/home.htm.
EE 466/586 VLSI Design Partha Pande School of EECS Washington State University
Penn ESE370 Fall DeHon 1 ESE370: Circuit-Level Modeling, Design, and Optimization for Digital Systems Day 28: November 8, 2013 Memory Overview.
Sp09 CMPEN 411 L21 S.1 CMPEN 411 VLSI Digital Circuits Spring 2009 Lecture 21: Shifters, Decoders, Muxes [Adapted from Rabaey’s Digital Integrated Circuits,
DIGITAL SYSTEMS Read Only– and Random Access Memory ( ROM – RAM) Rudolf Tracht and A.J. Han Vinck.
Overview of microcomputer structure and operation
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;
Norhayati Soin 06 KEEE 4426 WEEK 15/1 6/04/2006 CHAPTER 6 Semiconductor Memories.
Prof. Hsien-Hsin Sean Lee
Memories.
Lecture 19: SRAM.
Hakim Weatherspoon CS 3410 Computer Science Cornell University
Computer Architecture
CMOS VLSI Design Chapter 12 Memory
Memory.
Semiconductor Memories
Electronics for Physicists
Presentation transcript:

55:035 Computer Architecture and Organization Lecture 6

55:035 Computer Architecture and Organization Outline Memory Arrays and Hierarchy SRAM Architecture SRAM Cell Decoders Column Circuitry Multiple Ports Serial Access Memories Flash DRAM 55:035 Computer Architecture and Organization

55:035 Computer Architecture and Organization Memory Arrays 55:035 Computer Architecture and Organization

Levels of the Memory Hierarchy Part of The On-chip CPU Datapath ISA 16-128 Registers One or more levels (Static RAM): Level 1: On-chip 16-64K Level 2: On-chip 256K-2M Level 3: On or Off-chip 1M-16M Registers Cache Level(s) Main Memory Magnetic Disc Optical Disk or Magnetic Tape Farther away from the CPU: Lower Cost/Bit Higher Capacity Increased Access Time/Latency Lower Throughput/ Bandwidth Dynamic RAM (DRAM) 256M-16G Interface: SCSI, RAID, IDE, 1394 80G-300G CPU 55:035 Computer Architecture and Organization

Memory Hierarchy Comparisons CPU Registers 100s Bytes <10s ns Cache K Bytes 10-100 ns 1-0.1 cents/bit Main Memory M Bytes 200ns- 500ns $.0001-.00001 cents /bit Disk G Bytes, 10 ms (10,000,000 ns) 10 - 10 cents/bit -5 -6 Capacity Access Time Cost Tape infinite sec-min 10 -8 Registers Memory Instr. Operands Blocks Pages Files Staging Xfer Unit prog./compiler 1-8 bytes cache cntl 8-128 bytes OS 4K-16K bytes user/operator Mbytes faster Larger 55:035 Computer Architecture and Organization

55:035 Computer Architecture and Organization Connecting Memory Up to 2 k addressable MDR MAR -bit address bus n data bus Control lines ( , MFC, etc.) Processor Memory locations Word length = bits W R / 55:035 Computer Architecture and Organization

55:035 Computer Architecture and Organization Array Architecture 2n words of 2m bits each If n >> m, fold by 2k into fewer rows of more columns Good regularity – easy to design Very high density if good cells are used 55:035 Computer Architecture and Organization

55:035 Computer Architecture and Organization 6T SRAM Cell Cell size accounts for most of array size Reduce cell size at expense of complexity 6T SRAM Cell Used in most commercial chips Data stored in cross-coupled inverters Read: Precharge bit, bit_b Raise wordline Write: Drive data onto bit, bit_b 55:035 Computer Architecture and Organization

55:035 Computer Architecture and Organization SRAM Read Precharge both bitlines high Then turn on wordline One of the two bitlines will be pulled down by the cell Ex: A = 0, A_b = 1 bit discharges, bit_b stays high 55:035 Computer Architecture and Organization

55:035 Computer Architecture and Organization SRAM Write Drive one bitline high, the other low Then turn on wordline Bitlines overpower cell with new value Ex: A = 0, A_b = 1, bit = 1, bit_b = 0 Force A_b low 55:035 Computer Architecture and Organization

55:035 Computer Architecture and Organization SRAM Column Example Read Write 55:035 Computer Architecture and Organization

55:035 Computer Architecture and Organization Decoders n:2n decoder consists of 2n n-input AND gates One needed for each row of memory Build AND from NAND or NOR gates 55:035 Computer Architecture and Organization

55:035 Computer Architecture and Organization Large Decoders For n > 4, NAND gates become slow Break large gates into multiple smaller gates 55:035 Computer Architecture and Organization

55:035 Computer Architecture and Organization Column Circuitry Some circuitry is required for each column Bitline conditioning Sense amplifiers Column multiplexing 55:035 Computer Architecture and Organization

55:035 Computer Architecture and Organization Bitline Conditioning Precharge bitlines high before reads Equalize bitlines to minimize voltage difference when using sense amplifiers 55:035 Computer Architecture and Organization

55:035 Computer Architecture and Organization Differential Pair Amp Differential pair requires no clock But always dissipates static power 55:035 Computer Architecture and Organization

55:035 Computer Architecture and Organization Column Multiplexing Recall that array may be folded for good aspect ratio Ex: 2 kword x 16 folded into 256 rows x 128 columns Must select 16 output bits from the 128 columns Requires 16 8:1 column multiplexers 55:035 Computer Architecture and Organization

55:035 Computer Architecture and Organization Multiple Ports We have considered single-ported SRAM One read or one write on each cycle Multiported SRAM are needed for register files Examples: 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 55:035 Computer Architecture and Organization

55:035 Computer Architecture and Organization 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 55:035 Computer Architecture and Organization

55:035 Computer Architecture and Organization Multi-Ported SRAM Adding more access transistors hurts read stability Multiported SRAM isolates reads from state node Single-ended design minimizes number of bitlines 55:035 Computer Architecture and Organization

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) 55:035 Computer Architecture and Organization

55:035 Computer Architecture and Organization Shift Register Shift registers store and delay data Simple design: cascade of registers Watch your hold times! 55:035 Computer Architecture and Organization

Denser Shift Registers Flip-flops aren’t very area-efficient For large shift registers, keep data in SRAM instead Move read/write pointers to RAM rather than data Initialize read address to first entry, write to last Increment address on each cycle 55:035 Computer Architecture and Organization

55:035 Computer Architecture and Organization Tapped Delay Line A tapped delay line is a shift register with a programmable number of stages Set number of stages with delay controls to mux Ex: 0 – 63 stages of delay 55:035 Computer Architecture and Organization

55:035 Computer Architecture and Organization Serial In Parallel Out 1-bit shift register reads in serial data After N steps, presents N-bit parallel output 55:035 Computer Architecture and Organization

55:035 Computer Architecture and Organization Parallel In Serial Out Load all N bits in parallel when shift = 0 Then shift one bit out per cycle 55:035 Computer Architecture and Organization

55:035 Computer Architecture and Organization Queues Queues allow data to be read and written at different rates. Read and write each use their own clock, data Queue indicates whether it is full or empty Build with SRAM and read/write counters (pointers) 55:035 Computer Architecture and Organization

55:035 Computer Architecture and Organization 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 55:035 Computer Architecture and Organization

Memory Timing: Approaches DRAM Timing Multiplexed Adressing SRAM Timing Self-timed 55:035 Computer Architecture and Organization

Non-Volatile Memories Floating-gate transistor Schematic symbol G S D Floating gate Source Substrate Gate Drain n + +_ p t ox Device cross-section 55:035 Computer Architecture and Organization

NOR Flash Operations ―Erase 55:035 Computer Architecture and Organization

55:035 Computer Architecture and Organization NOR Flash Operations ―Program 55:035 Computer Architecture and Organization

NOR Flash Operations ―Read 55:035 Computer Architecture and Organization

55:035 Computer Architecture and Organization NAND Flash Memory Unit Cell Word line(poly) Source line (Diff. Layer) 55:035 Computer Architecture and Organization Courtesy Toshiba

Read-Write Memories (RAM) Static (SRAM) Data stored as long as supply is applied Large (6 transistors/cell) Fast Differential Dynamic (DRAM) Periodic refresh required Small (1-3 transistors/cell) Slower Single Ended 55:035 Computer Architecture and Organization

55:035 Computer Architecture and Organization 1-Transistor DRAM Cell Write: Cs is charged or discharged by asserting WL and BL Read: Charge redistribution takes place between bit line and storage capacitance Voltage swing is small; typically around 250 mV 55:035 Computer Architecture and Organization

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. 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 VDD 55:035 Computer Architecture and Organization

55:035 Computer Architecture and Organization Sense Amp Operation Δ V (1) (0) t PRE BL Sense amp activated Word line activated 55:035 Computer Architecture and Organization

55:035 Computer Architecture and Organization DRAM Timing 55:035 Computer Architecture and Organization