
PCI
墨子说书
123
展开
-
PCI9054驱动设计开发
首先是选用开发工具。设备驱动这东东没有工具好像是没有办法做的。一年前我把自己智力估计过高,一头扎进了DDK里面,结果是按照书上做东东,做出来也不明白是什么意思。然后就搁浅了。后来用WinDriver,也没有什么概念性的提高。 现在不做不行了。可选的还有DS,这个与VC结合很好的东东,虽然别人说有这样那样的问题,但是还是有很多人在用。我想就从这里开始吧。 2003-3-1转载 2013-06-20 11:36:41 · 2897 阅读 · 0 评论 -
PCI驱动开发
1. PCI 简介PCI 总线标准是一种将系统外部设备连接起来的总线标准,是PC中最重要的总线,实际上是系统的各个部分如何交互的接口。传输速率可达到 133MB/s。在当前的PC体系结构中,几乎所有的外部设备采用的各种各样的接口总线,均是通过桥接电路挂接到 PCI 系统上。在这种 PCI 系统中,Host/PCI 桥称为北桥,连接主处理器总线到基础 PCI 局部总线。PCI 与其他总线的接口称转载 2013-06-20 11:33:07 · 1542 阅读 · 0 评论 -
PCI设备的地址空间
PCI配置空间(PCI Configuration Space) 图 1. 标准 PCI 总线的组织结构图PCI设备(PCI device)都有一个配置空间,大小为256字节,实际上是一组连续的寄存器,位于设备上。配置空间的前64字节是配置空间起始段,它对于每种类型的设备都是相同的。显示了PCI 设备的配置空间起始段。 其中头部64字节是PCI标准规定的转载 2014-02-21 13:00:07 · 1052 阅读 · 0 评论 -
用VS2005+Driverstudio+DDK开发第一个PCI驱动程序(详解)
我的前面一篇文章已经总结了安装VS2005+Driverstudio+DDK来搭建环境。下面再来一步一步来编写我们的第一个PCI驱动程序。1.在安装好软件后,打开VS2005,TOOL目录下会多一个Driverstudio的选项,这里我们选择它新建一个工程。如下图之后会出现一个工程引导界面,如下然后一直点击NEXT直到第4步。如下图这里我们选择PCI原创 2013-11-20 17:41:42 · 3790 阅读 · 0 评论 -
pci设备身份识别码介绍说明
什么是“PCI ID”?根据PCI 规范,Windows 9x/NT/XP系统,通过VID、DID、SID、SVID、RID及CC等6个识别代码对某一个PCI设备进行最终身份识别,并通过这些代码引导操作系统检测设备状态、发现新设备,安装设备不同版本的驱动等工作,并最终确保设备在系统平台内正常安全运行。这6个由十六进制代码编写的识别ID,就组成了PCI IDs(“s”表示复数)。●VID转载 2013-10-11 12:22:56 · 6315 阅读 · 0 评论 -
PCI设备读取配置空间
一个较为典型的PCI总线体系结构图。 我们来看看PCI设备是如何被识别和工作的。首先,如何读取配置空间PCI设备的配置信息包含了关于这个设备的基本情况的介绍,包括设备的名称,功能,使用方式等,因此首先必需要读取PCI设备的配置空间,才能够再讨论PCI设备的识别以及操作了。PCI规范系列文档总共定义了三种方法让CPU通过Host/PCI桥在PCI转载 2013-10-11 13:39:28 · 1733 阅读 · 0 评论 -
获取PCI设备并初始化
PCI有三个相互独立的物理地址空间:设备存储器地址空间、I/O地址空间和配置空间。配置空间是PCI所特有的一个物理空间。由于PCI支持设备即插即用,所以PCI设备不占用固定的内存地址空间或I/O地址空间,而是可以由操作系统决定映射的基址。系统加电时,BIOS检测PCI总线,确定所有连接在PCI总线上的设备以及它们配置要求,并进行系统配置。所以,所有PCI设备必须实现配置空间,从而能实现参数自动转载 2013-07-16 14:44:22 · 1674 阅读 · 0 评论 -
PCI中断处理
首先在获得PCI配置空间资源的时候,就要获得中断资源,根据CM_PARTIAL_RESOURCE_DESCRIPTOR 结构的 Type 域来区分需要获得什么样的中断资源的时候,如果Type类型为:CmResourceTypeInterrupt,此时需要将中断资源从CM_PARTIAL_RESOURCE_DESCRIPTOR中取出:irql = (KIRQL) resource->u.Inte转载 2013-07-16 14:39:34 · 2211 阅读 · 1 评论 -
用DDK开发的9054驱动
和S5933比较起来,开发PLX9054比较不幸,可能是第一次开发PCI的缘故吧。因为,很多PCI的例子都是对S5933,就连微软出版的《Programming the Microsoft Windows Driver Model》都提供了一个完整的S5933的例子。在这篇有关DDK的开发论文里。我将分两个例子来构建PLX9054的驱动,第一个,是对《Windows2000 设备驱动程序设计指转载 2013-07-16 11:15:30 · 1566 阅读 · 0 评论