文档库 最新最全的文档下载
当前位置:文档库 › 基于PCI总线的视频采集卡驱动程序的设计与实现

基于PCI总线的视频采集卡驱动程序的设计与实现

基于PCI总线的视频采集卡驱动程序的设计与实现
基于PCI总线的视频采集卡驱动程序的设计与实现

第5卷 第10期 中 国 水 运 Vol.5 No.10 2007年 10月 China Water Transport October 2007

收稿日期:2007-8-4

作者简介:周敏均 (1983-) 杭州电子科技大学 自动化学院 研究生 (310012) 研究方向:检测技术与自动化装置

基于PCI 总线的视频采集卡驱动程序的设计与实现

周敏均 杨成忠 江加加

摘 要:本文介绍了基于PCI 总线的视频采集卡驱动程序的设计和实现。视频采集卡基于PCI 总线的设计更好地满足了高速大容量的数据传输需求;针对视频设备的内核流驱动的设计更方便了上层应用软件的开发。该视频采集卡驱动已经成功应用于视频监控系统中,有效地提高了视频监控系统的功效。 关键词:PCI 总线 视频采集卡 内核流驱动

中图分类号:TP311.131 文献标识码:A 文章编号:1006-7973(2007)10-0149-03

一、引言

随着计算机、网络、多媒体技术以及全球安防事业的迅猛发展,数字视频技术得到了长足地发展,视频采集卡的应用也越来越广泛。但是由于视频数据传输高速、大量的特点,传统的使用基于串口、并口或ISA 总线传输数据的方式已经不能满足其传输的需求。同时,由于其复杂性,现在各厂商都是自己提供采集卡的SDK,没有统一的界面,使得上层应用的开发和设备的使用非常不便,而基于内核流的驱动程序能够很好的解决这个问题,上层应用程序能够通过系统提供的统一接口访问底层硬件。当前,基于PCI 总线的视频采集卡以其强大而灵活的功能、高度的集成性成为主流产品。为此,本文设计了基于PCI 总线的视频采集卡,并开发了相应的基于内核流的驱动程序。

二、视频采集卡硬件系统

PCI 总线是近年来出现的一种高性能的局部总线,它理论上提供133MB/s 的传输速率,支持猝发式读写,具备完整的多总线主控能力,支持即插即用,很适合网络适配器、硬盘驱动器、全动态数字视频卡、图形卡及各类高速外设应用。PCI 总线规范十分复杂,其接口的实现比ISA、EISA 困难,目前实现PCI 接口的有效方案有使用可编程逻辑器件和使用专门芯片两种。 图1 视频监控系统总体框图

在高分辨率图像实时处理中数据量相当庞大,视频采集卡必须不间断地采集视频序列中的每帧图像,同时在采集下一帧视频数据时必须把这些数据传入PC 系统。如果不能及时地处理第一帧数据,使得处理时间超过相邻两帧之间的间

隔时间,则会出现数据丢失现象。该视频采集卡采用SAA7130HL 视频采集芯片将模

拟视频信号转化为数字图像数据,再通过PCI 总线接口芯片PCI6150将数字图像

数据读入计算机,最后通过应用程序将图像显示出来。这个设计能充分满足视频传输及处理的需求。视频监控系统总体框图如图1。

三、视频采集卡驱动程序设计

为了支持新的业务和新的PC 外部设备类型对驱动程序的开发,微软推出了用于Windows2000和Windows NT 的统一的WDM(Windows Driver Model,简称WDM)驱动程序模型。而内核流驱动是针对多媒体设备的驱动模型,它是WDM 重要组成部分。它的存在将使上层应用程序的开发更加方便,应用程序通过系统提供的统一接口即可使用设备。

1.驱动工作原理

内核流驱动是一种内核模式驱动。它的工作原理为: (1)当视频采集卡插入PCI 插槽,系统的PnP 管理器检测到和内核流驱动匹配的视频设备时,便通过I/O 管理器向流类驱动(Stream class driver)发送设备的I/O 请求,如:对设备的初始化等。

(2)同时,流小驱动(stream minidriver)向流类驱动进行注册,告知流类驱动它是合法的,接着流类驱动把接收到的I/O 请求以SRB (流请求块)的形式发送给流小驱动。

(3)流小驱动得到SRB 后,将其进行解析并把得到的信息(如对设备进行初始化)通过回调函数返送给流类驱动,流类驱动便根据流小驱动返送的信息创建相应的功能设备对象、DMA 适配器以及分配缓存等。

(4)建立video capture、preview 和VBI 输出pin 的过滤器,以及输入资源选择的crossbar。

(5)当驱动得到视频流数据后一路直接送到显卡进行显示,另一路则进行视频压缩保存起来。

2.驱动的初始化

150 中 国 水 运 第5卷

内核流驱动进行初始化时,操作系统首先调用DriverEntry 程序去初始化小驱动。小驱动向类驱动注册时,小驱动会调用StreamClassRegisterMinidriver 函数传递一个HW_INITIALIZATION_DATA 的结构给流类驱动。而流类驱动通过调用该结构的信息对流小驱动进行初始化,其中包含一些回调函数和DMA 配置等。HW_INITIALIZA TION_DATA 结构如下:

typedef struct HW_INITIALIZATION_DATA {

ULONG HwInitializationDataSize; PHW_INTERRUPT HwInterrupt; PHW_RECEIVE_DEVICE_SRB HwReceivePacket;

PHW_CANCEL_SRB HwCancelPacket; PHW_REQUEST_TIMEOUT_HANDLER HwRequestTimeoutHandler;

ULONG DeviceExtensionSize; ULONG PerRequestExtensionSize; ULONG PerStreamExtensionSize; ULONG FilterInstanceExtensionSize; BOOLEAN BusMasterDMA; BOOLEAN Dma24BitAddresses; ULONG BufferAlignment;

BOOLEAN TurnOffSynchronization; ULONG DmaBufferSize; ULONG Reserved[2];

} HW_INITIALIZATION_DATA, *PHW_INITIALIZATI ON_DATA;

然后,类驱动使用StrMiniReceiveDevicePacket 通知流小驱动初始化设备。它发送SRB_INITIALIZE_DEVICE 请求,同时传送包含所需硬件信息的PROT_CONFIGURAT ION_ INFORMATION 结构给流小驱动。当完成此请求后,类驱动使用StrMiniReceiveDevicePacket 发送SRB_GET_STREAM _INFO 请求去向流小驱动得到所有流信息及每个流的回调函数。一旦类驱动完成流数据的处理便使用StrMi niReceive DevicePacket 去发送SRB_INITIAL IZATION_ COMPLETE 请求。这时,流小驱动便准备开始处理每个流请求。

3.流请求块(SRB)处理

流请求块是流小驱动对命令和信息控制的最基本机制。通过它流小驱动可以对其某个特定功能进行访问。操作系统把视频采集卡的I/O 请求分发给流类驱动,流类驱动再把这些请求以流请求块的形式传递给流小驱动。当流小驱动解析出相关硬件的信息再用派遣函数返还给流类驱动,以此流类驱动完成相应的硬件操作。

总的来说,流小驱动和每个流都可能接收I/O 请求。小驱动必须提供StrMiniReceiveDevicePacket 程序去处理各种设备请求。每个流都必须有两个程序去处理I/O 请求:数据请求和控制请求。类驱动通过调用数据请求回调函数Str-

MiniReceiveStreamDataPacket 去处理所有的流读写请求。所有其他的流请求通过strMiniReceiveStream ControlPacket 去传送。假如类驱动正在处理小驱动的同步操作,它便把这些请求排队,一次次地把这些请求分发给小驱动。类驱动维持着三个分离的队列,也就是流请求块的请求类型可分为三类:

(1)设备请求 (2)流控制请求 (3)流数据请求

流小驱动针对这三类请求有相应的例程,如表1:

请求类型 例程

例程变量的消息类型 设备请求 StreamClassDeviceNotification ReadyForNextDeviceRequest 流控制请求 StreamClassStreamNotification ReadyForNextStreamControlRequest 流数据请求

StreamClassStreamNotification

ReadyForNextStreamDataRequest

表1 流请求对应例程

例如当操作系统接收到的视频采集卡I/O 请求是对设备的初始化。它便把这个请求分发给流类驱动。流类驱动再把此设备请求以SRB_INITIALIZE_DEVICE 形式传递给流小驱动。由于SRB_INITIALIZE_DEVICE 带有视频卡初始化的信息,所以当流小驱动再把解析出来的信息返还给流类驱动时,就可以通过调用函数OnCreateAdapter()来创建设备的适配器完成设备的初始化。

流请求SRB_INITIALIZE_DEVICE 的处理流程如图2

图2 SRB_INITIALIZE_DEVICE 处理流程

4.流小驱动的控制

PnP 管理器检测到流小驱动支持的硬件适配器,然后管理器核查注册表去解析符号应用,同时把请求传送给I/O 子系统。I/O 子系统装载流小驱动,调用小驱动的DriverEntry 例程。在DriverEntry 例程中,将分配和初始化HW_INITIALIZATION_DATA 结构。根据DriverEntry 程序中的信息,一个文件对象将被创建。然后,流小驱动的DriverEntry 例程调用流类驱动的StreamClassRegiste rMinidriver 函数,同时把HW_INITIALIZATION_DATA 结

构作为参数传递给此函数。HW_INITIALIZATION_DATA 结构包含处理SRBs 的流小驱动函数的地址。这样流小驱动就能对类驱动发送的SRBs 做出反应。在初始化过程中,流类驱动调用在HW_INITIALIZATION_DATA 结构中指定的接收SRB_INITIALIZE_DEVICE 的函数。随后,流小驱动初始化硬件适配器。

第10期 周敏均等:基于PCI总线的视频采集卡驱动程序的设计与实现 151

流类驱动通过传送SRB_READ_DATA或者SRB_WR ITE_DATA命令给指定的函数从视频流发送或者接受数据。

四、结束语

本文在分析现有视频采集卡与视频驱动程序,以及阅读相关驱动程序开发资料的基础上,设计和开发了基于PCI总线的视频内核流驱动程序。这种设计的主要优点在于它能满足庞大的视频数据传输需求,并且使得上层应用程序的开发更加方便。该驱动程序已经成功应用于多路视频采集,取得了较好的效果,并具有比较强的可移植性。由于视频采集驱动是属于内核流驱动程序,所以它的调试工作是一个比较复杂烦琐的过程,本文采用了SoftIce和DriverMoniter调试工具。

参考文献

[1] Microsoft Corp.Windows 2000 DDK Documentation.

[M].Microsoft Corporation Press.2000.

[2] 周敬利.基于Windows内核流的视频采集卡驱动程序的设

计与实现.计算机工程与科学.2005.(27).

[3] Microsoft 2000DDK.Microsoft Press.http://www.microsoft.

com.1997.

[4] Microsoft XPDDK.Microsoft Press.http://www.microsoft.

com.2000.

Design and Implementation of the Video-Capture Card Driver

Based on PCI Bus

Zhou Minjun Yang Chengzhong Jiang Jiajia

Abstract:This paper describes the design and implementation of video-capture card based on PCI bus. The design of video-capture card based on PCI bus satisfies the requirement of high-speed and abundant data transmission; The design of kernel streaming driver for video device makes the development of internet application more convenient. The video-capture driver has been applied to the system of video surveillance successfully and improved the degree of the system of video surveillance effectively.

Key words:PCI bus video-capture card kernel streaming driver

PCI总线协议基础

PCI总线协议基础 PCI总线协议基础 PCI基本总线协议传输机制是猝发成组数据传输。一个分组由一个地址相位和一个或多个数据相位组成。 1.PCI总线的传输控制 PCI总线上所有的数据传输基本上都是由以下三条信号线控制的: FRAME#:由主设备驱动,说明一次数据传输周期的开始和结束。 IRDY#:由主设备驱动,表示主设备已经作好传送数据的准备。 TRDY#:由从设备驱动,表示从设备已经作好传送数据的准备。 当数据有效时,数据源设备需要无条件设置xRDY#,接收方可以在适当的时间发出xRDY#信号。FRAME#信号有效后的第一个时钟前沿是地址相位的开始,此时,开始传送地址信息和总线命令,下一个时钟前沿进入一个或多个数据相位。每当IRDY#和TRDY#同时有效时,所对应的时钟前沿就使数据在主从设备之间传送。在此期间,可由主设备或从设备分别利用IRDY#和TRDY#的无效而插入等待周期。 一旦主设备设置了IRDY#,将不能再改变IRDY#和FRAME#,直到当前的数据相位完成为止,而此期间不管TRDY#的状态是否发生变化。一旦从设备设置了TRDY#,就不能改变DEVSEL#、TRDY#或STOP#,直到当前的数据相位完成为止。也就是说,只要数据传输已经开始,那么在当前数据相位结束之前,不管是主设备还是从设备都不能撤消命令,必须完成数据传输。 最后一次数据传输时(可能紧接地址相位之后),主设备应撤消FRAME#信号而建立IRDY#,表明主设备已作好了最后一次数据传输的准备。当从设备发出TRDY#信号,表明最后一次数据传输已经完成,接口转入空闲状态,此时FRAME#和IRDY#均被撤消。 对于PCI总线的传输,可总结出以下几条规则: ①FRAME#和IRDY#决定总线的忙/闲状态。当其中一个有效时,表示总线忙;两个都无效时,总线进入空闲状态。 ②一旦FRAME#被置为无效,在同一传输期间不能重新置为有效。 ③除非设置IRDY#,一般情况下不能设置FRAME#无效(在FRAME#无效后的第一个时钟沿IRDY#必须保持有效)。 ④一旦主设备已使IRDY#有效,在当前数据相位完成前,不能改变IRDY#或FRAME#的状态。 ⑤在完成最后一个数据相位之后的时钟周期主设备必须使IRDY#无效。 2.PCI总线的寻址 PcI总线定义了三种物理地址空间:内存地址空间、I/O地址空间及配置地址空间,前两种为通常意义的地址空间,第三种配置地址空间用以支持PCI的硬件配置。 PCI总线的地址译码是分散的,每个设备都有自己的地址译码逻辑,从而省去了中央译码逻辑。PCl支持对地址的正向译码和负向译码,所谓正向译码,是指总线上每个设备都监视地址总线上的访问地址,判断是否落在自己的地址范围内,译码速度较快。所谓负向译码,是指要接受未被其他设备在正向译码中接受的所有访问,因此,此种译码方式只能由总线上的一个设备来实现(一般是连接

PCI总线的发展

PCI总线发展历史 PCI总线是计算机的I/O总线,在90年代时替代了ISA总线,成为计算机中的局部总线一直使用至今。PCI总线在发展的过程中,不断自我革新,满足时代的需求。在短短10多年间,PCI总线历经了PCI、PCI-X以及PCI-E的演变历程。传统PCI总线具有32位数据宽度,33MHz的时钟频率,能够支持设备的即插即用、自动识别与配置。与ISA总线相比,不仅在性能上提升了一大截,而且在资源管理上也有质的变化。更为重要的是,ISA总线本质上是处理器总线的延伸,而PCI总线是与处理器总线无关的总线标准,不受制于处理器的类别,数据的传输需要通过桥设备进行转发。因此,ISA总线通常称为第一代I/O总线,而PCI 是第二代I/O总线标准,这是一种技术发展的跨越。随着时代的发展,传统PCI 总线的性能得到了挑战,越来越不能满足外设的需求。最为典型的是图像传输受到了PCI性能瓶颈的影响,因此,几年前的显卡设备都脱离PCI总线,单立门户形成了一个新的总线标准AGP,这显然是对PCI总线性能的一种否定。技术在不断发展,对高速传输需求的IO设备越来越多,Gbps网络、光纤通道都对传统P CI的性能提出了质疑,传统PCI总线已经不能满足此类应用的需求了。所以,在1999年提出了PCI-X协议规范,该总线具有64位总线宽度,最高能够达到1 33MHz的时钟频率,在性能上较PCI总线有了一个大的跨越。但是,PCI-X总线仍然是一种并行总线,其存在并行传输过程中的数据相位问题,因此,当PCI-X 频率达到一定程度之后,总线带载能力就变的相当差。在133MHz总线频率时,P CI-X总线只能带一个PCI设备。PCI总线的发展遇到了并行总线的技术瓶颈,因此,PCI总线需要做总线结构的根本性变革。历史的车轮进入21世纪之后提出了PCI-Express总线,其将并行总线演变成了点对点的串行总线,在性能可扩展性方面跨入了一个新的台阶。所以,PCI-Express总线也可以称之为计算机的第三代I/O总线。 PCI-X对PCI总线的改进 PCI-X总线经常应用于服务器设备上,其不仅仅对传统PCI总线的数据宽度和总线频率进行了升级,更为重要的是对传统PCI总线协议进行了改进,提高了总线效率。下面对PCI-X总线的主要改进点进行探讨。 PCI-X总线最高能够达到133MHz的时钟频率,其得益于PCI-X总线采用了寄存器-寄存器的信号传输方式,而传统PCI总线对信号的接收与译码放在了一个时钟周期内,这种方法也称为即时协议。即时协议的优点在于一定程度上减少时钟脉冲个数;缺点在于难于提高时钟频率(译码电路会存在时间延迟)。PCI-X 总线首先对信号进行锁存,在下一个时钟在对信号进行译码,这样的处理可以提高时钟频率。这种处理的方法本质上就是组合逻辑电路拆分的思想。这种拆分在

PCI总线标准协议(中文版)

8.4.2 PCI总线信号定义 在一个PCI应用系统中,如果某设备取得了总线控制权,就称其为"主设备";而被主设备选中以进行通信的设备称为"从设备"或"目标节点''。对于相应的接口信号线,通常分为必备的和可选的两大类,为了进行数据处理、寻址、接口控制、仲裁等系统功能, PCI接口要求作为目标的设备至少需要47条引脚,若作为主设备则需要49条引脚。下面对主设备与目标设备综合考虑,并按功能分组将这些信号表示在图8.19中。其中,必要的引脚在左边,任选的引脚在右边。 一.信号类型说明 图8.19 PCI引脚示图 为了叙述方便,将PCI信号按数传方向及驱动特性划分为五种类型,各种类型的规定 如下: in:输入信号。 out:输出驱动信号。 t/s:表示双向三态输入/输出驱动信号。 s/t/s:持续三态(Sustained Tri-State),表示持续的并且低电平有效的三态信号。在某一时刻只能属于一个主设备并被其驱动。这种信号从有效变为浮空(高阻状态)之前必须保证使其具有至少一个时钟周期的高电平状态。另一主设备要想驱动它,至少要等到该信号的原有驱动者将其释放(变为三态)一个时钟周期之后才能开始。同时,如果此信号处于持续的非驱动状态时,在有新的主设备驱动它之前应采取上拉措施,并且该措施必须由中央资源提供。 o/d:漏极开路(Open Drain)可作线或形势允许多个设备共同使用, 二. PCI总线信号定义 PCI总线的信号线共有100根,下面按功能分组进行说明。

1.系统引线 CLK in:时钟输入,为所有PCI上的接口传送提供时序。其最高频率可达66MHz,最低频率一般为0 (DC),这一频率也称为PCI的工作频率。对于PCI的其他信号,除、、、之外,其余信号都在CLK的上升沿有效(或采样)。 in:复位,用来使PCI专用的特性寄存器和定时器相关的信号恢复规定的初始状况。每当复位时, PCI的全部输出信号一般都应驱动到第三态。 2.地址和数据引线 AD0~AD31 t/s:地址、数据多路复用的输入/输出信号。在有效时,是地址周期;在 和同时有效时,是数据周期。一个PCI总线的传输中包含了一个地址信号周期和一个(或多个)数据周期。PCI总线支持突发方式的读写功能。 地址周期为一个时钟周期,在该周期中AD0~AD31线上含有一个32位的物理地址。对于I/O操作,它是一个字节地址;若是存储器操作和配置操作,则是双字地址。 在数据周期, AD0~AD7为最低字节, AD24~AD31为最高字节。当有效时,表示写数据稳 定有效,有效表示读数据稳定有效。 ~3 t/s:总线命令和字节使能多路复用信号线。在地址周期内,这四条线上传输的是总线命令;在数据周期内,传输的是字节使能信号,用来表示在整个数据期中, AD0~AD31上哪些字节为有效数据。 3.接口控制信号 s/t / s:帧周期信号。由当前主设备驱动,表示一次访问的开始和持续时间。 无效时,是传输的最后一个数据周期。 s / t / s:主设备准备好信号。该信号有效表明发起本次传输的设备(主设备)能够完成一个 数据期。它要与配合使用,当这两者同时有效时,才能进行完整的数据传输,否则即为等待周期。在写周期,该信号有效时,表示有效的数据信号已在AD0~AD31中建立;在读周期,该信号有效时,表示主设备已做好接收数据的准备。 s/t/s:从设备准备好信号。该信号有效表示从设备已做好完成当前数据传输的准备工作, 此时可进行相应的数据传输。同样,该信号要与配合使用,这两者同时有效数据才能进行完整传输。在写周期内该信号有效表示从设备已做好了接收数据的准备。在读周期内,该信号有效表示有效数据已被送入AD0~AD31中,同理, 和的任何一个无效时都为等待周期。 s / t / s:停止数据传送信号,该信号由从设备发出。当它有效时,表示从设备请 求主设备终止当前的数据传送。 s / t / s:锁定信号。是由PCI总线上发起数据传输的设备控制的,如果有几个不同的设备在 使用总线,但对信号的控制权只属于一个主设备(由信号标定)。当信号有效时,表示驱动它的设备所进行的操作可能需要多个传输才能完成,如果对某一设备具有可执行的存储器,那么它必须能实现锁定,以便实现主设备对该存储器的完全独占性访问。对于支持 锁定的目标设备,必须能提供一个互斥访问块,且该块不能小于16 个字节。连接系统存储器的主桥路也必须使用。 IDSEL in:初始化设备选择信号。在参数配置读写传输期间,用作片选信号。 s/t/s:设备选择信号,由从设备驱动,该信号有效时,表示驱动它的设备已成为当前访问的从设备。它有效表明总线上的某一设备已被选中。 4.仲裁信号 t/s:总线请求信号。该信号一旦有效即表示驱动它的设备要求使用总线。它是一个点到点的 信号线,任何主设备都应有自己的信号。 t /s:总线允许信号。用来向申请占用总线的设备表示其请求已获批准。这也是一 个点到点的

PCI总线原理简介

PCI总线原理简介 数据总线32 位,可扩充到64 位。可进行突发(burst)式传输。总线操作与处理器-存储器子系统操作并行。总线时钟频率33MHZ 或66MHZ,最高传输 率可达528MB/S。中央集中式总线仲裁全自动配置、资源分配、PCI 卡内有设备信息寄存器组为系统提供卡的信息,可实现即插即用(PNP)。PCI 总线规范独立于微处理器,通用性好。PCI 设备可以完全作为主控设备控制总线。PCI 总线引线:高密度接插件,分基本插座(32 位)及扩充插座(64 位)。PCI 总线引线示意图 PCI 配置空间:PCI 设备内有一个256B 的配置存储器,为系统提供本设备的信息及申请系统存储空间所必需的参数。PCI 主要设备信息:制造商标识(Vendor ID):PCI 组织分配给厂家。设备标识(Device ID):按产品分类给本卡的编号。分类码(Class Code):本卡功能的分类码,如图卡、显示卡、解压卡等。申请存储器空间:PCI 卡内有存储器、以存储器编址的寄存器和I/O 空间,为使驱动程序和应用程序能访问它们,需申请一段存储区域将它们定位。配置空间的基地址寄存器是专门用于申请存储器空间的。PCI 配置空间:申请 I/O 空间:配置空间的基地址寄存器也用来进行系统I/O 空间的申请。中断资源申请:配置空间中的中断引脚和中断线用来向系统申请中断资源。PCI 配置空间分配 PCI 总线访问:以读操作为例。PCI 总线是半同步方式操作,信号是否有效由时钟CLK 的上升边采样来确定。主设备启动总线周期:首先发出FRAME# 信号,表明一次访问(总线周期)开始,地址及操作命令字信号出现在AD 与

PCI总线信号定义

PCI总线信号定义/PCI总线详解(2008-11-04 12:22:20) 标签:pci总线it分类:嵌入式技术PCI局部总线简介: PCI的含义为外部部件互连(Peripheral Component Interconnect)。 1991年,Intel公司对PCI局部总线进行了定义,并与IBM、Compaq、AST、HP、NEC 等100多家公司联合共谋计算机总线的发展大业,于是,PCI局部总线标准1.0版本技术规范于1992年6月22日推出。目前,最新的2.2修改版于1998年12月18日完成,1999年2月发布。 PCI局部总线是一种具有多路地址线和数据线的高性能32/64位总线。虽然在PC领域,PCI已经逐渐被更高性能的PCI-Express总线替代,但在嵌入式领域PCI总线依然应用广泛,且其性能足够满足绝大多数嵌入式系统的需求。 PCI总线信号定义 在一个PCI应用系统中,如果某设备取得了总线的控制权,就称其为“主设备”,而被主设备选中以进行通信的设备称为“从设备”或“目标设备”。对于相应的接口信号线,通常分为必备的和可选的两大类。如果只作为目标设备,至少需要47条接口信号线,若作为主设备,则需要49条。下面对主设备和目标设备综合考虑,并按功能分组将这些信号表示于图中。 下面对PCI信号的类型规定说明: IN 表示输入,是标准的只作输入的信号。 OUT 表示输出,是标准的图腾柱式输出驱动信号。 T/S 表示双向的三态输入/输出信号。 O/D 表示漏极开路,以线或形式允许多个设备共同驱动和分享。 S/T/S 表示持续的并且低电平有效的三态信号。在某一时刻只能属于一个主设备并被其驱动。

PCI总线信号说明

PCI總線信號定義 PCI局部總線的信號線共有100根,下面按功能分組進行說明。 1.CLK IN: 系統時鐘信號,對於所有的PCI設備都是輸入信號。其頻率最高可達33MHz,最低頻率一般為0Hz(DC),這一頻率也稱為PCI的工作頻率。對於PCI的其它信號,除RST#﹑IRQB#﹑IRQC#﹑IRQD#之外,其余信號都在CLK的上升沿有效(或采樣)。 2.RST# IN: 用來使PCI專用的特性寄存器和定序器相關的信號恢復規定的初始狀態。至PCI定序器之外的設備復位後如何變化,不屬於本說明的範圍。但必要的PCI 配置寄存器,其復位狀態是明確規定的。每當復位時,PCI的全部輸出信號一般都應驅動到第三態。SERR#信號為高陰狀態,SBD#和SDONE可驅動到低電平(如果未提供三態輸出)。REQ#和GNT# 必須同時驅動到第三態,不能在復位期間為高或為低。為防止AD﹑C/BE#及PAR在復位期產浮動,可由中心設備將它們驅動到邏輯低,但不能驅動為高電平。RST#和CLK可以不同步,但要保證其撤消邊沿沒有反彈。當設備請求引導系統時,將響應復位,復位後響應系統引導。 3.AD〔31: : 00〕T/S 它們是地址﹑數據多路復用的輸入/輸出信號。在FRAME#有效時,是地址期;在IRDY#和TRDY#同時有效時,是數據期。一個PCI總線的傳輸中包含了一個地址信號期和接著的一個(或無限個)數據期。PCI總線支持突發方式的讀寫功能。 地址期為一個時鐘周期,該周期中AD〔31: : 00〕線上含有一物理地(32位)。 對I/O操作,它是一個字節地址;若是存儲器操作和醳操作,則是雙字地址。 在數據期,AD〔07: : 00〕為最低字節,AD〔31: : 24〕為最高字節。當IRDY#有效時表示寫數據穩定有效,,而TRDY#有效時表示讀數據穩定有效。 4.C/BE〔3: : 0〕#T/S: 它們是總線命令和字節使能多路復用信號線。在地址期中,這四條線上傳輸的是總線命令;在數據期內,它們傳輸的是字節使能信號,用來表示在整個數據期中,AD〔31: : 00〕上哪些字節為有效數據。 5.FRAME# S/T/S: 幀周期信號。由當前主設備驅動,表示一次方問的開始和持續時間。FRAME#的有效預示著總線傳輸的開始;在其存在期間,意味著數據傳輸繼續進 行;FRAME#失效後,是傳輸的最後一個數據期。 6.IRDY# S/T/S: 主設備準備好信號。該信號的有效表明發起本次傳輸的設備能夠完成一個數據期。它要TRDY#配合使用,二者同時有效,數據方能完整傳輸,否則即為等待周期。在讀周期,該信號有效時,表示數據變量已在AD〔31: : 00〕中;在寫周期,

PCI总线接口引脚定义

由于M模式使用范围比较小,J模式使用起来控制比较复杂,一般使用C模式。所有模式 AD[31:0](Address and Data)地址和时钟复用,首先是一个地址段,后面跟着一个或多个数据段,支持突发模式的读写; C/BE[3:0]#(Bus Command and Byte Enables)总线命令和数据使能复用管脚,在AD 为地址线的时候作为总线命令,在AD为数据线的时候作为数据使能; DEVSEL#(Device Select)有效的时候表示当前设备被选中,作为输入端口; FRAME#(Cyclone Frame)由主设备驱动,用来表示当前设备已经开始接入,总线开始传输数据。有效:传输数据。无效:完成最后一个数据的传输; GNT#(Grant)用来表示当前接入的设备已经被接受; IDSL(Initialization Device Select)在配置寄存器读写的时候用做片选信号; INTA#(Interrupt A)PCI中断请求; IRDY#(Initiator Ready)说明当前数据有效,可以并要完成传输; LOCK#(Lock)提示有自动操作,需要消耗若干个时钟来完成操作; PAR(Parity)作为AD和C/BE两部分总线的基偶校验,在传输地址的时候PAR要在地址传输完毕后一个时钟周期保持稳定。对于数据段,PAR要在IRDY#或者

TRDY#有效以后一个时钟周期保持稳定。一旦PAR数据有效,将保持有效到当前数据或地址段传输结束; PCLK(Clock)系统时钟,9054工作在33MHz; PERR#(Parity Error)用来报告奇偶校验错误,不包括特殊周期; PME#(Power Management Event)唤醒中断; REQ#(Request)请求信号,通知总线判决器,当前设备必须使用总线; RST#(Reset)系统复位; SERR#(System Error)用来报告特殊周期的奇偶校验错误和其他系统错误;STOP#(Stop)要求主系统,停止当前设备的数据传输; TRAY#(Target Ready)目标设备准备完毕,可以传输当前数据; BIGEND#(Big Endian Select) CCS#(Configuration Register Select)低有效的片选信号; EECS(Serial EEPROM Chip Select)选择串行EEPROM; EEDI/DDEO(Serial EEPROM Data In/ Serial EEPROM Data Out)控制串行EEPROM 读写数据; EESK(Serial Data Clock)EEPROM读写时钟; ENUM#(Enumeration)突发输出,用来表示一个使用PCI9054芯片的适配器刚刚从一个CPI总线通道里面加入或者移出; LCLK(Local Processor Clock)本地时钟输入; LEDon/LEDin LED控制; LFRAME#(PCI Buffered FRAME# Signal)指示PCI总线的状态; LINT#(Local Interrupt)本地总线中断。输入到9054,低有效,触发一个PCI中断。作为输出,等待到一个触发发生; LRESETo#(Local Bus Reset Out)当PCI9054芯片被复位以后,该管脚可以用来驱动其他芯片的RESET#信号; MDREQ#/MDPAF/EOT# MODE[1:0](Bus Mode)11:M模式;10:J模式;01:保留;00:C模式;TEST(Test Pin)芯片检测管脚,高为检测,低为工作,平时置低; USERi/BACK0#/LLOCKi# 复用管脚 USERo/DREQ0#/LLOCKo# 复用管脚 VDD电源 VSS地 C模式: ADS#(Address Strobe)说明地址有效,总线有新设备接入; BLAST#(Burst Last)该信号由本地总线控制,表示最后一个字符的传输; BREQi(Bus Request In)本地总线控制,数据从本地总线输入;

PCI总线特性及信号说明

PCI总线特性及信号说明 随着Windows图形用户界面的迅速发展,以及多媒体技术的广泛应用,要求系统具有高速图形处理和I/O 吞吐能力,这使原有的ISA、EISA总线远远不能适应而成为整个系统的主要瓶颈。为此,1991年下半年,Intel公司首先提出PCI概念,并联合IBM、Compaq、AST、HP Apple、NCR、DEC 等100多家公司共谋计算机总线发展大业,成立了PCI集团。 PCI:Peripheral Component Interconnect,外围设备互联总线,是一种局部总线,已成为局部总线的新标准,广泛用于当前高档微机、工作站,以及便携式微机。主要用于连接显示卡、网卡、声卡。PCI总线是32位同步复用总线。其地址和数据线引脚是AD31~AD0。PCI的工作频率为33MHz。 一 PCI总线特性 1.PCI总线特点 (1)传输速率高最大数据传输率为132MB/s,当数据宽度升级到64位,数据传输率可达264MB/s。这是其他总线难以比拟的。它大大缓解了数据I/O瓶颈,使高性能CPU的功能得以充分发挥,适应高速设备数据传输的需要。 (2)多总线共存采用PCI总线可在一个系统中让多种总线共存,容纳不同速度的设备一起工作。通过HOST-PCI桥接组件芯片,使CPU总线和PCI总线桥接;通过PCI-ISA/EISA桥接组件芯片,将PCI总线与ISA/EISA总线桥接,构成一个分层次的多总线系统。高速设备从ISA/EISA总线卸下来,移到PCI总线上,低速设备仍可挂在ISA/EISA总线上,继承原有资源,扩大了系统的兼容性。 (3)独立于CPU PCI总线不依附于某一具体处理器,即PCI总线支持多种处理器及将来发展的新处理器,在更改处理器品种时,更换相应的桥接组件即可。 (4)自动识别与配置外设用户使用方便。 (5)并行操作能力。 2.PCI总线的主要性能 (1)总线时钟频率33.3MHz/66.6MHz。 (2)总线宽度32位/64位。 (3)最大数据传输率132MB/s(264MB/s)。 (4)支持64位寻址。 (5)适应5V和3.3V电源环境。 二PCI总线信号 PCI总线标准所定义的信号线通常分成必需的和可选的两大类。其信号线总数为120条(包括电源、地、保留引脚等)。其中,必需信号线:主控设备49条,目标设备47条。可选信号线:51条(主要用于64位扩展、中断请求、高速缓存支持等)。 主设备是指取得了总线控制权的设备,而被主设备选中以进行数据交换的设备称为从设备或目标设备。作为主设备需要49条信号线,若作为目标设备,则需要47条信号线,可选的信号线有51条。利用这些信号线便可以传输数据、地址,实现接口控制、仲裁及系统的功能。PCI局部总线信号如下图所示。下面按功能分组进行说明。

PCI总线核心工作机制分析

1引言 计算机总线是计算机各部件之间进行信息传输的公共通道。计算机系统中广泛采用总线结构,其优点是系统成本低、组态灵活、维修方便。随着视频、数据应用的大量增加,系统中各部件之间的数据吞吐量激增,对总线的带宽提出了较高的要求,传统的总线如ISA、EISA由于传输效率低下,显然不敷使用,正是基于这种背景,INTEL公司联合IBM等多家公司于1993年推出了PC局部总线标准--PCI 局部总线规范1.0,迄今为止,该标准已经演变到2.2版。 PCI局部总线因其所具有的与传统总线截然不同的突出优点,而获得极强的生命力。其最突出的优势在于: 高带宽,传输速率可高达 64bitx66M/s=528Mb/s; 高传输效率,支持突发同步传输,且传输延时低,可预测; 支持动态配置,便于系统扩展,避免系统资源冲突; 支持多总线,平台无关,即不依附于任何特定CPU,但又能为任何高性能 CPU所用; 在以下的论述中,将会看到PCI局部总线是采用何种机制,从而取得上述领先优势。 2 PCI典型系统构成要素、寻址方式及总线信号定义、信号驱动规则 2.1 PCI典型系统构成要素、寻址方式

í?1 PCI典型应用系统构成要素 一个典型的PCI应用系统总是包含一个主中央处理单元(HOST CPU)、内存(主要是各种类型的DRAM)、主桥及内存控制器(HOST/PCI Bridge and Memory Controller)、PCI外设或资源(即PCI Master or Target,能够申请并拥有PCI总线使用权,并发起PCI总线传输的PCI外设为PCI Master,响应PCI Master 访问的PCI外设为PCI Target)。为了提高主CPU对内存的访问效率,系统中往往还配备了高速缓存(即CACHE。所谓高速缓存,实际上就是容量小、访问速度快的内存;高速缓存相当于内存中经常被访问到的部分内存的映像,当系统中的部件访问内存时,首先要监听,即看看当前要访问的内存在高速缓存中是否有映像,如果有,则称之为命中,访问只需要对高速缓存进行即可;否则为不命中,对主存的访问照常进行)。此外,为了扩充PCI外设,可能有多于一条的总线,这时就要引入PCI/PCI 桥,用于两条PCI总线之间的连接,桥在实际的总线传输过程中既可以充当Target也可以充当Master。如果系统要兼容传统外设,如ISA 或EISA外设,就有必要引入PCI/ISA 或PCI/EISA桥,用于PCI总线与传统总线ISA or EISA 的连接。所谓桥,实际上相当于不同总线之间的“翻译”,桥存在的必要性是,不同总线上的外设之间要互相利用彼此的资源,它们之间存在互动。当然,PCI总线中还少不了中央资源,或

第三章 PCI总线练习题

第三章PCI总线练习题 一、填空题: 1.PCI总线的工作环境电压为。信号驱动采用方式。总线驱动器的指标用来定义。扩展卡有两种形式,PCI总线的信号分为必备信号和可选信号。其中必备信号有、、、、等5类。 2. 是指通过仲裁获得总线控制权的设备。PCI总线操作的命令共有种。其中中断应答命令中寻址采用方式。中断周期是周期。任何一命令都具有和两部分组成。特殊周期命令一般有个时钟周期 3.PCI总线传输中基本由、、三条信号线控制。三种物理地址空间分别是、、。一个PCI设备是否被选中是由来表示的。PCI配置访问的实质是访问。配置空间的大小为,分为和两部分,PCI仲裁的方法。 4. 在PCI配置的分类代码寄存器中,如果0BH段为(0000 0101B),0AH段为(0000 0001B),请问该设备为。在PCI总线的配置空间的头标区,偏移地址是0EH时,则寻得寄存器为。中断引脚寄存器的偏移地址是,分类代码寄存器的偏移地址是。 二、选择题: 1.关于PCI总线,下列说法正确的是() A:首先实现了即插即用(PnP)B:首先采用了总线分时复用的技术 C:PCI总线是一种不依附于某个具体处理器的局部总线 D:PCI总线采用入射波方式进行信号驱动,所以各管脚的长度均有严格的规定 E:CPU总线和PCI总线之间的桥路称之为“南桥”,为了解决数据船速的速度匹配问题2.PCI总线在访问I/O中,如果AD[1:0]和C/BE[3:0]依次为000110,则此时()有效. A:C/BE 3# B:C/BE 2# C:C/BE 1# D:C/BE 0# E:属于非法组合,均无效3.PCI总线I/O地址的组合中,其中AD[1:0]和C/BE[3:0]的电平依次排列如下,其中属于合法有效的是() A:001100 B:101011 C:010001 D:100010 E:110011 4.关于PCI总线的信号,说法正确的是() A:所有信号均在CLK信号的上升沿有效 B:一旦PAR信号有效,便一直维持直到数据相位完成之后的一个周期为止。 C:当C/BE[3:0]# 信号线上为高电平时,表示此时是命令,当为低电平时,表示是字节使能信号 D:从本质上讲,在进行数据传输或交易时IRDY和TRDY信号是一对握手信号。 E:对于任何一个PCI设备,所需的最少信号为47条 5.关于PCI总线的地址,说法正确的是() A:PCI的物理地址与其它总线一样,是由内存地址空间和I/O地址组成。 B:配置读/写命令和存储器读/写命令都是对PCI的地址空间进行读写 C:任何一个命令都应包含目标地址,否则便不能寻址从而无法操作 D:任何一个命令都应由地址相位和数据相位组成 E:中断应答命令的地址存在回送时的中断向量中 6.关于PCI总线说法正确的是() A:PCI总线的基本传输机制是突发传输,它可以对PCI所有物理空间进行访问。 B:因PCI的时钟周期固定,所以每个信号相对于总线时钟前沿的建立和保持时间固定C:PCI总线上所有数据传输基本上都是由FRAME、IRDY、TRDY信号线控制

PCI总线的组成结构

PCI总线的组成结构 如上文所述,PCI总线作为处理器系统的局部总线,是处理器系统的一个组成部件,讲述PCI总线的组成结构不能离开处理器系统这个大环境。在一个处理器系统中,与PCI总线相关的模块如图1?1所示。 如图1?1所示在一个处理器系统中,与PCI总线相关的模块包括,HOST主桥、PCI总线、PCI桥和PCI设备。PCI总线由HOST主桥和PCI桥推出,HOST主桥与主存储器控制器在同一级总线上,PCI设备可以方便地通过HOST主桥访问主存储器,即进行DMA操作。 值得注意的是,PCI设备的DMA操作需要与处理器系统的Cache进行一致性操作,当PCI设备通过HOST主桥访问主存储器时,Cache一致性模块将进行地址监听,并根据监听的结果改变Cache的状态。 在一些简单的处理器系统中,可能不含有PCI桥,此时所有PCI设备都是连接在HOST主桥推出的PCI总线上,此外在一些处理器系统中可能含有多个HOST主桥,如在图1?1所示的处理器系统中含有HOST主桥x和HOST主桥Y。 1.1.1HOST主桥HOST主桥是一个很特别的桥片,其主要功能是隔离处理器系统的存储器域与处理器系统的PCI总线域,管理PCI总线域,并完成处理器与PCI设备间的数据交换。处理器与PCI设备间的数据交换主要由处理器访问PCI设备的地址空间和PCI设备使用DMA机制访问主存储器这两部分组成。为简便起见,下文将处理器系统的存储器域简称为存储器域,而将处理器系统的PCI总线域称为PCI总线域,存储器域和PCI总线域的详细介绍见第 2.1 节。值得注意的是,在一个处理器系统中,有几个HOST主桥,就有几个PCI 总线域。

PCI总线配置与应用资料

这篇文章是进行VxWorks下PCI驱动开发的基础,故将其放在首位。(当然更首位的是您有一定的Vxworks 使用和开发经验)主要介绍PCI总线配置空间,如何查看和读取PCI配置相关信息,最后有VxWorks下相关的示例代码。 关键字: PCI总线vxworks PCI配置空间内存映射PlxPCI9056 我把个人认为比较重要的地方:用粗体和蓝色进行了标识。 如果您对文章有异议,请提出宝贵意见,您的名字和意见,将出现在下面! 专用术语解释: PCI:Peripheral Component Interconnect的缩写,一种由英特尔(Intel)公司1991年推出的用于定义局部总线的标准。 POST:Power On Self Test的缩写,即上电自检,接通微机的电源后,系统将执行一个自我检查的例行程序,是BIOS功能的一部分。 1 引言 在众多的实时操作系统(RTOS)中,美国WindRiver公司的嵌入式多任务VxWorks实时操作系统是目前世界上用户数量最大的实时操作系统.已成功应用于航空航天、武器控制、舰船、通信、科学研究等领域,如在美国的火星探测器、爱国者导弹上均使用了VxWorks实时操作系统。当前在我国该操作系统也占有较大的市场分额。VxWorks操作系统专门对PCI设备提供支持,包括PCI总线驱动和一套PCI支持函数。配置总线上的设备还与硬件的体系结构和BSP支持程度相关。本文结合PCI原理。谈谈实际使用中的经验与体会。(上面的是中国的客套话) 2 PCI总线架构 2.1典型架构 在典型的PCI总线系统架构中.处理器、高速缓存和内存子系统通过PCI桥连接至JJPCI总线。桥提供一种高速通道使得处理器可以直接访问PCI设备。还提供高带宽的通道允许PCI直接访问主存。桥也包含了可选择的功能,比如总线仲裁和热插拔。 2.2总线号、设备号、功能号 PCI总线可以通过桥芯片级连.按与CPU总线所隔的桥数目和同一层总线的扫描顺序,从0开始依次编号,扩展最多N256,0—256就是总线号;在指定的局部总线上.按硬件扫描顺序从O开始依次编号,扩展最多到32。0~32就是设备号;在一个多功能PCI设备上,最多可以实现8种功能,按设备上配置存储区的顺序从0开始依次编号,称其为功能号,一般的设备只有一个功能。这三个号组合起来就可确定唯一的一个PCI设备。以及该设备上的某项功能。通过这三个参数就可操作PCI设备。 3 PCI配置空间

PCI总线命令

PCI总线命令 总线命令是由通过仲裁获得总线控制权的主设备发给从设备的,说明当前传输事务的类型。总线命令出现于地址相位的c/BE#[3~0]#线上并被译码。这里所说的从设备,是指在c/BE#[3~0]上出现命令的同时被AD[31~00]线上的地址选中的设备。 表9.4给出了总线命令编码及类型说明,命令编码中的1表示高电平,0表示低电平。 下面对总线命令作简要说明: ①中断应答命令实际是让PCI总线运行一个中断响应周期,获取提出中断请求的设备的中断向量。注意到8259A的中断响应为双周期,因此,桥电路应把处理器的双周期格式变换成PCI上的单周期格式(将处理器送出的第一个中断应答信号丢掉即可)。 ②特殊周期命令为PCI提供了一个简单的信息广播机制,可用来报告CPU的状态,当需要进行PCI设备间的边带通信时,它还可替代物理信号。特殊周期不包含目标地址,以便发给所有的设备。每个接收设备自行确定广播信息是否适合自己。 ③I/O读命令用来从一个映射到I/O地址空间的设备读取数据。AD[31~00]上提供字节地址,全部32位必须完全译码,字节允许信号说明传送数据的宽度,并且必须和字节地址相对应。 ④保留命令是为了将来的用途而保留的。 ⑤I/0写命令用来向一个映射到I/O地址空间的设备写入数据。和I/O读命令一样,所有的32位必须译码,字节允许信号说明此次传送数据的宽度,并且必须和字节地址保持一致。 ⑥存储器读命令用来从一个映射到存储器地址空间的设备读取数据。如果从设备能保证无副作用产生,则它可以为该命令进行预先读取。但从设备必须保证本次PCI传输之后保存于临时缓冲区中的数据的一致性(包括数据次序)。在任何同步操作(如修改I/0状态寄存器或存储器标志)通过此存取路径之前,这个缓冲区必须保持无效。 ⑦存储器写命令用来向一个映射到存储器地址空间的设备写入数据。如果从设备返回“准备好”信号,表明它已经准备对所涉及的数据的一致性(包括次序)管理。该命令的实现

PCI总线介绍

PCI总线介绍 1. PCI简介 PCI总线的历史 Intel公司对PCI总线进行了定义,并于1992年6月发布了PCI技术规范版本。随后,修改版于1993年4月发布,修改版于1995年一季度发布,最新的修改版于1998年12月完成,1999年2月发布。 PCI总线的特点 PCI全称为周边器件互连(Peripheral Component Interconnect)。其能够配合要求彼此间快速访问或快速访问系统存储器的适配器工作,也能让处理器以接近自身总线全速的速度访问适配器。 通过PCI总线的全部读写传送都可以使用突发传送(Burst Transfers)。突发传送的长度由主设备决定。在交易(Transaction)开始时,目标设备得到起始地址和交易类型,但没有传送长度。当主设备准备传送最后一个数据项时,主设备通知目标设备是否为最后一个数据项。当最后一个数据项传送后一次交易结束。 《 PCI总线的主要特点如下: ?独立于处理器。 ?每个PCI总线支持10个电气负载,即10个PCI设备。每个设备可包括8个PCI 功能。 ?技术规范提供对256个PCI总线的支持。 ?低功耗。 ?在全部读写传送中都可实现突发传送。因此,32位PCI总线支持132Mb/s的峰值传送速率;对于64位66MHz的PCI总线,峰值速度更高达528Mb/s。 ?全面支持PCI总线主设备,允许同级PCI总线访问和通过PCI-PCI与扩展总线桥访问主存储器和扩展总线设备。另外,PCI主设备能够访问驻留于总线级别较低的另 一个PCI总线上的目标。 ?隐式总线仲裁。 ?引脚较少,一个功能PCI目标设备约47个引脚,主设备也仅仅有49个引脚。 ?含交易完成性校验。 ?三类地址空间,包括存储器、I/O和配置地址空间。 ?> ?配置寄存器的全位级别规范,支持自动的设备检测与配置。 ?软件透明,在与PCI设备或面向扩展总线的同类设备通信时,软件驱动程序使用相同的命令集和状态定义。 ?有固定的连接器和插卡尺寸。 PCI的端接——反射波转换(Reflected-Wave Switching)

PCI 配置空间(中文)

PCI Configuration 名词说明: PCI为Peripheral Component Interconnect 的缩写,它是由Intel 所发表的另一种局部总线(另一种为VESA Local Bus),以配合Pentium 系列的微处理机为主,PCI 的最大特点在于它是和主机板不相关的接口,而且一台主机最多支持16 台使用PCI 接口的外围设备,这种总线架构还支持PowerPC 等机种,因此PCI 适配卡将可在不同工作平台上使用。 PCI 的数据总线(data bus) 是32 位或是64 位宽,工作频率为33 MHz,在64 位宽的总线之下,每个clock 可传送8 个字节,因此最高的数据传输速率为每秒33×8=264 MB。 而PCI的改良版称为PCI-X,采用六十四位的总线宽度与133MHz的传输速率,可以使得数据传输量为1.064GBps,而且可以使用于现有的PCI界面卡,PCI-X 初期以工作站或是服务器为主。 架构说明:

System(系统讯号): CLK: CLK讯号为一个输入讯号,其提供所有交易,包括总线仲裁等的时序,PCI装置的所有输入都是在CLK讯号的上升边缘被取样的.PCI总线上的所有动作都与PCI CLK讯号同步,其讯号频率的范围在0Mhz~33Mhz. RST(Reset Signal) 当重置讯号被驱动成低态时,它会强迫所有PCI组态缓存器,master及target 状态机器与输出驱动器回到初始化状态.

Device Identification Vendor ID(Offset 00h~01h) 记录PCI厂商识别码,如Intel ID是8086, VIA ID是1106,Ali ID是10B8. Device ID(Offset 02h~03h) 记录PCI装置识别码. 以BIOS观点来看,通常为了避掉某些装置与系统的兼容性常藉由判断Vendor ID 与Device ID 做不同的处理. Device Control

相关文档