IRQ Module
Legacy Interrupts
(1)usr_irq_req拉高导致中断发送到PCIe Host,可以同时拉高多个bit;
(2)等到ack后,相应的usr_irq_req才可以拉低;第一个ack表示INT消息已经被发送到了PCIe block;
(3)经过(2)后 ,FPGA XDMA内的interrupt pending register将会拉高,等待ISR的查和处理;
(4)此时,如果(3)步骤,我知道如果ISR处理中断,那么,我就可以把usr_irq_req拉低;
(5)等待下一个usr_irq_Ack后,我才可以发起下一个中断。
MSI and MSI-X Interrupts
(1)usr_irq_req拉高导致中断发送到PCIe Host,可以同时拉高多个bit;
(2)如果MSI和MSI-X都拉高,则MSI-X被使用;
(3)usr_irq_req必须等待usr_irq_Ack为高,usr_irq_Ack为高表示中断已经发送了;
(4)必须等到中断被处理后,才可以把usr_irq_Ack拉低;(方法是通过驱动写寄存器,来告诉FPGA)
文章来源:https://www.toymoban.com/news/detail-794445.html
文章来源地址https://www.toymoban.com/news/detail-794445.html
到了这里,关于Xilinx PCIe XDMA IP中断的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!