JAJSJO1C October 2021 – December 2023 TMS320F280034 , TMS320F280034-Q1 , TMS320F280036-Q1 , TMS320F280036C-Q1 , TMS320F280037 , TMS320F280037C , TMS320F280037C-Q1 , TMS320F280038C-Q1 , TMS320F280039-Q1 , TMS320F280039C , TMS320F280039C-Q1
PRODMIX
表 6-6 に、異なるクロック・ソースおよび周波数で必要な最小のフラッシュ・ウェイト状態を示します。ウェイト状態は、レジスタ FRDCNTL[RWAIT] で設定された値です。
CPUCLK (MHz) | 外部発振器または水晶振動子 | INTOSC1 または INTOSC2 | ||
---|---|---|---|---|
通常動作 | バンクまたはポンプがスリープ状態(1) | 通常動作 | バンクまたはポンプがスリープ状態(1) | |
116 < CPUCLK ≤ 120 | 5 | 5 | 6 | |
100 < CPUCLK ≤ 116 | 5 | |||
97 < CPUCLK ≤ 100 | 4 | 4 | 5 | |
80 < CPUCLK ≤ 97 | 4 | |||
77 < CPUCLK ≤ 80 | 3 | 3 | 4 | |
60 < CPUCLK ≤ 77 | 3 | |||
58 < CPUCLK ≤ 60 | 2 | 2 | 3 | |
40 < CPUCLK ≤ 58 | 2 | |||
38 < CPUCLK ≤ 40 | 1 | 1 | 2 | |
20 < CPUCLK ≤ 38 | 1 | |||
19 < CPUCLK ≤ 20 | 0 | 0 | 1 | |
CPUCLK ≤ 19 | 0 |
F28003x デバイスには、改善された 128 ビットのプリフェッチ・バッファがあり、さまざまなウェイト状態にわたってフラッシュ・コードの高い実行効率を実現します。図 6-23 および 図 6-24 に、64 ビットのプリフェッチ・バッファを搭載した前世代のデバイスと比較した場合の、さまざまなウェイト状態設定での標準的な効率を示します。プリフェッチ・バッファを使用したウェイト状態の実行効率は、アプリケーション・ソフトウェアに存在する分岐の数によって異なります。線形コードと IF-THEN-ELSE コードの 2 つの例を示しています。
セクション 6.12.4.1 に、フラッシュ・パラメータを示します。
メイン・アレイのフラッシュ・プログラミングは、64 ビットのアドレス境界に合わせて整列させる必要があり、それぞれの 64 ビット・ワードは、書き込み / 消去サイクルごとに 1 回のみプログラムされます。
バンク消去コマンドに正しいセクタ・マスクを入力することが重要です。(他のセキュリティ・ゾーンに属する) アクセス不可能なセクタを消去するマスクが誤って選択された場合、バンク消去コマンドはセクタを永続的に消去しようと試み続け、消去が成功しないため FSM が終了しません。このような状況を回避するため、注意して正しいマスクを選択する必要があります。ただし、誤ったマスクを選択する可能性があるため、FSM がバンク消去のために最大パルス数を発行した後、最大許容消去パルス数をゼロに初期化することを推奨します。このようにすると、アクセス不可能なセクタを最大許容消去パルス数の間消去しようとした後、FSM はバンク消去コマンドを終了します。
C2000Ware のフラッシュ API 使用例の Example_EraseBanks() 関数は、このシーケンスの実装を示しています (FSM がバンク消去コマンドを完了するまで待機する while ループの内容)。アプリケーションがセキュリティを使用しているかどうかにかかわらず、このコードをそのまま使用し、消去に失敗した場合に FSM がバンク消去操作を確実に終了するようにする必要もあります。