基于FPGA的PCIe接口设计—01_PCIe基本概念
PCIE总线技术,也叫计算机内部总线技术”Peripheral Component Interconnect”,即外围组件互联,其前身是PCI总线,但PCI总线真正应用是随着Intel的Pentium处理器诞生而开始的,在1994年的时候,以绝对的优势,战胜了VESA总线,成为了当时的标准,从此,几乎所有的外围设备,从硬盘控制器到声卡,网卡,都用PCI插槽。 在过去的十几年中,PCI总线得到了广泛的应用,虽然PCI总线,在往后的10几年当中也有所发展,先后出现了64位的PCI-/66MHz、PCI-X,但是随着微处理器、存储器和互联网络的发展,并行数据传输的PCI总线技术逐渐成为系统整体性能提升的瓶颈,首先是高性能的图像处理芯片从PCI总线分离出来,形成单独一种总线技术,那就是AGP总线,随着千兆以太网和其他高带宽设备在消费级系统上的出现,PCI133MB/s的带宽明显不能满足这些应用的需求。而串行点对点的PCI Express总线的提出彻底改变了原来PCI总线的并行技术,克服了PCI总线在系统带宽、传输速度等方面的固有缺陷。 PCIe总线规范 总线频率 单Lane的峰值带宽 编码方式 单个Lane带宽 1.x 1.25GHz 2.5GT/s 8/10b编码 250MB/s 2.x 2.5GHz 5GT/s 8/10b编码 500MB/s 3.0 4GHz 8GT/s 128/130b编码 1GB/s 根据PCIE规范的定义,IP核包含以下几个功能:产生并处理传输层数据包(TLPs),流控制管理,初始化及电源管理,数据保护,错误检查及重试,串行化,去串行化等功能。根据协议,该核包括如下三层: 传输层(处理层,事务层):传输层是PCIE的最上层,它的首要功能是接收、缓存和传输传输层数据包,并负责处理层数据包的合成与分解,进行流量控制管理,数据包队列管理以及利用对虚拟通道提供服务质量功能。 数据链路层:数据链路层如同联系传输层和物理层的媒介,它的首要功能是为TLPs在两层之间的传输提供可靠性支持,他可以进行错误检查以及恢复,产生并解析数据链路层包(DLLP),DLLP被用来在两个互联的PCIE的数据链路层之间传输信息,从而实现电源管理,流量控制以及TLP确认等功能。 物理层:物理层可分为逻辑物理层和电气物理层,逻辑物理层完成对PLP的合成和分解,8b/10b编码,10b/8b解码,并串转换和串并转换。电气物理层负责所有通道的数据差分驱动传输与接收。 [/toggle]