Community Translated by HiOm_1802421 Version: **
Translation - English: How to Read ECC ON/OFF Status in HyperFlash - KBA228047
各16バイトのECCページに対するECCの有効/無効状態を読み取るためのこれらの手順は、HyperFlash™ データシート 001-99198 Rev. *M に基づきます。
2バイトのECCステータスレジスタ(ECCSR)には、特定の16バイトECCページに対して、ECCロジックがオンになっているかどうかを示す、1ビットのECCSR[0] = ECCD1が含まれています。
言い換えると、ECCが無効になっている場合、そのハーフページでマルチパス プログラムが発生したことがわかります。一方、ECCが有効になっている場合、そのハーフページでシングルパス プログラムが発生したかもしれません。
ECCSRを読み取るには、ECCステータスASO(Address Space Overlay)を入力する必要があります。ASO入力コマンドとASO終了コマンド(A.K.A. ソフトウェア リセット)があります。
以下にECC ASOの入力コマンドと終了コマンドを示します。
フラッシュがECC ASO状態に入ると、特定のアドレスの全ての読み取りは、読み取り位置のワード アドレスから派生したページ アドレスのECCSR値を返します。つまり、ECC ASO状態になると、ECCSRを読み取るために特別なコマンドは必要ありません。
したがって、RAは16バイト = 8ワードにアラインされたECCページ内の任意のワード アドレスにすることが出来ます。ハードウェアは、ユーザーが指定したアドレスを自動的にマスクしてページアドレスを取得します。
ECCSR読み取りの実行中に、ソフトウェアでタイミング遅延を管理する必要はありません。通常のHyperBus読み取りタイミングが適用されます。
Show LessVersion: **
Question: When using the Write Register command (WRR 01h), programming the Configuration Register-1 from 0x00 to 0x20 is successful, but when programming from 0x20 back to 0x00, programming is unsuccessful and the Status Register-1, Bit-6 (SR1[6]) is set to “1” (programming error occurred). What may be causing the problem?
Answer: The issue is that when programming, the value 0x20 to Configuration Register-1, Bit 5 (CR1[5]) is One-Time Programmable (OTP). Therefore, any attempt to change CR1[5] back to “0” will fail and the Status Register-1, Bit 6 (P_ERR in SR1[6]) will be set to “1” indicating the occurrence of a programming error. The same error is expected for Configuration Register-1, Bits 4, 3, and 2 (CR1[4:2]). When set to “1”, the Programming Error bit can be reset to “0” with the Clear Status Register (CLSR 30h) command.
Configuration Register-1 (CR1)
Bit | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
|
Register Type | Nonvolatile | Nonvolatile | OTP | OTP | OTP | OTP | Nonvolatile | Volatile | - |
Default Value | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0x00 |
Desired Programmed Value | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0x20 |
Configuration Register-1, Bits 5, 4, 3, 2 (CR1[5:2]) are OTP bits.
For more details, see S25FL-S Datasheet.
Show LessCommunity Translated by NoTa_4591161 Version: *A
Translation - English: Connecting 2x8-bit Parallel NOR Flash Devices to MCU – KBA203626
質問:
フラッシュデバイスをプログラム/消去できないのはなぜですか?
回答:
2x8ビットパラレルNORフラッシュデバイスをMCUに接続するにはどうすればよいですか?
単一のx8フラッシュデバイスに接続された8ビットデータバスの場合、8本のデータラインを持つ1つのパラレルNORフラッシュの1x8として示され、システムアドレスラインA0は8本のデータラインを持つフラッシュデバイスのフラッシュアドレスラインA0に接続します。システムアドレスラインA1はフラッシュアドレスラインA1に接続し、以下同様に続きます。この接続は、バイトアドレス可能なアドレス空間を定義します。
ただし、2つのx8フラッシュデバイスに接続された16ビットデータバスの場合、16のデータラインとフラッシュアドレスラインが並列に接続された2つのパラレルNORフラッシュの2x8として示される場合、システムアドレスラインをシフトして(2B)ワードを選択する必要があります。フラッシュデバイス。システムアドレスラインA0がバイトを選択する場合、このシステムアドレスラインをフラッシュアドレスラインに接続しないでください。
ワードを選択する最初のシステムアドレスラインはシステムアドレスラインA1であるため、これは両方のフラッシュアドレスラインA0に接続する必要があります。システムアドレスラインA2は、両方のフラッシュアドレスラインA1に接続する必要があります。等々。この接続は、ワードアドレス可能なアドレス空間を定義します。
バイトモードで2つのデュアルモード(x8 / x16)フラッシュデバイスを使用する場合の2x8の場合は、このタイプのフラッシュデバイスのアドレスラインのラベル付けを除いて同様です。この場合、システムアドレスラインA1はフラッシュアドレスラインA-1に接続します。システムアドレスラインA2はフラッシュアドレスラインA0に接続します。等々。以前と同様に、この接続はワードアドレス可能なアドレス空間を定義します。
2x8構成のフラッシュデバイスからプログラムされたデータを読み取るには、特別な処理は必要ありません。ただし、フラッシュコマンドの書き込みとフラッシュコマンド応答の読み取りには、システムによる特別な処理が必要です。これは、コマンドを各1x8フラッシュデバイスに並列に書き込む必要があり、コマンド応答を各1x8フラッシュデバイスから並列に読み取る必要があるためです。つまり、フラッシュコマンドサイクルは、ワードアドレスに送信される2Bワード内で複製する必要があり、コマンドサイクルデータのコピーが下位バイトに1つ、コマンドサイクルデータのコピーが上位バイトに1つあります。
同様に、2つのフラッシュデバイスは、下位バイトと上位バイトで独立したコマンド応答を送信します。特にステータスの読み取りには、2つのデバイスのステータスが同期されていない可能性があるという事実を説明するための特別なロジックが必要です。つまり、両方のフラッシュデバイスが同時にセクタ消去コマンドを受信した場合、各デバイスは異なる期間ビジー状態になる可能性があるため、一方のデバイスがもう一方のデバイスよりも先に準備が整います。
Show Less
Community Translated by NoTa_4591161 Version: **
Translation - English: Sector Address Map of S70FS01GS - KBA219111
質問:
S70FS01GSの初期セクタドレスマップは何ですか?
回答:
S70FS01GSパッケージには、デュアルダイパッケージ(DDP)にスタックされた2つのFS512Sデバイスが含まれています。したがって、下位アドレスと上位アドレスの両方のFS512Sデバイスを構成する必要があります。両方のデバイスは、最初はデフォルト設定としてハイブリッドセクタを持つように構成されているため、各デバイスには、次のように、各デバイスのベースに9つの不均一セクタを持つ3つのセクタ領域があります。
セクタサイズ(キロバイト) | セクタ数 | セクタ範囲 | アドレス範囲(バイトアドレス) |
4 | 8 | SA0-SA7 | 00000000h-00007FFFh |
224 | 1 | SA8 | 00008000h-0003FFFFh |
256 | 255 | SA9-SA263 | 00040000h-03FFFFFFh |
4 | 8 | SA264-SA271 | 04000000h-04007FFFh |
224 | 1 | SA722 | 04008000h-0403FFFFh |
256 | 255 | SA273-SA527 | 04040000h-07FFFFFFh |
S70FS01GSデータシート(ドキュメント番号.002-03833、Rev。* B)によると、CR1NVとCR3NVの次のビットは同一である必要があります。
つまり、セクタコンフィグレーションビットCR1NV [2]とCR3NV [3]は任意の有効な組み合わせに設定できますが、これらのビットはワンタイムプログラマブル(OTP)であるため、一度だけプログラム(1に設定)できます。データシートのレジスタ定義は次のとおりです。
これは、次のオプションがあることを意味します。
CR1NV [2]低デバイス | CR1NC [2]ハイデバイス | CR3NV [3]低デバイス | CR3NV [3]ハイデバイス | |
デフォルト
| 0 | 0 | 0 | 0 |
| 1 | 0 | 0 | 0 |
| 0 | 1 | 0 | 0 |
| 1 | 1 | 0 | 0 |
| 0 | RFU | 0 | 1 |
| 1 | RFU | 0 | 1 |
| RFU | 0 | 1 | 0 |
| RFU | 1 | 1 | 0 |
| RFU | RFU | 1 | 1
|
Community Translated by NoTa_4591161 Version: **
Translation - English: Block Protection Configuration on FL-S and FS-S NOR Flash – KBA224451
質問:
FL / SSデバイスに基本ブロック保護を実装および設定するにはどうすればよいですか?
回答:
サイプレスは、FL-SおよびFS-Sデバイスのメモリアレイの全部または一部を書き込み保護するための基本的なブロック保護機能を提供します。選択可能な保護領域を設定でき、場所はフラッシュの上部(上位アドレス)または下部(下位アドレス)のいずれかになります。
表1. 上部アレイの保護開始(TBPROT = 0)
ステータスレジスタの内容 | メモリアレイの保護された部分 | 保護されたメモリ(KB) | ||||
BP2 | BP1 | BP0 | FL/S128S | FL/S256S | FL/S512S | |
0 | 0 | 0 | 無し | 0 | 0 | 0 |
0 | 0 | 1 | Upper 64th | 256 | 512 | 1024 |
0 | 1 | 0 | Upper 32nd | 512 | 1024 | 2048 |
0 | 1 | 1 | Upper 16th | 1024 | 2048 | 4096 |
1 | 0 | 0 | Upper 8th | 2048 | 4096 | 8192 |
1 | 0 | 1 | Upper 4th | 4096 | 8192 | 16384 |
1 | 1 | 0 | Upper Half | 8192 | 16384 | 32768 |
1 | 1 | 1 | すべてのセクタ | 16384 | 32768 | 65536 |
表2. 下部アレイの保護開始(TBPROT = 1)
ステータスレジスタの内容 | メモリアレイの保護された部分 | 保護されたメモリ(KB) | ||||
BP2 | BP1 | BP0 | FL / S128S | FL / S256S | FL / S512S | |
0 | 0 | 0 | 無し | 0 | 0 | 0 |
0 | 0 | 1 | Lower 64th | 256 | 512 | 1024 |
0 | 1 | 0 | Lower 32nd | 512 | 1024 | 2048 |
0 | 1 | 1 | Lower 16th | 1024 | 2048 | 4096 |
1 | 0 | 0 | Lower 8th | 2048 | 4096 | 8192 |
1 | 0 | 1 | Lower 4th | 4096 | 8192 | 16384 |
1 | 1 | 0 | Lower Half | 8192 | 16384 | 32768 |
1 | 1 | 1 | すべてのセクタ | 16384 | 32768 | 65536 |
保護は、ステータスレジスタとコンフィグレーションレジスタを設定することで構成できます。ただし、FL-SデバイスとFS-Sデバイスにはいくつかの違いがあります。
FL-Sデバイスの場合、SR1とCR1はデバイスのデータシートに従って設定する必要があります。
表3. FL-Sステータスレジスタ1(SR = 1)
ビット | フィールド名 | 機能 | タイプ | デフォルトの状態 | 説明 |
7 | SRWD | ステータスレジスタ書き込み無効 | 不揮発性 | 0 | 1 = WRRコマンドを無視して、WP#がLOWの場合、SRWD、BP、およびコンフィグレーションレジスタビットの状態をロックします。 |
6 | P_ERR | ステータスレジスタ書き込み無効 | 揮発性、読み取り専用 | 0 | 1 =エラーが発生しました 0 =エラーなしr |
5 | E_ERR | 消去エラーの発生 | 揮発性、読み取り専用 | 0 | 1 =エラーが発生しました |
4 | BP2 | ブロック保護 | CR1 [3] = 1の場合は揮発性、 CR1 [3] = 0の場合は不揮発性 | CR1 [3] = 1の場合は1、サイプレスから出荷された場合は0 | 選択した範囲のセクタ(ブロック)をプログラムまたは消去から保護します。 |
3 | BP1 | ||||
2 | BP0 | ||||
1 | WEL | 書き込みイネーブルラッチ | 揮発性 | 0 | 1 =デバイスは書き込みレジスタ(WRR)、プログラム、または消去コマンドを受け入れます。 |
0 | WIP | 進行中の書き込み | 揮発性、読み取り専用 | 0 | 1 =デバイスビジー、書き込みレジスタ(WRR)、プログラム、消去、またはその他の操作が進行中です。 |
表4. FL-Sコンフィグレーションレジスタ1(CR = 1)
ビット | フィールド名 | 機能 | タイプ | デフォルトの状態 | 説明 |
7 | LC1 | レイテンシコード | 不揮発性 | 0 | 初期読み取り待ち時間サイクルの数を選択します。 |
6 | LC0 | 0 | |||
5 | TBPROT | ブロック保護の開始を設定 | OTP | 0 | 1 = BPは下部から始まります(下位アドレス)。 |
4 | RFU | RFU | OTP | 0 | 将来の使用のために予約されています。 |
3 | BPNV | ステータスレジスタでBP2-0を設定 | OTP | 0 | 1 =揮発性 |
2 | TBPARM | パラメータセクタの場所を設定 | OTP | 0 | 1 =上部に4KBの物理セクタ(上位アドレス)。 |
1 | QUAD | デバイスをクアッドI/O操作にする | 不揮発性 | 0 | 1 =クワッド |
0 | FREEZE | ステータスレジスタのBP2-0ビット、コンフィグレーションレジスタのTBPROTとTBPARM、およびOTP領域の現在の状態をロックする | 揮発性 | 0 | 1 =ブロック保護とOTPロック。 |
BPNVビットとTBPROTビットはOTPビットであり、「0」から「1」に一度だけ設定でき、それ以上元に戻すことはできないことに注意してください。これらのビットを構成するときは注意してください。SRおよびCRを設定する前に、WRENコマンドを適用してさらにWRRコマンドを有効にする必要があります。
ブロック保護構成を変更した後は、FREEZEビットを「1」に設定することをお勧めします。FREEZEビットが「1」に書き込まれると、PORまたはハードウェアリセットによってのみ「0」にクリアできます。ソフトウェアリセットは、FREEZEビットの状態には影響しません。これにより、予期しない変更やハッキングを防ぐことができます。
FS-Sデバイスの場合、SR1(N)VおよびCR1(N)Vはデバイスのデータシートに従って設定する必要があります。
表5. FS-Sステータスレジスタ1の揮発性(SR1V)
ビット | フィールド名 | 機能 | タイプ | デフォルトの状態 | 説明 |
7 | SRWD | ステータスレジスタ書き込み無効 | 揮発性読み取り専用 | SR1NV | SR1NVの揮発性コピー[7]。 |
6 | P_ERR | プログラミングエラーの発生 | 揮発性読み取り専用 | 1 =エラーが発生しました。 | |
5 | E_ERR | 消去エラーの発生 | 揮発性 | 1 =エラーが発生しました。 | |
4 | BP2 | ブロック保護揮発性 | 揮発性 | BPビットが揮発性(CR1NV [3] = 1)として設定されている場合、選択した範囲のセクタ(ブロック)をプログラムまたは消去から保護します。これは、BPビットが不揮発性として設定されている場合のSR1NV [4:2]の揮発性コピーです。BPビットが揮発性として設定されている場合、ユーザーは書き込み可能です。 | |
3 | BP1 | ||||
2 | BP0 | ||||
1 | WEL | 書き込みイネーブルラッチ | 揮発性 | 1 =デバイスは、書き込みレジスタ(WRRおよびWRAR)、プログラム、または消去コマンドを受け入れます。 | |
0 | WIP | 書き込み中 | 揮発性読み取り専用 | 1 =デバイスビジー、プログラムや消去などの組み込み操作が進行中です。 |
表6. FS-Sステータスレジスタ1の不揮発性(SR1NV)
ビット | フィールド名 | 機能 | タイプ | デフォルトの状態 | 説明 |
7 | SRWD_NV | ステータスレジスタ書き込み無効デフォルト | 不揮発性 | 0 | 1 = SR1NV、SR1V、CR1NV、またはCR1Vに影響を与えるWRRまたはWRARコマンドを実行しないことにより、WP#がLowのときにSRWD、BP、およびコンフィグレーションレジスタ1ビットの状態をロックします。 |
6 | P_ERR_D | プログラミングエラーのデフォルト | 不揮発性 | 0 | プログラミングエラーステータスのデフォルト状態を提供します。ユーザーがプログラムすることはできません。 |
5 | E_ERR_D | エラーのデフォルトを消去 | 不揮発性 | 0 | 消去エラーステータスのデフォルト状態を提供します。ユーザーがプログラムすることはできません。 |
4 | BP_NV2 | ブロック保護不揮発性 | 不揮発性 | 000b | BPビットが不揮発性(CR1NV [3] = 0)として構成されている場合、選択した範囲のセクタ(ブロック)をプログラムまたは消去から保護します。BPビットが揮発性(CR1NV [3] = 1)に構成されている場合、111bにプログラムされます。その後、これらのビットはユーザーがプログラムできなくなります。 |
3 | BP_NV1 | ||||
2 | BP_NV0 | ||||
1 | WEL_D | WELのデフォルト | 不揮発性 | 0 | WELステータスのデフォルト状態を提供します。ユーザーがプログラムすることはできません。 |
0 | WIP_D | WIPのデフォルト | 不揮発性 | 0 | WIPステータスのデフォルト状態を提供します。ユーザーがプログラムすることはできません。 |
表7. FS-Sコンフィグレーションレジスタ1揮発性(CR1V)
ビット | フィールド名 | 機能 | タイプ | デフォルトの状態 | 説明 |
7 | RFU | 将来の使用のために予約 | 揮発性 | CR1NV |
|
6 | RFU | ||||
5 | TBPROT | TBPROT_Oの揮発性コピー | 揮発性読み取り専用 | ユーザーによる書き込みはできません。 CR1NV [5] TBPROT_Oを参照してください。 | |
4 | RFU | 将来の使用のために予約 | RFU |
| |
3 | BPNV | BPNV_Oの揮発性コピー | 揮発性読み取り専用 | ユーザーによる書き込みはできません。 CR1NV [3] BPNV_Oを参照してください。 | |
2 | TBPARM | TBPARM_Oの揮発性コピー | 揮発性読み取り専用 | ユーザーによる書き込みできません。 CR1NV [2] TBPARM_Oを参照してください。 | |
1 | QUAD | クワッドI/Oモード | 揮発性 | 1 =クワッド。 0 =デュアルまたはシリアル。 | |
0 | FREEZE | 次の電源サイクルまでのロックダウンブロック保護 | 揮発性 | ブロック保護制御ビットとOTP領域の現在の状態をロックします。 1 =ブロック保護とOTPロック。 0 =ブロック保護とOTPのロックが解除されています。 |
表8. FS-Sコンフィグレーションレジスタ1不揮発性(CR1NV)
ビット | フィールド名 | 機能 | タイプ | デフォルトの状態 | 説明 |
7 | RFU | 将来の使用のために予約 | 不揮発性 | 0 |
|
6 | RFU | 0 | |||
5 | TBPROT_O | ブロック保護の開始を設定 | OTP | 0 | 1 = BPは下部から始まります(下位アドレス)。 0 = BPは先頭(上位アドレス)から始まります。 |
4 | RFURFU | 将来の使用のために予約 | RFU | 0 |
|
3 | BPNV_O | ステータスレジスタでBP2-0を設定 | OTP | 0 | 1 =揮発性。 0 =不揮発性。 |
2 | TBPARM_O | パラメータセクタの場所を設定 | OTP | 0 | 1 =上部に4KBの物理セクタ(上位アドレス)。 0 =下部に4KBの物理セクタ(下位アドレス)。均一なセクタ構成のRFU。 |
1 | QUAD_NV | クワッド不揮発性 | 不揮発性 | 0 | QUADビットのデフォルト状態を提供します。 |
0 | FREEZE_D | FREEZEデフォルト | 不揮発性読み取り専用 | 0 | フリーズビットのデフォルト状態を提供します。ユーザーがプログラムすることはできません。 |
BPNV_OビットとTBPROT_Oビットは、「0」から「1」まで設定できるOTPビットであることに注意してください。一度だけで、元に戻すことはできません。これらのビットを構成するときは、必ず注意してください。SRおよびCRを設定する前に、WRENコマンドを適用してさらにWRRおよびWRARコマンドを有効にする必要があります。
ブロック保護構成を変更した後は、FREEZEビットを「1」に設定することをお勧めします。FREEZEビットが「1」に書き込まれると、PORまたはハードウェアリセットによってのみ「0」にクリアできます。ソフトウェアリセットは、FREEZEビットの状態には影響しません。これにより、予期しない変更やハッキングを防ぐことができます。
FS01GSデバイスに関する注意:
このデバイスは、デュアルダイスタックで構成されています。CS#ピンが1つしかない場合、WRR、RDSR1、RDCRなど、特定のアドレスサイクルのない一部のコマンドはサポートされません。各FS512Sダイに対応するレジスタの4バイトアドレスを持つWRARおよびRDARコマンドは、ブロック保護構成に使用されます。各ダイのセクタを保護するために、必要に応じて各FS512Sでブロック保護を構成する必要があります。各FS512SのTBPROT_Oビットは同じように設定する必要があるため、BP保護範囲は両方のFS512Sダイで上または下に向けられていることに注意してください。
ブロック保護は、サイプレスQSPINORフラッシュデバイスの基本的な保護機能です。個々のセクタで複雑で柔軟な保護を実現するには、高度なセクタ保護(ASP)機能が必要です。ASP機能の詳細については、AN98551-サイプレスクアッドSPI、オクタルSPI、およびハイパーフラッシュデバイスファミリの高度なセクタ保護(ASP)を参照してください。
Show LessAuthor: AlbertB_56 Version: **
There is no provision to support either QPI or QSPI modes of operation. The Semper™ S28HS-T and S28HL-T series is a memory device with an octal interface that supports both Octal (x8) Peripheral Interface (OPI), as well as legacy Serial (x1) Peripheral Interface (SPI). However, the default data bus width setting from the factory is Serial (x1) mode. Configuration Register-5, bit-0 (CFR5x[0]) is user-defined, in either SPI (x1) mode or OPI (x8) data bus width. SPI (x1) mode supports SDR (1S-1S-1S) only; OPI (x8) mode supports both SDR (8S-8S-8S) and DDR (8D-8D-8D). Therefore, QPI (4-4-4) and QSPI (1-4-4) modes are not supported.
See the following sections in the S28HS-T/S28HL-T datasheet:
- “Transaction Protocol” for SPI and Octal protocol definitions
- “Configuration Register 5 - CFR5x” for selection of either SPI (x1) or Octal (x8) modes
- “Transaction Table” for specific SPI and Octal transition functions, names, and commands
See the condensed Octal Flash datasheet: https://www.cypress.com/file/424156/download
Register for the Semper Access Program to get access to full datasheets, application notes, models, software, and evaluation kits:
https://www.cypress.com/products/semper-nor-flash-memory
References:
Semper S28HS-T/S28FL-T Octal Flash datasheet (complete): Document Number: 002-18216 Rev. *S
Show LessCommunity Translated by NoTa_4591161 Version: **
Translation - English: What is the content value of Factory and Customer SSR for the S29VS-Rxx?- KBA203315
質問:
S29VS-Rxxの工場および顧客SSRのコンテンツ値は何でしょうか?
回答:
ファクトリーSSRの場合、コンテンツの値はすべてFFFFであるか、特定の電子シリアル番号(ESN)およびエンドカスタマーから要求されたカスタマーコードを含む必要があります。次に、工場は、SSR内にプログラムされたコンテンツの複製を防ぐための保護を設定します。カスタマーSSRの場合、コンテンツの値もすべてFFFFにする必要があります。ただし、SSRは保護されていないため、ユーザーは希望するデータをプログラムできます。カスタマーSSR内でランダムバイトをプログラムすることはできません。ランダムバイトがプログラムされている場合、これらの特定のデバイスは以前の顧客からの返品である可能性があります。S29VS-Rxxデバイスの購入元であるサイプレス認定代理店にお問い合わせください。ファクトリーSSRおよびカスタマーSSR内のすべてのアドレス位置は、一度だけプログラムされます。消去操作はできません。
Show LessCommunity Translated by NoTa_4591161 Version: **
Translation - English: What is Simultaneous Read/Write Flash memory "code to data scalability”? - KBA203625
質問:
同時読み取り/書き込みフラッシュメモリ(Simultaneous Read/Write Flash memory)の「コードからデータへのスケーラビリティ」とは何でしょうか。
回答:
コードからデータへのスケーラビリティとは、システムのコードとデータの要件に最適に合わせるために利用可能なさまざまなバンクの分割オプションを指します。一部には、単一のバンクの分割オプションを提供しています。顧客のコードが大きすぎて1つのバンクに収まらない場合、顧客はデバイスを効果的に使用できません。一方、正確なコードからデータへのスケーラビリティを提供するソフトウェアのみのソリューションでは、このソリューションを機能させるために必要な複雑なソフトウェアが原因で、パフォーマンスが大幅に低下します(速度と電力)。サイプレスは、いくつかのデュアルモードオペレーションバンクスプリットオプションを提供することでこれを解決します。
Show LessCommunity Translated by NoTa_4591161 Version: **
Translation - English: Can you provide some details about Cypress FFS with respect to DMS RAM and ROM size? - KBA203619
質問:
DMS RAMおよびROMサイズに関してサイプレスFFSに関する詳細を提供できまでしょうか?
回答:
サイプレスFFSのRAM使用量は、消去ブロックの数(ブロックマッピングテーブル)および消去ブロックごとのページ(ページマッピングテーブル)に比例します。RAM使用量は、コンフィグレーションオプションによって変更できます。ROM使用量(コードサイズ)は、ディスクサイズやコンフィグレーションオプションによって変化しません。ROMの使用量は、プロセッサとコンパイラによって大幅に異なります。コンパイラの最適化レベルにより、10〜15%の違いが生じます。ARMプロセッサの場合、thumbモードはコードサイズを縮小できますが、パフォーマンスが低下する場合があります。
数kBを節約するために、ユーザーはプロファイラーを使用して未使用のコードを識別し、コメント化することができますが、これはかなりの労力であり、リスクも伴います。ユーザーは、ファイルシステムレイヤーをブロックドライバーの上にある単純なマネージャーに置き換えることでROMサイズを小さくするか、アプリケーションでブロックドライバーを直接呼び出すことができます。FTL_RPB_CACHEが有効になっている場合、サイプレスBD ROMサイズが増加している可能性があります。デフォルトでは、これはオフです(ftl_if_ex.hのFTL_FALSE)。サイプレスFFSの代わりに、DMSを使用できます。これには15〜20 kBのROMサイズが必要です。
DMSは、小さなディスク(100ブロック未満の消去)に対してより効率的なRAM使用を提供します。DMSには最低1つの消去ブロックオーバーヘッドが必要ですが、サイプレスFFSには最低5つの消去ブロックオーバーヘッドが必要です。RAMサイズは、サイプレスFFSよりもDMSの方が大きくなります。DMSのRAMサイズは、サイプレスFFSのように、消去ブロックの数に応じて変化しますが、DMSははるかに高いレートで変化します。これが、近年サイプレスFFSに注力している理由の1つです。デバイスの密度が増加するにつれて、DMSに必要なRAMは無理でした。
512個の消去ブロックの場合、サイプレスBDは約32kBのRAMを必要とし、DMSは約875kBのRAMを必要とします。32個の消去ブロックの場合、サイプレスBDは約2kBのRAMを必要とし、DMSは約53kBのRAMを必要とします。スタックサイズはスライド8に記載されています。スタックの使用量はこれらの数には含まれず、コンフィグレーションの最大値とこのバージョンの完全なサイプレスFFSとして、モジュールの構成と組み合わせによって依存します。スタック使用量は、RVDS3.0静的呼び出しグラフ分析によると4600バイトの範囲であると予想されます。ただし、スタックの使用量を大幅に削減するために使用できるコンフィグレーションオプションについては認識していません。
Show Less
Community Translated by NoTa_4591161 Version: **
Translation - English: Migrating from SST25VF064C to S25FL064P, does the 4KB sub-sector erase work in the same manner? - KBA203597
質問:
SST25VF064CからS25FL064Pに移行すると、4KBサブセクターの消去は同じように機能しますでしょうか?
回答:
S25FL064P SPI FLASHデバイスは、128 KBの均一な64 kBセクターで構成され、2つ(上部または下部)の64 kBセクターがさらに32個の4 kBサブセクターに分割されます。メインメモリアレイ内の残りのセクターは専用の64KBセクターで、4KBサブセクターを含まず、4KB(P4E)サブセクター消去コマンド20hをサポートしていません。これらの専用の64 KBセクターを部分的に(4 KB)消去することはできません。したがって、消去される実際のセクターに応じて、4 KBのサブセクター消去がサポートされるかどうかが決まります。
2つの上部または下部の64 KBセクターのみに4KBサブセクターがあり、4 KB(P4E)サブセクター消去コマンド20hをサポートしています。SST25VF064C SuperFlashメインメモリアレイは、メインメモリアレイ全体で、32 KBのオーバーレイブロックと64 KBのオーバーレイの消去可能なブロックを備えた、4 KBの均一な消去可能なセクターで構成されています。
Show Less