设备在系统的PCI地址空间里申请一段来用,所申请的空间基址和大小保存在BAR寄存器里。BAR里的只是PCI域的地址空间,需要映射到IO地址空间里或者内存地址空间里之后软件才能使用
。映射到IO空间的话,用IO读写指令和函数去访问设备;映射到内存空间的话,首先得到的是物理地址,映射到虚拟地址后就可以像用指针那样访问。IO BAR和MEM BAR分别是映射到IO空间和内存空间的BAR;BAR寄存器的0位指示要映射到哪,有的设备这位可以由用户设置,有的只读。每个BAR具体干嘛是设备自己定义的,要看手册。

PCI Express 内核保留了系统地址空间,其可具有高达8 个参考基址寄存器(BAR)。每个BAR 存储参考存储器段的开始地址。标准的PCI Express 应用一般使用 BAR0 和 BAR1 作为链路的标准参考。您也可以规定其它BAR 来替代。

BAR0 和 BAR1 用于参考DDR2 SDRAM 存储器。BAR2 用于参考受应用逻辑监控的DMA 寄存器。这就使得Root Complex 可以通过写BAR2 来写 DMA 寄存器。这样,便可实现从Root Complex 发起 Endpoint 处理。这便是本设计写DMA 寄存器的方法。

****摘自altera公司pcie core说明书****

pcie 的bar和dma bar2相关推荐

  1. pcie总线连接两台电脑_基于PCIe总线的多路复用DMA高速传输系统的设计

    摘要:文章针对双处理器设备问的数据通信提出了基于PCIe非透明桥的高速传输系统的设计方法.该方法应用于视频转码设备,实验结果表明当转码设备作为外设与PC主机进行通信时,采用多路虚拟DMA方法的数据传输 ...

  2. PCIE Resizable BAR

    1. 什么是Resizable BAR Resizable BAR特性在PCIe规范中定义.仅可以通过本地DBI在控制寄存器中更改"Supported Resource Sizes" ...

  3. windows驱动开发-基于WDF的Altera PCIe DMA驱动

    作者 QQ群:852283276 微信:arm80x86 微信公众号:青儿创客基地 B站:主页 https://space.bilibili.com/208826118 FPGA设计 参考我的博客:A ...

  4. [转]windows驱动开发-基于WDF的Altera PCIe DMA驱动

    版权声明:本文为CSDN博主「黑客三遍猪」的原创文章,遵循CC 4.0 by-sa版权协议,转载请附上原文出处链接及本声明. 原文链接:https://blog.csdn.net/Zhu_Zhu_20 ...

  5. 【PCIe 5.0 - 100】SR-IOV【1】

    本文将从PCIe角度讲SR-IOV. PCIe 系列SR-IOV导航: [PCIe 5.0 - 100]SR-IOV[1] [PCIe 5.0 - 101]SR-IOV[2] [PCIe 5.0 - ...

  6. PCIe接口在FPGA上的实现

    引言 PCI Express Base Specification Revision 3.0 PCI Local Bus Specification Revision 3.0 书籍:PCI Expre ...

  7. linux PCIE驱动开发

    2019独角兽企业重金招聘Python工程师标准>>> linux下PCI驱动源码实例1,该源码缺少pci_fops的初始化 #include <linux/fs.h> ...

  8. FPGA调试笔记~PCIE之XDMA(一):一些概念性介绍

    目录 XDMA引荐 PCIE介绍 历史渊源 通信拓扑结构 地址映射与管理 加载与初始化过程 总结 XDMA引荐 XDMA是Xilinx系列FPGA中官方自带的PCIE"高级"IP, ...

  9. 【紫光同创logos2 FPGA PCIe软件栈设计】

    紫光同创logos2 FPGA PCIe软件栈 基于同创logos2系列FPGA自研PCIe软件栈 驱动层 设备初始化 Device operation 设备卸载 API层 配置空间访问接口 bar访 ...

最新文章

  1. 三段式LLVM编译器
  2. 关于make *.img时没有权限的问题
  3. 洛谷——P1033 自由落体
  4. PAT_B_1012 数字分类 (有待改进)
  5. linux里hba状态_Windows和Linux系统查看HBA卡wwn号的方法 | 系统之家官网
  6. java setDataSource 报红
  7. 电子路考容易犯错的五大细节
  8. softmax回归多元分类
  9. 我又踩坑了!如何为 HttpClient 请求设置 Content-Type 标头?
  10. 安卓调用系统语音识别功能全解(谷歌语音服务):获取识别结果,使用语音识别进行搜索。
  11. base64图片解码与编码
  12. 酷柚易汛进销存-如何新增付款单?
  13. C#实战009:Excel操作-删除指定的Excel工作表
  14. 【R语言】【可视化】 之 维恩图
  15. mysql 备份 发送邮件_mysql 自动备份发邮件 到指定邮箱
  16. dsf5.0修改不了头像
  17. 安装vs2005 sp1 出现错误 1718
  18. 我眼中的《芳华》读后感作文2500字
  19. linux如何测试ftp服务器,linux下FTP服务器的搭建
  20. 洛谷 P1914 小书童——凯撒密码

热门文章

  1. 2021年的疫情下的智能车竞赛
  2. 第十六届智能车竞赛参赛队员提问与回答 |2021年7月12
  3. 硕士论文评审记录2021年春季
  4. 比Tiny YOLOv3小8倍,性能提升11个点,4MB的网络也能做目标检测
  5. excel 某个单元格不是等于空值_excel 单元格为空与不存在
  6. matlab preloadfcn,simulink中打不开SysytemGenerator?返回错误Error evaluating ...
  7. 动态主机配置协议服务器不能提供,计算机网络基础课程—动态主机配置协议(Dhcp)...
  8. 怎么获取codeforces的数据_原创 | codeforces 1417C,逆向思考的数据结构题
  9. JS循环精灵图背景-遍历背景图片
  10. 中小型网络系统总体规划与设计(Small and medium-sized network system overall planning and design)