ELCT 912: Advanced Embedded Systems

Similar documents
ELCT 501: Digital System Design

Lecture 13: Memory and Programmable Logic

Semiconductor Memories: RAMs and ROMs

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

Memory and Programmable Logic

Presentation 4: Programmable Combinational Devices

Memory and Programmable Logic

Memory and Programmable Logic

+1 (479)

Concept of Memory. The memory of computer is broadly categories into two categories:

Chapter 5 Internal Memory

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

Computer Structure. Unit 2: Memory and programmable devices

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

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

Programmable Logic Devices UNIT II DIGITAL SYSTEM DESIGN

CHAPTER X MEMORY SYSTEMS

Read and Write Cycles

UNIT V (PROGRAMMABLE LOGIC DEVICES)

PLAs & PALs. Programmable Logic Devices (PLDs) PLAs and PALs

UNIT - V MEMORY P.VIDYA SAGAR ( ASSOCIATE PROFESSOR) Department of Electronics and Communication Engineering, VBIT

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

COMP3221: Microprocessors and. and Embedded Systems. Overview. Lecture 23: Memory Systems (I)

Read-only memory Implementing logic with ROM Programmable logic devices Implementing logic with PLDs Static hazards

Very Large Scale Integration (VLSI)

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

Computer Organization. 8th Edition. Chapter 5 Internal Memory

P-2 Digital Design & Applications

Introduction to SRAM. Jasur Hanbaba

EECS150 - Digital Design Lecture 16 Memory 1

CENG 4480 L09 Memory 3

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

ECE 331 Digital System Design

Introduction to Semiconductor Memory Dr. Lynn Fuller Webpage:

ECSE-2610 Computer Components & Operations (COCO)

Allmost all systems contain two main types of memory :

Chapter 13 Programmable Logic Device Architectures

CSEE 3827: Fundamentals of Computer Systems. Storage

Programmable Logic Devices Introduction CMPE 415. Programmable Logic Devices

CENG 4480 L09 Memory 2

Lecture Objectives. Introduction to Computing Chapter 0. Topics. Numbering Systems 04/09/2017

Digital Systems. Semiconductor memories. Departamentul de Bazele Electronicii

MEMORY AND PROGRAMMABLE LOGIC

CREATED BY M BILAL & Arslan Ahmad Shaad Visit:

DIGITAL SYSTEM FUNDAMENTALS (ECE421) DIGITAL ELECTRONICS FUNDAMENTAL (ECE4220. PROGRAMMABLE LOGIC DEVICES (PLDs)

PROGRAMMABLE LOGIC DEVICES

UMBC. Select. Read. Write. Output/Input-output connection. 1 (Feb. 25, 2002) Four commonly used memories: Address connection ... Dynamic RAM (DRAM)

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

Chapter 6 Selected Design Topics

Computer Organization and Assembly Language (CS-506)

Microcontroller Systems. ELET 3232 Topic 11: General Memory Interfacing

Chapter 4 Main Memory

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

Sistemas Digitais I LESI - 2º ano

DIGITAL SYSTEM FUNDAMENTALS (ECE421) DIGITAL ELECTRONICS FUNDAMENTAL (ECE422)

CHAPTER 9 MULTIPLEXERS, DECODERS, AND PROGRAMMABLE LOGIC DEVICES

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

Logic and Computer Design Fundamentals. Chapter 8 Memory Basics

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

Semiconductor Memory Classification

8051 INTERFACING TO EXTERNAL MEMORY

Review: Chip Design Styles

MEMORY BHARAT SCHOOL OF BANKING- VELLORE

ECE 485/585 Microprocessor System Design

EECS150 - Digital Design Lecture 16 - Memory

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

Embedded Controller Design. CompE 270 Digital Systems - 5. Objective. Application Specific Chips. User Programmable Logic. Copyright 1998 Ken Arnold 1

EECS 3201: Digital Logic Design Lecture 7. Ihab Amer, PhD, SMIEEE, P.Eng.

(Advanced) Computer Organization & Architechture. Prof. Dr. Hasan Hüseyin BALIK (5 th Week)

CMPE 415 Programmable Logic Devices FPGA Technology I

Programmable Logic Devices

LSN 6 Programmable Logic Devices

PROGRAMMABLE MODULES SPECIFICATION OF PROGRAMMABLE COMBINATIONAL AND SEQUENTIAL MODULES

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

Memory memories memory

Digital Integrated Circuits

FYSE420 DIGITAL ELECTRONICS. Lecture 7

FPGA Programming Technology

CMOS Logic Circuit Design Link( リンク ): センター教官講義ノートの下 CMOS 論理回路設計

Lecture 20: CAMs, ROMs, PLAs

I 4 I 3 I 2 I 1 I 0 A 7 A 6 A 5 A 4 A 3 A 2 A 1 A 0 T-125. ROM Truth Table (Partial) 1997 by Prentice-Hall, Inc.

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

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

Memory & Logic Array. Lecture # 23 & 24 By : Ali Mustafa

Grundlagen Microcontroller Memory. Günther Gridling Bettina Weiss

Magnetic core memory (1951) cm 2 ( bit)

Lecture 13: SRAM. Slides courtesy of Deming Chen. Slides based on the initial set from David Harris. 4th Ed.

DIGITAL CIRCUIT LOGIC UNIT 9: MULTIPLEXERS, DECODERS, AND PROGRAMMABLE LOGIC DEVICES

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

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

Fig. 6-1 Conventional and Array Logic Symbols for OR Gate

ECE321 Electronics I

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

CS 320 February 2, 2018 Ch 5 Memory

Digital Design, Kyung Hee Univ. Chapter 7. Memory and Programmable Logic

Lecture-7 Characteristics of Memory: In the broad sense, a microcomputer memory system can be logically divided into three groups: 1) Processor

Chapter 5. Internal Memory. Yonsei University

ECE 2300 Digital Logic & Computer Organization

CHAPTER 12 ARRAY SUBSYSTEMS [ ] MANJARI S. KULKARNI

Summer 2003 Lecture 18 07/09/03

Transcription:

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 long as v dd is applied 6-transistors per cell Faster Dynamic Random Access Memory (DRAM) Require periodic refresh Smaller (can be implemented by 1 or 3 transistors) slower Read-Only Memory (ROM) A memory device in which permanent binary information is stored Mask ROM: The programming is done by the semiconductor company during the last fabrication process of the unit PROM: Once the PROM is programmed, it cannot be reversed EPROM: An erasable PROM and can be erased by exposure to UV light EEPROM: Can be erased and programmed with electrical pulses Flash memory: High-density read/write memories that are nonvolatile. They have the ability to retain charge for years with no applied power 2

Block Diagram of Memory "#$ Example: 2MB memory, byte-addressable -N =8 (because of byte-addressability) -K= 21 (1 word= 8-bit)! 3

Static Random Access Memory (SRAM) % &% &% Typically each bit is implemented with 6 transistors (6T SRAM Cell) During read, the bitline and its inverse are precharged to Vdd (1) before set WL=1 During write, put the value on Bitline and its inverse on Bitline_bar before set WL=1 4

Dynamic Random Access Memory (DRAM) % & 1-transistor DRAM cell During a write, put value on bitline and then set WL=1 During a read, prechage bitline to Vdd (1) before assert WL to 1 Storage decays, thus requires periodic refreshing (read-sense-write) 5

Memory Description Capacity of a memory is described as # addresses x Word size 6

How to address Memory ( ) * "0 (, "# 0 * -. / ), ( 7

How to address Memory (1 ) * ( 1(, "0 "#0 *1 -. / ), ( ** 1(2 8

Use 2 Decoders "# 0 * ) * * "0 (, ( "0 * " * ( (, 3 & 9

Tristate Buffer 4 Could amplify signal Typically used for signal traveling e.g. bus $ $! "!0** 10

Bi-directional Bus using Tri-state Buffer * *! & 11

Read/Write Memory ) * ( *, "0 1( "# 0 * ( "0 * " * ( (, 12

Read/Write Memory ) * ( ( *, "0 1 "# 0 *1 ( "0 * " * ( (, 13

Building Memory in Hierarchy Design a 1Mx8 using 1Mx4 memory chips 2) "0 14

Building Memory in Hierarchy Design a 2Mx4 using 1Mx4 memory chips 5 6-2), ( "0 ( ( * "0 ( 5 6-2) ( "0 15

Building Memory in Hierarchy Design a 2Mx8 using 1Mx4 memory chips ( * ( 5 6 - ( 5 6 - ( 2) "0 2) "0 "0 5 6-2) ( "0 5 6-2) ( "0 16

Memory Model 32-bit address space can address up to 4 GB (2 32 ) different memory locations (2(((((((( (2((((((( (2((((((( (2( (2&. (2) % (2(((((((, (27" 89# (277777777 (2( 7 17

Endianness [Danny Cohen 91] A byte ordering- How a multiple byte data word stored in memory Endianness (from Gulliver s Travels) Big Endian Most significant byte of a multi-byte word is stored at the lowest memory address E.g. Sun Sparc, PowerPC Little Endian Least significant byte of a multi-byte word is stored at the lowest memory address e.g. Intel x86 Some embedded & DSP processors would support both for interoperability 18

Endianness Examples Store 0x21436587 at address 0x0000 (2(((( (2((( (2((( (26- (2./ (2), % (2(((( (2((( (2((( (2 (2), (2./ % (2(((, (2 (2(((, (26- %33%$ $ 89# &:$ 89# 19

Read Only Memory (ROM) Permanent binary information is stored Non-volatile memory Power off does not erase information stored!! 20

32x8 ROM /, * (, 6 5,(,,26! 6 $*#, 7 * 21

Programming the 32x8 ROM!!!!!!!! " " " " " " " " " " " " " /, * ( 5,(, -. / ), ( 22

Example: Lookup Table Design a square lookup table for F(X)=X 2 using ROM # $%#&# # $%#&# 23

Square Lookup Table using ROM # $%#&#!!! (,6, * ) /. - " " " " " " 24

Square Lookup Table using ROM # $%#&#!!! (,6, * ) /. - " " " " " " $%& #! 25

Square Lookup Table using ROM # $%#&#!!!,6 (, * ) /. - " " " " " " 26

Classifying Three Basic PLDs ;3 ;3 72 * ;9 " * ;9! ;9!! ;9 ;9 " * ;9! ;9 %9*;%!3;3!3;3 ;3 ;9 72! ;9 %9*;% <* ;%= > ;%? *< 2 * * < @ 7 7!3;3 27

Programmable Logic Array (PLA) ( ) **, (,* ( ) **, $(,* " 28

Example using PLA F1(A, B, C) = m(0,1,2,4) F2(A, B, C) = m(0,5,6,7) F1 = A B A C BC F1 = AB AC BC F2 = AB AC A BC 29

Example using PLA F1 F2 = = AB AB AC AC BC A B C & " &" &" " " 30

PLA Device ;9 ; 72!; 31

PLA Device Design Example & & " "!! 9 IO1 = AB C A BC D IO2 = AB C A BC D A C D A B CD 32

CPLD and FPGA [brown & Rose 96] Complex Programmable Logic Device (CPLD) Multiple PLDs (e.g. PALs, PLAs) with Programmable interconnection structure Pioneered by Altera Field-Programmable Gate Array (FPGA) High logic capacity with large distributed interconnection structure Logic capacity= number of 2-input NAND gates Offers more narrow logic resources CPLD offers logic resources with a wide number of inputs (AND planes) Offer a higher ratio of Flip-flops to logic resources than CPLD High Capacity PLD (HCPLD) is often used to refer to both CPLD and FPGA 33

CPLD Structure %9** ;% ;% ;% ;%!* * * ;% ;% ;% ;% 34

FPGA Structure %9**!* * * 35

FPGA Programmability Floating gate transistor Used in EPROM and EEPROM SRAM-controlled switch-control Pass transistors Multiplexers (to determine how to route inputs) Antifuse Similar to fuse Originally an Open-Circuit One-Time Programmable (OTP) 36

References Logic and Computer Design Fundamentals by M. Morris Mano and Charles R. Kime. 4th edition, Prentice Hall. 2008. P. Marwedel: Embedded System Design, Springer, 2006 First Steps with Embedded Systems Byte Craft Limited 37