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 结束语

希望对你有帮助,如果遇到问题,可以一起沟通讨论,邮箱:jhqwy888@163.com。

(3)PCIE中断简介(学无止境)相关推荐

  1. (19)Xilinx PCIE中断理论(学无止境)

    0 PCIE中断应用 a)基于PCIE接口数据采集系统中断应用 系统架构:下位机是FPGA(Xilinx K7/V7/A7 FPGA),上位机是CPU(ARM.PowerPC.DSP.PC主机): 数 ...

  2. 机器视觉:PCI和PCI-E总线简介

    机器视觉:PCI和PCI-E总线简介 在机器视觉系统中,图像采集卡起到的是桥梁纽带的作用.根据不同的应用需求,我们通常用的采集卡有模拟图像采集卡.1394图像采集卡.USB扩展卡.GIGE千兆网卡.C ...

  3. (22)Xilinx FPGA PCIE中断接口(学无止境)

    1 引言 最近在做一个项目,用到PCIE接口.主要是FPGA与ARM通过PCIE接口进行通信,中断调试一直不通有2个月,最近也算是找到原因,FPGA中断上报后,CPU可以收到中断.所以,这里整理一下F ...

  4. (20)Xilinx PCIE中断调试成功(学无止境)

    0 调试环境 FPGA与ARM通过PCIE接口进行数据交互.下位机为FPGA,上位机为ARM. 1 遇到问题 开发软件:vivado 2018.3 硬件型号:Xilinx K7/V7 FPGA FPG ...

  5. PCIe中断--INTx

    PCI总线使用INTA#.INTB#.INTC#和INTD#信号向处理器发出中断请求.这些中断请求信号为低电平有效,并与处理器的中断控制器连接.在PCI体系结构中,这些中断信号属于边带信号(Sideb ...

  6. PCI相关(6)- PCIe中断-MSI/MSIX

    在 PCI 总线中,通过INTx 引脚提交中断请求,而 MSI 机制是一个可选机制.而在 PCIe 总线中,PCIe 设备必须支持 MSI 或者 MSI-X 中断请求机制,而可以不支持 INTx 中断 ...

  7. FPGA学无止境(目录篇)

    说明:为了让您快速找到对您感兴趣的文章,可以通过目录快速查找,节省时间,加油! 1 FPGA学无止境目录 0)(0)PCIE接口目录(学无止境) 1)(1)PCIE接口应用领域(学无止境) 2)(2) ...

  8. PCIe MSI 中断相关的启动流程

    文章目录 Linux PCIe 中断相关启动流程 1. PCIe控制器初始化过程 2. PCIe设备初始化过程 驱动详细解读 控制器侧驱动 设备侧驱动 Linux PCIe 中断相关启动流程 1. P ...

  9. 4 --> PCIe 总线的 MSI/MSI-x 中断代码分析

    在 DPDK 中使用的PCIe 网卡.中断类型为 MSI-X 类型,在此描述 PCIe 中断. MSI/MSI-X概述 PCIe有三种中断,分别为INTx中断,MSI中断,MSI-X中断,其中INTx ...

最新文章

  1. http 三种认证方式 Basic Session Token 简介
  2. qemu-kvm部分流程/源代码分析
  3. 学习:双机热备、集群、负载均衡、SQL故障转移群集简单理解(转)
  4. ICA(独立成分分析)笔记
  5. oracle的listagg函数
  6. 【区块链与未来】区块链技术将重塑我们的世界
  7. activemq配置与启动
  8. jsp java语法_javaweb-jsp语法
  9. linux服务器操作系统日志都有哪些,Linux操作系统服务器日志管理详解
  10. RTX5 | 时间延时
  11. PHP array_map()
  12. 项目wangkangluo1
  13. axis2 wsdl2java 报错_解决webService+axis2生成的wsdl文件有两个Bindings/Endpoint 的问题
  14. Could not load file or assembly An attempt was made to load a program with an incorrect format.
  15. python文件生成电脑exe文件
  16. 方法对象Spring MVC SimpleFormController
  17. 【渝粤教育】电大中专电商运营实操_1作业 题库
  18. 系统设计拓展:如何设计一个自动阅卷系统(英语/数学)
  19. mac外接显示器 竖屏 黑苹果_解决黑苹果HD3000核显 VGA和HDMI外接显示器无反应问题...
  20. 新电脑如何进行磁盘分区?

热门文章

  1. oracle中srv添加监听服务,Oracle 11g ORA-12514:TNS:监听程序当前无法识别连接描述符中请求的服务...
  2. Redis主从复制、哨兵模式和分布式集群
  3. 关于泰勒展开的两点思考
  4. 3-18pytorch与矩阵分解PCA
  5. myeclipse需要配置服务器得项目是,【SpringMVC】使用Myeclipse创建SpringMVC项目【超详细教程】...
  6. 重庆科技学院c语言程序设计报告,2020年重庆科技学院《911程序设计综合》硕士研究生招生复试大纲...
  7. c#下如何生成安装程序
  8. java多态的实现_Java多态的实现机制是什么,写得非常好!
  9. cad页面布局快捷键_炸裂“图纸集”功能、高手都在偷偷用的CAD图纸管理神器
  10. java web 密码修改,【67彩手机客户端】-平台网站