인텔 FPGA 프로그래밍 가능 가속 카드 N3000 보드 관리 컨트롤러
인텔 FPGA 프로그래밍 가능 가속 카드 N3000 BMC 소개
이 문서에 대하여
Intel® MAX® 3000 BMC의 기능과 특징에 대해 자세히 알아보고 MCTP SMBus 및 I10C SMBus를 통한 PLDM을 사용하여 Intel FPGA PAC N3000에서 원격 측정 데이터를 읽는 방법을 이해하려면 Intel FPGA Programmable Acceleration Card N2 보드 관리 사용자 가이드를 참조하세요. Intel MAX 10 신뢰 루트(RoT) 및 보안 원격 시스템 업데이트에 대한 소개가 포함되어 있습니다.
위에view
Intel MAX 10 BMC는 보드 기능을 제어, 모니터링 및 액세스 권한을 부여하는 역할을 합니다. Intel MAX 10 BMC는 온보드 센서, FPGA 및 플래시와 인터페이스하고 전원 켜기/끄기 시퀀스, FPGA 구성 및 원격 측정 데이터 폴링을 관리합니다. Platform Level Data Model(PLDM) 버전 1.1.1 프로토콜을 사용하여 BMC와 통신할 수 있습니다. BMC 펌웨어는 원격 시스템 업데이트 기능을 사용하여 PCIe를 통해 현장에서 업그레이드할 수 있습니다.
BMC의 특징
- 신뢰의 뿌리(RoT) 역할을 하며 Intel FPGA PAC N3000의 안전한 업데이트 기능을 지원합니다.
- PCIe를 통한 펌웨어 및 FPGA 플래시 업데이트를 제어합니다.
- FPGA 구성을 관리합니다.
- C827 이더넷 리타이머 장치에 대한 네트워크 설정을 구성합니다.
- 전원 켜기/끄기 시퀀싱 및 자동 종료 보호 기능을 갖춘 오류 감지 기능을 제어합니다.
- 보드의 전원을 제어하고 재설정합니다.
- 센서, FPGA 플래시, QSFP와의 인터페이스.
- 원격 측정 데이터(보드 온도, 볼륨)를 모니터링합니다.tage 및 현재)를 제공하고 판독값이 임계 임계값을 벗어날 때 보호 조치를 제공합니다.
- MCTP SMBus 또는 I2C를 통한 플랫폼 수준 데이터 모델(PLDM)을 통해 호스트 BMC에 원격 측정 데이터를 보고합니다.
- PCIe SMBus를 통한 MCTP SMBus에서 PLDM을 지원합니다. 0xCE는 8비트 슬레이브 주소입니다.
- I2C SMBus를 지원합니다. 0xBC는 8비트 슬레이브 주소입니다.
- EEPROM과 FRUID(Field Replaceable Unit Identification) EEPROM의 이더넷 MAC 주소에 액세스합니다.
인텔사. 판권 소유. 인텔, 인텔 로고 및 기타 인텔 마크는 인텔사 또는 그 자회사의 상표입니다. 인텔은 인텔의 표준 보증에 따라 FPGA 및 반도체 제품의 성능을 최신 사양으로 보증하지만 사전 통지 없이 언제든지 제품 및 서비스를 변경할 수 있는 권리를 보유합니다. 인텔은 인텔이 서면으로 명시적으로 동의한 경우를 제외하고 여기에 설명된 정보, 제품 또는 서비스의 적용 또는 사용으로 인해 발생하는 어떠한 책임도 지지 않습니다. 인텔 고객은 게시된 정보에 의존하고 제품이나 서비스를 주문하기 전에 최신 버전의 장치 사양을 얻는 것이 좋습니다. *다른 이름과 브랜드는 다른 사람의 자산일 수 있습니다.
BMC 상위 레벨 블록 다이어그램
신뢰의 루트(RoT)
Intel MAX 10 BMC는 RoT(Root of Trust) 역할을 하며 Intel FPGA PAC N3000의 안전한 원격 시스템 업데이트 기능을 활성화합니다. RoT에는 다음을 방지하는 데 도움이 될 수 있는 기능이 포함되어 있습니다.
- 허가받지 않은 코드나 디자인의 로딩이나 실행
- 권한이 없는 소프트웨어, 권한이 있는 소프트웨어 또는 호스트 BMC가 시도한 파괴적 작업
- BMC가 권한을 취소할 수 있도록 하여 알려진 버그나 취약점이 있는 이전 코드나 디자인의 의도치 않은 실행을 방지합니다.
Intel® FPGA 프로그래밍 가능 가속 카드 N3000 보드 관리 컨트롤러 사용자 가이드
Intel FPGA PAC N3000 BMC는 다양한 인터페이스를 통한 액세스와 관련된 여러 다른 보안 정책을 시행하고 쓰기 속도 제한을 통해 온보드 플래시를 보호합니다. Intel FPGA PAC N3000의 RoT 및 보안 기능에 대한 정보는 Intel FPGA Programmable Acceleration Card N3000 보안 사용자 가이드를 참조하십시오.
관련 정보
Intel FPGA 프로그래밍 가능 가속 카드 N3000 보안 사용자 가이드
보안 원격 시스템 업데이트
BMC는 Intel MAX 10 BMC Nios® 펌웨어 및 RTL 이미지에 대한 Secure RSU와 인증 및 무결성 검사를 통한 Intel Arria® 10 FPGA 이미지 업데이트를 지원합니다. Nios 펌웨어는 업데이트 프로세스 중에 이미지를 인증하는 역할을 합니다. 업데이트는 PCIe 인터페이스를 통해 Intel Arria 10 GT FPGA로 푸시되고, 이는 다시 Intel Arria 10 FPGA SPI 마스터를 통해 Intel MAX 10 FPGA SPI 슬레이브로 씁니다. s라는 임시 플래시 영역taging 영역은 SPI 인터페이스를 통해 모든 유형의 인증 비트스트림을 저장합니다. BMC RoT 설계에는 SHA2 256비트 해시 검증 기능과 ECDSA 256 P 256 서명 검증 기능을 구현하여 키와 사용자 이미지를 인증하는 암호화 모듈이 포함되어 있습니다. Nios 펌웨어는 암호화 모듈을 사용하여 s에서 사용자 서명 이미지를 인증합니다.taging 영역. 인증이 통과되면 Nios 펌웨어는 사용자 이미지를 사용자 플래시 영역으로 복사합니다. 인증이 실패하면 Nios 펌웨어는 오류를 보고합니다. Intel FPGA Programmable Acceleration Card N3000 보안 사용자 가이드에서 Intel FPGA PAC N3000의 RoT 및 보안 기능에 대한 정보를 참조하십시오.
관련 정보
Intel FPGA 프로그래밍 가능 가속 카드 N3000 보안 사용자 가이드
전원 시퀀스 관리
BMC Power 시퀀서 상태 머신은 전원 켜기 프로세스 또는 정상 작동 중에 코너 케이스에 대한 Intel FPGA PAC N3000 전원 켜기 및 전원 끄기 시퀀스를 관리합니다. Intel MAX 10 전원 켜기 흐름은 Intel MAX 10 부팅, Nios 부팅 및 FPGA 구성을 위한 전원 시퀀스 관리를 포함한 전체 프로세스를 포괄합니다. 호스트는 모든 전원 주기 후에 Intel MAX 10과 FPGA의 빌드 버전과 Nios 상태를 확인하고 Intel FPGA PAC N3000이 Intel MAX 10 또는 FPGA 팩토리 빌드 로드 실패 또는 Nios 부팅 실패와 같은 코너 케이스에 부딪히는 경우 해당 조치를 취해야 합니다. BMC는 다음 조건에서 카드에 대한 전원을 차단하여 Intel FPGA PAC N3000을 보호합니다.
- 12V 보조 또는 PCIe 에지 공급 볼륨tage는 10.46V 미만입니다.
- FPGA 코어 온도가 100°C에 도달
- 보드 온도가 85 °C에 도달
센서를 통한 보드 모니터링
Intel MAX 10 BMC 모니터 볼륨tage, Intel FPGA PAC N3000의 다양한 구성 요소의 전류 및 온도. 호스트 BMC는 PCIe SMBus를 통해 원격 측정 데이터에 액세스할 수 있습니다. 호스트 BMC와 Intel FPGA PAC N3000 Intel MAX 10 BMC 간의 PCIe SMBus는 PLDM over MCTP SMBus 엔드포인트와 Avalon-MM 인터페이스(읽기 전용)에 대한 표준 I2C 슬레이브에서 모두 공유됩니다.
MCTP SMBus를 통한 PLDM을 통한 보드 모니터링
Intel FPGA PAC N3000의 BMC는 PCIe* SMBus를 통해 서버 BMC와 통신합니다. MCTP 컨트롤러는 Management Component Transport Protocol(MCTP) 스택을 통해 Platform Level Data Model(PLDM)을 지원합니다. MCTP 엔드포인트 슬레이브 주소는 기본적으로 0xCE입니다. 필요한 경우 인밴드 방식을 통해 외부 FPGA Quad SPI 플래시의 해당 섹션으로 다시 프로그래밍할 수 있습니다. Intel FPGA PAC N3000 BMC는 서버 BMC가 볼륨과 같은 센서 데이터를 얻을 수 있도록 PLDM 및 MCTP 명령의 하위 집합을 지원합니다.tage, 전류 및 온도.
메모:
MCTP SMBus 엔드포인트를 통한 플랫폼 수준 데이터 모델(PLDM)이 지원됩니다. 네이티브 PCIe를 통한 MCTP를 통한 PLDM은 지원되지 않습니다. SMBus 장치 범주: "고정됨 발견 불가" 장치는 기본적으로 지원되지만, 네 가지 장치 범주가 모두 지원되고 현장에서 재구성 가능합니다. ACK-Poll이 지원됩니다.
- SMBus 기본 슬레이브 주소 0xCE로 지원됩니다.
- 고정 또는 할당된 슬레이브 주소로 지원됩니다.
BMC는 MCTP(Management Component Transport Protocol) 기반 사양(DTMF 사양 DSP1.3.0)의 버전 0236, 플랫폼 모니터링 및 제어를 위한 PLDM 표준(DTMF 사양 DSP1.1.1)의 버전 0248, 메시지 제어 및 검색을 위한 PLDM(DTMF 사양 DSP1.0.0)의 버전 0240을 지원합니다.
관련 정보
DMTF(분산 관리 태스크 포스) 사양 특정 DMTF 사양에 대한 링크
SMBus 인터페이스 속도
Intel FPGA PAC N3000 구현은 기본적으로 100KHz에서 SMBus 트랜잭션을 지원합니다.
MCTP 패킷화 지원
MCTP 정의
- 메시지 본문은 MCTP 메시지의 페이로드를 나타냅니다. 메시지 본문은 여러 MCTP 패킷에 걸쳐 있을 수 있습니다.
- MCTP 패킷 페이로드는 단일 MCTP 패킷에 포함된 MCTP 메시지 본문의 일부를 말합니다.
- 전송 단위는 MCTP 패킷 페이로드 부분의 크기를 나타냅니다.
전송 장치 크기
- MCTP의 기준 전송 단위(최소 전송 단위) 크기는 64바이트입니다.
- 모든 MCTP 제어 메시지는 협상 없이 기준 전송 단위보다 크지 않은 패킷 페이로드를 가져야 합니다. (엔드포인트 간의 더 큰 전송 단위에 대한 협상 메커니즘은 메시지 유형별로 다르며 MCTP Base 사양에서는 다루지 않습니다.)
- 메시지 본문 크기가 64바이트보다 큰 모든 MCTP 메시지는 단일 메시지 전송을 위해 여러 패킷으로 분할되어야 합니다.
MCTP 패킷 필드
일반 패킷/메시지 필드
지원되는 명령 세트
지원되는 MCTP 명령
- MCTP 버전 지원 받기
- 기본 사양 버전 정보
- 제어 프로토콜 버전 정보
- MCTP 버전을 통한 PLDM
- 엔드포인트 ID 설정
- 엔드포인트 ID 가져오기
- 엔드포인트 UUID 가져오기
- 메시지 유형 지원 받기
- 공급업체 정의 메시지 지원 받기
메모:
공급업체 정의 메시지 지원 명령의 경우 BMC는 완료 코드 ERROR_INVALID_DATA(0x02)로 응답합니다.
지원되는 PLDM 기반 사양 명령
- 설정TID
- 겟티드
- GetPLDM버전
- GetPLDMTypes
- GetPLDM 명령
플랫폼 모니터링 및 제어 사양 명령에 대해 지원되는 PLDM
- 설정TID
- 겟티드
- 센서리딩 받기
- 센서 임계값 가져오기
- 센서 임계값 설정
- GetPDRRepositoryInfo
- GetPDR
메모:
BMC Nios II 코어는 1밀리초마다 다양한 원격 측정 데이터를 폴링하고, 폴링 기간은 약 500~800밀리초가 걸리므로 명령 GetSensorReading 또는 GetSensorThresholds의 응답 메시지와 해당 요청 메시지는 각각 500~800밀리초마다 업데이트됩니다.
메모:
GetStateSensorReadings는 지원되지 않습니다.
PLDM 토폴로지 및 계층
정의된 플랫폼 설명자 레코드
Intel FPGA PAC N3000은 20개의 플랫폼 설명자 레코드(PDR)를 사용합니다. Intel MAX 10 BMC는 QSFP가 연결 및 연결 해제될 때 PDR이 동적으로 추가되거나 제거되지 않는 통합 PDR만 지원합니다. 연결 해제되면 센서 작동 상태는 단순히 사용할 수 없음으로 보고됩니다.
센서 이름 및 레코드 핸들
모든 PDR에는 레코드 핸들이라는 불투명한 숫자 값이 할당됩니다. 이 값은 GetPDR(DTMF 사양 DSP0248)을 통해 PDR 저장소 내의 개별 PDR에 액세스하는 데 사용됩니다. 다음 표는 Intel FPGA PAC N3000에서 모니터링되는 센서의 통합 목록입니다.
PDR 센서 이름 및 레코드 핸들
기능 | 센서 이름 | 센서 정보 | PLDM | ||
센서 판독 소스(구성 요소) | 피디알
레코드 핸들 |
PDR의 임계값 | 임계값 변경 PLDM을 통해 허용됨 | ||
총 Intel FPGA PAC 입력 전력 | 보드 전원 | PCIe 핑거에서 12V 전류 및 전압을 계산합니다.tage | 1 | 0 | 아니요 |
PCIe 핑거 12V 전류 | 12V 백플레인 전류 | PAC1932 센스1 | 2 | 0 | 아니요 |
PCIe 핑거 12V Voltage | 12V 백플레인 Voltage | PAC1932 센스1 | 3 | 0 | 아니요 |
1.2 V 레일 볼륨tage | 1.2V 볼륨tage | MAX10 ADC | 4 | 0 | 아니요 |
1.8 V 레일 볼륨tage | 1.8V 볼륨tage | 최대 10 ADC | 6 | 0 | 아니요 |
3.3 V 레일 볼륨tage | 3.3V 볼륨tage | 최대 10 ADC | 8 | 0 | 아니요 |
FPGA 코어 볼륨tage | FPGA 코어 볼륨tage | LTC3884(U44) | 10 | 0 | 아니요 |
FPGA 코어 전류 | FPGA 코어 전류 | LTC3884(U44) | 11 | 0 | 아니요 |
FPGA 코어 온도 | FPGA 코어 온도 | TMP411을 통한 FPGA 온도 다이오드 | 12 | 상위 경고: 90
상위 치명적: 100 |
예 |
보드 온도 | 보드 온도 | TMP411(U65) | 13 | 상위 경고: 75
상위 치명적: 85 |
예 |
QSFP0 볼륨tage | QSFP0 볼륨tage | 외부 QSFP 모듈(J4) | 14 | 0 | 아니요 |
QSFP0 온도 | QSFP0 온도 | 외부 QSFP 모듈(J4) | 15 | 상위 경고: QSFP 공급업체가 설정한 값
상위 치명적: QSFP 공급업체가 설정한 값 |
아니요 |
PCIe 보조 12V 전류 | 12V 보조 | PAC1932 센스2 | 24 | 0 | 아니요 |
PCIe 보조 12V Voltage | 12V 보조 볼륨tage | PAC1932 센스2 | 25 | 0 | 아니요 |
QSFP1 볼륨tage | QSFP1 볼륨tage | 외부 QSFP 모듈(J5) | 37 | 0 | 아니요 |
QSFP1 온도 | QSFP1 온도 | 외부 QSFP 모듈(J5) | 38 | 상위 경고: QSFP 공급업체가 설정한 값
상위 치명적: QSFP 공급업체가 설정한 값 |
아니요 |
PKVL A 코어 온도 | PKVL A 코어 온도 | PKVL 칩(88EC055)(U18A) | 44 | 0 | 아니요 |
계속되는… |
기능 | 센서 이름 | 센서 정보 | PLDM | ||
센서 판독 소스(구성 요소) | 피디알
레코드 핸들 |
PDR의 임계값 | 임계값 변경 PLDM을 통해 허용됨 | ||
PKVL A Serdes 온도 | PKVL A Serdes 온도 | PKVL 칩(88EC055)(U18A) | 45 | 0 | 아니요 |
PKVL B 코어 온도 | PKVL B 코어 온도 | PKVL 칩(88EC055)(U23A) | 46 | 0 | 아니요 |
PKVL B Serdes 온도 | PKVL B Serdes 온도 | PKVL 칩(88EC055)(U23A) | 47 | 0 | 아니요 |
메모:
QSFP의 Upper Warning 및 Upper Fatal 값은 QSFP 공급업체에서 설정합니다. 값에 대한 공급업체 데이터시트를 참조하십시오. BMC는 이러한 임계값을 읽고 보고합니다. fpgad는 하드웨어가 복구 불가능한 상위 또는 복구 불가능한 하위 센서 임계값(치명적 임계값이라고도 함)에 도달할 때 서버가 충돌하지 않도록 보호하는 데 도움이 되는 서비스입니다. fpgad는 Board Management Controller에서 보고한 20개의 센서를 각각 모니터링할 수 있습니다. 자세한 내용은 Intel Acceleration Stack 사용자 가이드: Intel FPGA Programmable Acceleration Card N3000의 Graceful Shutdown 주제를 참조하십시오.
메모:
자격을 갖춘 OEM 서버 시스템은 귀하의 작업 부하에 필요한 냉각을 제공해야 합니다. 다음 OPAE 명령을 root 또는 sudo로 실행하여 센서 값을 얻을 수 있습니다. $ sudo fpgainfo bmc
관련 정보
Intel Acceleration Stack 사용자 가이드: Intel FPGA 프로그래밍 가능 가속 카드 N3000
I2C SMBus를 통한 보드 모니터링
Avalon-MM 인터페이스(읽기 전용)에 대한 표준 I2C 슬레이브는 호스트 BMC와 Intel MAX 10 RoT 간에 PCIe SMBus를 공유합니다. Intel FPGA PAC N3000은 표준 I2C 슬레이브 인터페이스를 지원하며 슬레이브 주소는 기본적으로 대역 외 액세스의 경우에만 0xBC입니다. 바이트 주소 지정 모드는 2바이트 오프셋 주소 모드입니다. 다음은 I2C 명령을 통해 정보에 액세스하는 데 사용할 수 있는 원격 측정 데이터 레지스터 메모리 맵입니다. 설명 열은 반환된 레지스터 값을 실제 값을 얻기 위해 추가로 처리하는 방법을 설명합니다. 단위는 읽는 센서에 따라 섭씨(°C), mA, mV, mW가 될 수 있습니다.
원격측정 데이터 레지스터 메모리 맵
등록하다 | 오프셋 | 너비 | 입장 | 필드 | 기본값 | 설명 |
보드 온도 | 0x100 | 32 | RO | [31:0] | 32시 | TMP411(U65)
레지스터 값은 부호 있는 정수입니다. 온도 = 레지스터 값 * 0.5 |
보드 온도 높음 경고 | 0x104 | 32 | RW | [31:0] | 32시 | TMP411(U65)
레지스터 값은 부호 있는 정수입니다. |
상한 = 레지스터 값
* 0.5 |
||||||
보드 온도 높음 치명적 | 0x108 | 32 | RW | [31:0] | 32시 | TMP411(U65)
레지스터 값은 부호 있는 정수입니다. |
높은 중요도 = 레지스터 값
* 0.5 |
||||||
FPGA 코어 온도 | 0x110 | 32 | RO | [31:0] | 32시 | TMP411(U65)
레지스터 값은 부호 있는 정수입니다. |
온도 = 레지스터 값
* 0.5 |
||||||
FPGA 다이
온도 높음 경고 |
0x114 | 32 | RW | [31:0] | 32시 | TMP411(U65)
레지스터 값은 부호 있는 정수입니다. |
상한 = 레지스터 값
* 0.5 |
||||||
계속되는… |
등록하다 | 오프셋 | 너비 | 입장 | 필드 | 기본값 | 설명 |
FPGA 코어 볼륨tage | 0x13C | 32 | RO | [31:0] | 32시 | LTC3884(U44)
권tage(mV) = 레지스터 값 |
FPGA 코어 전류 | 0x140 | 32 | RO | [31:0] | 32시 | LTC3884(U44)
전류(mA) = 레지스터 값 |
12v 백플레인 볼륨tage | 0x144 | 32 | RO | [31:0] | 32시 | 권tage(mV) = 레지스터 값 |
12v 백플레인 전류 | 0x148 | 32 | RO | [31:0] | 32시 | 전류(mA) = 레지스터 값 |
1.2v 볼륨tage | 0x14C | 32 | RO | [31:0] | 32시 | 권tage(mV) = 레지스터 값 |
12v 보조 볼륨tage | 0x150 | 32 | RO | [31:0] | 32시 | 권tage(mV) = 레지스터 값 |
12v 보조 전류 | 0x154 | 32 | RO | [31:0] | 32시 | 전류(mA) = 레지스터 값 |
1.8v 볼륨tage | 0x158 | 32 | RO | [31:0] | 32시 | 권tage(mV) = 레지스터 값 |
3.3v 볼륨tage | 0x15C | 32 | RO | [31:0] | 32시 | 권tage(mV) = 레지스터 값 |
보드 전원 | 0x160 | 32 | RO | [31:0] | 32시 | 전력(mW) = 레지스터 값 |
PKVL A 코어 온도 | 0x168 | 32 | RO | [31:0] | 32시 | PKVL1(U18A)
레지스터 값은 부호 있는 정수입니다. 온도 = 레지스터 값 * 0.5 |
PKVL A Serdes 온도 | 0x16C | 32 | RO | [31:0] | 32시 | PKVL1(U18A)
레지스터 값은 부호 있는 정수입니다. 온도 = 레지스터 값 * 0.5 |
PKVL B 코어 온도 | 0x170 | 32 | RO | [31:0] | 32시 | PKVL2(U23A)
레지스터 값은 부호 있는 정수입니다. 온도 = 레지스터 값 * 0.5 |
PKVL B Serdes 온도 | 0x174 | 32 | RO | [31:0] | 32시 | PKVL2(U23A)
레지스터 값은 부호 있는 정수입니다. 온도 = 레지스터 값 * 0.5 |
QSFP 값은 QSFP 모듈을 읽고 적절한 레지스터에 읽은 값을 보고하여 얻습니다. QSFP 모듈이 디지털 진단 모니터링을 지원하지 않거나 QSFP 모듈이 설치되지 않은 경우 QSFP 레지스터에서 읽은 값을 무시합니다. Intelligent Platform Management Interface(IPMI) 도구를 사용하여 I2C 버스를 통해 원격 측정 데이터를 읽습니다.
주소 2x0에서 보드 온도를 읽기 위한 I100C 명령:
아래 명령에서는:
- 0x20은 PCIe 슬롯에 직접 액세스할 수 있는 서버의 I2C 마스터 버스 주소입니다. 이 주소는 서버에 따라 다릅니다. 서버의 올바른 I2C 주소는 서버 데이터시트를 참조하세요.
- 0xBC는 Intel MAX 2 BMC의 I10C 슬레이브 주소입니다.
- 4는 읽은 데이터 바이트 수입니다.
- 0x01 0x00은 표에 제시된 보드 온도의 레지스터 주소입니다.
명령:
ipmitool i2c 버스=0x20 0xBC 4 0x01 0x00
산출:
01110010 00000000 00000000 00000000
0진수 출력 값은 72000000x0입니다. 72x114는 0.5진수로 114입니다. 섭씨 온도를 계산하려면 0.5를 곱합니다. 57 x XNUMX = XNUMX °C
메모:
모든 서버가 PCIe 슬롯에 대한 I2C 버스 직접 액세스를 지원하는 것은 아닙니다. 지원 정보와 I2C 버스 주소는 서버 데이터시트를 확인하세요.
EEPROM 데이터 형식
이 섹션에서는 MAC 주소 EEPROM과 FRUID EEPROM의 데이터 형식을 정의하고 호스트와 FPGA에서 각각 액세스할 수 있습니다.
맥 EEPROM
제조 시, Intel은 Intel Ethernet Controller XL710-BM2 MAC 주소로 MAC 주소 EEPROM을 프로그래밍합니다. Intel MAX 10은 I2C 버스를 통해 MAC 주소 EEPROM의 주소에 액세스합니다. 다음 명령을 사용하여 MAC 주소를 검색합니다. $ sudo fpga mac
MAC 주소 EEPROM에는 주소 6x0h에 시작 00바이트 MAC 주소만 있고 그 뒤에 MAC 주소 카운트 08이 있습니다. 시작 MAC 주소는 인쇄 회로 기판(PCB) 뒷면의 라벨 스티커에도 인쇄되어 있습니다. OPAE 드라이버는 다음 위치에서 시작 MAC 주소를 얻기 위한 sysfs 노드를 제공합니다. /sys/class/fpga/intel-fpga-dev.*/intel-fpga-fme.*/spi altera.*.auto/spi_master/ spi*/spi*/mac_address 시작 MAC 주소 Example: 644C360F4430 OPAE 드라이버는 다음 위치에서 카운트를 얻습니다. /sys/class/fpga/intel-fpga-dev.*/intel-fpga-fme.*/spi-altera.*.auto/spi_master/spi*/spi*/mac_count MAC 카운트 Example: 08 시작 MAC 주소에서 나머지 XNUMX개 MAC 주소는 시작 MAC 주소의 최하위 바이트(LSB)를 후속 MAC 주소마다 하나씩 순차적으로 증가시켜 얻습니다. 후속 MAC 주소 examp르 :
- 644C360F4431
- 644C360F4432
- 644C360F4433
- 644C360F4434
- 644C360F4435
- 644C360F4436
- 644C360F4437
메모: ES Intel FPGA PAC N3000을 사용하는 경우 MAC EEPROM이 프로그래밍되지 않았을 수 있습니다. MAC EEPROM이 프로그래밍되지 않은 경우 첫 번째 MAC 주소 읽기가 FFFFFFFFFFFF로 반환됩니다.
현장 교체 가능 장치 식별(FRUID) EEPROM 액세스
호스트 BMC에서 SMBus를 통해서만 필드 교체 가능 장치 식별(FRUID) EEPROM(0xA0)을 읽을 수 있습니다. FRUID EEPROM의 구조는 IPMI 사양, Platform Management FRU Information Storage Definition, v1.3, 24년 2015월 XNUMX일을 기반으로 하며, 여기에서 보드 정보 구조가 파생됩니다. FRUID EEPROM은 보드 영역과 제품 정보 영역이 있는 공통 헤더 형식을 따릅니다. 공통 헤더의 어떤 필드가 FRUID EEPROM에 적용되는지는 아래 표를 참조하십시오.
FRUID EEPROM의 공통 헤더
공통 헤더의 모든 필드는 필수입니다.
필드 길이(바이트) | 필드 설명 | FRUID EEPROM 값 |
1 |
공통 헤더 형식 버전 7:4 – 예약됨, 0000b로 작성
3:0 – 이 사양의 형식 버전 번호 = 1h |
01h (00000001b로 설정) |
1 |
내부 사용 영역 시작 오프셋(8바이트의 배수).
00h는 이 지역이 존재하지 않음을 나타냅니다. |
00h (현재 없음) |
1 |
섀시 정보 영역 시작 오프셋(8바이트의 배수).
00h는 이 지역이 존재하지 않음을 나타냅니다. |
00h (현재 없음) |
1 |
보드 영역 시작 오프셋(8바이트의 배수).
00h는 이 지역이 존재하지 않음을 나타냅니다. |
01시간 |
1 |
제품 정보 영역 시작 오프셋(8바이트의 배수).
00h는 이 지역이 존재하지 않음을 나타냅니다. |
0Ch |
1 |
MultiRecord 영역 시작 오프셋(8바이트의 배수).
00h는 이 지역이 존재하지 않음을 나타냅니다. |
00h (현재 없음) |
1 | PAD, 00h로 쓰세요 | 00시간 |
1 |
공통 헤더 체크섬(제로 체크섬) |
F2h |
공통 헤더 바이트는 EEPROM의 첫 번째 주소에서 배치됩니다. 레이아웃은 아래 그림과 같습니다.
FRUID EEPROM 메모리 레이아웃 블록 다이어그램
FRUID EEPROM 보드 영역
필드 길이(바이트) | 필드 설명 | 필드 값 | 필드 인코딩 |
1 | 보드 영역 형식 버전 7:4 – 예약됨, 0000b로 작성 3:0 – 형식 버전 번호 | 0x01 | 1h(0000 0001b)로 설정 |
1 | 보드 영역 길이(8바이트의 배수) | 0x0B | 88바이트(패드 2바이트 00개 포함) |
1 | 언어 코드 | 0x00 | 영어의 경우 0으로 설정
메모: 현재 다른 언어는 지원되지 않습니다. |
3 | 제조 날짜/시간: 0년 00월 1일 1시부터의 분 단위.
최하위 바이트 먼저(리틀 엔디언) 00_00_00h = 지정되지 않음(동적 필드) |
0x10
0x65 0xB7 |
12년 00월 1일 오전 1시와 오후 96시의 시간 차이
11년 07월 2018일은 12018960입니다 분 = b76510h – 리틀 엔디언 형식으로 저장됨 |
1 | 보드 제조업체 유형/길이 바이트 | 0xD2 | 8비트 ASCII + LATIN1 코드 7:6 – 11b
5:0 – 010010b(18바이트 데이터) |
P | 보드 제조업체 바이트 | 0x49
0x6E 0x74 0x65 0x6C 0xAE |
8비트 ASCII + LATIN1 코드 Intel® Corporation |
계속되는… |
필드 길이(바이트) | 필드 설명 | 필드 값 | 필드 인코딩 |
0x20
0x43 0x6F 0x72 0x70 0x6F 0x72 0x61 0x74 0x69 0x6F 0x6E |
|||
1 | 보드 제품 이름 유형/길이 바이트 | 0xD5 | 8비트 ASCII + LATIN1 코드 7:6 – 11b
5:0 – 010101b(21바이트 데이터) |
Q | 보드 제품 이름 바이트 | 0X49
0X6E 0X74 0X65 0X6C 0XAE 0X20 0X46 0X50 0X47 0X41 0X20 0X50 0X41 0X43 0X20 0X4E 0X33 0X30 0X30 0X30 |
8비트 ASCII + LATIN1 코드화 Intel FPGA PAC N3000 |
1 | 보드 일련 번호 유형/길이 바이트 | 0xCC | 8비트 ASCII + LATIN1 코드 7:6 – 11b
5:0 – 001100b(12바이트 데이터) |
N | 보드 일련 번호 바이트(동적 필드) | 0x30
0x30 0x30 0x30 0x30 0x30 0x30 0x30 |
8비트 ASCII + LATIN1 코드화
첫 번째 1자리 6진수는 OUI: 000000입니다. 2번째 6자리 000000진수는 MAC 주소입니다: XNUMX |
계속되는… |
필드 길이(바이트) | 필드 설명 | 필드 값 | 필드 인코딩 |
0x30
0x30 0x30 0x30 |
메모: 이것은 ex로 코딩됩니다ample이며 실제 장치에서 수정되어야 합니다.
첫 번째 1개 6진수는 OUI: 644C36입니다. 두 번째 2자리 6진수는 MAC 주소입니다: 00AB2E 메모: 식별하지 않다 FRUID를 프로그래밍하고 OUI 및 MAC 주소를 "0000"으로 설정합니다. |
||
1 | 보드 부품 번호 유형/길이 바이트 | 0xCE | 8비트 ASCII + LATIN1 코드 7:6 – 11b
5:0 – 001110b(14바이트 데이터) |
M | 보드 파트 번호 바이트 | 0x4B
0x38 0x32 0x34 0x31 0x37 0x20 0x30 0x30 0x32 0x20 0x20 0x20 0x20 |
BOM ID로 코딩된 8비트 ASCII + LATIN1.
14바이트 길이의 경우 코드화된 보드 부품 번호는 다음과 같습니다.ample는 K82417-002입니다 메모: 이것은 ex로 코딩됩니다amp실제 장치에서 수정되어야 합니다. 이 필드 값은 보드 PBA 번호에 따라 달라집니다. PBA 개정판은 FRUID에서 제거되었습니다. 이 마지막 4바이트는 공백을 반환하고 향후 사용을 위해 예약됩니다. |
1 | FRU File ID 유형/길이 바이트 | 0x00 | 8비트 ASCII + LATIN1 코드 7:6 – 00b
5:0 – 000000b(0바이트 데이터) FRU File 뒤에 따라야 하는 ID 바이트 필드는 'null'이 되므로 포함되지 않습니다. 메모: FRU File ID 바이트. FRU File 버전 필드는 제조 지원을 위한 사전 정의된 필드입니다. file 제조 또는 현장 업데이트 중에 FRU 정보를 로드하는 데 사용된 것입니다. 내용은 제조업체에 따라 다릅니다. 이 필드는 Board Info 영역에서도 제공됩니다. 두 필드 중 하나 또는 둘 다 'null'일 수 있습니다. |
1 | MMID 유형/길이 바이트 | 0xC6 | 8비트 ASCII + LATIN1 코드화 |
계속되는… |
필드 길이(바이트) | 필드 설명 | 필드 값 | 필드 인코딩 |
7:6-11하
5:0 – 000110b(6바이트 데이터) 메모: 이것은 ex로 코딩됩니다ample이며 실제 장치에서 수정되어야 합니다. |
|||
M | MMID 바이트 | 0x39
0x39 0x39 0x44 0x58 0x46 |
6자리 XNUMX진수로 포맷됨. 특정 예ampIntel FPGA PAC N3000 MMID = 999DXF와 함께 셀에 있습니다.
이 필드 값은 MMID, OPN, PBN 등의 다양한 SKU 필드에 따라 달라집니다. |
1 | C1h(더 이상 정보 필드가 없음을 나타내기 위해 인코딩된 유형/길이 바이트). | 0xC1 | |
Y | 00h – 사용되지 않은 남은 공간 | 0x00 | |
1 | 보드 영역 체크섬(제로 체크섬) | 0xB9 | 메모: 이 표의 체크섬은 표에서 사용된 값에 대해 계산된 3000 체크섬입니다. Intel FPGA PAC NXNUMX의 실제 값에 대해 다시 계산해야 합니다. |
필드 길이(바이트) | 필드 설명 | 필드 값 | 필드 인코딩 |
1 | 제품 영역 형식 버전 7:4 – 예약됨, 0000b로 작성
3:0 – 이 사양의 형식 버전 번호 = 1h |
0x01 | 1h(0000 0001b)로 설정 |
1 | 제품 영역 길이(8바이트 배수) | 0x0A | 총 80바이트 |
1 | 언어 코드 | 0x00 | 영어의 경우 0으로 설정
메모: 현재 다른 언어는 지원되지 않습니다. |
1 | 제조업체 이름 유형/길이 바이트 | 0xD2 | 8비트 ASCII + LATIN1 코드 7:6 – 11b
5:0 – 010010b(18바이트 데이터) |
N | 제조업체 이름 바이트 | 0x49
0x6E 0x74 0x65 0x6C 0xAE 0x20 0x43 0x6F |
8비트 ASCII + LATIN1 코드 Intel Corporation |
계속되는… |
필드 길이(바이트) | 필드 설명 | 필드 값 | 필드 인코딩 |
0x72
0x70 0x6F 0x72 0x61 0x74 0x69 0x6F 0x6E |
|||
1 | 제품 이름 유형/길이 바이트 | 0xD5 | 8비트 ASCII + LATIN1 코드 7:6 – 11b
5:0 – 010101b(21바이트 데이터) |
M | 제품명 바이트 | 0x49
0x6E 0x74 0x65 0x6C 0xAE 0x20 0x46 0x50 0x47 0x41 0x20 0x50 0x41 0x43 0x20 0x4E 0x33 0x30 0x30 0x30 |
8비트 ASCII + LATIN1 코드화 Intel FPGA PAC N3000 |
1 | 제품 부품/모델 번호 유형/길이 바이트 | 0xCE | 8비트 ASCII + LATIN1 코드 7:6 – 11b
5:0 – 001110b(14바이트 데이터) |
O | 제품 부품/모델 번호 바이트 | 0x42
0x44 0x2D 0x4E 0x56 0x56 0x2D 0x4E 0x33 0x30 0x30 0x30 0x2D 0x31 |
8비트 ASCII + LATIN1 코드화
BD-NVV-N3000-1 보드에 대한 OPN 이 필드 값은 Intel FPGA PAC N3000 OPN에 따라 달라집니다. |
계속되는… |
필드 길이(바이트) | 필드 설명 | 필드 값 | 필드 인코딩 |
1 | 제품 버전 유형/길이 바이트 | 0x01 | 8비트 바이너리 7:6 – 00b
5:0 – 000001b(1바이트 데이터) |
R | 제품 버전 바이트 | 0x00 | 이 필드는 가족 구성원으로 인코딩되었습니다. |
1 | 제품 일련번호 유형/길이 바이트 | 0xCC | 8비트 ASCII + LATIN1 코드 7:6 – 11b
5:0 – 001100b(12바이트 데이터) |
P | 제품 일련 번호 바이트(동적 필드) | 0x30
0x30 0x30 0x30 0x30 0x30 0x30 0x30 0x30 0x30 0x30 0x30 |
8비트 ASCII + LATIN1 코드화
첫 번째 1자리 6진수는 OUI: 000000입니다. 2번째 6자리 000000진수는 MAC 주소입니다: XNUMX 메모: 이것은 ex로 코딩됩니다amp실제 장치에서 수정되어야 합니다. 첫 번째 1개 6진수는 OUI: 644C36입니다. 두 번째 2자리 6진수는 MAC 주소입니다: 00AB2E 메모: 식별하지 않다 FRUID를 프로그래밍하고 OUI 및 MAC 주소를 "0000"으로 설정합니다. |
1 | 유산 Tag 유형/길이 바이트 | 0x01 | 8비트 바이너리 7:6 – 00b
5:0 – 000001b(1바이트 데이터) |
Q | 유산 Tag | 0x00 | 지원되지 않음 |
1 | FRU File ID 유형/길이 바이트 | 0x00 | 8비트 ASCII + LATIN1 코드 7:6 – 00b
5:0 – 000000b(0바이트 데이터) FRU File 뒤에 따라야 하는 ID 바이트 필드는 'null'이 되므로 포함되지 않습니다. |
계속되는… |
필드 길이(바이트) | 필드 설명 | 필드 값 | 필드 인코딩 |
메모: FRU file ID 바이트.
FRU File 버전 필드는 제조 지원을 위한 사전 정의된 필드입니다. file 제조 또는 현장 업데이트 중에 FRU 정보를 로드하는 데 사용된 것입니다. 내용은 제조업체에 따라 다릅니다. 이 필드는 Board Info 영역에서도 제공됩니다. 두 필드 중 하나 또는 둘 다 'null'일 수 있습니다. |
|||
1 | C1h(더 이상 정보 필드가 없음을 나타내기 위해 인코딩된 유형/길이 바이트). | 0xC1 | |
Y | 00h – 사용되지 않은 남은 공간 | 0x00 | |
1 | 제품 정보 영역 체크섬(제로 체크섬)
(동적 필드) |
0x9D | 메모: 이 표의 체크섬은 표에서 사용된 값에 대해 계산된 0 체크섬입니다. Intel FPGA PAC의 실제 값에 대해 다시 계산해야 합니다. |
Intel® FPGA 프로그래밍 가능 가속 카드 N3000 보드 관리 컨트롤러 사용자 가이드
개정 내역
Intel FPGA 프로그래밍 가능 가속 카드 N3000 보드 관리 컨트롤러 사용자 가이드에 대한 개정 내역
문서 버전 | 변화 |
2019.11.25 | 최초 생산 출시. |
인텔사. 판권 소유. 인텔, 인텔 로고 및 기타 인텔 마크는 인텔사 또는 그 자회사의 상표입니다. Intel은 Intel의 표준 보증에 따라 FPGA 및 반도체 제품의 성능을 현재 사양으로 보증하지만 언제든지 통지 없이 제품 및 서비스를 변경할 수 있는 권한을 보유합니다. 인텔은 인텔이 서면으로 명시적으로 동의한 경우를 제외하고 여기에 설명된 정보, 제품 또는 서비스의 응용 프로그램 또는 사용으로 인해 발생하는 책임을 지지 않습니다. 인텔 고객은 게시된 정보에 의존하기 전에 그리고 제품이나 서비스를 주문하기 전에 장치 사양의 최신 버전을 확인하는 것이 좋습니다.
*다른 이름과 브랜드는 다른 사람의 재산이라고 주장될 수 있습니다.
문서 / 리소스
![]() |
인텔 FPGA 프로그래밍 가능 가속 카드 N3000 보드 관리 컨트롤러 [PDF 파일] 사용자 가이드 FPGA 프로그래밍 가능 가속 카드 N3000 보드, 관리 컨트롤러, FPGA, 프로그래밍 가능 가속 카드 N3000 보드, 관리 컨트롤러, N3000 보드 관리 컨트롤러, 관리 컨트롤러 |