我正在尝试学习关于在PC环境下Linux中PCI驱动程序的工作原理,但真的很难理解。在开始之前,我想了解以下几个陈述。
PCI规范允许系统承载多达256个总线。(总线=PCI插槽?)
每个总线最多可承载32个设备。
每个设备可以是一个多功能板,最多具有八个功能。(这句话的确切含义是什么?)
在我的PC上,只能看到三个PCI插槽(这些被称为总线),并且从每个插槽出发的一个IRQ线路被指向CPU。
看来我的理解相当错误,因此希望得到更多意见。
我正在尝试学习关于在PC环境下Linux中PCI驱动程序的工作原理,但真的很难理解。在开始之前,我想了解以下几个陈述。
PCI规范允许系统承载多达256个总线。(总线=PCI插槽?)
每个总线最多可承载32个设备。
每个设备可以是一个多功能板,最多具有八个功能。(这句话的确切含义是什么?)
在我的PC上,只能看到三个PCI插槽(这些被称为总线),并且从每个插槽出发的一个IRQ线路被指向CPU。
看来我的理解相当错误,因此希望得到更多意见。
我可以至少回答你问题的一部分。
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
...