© 2004 Xilinx, Inc. All Rights Reserved Adding a Processor System to an FPGA Design.

Slides:



Advertisements
Similar presentations
Virtex II Pro based SoPC design
Advertisements

© 2003 Xilinx, Inc. All Rights Reserved Debugging.
© 2003 Xilinx, Inc. All Rights Reserved Architecture Wizard and PACE FPGA Design Flow Workshop Xilinx: new module Xilinx: new module.
Graduate Computer Architecture I Lecture 15: Intro to Reconfigurable Devices.
1 Performed By: Khaskin Luba Einhorn Raziel Einhorn Raziel Instructor: Rivkin Ina Spring 2004 Spring 2004 Virtex II-Pro Dynamical Test Application Part.
1 Student: Khinich Fanny Instructor: Fiksman Evgeny המעבדה למערכות ספרתיות מהירות High Speed Digital Systems Laboratory הטכניון - מכון טכנולוגי לישראל.
VirtexIIPRO FPGA Device Functional Testing In Space environment. Performed by: Mati Musry, Yahav Bar Yosef Instuctor: Inna Rivkin Semester: Winter/Spring.
DSP Algorithm on System on Chip Performed by : Einat Tevel Supervisor : Isaschar Walter Accompanying engineers : Emilia Burlak, Golan Inbar Technion -
Configurable System-on-Chip: Xilinx EDK
The Xilinx EDK Toolset: Xilinx Platform Studio (XPS) Building a base system platform.
1 System Prototyping and Hardware Software Design Trong-Yen Lee
Technion Digital Lab Project Xilinx ML310 board based on VirtexII-PRO programmable device Students: Tsimerman Igor Firdman Leonid Firdman Leonid.
ECE Department: University of Massachusetts, Amherst Lab 1: Introduction to NIOS II Hardware Development.
1 Performed By: Khaskin Luba Einhorn Raziel Einhorn Raziel Instructor: Rivkin Ina Winter 2005 Winter 2005 Virtex II-Pro Dynamical Test Application - Part.
FPGA and ASIC Technology Comparison - 1 © 2009 Xilinx, Inc. All Rights Reserved Embedded Design with the Xilinx Embedded Developer Kit.
Lab4 Writing Basic Software Applications Lab: MicroBlaze.
Implementation of DSP Algorithm on SoC. Mid-Semester Presentation Student : Einat Tevel Supervisor : Isaschar Walter Accompaning engineer : Emilia Burlak.
Foundation and XACTstepTM Software
Lab5 Advanced Software Writing Lab : MicroBlaze. for EDK 6.3i1 Objectives Utilize the OPB timer. Assign an interrupt handler to the OBP timer. Develop.
Implementation of DSP Algorithm on SoC. Characterization presentation Student : Einat Tevel Supervisor : Isaschar Walter Accompany engineer : Emilia Burlak.
v8.2 System Generator Audio Quick Start
This material exempt per Department of Commerce license exception TSU EDK Introduction.
This material exempt per Department of Commerce license exception TSU Debugging.
Embedded Design with The Xilinx Embedded Developer Kit Xilinx Training.
Lecture 7 Lecture 7: Hardware/Software Systems on the XUP Board ECE 412: Microcomputer Laboratory.
Digital System Design EEE344 Lecture 1 INTRODUCTION TO THE COURSE
© 2011 Xilinx, Inc. All Rights Reserved Intro to System Generator This material exempt per Department of Commerce license exception TSU.
© 2011 Xilinx, Inc. All Rights Reserved This material exempt per Department of Commerce license exception TSU Xilinx Tool Flow.
Programmable Logic- How do they do that? 1/16/2015 Warren Miller Class 5: Software Tools and More 1.
© 2003 Xilinx, Inc. All Rights Reserved Address Management.
© 2005 Xilinx, Inc. All Rights Reserved This material exempt per Department of Commerce license exception TSU Software Development and Debugging Using.
ISE. Tatjana Petrovic 249/982/22 ISE software tools ISE is Xilinx software design tools that concentrate on delivering you the most productivity available.
© 2003 Xilinx, Inc. All Rights Reserved CORE Generator System.
© 2004 Xilinx, Inc. All Rights Reserved EDK Overview.
This material exempt per Department of Commerce license exception TSU Writing Basic Software Applications Lab 4 Introduction.
ASIC/FPGA design flow. FPGA Design Flow Detailed (RTL) Design Detailed (RTL) Design Ideas (Specifications) Design Ideas (Specifications) Device Programming.
Xilinx Development Software Design Flow on Foundation M1.5
© 2003 Xilinx, Inc. All Rights Reserved For Academic Use Only Xilinx Design Flow FPGA Design Flow Workshop.
© 2003 Xilinx, Inc. All Rights Reserved FPGA Editor: Viewing and Editing a Routed Design.
Introduction to FPGA Created & Presented By Ali Masoudi For Advanced Digital Communication Lab (ADC-Lab) At Isfahan University Of technology (IUT) Department.
This material exempt per Department of Commerce license exception TSU Xilinx Tool Flow.
LAB1 Summary Zhaofeng SJTU.SOME. Embedded Software Tools CPU Logic Design Tools I/O FPGA Memory Logic Design Tools FPGA + Memory + IP + High Speed IO.
Part A Presentation Implementation of DSP Algorithm on SoC Student : Einat Tevel Supervisor : Isaschar Walter Accompanying engineer : Emilia Burlak The.
Lecture #2 Page 1 ECE 4110– Sequential Logic Design Lecture #2 Agenda 1.Logic Design Tools Announcements 1.n/a.
Programmable Logic Training Course HDL Editor
© 2003 Xilinx, Inc. All Rights Reserved System Simulation.
© 2004 Xilinx, Inc. All Rights Reserved Embedded Processor Design.
© 2004 Xilinx, Inc. All Rights Reserved EDK Overview.
Introductory project. Development systems Design Entry –Foundation ISE –Third party tools Mentor Graphics: FPGA Advantage Celoxica: DK Design Suite Design.
This material exempt per Department of Commerce license exception TSU System Simulation.
Tools - Design Manager - Chapter 6 slide 1 Version 1.5 FPGA Tools Training Class Design Manager.
This material exempt per Department of Commerce license exception TSU Address Management.
CORE Generator System V3.1i
This material exempt per Department of Commerce license exception TSU Xilinx On-Chip Debug.
© 2005 Xilinx, Inc. All Rights Reserved This material exempt per Department of Commerce license exception TSU Implementation Options.
Teaching Digital Logic courses with Altera Technology
Survey of Reconfigurable Logic Technologies
© 2005 Xilinx, Inc. All Rights Reserved This material exempt per Department of Commerce license exception TSU CORE Generator System.
How to use ISE Dept. of Info & Comm. Eng. Prof. Jongbok Lee.
Lab 1: Using NIOS II processor for code execution on FPGA
Using Xilinx ChipScope Pro Tools
Xilinx ChipScope Pro Overview
Lab2 Adding IP to a Hardware Design Lab: MicroBlaze
ChipScope Pro Software
Lab3 Adding Custom IP Lab: MicroBlaze
Lab4 Writing Basic Software Applications Lab: MicroBlaze
ChipScope Pro Software
THE ECE 554 XILINX DESIGN PROCESS
THE ECE 554 XILINX DESIGN PROCESS
Presentation transcript:

© 2004 Xilinx, Inc. All Rights Reserved Adding a Processor System to an FPGA Design

Adding Processor System to an FPGA Design © 2004 Xilinx, Inc. All Rights Reserved For Academic Use Only Objectives After completing this module, you will be able to: Utilize the integration between ISE and XPS to enhance the design flow Utilize the Xflow in XPS Describe the steps involved in creating a submodule by using XPS and integrating the submodule into a bigger system by using ISE List some of the advantages of UltraController 

Adding Processor System to an FPGA Design © 2004 Xilinx, Inc. All Rights Reserved For Academic Use Only Outline ISE: Project Navigator Integration – Top Level – Submodule UltraController Case Study XPS: Xflow Integration

Adding Processor System to an FPGA Design © 2004 Xilinx, Inc. All Rights Reserved For Academic Use Only EDK: ISE Processor IP MPD Files system.ucf system.bit MHS File system.mhs PlatGen ISE Hardware Data2MEM download.bit Compile Link Object Files Executable Libraries Source Code LibGen MSS File system.mss EDIF IP Netlists bram_init.bmm bram_init_bd.bmm ISEISE Source Code Synthesis

Adding Processor System to an FPGA Design © 2004 Xilinx, Inc. All Rights Reserved For Academic Use Only ISE Project Navigator Integration XPS provides integration on two levels: – The processor system is the top-level design – The processor system is a submodule What XPS does – Creates the ISE Project Navigator Project File (NPL) – Adds the BMM file to the project – Adds the HDL file to the project Top-level wrapper Submodule wrapper – Sets macro search path to \implementation directory The peripheral files (NGC) created by PlatGen

Adding Processor System to an FPGA Design © 2004 Xilinx, Inc. All Rights Reserved For Academic Use Only ISE Project Navigator Integration Benefits – Allows you to add additional logic to the FPGA design – Allows you to synthesize the design by utilizing ISE supported synthesis tools – Allows you to control the FPGA implementation flow by using ISE Timing and constraints entry Implementation tool flow control Point tool control – FPGA Editor tool – Constraints Editor tool – ChipScope  Pro tool

Adding Processor System to an FPGA Design © 2004 Xilinx, Inc. All Rights Reserved For Academic Use Only Project Options Hierarchy and Flow Tab Design Hierarchy – Toplevel – Sub-module Top Instance Must use ISE flow Synthesis Tool – ISE XST – None, if third party tools are to be used Implementation Tool Flow – XPS – ISE (ProjNav) Provide directory and file name in the NPL File box

Adding Processor System to an FPGA Design © 2004 Xilinx, Inc. All Rights Reserved For Academic Use Only Outline ISE: Project Navigator Integration – Top Level – Sub-module UltraController Case Study XPS: Xflow Integration

Adding Processor System to an FPGA Design © 2004 Xilinx, Inc. All Rights Reserved For Academic Use Only ISE: Top Level The project is created with the part and synthesis tool selected in XPS The processor system netlist will be hierarchical The following files are added – system.vhd: instantiates the processor system created in XPS – bram_init.bmm: BMM file used by Data2MEM – User IP creates a VHDL library and adds the IP sources to that library

Adding Processor System to an FPGA Design © 2004 Xilinx, Inc. All Rights Reserved For Academic Use Only Outline ISE: Project Navigator Integration – Top Level – Submodule UltraController Case Study XPS: Xflow Integration

Adding Processor System to an FPGA Design © 2004 Xilinx, Inc. All Rights Reserved For Academic Use Only ISE: Sub-module The project is created with the part and the synthesis tool selected in XPS The following files are added – system_stub.vhd: instantiates the processor system created in XPS – system_stub.bmm: BMM file used by Data2MEM

Adding Processor System to an FPGA Design © 2004 Xilinx, Inc. All Rights Reserved For Academic Use Only Outline ISE: Project Navigator Integration – Top Level – Submodule UltraController Case Study XPS: Xflow Integration

Adding Processor System to an FPGA Design © 2004 Xilinx, Inc. All Rights Reserved For Academic Use Only UltraController UltraController  key features – Completely self-contained PowerPC  system No external FPGA pins required – 32 general-purpose inputs and outputs – Ultra low power— 0.9 mW / MHz Easy to use – Code in “C” — Multiple reference designs available – No CPU buses, no RTOS required – Integrates with standard ISE design flow – Full debug support 32 gpio_in sys_clk gpio_out sys_rst jtag_cntlr UltraController

Adding Processor System to an FPGA Design © 2004 Xilinx, Inc. All Rights Reserved For Academic Use Only Inside the UltraController General-purpose controller based on the PowerPC – Growing family of solutions – Uses 8 or 16 BRAMs + 49 logic cells 8-kB instruction, 8-kB data 16-kB instruction, 16-kB data – JTAG debug support UltraController ROM 8kB PowerPC 405 gpio_in gpio_out sys_clk sys_rst jtag_cntl I/O RAM 8kB

Adding Processor System to an FPGA Design © 2004 Xilinx, Inc. All Rights Reserved For Academic Use Only UltraController Benefits UltraController  provides flexibility for the following – Complex user interfaces (GUI or LCD display) – Sophisticated data and math manipulations – System monitoring and statistics gathering – Complex algorithms Maximizes logic efficiency by using the PowerPC  processor, because logic frees fabric for more functionality, performance, and intelligence Reduces cost by downsizing to smaller device Original DeviceNew DeviceCost Saving* XC2VP7XC2VP440% XC2VP20XC2VP750% XC2VP30XC2VP2054%

Adding Processor System to an FPGA Design © 2004 Xilinx, Inc. All Rights Reserved For Academic Use Only UltraController Design Flow Place & Route Simulation HDL PPC405 PLB / Arbiter PLB EMC OPB GPIO OPB UART PLB2OPB Bridge OPB2PLB Bridge BRAM Block OPB / Arbiter JTAG CNTL PLB BRAM I/F ISE Download Bitstream ChipScope  Pro Hardware Verification EDK C Code GDB Software Debug Software Steps UltraController  HDL Module

Adding Processor System to an FPGA Design © 2004 Xilinx, Inc. All Rights Reserved For Academic Use Only Prepackaged Design UltraController  Instantiated in EDK UltraController  Instantiated in EDK

Adding Processor System to an FPGA Design © 2004 Xilinx, Inc. All Rights Reserved For Academic Use Only UltraController Implementation Steps Add UltraController to HDL Design in ISE 1 Create Code in the Platform Studio - Leveraging Reference Examples - Simulate System Create Code in the Platform Studio - Leveraging Reference Examples - Simulate System 2 Download Design - Debug Download Design - Debug 3

Adding Processor System to an FPGA Design © 2004 Xilinx, Inc. All Rights Reserved For Academic Use Only Step 1: Add UC to the HDL in ISE

Adding Processor System to an FPGA Design © 2004 Xilinx, Inc. All Rights Reserved For Academic Use Only Step 2: Create the Code in EDK Write to LED Write to Sound Click to Compile SW

Adding Processor System to an FPGA Design © 2004 Xilinx, Inc. All Rights Reserved For Academic Use Only System Simulate Behavioral and Structural Levels

Adding Processor System to an FPGA Design © 2004 Xilinx, Inc. All Rights Reserved For Academic Use Only Step 3: Download Using iMPACT

Adding Processor System to an FPGA Design © 2004 Xilinx, Inc. All Rights Reserved For Academic Use Only Outline ISE: Project Navigator Integration – Top Level – Submodule UltraController Case Study XPS: Xflow Integration

Adding Processor System to an FPGA Design © 2004 Xilinx, Inc. All Rights Reserved For Academic Use Only EDK: Xflow Processor IP MPD Files system.ucf system.bit MHS File system.mhs PlatGen Xflow Hardware Data2MEM download.bit Compile Link Object Files Executable Libraries Source Code LibGen MSS File system.mss EDIF IP Netlists bram_init.bmm bram_init_bd.bmm Source Code Synthesis

Adding Processor System to an FPGA Design © 2004 Xilinx, Inc. All Rights Reserved For Academic Use Only Xflow Benefits to the user – Allows independent design of the processor system – Allows the designer to use one GUI to perform all design work Limitations – No direct control of synthesis and implementation options – No point-tool support

Adding Processor System to an FPGA Design © 2004 Xilinx, Inc. All Rights Reserved For Academic Use Only Xflow code directory –.c data directory –.ucf etc directory – bitgen.opt – bitgen.ut – download.cmd – fast_runtime.opt – BSDL files pcores directory – User IP – Customized BRAM controllers project_directorycode directorydata directoryetc directorypcores Required XPS Directory Structure synthesisTestApp [optional]

Adding Processor System to an FPGA Design © 2004 Xilinx, Inc. All Rights Reserved For Academic Use Only Controlling Xflow In the etc directory, there is a file called fast_runtime This is what it looks like: # Options for Translator # Type "ngdbuild -h" for a detailed list of ngdbuild command line options Program ngdbuild -p ; # Partname to use — picked from xflow commandline -nt timestamp; # NGO File generation. Regenerate only when # source netlist is newer than existing NGO file (default) -bm.bmm; # Block RAM memory map file ; # User design — pick from xflow command line.ngd; # Name of NGD file. Filebase same as design filebase End Program ngdbuild

Adding Processor System to an FPGA Design © 2004 Xilinx, Inc. All Rights Reserved For Academic Use Only Review Questions What are some of the advantages of using the ISE and XPS integration? What are some of the advantages of using the Xflow and XPS integration? How can UltraController  be beneficial?

Adding Processor System to an FPGA Design © 2004 Xilinx, Inc. All Rights Reserved For Academic Use Only Answers What are some of the advantages of using the ISE and XPS integration? – Allows you to add additional logic to the FPGA design – Allows you to synthesize the design by utilizing ISE supported synthesis tools – Allows you to control the FPGA Implementation flow by using ISE What are some of the advantages of using the Xflow and XPS integration? – Allows you to use one GUI to perform all design work How can UltraController  be beneficial? – Increases product functionality – Implementing the finite state machine in the PowerPC  improves logic efficiency – Reduces cost by downsizing

Adding Processor System to an FPGA Design © 2004 Xilinx, Inc. All Rights Reserved For Academic Use Only Where Can I Learn More? Tool documentation – Embedded System Tools Guide  Xilinx Platform Studio Support website – UltraController  Home Page — – EDK Home Page: support.xilinx.com/edk