web-dev-qa-db-ja.com

lspciツリー形式を理解するには?

Dell G3 3579を使用してlspci -tvvコマンドを実行しています。

出力は次のとおりです。

-[0000:00]-+-00.0  Intel Corporation 8th Gen Core Processor Host Bridge/DRAM Registers
           +-01.0-[01]----00.0  NVIDIA Corporation GP106M [GeForce GTX 1060 Mobile]
           +-02.0  Intel Corporation Device 3e9b
           +-04.0  Intel Corporation Xeon E3-1200 v5/E3-1500 v5/6th Gen Core Processor Thermal Subsystem        
           +-08.0  Intel Corporation Xeon E3-1200 v5/v6 / E3-1500 v5 / 6th/7th Gen Core Processor Gaussian Mixture Model
           +-12.0  Intel Corporation Cannon Lake PCH Thermal Controller
           +-14.0  Intel Corporation Cannon Lake PCH USB 3.1 xHCI Host Controller
           +-14.2  Intel Corporation Cannon Lake PCH Shared SRAM
           +-14.3  Intel Corporation Wireless-AC 9560 [Jefferson Peak]
           +-15.0  Intel Corporation Device a368
           +-15.1  Intel Corporation Device a369
           +-16.0  Intel Corporation Cannon Lake PCH HECI Controller
           +-17.0  Intel Corporation 82801 Mobile SATA Controller [RAID mode]
           +-1b.0-[02-3a]--
           +-1d.0-[3b]----00.0  Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller
           +-1f.0  Intel Corporation Device a30d
           +-1f.3  Intel Corporation Cannon Lake PCH cAVS
           +-1f.4  Intel Corporation Cannon Lake PCH SMBus Controller
           \-1f.5  Intel Corporation Cannon Lake PCH SPI Controller

GPUはPCIEを介してCPUに直接接続されており、インテルはPCHを使用して他のデバイスを接続していることを知っています。

ここに質問があります:
Q1:ツリー出力に、すべてのデバイスが同じPCIバス(バス00)に接続していると表示されるのはなぜですか?
Q2:+-1b.0-[02-3a]--はどういう意味ですか?
Q3:CPUのPCI-EまたはPCHのPCI-Eバスに接続されているデバイスを知るにはどうすればよいですか?

5
user762750

なぜツリー出力は、すべてのデバイスが同じPCIバス(バス00)に接続していることを示していますか?

これがPCIe構造の仕組みです。すべてのデバイスが単一のルートノードに接続されています。 (ただし、複数のPCIeドメインを使用できますが、複雑になります)。

Intelの場合、すべての外部PCIeレーンは、CPUとPCHのどちらから発生したかに関係なく、PCIeブリッ​​ジの背後にあります(したがって、新しいPCIeバス番号を取得します)。 PCHサウスブリッジ自体のデバイスは、PCIeルートの直接の子孫として表示されます。

CPUとPCHは、PCIeプロトコルに対して透過的な独自の高速バスを介して密接に結合されていることに注意してください。これが、PCIeレイアウトが物理レイアウトと一致しない理由です。

+ -1b.0- [02-3a]-はどういう意味ですか?

1b.0は、PCIeルートハブのスロットと機能番号です。この場合、PCIeブリッ​​ジが含まれています。このブリッジの背後にあるバスには、現在デバイスが接続されていなくても、02から3aの番号が付けられます。

同様に、GPUはブリッジの背後にあります01.0、およびブリッジの背後にあるLANコントローラ1d.0、これは内部ブリッジの場合があります。

CPUのPCI-EまたはPCHのPCI-Eバスに接続されているデバイスを知るにはどうすればよいですか?

通常、それらは異なるPCIeブリッ​​ジの背後に表示されます。詳細はIntel CPUアーキテクチャによって異なります。いいえ、特定のアーキテクチャにどのようなブリッジが必要かはわかりませんが、おそらくインテルのデータシートや既存のシステムを観察することで確認できます。

7
dirkt