Introduction to Vivado

Slides:



Advertisements
Similar presentations
Clicking on the link for the.tns file gives you will get the following screen: Select Save File and click OK.
Advertisements

Xilinx 6.3 Tutorial Integrated Software Environment (ISE) Set up basic environment Select Gates or Modules to Be simulated (Insert Program Code) Run Waveform.
1 Verilog Digital Computer Logic Kashif Bashir WWW: http//:
Integrated Circuits Laboratory Faculty of Engineering Digital Design Flow Using Mentor Graphics Tools Presented by: Sameh Assem Ibrahim 16-October-2003.
ECE 272 Xilinx Tutorial. Workshop Goals Learn how to use Xilinx to: Draw a schematic Create a symbol Generate a testbench Simulate your circuit.
Verilog Lab This presentation includes some material that is selected from BUCKNELL VERILOG HANDBOOK. Instructor: Dr. Charles Liu Prepared by John Ren.
ECE Department: University of Massachusetts, Amherst Lab 1: Introduction to NIOS II Hardware Development.
Introduction to ArcGIS Add-Ins Exercises GIS/LIS Conference, 2014 Rochester, MN.
Tutorial 2: Introduction to ISE 14.6 (revised by khw)
Part 1 Using the ARM board And start working with C Tutorial 5 and 6
ECE 332 Digital Electronics and Logic Design Lab Lab 5 VHDL Design Styles Testbenches.
Introduction to Design Tools COE Review: Tools, functions, design flow Four tools we will use in this course – HDL Designer Suite FPGA Advantage.
Intro to C++. Getting Started with Microsoft Visual Studios Open Microsoft Visual Studios 2010 Click on file Click on New Project Choose Visual C++ on.
Simulink ® Interface Course 13 Active-HDL Interfaces.
Setting Up an on-line Store Tutorial Using SmartStore.biz This Tutorial assumes you have downloaded the software from This Tutorial.
Spring Introduction  Today’s tutorial focuses on introducing you to Xilinx ISE and Modelsim.  These tools are used for Verilog Coding Simulation.
1 Introduction to Xilinx ISL8.1i Schematic Capture and VHDL 1.
HDL Bencher FPGA Design Workshop. For Academic Use Only Presentation Name 2 Objectives After completing this module, you will be able to:  Describe the.
1 Introduction to Xilinx ISL8.1i & 11.1 Schematic Capture 1.
Active-HDL Interfaces Building VHPI Applications C Compilation Course 9.
ASIC 121: Practical VHDL Digital Design for FPGAs Tutorial 1 September 27, 2006.
Chapter 17 Creating a Database.
Language Concepts Ver 1.1, Copyright 1997 TS, Inc. VHDL L a n g u a g e C o n c e p t s Page 1.
Fall 08, Oct 31ELEC Lecture 8 (Updated) 1 Lecture 8: Design, Simulation Synthesis and Test Tools ELEC 2200: Digital Logic Circuits Nitin Yogi
Introduction to Design Tools COE Example design: ALU Recall that the ALUOp is 4 bits – High-order two bits used to determine operation class (ALUOp(3:2))
Speaker: Tsung-Yi Wu FPGA Design Flow (Part 2) : Simulation.
George Mason University Simple Testbenches ECE 545 Lecture 4.
1 Introduction to VHDL Part 2 Fall We will use Std_logic And, Or have same precedence See slide 8 of part 1.
Assignment write a short notes on 1.Manufacturing Testing. 2.Functional Testing. 3.Files and Text I/O. 4.Differentiate the cpld and fpga architecture.
11 EENG 1920 Introduction to VHDL. 22 Hardware Description Language A computer language used to design circuits with text-based descriptions of the circuits.
1 Getting Started with C++ Part 1 Windows. 2 Objective You will be able to create, compile, and run a very simple C++ program on Windows, using Microsoft.
VHDL ELEC 311 Digital Logic and Circuits Dr. Ron Hayne Images Courtesy of Cengage Learning.
Tutorial for Modelsim 1 Installation Download the Modelsim Student Edition: Follow the.
How to use ISE Dept. of Info & Comm. Eng. Prof. Jongbok Lee.
1 Introduction to Engineering Spring 2007 Lecture 18: Digital Tools 2.
Introduction to the FPGA and Labs
VLSI Synthesis and Simulation Tools Nitin Yogi 01/09/2009
Shelly Cashman: Microsoft Word 2016
IAY 0600 Digital Systems Design
Standard Operating Procedure
Chapter 2: The Visual Studio .NET Development Environment
Lab 1: Using NIOS II processor for code execution on FPGA
LAB #4 Xilinix ISE Foundation Tools VHDL Design Entry “A Tutorial”
Practical Office 2007 Chapter 10
Dept. of Electrical and Computer Engineering
Introduction to Programmable Logic
CENG2400 Tutorial 1 Keil IDE CENG2400 tutorial 1 v.7a.
ECE 4110–5110 Digital System Design
Macrosystems EDDIE: Getting Started + Troubleshooting Tips
ECE 448 Lab 1a Developing Effective Testbenches
Week 5, Verilog & Full Adder
How to Run a Java Program
Getting Started with Vivado
An Installation Guide of PGP on Windows 2000
Chapter 2 Creating a Research Paper with References and Sources
Getting Started with Vivado
CPRE 583 Reconfigurable Computing (Tools overview)
How to Run a Java Program
Founded in Silicon Valley in 1984
Macrosystems EDDIE: Getting Started + Troubleshooting Tips
THE ECE 554 XILINX DESIGN PROCESS
ECE 545 Lecture 5 Simple Testbenches.
Running a Java Program using Blue Jay.
Macrosystems EDDIE: Getting Started + Troubleshooting Tips
THE ECE 554 XILINX DESIGN PROCESS
Macrosystems EDDIE: Getting Started + Troubleshooting Tips
Tutorial Introduction to help.ebsco.com.
EEL4712 Digital Design (VHDL Tutorial).
(Simple Testbenches & Arithmetic Operations)
Presentation transcript:

Introduction to Vivado CENG3430 Tutorial 1 CENG3430 Tutorial 1, Introduction to Vivado v.7a Introduction to Vivado

Vivado Programming using IDE for VHDL / Verilog Download the compiled code to FPGA board CENG3430 Tutorial 1, Introduction to Vivado v.7a

Step 1: Start the software Double click the Vivado icon in the desktop Or start from the Start Menu CENG3430 Tutorial 1, Introduction to Vivado v.7a

Step 2: Create a new project CENG3430 Tutorial 1, Introduction to Vivado v.7a Or Click File -> New Project…

CENG3430 Tutorial 1, Introduction to Vivado v.7a Step 3 : Click Next

Step 4: Enter the project name Select the project location for storage CENG3430 Tutorial 1, Introduction to Vivado v.7a Step 4: Enter the project name Select the project location for storage

Step 5: Select RTL Project -> Next CENG3430 Tutorial 1, Introduction to Vivado v.7a Step 5: Select RTL Project -> Next

1. Select Target language and simulator language as “VHDL” 2 1 ↑3 Step 6: 1. Select Target language and simulator language as “VHDL” 2. Click “Create File” Make sure the File type is VHDL Give name to the source file Click OK 3. Click Next CENG3430 Tutorial 1, Introduction to Vivado v.7a

CENG3430 Tutorial 1, Introduction to Vivado v.7a Step 7: Click Next

Step 8: Click Add Files, select the downloaded XDC file CENG3430 Tutorial 1, Introduction to Vivado v.7a Step 8: Click Add Files, select the downloaded XDC file Press Next or Press Next if no XDC file

Step 9: Click Boards -> Select Zedboard -> Click Next CENG3430 Tutorial 1, Introduction to Vivado v.7a Step 9: Click Boards -> Select Zedboard -> Click Next

CENG3430 Tutorial 1, Introduction to Vivado v.7a Step 10: Click Finish

Step 10: If you see this box, just click OK CENG3430 Tutorial 1, Introduction to Vivado v.7a Step 10: If you see this box, just click OK

Now we can start writing our code This is the programming interface : Code writing area Source directory CENG3430 Tutorial 1, Introduction to Vivado v.7a Select different tools Shows the IDE status / warning / error message

CENG3430 Tutorial 1, Introduction to Vivado v.7a In the source directory, you will see the source file created in Step 6. Double click to open it. (It is normal to see the file name appears twice in syntax error files and non-module file if the source code is empty or has syntax error)

Copy the code downloaded file eLearning CENG3430 Tutorial 1, Introduction to Vivado v.7a Copy the code downloaded file eLearning

After saving the code, the source directory should look like this CENG3430 Tutorial 1, Introduction to Vivado v.7a After saving the code, the source directory should look like this

How to write a testbench? After finishing your source code Under the source window, right click on the simulation sources -> Add sources CENG3430 Tutorial 1, Introduction to Vivado v.7a

Select “Add or Create Simulation Sources” -> Next CENG3430 Tutorial 1, Introduction to Vivado v.7a Select “Add or Create Simulation Sources” -> Next

Click “Create File” -> Get the testbench a name 1. 2 CENG3430 Tutorial 1, Introduction to Vivado v.7a 4 3 Click “Create File” -> Get the testbench a name (Usually same name with your source code, adding _test as postfix) -> “OK”->”Finish”

If you see this window, just click OK CENG3430 Tutorial 1, Introduction to Vivado v.7a If you see this window, just click OK

Generating testbench file In Vivado, the testbench file will not generate automatically (But the older software can do that… ) Go to http://vhdl.lapinoo.net/ Paste your main board source code on it, the website will generate the testbench file for you Copy the generated content, replace all content in the Vivado testbench file CENG3430 Tutorial 1, Introduction to Vivado v.7a

Unfortunately, the generated content have to modify before we execute… Change the name, to match the name of testbench if you like This must be the entity name of the design you are trying to test. You first turn it into a component and test it CENG3430 Tutorial 1, Introduction to Vivado v.7a For example : A <= '0'; EN0 <= '0'; wait for 100 ns; A <= '1'; EN1 <= '0'; Which means you force a constant 0 to A / EN0 for 100ns After that, you force a constant 1 to A / 0 to EN0 for 100ns <-Add your test case here “end tb;” change to “end;” Remove those line

Now you can run simulation Flow Navigator->Run Simulation->Run Behavioral Simulation May need to drag the signal (left side under Objects) names to the waveform window Click this To zoom in to the appropriate waveform window CENG3430 Tutorial 1, Introduction to Vivado v.7a

Now you can see the result To adjust the width, modify tbPeriod in the testbench CENG3430 Tutorial 1, Introduction to Vivado v.7a

Exercise Create a new project and a source file Please follow the instructions to create a VHDL project Create a new project and a source file Implement an AND gate using VHDL in source file Write an test bench file and add to the project Run the simulation Demo your simulation result to the tutor CENG3430 Tutorial 1, Introduction to Vivado v.7a

example Change the name to match the entity name (e.g. test1 here) of the design to be tested. --Test bench, may be generated by --http://vhdl.lapinoo.net/testb library ieee; use ieee.std_logic_1164.all; entity tb_test1 is end tb_test1; architecture tb of tb_test1 is component test1 – this component name “test1” must be the same as the entity name I --in the source you are trying to test port (A : in std_logic; B : in std_logic; C : in std_logic; F : out std_logic); end component; signal A : std_logic; signal B : std_logic; signal C : std_logic; signal F : std_logic; constant TbPeriod : time := 100 ns; -- EDIT put right period here signal TbClock : std_logic := '0'; begin dut : test1 port map (A => A, B => B, C => C, F => F); TbClock <= not TbClock after TbPeriod/2; -- EDIT: Replace YOURCLOCKSIGNAL below by the name of your clock -- YOURCLOCKSIGNAL <= TbClock; stimuli : process -- EDIT , give cases for each testing poeriod, can add as many as you like A <= '0'; B <= '1'; C <= '1'; wait for 100 ns; B <= '0'; end process; end tb; ench/ ----------------------testing code ---------------------------------------- -- Company: -- Engineer: -- -- Create Date: 01/16/2017 09:15:55 PM -- Design Name: -- Module Name: test1 - Behavioral -- Project Name: -- Target Devices: -- Tool Versions: -- Description: -- Dependencies: -- Revision: -- Revision 0.01 - File Created -- Additional Comments: ---------------------------------------------------------------------------------- library IEEE; use IEEE.STD_LOGIC_1164.ALL; -- Uncomment the following library declaration if using -- arithmetic functions with Signed or Unsigned values --use IEEE.NUMERIC_STD.ALL; -- Uncomment the following library declaration if instantiating -- any Xilinx leaf cells in this code. --library UNISIM; --use UNISIM.VComponents.all; entity test1 is Port ( A : in STD_LOGIC; B : in STD_LOGIC; C : in STD_LOGIC; F : out STD_LOGIC); end test1; architecture Behavioral of test1 is begin F<= (A nor B) and C; end Behavioral; Change the Tbperiod time to a suitable range CENG3430 Tutorial 1, Introduction to Vivado v.7a Add this By you

Click the blue-arrow (T) to see the simulation CENG3430 Tutorial 1, Introduction to Vivado v.7a