表 6-65 および 表 6-66 に、GPMC および NOR フラッシュ (同期モード) のタイミング要件とスイッチング特性を示します。
表 6-65 GPMC および NOR フラッシュのタイミング要件 — 同期モード 図 6-46、図 6-47、図 6-50 を参照
| 番号 |
パラメータ |
説明 |
最小値 |
最大値 |
単位 |
| F12 |
tsu(dV-clkH) |
セットアップ時間、GPMC_CLK High の前に GPMC_AD[15:0] 有効 |
0.92 |
|
ns |
| F13 |
th(clkH-dV) |
ホールド時間、GPMC_CLK High の後 GPMC_AD[15:0] 有効 |
2.09 |
|
ns |
| F21 |
tsu(waitV-clkH) |
セットアップ時間、GPMC_CLK が High になる前に GPMC_WAIT[j](1)(2) が有効 |
0.92 |
|
ns |
| F22 |
th(clkH-waitV) |
ホールド時間、(1)(2) GPMC_CLK が High になった後に GPMC_WAIT[j] が有効 |
2.09 |
|
ns |
(1) GPMC_WAIT[j] で、j は 0 または 1 です。
(2) 待機モニタリングのサポートは、WaitMonitoringTime の値 > 0 に制限されます。待機監視機能の詳細な説明については、 デバイスのテクニカル リファレンス マニュアルで「汎用メモリ コントローラ (GPMC)」セクションを参照してください。
表 6-66 GPMC および NOR フラッシュのスイッチング特性 - 同期モード 図 6-46、図 6-47、図 6-48、図 6-49、図 6-50 を参照
| 番号 |
パラメータ |
説明 |
最小値 |
最大値 |
単位 |
| F0 |
tc(clk) |
サイクル時間、GPMC_CLK(16) |
7.52 |
|
ns |
| F1 |
tw(clkH) |
標準パルス期間、GPMC_CLK high |
0.475P(13) - 0.3 |
|
ns |
| F1 |
tw(clkL) |
標準パルス期間、GPMC_CLK low |
0.475P(13) - 0.3 |
|
ns |
| F2 |
td(clkH-csnV) |
遅延時間、GPMC_CLK 立ち上がりエッジから GPMC_CSn[i] 遷移まで(12) |
F(5) - 2.2 |
F(5) + 3.75 |
ns |
| F3 |
td(clkH-CSn[i]V) |
遅延時間、GPMC_CLK 立ち上がりエッジから GPMC_CSn[i] 無効まで(12) |
D(4) - 2.2 |
D(4) + 4.5 |
ns |
| F4 |
td(aV-clk) |
遅延時間、GPMC_A[27:1] が有効になってから GPMC_CLK 最初のエッジまで |
B(2) - 2.3 |
B(2) + 4.5 |
ns |
| F5 |
td(clkH-aIV) |
遅延時間、GPMC_CLK 立ち上がりエッジから GPMC_A[27:1] 無効まで | -2.3 |
4.5 | ns |
| F6 |
td(be[x]nV-clk) |
遅延時間、GPMC_BE0n_CLE、GPMC_BE1n から GPMC_CLK の最初のエッジまで有効 | B(2) - 2.3 |
B(2) + 1.9 | ns |
| F7 |
td(clkH-be[x]nIV) |
遅延時間、GPMC_CLK 立ち上がりエッジから GPMC_BE0n_CLE、GPMC_BE1n 無効まで | D(4) - 2.3 |
D(4) + 1.9 | ns |
| F8 |
td(clkH-advn) |
遅延時間、GPMC_CLK 立ち上がりエッジから GPMC_ADVn_ALE 遷移まで |
G(6) - 2.3 |
G(6) + 4.5 |
ns |
| F9 |
td(clkH-advnIV) |
遅延時間、GPMC_CLK 立ち上がりエッジから GPMC_ADVn_ALE 無効まで |
D(4) - 2.3 |
D(4) + 4.5 |
ns |
| F10 |
td(clkH-oen) |
遅延時間、GPMC_CLK 立ち上がりエッジから GPMC_OEn_REn 遷移まで |
H(7) - 2.3 |
H(7) + 3.5 |
ns |
| F11 |
td(clkH-oenIV) |
遅延時間、GPMC_CLK 立ち上がりエッジから GPMC_OEn_REn 無効まで |
D(4) - 2.3 |
D(4) + 3.5 |
ns |
| F14 |
td(clkH-wen) |
遅延時間、GPMC_CLK 立ち上がりエッジから GPMC_WEn 遷移まで |
I(8) - 2.3 |
I(8) + 4.5 |
ns |
| F15 |
td(clkH-do) |
遅延時間、GPMC_CLK 立ち上がりエッジから GPMC_AD[15:0] 遷移まで(9) |
- 2.3 |
2.7 |
ns |
| F15 |
td(clkL-do) |
遅延時間、GPMC_CLK 立ち下がりエッジから GPMC_AD[15:0] データ バス遷移まで(10) |
- 2.3 |
2.7 |
ns |
| F15 |
td(clkL-do). |
遅延時間、GPMC_CLK 立ち下がりエッジから GPMC_AD[15:0] データ バス遷移まで(11) |
- 2.3 |
2.7 |
ns |
| F17 |
td(clkH-be[x]n) |
遅延時間、GPMC_CLK 立ち上がりエッジから GPMC_BE0n_CLE、GPMC_BE1n 遷移まで(9) |
- 2.3 |
1.9 |
ns |
| F17 |
td(clkL-be[x]n) |
遅延時間、GPMC_CLK 立ち下がりエッジから GPMC_BE0n_CLE、GPMC_BE1n 遷移まで(10) |
- 2.3 |
1.9 |
ns |
| F17 |
td(clkL-be[x]n). |
遅延時間、GPMC_CLK 立ち下がりエッジから GPMC_BE0n_CLE、GPMC_BE1n 遷移まで(11) |
- 2.3 |
1.9 |
ns |
| F18 |
tw(csnV) |
パルス幅、GPMC_CSn[i] (12)low |
A(1) |
|
ns |
| F19 |
tw(be[x]nV) |
パルス幅、GPMC_BE0n_CLE、GPMC_BE1n Low |
C(3) |
|
ns |
| F20 |
tw(advnV) |
パルス幅、GPMC_ADVn_ALE low |
K(14) |
|
ns |
(1) 単一読み取りの場合:A = (CSRdOffTime - CSOnTime) × (TimeParaGranularity + 1) × GPMC_FCLK
(15) 単一書き込みの場合:A = (CSWrOffTime - CSOnTime) × (TimeParaGranularity + 1) × GPMC_FCLK
(15) バースト読み取りの場合:A = (CSRdOffTime - CSOnTime + (n - 1) × PageBurstAccessTime) × (TimeParaGranularity + 1) × GPMC_FCLK
(15) バースト書き込みの場合:A = (CSWrOffTime - CSOnTime + (n - 1) × PageBurstAccessTime) × (TimeParaGranularity + 1) × GPMC_FCLK
(15) n はページ バースト アクセス数。
(2) アドレス バス/バイト イネーブルはサイクル開始時に有効となり、GPMC_CLK のアクティブ化タイミングはサイクル開始後に遅延する場合があります
B = ClkActivationTime×GPMC_FCLK
(15)
(3) 単一読み取りの場合:C = RdCycleTime × (TimeParaGranularity + 1) × GPMC_FCLK
(15) 単一書き込みの場合:C = WrCycleTime × (TimeParaGranularity + 1) × GPMC_FCLK
(15) バースト読み取りの場合:C = (RdCycleTime + (n - 1) × PageBurstAccessTime) × (TimeParaGranularity + 1) × GPMC_FCLK
(15) バースト書込みの場合:C = (WrCycleTime + (n - 1) × PageBurstAccessTime) × (TimeParaGranularity + 1) × GPMC_FCLK
(15) n はページ バースト アクセス数。
(4) 単一読み取りの場合:D = (RdCycleTime - RdAccessTime) × (TimeParaGranularity + 1) × GPMC_FCLK
(15) 単一書き込みの場合:D = (WrCycleTime - WrAccessTime) × (TimeParaGranularity + 1) × GPMC_FCLK
(15) バースト読み取りの場合:D = (RdCycleTime - RdAccessTime + (n - 1) × PageBurstAccessTime) × (TimeParaGranularity + 1) × GPMC_FCLK
(15) バースト書き込みの場合:D = (WrCycleTime - WrAccessTime + (n - 1) × PageBurstAccessTime) × (TimeParaGranularity + 1) × GPMC_FCLK
(15) n はページ バースト アクセス数。
(5) CSn 立ち下がりエッジ時 (CS 起動時):
- Case GPMCFCLKDIVIDER = 0:
- F = 0.5 × CSExtraDelay × GPMC_FCLK(15)
- Case GPMCFCLKDIVIDER = 1:
- F = 0.5 × CSExtraDelay × GPMC_FCLK(15) if (ClkActivationTime および CSOnTime が奇数) or (ClkActivationTime および CSOnTime が偶数)
- F = (1 + 0.5 × CSExtraDelay) × GPMC_FCLK(15) otherwise
- Case GPMCFCLKDIVIDER = 2:
- f = 0.5 × CSExtraDelay × GPMC_FCLK(15) if ((CSOnTime - ClkActivationTime) が 3 の倍数)
- F = (1 + 0.5 × CSExtraDelay) × GPMC_FCLK(15) if ((CSOnTime - ClkActivationTime - 1) が 3 の倍数)
- F = (2 + 0.5 × CSExtraDelay) × GPMC_FCLK(15) if ((CSOnTime - ClkActivationTime - 2) が 3 の倍数)
CSn 立ち上がりエッジ時 CS 非アクティブ時、読み取りモード:
- Case GPMCFCLKDIVIDER = 0:
- F = 0.5 × CSExtraDelay × GPMC_FCLK(15)
- Case GPMCFCLKDIVIDER = 1:
- F = 0.5 × CSExtraDelay × GPMC_FCLK(15) (ClkActivationTime と CSRdOffTime が奇数) または (ClkActivationTime と CSRdOffTime が偶数) の場合
- F = (1 + 0.5 × CSExtraDelay) × GPMC_FCLK(15) otherwise
- Case GPMCFCLKDIVIDER = 2:
- F = 0.5 × CSExtraDelay × GPMC_FCLK(15) ((CSRdOffTime - ClkActivationTime) が 3 の倍数の場合)
- F = (1 + 0.5 × CSExtraDelay) × GPMC_FCLK(15) ((CSRdOffTime - ClkActivationTime - 1) が 3 の倍数の場合)
- F = (2 + 0.5 × CSExtraDelay) × GPMC_FCLK(15) ((CSRdOffTime - ClkActivationTime - 2) が 3 の倍数の場合)
書き込みモードでの CSn 立ち上がりエッジ (CS が非アクティブ) の場合:
- Case GPMCFCLKDIVIDER = 0:
- F = 0.5 × CSExtraDelay × GPMC_FCLK(15)
- Case GPMCFCLKDIVIDER = 1:
- F = 0.5 × CSExtraDelay × GPMC_FCLK(15) (ClkActivationTime と CSWrOffTime が奇数) または (ClkActivationTime と CSWrOffTime が偶数) の場合
- F = (1 + 0.5 × CSExtraDelay) × GPMC_FCLK(15) otherwise
- Case GPMCFCLKDIVIDER = 2:
- F = 0.5 × CSExtraDelay × GPMC_FCLK(15) ((CSWrOffTime - ClkActivationTime) が 3 の倍数の場合)
- F = (1 + 0.5 × CSExtraDelay) × GPMC_FCLK(15)((CSWrOffTime - ClkActivationTime - 1) が 3 の倍数の場合)
- F = (2 + 0.5 × CSExtraDelay) × GPMC_FCLK(15)((CSWrOffTime - ClkActivationTime - 2) が 3 の倍数の場合)
(6) ADV 立ち下がりエッジ (ADV がアクティブ) の場合:
- Case GPMCFCLKDIVIDER = 0:
- G = 0.5 × ADVExtraDelay × GPMC_FCLK(15)
- Case GPMCFCLKDIVIDER = 1:
- G = 0.5 × ADVExtraDelay × GPMC_FCLK(15) if (ClkActivationTime および ADVOnTime が奇数) or (ClkActivationTime および ADVOnTime が偶数)
- G = (1 + 0.5 × ADVExtraDelay) × GPMC_FCLK(15) otherwise
- Case GPMCFCLKDIVIDER = 2:
- G = 0.5 × ADVExtraDelay × GPMC_FCLK(15) if ((ADVOnTime - ClkActivationTime) が 3 の倍数)
- G = (1 + 0.5 × ADVExtraDelay) × GPMC_FCLK(15) if ((ADVOnTime - ClkActivationTime - 1) が 3 の倍数)
- G = (2 + 0.5 × ADVExtraDelay) × GPMC_FCLK(15) if ((ADVOnTime - ClkActivationTime - 2) が 3 の倍数)
読み取りモードでの ADV 立ち上がりエッジ (ADV が非アクティブ) の場合:
- Case GPMCFCLKDIVIDER = 0:
- G = 0.5 × ADVExtraDelay × GPMC_FCLK(15)
- Case GPMCFCLKDIVIDER = 1:
- G = 0.5 × ADVExtraDelay × GPMC_FCLK(15) f (ClkActivationTime および ADVRdOffTime が奇数) or (ClkActivationTime および ADVRdOffTime が偶数)
- G = (1 + 0.5 × ADVExtraDelay) × GPMC_FCLK(15) otherwise
- Case GPMCFCLKDIVIDER = 2:
- G = 0.5 × ADVExtraDelay × GPMC_FCLK(15) if ((ADVRdOffTime - ClkActivationTime) が 3 の倍数)
- G = (1 + 0.5 × ADVExtraDelay) × GPMC_FCLK(15) if ((ADVRdOffTime - ClkActivationTime - 1) が 3 の倍数)
- G = (2 + 0.5 × ADVExtraDelay) × GPMC_FCLK(15) if ((ADVRdOffTime - ClkActivationTime - 2) が 3 の倍数)
書き込みモードでの ADV 立ち上がりエッジ (ADV が非アクティブ) の場合:
- Case GPMCFCLKDIVIDER = 0:
- G = 0.5 × ADVExtraDelay × GPMC_FCLK(15)
- Case GPMCFCLKDIVIDER = 1:
- G = 0.5 × ADVExtraDelay × GPMC_FCLK(15) if (ClkActivationTime および ADVWrOffTime が奇数) または (ClkActivationTime および ADVWrOffTime が偶数)
- G = (1 + 0.5 × ADVExtraDelay) × GPMC_FCLK(15) otherwise
- Case GPMCFCLKDIVIDER = 2:
- G = 0.5 × ADVExtraDelay × GPMC_FCLK(15) if ((ADVWrOffTime - ClkActivationTime) が 3 の倍数)
- G = (1 + 0.5 × ADVExtraDelay) × GPMC_FCLK(15) if ((ADVWrOffTime - ClkActivationTime - 1) が 3 の倍数)
- G = (2 + 0.5 × ADVExtraDelay) × GPMC_FCLK(15) if ((ADVWrOffTime - ClkActivationTime - 2) が 3 の倍数)
(7) OE の立ち下がりエッジ (OE がアクティブ) および IO DIR の立ち上がりエッジ (データ バスが入力方向) の場合:
- Case GPMCFCLKDIVIDER = 0:
- H = 0.5 × OEExtraDelay × GPMC_FCLK(15)
- Case GPMCFCLKDIVIDER = 1:
- H = 0.5 × OEExtraDelay × GPMC_FCLK(15) if (ClkActivationTime および OEOnTime が奇数) または (ClkActivationTime および OEOnTime が偶数)
- H = (1 + 0.5 × OEExtraDelay) × GPMC_FCLK(15) otherwise
- Case GPMCFCLKDIVIDER = 2:
- H = 0.5 × OEExtraDelay × GPMC_FCLK(15) if ((OEOnTime - ClkActivationTime) が 3 の倍数)
- H = (1 + 0.5 × OEExtraDelay) × GPMC_FCLK(15) if ((OEOnTime - ClkActivationTime - 1) が 3 の倍数)
- H = (2 + 0.5 × OEExtraDelay) × GPMC_FCLK(15) if ((OEOnTime - ClkActivationTime - 2) が 3 の倍数)
OE 立ち上がりエッジ (OE が非アクティブ) の場合:
- Case GPMCFCLKDIVIDER = 0:
- H = 0.5 × OEExtraDelay × GPMC_FCLK(15)
- Case GPMCFCLKDIVIDER = 1:
- H = 0.5 × OEExtraDelay × GPMC_FCLK(15) if (ClkActivationTime および OEOffTime が奇数) または (ClkActivationTime および OEOffTime が偶数)
- H = (1 + 0.5 × OEExtraDelay) × GPMC_FCLK(15) otherwise
- Case GPMCFCLKDIVIDER = 2:
- H = 0.5 × OEExtraDelay × GPMC_FCLK(15) if ((OEOffTime - ClkActivationTime) が 3 の倍数)
- H = (1 + 0.5 × OEExtraDelay) × GPMC_FCLK(15) if ((OEOffTime - ClkActivationTime - 1) が 3 の倍数)
- H = (2 + 0.5 × OEExtraDelay) × GPMC_FCLK(15) if ((OEOffTime - ClkActivationTime - 2) が 3 の倍数)
(8) WE 立ち下がりエッジ (WE がアクティブ) の場合:
- Case GPMCFCLKDIVIDER = 0:
- I = 0.5 × WEExtraDelay × GPMC_FCLK(15)
- Case GPMCFCLKDIVIDER = 1:
- I = 0.5 × WEExtraDelay × GPMC_FCLK(15) if (ClkActivationTime および WEOnTime が奇数) or (ClkActivationTime および WEOnTime が偶数)
- I = (1 + 0.5 × WEExtraDelay) × GPMC_FCLK(15) otherwise
- Case GPMCFCLKDIVIDER = 2:
- I = 0.5 × WEExtraDelay × GPMC_FCLK(15) if ((WEOnTime - ClkActivationTime) が 3 の倍数)
- I = (1 + 0.5 × WEExtraDelay) × GPMC_FCLK(15) if ((WEOnTime - ClkActivationTime - 1) が 3 の倍数)
- I = (2 + 0.5 × WEExtraDelay) × GPMC_FCLK(15) if ((WEOnTime - ClkActivationTime - 2) が 3 の倍数)
WE 立ち上がりエッジ (WE が非アクティブ) の場合:
- Case GPMCFCLKDIVIDER = 0:
- I = 0.5 × WEExtraDelay × GPMC_FCLK (13)
- Case GPMCFCLKDIVIDER = 1:
- I = 0.5 × WEExtraDelay × GPMC_FCLK(15) if (ClkActivationTime および WEOffTime が奇数) or (ClkActivationTime および WEOffTime が偶数)
- I = (1 + 0.5 × WEExtraDelay) × GPMC_FCLK(15) otherwise
- Case GPMCFCLKDIVIDER = 2:
- I = 0.5 × WEExtraDelay × GPMC_FCLK(15) if ((WEOffTime - ClkActivationTime) が 3 の倍数)
- I = (1 + 0.5 × WEExtraDelay) × GPMC_FCLK(15) if ((WEOffTime - ClkActivationTime - 1) が 3 の倍数)
- I = (2 + 0.5 × WEExtraDelay) × GPMC_FCLK(15) if ((WEOffTime - ClkActivationTime - 2) が 3 の倍数)
(9) ケース CLK DIV 1 モード、最初の転送のみの場合:データおよびバイト イネーブルは GPMC_CLK の立ち上がりエッジで遷移します
- 非多重化モード:サイクル開始時のデータ遷移
- 多重化モード:WRDATAONADMUXBUS× (TimeParaGranularity + 1) ×GPMC_FCLK でのデータ遷移(15)
(10) ケース:CLK DIV 1 モード、初回転送以降のすべてのデータおよびバイト イネーブル:データおよびバイト イネーブルは GPMC_CLK の立ち下がりエッジで遷移します(GPMC_CLK の半周期)
(11) CLK DIV 1 モード以外のケースモード (GPMC_CLK を GPMC_FCLK から分周) :すべてのデータおよびバイトにより、GPMC_CLK の立ち下がりエッジ (GPMC_CLK の半周期) で遷移がイネーブルされます。ClkActivationTime、GPMCFCLKDIVIDER、RDACCESSTIME/WRACCESSTIME、および PAGEBURSTACCESSTIME の設定は、データおよびバイト イネーブルが GPMC_CLK の立ち下がりエッジで遷移し (GPMC_CLK の立ち上がりエッジでラッチされるように)、強制されるように構成する必要があります
(12) GPMC_CSn[i] で、i は 0、1、2、または 3 です。
(13) P = GPMC_CLK 周期 (ns 単位)
(14) 読み出しの場合:K = (ADVRdOffTime - ADVOnTime) × (TimeParaGranularity + 1) × GPMC_FCLK
(15) 書き込みの場合:K = (ADVWrOffTime - ADVOnTime) × (TimeParaGranularity + 1) × GPMC_FCLK
(15)
(15) GPMC_FCLK は、汎用メモリ コントローラの内部機能クロック周期で、ns 単位です。
(16) GPMC モジュールで、GPMC_CONFIG1_i 構成レジスタのビット フィールド GPMCFCLKDIVIDER の設定によりプログラム可能な、GPMC_CLK 出力クロックの最高および最低周波数に関連します。