UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

How to Design a High-Speed Memory Interface

Release Date:
June 2015
Level:
Connectivity 3
Duration:
2 days

Key Documentation

Audience

FPGA designers and logic designers

Prerequisites

  • VHDL or Verilog experience or Designing with VHDL or Designing with Verilog course
  • Familiarity with logic design: state machines and synchronous design
  • Very helpful to have:
    • Basic knowledge of FPGA architecture
    • Familiarity with Xilinx implementation tools
  • Nice to have:
    • Familiarity with I/O basics
    • Familiarity with high-speed I/O standard

Register

For class schedules as well as tuition and registration information, please contact one of our Authorized Training Providers.

Course Description

This course teaches hardware designers who are new to high-speed memory I/O to design a memory interface in Xilinx FPGAs. It introduces designers to the basic concepts of high-speed memory I/O design, implementation, and debugging using 7 series FPGAs.

Additionally, students will learn about the tools available for high-speed memory interface design, debug, and implementation of high-speed memory interfaces.

The major memory types covered are DDR2 and DDR3. The following memory types are covered on demand: RLDRAMII, LPDDR2, and QDRII+. Labs are available for DDR3 on the Kintex®-7 FPGA KC705 board.

Software Tools

  • Vivado® Design or System Edition 2015.1
  • Mentor Graphics QuestaSim Advanced Simulator 10.3d
  • Mentor Graphics HyperLynx SI 9.x

Hardware

  • Architecture: 7 series FPGAs*
  • Demo board: Kintex-7 FPGA KC705 board*

* This course focuses on the 7 series FPGA architectures. Check with your local Authorized Training Provider for the specifics of the in-class lab board or other customizations.

Skills Gained

After completing this comprehensive training, you will know how to:

  • Identify the FPGA resources required for memory interfaces
  • Describe different types of memories
  • Utilize Xilinx tools to generate memory interface designs
  • Simulate memory interfaces with the Xilinx Vivado simulator
  • Implement memory interfaces
  • Identify the board design options for the realization of memory interfaces
  • Test and debug your memory interface design
  • Run basic memory interface signal integrity simulations

Course Outline

Lab Lecture Demo

Day 1

  1. 1.1
    Course Introduction
  2. 1.2
    7 Series FPGAs Overview
  3. 1.3
    Memory Devices Overview
  4. 1.4
    7 Series Memory Interface Resources
  5. 1.5
    Memory Controller Details and Signals
  6. 1.6
    MIG Design Generation
  7. 1.7
    Lab 1: MIG Core Generation Create a DDR3 memory controller using the Memory Interface Generator (MIG) in the Vivado IP catalog. Customize the soft core memory controller for the board.
  8. 1.8
    MIG Design Simulation
  9. 1.9
    Lab 2: MIG Design Simulation Simulate the memory controller created in Lab 1 using the Vivado simulator or Mentor Graphics QuestaSim simulator.

Day 2

  1. 2.1
    MIG Design Implementation
  2. 2.2
    Lab 3: MIG Design Implementation Implement the memory controller created in the previous labs. Modify constraints, synthesize, implement, create the bitstream, program the FPGA, and check the functionality.
  3. 2.3
    Memory Interface Test and Debugging
  4. 2.4
    Lab 4: MIG Design Debugging Debug the memory interface design utilizing the Vivado logic analzyer.
  5. 2.5
    MIG in Embedded Designs
  6. 2.6
    Lab 5: MIG in IP Integrator Use the block design editor to include the MIG IP in a given processor design.
  7. 2.7
    Memory Interface Board-Level Design
  8. 2.8
    DDR3 PCB Simulation (optional)
  9. 2.9
    Lab 6: DDR3 Signal Integrity Simulation (optional) Learn basic signal analysis options to check waveforms and design optimization.
Page Bookmarked