Wie lspci Baumformat verstehen?

589
user762750

Ich verwende einen Dell G3 3579, um den Befehl lspci -tvv auszuführen.

Hier ist die Ausgabe:

-[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 

Ich weiß, dass die GPU über die PCIE direkt mit der CPU verbunden ist und dass Sie PCH verwenden, um andere Geräte anzuschließen.

Hier sind die Fragen:
F1: Warum zeigt die Baumausgabe, dass alle Geräte an denselben PCI-Bus (Bus 00) angeschlossen sind?
F2: Was bedeutet +-1b.0-[02-3a]--das?
F3: Woher weiß ich, welches Gerät an den PCI-E-Bus der CPU oder den PCI-E-Bus des PCH angeschlossen ist?

0
Hat PCI Express sogar einen "Bus"? Soweit ich weiß, wurde es, ähnlich wie modernes Ethernet, zu einem Wählnetz statt eines gemeinsam genutzten Mediums. grawity vor 5 Jahren 0

1 Antwort auf die Frage

1
dirkt

Warum zeigt die Baumausgabe, dass alle Geräte an denselben PCI-Bus (Bus 00) angeschlossen sind?

Denn so funktioniert die PCIe-Struktur: Alle Geräte sind mit einem einzigen Wurzelknoten verbunden. (Obwohl Sie mehrere PCIe-Domänen haben können, was die Dinge jedoch kompliziert macht).

Bei Intel liegen alle externen PCIe-Lanes, unabhängig davon, ob sie von der CPU oder vom PCH stammen, hinter PCIe-Bridges (und erhalten daher neue PCIe-Busnummern). Die Geräte in der PCH-Southbridge selbst sind direkte Nachkommen der PCIe-Wurzel.

Denken Sie daran, dass die CPU und der PCH eng über einen proprietären Hochgeschwindigkeitsbus gekoppelt sind, der für das PCIe-Protokoll transparent ist. Deshalb stimmt das PCIe-Layout nicht mit dem physischen Layout überein.

Was bedeutet + -1b.0- [02-3a] -?

1b.0ist ein Steckplatz und eine Funktionsnummer des PCIe-Root-Hubs. In diesem Fall enthält es eine PCIe-Brücke. Die Busse hinter dieser Brücke würden von 02 bis 3a nummeriert sein, obwohl derzeit keine Geräte daran angeschlossen sind.

Auf ähnliche Weise befindet sich Ihre GPU hinter der Bridge 01.0und Ihr LAN-Controller hinter der Bridge 1d.0, die möglicherweise eine interne Bridge ist.

Woher weiß ich, welches Gerät an den PCI-E-Bus der CPU oder den PCI-E-Bus des PCH angeschlossen ist?

Normalerweise tauchen sie hinter verschiedenen PCIe-Brücken auf. Details hängen von der Intel-CPU-Architektur ab. Nein, ich weiß nicht, welche Brücken das für Ihre bestimmte Architektur bedeuten würde, aber möglicherweise können Sie dies mit Intel-Datenblättern und / oder durch Beobachtung vorhandener Systeme feststellen.