Lab 1: Using NIOS II processor for code execution on FPGA

Slides:



Advertisements
Similar presentations
Nios Multi Processor Ethernet Embedded Platform Final Presentation
Advertisements

My First Nios II for Altera DE2-115 Board 數位電路實驗 TA: 吳柏辰 Author: Trumen.
The Xilinx EDK Toolset: Xilinx Platform Studio (XPS) Building a base system platform.
DE1 FPGA board and Quartus
Technion – Israel Institute of Technology Department of Electrical Engineering High Speed Digital Systems Lab Project performed by: Naor Huri Idan Shmuel.
Downloading to Altera Nios Development Kit CSCE 488 Witawas Srisa-an.
Using PDG with e2studio: Example
ECE Department: University of Massachusetts, Amherst Lab 1: Introduction to NIOS II Hardware Development.
CSCE 430/830 A Tutorial of Project Tools By Dongyuan Zhan Feb. 4, 2010.
Using FPGAs with Embedded Processors for Complete Hardware and Software Systems Jonah Weber May 2, 2006.
Figure 1.1 The Altera UP 3 FPGA Development board
Introduction to FPGA Design Illustrating the FPGA design process using Quartus II design software and the Cyclone II FPGA Starter Board. Physics 536 –
Part 1 Using the ARM board And start working with C Tutorial 5 and 6
By: Nadav Haklai & Noam Rabinovici Supervisors: Mike Sumszyk & Roni Lavi Semester:Spring 2010.
The 6713 DSP Starter Kit (DSK) is a low-cost platform which lets customers evaluate and develop applications for the Texas Instruments C67X DSP family.
CSE430/830 Course Project Tutorial Instructor: Dr. Hong Jiang TA: Dongyuan Zhan Project Duration: 01/26/11 – 04/29/11.
Advanced Digital Circuits ECET 146 Week 3 Professor Iskandar Hack ET 221B,
1.  Project Goals.  Project System Overview.  System Architecture.  Data Flow.  System Inputs.  System Outputs.  Rates.  Real Time Performance.
COMPUTER SYSTEM LABORATORY Lab10 - Sensor II. Lab 10 Experimental Goal Learn how to write programs on the PTK development board (STM32F207). 2013/11/19/
OS Implementation On SOPC Midterm Presentation Performed by: Ariel Morali Nadav Malki Supervised by: Ina Rivkin.
ECE Department: University of Massachusetts, Amherst Using Altera CAD tools for NIOS Development.
Lab 1 Department of Computer Science and Information Engineering National Taiwan University Lab1 - Sensor 2014/9/23/ 13 1.
Spring Introduction  Today’s tutorial focuses on introducing you to Xilinx ISE and Modelsim.  These tools are used for Verilog Coding Simulation.
NIOS II Ethernet Communication Final Presentation
Lecture #3 Page 1 ECE 4110–5110 Digital System Design Lecture #3 Agenda 1.FPGA's 2.Lab Setup Announcements 1.HW#2 assigned Due.
Altera’s Excalibur Development System Tyson Hall School of Electrical and Computer Engineering Georgia Institute of Technology.
Lab 2 Parallel processing using NIOS II processors
A Skeleton NIOS II Project for the DE1 board :
Part A Final Dor Obstbaum Kami Elbaz Advisor: Moshe Porian August 2012 FPGA S ETTING U SING F LASH.
 Seattle Pacific University EE Logic System DesignAlteraBoard-2 Altera Cyclone II (484 Pin BGA) 22 Pins.
11 EENG 1920 Introduction to VHDL. 22 Hardware Description Language A computer language used to design circuits with text-based descriptions of the circuits.
Teaching Digital Logic courses with Altera Technology
Embedded Systems Design with Qsys and Altera Monitor Program
Active-HDL Server Farm Course 11. All materials updated on: September 30, 2004 Outline 1.Introduction 2.Advantages 3.Requirements 4.Installation 5.Architecture.
EECE6017C Lab 4 User Interface with LT24 Display Daughter board Prelab Activities: Complete the homework given for Lab 3 Demonstrate the Painter project.
Introduction to the FPGA and Labs
Maj Jeffrey Falkinburg Room 2E46E
Workshop Setup The software/hardware used in this workshop are:
Lab 4 HW/SW Compression and Decompression of Captured Image
DE2-115 Control Panel - Part I
Introduction to Vivado
EECE6017C - Lab 0 Introduction to Altera tools and Basic Digital Logic
Prototyping SoC-based Gate Drive Logic for Power Convertors by Generating code from Simulink models. Researchers Rounak Siddaiah, Graduate Student-University.
Arria 10 External Memory Interface Example Design Guidelines
Arria 10 HPS External Memory Interface Guidelines
Lab 0: Familiarization with Equipment and Software
The first change to your project files that is needed is to change the device to the correct FPGA. This is done by going to the Assignments tab on the.
Computer System Laboratory
DE2-115 Control Panel - Part II
Implementation of Embedded OS
ECE 4110–5110 Digital System Design
ENG3050 Embedded Reconfigurable Computing Systems
My First Nios II for Altera DE2-115 Board
EECE6017 Lab 3 My First FPGA with ADC
CR 245L Digital Design I Lab Sum of Products, 7-Segment Display,
Avalon Switch Fabric.
Using FPGAs with Processors in YOUR Designs
Serial Data Hub (Proj Dec13-13).
SOPC DE10-Lite Basic Computer Parallel port
Getting Started with Vivado
Figure 17.2 It is important that the Advanced Import Options be set as shown here.
Stratix 10 External Memory Interface Example Design Guidelines
Low cost FPGA implimentation of tracking system from USB to VGA
Lab3 Adding Custom IP Lab: MicroBlaze
Founded in Silicon Valley in 1984
Software Setup & Validation
Computer System Laboratory
Arduino Leonardo Setup
Øyvind Hagen Senior Hardware Developer
Remote System Update Example Design for Cyclone IV GX Transceiver Starter Board April 23rd, 2015 (Rev 1.0)
Presentation transcript:

Lab 1: Using NIOS II processor for code execution on FPGA

Objectives Introduction to Altera tools Walk through from project creation to chip configuration (Lab1-Part I) Instructions to get started with Part II

Tools Quartus Prime QSYS NIOS II Software Build Tools for Eclipse FPGA development: Design, simulation, synthesis and download QSYS Build target QSYS system Based on a Processor-core (NIOS II processor), you can add other peripherals (e.g. Parallel IO, Ethernet Controller, Serial Ports, etc.) NIOS II Software Build Tools for Eclipse Software platform for developing programs

Lab1 Objectives Part I : Part 2 : Display “Hello, world” in your debug console from NIOS II Part 2 : Implement a counter program and display the output on the LED, and the seven segment display.

New Project Creation Open Quartus Prime, and select file -> New Project Wizard… Specify a working directory and name your project NOTE: Make sure your working directory contains no white-space. (This will cause problems later when trying to compile your project from the QSYS)

FPGA Selection Select Cyclone V in the drop-down box labeled “family”. We will be using device 5CSEMA5F31C6. Click finish. All necessary project parameters have been configured.

Using the QSYS System SOPC Builder (System on a Programmable Chip Builder) is software made by Altera that automates connecting IP cores to create a complete system that runs on any of its various FPGA chips. Qsys is the next-generation SOPC Builder tool powered by a new FPGA-optimized network-on-a-chip (NoC) technology. Open Tools -> Qsys to start the system, save the system with the same name as the Top Level entity.

QSYS Screenshot

Adding NIOS II Processor

Adding JTAG UART Next, we will be adding a JTAG UART module, found under Serial. JTAG provides us a way to communicate with the NIOS processor from the host computer.

Adding On-Chip Memory Change the memory offset: Double click cpu instance (nios2_gen2) and provide Reset Vector and Exception Vector

Tutorial: Programming the FPGA Back to Quartus Prime Add the QIP file to the project in Quartus, it contains the Verilog files generated by QSYS Now select Processing -> start -> Start Analysis & Synthesis. A number of warnings will appear during the check. This is normal.

Quartus: Analysis & Synthesis

Assigning CLK and Reset Pins The pins assignments can be done using Assignment Editor in Assignments -> Assignment Editor Find the entry corresponding to the clock, assign PIN_AF14 to it. doing so will connect the clock in our design to the 50 MHz oscillator on the DE1-SoC board. Now assign the reset input signal to any of the SW[x] pins. This will connect the reset signal to one of the switches found on the DE1-SoC board. Now select Processing -> Start Compilation. If compilation is successful, a programming file to be written to the FPGA will be generated.

Programming the FPGA Select Tools -> Programmer. Now, select Auto detect, a new dialogue box opens up, choose “5CSEMA5”, you can find two entries, Right click on the 5CSEMA5 entry, change the file to the target SOF file. Be sure that DE1 SoC is connected to the computer via the provided USB cable. A dialogue box will open, mentioning we are using a time-limited version of the NIOS processor. Leave this box open. The FPGA has now been successfully configured!

Programming the FPGA

Tutorial: Using the NIOS II IDE Now that you have successfully developed an QSYS system, we will write a very simple program to run on our new processor. Select Tools -> NIOS II Software Build Tools for Eclipse. Create a new workspace. Make sure that there are no spaces in path directory names.

Tutorial: Using the NIOS II IDE Select File -> New -> NIOS II Application and BSP from template. A new dialogue box should open. A variety of project templates are provided as a starting point. We will be using the “Hello World Small” template. In order to develop a NIOS project, the IDE needs a .sopcinfo file that indicates various peripherals unique to our design.

Tutorial: Using the NIOS II IDE

Tutorial: Using the NIOS II IDE You should now be looking at a window like this:

Tutorial: Using the NIOS II IDE Under the “Project Explorer” tab, right-click on the application. This time select Run As -> NIOS II Hardware. This option will compile and write the program to the on-chip memory we specified in QSYS.

Hello From NIOS II!

Checkpoint: Lab1 (Part I) A NIOS system in the Quartus Prime QSYS Use the NIOS II IDE to run a very simple C program on the system defined in QSYS.

Part II You will use external memory You will use other devices (LED, seven segment, and hex display.) Please read lab instructions on class website

Getting Started with Part II (QSYS) Add the SDRAM PLL to drive the system Add the SDRAM as the program memory Add the required PIOs and name them appropriately

Pin assignments viewed from Pin Planner

Questions