在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
EETOP诚邀模拟IC相关培训讲师 创芯人才网--重磅上线啦!
查看: 6091|回复: 15

[原创]PCI总线下设备的配置流程

[复制链接]
发表于 2004-2-12 20:35:30 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
以下文章是我学习和思考的一个总结吧,有什么不妥,请多多指教!
计算机系统中有各种外设,如网卡、硬盘、光驱、软驱。还可以有一些即插即用的设备,像U盘以及USB接口的键盘鼠标等。那么系统在工作时,CPU何以能准确访问这些设备,并控制它们完成需要的操作呢?这还要从系统启动后对设备的配置说起。
每个设备都有256个字节的配置空间。系统启动复位后,这些设备不能进行任何功能操作。CPU只能以配置访问的方式访问它们。
对设备进行配置主要完成以下功能:给设备分配适当的系统资源,使之实现其基本功能和高级功能,使设备在其配置空间中动态地记录下它的错误情况。
设备配置究竟是一个怎样的过程呢?下面以在PCI总线架构下如何实现设备的配置进行说明。
首先要说明一下,PCI总线上的配置访问分为两种:TYPE0访问和TYPE1访问。TYPE0用于访问同级总线上的设备,TYPE1用于访问次级或次级以下总线上的设备。PCI的配置读和配置写都有32位的地址域,TYPE0访问和TYPE1访问就是通过地址域的最低两位来区分的。此外,地址域包括了以下信息:设备所驻留的总线号,设备号,设备中的功能号,还有在每个功能的配置空间中的双字偏移。
系统复位后,CPU读取BIOS中的代码,开始对设备的配置周期。首先北桥检查目标总线是不是BUS0,如果是,就启动TYPE0的配置访问,否则启动TYPE1的配置访问。如果是TYPE0的配置访问,接下来检测地址段中的设备号。设备号为n,桥就驱动IDSELn。设备n就启动相应类型的设备配置周期。地址段中余下的信息,即功能号和双字偏移量共同决定配置空间内的偏移量,从而找到要访问的配置寄存器。如果是TYPE1的配置访问,只有下游的桥响应该访问。如果目标总线属于某桥的下游总线中的一个,该桥就启动配置访问周期。如果目标总线号匹配于某桥的次级总线,则该桥将TYPE1的访问转换成TYPE0的访问。接下来的步骤上面已经叙述过。
这样,CPU执行完BIOS中的代码时,也就完成了对设备的配置。系统启动完毕,等待用户输入。此后对设备的访问就是IO操作或者访存操作。
对系统中挂在PCI-X,HT,AGP等总线下的设备的配置也使用PCI的配置访问方式,这些总线叫做与PCI兼容的总线。
发表于 2004-2-23 20:06:10 | 显示全部楼层

[原创]PCI总线下设备的配置流程

不错
发表于 2004-2-25 13:27:55 | 显示全部楼层

[原创]PCI总线下设备的配置流程

哈哈,,jiqing怎么突然研究起这个了,,不是研究usb的么?
发表于 2004-2-26 12:01:35 | 显示全部楼层

[原创]PCI总线下设备的配置流程

TOjiqing:能否说的详细点啊
发表于 2004-3-3 10:21:22 | 显示全部楼层

[原创]PCI总线下设备的配置流程

中断呢?
中断怎么配置?
发表于 2004-3-5 12:43:20 | 显示全部楼层

[原创]PCI总线下设备的配置流程

支持原创
 楼主| 发表于 2004-3-10 16:12:11 | 显示全部楼层

[原创]PCI总线下设备的配置流程

我本科不是学计算机的,所以知识漏洞比较多,什么都不懂,什么都研究,呵呵
发表于 2006-8-3 21:02:30 | 显示全部楼层
牛,向你学习在.
发表于 2006-8-19 10:37:20 | 显示全部楼层
有见解!学习中1
发表于 2006-8-21 14:36:24 | 显示全部楼层
好,学习中哦
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /2 下一条


小黑屋| 手机版| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-12-23 06:49 , Processed in 0.040097 second(s), 9 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表