Intel FPGA Programmierbare Beschleunigungskarte N3000 Board Management Controller
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
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
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
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 |