Nios® V/II Embedded Design Suite (EDS)
Support for Embedded Development Tools, Processors (SoCs and Nios® V/II processor), Embedded Development Suites (EDSs), Boot and Configuration, Operating Systems, C and C++
12680 Discussions

Nios V Hardware Interrupt Limitations

fa_fpga_enthusiast
New Contributor I
229 Views

Hello,

 

Based on the Nios V Processor Reference Manual and AN 978 Nios V Processor Migration Guidelines, Nios V supports only 16 hardware interrupts, whereas Nios II supports 32. Additionally, the External Interrupt Controller is not available in Nios V.

 

Since Nios II has been deprecated, we are evaluating the transition to Nios V. However, our system requires more than 16 hardware interrupts.

 

Does Intel provide any recommended approach for handling more than 16 hardware interrupts in Nios V? Are there plans to extend this capability in future releases?

 

Best regards.

0 Kudos
3 Replies
JingyangTeh
Employee
138 Views

Hi


One method to increase the interrupt number of the NiosV is to use the IRQ Bridge IP.

You could use that to increase the numbers of interrupt to the NiosV.

More details could be found here:

https://www.intel.com/content/www/us/en/docs/programmable/683609/22-2/irq-bridge.html


Regards

Jingyang, Teh


0 Kudos
fa_fpga_enthusiast
New Contributor I
118 Views

Hello,

 

Thank you for your response.

 

I initially understood that the IRQ Bridge could be used as a multiplexing mechanism to connect multiple interrupt sources to a single IRQ line on Nios V. However, after reviewing its configuration, it seems that the IRQ signal width must be set to match the exact number of sender IRQs, meaning it does not dynamically multiplex interrupts.

 

For example, if I set the IRQ signal width to 2, the receiver_irq port becomes 2 bits wide (receiver_irq[1:0]), and exactly two interrupt sender ports (sender0_irq and sender1_irq) are created. If I then try to connect a third interrupt source, Platform Designer throws an out-of-range error, preventing me from adding more sources than the set width allows. This suggests that the IRQ Bridge does not act as an interrupt multiplexer in the way I originally assumed.

Based on the link that you shared, The IRQ Bridge Intel FPGA IP allows us to route interrupt wires between Platform Designer subsystems.

 

Given that Nios V has a limited number of IRQ lines and does not support an external interrupt controller, how do you expect us to use the IRQ Bridge to overcome these limitations? If the IRQ Bridge does not support dynamic multiplexing, is there another recommended approach for handling more interrupts than the CPU natively supports?

 

One possible solution would be to develop a custom interrupt bridge that aggregates different interrupts into a register and generates a single interrupt for the processor when any of the sources become active. The processor could then access this register via the Avalon interface to determine the original interrupt source. However, we would like to know Intel’s recommended approach for handling this scenario.

 

Best regards.

0 Kudos
JingyangTeh
Employee
33 Views

Hi


Sorry for the confusion, the IRQ Bridge just reroutes the interrupt.

It does not increase the interrupt number of the NiosV.

After confirming with my colleague, the NiosV current interrupt limitation is at 16 interrupts.

This is limited by the hardware design of the NiosV, however there are plans to increase the interrupt numbers in the future release.


Regards

Jingyang, Teh


0 Kudos
Reply