Memory Basics. historically defined as memory array with individual bit access refers to memory with both Read and Write capabilities

Similar documents
Lecture 12 Memory Circuits. Memory Architecture: Decoders. Semiconductor Memory Classification. Array-Structured Memory Architecture RWM NVRWM ROM

Static Random Access Memory - SRAM Dr. Lynn Fuller Webpage:

EE 330 Lecture 44. Digital Circuits. Dynamic Logic Circuits. Course Evaluation Reminder - All Electronic

Semiconductor Memory: DRAM and SRAM. Department of Electrical and Computer Engineering, National University of Singapore

Homework 10 posted just for practice. Office hours next week, schedule TBD. HKN review today. Your feedback is important!

Lecture #29. Moore s Law

CMPEN 411 VLSI Digital Circuits Spring Lecture 24: Peripheral Memory Circuits

CMOS VLSI Design (A3425)

EEC 118 Lecture #12: Dynamic Logic

Electronic Circuits EE359A

In this lecture: Lecture 8: ROM & Programmable Logic Devices

EE 330 Lecture 44. Digital Circuits. Ring Oscillators Sequential Logic Array Logic Memory Arrays. Final: Tuesday May 2 7:30-9:30

Topics. Memory Reliability and Yield Control Logic. John A. Chandy Dept. of Electrical and Computer Engineering University of Connecticut

Memory (Part 1) RAM memory

FPGA Based System Design

電子電路. Memory and Advanced Digital Circuits

Introduction to CMOS VLSI Design (E158) Lecture 9: Cell Design

Lecture 9: Cell Design Issues

A Robust Low Power Static Random Access Memory Cell Design

Lecture 6: Electronics Beyond the Logic Switches Xufeng Kou School of Information Science and Technology ShanghaiTech University

Reference. Wayne Wolf, FPGA-Based System Design Pearson Education, N Krishna Prakash,, Amrita School of Engineering

Preface to Third Edition Deep Submicron Digital IC Design p. 1 Introduction p. 1 Brief History of IC Industry p. 3 Review of Digital Logic Gate

PHYSICAL STRUCTURE OF CMOS INTEGRATED CIRCUITS. Dr. Mohammed M. Farag

TECHNO INDIA BATANAGAR (DEPARTMENT OF ELECTRONICS & COMMUNICATION ENGINEERING) QUESTION BANK- 2018

Code No: R Set No. 1

Digital Integrated CircuitDesign

PE713 FPGA Based System Design

Energy-Recovery CMOS Design

Memory, Latches, & Registers

Lecture 4&5 CMOS Circuits

MTLE-6120: Advanced Electronic Properties of Materials. Semiconductor transistors for logic and memory. Reading: Kasap

DESIGN & IMPLEMENTATION OF SELF TIME DUMMY REPLICA TECHNIQUE IN 128X128 LOW VOLTAGE SRAM

Chapter 3. H/w s/w interface. hardware software Vijaykumar ECE495K Lecture Notes: Chapter 3 1

BASIC PHYSICAL DESIGN AN OVERVIEW The VLSI design flow for any IC design is as follows

Option 1: A programmable Digital (FIR) Filter

UNIT IV. Logic families can be classified broadly according to the technologies they are built with. The various technologies are listed below.

CS302 - Digital Logic Design Glossary By

Module 4 : Propagation Delays in MOS Lecture 19 : Analyzing Delay for various Logic Circuits

ECE380 Digital Logic

CPE/EE 427, CPE 527 VLSI Design I: Homeworks 3 & 4

Chapter 3 Digital Logic Structures

EE 330 Lecture 12. Devices in Semiconductor Processes. Diodes

INSTITUTE OF AERONAUTICAL ENGINEERING (Autonomous) Dundigal, Hyderabad

2009 Spring CS211 Digital Systems & Lab 1 CHAPTER 3: TECHNOLOGY (PART 2)

Self-timed Refreshing Approach for Dynamic Memories

EC 1354-Principles of VLSI Design

! Sequential Logic. ! Timing Hazards. ! Dynamic Logic. ! Add state elements (registers, latches) ! Compute. " From state elements

EEC 118 Lecture #11: CMOS Design Guidelines Alternative Static Logic Families

2 MARK QUESTIONS & ANSWERS UNIT1-MOS TRANSISTOR PRINCIPLE

Zero Steady State Current Power-on-Reset Circuit with Brown-Out Detector

LECTURE 7. OPERATIONAL AMPLIFIERS (PART 2)

INF4420. Outline. Switched capacitor circuits. Switched capacitor introduction. MOSFET as an analog switch 1 / 26 2 / 26.

A Low-Power SRAM Design Using Quiet-Bitline Architecture

Memory, Latches, & Registers

Lecture 8: Memory Peripherals

s(t) s(t-dt) s(t-2dt) s(t-3dt) s(t-ndt) s(t)

Objective Questions. (a) Light (b) Temperature (c) Sound (d) all of these

Lecture Perspectives. Administrivia

Analysis of Low Power-High Speed Sense Amplifier in Submicron Technology

CMOS Digital Logic Design with Verilog. Chapter1 Digital IC Design &Technology

A Novel Technique to Reduce Write Delay of SRAM Architectures

Lecture 30. Perspectives. Digital Integrated Circuits Perspectives

NXP. P5CC052 Secure Contact PKI Smart Card Controller. Analog Circuit Analysis

Implementation of dual stack technique for reducing leakage and dynamic power

BICMOS Technology and Fabrication

Design of Low Power Vlsi Circuits Using Cascode Logic Style

Introduction to CMOS VLSI Design (E158) Lecture 5: Logic

PROGRAMMABLE ASICs. Antifuse SRAM EPROM

ESE 570: Digital Integrated Circuits and VLSI Fundamentals

Designing of Low-Power VLSI Circuits using Non-Clocked Logic Style

VLSI Implementation of a Simple Spiking Neuron Model

CMOS VLSI Design (A3425)

MOSFETS: Gain & non-linearity

Microelectronics, BSc course

[Vivekanand*, 4.(12): December, 2015] ISSN: (I2OR), Publication Impact Factor: 3.785

Architecture of Computers and Parallel Systems Part 9: Digital Circuits

Device Technologies. Yau - 1

EE141- Spring 2004 Digital Integrated Circuits

EECS150 - Digital Design Lecture 19 CMOS Implementation Technologies. Recap and Outline

Chapter 2 : Semiconductor Materials & Devices (II) Feb

Design and Implement of Low Power Consumption SRAM Based on Single Port Sense Amplifier in 65 nm

BiCMOS Circuit Design

Lecture 11: Clocking

Module-3: Metal Oxide Semiconductor (MOS) & Emitter coupled logic (ECL) families

! Is it feasible? ! How do we decompose the problem? ! Vdd. ! Topology. " Gate choice, logical optimization. " Fanin, fanout, Serial vs.

Topic 6. CMOS Static & Dynamic Logic Gates. Static CMOS Circuit. NMOS Transistors in Series/Parallel Connection

Digital Design and System Implementation. Overview of Physical Implementations

An Analog Phase-Locked Loop

Synthesis of Combinational Logic

Lecture 18. BUS and MEMORY

Digital Integrated Circuits Designing Combinational Logic Circuits. Fuyuzhuo

Digital Microelectronic Circuits ( ) CMOS Digital Logic. Lecture 6: Presented by: Adam Teman

Sleepy Keeper Approach for Power Performance Tuning in VLSI Design

Analog I/O. ECE 153B Sensor & Peripheral Interface Design Winter 2016

Disseny físic. Disseny en Standard Cells. Enric Pastor Rosa M. Badia Ramon Canal DM Tardor DM, Tardor

DIGITAL ELECTRONICS QUESTION BANK

Low Power Design of Schmitt Trigger Based SRAM Cell Using NBTI Technique

EE 330 Lecture 43. Digital Circuits. Other Logic Styles Dynamic Logic Circuits

EECS150 - Digital Design Lecture 15 - CMOS Implementation Technologies. Overview of Physical Implementations

Fan in: The number of inputs of a logic gate can handle.

Transcription:

Memory Basics RAM: Random Access Memory historically defined as memory array with individual bit access refers to memory with both Read and Write capabilities ROM: Read Only Memory no capabilities for online memory Write operations Write typically requires high voltages or erasing by UV light Volatility of Memory volatile memory loses data over time or when power is removed RAM is volatile non-volatile memory stores date even when power is removed ROM is non-volatile Static vs. Dynamic Memory Static: holds data as long as power is applied (SRAM) Dynamic: must be refreshed periodically (DRAM) ECE 410, Prof. A. Mason/Prof. F. Salem Lecture Notes 13.1 1

SRAM Basics SRAM = Static Random Access Memory Static: holds data as long as power is applied Volatile: can not hold data if power is removed Operation States 3 states (modes) hold write read Basic 6T (transistor) SRAM Cell bistable (cross-coupled) INVs for storage access transistors MAL & MAR access to stored data for read and write word line, WL, controls access WL = 0, hold operation WL = 1, read or write operation bit MAL WL MAR bit ECE 410, Prof. A. Mason/Prof. F. Salem Lecture Notes 13.2 2

Hold SRAM Operations word line = 0, access transistors are OFF data held in latch Write word line = 1, access tx are ON new data (voltage) applied to bit and bit_bar data in latch overwritten with new value Read word line = 1, access tx are ON bit and bit_bar read by a sense amplifier Sense Amplifier basically a simple differential (transconductance) amplifier comparing the difference between bit and bit_bar if bit > bit_bar, output is 1 if bit < bit_bar, output is 0 allows output to be set quickly without fully charging/discharging bit line bit MAL WL MAR bit ECE 410, Prof. A. Mason/Prof. F. Salem Lecture Notes 13.3 3

SRAM Bit Cell Circuit Two SRAM cells dominate CMOS industry 6T Cell all CMOS transistors better noise immunity 4T Cell replaces pmos with high resistance (~1GΩ) resistors slightly smaller than 6T cell requires an extra high-resistance process layer ECE 410, Prof. A. Mason/Prof. F. Salem Lecture Notes 13.4 4

6T Cell Design Critical Design Challenge inverter sizing to ensure good hold and easy/fast overwrite use minimum sized transistors to save area unless more robust design required Write Operation both bit and bit_bar applied inputs to inverters both change unlike DFF where one INV overrides the other critical size ratio, β A /β n Write 1 Operation see resistor model want R n & R p larger than R A» so voltage will drop across R n, R p typical value, β A /β n =2 so R n = 2 R A set by ratio (W/L) A to (W/L) n Resistor Model ECE 410, Prof. A. Mason/Prof. F. Salem Lecture Notes 13.5 5

Design Challenge SRAM Cell Layout minimum cell size (for high density SRAM array) with good access to word and bit lines Example Layout note WL routed in poly will create a large RC delay for large SRAM array ECE 410, Prof. A. Mason/Prof. F. Salem Lecture Notes 13.6 6

SRAM Arrays N x n array of 1-bit cells n = byte width; 8, 16, 32, etc. N = number of bytes m = number of address bits max N = 2 m Array I/O data, in and out Dn-1 - D0 address Am-1 - A0 control varies with design WE = write enable (assert low) WE=1=read, WE=0=write En = block enable (assert low) Control Address used as chip enable (CE) for an SRAM chip Data I/O ECE 410, Prof. A. Mason/Prof. F. Salem Lecture Notes 13.7 7

SRAM Block Architecture Example: 2-Core design core width = k n n = SRAM word size; 8, 16, etc. k = multiplier factor, 2,3,4,etc. shared word-line circuits horizontal word lines WL set by row decoder Basic SRAM Block Architecture placed in center of 2 cores WL in both cores selected at same time Addressing Operation address word determines which row is active (which WL =1) via row decoder row decoder outputs feed row drivers buffers to drive large WL capacitance Physical Design layout scheme matches regular patterning shown in schematic horizontal and vertical routing Expanded Core View ECE 410, Prof. A. Mason/Prof. F. Salem Lecture Notes 13.8 8

SRAM Array Addressing Standard SRAM Addressing Scheme consider a N x n SRAM array N = number of bytes, e.g., 512, 2k n = byte size, e.g., 8 or 16 m address bits are divided into x row bits and y column bits (x+y=m) address bits are encoded so that 2 m = N array organized with both vertical and horizontal stacks of bytes Rows 1 SRAM byte Columns ECE 410, Prof. A. Mason/Prof. F. Salem Lecture Notes 13.9 9

SRAM Array Addressing Address Latch Address Latch D-latch with enable and output buffers outputs both A and A_bar Address Bits Row address bits = Word Lines, WL Column address bits select a subset of bits activated by WL Column Organization typically, organized physically by bits, not by bytes Example, SRAM with 4-bit bytes in 3 columns (y=3) 3 4-bit bytes in each row 4 (Row) Word Line th bits 3 rd bits 2 nd bits 1 s bits Column Address y 0 y 1 y 2 D 3 D 2 D 1 D 0 1 SRAM bit Byte 1 Byte 2 Byte 3 vertical bit lines bit_bar not shown ECE 410, Prof. A. Mason/Prof. F. Salem Lecture Notes 13.10 10

SRAM Array Column Circuits SRAM Row Driver decoder output, Dec_out enable, En, after address bits decoded pullups Row Driver Circuit Row Decoder/Driver activate a row of cells size-scaled buffers each 2-core row contains 2k bytes (2k n bits) Column Multiplexors address signals select one of the k bytes as final output not used in row decoder Column MUX/DeMUXs figure shows example for k=3 for an 8-bit RAM (word size) MUX used for Read operations De MUX used for Write op.s Column Drivers bit/bit_bar output for Write operations Column Driver Circuit ECE 410, Prof. A. Mason/Prof. F. Salem Lecture Notes 13.11 11

Column Circuitry Precharge Concept common to use dynamic circuits in SRAMS dynamic circuits have precharge and evaluate phases precharge high capacitance on bit lines avoids heavy capacitive loading on each SRAM cell Precharge Phase all bit lines pulled to VDD all bit_bar pulled to VDD Evaluate Phase bits activated by WL connect to bit lines; Remove precharge CLOCK=1 if bit = 1, sense-amp=1 if bit = 0, sense-amp=0 Data In Data Out ECE 410, Prof. A. Mason/Prof. F. Salem Lecture Notes 13.12 12

Bit line (column) Circuitry expanded (transistor-level) view of SRAM column pmos precharge loads - charge when φ = 0 word lines (row address) nmos switches select which column/bit is passed to Read/Write circuit column address ECE 410, Prof. A. Mason/Prof. F. Salem Lecture Notes 13.13 13

Sense Amplifiers Read sensing scheme look at differential signal bit and bit_bar can get output before bit lines fully charge/discharge by amplifying differential signals Differential Amplifier Differential Amplifier (trans-amp) simple analog circuit output high if bit > bit_bar output low if bit_bar > bit can implement as dynamic circuit f Iss ( d d ) ECE 410, Prof. A. Mason/Prof. F. Salem Lecture Notes 13.14 14

DRAM Basics DRAM = Dynamic Random Access Memory Volatile: loses data when power is removed Dynamic: must be refreshed periodically Comparison to SRAM DRAM is smaller & less expensive per bit SRAM is faster DRAM requires more peripheral circuitry 1T DRAM Cell single access nfet storage capacitor (referenced to VDD or Ground) control input: word line, WL data I/O: bit line ECE 410, Prof. A. Mason/Prof. F. Salem Lecture Notes 13.15 15

DRAM Operation RAM data is held on the storage capacitor temporary due to leakage currents which drain charge Charge Storage if Cs is charged to Vs Qs = Cs Vs if Vs = 0, then Qs = 0: LOGIC 0 if Vs = large, then Qs > 0: LOGIC 1 Write Operation turn on access transistor: WL = VDD apply voltage, Vd (high or low), to bit line Cs is charged (or discharged) if Vd = 0 Vs = 0, Qs = 0, store logic 0 if Vd = VDD Vs = VDD-Vtn, Qs = Cs(VDD=Vtn), logic 1 Hold Operation turn off access transistor: WL = 0 charge held on Cs ECE 410, Prof. A. Mason/Prof. F. Salem Lecture Notes 13.16 16

Hold Time During Hold, leakage currents will slowly discharge Cs due to leakage in the access transistor when it is OFF I L = -δqs/δt = -Cs δvs/δt if I L is known, can determine discharge time Hold Time, t h max time voltage on Cs is high enough to be a logic 1 = time to discharge from Vmax to V1 (in figure above) t h = (Cs/I L )(ΔVs), if we estimate I L as a constant desire large hold time 1000000 100000 t h increases with larger Cs and lower I L typical value, t h = 50μsec with I L = 1nA, Cs=50fF, and ΔVs=1V Error in textbook, says 0.5μsec near Eqn. 13.15 hold time (usec) 10000 1000 100 10 1 0.1 0.0001 0.001 0.01 0.1 1 10 100 leakage current (na) ECE 410, Prof. A. Mason/Prof. F. Salem Lecture Notes 13.17 17

Refresh Rate DRAM is Dynamic, data is stored for only short time Refresh Operation to hold data as long as power is applied, data must be refreshed periodically read every cell amplify cell data rewrite data to cell Refresh Rate, f refresh frequency at which cells must be refreshed to maintain data f refresh = 1 / 2t h for each cell, i.e., every time t h you refresh for t h ff refresh =1/t h -- for all memory array Choose ff refresh =2/t h must include refresh circuitry in a DRAM circuit Refresh operation ECE 410, Prof. A. Mason/Prof. F. Salem Lecture Notes 13.18 18

Refreshing Every DRAM needs to be refreshed every time =< t h Suppose the refreshing operation takes t r. What is the maximum number of cells (array size) can you refresh? ECE 410, Prof. A. Mason/Prof. F. Salem Lecture Notes 13.19 19

Read Operation DRAM Read Operation turn on access transistor charge on Cs is redistributed on the bit line capacitance, Cbit this will change the bit line voltage, Vbit which is amplified to read a 1 or 0 Charge Redistribution initial charge on Cs: Qs = Cs Vs redistributed on Cbit until Vbit = Vs = Vf (final voltage) Qs = Cs Vf + Cbit Vf Cs Vs = Vf (Cs + Cbit) due to charge conservation Vf = Cs Vs / (Cs + Cbit), which is always less than Vs Vf typically very small and requires a good sense amplifier ECE 410, Prof. A. Mason/Prof. F. Salem Lecture Notes 13.20 20

DRAM Physical Design Physical design (layout) is CRITICAL in DRAM high density is required for commercial success current technology provides > 1Gb on a DRAM chip Must minimize area of the 1T DRAM cell typically only 30% of the chip is needed for peripherals (refresh, etc.) For DRAM in CMOS, must minimize area of storage capacitor but, large capacitor (> 40fF) is good to increase hold time, t h Storage Capacitor Examples trench capacitor junction cap. with large junction area using etched pit stacked capacitor cap. on top of access tx using poly plate capacitor ECE 410, Prof. A. Mason/Prof. F. Salem Lecture Notes 13.21 21

ROM: Read Only Memory ROM Basics no capabilities for online memory Write operations data programmed during fabrication: ROM with high voltages: PROM by control logic: PLA Non-volatile: data stored even when power is removed NOR-based ROM Example: 8b words stored by NOR-based ROM address selects an active row each output bit connected to the active row will be high otherwise, output will be low ECE 410, Prof. A. Mason/Prof. F. Salem Lecture Notes 13.22 22

Pseudo-nMOS ROM Pseudo-nMOS always ON active pmos load pulls output high if nmos is off controlled nmos switch pulls output low if input is high competes with pmos must be sized properly consumes power when output is low ROM Structure address is decoded to choose and active row each row line turns on nmos where output is zero otherwise, output stays high Set ROM Data by selectively connecting nmos to the output lines pmos pull-ups nmos pull-downs outputs ECE 410, Prof. A. Mason/Prof. F. Salem Lecture Notes 13.23 23

ROM Arrays Pseudo nmos Arrays most common style for large ROMS Design Concerns nmos must overdrive pmos need β n > β p so that V OL is low enough must set Wn > Wp but, this also increases row line capacitance requires careful analog design Programming Methods mask programmable create nmos at all points define data with poly contacts layout programmable only place nmos where needed shown in figure ECE 410, Prof. A. Mason/Prof. F. Salem Lecture Notes 13.24 24

very regular layout high packing density one tx for each data point ROM Array Layout ECE 410, Prof. A. Mason/Prof. F. Salem Lecture Notes 13.25 25

PROM programmable by user Programmable ROM using special program tools/modes read only memory during normal use non-volatile Read Operation like any ROM: address bits select output bit combinations Write Operation typically requires high voltage (~15V) control inputs to set data Erase Operation to change data EPROM: erasable PROM: uses UV light to reset all bits EEPROM: electrically-erasable PROM, erase with control voltage ECE 410, Prof. A. Mason/Prof. F. Salem Lecture Notes 13.26 26

Physical Structure pair of stacked poly gates PROM Storage Cells top gate acts as normal access/control gate bottom gate is floating, changes threshold voltage Cell Operation no charge on floating gate transistor has normal Vtn negative charge on floating gate opposes action of applied gate voltage keeps transistor turned off unless a high Vtn H is applied; Vtn H > VDD so will not turn on with normal voltages ECE 410, Prof. A. Mason/Prof. F. Salem Lecture Notes 13.27 27

EPROM Arrays Structure is similar to a RAM Array WL selects which word of data will connect to output When WL is high each tx in the selected data byte will set the output bit line if floating gate has no charge, bit line will pull down for a LOGIC 0 if floating gate is charged, tx will not turn on and bit line will remain high for a LOGIC 1 one word in an 8b-wide EPROM Column circuitry can be used to form arrays, as in RAM ECE 410, Prof. A. Mason/Prof. F. Salem Lecture Notes 13.28 28

Programming & Erasing E 2 PROMs Programming techniques hot electron method charge (electrons) transferred to the floating gate by quantum mechanical tunneling of hot electrons (high energy electrons) accomplished by applying a high voltage (~12-30V) to the drain node charge can remain on floating gate for 10-20 years! Fowler-Nordheim emission uses modified gate geometry to allow quantum mechanical tunneling from the drain into the floating gate Erasure Techniques bit erasure: by reversing programming voltages flash EPROMs: erase large block simultaneously ECE 410, Prof. A. Mason/Prof. F. Salem Lecture Notes 13.29 29

Programmable Logic Arrays Programmable Logic Array: PLA circuit which can be programmed to provide various logic functions Example: Sum-of-Products PLA with four inputs (a, b, c, d), the possible SOP outputs are f = Σ m i (a,b,c,d) [OR minterms] where m i (a,b,c,d) are the minterms has an AND-OR structure which can be reproduced in circuits [AND inputs] ECE 410, Prof. A. Mason/Prof. F. Salem Lecture Notes 13.30 30

AND-OR PLA Implementation Logic Array Diagram example for fx = m0 + m4 + m5 fy = m3 + m4 + m5 + m15 etc. Programming PLA transistor switch at each optional connection location turn tx on to make connection VLSI Implementation replace AND-OR with NOR gates 15 error in text ECE 410, Prof. A. Mason/Prof. F. Salem Lecture Notes 13.31 31

Gate array chip contains a huge array of logic gates programmable connections Gate Arrays allows gates to be combined to make larger functions (e.g., DFF) Field Programmable Gate Array (FGPA) connections can be programmed easily to redefine function can have more than 100,000 logic gates on an FPGA capable of emulating complex functions, like a 32-bit microprocessor program techniques: the antifuse concept physical design: built-in fuses where connections might be wanted high current short-circuits the fuse to create low resistance path ECE 410, Prof. A. Mason/Prof. F. Salem Lecture Notes 13.32 32