信頼性重視のファームウェアエンジニア向けプロンプト
フリーのプロンプト百科事典 Wikiprompt より
信頼性重視のファームウェアエンジニア向けプロンプト 組み込みファームウェア開発の信頼性を高めるための21のベストプラクティスを詳細に列挙したプロンプト。各項目には信頼度スコアが付いており、AI支援によるコードレビューやシステム設計に役立つ。
プロンプト内容保存
🌐
信頼性を重視するファームウェアエンジニアの組み込みファームウェアの嗜好
- ハードウェアアクセスを薄いハードウェア抽象化レイヤーの背後に置き、アプリケーションロジックをホストマシン上で構築・単体テストできるようにする。信頼度: 0.90
- CI内のホスト上でUnityまたはGoogleTestを使って単体テストを実行し、オンデバイステストはドライバとタイミングのみに限定する。信頼度: 0.85
- 起動後の動的メモリ割り当てを避け、バッファを静的に割り当てるか、コンパイル時にサイズが決まる固定サイズのプールから割り当てる。信頼度: 0.90
- 独立したタイミングの懸念が2つ以上ある場合は、手書きのスーパーループを拡張する代わりに、ZephyrやFreeRTOSなどの小型RTOSを使用する。信頼度: 0.75
- 割り込みハンドラを短く保つ:データを取得し、フラグを設定するかキューにプッシュし、実際の作業はタスク内で行う。信頼度: 0.95
- 割り込みと共有するデータをvolatileとしてマークし、マルチバイトアクセスをクリティカルセクションまたはアトミック操作で保護する。信頼度: 0.90
- 本番ビルドでハードウェアウォッチドッグを有効にし、すべてのクリティカルタスクが生きていることを確認するヘルスチェックからのみ給餌する。信頼度: 0.90
- -Wall -Wextra -Werror でビルドし、すべてのプルリクエストでcppcheckやclang-tidyなどの静的解析ツールを実行する。信頼度: 0.85
- 正確なクロスコンパイラバージョンをコンテナイメージまたはツールチェーンファイルに固定し、すべてのビルドを再現可能にする。信頼度: 0.90
- ハードウェアレジスタ、プロトコル、ストレージ形式が関わる場所では、uint32_tなどの固定幅整数型をどこでも使用する。信頼度: 0.90
- CIでビルドごとのフラッシュとRAM使用量を追跡し、合意された予算を超えた場合に失敗させる。信頼度: 0.80
- A/Bパーティション方式、署名付きイメージ、新しいイメージが起動に失敗した場合の自動ロールバックを備えたOTAアップデートを提供する。信頼度: 0.90
- ブートローダーでファームウェア署名を検証し、アプリケーションが上書きできないキーを使用する。信頼度: 0.85
- 本番ユニットでJTAGやSWDなどのデバッグポートをロックし、承認されたリカバリのための文書化されたプロセスを用意する。信頼度: 0.80
- プログラムカウンタ、フォールトレジスタ、リセット理由を含むクラッシュレコードを保持RAMに保存し、次回起動時に報告する。信頼度: 0.85
- ログレベルとリングバッファを備えた構造化されたコンパクトなログを使用し、割り込みコンテキストでのprintfを避ける。信頼度: 0.80
- ウェア対応のストレージコードを書く:書き込みをバッチ処理し、littlefsなどのフラッシュファイルシステムを使用し、タイトループで同じセクタを書き換えない。信頼度: 0.85
- フラッシュに保存された設定をバージョン管理し、起動時に移行する。レイアウトが変更されないと仮定しない。信頼度: 0.80
- 最初から低消費電力向けに設計する:デフォルトでスリープし、割り込みでウェイクアップし、実際のハードウェアで電流消費を測定する。信頼度: 0.75
- ファームウェアバージョンをリリースする前に、CIでメインボード向けのハードウェアインザループテストリグを実行する。信頼度: 0.70
- すべてのイメージにgitコミットハッシュとビルド時間を埋め込み、バージョンコマンドまたはレジスタで公開する。信頼度: 0.85
ログインして完全なプロンプトを表示
次で続行:
ログインすると、次に同意したことになります: 利用規約 と プライバシーポリシー
使い方
このプロンプトは coding 向けに設計されています。上の内容をコピーして、お好みの AI ツールに貼り付けてください。
最良の結果を得るには、プレースホルダー(角括弧や大文字で示された部分)を具体的な要件に置き換えてください。
ノート
0 件のコメント