Linux中Pci驱动程序是如何工作的

5

我正在尝试学习关于在PC环境下Linux中PCI驱动程序的工作原理,但真的很难理解。在开始之前,我想了解以下几个陈述。

  1. PCI规范允许系统承载多达256个总线。(总线=PCI插槽?)

  2. 每个总线最多可承载32个设备。

  3. 每个设备可以是一个多功能板,最多具有八个功能。(这句话的确切含义是什么?)

在我的PC上,只能看到三个PCI插槽(这些被称为总线),并且从每个插槽出发的一个IRQ线路被指向CPU。

看来我的理解相当错误,因此希望得到更多意见。

1个回答

3

我可以至少回答你问题的一部分。

C1  C2  C3  ....  芯片组/PCI桥接器
 |   |    |            |
 +---+----+  .... -----+

C1,C2,C3等是白色PCI连接器。
这是插入PCI卡的地方。 这些通常被称为PCI插槽

底部的线是PCI总线。
同一PCI总线上的所有设备可以直接通信。
由于它们在共享总线上,因此同一时间只能有一个设备处于活动状态。


我标记为芯片组/PCI桥接器的部分通常是将PCI总线连接到计算机的其他部件的地方。这可能是与芯片组的连接,也可能是另一个PCI总线。


我在Ars Technica的存档中找到了一些链接,这可能会有所帮助:
http://archive.arstechnica.com/paedia/p/pci-express/m-pcie-1.html
http://archive.arstechnica.com/paedia/p/pci-express/m-pcie-2.html
...


感谢Hennes的友善回复,我想在这里问一件事,Pci bride不就是PCI控制器吗?您能否稍微解释一下irq线如何从PCI映射到CPU? - Amit Singh Tomar
我不确定我是否能够回答那个问题,而不需要一个史诗般的长答案。最好先阅读几篇文章,然后再带着具体问题回来。 - Hennes
谢谢Hennes,您能推荐一些我可以查阅的好文档吗? - Amit Singh Tomar
不是很好。所有的东西似乎都过时了或者被封锁了 :( - Hennes
1
Mindshare还有非常好的、全面的各种技术书籍,特别是关于传统PCI和PCIe。例如这本[PDF-部分电子书] https://www.mindshare.com/files/ebooks/PCI%20Express%20System%20Architecture.pdf 如果你将要在PCI方面做很多工作,那么绝对值得购买。 - penguin4hire

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接