SlideShare una empresa de Scribd logo
1 de 81
Integrating a custom AXI IP Core
in Vivado for Xilinx Zynq FPGA
based embedded systems
Vincent Claes
Overview
Vincent Claes
•Hardware connection Digilent Zybo board (Zynq
based)
•Custom IP Core
•Vivado Project
•C Application in SDK
Hardware connection
Vincent Claes
Vincent Claes
Hardware connection
Vincent Claes
VHDL Dice Controller Code
Vincent Claes
XDC (Xilinx Design Constraint File)
##Switches
set_property -dict { PACKAGE_PIN G15 IOSTANDARD LVCMOS33 } [get_ports { sw[0] }]; #IO_L19N_T3_VREF_35 Sch=SW0
set_property -dict { PACKAGE_PIN P15 IOSTANDARD LVCMOS33 } [get_ports { sw[1] }]; #IO_L24P_T3_34 Sch=SW1
set_property -dict { PACKAGE_PIN W13 IOSTANDARD LVCMOS33 } [get_ports { sw[2] }]; #IO_L4N_T0_34 Sch=SW2
set_property -dict { PACKAGE_PIN T16 IOSTANDARD LVCMOS33 } [get_ports { sw[3] }]; #IO_L9P_T1_DQS_34 Sch=SW3
##Pmod Header JE
set_property -dict { PACKAGE_PIN V12 IOSTANDARD LVCMOS33 } [get_ports { je[0] }]; #IO_L4P_T0_34 Sch=JE1
set_property -dict { PACKAGE_PIN W16 IOSTANDARD LVCMOS33 } [get_ports { je[1] }]; #IO_L18N_T2_34 Sch=JE2
set_property -dict { PACKAGE_PIN J15 IOSTANDARD LVCMOS33 } [get_ports { je[2] }]; #IO_25_35 Sch=JE3
set_property -dict { PACKAGE_PIN H15 IOSTANDARD LVCMOS33 } [get_ports { je[3] }]; #IO_L19P_T3_35 Sch=JE4
set_property -dict { PACKAGE_PIN V13 IOSTANDARD LVCMOS33 } [get_ports { je[4] }]; #IO_L3N_T0_DQS_34 Sch=JE7
set_property -dict { PACKAGE_PIN U17 IOSTANDARD LVCMOS33 } [get_ports { je[5] }]; #IO_L9N_T1_DQS_34 Sch=JE8
set_property -dict { PACKAGE_PIN T17 IOSTANDARD LVCMOS33 } [get_ports { je[6] }]; #IO_L20P_T3_34 Sch=JE9
set_property -dict { PACKAGE_PIN Y17 IOSTANDARD LVCMOS33 } [get_ports { je[7] }]; #IO_L7N_T1_34 Sch=JE10
Vincent Claes
Create new Vivado project (first launch Vivado)
Vincent Claes
Create new Vivado project (HW)
Vincent Claes
Create new Vivado project (HW)
Vincent Claes
Create new Vivado project (HW)
Vincent Claes
Create new Vivado project (HW)
Vincent Claes
Create new Vivado project (HW)
Vincent Claes
Create new Vivado project (HW)
Vincent Claes
Create new Vivado project (HW)
Vincent Claes
Create new Vivado project (HW)
Vincent Claes
Check the project settings
Vincent Claes
Check IP Settings in Project Settings
Vincent Claes
Check IP Settings in Project Settings
Vincent Claes
Custom IP Core (AXI + VHDL)
Vincent Claes
Vincent Claes
Create and Package IP
Vincent Claes
Create and Package IP
Vincent Claes
Create a new AXI4 peripheral
Vincent Claes
Peripheral details
Vincent Claes
Add Interfaces
Vincent Claes
Create Peripheral overview [Edit IP]
Vincent Claes
Add Sources (dice VHDL controller file)
Vincent Claes
Add Sources
Vincent Claes
Add or Create Design Sources
Vincent Claes
Add Source files
Vincent Claes
Add Sources
Vincent Claes
open dobbelsteen_v1_0_S00_AXI.vhd
Vincent Claes
Add the Dobbelsteen component in VHD file
Vincent Claes
Add User logic in VHD file
Vincent Claes
Add ports to top VHDL file of AXI IP
Vincent Claes
Add port to dobbelsteen_v1_s00_AXI
component
Vincent Claes
Port map in dobbelsteen top VHDL file
Vincent Claes
Package IP
Vincent Claes
Package IP – File Groups
Vincent Claes
File Groups (Extra – not in this project)
If you use IP from the Xilinx IP
Catalog don’t forget to Add
Sub-Core References in your
File Groups!!!
For instance when using the
clock wizard inside your
Custom VHDL IP block!
Vincent Claes
File Groups (Extra – not in this project)
Vincent Claes
Package IP – Customization Parameters
Vincent Claes
Review and Package
Vincent Claes
Close AXI Custom IP Project
Vincent Claes
Check the project settings
Vincent Claes
Project Settings – Repository Manager
Vincent Claes
Create new project
Vincent Claes
Create Block Design
Vincent Claes
Vivado Project
Vincent Claes
Vincent Claes
Create Block Design
Vincent Claes
Add IP to Block Design
Vincent Claes
Select ZYNQ7 Processing System
Vincent Claes
Run Block Automation
Vincent Claes
Run Block Automation
Vincent Claes
Block Diagram is auto-updated
Vincent Claes
Add Dobbelsteen IP
Vincent Claes
Add dobbelsteeen_v1.0 axi ip core
Vincent Claes
Run Connection Automation (AXI bus
connection)
Vincent Claes
Run Connection Automation
Vincent Claes
Block Design
Vincent Claes
Make external
Vincent Claes
Make external
Vincent Claes
Create HDL Wrapper (top VHDL file)
Vincent Claes
Create HDL Wrapper
Vincent Claes
Add Sources (design constraints file)
Vincent Claes
Add Sources
Vincent Claes
Add or Create Constraints
Vincent Claes
Add Constraints file
Vincent Claes
Add or Create constraints
Vincent Claes
Generate Bitstream (HW)
Vincent Claes
No Implementation Results Available
Vincent Claes
Bitstream Generation Completed
Vincent Claes
Export Hardware
Vincent Claes
Export Hardware
Vincent Claes
Launch SDK to start writing Software
Vincent Claes
C Application (SW on FPGA
platform)
Vincent Claes
Vincent Claes
Launch SDK
Vincent Claes
Hw platform overview
Vincent Claes
Start a new Application Project
Vincent Claes
Application Project
Vincent Claes
Create a Hello World C Application
Vincent Claes
Rewrite C Application
Vincent Claes

Más contenido relacionado

La actualidad más candente

Fpga(field programmable gate array)
Fpga(field programmable gate array) Fpga(field programmable gate array)
Fpga(field programmable gate array)
Iffat Anjum
 
ATPG Methods and Algorithms
ATPG Methods and AlgorithmsATPG Methods and Algorithms
ATPG Methods and Algorithms
Deiptii Das
 

La actualidad más candente (20)

Verification Challenges and Methodologies
Verification Challenges and MethodologiesVerification Challenges and Methodologies
Verification Challenges and Methodologies
 
Introduction to FPGA, VHDL
Introduction to FPGA, VHDL  Introduction to FPGA, VHDL
Introduction to FPGA, VHDL
 
Basic of AI Accelerator Design using Verilog HDL
Basic of AI Accelerator Design using Verilog HDLBasic of AI Accelerator Design using Verilog HDL
Basic of AI Accelerator Design using Verilog HDL
 
Fpga
FpgaFpga
Fpga
 
Verification challenges and methodologies - SoC and ASICs
Verification challenges and methodologies - SoC and ASICsVerification challenges and methodologies - SoC and ASICs
Verification challenges and methodologies - SoC and ASICs
 
Four way traffic light conrol using Verilog
Four way traffic light conrol using VerilogFour way traffic light conrol using Verilog
Four way traffic light conrol using Verilog
 
Logic synthesis,flootplan&placement
Logic synthesis,flootplan&placementLogic synthesis,flootplan&placement
Logic synthesis,flootplan&placement
 
FPGA
FPGAFPGA
FPGA
 
ASIC Design Flow | Physical Design | VLSI
ASIC Design Flow | Physical Design | VLSI ASIC Design Flow | Physical Design | VLSI
ASIC Design Flow | Physical Design | VLSI
 
Divide by N clock
Divide by N clockDivide by N clock
Divide by N clock
 
Fpga(field programmable gate array)
Fpga(field programmable gate array) Fpga(field programmable gate array)
Fpga(field programmable gate array)
 
Synopsys Fusion Compiler-Comprehensive RTL-to-GDSII Implementation System
Synopsys Fusion Compiler-Comprehensive RTL-to-GDSII Implementation SystemSynopsys Fusion Compiler-Comprehensive RTL-to-GDSII Implementation System
Synopsys Fusion Compiler-Comprehensive RTL-to-GDSII Implementation System
 
Clock Tree Synthesis.pdf
Clock Tree Synthesis.pdfClock Tree Synthesis.pdf
Clock Tree Synthesis.pdf
 
Online test program generator for RISC-V processors
Online test program generator for RISC-V processorsOnline test program generator for RISC-V processors
Online test program generator for RISC-V processors
 
DIgital clock using verilog
DIgital clock using verilog DIgital clock using verilog
DIgital clock using verilog
 
FPGA Design Challenges
FPGA Design ChallengesFPGA Design Challenges
FPGA Design Challenges
 
ASIC DESIGN FLOW
ASIC DESIGN FLOWASIC DESIGN FLOW
ASIC DESIGN FLOW
 
Verilog Tasks and functions
Verilog Tasks and functionsVerilog Tasks and functions
Verilog Tasks and functions
 
FPGA
FPGAFPGA
FPGA
 
ATPG Methods and Algorithms
ATPG Methods and AlgorithmsATPG Methods and Algorithms
ATPG Methods and Algorithms
 

Similar a Integrating a custom AXI IP Core in Vivado for Xilinx Zynq FPGA based embedded systems

SEC8022_Securing_SDDC_NSX_Hammad_Shahzad
SEC8022_Securing_SDDC_NSX_Hammad_ShahzadSEC8022_Securing_SDDC_NSX_Hammad_Shahzad
SEC8022_Securing_SDDC_NSX_Hammad_Shahzad
shezy22
 
Graphical System On Chip with LabVIEW
Graphical System On Chip with LabVIEWGraphical System On Chip with LabVIEW
Graphical System On Chip with LabVIEW
Vincent Claes
 
Deploying Red Hat Enterprise Linux OpenStack Platform 7 on Lenovo Performance...
Deploying Red Hat Enterprise Linux OpenStack Platform 7 on Lenovo Performance...Deploying Red Hat Enterprise Linux OpenStack Platform 7 on Lenovo Performance...
Deploying Red Hat Enterprise Linux OpenStack Platform 7 on Lenovo Performance...
Principled Technologies
 

Similar a Integrating a custom AXI IP Core in Vivado for Xilinx Zynq FPGA based embedded systems (20)

Debugging Xilinx Zynq Project using ILA Integrated Logic Analyzer IP Block
Debugging Xilinx Zynq Project using ILA Integrated Logic Analyzer IP BlockDebugging Xilinx Zynq Project using ILA Integrated Logic Analyzer IP Block
Debugging Xilinx Zynq Project using ILA Integrated Logic Analyzer IP Block
 
Using Virtual IO (VIO) on Xilinx ZYNQ FPGA's
Using Virtual IO (VIO) on Xilinx ZYNQ FPGA'sUsing Virtual IO (VIO) on Xilinx ZYNQ FPGA's
Using Virtual IO (VIO) on Xilinx ZYNQ FPGA's
 
Running FreeRTOS on Digilent Zybo board
Running FreeRTOS on Digilent Zybo boardRunning FreeRTOS on Digilent Zybo board
Running FreeRTOS on Digilent Zybo board
 
Verilog & Vivado Quickstart
Verilog & Vivado QuickstartVerilog & Vivado Quickstart
Verilog & Vivado Quickstart
 
Interop 2017 - Managing Containers in Production
Interop 2017 - Managing Containers in ProductionInterop 2017 - Managing Containers in Production
Interop 2017 - Managing Containers in Production
 
Making Security Usable: Product Engineer Perspective
Making Security Usable: Product Engineer PerspectiveMaking Security Usable: Product Engineer Perspective
Making Security Usable: Product Engineer Perspective
 
(ARC401) Cloud First: New Architecture for New Infrastructure
(ARC401) Cloud First: New Architecture for New Infrastructure(ARC401) Cloud First: New Architecture for New Infrastructure
(ARC401) Cloud First: New Architecture for New Infrastructure
 
VMworld 2013: The Story Behind Designing and Building a Distributed Automatio...
VMworld 2013: The Story Behind Designing and Building a Distributed Automatio...VMworld 2013: The Story Behind Designing and Building a Distributed Automatio...
VMworld 2013: The Story Behind Designing and Building a Distributed Automatio...
 
SEC8022_Securing_SDDC_NSX_Hammad_Shahzad
SEC8022_Securing_SDDC_NSX_Hammad_ShahzadSEC8022_Securing_SDDC_NSX_Hammad_Shahzad
SEC8022_Securing_SDDC_NSX_Hammad_Shahzad
 
VMware NSX - Lessons Learned from real project
VMware NSX - Lessons Learned from real projectVMware NSX - Lessons Learned from real project
VMware NSX - Lessons Learned from real project
 
The Container Security Checklist
The Container Security Checklist The Container Security Checklist
The Container Security Checklist
 
How (and why) to roll your own Docker SaaS
How (and why) to roll your own Docker SaaSHow (and why) to roll your own Docker SaaS
How (and why) to roll your own Docker SaaS
 
VMware vCHS, Puppet, and Project Zombie - PuppetConf 2013
VMware vCHS, Puppet, and Project Zombie - PuppetConf 2013VMware vCHS, Puppet, and Project Zombie - PuppetConf 2013
VMware vCHS, Puppet, and Project Zombie - PuppetConf 2013
 
RTP NPUG: Ansible Intro and Integration with ACI
RTP NPUG: Ansible Intro and Integration with ACIRTP NPUG: Ansible Intro and Integration with ACI
RTP NPUG: Ansible Intro and Integration with ACI
 
Hand-On Lab: CA Release Automation Rapid Development Kit and SDK
Hand-On Lab: CA Release Automation Rapid Development Kit and SDKHand-On Lab: CA Release Automation Rapid Development Kit and SDK
Hand-On Lab: CA Release Automation Rapid Development Kit and SDK
 
DEVNET-1148 Leveraging Cisco OpenStack Private Cloud for Developers
DEVNET-1148	Leveraging Cisco OpenStack Private Cloud for DevelopersDEVNET-1148	Leveraging Cisco OpenStack Private Cloud for Developers
DEVNET-1148 Leveraging Cisco OpenStack Private Cloud for Developers
 
Intro to the FIWARE Lab
Intro to the FIWARE LabIntro to the FIWARE Lab
Intro to the FIWARE Lab
 
Graphical System On Chip with LabVIEW
Graphical System On Chip with LabVIEWGraphical System On Chip with LabVIEW
Graphical System On Chip with LabVIEW
 
Quick Start Guide using Virtuozzo 7 (β) on AWS EC2
Quick Start Guide using Virtuozzo 7 (β) on AWS EC2Quick Start Guide using Virtuozzo 7 (β) on AWS EC2
Quick Start Guide using Virtuozzo 7 (β) on AWS EC2
 
Deploying Red Hat Enterprise Linux OpenStack Platform 7 on Lenovo Performance...
Deploying Red Hat Enterprise Linux OpenStack Platform 7 on Lenovo Performance...Deploying Red Hat Enterprise Linux OpenStack Platform 7 on Lenovo Performance...
Deploying Red Hat Enterprise Linux OpenStack Platform 7 on Lenovo Performance...
 

Más de Vincent Claes

Más de Vincent Claes (20)

Percepio Tracealyzer for FreeRTOS on MiniZED
Percepio Tracealyzer for FreeRTOS on MiniZEDPercepio Tracealyzer for FreeRTOS on MiniZED
Percepio Tracealyzer for FreeRTOS on MiniZED
 
Xilinx Vitis FreeRTOS Hello World
Xilinx Vitis FreeRTOS Hello WorldXilinx Vitis FreeRTOS Hello World
Xilinx Vitis FreeRTOS Hello World
 
Programming STM32L432 Nucleo with Keil MDK
Programming STM32L432 Nucleo with Keil MDKProgramming STM32L432 Nucleo with Keil MDK
Programming STM32L432 Nucleo with Keil MDK
 
Profiling Xilinx Zynq Software Applications in SDK (MiniZED board)
Profiling Xilinx Zynq Software Applications in SDK (MiniZED board)Profiling Xilinx Zynq Software Applications in SDK (MiniZED board)
Profiling Xilinx Zynq Software Applications in SDK (MiniZED board)
 
Workshop: Introductie tot Python
Workshop: Introductie tot PythonWorkshop: Introductie tot Python
Workshop: Introductie tot Python
 
Installation Anaconda Navigator for Python Workshop
Installation Anaconda Navigator for Python WorkshopInstallation Anaconda Navigator for Python Workshop
Installation Anaconda Navigator for Python Workshop
 
ZYNQ BRAM Implementation
ZYNQ BRAM ImplementationZYNQ BRAM Implementation
ZYNQ BRAM Implementation
 
Implementing a Database and API for your Cloud Service
Implementing a Database and API for your Cloud ServiceImplementing a Database and API for your Cloud Service
Implementing a Database and API for your Cloud Service
 
Launching Python Cloud Services for AI/IoT Projects
Launching Python Cloud Services for AI/IoT ProjectsLaunching Python Cloud Services for AI/IoT Projects
Launching Python Cloud Services for AI/IoT Projects
 
Real Time Filtering on Embedded ARM
Real Time Filtering on Embedded ARMReal Time Filtering on Embedded ARM
Real Time Filtering on Embedded ARM
 
R Markdown, Rpubs & github publishing and Shiny by Example
R Markdown, Rpubs & github publishing and Shiny by ExampleR Markdown, Rpubs & github publishing and Shiny by Example
R Markdown, Rpubs & github publishing and Shiny by Example
 
Using Texas Instruments Code Composer Studio for The CC3200XL Launchpad
Using Texas Instruments Code Composer Studio for The CC3200XL LaunchpadUsing Texas Instruments Code Composer Studio for The CC3200XL Launchpad
Using Texas Instruments Code Composer Studio for The CC3200XL Launchpad
 
Hogeschool PXL Smart Mirror
Hogeschool PXL Smart MirrorHogeschool PXL Smart Mirror
Hogeschool PXL Smart Mirror
 
Softcore vs Hardcore processor
Softcore vs Hardcore processorSoftcore vs Hardcore processor
Softcore vs Hardcore processor
 
MySQL / PHP Server
MySQL / PHP ServerMySQL / PHP Server
MySQL / PHP Server
 
Implementing an interface in r to communicate with programmable fabric in a x...
Implementing an interface in r to communicate with programmable fabric in a x...Implementing an interface in r to communicate with programmable fabric in a x...
Implementing an interface in r to communicate with programmable fabric in a x...
 
fTales workshop
fTales workshopfTales workshop
fTales workshop
 
Maker Revolution
Maker RevolutionMaker Revolution
Maker Revolution
 
Debugging IoT Sensor Interfaces (SPI) with Digilent Analog Discovery 2
Debugging IoT Sensor Interfaces (SPI) with Digilent Analog Discovery 2Debugging IoT Sensor Interfaces (SPI) with Digilent Analog Discovery 2
Debugging IoT Sensor Interfaces (SPI) with Digilent Analog Discovery 2
 
FreeRTOS API
FreeRTOS APIFreeRTOS API
FreeRTOS API
 

Último

Call Girls in Ramesh Nagar Delhi 💯 Call Us 🔝9953056974 🔝 Escort Service
Call Girls in Ramesh Nagar Delhi 💯 Call Us 🔝9953056974 🔝 Escort ServiceCall Girls in Ramesh Nagar Delhi 💯 Call Us 🔝9953056974 🔝 Escort Service
Call Girls in Ramesh Nagar Delhi 💯 Call Us 🔝9953056974 🔝 Escort Service
9953056974 Low Rate Call Girls In Saket, Delhi NCR
 
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
dollysharma2066
 
Standard vs Custom Battery Packs - Decoding the Power Play
Standard vs Custom Battery Packs - Decoding the Power PlayStandard vs Custom Battery Packs - Decoding the Power Play
Standard vs Custom Battery Packs - Decoding the Power Play
Epec Engineered Technologies
 
Integrated Test Rig For HTFE-25 - Neometrix
Integrated Test Rig For HTFE-25 - NeometrixIntegrated Test Rig For HTFE-25 - Neometrix
Integrated Test Rig For HTFE-25 - Neometrix
Neometrix_Engineering_Pvt_Ltd
 
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
ssuser89054b
 

Último (20)

VIP Model Call Girls Kothrud ( Pune ) Call ON 8005736733 Starting From 5K to ...
VIP Model Call Girls Kothrud ( Pune ) Call ON 8005736733 Starting From 5K to ...VIP Model Call Girls Kothrud ( Pune ) Call ON 8005736733 Starting From 5K to ...
VIP Model Call Girls Kothrud ( Pune ) Call ON 8005736733 Starting From 5K to ...
 
Block diagram reduction techniques in control systems.ppt
Block diagram reduction techniques in control systems.pptBlock diagram reduction techniques in control systems.ppt
Block diagram reduction techniques in control systems.ppt
 
Thermal Engineering-R & A / C - unit - V
Thermal Engineering-R & A / C - unit - VThermal Engineering-R & A / C - unit - V
Thermal Engineering-R & A / C - unit - V
 
Call Girls in Ramesh Nagar Delhi 💯 Call Us 🔝9953056974 🔝 Escort Service
Call Girls in Ramesh Nagar Delhi 💯 Call Us 🔝9953056974 🔝 Escort ServiceCall Girls in Ramesh Nagar Delhi 💯 Call Us 🔝9953056974 🔝 Escort Service
Call Girls in Ramesh Nagar Delhi 💯 Call Us 🔝9953056974 🔝 Escort Service
 
ONLINE FOOD ORDER SYSTEM PROJECT REPORT.pdf
ONLINE FOOD ORDER SYSTEM PROJECT REPORT.pdfONLINE FOOD ORDER SYSTEM PROJECT REPORT.pdf
ONLINE FOOD ORDER SYSTEM PROJECT REPORT.pdf
 
(INDIRA) Call Girl Meerut Call Now 8617697112 Meerut Escorts 24x7
(INDIRA) Call Girl Meerut Call Now 8617697112 Meerut Escorts 24x7(INDIRA) Call Girl Meerut Call Now 8617697112 Meerut Escorts 24x7
(INDIRA) Call Girl Meerut Call Now 8617697112 Meerut Escorts 24x7
 
data_management_and _data_science_cheat_sheet.pdf
data_management_and _data_science_cheat_sheet.pdfdata_management_and _data_science_cheat_sheet.pdf
data_management_and _data_science_cheat_sheet.pdf
 
chapter 5.pptx: drainage and irrigation engineering
chapter 5.pptx: drainage and irrigation engineeringchapter 5.pptx: drainage and irrigation engineering
chapter 5.pptx: drainage and irrigation engineering
 
Thermal Engineering Unit - I & II . ppt
Thermal Engineering  Unit - I & II . pptThermal Engineering  Unit - I & II . ppt
Thermal Engineering Unit - I & II . ppt
 
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
FULL ENJOY Call Girls In Mahipalpur Delhi Contact Us 8377877756
 
Thermal Engineering -unit - III & IV.ppt
Thermal Engineering -unit - III & IV.pptThermal Engineering -unit - III & IV.ppt
Thermal Engineering -unit - III & IV.ppt
 
COST-EFFETIVE and Energy Efficient BUILDINGS ptx
COST-EFFETIVE  and Energy Efficient BUILDINGS ptxCOST-EFFETIVE  and Energy Efficient BUILDINGS ptx
COST-EFFETIVE and Energy Efficient BUILDINGS ptx
 
Standard vs Custom Battery Packs - Decoding the Power Play
Standard vs Custom Battery Packs - Decoding the Power PlayStandard vs Custom Battery Packs - Decoding the Power Play
Standard vs Custom Battery Packs - Decoding the Power Play
 
Integrated Test Rig For HTFE-25 - Neometrix
Integrated Test Rig For HTFE-25 - NeometrixIntegrated Test Rig For HTFE-25 - Neometrix
Integrated Test Rig For HTFE-25 - Neometrix
 
Unleashing the Power of the SORA AI lastest leap
Unleashing the Power of the SORA AI lastest leapUnleashing the Power of the SORA AI lastest leap
Unleashing the Power of the SORA AI lastest leap
 
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
 
Call Girls Wakad Call Me 7737669865 Budget Friendly No Advance Booking
Call Girls Wakad Call Me 7737669865 Budget Friendly No Advance BookingCall Girls Wakad Call Me 7737669865 Budget Friendly No Advance Booking
Call Girls Wakad Call Me 7737669865 Budget Friendly No Advance Booking
 
Bhosari ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready For ...
Bhosari ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready For ...Bhosari ( Call Girls ) Pune  6297143586  Hot Model With Sexy Bhabi Ready For ...
Bhosari ( Call Girls ) Pune 6297143586 Hot Model With Sexy Bhabi Ready For ...
 
FEA Based Level 3 Assessment of Deformed Tanks with Fluid Induced Loads
FEA Based Level 3 Assessment of Deformed Tanks with Fluid Induced LoadsFEA Based Level 3 Assessment of Deformed Tanks with Fluid Induced Loads
FEA Based Level 3 Assessment of Deformed Tanks with Fluid Induced Loads
 
Double Revolving field theory-how the rotor develops torque
Double Revolving field theory-how the rotor develops torqueDouble Revolving field theory-how the rotor develops torque
Double Revolving field theory-how the rotor develops torque
 

Integrating a custom AXI IP Core in Vivado for Xilinx Zynq FPGA based embedded systems

Notas del editor

  1. Integration of custom IP core (VHDL) Xilinx Zynq based Digilent Zybo board
  2. Hardware connection of Dice PCB board JE Pmod connector is used
  3. ------------------------------------------------------------------------------------ Company: -- Engineer: Vincent Claes -- -- Create Date: 07.10.2016 16:16:53-- Design Name: -- Module Name: Dobbelsteen - 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;entity Dobbelsteen is Port ( sw : in STD_LOGIC_VECTOR (3 downto 0); je : out STD_LOGIC_VECTOR (7 downto 0));end Dobbelsteen;architecture Behavioral of Dobbelsteen isbegin-- je[0] = LED 1 - JE1-- je[1] = LED 2 - JE2-- je[2] = LED 3 - JE3-- je[3] = no conn-- je[4] = LED 4 - JE7-- je[5] = LED 5 - JE8-- je[6] = LED 6 - JE9-- je[7] = LED 7 -JE10--##Pmod Header JE--set_property -dict { PACKAGE_PIN V12 IOSTANDARD LVCMOS33 } [get_ports { je[0] }]; #IO_L4P_T0_34 Sch=JE1--set_property -dict { PACKAGE_PIN W16 IOSTANDARD LVCMOS33 } [get_ports { je[1] }]; #IO_L18N_T2_34 Sch=JE2--set_property -dict { PACKAGE_PIN J15 IOSTANDARD LVCMOS33 } [get_ports { je[2] }]; #IO_25_35 Sch=JE3--set_property -dict { PACKAGE_PIN H15 IOSTANDARD LVCMOS33 } [get_ports { je[3] }]; #IO_L19P_T3_35 Sch=JE4--set_property -dict { PACKAGE_PIN V13 IOSTANDARD LVCMOS33 } [get_ports { je[4] }]; #IO_L3N_T0_DQS_34 Sch=JE7--set_property -dict { PACKAGE_PIN U17 IOSTANDARD LVCMOS33 } [get_ports { je[5] }]; #IO_L9N_T1_DQS_34 Sch=JE8--set_property -dict { PACKAGE_PIN T17 IOSTANDARD LVCMOS33 } [get_ports { je[6] }]; #IO_L20P_T3_34 Sch=JE9--set_property -dict { PACKAGE_PIN Y17 IOSTANDARD LVCMOS33 } [get_ports { je[7] }]; #IO_L7N_T1_34 Sch=JE10-- 1 => LED 4-- 2 => LED 1 LED 7-- 3 => LED 1 LED 7 LED 4-- 4 => LED 1 LED 3 LED 5 LED 7-- 5 => LED 1 LED 3 LED 4 LED 5 LED 7-- 6 => LED 1 LED 2 LED 3 LED 5 LED 6 LED 7process(sw)begin case (sw) is when "0001" => --1 je <="00010000"; when "0010" => --2 je <="10000001"; when "0011" => --3 je <="10010001"; when "0100" => --4 je <="10100101"; when "0101" => --5 je <="10110101"; when "0110" => --6 je <="11100111"; when others => je <=(others=>'0'); end case; end process; end Behavioral;
  4. Create new project
  5. Next button
  6. Project Name Project Location Create project subdirectory Next button
  7. RTL Project You can select “Do not specify sources at this time”, otherwise more windows appear Next button
  8. Target language = VHDL Simulator language = VHDL Next button
  9. Next button
  10. Next button
  11. Select boards Zybo board (xc7z010clg400-1) Next button
  12. Finish button
  13. Select IP – General Tab and look at my settings, be sure those are the same.
  14. In the Packager Tabs unselect the option “Delete project after packaging” I always enable the “Create archive of IP” option to have a backup plan 
  15. Following section explains the creation of a custom VHDL dice ip core
  16. Select Tools Create and Package IP …, this starts a wizard to create a new AXI IP
  17. Next button
  18. Select “Create a new AXI4 peripheral” Select the Next button
  19. Specify the name, version and description for the new peripheral Don’t forget to check the IP Location Click Next
  20. Click Next button
  21. Select “Edit IP” Finish button
  22. Select Add Sources from Project Manager in the Flow Navigator window
  23. Select Add or Create design sources Click next
  24. Select Add Files
  25. Browse to your VHDL Dice Controller file and select thisone, press OK button
  26. Select Finish button
  27. Dobbelsteen is dice in Dutch language
  28. component Dobbelsteen is Port ( sw : in std_logic_vector(3 downto 0); je : out std_logic_vector(7 downto 0)); end component
  29. dobbel: Dobbelsteen port map( sw=> slv_reg0(31 downto 28), je => je);
  30. Je : out std_logic_vector(7 downto 0);
  31. Je : out std_logic_vector( 7 downto 0);
  32. Select Package IP from Project Manager (Flow Navigator Window)
  33. Select File Groups Select “Merge changes from File Groups Wizard”
  34. Add Sub-Core Reference “Clocking wizard” for instance
  35. Select “Merge changes from Customization Parameters Wizard”
  36. Select “Re-Package IP”
  37. Select “Yes”
  38. Check the Repository Manager of the IP in the Project Manager
  39. Select “Create Block Design” from “IP Integrator” in the Project Manager Tab of the “Flow Navigator”.
  40. Specify a Design name (for instance default design_1) I never change those settings. Select ok
  41. Select the Add IP option to add a PS ZYNQ core to the block design
  42. Select ZYNQ7 Processing System
  43. Select Run Block Automation
  44. Block diagram is auto updated by use of Block Automation feature of Xilinx Vivado IDE
  45. Select Add IP
  46. Add dobbelsteeen_v1.0 axi ip core
  47. Click on Run Connection Automation to Auto create AXI bus Master Slave structure between PS7 and Dobbelsteeen ip.
  48. Click OK button
  49. Right mouseclick on je output of dobbelsteeen_0
  50. Select make external to make the je[7:0] pins connection the the board (outside world on je connector of Zybo board)
  51. Select “Create HDL Wrapper”
  52. Let Vivado manage wrapper and auto-update Select ok button
  53. Select add sources from Project manager in the Flow Navigator window
  54. Select Add files from the Add or Create constraint window Be sure to select the XDC file with the je connector and sw uncommented
  55. It’s time to grab a cup of coffee and start to generate the bitstream
  56. Select Yes
  57. Select Cancel
  58. Select Export Hardware from File
  59. Set Include the bitstream option Select the ok buttn
  60. Select “Launch SDK” from file
  61. Select ok
  62. Hdf file => look for dobbelsteeen in the address map
  63. Start a new application project
  64. Select Next
  65. Select Hello World Template and Click Finish button