1. 程式人生 > 其它 >【硬體相關】PCIe元件配置說明

【硬體相關】PCIe元件配置說明

一、PCIe介紹

1、前言

1.1、PCIe概述

PCI Express(peripheral component interconnect express)是INTEL提出的新一代的匯流排介面,PCI Express採用了目前業內流行的點對點序列連線,比起PCI以及更早期的計算機匯流排的共享並行架構,每個裝置都有自己的專用連線,不需要向整個匯流排請求頻寬,而且可以把資料傳輸率提高到一個很高的頻率,達到PCI所不能提供的高頻寬。

相對於傳統PCI匯流排在單一時間週期內只能實現單向傳輸,PCI Express的雙單工連線能提供更高的傳輸速率和質量。

1.2、PCIe分類
  • PCIe規格

目前PCIe有五種物理規格,分別為PCIe x1、PCIe x4、PCIe x8、PCIe x16、PCIe x32,x後面的數字表示為PCIe插槽內的通道數

詳見示意圖如下,目前主流規格主要為x1、x4、x8、x16,PCIe插槽可向下相容,如PCIe x16插槽可插x8、x4、x1的卡(最終執行模式由PCIe卡決定,如PCIe x16插槽插入PCIe x4卡,最終以PCIe x4模式執行)

插槽寬度 腳pin總數 主介面區pin數 長度 傳輸通道數 常見應用
PCIe x1 36 14 25mm 1 無線網絡卡、SATA擴充套件卡、USB埠擴充套件卡
PCIe x4 64 42 39mm 4 萬兆乙太網卡
PCIe x8 98 76 56mm 8 FC HBA卡
PCIe x16 164 142 89mm 16 顯示卡、GPU卡
  • PCIe版本

目前PCIe有六種版本,分別為PCIe1.0、PCIe2.0、PCIe3.0、PCIe4.0、PCIe5.0、PCIe6.0,PCIe版本向後相容,任何版本的PCIe卡和主機板都可以以最低版本的模式工作(如PCIe 3.0卡插到PCIe 2.0槽位上,最終以PCIe 2.0版本執行)

詳見示意圖如下,列舉了不同PCIe版本匯流排效能,PCIe每條傳輸通道均為全雙工通道(SEND、RECEIVE兩個方向互不影響,表中傳輸頻寬表示為單方向的速率)

PCIe是一條序列匯流排,資料中嵌入了時鐘,它需要確保發生足夠的電平轉換(1到0和0到1),以便接收端恢復時鐘。
為了增加電平轉換,以"8b/10b"編碼舉例,每8個bit(1個位元組)被編碼為一個10bit的符號進行傳輸,之後在接收端進行解碼,即匯流排需要傳輸10 bit的編碼資料來表示所傳送的8 bit的資料,編碼效率為80%(8b/10b)

               ( 原始傳輸率 x Line編碼效率 x 通道數 )
有效傳輸頻寬 =   ------------------------------------
                               8
注:
GT/s表示為每秒千兆傳輸(**Gigatransfer**),由於原始傳輸率為Gbps(二進位制以1000換算,即2.5Gbps=2500Mbps),故需要除以8換算為GBps
PCIe版本 釋出時間 Line編碼 原始傳輸率 ×1頻寬 ×2頻寬 ×4頻寬 ×8頻寬 ×16頻寬
1.0 2003 8b/10b 2.5 GT/s 250 MB/s 0.50 GB/s 1.0 GB/s 2.0 GB/s 4.0 GB/s
2.0 2007 8b/10b 5.0 GT/s 500 MB/s 1.0 GB/s 2.0 GB/s 4.0 GB/s 8.0 GB/s
3.0 2010 128b/130b 8.0 GT/s 984.6 MB/s 1.97 GB/s 3.94 GB/s 7.88 GB/s 15.8 GB/s
4.0 2017 128b/130b 16.0 GT/s 1969 MB/s 3.94 GB/s 7.88 GB/s 15.75 GB/s 31.5 GB/s
5.0 2019 NRZ 128b/130b 32.0 GT/s 3938 MB/s 7.88 GB/s 15.75 GB/s 31.51 GB/s 63.0 GB/s
6.0 2021 PAM4 & FEC 128b/130b 64.0 GT/s 7877 MB/s 15.75 GB/s 31.51 GB/s 63.02 GB/s 126.03 GB/s
1.3、常見問題
  • 同一個主機板,同一張卡,插在PCIe A上可以正常使用,而在PCIe B卻無法識別?
    此問題常出現在雙路主機板上,主機板的PCIe介面分別由兩個CPU控制。如果只上了一個CPU,那麼另外一個CPU控制的PCIe通道是不通電的,自然不能識別。
1.4、常用命令
  • 檢視伺服器PCI-E插槽個數及使用情況:dmidecode | grep -1 PCI
    注:可使用PCIe擴充套件卡擴充PCIe插槽
[root@node111 ~]# dmidecode | grep -1 PCI
        ISA is supported
        PCI is supported
        PNP is supported
--
System Slot Information
    Designation: PCIe Slot 1
    Type: x8 PCI Express 3 x16
    Current Usage: Available
--
System Slot Information
    Designation: PCIe Slot 2
    Type: x8 PCI Express 3 x16
    Current Usage: Available
--
System Slot Information
    Designation: PCIe Slot 3
    Type: x8 PCI Express 3 x16
    Current Usage: Available
--
System Slot Information
    Designation: PCIe Slot 4
    Type: x8 PCI Express 3 x16
    Current Usage: In Use
--
System Slot Information
    Designation: PCIe Slot 5
    Type: x8 PCI Express 3 x16
    Current Usage: In Use
--
System Slot Information
    Designation: PCIe Slot 6
    Type: x16 PCI Express 3
    Current Usage: Available

二、PCIe應用

1、HBA卡

HBA,即主機匯流排介面卡(Host Bus Adapter),是伺服器內部的I/O通道與儲存系統的I/O通道之間的物理連線,實現內部通道協議PCI或Sbus和光纖通道協議之間的轉換,減輕了主處理器在資料儲存和檢索任務的負擔,提高伺服器的效能。

HBA卡可以將伺服器連線至儲存網路(如SAN儲存),常見的HBA卡有FC-HBA卡(16Gb/s)、SAS-HBA卡(12Gb/s)兩種

1.1、FC HBA卡
1.1.1、品牌廠商

FC HBA卡常見的品牌廠商主要為EmulexQlogic

  • Emulex
    可通過lspci | grep Fibre查詢伺服器當前使用FC HBA卡,若品牌為Emulex,通常驅動模組為lpfc
[root@node85 ~]# lspci | grep Fibre
62:00.0 Fibre Channel: Emulex Corporation LightPulse LPe16002 (rev 30)
62:00.1 Fibre Channel: Emulex Corporation LightPulse LPe16002 (rev 30)
[root@node85 ~]# 
[root@node85 ~]# modinfo lpfc
filename:       /lib/modules/4.14.113-1.el7.x86_64/kernel/drivers/scsi/lpfc/lpfc.ko.xz
version:        0:11.4.0.3
author:         Broadcom
description:    Emulex LightPulse Fibre Channel SCSI driver 11.4.0.3
license:        GPL
srcversion:     9B519AD74B0149A85A5638D
  • Qlogic
    可通過lspci | grep Fibre查詢伺服器當前使用FC HBA卡,若品牌為Qlogic,通常驅動模組為qla2xxx
1.1.2、常用操作
  • 檢視FC本地(通常為伺服器FC HBA卡)WWN號:cat /sys/class/fc_host/host{x}/port_name
    注:如FC HBA卡配置兩個FC口,則存在兩個WWN號
[root@node85 ~]# cat /sys/class/fc_host/host11/port_name 
0x10000090fadc39ac
[root@node85 ~]# cat /sys/class/fc_host/host13/port_name 
0x10000090fadc39ad
  • 檢視FC遠端(通常為FCSAN儲存)WWN號:cat /sys/class/fc_remote_ports/rport-{x}/port_name
[root@node85 ~]# cat /sys/class/fc_remote_ports/rport-11\:0-0/port_name 
0x277000c0fff0b1d3
[root@node85 ~]# cat /sys/class/fc_remote_ports/rport-13\:0-0/port_name 
0x237000c0fff0b1d3
  • 掃描FC本地新SCSI磁碟:rescan-scsi-bus.sh
  • 檢視FC本地SCSI連線情況:lsscsi
[root@node85 ~]# lsscsi 
[3:0:0:0]    enclosu SEAGATE  4565             G280  -        
[3:0:1:0]    enclosu SEAGATE  4565             G280  -        
[3:0:2:0]    enclosu BROADCOM VirtualSES       03    -        
[11:0:0:0]   enclosu SEAGATE  5865             G280  -        
[11:0:0:11]  disk    SEAGATE  5865             G280  /dev/sdb 
[11:0:0:15]  disk    SEAGATE  5865             G280  /dev/sdd 
[11:0:0:19]  disk    SEAGATE  5865             G280  /dev/sdf 
[11:0:0:23]  disk    SEAGATE  5865             G280  /dev/sdh 
[11:0:0:27]  disk    SEAGATE  5865             G280  /dev/sdj 
[11:0:0:31]  disk    SEAGATE  5865             G280  /dev/sdl 
[11:0:0:35]  disk    SEAGATE  5865             G280  /dev/sdn 
[11:0:0:39]  disk    SEAGATE  5865             G280  /dev/sdp 
[12:0:0:0]   disk    ATA      INTEL SSDSC2KB24 0132  -        
[12:0:1:0]   disk    ATA      INTEL SSDSC2KB24 0132  -        
[12:1:0:0]   disk    LSI      Logical Volume   3000  /dev/sda 
[13:0:0:0]   enclosu SEAGATE  5865             G280  -        
[13:0:0:12]  disk    SEAGATE  5865             G280  /dev/sdc 
[13:0:0:16]  disk    SEAGATE  5865             G280  /dev/sde 
[13:0:0:20]  disk    SEAGATE  5865             G280  /dev/sdg 
[13:0:0:24]  disk    SEAGATE  5865             G280  /dev/sdi 
[13:0:0:28]  disk    SEAGATE  5865             G280  /dev/sdk 
[13:0:0:32]  disk    SEAGATE  5865             G280  /dev/sdm 
[13:0:0:36]  disk    SEAGATE  5865             G280  /dev/sdo 
[13:0:0:40]  disk    SEAGATE  5865             G280  /dev/sdq 
1.2、SAS HBA卡
1.2.1、品牌廠商

SAS HBA卡常見的品牌廠商主要為LSIAdaptecArecaATTO