Motivation for Lecture. Market for Memories. Example: FFT Design. Sequential Circuits & D flip-flop. Latches and Registers.

Size: px
Start display at page:

Download "Motivation for Lecture. Market for Memories. Example: FFT Design. Sequential Circuits & D flip-flop. Latches and Registers."

Transcription

1 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 there? How do we implement them? Computational Platforms: What options do we have? What are the trade-offs? Viktor Öwall Design Methodologies: What does a modern digital design environment look like? Cell-phone ASIC complexity and cost! Market for Memories According to a new technical market research report, semiconductor Memory: Technologies and Global Markets, the value of the global semiconductor memory industry was nearly $46.2 billion in 2009, but is expected to increase to nearly $79 billion in 2014, for a 5-year compound annual growth rate (CAGR) of 11.3%. The largest segment of the market, DRAM, or dynamic random access memory, is projected to increase at a CAGR of 10.4% to $41.5 billion in 2014, after being valued at nearly $25.2 billion in NAND, or nonvolatile/nano RAM, which is the second-largest segment of the market, is estimated at $12.8 billion in 2009, and is expected to increase at a 5-year CAGR of 15% to reach more than $25.7 billion in Source: Semiconductor Memory: Technologies and Global Markets, April 2010 From Courtesy: Sven Mattisson, Ericsson Example: FFT Design Report Price: Price:USD $4,850.00!!! Motivation behind the quest for new memory technologies! Sequential Circuits & D flip-flop 8k points FFT for DVB (Digital Video Broadcasting) Properties: can be dynamic or static Latch or Register Latch - level sensitive Register - edge triggered in 0.5mm CMOS Several embedded memories who s properties and size is crucial to the implementation Flip-flop most often refer to an edge triggered register. From Lecture 3. Latches and Registers Dynamic or Static Stored on capacitance Data will change due to leakage. Refresh needed to keep data. Positive Feedback Data is kept as long as power supply is there Figures from Digital IC Design

2 Master Slave Registers Dynamic or Static If a single latch we can get a race when the latch is open We then use a Master-slave register. We have registers, why memories? Static D Flip-flop : 252µm 2 SRAM Memory element : 30µm 2 Flip-flops vs. SRAM Alcatel Microelectronics 0.35µm CMOS technology process Process and library dependent Flip-flops Dual port memory Single port memory Double width memory Flip-flops 1.2 square mm µm CMOS technology process SRAM memory elements The Complete Memory A memory is more than the storage elements, i.e. the memory cells. Address decoders, sense amplifiers, clock buffers, etc Memory array An Overview of Logic Architectures Inside Flash Memory Devices ANDREA SILVAGNI, GIUSEPPE FUSILLO, ROBERTO RAVASIO, MASSIMILIANO PICCA, AND STEFANO ZANARDI PROCEEDINGS OF THE IEEE, VOL. 91, NO. 4, APRIL 2003 Semiconductor Memory Classification Read-Write Memories (RWM) Random Access SRAM DRAM Register- Bank Non-Random Access FIFO LIFO(Stack) Shiftregister Nonvolatile RWM (NVRWM) PROM EPROM E 2 PROM FLASH Read-Only Memories (Nonvolatile) ROM PLA Nonvolatile = data kept when supply voltage turned off PROM = Programmable rom EPROM = erasable programmable ROM E 2 PROM & Flash= electrically erasable programmable ROM XXPROM & Flash Nonvolatile = data kept when supply voltage turned of PROM = Fuse based a One time programmable EPROM = EEPROM or E 2 PROM = Flash= Usually erasable by UV-light Usually high voltage for programming a removed from circuit when programmed Individual bytes can be erased a slow but versatile Larger than EPROM Larger sections are erased a faster than EEPROM

3 We will now look at some basic implementations ROM FLASH RAM Static Dynamic WL[0] WL[1] WL[2] Pseudo NMOS ROM BL[0] BL[1] BL[2] BL[3] Do we recognize this? WL[3] The placements of transistors decide memory content. A B Pseudo-NMOS Gates V DD Pull up network OUT Pull down network From last lecture: What was the function? A B OUT Properties: + fewer transistors - Static power consumption - Low input not 0 WL[0] WL[1] WL[2] WL[3] Pseudo NMOS NAND ROM BL[0] BL[1] BL[2] on on off on off BL[3] A B Q All transistors ON pulls down Bit Line Non-selected WL =1 WL lines reversed Select WL[2] a WL[0,1,3]=1 and WL[2] = 0 Transistor on selected line shuts off path to WL[0] WL[1] WL[2] WL[3] Pseudo NMOS NOR ROM BL[0] BL[1] BL[2] BL[3] No transitors = always pulled up A B Q One transistor ON pulls down Bit Line NMOS NOR ROM lines overhead Area Reduced by Mirroring WL[0]=0 WL[1]=0 WL[2]=1 WL[3]=0 Pseudo NMOS NOR ROM A B Q One transistor ON pulls down Bit Line NMOS NOR ROM lines overhead Area Reduced by Mirroring Select WL[2] a WL[0,1,3]=0 and WL[2] = 1 NOR or NAND? NOR is faster no series transistors. What is a Flash memory? ROM Read Only Memory NAND is smaller no lines. You can see this if you look at e.g. FLASH memories RAM Random Access Memory FLASH

4 What is a Flash memory? ROM Read Only Memory data doesn t change data remain when powered down RAM Random Access Memory data can be both read and stored data disappears when powered down FLASH data can be both read and stored data remain when powered down Floating Gate Transistor (FAMOS) electrically programmable V TH Floating gate n + n + Control gate Control gate is connected to wordline Floating gate is left unconnected If charged heavily negative a High V TH a No channel If charged removed a Low V TH a Channel WL EPROM, EEPROM and Flash has different ways of controlling the charge of the floating gate BL Flash EEPROM FLASH stucture Control gate erasure Floating gate Thin tunneling oxide word0 word1 n 1 source programming p- substrate n 1 drain word2 word3 Floating gate transistors everywhere! FLASH write, e.g. trap charge Read-Write Memories (RAM) word0 word1 word2 word3 Static (SRAM) Data stored as long as supply is applied Large cells (6 transistors/cell) Fast Dynamic (DRAM) Periodic refresh required Small cells (1-3 transistors/bit) Slower = trapped charge. Transitor is always off a Same content as ROM. Dynamic or Static RAM 6-transistor SRAM Cell WL M2 V dd M4 Q M5 Q M6 M1 M3 1-transistor DRAM BL WL M 1 C S Computational Platforms BL BL C BL Compare dynamic latch/register

5 Processor Programmable Low Design cost CPUs, micro processors, micro controllers, Software vs. Hardware Algorithm Programmble Hardware Reconfigurable hardware No processing Programble Logic Devices (PLD): PLA, PAL, FPGAs, Gate array (include processing), Dedicated Hardware Process chips High Performance Low Power High cost Software or Hardware? Flexibility Performance Requirements Power Consumption Throughput Cost Volume Know how Time to Market Dedicated Hardware Architecture, i.e. you design hardware that makes what you want! Block RAM Virtex from Xilinx BANK 0 BANK 1 PLD, e.g. FPGA Field Programmable Gate Arrays Reconfigurable Fast Turn Around Prototyping Special Purpose Gate Array ASIC Application/Algorithm Specific Integrated Circuit High Calculation Capacity High Utilization Low Power Low Price at Volume Timing BANK 6 BANK 7 BANK 5 BANK 4 BANK 3 BANK 2 IOB Routing Example: Xilinx FPGAs Switching matrix Basic Spartan Architecture Low end FPGA Horizontal Routing Channel Interconnect point Configurable Logic Block Combinational logic Storage elements R Vertical Routing Channel A B/Q 1 /Q 2 C/Q 1 /Q 2 D A B/Q 1 /Q 2 C/Q 1 /Q 2 Any function of up to 4 variables Any function of up to 4 variables D in F G F G F R D Q 1 CE R D Q 2 F D G CE G E Clock CE Xilinx Virtex-II Pro Heterogeneous Programmable Platforms FPGA Fabric From Xilinx: Embedded PowerPc Embedded memories Hardwired multipliers High-speed I/O Courtesy Xilinx

6 Examples of FPGA Development Boards e.g. from Digilent ( Gate Arrays the old way Fabricating with an array of n- and p-transistors and using design-specific metalization in routing channels. Spartan3 Board US$193 (2011) Xilinx Spartan-3 FPGA w/ twelve 18-bit multipliers, 216Kbits of block RAM 2Mbit Platform Flash Serial port, VGA port, and PS/2 mouse/keyboard port 1Mbyte on-board 10ns SRAM etc Virtex-II Pro Board US$1599, (499 academic) (2011) Virtex-2 Pro XC2VP30 FPGA with 30,816 Logic Cells, bit multipliers, 2,448Kb of block RAM DDR SDRAM DIMM that can accept up to 2Gbytes of RAM 10/100 Ethernet port, USB2 port, XSGA Video port Audio Codec Compact Flash card slot etc Before metalization After metalization Design Hardware, i.e. ASIC (Application Specific Integrated Circuit) ASIC Synthesis Behavioral or Structural Synthesis Use Cell library Fast Design Process Simplified re-design Semi Custom Full Custom Design for Performance Layout of all cells Highest Calculation Cap. Lowest Power Smallest area Highest Design Cost Design Methodologies Design Methodology, contnd. Design Methodology Three abstractions: Behavioral, structural and geometrical Moving betwen the domains Amount of Automatization increase RTL- Implementation, we specify registers and operations without clocking separately. 32 A Y Y=A*B+C 48 Standard Design Flow of Today B C

7 Design Flow: a simplified view HDL (VHDL/Verilog/...) Simulation Cell library Synthesis P&R VHDL Very High Speed Integrated Circuit (VHSIC) Hardware Description Language A Technology Independent, Standard Hardware description Language (HDL), used for digital system modeling, simulation, and synthesis. Configuration Post-layout sim. Fabrication VHDL was developed as a language for modeling and simulation. Consequence: Mismatch between simulation and synthesis -- Most constructs in VHDL are fine for simulation, but cannot be synthesized, e.g., after, time, etc. With restrictions, VHDL can be used for synthesis. Combinational and Sequential Parts Some small examples of designing with VHDL. You re not expected to learn VHDL but just get an impression what it looks like Process Multiplexer Process Example II Process Example II register with synchrounus reset process (clk, reset) if clk event and clk= 1 then if (Reset = '0') then Q <= '0'; elseif enable= 1 then Q <= D; end process ; Case command Example: Multiplexer architecture behv1 of Mux is process(i3,i2,i1,i0,s) --nested in process -- use case statement case S is when "00" => Op <= I0; --sequential statements when "01" => Op <= I1; when "10" => Op <= I2; when "11" => Op <= I3; when others => Op <= "ZZZ"; -- end case; end process; end behv1; I0 I1 I2 I3 S

8 IF vs. CASE statements If and case statements generate different HW a a b q b q c c c1 c2 c Mux Case statement Case c is when 01 => q <= a; when 10 => q <= b; when others => q <= c; End case; Mux Use case if you have more than 3 inputs Mux If statement If (c1= 1 ) then q <= a; Elseif (c2 = 1 ) then q <= b; Else q <= c; End if; You need to understand the underlying hardware and what the tools do to be able to write good HDL code. The same as for any other program! Basic State Machine Transforming a State Machine into HW St0 St1 St0 St1 Input d Behavioural Logic Combinatonial part Output q A Typical state machine Typical FSM State r D Clock SequenAal part Generic Architecture for FSMs next state rin Realization of FSMs St0 St1 Realization of FSMs- cont d Architecture declaration (combinatonial part) architecture implementation of state_machine is type state_type is (st0, st1,st2, st3); -- defines states; signal state, next_state : state_type; signal next_output STD_LOGIC_VECTOR (1 downto 0); Entity declaration library IEEE;use IEEE.STD_LOGIC_1164.all; entity state_machine is port (clk : in STD_LOGIC; reset : in STD_LOGIC; input : in STD_LOGIC_VECTOR(1 downto 0); output : out STD_LOGIC_VECTOR(1 downto 0) ); end state_machine; combinatonial : process (input,state,state) case (state) is -- Current state and input dependent when st0 => if (input = 01 ) then next_state <= st1; output <= 01 when... when others => next_state <= next_state; -- Default output <= 00 ; end case; end process; St1 St0 Realization of FSMs- cont d Sequential part: synchronous : process (clk,reset) if clk event and clk = 1 then if reset = 1 then state <= st0; else state <= next_state; end process; end architecture; Input d State St0 St1 Behavioural Logic Combinatonial part D Clock SequenAal part Output q next _state You can learn more in ETIN20 Digital IC-design. and EITF35 Introduction to Structured VLSI Design

Cell-phone ASIC complexity and cost

Cell-phone ASIC complexity and cost Memories Cell-phone ASIC compleity and cost Viktor Öwall Dept. of Electrical and Information Technology Lund University Parts of this material was adapted from the instructor material to Jan M. Rabaey,

More information

Two HDLs used today VHDL. Why VHDL? Introduction to Structured VLSI Design

Two HDLs used today VHDL. Why VHDL? Introduction to Structured VLSI Design Two HDLs used today Introduction to Structured VLSI Design VHDL I VHDL and Verilog Syntax and ``appearance'' of the two languages are very different Capabilities and scopes are quite similar Both are industrial

More information

VHDL. VHDL History. Why VHDL? Introduction to Structured VLSI Design. Very High Speed Integrated Circuit (VHSIC) Hardware Description Language

VHDL. VHDL History. Why VHDL? Introduction to Structured VLSI Design. Very High Speed Integrated Circuit (VHSIC) Hardware Description Language VHDL Introduction to Structured VLSI Design VHDL I Very High Speed Integrated Circuit (VHSIC) Hardware Description Language Joachim Rodrigues A Technology Independent, Standard Hardware description Language

More information

Memory and Programmable Logic

Memory 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 information

+1 (479)

+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 information

Semiconductor Memory Classification

Semiconductor 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 information

Memory. Outline. ECEN454 Digital Integrated Circuit Design. Memory Arrays. SRAM Architecture DRAM. Serial Access Memories ROM

Memory. 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 information

Semiconductor Memory Classification. Today. ESE 570: Digital Integrated Circuits and VLSI Fundamentals. CPU Memory Hierarchy.

Semiconductor 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

Field Programmable Gate Array

Field Programmable Gate Array Field Programmable Gate Array System Arch 27 (Fire Tom Wada) What is FPGA? System Arch 27 (Fire Tom Wada) 2 FPGA Programmable (= reconfigurable) Digital System Component Basic components Combinational

More information

CMPEN 411 VLSI Digital Circuits Spring Lecture 22: Memery, ROM

CMPEN 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 information

! Memory Overview. ! ROM Memories. ! RAM Memory " SRAM " DRAM. ! This is done because we can build. " large, slow memories OR

! 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 information

ELCT 912: Advanced Embedded Systems

ELCT 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 information

Today. Comments about assignment Max 1/T (skew = 0) Max clock skew? Comments about assignment 3 ASICs and Programmable logic Others courses

Today. Comments about assignment Max 1/T (skew = 0) Max clock skew? Comments about assignment 3 ASICs and Programmable logic Others courses Today Comments about assignment 3-43 Comments about assignment 3 ASICs and Programmable logic Others courses octor Per should show up in the end of the lecture Mealy machines can not be coded in a single

More information

Sense Amplifiers 6 T Cell. M PC is the precharge transistor whose purpose is to force the latch to operate at the unstable point.

Sense 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 information

Very Large Scale Integration (VLSI)

Very 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 information

FPGA for Complex System Implementation. National Chiao Tung University Chun-Jen Tsai 04/14/2011

FPGA for Complex System Implementation. National Chiao Tung University Chun-Jen Tsai 04/14/2011 FPGA for Complex System Implementation National Chiao Tung University Chun-Jen Tsai 04/14/2011 About FPGA FPGA was invented by Ross Freeman in 1989 SRAM-based FPGA properties Standard parts Allowing multi-level

More information

ESE370: Circuit-Level Modeling, Design, and Optimization for Digital Systems

ESE370: 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 information

EITF35: Introduction to Structured VLSI Design

EITF35: Introduction to Structured VLSI Design EITF35: Introduction to Structured VLSI Design Part 1.2.2: VHDL-1 Liang Liu liang.liu@eit.lth.se 1 Outline VHDL Background Basic VHDL Component An example FSM Design with VHDL Simulation & TestBench 2

More information

Outline. Field Programmable Gate Arrays. Programming Technologies Architectures. Programming Interfaces. Historical perspective

Outline. Field Programmable Gate Arrays. Programming Technologies Architectures. Programming Interfaces. Historical perspective Outline Field Programmable Gate Arrays Historical perspective Programming Technologies Architectures PALs, PLDs,, and CPLDs FPGAs Programmable logic Interconnect network I/O buffers Specialized cores Programming

More information

Introduction to SRAM. Jasur Hanbaba

Introduction 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 information

Memory in Digital Systems

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 information

Basic Organization Memory Cell Operation. CSCI 4717 Computer Architecture. ROM Uses. Random Access Memory. Semiconductor Memory Types

Basic 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 information

Chapter 5 Internal Memory

Chapter 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 information

Lecture 11 SRAM Zhuo Feng. Z. Feng MTU EE4800 CMOS Digital IC Design & Analysis 2010

Lecture 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 information

Lecture 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. 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 information

Computer Organization. 8th Edition. Chapter 5 Internal Memory

Computer 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 information

Lecture 13: Memory and Programmable Logic

Lecture 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 information

Hardware Design with VHDL PLDs I ECE 443. FPGAs can be configured at least once, many are reprogrammable.

Hardware Design with VHDL PLDs I ECE 443. FPGAs can be configured at least once, many are reprogrammable. PLDs, ASICs and FPGAs FPGA definition: Digital integrated circuit that contains configurable blocks of logic and configurable interconnects between these blocks. Key points: Manufacturer does NOT determine

More information

CENG 4480 L09 Memory 2

CENG 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 information

Programmable Logic Devices Introduction CMPE 415. Programmable Logic Devices

Programmable Logic Devices Introduction CMPE 415. Programmable Logic Devices Instructor: Professor Jim Plusquellic Programmable Logic Devices Text: The Design Warrior s Guide to FPGAs, Devices, Tools and Flows, Clive "Max" Maxfield, ISBN: 0-7506-7604-3 Modeling, Synthesis and Rapid

More information

Spiral 2-8. Cell Layout

Spiral 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 information

EECS150 - Digital Design Lecture 16 Memory 1

EECS150 - 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 information

Memory and Programmable Logic

Memory 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 information

Organization. 5.1 Semiconductor Main Memory. William Stallings Computer Organization and Architecture 6th Edition

Organization. 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 information

Digital Integrated Circuits

Digital Integrated Circuits Digital Integrated Circuits Lecture 9 Jaeyong Chung Robust Systems Laboratory Incheon National University DIGITAL DESIGN FLOW Chung EPC6055 2 FPGA vs. ASIC FPGA (A programmable Logic Device) Faster time-to-market

More information

Embedded Systems Design: A Unified Hardware/Software Introduction. Outline. Chapter 5 Memory. Introduction. Memory: basic concepts

Embedded 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 information

Embedded Systems Design: A Unified Hardware/Software Introduction. Chapter 5 Memory. Outline. Introduction

Embedded 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 information

INTRODUCTION TO FPGA ARCHITECTURE

INTRODUCTION TO FPGA ARCHITECTURE 3/3/25 INTRODUCTION TO FPGA ARCHITECTURE DIGITAL LOGIC DESIGN (BASIC TECHNIQUES) a b a y 2input Black Box y b Functional Schematic a b y a b y a b y 2 Truth Table (AND) Truth Table (OR) Truth Table (XOR)

More information

Integrated Circuits & Systems

Integrated 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

Evolution of Implementation Technologies. ECE 4211/5211 Rapid Prototyping with FPGAs. Gate Array Technology (IBM s) Programmable Logic

Evolution of Implementation Technologies. ECE 4211/5211 Rapid Prototyping with FPGAs. Gate Array Technology (IBM s) Programmable Logic ECE 42/52 Rapid Prototyping with FPGAs Dr. Charlie Wang Department of Electrical and Computer Engineering University of Colorado at Colorado Springs Evolution of Implementation Technologies Discrete devices:

More information

Design Methodologies

Design Methodologies Design Methodologies 1981 1983 1985 1987 1989 1991 1993 1995 1997 1999 2001 2003 2005 2007 2009 Complexity Productivity (K) Trans./Staff - Mo. Productivity Trends Logic Transistor per Chip (M) 10,000 0.1

More information

William Stallings Computer Organization and Architecture 6th Edition. Chapter 5 Internal Memory

William 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 information

MEMORIES. Memories. EEC 116, B. Baas 3

MEMORIES. 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 information

Memory in Digital Systems

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 information

ECSE-2610 Computer Components & Operations (COCO)

ECSE-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 information

EECS150 - Digital Design Lecture 16 - Memory

EECS150 - 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 information

PROGRAMMABLE MODULES SPECIFICATION OF PROGRAMMABLE COMBINATIONAL AND SEQUENTIAL MODULES

PROGRAMMABLE MODULES SPECIFICATION OF PROGRAMMABLE COMBINATIONAL AND SEQUENTIAL MODULES PROGRAMMABLE MODULES SPECIFICATION OF PROGRAMMABLE COMBINATIONAL AND SEQUENTIAL MODULES. psa. rom. fpga THE WAY THE MODULES ARE PROGRAMMED NETWORKS OF PROGRAMMABLE MODULES EXAMPLES OF USES Programmable

More information

Magnetic core memory (1951) cm 2 ( bit)

Magnetic 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 information

Semiconductor Memories: RAMs and ROMs

Semiconductor 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 information

Field Programmable Gate Array (FPGA)

Field Programmable Gate Array (FPGA) Field Programmable Gate Array (FPGA) Lecturer: Krébesz, Tamas 1 FPGA in general Reprogrammable Si chip Invented in 1985 by Ross Freeman (Xilinx inc.) Combines the advantages of ASIC and uc-based systems

More information

FPGA Implementations

FPGA Implementations FPGA Implementations Smith Text: Chapters 4-8 Online version at: http://www10.edacafe.com/book/asic/asics.php Topic outline Chapter 4 Programmable ASIC technologies Chapter 5 Programmable logic cells Chapter

More information

CHAPTER 12 ARRAY SUBSYSTEMS [ ] MANJARI S. KULKARNI

CHAPTER 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 information

RTL Design (2) Memory Components (RAMs & ROMs)

RTL 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 information

L2: FPGA HARDWARE : ADVANCED DIGITAL DESIGN PROJECT FALL 2015 BRANDON LUCIA

L2: FPGA HARDWARE : ADVANCED DIGITAL DESIGN PROJECT FALL 2015 BRANDON LUCIA L2: FPGA HARDWARE 18-545: ADVANCED DIGITAL DESIGN PROJECT FALL 2015 BRANDON LUCIA 18-545: FALL 2014 2 Admin stuff Project Proposals happen on Monday Be prepared to give an in-class presentation Lab 1 is

More information

Digital Systems. Semiconductor memories. Departamentul de Bazele Electronicii

Digital Systems. Semiconductor memories. Departamentul de Bazele Electronicii Digital Systems Semiconductor memories Departamentul de Bazele Electronicii Outline ROM memories ROM memories PROM memories EPROM memories EEPROM, Flash, MLC memories Applications with ROM memories extending

More information

Introduction to CMOS VLSI Design Lecture 13: SRAM

Introduction 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 information

ECE321 Electronics I

ECE321 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 information

Memory technology and optimizations ( 2.3) Main Memory

Memory technology and optimizations ( 2.3) Main Memory Memory technology and optimizations ( 2.3) 47 Main Memory Performance of Main Memory: Latency: affects Cache Miss Penalty» Access Time: time between request and word arrival» Cycle Time: minimum time between

More information

Digital Integrated Circuits Lecture 13: SRAM

Digital 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

UNIT V (PROGRAMMABLE LOGIC DEVICES)

UNIT 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 information

8051 INTERFACING TO EXTERNAL MEMORY

8051 INTERFACING TO EXTERNAL MEMORY 8051 INTERFACING TO EXTERNAL MEMORY Memory Capacity The number of bits that a semiconductor memory chip can store Called chip capacity It can be in units of Kbits (kilobits), Mbits (megabits), and so on

More information

EE 459/500 HDL Based Digital Design with Programmable Logic. Lecture 15 Memories

EE 459/500 HDL Based Digital Design with Programmable Logic. Lecture 15 Memories EE 459/500 HDL Based Digital Design with Programmable Logic Lecture 15 Memories 1 Overview Introduction Memories Read Only Memories Random Access Memories FIFOs 2 1 Motivation Most applications need memory!

More information

SRAM. Introduction. Digital IC

SRAM. 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 information

Internal Memory. Computer Architecture. Outline. Memory Hierarchy. Semiconductor Memory Types. Copyright 2000 N. AYDIN. All rights reserved.

Internal 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 information

Lecture 7. Standard ICs FPGA (Field Programmable Gate Array) VHDL (Very-high-speed integrated circuits. Hardware Description Language)

Lecture 7. Standard ICs FPGA (Field Programmable Gate Array) VHDL (Very-high-speed integrated circuits. Hardware Description Language) Standard ICs FPGA (Field Programmable Gate Array) VHDL (Very-high-speed integrated circuits Hardware Description Language) 1 Standard ICs PLD: Programmable Logic Device CPLD: Complex PLD FPGA: Field Programmable

More information

3. Implementing Logic in CMOS

3. Implementing Logic in CMOS 3. Implementing Logic in CMOS 3. Implementing Logic in CMOS Jacob Abraham Department of Electrical and Computer Engineering The University of Texas at Austin VLSI Design Fall 27 September, 27 ECE Department,

More information

Memory Design I. Array-Structured Memory Architecture. Professor Chris H. Kim. Dept. of ECE.

Memory 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 information

Summary of FPGA & VHDL

Summary of FPGA & VHDL FYS4220/9220 Summary of FPGA & VHDL Lecture #6 Jan Kenneth Bekkeng, University of Oslo - Department of Physics 16.11.2011 Curriculum (VHDL & FPGA part) Curriculum (Syllabus) defined by: Lectures Lecture6:

More information

Summer 2003 Lecture 18 07/09/03

Summer 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 information

CS310 Embedded Computer Systems. Maeng

CS310 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 information

Unit 6 1.Random Access Memory (RAM) Chapter 3 Combinational Logic Design 2.Programmable Logic

Unit 6 1.Random Access Memory (RAM) Chapter 3 Combinational Logic Design 2.Programmable Logic EE 200: Digital Logic Circuit Design Dr Radwan E Abdel-Aal, COE Unit 6.Random Access Memory (RAM) Chapter 3 Combinational Logic Design 2. Logic Logic and Computer Design Fundamentals Part Implementation

More information

Memory Overview. Overview - Memory Types 2/17/16. Curtis Nelson Walla Walla University

Memory 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 information

Design and Implementation of an AHB SRAM Memory Controller

Design 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 information

CHAPTER - 2 : DESIGN OF ARITHMETIC CIRCUITS

CHAPTER - 2 : DESIGN OF ARITHMETIC CIRCUITS Contents i SYLLABUS osmania university UNIT - I CHAPTER - 1 : BASIC VERILOG HDL Introduction to HDLs, Overview of Digital Design With Verilog HDL, Basic Concepts, Data Types, System Tasks and Compiler

More information

FPGA VHDL Design Flow AES128 Implementation

FPGA VHDL Design Flow AES128 Implementation Sakinder Ali FPGA VHDL Design Flow AES128 Implementation Field Programmable Gate Array Basic idea: two-dimensional array of logic blocks and flip-flops with a means for the user to configure: 1. The interconnection

More information

FPGA: What? Why? Marco D. Santambrogio

FPGA: What? Why? Marco D. Santambrogio FPGA: What? Why? Marco D. Santambrogio marco.santambrogio@polimi.it 2 Reconfigurable Hardware Reconfigurable computing is intended to fill the gap between hardware and software, achieving potentially much

More information

Lecture 12 VHDL Synthesis

Lecture 12 VHDL Synthesis CPE 487: Digital System Design Spring 2018 Lecture 12 VHDL Synthesis Bryan Ackland Department of Electrical and Computer Engineering Stevens Institute of Technology Hoboken, NJ 07030 1 What is Synthesis?

More information

Electronic Control systems are also: Members of the Mechatronic Systems. Control System Implementation. Printed Circuit Boards (PCBs) - #1

Electronic Control systems are also: Members of the Mechatronic Systems. Control System Implementation. Printed Circuit Boards (PCBs) - #1 Control System Implementation Hardware implementation Electronic Control systems are also: Members of the Mechatronic Systems Concurrent design (Top-down approach?) Mechanic compatibility Solve the actual

More information

FPGA Programming Technology

FPGA 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 information

ECE 485/585 Microprocessor System Design

ECE 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 information

Chapter 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 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 information

The Memory Component

The 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 information

! Memory. " RAM Memory. " Serial Access Memories. ! Cell size accounts for most of memory array size. ! 6T SRAM Cell. " Used in most commercial chips

! 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 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) + (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 information

Memory in Digital Systems

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 information

ECE 459/559 Secure & Trustworthy Computer Hardware Design

ECE 459/559 Secure & Trustworthy Computer Hardware Design ECE 459/559 Secure & Trustworthy Computer Hardware Design VLSI Design Basics Garrett S. Rose Spring 2016 Recap Brief overview of VHDL Behavioral VHDL Structural VHDL Simple examples with VHDL Some VHDL

More information

Section 6. Memory Components Chapter 5.7, 5.8 Physical Implementations Chapter 7 Programmable Processors Chapter 8

Section 6. Memory Components Chapter 5.7, 5.8 Physical Implementations Chapter 7 Programmable Processors Chapter 8 Section 6 Memory Components Chapter 5.7, 5.8 Physical Implementations Chapter 7 Programmable Processors Chapter 8 Types of memory Two major types of memory Volatile When power to the device is removed

More information

CREATED BY M BILAL & Arslan Ahmad Shaad Visit:

CREATED 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 information

CS 320 February 2, 2018 Ch 5 Memory

CS 320 February 2, 2018 Ch 5 Memory CS 320 February 2, 2018 Ch 5 Memory Main memory often referred to as core by the older generation because core memory was a mainstay of computers until the advent of cheap semi-conductor memory in the

More information

Introduction to Field Programmable Gate Arrays

Introduction to Field Programmable Gate Arrays Introduction to Field Programmable Gate Arrays Lecture 1/3 CERN Accelerator School on Digital Signal Processing Sigtuna, Sweden, 31 May 9 June 2007 Javier Serrano, CERN AB-CO-HT Outline Historical introduction.

More information

William Stallings Computer Organization and Architecture 8th Edition. Chapter 5 Internal Memory

William 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 information

Design Methodologies. Digital Integrated Circuits A Design Perspective. Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolic.

Design Methodologies. Digital Integrated Circuits A Design Perspective. Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolic. Digital Integrated Circuits A Design Perspective Jan M. Rabaey Anantha Chandrakasan Borivoje Nikolic Design Methodologies December 10, 2002 L o g i c T r a n s i s t o r s p e r C h i p ( K ) 1 9 8 1 1

More information

Control System Implementation

Control System Implementation Control System Implementation Hardware implementation Electronic Control systems are also: Members of the Mechatronic Systems Concurrent design (Top-down approach?) Mechanic compatibility Solve the actual

More information

FPGAs in a Nutshell - Introduction to Embedded Systems-

FPGAs in a Nutshell - Introduction to Embedded Systems- FPGAs in a Nutshell - Introduction to Embedded Systems- Dipl.- Ing. Falk Salewski Lehrstuhl Informatik RWTH Aachen salewski@informatik.rwth-aachen.de Winter term 6/7 Contents History FPGA architecture

More information

Information Storage and Spintronics 10

Information Storage and Spintronics 10 Information Storage and Spintronics 10 Atsufumi Hirohata Department of Electronic Engineering 09:00 Tuesday, 30/October/2018 (J/Q 004) Quick Review over the Last Lecture Flash memory : NAND-flash writing

More information

EE219A Spring 2008 Special Topics in Circuits and Signal Processing. Lecture 9. FPGA Architecture. Ranier Yap, Mohamed Ali.

EE219A Spring 2008 Special Topics in Circuits and Signal Processing. Lecture 9. FPGA Architecture. Ranier Yap, Mohamed Ali. EE219A Spring 2008 Special Topics in Circuits and Signal Processing Lecture 9 FPGA Architecture Ranier Yap, Mohamed Ali Annoucements Homework 2 posted Due Wed, May 7 Now is the time to turn-in your Hw

More information

VLSI Design Automation

VLSI Design Automation VLSI Design Automation IC Products Processors CPU, DSP, Controllers Memory chips RAM, ROM, EEPROM Analog Mobile communication, audio/video processing Programmable PLA, FPGA Embedded systems Used in cars,

More information

Introduction to Semiconductor Memory Dr. Lynn Fuller Webpage:

Introduction 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 information

TSEA22, DIGITALTEKNIK LECTURE 7

TSEA22, DIGITALTEKNIK LECTURE 7 LINKÖPING UNIVERSITY Department of Electrical Engineering TSEA22, DIGITALTEKNIK LECTURE 7 Mario Garrido Gálvez mario.garrido.galvez@liu.se Linköping, 2018 1 FEEDBACK: POSITIVE Course: Good / Interesting

More information

Introduction read-only memory random access memory

Introduction read-only memory random access memory Memory Interface Introduction Simple or complex, every microprocessorbased system has a memory system. Almost all systems contain two main types of memory: read-only memory (ROM) and random access memory

More information