Memory Interface Every µP-based system has a memory system. All systems contain two types of memories.  Read-Only Memory (Volatile Memory)  Random Access.

Slides:



Advertisements
Similar presentations
Chapter 5 Internal Memory
Advertisements

Computer Organization and Architecture
Programmable Logic PAL, PLA.
+ CS 325: CS Hardware and Software Organization and Architecture Internal Memory.
Department of Computer Engineering
Memory Basics. 8-1 Memory definitions Memory is a collection of cells capable of storing binary information. Two types of memory: –Random-Access Memory.
Chapter 10. Memory, CPLDs, and FPGAs
Parity. 2 Datasheets TTL:  CMOS: 
Overview Memory definitions Random Access Memory (RAM)
Chapter 5 Internal Memory
Memory Devices Wen-Hung Liao, Ph.D..
Multiplexers, Decoders, and Programmable Logic Devices
TK Memory Interface DR MASRI AYOB. 2 Requirement and memory structure There are two types of memory: –RAM: read and write –ROM: read only Figure.
ECE 331 – Digital System Design Tristate Buffers, Read-Only Memories and Programmable Logic Devices (Lecture #16) The slides included herein were taken.
ECE 301 – Digital Electronics
Programmable Array Logic (PAL) Fixed OR array programmable AND array Fixed OR array programmable AND array Easy to program Easy to program Poor flexibility.
Chapter 6 Memory and Programmable Logic Devices
Logic Device and Memory. Tri-state Devices Tri-state logic devices have three states: logic 1, logic 0, and high impedance. A tri-state device has three.
1 The 8051 Microcontroller and Embedded Systems CHAPTER INTERFACING TO EXTERNAL MEMORY.
EKT 221 Digital Electronics II
Khaled A. Al-Utaibi Memory Devices Khaled A. Al-Utaibi
Storey: Electrical & Electronic Systems © Pearson Education Limited 2004 OHT 27.1 Implementing Digital Systems  Introduction  Semiconductor Memory 
Memory and Programmable Logic
Introduction to Computing: Lecture 4
8088 I/F with basic IO, RAM and 8255
Memory and Programmable Logic Dr. Ashraf Armoush © 2010 Dr. Ashraf Armoush.
Microprocessor Address Decoding.
Chapter 10: Memory Interface – Part II. Copyright ©2009 by Pearson Education, Inc. Upper Saddle River, New Jersey All rights reserved. The Intel.
Address Decoding Memory/IO.
EKT 221 : Digital 2 Memory Basics
Memory interface Memory is a device to store data
Logic and Computer Design Dr. Sanjay P. Ahuja, Ph.D. FIS Distinguished Professor of CIS ( ) School of Computing, UNF.
Digital Electronics Chapter 7 Memory and Programmable Logic.
Memory and Programmable Logic Memory device: Device to which binary information is transferred for storage, and from which information is available for.
HARDWARE ARCHITECTURE
Chapter 8 Memory Interface
Minimum System Requirements Clock Generator Memory Interfacing.
Memory Interface A Course in Microprocessor Electrical Engineering Dept. University of Indonesia.
Memory Organization and Interfacing CSE 2312 Maher Al-Khaiyat.
Digital Design: Principles and Practices
Digital Logic Design Instructor: Kasım Sinan YILDIRIM
Memory Read only memory (ROM) – nonvolatile
Basic I/O Interface Fixed Address Variable Address
IC design options PLD (programmable logic device)
Wnopp Memory device Introduction n Memory Cell n Memory Word n Byte n Capacity n Address n Read Operation n Write Operation n Access Time n Volatile.
Chapter 10: Memory Interface – Part I. Copyright ©2009 by Pearson Education, Inc. Upper Saddle River, New Jersey All rights reserved. The Intel.
Digital Circuits Introduction Memory information storage a collection of cells store binary information RAM – Random-Access Memory read operation.
ECE 353 Introduction to Microprocessor Systems Michael J. Schulte Week 8.
1 KU College of Engineering Elec 204: Digital Systems Design Lecture 22 Memory Definitions Memory ─ A collection of storage cells together with the necessary.
Programmable logic devices. CS Digital LogicProgrammable Logic Device2 Outline PLAs PALs ROMs.
Objectives : At the end of this lesson, students should be able to : i.Identify the types of memory chip and their functions. ii.Define the difference.
Thinning Lines Between Software and Hardware Programmable Logic Devices Adam Foust.
AHMEDABAD INSTITUTE OF TECHNOLOGY
MICROPROCESSOR BASED SYSTEM DESIGN BY PROF. DR. B. S. CHOWDHRY Lecture #
Chapter 10: Memory Interface
Memory and Programmable Logic
Prof. Hsien-Hsin Sean Lee
Sequential Programmable Devices
Memory Interfacing.
MEMORY DEVICES, CIRCUITS, AND SUBSYSTEM DESIGN
Interfacing 64Kb EPROM with 8085
Memory Units Memories store data in units from one to eight bits. The most common unit is the byte, which by definition is 8 bits. Computer memories are.
Electronics Technology
Interfacing Memory Interfacing.
Programmable Logic Devices: CPLDs and FPGAs with VHDL Design
EE345: Introduction to Microcontrollers Memory
حافظه و منطق قابل برنامه ریزی
حافظه و منطق قابل برنامه ریزی
Introduction to Computing Chapter 0
Presentation transcript:

Memory Interface Every µP-based system has a memory system. All systems contain two types of memories.  Read-Only Memory (Volatile Memory)  Random Access Memory (Read/Write Memory or Non-volatile Memory) ROM contains system software and permanent system data. RAM contains system temporary data and system application software. Memory Devices: Memory Pin Connections: Pin connections common to all memory devices are: Address Inputs Data Outputs or Input(s)/Output(s) Selection Input Control input to selects READ or Write  Read-Only Memory  Static Random Access Memory (SRAM)  Flash Memory (EEPROM)  Dynamic Random Access Memory (DRAM)

Address Connections: Address inputs selects a memory location within the memory device. Labeled from A 0, least significant address input A N, ‘N’ labeled, ‘N-1’then the total number of address pins Memory Address Pins (N) Address Connections Memory Locations (2 N ) 1K10A 0 -A K11A 0 -A K12A 0 -A K13A 0 -A M20A 0 -A 19 1,048,576 Memory DeviceMemory Sys. SectionDecoded Starting AddressLast Location Address 1K400H (1024)10000H 103FFH (10000H+400H-1H) 4K1000H (4096)14000H 14FFFH (14000H+1000H-1H) 64K10,000H30000H 3FFFFH 1M100,000H- -

Data Connections: All memory deices has a set of data outputs or input(s)/output(s). Today, many devices have bi-directional common IO pins. Data pins are labeled with D 7 -D 0 for an 8-bit-wide memory (Means memory device stores 8-bit of data in each of its Memory locations). 8-bit-wide memory device is often called byte-wide memory Mostly devices are 8-bit-wide, some devices are 16-bits, 4-bits or just 1-bit-wide  Datasheet (Catalog Listing) of memory devices often Represented by:Memory Locations x Bits per Location Ex: Memory Device with 1-K memory locations and 8-bits in each location is often listed as 1K x 8 by the manufacturer. (64K x 4, 16K x 1)  Sometime memory devices classified as Total bit Capacity. Ex: 8K, 256K

Selection Connections: Memory devices has one or more selection or enable inputs  RAM has at least one CS or S.  ROM has at least one CE. If CS, CE or S input is active (Logic 0), memory device performs a read or write operation If CS, CE or S input is inactive (Logic 1), memory device do not performs a read or write operation b/c it is turned OFF or Disabled.  Chip Select (CS)  Chip Enable (CE)  Select (S)

Control Connections: Memory devices have control input (s).  Control input on a ROM is Output Enable (OE) or Gate (G). If OE = 0 and CE = 0, output is enabled If OE = 1 and CE = 0, output is at high-impedance state (disabled)  Control input on a RAM, if one R/W and CS = 0 Two inputs WE (or W) = 0, to perform memory write OE (or G) = 0, to perform memory read these two pins must not be activated (Logic 0) at the same time  ROM has only one control input  RAM has one or two control inputs

ROM Memory:  ROM most commonly used type is EPROM (Erasable Programmable Read-Only Memory)  EEPROM (Electrically Erasable Programmable Read-Only Memory) or Flash Memory Types of EPROM with following part numbers: Each has Address inputs Eight data pins One or more Chip Selection inputs (CE), and output enable (OE) x K x K x K x K x K x K x K x K x 8

Commonly used EPROM is 2716 EPROM has 11 address inputs and 8 data outputs It is 2K x 8 memory device OE CE

Static RAM (SRAM): TMS4016 is a 2K x 8 read/write memory 11 address inputs 8 data input/output

Address Decoding: Its is necessary to decode the address sent from the µP Without address decoder only one memory can be connected Why Decode Memory: 8088 is compared to the 2716 EPROM  20-bit11-bit  1M x 82K x 8 The decoder corrects the mismatch by decoding the address pins that do not connect to the memory device.

Simple NAND Gate Decoder:

If the 20-bit binary address is decoded by the NAND gate Leftmost 9 bits are 1’s Rightmost 11 bits are 0’s By this actual address range of EPROM can be determined Ex: XXX XXXX XXXX Starting Address = FF800H Ending Address = FFFFFH OR Ex: XXX XXXX XXXX Starting Address = 00000H Ending Address = 007FFH

3-to-8 Line Decoder (74LS138): Imagine eight EPROM CE input pins connected to eight outputs of the decoder

2764 EPROM 8K x 8: To enable decoder IC, A 19 -A 16 four connections must all be high.

1111 XXXX XXXX XXXX XXXX OR Starting Address = F0000H to Ending Address = FFFFFH(its 64K-byte span of memory) Each output range can be calculated as CBA X XXXX XXXX XXXX CBA Starting Address = F0000H to Ending Address = F1FFFH CBA Starting Address = F2000H to Ending Address = F3FFFH

PLD (Programmable Logic Device) Programmer Decoder: Arrays of logic elements that are programmable Types of SPLD (Simple PLD) o PLA (Programmable Logic Array) o PAL (Programmable Array Logic) o GAL (Gated Array Logic) Other types ASIC (Application-Specific Integrated Circuits) o CPLD (Complex Programmable Logic Array) o FPGAs (Field Programmable Gate Arrays) o FPICs (Field Programmable Interconnects) A PAL is programed with HDL (Hardware Descriptive Language) or VHDL (Verilog HDL)

-- VHDL code for the decoder of fig library ieee; use ieee.std_logic_1164.all; entity DECODER_10_19 is port ( A19, A18, A17, MIO: in STD_LOGIC; ROM, RAM, AX19: out STD_LOGIC ); end; architecture V1 of DECODER_10_19 is begin ROM <= A19 or A18 or A17 or MIO; RAM <= not (A18 and A17 and (not MIO)); AX19 <= not A19; end V1;

8086 Memory Interface: Address Bus is 20-bit wide Data bus is 16-bit wide M/IO BHE (Bus High Enable) A 0 or BLE 8086 must be able to write data to any 16-bit location or any 8-bit location 16-bit bus must be divided into 2 separate sections (banks) Low Bank High Bank Bank Selection is accomplish in two ways: Separate Bank Decoders Separate Bank Write Strobes

Separate Bank Decoders: (least effective way) two 74LS138 decoders used to select 64K RAM for 80386SX (24-bit address bus) Decoder U 2 has the BLE (A 0 ) attached to G2A Decoder U 3 has the BHE attached to G2A Decoder U 1 enables U 2 and U 3 for memory address range H-0FFFFFH

Separate Bank Write Strobes: (most effective way) Develop a separate write strobe for each memory bank This technique requires only 1-decoder