2184221_ja-JP

キャンセル
次の結果を表示 
表示  限定  | 次の代わりに検索 
もしかして: 

2184221_ja-JP

2184221_ja-JP

MCX-A346: プログラム開始時のコア状態

Cortex-M33 コアは実際には MCX-A346 のリファレンス・マニュアルには記載されていませんが、Arm の対応する技術リファレンス・マニュアルを参照できるため、記載されているものと思われます。けっこうだ。しかし、プログラムが制御を取得したときに発生するコアの状態 (アドレス 0x4 の初期 PC 値) は、ARM のマニュアルでリセット状態として定義されているものとは異なります。コアハードウェアが仕様通りに実装されていると仮定すると、非適合状態を残すのはブートROMコードであると考えられます[1]。

この初期のコア状態は文書化されていますか? 文書化されている場合、どこにありますか?ありがとう。

[1] 例:

1) プリマスク = 1

2) FPU は有効になっていますが、さらに悪いことに、CONTROL.FPCA = 1、つまり、コードの実行前に FPU 命令が使用されることを示しています。現在、Thread モードのすべての例外がこのフラグによって汚染されており、コードが FPU 命令を使用していない場合でも、FPU レジスタを含む拡張スタック フレームが生成され、スタック メモリが浪費されます (遅延スタックのおかげで、実行時のオーバーヘッドは最小限に抑えられます)。

もちろん、これらの問題は両方とも初期化コードでCAN解決できます。このCASE、そしておそらく私がまだ「発見」していない他の同様のCASEも文書化しておくと役立つでしょう。


コアとメモリMCXARe: MCX-A346: Core State at Program Start

こんにちは、ハリー。私が言いたいのは、コアの状態が Arm マニュアルに記載されていないため、NXP による対応するドキュメントを期待しているということです。私が説明した 2 つのCASEをブート ROM チームに確認したいとのことでした。

しかし、いずれにせよ、非準拠が見つかった場合は、初期起動コードで MCU を ARM で文書化された状態にリセットするだけです。ありがとう。

Re: MCX-A346: Core State at Program Start

こんにちは@ygrayne

これがあなたが探しているものかどうかわかりません。添付のドキュメントまたは次のリンクの B1.6 の章を確認してください。

Arm Cortex-M33 デバイスの汎用ユーザーガイド r0p4

MCXA リファレンス マニュアルには、ユーザー イメージ ヘッダーを含む表 112 があり、ここにも役立つ情報が含まれている可能性があります。

PC に関しては、アドレス 0x4 を調べている場合、これは初期プログラム カウンターであり、リセット後に常にコア PC レジスタにロードされます。この値は、MCU やその他の変数によって異なります。

これが役に立つことを願います。

BR

ハリー

Re: MCX-A346: Core State at Program Start

こんにちは@ygrayne

ブートROMがPRIMASKとCONTROL.FPCAの状態を変更したかどうかについては、
ROM チームに確認する必要があります。

BR

ハリー

タグ(1)
評価なし
バージョン履歴
最終更新日:
‎11-21-2025 11:26 PM
更新者: