您现在的位置是:首页 > 电脑技术查询 > 电脑知识

pci总线

编辑:chaxungu时间:2022-12-07 04:49:22分类:电脑知识

pci技术规格简介

从1992年创立规范到如今,pci总线已成为了计算机的一种标准总线。由pci总线构成的标准系统结构如图一所示。

pci总线取代了早先的isa总线。当然与在pci总线后面出现专门用于显卡的agp总线,与现在pciexpress总线,但是pci能从1992用到现在,说明他有许多优点,比如即插即用(plugandplay)、中断共享等。在这里我们对pci总线做一个深入的介绍。

从数据宽度上看,pci总线有32bit、64bit之分;从总线速度上分,有33mhz、66mhz两种。目前流行的是32bit@33mhz,而64bit系统正在普及中。改良的pci系统,pci-x,最高可以达到64bit@133mhz,这样就可以得到超过1gb/s的数据传输速率。如果没有特殊说明,以下的讨论以32bit@33mhz为例。

一、基本概念

不同于isa总线,pci总线的地址总线与数据总线是分时复用的。这样做的好处是,一方面可以节省接插件的管脚数,另一方面便于实现突发数据传输。在做数据传输时,由一个pci设备做发起者(主控,initiator或master),而另一个pci设备做目标(从设备,target或slave)。总线上的所有时序的产生与控制,都由master来发起。pci总线在同一时刻只能供一对设备完成传输,这就要求有一个仲裁机构(arbiter),来决定在谁有权力拿到总线的主控权。

32bitpci系统的管脚按功能来分有以下几类:

系统控制:clk,pci时钟,上升沿有效

rst,reset信号

传输控制:frame#,标志传输开始与结束

irdy#,master可以传输数据的标志

devsel#,当slave发现自己被寻址时置低应答

trdy#,slave可以转输数据的标志

stop#,slave主动结束传输数据的信号

idsel,在即插即用系统启动时用于选中板卡的信号

地址与数据总线:ad[31::0],地址/数据分时复用总线

c/be#[3::0],命今/字节使能信号

par,奇偶校验信号

仲裁号:req#,master用来请求总线使用权的信号

gnt#,arbiter允许master得到总线使用权的信号

错误报告:perr#,数据奇偶校验错

serr#,系统奇偶校验错

当pci总线进行操作时,发起者(master)先置req#,当得到仲裁器(arbiter)的许可时(gnt#),会将frame#置低,并在ad总线上放置slave地址,同时c/be#放置命令信号,说明接下来的传输类型。所有pci总线上设备都需对此地址译码,被选中的设备要置devsel#以声明自己被选中。然后当irdy#与trdy#都置低时,可以传输数据。当master数据传输结束前,将frame#置高以标明只剩最后一组数据要传输,并在传完数据后放开irdy#以释放总线控制权。

这里我们可以看出,pci总线的传输是很高效的,发出一组地址后,理想状态下可以连续发数据,峰值速率为132mb/s。实际上,目前流行的33m@32bit北桥芯片一般可以做到100mb/s的连续传输。

二、即插即用的实现

所谓即插即用,是指当板卡插入系统时,系统会自动对板卡所需资源进行分配,如基地址、中断号等,并自动寻找相应的驱动程序。而不象旧的isa板卡,需要进行复杂的手动配置。

实际的实现远比说起来要复杂。在pci板卡中,有一组寄存器,叫"配置空间"(configurationspace),用来存放基地址与内存地址,以及中断等信息。

以内存地址为例。当上电时,板卡从rom里读取固定的值放到寄存器中,对应内存的地方放置的是需要分配的内存字节数等信息。操作系统要跟据这个信息分配内存,并在分配成功后把相应的寄存器中填入内存的起始地址。这样就不必手工设置开关来分配内存或基地址了。对于中断的分配也与此类似。

三、中断共享的实现

isa卡的一个重要局限在于中断是独占的,而我们知道计算机的中断号只有16个,系统又用掉了一些,这样当有多块isa卡要用中断时就会有问题了。

pci总线的中断共享由硬件与软件两部分组成。

硬件上,采用电平触发的办法:中断信号在系统一侧用电阻接高,而要产生中断的板卡上利用三极管的集电极将信号拉低。这样不管有几块板产生中断,中断信号都是低;而只有当所有板卡的中断都得到处理后,中断信号才会回复高电平。

软件上,采用中断链的方法:假设系统启动时,发现板卡a用了中断7,就会将中断7对应的内存区指向a卡对应的中断服务程序入口isr_a;然后系统发现板卡b也用中断7,这时就会将中断7对应的内存区指向isr_b,同时将isr_b的结束指向isr_a。以此类推,就会形成一个中断链。而当有中断发生时,系统跳转到中断7对应的内存,也就是isr_b。isr_b就要检查是不是b卡的中断,如果是,要处理,并将板卡上的拉低电路放开;如果不是,则呼叫isr_a。这样就完成了中断的共享。

通过以上讨论,我们不难看出,pci总线有着极大的的优势。而近年来的市场情况也证实了这一点。


添加:

1991年下半年,intel公司首先提出了pci的概念,并联合ibm、compaq、ast、hp、dec等100多家公司成立了pci集团,其英文全称为:peripheralcomponentinterconnectspecialinterestgroup(外围部件互连专业组),简称pcisig。pci有32位和64位两种,32位pci有124引脚,64位有188引脚,目前常用的是32位pci。32位pci的数据传输率为133mb/s,大大高于isa。


pci总线的主要性能
(1)支持10台外设
(2)总线时钟频率33.3mhz/66mhz
(3)最大数据传输速率133mb/s
(4)时钟同步方式
(5)与cpu及时钟频率无关
(6)总线宽度32位(5v)/64位(3.3v)
(7)能自动识别外设

上一篇:vl局部总线

下一篇:mca