Qsys System Design Tutorial

ID 683378
Date 5/04/2015
Public
Document Table of Contents

1. Qsys System Design Tutorial

This tutorial introduces you to the Qsys system integration tool available with the Quartus®II software.

This tutorial shows you how to design a system that uses various test patterns to test an external memory device. It guides you through system requirement analysis, hardware design tasks, and evaluation of the system performance, with emphasis on system architecture.

In this tutorial, you create a memory tester system that tests a synchronous dynamic random access memory (SDRAM) device. The final system contains the SDRAM controller and instantiates a Nios® II processor and embedded peripherals in a hierarchical subsystem. The final design includes various Qsys components that generate test data, access memory, and verify the returned data.

The memory tester components for the design are Verilog HDL components with an accompanying Hardware Component Description File (_hw.tcl) that describes the interfaces and parameterization of each component. The _hw.tcl files are located in the tt_qsys_design\memory_tester_ip directory.

The final system contains the following components:

  • Processor subsystem based on the Nios II/e core, which includes an on-chip RAM to store the processor's software code, and a JTAG UART to communicate via JTAG and display the memory test results in the host PC's console.
  • SDRAM controller to control the off-chip DDR SDRAM device under test.
  • Custom and pseudo-random binary sequence (PRBS) pattern generators and checkers to test the robustness of links.
  • Pattern select multiplexer and demultiplexer to choose between the two pattern generators and checkers.
  • Pattern writer and reader that interact with the SDRAM controller.
  • Memory test controller.

Each section in this tutorial provides an overview describing the components that you instantiate. You can use the final system on hardware without a license, and perform the following actions with Altera's free OpenCore Plus evaluation feature:

  • Simulate the behavior of the system and verify its functionality.
  • Generate time-limited device programming files for designs that incorporate Altera or partner IP.
  • Program a device and verify your design in hardware.

You can use the Nios II/e processor and the DDR SDRAM IP cores with a Quartus II subscription license. Design files for other development kit boards use different DDR SDRAM controllers to match the memory device available on the development kit.

In this tutorial, you instantiate the complete memory tester system in the top-level system along with the processor IP Cores, which are grouped as their own processor system, and the SDRAM Controller IP. The Nios II processor includes a software program to control the memory tester system, which communicates with the SDRAM Controller to access the off-chip SDRAM device under test.

Figure 1. Qsys Memory TesterThe components in the memory tester system are grouped into a single Qsys system with three major design functions. The design hierarchy allows you to instantiate the data pattern generator and data pattern checker components into separate systems. You can then add the memory tester system with the memory master and controller components.