PCIe总线基础及FPGA设计实战.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
PCI?Express?总线基础及?FPGA?设计实战 1.?PCI?Express?基础 PCIe?总线是基于?PCI?总线发展起来的,很多基本概念都来自于?PCI?总线,有必要在介绍 PCIe?之前了解?PCI?总线。 1.1?PCI?基础 PCI?总线作为处理器系统的局部总线,其主要目的是为了连接外部设备,而不是作为处 理器系统的系统总线连接?Cache?和主存储器。PCI?总线作为系统总线的延伸,其设计考虑了 许多与处理器相关的内容,孤立的研究?PCI?总线并不可取,因此需要将?PCI?作为存储器系统 的一个部分来研究。 1.1.1?几个重要概念 1) PCI?总线空间与处理器空间隔离 PCI?设备具有独立的地址空间,即?PCI?总线地址空间,该空间与存储器地址空间通过?HOST 主桥隔离。处理器需要通过?HOST?主桥才能访问?PCI?设备,而?PCI?设备需要通过?HOST?主桥 才能方位主存储器。 要注意区分存储器地址空间和?PCI?总线地址。在一个处理器系统中,存储器域、PCI?总 线域与?HOST?主桥的关系如下图。 图中的处理器系统由一个?CPU、一个?DRAM?控制器和两个?HOST?主桥组成。在这个处理 器系统中,包含?CPU?域、DRAM?域、存储器域和?PCI?总线域地址空间。其中?HOST?主桥?x?和 HOST?主桥?y?分别管理?PCI?总线?x?域与?PCI?总线?y?域。CPU?访问?PCI?设备,必须通过?HOST?主 桥进行地址转换,而?PCI?设备访问存储器设备,也需要?HOST?主桥进行地址转换。HOST?主桥 的一个重要作用就是将存储器访问的存储器地址转换成?PCI?总线地址。 CPU?域地址空间是指?CPU?所能直接访问的地址空间集合。 DRAM?域地址空间是指?DRAM?控制器所能访问的地址空间集合,又称为主主存储器域。 存储器域是?CPU?域和?DRAM?域的集合。存储器域包括?CPU?内部的通用寄存器、存储器 映射寻址的寄存器、主存储器空间和外部设备空间。在?Intel?的?x86?处理系统中,外部设备 空间与?PCI?总线域地址空间等效。因为在?x86?处理器系统中,使用?PCI?总线同一管理全部外 部设备。 值得注意的是,存储器域的外部设备空间,在?PCI?总线域中还有一个地址映射。当处理 器访问?PCI?设备时,首先访问的是这个设备在存储器域上的?PCI?设备空间,之后?HOST?主桥 将这个存储器域的?PCI?总线地址转换成?PCI?总线域的物理地址,然后通过?PCI?总线事务访问?PCI 总线域的地址空间。 2) 可扩展性 PCI?总线具有很强的扩展性。在?PCI?总线中,HOST?主桥可以直接推出一条?PCI?总线,这 条总线也是该?HOST?主桥管理的第一条?PCI?总线,该总线还可以通过?PCI?桥扩展一系列?PCI 总线,并以?HOST?主桥作为根节点,形成?1?棵?PCI?总线树。这些?PCI?总线都可以连接?PCI?设 备,但是一棵?PCI?设备树上,最多只能挂接?256?个?PCI?设备(包括?PCI?桥)。 3) 动态配置机制 PCI?设备使用的地址可以根据需要由系统软件动态分配。PCI?总线使用这种方式合理地 解决设备间的地址冲突,从而实现了“即插即用”功能。每一个?PCI?设备都有独立的配置空 间,在配置空间中包含该设备在?PCI?总线中使用的基地址即?BAR?地址,从而保证每一个?PCI 设备使用的物理地址并不相同。PCI?桥的配置空间中包含有其下?PCI?子树所能使用的地址范 围。 x86?系统的工作流程是:主板上的?BIOS?程序会扫描?PCI/PCIE?设备,读取其?BAR?空间的 大小,动态地为?PCI/PCIE?设备分配地址空间。在调试过中发现,假如将?BAR?空间设置成?2G, x86?系统会报?no?bootable?device?的错误,原因应该是?BIOS?给?PCIE?设备分配了?2G?的地址空 间,暂用了硬盘的地址空间,导致无法加载操作系统。 4) 总线带宽 PCI?总线与之前的局部总线相比,极大提高了数据传送带宽,32?位/33MHz?的?PCI?总线 可以提供?132MB/s?的峰值带宽,而?64?位/66MHz?的?PCI?总线可以提供的峰值带宽为 532MB/s。虽然?PCI?总线所能提供的峰值带宽远不能和?PCIe?总线相比,但是与之前的局部总 线?ISA、EISA?和?MCA?总线相比,仍然具有极大的优势。 ISA?总线的最高主频为?8MHz,位宽为?16,其峰值带宽为?16MB/s;EISA?总线的最高主频 为?8.33MHz,位宽为?32,其峰值带宽为?33MB/s;而?MCA?总线的最高主频为?10M

文档评论(0)

xiaoluping2000 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档