PCI总线的工作原理是什么分析?
扫描二维码
随时随地手机看文章
随着计算机技术的继续发展,CPU的处理速度越来越快,EISA总线的32MB/s带宽已经满足不了CPU的需求,CPU外围总线带宽已经成为制约计算机处理能力继续提高的瓶颈。1991年下半年,Intel公司首选提出PCI总线的概念,并与IBM、Compaq、AST、HP、DEC等100多家公司成立PCISIG组织,联合推出PCI总线。PCI总线支持32位和64位两种位宽,时钟频率为33MHz,总线带宽:32bit*33MHz= 1056Mbps =132MB/s 或64bit*33MHz=2112Mbps=264MB/s。
随着PCI总线的发展,PCI总线又发展到PCI-X时代,与PCI总线相比,PCI –X总线的位宽未改变,而是将时钟频率进行了提高。PCI-X 1.0的时钟频率有66MHZ/100MHz/ 133MHz,总线带宽分别为:264MB/s, 400MB/s和532MB/s(32位),528MB/s, 800MB/s和1064MB/s(64位);PCI-X 2.0的时钟频率有266MHz/533MHz/1066MHz,总线带宽分别为:1064MB/s, 2132MB/s和4264MB/s(32位),2128MB/s, 4264MB/s和8512MB/s(64位),PCI-X与PCI总线在硬件结构上完全兼容。与PCI总线相比,PCI-X除掉在时钟频率高外,还在传输协议上进行了改进,PCI-X采用了“寄存器到寄存器”的新协议,在新协议模式下,发送方发出的数据信号会被预先送入一个专门的寄存器内,并在寄存器中保存一个时钟周期,接收端只要在这个周期内做出响应,取走数据即可。而PCI协议中却没有这个缓冲,数据发出去后,如果对方因某种原因没能及时接收,数据将会被丢弃。
PCI总线管脚功能
PCI主设备最少需要49根线,从设备最少需要47根线,剩下的线可选。在介绍PCI管脚功能前,先来说明下PCI管脚信号的类型。
in:输入信号;
out:输出信号;
t/s:双向三态信号(Tri-state),无效时为高组态;
s/t/s:持续三态信号(Sustained Tri-state),每次由且只由一个单元拥有并驱动的低有效、双向、三态信号。驱动一个s/t/s信号到低的单元在释放该信号浮空之前必须要将它驱动到高电平至少一个周期。这个特点很重要,在后面我们分析PCI信号质量案例的时候会用到;
o/d:漏极开路输出(Open Drain);
PCI总线有三种类型设备,分别是PCI主设备、PCI从设备、PCI桥设备。PCI从设备只能被动接受来自主桥和其它PCI从设备的读写请求,而PIC主设备可以通过总线仲裁获得总线使用权。PCI设备即可作为主设备也可作为从设备,在PCI总线中的主设备和从设备统称为PCI Agent,如声卡、网卡都输入PCI Agent。PCI桥设备是特殊的PCI设备,用来扩展PCI总线,PCI桥存在使得系统大规模互联称为可能。
PCI桥使得PCI总线有极大的扩展性,一条PCI总线能连接的PCI设备是有数量限制的, 如果需要连接更多的PCI设备,就需要用PCI桥来扩展PCI总线。
PCI总线使用地址译码的方式进行数据传递,采用ID译码的方式进行配置信息传递。每一个PCI设备都有一个BAR(基地址)寄存器,系统通过BAR+偏移地址的方式访问PCI设备的存储空间。ID译码方式使用PCI设备的ID号,ID号=总线号+设备号+功能号。系统首先需要在初始化时分配PCI总线的总线号、设备号,这样才能通过ID号访问PCI设备的配置空间,配置PCI设备。PCI总线初始化指的是系统上电初始化PCI总线时分配PCI总线号、设备号、配置PCI设备Base Address寄存器等初始化操作。
PCI总线采用了一个分布式的总线结构,每个设备都有一个唯一的地址,可以在总线上进行独立的数据传输操作。这种分布式的结构大大提高了总线的效率和可靠性,并且可以支持多个设备同时访问总线。
PCI总线特点
(1)高性能:PCI总线在电气和物理上均具有高性能,并且可以通过增加传输频率和带宽等手段进一步提高性能。
(2)插拔式接口:PCI总线使用插拔式接口,用户只需将设备插入PCI插槽中,即可完成硬件配置,无需对系统做任何设置和修改。
(3)独立性:每个设备都有独立的地址和数据传输通道,在总线上进行独立操作,而不会影响其他设备或整个系统。
(4)可编程性:PCI总线支持通过软件配置的方式改变其工作方式,例如改变传输速率、提高带宽等。
(5)多功能性:PCI总线可以同时支持多种外围设备,并且可以通过添加转接卡等扩展硬件接口。