当前位置:高等教育资讯网  >  中国高校课件下载中心  >  大学文库  >  浏览文档

北京大学:《微机原理 Microcomputer Principle 微机与接口技术》课程实验指导(微机与接口技术实验)单元实验5 PCI设备操作

资源类别:文库,文档格式:PDF,文档页数:7,文件大小:120.15KB,团购合买
点击下载完整版文档(PDF)

实验五PCI设备操作 实验目的 1.了解PCI设备工作原理 2.了解PCI设备自动配置过程 3.掌握 PCI BIOS的使用方法 实验原理 1.PCI总线基本原理 Required Pins Optional Pins AD31:00 AD[6332] data C/BE3: 0# Extension ACK64# Interface RDY# COMPLIANT STOP# IDSE LOCK# nterface RRE 三RR# Arbitration (Initiator only) EEE11491) system # 图51PCI管脚定义 PCl总线是一种时分复用的双向应答总线,传输发起方称为主设备,接收方称为从设备 主设备用 FRAME信号指示,从设备拉低它的DEⅤSEL线来表示响应传输请求。PCl总线 的数据传输以帧为单位,每次传输由一个地址周期( Address Phase)和多个数据周期(Data Phase)组成。AD0~AD31首先给出本次传输的首地址,后面紧跟一个或多个32位(4字 节)的数据,多个数据的地址自动递增。在地址周期,CBEO~C/BE3这四根线的不同组合 指示出在AD0~AD31上将要进行何种类型的操作,如CBEO~C/BE3=0110表示存储器读, C/BEO~CBE3=0011表示O写。在数据周期,CBEO~C/BE3对应AD0~AD31上四个字 节的使能。IRDY和TRDY分别表示主设备准备好和从设备准备好。在传输过程中,只有 IRDY和TRDY同时有效,传输才能继续;否则插入等待周期,用于在不同速度的设备之间 协调工作。 计算机的接口卡一般会用到lO端口、存储器空间、中断及DMA等计算机资源。传统 ISA接口卡通过更改跳线来避免多块卡之间的资源冲突,PCI接口卡则摒弃了硬件跳线,由 软件统筹分配资源,这被称为即插即用。为实现此功能,PCI协议除了可以对MO空间、存 储器空间读写外,还定义了对配置空间的读写(CBEO~C/BE3=1010、1011)。所谓配置空 间,是指映射到每块接口卡上的256字节的特殊功能寄存器。主板上电后,由 PnP-Bios读

34 实验五 PCI 设备操作 一、实验目的 1. 了解 PCI 设备工作原理 2. 了解 PCI 设备自动配置过程 3. 掌握 PCI BIOS 的使用方法 二、实验原理 1. PCI 总线基本原理 图 5.1 PCI 管脚定义 PCI 总线是一种时分复用的双向应答总线,传输发起方称为主设备,接收方称为从设备。 主设备用 FRAME 信号指示,从设备拉低它的 DEVSEL 线来表示响应传输请求。PCI 总线 的数据传输以帧为单位,每次传输由一个地址周期(Address Phase)和多个数据周期(Data Phase)组成。AD0~AD31 首先给出本次传输的首地址,后面紧跟一个或多个 32 位(4 字 节)的数据,多个数据的地址自动递增。在地址周期,C/BE0~C/BE3 这四根线的不同组合 指示出在 AD0~AD31 上将要进行何种类型的操作,如 C/BE0~C/BE3=0110 表示存储器读, C/BE0~C/BE3=0011 表示 I/O 写。在数据周期,C/BE0~C/BE3 对应 AD0~AD31 上四个字 节的使能。IRDY 和 TRDY 分别表示主设备准备好和从设备准备好。在传输过程中,只有 IRDY 和 TRDY 同时有效,传输才能继续;否则插入等待周期,用于在不同速度的设备之间 协调工作。 计算机的接口卡一般会用到 I/O 端口、存储器空间、中断及 DMA 等计算机资源。传统 ISA 接口卡通过更改跳线来避免多块卡之间的资源冲突,PCI 接口卡则摒弃了硬件跳线,由 软件统筹分配资源,这被称为即插即用。为实现此功能,PCI 协议除了可以对 I/O 空间、存 储器空间读写外,还定义了对配置空间的读写(C/BE0~C/BE3=1010、1011)。所谓配置空 间,是指映射到每块接口卡上的 256 字节的特殊功能寄存器。主板上电后,由 PnP-Bios 读

取各卡的配置空间,对它们所需的资源进行统筹分配,再将分配结果写回对应的配置空间地 址,完成自动配置。 2.PCI总线配置空间 PCI配置空间是长度为256个字节的一段内存空间,前64个字节包含PCI接口的关键 配置信息 配置空间地址 字节2 字节 字节0 00H 设备ID, Device Id 供应商ID, Vendor id 04H状态, Status 命令, command 类代矿 Revision id 自测 首部类型延迟定时器cae行容量 Header Type Latency Timer CacheLineSize 基址寄存器0, Base Address register#0 14H基址寄存器1, Base Address register# 18H 基址寄存器2, Base Address Register#2 ICH 基址寄存器3, Base Address register#3 20H 基址寄存器4, Base Address register#4 基址寄存器5, Base Address register#5 28H Card Bus卡信息结构指针, CardBUs cis Pointer 2cH 子系统ID 子系统供应商ID Subsystem ID Subsystem Vendor ID 扩展ROM基址, Expansion ROM Base Address 保留, Reserved 功能指针 Capabilities Pointer 38H 保留, Reserved 3CH 优先级请求时间片请求中断引脚 中断线 MAX Lat MIN Gnt Interrupt pin Interrupt line 表5IPCI设备的配置空间 在这64个字节中,第一个32位的地址包含了 Deviceld和 VendorID, Vendor是 个16位的数,它由 PCISIG分配,代表了制造这个板卡的厂商,如果插槽没有安装板卡, 从这个位置读出的值就为 FFFFH。 DevicelD由厂商自己分配,代表设备的类型。通过这两 个值就可以唯一的确定板卡。 Base address,即基址寄存器,是32位寄存器,如果从这个位置读出的值最低位是1 代表I0地址,否则代表内存地址。系统加电后,引导程序通过向基址寄存器写入全1,并 重新读回,如果认为最低位为0,整个地址可以分成高位的全“1”部分,和低位的全“0” 部分。引导程序可以判断出全“0”部分是PCI设备自己寻址空间,因而可以确定板卡需要 资源的大小,并给它分配一块空闲的I/0或内存空间,并把分配地址的首地址写回到基址寄 存器。驱动程序可以通过读这个基址寄存器取得基地址,再加上设备的偏移地址就可以访 这个设备的寄存器了。 例1(PCI设备资源配置 以第一个基址寄存器为例,BI0S对它进行配置的过程如下:

35 取各卡的配置空间,对它们所需的资源进行统筹分配,再将分配结果写回对应的配置空间地 址,完成自动配置。 2. PCI 总线配置空间 PCI 配置空间是长度为 256 个字节的一段内存空间,前 64 个字节包含 PCI 接口的关键 配置信息: 表 5.1 PCI 设备的配置空间 在这 64 个字节中,第一个 32 位的地址包含了 DeviceID 和 VendorID,VendorID 是一 个 16 位的数,它由 PCISIG 分配,代表了制造这个板卡的厂商,如果插槽没有安装板卡, 从这个位置读出的值就为 FFFFH。DeviceID 由厂商自己分配,代表设备的类型。通过这两 个值就可以唯一的确定板卡。 Base Address,即基址寄存器,是 32 位寄存器,如果从这个位置读出的值最低位是 1, 代表 IO 地址,否则代表内存地址。系统加电后,引导程序通过向基址寄存器写入全 1,并 重新读回,如果认为最低位为 0,整个地址可以分成高位的全“1”部分,和低位的全“0” 部分。引导程序可以判断出全“0”部分是 PCI 设备自己寻址空间,因而可以确定板卡需要 资源的大小,并给它分配一块空闲的 I/O 或内存空间,并把分配地址的首地址写回到基址寄 存器。驱动程序可以通过读这个基址寄存器取得基地址,再加上设备的偏移地址就可以访问 这个设备的寄存器了。 例 1(PCI 设备资源配置): 以第一个基址寄存器为例,BIOS 对它进行配置的过程如下: 配置空间地址 字节 3 字节 2 字节 1 字节 0 00H 设备 ID,Device ID 供应商 ID,Vendor ID 04H 状态,Status 命令,command 08H 类代码 Class Code 版本 ID Revision ID 0CH 自测 首部类型 Header Type 延迟定时器 Latency Timer Cache 行容量 CacheLineSize 10H 基址寄存器 0,Base Address Register#0 14H 基址寄存器 1,Base Address Register#1 18H 基址寄存器 2,Base Address Register#2 1CH 基址寄存器 3,Base Address Register#3 20H 基址寄存器 4,Base Address Register#4 24H 基址寄存器 5,Base Address Register#5 28H CardBus 卡信息结构指针,CardBUs CIS Pointer 2cH 子系统 ID Subsystem ID 子系统供应商 ID Subsystem Vendor ID 30H 扩展 ROM 基址,Expansion ROM Base Address 34H 保留,Reserved 功能指针 Capabiltities Pointer 38H 保留,Reserved 3CH 优先级请求 MAX Lat 时间片请求 MIN Gnt 中断引脚 Interrupt pin 中断线 Interrupt Line

①BI0S向基址寄存器写入 OFFFFFFFFH ②假设重新读这个寄存器获得的结果是 OFFFFFFCIH,二进制表示法中低位有6位为 0(最低位的1也算为0),表示板卡的寻址空间为0~3F,共需要4OH大小的I0 空间 ③假设可用的空闲地址为0E480H,BI0S把这个值写回到基址寄存器中。 ④现在从这个地址读出来的值为OE481H Interrupt Line,中断线寄存器,它是一个8位寄存器,用来报告中断的连接情况 它是一个可读写的寄存器,凡是使用中断引脚的设备必须对它进行设置,设备驱动程序和操 作系统可以利用这个信息来确定中断向量。该寄存器的值要受系统体系的支配。对于X86 体系结构,该寄存器的值和标准8259配置中的IRQ编号(0~15)相对应。255表示没有连 接到任何中断控制器,15~255之间的值为保留。 3.PCI总线配置空间的访问 如果要访问PCⅠ设备的配置空间,就必须知道这个设备在系统中的物理连接情况。描 述这个连接情况的数据是“总线号”、“设备号”和“功能号”。一个系统可以有256个PCI 总线,每个总线上可以有32个设备,每个设备可以具有8个功能(每个功能作为一个PCI 设备)。当这三个数据确定的时候,就可以在系统中唯一确定一个PCI设备 PCI设备的配置信息可以通过两个32位IO端口访问,这两个端口是 (1)32位配置地址端口,占用IO地址的0xCF8 (2)32位配置数据端口,占用IO地址的0xCFC 将PCⅠ设备的总线号(8位)、设备号(5位)、功能号(3位)和配置空间的偏移地址 写入0CF8,就可以通过 OxCFO端口访问相应位置的配置值。 在DOS下访问PCI设备一般采用 PCI BIOS服务功能,通过执行INT1AH指令可以 调用 PCI BIOS。在这种情况下,调用者必须首先将需要的请求参数装入处理器的寄存器组 在入口AH寄存器必须包含PCI功能IDBH,AL寄存器必须包含具体的函数编号。 PCI BIOS系统调用主要有: 函数功能 入口参数出口参数 备注 PCI存在否 AH: OBI EDX返回值为“PCI” 检查PCI AL: OlH AH存在状态,00H为存在 BIOS是否 AL:硬件机制 存在,及版 BL:接口版本 本号 CL:系统中最后一个PCI局部总线号 CF:状态标志,1-无BIOS,0-存在BIOS PCI设备查找 AH: Blh BH:总线号0-255 查找指定 AL: 02h BL高5位为设备号,低3位为功能号厂商和设 CX. DeviceID|AH00检测成功,86-未发现,83,无效|备号的PCI DX. vendorID CF状态标志。1-错误,0-成功 设备 S:索引号* PCI类码查找 AH: BIh BH:总线号(0~255) 查找指定 AL: 03H BL高5位为设备号,低3位为功能号类代码和 ECX低三个字节AH:00~成功,86-未发现 索引号的 为分类代码 CF:1~错误,0~成功 PCI设备 SI索引号

36 ① BIOS 向基址寄存器写入 0FFFFFFFFH ② 假设重新读这个寄存器获得的结果是 0FFFFFFC1H,二进制表示法中低位有 6 位为 0(最低位的 1 也算为 0),表示板卡的寻址空间为 0~3F,共需要 40H 大小的 IO 空间 ③ 假设可用的空闲地址为 0E480H,BIOS 把这个值写回到基址寄存器中。 ④ 现在从这个地址读出来的值为 0E481H Interrupt Line,中断线寄存器,它是一个 8 位寄存器,用来报告中断的连接情况, 它是一个可读写的寄存器,凡是使用中断引脚的设备必须对它进行设置,设备驱动程序和操 作系统可以利用这个信息来确定中断向量。该寄存器的值要受系统体系的支配。对于 X86 体系结构,该寄存器的值和标准 8259 配置中的 IRQ 编号(0~15)相对应。255 表示没有连 接到任何中断控制器,15~255 之间的值为保留。 3. PCI 总线配置空间的访问 如果要访问 PCI 设备的配置空间,就必须知道这个设备在系统中的物理连接情况。描 述这个连接情况的数据是“总线号”、“设备号”和“功能号”。一个系统可以有 256 个 PCI 总线,每个总线上可以有 32 个设备,每个设备可以具有 8 个功能(每个功能作为一个 PCI 设备)。当这三个数据确定的时候,就可以在系统中唯一确定一个 PCI 设备。 PCI 设备的配置信息可以通过两个 32 位 IO 端口访问,这两个端口是: (1) 32 位配置地址端口,占用 IO 地址的 0xCF8 (2) 32 位配置数据端口,占用 IO 地址的 0xCFC 将 PCI 设备的总线号(8 位)、设备号(5 位)、功能号(3 位)和配置空间的偏移地址 写入 0xCF8,就可以通过 0xCFC 端口访问相应位置的配置值。 在 DOS 下访问 PCI 设备一般采用 PCI BIOS 服务功能,通过执行 INT 1AH 指令可以 调用 PCI BIOS。在这种情况下,调用者必须首先将需要的请求参数装入处理器的寄存器组: 在入口 AH 寄存器必须包含 PCI 功能 ID B1H,AL 寄存器必须包含具体的函数编号。 PCI BIOS 系统调用主要有: 函数功能 入口参数 出口参数 备注 PCI 存在否 AH: 0B1H AL: 01H EDX:返回值为“PCI” AH 存在状态,00H 为存在 AL:硬件机制 BL:接口版本 CL:系统中最后一个 PCI 局部总线号 CF:状态标志,1-无 BIOS,0-存在 BIOS 检查 PCI BIOS 是否 存在,及版 本号 PCI 设备查找 AH:B1h AL:02h CX:DeviceID DX:vendorID SI:索引号* BH:总线号 0~255 BL:高 5 位为设备号,低 3 位为功能号 AH:00-检测成功,86-未发现,83,无效 CF:状态标志。1-错误,0-成功 查找指定 厂商和设 备号的 PCI 设备 PCI 类码查找 AH:B1h AL:03H ECX:低三个字节 为分类代码 SI:索引号 BH:总线号(0~255) BL:高 5 位为设备号,低 3 位为功能号 AH:00~成功,86~未发现 CF:1~错误,0~成功 查找指定 类代码和 索引号的 PCI 设备

读配置字节 AH: BIH CL:读出的配置字节 字节读取 AL: oh AH返回代码,00成功 PCl设备配 BH:总线号 CF:状态标志1~错误,0~成功 置空间 BL(7~3)设备号 (2-0)功能号 D:寄存器号 读配置字 AH: BIH CX:读出的配置字节 字读取PCI AL: 09H AH返回代码,00成功 设备配置 BH:总线号 CF:状态标志1~错误,0~成功 空间 BL(7~3)设备号 (2-0)功能号 Dl:寄存器号0、2 写配置字节 AH: BIH AH返回代码,00成功 字节写PCI AL: OBE CF:状态标志1~错误,0成功 设备配置 BH:总线号 空间 BL(7~3)设备号 (20)功能号 D:寄存器号 CL:写入内容 写配置字 AH: BIH AH返回代码,00成功 字写PCI AL: OCH CF:状态标志1~错误,0成功 设备配置 BH:总线号 空间 BL(7~3)设备号 (20)功能号 D:寄存器号0、2、 CX:写入内容 表52 PCI BIOS调用 注:当有多个设备采用相同的设备号和厂商号的时候,用从“0”开始的索引号来区别 4.PCI9052简介 PC19052芯片是PLX公司出产的一种PCI接口芯片,它最大的特点就是具有ISA兼容 模式,可以把PCI总线信号“翻译”成ISA信号,关于PCI9052芯片的细节这里不详细说 明,具体可以查询PCI9052的数据手册。实验所用接口卡已经通过板上的 EEPROM配置为 ISA模式,并把实验所需要的配置空间进行了规划 PC19052芯片的设备ID是9050H,厂商ID是10B5H,下面查看一下BIOS为这个板卡 所分配的资源 1.配置空间0 这部分被作为内存方式访问PC9052配置寄存器的地址 2.配置空间1 这部分被作为1O方式访问PC9052配置寄存器的地址。 3.配置空间3 这部分是我们实验中需要使用的IO空间

37 读配置字节 AH:B1H AL:08H BH:总线号 BL:(7~3)设备号 (2~0)功能号 DI:寄存器号 CL:读出的配置字节 AH:返回代码,00 成功 CF:状态标志 1~错误,0~成功 字节读取 PCI 设备配 置空间 读配置字 AH:B1H AL:09H BH:总线号 BL:(7~3)设备号 (2~0)功能号 DI:寄存器号 0、2、 4…. CX:读出的配置字节 AH:返回代码,00 成功 CF:状态标志 1~错误,0~成功 字读取 PCI 设备配置 空间 写配置字节 AH:B1H AL:0BH BH:总线号 BL:(7~3)设备号 (2~0)功能号 DI:寄存器号 CL:写入内容 AH:返回代码,00 成功 CF:状态标志 1~错误,0~成功 字节写 PCI 设备配置 空间 写配置字 AH:B1H AL:0CH BH:总线号 BL:(7~3)设备号 (2~0)功能号 DI:寄存器号 0、2、 4…… CX:写入内容 AH:返回代码,00 成功 CF:状态标志 1~错误,0~成功 字 写 PCI 设备配置 空间 表 5.2 PCI BIOS 调用 注:当有多个设备采用相同的设备号和厂商号的时候,用从“0”开始的索引号来区别。 4. PCI9052 简介 PCI9052 芯片是 PLX 公司出产的一种 PCI 接口芯片,它最大的特点就是具有 ISA 兼容 模式,可以把 PCI 总线信号“翻译”成 ISA 信号,关于 PCI9052 芯片的细节这里不详细说 明,具体可以查询 PCI9052 的数据手册。实验所用接口卡已经通过板上的 EEPROM 配置为 ISA 模式,并把实验所需要的配置空间进行了规划。 PCI9052 芯片的设备 ID 是 9050H,厂商 ID 是 10B5H,下面查看一下 BIOS 为这个板卡 所分配的资源。 1. 配置空间 0 这部分被作为内存方式访问 PCI9052 配置寄存器的地址。 2. 配置空间 1 这部分被作为 IO 方式访问 PCI9052 配置寄存器的地址。 3. 配置空间 3 这部分是我们实验中需要使用的 IO 空间

三、实验内容 1.在DOS下编程得到PCI9054的总线号、设备号和功能号,并获得其使用资源的信息 重点从配置空间中获得实验板的基地址和PC19052寄存器的基地址 参考程序如下 STACK SEGMENT PARA STACK DW 128H DUP(O STACK ENDS DATA SEGMENT NOFOUND DB NOT FOUND! ODH, 0AH,'S IO DB ODH, 0AH,'I0 ADDRESS IS: S DATA ENDS CODE SEGMENT ASSUME CS: CODE. SS: STACK. DS: DATA START: MOV AX. DATA MOV DS. AX MOV AH, OBlH MOV AL. 2 MOV CX. 9050H 设备ID MOV DX 10B5H 索引号为0 INT IAH 查找设备 CMP AH, 0 JZ GOT MOV DX. OFFSET NOFOUND MOV AH. 9 INT 21H JMP GOUT GOT 显示 PCI BI0S调用中的B参数 CALL DISP MOV DL, OAH MOV AH. 2 INT 21H MOV DL. ODH INT 21H MOV DI 0 LOOPl: MOV AX. 0B109H BX寄存器保持前面的值,循环读取配置空间 INT 1AH MOV AX. CX 显示配置空间内容 CALL DISP MOV DL MOV AH. 2

38 三、实验内容 1. 在 DOS 下编程得到 PCI9054 的总线号、设备号和功能号,并获得其使用资源的信息。 重点从配置空间中获得实验板的基地址和 PCI9052 寄存器的基地址。 参考程序如下: STACK SEGMENT PARA STACK DW 128H DUP(0) STACK ENDS DATA SEGMENT NOFOUND DB 'NOT FOUND!', 0DH, 0AH, '$' IO DB 0DH, 0AH, 'IO ADDRESS IS: $' DATA ENDS CODE SEGMENT ASSUME CS:CODE, SS:STACK, DS:DATA START: MOV AX, DATA MOV DS, AX MOV AH, 0B1H MOV AL, 2 MOV CX, 9050H ; 设备 ID MOV DX, 10B5H ; 厂商 ID MOV SI, 0 ; 索引号为 0 INT 1AH ; 查找设备 CMP AH, 0 JZ GOT MOV DX, OFFSET NOFOUND MOV AH, 9 INT 21H JMP GOUT GOT: MOV AX, BX ; 显示 PCI BIOS 调用中的 BX 参数 CALL DISP MOV DL, 0AH MOV AH, 2 INT 21H MOV DL, 0DH INT 21H MOV DI, 0 LOOP1: MOV AX, 0B109H ; BX 寄存器保持前面的值,循环读取配置空间 INT 1AH MOV AX, CX ; 显示配置空间内容 CALL DISP MOV DL, ' ' MOV AH, 2

INT 21H 显示空格 INC DI 地址加2 CMP DI. 40H MOV DX. OFFSET IO MOV aH. 9 INT 21H MOV AX. 0B109H MOV DI, ICH 基址寄存器3 INT 1AH D CX, OFFFEH 把最低位赋值为0 CALL DISP GOUT: MOV AH 4CH INT 21H DISP PROC NEAR 将AX寄存器里的数据转化为 ASCII码并显示 PUSH BX PUSH CX MOV BX. AX LLOOPl: MOV AX. BX CALL DISP2 PUSH CX MOV CL. 4 SHIL BX. CL POP CX LOOP LLOOP1 POP CX POP BX DISP ENDP DISP2 PROC NEAR 显示AH的高四位 PUSH DX PUSH CX AND AH. OFOH MOV CL, 4 MOV DL, AH CMP DL. 9 JLE NUM ADD DL. 7 NUM: ADD DL, 30H

39 INT 21H ; 显示空格 INC DI INC DI ; 地址加 2 CMP DI, 40H JL LOOP1 MOV DX, OFFSET IO MOV AH, 9 INT 21H MOV AX, 0B109H MOV DI, 1CH ; 基址寄存器 3 INT 1AH AND CX, 0FFFEH ; 把最低位赋值为 0 MOV AX, CX CALL DISP GOUT: MOV AH, 4CH INT 21H DISP PROC NEAR ;将 AX 寄存器里的数据转化为 ASCII 码并显示 PUSH BX PUSH CX MOV BX, AX MOV CX, 4 LLOOP1: MOV AX, BX CALL DISP2 PUSH CX MOV CL, 4 SHL BX, CL POP CX LOOP LLOOP1 POP CX POP BX RET DISP ENDP DISP2 PROC NEAR ; 显示 AH 的高四位 PUSH DX PUSH CX AND AH,0F0H MOV CL, 4 SHR AH, CL MOV DL,AH CMP DL,9 JLE NUM ADD DL,7 NUM: ADD DL,30H

MOV AH. 02H INT 21H POP CX POP DX DISP2 END START 2.在DOS下编程序列举出系统中的全部PCI设备,显示出厂商和设备号。 提 1.穷举总线号、设备号、功能号,通过三重循环读取每个组合的厂商和设备ID,显示 出所有不是 FFFFH的项目。 2.总线号不必穷举到255,穷举到8就足够了。 3.简单采用这种方法获得的列表要比实际的设备多,需要更多的PCI知识才能获得精 确的设备列表 四、思考题 PCI总线相对ISA总线有哪些优点?

40 MOV AH,02H INT 21H POP CX POP DX RET DISP2 ENDP CODE ENDS END START 2. 在 DOS 下编程序列举出系统中的全部 PCI 设备,显示出厂商和设备号。 提示: 1. 穷举总线号、设备号、功能号,通过三重循环读取每个组合的厂商和设备 ID,显示 出所有不是 FFFFH 的项目。 2. 总线号不必穷举到 255,穷举到 8 就足够了。 3. 简单采用这种方法获得的列表要比实际的设备多,需要更多的 PCI 知识才能获得精 确的设备列表。 四、思考题 1. PCI 总线相对 ISA 总线有哪些优点?

点击下载完整版文档(PDF)VIP每日下载上限内不扣除下载券和下载次数;
按次数下载不扣除下载券;
24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
已到末页,全文结束
相关文档

关于我们|帮助中心|下载说明|相关软件|意见反馈|联系我们

Copyright © 2008-现在 cucdc.com 高等教育资讯网 版权所有