(3)PCIE中断简介(学无止境)

1 引言

FPGA与CPU进行数据交互时,一般需要进行DMA操作,包括读DMA和写DMA操作。读/写DMA一些控制信号一般需要通过中断的方式实现;例如:DMA开始、DMA结束等。

2 PCIE中断简介

PCIE有三种中断类型,分别为Leagcy Interupt,MSI Interupt,MSI-X Interupt。DMA控制信号也是通过这三种中断类型之一实现。
一般采用MSI Interupt中断,Leagcy Interupt是延续PCI总线中断机制,也就是说PCIE总线兼容PCI中断。MSI-X Interupt暂时没有研究,后续会学习。MSI Interupt采用Message TLP消息包的方式来传递中断。

3 逻辑设计

基于Xilinx  FPGA实现PCIE中断逻辑设计包括两个部分,第一部分,通过PCIE IP核中断配置界面配置中断相关参数;第二部分,通过编写中断模块,控制FPGA中断上报给CPU,CPU接收中断并进行相应得处理。
说明: PCIe IP核发送Interupt时,不需要用户按照Message TLP方式来发送这种信号,只需要控制一些中断控制信号即可(实际上只需要3个信号就能发送中断)。
注意:若想知道PCIE IP核当前被软件启用了哪种中断方式,需要通过两个控制信号来判断。

4 遇到问题

1)FPGA发送中断到CPU,CPU接收不到中断信号?

5 结束语

希望对你有帮助,如果遇到问题,可以一起沟通讨论,邮箱:[email protected]

你可能感兴趣的:(FPGA学无止境)