element14 Community
element14 Community
    Register Log In
  • Site
  • Search
  • Log In Register
  • About Us
  • Community Hub
    Community Hub
    • What's New on element14
    • Feedback and Support
    • Benefits of Membership
    • Personal Blogs
    • Members Area
    • Achievement Levels
  • Learn
    Learn
    • Ask an Expert
    • eBooks
    • element14 presents
    • Learning Center
    • Tech Spotlight
    • STEM Academy
    • Webinars, Training and Events
    • Learning Groups
  • Technologies
    Technologies
    • 3D Printing
    • FPGA
    • Industrial Automation
    • Internet of Things
    • Power & Energy
    • Sensors
    • Technology Groups
  • Challenges & Projects
    Challenges & Projects
    • Design Challenges
    • element14 presents Projects
    • Project14
    • Arduino Projects
    • Raspberry Pi Projects
    • Project Groups
  • Products
    Products
    • Arduino
    • Avnet Boards Community
    • Dev Tools
    • Manufacturers
    • Multicomp Pro
    • Product Groups
    • Raspberry Pi
    • RoadTests & Reviews
  • Store
    Store
    • Visit Your Store
    • Choose another store...
      • Europe
      •  Austria (German)
      •  Belgium (Dutch, French)
      •  Bulgaria (Bulgarian)
      •  Czech Republic (Czech)
      •  Denmark (Danish)
      •  Estonia (Estonian)
      •  Finland (Finnish)
      •  France (French)
      •  Germany (German)
      •  Hungary (Hungarian)
      •  Ireland
      •  Israel
      •  Italy (Italian)
      •  Latvia (Latvian)
      •  
      •  Lithuania (Lithuanian)
      •  Netherlands (Dutch)
      •  Norway (Norwegian)
      •  Poland (Polish)
      •  Portugal (Portuguese)
      •  Romania (Romanian)
      •  Russia (Russian)
      •  Slovakia (Slovak)
      •  Slovenia (Slovenian)
      •  Spain (Spanish)
      •  Sweden (Swedish)
      •  Switzerland(German, French)
      •  Turkey (Turkish)
      •  United Kingdom
      • Asia Pacific
      •  Australia
      •  China
      •  Hong Kong
      •  India
      •  Korea (Korean)
      •  Malaysia
      •  New Zealand
      •  Philippines
      •  Singapore
      •  Taiwan
      •  Thailand (Thai)
      • Americas
      •  Brazil (Portuguese)
      •  Canada
      •  Mexico (Spanish)
      •  United States
      Can't find the country/region you're looking for? Visit our export site or find a local distributor.
  • Translate
  • Profile
  • Settings
Path to Programmable
  • Challenges & Projects
  • Design Challenges
  • Path to Programmable
  • More
  • Cancel
Path to Programmable
Blog Path to Programmable Blog 12 - SDK Project Management & Interrupts
  • Blog
  • Forum
  • Documents
  • Polls
  • Files
  • Events
  • Mentions
  • Sub-Groups
  • Tags
  • More
  • Cancel
  • New
  • Share
  • More
  • Cancel
Group Actions
  • Group RSS
  • More
  • Cancel
Engagement
  • Author Author: avnrdf
  • Date Created: 20 Dec 2018 10:32 AM Date Created
  • Views 553 views
  • Likes 3 likes
  • Comments 0 comments
  • soc
  • path to programmable
  • zynq
  • xilinx sdk
  • fpga
  • avnet minized
  • zynq-7000
  • xilinx zynq
  • minized
Related
Recommended

Path to Programmable Blog 12 - SDK Project Management & Interrupts

avnrdf
avnrdf
20 Dec 2018

Chapter 8 Video - SDK Project Management

 

This video was about project management in Xilinx SDK: workspaces & how to share/export them, how to import C/C++ files and set up repositories.

imageimage

Lab 8 - SDK Project Management

 

The export tool allows users to export their projects, breakpoints, launch configurations etc. to archive files.

image image

imageimage

The exported files can then be imported to a new workspace/different computer. The import tool also allows C/C++ files to be imported.

image

Chapter 9 Video - Interrupts

 

Zynq Interrupts are classified into 3 main types: software generated interrupts, private peripheral; interrupts and shared peripheral interrupts.

imageimage

Software-generated interrupts – 16 interrupts per processor. They can interrupt one or both of the Zynq SoC’s ARM Cortex-A9 processor cores.

  • Shared peripheral interrupts – A total of 60 interrupts can come from the I/O peripherals, or to and from the programmable logic (PL) side of the device. They are shared between the Zynq SoC’s two CPUs.
  • Private peripheral interrupts – 5 interrupts in this category are private to each CPU eg. timer, watchdog & a dedicated PL to CPU interrupt.

 

Similar to other processors, the interrupt handler services each interrupt by looking up the corresponding entry in the vector table and pushes register contents to the stack.

imageimage

The video concluded with a couple of general tips for handling ISRs.

 

 

Lab 9 - Interrupts

 

In this lab, we created a new empty application and imported a file that was included in the training material. The instructions were to modify the file to include drivers for the SCUGIC and exception handler. After adding a couple of macros and variables, we added the callback function for the ISR. To setup the interrupt system, initialize the controller driver, setup the handler, enable the interrupt and initialize the exception table.

 

The image gallery contains a refresher on how the hardware was wired up in Module 1:

 

 

{gallery} Vivado Block Design

image

Interrupt_Out signal from the PWM block

image

The PWM block interrupt goes to a Concat block (that combines the different interrupt signals into a bus), which feeds the Zynq. Note that the PWM block is mapped to the LSB of IRQ_F2P

image

The LSB is assigned ID '61'

image

Configuring the interrupt handler in Xilinx SDK - interrupt ID 61.

 

 

Running it results in this:

image

Setting a value that isn't 0-9 makes the interrupt line go high (in hardware), which then propagates to the ARM core through the GIC, executing the code in the callback.

  • Sign in to reply
element14 Community

element14 is the first online community specifically for engineers. Connect with your peers and get expert answers to your questions.

  • Members
  • Learn
  • Technologies
  • Challenges & Projects
  • Products
  • Store
  • About Us
  • Feedback & Support
  • FAQs
  • Terms of Use
  • Privacy Policy
  • Legal and Copyright Notices
  • Sitemap
  • Cookies

An Avnet Company © 2025 Premier Farnell Limited. All Rights Reserved.

Premier Farnell Ltd, registered in England and Wales (no 00876412), registered office: Farnell House, Forge Lane, Leeds LS12 2NE.

ICP 备案号 10220084.

Follow element14

  • X
  • Facebook
  • linkedin
  • YouTube