PCI 配置空间中文Word格式文档下载.docx

上传人:b****5 文档编号:18700244 上传时间:2022-12-31 格式:DOCX 页数:27 大小:222.09KB
下载 相关 举报
PCI 配置空间中文Word格式文档下载.docx_第1页
第1页 / 共27页
PCI 配置空间中文Word格式文档下载.docx_第2页
第2页 / 共27页
PCI 配置空间中文Word格式文档下载.docx_第3页
第3页 / 共27页
PCI 配置空间中文Word格式文档下载.docx_第4页
第4页 / 共27页
PCI 配置空间中文Word格式文档下载.docx_第5页
第5页 / 共27页
点击查看更多>>
下载资源
资源描述

PCI 配置空间中文Word格式文档下载.docx

《PCI 配置空间中文Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《PCI 配置空间中文Word格式文档下载.docx(27页珍藏版)》请在冰豆网上搜索。

PCI 配置空间中文Word格式文档下载.docx

6VGA调色盘监管<

VGAPalleteSnoop>

.当此位被设定为1时,此位指示其与VGA兼容的装置去监管对VGAColorPallete<

调色盘>

缓存器的IO写入,在非VGA图形装置,重置会将此位设定为1,开启调色盘监管功能.

7同位错误响应<

ParityErrorResponse>

.当此位被设定为1时,装置可以报告同位错误<

以驱动PERR#到低组态的方式>

当清除为0时,装置不会在发生同位错误事件时,驱动PERR#到低组态,不过,它仍必须设定在其状态缓存器里的侦测到同位错误状态位.

8逐步驱动控制<

SteppingControl>

.控制装置是否可以进行地址/数据逐步驱动,从不使用逐步驱动的装置必须将此位以硬件接线设定为0,一定要使用逐步驱动的装置必须将此位以硬件接线设定为1,能够使用这两种方式的装置必须将此位实做成一个可读/可写的位,并且在重置后初始化为1.

9SERR#Enable.当设定为1时,装置可以驱动SERR#线,设定为0会关闭装置的SERR#输出驱动器,此位与位6<

同位错误报告>

必须被设定,以便报告地址同位错误

10FastBack-to-BackEnable.假如BusMaster可以在第一次和第二次交易中,与不同的Target进行FastBack-to-Back交易的话,此位可用来启动或关闭这功能,假如所有在BusMaster所在之PCI总线上的Target是可以进行FastBack-to-Back交易的话,组态软件可以设定此位来致能此Master进行FastBack-to-Back交易的能力,无需担心在第一次和第二次交易里是否寻址相同的Target..

15:

10保留

StatusRegister

状态缓存器<

Offset06h~07h>

位R/W功能

3:

0R保留

4R能力串行<

CapabilitiesList>

.它是一个硬件接线,只读位,假如

设定为1的话,则表示新能力串行指针缓存器必须在装置组态空间的Offset34h里实作,在这种情况,组态程序执行装置应该去读取指针缓存器,以决定装置是否支持额外的能力<

AGP,VPD等等>

并且使用它们各自的组态缓存器,去组态它们.

5R66Mhz能力<

66MhzCapable>

.

1=装置能够在66Mhz速度下执行.

0=只能在33Mhz速度下执行.

6R保留

7RFastBack-to-Back能力<

FastBack-to-BackCapable>

.此只读位

元表示Target装置是否支持不同Target的FastBack-to-Back交易,1=装置支持0=装置不支持.

8R/WMaster数据同位错误<

MasterDataParityError>

.此位只在

BusMaster里实作,并且只有在下列条件时才会被设定:

●报告的BusMaster是交易的initiator.

●<

在读取过程中>

它自己设定PERR#,或<

在写入过程中>

侦测到它被Target驱动到低态.

●在Master的指令缓存器里的同位错误响应位被设定为1.

10:

9R装置选择时序<

DeviceSelect<

DEVSEL#>

Timing>

它定义了Target装置最慢的DEVSEL#时序.

00b=Fast<

快速的>

01b=Medium<

中速的>

10b=Slow<

慢速的>

11b=Reserved<

保留>

11R/W发出TargetAbort讯号<

SignaledTargetAbort>

.每当Target装

置以TargetAbort终止交易时,Target就会设定此位,不能发出

TargetAbort讯号的装置不需要实作此位.

12R/W接收到TargetAbort讯号<

ReceivedTargetAbort>

.每当Bus

Master的交易是以目前寻址的Target发出的TargetAbort终止

的时候,它就会设定此位.

13R/W接收到MasterAbort讯号<

Master的交易是因MasterAbort而终止<

特殊周期除外>

的时候,

它就会设定此位.

14R/W发出系统错误讯号<

SignaledSystemError>

.每当装置在SERR#

在线产生一个错误讯息<

SystemError>

时,它应该设定此位.

15R/W侦测到同位错误<

DetectedParityError>

.每当装置侦测到一

个同位错误时,它应该设定此位<

实时同位错误报告功能指

令缓存器里的同位错误响应位关闭>

RevisionID<

Offset08h>

版本识别码缓存器

记录PCI装置版本序号,由装置制造商指派,假如制造商提供版本特定的驱动程序,这可确保OS加载正确的驱动程序.

ClassCode

类别码<

Offset09h~0Bh>

它是一个24位只读的缓存器,它被分成三个字段:

基本类别<

BaseClass>

子类别<

SubClass>

及程序界面<

ProgrammingInterface>

●较高的字节定义功能的基本类别.

●中间的字节定义在基本类别里的子类别.

●较低的字节定义程序界面.

当OS尝试找出一个可以配合类别驱动程序<

ClassDriver>

一起工作的装置时,此暂

存器是很有用的,如OS找到一个具有类别码03h,以及子类别码为01h的装置<

XGA>

则它必须提供与其兼容的显示配接卡驱动程序和该装置一起工作.

BaseClass00h

在类别码定义之前建立的装置.

00h00h所有非VGA装置.

00h01h与VGA兼容的装置.

BaseClass01h

大量储存媒体控制器.

子类别程序界面描述

00h00hSCSI控制器

01hxxhIDE控制器

02h00h软式磁盘驱动器控制器

03h00hIPI控制器

04h00hRAID控制器

05h00h其它大量储存媒体控制器

BaseClass02h

网络控制器.

00h00hEthernet控制器

01h00hTokenRing控制器

02h00hFDDI控制器

03h00hATM控制器

04h00hISDN控制器

80h00h其它网络控制器

BaseClass03h

显示控制器.

00h00h与VGA兼容的控制器,响应存地址

000A0000h到000BFFFh<

VideoFrameBuffer,

视讯画面缓冲区>

以及IO地址03B0h到03BBh,

及03C0h到03DFh,还有这些地址的所有别名

<

alias>

01h与8514兼容的控制器,响应IO地址02E8h以及它

的别名,02EAh和02EFH.

01h00hXGA控制器.

02h00h3D控制器.

80h00h其它显示控制器.

BaseClass04h

多媒体控制器.

00h00h视讯装置.

01h00h音效装置.

02h00h计算机装置.

80h00h其它多媒体装置.

BaseClass05h

存控制器.

00h00hRAM存控制器.

01h00hFlash<

快闪>

80h00h其它存控制器.

BaseClass06h

桥接器装置

00h00hHost/PCI桥接器

01h00hPCI/ISA桥接器

02h00hPCI/EISA桥接器

03h00hPCI/MicroChannel桥接器

04h00hPCI/PCI桥接器

01h相减解碼PCI-to-PCI桥接器,支持除正常PCI-to-

PCI功能之外的相减译码.

05h00hPCI/PCMCIA桥接器

06h00hPCI/NuBus桥接器

07h00hPCI/CardBus桥接器

08hxxhRACEway桥接器,RACEway是一个ANSI标准<

ANSI/VITA5-1994>

的交换架构<

SwitchingFabric>

界面位7:

1是保留,位0值为0表示桥接器是

在通透模式<

TransparentMode>

值为1表示它是再

端点模式<

End-PointMode>

80h00h其它桥接器型态.

BaseClass07h

简单的通讯控制器

00h00h通用的XT兼容序列控制器.

01h与16450兼容的序列控制器.

02h与16550兼容的序列控制器.

03h与16650兼容的序列控制器.

04h与16750兼容的序列控制器.

05h与16850兼容的序列控制器.

06h与16950兼容的序列控制器.

01h00h平行阜.

01h双向平行阜.

02h遵循ECP1.X规格的平行阜.

03hIEEE1284控制器.

FehIEEE1284Target装置<

非控制器>

02h00h多阜序列控制器.

03h00h通用调制解调器.

01h与Hayes兼容的调制解调器,与16450兼容的界面,BAR

0映像或IO映像<

如BAR型态所指示>

02h与Hayes兼容的调制解调器,与16550兼容的界面,BAR

03h与Hayes兼容的调制解调器,与16650兼容的界面,BAR

04h与Hayes兼容的调制解调器,与16750兼容的界面,BAR

80h00h其它通讯装置.

BaseClass08h

基本的系统周边装置.

00h00h通用8259可程序中断控制器<

Programmable

InterruptController,PIC>

01hISAPIC.

02hEISAPIC.

10hIOPIC.

20hIO<

x>

APIC中断控制器.

01h00h通用8237DMA控制器.

01hISADMA控制器.

02hEISADMA控制器.

02h00h通用8254定时器.

01hISA系统定时器.

02hEISA系统定时器.

03h00h通用RTC控制器.

01hISARTC控制器.

04h00h通用热插拔<

PCIHot-Plug>

80hooh其它系统外围装置.

BaseClass09h

输入装置.

00h00h键盘控制器.

01h00hDiditizer<

pen>

02h00h鼠标控制器.

03h00h扫瞄器控制器.

04h00h通用游戏连接阜控制器.

10h游戏连接阜控制器.具有程序界面=10h的游戏连

接阜控制器表示任何在这请求/指定IO地址空间

之功能里的基地址缓存器,在该IO空间的缓存器符合标准的"

传统"

游戏连接阜,在IO区域里位移为00h的字节其行为与传统游戏连接阜界面

相同,当读取此字节时,会传回游戏杆/手把<

Joystick/Gamepad>

的信息,在写入此字节时会启动RC定时器,位移为01h的字节是位移为00h

字节的别名,所有在IO区域里的其它字节是未指定的,且可以给制造商以自己特有的方式来使用.

80h00h其它输入控制器.

BaseClass0Ah

船屋系统.

00h00h通用的船乌系统.

80h00h其它型态的船乌系统.

BaseClass0Bh

处理器

BaseClass0Ch

序列总线控制器.

00h00hFirewire<

IEEE1394>

10h使用1394OpenHCI规格的IEEE1394.

01h00hACCESS.bus

02h00hSSA<

SerialStorageArchitecture,序列储存架

构>

03h00h使用UniversalHostController规格的USB

UniversalSerialBus,通用序列阜>

控制器.

10h使用OpenHostController规格的USB

80h无特定程序界面的USB控制器.

FEhUSB装置<

非主控器<

HostController>

>

04h00hFiber<

光纤>

Channel.

05h00hSMBus<

SystemManagementbus,系统管理汇流

排>

BaseClass0Dh

无线控制器

00h00h与iRDA兼容的控制器.

01h00h消费型IR控制器.

02h00hRF控制器.

80h00h其它型态无线控制器.

BaseClass0Eh

智能型IO控制器

00hxxh遵循I20架构规格的智能型IO控制器.

00h在相对地址<

Offsset>

40h的讯息FIFO.

BaseClass0Fh

卫星通讯控制器

01h00hTV<

电视>

02h00hAudio<

音效>

03h00hVoice<

语音>

04h00hData<

资料>

BaseClass10h

加密/解密<

Encryption/Decryption>

00h00h网络与运算加密/解密.

10h00h娱乐加密/解密.

80h00h其它加密/解密.

BaseClass11h

数据撷取与讯号处理控制器

00h00hDPIO模块

80h00h其它数据撷取与讯号处理控制器.

CacheLineSizeRegister

快取线大小缓存器<

Offset0Ch>

此读/写组态缓存器指定了以dword为单位的系统快取线大小<

例如:

在P6的系统

里此缓存器的值为08h,表示其快取线大小为8个dword,或32个字节>

实作了

MemoryWrite-and-Invalidate指令的BusMaster必须实作此缓存器,因为它必须

知道快取线大小,以便确保它从快取线边界起始交易,并遵守它将整条线写入存的约定,所以当这缓存器被设定为0<

表示组态软件尚未把快取线大小告诉它>

时,

BusMaster不可以使用MemoryWrite-and-Invalidate指令,在这种情况,Master

只能够使用MemoryWrite<

存写入>

指令来更新存.

装置可以限制它所支持的快取线大小数目,假如组态软件写入一个未支持的数值,

则装置会将此数值当作0来动作.

LatencyTimer

等待时间<

Offset0Dh>

等待时间以PCI频率周期为单位,定义了在busmaster起始新交易时,它可保留总线有权的最小时间量,最理想的是,每一个busmaster都应该将此缓存器实作为可读/写的缓存器,藉此给予组态软件在busmaster群组间分配可用的总线时间上有最大的弹性,组态软件以读取功能的Min_Gnt<

MinimumGrant最小授权>

缓存器,决定busmaster想要的时间片段.

HeaderType

表头型态缓存器<

Offset0Eh>

每一个PCI功能拥有保留给实作其组态缓存器用的64个组态dword区块,前16个dword的格式<

Offset00h~3Fh>

与使用是由PCI规格预先定义的,这区域被称为装置的组态表头区域<

或表头空间<

HeaderSpace>

规格目前定义了三种表头格式,称为HeaderTypeZero,One与Two:

●HeaderTypeOne是为PCI-to-PCI桥接器定义的<

01h>

●HeaderTypeTwo是为PCI-to-CardBus桥接器定义的<

02h>

●HeaderTypeZero是给所有除了PCI-to-PCI与CardBus桥接器以外的装置使用的<

00h>

HeaderType位7是用来表示此装置含有除了桥接器功能以外的其它功能,

固位7=1表示为多功能,0=表示为单功能.

Built-inSelfTest

BIST建自我测试<

Offset0Fh>

非必要的,假如装置不支持BIST的话,在读取此缓存器时,它必须要传回为0,装置的BIST是以设定位6为1的方式来请求,在完成BIST后,装置会将位6重置,但必须在二秒钟完成重置,位0~3为0则表示成功,非零值代表装置特定的错误码.

BassAddress

基地址缓存器<

Offset10h~27h>

在开机时,系统必须自动地组态,以便让所有IO与存能占用户不相干的地址围,

为了达到此目标,系统必须有能力侦测到装置需要多少个存与IO地址围,以及每一个大小.当位0传回1则表示这是一个IO译码器,不是存译码器,位[31:

2]是基地址字段,并且用来IO区块所需的大小以及设定它的起始地址.

区块大小的决定与地址围的指定:

●是否实作基地址缓存器?

●它是一个存,还是IO地址译码器?

●假如它是存译码器,它是一个32位还是64位的基地址缓存器?

●假如它是存译码器,与此缓存器相关的存是可预读的还是不可预读的?

●它需要多少存或地址空间,并且是以什么单位来排列?

这所有信息可以很简单的用写入一个全部为1的值到基地址缓存器里,然后读取它来确认,传回值为0表是没有实作基地址缓存器,假设所读取的值不为0,程序执行装置可从基地址栏的最低有效位向上扫瞄传回值,以找出第一个被设定为1的位来决定所需的存或IO空间的大小.

存例:

假设FFFFFFFFh被写入在组态13h~10h的基地址缓存器里,然后再读取时,所得的值为FFF00000h,由此可知有任何位可以被更改成1表示实作了基地址缓存器,

●位0=0表示这是一个存地址译码器.

●位[2:

1]=00b表示它是一个32位存地址译码器.

●位3=0表示它不是可预读的存.

●位20是在基地址字段里所找到的第一个1,此位的二进制权值为1,048,576,表示这是一个1MB大小的存地址译码器.

接下来,程序执行装置写入32位基地址到缓存器里,不过只有位[31:

20]是可写入的,译码器接荍位[31:

20]并假设所指定的基地址的位[19:

0]为0,这表示基地址可以被1MB,既所请求的存围大小整除,所指定的起始地址一定会被所请求的存围大小整除是PCI译码器的特性.

IO例:

假设FFFFFFFFh被写入在组态17h~14h的基地址缓存器里,然后再读取时,所得的值为FFFFFF01h,位0为1,表示这是一个IO地址译码器,从位2<

基地址栏的最低有效位向上扫瞄>

开始向上扫瞄,找到位8是第一个被成功地改成1的位,此二进权值为256,表示此IO地址译码器大小为256B,或将所得的值作一补码运算后再加1,易可得相同的值.

CardBusCISPointer

CardBus与PCI共享的装置实作此非必要的缓存器,此字段指向CardBus卡的借面

卡信息结构<

CardBusInformationStructure,CIS>

此缓存器是只读的,并且包含在下列

其中一个地方的CIS相对地址<

offset>

●在功能的装置特定组态空间里<

在功能的组态空间的Offset40h之后>

的相对地址<

Offset>

●与其中一个装置存基地址缓存器所指示的起始地址间之相对地址<

●在装置扩充ROM程序代码影像<

CodeImage>

里的相对地址<

CIS的详细说明请参考"

CardBusSystemArchitecture"

Sub

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 人文社科 > 文学研究

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1