没有合适的资源?快使用搜索试试~ 我知道了~
首页基于xilinx FPGA的PCIe设计实战
资源详情
资源评论
资源推荐
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 总线的最高主频为 10MHz,最
高位宽为 32,其峰值带宽为 40MB/s。PCI 总线提供的峰值带宽远高于这些总线。
5) 共享总线机制
PCI 设备通过仲裁获得 PCI 总线的使用权后,才能进行数据传送,在 PCI 总线上进行数
据传送,并不需要处理器进行干预。PCI 总线仲裁器不在 PCI 总线规范定义的范围内,也不
一定是 HOST 主桥和 PCI 桥的一部分,虽然绝大多数 HOST 主桥和 PCI 桥都包含 PCI 总线仲裁
器,但是在某些处理器系统设计中也可以使用独立的 PCI 总线仲裁器。
PCI 设备使用共享总线方式进行数据传递,在同一条总线上,所有 PCI 设备共享同一总
线带宽,这将极大地影响 PCI 总线的利用率。这种机制显然不如 PCIe 总线采用的交换结构。
6) 中断机制
PCI 总线上的设备可以通过四根中断请求信号 INTA~D#向处理器提交中断请求。与 ISA
总线上的设备不同,PCI 总线上的设备可以共享这些中断请求信号,不同的 PCI 设备可以将
这些中断请求信号线与后,与中断控制器的中断请求引脚连接。PCI 设备的配置空间记录了
该设备使用这四根中断请求信号的信息。
PCI 总线还进一步提出了 MSI(Message Signal Interrupt)机制,该机制使用存储器写总
线事务传递中断请求,并可以使用 x86 处理器 FSB(Front Side Bus)总线提供的 Interrupt
Message 总线事务,从而提高了 PCI 设备的中断请求效率。
1.1.2 PCI 总线的组成结构。
图中与 PCI 总线相关的模块包括:HOST 主桥、PCI 总线、PCI 桥和 PCI 设备。PCI 总线是
由 HOST 主桥和 PCI 桥推出,HOST 主桥与主存储器控制器在同一级总线上,因此 PCI 设备可
以方便通过 HOST 主桥访问存储器,即进行 DMA 操作。在一些简单的处理器系统中,可能
不包含 PCI 桥,此时所有 PCI 设备都是连接再 HOST 主桥上推出的 PCI 总线上。在一些处理
器系统中有可能有多个 HOST 主桥,如图 1-1 所示处理器系统中含有 HOST 主桥 x 和 HOST 主
桥 y。
X86 处理器的 HOST 主桥
X86 处理器使用南北桥结构连接 CPU 和 PCI 设备。其中北桥连接快速设备,如显卡和内
存条,并推出 PCI 总线,HOST 主桥包含在北桥中。而南桥连接慢速设备。
1.2 PCIE 总线概述
PCI 总线使用并行总线结构,在同一条总线上的所有外部设备共享总线带宽,而 PCIe
总线使用高速查分总线,采用端对端的连接方式,因此在每一条 PCIe 链路中只能连接两个
设备。这使得 PCIe 与 PCI 总线采用的拓扑结构有所不同。PCIe 总线除了在连接方式上与 PCI
总线不同之外,还使用一些在网络通信中使用的技术,如支持多种数据路由方式,基于多
通路的数据传递方式,和基于报文的数据传送方式,并充分考虑在数据传送中出现的服务
质量 QoS(Quality of Service)问题。
1.2.1 基于 PCIe 的系统结构
前期的 Intel 主板中会集成单独的南北桥芯片,北桥负责连接速度较快的 CPU、主存储
器以及显卡等元件,南桥负责连接速度较慢的设备,包括硬盘、 USB、网卡等。只要 CPU
读取主存储器,还需要北桥的支持,也就是 CPU 与主存储器的交流,会占用北桥的带宽。
因此新一代的 Intel 主板架构,大多将北桥存储控制器整合到 CPU 封装中,CPU 直接与主存
储器交互,速度较快。
基于 PCIe 总线的 Intel 处理器架构
主存储器的速度
SDRAM/DDR
型号 数据位宽 内部时钟 频率速度 带宽
剩余21页未读,继续阅读
vevid
- 粉丝: 75
- 资源: 2
上传资源 快速赚钱
- 我的内容管理 收起
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
会员权益专享
最新资源
- c++校园超市商品信息管理系统课程设计说明书(含源代码) (2).pdf
- 建筑供配电系统相关课件.pptx
- 企业管理规章制度及管理模式.doc
- vb打开摄像头.doc
- 云计算-可信计算中认证协议改进方案.pdf
- [详细完整版]单片机编程4.ppt
- c语言常用算法.pdf
- c++经典程序代码大全.pdf
- 单片机数字时钟资料.doc
- 11项目管理前沿1.0.pptx
- 基于ssm的“魅力”繁峙宣传网站的设计与实现论文.doc
- 智慧交通综合解决方案.pptx
- 建筑防潮设计-PowerPointPresentati.pptx
- SPC统计过程控制程序.pptx
- SPC统计方法基础知识.pptx
- MW全能培训汽轮机调节保安系统PPT教学课件.pptx
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论5