sram-dram_2

download sram-dram_2

of 24

Transcript of sram-dram_2

  • 8/3/2019 sram-dram_2

    1/24

    9/22/2005 Lecture 9

    Lecture 9

    Memory Devices and

    Xilinx Block SelectRAM

  • 8/3/2019 sram-dram_2

    2/24

    9/22/2005 Lecture 9

    Objectives

    Show you whats inside the box of RAM chips

    Be familiar with the general design of SRAMs andDRAMs

    Understand the differences between these twomemory technologies

    Understand the details of the Xilinx Block SelectRAMyoull be using in the labs

  • 8/3/2019 sram-dram_2

    3/24

    9/22/2005 Lecture 9

    Review Questions

    Describe the concepts behind memory-mapped I/O

    How is memory-mapped I/O used in ECE 412?

  • 8/3/2019 sram-dram_2

    4/24

    9/22/2005 Lecture 9

    Review Question

    ProcessorAddress

    Space

    I/O DeviceMemoryand ControlRegisters

    1. Describe the concepts behind Memory-Mapped I/O

  • 8/3/2019 sram-dram_2

    5/24

    9/22/2005 Lecture 9

    Review Question

    2. How is Memory mapped IO used in ECE412

    The PCMCIA attribute memory and common memory ismapped into the kernel space by the meta handler invokedby the insertion of the card.

    The device driver uses memory mapped IO to read attributememory for device identification, etc.

    Memory mapped I/O allows device drivers to be written in Cand compiled by a standard C compiler

  • 8/3/2019 sram-dram_2

    6/24

    9/22/2005 Lecture 9

    Whats a RAM?

    Random Access Memory

    Two main types: Static RAM (SRAM) and DynamicRAM (DRAM)

    Differences lie in how bits are stored

    Other types: Flash RAM, SDRAM, Video RAM, FERAM

  • 8/3/2019 sram-dram_2

    7/24

    9/22/2005 Lecture 9

    Basic RAM ArchitectureWord Lines

    Bit Lines

    Bit Cell

    Sense Amplifier

    Address

    High

    Low

    Data

  • 8/3/2019 sram-dram_2

    8/24

    9/22/2005 Lecture 9

    Static RAM (SRAM)

    Word

    Line

    Bit

    !Bit

    Read: Drive word line,

    sense value on bit lines

    Write: Drive word line,

    drive new value

    (strongly) on bit lines

  • 8/3/2019 sram-dram_2

    9/24

    9/22/2005 Lecture 9

    Accessing a Static RAM

    CE

    Addr

    Data

    Read Write

    Note: CE signal is often active-low as opposed to how shown

    here. SRAMs also generally have a write enable signal

  • 8/3/2019 sram-dram_2

    10/24

    9/22/2005 Lecture 9

    Dynamic RAM (DRAM)

    Bit Line

    Word Line

    Read: Drive word line,

    sense value on bit line

    (destroys saved value)

    Write: Drive word line,

    drive new value on bit

    line.

  • 8/3/2019 sram-dram_2

    11/24

    9/22/2005 Lecture 9

    Dynamic RAM Timing (Read)

    RAS

    CAS

    Addr

    Again, control signals are often active-low

  • 8/3/2019 sram-dram_2

    12/24

    9/22/2005 Lecture 9

    Static vs. Dynamic RAM

    Static RAM

    Fast (active drive)

    Less dense (4-6 transistors/bit)

    Stable (holds value as long as power applied)

    Dynamic RAM Slower

    High density (1 transistor/bit)

    Unstable (needs refresh)

    Neither device holds data if power removed

  • 8/3/2019 sram-dram_2

    13/24

    9/22/2005 Lecture 9

    Speeding up RAMs

    Making random accesses faster is hard

    Time to charge word, bit lines significant and growing

    Trade-off between drive of bit cell and size

    Because of caches, processors tend to access blocks

    of memory in consecutive order Can take advantage of this

  • 8/3/2019 sram-dram_2

    14/24

    9/22/2005 Lecture 9

    Page Mode/EDO RAM

    Latch

    Normal RAM drives many bits(row) out of array, selects few to

    output.

    Adding latch at row outputs allows

    us to save an entire row of the RAM

    Later accesses to the RAM can

    eliminate the row access time,

    just need column access time

    Most common in DRAM, page-

    mode SRAMs also exist

  • 8/3/2019 sram-dram_2

    15/24

    9/22/2005 Lecture 9

    Page-Mode DRAM Timing

    RAS

    CAS

    Addr

    Data

  • 8/3/2019 sram-dram_2

    16/24

    9/22/2005 Lecture 9

    Other RAM Types

    Video RAM

    Optimized for high-speed regular accesses to frame buffer SDRAM

    Uses clocked organization to pipeline for speed

    Flash RAM

    Non-volatile (holds data without power) FERAM

    Uses magnetic technology (similar to hard disk) to store data

    Holds value when power off

    Capacity, access time similar to RAM (hard disks take ms)

    Nanotech RAMs Molecular electronics, carbon nanotubes

    Nowhere near ready for prime time

  • 8/3/2019 sram-dram_2

    17/24

    9/22/2005 Lecture 9

    Relative Memory Sizes

    SRAM is primarily afast, but expensive,solution

    DRAM is primarily a

    pretty fast, but cheaper(dense) solution

    FERAM is a non-volatile, expensive,special solution

    Block SelectRAM isembedded SRAM onour Xilinx FPGAs

  • 8/3/2019 sram-dram_2

    18/24

    9/22/2005 Lecture 9

    Virtex Block SelectRAM 18Kb capacity and configurable at build time to be either:

    1 x 16K2 x 8K

    4 x 4K

    8 x 2K

    16 x 1K

    32 x 512

    136 of these on each XC2VP30 FPGA for total of 2.4Mb total

    Later we will have access to much larger DIMMs

    Dual ported, can be aggregated to form larger structures

    Parity bits, possible to pre-load with data in VHDL

  • 8/3/2019 sram-dram_2

    19/24

    9/22/2005 Lecture 9

    Generic Block

    Diagrams

  • 8/3/2019 sram-dram_2

    20/24

    9/22/2005 Lecture 9

    Interface Signals

  • 8/3/2019 sram-dram_2

    21/24

    9/22/2005 Lecture 9

    Supported Configurations

    Your VHDL will instantiate using

    primitives

    Each reference is an individual BRAM

    Could form larger memory block by assembling number ofprimitives, routing delay would determine total access time.

  • 8/3/2019 sram-dram_2

    22/24

    9/22/2005 Lecture 9

    Physical Location

  • 8/3/2019 sram-dram_2

    23/24

    9/22/2005 Lecture 9

    Read and Write TimingRefer to posted application notes for exact details:

    XAPP-463 (says Spartan-3 but is applicable to our parts) XAPP-130 (basic operation, but is for early smaller BRAMS)

  • 8/3/2019 sram-dram_2

    24/24

    9/22/2005 Lecture 9

    Next Time

    Interrupts