PCI协议的导读

 

PCI总线标准是intel在很早以前推出的一种连接主板和外部设备的总线标准,全称为[Peripheral Component Interconnect]。任何事物的出现总是有其时代性,在PC领域也不例外。PCI的出现也是因为当时PC的性能和设计成本的要求。PCI针对ISA总线,做了不少改进,具有不少的优势。

PCI槽在主板上是很容易找到的,一般都是乳白色的插槽,如下图所示。不过现在市场上的主板基本都不在有PCI槽,或者有1个。目前均使用更高性能的、pci的下一代接口PCI-express。这都是后话了。

 

PCI总线地址总线数据总线是分时复用的,支持即插即用 (plug andplay)、中断共享等功能。分时复用的好处是一方面可以节省接插件的引脚数,另一方面便于实现突发数据传输。

 

比如即插即用和中断共享这两个特点就足以把ISA比下去了。

传统的ISA设备在插入系统之后,需要调整BIOS来添加一些特定的配置,而且中断也是独享的,系统的irq用一个就少一个;如果使用PCI总线,设备插入之后,BIOS会自动根据pci卡的特性分配IO、MEM空间和IRQ,并且IRQ是可以在PCI设备中共享的。PCI架构确实增加了系统的灵活性。

 

在带宽方面PCI总线在当时来说也提高了很多,这才是最关键的优势了。

33.33 MHz时钟 的同步传输;也有66MHz的扩展时钟频率。

总线带宽为32bit,当然也有64bit的扩展。

最大传输133 MB/s (133 megabytes per second) for 32-bit bus width(33.33 MHz × 32 bits ÷ 8 bits/byte = 133 MB/s)

对于64M的频率来说,总线带宽可以达到264MB/s。

32 或 64位的内存位址

32位元 I/O port 空间

 

 

想要了解PCI的规范,最权威的资料要属PCI Spec了。这些规范,包括PCIe,均是由美国的PCI-SIG协会(PCI特别兴趣小组)来管理和更新。

总线规范中也列出来适宜阅读的人群和工种。对于底层的软件工程师BIOS来说,基本需要了解如下几个章节。

Chapter 1 introduction         总线介绍

Chapter 2 Signal definition 信号定义

Chapter 3 Bus Operation    总线操作

Chapter 6 configuration space 配置空间

 

当然作为BIOS工程师来说,不仅仅是阅读spec这么简单。解决问题才是最终目的。spec的东西还是比较晦涩难懂的,属于理论的层面,在具体的操作实践中会完全就是两回事了。

将会碰到的事情很多,比如:

1、  PCI device 配置空间的访问和配置方法和原则

2、  PCI 总线的遍历

3、  PCI 设备的IRQ分配原则和方式

4、  PCI 分配memory /IO的原则和方式

5、  PCI Bridge 的概念和工作原理


最终的还是需要落实到一点:看源代码和spec。还是那句话Read the fuck source code!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值