プラットフォーム・ファームウェア・エンジニアリング
BIOSおよびファームウェアのエンジニアリング
承認済みのMini-ITXマザーボードを、管理された製品プラットフォームに変えます。 実際に導入するハードウェアおよびオペレーティングシステムに合わせて、UEFIのデフォルト設定、起動および電源動作、ウォッチドッグおよびボードレベルの 制御、ACPIおよびSMBIOSデータ、セキュアブートのプロビジョニング、ならびにファームウェアの リリースルールを定義します。.
ハードウェアは起動するが、製品は起動しない
基板の電源投入が可能になった後、ファームウェア開発が開始される
マザーボードはPOSTを正常に完了しても、導入された製品としては不適切な状態である可能性があります。 誤った起動デバイスで停止したり、電源が復旧しても電源が入らなかったり、現場のオペレーターが決して変更してはならない設定 オプションが表示されたり、誤った製品 IDが報告されたり、アプリケーションソフトウェアが応答しなくなった際に復旧できなかったりすることがあります。.
ファームウェアエンジニアリングでは、これらの製品要件を、制御された プラットフォームの動作へと変換します。その出発点となるのは、特定のマザーボードのリビジョン、 最新のファームウェアビルド、オペレーティングシステムのイメージ、接続されたデバイス、電源状態の 要件、セキュリティポリシー、および更新方法です。.
製品レベルのファームウェアの適用範囲
BIOSおよびUEFIファームウェアで設定可能な項目
- 設定のデフォルト値
- 起動優先順位、有効なデバイス、仮想化、ストレージモード、 シリアル設定、セキュリティオプション、および本番環境のデフォルト設定。.
- アクセスの設定
- 選択したメニューを非表示にし、変更を制限し、管理者アクセス権を設定し、 工場側で制御されるべきフィールドサービスオプションを削除します。.
- 起動ポリシー
- NVMe、SATA、USB、PXE、またはサポートされているHTTPブートの優先順位、 フォールバック順序、ブート遅延、およびリカバリエントリの条件。.
- 電力政策
- AC電源喪失からの復旧、RTCによるウェイクアップ、ソフトオフ動作、サポートされているスリープ状態、 およびボード固有のウェイクアップソース。.
- プラットフォームのアイデンティティ
- メーカー、製品名、シリアル番号情報、ボードID、 SMBIOSフィールド、資産データ、および承認済みのブートロゴの変更。.
- セキュリティとアップデート
- セキュアブートキーの所有権、TPMの公開、セットアップ保護、 署名付き更新ポリシー、リカバリパス、および本番環境でのプロビジョニング。.
電源状態の要件
起動時、シャットダウン時、およびAC電源復帰時に何が起こるかを正確に定義する
無人稼働の機器は、電源障害発生後に技術者がキーを押すことに 依存してはなりません。起動および電源の動作は、実際のUEFI の実装、ボードの電源ロジック、接続されたストレージ、ネットワークパス、およびOSイメージに基づいて定義されなければなりません。.
| イベント | 製品の決定 | ファームウェア制御 |
|---|---|---|
| エアコンが復旧しました | 電源を切ったままにする、以前の状態に戻す、または自動的に電源を入れる。. | 本番環境の設定に対して、サポート対象のACロスポリシーを設定してください。. |
| プライマリドライブが見つかりません | 一旦停止し、別のデバイスを試すか、リカバリモードに入るか、ネットワークブートを行ってください。. | ブート順序、デバイスの優先順位、タイムアウト、およびフォールバック動作を制御します。. |
| RTCのスケジュール | ボードがRTCによる電源投入に対応している場合、指定された時刻に起動する。. | RTCの設定、ACPIのウェイクアップ動作、および電源状態を整合させる。. |
| リモート展開 | ローカルからの入力なしで、デプロイメントイメージまたはリカバリイメージを起動します。. | ネットワークブートの機能、優先順位、および設定制限を管理します。. |
取締役会レベルでの統制
ファームウェアが制御できるのは、ボードが公開している機能に限られる
組み込み用Mini-ITX設計には、デスクトップ用BIOSには見られない 制御機能が含まれていることがよくあります。それらの動作は、搭載されているSuper I/O、組み込み コントローラ、GPIOエキスパンダ、トランシーバ、ウォッチドッグ、ファンコントローラ、またはチップセットによって異なります。.
ハードウェア・ウォッチドッグ
実際のウォッチドッグデバイスを使用して、有効状態、サポートされるタイムアウト、リセット時の動作、アプリケーションの 引き継ぎ、およびリセット後の動作を定義します。.
GPIO およびシリアルモード
サポートされるGPIOの方向と状態を定義し、さらに、ボードに必要なトランシーバー経路が組み込まれている場合に選択可能な RS-232/422/485モードを設定します。.
ファンおよび温度制御
センサーのソース、サポートされるPWMまたは電圧制御、ファン故障時の 動作、およびプラットフォームによって公開されるファームウェアのしきい値を定義する。.
ファームウェアからOSへのデータ
ACPI および SMBIOS には、出荷時のハードウェアが記述されていなければならない
ファームウェアは、オペレーティングシステムや 管理ソフトウェアが、設定、電源管理、およびハードウェア インベントリに利用するための標準化された情報を提供します。構造が正しいだけでは不十分であり、データは 実際の基板および製品IDと完全に一致している必要があります。.
| インターフェース | ファームウェアの提供内容 | 製品がもたらす影響 |
|---|---|---|
| ACPI | デバイスの説明、電源リソース、ウェイクアップ方法、およびプラットフォームテーブル。. | OSに対して提示される、スリープ、ウェイク、サーマル、ボタン、およびデバイスの動作。. |
| SMBIOS | システム、基板、ファームウェア、プロセッサ、メモリ、シリアル、およびOEMに関する情報。. | 資産台帳、サービスツール、デバイス管理、および製品識別。. |
ファームウェア要件の確認
ボードのリビジョンとゴールデンOSイメージはありますか?
マザーボードのリビジョン、現在のBIOSバージョン、オペレーティングシステム、 ブート順序、AC電源復旧時の動作、ウォッチドッグの要件、セキュリティ ポリシー、デバイス一覧、およびフィールド更新の制約条件をお知らせください。.
起動前の信頼関係
セキュアブートには、キーの所有者と更新パスの定義が必要である
本番環境におけるセキュアブートは、単なる有効/無効の設定ではありません。プロジェクトでは、 誰がプラットフォームキーを管理するか、どの鍵交換キーが信頼されるか、 許可された署名データベースに何が登録されるか、失効したイメージがどのようにdbxに登録されるか、 そして承認されたフィールドの更新がどのように復元可能に保たれるかを定義する必要があります。.
現在の UEFI 要件では、セキュアブート・プラットフォーム・キーの形式として 最低でも RSA-2048 が規定されており、dbx に保存される UEFI イメージのハッシュには 少なくとも SHA-256 を使用することが求められています。これらは暗号化に関する最低限の要件であり、 製品セキュリティポリシーのすべてを網羅するものではありません。.
- PKの所有権
- セキュアブートの所有権を確立するために使用されるプラットフォームキーを、 OEM、顧客、またはその他の承認された所有者のうち、誰が管理するかを決定してください。.
- KEK、db、dbx
- 信頼できる更新機関、許可されるイメージ、無効化された署名、 および本番環境で使用するプロビジョニング方法を定義してください。.
- TPM 2.0
- サポートされている場合は、プラットフォームTPMを公開およびプロビジョニングし、 所有権および展開ポリシーを最終システムで定義する。.
- 回復
- 更新の失敗や鍵の変更が発生した場合に備えて、 意図された信頼ポリシーを迂回することなく、承認された復旧経路を確保する。.
生産用ファームウェアの管理
バイナリを、そのボード、デフォルト設定、および変更履歴とともにリリースする
ファームウェアファイルは、その識別情報と 互換性が管理されている場合にのみ、本番環境向けの成果物となります。リリースされるバイナリは、 マザーボードのリビジョン、デフォルト設定、セキュリティプロビジョニング、更新 方法、および変更理由と常に紐づけられた状態を維持しなければなりません。.
- 二項同一性 ファームウェアのバージョン、基板の正確なリビジョン、ファイルサイズ、 SHA-256ダイジェスト、およびリリース日を記録してください。.
- 生産時のデフォルト設定 出荷時の設定値を、エンジニアリング用のデバッグ設定や 現地の技術者による変更とは別に凍結する。.
- 変更履歴 変更された機能、影響を受けるハードウェアまたはOSのバージョン、 既知の制約事項、および必要な回帰テストを特定する。.
- 更新と復旧 承認済みのフラッシュ方法、バージョン管理方針、 停電時の対応策、ロールバックのルール、および復旧手順を定義してください。.
参考仕様
ファームウェアインターフェースおよびリファレンス仕様
- UEFI 2.11
- OS起動前のファームウェア環境、ブートサービス、ランタイムサービス、変数、およびプロトコルの標準化に関する、現在のUEFI仕様。.
- ACPI 6.6
- OSによるデバイス設定、 プラットフォーム記述、電源管理、およびシステムイベントに関する現在のACPI仕様。.
- SMBIOS 3.9.0
- プラットフォームおよび搭載ハードウェアに関する、 システムファームウェアによって公開される標準化された管理情報に関するDMTF仕様。.
- TCG TPM 2.0 v185
- 2026年3月 TPM 2.0 ライブラリ仕様。TPM 2.0の実装で使用されるアーキテクチャ、 構造、およびコマンドを定義するものです。.
ファームウェア・リリース・ゲート
出荷を予定しているファームウェアのビルドを正確に確認する
ファームウェアのエンジニアリングは、定義済みのバイナリと本番環境向け構成の確定をもって完了します。 その後、エンジニアリング検証では、その正確なリリース版をターゲットボード上で、 所定のOSイメージ、周辺機器、電源状態のケース、セキュリティプロビジョニング、 更新方法、およびリカバリパスを設定して実行します。.
よくあるご質問
BIOSおよびファームウェアのエンジニアリングに関する質問
BIOSの設定はカスタマイズできますか?
はい、ファームウェアが対応している場合です。一般的な変更点としては、起動 優先順位、デバイスの有効化、電源動作、シリアル設定、 仮想化、セキュリティオプション、およびセットアップへのアクセスなどが挙げられます。.
BIOSは自動的に電源を入れることができますか?
はい、対応しているボードであれば可能です。ファームウェアの設定により、AC電源喪失時の復旧動作を、 電源をオンにする、オフのままにする、あるいは入力電源が復帰した後に以前の状態に戻す、のいずれかに設定できます。.
監視機能の設定はカスタマイズできますか?
はい、ボードに互換性のあるハードウェアウォッチドッグが搭載されている場合です。 利用可能なタイムアウト範囲およびリセット動作は、搭載されているコントローラおよびファームウェアの実装によって異なります。.
セキュアブートの鍵はカスタマイズできますか?
はい、対応しているファームウェアでは可能です。PK、KEK、db、およびdbxのプロビジョニングは、 OEMまたは顧客による鍵の所有権および必要な更新ポリシーに基づいて定義することができます。.
BIOSのアップデートはどのように管理されているのですか?
本番環境にアップデートをリリースする前に、リビジョン管理されたバイナリ、検証済みのダイジェスト、承認済みのフラッシュ方法、 変更記録、互換性ルール、および定義済みの復旧手順を使用してください。.
