Intel-LOGO

Intel FPGA Programmierbare Beschleunigungskarte N3000 Board Management Controller

Intel-FPGA-programmierbare-Beschleunigungskarte-N3000-Board-Management-Controller-PRODUKT

Einführung in die programmierbare Intel FPGA-Beschleunigungskarte N3000 BMC

Über dieses Dokument

Lesen Sie das Intel FPGA Programmable Acceleration Card N3000 Board Management User Guide, um mehr über die Funktionen und Merkmale des Intel® MAX® 10 BMC zu erfahren und zu verstehen, wie Telemetriedaten auf dem Intel FPGA PAC N3000 mit PLDM über MCTP SMBus und I2C SMBus gelesen werden . Eine Einführung in Intel MAX 10 Root of Trust (RoT) und sichere Remote-Systemaktualisierungen ist enthalten.

Überview
Der Intel MAX 10 BMC ist für die Steuerung, Überwachung und Gewährung des Zugriffs auf Board-Funktionen verantwortlich. Der Intel MAX 10 BMC verbindet sich mit integrierten Sensoren, dem FPGA und dem Flash und verwaltet Ein-/Ausschaltsequenzen, FPGA-Konfiguration und Telemetriedatenabfrage. Sie können mit dem BMC über das Protokoll Platform Level Data Model (PLDM) Version 1.1.1 kommunizieren. Die BMC-Firmware kann mithilfe der Remote-Systemaktualisierungsfunktion über PCIe vor Ort aktualisiert werden.

Funktionen von BMC

  • Fungiert als Root of Trust (RoT) und ermöglicht die sicheren Aktualisierungsfunktionen des Intel FPGA PAC N3000.
  • Steuert Firmware- und FPGA-Flash-Updates über PCIe.
  • Verwaltet die FPGA-Konfiguration.
  • Konfiguriert die Netzwerkeinstellungen für das Ethernet-Re-Timer-Gerät C827.
  • Steuert die Ein- und Ausschaltsequenzen und die Fehlererkennung mit automatischem Abschaltschutz.
  • Steuert die Stromversorgung und setzt auf der Platine zurück.
  • Schnittstellen zu Sensoren, FPGA-Flash und QSFPs.
  • Überwacht Telemetriedaten (Boardtemperatur, Voltage und Strom) und bietet Schutzmaßnahmen, wenn die Messwerte außerhalb des kritischen Schwellenwerts liegen.
    • Meldet Telemetriedaten über das Platform Level Data Model (PLDM) über MCTP SMBus oder I2C an den Host-BMC.
    • Unterstützt PLDM über MCTP SMBus über PCIe SMBus. 0xCE ist eine 8-Bit-Slave-Adresse.
    • Unterstützt I2C-SMBus. 0xBC ist die 8-Bit-Slave-Adresse.
  • Greift auf die Ethernet-MAC-Adressen im EEPROM und im Field Replaceable Unit Identification (FRUID) EEPROM zu.

Intel Corporation. Alle Rechte vorbehalten. Intel, das Intel-Logo und andere Intel-Marken sind Marken der Intel Corporation oder ihrer Tochtergesellschaften. Intel garantiert die Leistung seiner FPGA- und Halbleiterprodukte gemäß den aktuellen Spezifikationen gemäß der Standardgarantie von Intel, behält sich jedoch das Recht vor, jederzeit ohne Vorankündigung Änderungen an Produkten und Diensten vorzunehmen. Intel übernimmt keine Verantwortung oder Haftung, die sich aus der Anwendung oder Verwendung von hierin beschriebenen Informationen, Produkten oder Diensten ergeben, es sei denn, Intel hat ausdrücklich schriftlich zugestimmt. Intel-Kunden wird empfohlen, die neueste Version der Gerätespezifikationen zu beschaffen, bevor sie sich auf veröffentlichte Informationen verlassen und bevor sie Produkte oder Dienstleistungen bestellen. *Andere Namen und Marken können als Eigentum anderer beansprucht werden.

BMC-Blockdiagramm auf hoher Ebene

Intel-FPGA-programmierbare-Beschleunigungskarte-N3000-Board-Management-Controller-FIG-1

Wurzel des Vertrauens (RoT)
Der Intel MAX 10 BMC fungiert als Root of Trust (RoT) und ermöglicht die sichere Remote-Systemaktualisierungsfunktion des Intel FPGA PAC N3000. Das RoT enthält Funktionen, die dabei helfen können, Folgendes zu verhindern:

  • Laden oder Ausführen von nicht autorisiertem Code oder Designs
  • Unterbrechende Operationen, die von nicht privilegierter Software, privilegierter Software oder dem Host-BMC versucht wurden
  • Unbeabsichtigte Ausführung von älterem Code oder Designs mit bekannten Fehlern oder Schwachstellen, indem es dem BMC ermöglicht wird, die Autorisierung zu widerrufen

Intel® FPGA Programmable Acceleration Card N3000 Board Management Controller – Benutzerhandbuch

Der Intel FPGA PAC N3000 BMC setzt auch mehrere andere Sicherheitsrichtlinien in Bezug auf den Zugriff über verschiedene Schnittstellen durch und schützt den integrierten Flash durch eine Begrenzung der Schreibrate. Informationen zu RoT und Sicherheitsfunktionen des Intel FPGA PAC N3000 finden Sie im Benutzerhandbuch zur Sicherheit der Intel FPGA Programmable Acceleration Card N3000.

Zugehörige Informationen
Sicherheitsbenutzerhandbuch für die programmierbare Intel FPGA-Beschleunigungskarte N3000

Sicheres Remote-Systemupdate
Der BMC unterstützt Secure RSU für die Intel MAX 10 BMC Nios®-Firmware und das RTL-Image sowie Intel Arria® 10 FPGA-Image-Updates mit Authentifizierungs- und Integritätsprüfungen. Die Nios-Firmware ist für die Authentifizierung des Images während des Aktualisierungsvorgangs zuständig. Die Updates werden über die PCIe-Schnittstelle an das Intel Arria 10 GT FPGA gepusht, das sie wiederum über den Intel Arria 10 FPGA SPI-Master an den Intel MAX 10 FPGA SPI-Slave schreibt. Ein temporärer Flash-Bereich namens staging-Bereich speichert jede Art von Authentifizierungs-Bitstream über die SPI-Schnittstelle. Das BMC RoT-Design enthält das kryptografische Modul, das die SHA2-256-Bit-Hash-Verifizierungsfunktion und die ECDSA 256 P 256-Signaturverifizierungsfunktion implementiert, um die Schlüssel und das Benutzerbild zu authentifizieren. Die Nios-Firmware verwendet das kryptografische Modul, um das vom Benutzer signierte Image in der stagBereich. Wenn die Authentifizierung erfolgreich ist, kopiert die Nios-Firmware das Benutzerabbild in den Benutzer-Flash-Bereich. Wenn die Authentifizierung fehlschlägt, meldet die Nios-Firmware einen Fehler. Informationen zu RoT und Sicherheitsfunktionen des Intel FPGA PAC N3000 finden Sie im Benutzerhandbuch zur Sicherheit der Intel FPGA Programmable Acceleration Card N3000.

Zugehörige Informationen
Sicherheitsbenutzerhandbuch für die programmierbare Intel FPGA-Beschleunigungskarte N3000

Power-Sequence-Management
Die BMC-Power-Sequencer-Zustandsmaschine verwaltet die Ein- und Ausschaltsequenzen des Intel FPGA PAC N3000 für Grenzfälle während des Einschaltvorgangs oder des normalen Betriebs. Der Intel MAX 10-Einschaltablauf deckt den gesamten Prozess ab, einschließlich Intel MAX 10-Startvorgang, Nios-Startvorgang und Power-Sequence-Management für die FPGA-Konfiguration. Der Host muss die Build-Versionen von Intel MAX 10 und FPGA sowie den Nios-Status nach jedem Power-Cycle überprüfen und entsprechende Maßnahmen ergreifen, falls das Intel FPGA PAC N3000 auf Eckfälle wie Intel MAX 10 oder FPGA-Factory-Build-Ladefehler oder Nios-Startfehler. Der BMC schützt den Intel FPGA PAC N3000, indem er die Stromversorgung der Karte unter den folgenden Bedingungen abschaltet:

  • 12 V Hilfs- oder PCIe-Edge-Versorgung voltage liegt unter 10.46 V
  • Die FPGA-Kerntemperatur erreicht 100 °C
  • Platinentemperatur erreicht 85 °C

Board-Überwachung durch Sensoren
Die Intel MAX 10 BMC-Monitore voltage, Strom und Temperatur verschiedener Komponenten auf dem Intel FPGA PAC N3000. Host-BMC kann über PCIe SMBus auf die Telemetriedaten zugreifen. Der PCIe-SMBus zwischen Host-BMC und Intel FPGA PAC N3000 Intel MAX 10 BMC wird sowohl vom PLDM-über-MCTP-SMBus-Endpunkt als auch vom Standard-I2C-Slave zur Avalon-MM-Schnittstelle (schreibgeschützt) gemeinsam genutzt.

Platinenüberwachung durch PLDM über MCTP SMBus

Der BMC auf dem Intel FPGA PAC N3000 kommuniziert mit einem Server-BMC über den PCIe* SMBus. Der MCTP-Controller unterstützt das Platform Level Data Model (PLDM) über den Management Component Transport Protocol (MCTP)-Stack. Die MCTP-Endpunkt-Slave-Adresse ist standardmäßig 0xCE. Es kann bei Bedarf über den In-Band-Weg in den entsprechenden Abschnitt des externen FPGA-Quad-SPI-Flash umprogrammiert werden. Der Intel FPGA PAC N3000 BMC unterstützt eine Teilmenge der PLDM- und MCTP-Befehle, damit ein Server-BMC Sensordaten wie voltage, Strom und Temperatur.

Notiz: 
Platform Level Data Model (PLDM) über MCTP SMBus-Endpunkt wird unterstützt. PLDM über MCTP über natives PCIe wird nicht unterstützt. SMBus-Gerätekategorie: „Fixed not Discoverable“-Gerät wird standardmäßig unterstützt, aber alle vier Gerätekategorien werden unterstützt und können vor Ort neu konfiguriert werden. ACK-Poll wird unterstützt

  • Unterstützt mit SMBus-Standard-Slave-Adresse 0xCE.
  • Wird mit fester oder zugewiesener Slave-Adresse unterstützt.

Der BMC unterstützt Version 1.3.0 der Management Component Transport Protocol (MCTP) Base Specification (DTMF-Spezifikation DSP0236), Version 1.1.1 des PLDM for Platform Monitoring and Control-Standards (DTMF-Spezifikation DSP0248) und Version 1.0.0 der PLDM für Message Control and Discovery (DTMF-Spezifikation DSP0240).

Zugehörige Informationen
Spezifikationen der Distributed Management Task Force (DMTF) Für Links zu bestimmten DMTF-Spezifikationen

SMBus-Schnittstellengeschwindigkeit

Die Intel FPGA PAC N3000-Implementierung unterstützt standardmäßig SMBus-Transaktionen bei 100 KHz.

MCTP-Paketisierungsunterstützung

MCTP-Definitionen

  • Der Nachrichtentext repräsentiert die Nutzlast einer MCTP-Nachricht. Der Nachrichtentext kann mehrere MCTP-Pakete umfassen.
  • MCTP-Paketnutzlast bezieht sich auf den Teil des Nachrichtenhauptteils einer MCTP-Nachricht, der in einem einzelnen MCTP-Paket transportiert wird.
  • Übertragungseinheit bezieht sich auf die Größe des Teils der Nutzlast des MCTP-Pakets.

Größe der Übertragungseinheit

  • Die Basisgröße der Übertragungseinheit (minimale Übertragungseinheit) für MCTP beträgt 64 Bytes.
  • Alle MCTP-Steuernachrichten müssen eine Paketnutzlast haben, die nicht größer ist als die Basisübertragungseinheit ohne Verhandlung. (Der Verhandlungsmechanismus für größere Übertragungseinheiten zwischen Endpunkten ist nachrichtentypspezifisch und wird in der MCTP-Basisspezifikation nicht behandelt.)
  • Jede MCTP-Nachricht, deren Nachrichtentext größer als 64 Bytes ist, wird für eine einzelne Nachrichtenübertragung in mehrere Pakete aufgeteilt.
MCTP-Paketfelder

Allgemeine Paket-/Nachrichtenfelder

Intel-FPGA-programmierbare-Beschleunigungskarte-N3000-Board-Management-Controller-FIG-2

Unterstützte Befehlssätze

Unterstützte MCTP-Befehle

  • Holen Sie sich MCTP-Versionsunterstützung
    • Informationen zur Basisspezifikationsversion
    • Informationen zur Version des Steuerprotokolls
    • PLDM über MCTP-Version
  • Legen Sie die Endpunkt-ID fest
  • Endpunkt-ID abrufen
  • Endpunkt-UUID abrufen
  • Holen Sie sich Unterstützung für Nachrichtentypen
  • Holen Sie sich Unterstützung für herstellerdefinierte Nachrichten

Notiz: 
Auf den Befehl Get Vendor Defined Message Support antwortet der BMC mit dem Abschlusscode ERROR_INVALID_DATA(0x02).

Unterstützte PLDM-Basisspezifikationsbefehle

  • TID festlegen
  • GetTID
  • GetPLDMVersion
  • GetPLDMTypes
  • GetPLDMCommands

Unterstütztes PLDM für Plattformüberwachungs- und Steuerungsspezifikationsbefehle

  • TID festlegen
  • GetTID
  • GetSensorReading
  • GetSensorThresholds
  • SetSensorThresholds
  • GetPDRRepositoryInfo
  • Holen Sie sich PDR

Notiz: 
Der BMC Nios II-Kern fragt alle 1 Millisekunde nach verschiedenen Telemetriedaten ab, und die Abfragedauer dauert etwa 500 bis 800 Millisekunden, daher wird die Antwortnachricht gegenüber einer entsprechenden Anforderungsnachricht des Befehls GetSensorReading oder GetSensorThresholds entsprechend alle 500 bis 800 Millisekunden aktualisiert.

Notiz: 
GetStateSensorReadings wird nicht unterstützt.

PLDM-Topologie und -Hierarchie

Definierte Plattform-Deskriptor-Datensätze
Das Intel FPGA PAC N3000 verwendet 20 Platform Descriptor Records (PDRs). Intel MAX 10 BMC unterstützt nur konsolidierte PDRs, bei denen die PDRs nicht dynamisch hinzugefügt oder entfernt werden, wenn QSFP ein- und ausgesteckt wird. Wenn der Sensor nicht angeschlossen ist, wird der Betriebsstatus einfach als nicht verfügbar gemeldet.

Sensornamen und Datensatz-Handle
Allen PDRs wird ein undurchsichtiger numerischer Wert zugewiesen, der als Datensatz-Handle bezeichnet wird. Dieser Wert wird für den Zugriff auf einzelne PDRs im PDR-Repository über GetPDR (DTMF-Spezifikation DSP0248) verwendet. Die folgende Tabelle ist eine konsolidierte Liste der Sensoren, die auf dem Intel FPGA PAC N3000 überwacht werden.

PDRs Sensornamen und Datensatz-Handle

Funktion Sensorname Sensorinformationen PLDM
Sensorlesequelle (Komponente) PDR

Datensatz-Handle

Schwellenwerte in PDR Schwellenänderungen über PLDM erlaubt
Gesamteingangsleistung des Intel FPGA PAC Bordleistung Berechnen Sie von PCIe-Fingern 12V Strom und Voltage 1 0 NEIN
PCIe-Finger 12 V Strom 12 V Backplane-Strom PAC1932 SENSE1 2 0 NEIN
PCIe-Finger 12 V Voltage 12-V-Backplane-Voltage PAC1932 SENSE1 3 0 NEIN
1.2 V Schienenvoltage 1.2 V Voltage MAX10 ADC 4 0 NEIN
1.8 V Schienenvoltage 1.8 V Voltage MAX 10 ADC 6 0 NEIN
3.3 V Schienenvoltage 3.3 V Voltage MAX 10 ADC 8 0 NEIN
FPGA-Core Voltage FPGA-Core Voltage LTC3884 (U44) 10 0 NEIN
FPGA-Kernstrom FPGA-Kernstrom LTC3884 (U44) 11 0 NEIN
FPGA-Kerntemperatur FPGA-Kerntemperatur FPGA-Temperaturdiode über TMP411 12 Obere Warnung: 90

Oberer Todesfall: 100

Ja
Platinentemperatur Platinentemperatur TMP411 (U65) 13 Obere Warnung: 75

Oberer Todesfall: 85

Ja
QSFP0-Voltage QSFP0-Voltage Externes QSFP-Modul (J4) 14 0 NEIN
QSFP0-Temperatur QSFP0-Temperatur Externes QSFP-Modul (J4) 15 Obere Warnung: Vom QSFP-Anbieter festgelegter Wert

Upper Fatal: Vom QSFP-Anbieter festgelegter Wert

NEIN
PCIe-Hilfsstrom von 12 V 12 V ZUSATZ PAC1932 SENSE2 24 0 NEIN
PCIe Auxiliary 12V Voltage 12 V AUX-Voltage PAC1932 SENSE2 25 0 NEIN
QSFP1-Voltage QSFP1-Voltage Externes QSFP-Modul (J5) 37 0 NEIN
QSFP1-Temperatur QSFP1-Temperatur Externes QSFP-Modul (J5) 38 Obere Warnung: Vom QSFP-Anbieter festgelegter Wert

Upper Fatal: Vom QSFP-Anbieter festgelegter Wert

NEIN
PKVL A Kerntemperatur PKVL A Kerntemperatur PKVL-Chip (88EC055) (U18A) 44 0 NEIN
Fortsetzung…
Funktion Sensorname Sensorinformationen PLDM
Sensorlesequelle (Komponente) PDR

Datensatz-Handle

Schwellenwerte in PDR Schwellenänderungen über PLDM erlaubt
PKVL A Serdes-Temperatur PKVL A Serdes-Temperatur PKVL-Chip (88EC055) (U18A) 45 0 NEIN
PKVL B Kerntemperatur PKVL B Kerntemperatur PKVL-Chip (88EC055) (U23A) 46 0 NEIN
PKVL B Serdes-Temperatur PKVL B Serdes-Temperatur PKVL-Chip (88EC055) (U23A) 47 0 NEIN

Notiz: 
Die oberen Warn- und oberen fatalen Werte für QSFP werden vom QSFP-Anbieter festgelegt. Die Werte finden Sie im Datenblatt des Anbieters. Der BMC liest diese Schwellenwerte und meldet sie. fpgad ist ein Dienst, der Ihnen helfen kann, den Server vor einem Absturz zu schützen, wenn die Hardware einen oberen nicht wiederherstellbaren oder unteren nicht wiederherstellbaren Sensorschwellenwert (auch als fataler Schwellenwert bezeichnet) erreicht. fpgad ist in der Lage, jeden der 20 vom Board Management Controller gemeldeten Sensoren zu überwachen. Weitere Informationen finden Sie im Thema Graceful Shutdown im Intel Acceleration Stack User Guide: Intel FPGA Programmable Acceleration Card N3000.

Notiz:
Qualifizierte OEM-Serversysteme sollten die erforderliche Kühlung für Ihre Workloads bereitstellen. Sie können die Werte der Sensoren abrufen, indem Sie den folgenden OPAE-Befehl als root oder sudo ausführen: $ sudo fpgainfo bmc

Zugehörige Informationen
Intel Acceleration Stack Benutzerhandbuch: Intel FPGA programmierbare Beschleunigungskarte N3000

Board-Überwachung über I2C SMBus

Die standardmäßige I2C-Slave-zu-Avalon-MM-Schnittstelle (schreibgeschützt) teilt den PCIe-SMBus zwischen dem Host-BMC und dem Intel MAX 10 RoT. Das Intel FPGA PAC N3000 unterstützt die Standard-I2C-Slave-Schnittstelle und die Slave-Adresse ist standardmäßig 0xBC nur für den Out-of-Band-Zugriff. Der Byte-Adressierungsmodus ist der 2-Byte-Offset-Adressmodus. Hier ist die Speicherzuordnung des Telemetriedatenregisters, mit der Sie über die I2C-Befehle auf Informationen zugreifen können. Die Beschreibungsspalte beschreibt, wie die zurückgegebenen Registerwerte weiterverarbeitet werden können, um die tatsächlichen Werte zu erhalten. Die Einheiten können Celsius (°C), mA, mV, mW sein, je nachdem, welchen Sensor Sie ablesen.

Speicherabbild des Telemetriedatenregisters

Registrieren Versatz Breite Zugang Feld Standardwert Beschreibung
Platinentemperatur 0 x 100 32 RO [31:0] 32'h00000000 TMP411(U65)

Registerwert ist vorzeichenbehaftete ganze Zahl Temperatur = Registerwert

* 0.5

Platinentemperatur Hoch Warn 0 x 104 32 RW [31:0] 32'h00000000 TMP411(U65)

Der Registerwert ist eine ganze Zahl mit Vorzeichen

High Limit = Registerwert

* 0.5

Platinentemperatur Hoch Fatal 0 x 108 32 RW [31:0] 32'h00000000 TMP411(U65)

Der Registerwert ist eine ganze Zahl mit Vorzeichen

High Critical = Registerwert

* 0.5

FPGA-Kerntemperatur 0 x 110 32 RO [31:0] 32'h00000000 TMP411(U65)

Der Registerwert ist eine ganze Zahl mit Vorzeichen

Temperatur = Registerwert

* 0.5

FPGA-Die

Warnen bei hoher Temperatur

0 x 114 32 RW [31:0] 32'h00000000 TMP411(U65)

Der Registerwert ist eine ganze Zahl mit Vorzeichen

High Limit = Registerwert

* 0.5

Fortsetzung…
Registrieren Versatz Breite Zugang Feld Standardwert Beschreibung
FPGA-Core Voltage 0x13C 32 RO [31:0] 32'h00000000 LTC3884(U44)

Bandtage(mV) = Registerwert

FPGA-Kernstrom 0 x 140 32 RO [31:0] 32'h00000000 LTC3884(U44)

Strom (mA) = Registerwert

12-V-Rückwandplatine Voltage 0 x 144 32 RO [31:0] 32'h00000000 Bandtage(mV) = Registerwert
12-V-Backplane-Strom 0 x 148 32 RO [31:0] 32'h00000000 Strom (mA) = Registerwert
1.2 V Voltage 0x14C 32 RO [31:0] 32'h00000000 Bandtage(mV) = Registerwert
12-V-Aux-Voltage 0 x 150 32 RO [31:0] 32'h00000000 Bandtage(mV) = Registerwert
12 V Hilfsstrom 0 x 154 32 RO [31:0] 32'h00000000 Strom (mA) = Registerwert
1.8 V Voltage 0 x 158 32 RO [31:0] 32'h00000000 Bandtage(mV) = Registerwert
3.3 V Voltage 0x15C 32 RO [31:0] 32'h00000000 Bandtage(mV) = Registerwert
Bordleistung 0 x 160 32 RO [31:0] 32'h00000000 Leistung (mW) = Registerwert
PKVL A Kerntemperatur 0 x 168 32 RO [31:0] 32'h00000000 PKVL1(U18A)

Der Registerwert ist eine ganze Zahl mit Vorzeichen

Temperatur = Registerwert

* 0.5

PKVL A Serdes-Temperatur 0x16C 32 RO [31:0] 32'h00000000 PKVL1(U18A)

Der Registerwert ist eine ganze Zahl mit Vorzeichen

Temperatur = Registerwert

* 0.5

PKVL B Kerntemperatur 0 x 170 32 RO [31:0] 32'h00000000 PKVL2(U23A)

Der Registerwert ist eine ganze Zahl mit Vorzeichen

Temperatur = Registerwert

* 0.5

PKVL B Serdes-Temperatur 0 x 174 32 RO [31:0] 32'h00000000 PKVL2(U23A)

Der Registerwert ist eine ganze Zahl mit Vorzeichen

Temperatur = Registerwert

* 0.5

QSFP-Werte werden erhalten, indem das QSFP-Modul gelesen und die gelesenen Werte in das entsprechende Register gemeldet werden. Wenn das QSFP-Modul Digital Diagnostics Monitoring nicht unterstützt oder wenn das QSFP-Modul nicht installiert ist, ignorieren Sie die aus den QSFP-Registern gelesenen Werte. Verwenden Sie das Tool Intelligent Platform Management Interface (IPMI), um die Telemetriedaten über den I2C-Bus zu lesen.

I2C-Befehl zum Auslesen der Platinentemperaturen bei Adresse 0x100:
Im folgenden Befehl:

  • 0x20 ist die I2C-Masterbusadresse Ihres Servers, der direkt auf PCIe-Steckplätze zugreifen kann. Diese Adresse variiert je nach Server. Die korrekte I2C-Adresse Ihres Servers entnehmen Sie bitte Ihrem Serverdatenblatt.
  • 0xBC ist die I2C-Slave-Adresse des Intel MAX 10 BMC.
  • 4 ist die Anzahl der gelesenen Datenbytes
  • 0x01 0x00 ist die Registeradresse der Platinentemperatur, die in der Tabelle dargestellt ist.

Befehl:
ipmitool i2c-Bus=0x20 0xBC 4 0x01 0x00

Ausgabe:
01110010 00000000 00000000 00000000

Der Ausgabewert in Hexadezimal ist: 0x72000000 0x72 ist 114 in Dezimal. Um die Temperatur in Celsius zu berechnen, multipliziere mit 0.5: 114 x 0.5 = 57 °C

Notiz: 
Nicht alle Server unterstützen den direkten I2C-Buszugriff auf PCIe-Steckplätze. Bitte überprüfen Sie Ihr Serverdatenblatt auf Support-Informationen und die I2C-Busadresse.

EEPROM-Datenformat

Dieser Abschnitt definiert das Datenformat sowohl des MAC-Adressen-EEPROMs als auch des FRUID-EEPROMs, auf die jeweils durch den Host und das FPGA zugegriffen werden kann.

MAC-EEPROM
Zum Zeitpunkt der Herstellung programmiert Intel das MAC-Adressen-EEPROM mit den MAC-Adressen des Intel Ethernet Controller XL710-BM2. Der Intel MAX 10 greift über den I2C-Bus auf die Adressen im MAC-Adressen-EEPROM zu. Ermitteln Sie die MAC-Adresse mit dem folgenden Befehl: $ sudo fpga mac

Das MAC-Adressen-EEPROM enthält nur die beginnende 6-Byte-MAC-Adresse bei Adresse 0x00h, gefolgt von der MAC-Adressenzählung von 08. Die beginnende MAC-Adresse ist auch auf dem Aufkleber auf der Rückseite der Leiterplatte (PCB) aufgedruckt. Der OPAE-Treiber stellt sysfs-Knoten bereit, um die Start-MAC-Adresse von folgendem Speicherort abzurufen: /sys/class/fpga/intel-fpga-dev.*/intel-fpga-fme.*/spi altera.*.auto/spi_master/spi */spi*/mac_address Anfangs-MAC-Adresse Bspample: 644C360F4430 Der OPAE-Treiber erhält die Zählung von folgendem Speicherort: /sys/class/fpga/intel-fpga-dev.*/intel-fpga-fme.*/spi-altera.*.auto/spi_master/spi*/ spi*/mac_count MAC-Anzahl Bspample: 08 Von der Start-MAC-Adresse werden die verbleibenden sieben MAC-Adressen erhalten, indem das niederwertigste Byte (LSB) der Start-MAC-Adresse sequentiell für jede nachfolgende MAC-Adresse um eins erhöht wird. Nachfolgende MAC-Adresse zampauf:

  • 644C360F4431
  • 644C360F4432
  • 644C360F4433
  • 644C360F4434
  • 644C360F4435
  • 644C360F4436
  • 644C360F4437

Notiz: Wenn Sie ein ES Intel FPGA PAC N3000 verwenden, kann das MAC EEPROM nicht programmiert werden. Wenn das MAC-EEPROM nicht programmiert ist, kehrt die erste gelesene MAC-Adresse als FFFFFFFFFFFF zurück.

Field Replaceable Unit Identification (FRUID) EEPROM-Zugriff
Sie können den Field Replaceable Unit Identification (FRUID) EEPROM (0xA0) nur vom Host-BMC über SMBus lesen. Die Struktur im FRUID EEPROM basiert auf der IPMI-Spezifikation, Platform Management FRU Information Storage Definition, v1.3, 24. März 2015, aus der eine Board-Informationsstruktur abgeleitet wird. Das FRUID EEPROM folgt dem gemeinsamen Header-Format mit Board Area und Product Info Area. Beziehen Sie sich auf die nachstehende Tabelle, um zu sehen, welche Felder im gemeinsamen Header für das FRUID-EEPROM gelten.

Gemeinsamer Header des FRUID EEPROM
Alle Felder in der gemeinsamen Kopfzeile sind Pflichtfelder.

Feldlänge in Bytes Feld Beschreibung FRUID-EEPROM-Wert
 

 

1

Common Header Format Version 7:4 – reserviert, als 0000b schreiben

3:0 – Format Versionsnummer = 1h für diese Spezifikation

 

 

01h (Eingestellt als 00000001b)

 

1

Anfangs-Offset des internen Verwendungsbereichs (in Vielfachen von 8 Bytes).

00h zeigt an, dass dieser Bereich nicht vorhanden ist.

 

00h (nicht vorhanden)

 

1

Chassis Info Area Start-Offset (in Vielfachen von 8 Bytes).

00h zeigt an, dass dieser Bereich nicht vorhanden ist.

 

00h (nicht vorhanden)

 

1

Board Area Startoffset (in Vielfachen von 8 Bytes).

00h zeigt an, dass dieser Bereich nicht vorhanden ist.

 

01 Uhr

 

1

Start-Offset des Produktinfobereichs (in Vielfachen von 8 Bytes).

00h zeigt an, dass dieser Bereich nicht vorhanden ist.

 

0Ch

 

1

Startoffset des MultiRecord-Bereichs (in Vielfachen von 8 Bytes).

00h zeigt an, dass dieser Bereich nicht vorhanden ist.

 

00h (nicht vorhanden)

1 PAD, schreiben Sie als 00h 00 Uhr
 

1

Gemeinsame Header-Prüfsumme (Null-Prüfsumme)  

F2h

Die gemeinsamen Header-Bytes werden ab der ersten Adresse des EEPROM platziert. Das Layout sieht wie in der Abbildung unten aus.

Blockdiagramm des FRUID-EEPROM-Speicherlayouts

Intel-FPGA-programmierbare-Beschleunigungskarte-N3000-Board-Management-Controller-FIG-3

FRUID-EEPROM-Platinenbereich

Feldlänge in Bytes Feld Beschreibung Feldwerte Feldcodierung
1 Board Area Format Version 7:4 – reserviert, schreiben Sie als 0000b 3:0 – Formatversionsnummer 0 x 01 Auf 1h einstellen (0000 0001b)
1 Platinenbereichslänge (in Vielfachen von 8 Bytes) 0x0B 88 Bytes (einschließlich 2 Pad 00 Bytes)
1 Sprachcode 0 x 00 Für Englisch auf 0 setzen

Notiz: Derzeit werden keine anderen Sprachen unterstützt

3 Herstellungsdatum/Uhrzeit: Anzahl der Minuten ab 0:00 Uhr 1.

Niederwertigstes Byte zuerst (Little Endian)

00_00_00h = unspezifiziert (dynamisches Feld)

0 x 10

0 x 65

OS-Version:

Zeitunterschied zwischen 12:00 Uhr am 1 und 1:96 Uhr

11 ist 07

Minuten = b76510h – im Little-Endian-Format gespeichert

1 Board Hersteller Typ/Länge Byte 0xD2 8-Bit-ASCII + LATIN1 codiert 7:6 – 11b

5:0 – 010010b (18 Byte Daten)

P Board-Hersteller-Bytes 0 x 49

Version:

0 x 74

0 x 65

0x6C

0xAE

8-Bit ASCII + LATIN1 codiert Intel® Corporation
Fortsetzung…
Feldlänge in Bytes Feld Beschreibung Feldwerte Feldcodierung
0 x 20

0 x 43

Version:

0 x 72

0 x 70

Version:

0 x 72

0 x 61

0 x 74

0 x 69

Version:

Version:

1 Board Produktname Typ/Länge Byte 0xD5 8-Bit-ASCII + LATIN1 codiert 7:6 – 11b

5:0 – 010101b (21 Byte Daten)

Q Board-Produktname Bytes OS-Nummer:

0X6E

OS-Nummer:

OS-Nummer:

0X6C

0XAE

OS-Nummer:

OS-Nummer:

OS-Nummer:

OS-Nummer:

OS-Nummer:

OS-Nummer:

OS-Nummer:

OS-Nummer:

OS-Nummer:

OS-Nummer:

0X4E

OS-Nummer:

OS-Nummer:

OS-Nummer:

OS-Nummer:

8-Bit-ASCII + LATIN1-codierter Intel FPGA PAC N3000
1 Board-Seriennummer Typ/Länge Byte 0xCC 8-Bit-ASCII + LATIN1 codiert 7:6 – 11b

5:0 – 001100b (12 Byte Daten)

N Bytes der Board-Seriennummer (dynamisches Feld) 0 x 30

0 x 30

0 x 30

0 x 30

0 x 30

0 x 30

0 x 30

0 x 30

8-Bit-ASCII + LATIN1-codiert

Die ersten 1 Hexadezimalziffern sind OUI: 6

Die 2. 6 Hexadezimalziffern sind die MAC-Adresse: 000000

Fortsetzung…
Feldlänge in Bytes Feld Beschreibung Feldwerte Feldcodierung
0 x 30

0 x 30

0 x 30

0 x 30

Notiz: Dies wird als ex kodiertample und muss in einem tatsächlichen Gerät geändert werden

Die ersten 1 Hexadezimalziffern sind OUI: 6C644

Die 2. 6 Hexadezimalziffern sind die MAC-Adresse: 00AB2E

Notiz: Nicht zu identifizieren

FRUID programmiert, OUI und MAC-Adresse auf „0000“ setzen.

1 Board-Teilenummer Typ/Länge Byte 0xCE 8-Bit-ASCII + LATIN1 codiert 7:6 – 11b

5:0 – 001110b (14 Byte Daten)

M Board-Teilenummer-Bytes 0x4B

0 x 38

0 x 32

0 x 34

0 x 31

0 x 37

0 x 20

0 x 30

0 x 30

0 x 32

0 x 20

0 x 20

0 x 20

0 x 20

8-Bit-ASCII + LATIN1 codiert mit Stücklisten-ID.

Bei einer Länge von 14 Byte ist die codierte Teilenummer der Platine zampDatei ist K82417-002

Notiz: Dies wird als ex kodiertample und muss in einem tatsächlichen Gerät geändert werden.

Dieser Feldwert variiert je nach Board-PBA-Nummer.

PBA-Revision wurde in FRUID entfernt. Diese letzten vier Bytes geben leer zurück und sind für zukünftige Verwendung reserviert.

1 FRU File ID-Typ/Länge Byte 0 x 00 8-Bit-ASCII + LATIN1 codiert 7:6 – 00b

5:0 – 000000b (0 Byte Daten)

Die FRU File Das ID-Bytes-Feld, das diesem folgen sollte, ist nicht enthalten, da das Feld 'null' wäre.

Notiz: FRU File ID-Bytes. Die FRU File Versionsfeld ist ein vordefiniertes Feld, das als Fertigungshilfe zur Überprüfung der Version bereitgestellt wird file die während der Herstellung oder Feldaktualisierung verwendet wurde, um die FRU-Informationen zu laden. Der Inhalt ist herstellerspezifisch. Dieses Feld wird auch im Bereich Board-Info bereitgestellt.

Eines oder beide Felder können 'null' sein.

1 MMID-Typ/Längenbyte OS-Version: 8-Bit-ASCII + LATIN1-codiert
Fortsetzung…
Feldlänge in Bytes Feld Beschreibung Feldwerte Feldcodierung
7:6 – 11b

5:0 – 000110b (6 Byte Daten)

Notiz: Dies wird als ex kodiertample und muss in einem tatsächlichen Gerät geändert werden

M MMID-Bytes 0 x 39

0 x 39

0 x 39

0 x 44

0 x 58

0 x 46

Als 6 Hex-Ziffern formatiert. Spezifische BspampDatei in Zelle neben Intel FPGA PAC N3000 MMID = 999DXF.

Dieser Feldwert variiert mit verschiedenen SKUs-Feldern wie MMID, OPN, PBN usw.

1 C1h (Typ/Länge Byte codiert, um anzuzeigen, dass keine weiteren Infofelder vorhanden sind). OS-Version:
Y 00h – jeder verbleibende ungenutzte Speicherplatz 0 x 00
1 Platinenbereich Prüfsumme (Null-Prüfsumme) OS-Version: Notiz: Die Prüfsumme in dieser Tabelle ist eine Null-Prüfsumme, die für die in der Tabelle verwendeten Werte berechnet wird. Für die tatsächlichen Werte eines Intel FPGA PAC N3000 muss neu berechnet werden.
Feldlänge in Bytes Feld Beschreibung Feldwerte Feldcodierung
1 Produktbereichsformat Version 7:4 – reserviert, als 0000b schreiben

3:0 – Format Versionsnummer = 1h für diese Spezifikation

0 x 01 Auf 1h einstellen (0000 0001b)
1 Produktbereichslänge (in Vielfachen von 8 Byte) Version: Insgesamt 80 Byte
1 Sprachcode 0 x 00 Für Englisch auf 0 setzen

Notiz: Derzeit werden keine anderen Sprachen unterstützt

1 Hersteller Name Typ/Länge Byte 0xD2 8-Bit-ASCII + LATIN1 codiert 7:6 – 11b

5:0 – 010010b (18 Byte Daten)

N Bytes des Herstellernamens 0 x 49

Version:

0 x 74

0 x 65

0x6C

0xAE

0 x 20

0 x 43

Version:

8-Bit-ASCII + LATIN1-codierte Intel Corporation
Fortsetzung…
Feldlänge in Bytes Feld Beschreibung Feldwerte Feldcodierung
0 x 72

0 x 70

Version:

0 x 72

0 x 61

0 x 74

0 x 69

Version:

Version:

1 Produktname Typ/Länge Byte 0xD5 8-Bit-ASCII + LATIN1 codiert 7:6 – 11b

5:0 – 010101b (21 Byte Daten)

M Produktnamen-Bytes 0 x 49

Version:

0 x 74

0 x 65

0x6C

0xAE

0 x 20

0 x 46

0 x 50

0 x 47

0 x 41

0 x 20

0 x 50

0 x 41

0 x 43

0 x 20

Version:

0 x 33

0 x 30

0 x 30

0 x 30

8-Bit-ASCII + LATIN1-codierter Intel FPGA PAC N3000
1 Produktteil/Modellnummer Typ/Länge Byte 0xCE 8-Bit-ASCII + LATIN1 codiert 7:6 – 11b

5:0 – 001110b (14 Byte Daten)

O Produkt-Teile-/Modellnummer-Bytes 0 x 42

0 x 44

Version:

Version:

0 x 56

0 x 56

Version:

Version:

0 x 33

0 x 30

0 x 30

0 x 30

Version:

0 x 31

8-Bit-ASCII + LATIN1-codiert

OPN für die Karte BD-NVV-N3000-1

Dieser Feldwert variiert mit verschiedenen Intel FPGA PAC N3000 OPNs.

Fortsetzung…
Feldlänge in Bytes Feld Beschreibung Feldwerte Feldcodierung
1 Produktversion Typ/Länge Byte 0 x 01 8-Bit-Binär 7:6 – 00b

5:0 – 000001b (1 Datenbyte)

R Bytes der Produktversion 0 x 00 Dieses Feld ist als Familienmitglied codiert
1 Produktseriennummer Typ/Länge Byte 0xCC 8-Bit-ASCII + LATIN1 codiert 7:6 – 11b

5:0 – 001100b (12 Byte Daten)

P Produktseriennummer-Bytes (dynamisches Feld) 0 x 30

0 x 30

0 x 30

0 x 30

0 x 30

0 x 30

0 x 30

0 x 30

0 x 30

0 x 30

0 x 30

0 x 30

8-Bit-ASCII + LATIN1-codiert

Die ersten 1 Hexadezimalziffern sind OUI: 6

Die 2. 6 Hexadezimalziffern sind die MAC-Adresse: 000000

Notiz: Dies wird als ex kodiertample und muss in einem tatsächlichen Gerät geändert werden.

Die ersten 1 Hexadezimalziffern sind OUI: 6C644

Die 2. 6 Hexadezimalziffern sind die MAC-Adresse: 00AB2E

Notiz: Nicht zu identifizieren

FRUID programmiert, OUI und MAC-Adresse auf „0000“ setzen.

1 Vermögenswert Tag Typ/Länge Byte 0 x 01 8-Bit-Binär 7:6 – 00b

5:0 – 000001b (1 Datenbyte)

Q Vermögenswert Tag 0 x 00 Nicht unterstützt
1 FRU File ID-Typ/Länge Byte 0 x 00 8-Bit-ASCII + LATIN1 codiert 7:6 – 00b

5:0 – 000000b (0 Byte Daten)

Die FRU File Das ID-Bytes-Feld, das diesem folgen sollte, ist nicht enthalten, da das Feld 'null' wäre.

Fortsetzung…
Feldlänge in Bytes Feld Beschreibung Feldwerte Feldcodierung
Notiz: FRU file ID-Bytes.

Die FRU File Versionsfeld ist ein vordefiniertes Feld, das als Fertigungshilfe zur Überprüfung der Version bereitgestellt wird file die während der Herstellung oder Feldaktualisierung verwendet wurde, um die FRU-Informationen zu laden. Der Inhalt ist herstellerspezifisch. Dieses Feld wird auch im Bereich Board-Info bereitgestellt.

Eines oder beide Felder können 'null' sein.

1 C1h (Typ/Länge Byte codiert, um anzuzeigen, dass keine weiteren Infofelder vorhanden sind). OS-Version:
Y 00h – jeder verbleibende ungenutzte Speicherplatz 0 x 00
1 Produktinfobereich Prüfsumme (Null-Prüfsumme)

(Dynamisches Feld)

Version: Notiz: die Prüfsumme in dieser Tabelle ist eine Null-Prüfsumme, die für die in der Tabelle verwendeten Werte berechnet wird. Für die tatsächlichen Werte eines Intel FPGA PAC muss er neu berechnet werden.

Intel® FPGA Programmable Acceleration Card N3000 Board Management Controller – Benutzerhandbuch

Änderungsverlauf

Revisionsverlauf für das Benutzerhandbuch für den Intel FPGA Programmable Acceleration Card N3000 Board Management Controller

Dokumentversion Änderungen
2019.11.25 Erste Produktionsfreigabe.

Intel Corporation. Alle Rechte vorbehalten. Intel, das Intel-Logo und andere Intel-Marken sind Marken der Intel Corporation oder ihrer Tochtergesellschaften. Intel garantiert die Leistung seiner FPGA- und Halbleiterprodukte gemäß den aktuellen Spezifikationen gemäß Intels Standardgewährleistung, behält sich jedoch das Recht vor, jederzeit ohne Vorankündigung Änderungen an Produkten und Diensten vorzunehmen. Intel übernimmt keine Verantwortung oder Haftung, die sich aus der Anwendung oder Verwendung von hierin beschriebenen Informationen, Produkten oder Diensten ergeben, es sei denn, Intel hat ausdrücklich schriftlich zugestimmt. Intel-Kunden wird empfohlen, die neueste Version der Gerätespezifikationen zu beschaffen, bevor sie sich auf veröffentlichte Informationen verlassen und bevor sie Produkte oder Dienstleistungen bestellen.
*Andere Namen und Marken können Eigentum Dritter sein.

Dokumente / Ressourcen

Intel FPGA Programmierbare Beschleunigungskarte N3000 Board Management Controller [pdf] Benutzerhandbuch
FPGA Programmierbare Beschleunigungskarte N3000 Board, Management Controller, FPGA, Programmierbare Beschleunigungskarte N3000 Board, Management Controller, N3000 Board Management Controller, Management Controller

Verweise

Hinterlasse einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Pflichtfelder sind markiert *