VPD EEPROM의 정의와 역할
VPD(Vital Product Data) EEPROM은 서버 하드웨어의 각 필드 교체 부품(Field Replaceable Unit, FRU)에 탑재되는 비휘발성 메모리 소자입니다. 부품번호, 시리얼번호, 엔지니어링 변경 레벨 등 해당 부품을 고유하게 식별하는 정보를 저장하며, 펌웨어가 시스템 하드웨어의 특성을 파악하고 소프트웨어의 변경 없이 하드웨어 변형을 흡수할 수 있도록 합니다.
아키텍처: 8블록 구조
IBM BladeServer 사양에 따르면 VPD EEPROM은 8개 블록(Block 0~7)으로 조직됩니다. Block 0는 제조 고정 데이터(부품번호, 시리얼번호, MAC주소, UUID 등)를 포함하며, Block 1~3은 동적 컨트롤러 영역 및 시스템 관리 영역으로 펌웨어 버전, 포트 인터페이스 특성, 기능 지원 여부 등을 기록합니다. 모든 데이터는 Big Endian(최상위 바이트 우선) 형식으로 저장되어 아키텍처 간 호환성을 보장합니다.
실무상 주요 고려사항
EEPROM은 제한된 쓰기 사이클(보통 수십만~백만 회)을 가지므로, 불필요한 쓰기를 피하기 위해 읽기-후-쓰기(read-before-write) 방식을 권장합니다. 또한 펌웨어 업데이트 시에는 VPD의 기능 및 버전 정보가 현재 시스템의 동작 능력을 정확히 반영하도록 갱신해야 하며, 펌웨어 다운그레이드 시에는 더 이상 지원하지 않는 기능 항목을 제거해야 합니다.