UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

cancel
Showing results for 
Search instead for 
Did you mean: 
Highlighted
Observer novec_16
Observer
2,805 Views
Registered: ‎04-25-2017

PL2PS IRQ Zynq interrupt issue

Jump to solution

Hi to all,

In order to reduce complexity I'd like to be able to send interrupts from PL logic directly bypassing the GPIO.

So far it doesn’t work for me.  The block diagram is attached. For interrupt signal verification it includes ILA. The interrupter is a 16-bit counter sending a pulse once over the counting cycle. The clock frequency is 1 MHz.

My system is buit on the Digilent Zybo board in a standalone mode, Vivado 2016.4, no erros or meaningful warnings.

Software is taken from the Zynq Book Training files, however, instead of XGPIO I use XScuGic:

XGpio_InterruptEnable(GpioInstancePtr, 1); =è

XScuGic_Enable(IntcInstancePtr, INTC_INTERRUPT_ID);

The INTERRUPT_ID parameter is taken from xparameter.h  line #define XPAR_FABRIC_INT_CNT_0_INTR_INTR 61

The InterruptHandler routine does nothing but increments interrupt counter value. The main checks the count and quits when it's over 50.

In the debugging mode all initialization went without errors and the program was in state of waiting for the interrupt.

Hope someone will be able to guide me.

Thanks

IRQ.PNG
0 Kudos
1 Solution

Accepted Solutions
Observer novec_16
Observer
5,064 Views
Registered: ‎04-25-2017

Re: PL2PS IRQ Zynq interrupt issue

Jump to solution

I made it to work after adding a line:

XScuGic_SetPriorityTriggerType(IntcInstancePtr, INTC_INTERRUPT_ID,0x00, 0x3);

to the SetupInterruptSystem subroutine.

 

The question may e cosidered answered and closed.

0 Kudos
3 Replies
Moderator
Moderator
2,722 Views
Registered: ‎07-31-2012

Re: PL2PS IRQ Zynq interrupt issue

Jump to solution

Hi,

 

Could you make sure the intr port of Interruptor_0 block is of type intr?

Check in port's properties.

 

Regards

Praveen


-------------------------------------------------------------------------
Don’t forget to reply, kudo, and accept as solution.
-------------------------------------------------------------------------
0 Kudos
Observer novec_16
Observer
2,708 Views
Registered: ‎04-25-2017

Re: PL2PS IRQ Zynq interrupt issue

Jump to solution

Hi Praveen,

Thank you for response.

Based on the attached snapshot of the pin properties the type is intr as you suggested.

Anything else to check?

 

 

PinType.PNG
0 Kudos
Observer novec_16
Observer
5,065 Views
Registered: ‎04-25-2017

Re: PL2PS IRQ Zynq interrupt issue

Jump to solution

I made it to work after adding a line:

XScuGic_SetPriorityTriggerType(IntcInstancePtr, INTC_INTERRUPT_ID,0x00, 0x3);

to the SetupInterruptSystem subroutine.

 

The question may e cosidered answered and closed.

0 Kudos