Memory in Digital Systems
|
|
- Simon Holmes
- 6 years ago
- Views:
Transcription
1 MEMORIES
2 Memory in Digital Systems Three primary components of digital systems Datapath (does the work) Control (manager) Memory (storage) Single bit ( foround ) Clockless latches e.g., SR latch Clocked transparent latches e.g., D latch Clocked edge-triggered flip flops e.g., D FF Array memories ( background ) B. Baas 22
3 Memories Use in general digital processors Instructions Data Usage is more widespread in DSP, multimedia, embedded processors Buffering input/intermediate/output data (e.g., rate matching) Storing fixed numbers (e.g., coefficients) Often relatively small (e.g., words) and numerous (dozens are not unusual) Key design goal: density, especially for the memory s. This means fitting the largest amount of memory storage into a certain amount of chip area B. Baas 23
4 wordlines Memories Memories generally contain several components: Array of s Address decoder Write circuitry Read circuitry (sense amplifiers) wordlines bitlines Interface signals Address (one for each port) Data (one for each port) Enable_write Enable_read (likely) Clock (sometimes) word or address decoder Addr bitlines write/read circuitry B. Baas 24 Data_rd Data_wr
5 bitlines Memories Differential bitlines Differential bitlines (bitline and bitline_) require more area but dramatically increase robustness and speed Much smaller voltage differences can be detected Much more noise can be tolerated Address decoder Read / (Write) circuitry wordline B. Baas 25
6 Array Memory View 1: Types 1. Read-write memories SRAM: Static random access memory Data is stored as the state of a bistable circuit typically using back-to-back inverters State is retained without refresh as long as power is supplied DRAM: Dynamic random access memory Data is stored as a charge on a capacitor State leaks away, refresh is required 2. ROM: Read-only memory, non-volatile Basic ROM mask programmed at design time PROM: Programmable read-only memory; typically programmed at manufacture time by a PROM burner Using fuse or anti-fuse circuits Synthesized from standard s 3. NVRWM: Non-volatile read-write memory EPROM: Erasable ROM, erasable with UV light Flash: ROM at low voltages, writable at high voltages B. Baas 26
7 Memory View 2: Logical Categories Combinational (output depends on present inputs only) ROM: read-only memory May be truly straight-through combinational, or istered Feels like Combinational but technically Sequential PROM: programmable read-only memory EPROM: ROM, but erasable with UV light Sequential (output depends on present and past inputs) SRAM: static memory DRAM: dynamic memory Flash: ROM at low voltages, writable at high voltages B. Baas 27
8 INV INV INV INV INV INV INV INV Decoder Design Example: 256-word memory (8 addr bits) Straightforward approach Route 8 address wires plus inverted versions (16 wires) along array Each word uses an 8-input AND gate Each long wire has N/2=128 gate loads AND AND AND B. Baas 28
9 Decoder Design Critical path INV + 8-input AND Neglect assertion level because we ll have to add a number of inverters (buffers) anyway Building an 8-input AND: AND-AND (inefficient) NAND-NOR (better) Total critical path INV + 4-input NAND + 2-input NOR, or INV + 3-input NAND + 3-input NOR INV 8-in AND 8-in AND 8-in AND B. Baas 29
10 Decoder Design Predecoding Example: 256-word memory (8 addr bits) Predecode Ex: take groups of 2 address bits Four possibilities; activate one of four wires (use 2 INVs, 4 ANDs) Wires along array: 4 * (8/2) = 4 groups of 4 = 16 (same as nonpredecoded) Each word uses a 4-input AND gate (much faster) Each long wire has N/4=64 gate loads (half of other approach!) Works best with large memories May have less toggling May be faster AND AND AND B. Baas 30
11 Decoder Design Predecoding Critical path Predecoder + 4-input AND Neglect assertion level because we ll have to add a number of inverters (buffers) anyway INV + 2-input AND + 4-input AND May be able to use NANDs instead of ANDs 4AND 4AND 4AND AND INV B. Baas 31
12 Six-Transistor (6T) SRAM Cell BL BL Q Q WL Cross-coupled inverters: a bistable element (two stable states) Density is critically important in memories Single NMOS used for reading/writing A lot of effort spent packing transistors and even pushing process design rules just for the 6T memory the area of a 6T is typically one of the top critical parameters of a fabrication technology! B. Baas
13 SRAM Cell Cross-coupled inverters: a bistable element (two stable states) Density is critically important in memories Single NMOS used for reading/writing A lot of effort spent packing transistors and even pushing process design rules just for the 6T memory B. Baas 33 Retrieved November 17, 2016
14 6-Transistor (6T) Cells Micro-photograph of 0.16 µm 2 6T SRAM s from an AMD Radeon graphics processor fabraicated in TSMC s 28 nm HP process B. Baas 36 [Chipworks]
15 Memory Array Human hair on a 256 Kbit memory chip B. Baas 40 Source: Helmut Föll
16 Multi-ported SRAM Frequently used in ister files Classic RISC computers have 1 write and 2 read ports Modern multiple-instruction-issue computers can have many ports (22 (12 Rd, 10 Wr) in Itanium [ISSCC 05]) More commonly use single-ended (non-differential) bitlines Addr/Data Addr/Data 2 write ports Memory 4 read ports B. Baas 45
17 Multi-ported SRAM Example: one write port, two read ports Write bitline Read bitline 0 Read bitline 1 Write wordline Read wordline 0 Read wordline 1 B. Baas
18 DRAM Smaller size (1T ) One transistor to access Often has special structure for capacitor (trench capacitor) that is not available in standard fabrication technologies Single bitline to read and write the memory Must be periodically refreshed Write operation: Wordline at Vdd Bitline value stored on capacitor Trench capacitor B. Baas 51 WL BL Q
19 DRAM Classic DRAM High density dedicated DRAM chips typically packaged in DIMMs Top manufacturers include: Samsung (47%), Hynix (26%), Micron (19%), and others. [Source: Statista, for Q2 2016] Embedded DRAM (edram) DRAM arrays are also available as a process option for standard logic -type CMOS fabrication technologies Ex: IBM 22 nm z Processor CP Microprocessor chip on left: 8 cores, 64MB of edram Level-3 cache, 678 mm2 die area, 4.0 billion transistors, 17 metal layers. edram is used for Level-3 cache and memory controller; and also inside each processor for Level-2 and Branch Target Buffer caches. SC System Controller chip on right: 480 MB of edram Level-4 cache, 678 mm2 die area, 7.1 billion transistors, 15 metal layers [Source: 22nm Next-Generation IBM System z Microprocessor, ISSCC, 2015.] B. Baas 52
20 DRAM Read operation: Wordline at Vdd Bitline precharged to intermediate voltage level (e.g., Vdd/2) Read bitline voltage is the charge shared result of storage capacitor and bitline capacitance C_ ~ C_bitline / (10-100) ΔV_bitline ~ 250 mv Read is a destructive read and value must be re-written to be read again Circuit challenges: More complex sense amplifiers Many use differential sense amplifier with dummy Higher noise susceptibility Vdd not needed in array B. Baas 53 WL BL Q
21 Trench Capacitor Deep trench capacitor provides high capacitance per area Example to the right shows a DRAM cross section B. Baas
22 Memory Array Human hair on a 4 Mbit memory chip Note DRAM trench capacitors B. Baas 55 Source: Helmut Föll
23 Memory Array Red blood s on a 1 Mbit memory chip B. Baas 56 Source: Helmut Föll
24 ROM Similar to DRAM except the source of the access transistor is tied to Gnd directly For the other value (BL 0), the circuit is modified so that nothing happens when WL goes high. Possibilities include: Omit -Gnd to global-gnd connection Omit source-to-gnd or drain-to-bitline contact Omit poly to WL contact Omit MOS transistor diffusion Omit transistor entirely In this particular example circuit: A circuit to precharge bitlines is needed but not shown bitline is driven low very strongly when a transistor is present ROMs are typically among the densest of all circuits Keep in mind that sometimes it is more efficient to use synthesized random logic instead of a ROM, especially if the stored data contains patterns and is not highly random WL WL BL Gnd Gnd B. Baas 57
25 Memory View 3: Memory Types for Custom- Designed Chips (Also known as "ASICs") Memories for custom processors can be built in a number of ways: 1) On-chip macro memory arrays Think of as a single giant standard FPGAs include them ( block RAMs or block memory ) 2) On-chip memory synthesized from standard s 3) Off-chip memories (perhaps for > approx. 10 MB) Very large DRAM Non-volatile memory such as flash memory (We could also include disks, NAS, cloud, etc.) B. Baas 60
26 1) Memory Macro-s Memory macro- generators are available for larger memories Typically a software tool generates a large variety of possible memories where a user may select options such as: Number of words Word-width (in bits) Number of read ports Number of write ports Rd/wr or ROM Built-in test circuits Registered inputs and/or outputs Tool produces models for verilog, place & route, and other CAD views RAM macro B. Baas 61
27 1) On-chip macro memory arrays Generally very area efficient due to dense memory s (singleported memories likely use 6-transistor (6T) memory s) Generally good energy efficiency due to lowactivity memory array architecture Example: CMOS chip B. Baas 62 [T. Nanya, et al., TITAC um CMOS, 496K transistors, mm mm processor]
28 1) On-chip macro memory arrays: FPGAs Example: FPGA Altera Max 10 10M50DAF484C7G chip Yellow rectangles are M9K memory blocks Each block contains 8192 bits (9216 including parity) 182 on each chip Total of 182 KBytes (204 KB) Light-blue rectangles: Logic Array Blocks (LAB) White rectangles: hardware 18x18 multipliers (144 on chip) B. Baas 63
29 2) Synthesized Memory Can synthesize memory from standard s clk Memory s are now flip-flops clk likely routed to all s Probably best for small memories only Read bitline logic may be muxes word or address decoder write/read circuitry B. Baas 64
30 2) Synthesized Memory Standard layout is typically irular Wires not shown Clocks routed to each (flip-flop) INV & BUF OR BUF & MUX MUX BUF OR & MUX BUF OR B. Baas 65
31 Verilog Memories Declaring a 16-bit, 128-word memory [15:0] Mem [0:127]; Reading a memory source1 = Mem[addr_rd]; Writing a memory For this class, always use non-blocking writes Read operation reads old previous cycle data Mem[addr_wr] <= #1 c_datapath_out; // makes sense for FF memory B. Baas 66
32 Verilog Memories This memory performs writes on the positive edge of the clock when write_enable is high The output is not controlled by the clock and outputs the correct memory word for any address on addr_rd Picture a large mux tree connecting every word in the memory to the output port Sometimes called an asynchronous read [15:0] mem [0:127]; clk) begin if (write_enable == 1 b1) begin mem[addr_wr] <= #1 data_in; end end assign data_out = mem[addr_rd]; B. Baas 67
33 Verilog Memories This memory also performs writes on the positive edge of the clock when write_enable is high However it contains a synchronous read which updates the output port only on the active edge of the clock [15:0] mem [0:127]; clk) begin if (write_enable == 1 b1) begin mem[addr_wr] <= #1 data_in; end data_out <= #1 mem[addr_rd]; end There is now one clock cycle of delay from when addr_rd is valid to when the read output is valid The M9K memory blocks in Altera FPGAs work this way B. Baas 68
34 Verilog Memories Reading and writing Cannot access a portion of a word without first reading the whole word in many simulators and CAD tools (though it is supported in some tools). Good practice to not do it! So don t in this class. source1 = Mem[addr_rd][5]; // won t work sometimes temp = Mem[addr_rd]; // use these 2 lines instead source1 = temp[5]; Multiple unclocked read ports Simply make individual read statements for each read port data1 = Mem[addr_rd1]; data2 = Mem[addr_rd2]; data3 = Mem[addr_rd3]; B. Baas 69
35 ROMs Synthesized Small ROMs can be efficiently synthesized from standard s Implementations are more efficient if the data is less random in an information-theory sense It is advisable to generate tables from a program such as matlab // todo: add default case for safety begin case (input) 4'b0000: begin real=8'b ; imag=8'b ; end // angle = 'b0001: begin real=8'b ; imag=8'b ; end // angle = 'b0010: begin real=8'b ; imag=8'b ; end // angle = 'b0011: begin real=8'b ; imag=8'b ; end // angle = 'b0100: begin real=8'b ; imag=8'b ; end // angle = 'b0101: begin real=8'b ; imag=8'b ; end // angle = 'b0110: begin real=8'b ; imag=8'b ; end // angle = 'b0111: begin real=8'b ; imag=8'b ; end // angle = 'b1000: begin real=8'b ; imag=8'b ; end // angle = 'b1001: begin real=8'b ; imag=8'b ; end // angle = 'b1010: begin real=8'b ; imag=8'b ; end // angle = 'b1011: begin real=8'b ; imag=8'b ; end // angle = 'b1100: begin real=8'b ; imag=8'b ; end // angle = 'b1101: begin real=8'b ; imag=8'b ; end // angle = 'b1110: begin real=8'b ; imag=8'b ; end // angle = 'b1111: begin real=8'b ; imag=8'b ; end // angle = endcase end B. Baas 70
36 ROMs FPGA Block RAM Larger ROMs on FPGAs can make use of block RAMs whose contents can be specified with a verilog initial block Read operations are synchronous and update the output port only on the active edge of the clock [7:0] rom [0:127]; initial begin rom[0] = 8 h35; rom[1] = 8 h2e; rom[2] = 8 hff;... end clk) begin data_out <= #1 rom[addr_rd]; end There is now one clock cycle of delay from when addr_rd is valid to when the read output is valid The M9K memory blocks in Altera FPGAs work this way B. Baas 71
37 Memory Pipelining/Timing Timing Style 1 Style 1: Registers are outside the memory array Memory macros typically ister input addresses and data outside the memory array word or address decoder Memory macro boundary write/read circuitry B. Baas 72
38 Memory Pipelining/Timing Timing Style 1a For cases when the memory is a combinational block Add pipeline isters outside block as appropriate or as needed to meet the target clock frequency Memory Memory B. Baas 73
39 Memory Pipelining/Timing Timing Style 1b For cases when the memory has a built-in ister for its outputs Add a pipeline ister to the inputs as appropriate or as needed to meet the target clock frequency Memory Memory B. Baas 74
40 Memory Pipelining/Timing Timing Style 1c For cases when the memory has a built-in ister for its inputs Add a pipeline ister to the outputs as appropriate or as needed to meet the target clock frequency Memory Memory B. Baas 75
41 Memory Pipelining/Timing Timing Style 2 Style 2: Register is in the middle of the memory array Standard memories store bits in the array in FFs This forces a pipe stage across the middle of the memory array word or address decoder write/read circuitry clk B. Baas 76
42 Memory Pipelining/Timing Timing Style 2 Built-in pipeline stage in memory array May place logic in memory pipe stages to balance pipeline Memory logic Memory logic B. Baas 77
Memory in Digital Systems
MEMORIES Memory in Digital Systems Three primary components of digital systems Datapath (does the work) Control (manager) Memory (storage) Single bit ( foround ) Clockless latches e.g., SR latch Clocked
More informationMemory in Digital Systems
MEMORIES Memory in Digital Systems Three primary components of digital systems Datapath (does the work) Control (manager) Memory (storage) Single bit ( foround ) Clockless latches e.g., SR latch Clocked
More informationMEMORIES. Memories. EEC 116, B. Baas 3
MEMORIES Memories VLSI memories can be classified as belonging to one of two major categories: Individual registers, single bit, or foreground memories Clocked: Transparent latches and Flip-flops Unclocked:
More informationMemory in Digital Systems
OVERVIEW: MEMORIES Memory in Digital Systems Three primary components of digital systems Datapath (does the work) Control (manager) Memory (storage) Single bit ( foreground ) Clockless latches e.g., SR
More informationCENG 4480 L09 Memory 2
CENG 4480 L09 Memory 2 Bei Yu Reference: Chapter 11 Memories CMOS VLSI Design A Circuits and Systems Perspective by H.E.Weste and D.M.Harris 1 v.s. CENG3420 CENG3420: architecture perspective memory coherent
More informationIntroduction to SRAM. Jasur Hanbaba
Introduction to SRAM Jasur Hanbaba Outline Memory Arrays SRAM Architecture SRAM Cell Decoders Column Circuitry Non-volatile Memory Manufacturing Flow Memory Arrays Memory Arrays Random Access Memory Serial
More informationMemory. Outline. ECEN454 Digital Integrated Circuit Design. Memory Arrays. SRAM Architecture DRAM. Serial Access Memories ROM
ECEN454 Digital Integrated Circuit Design Memory ECEN 454 Memory Arrays SRAM Architecture SRAM Cell Decoders Column Circuitry Multiple Ports DRAM Outline Serial Access Memories ROM ECEN 454 12.2 1 Memory
More informationSemiconductor Memory Classification
ESE37: Circuit-Level Modeling, Design, and Optimization for Digital Systems Lec 6: November, 7 Memory Overview Today! Memory " Classification " Architecture " Memory core " Periphery (time permitting)!
More informationSemiconductor Memory Classification. Today. ESE 570: Digital Integrated Circuits and VLSI Fundamentals. CPU Memory Hierarchy.
ESE 57: Digital Integrated Circuits and VLSI Fundamentals Lec : April 4, 7 Memory Overview, Memory Core Cells Today! Memory " Classification " ROM Memories " RAM Memory " Architecture " Memory core " SRAM
More information+1 (479)
Memory Courtesy of Dr. Daehyun Lim@WSU, Dr. Harris@HMC, Dr. Shmuel Wimer@BIU and Dr. Choi@PSU http://csce.uark.edu +1 (479) 575-6043 yrpeng@uark.edu Memory Arrays Memory Arrays Random Access Memory Serial
More informationLecture 11 SRAM Zhuo Feng. Z. Feng MTU EE4800 CMOS Digital IC Design & Analysis 2010
EE4800 CMOS Digital IC Design & Analysis Lecture 11 SRAM Zhuo Feng 11.1 Memory Arrays SRAM Architecture SRAM Cell Decoders Column Circuitryit Multiple Ports Outline Serial Access Memories 11.2 Memory Arrays
More informationECE 485/585 Microprocessor System Design
Microprocessor System Design Lecture 4: Memory Hierarchy Memory Taxonomy SRAM Basics Memory Organization DRAM Basics Zeshan Chishti Electrical and Computer Engineering Dept Maseeh College of Engineering
More informationESE370: Circuit-Level Modeling, Design, and Optimization for Digital Systems
ESE370: Circuit-Level Modeling, Design, and Optimization for Digital Systems Lec 26: November 9, 2018 Memory Overview Dynamic OR4! Precharge time?! Driving input " With R 0 /2 inverter! Driving inverter
More informationMemories. Design of Digital Circuits 2017 Srdjan Capkun Onur Mutlu.
Memories Design of Digital Circuits 2017 Srdjan Capkun Onur Mutlu http://www.syssec.ethz.ch/education/digitaltechnik_17 Adapted from Digital Design and Computer Architecture, David Money Harris & Sarah
More informationSRAM. Introduction. Digital IC
SRAM Introduction Outline Memory Arrays SRAM Architecture SRAM Cell Decoders Column Circuitry Multiple Ports Serial Access Memories Memory Arrays Memory Arrays Random Access Memory Serial Access Memory
More informationLecture 13: SRAM. Slides courtesy of Deming Chen. Slides based on the initial set from David Harris. 4th Ed.
Lecture 13: SRAM Slides courtesy of Deming Chen Slides based on the initial set from David Harris CMOS VLSI Design Outline Memory Arrays SRAM Architecture SRAM Cell Decoders Column Circuitry Multiple Ports
More informationMemory and Programmable Logic
Memory and Programmable Logic Memory units allow us to store and/or retrieve information Essentially look-up tables Good for storing data, not for function implementation Programmable logic device (PLD),
More informationDigital Integrated Circuits Lecture 13: SRAM
Digital Integrated Circuits Lecture 13: SRAM Chih-Wei Liu VLSI Signal Processing LAB National Chiao Tung University cwliu@twins.ee.nctu.edu.tw DIC-Lec13 cwliu@twins.ee.nctu.edu.tw 1 Outline Memory Arrays
More information! Memory Overview. ! ROM Memories. ! RAM Memory " SRAM " DRAM. ! This is done because we can build. " large, slow memories OR
ESE 57: Digital Integrated Circuits and VLSI Fundamentals Lec 2: April 5, 26 Memory Overview, Memory Core Cells Lecture Outline! Memory Overview! ROM Memories! RAM Memory " SRAM " DRAM 2 Memory Overview
More informationIntroduction to CMOS VLSI Design Lecture 13: SRAM
Introduction to CMOS VLSI Design Lecture 13: SRAM David Harris Harvey Mudd College Spring 2004 1 Outline Memory Arrays SRAM Architecture SRAM Cell Decoders Column Circuitry Multiple Ports Serial Access
More informationALTERA M9K EMBEDDED MEMORY BLOCKS
ALTERA M9K EMBEDDED MEMORY BLOCKS M9K Overview M9K memories are Altera s embedded high-density memory arrays Nearly all modern FPGAs include something similar of varying sizes 8192 bits per block (9216
More informationCMPEN 411 VLSI Digital Circuits Spring Lecture 22: Memery, ROM
CMPEN 411 VLSI Digital Circuits Spring 2011 Lecture 22: Memery, ROM [Adapted from Rabaey s Digital Integrated Circuits, Second Edition, 2003 J. Rabaey, A. Chandrakasan, B. Nikolic] Sp11 CMPEN 411 L22 S.1
More informationIntroduction to Semiconductor Memory Dr. Lynn Fuller Webpage:
ROCHESTER INSTITUTE OF TECHNOLOGY MICROELECTRONIC ENGINEERING Introduction to Semiconductor Memory Webpage: http://people.rit.edu/lffeee 82 Lomb Memorial Drive Rochester, NY 14623-5604 Tel (585) 475-2035
More informationDesign and Implementation of an AHB SRAM Memory Controller
Design and Implementation of an AHB SRAM Memory Controller 1 Module Overview Learn the basics of Computer Memory; Design and implement an AHB SRAM memory controller, which replaces the previous on-chip
More informationLecture 11: MOS Memory
Lecture 11: MOS Memory MAH, AEN EE271 Lecture 11 1 Memory Reading W&E 8.3.1-8.3.2 - Memory Design Introduction Memories are one of the most useful VLSI building blocks. One reason for their utility is
More informationSense Amplifiers 6 T Cell. M PC is the precharge transistor whose purpose is to force the latch to operate at the unstable point.
Announcements (Crude) notes for switching speed example from lecture last week posted. Schedule Final Project demo with TAs. Written project report to include written evaluation section. Send me suggestions
More informationCSEE 3827: Fundamentals of Computer Systems. Storage
CSEE 387: Fundamentals of Computer Systems Storage The big picture General purpose processor (e.g., Power PC, Pentium, MIPS) Internet router (intrusion detection, pacet routing, etc.) WIreless transceiver
More informationOrganization. 5.1 Semiconductor Main Memory. William Stallings Computer Organization and Architecture 6th Edition
William Stallings Computer Organization and Architecture 6th Edition Chapter 5 Internal Memory 5.1 Semiconductor Main Memory 5.2 Error Correction 5.3 Advanced DRAM Organization 5.1 Semiconductor Main Memory
More informationRTL Design (2) Memory Components (RAMs & ROMs)
RTL Design (2) Memory Components (RAMs & ROMs) Memory Components All sequential circuit have a form of memory Register, latches, etc However, the term memory is generally reserved for bits that are stored
More informationWilliam Stallings Computer Organization and Architecture 6th Edition. Chapter 5 Internal Memory
William Stallings Computer Organization and Architecture 6th Edition Chapter 5 Internal Memory Semiconductor Memory Types Semiconductor Memory RAM Misnamed as all semiconductor memory is random access
More informationFPGA Programming Technology
FPGA Programming Technology Static RAM: This Xilinx SRAM configuration cell is constructed from two cross-coupled inverters and uses a standard CMOS process. The configuration cell drives the gates of
More informationEECS150 - Digital Design Lecture 16 Memory 1
EECS150 - Digital Design Lecture 16 Memory 1 March 13, 2003 John Wawrzynek Spring 2003 EECS150 - Lec16-mem1 Page 1 Memory Basics Uses: Whenever a large collection of state elements is required. data &
More informationThe Memory Hierarchy 1
The Memory Hierarchy 1 What is a cache? 2 What problem do caches solve? 3 Memory CPU Abstraction: Big array of bytes Memory memory 4 Performance vs 1980 Processor vs Memory Performance Memory is very slow
More informationMemory Design I. Array-Structured Memory Architecture. Professor Chris H. Kim. Dept. of ECE.
Memory Design I Professor Chris H. Kim University of Minnesota Dept. of ECE chriskim@ece.umn.edu Array-Structured Memory Architecture 2 1 Semiconductor Memory Classification Read-Write Wi Memory Non-Volatile
More informationMemory Arrays. Array Architecture. Chapter 16 Memory Circuits and Chapter 12 Array Subsystems from CMOS VLSI Design by Weste and Harris, 4 th Edition
Chapter 6 Memory Circuits and Chapter rray Subsystems from CMOS VLSI Design by Weste and Harris, th Edition E E 80 Introduction to nalog and Digital VLSI Paul M. Furth New Mexico State University Static
More informationFABRICATION TECHNOLOGIES
FABRICATION TECHNOLOGIES DSP Processor Design Approaches Full custom Standard cell** higher performance lower energy (power) lower per-part cost Gate array* FPGA* Programmable DSP Programmable general
More informationCS250 VLSI Systems Design Lecture 9: Memory
CS250 VLSI Systems esign Lecture 9: Memory John Wawrzynek, Jonathan Bachrach, with Krste Asanovic, John Lazzaro and Rimas Avizienis (TA) UC Berkeley Fall 2012 CMOS Bistable Flip State 1 0 0 1 Cross-coupled
More informationInternal Memory. Computer Architecture. Outline. Memory Hierarchy. Semiconductor Memory Types. Copyright 2000 N. AYDIN. All rights reserved.
Computer Architecture Prof. Dr. Nizamettin AYDIN naydin@yildiz.edu.tr nizamettinaydin@gmail.com Internal Memory http://www.yildiz.edu.tr/~naydin 1 2 Outline Semiconductor main memory Random Access Memory
More informationReset-able and Enable-able Registers
VERILOG II Reset-able and Enable-able Registers Sometimes it is convenient or necessary to have flip flops with special inputs like reset and enable When designing flip flops/registers, it is ok (possibly
More informationMemory and Programmable Logic
Digital Circuit Design and Language Memory and Programmable Logic Chang, Ik Joon Kyunghee University Memory Classification based on functionality ROM : Read-Only Memory RWM : Read-Write Memory RWM NVRWM
More informationVery Large Scale Integration (VLSI)
Very Large Scale Integration (VLSI) Lecture 8 Dr. Ahmed H. Madian ah_madian@hotmail.com Content Array Subsystems Introduction General memory array architecture SRAM (6-T cell) CAM Read only memory Introduction
More informationIntegrated Circuits & Systems
Federal University of Santa Catarina Center for Technology Computer Science & Electronics Engineering Integrated Circuits & Systems INE 5442 Lecture 23-1 guntzel@inf.ufsc.br Semiconductor Memory Classification
More information! Memory. " RAM Memory. " Serial Access Memories. ! Cell size accounts for most of memory array size. ! 6T SRAM Cell. " Used in most commercial chips
ESE 57: Digital Integrated Circuits and VLSI Fundamentals Lec : April 5, 8 Memory: Periphery circuits Today! Memory " RAM Memory " Architecture " Memory core " SRAM " DRAM " Periphery " Serial Access Memories
More informationEmbedded Systems Design: A Unified Hardware/Software Introduction. Outline. Chapter 5 Memory. Introduction. Memory: basic concepts
Hardware/Software Introduction Chapter 5 Memory Outline Memory Write Ability and Storage Permanence Common Memory Types Composing Memory Memory Hierarchy and Cache Advanced RAM 1 2 Introduction Memory:
More informationEmbedded Systems Design: A Unified Hardware/Software Introduction. Chapter 5 Memory. Outline. Introduction
Hardware/Software Introduction Chapter 5 Memory 1 Outline Memory Write Ability and Storage Permanence Common Memory Types Composing Memory Memory Hierarchy and Cache Advanced RAM 2 Introduction Embedded
More informationSpiral 2-8. Cell Layout
2-8.1 Spiral 2-8 Cell Layout 2-8.2 Learning Outcomes I understand how a digital circuit is composed of layers of materials forming transistors and wires I understand how each layer is expressed as geometric
More informationMagnetic core memory (1951) cm 2 ( bit)
Magnetic core memory (1951) 16 16 cm 2 (128 128 bit) Semiconductor Memory Classification Read-Write Memory Non-Volatile Read-Write Memory Read-Only Memory Random Access Non-Random Access EPROM E 2 PROM
More informationSummer 2003 Lecture 18 07/09/03
Summer 2003 Lecture 18 07/09/03 NEW HOMEWORK Instruction Execution Times: The 8088 CPU is a synchronous machine that operates at a particular clock frequency. In the case of the original IBM PC, that clock
More informationELCT 912: Advanced Embedded Systems
Advanced Embedded Systems Lecture 2: Memory and Programmable Logic Dr. Mohamed Abd El Ghany, Memory Random Access Memory (RAM) Can be read and written Static Random Access Memory (SRAM) Data stored so
More informationComputer Organization. 8th Edition. Chapter 5 Internal Memory
William Stallings Computer Organization and Architecture 8th Edition Chapter 5 Internal Memory Semiconductor Memory Types Memory Type Category Erasure Write Mechanism Volatility Random-access memory (RAM)
More informationMemory Overview. Overview - Memory Types 2/17/16. Curtis Nelson Walla Walla University
Memory Overview Curtis Nelson Walla Walla University Overview - Memory Types n n n Magnetic tape (used primarily for long term archive) Magnetic disk n Hard disk (File, Directory, Folder) n Floppy disks
More informationECE 2300 Digital Logic & Computer Organization
ECE 2300 Digital Logic & Computer Organization Spring 201 Memories Lecture 14: 1 Announcements HW6 will be posted tonight Lab 4b next week: Debug your design before the in-lab exercise Lecture 14: 2 Review:
More informationChapter 5. Internal Memory. Yonsei University
Chapter 5 Internal Memory Contents Main Memory Error Correction Advanced DRAM Organization 5-2 Memory Types Memory Type Category Erasure Write Mechanism Volatility Random-access memory(ram) Read-write
More informationChapter 5 Internal Memory
Chapter 5 Internal Memory Memory Type Category Erasure Write Mechanism Volatility Random-access memory (RAM) Read-write memory Electrically, byte-level Electrically Volatile Read-only memory (ROM) Read-only
More informationENEE 759H, Spring 2005 Memory Systems: Architecture and
SLIDE, Memory Systems: DRAM Device Circuits and Architecture Credit where credit is due: Slides contain original artwork ( Jacob, Wang 005) Overview Processor Processor System Controller Memory Controller
More informationUnleashing the Power of Embedded DRAM
Copyright 2005 Design And Reuse S.A. All rights reserved. Unleashing the Power of Embedded DRAM by Peter Gillingham, MOSAID Technologies Incorporated Ottawa, Canada Abstract Embedded DRAM technology offers
More informationCS152 Computer Architecture and Engineering Lecture 16: Memory System
CS152 Computer Architecture and Engineering Lecture 16: System March 15, 1995 Dave Patterson (patterson@cs) and Shing Kong (shing.kong@eng.sun.com) Slides available on http://http.cs.berkeley.edu/~patterson
More informationEECS150 - Digital Design Lecture 16 - Memory
EECS150 - Digital Design Lecture 16 - Memory October 17, 2002 John Wawrzynek Fall 2002 EECS150 - Lec16-mem1 Page 1 Memory Basics Uses: data & program storage general purpose registers buffering table lookups
More informationCS24: INTRODUCTION TO COMPUTING SYSTEMS. Spring 2017 Lecture 13
CS24: INTRODUCTION TO COMPUTING SYSTEMS Spring 2017 Lecture 13 COMPUTER MEMORY So far, have viewed computer memory in a very simple way Two memory areas in our computer: The register file Small number
More informationChapter 4 Main Memory
Chapter 4 Main Memory Course Outcome (CO) - CO2 Describe the architecture and organization of computer systems Program Outcome (PO) PO1 Apply knowledge of mathematics, science and engineering fundamentals
More informationBasic Organization Memory Cell Operation. CSCI 4717 Computer Architecture. ROM Uses. Random Access Memory. Semiconductor Memory Types
CSCI 4717/5717 Computer Architecture Topic: Internal Memory Details Reading: Stallings, Sections 5.1 & 5.3 Basic Organization Memory Cell Operation Represent two stable/semi-stable states representing
More informationOverview. Memory Classification Read-Only Memory (ROM) Random Access Memory (RAM) Functional Behavior of RAM. Implementing Static RAM
Memories Overview Memory Classification Read-Only Memory (ROM) Types of ROM PROM, EPROM, E 2 PROM Flash ROMs (Compact Flash, Secure Digital, Memory Stick) Random Access Memory (RAM) Types of RAM Static
More informationUNIT V (PROGRAMMABLE LOGIC DEVICES)
UNIT V (PROGRAMMABLE LOGIC DEVICES) Introduction There are two types of memories that are used in digital systems: Random-access memory(ram): perform both the write and read operations. Read-only memory(rom):
More informationMemory Design I. Semiconductor Memory Classification. Read-Write Memories (RWM) Memory Scaling Trend. Memory Scaling Trend
Array-Structured Memory Architecture Memory Design I Professor hris H. Kim University of Minnesota Dept. of EE chriskim@ece.umn.edu 2 Semiconductor Memory lassification Read-Write Memory Non-Volatile Read-Write
More informationThe Memory Component
The Computer Memory Chapter 6 forms the first of a two chapter sequence on computer memory. Topics for this chapter include. 1. A functional description of primary computer memory, sometimes called by
More informationConcept of Memory. The memory of computer is broadly categories into two categories:
Concept of Memory We have already mentioned that digital computer works on stored programmed concept introduced by Von Neumann. We use memory to store the information, which includes both program and data.
More informationCpE 442. Memory System
CpE 442 Memory System CPE 442 memory.1 Outline of Today s Lecture Recap and Introduction (5 minutes) Memory System: the BIG Picture? (15 minutes) Memory Technology: SRAM and Register File (25 minutes)
More informationEE577b. Register File. By Joong-Seok Moon
EE577b Register File By Joong-Seok Moon Register File A set of registers that store data Consists of a small array of static memory cells Smallest size and fastest access time in memory hierarchy (Register
More informationLogic and Computer Design Fundamentals. Chapter 8 Memory Basics
Logic and Computer Design Fundamentals Memory Basics Overview Memory definitions Random Access Memory (RAM) Static RAM (SRAM) integrated circuits Arrays of SRAM integrated circuits Dynamic RAM (DRAM) Read
More informationCMOS Logic Circuit Design Link( リンク ): センター教官講義ノートの下 CMOS 論理回路設計
CMOS Logic Circuit Design http://www.rcns.hiroshima-u.ac.jp Link( リンク ): センター教官講義ノートの下 CMOS 論理回路設計 Memory Circuits (Part 1) Overview of Memory Types Memory with Address-Based Access Principle of Data Access
More informationSemiconductor Memories: RAMs and ROMs
Semiconductor Memories: RAMs and ROMs Lesson Objectives: In this lesson you will be introduced to: Different memory devices like, RAM, ROM, PROM, EPROM, EEPROM, etc. Different terms like: read, write,
More informationCOMP3221: Microprocessors and. and Embedded Systems. Overview. Lecture 23: Memory Systems (I)
COMP3221: Microprocessors and Embedded Systems Lecture 23: Memory Systems (I) Overview Memory System Hierarchy RAM, ROM, EPROM, EEPROM and FLASH http://www.cse.unsw.edu.au/~cs3221 Lecturer: Hui Wu Session
More informationCREATED BY M BILAL & Arslan Ahmad Shaad Visit:
CREATED BY M BILAL & Arslan Ahmad Shaad Visit: www.techo786.wordpress.com Q1: Define microprocessor? Short Questions Chapter No 01 Fundamental Concepts Microprocessor is a program-controlled and semiconductor
More informationWilliam Stallings Computer Organization and Architecture 8th Edition. Chapter 5 Internal Memory
William Stallings Computer Organization and Architecture 8th Edition Chapter 5 Internal Memory Semiconductor Memory The basic element of a semiconductor memory is the memory cell. Although a variety of
More informationECE321 Electronics I
ECE321 Electronics I Lecture 28: DRAM & Flash Memories Payman Zarkesh-Ha Office: ECE Bldg. 230B Office hours: Tuesday 2:00-3:00PM or by appointment E-mail: payman@ece.unm.edu Slide: 1 Review of Last Lecture
More informationCHAPTER 8. Array Subsystems. VLSI Design. Chih-Cheng Hsieh
CHAPTER 8 Array Subsystems Outline 2 1. SRAM 2. DRAM 3. Read-Only Memory (ROM) 4. Serial Access Memory 5. Content-Addressable Memory 6. Programmable Logic Array Memory Arrays 3 Memory Arrays Random Access
More informationPrototype of SRAM by Sergey Kononov, et al.
Prototype of SRAM by Sergey Kononov, et al. 1. Project Overview The goal of the project is to create a SRAM memory layout that provides maximum utilization of the space on the 1.5 by 1.5 mm chip. Significant
More information(Advanced) Computer Organization & Architechture. Prof. Dr. Hasan Hüseyin BALIK (5 th Week)
+ (Advanced) Computer Organization & Architechture Prof. Dr. Hasan Hüseyin BALIK (5 th Week) + Outline 2. The computer system 2.1 A Top-Level View of Computer Function and Interconnection 2.2 Cache Memory
More informationCS310 Embedded Computer Systems. Maeng
1 INTRODUCTION (PART II) Maeng Three key embedded system technologies 2 Technology A manner of accomplishing a task, especially using technical processes, methods, or knowledge Three key technologies for
More informationMemory Classification revisited. Slide 3
Slide 1 Topics q Introduction to memory q SRAM : Basic memory element q Operations and modes of failure q Cell optimization q SRAM peripherals q Memory architecture and folding Slide 2 Memory Classification
More information10/24/2016. Let s Name Some Groups of Bits. ECE 120: Introduction to Computing. We Just Need a Few More. You Want to Use What as Names?!
University of Illinois at Urbana-Champaign Dept. of Electrical and Computer Engineering ECE 120: Introduction to Computing Memory Let s Name Some Groups of Bits I need your help. The computer we re going
More informationECSE-2610 Computer Components & Operations (COCO)
ECSE-2610 Computer Components & Operations (COCO) Part 18: Random Access Memory 1 Read-Only Memories 2 Why ROM? Program storage Boot ROM for personal computers Complete application storage for embedded
More informationChapter 3 Semiconductor Memories. Jin-Fu Li Department of Electrical Engineering National Central University Jungli, Taiwan
Chapter 3 Semiconductor Memories Jin-Fu Li Department of Electrical Engineering National Central University Jungli, Taiwan Outline Introduction Random Access Memories Content Addressable Memories Read
More informationPicture of memory. Word FFFFFFFD FFFFFFFE FFFFFFFF
Memory Sequential circuits all depend upon the presence of memory A flip-flop can store one bit of information A register can store a single word, typically 32-64 bits Memory allows us to store even larger
More informationMotivation for Lecture. Market for Memories. Example: FFT Design. Sequential Circuits & D flip-flop. Latches and Registers.
Motivation for Lecture Design Methodologies Storage (registers and memories) Computational platforms Design Methodologies Memories is a crucial part of most designs: What different type of memories are
More informationModule 6 : Semiconductor Memories Lecture 30 : SRAM and DRAM Peripherals
Module 6 : Semiconductor Memories Lecture 30 : SRAM and DRAM Peripherals Objectives In this lecture you will learn the following Introduction SRAM and its Peripherals DRAM and its Peripherals 30.1 Introduction
More informationFPGA. Logic Block. Plessey FPGA: basic building block here is 2-input NAND gate which is connected to each other to implement desired function.
FPGA Logic block of an FPGA can be configured in such a way that it can provide functionality as simple as that of transistor or as complex as that of a microprocessor. It can used to implement different
More informationColumn decoder using PTL for memory
IOSR Journal of Electronics and Communication Engineering (IOSR-JECE) e-issn: 2278-2834,p- ISSN: 2278-8735. Volume 5, Issue 4 (Mar. - Apr. 2013), PP 07-14 Column decoder using PTL for memory M.Manimaraboopathy
More informationIntroduction to CMOS VLSI Design. Semiconductor Memory Harris and Weste, Chapter October 2018
Introduction to CMOS VLSI Design Semiconductor Memory Harris and Weste, Chapter 12 25 October 2018 J. J. Nahas and P. M. Kogge Modified from slides by Jay Brockman 2008 [Including slides from Harris &
More informationCHAPTER 12 ARRAY SUBSYSTEMS [ ] MANJARI S. KULKARNI
CHAPTER 2 ARRAY SUBSYSTEMS [2.4-2.9] MANJARI S. KULKARNI OVERVIEW Array classification Non volatile memory Design and Layout Read-Only Memory (ROM) Pseudo nmos and NAND ROMs Programmable ROMS PROMS, EPROMs,
More informationLecture 13: Memory and Programmable Logic
Lecture 13: Memory and Programmable Logic Syed M. Mahmud, Ph.D ECE Department Wayne State University Aby K George, ECE Department, Wayne State University Contents Introduction Random Access Memory Memory
More informationA Configurable Radiation Tolerant Dual-Ported Static RAM macro, designed in a 0.25 µm CMOS technology for applications in the LHC environment.
A Configurable Radiation Tolerant Dual-Ported Static RAM macro, designed in a 0.25 µm CMOS technology for applications in the LHC environment. 8th Workshop on Electronics for LHC Experiments 9-13 Sept.
More informationRead and Write Cycles
Read and Write Cycles The read cycle is shown. Figure 41.1a. The RAS and CAS signals are activated one after the other to latch the multiplexed row and column addresses respectively applied at the multiplexed
More informationSpiral 2-9. Tri-State Gates Memories DMA
2-9.1 Spiral 2-9 Tri-State Gates Memories DMA 2-9.2 Learning Outcomes I understand how a tri-state works and the rules for using them to share a bus I understand how SRAM and DRAM cells perform reads and
More informationLow-Power SRAM and ROM Memories
Low-Power SRAM and ROM Memories Jean-Marc Masgonty 1, Stefan Cserveny 1, Christian Piguet 1,2 1 CSEM, Neuchâtel, Switzerland 2 LAP-EPFL Lausanne, Switzerland Abstract. Memories are a main concern in low-power
More informationmemories The world of Memories DEEP SUBMICRON CMOS DESIGN 10. Memories
10 Memories This chapter described the memory cell architecture. After a general introduction, we detail the principles and implementation of static RAM, dynamic RAM, read-only memories, electrically erasable
More informationECEN 449 Microprocessor System Design. Memories. Texas A&M University
ECEN 449 Microprocessor System Design Memories 1 Objectives of this Lecture Unit Learn about different types of memories SRAM/DRAM/CAM Flash 2 SRAM Static Random Access Memory 3 SRAM Static Random Access
More informationThe Memory Hierarchy. Daniel Sanchez Computer Science & Artificial Intelligence Lab M.I.T. April 3, 2018 L13-1
The Memory Hierarchy Daniel Sanchez Computer Science & Artificial Intelligence Lab M.I.T. April 3, 2018 L13-1 Memory Technologies Technologies have vastly different tradeoffs between capacity, latency,
More informationThe DRAM Cell. EEC 581 Computer Architecture. Memory Hierarchy Design (III) 1T1C DRAM cell
EEC 581 Computer Architecture Memory Hierarchy Design (III) Department of Electrical Engineering and Computer Science Cleveland State University The DRAM Cell Word Line (Control) Bit Line (Information)
More informationSYSTEM SPECIFICATIONS USING VERILOG HDL. Dr. Mohammed M. Farag
SYSTEM SPECIFICATIONS USING VERILOG HDL Dr. Mohammed M. Farag Static Random Acce Memory, SRAM SRAM : ue a imple bitable circuit to hold a data bit Three tate: hold, write, and read operation Acce tranitor
More information