高速インターフェースの実装

MachXO2 デバイ スにおける高速
イ ン タ ー フ ェ イ スの実装
2014 年 1 月
テ ク ニ カル ノ ー ト TN1203
は じ めに
広帯域デー タ 転送に対す る ニーズの高ま り に応 じ て、 業界は従来のシ ン グルデー タ レー ト (SDR) か ら 、 ダ
ブルデー タ レー ト (DDR) アーキ テ ク チ ャ へ移行 し ま し た。 SDR は ク ロ ッ ク 信号の立ち上が り エ ッ ジ、 ま た
は立ち下が り エ ッ ジのいずれかにデー タ を合わせて転送 し ます。一方 DDR は ク ロ ッ ク 信号の両エ ッ ジ を利用
し てデー タ を転送 し ます。 DDR の場合、 ク ロ ッ ク 一周期につ き デー タ が 2 回転送 さ れ る ため、 同 じ ク ロ ッ ク
周波数の場合、本質的にデー タ 転送速度が SDR の 2 倍にな り ます。DDR ク ロ ッ キ ン グ技法は DDR SDRAM な
ど の メ モ リ イ ン タ ーフ ェ イ ス で幅広 く 採用 さ れてい ます。 その結果、 DDR SDRAM メ モ リ はシ ス テ ムの信号
波形の品質要件を厳 し く す る こ と な く 、 SDR SDRAM メ モ リ に比べて 2 倍の帯域を得 る こ と がで き ます。
Lattice MachXO2 ™ PLD フ ァ ミ リ は、 プ ロ グ ラ マブル I/O (PIO) に作 り 込み ロ ジ ッ ク を通 じ て、 DDR と SDR
の両アプ リ ケーシ ョ ンに対 し て高速 イ ン タ ーフ ェ イ ス をサポー ト し ます。 ま た MachXO2 デバ イ ス は DDR や
DDR2、 及び LPDDR SDRAM メ モ リ イ ン タ ーフ ェ イ ス をサポー ト す る 専用回路を備え てい ます。 こ の ド キ ュ
メ ン ト は、 MachXO2 デバ イ ス におけ る 高速汎用 DDR イ ン タ ーフ ェ イ ス と 、 DDR / DDR2 及び LPDDR メ モ リ
イ ン タ ーフ ェ イ ス の実装に焦点を当ててい ます。 ま た MachXO2 デバ イ ス の組み込み機能を利用 し て、 高速
イ ン タ ーフ ェ イ ス において最良の性能を得 る ためのガ イ ド ラ イ ン も 提供 し ます。
高速 イ ン タ ーフ ェ イ ス ・ アーキ テ ク チ ャ
ギア リ ング ロ ジ ッ ク
高速汎用 DDR (Generic DDR、 GDDR) イ ン タ ーフ ェ イ ス は、 プ ロ グ ラ マブル I/O (PIO) セルに組み込まれ
たギ ア リ ン グ ロ ジ ッ ク (Mux / DeMux) で対応 し ます。 こ のギ ア リ ン グは、 FPGA フ ァ ブ リ ッ ク に対す る 性
能要件を抑えつつ高速 I/O に対応す る ために必要です。
MachXO2 デバ イ ス では、 I/O バン ク の位置 と 論理規模に応 じ て 4 種類のギア リ ン グ比を設定で き ます。 x1 ギ
ア リ ン グ比は全てのデバ イ ス規模の全バン ク で使用で き ます。 x2 と x4、 及び 7:1 ギ ア リ ン グ比は MachXO2640U と MachXO2-1200/U、 及び こ れ よ り 大規模デバ イ ス の上辺 と 下辺バン ク で使用で き ます。 7:1 ギ ア リ ン
グ比は主に ビデオデ ィ ス プ レ イ ・ アプ リ ケーシ ョ ンに使用 し ます。 x2 / x4 ギ ア リ ン グ回路は、 受信側 と 送信
側の両方を 7:1 回路 と 共有 し てい ます。 MachXO2-640U と MachXO2-1200/U、 及び こ れ よ り 大規模デバ イ ス
の右辺バン ク は、 DDR メ モ リ イ ン タ ーフ ェ イ ス をサポー ト し てい ます。 DDR メ モ リ は メ モ リ PIO セルに組
み込まれた専用の x1 ギ ア リ ン グ ロ ジ ッ ク を利用 し ます。
表 11-1. MachXO2-640U と MachXO2-1200/U、 及び こ れ よ り 大規模デバ イ ス のギア リ ン グ ロ ジ ッ ク
定義
ギア リ ング比
左辺
右辺
下辺
上辺
DDR x11
ギア リ ン グロ ジ ッ ク
GDDR
1:2 又は 2:1
Yes
Yes
Yes
Yes
Input DDR x2
GDDR
1:4
—
—
Yes
—
Input DDR x4
GDDR
1:8
—
—
Yes
—
Input DDR 7:1
GDDR
1:7
—
—
Yes
—
Output DDR x2
GDDR
4:1
—
—
—
Yes
Output DDR x4
GDDR
8:1
—
—
—
Yes
Output DDR 7:1
GDDR
7:1
—
—
—
Yes
メ モ リ DDR
1:2 又は 2:1
—
Yes
—
—
mem DDR x1
1. DDRx1 は全ての規模の MachXO2 デバ イ ス で利用可能
© 2011 Lattice Semiconductor Corp. All Lattice trademarks, registered trademarks, patents, and disclaimers are as listed at www.latticesemi.com/legal. All other brand or product
names are trademarks or registered trademarks of their respective holders. The specifications and information herein are subject to change without notice.
(日本語版は日本語に よ る理解のため一助 と し て提供 し てい ます。 その作成にあ た っ ては可能な限 り 正確を期 し てお り ますが、 原文英語版 と の不一致や不適切な訳
文があ る 場合を含み、 英語版が正 (有効) です。 特に電気的特性 ・ 仕様値係わ る事項については最新版の英語版を必ず参照する よ う にお願い致 し ます。)
www.latticesemi.com
11-1
TN1203_01.7
MachXO2 デバイスにおける
高速イ ン タ ー フ ェ イ スの実装
表 11-1 は様々な I/O バン ク が対応す る ギ ア リ ン グ ロ ジ ッ ク の詳細を示 し た も のです。 PIO セルの詳細につ
いては MachXO2 フ ァ ミ リ デー タ シー ト を参照 し て く だ さ い。
様々な タ イ プの I/O ロ ジ ッ ク セル
様々なギ ア リ ン グ比に対応す る ために、 MachXO2 デバ イ ス には 3 種類の PIO ロ ジ ッ ク セルがあ り ます。 こ
れ ら は基本 (basic) PIO セル と メ モ リ PIO セル、 そ し て ビデオ PIO セルです。
図 11-1. x1 ギア リ ン グ比に対応する基本 PIO セル
INCK
INDD
D
Programmable
Delay Cell
Q1
D
D
Q
Q
Q0
Q1
D/L Q
D
Q
Q0
SCLK
Input Path
Q
Q0
D/L Q
D0
D1
D
Q
D
Q
Q1
SCLK
TD
Output Path
D/L Q
TQ
Tri-state Path
基本 PIO セルは従来型の SDR レ ジ ス タ と DDR x1 レ ジ ス タ を含みます。 こ れは MachXO2 デバ イ ス の全ての
辺 ・ バン ク で利用で き ます。 メ モ リ PIO セルは DDR メ モ リ アプ リ ケーシ ョ ンに対応 し 、 MachXO2-640U と
MachXO2-1200/U、 及び こ れ よ り 大規模デバ イ ス の右辺で利用で き ます。 ビデオ PIO セルは、 x2 / x4 お よ び
7:1 ギ ア リ ン グ用途に対応 し 、 MachXO2-640U と MachXO2-1200/U、 及び こ れ よ り 大規模デバ イ ス で利用で
き 、 下辺が受信 イ ン タ ーフ ェ イ ス用、 上辺が送信 イ ン タ ーフ ェ イ ス用です。 各 タ イ プの PIO セルに関す る 入
出力構造の詳細については MachXO2 フ ァ ミ リ デー タ シー ト を参照 し て く だ さ い。 参考 と し て PIO セルのブ
ロ ッ ク 図を下に示 し ます。
11-2
TN1203_01.7
MachXO2 デバイスにおける
高速イ ン タ ー フ ェ イ スの実装
図 11-2. DDR メ モ リ アプ リ ケーシ ョ ンに対応する メ モ リ PIO セル
INCK
INDD
Programmable
Delay Cell
D
Q1
D
Q
D
Q S1
D
Q Q0
D
Q
S0
D
Q
D
Q
D/L Q
D
Q1
Q0
Q
DQSR90
DDRCLKPOL
SCLK
Input Path
D/L Q
D0
D1
D Q
D Q
Q
Q0
Q1
SCLK
DQSW90
Output Register Path
T0
TD
D/L Q
D Q
TQ
Tri-state Register Path
11-3
TN1203_01.7
MachXO2 デバイスにおける
高速イ ン タ ー フ ェ イ スの実装
図 11-3. x2 / x4 と 7:1 アプ リ ケーシ ョ ン用のビデオ PIO セル
Q21
Q43
D Q
D Q
Q0_
Q10
D Q
CE
Q32
D Q
CE
S0
D Q
S2
Q21
D Q
T0
T2
Q0
Q2
IDDRx2_C
Q65
Q43
D Q
Q54
cdn
Programmable
Delay Cell
D Q
CE
S4
D Q
T4
Q4
cdn
Q65
S6
D Q
Q_6
D Q
CE
D Q
T6
Q6
D
4-bit rx_data
from x2 gearing
Q_6
D Q
Q_6
D Q
CE
Q54
D Q
Q65
D Q
CE
S7
T7
8-bit rx_data
from x4 gearing
Q7
D Q
Not used in 1:7
de-serialization
S5
D
T5
Q5
T3
Q3
T1
Q1
IDDRx2_A
Q54
D Q
Q32
Q43
Q32
D Q S3
CE
Q10
D Q
Q21
D Q
CE
S1
D
D
IDDRx2_C
ECLK0/1
SCLK
SEL0
UPDATE
Receive Path
11-4
TN1203_01.7
MachXO2 デバイスにおける
高速イ ン タ ー フ ェ イ スの実装
D6
D Q
D4
D Q
T6
T4
D Q
CE
D Q
CE
S6
S7
0
1
GND 0
1
Q67
S4
S5
0
1
S3
0
1
D Q
0
1
D Q
0
1
D Q
Q67
Q45
ODDRx2_C
D Q
D2
T2
D Q
CE
Q45
S2
Q23
CDN
QC
D Q T0
D0
D Q
CE
S0
S1
0
1
Q23
0
1
Q01
D Q
Q/QA
D1
D Q
T1
T3
D Q
D3
D Q
CE
S1
0
1
D Q
0
1
D Q
0
1
D Q
S4
0
1
GND 0
1
D Q
S6
0
1
S0
D Q S3
CE
Q12
S2
0
1
0
1
Q34
Q10
4-Bit tx_data
from x2 Gearing
8-Bit tx_data
from x4 Gearing
Q32
ODDRx2_A
Q D
D5
Q D
D7
T5
T7
D Q
CE
D Q
CE
Q56
S5
S7
Q54
Q76
ODDRx2_C
SCLK
SEL /0
UPDATE
Not used in 7:1
Serialization
ECLK0/1
Transmit Path
PIO セルの ク ロ ッ ク ド メ イ ン転送
MachXO2 のギ ア リ ン グ ロ ジ ッ ク は、 PIO セル内で高速デー タ のシ リ アル化及びパ ラ レル化を実行 し ます。 高
速エ ッ ジ ク ロ ッ ク (ECLK) か ら 低速シ ス テ ム ク ロ ッ ク (SCLK) へのデー タ の ク ロ ッ ク ド メ イ ン転送は、 2
本の内部信号であ る UPDATE と SEL に よ っ て、 デバ イ ス設計 と し て確実に動作す る よ う にな っ てい ます。
SEL 信号は 7:1 ギ ア リ ン グの場合、 デー タ の 3 ビ ッ ト 分 と 4 ビ ッ ト 分を一度にサンプルす る ために Low と
High に ト グル し ます。 x2 / x4 ギ ア リ ン グの場合、 SEL 信号は ト グル し ません。 UPDATE 信号は全てのギ ア
リ ン グ時に同 じ 動作を し 、 正 し いデー タ バ イ ト 数で レ ジ ス タ を更新 し ます。 その後、 こ れ ら デー タ は次段で
の処理のために SCLK で ク ロ ッ キ ン グ さ れます。 図 11-3 に x2 / x4 入力ギ ア リ ン グ ロ ジ ッ ク のアーキ テ ク
チ ャ を示 し ます。
MachXO2 デバ イ ス には、 最小限の FPGA リ ソ ース で ワー ド ア ラ イ メ ン ト がで き る ロ ジ ッ ク があ り ます。 ワー
ド ア ラ イ メ ン ト の結果、 UPDATE と SEL、 及び SCLK 信号がシ フ ト し ます。 ワー ド ア ラ イ メ ン ト は、 高速 イ
ン タ ーフ ェ イ ス ・ コ ン ポーネ ン ト の ALIGNWD ポー ト に、 ア ラ イ メ ン ト 要求信号を与え る こ と でア ク テ ィ ブ
に さ れます。 ALIGNWD は ECLK ド メ イ ン と 非同期にで き ますが、 少な く と も 2 ECLK 周期幅が必要です。
7:1 ギ ア リ ン グの場合、 最大で 7 通 り の ワー ド オーダの組み合わせをループす る ため、 ALIGNWD は 7 回パル
11-5
TN1203_01.7
MachXO2 デバイスにおける
高速イ ン タ ー フ ェ イ スの実装
ス入力 さ れ る 必要があ り ます。 x2 / x4 ギ ア リ ン グの場合は、 最大で 8 通 り の ワー ド オーダの組み合わせを
ループす る ため、 ALIGNWD は 8 回パルス入力 さ れ る 必要があ り ます。
図 11-4 と 11-5 は、 異な る ギ ア リ ン グ要件におけ る UPDATE と SEL、 ECLK、 及び SCLK 信号の タ イ ミ ン グ
関係を示 し た も のです。 図 11-6 と 11-7 は、 様々なギ ア リ ン グ比におけ る ワー ド ア ラ イ メ ン ト 処理を示 し た
も のです。 ギ ア リ ン グ ロ ジ ッ ク についての こ の説明は、 高速 イ ン タ ーフ ェ イ ス の受信側 と 送信側の両方に当
ては ま り ます。 7:1 ギ ア リ ン グ機能を利用 し た ワ ー ド ア ラ イ メ ン ト の実装の詳細については、 参照デザ イ ン
"RD1093 - MachXO2 Display Interface (MachXO2 デ ィ ス プ レ イ ・ イ ン タ ーフ ェ イ ス) " を参照 し て く だ さ い。
DDR メ モ リ イ ン タ ーフ ェ イ ス の ク ロ ッ ク ド メ イ ン転送は、 メ モ リ リ ー ド / ラ イ ト 動作用にデバ イ ス に組み込
まれた 90° 位相シ フ ト ・ ク ロ ッ ク ツ リ ーを使用 し て実行 さ れます。DLL 及び DQS 検出 ロ ジ ッ ク に よ り 、DDR
メ モ リ に対す る デー タ の正 し い リ ー ド と ラ イ ト が確保 さ れます。
図 11-4. 7:1 デシ リ ア ラ イ ザの タ イ ミ ン グ
D
c4
c5
c6
d0
d1 d2
d3 d4
d5
d6
e0
e1
e2
e3
e4
e5
e6 e7
f0
f1
f2
f3
f4
f5
f6
g0
g1 g2
ECLK
UPDATE
SEL
SCLK
Q(6:0)
“a6a5a4a3a2a1a0”
“c6c5c4c3c2c1c0”
“d6d5d4d3d2d1d0”
“e6e5e4e3e2e1e0”
図 11-5. x2 / x4 デシ リ ア ラ イ ザの タ イ ミ ン グ
D
c5
c6
c7
d0
d1
d2 d3
d4 d5
d6 d7
e0
e1
e2 e3
e4
e5
e6
e7
f0
f2
f3
f4
f5
f6
f7
g0
g1
ECLK
UPDATE
SEL
SCLK
Q(6:0)
“b7b6b5b4b3b2b1b0”
“c7c6c5c4c3c2c1c0”
11-6
“d7d6d5d4d3d2d1d0”
“e7e6e5e4e3e2”
TN1203_01.7
MachXO2 デバイスにおける
高速イ ン タ ー フ ェ イ スの実装
図 11-6. ALIGNWD に応答する 7:1 デシ リ ア ラ イ ザの タ イ ミ ン グ
‘ALIGNWD’
Action
D
b2
b3
b4
b5
b6
c0
c1
c2
c3
c4
c5
c6
d0
d1
d2
d3
d4
d5
d6
e0
e1
e2
e3
e4
e5
e6
f0
f1
ECLK
UPDATE
SEL
SCLK
Q(6:0)
“a4a3a2a1a0k6k5”
“b4b3b2b1b0a6a5”
“c4c3c2c1c0b6b5”
“d6d5d4d3d2d1d0”
図 11-7. ALIGNWD に応答する x2 / x4 デシ リ ア ラ イ ザの タ イ ミ ン グ
‘ALIGNWD’
Action
D
c3
c4
c5
c6
c7
d0
d1
d2
d3
d4
d5
d6
d7
e0
e1
e2
e3
e4
e5
e6
e7
f0
f1
f2
f3
f4
1
0
ECLK
UPDATE
SEL
SCLK
Q(6:0)
“b6b5b4b3b2b1b0a7”
“c6c5c4c3c2c1c0b7”
“d7d6d5d4d3d2d1d0”
“e7e6e5e4...”
外部高速 イ ン タ ーフ ェ イ ス の説明
MachXO2 デバ イ ス に対 し て使用で き る 外部高速 イ ン タ ーフ ェ イ ス の定義 と し て、 " セ ン タ ー " と " ア ラ イ ン
" の 2 種類があ り ます。 セ ン タ ー外部 イ ン タ ーフ ェ イ ス の場合、 デバ イ ス ピ ンで ク ロ ッ ク エ ッ ジがデー タ の
中央にあ り ます。ア ラ イ ン外部 イ ン タ ーフ ェ イ ス の場合、デバ イ ス ピ ンで ク ロ ッ ク エ ッ ジ と デー タ 遷移が揃っ
てい ます。 こ れは " エ ッ ジオンエ ッ ジ (edge-on-edge) " と 呼ばれ る こ と も あ り ます。
図 11-8 は SDR と DDR におけ る外部 イ ン タ ーフ ェ イ ス波形を示 し ます。 ア ラ イ ン ・ イ ン タ ーフ ェ イ ス では、
キ ャ プチ ャ ・ フ リ ッ プ フ ロ ッ プのセ ッ ト ア ッ プ タ イ ム と ホール ド タ イ ム を満足す る ため、 ク ロ ッ ク エ ッ ジが
デー タ の中央に位置す る よ う に、 受信側で ク ロ ッ ク 遅延調整が必要です。 同様にセ ン タ ー ・ イ ン タ ーフ ェ イ
ス では、 ク ロ ッ ク エ ッ ジがデー タ の中央に位置 し て送信す る よ う に、 送信側で ク ロ ッ ク の遅延調整をす る 必
要があ り ます。
特定のバ ス イ ン タ ーフ ェ イ ス では、 セ ン タ ー と ア ラ イ ン ・ イ ン タ ーフ ェ イ ス の両方が使用 さ れ る か も し れま
せん。 例えば DDR SDRAM メ モ リ の場合、 リ ー ド 時の ク ロ ッ ク と デー タ の関係はア ラ イ ン ・ イ ン タ ーフ ェ イ
ス ですが、 ラ イ ト 時の ク ロ ッ ク と デー タ の関係はセ ン タ ー ・ イ ン タ ーフ ェ イ ス です。
11-7
TN1203_01.7
MachXO2 デバイスにおける
高速イ ン タ ー フ ェ イ スの実装
図 11-8. 外部 イ ン タ ーフ ェ イ ス の定義
SDR Aligned
SDR Centered
Clock at pin
Data at pin
DDR Aligned
DDR Centered
Clock at pin
Data at pin
高速 イ ン タ ーフ ェ イ ス を構成す る ブ ロ ッ ク
MachXO2 デバ イ ス は、 高速 イ ン タ ーフ ェ イ ス を構成す る 専用の論理ブ ロ ッ ク を備え、 各ブ ロ ッ ク は独自の機
能を実行 し ます。 様々なブ ロ ッ ク を組み合わせ る こ と に よ り 、 特定 イ ン タ ーフ ェ イ ス について究極の性能を
実現で き ます。 こ のセ ク シ ョ ンでは、 デバ イ ス のハー ド ウ ェ ア ・ コ ン ポーネ ン ト について説明 し ます。 ”DDR
ソ フ ト ウ ェ アのプ リ ミ テ ィ ブ と ア ト リ ビ ュ ー ト ” セ ク シ ョ ンで、 こ れ ら コ ン ポーネ ン ト の ラ イ ブ ラ リ ・ エ レ
メ ン ト を説明 し ます。 ク ロ ッ キ ン グ と PLL アーキ テ ク チ ャ の詳細については TN1199 ”MachXO2 sysCLOCK
PLL Design and Usage Guide (MachXO2 sysCLOCK PLL の設計 と 使用ガ イ ド ) ” を参照 し て く だ さ い。
ECLK
エ ッ ジ ク ロ ッ ク ECLK は高速で低ス キ ュ ーの I/O 専用 ク ロ ッ ク です。 MachXO2-640U と MachXO2-1200/U、
及び こ れ よ り 大規模のデバ イ ス では、 上下辺のそれぞれに 2 本のエ ッ ジ ク ロ ッ ク があ り ます。 プ ラ イ マ リ ・
ク ロ ッ ク ネ ッ ト PCLK は、 ECLK と 直接接続す る こ と がで き ます。 ま た下辺の PCLK ピ ンは、 ビデオアプ リ
ケーシ ョ ン用な どのために、 PLL に対 し て最短配線にな っ てい ます。
ECLKSYNC
こ れは ECLK 同期ブ ロ ッ ク です。 各 ECLK にはそれぞれ こ の ECLKCYNC コ ン ポーネ ン ト があ り 、 ク ロ ッ ク
ド メ イ ン転送でデー タ を同期化 し ます。 ま た こ の コ ン ポーネ ン ト は、 エ ッ ジ ク ロ ッ ク を動的にデ ィ セーブル
す る こ と に よ り 、 動作時の省電力化のために使用で き ます。
SCLK
SCLK はデザ イ ン でのシ ス テ ム ク ロ ッ ク です。 高速 イ ン タ ーフ ェ イ ス を実現す る ためには、 SCLK はプ ラ イ マ
リ ・ ク ロ ッ ク ピ ンやプ ラ イ マ リ ・ ク ロ ッ ク ネ ッ ト を使用す る必要があ り ます。 MachXO2 デバ イ ス あ た り 8 本
のプ ラ イ マ リ ・ ク ロ ッ ク ピ ン (PCLK) と 、 8 本のプ ラ イ マ リ ・ ク ロ ッ ク ネ ッ ト があ り ます。
CLKDIV
ク ロ ッ ク 分周器 CLKDIV は、 高速エ ッ ジ ク ロ ッ ク か ら 低速シ ス テ ム ク ロ ッ ク を生成す る ために使用 し ます。
MachXO2-640U と MachXO2-1200/U、 及び こ れ よ り 大規模のデバ イ ス には、 上辺 と 下辺のそれぞれに 2 個の
CLKDIV があ り ます。本 コ ン ポーネ ン ト を介 し て、ECLK 周波数は 2、3.5、ま たは 4 分周す る こ と がで き ます。
PLL
MachXO2 デバ イ ス には最大 2 つの PLL があ り 、 その数は論理規模に よ り 異な り ます。 MachXO2-640U と
MachXO2-1200/U、 及び MachXO2-2000 には 1 つ、 MachXO2-2000U と MachXO2-4000、 及び MachXO2-7000
には、 2 つの PLL があ り ます。 ま た、 あ ら か じ め割 り 当て済みのデ ュ アルフ ァ ン ク シ ョ ン I/O ピ ンがあ り 、
基準 ク ロ ッ ク 入力 と し て PLL に供給 し ます。
11-8
TN1203_01.7
MachXO2 デバイスにおける
高速イ ン タ ー フ ェ イ スの実装
DQSDLL
MachXO2-640U と MachXO2-1200/U、 及び こ れ よ り 大規模デバ イ ス には、 最大 2 つの DQSDLL があ り ます。
右上の DQSDLL は上辺 と 右辺のバン ク を制御 し 、左下の DQSDLL は下辺 と 左辺のバン ク で利用で き ます。本
コ ン ポーネ ン ト は、 DDR メ モ リ と 汎用高速 イ ン タ ーフ ェ イ ス の両方で使用で き、 ク ロ ッ ク ス レーブ遅延セル
(DLLDEL) と と も に、 ア ラ イ ン ・ イ ン タ ーフ ェ イ ス で レ シーバでの 90° ク ロ ッ ク 位相シ フ ト / 遅延に用い
ら れます。
入力 DDR (IDDR)
汎用入力 DDR コ ン ポーネ ン ト は、 PIO セルの受信側で x1 と x2、 x4、 及び 7:1 ギ ア リ ン グ ( こ の場合シ リ パ
ラ 変換) 比に対応 し ます。 x1 ギ ア リ ン グ比は IDDRX、 すなわち基本 PIO セルに よ り サポー ト さ れます。 こ
の場合 1 ビ ッ ト DDR デー タ を受信 し 、 SCLK と 同期 し た 2 ビ ッ ト 幅のパ ラ レルデー タ を出力 し ます。 x1 ギア
リ ン グには ク ロ ッ ク ド メ イ ン転送はあ り ません。 x2 ギ ア リ ン グは IDDRX2 に よ り サポー ト さ れ、 ECLK に同
期 し た 1 ビ ッ ト DDR デー タ を受信 し 、 SCLK に同期 し た 4 ビ ッ ト のパ ラ レルデー タ を出力 し ます。 IDDRX4
に も 同 じ 機能が適用 さ れ、 ECLK に同期 し た 1 ビ ッ ト DDR デー タ を受信 し 、 SCLK に同期 し た 8 ビ ッ ト のパ
ラ レルデー タ を出力 し ます。 7:1 ギ ア リ ン グは、 x4 ギア リ ン グ と 同一構造を共有 し てい ますが、 8 ビ ッ ト で
はな く 、 7 ビ ッ ト のパ ラ レルデー タ を出力 し ます。 汎用高速 イ ン タ ーフ ェ イ ス のギ ア リ ン グは、 ビデオ PIO
セルに よ り サポー ト さ れます。
出力 DDR (ODDR)
汎用出力 DDR コ ン ポーネ ン ト は、 PIO セルの送信側で x1 と x2、 x4、 及び 7:1 ギ ア リ ン グ ( こ の場合パ ラ シ
リ 変換) 比に対応 し ます。 x1 ギ ア リ ン グは ODDRX、 すなわち基本 PIO セルに よ り サポー ト さ れます。 こ の
場合 SCLK を基準に 2 ビ ッ ト デー タ を シ リ ア ラ イ ズ し ます。 x1 ギ ア リ ン グには ク ロ ッ ク ド メ イ ン転送はあ り
ません。 x2 ギ ア リ ン グは ODDRX2 に よ り サポー ト さ れ、 4 ビ ッ ト のパ ラ レルデー タ が、 SCLK に よ り ク ロ ッ
キ ン グ さ れ、 ECLK を基準にシ リ ア ラ イ ズ さ れます。 x4 ギ ア リ ン グは、 ODDRX4 に よ り サポー ト さ れ、 8 ビ ッ
ト のパ ラ レルデー タ が SCLK に よ り ク ロ ッ キ ン グ さ れ、 ECLK を基準にシ リ ア ラ イ ズ さ れます。 7:1 ギ ア リ ン
グは x4 ギ ア リ ン グ と 同一構造を共有 し てお り 、7 ビ ッ ト のパ ラ レルデー タ が ECLK を基準にシ リ ア ラ イ ズ さ
れます。 汎用高速 イ ン タ ーフ ェ イ ス のギ ア リ ン グは、 ビデオ PIO セルに よ り サポー ト さ れます。
遅延
高速 イ ン タ ーフ ェ イ ス では 2 種類の遅延が利用可能です。 1 番目の タ イ プは I/O ロ ジ ッ ク 遅延で、 入力デー
タ パ ス に適用 さ れます。 32 タ ッ プの I/O ロ ジ ッ ク 遅延は、 静的 (固定) ま たは動的のいずれ も 可能ですが、
デー タ パ ス の動的遅延をサポー ト す る のは MachXO2-640U と MachXO2-1200/U、及び こ れ よ り 大規模デバ イ
ス の下辺のみです。 Lattice 設計 ソ フ ト ウ ェ アで イ ン タ ーフ ェ イ ス をパ ラ メ ー タ 設定す る 場合、 I/O ロ ジ ッ ク
遅延 (DELAYE) にはデフ ォ ル ト と し て固定値が使用 さ れ ます。 ソ フ ト ウ ェ アが使用す る イ ン タ ーフ ェ イ ス
に応 じ た固定遅延値を適用 し ます。 下辺の入力デー タ パス の動的遅延 (DELAYD) は、 動的遅延値ま たはユー
ザ指定の遅延値が与え ら れます。 動的遅延の場合、 モジ ュ ールにはユーザ ロ ジ ッ ク と 接続 し て遅延を制御す
る ためのポー ト が必要にな り ます。 I/O ロ ジ ッ ク 遅延を利用す る こ と で、 SDR のゼ ロ ・ ホール ド タ イ ムや、
x1 ギ ア リ ン グ用のプ ラ イ マ リ ク ロ ッ ク 注入遅延 ( イ ン ジ ェ ク シ ョ ン ・ デ ィ レ イ ) 補償、 x2 / x4 ギ ア リ ン グ
用のエ ッ ジ ク ロ ッ ク 注入遅延補償を実現で き ます。
2 番目の タ イ プは ク ロ ッ ク ス レーブ遅延セル (DLLDEL) で、入力 ク ロ ッ ク を 90° 位相遅延 し 、 ク ロ ッ ク エ ッ
ジ をデー タ の中央に合わせます。 こ のブ ロ ッ ク は、 7 ビ ッ ト 制御 コー ド を介 し て DQSDLL に よ り デジ タ ル的
に制御 さ れます。 プ ラ イ マ リ ・ ク ロ ッ ク ピ ン 1 本ご と に ク ロ ッ ク ス レーブ遅延セルが一つあ り ます。 その入
力はプ ラ イ マ リ ・ ク ロ ッ ク ピ ンか ら 得 ら れ、 出力は x1 ア ラ イ ン ・ イ ン タ ーフ ェ イ ス に対 し てプ ラ イ マ リ ・ ク
ロ ッ ク ネ ッ ト を ド ラ イ ブす る か、 x2 /x4 ア ラ イ ン ・ イ ン タ ーフ ェ イ ス に対 し て ECLK を ド ラ イ ブ し ます。
DQSBUF
こ の コ ン ポーネ ン ト は DDR メ モ リ 専用の DQS 回路です。 メ モ リ リ ー ド 動作では DQS 入力信号を 90° 位相
シ フ ト し 、 メ モ リ ラ イ ト 動作では SCLK を 90° 位相シ フ ト し ます。 こ のブ ロ ッ ク か ら は ク ロ ッ ク 極性検出
(DDRCLKPOL) 、 バース ト 検出 (BURSTDET) 、 及びデー タ 有効 (DATAVALID) の各信号が生成 さ れます。
DQSBUF は MachXO2-640U と MachXO2-1200/U、 及び こ れ よ り 大規模なデバ イ ス の右辺バン ク にあ り ます。
11-9
TN1203_01.7
MachXO2 デバイスにおける
高速イ ン タ ー フ ェ イ スの実装
IDDRDQS
こ れは DDR メ モ リ の入力バ ッ フ ァ で、 DQS か ら SCLK への ク ロ ッ ク ド メ イ ン転送をサポー ト し ます。 こ れ
ら の PIO セルは DDR メ モ リ イ ン タ ーフ ェ イ ス専用で、 DDR メ モ リ の リ ー ド 動作で使用 さ れます。 IDDRDQS
は MachXO2-640U と MachXO2-1200/U、 及び こ れ よ り 大規模なデバ イ ス の右辺バン ク にあ り ます。
ODDRDQS
こ れは DDR メ モ リ の出力バ ッ フ ァ で、 SCLK か ら DQS への ク ロ ッ ク ド メ イ ン転送をサポー ト し ます。 こ れ
ら の PIO セルは DDR メ モ リ イ ン タ ーフ ェ イ ス専用で、DDR メ モ リ の ラ イ ト 動作で使用 さ れます。ODDRDQS
は MachXO2-1200 及び こ れ よ り 大規模なデバ イ ス の右辺バン ク にあ り ます。
汎用高速 DDR イ ン タ ーフ ェ イ ス
汎用高速 イ ン タ ーフ ェ イ ス、 或いは汎用 DDR (GDDR : Generic DDR ) は、 MachXO2 においては専用の ロ
ジ ッ ク ブ ロ ッ ク でサポー ト さ れます。 こ のセ ク シ ョ ンでは GDDR の タ イ プや イ ン タ ーフ ェ イ ス ・ ロ ジ ッ ク 、
及びシ リ コ ンで GDDR 機能をサポー ト す る ソ フ ト ウ ェ アについて説明 し ます。
高速 GDDR イ ン タ ーフ ェ イ ス の タ イ プ
MachXO2 デバ イ ス フ ァ ミ リ がサポー ト す る GDDR イ ン タ ーフ ェ イ ス は、 ソ フ ト ウ ェ アで事前に定義 さ れ、
キ ャ ラ ク タ ラ イ ズ さ れてい ます。 表 11-2 に対応す る 全 イ ン タ ーフ ェ イ ス と 、 各 イ ン タ ーフ ェ イ ス の簡単な
説明を示 し ます。
以下は表 11-2 で用い ら れてい る イ ン タ ーフ ェ イ ス の略称の説明です。
• G ~ 汎用
• IREG ~ SDR 入力 I/O レ ジ ス タ
• OREG ~ SDR 出力 I/O レ ジ ス タ
• DDRX1 ~ DDR x1 I/O レ ジ ス タ
• DDRX2 ~ DDR x2 I/O レ ジ ス タ
• DDRX4 ~ DDR x4 I/O レ ジ ス タ
• DDR71 ~ DDR 7:1 I/O レ ジ ス タ
• _RX ~ 受信 イ ン タ ーフ ェ イ ス
• _TX ~ 送信 イ ン タ ーフ ェ イ ス
• ECLK ~ GDDR イ ン タ ーフ ェ イ ス で ECLK (エ ッ ジ ク ロ ッ ク ) リ ソ ース を使用
• SCLK ~ GDDR イ ン タ ーフ ェ イ ス で SCLK (プ ラ イ マ リ ク ロ ッ ク ) リ ソ ース を使用
• Centered (セ ン タ ー) ~ デバ イ ス入力端で ク ロ ッ ク エ ッ ジがデー タ の中央にあ る
• Aligned (ア ラ イ ン) ~ デバ イ ス入力端で ク ロ ッ ク エ ッ ジ と デー タ エ ッ ジが揃っ てい る
11-10
TN1203_01.7
MachXO2 デバイスにおける
高速イ ン タ ー フ ェ イ スの実装
表 11-2. 汎用高速 I/O DDR イ ン タ ーフ ェ イ ス
モー ド
イ ン タ ー フ ェ イ ス名
説 明
サポー ト するデバイ ス と
辺
RX SDR
GIREG_RX.SCLK
SCLK を用い る SDR 入力
RX GDDRx1 Aligned
GDDRX1_RX.SCLK.Aligned
SCLK を用い る DDRx1 入力、 デー タ は 640U と 1200/U こ れ以上の
入力 ク ロ ッ ク のエ ッ ジ と 揃っ てい る
デバ イ ス、 全辺
全デバ イ ス、 全辺
RX GDDRx1 Centered
GDDRX1_RX.SCLK.Centered
SCLK を用い る DDRx1 入力、 入力 ク
ロ ッ ク エ ッ ジはデー タ の中央にあ る
RX GDDRx2 Aligned
GDDRX2_RX.ECLK.Aligned
ECLK を用い る DDRx2 入力、 デー タ は 640U と 1200/U こ れ以上の
入力 ク ロ ッ ク のエ ッ ジ と 揃っ てい る
デバ イ ス、 下辺
RX GDDRx2 Centered
GDDRX2_RX.ECLK.Centered
ECLK を用い る DDRx2 入力、 入力 ク
ロ ッ ク エ ッ ジはデー タ の中央にあ る
RX GDDRx4 Aligned
GDDRX4_RX.ECLK.Aligned
ECLK を用い る DDRx4 入力、 デー タ は 640U と 1200/U こ れ以上の
入力 ク ロ ッ ク のエ ッ ジ と 揃っ てい る
デバ イ ス、 下辺
RX GDDRx4 Centered
GDDRX4_RX.ECLK.Centered
ECLK を用い る DDRx4 入力、 入力 ク
ロ ッ ク エ ッ ジはデー タ の中央にあ る
640U と 1200/U こ れ以上の
デバ イ ス、 下辺
RX GDDR71
GDDR71_RX.ECLK.7:1
ECLK を用い る GDDR 7:1 入力
640U と 1200/U こ れ以上の
デバ イ ス、 下辺
TX SDR
GOREG_TX.SCLK
SCLK を用い る SDR 出力
全デバ イ ス、 全辺
TX GDDRx1 Aligned
GDDRX1_TX.SCLK.Aligned
SCLK を用い る DDRx1 出力、 デー タ は 全デバ イ ス、 全辺
出力 ク ロ ッ ク のエ ッ ジ と 揃っ てい る
TX GDDRx1 Centered
GDDRX1_TX.SCLK.Centered
SCLK を用い る DDRx1 出力、 出力 ク
ロ ッ ク エ ッ ジはデー タ の中央にあ る
TX GDDRx2 Aligned
GDDRX2_TX.ECLK.Aligned
ECLK を用い る DDRx2 出力、 デー タ は 640U と 1200/U こ れ以上の
出力 ク ロ ッ ク のエ ッ ジ と 揃っ てい る
デバ イ ス、 上辺
TX GDDRx2 Centered
GDDRX2_TX.ECLK.Centered
ECLK を用い る DDRx2 出力、 出力 ク
ロ ッ ク エ ッ ジはデー タ の中央にあ る
TX GDDRx4 Aligned
GDDRX4_TX.ECLK.Aligned
ECLK を用い る DDRx4 出力、 デー タ は 640U と 1200/U こ れ以上の
出力 ク ロ ッ ク のエ ッ ジ と 揃っ てい る
デバ イ ス、 上辺
TX GDDRx4 Centered
GDDRX4_TX.ECLK.Centered
ECLK を用い る DDRx4 出力、 出力 ク
ロ ッ ク エ ッ ジはデー タ の中央にあ る
640U と 1200/U こ れ以上の
デバ イ ス、 上辺
TX GDDR71
GDDR71_TX.ECLK.7:1
ECLK を用い る GDDR 7:1 出力
640U と 1200/U こ れ以上の
デバ イ ス、 上辺
全デバ イ ス、 全辺
640U と 1200/U こ れ以上の
デバ イ ス、 下辺
640U と 1200/U こ れ以上の
デバ イ ス、 全辺
640U と 1200/U こ れ以上の
デバ イ ス、 上辺
高速 GDDR イ ン タ ーフ ェ イ ス の詳細
本セ ク シ ョ ンでは、 使用 さ れ る ク ロ ッ キ ン グ も 含めて各汎用高速 イ ン タ ーフ ェ イ ス について詳細に説明 し ま
す。 MachXO2 の ク ロ ッ キ ン グ構造の詳細については、 TN1199 ”MachXO2 sysCLOCK PLL Design and Usage
Guide” を参照 し て く だ さ い。 表 11-2 に示す よ う に、 各 イ ン タ ーフ ェ イ ス は MachXO2 デバ イ ス の特定バン ク
で対応 し ます。 こ れ ら の イ ン タ ーフ ェ イ ス を問題な く 構築す る ためには、 それぞれの イ ン タ ーフ ェ イ ス に関
す る アーキ テ ク チ ャ な ら びに イ ン タ ーフ ェ イ ス の規則、 さ ら に設計制約に従 う こ と が重要です。 本 ド キ ュ メ
ン ト の "DDR ソ フ ト ウ ェ アのプ リ ミ テ ィ ブ と ア ト リ ビ ュ ー ト " に、 各 コ ン ポーネ ン ト について説明 さ れてい
ます。
受信イ ン タ ー フ ェ イ ス
Lattice IPexpress ™ ソ フ ト ウ ェ アでは、 8 種の定義済み受信 イ ン タ ーフ ェ イ ス がサポー ト さ れてい ます。
GIREG_RX.SCLK
こ れはシ ン グルデー タ レー ト (SDR) のための汎用 イ ン タ ーフ ェ イ ス です。 実装には基本 PIO セル (図 111) 内の標準 I/O レ ジ ス タ が使用 さ れます。 オプシ ョ ンの イ ンバー タ を使用 し て、 ク ロ ッ ク 信号を入力デー
タ の中央に合わせ る こ と も で き ます。 或いは PLL ま たは DLL を利用 し て、 ク ロ ッ ク 注入遅延を補償す る こ
と や、 セ ッ ト ア ッ プ タ イ ム と ホール ド タ イ ム を調整す る こ と も で き ます。 アーキ テ ク チ ャ 的に DLL 数が限 ら
れてい る ため、場合に よ っ ては こ れ ら を高速 イ ン タ ーフ ェ イ ス用に確保 し てお く 必要があ り ます。本 イ ン タ ー
フ ェ イ ス は IPexpress で生成後に I/O レ ジ ス タ エ レ メ ン ト を イ ン ス タ ン スす る か、 論理合成ツールに推論 さ
せ る こ と で構築で き ます。
11-11
TN1203_01.7
MachXO2 デバイスにおける
高速イ ン タ ー フ ェ イ スの実装
図 11-9. GIREG_RX イ ン タ ーフ ェ イ ス
Din
Din
DELAYE
IREG
IREG
Clk
Clk
Sclk
Sclk
入力デー タ パ ス の遅延セルは イ ン タ ーフ ェ イ ス の Din パス に使用で き ます。 DELAYE エ レ メ ン ト は固定遅延
を与え る こ と で、 SCLK の注入遅延に合わせます。 こ の イ ン タ ーフ ェ イ ス では動的入力遅延の DELAYD を使
用で き ません。 図 11-9 に本 イ ン タ ーフ ェ イ ス であ り 得 る 実装例を示 し ます。
イ ン タ ーフ ェ イ ス規則 :
• ク ロ ッ ク ソ ース と し て必ず専用の ク ロ ッ ク ピ ン PCLK を使用す る こ と
GDDRX1_RX.SCLK.Aligned
本 DDR イ ン タ ーフ ェ イ ス では、 DQSDLL を用いて ク ロ ッ ク を 90° 位相シ フ ト さ せ、 IDDRXE の SCLK ポー
ト で ク ロ ッ ク エ ッ ジ をデー タ の中央に合わせます。 あ る いは、 DQSDLL の代わ り に PLL を使用 し て同 じ ク
ロ ッ ク シ フ ト 機能を行 う こ と も で き ます。 DELAYE エ レ メ ン ト で、 SCLK の ク ロ ッ ク 注入時間にデー タ 遅延
を調整 し ます。 x1 イ ン タ ーフ ェ イ ス で DELAYD は使用で き ません。
図 11-10. DQSDLL を使用 し た GDDRX1_RX.SCLK.Aligned イ ン タ ーフ ェ イ ス
datain
D
DELAYE
IDDRXE
q
2
SCLK
clk
DLLDELC
DQSDLLC
イ ン タ ーフ ェ イ ス規則 :
• DLLDELC の ク ロ ッ ク ソ ース と し て、 必ず専用の ク ロ ッ ク ピ ン PCLK を使用す る こ と
• 本 イ ン タ ーフ ェ イ ス で PLL を使用す る 場合、 専用のデ ュ アルフ ァ ン ク シ ョ ン PLL ク ロ ッ ク ピ ン を使用す
る こ と も 可能
• DLL ま たは PLL 出力を SCLK ポー ト に接続す る 場合、 必ずプ ラ イ マ リ ・ ク ロ ッ ク ネ ッ ト を使用す る こ と
• 最良の タ イ ミ ン グ を得 る ために、 DELAYE 値を SCLK_ALIGNED に設定す る こ と
• DQSDLLC や PLL はデバ イ ス あ た り 最大 2 つのため、 イ ン タ ーフ ェ イ ス の ク ロ ッ ク 周波数 も デバ イ ス あ た
り 最大 2 つに制限 さ れ る
GDDRX1_RX.SCLK.Centered
本 DDR イ ン タ ーフ ェ イ ス では、 DELAYE を用いて、 IDDRXE ポー ト で SCLK 遅延に整合 さ せます。 x1 イ ン
タ ーフ ェ イ ス で DELAYD は使用で き ません。 セ ン タ ー ・ イ ン タ ーフ ェ イ ス では ク ロ ッ ク エ ッ ジが既にデー タ
の中央に合わせ ら れてい ますので、 ク ロ ッ ク を位相シ フ ト す る ための ロ ジ ッ ク は不要です。
11-12
TN1203_01.7
MachXO2 デバイスにおける
高速イ ン タ ー フ ェ イ スの実装
図 11-11. GDDRX1_RX.SCLK.Centered
datain
IDDRXE
D
DELAYE
q
2
SCLK
clk
イ ン タ ーフ ェ イ ス規則 :
• ク ロ ッ ク ソ ース と し て必ず専用の ク ロ ッ ク ピ ン PCLK を使用す る こ と
• 最良の タ イ ミ ン グ を得 る ために、 DELAYE 値を SCLK_CENTERED に設定す る こ と
• SCLK の接続は必ずプ ラ イ マ リ ・ ク ロ ッ ク ネ ッ ト を使用す る こ と
GDDRX2_RX.ECLK.Aligned
本 DDR x2 イ ン タ ーフ ェ イ ス では、 DQSDLL を用いて ク ロ ッ ク を 90° 位相シ フ ト さ せ、 IDDRX2E の SCLK
ポー ト で ク ロ ッ ク エ ッ ジ をデー タ の中央に合わせます。DELAYE を使用 し てデー タ を遅延 さ せ る こ と で ECLK
の注入遅延に整合 さ せ ま すが、 DELAYD を使用 し て遅延を動的に制御す る こ と も で き ま す。 こ の イ ン タ ー
フ ェ イ ス は、 IDDRX2E エ レ メ ン ト に よ る x2 ギア リ ン グ を利用 し てい る ため、 CLKDIVC を使用 し て周波数が
ECLK の半分の SCLK を生成す る 必要があ り ます。 ECLKSYNCA エ レ メ ン ト は ECLK に関連づけ ら れてい る
ブ ロ ッ ク で、 ECLK を ド ラ イ ブす る ために必ず使用す る 必要があ り ます。 イ ン タ ーフ ェ イ ス での ワー ド ア ラ
イ メ ン ト 用に ALIGNWD ポー ト が使用で き ます。
図 11-12. GDDRX2_RX.ECLK.Aligned イ ン タ ーフ ェ イ ス
Dynamic Delay
Port (Optional)
datain
ECLK
DELAYE
or
DELAYD
IDDRX2E
D
q
ALIGNWD
4
ALIGNWD
ECLK
SCLK
ECLKSCYNA
clk
DLLDELC
CDIVX
CLKDIVC
DQSDLLC
イ ン タ ーフ ェ イ ス規則 :
• DLLDELC の ク ロ ッ ク ソ ース と し て必ず専用の ク ロ ッ ク ピ ン PCLK を使用す る こ と
• SCLK の接続は必ずプ ラ イ マ リ ・ ク ロ ッ ク ネ ッ ト を使用す る こ と
• DQSDLLC はデバ イ ス当た り 最大 2 つのため、 ク ロ ッ ク 周波数 も デバ イ ス あ た り 最大で 2 つに制限 さ れ る
• DELAYE は ECLK_ALIGNED に設定す る こ と
• DELAYD を使用す る 場合、 バ ス全体で 1 つの動的遅延ポー ト のみが必要
11-13
TN1203_01.7
MachXO2 デバイスにおける
高速イ ン タ ー フ ェ イ スの実装
• 本 イ ン タ ーフ ェ イ ス は MachXO2-640U と MachXO2-1200/U、 及び こ れ よ り 大規模デバ イ ス の下辺でのみ
サポー ト
GDDRX2_RX.ECLK.Centered
本 DDR x2 イ ン タ ーフ ェ イ ス では、 DELAYE ま たは DELAYD を用いてデー タ を遅延 さ せ、 IDDRX2E ポー ト で
ECLK の遅延に整合 さ せます。 こ の イ ン タ ーフ ェ イ ス はエ ッ ジ ク ロ ッ ク ・ ネ ッ ト ワー ク を用い る ため、 デバ
イ ス の 一辺全体 に わ た る 広 い デー タ バ ス 幅 に 対応す る よ う に 拡張 で き ま す。 本 イ ン タ ー フ ェ イ ス は、
IDDRX2D エ レ メ ン ト に よ る x2 ギ ア リ ン グ を用い る ため、CLKDIVC で周波数が ECLK の半分の SCLK を生成
す る 必要があ り ます。 イ ン タ ーフ ェ イ ス での ワー ド ア ラ イ メ ン ト 用に ALIGNWD ポー ト が使用で き ます。
図 11-13. GDDRX2_RX.ECLK.Centered イ ン タ ーフ ェ イ ス
Dynamic Delay
Port (Optional)
datain
ECLK
DELAYE
or
DELAYD
IDDRX2E
D
q
ALIGNWD
ECLK
clk
4
ALIGNWD
SCLK
ECLKSCYNA
CDIVX
CLKDIVC
イ ン タ ーフ ェ イ ス規則 :
• ECLKSYNCA の ク ロ ッ ク ソ ース と し て、 必ず専用の ク ロ ッ ク ピ ン PCLK を使用す る こ と
• SCLK の接続は必ずプ ラ イ マ リ ・ ク ロ ッ ク ネ ッ ト を使用す る こ と
• DELAYE は ECLK_CENTERED に設定す る こ と
• DELAYD を使用す る 場合、 バ ス全体で 1 つの動的遅延ポー ト のみが必要
• 本 イ ン タ ーフ ェ イ ス は MachXO2-640U と MachXO2-1200/U、 及び こ れ よ り 大規模デバ イ ス の下辺でのみ
サポー ト
11-14
TN1203_01.7
MachXO2 デバイスにおける
高速イ ン タ ー フ ェ イ スの実装
GDDRX4_RX.ECLK.Aligned
本 DDR x4 イ ン タ ーフ ェ イ ス は、 DQSDLL を用いて ク ロ ッ ク を 90° 位相シ フ ト さ せ、 IDDRX4B ポー ト で
ECLK エ ッ ジ をデー タ の中央に合わせます。 DELAYE でデー タ を遅延 さ せ、 ECLK の注入遅延に整合 さ せま
すが、DELAYD を用いて遅延を動的に制御す る こ と も で き ます。 こ の イ ン タ ーフ ェ イ ス ではエ ッ ジ ク ロ ッ ク ・
ネ ッ ト ワー ク を使用す る ため、 デバ イ ス の一辺全体にわた る 広いデー タ バ ス幅に対応す る よ う に拡張で き ま
す。 本 イ ン タ ーフ ェ イ ス では IDDRX4B エ レ メ ン ト に よ る x4 ギ ア リ ン グ を用い る ため、 CLKDIVC で周波数
が ECLK の 1/4 の SCLK を生成す る 必要があ り ます。 ECLKSYNCA エ レ メ ン ト は ECLK に関連づけ ら れてい
る ブ ロ ッ ク で、 ECLK を ド ラ イ ブす る ために必ず使用す る 必要があ り ます。 イ ン タ ーフ ェ イ ス での ワ ー ド ア
ラ イ メ ン ト 用に ALIGNWD ポー ト が使用で き ます。
図 11-14. GDDRX4_RX.ECLK.Aligned イ ン タ ーフ ェ イ ス
Dynamic Delay
Port (Optional)
datain
ECLK
DELAYE
or
DELAYD
IDDRX2E
D
q
ALIGNWD
8
ALIGNWD
ECLK
SCLK
ECLKSCYNA
clk
DLLDELC
CDIVX
CLKDIVC
DQSDLLC
イ ン タ ーフ ェ イ ス規則 :
• DLLDELC の ク ロ ッ ク ソ ース と し て必ず専用の ク ロ ッ ク ピ ン PCLK を使用す る こ と
• SCLK の接続は必ずプ ラ イ マ リ ・ ク ロ ッ ク ネ ッ ト を使用す る こ と
• DQSDLLC はデバ イ ス あ た り 最大で 2 つのため、 ク ロ ッ ク 周波数 も デバ イ ス あ た り 最大で 2 つに制限 さ れ
る
• x4 ギ ア リ ン グには、 デー タ 入力に必ず I/O ロ ジ ッ ク セルの A/B ペア を使用す る こ と
• DELAYE は ECLK_ALIGNED に設定す る こ と
• DELAYD を使用す る 場合、 バ ス全体で 1 つの動的遅延ポー ト のみが必要
• 本 イ ン タ ーフ ェ イ ス は MachXO2-640U と MachXO2-1200/U、 及び こ れ よ り 大規模デバ イ ス の下辺でのみ
サポー ト
11-15
TN1203_01.7
MachXO2 デバイスにおける
高速イ ン タ ー フ ェ イ スの実装
GDDRX4_RX.ECLK.Centered
本 DDR x4 イ ン タ ーフ ェ イ ス は、 DELAYE ま たは DELAYD を用いてデー タ を遅延 さ せ、 IDDRX4B ポー ト で
ECLK の遅延に整合 さ せます。 こ の イ ン タ ーフ ェ イ スはエ ッ ジ ク ロ ッ ク ・ ネ ッ ト ワー ク を使用 し てい る ため、
デバ イ ス の一辺全体にわ た る 広いデー タ バ ス 幅に対応す る よ う に拡張で き ま す。 本 イ ン タ ー フ ェ イ ス は、
IDDRX4B エ レ メ ン ト に よ る x4 ギ ア リ ン グ を用い る ため、CLKDIVC で周波数が ECLK の 1/4 の SCLK を生成
す る 必要があ り ます。 イ ン タ ーフ ェ イ ス での ワー ド ア ラ イ メ ン ト 用に ALIGNWD ポー ト が使用で き ます。
図 11-15. GDDRX4_RX.ECLK.Centered イ ン タ ーフ ェ イ ス
Dynamic Delay
Port (Optional)
datain
ECLK
DELAYE
or
DELAYD
IDDRX2E
D
q
ALIGNWD
ECLK
clk
8
ALIGNWD
SCLK
ECLKSCYNA
CDIVX
CLKDIVC
イ ン タ ーフ ェ イ ス規則 :
• ECLKSYNCA の ク ロ ッ ク ソ ース と し て、 必ず専用の ク ロ ッ ク ピ ン PCLK を使用す る こ と
• SCLK の接続は必ずプ ラ イ マ リ ・ ク ロ ッ ク ネ ッ ト を使用す る こ と
• x4 ギ ア リ ン グには、 デー タ 入力は必ず I/O ロ ジ ッ ク セルの A/B ペア を使用す る こ と
• DELAYE は ECLK_CENTERED に設定す る こ と
• DELAYD を使用す る 場合、 バ ス全体で 1 つの動的遅延ポー ト のみが必要
• 本 イ ン タ ーフ ェ イ ス は MachXO2-640U と MachXO2-1200/U、 及び こ れ よ り 大規模デバ イ ス の下辺でのみ
サポー ト
11-16
TN1203_01.7
MachXO2 デバイスにおける
高速イ ン タ ー フ ェ イ スの実装
GDDR71_RX.ECLK.7:1
GDDR 7:1 受信 イ ン タ ーフ ェ イ ス は、 サポー ト す る 高速 DDR イ ン タ ーフ ェ イ ス の中で も 特異です。 こ こ では
ビ ッ ト ア ラ イ メ ン ト 処理において、 PLL を用いてデー タ ポジシ ョ ンに対 し て最良の ク ロ ッ ク エ ッ ジ をサーチ
し ます。 PLL には 16 通 り の位相ス テ ッ プが設定で き ますので DDR の場合デー タ 当た り 8 点のサンプ リ ン グ
ポ イ ン ト を提供 し ます。 本 イ ン タ ーフ ェ イ ス では、 デー タ パ ス遅延は使用 し ません。 1:7 デシ リ ア ラ イ ズ要
件に従い、 CLKDIVC を使用 し て ECLK を 3.5 分周 し ます。 即ち SCLK は、 入力デー タ レー ト に対 し て 7 分の
一で動作す る と い う こ と です。 ECLKSYNCA エ レ メ ン ト は ECLK に関連す る ブ ロ ッ ク で、 ECLK の ド ラ イ ブ
に必ず使用 し なければな り ません。 完全な 7:1 LVDS ビデオデ ィ ス プ レ イ ・ アプ リ ケーシ ョ ン を実現す る た
めには、 ハー ド マ ク ロ で組み込み済みの I/O ギ ア リ ン グ と ア ラ イ メ ン ト ・ ロ ジ ッ ク に加え、 FPGA リ ソ ース
で ビ ッ ト ア ラ イ メ ン ト と ワ ー ド ア ラ イ メ ン ト を構築す る 必要が あ り ま す。 そのために CLK_PHASE 信号が
FPGA 側に転送 さ れます。
図 11-16. GDDR71_RX.ECLK.7:1 イ ン タ ーフ ェ イ ス
ECLK
datain
IDDRX71A
D
q
ALIGNWD
ECLK
ALIGNWD
7
SCLK
ECLKSCYNA
CDIVX
clk
PLL
CLKDIVC
ECLK
SCLK
7
D
ALIGNWD
IDDRX71A
CLK_PHASE
イ ン タ ーフ ェ イ ス規則 :
• PLL の ク ロ ッ ク ソ ース と し て、 必ず下辺の専用 ク ロ ッ ク ピ ン PCLK を使用す る こ と
• SCLK の接続は必ずプ ラ イ マ リ ・ ク ロ ッ ク ネ ッ ト を使用す る こ と
• PLL はデバ イ ス あ た り 最大で 2 つのため、 ク ロ ッ ク 周波数 も デバ イ ス あ た り 最大で 2 系統に制限 さ れ る
• 7:1 ギ ア リ ン グには、 デー タ 入力は必ず I/O ロ ジ ッ ク セルの A/B ペア を使用す る こ と
• 本 イ ン タ ーフ ェ イ ス は MachXO2-640U と MachXO2-1200/U、 及び こ れ よ り 大規模デバ イ ス の下辺でのみ
サポー ト
11-17
TN1203_01.7
MachXO2 デバイスにおける
高速イ ン タ ー フ ェ イ スの実装
送信イ ン タ ー フ ェ イ ス
Lattice IPexpress ソ フ ト ウ ェ アに よ り 、 8 種の送信 イ ン タ ーフ ェ イ ス があ ら か じ め規定 さ れ、 サポー ト さ れて
い ます。
GOREG_TX.SCLK
こ れは SDR デー タ と フ ォ ワー ド ク ロ ッ ク のための汎用 イ ン タ ーフ ェ イ ス です。基本 PIO セル内の標準レ ジ ス
タ を使用 し て、 こ の イ ン タ ーフ ェ イ ス を実装 し ます。 ク ロ ッ ク 出力に ODDRXE を使用 し て、 ク ロ ッ ク パ ス
と デー タ パ ス を整合 さ せます。 ま た ODDRXE か ら の ク ロ ッ ク 出力 と し て、PLL を使用 し て位相シ フ ト し た ク
ロ ッ ク 信号を用い る こ と で、 デー タ 出力に対 し て正確な ク ロ ッ ク 位相 と す る こ と も で き ます。 各デバ イ ス搭
載の PLL 数が限 ら れ る ため、 場合に よ っ ては こ れ ら を高速 イ ン タ ーフ ェ イ ス用に確保 し てお く 必要があ り ま
す。 本 イ ン タ ーフ ェ イ ス は、 IPexpress に よ る 生成か、 I/O レ ジ ス タ ・ エ レ メ ン ト の イ ン ス タ ン ス化、 あ る い
は論理合成ツールに よ る 推論に よ っ て構築す る こ と がで き ます。
図 11-17. GOREG_TX.SCLK イ ン タ ーフ ェ イ ス
dataout
d
OREG
clk
0
SCLK
clkout
ODDRXE
1
イ ン タ ーフ ェ イ ス規則 :
•
SCLK の接続は必ずプ ラ イ マ リ ・ ク ロ ッ ク ネ ッ ト を用い る こ と
GDDRX1_TX.SCLK.Aligned
こ の出力 DDR イ ン タ ーフ ェ イ ス は、 1 本の SCLK を使用 し てエ ッ ジ ア ラ イ ン さ れた ク ロ ッ ク 信号 と デー タ 出
力です。 ク ロ ッ ク 出力用に ODDRXE を使用 し て、 ク ロ ッ ク パ ス と デー タ パ ス と を整合 さ せます。
図 11-18. GDDRX1_TX.SCLK.Aligned イ ン タ ーフ ェ イ ス
1
clk
D0
SCLK
0
clkout
D1
ODDRXE
d0
D0
d1
D1
dataout
ODDRXE
SCLK
イ ン タ ーフ ェ イ ス規則 :
• SCLK の接続は必ずプ ラ イ マ リ ・ ク ロ ッ ク ネ ッ ト を用い る こ と
11-18
TN1203_01.7
MachXO2 デバイスにおける
高速イ ン タ ー フ ェ イ スの実装
GDDRX1_TX.SCLK.Centered
こ の出力 DDR イ ン タ ーフ ェ イ ス は、 デー タ の中央に ク ロ ッ ク エ ッ ジがあ る ク ロ ッ ク と デー タ の出力です。
PLL は clkop と clkos ポー ト を使用 し て、デー タ と ク ロ ッ ク 間に 90° の位相差を与え ます。出力デー タ の I/O
セル と 出力 ク ロ ッ ク の I/O セルを ド ラ イ ブす る ためには、 2 本の SCLK リ ソ ース が必要です。
図 11-19. GDDRX1_TX.SCLK.Centered イ ン タ ーフ ェ イ ス
0
clkop
clk
PLL
D1
SCLK
clkos
1
clkout
D0
ODDRXE
d0
D0
d1
D1
dataout
ODDRXE
SCLK
イ ン タ ーフ ェ イ ス規則 :
• SCLK と 90° 位相シ フ ト し た SCLK は必ずプ ラ イ マ リ ・ ク ロ ッ ク ネ ッ ト を用い る こ と
GDDRX2_TX.ECLK.Aligned
こ の出力 DDR x2 イ ン タ ーフ ェ イ ス は、 エ ッ ジ ア ラ イ ン さ れた ク ロ ッ ク 信号 と デー タ を出力 し ます。 CLKDIV
を使用 し て周波数が ECLK の半分の SCLK を生成 し ます。 ま た ECLK パス に対 し て ECLKSYNC エ レ メ ン ト
を使用 し 、 デー タ 同期を実行 し ます。
図 11-20. GDDRX2_TX.ECLK.Aligned イ ン タ ーフ ェ イ ス
1
D0
0
D1
1
D2
0
D3
d0
D0
d1
D1
d2
D2
d3
D3
ODDRX2E
SCLK
ECLK
ODDRX2E
SCLK
clkout
dataout
ECLK
CLKDIV
clk
ECLKSYNCA
イ ン タ ーフ ェ イ ス規則 :
• ECLK の接続は必ずエ ッ ジ ク ロ ッ ク ・ ネ ッ ト ワー ク を使用す る こ と
• SCLK の接続は必ずプ ラ イ マ リ ・ ク ロ ッ ク ネ ッ ト を使用す る こ と
• 本 イ ン タ ーフ ェ イ ス は MachXO2-640U と MachXO2-1200/U、 及び こ れ よ り 大規模デバ イ ス の上辺でのみ
サポー ト
11-19
TN1203_01.7
MachXO2 デバイスにおける
高速イ ン タ ー フ ェ イ スの実装
GDDRX2_TX.ECLK.Centered
こ の出力 DDR x2 イ ン タ ーフ ェ イ ス は、 デー タ 開口の中央にエ ッ ジがあ る ク ロ ッ ク と デー タ を出力 し ます。
PLL の clkop と clkos ポー ト を使用 し てデー タ と ク ロ ッ ク 間に 90° の位相差を与え、2 本の ECLK 配線 リ ソ ー
ス を使用 し て出力デー タ と 出力 ク ロ ッ ク を ド ラ イ ブ し ます。 ま た CLKDIV を使用 し て周波数が ECLK の半分
の SCLK を生成 し ます。
図 11-21. GDDRX2_TX.ECLK.Centered イ ン タ ーフ ェ イ ス
d0
D0
d1
D1
d2
D2
d3
D3
SCLK
ECLK
1
D0
SCLK
ECLK
0
D1
1
D2
0
D3
ODDRX2E
dataout
CLKDIV
clk
clkop
PLL
eclk
ECLKSYNCA
clkos
eclk 90°
ECLKSYNCA
ODDRX2E
clkout
イ ン タ ーフ ェ イ ス規則 :
• ECLK の接続は必ずエ ッ ジ ク ロ ッ ク ・ ネ ッ ト ワー ク を使用す る こ と
• 本 イ ン タ ーフ ェ イ ス は 2 本の ECLK を使用す る ため、 一度に実装で き る のは 1 つのバス のみ
• SCLK の接続は必ずプ ラ イ マ リ ・ ク ロ ッ ク ネ ッ ト を使用す る こ と
• 本 イ ン タ ーフ ェ イ ス は MachXO2-640U と MachXO2-1200/U、 及び こ れ よ り 大規模デバ イ ス の上辺でのみ
サポー ト
11-20
TN1203_01.7
MachXO2 デバイスにおける
高速イ ン タ ー フ ェ イ スの実装
GDDRX4_TX.ECLK.Aligned
こ の出力 DDR x4 イ ン タ ーフ ェ イ ス は、 エ ッ ジ ア ラ イ ン さ れた ク ロ ッ ク 信号 と デー タ を出力 し ます。 CLKDIV
を使用 し て周波数が ECLK の 1/4 の SCLK を生成 し ます。 ま た ECLK パ ス に対 し て ECLKSYNC エ レ メ ン ト
を使用 し 、 デー タ 同期を実行 し ます。
図 11-22. GDDRX4_TX.ECLK.Aligned イ ン タ ーフ ェ イ ス
1
0
1
0
1
0
1
0
D0
D1
D2
D3
D4
D5
D6
D7
ODDRX4B
d0
d1
d2
d3
d4
d5
d6
d7
D0
D1
D2
D3
D4
D5
D6
D7
ODDRX4B
clkout
SCLK ECLK
dataout
SCLK ECLK
CLKDIV
clk
ECLKSYNCA
イ ン タ ーフ ェ イ ス規則 :
• ECLK の接続は必ずエ ッ ジ ク ロ ッ ク ・ ネ ッ ト ワー ク を使用す る こ と
• SCLK の接続は必ずプ ラ イ マ リ ・ ク ロ ッ ク ネ ッ ト を使用す る こ と
• x4 ギ ア リ ン グには、 デー タ 出力に必ず I/O ロ ジ ッ ク セルの A/B ペア を使用す る こ と
• 本 イ ン タ ーフ ェ イ ス は MachXO2-640U と MachXO2-1200/U、 及び こ れ よ り 大規模デバ イ ス の上辺でのみ
サポー ト
11-21
TN1203_01.7
MachXO2 デバイスにおける
高速イ ン タ ー フ ェ イ スの実装
GDDRX4_TX.ECLK.Centered
こ の出力 DDR x4 イ ン タ ーフ ェ イ ス は、 デー タ 開口の中央にエ ッ ジがあ る ク ロ ッ ク と デー タ を出力 し ます。
PLL の clkop と clkos ポー ト を使用 し て、 デー タ と ク ロ ッ ク 間に 90° の位相差を与え、 2 本の ECLK 配線 リ
ソ ース を使用 し て出力デー タ と 出力 ク ロ ッ ク を ド ラ イ ブ し ます。 ま た CLKDIV を使用 し て周波数が ECLK の
1/4 の SCLK を生成 し ます。
図 11-23. GDDRX4_TX.ECLK.Centered イ ン タ ーフ ェ イ ス
d0
d1
d2
d3
d4
d5
d6
d7
D0
D1
D2
D3
D4
D5
D6
D7
dataout
ODDRX4B
SCLK
ECLK
SCLK
ECLK
CLKDIV
clkop
clk
PLL
eclk
ECLKSYNCA
clkos
eclk 90°
ECLKSYNCA
1
0
1
0
1
0
1
0
D0
D1
D2
D3
D4
D5
D6
D7
ODDRX4B
clkout
イ ン タ ーフ ェ イ ス規則 :
• ECLK の接続は必ずエ ッ ジ ク ロ ッ ク ・ ネ ッ ト ワー ク を使用す る こ と
• 本 イ ン タ ーフ ェ イ ス は 2 本の ECLK を使用す る ため、 一度に実装で き る のは 1 つのバス のみ
• SCLK の接続は必ずプ ラ イ マ リ ・ ク ロ ッ ク ネ ッ ト を使用す る こ と
• x4 ギ ア リ ン グには、 デー タ 出力に必ず I/O ロ ジ ッ ク の A/B ペア を使用す る こ と
• 本 イ ン タ ーフ ェ イ ス は MachXO2-640U、 MachXO2-1200/U、 及び こ れ よ り 大規模デバ イ ス の上辺でのみサ
ポー ト
11-22
TN1203_01.7
MachXO2 デバイスにおける
高速イ ン タ ー フ ェ イ スの実装
GDDR71_TX.ECLK.7:1
GDDR 7:1 送信 イ ン タ ーフ ェ イ ス は、 サポー ト さ れてい る 高速 DDR イ ン タ ーフ ェ イ ス の中で も 特異です。 こ
の イ ン タ ー フ ェ イ ス は特定パ タ ー ン を 使用 し 、 ピ ク セ ル ク ロ ッ ク と 呼ぶ出力 ク ロ ッ ク を 生成 し ま す。
CLKDIVC を使用 し て、 7:1 シ リ ア ラ イ ズ要件に基づいて ECLK を 3.5 分周 し ます。 即ち SCLK は送信デー タ
レー ト よ り 7 分の一の周波数で動作す る と い う こ と です。 ECLKSYNCA エ レ メ ン ト は ECLK に関連す る ブ
ロ ッ ク で、 ECLK を ド ラ イ ブす る ために必ず使用 し なければな り ません。
図 11-24. GDDR71_TX.ECLK.7:1 イ ン タ ーフ ェ イ ス
1
1
0
0
D0
D1
D2
D3
D4
D5
D6
0
1
1
clkout
ODDRX71A
SCLK
d0
d1
d2
d3
D0
D1
D2
D3
d4
d5
d6
D4
D5
D6
ECLK
dataout
ODDRX71A
SCLK
ECLK
CLKDIV
clk
ECLKSYNCA
イ ン タ ーフ ェ イ ス規則 :
• ECLK の接続は必ずエ ッ ジ ク ロ ッ ク ・ ネ ッ ト ワー ク を使用す る こ と
• SCLK の接続は必ずプ ラ イ マ リ ・ ク ロ ッ ク ネ ッ ト を使用す る こ と
• 7:1 ギ ア リ ン グには、 デー タ 出力に必ず I/O ロ ジ ッ ク の A/B ペア を使用す る こ と
• 本 イ ン タ ーフ ェ イ ス は MachXO2-640U と MachXO2-1200/U、 及び こ れ よ り 大規模デバ イ ス の上辺でのみ
サポー ト
IPexpress を使用 し た汎用高速 DDR イ ン タ ーフ ェ イ ス の構築
上記の汎用高速 イ ン タ ーフ ェ イ ス は全て、Lattice 設計 ソ フ ト ウ ェ アの IPexpress ツールを使用 し て、パ ラ メ ー
タ 設定な ら びに生成をお こ ない ま す。 IPexpress は各 イ ン タ ーフ ェ イ ス の ク ロ ッ キ ン グ要件を含む HDL モ
ジ ュ ール一式を生成 し ます。IPexpress の GUI では全ての DDR モジ ュ ールが Architecture Modules > IO に配置
さ れてい ます。 こ のセ ク シ ョ ンでは、 IPexpress の SDR と DDR_GENERIC、 及び GDDR_71 イ ン タ ーフ ェ イ ス
について説明 し ます。
表 11-3 は IPexpress モジ ュ ールで使用 さ れ る 信号名を示 し ます。 各信号は全ての イ ン タ ーフ ェ イ ス、 あ る い
は特定の イ ン タ ーフ ェ イ ス で用い ら れます。 信号は GDDR 受信 イ ン タ ーフ ェ イ ス と 送信 イ ン タ ーフ ェ イ ス で
別々に リ ス ト さ れてい ます。
11-23
TN1203_01.7
MachXO2 デバイスにおける
高速イ ン タ ー フ ェ イ スの実装
表 11-3. IPexpress モジ ュールで使用 さ れ る信号名
信号名
方向
記述
サポー ト する
イ ン タ ーフ ェ イ ス
受信 イ ン タ ーフ ェ イ ス
clk
入力
ソ ース シ ン ク ロ ナ ス ・ ク ロ ッ ク
全て
reset
入力
イ ン タ ーフ ェ イ スへの非同期 リ セ ッ ト 、 High ア ク テ ィ ブ
全て
datain
入力
Rx イ ン タ ーフ ェ イ ス でのシ リ アルデー タ 入力
全て
uddcntln
入力
遅延 コ ー ド のホール ド / ア ッ プデー ト 制御、 Low ア ク テ ィ ブ
(DQSDLLC の DQSDEL 出力は、 UDDCNTLN が Low の時に PTV バ ラ
つ き に依存 し て ア ッ プデー ト さ れ る )
x1, x2, x4 ア ラ イ ン
freeze
入力
DLL を フ リ ーズ、 ま たは リ リ ース。 High ア ク テ ィ ブ (High の時、 遅
延値が維持 さ れてい る 間は DLL を フ リ ーズ し て電力消費を節約す る 。 x1, x2, x4 ア ラ イ ン
Low の時は DLL が動作を再開す る よ う に解放す る )
alignwd
入力
ワ ー ド ア ラ イ メ ン ト 制御信号、 High ア ク テ ィ ブ
(ALIGNWD は ECLK ド メ イ ンに対 し て非同期で も 可。 最低 ECLK の 2 x2, x4, 7:1
サ イ ク ル分以上の幅であ る 必要があ る )
dqsdll_reset
入力
非同期 DQSDLL リ セ ッ ト 、 High ア ク テ ィ ブ
x2, x4 ア ラ イ ン
clk_s1
入力
リ セ ッ ト 同期用の低速 ク ロ ッ ク
( こ の ク ロ ッ ク は ECLK よ り も 低速であ る こ と )
x2, x4, 7:1
init
入力
リ セ ッ ト 同期を初期化、 High ア ク テ ィ ブ
x2, x4, 7:1
phase_dir
入力
ダ イ ナ ミ ッ ク 位相調整の方向 (位相シ フ ト は Low の時は 1 ス テ ッ プ
遅 ら せ ら れ、 High の時は 1 ス テ ッ プ進ませ ら れ る )
7:1
phase_step
入力
ダ イ ナ ミ ッ ク 位相調整の ス テ ッ プ
(ス テ ッ プご と に 45 度シ フ ト 。 ア ク テ ィ ブ Low)
7:1
sclk
出力
FPGA フ ァ ブ リ ッ ク へのシ ス テ ム ク ロ ッ ク
全て
q
出力
Rx イ ン タ ーフ ェ イ ス のパ ラ レルデー タ 出力
全て
lock
出力
DLL / PLL ロ ッ ク
x2, x4, 7:1
eclk
出力
入力 ク ロ ッ ク か ら 生成 さ れたエ ッ ジ ク ロ ッ ク
x2, x4 ア ラ イ ン , 7:1
rx_ready
出力
リ セ ッ ト 同期完了を示す
x2, x4, 7:1
clk_phase
出力
入力 ク ロ ッ ク 位相の 7 ビ ッ ト 表記
(ビ ッ ト ア ラ イ メ ン ト 用論理回路のために用い ら れ る )
7:1
送信 イ ン タ ーフ ェ イ ス
clk
入力
Tx イ ン タ ーフ ェ イ スへの主入力 ク ロ ッ ク
全て
reset
入力
イ ン タ ーフ ェ イ スへの非同期 リ セ ッ ト 、 High ア ク テ ィ ブ
全て
dataout
入力
Tx イ ン タ ーフ ェ イ スへのパ ラ レル入力デー タ
全て
clk_s1
入力
リ セ ッ ト 同期用の低速 ク ロ ッ ク
( こ の ク ロ ッ ク は ECLK よ り も 低速であ る こ と )
x2, x4, 7:1
sclk
出力
FPGA フ ァ ブ リ ッ ク へのシ ス テ ム ク ロ ッ ク
全て
dout
出力
Tx イ ン タ ーフ ェ イ スへのシ リ アル出力デー タ
全て
clkout
出力
ソ ース シ ン ク ロ ナ ス ・ ク ロ ッ ク
全て
tx_ready
出力
リ セ ッ ト 同期の完了を示す
x2, x4, 7:1
1. リ セ ッ ト 同期処理用の clk_s はど の よ う な低速 ク ロ ッ ク で も 可。 eclk よ り 低速であ る こ と
SDR イ ン タ ーフ ェ イ ス の構築
図 11-25 に示す よ う に、 イ ン タ ーフ ェ イ ス タ イ プ と し て SDR を選択 し 、 モジ ュ ール名を入力 し て Customize
を ク リ ッ ク す る と 、 Configuration タ ブが開 き ます。
11-24
TN1203_01.7
MachXO2 デバイスにおける
高速イ ン タ ー フ ェ イ スの実装
図 11-25. IPexpress メ イ ン ウ イ ン ド ウ におけ る SDR イ ン タ ーフ ェ イ ス の選択
図 11-26 は IPexpress におけ る SDR モジ ュ ールの Configuration タ ブを示 し てい ます。表 11-4 は SDR モジ ュ ー
ルで利用で き る 様々な コ ン フ ィ グ レーシ ョ ン ・ パ ラ メ ー タ を示 し てい ます。
11-25
TN1203_01.7
MachXO2 デバイスにおける
高速イ ン タ ー フ ェ イ スの実装
図 11-26. SDR イ ン タ ーフ ェ イ ス の Configuration タ ブ
表 11-4. SDR イ ン タ ーフ ェ イ ス の GUI オプシ ョ ン
GUI オプ シ ョ ン
Interface Type
説明
値 ・ 範囲
イ ン タ ーフ ェ イ ス タ イ プ
I/O Standard for this interface 本 イ ン タ ーフ ェ イ ス の I/O 規格
Bus Width for this Interface
デ フ ォル ト 値
Transmit, Receive
Receive
選択 し た タ イ プご と に、 全
ての I/O をサポー ト
LVCMOS25
イ ン タ ーフ ェ イ ス のバ ス幅
1 ~ 128
16
Clock Frequency for this
Interface
イ ン タ ーフ ェ イ ス の動作速度
1 ~ 378MHz (HP 品)
1 ~ 210MHz (LP 品)
166MHz
Interface Bandwidth
(calculated)
入力 さ れた ク ロ ッ ク 周波数か ら 算出
( 算出 )
( 算出 )
Interface
それま での入力に基づいて選択 さ れた Transmit: GOREG_TX.SCLK
イ ン タ ーフ ェ イ ス
Receive: GIREG_RX.SCLK
GIREG_RX.SCLK
Clock Inversion
I/O レ ジ ス タ に対 し て ク ロ ッ ク 入力を
DISABLED, ENABLED
反転 さ せ る オプシ ョ ン
DISABLED
Data Path Delay
デー タ 入力を DELAY ブ ロ ッ ク を用い
て任意に遅延
Bypass
FDEL for User Defined
上記で User Defined が選択 さ れた遅延
タ イ プの場合、 こ のパ ラ メ ー タ で遅延 Delay0 ~ Delay31
値を入力可能
11-26
Bypass, SCLK_ZEROHOLD,
User Defined
Delay0
TN1203_01.7
MachXO2 デバイスにおける
高速イ ン タ ー フ ェ イ スの実装
汎用 DDR (DDR Generic) イ ン タ ーフ ェ イ ス の構築
図 11-27, に示す よ う に、イ ン タ ーフ ェ イ ス タ イ プ DDR_Generic を選択 し 、モジ ュ ール名を入力 し て Customize
を ク リ ッ ク す る と 、 Configuration タ ブが開 き ます。
図 11-27. IPexpress メ イ ン ウ イ ン ド ウ におけ る DDR_Generic イ ン タ ーフ ェ イ ス の選択
DDR_Generic イ ン タ ーフ ェ イ ス には Pre-Configuration タ ブ と Configuration タ ブがあ り ます。Pre-Configuration
タ ブで構築す る イ ン タ ーフ ェ イ ス タ イ プに関す る 情報を入力で き ま す。 その入力に基づいて、 Configuration
タ ブには最適な イ ン タ ーフ ェ イ ス が自動的に選択 さ れます。 必要であればパ ラ メ ー タ を書 き 換え て、 設計要
件に応 じ て イ ン タ ーフ ェ イ ス を カ ス タ マ イ ズで き ます。図 11-28 は IPexpress におけ る DDR_Generic モジ ュ ー
ルの 2 つの タ ブ を示 し てい ます。 表 11-5 と 11-6 は、 DDR_Generic モジ ュ ールで利用可能な様々な コ ン フ ィ
グ レーシ ョ ン ・ パ ラ メ ー タ を示 し ます。
11-27
TN1203_01.7
MachXO2 デバイスにおける
高速イ ン タ ー フ ェ イ スの実装
図 11-28. DDR_Generic イ ン タ ーフ ェ イ ス の Pre-Configuration タ ブ
表 11-5. DDR_Generic モジ ュール、 Pre-Configuration タ ブの GUI オプシ ョ ン
GUI オプ シ ョ ン
説明
範囲
デ フ ォル ト 値
Interface Type
イ ン タ ーフ ェ イ ス タ イ プ
Transmit, Receive
注1
I/O Standard for this interface
こ の イ ン タ ーフ ェ イ ス の I/O 規格
選択 し た タ イ プご と に、 全て
の I/O タ イ プ をサポー ト
LVCMOS25
Clock Frequency for this
Interface
イ ン タ ーフ ェ イ ス の動作速度
1 ~ 378MHz (HP 品)
1 ~ 210MHz (LP 品)
注1
Bus Width for this Interface
イ ン タ ーフ ェ イ ス のバ ス幅
選択 し た イ ン タ ーフ ェ イ ス に
注1
応 じ て種々
Number of this Interface
サポー ト さ れ る 最大バ ス数
( 算出 )
( 算出 )
入力 さ れた ク ロ ッ ク 周波数 と バス幅
Interface Bandwidth (calculated)
( 算出 )
か ら 算出
( 算出 )
Clock to Data Relationship at the 外部 イ ン タ ーフ ェ イ ス の タ イ プ を選
Edge-to-Edge, Centered
Pins
択
注1
1. Pre-Configuration タ ブの全フ ィ ール ド は、 デフ ォ ル ト では空白
11-28
TN1203_01.7
MachXO2 デバイスにおける
高速イ ン タ ー フ ェ イ スの実装
図 11-29. DDR_Generic モジ ュールの Configuration タ ブ
Pre-Configuration タ ブの選択内容に基づいて、 Configuration タ ブは図 11-30 で示す よ う に各フ ィ ール ド 内が
自動的に埋め ら れます。こ の タ ブの一番上のチ ェ ッ ク ボ ッ ク ス は、こ の イ ン タ ーフ ェ イ ス が Pre-Configuration
タ ブの入力に基づいて選択 さ れてい る こ と を示 し てい ます。 ユーザは こ の入力を無効に し て値を変更で き ま
す。 IPexpress は Pre-Configuration タ ブで選択 さ れた入力に基づいて、 最適な イ ン タ ーフ ェ イ ス を選択 し てい
る こ と に留意 し て く だ さ い。
11-29
TN1203_01.7
MachXO2 デバイスにおける
高速イ ン タ ー フ ェ イ スの実装
表 11-6. DDR_Generic モジ ュール、 Configuration タ ブの GUI オプシ ョ ン
GUI オプ シ ョ ン
説明
範囲
デ フ ォル ト 値
Interface Selection
based on preconfiguration
Pre-configuration タ ブの選択に基づいて イ
ン タ ーフ ェ イ ス が選択 さ れた こ と を示す。
ENABLED,
こ のチ ェ ッ ク ボ ッ ク ス を無効にす る こ と
DISABLED
で、 ユーザはギ ア リ ン グ比や遅延 タ イ プな
ど を選択で き る
ENABLED
Interface Type
イ ン タ ーフ ェ イ ス の タ イ プ
Transmit, Receive
Receive
I/O Standard
こ の イ ン タ ーフ ェ イ ス の I/O 規格
選択 し た タ イ プに応 じ
た全ての I/O タ イ プ
LVCMOS25
Clock Frequency
イ ン タ ーフ ェ イ ス の動作速度
1 ~ 378 MHz (HP 品)
1 ~ 266 MHz (LP 品)
200MHz
100MHz
x1
Gearing Ratio
イ ン タ ーフ ェ イ ス のギ ア リ ン グ比を選択
x1, x2, x4
Alignment
外部 イ ン タ ーフ ェ イ ス の タ イ プ を決定
Edge-to-Edge, Centered Edge-to-Edge
Bus Width
イ ン タ ーフ ェ イ ス のバ ス幅
1 ~ 128
4
Number of Interfaces
サポー ト さ れ る 最大バ ス数
1~8
(算出)
Interface
サポー ト さ れ る GDDR イ ン タ ーフ ェ イ ス
のリス ト
選択 し たギ ア リ ン グ比
と ア ラ イ メ ン ト に依存 GDDRX1_RX.SCLK.Aligned
する
Data Path Delay1
DELAY ブ ロ ッ ク を用いてデー タ 入力を任
意に遅延可能
Bypass, Predefined, User
Predefined
defined, Dynamic
Generate PLL with this こ のモジ ュ ールで PLL を生成す る か し な
Module2
いかのオプシ ョ ン
Enabled, Disabled
Enabled
1. User Defined が選択 さ れ る と 、 遅延値フ ィ ール ド が イ ネーブルにな り 、 ユーザは遅延値を 0 か ら 31 の範囲で選択で き る 。 Dynamic
が選択 さ れ る と 、 モジ ュ ールに 5 ビ ッ ト のポー ト が追加 さ れ る 。 Dynamic が使用で き る のは x2 と x4 受信 イ ン タ ーフ ェ イ ス のみ
2. 本オプシ ョ ンは PLL を用い る イ ン タ ーフ ェ イ ス のみで、 GDDRX1_RX.SCLK.Aligned や GDDRX1_TX.SCLK.Centered、
GDDRX2_TX.ECLK.Centered、 及び GDDRX4_TX.ECLK.Centered が含まれ る
Pre-Configuration タ ブが使用 さ れ る と 、 イ ン タ ーフ ェ イ ス のギ ア リ ン グ比は イ ン タ ーフ ェ イ ス の速度に よ り
決定 さ れます。 表 11-7 にギア リ ン グ比が どの よ う に選択 さ れ る か を示 し ます。
表 11-7. ソ フ ト ウ ェ アに よ る ギア リ ン グ比の選択
デバイ ス タ イ プ
高性能 ( HP) デバ イ ス
低消費電力 ( LP) デバ イ ス
イ ン タ ー フ ェ イ ス速度
ギア リ ング比
=< 166MHz
x1
> 166MHz かつ =< 266MHz
x2
> 266MHz
x4
=< 70MHz
x1
>70MHz かつ =< 133MHz
x2
>133MHz
x4
汎用 DDR 7:1 イ ン タ ーフ ェ イ ス の構築
図 11-30, に示す よ う に、 イ ン タ ーフ ェ イ ス タ イ プ GDDR_71 を選択 し 、 モジ ュ ール名を入力 し て Customize
を ク リ ッ ク す る と 、 Configuration タ ブが開 き ます。 こ のセ ク シ ョ ン では Configuration タ ブの GUI ユーザパ ラ
メ ー タ を説明 し ます。 DDR 7:1 イ ン タ ーフ ェ イ ス は、 特有のアプ リ ケーシ ョ ン なので、 GUI オプシ ョ ンは比
較的シ ンプルです。 必要な ロ ジ ッ ク のほ と ん どが ソ フ ト ウ ェ アに組み込まれ、 使いやす く な っ てい ます。
11-30
TN1203_01.7
MachXO2 デバイスにおける
高速イ ン タ ー フ ェ イ スの実装
図 11-30. IPexpress メ イ ン ウ イ ン ド ウ におけ る GDDR_71 イ ン タ ーフ ェ イ ス の選択
図 11-31. GDDR_71 の Configuration タ ブ
11-31
TN1203_01.7
MachXO2 デバイスにおける
高速イ ン タ ー フ ェ イ スの実装
表 11-8. GDDR_71、 Configuration" タ ブの GUI オプシ ョ ン
GUI オプ シ ョ ン
説明
Interface Type
ン タ ーフ ェ イ ス の タ イ プ
Data Width
入力 さ れ る チ ャ ネル数
7:1 LVDS イ ン タ ーフ ェ イ ス の ピ ク セル ・
High Speed Clock Frequency (Pixel Clock)
ク ロ ッ ク 周波数
範囲
デ フ ォル ト 値
Transmit,
Receive
Receive
1 ~ 16
4
10 ~ 108
108
汎用高速 DDR の設計ガ イ ド ラ イ ン
I/O ロ ジ ッ ク セル と ギ ア リ ン グ ロ ジ ッ ク
それぞれのプログラマブル IO セル(PIC)には、4 つのプログラマブル I/O(PIO)があり、2 組の I/O バッ
ファペアを形成します。各 PIO 自体は x1 ギアリング比に対応します。A/B や C/D の PIO ペアはいずれも
x2ギアリング比に対応できます。x4か7:1ギアリング比のサポートにはPICブロック1つの4 PIOすべてが必
要です。パッケージに A/B ペアのピンが C/D ピンと独立して用意されているときのみ、x4 と 7:1 ギアリン
グ比に対応することができます。特定のパッケージで利用できる x2 インターフェイスの総数は、A/B ペア
と C/D ペアの総数によって決定されます。特定のパッケージで利用できる x4 や 7:1 インターフェイスの総
数は、A/B ペアの総数によって決定されます。
表 11-9. I/O ロ ジ ッ ク セルの ミ ク ス ト モー ド でサポー ト さ れ る ギア リ ン グ ロ ジ ッ ク
I/O ロ ジ ッ ク A
x2 ギ ア リ ン グ (A/B
IDDRX2 又は ODDRX2
ペア )
I/O ロ ジ ッ ク B
I/O ロ ジ ッ ク C
I/O ロ ジ ッ ク D
基本 I/O レ ジ ス タ 又は 基本 I/O レ ジ ス タ 又は
x1 ギ ア リ ン グ
x1 ギ ア リ ン グ
非該当
x2 ギ ア リ ン グ
(C/D ペア )
基本 I/O レ ジ ス タ 又は x1 基本 I/O レ ジ ス タ 又は
IDDRX2 又は ODDRX2 非該当
ギア リ ング
x1 ギ ア リ ン グ
x4 ギ ア リ ン グ
IDDRX4 又は ODDRX4
非該当
基本 I/O レ ジ ス タ 又は 基本 I/O レ ジ ス タ 又は
x1 ギ ア リ ン グ
x1 ギ ア リ ン グ
7:1 ギ ア リ ン グ
IDDRX71 又は ODDRX71 非該当
基本 I/O レ ジ ス タ 又は 基本 I/O レ ジ ス タ 又は
x1 ギ ア リ ン グ
x1 ギ ア リ ン グ
高速 ECLK ブ リ ッ ジ
高速 ECLK ブ リ ッ ジは、MachXO2 デバ イ ス内の ECLK 通信を拡張す る ために用い ら れ、主に高速ビデオ用途
で利用 さ れます。 こ れは MachXO2-640U と MachXO2-1200/U、 及び こ れ よ り 大規模デバ イ ス で使用可能で
す。こ のブ リ ッ ジ を使用す る と 、ク ロ ッ ク ソ ース がデバ イ ス の上辺 と 下辺にあ る エ ッ ジ ク ロ ッ ク を低ス キ ュ ー
で ド ラ イ ブで き る よ う にな り ます。 こ のブ リ ッ ジへの入力信号には、 上辺 と 下辺のプ ラ イ マ リ ・ ク ロ ッ ク ピ
ン入力 と 、 両辺か ら の PLL 出力、 及び ク ロ ッ ク ツ リ ー配線が含まれます。
ECLK ブ リ ッ ジには、 デバ イ ス上下辺の ECLK に 1 つずつ、 計 2 つのブ リ ッ ジ ・ マルチプ レ ク サがあ り ます。
こ れ ら のマルチプ レ ク サは、 2 本のエ ッ ジ ク ロ ッ ク 間で動的に切 り 替えで き ます。 ECLK ブ リ ッ ジの接続性
の詳細については、 TN1199 ”MachXO2 sysCLOCK PLL Design and Usage Guide (MachXO2 sysCLOCK PLL 設
計 と 使用ガ イ ド ) ” を参照 し て く だ さ い。
ECLK ブ リ ッ ジは、高速 x2 / x4 受信 イ ン タ ーフ ェ イ ス を除 く 全ての汎用高速 イ ン タ ーフ ェ イ ス でサポー ト し
ます。 ブ リ ッ ジ機能の使用や配線用途に使用す る ためには、 デザ イ ン内で ECLK ブ リ ッ ジ ・ コ ン ポーネ ン ト
を イ ン ス タ ン スす る 必要があ り ます。
リ セ ッ ト 同期化要件
汎用 DDR イ ン タ ーフ ェ イ ス は、高速アプ リ ケーシ ョ ン用に最適化 さ れた複数の専用回路で構築 さ れます。 し
たが っ て、 ECLK と SCLK 間の ク ロ ッ ク ド メ イ ン転送におけ る マージ ン を確保 し 、 リ セ ッ ト パルス の様々な
遅延に起因す る バ ス の ビ ッ ト 順が乱れ る こ と を回避す る ために、CLKDIV や IDDR / ODDR な ど の全 コ ン ポー
ネ ン ト を、 同一の高速エ ッ ジ ク ロ ッ ク サ イ ク ルでの動作開始を確実にす る 必要があ り ます。
11-32
TN1203_01.7
MachXO2 デバイスにおける
高速イ ン タ ー フ ェ イ スの実装
x2やx4、及び7:1ギ ア リ ン グ を使用 し た イ ン タ ーフ ェ イ ス のシ ス テ ム実装を成功 さ せ る ためには、ECLKSYNCA
コ ン ポーネ ン ト と 特定の リ セ ッ ト シーケ ン ス が必要にな り ます。 図 11-32 と 11-33 は受信 イ ン タ ーフ ェ イ ス
と 送信 イ ン タ ーフ ェ イ ス の タ イ ミ ン グ要件を示 し てい ます。図中のRX_STOPやTX_STOP信号は、ECLKSYNCA
コ ン ポーネ ン ト の STOP ポー ト です。 RX_RST と TX_RST 信号は、 ODDR/IDDR や CLKDIV コ ン ポーネ ン ト の
リ セ ッ ト ポー ト です。 図中 RX_ECLK お よ び TX_ECLK は ECLKSYNCA コ ン ポーネ ン ト の出力です。 図に示す
と お り 、 RX_RST か ら RX_STOP ま では最低で も ECLK の 2 サ イ ク ル分以上あ け る 必要があ り ます。 受信 イ ン
タ ーフ ェ イ ス の リ セ ッ ト プ ロ セ ス は、 ループバ ッ ク 実装で、 送信 イ ン タ ーフ ェ イ ス の リ セ ッ ト プ ロ セ ス が完
了す る ま で開始 さ れ る べ き ではあ り ません。最小 2 サ イ ク ルの ECLK 遅延を作 り 出すための ク ロ ッ ク 信号は、
ECLK よ り 遅い周波数であれば任意の ク ロ ッ ク を使用で き ます。
図 11-32. 受信 イ ン タ ーフ ェ イ ス の リ セ ッ ト 同期
INIT
LOCK for RX
PLL or DLL
RX_ECLK
RX_STOP
RX_RST
Minimum 2 ECLK
cycles
RX_READY
図 11-33. 送信 イ ン タ ーフ ェ イ ス の リ セ ッ ト 同期
TX_ECLK
TX_STOP
TX_RST
Minimum 2 ECLK
cycles
TX_READY
こ れ ら の タ イ ミ ン グ要件は、 IPexpress で生成 さ れ る際に汎用 DDR x2 / x4 / 7:1 モジ ュ ールに組み込まれま
す。 こ の場合 RX_STOP / TX_STOP / RX_RST / TX_RST / RX_ECLK / TX_ECLK は内部信号にな り ます。 汎用
DDR イ ン タ ーフ ェ イ ス を IPexpress 以外で構築す る 場合は、 リ セ ッ ト タ イ ミ ン グ要件に従っ て、 かつ RTL を
記述 し て実装す る 必要があ り ます。
高速 GDDR インターフェイスのタイミング解析
それぞれの高速 イ ン タ ーフ ェ イ ス では、 ユーザが STA (静的 タ イ ミ ン グ解析) を実行す る こ と をお勧め し ま
す。 本セ ク シ ョ ンは、 各 イ ン タ ーフ ェ イ ス ・ タ イ プに用い る タ イ ミ ン グ制約 と 、 期待 さ れ る Trace (= タ イ ミ
ン グ解析) 結果について記述 し ます。 プ リ フ ァ レ ン ス (preference、 設計制約) は、 プ リ フ ァ レ ン ス ・ フ ァ イ
ル (.lpf) に直接記述す る か、 ス プ レ ッ ド シー ト ・ ビ ュ ー (Spreadsheet View) GUI を通 し て入力す る こ と が
で き ます。
本セ ク シ ョ ン と 共に、MachXO2 フ ァ ミ リ デー タ シー ト の外部ス イ ッ チン グ特性セ ク シ ョ ン を参照 し て く だ さ
い。 デー タ シー ト では、 それぞれの イ ン タ ーフ ェ イ ス に対す る こ れ ら 制約の実際の値について規定 し てい ま
す。
周波数制約
デザ イ ン内の全入力 ク ロ ッ ク に対 し て、 ユーザが明示的に FREQUENCY (ま たは PERIOD) PORT 制約を指
定す る こ と が必要です。 ただ し 、 ク ロ ッ ク が PLL か DLL か ら 生成 さ れ る か、 ま たは ク ロ ッ ク が PLL か DLL
11-33
TN1203_01.7
MachXO2 デバイスにおける
高速イ ン タ ー フ ェ イ スの実装
に入力 さ れ る 場合は、 必ず し も こ の制約は必要ではあ り ません。 すべての ク ロ ッ ク ピ ン と ク ロ ッ ク 配線要件
については、 本 ド キ ュ メ ン ト の " 高速 GDDR イ ン タ ーフ ェ イ ス の詳細 " セ ク シ ョ ン を参照 し て く だ さ い。
セ ッ ト ア ッ プ と ホール ド タ イム制約
すべての受信 イ ン タ ーフ ェ イ ス では、 セ ッ ト ア ッ プ と ホール ド 時間に制約を与え る こ と がで き ます。
受信セ ン タ ー ・ イ ン タ ーフ ェ イ ス : 図 11-34 は受信セ ン タ ー イ ン タ ーフ ェ イ ス でのデー タ と ク ロ ッ ク の関係
を示 し ます。 ク ロ ッ ク エ ッ ジがデー タ の中央にあ る ため、 こ れはデバ イ ス ・ イ ン タ フ ェース点で し ば し ば十
分なセ ッ ト ア ッ プ と ホール ド タ イ ム を提供 し ます。
図 11-34. RX.CLK.Centered レ シーバ波形
RX CLK Input
RX Data Input
RX.Centered
tSU
tHO
tSU
tHO
ユーザはセ ッ ト ア ッ プ と ホール ド タ イ ムの許容 さ れ る 値について、 ソ フ ト ウ ェ ア ・ プ リ フ ァ レ ン ス と し て規
定 し なければな り ません。 こ れ ら のパ ラ メ ー タ は tSU (セ ッ ト ア ッ プ時間) と tHO (ホール ド タ イ ム) と し て
図示 さ れてい ます。 以下に示す よ う に INPUT_SETUP と HOLD プ リ フ ァ レ ン ス を用い る こ と で , 直接それ ら
を与え る こ と がで き ます。
INPUT_SETUP PORT “Data” <tSU> ns HOLD <tHO> ns CLKPORT “CLK”;
こ こ で、 Data = デー タ 入力ポー ト ; CLK= ク ロ ッ ク 入力ポー ト
MachXO2 フ ァ ミ リ デー タ シー ト の外部ス イ ッ チン グ特性セ ク シ ョ ンでは、最速周波数で動作す る 各高速 イ ン
タ ーフ ェ イ ス で必要 と な る 、 最小セ ッ ト ア ッ プ / ホール ド タ イ ムについて規定 し てい ます。 最速周波数で動
作 し ないデザ イ ンにおいては、セ ッ ト ア ッ プ と ホール ド タ イ ム値を計算す る ために ソ フ ト ウ ェ アの STA ツー
ルを用い る こ と がで き ます。
例えば 250MHz で動作す る GDDRX2_RX.ECLK.Centered イ ン タ ーフ ェ イ ス を用い る 場合、 制約は次の よ う に
設定で き ます。 ソ フ ト ウ ェ アは本 イ ン タ ーフ ェ イ ス に最小 tSU と tHO 値を与え ます。
INPUT_SETUP PORT Data 0.500000 ns HOLD 0.500000 ns CLKPORT "CLK";
受信ア ラ イ ン イ ン タ ーフ ェ イ ス : 図 11-35 は受信ア ラ イ ン ・ イ ン タ ーフ ェ イ ス におけ る デー タ と ク ロ ッ ク の
関係を示 し ます。 ク ロ ッ ク と デー タ はそれ ら のエ ッ ジが揃っ て (ア ラ イ ン さ れて) い ます。 DDR メ モ リ では、
リ ー ド 動作時に同 じ タ イ ミ ン グの関係にな り ます。
図 11-35. RX.CLK.Aligned お よ び MEM DDR レ シーバ入力波形
RX CLK Input
or DQS Input
RX Data Input
or DQ Input
RX.Aligned
tDVA or tDVADQ
tDVE or tDVEDQ
最悪ケース では、デー タ が ク ロ ッ ク エ ッ ジの後に到来す る か も し れず、し たが っ てデバ イ ス入力時に負のセ ッ
ト ア ッ プ時間を持つ こ と にな り ます。 こ の イ ン タ ーフ ェ イ ス では、 最悪ケース のセ ッ ト ア ッ プ時間は tDVA に
よ っ て規定 さ れ、 こ れは ク ロ ッ ク エ ッ ジ後にデー タ 有効に な る 時間です。 最悪ケー ス の ホール ド タ イ ム は
11-34
TN1203_01.7
MachXO2 デバイスにおける
高速イ ン タ ー フ ェ イ スの実装
tDVE で規定 さ れ、 こ れは ク ロ ッ ク エ ッ ジ後のデー タ 保持期間です。 本 イ ン タ ーフ ェ イ ス のセ ッ ト ア ッ プ /
ホール ド タ イ ムについては、 以下の よ う に規定す る こ と がで き ます。
INPUT_SETUP PORT Data <-tDVA > ns HOLD < tDVE> ns CLKPORT “CLK”;
こ こ で、 Data = デー タ 入力ポー ト ; CLK= ク ロ ッ ク 入力ポー ト
SETUP タ イ ムには負数が用い ら れてい ますが、 こ の場合デー タ が ク ロ ッ ク エ ッ ジの後に現れます。 MachXO2
フ ァ ミ リ デー タ シー ト の外部ス イ ッ チン グ特性セ ク シ ョ ンでは、 最速周波数で動作す る 各高速 イ ン タ ーフ ェ
イ ス で必要 と な る 、 最大 tDVA と 最小 tDVE について規定 し てい ます。 デー タ シー ト で こ の制約の規定は単位
が UI (Unit Intervals) と し て記載 さ れてい ます。 1UI は ク ロ ッ ク 半周期に等 し く な り ます。 し たがっ て、 実
際の数値は用い ら れ る ク ロ ッ ク の周期か ら 計算す る 必要があ り ます。
250MHz (UI=2.0ns) で動作す る GDDRX2_RX.ECLK.Aligned イ ン タ ーフ ェ イ ス では、
tDVA = 0.32UI = 0.64ns, tDVE = 0.70UI = 1.4ns
こ の場合の制約は以下の通 り です。
INPUT_SETUP PORT Data -0.640000 ns HOLD 1.400000 ns CLKPORT "CLK";
7:1 LVDS 受信 イ ン タ ーフ ェ イ ス : 7:1 LVDS イ ン タ ーフ ェ イ ス は特異な GDDR イ ン タ ーフ ェ イ ス で、 こ れは
ピ ク セル ク ロ ッ ク 一周期を用いて 7 ビ ッ ト デー タ を受信 し ます。 図 11-36 は こ の イ ン タ ーフ ェ イ ス の タ イ ミ
ン グ を示 し ますが、 tRPBi が ビ ッ ト "i" の入力ス ト ロ ーブ位置です。 こ の イ ン タ ーフ ェ イ ス と し て、 bit0 の最
大セ ッ ト ア ッ プ タ イ ムは tRPB0 min に よ っ て規定 さ れ、最小ホール ド タ イ ムが tRPB0 max と し て規定 さ れます。
本 イ ン タ ーフ ェ イ ス ではbit i用の入力ス ト ロ ーブ位置がtRPBi min と tRPBi max内に制限 さ れます。値はMachXO2
フ ァ ミ リ デー タ シー ト の外部ス イ ッ チン グ特性セ ク シ ョ ンに記載 さ れてい ます。
図 11-36. GDDR71_RX. レ シーバ波形
7:1 イ ン タ ーフ ェ イ ス の実装には、 参照デザ イ ン RD1093 ”MachXO2 デ ィ ス プ レ イ ・ イ ン タ ーフ ェ イ ス ” を用
い る こ と をお勧め し ます。
受信ダ イ ナ ミ ッ ク ・ イ ン タ ーフ ェ イ ス : 実動作時に ク ロ ッ ク かデー タ 遅延の ど ち ら かが動的に更新 さ れ る 場
合は、 STA がダ イ ナ ミ ッ ク ・ イ ン タ ーフ ェ イ ス全ケース について タ イ ミ ン グ を解析す る こ と はあ り ません。
11-35
TN1203_01.7
MachXO2 デバイスにおける
高速イ ン タ ー フ ェ イ スの実装
Clock-to-Out (ク ロ ッ クから 出力) 制約
すべての送信 (Tx) イ ン タ ーフ ェ イ ス では、 デバ イ ス端での ク ロ ッ ク と デー タ 出力 と の関係を検出す る ため
に clock-to-out ( ク ロ ッ ク 対出力) 制約を与え る こ と がで き ます。
図 11-37 は ソ フ ト ウ ェ アで clock-to-out が ど の よ う に制約 さ れ る か を示 し ます。 最小 tCO は、 ク ロ ッ ク エ ッ
ジ遷移後にデー タ が変化 し ない最小時間です。 し たが っ て、 いかな る デー タ 遷移 も tCO の最小値 と 最大値の
間で起 こ ら なければな り ません。
図 11-37. tCO の最小 と 最大 タ イ ミ ン グ解析
CLK
DATA
tCOMin
tCO Max
tCO Min = Data cannot transition BEFORE Min
tCO Max = Data cannot transition AFTER Max
送信センター・インターフェイス:デバイスから出力されるとき、送信クロックエッジはデータの中央にあ
ることが期待されています。 図 11-38 は送信センター・インターフェイスのタイミングを示します。DDR メ
モリへのライト出力時には、送信センター・インターフェイスと同じタイミングの振舞いになります。
図 11-38. TX.CLK.Centered お よ び MEM DDR ト ラ ン ス ミ ッ タ の出力波形
TX CLK Output
or DQS Output
tU
TX Data Output
or DQ Output
TX.Centered
tDVB or
tDQVBS
tDVA or
tDQVAS
tDVB or
tDQVBS
tDVA or
tDQVAS
図 11-38 で tU はデー タ 遷移期間です。 tDVB は ク ロ ッ ク エ ッ ジの前にデー タ が有効であ る べ き 期間の最大値
が -tDVB で あ る こ と を示 し ま す。 ま た、 ク ロ ッ ク エ ッ ジ後のデー タ 有効デー タ (ホール ド タ イ ム) 最小値
tDVA です。
MachXO2 フ ァ ミ リ デー タ シー ト は、 最速周波数におけ る tDVB と tDVA 値について規定 し てい ます。 し か し 、
こ こ では tU 値が不明なため、 以下の数式を用い る こ と で最小 tCO について計算す る こ と がで き ます。
tCO Min. = -(tDVB + tU)
½T = tDVA + tDVB + tU
-(tDVB + tU) = tDVA - ½T
tCO Min. = tDVA - ½T
ソ フ ト ウ ェ アでの clock-to-out 時間は以下の よ う に規定す る こ と がで き ます。
CLOCK_TO_OUT PORT “Data” MAX <-tDVB> MIN <tDVA-1/2 Clock Period> CLKPORT “CLK” CLKOUT PORT
“Clock”;
こ こ で、Data = デー タ 出力ポー ト ; Clock = フ ォーワー ド ク ロ ッ ク 出力ポー ト ; CLK = ク ロ ッ ク 入力ポー ト
最速時の tDVB と tDVA 値は、MachXO2 フ ァ ミ リ デー タ シー ト の外部ス イ ッ チン グ特性セ ク シ ョ ンに記載 さ れ
てい ます。
11-36
TN1203_01.7
MachXO2 デバイスにおける
高速イ ン タ ー フ ェ イ スの実装
250MHz で動作す る GDDRX2_TX.SCLK.Centered イ ン タ ーフ ェ イ ス では、 制約は以下にな り ます。
CLOCK_TO_OUT PORT "Data" MAX -0.670000 ns MIN -1.330000 ns CLKPORT "CLK" CLKOUT
PORT "Clock";
送信ア ラ イ ン ・ イ ン タ ーフ ェ イ ス : こ の場合、デバ イ ス か ら 出力 さ れ る と き ク ロ ッ ク と デー タ はエ ッ ジが揃っ
てい ます。 図 11-39 は本 イ ン タ ーフ ェ イ ス の タ イ ミ ン グ図を示 し ます。
図 11-39. TX.CLK.Aligned ト ラ ン ス ミ ッ タ 波形
TX CLK Output
TX Data Output
TX.Aligned
tDIB
tDIA
tDIB
tDIA
図 11-39 で、 tDIA は ク ロ ッ ク エ ッ ジ後のデー タ が遷移期間の最大値を示 し ます。 デー タ が遷移す る 最小値は
-tDIB ですが、 こ れは ク ロ ッ ク の前でデー タ が無効にな る値です。 負数が最小値に用い ら れてい ますが、 こ れ
は最小の条件が ク ロ ッ ク エ ッ ジの前に出現す る ためです。
ソ フ ト ウ ェ アの clock-to-out 時間は以下の よ う に規定す る こ と がで き ます。
CLOCK_TO_OUT PORT “Data” MAX <tDIA> MIN <-tDIB> CLKPORT “CLK” CLKOUT PORT “Clock”;
こ こ で、Data = デー タ 出力ポー ト ; Clock = フ ォーワー ド ク ロ ッ ク 出力ポー ト ; CLK = ク ロ ッ ク 入力ポー ト
最速動作時の tDIA と tDIB 値は、 MachXO2 フ ァ ミ リ デー タ シー ト の外部ス イ ッ チン グ特性セ ク シ ョ ンに規定
さ れてい ます。
250MHz で動作す る GDDRX2_TX.Aligned イ ン タ ーフ ェ イ ス では、 tDIA = tDIB = 0.215ns です。 制約は以下の通
り です。
CLOCK_TO_OUT PORT "Data" MAX 0.215000 ns MIN -0.215000 ns CLKPORT "CLK" CLKOUT
PORT "Clock”;
11-37
TN1203_01.7
MachXO2 デバイスにおける
高速イ ン タ ー フ ェ イ スの実装
送信 7:1 LVDS イ ン タ ーフ ェ イ ス : 7:1 LVDS イ ン タ ーフ ェ イ ス は特異な GDDR イ ン タ ーフ ェ イ ス で、 こ れは
ピ ク セル ク ロ ッ ク の一周期を用いて 7 ビ ッ ト デー タ を送信 し ます。 図 11-40 は本 イ ン タ ーフ ェ イ ス の タ イ ミ
ン グ を示 し ます。 本 イ ン タ ーフ ェ イ ス では、 bit0 の送信出力パルス位置は、 tTPB0 min と tTPB0 max 内に制限
さ れます。 tTPBi 値は、 MachXO2 フ ァ ミ リ デー タ シー ト の外部ス イ ッ チン グ特性セ ク シ ョ ンに記載 さ れてい
ます。
図 11-40. GDDR71_TX. ト ラ ン ス ミ ッ タ 波形
ク ロ ッ ク ド メ イ ン転送の タ イ ミ ング ・ ルールチ ェ ッ ク
こ れ ら のエ レ メ ン ト が設計で用い ら れてい る と き 、 IDDR と ODDR モジ ュ ール内の ク ロ ッ ク ド メ イ ン転送は
Trace ( タ イ ミ ン グ解析) に よ っ て自動的にチ ェ ッ ク さ れ ま す。 ク ロ ッ ク ド メ イ ン転送は、 高速 と 低速の ク
ロ ッ ク 入力があ る GDDR X2、 X4、 お よ び 7:1 モジ ュ ールで起 こ り ます。
ソ フ ト ウ ェ アで こ の ク ロ ッ ク ド メ イ ン転送のチ ェ ッ ク を実行す る ために、ど の よ う な特別な制約 も 不要です。
ク ロ ッ ク ド メ イ ン 転送の確認は ソ フ ト ウ ェ ア で自動的に行われ、 Trace ( タ イ ミ ン グ解析) レ ポー ト 内の
”Timing Rule Check ( タ イ ミ ン グ ・ ルールチ ェ ッ ク ) ” セ ク シ ョ ンで報告 さ れます。 レ ポー ト では、 ク ロ ッ ク
ド メ イ ン転送が起 こ る 入出力 GDDR ブ ロ ッ ク 両方での タ イ ミ ン グ を リ ス ト ア ッ プ し ます。
11-38
TN1203_01.7
MachXO2 デバイスにおける
高速イ ン タ ー フ ェ イ スの実装
DDR/DDR2/LPDDR SDRAM イ ン タ ーフ ェ イ ス概要
DDR SDRAM イ ン タ ーフ ェ イ ス は、 ク ロ ッ ク の立ち上が り エ ッ ジ と 立ち下が り エ ッ ジの両方でデー タ を転送
し ます。 DDR2 は第 2 世代の DDR SRDRAM メ モ リ ですが、 LPDDR は電池駆動アプ リ ケーシ ョ ンに特化 し た
低消費電力 イ ン タ ーフ ェ イ ス です。
DDR と DDR2、 及び LPDDR SDRAM イ ン タ ーフ ェ イ ス は、 高速動作を実現す る ためにデー タ ス ト ロ ーブ信号
であ る DQS を使用 し てい ます。 DDR と LPDDR SDRAM イ ン タ ーフ ェ イ ス は、 シ ン グルエン ド DQS ス ト ロ ー
ブ信号を使用 し 、 DDR2 イ ン タ ーフ ェ イ ス には差動 DQS ス ト ロ ーブ信号を使用す る オプシ ョ ンがあ り ます。
以降の図は標準的な DDR や DDR2、及び LPDDR SDRAM イ ン タ ーフ ェ イ ス信号を示 し ます。SDRAM イ ン タ ー
フ ェ イ ス は、 通常 DQS 当た り DQ デー タ 8 ビ ッ ト で実装 さ れます。 例えば x16 イ ン タ ーフ ェ イ ス は 2 本の
DQS 信号線を使用 し 、 各 DQS 信号は各 8 ビ ッ ト の DQ デー タ に関連づけ ら れます。 DQ 及び DQS は と も に
双方向ポー ト で、 DDR メ モ リ デバ イ ス と の リ ー ド / ラ イ ト に使用 さ れます。
外部 メ モ リ か ら デー タ を読み出す場合、デバ イ ス に入力 さ れ る デー タ は DQS 信号に対 し てエ ッ ジが揃っ てい
ます (ア ラ イ ン)。 こ の DQS ス ト ロ ーブ信号は、 90° 位相シ フ ト し て FPGA ロ ジ ッ ク が リ ー ド デー タ を取 り
込め る で き る よ う にす る 必要があ り ます。 DDR / DDR2 / LPDDR SDRAM に ラ イ ト す る 場合、 メ モ リ コ ン ト
ロ ー ラ (FPGA) は DQS を 90° 位相シ フ ト し て出力 し 、 エ ッ ジ をデー タ 信号 (DQ) の中央に合わせ る 必要
があ り ま す。 ま た ク ロ ッ ク 信号は メ モ リ に も 出力 さ れ ま すが、 こ れは差動 ク ロ ッ ク と し て提供 さ れ (CLKP
と CLKN)、 デ ュ ーテ ィ 比のバ ラ つ き を最小限に し ます。 メ モ リ は こ れ ら の ク ロ ッ ク 信号を使用 し 、 メ モ リ 内
部の DLL を介 し て リ ー ド 時の DQS 信号を生成 し ます。 LPDDR デバ イ ス には、 標準的な DDR デバ イ ス で使
用 さ れ る DLL は省電力化のために存在 し ません。 次ページの図は、 リ ー ド / ラ イ ト サ イ ク ルにおけ る DQ と
DQS の タ イ ミ ン グ関係を示 し ます。
リ ー ド 実行時、 DQS 信号は ト ラ イ ス テー ト か ら 抜けた後 し ば ら く は Low です。 こ の ス テー ト を " プ リ ア ンブ
ル (Preamble) " と 呼びます。 ま た ト ラ イ ス テー ト に戻 る 前の DQS Low 期間を " ポ ス ト ア ンブル (Postamble)
" ス テー ト と 呼びます。 こ れは最後の有効デー タ 遷移後の ス テー ト です。
ま た DDR SDRAM では、 ラ イ ト サ イ ク ル中にデー タ ビ ッ ト を マ ス ク す る ためのデー タ マ ス ク (DM) 信号が
必要です。 DQS と デー タ ビ ッ ト と の比は、 メ モ リ 全体の幅 と は独立な こ と に留意 し て く だ さ い。 8 ビ ッ ト イ
ン タ ーフ ェ イ ス は、 1 本の ス ト ロ ーブ信号を持ち ます。
DDR SDRAM イ ン タ ーフ ェ イ ス は、 I/O 規格 と し て SSTL25 Class I/II を採用 し 、 DDR2 SDRAM イ ン タ ーフ ェ
イ ス は SSTL18 Class I/II 規格を、 そ し て LPDDR SDRAM イ ン タ ーフ ェ イ ス は LVCMOS18 規格を採用 し てい
ます。 DDR2 はシ ン グルエン ド ま たは差動 DQS のいずれか を使用で き ます。
以下の表 と 図は、 DDR メ モ リ の仕様 と 標準的 イ ン タ ーフ ェ イ ス、 及びピ ン レベルの DQ と DQS の関係を示
し た も のです。
表 11-10. MachXO2-640U と MachXO2-1200/U、 及び こ れ よ り 大規模デバ イ ス の DDR / DDR2 及び LPDDR
仕様
DDR
DDR2
LPDDR
190M ~ 300Mbps
266M ~ 300 Mbps
0 ~ 300Mbps
シ ン グルエ ン ド
シ ン グルエ ン ド / 差動
シ ン グルエ ン ド
イ ン タ ーフ ェ イ ス
SSTL25
SSTL18
LVCMOS18
終端
外付け
オ ンチ ッ プ
なし
デー タ レー ト
DQS
11-39
TN1203_01.7
MachXO2 デバイスにおける
高速イ ン タ ー フ ェ イ スの実装
図 11-41. 典型的な DDR SDRAM イ ン タ ーフ ェ イ ス
FPGA
(DDR Memory Controller)
DQ<7:0>
DQS
DDR Memory
DQ<7:0>
COMMAND
CONTROL
CLK/CLKN
DQ<7:0>
DQS
DQS
DM
DM
ADDRESS
8
MD
ADDRESS
X
COMMAND
Y
CONTROL
Z
ADDRESS
COMMAND
CLKP/CLKN
CONTROL
CLK/CLKN
図 11-42. 典型的な DDR2 SDRAM イ ン タ ーフ ェ イ ス
DDR Memory
FPGA
(DDR Memory Controller)
DQ<7:0>
DQS, DQS#
DM
ADDRESS
COMMAND
CONTROL
CLK/CLKN
DQ<7:0>
8
DQ<7:0>
DQS, DQS#
DQS, DQS#
DM
MD
ADDRESS
X
COMMAND
Y
CONTROL
Z
ADDRESS
COMMAND
CLKP/CLKN
CONTROL
CLK/CLKN
図 11-43. 典型的な LPDDR SDRAM イ ン タ ーフ ェ イ ス
FPGA
(LPDDR Memory Controller)
DQ<7:0>
DQS
DM
ADDRESS
COMMAND
CONTROL
CLK/CLKN
LPDDR Memory
DQ<7:0>
8
DQ<7:0>
DQS
DQS
DM
DM
ADDRESS
X
COMMAND
Y
CONTROL
Z
ADDRESS
COMMAND
CLKP/CLKN
11-40
CONTROL
CLK/CLKN
TN1203_01.7
MachXO2 デバイスにおける
高速イ ン タ ー フ ェ イ スの実装
図 11-44. リ ー ド 時の DQ と DQS の関係
DQS
(at Pin)
Preamble
Postamble
DQ
(at Pin)
DQS
(at Register)
DQ
(at Register)
DQS 90°
Phase
Shift
図 11-45. ラ イ ト 時の DQ と DQS の関係
DQS
(at Pin)
DQ
(at Pin)
DDR/DDR2/LPDDR SDRAM イ ン タ ーフ ェ イ ス の実装
DDR メ モ リ の概要セ ク シ ョ ンで説明 し た よ う に、 全ての DDR SDRAM イ ン タ ーフ ェ イ ス は、 高速動作を実現
す る ためにデー タ ス ト ロ ーブ信号であ る DQS を使用 し てい ます。外部 メ モ リ デバ イ ス か ら デー タ を読み出す
と き 、MachXO2 デバ イ ス に入力 さ れ る デー タ は DQS 信号に対 し てエ ッ ジが揃っ てい ます。MachXO2 は、DQS
を 90° 位相シ フ ト し て リ ー ド デー タ の取 り 込みを可能に し ます。 メ モ リ コ ン ト ロ ー ラ か ら DDR SDRAM に
デー タ を ラ イ ト す る と き 、 MachXO2 デバ イ ス はデー タ 信号 DQ の中央にエ ッ ジ を持つ DQS 信号を生成す る
必要があ り ます。こ れは、DQ デー タ に対 し て DQS ス ト ロ ーブ信号を 90° 位相シ フ ト す る こ と で実現 し ます。
MachXO2-640U と MachXO2-1200/U、 及び こ れ よ り 大規模デバ イ ス は、 DQS を適切に位相シ フ ト さ せ る 専用
の DQS サポー ト 回路を備え てい ます。 こ の回路は汎用 DDR 回路 と は別で、 デバ イ ス の右辺でのみ使用可能
です。 こ の回路は メ モ リ イ ン タ ーフ ェ イ ス用に x1 ギ ア リ ン グ を利用 し 、 結果 と し て コ ア性能に対 し て 2 倍の
周波数で メ モ リ イ ン タ ーフ ェ イ ス を動作 さ せます。
DDR2 及び LPDDR と も に、 XO2 は対デバ イ ス接続 と な る 実装を意図 し てお り 、 従っ て DQ / DQS の フ ァ ン
ア ウ ト を 1 つにす る必要があ り 、 ま た CLKP / CLKN と ア ド レ ス / コ マン ド の フ ァ ン ア ウ ト は 2 つで も 可能
でし ょ う 。
DQS 位相 シ フ ト 回路は専用の各 DQS ピ ン に関連す る 遅延制御信号 を 生成す る た め に周波数基準 DLL
(Frequency Referenced DLL) を使用 し 、 PVT (プ ロ セ ス / 電圧 / 温度) バ ラ つ き を補正す る よ う に設計 さ れ
てい ます。 周波数基準は PCLK グ ロ ーバル ・ ク ロ ッ ク ピ ンの 1 本を介 し て与え ら れます。 ま た専用の DDR サ
ポー ト 回路は、 デー タ サンプ リ ン グ ・ ウ イ ン ド ウ に対 し て適度で一定のマージ ン を与え る よ う に設計 さ れて
い ます。 本セ ク シ ョ ン では、 DDR メ モ リ イ ン タ ーフ ェ イ ス の リ ー ド と ラ イ ト セ ク シ ョ ンの実装方法について
説明 し ます。
11-41
TN1203_01.7
MachXO2 デバイスにおける
高速イ ン タ ー フ ェ イ スの実装
DQS グルーピ ン グ
1 つの DQS グループは、 通常 8 本の DQ ピ ン と 1 本の DM ピ ン、 1 本の DQS ピ ン ま たは 2 組の DQS / DQSN
ペア、 及び 1 本の Vref ピ ンか ら 構成 さ れます。 DQS グループは DDR / DDR2、 ま たは LPDDR SDRAM イ ン
タ ーフ ェ イ ス一式を実装す る ために、 少な く と も 11 個の I/O ロ ジ ッ ク セルを必要 と し ます。 MachXO2-640U
と MachXO2-1200/U、及び こ れ よ り 大規模のデバ イ ス では、DQS 信号が DQS / DQSN 用の 2 個 と 12 個の I/O
セルの スパン を カバーで き る よ う に DQS-14 グループ をサポー ト し ます。 デバ イ ス の右辺でサポー ト さ れ る
メ モ リ 回路は、 最大で DDR / DDR2 / LPDDR バ ス の 16 ビ ッ ト 幅実装を可能に し ます。 こ れは 2 つの DQS グ
ループ を一緒に使用す る 必要があ り ます。
各 DQS 信号は 14 I/O の スパン を カバー し ます。 シ ン グルエン ド DQS を使用す る 場合、 最大 13 本の I/O ス
パンに対 し て、 8 ビ ッ ト の DDR メ モ リ イ ン タ ーフ ェ イ ス を実装で き ます。 ユーザは DQS-14 グループ内の任
意の 8 個の I/O パ ッ ド を、DQ デー タ ピ ンに割 り 当て る こ と がで き ます。DQSN を使用 し ない場合、その DQS
グループに対 し て DQ ま たは DM と し て使用で き ます。 MachXO2 デバ イ ス フ ァ ミ リ は、 任意の I/O ピ ン を
Vref ピ ン と し て使用で き ます。 こ の結果、 DQS-14 グループ構造 と 相ま っ て DDR メ モ リ イ ン タ ーフ ェ イ ス に
対す る ピ ン配置の柔軟性が高ま り ます。 DQS 及び DQS-14 グループの配置の詳細については MachXO2 フ ァ
ミ リ デー タ シー ト を参照 し て く だ さ い。
DQS 回路
DQS 回路 (DQSBUF) は DDR メ モ リ イ ン タ ーフ ェ イ ス の実装を簡素化す る よ う に設計 さ れてい ます。 こ の
回路は以下を含むい く つかの機能を統合 し てい ます。
• DQS プ リ ア ンブル / ポ ス ト ア ンブル管理
• DLL 補正 さ れた DQS の遅延
• 有効デー タ 及びデー タ バース ト の検出
DQS プ リ ア ン ブル / ポス ト ア ン ブル管理
DDR / DDR2 / LPDDR SDRAM メ モ リ イ ン タ ーフ ェ イ ス は、 リ ー ド / ラ イ ト バース ト の前後にプ リ ア ンブル
と ポ ス ト ア ンブル ・ ス テー ト が必要です。 プ リ ア ンブル と ポ ス ト ア ンブル管理回路は、 MachXO2 デバ イ ス に
組み込まれてい ます。 こ れはデバ イ ス内部の ク リ ーン な DQS パルス を確実に し 、 プ リ ア ンブル期間に内部 ロ
ジ ッ ク に対 し て DQS を起動 し 、 信号の最後の立ち下が り エ ッ ジ後に DQS をオ フ に し ます。 デバ イ ス内部へ
の ク リ ーン な DQS で、 下流の ロ ジ ッ ク 回路が ク ロ ッ ク 極性検出 (DDRCLKPOL) を確実に行え る よ う に し ま
す。 こ の信号を使用 し て、 同期レ ジ ス タ に対す る ク ロ ッ ク 極性を制御 し ます。
DLL 補正 さ れた遅延ロ ジ ッ ク
マ ス タ DLL (DQSDLL) は必要な 90° 位相シ フ ト をす る ために DQSBUF 内の遅延 ロ ジ ッ ク と と も に動作 し
ます。 DQSBUF はチ ッ プ右辺の DQSDLL か ら 7 ビ ッ ト 遅延制御 コ ー ド を受け と り ます。 こ の制御信号は 2 つ
の DQSBUF 内 ク ロ ッ ク ス レーブ遅延 ラ イ ンで使用 さ れます。 一方は リ ー ド 動作時の ク ロ ッ ク 90° 位相シ フ
ト に使用 さ れ、 他方は ラ イ ト 動作時のデー タ 90° 位相シ フ ト に使用 さ れます。
DQS 回路 (DQSBUF) は ECLK を 90° 位相シ フ ト し て DQSR90 を生成 し ます。 DQSR90 信号は、 続いてチ ッ
プ右辺にあ る 全 DDR メ モ リ I/O ロ ジ ッ ク セルに送 ら れ、メ モ リ の リ ー ド 動作で入力デー タ を取 り 込む ク ロ ッ
ク にな り ます。
DQSW90 も ま た DQSBUF に よ っ て生成 さ れ、 メ モ リ ラ イ ト 動作に使用 さ れます。 DQSW90 は SCLK 信号を
90° 位相シ フ ト し た も ので、 DDR デー タ 出力に使用 さ れます。 こ れは ラ イ ト 動作時に DQ デー タ の中央に
DQS エ ッ ジ を合わせ る と い う 要件を満た し ます。
デー タ 有効信号 と デー タ バース ト 検出
11-42
TN1203_01.7
MachXO2 デバイスにおける
高速イ ン タ ー フ ェ イ スの実装
DQSBUF は有効なデー タ が入力 DDR レ ジ ス タ か ら FPGA コ アに転送 さ れた こ と を FPGA に通知す る 、 デー
タ 有効 (Data Valid) 信号の生成に も 責任を負い ます。 デー タ 有効信号はレベルセ ン シテ ィ ブで、 FPGA コ ア
と の境界でデー タ と 整合 し ます。
DQSBUF のデー タ バース ト 検出は、DDR リ ー ド 動作時に READ パルス を最適な位置に合わせ る ために用い ら
れます。 ト レーニ ン グプ ロ セ ス で十分なバース ト 長 (BL) が用い ら れ る こ と が重要です。 MachXO2 の DDR
メ モ リ 実装では、 デバ イ ス が正 し い READ パルス位置を検出で き る よ う に、 少な く と も 連続 し た 2 つの BL2
(BL=2)、 ま たは 1 つの BL4 (BL=4)、 或いは こ れ ら バース ト 長を複数回 ト レーニ ン グプ ロ セ ス で使用す る こ
と が必要です。
I/O ロ ジ ッ ク ・ デー タ パス
DDR メ モ リ の I/O ロ ジ ッ ク 、 或いは メ モ リ PIO セルは本 ド キ ュ メ ン ト の始めに図 11-2 で示 し ま し た。 DDR
メ モ リ 入力パ ス で、 第 1 段 DDR レ ジ ス タ 組を用いて、 位相シ フ ト し た DQS 信号の立ち上が り と 立ち下が り
エ ッ ジ で、 DDR デー タ を 多重分離 し ま す。 次に、 第 2 段の組 を 使用 し て それ ら デー タ を DQS ド メ イ ン
(DQSR90) か ら SCLK ド メ イ ンに転送 し ます。 そ し て レ ジ ス タ の最終組を使用 し て、 DDRCLKPOL に基づ く
SCLK に よ っ て再度入力デー タ を ク ロ ッ キ ン グ し ます。 出力側で DQS と DQ は同 じ 論理を共有 し ます。 パ ラ
レルデー タ は ラ イ ト ク ロ ッ ク DQSW90 に よ り 多重化 さ れ、 DQS 出力パルス は SCLK に よ り 制御 さ れます。
DDR メ モ リ の ビルデ ィ ン グブ ロ ッ ク の詳細については、 "DDR ソ フ ト ウ ェ アのプ リ ミ テ ィ ブ と ア ト リ ビ ュ ー
ト " を参照 し て く だ さ い。
DDR / DDR2 / LPDDR メ モ リ リ ー ド の実装
MachXO2-640U と MachXO2-1200/U、及び こ れ よ り 大規模デバ イ ス では、IPexpress ツールで生成 さ れた DDR
メ モ リ モジ ュ ールに よ っ て、DDR / DDR2 / LPDDR メ モ リ イ ン タ ーフ ェ イ ス機能をサポー ト し ます。IPexpress
を使用す る こ と に よ り 、 設計者は DDR / DDR2 / LPDDR メ モ リ か ら 入力 さ れたデー タ の リ ー ド に必要な、
様々なモジ ュ ールを生成で き ます。
DDR / DDR2 / LPDDR の リ ー ド 側は、 次の 3 つの ソ フ ト ウ ェ ア ・ エ レ メ ン ト に よ り 実装 さ れます。 DQSDLL
は較正に使用す る DLL です。 IDDRDQS は入力 DDR レ ジ ス タ を実装 し ます。 DQSBUF は DQS 遅延ブ ロ ッ ク
と ク ロ ッ ク 極性制御 ロ ジ ッ ク 、 そ し てデー タ 有効モジ ュ ールです。 DQSR90 は専用 ク ロ ッ ク ツ リ ーを介 し て
各 IDDRDQS セルに分配 さ れます。 SCLK の配線は必ずプ ラ イ マ リ ・ ク ロ ッ ク ネ ッ ト の 1 本を使用す る 必要が
あ り ます。
11-43
TN1203_01.7
MachXO2 デバイスにおける
高速イ ン タ ー フ ェ イ スの実装
図 11-46. DDR / DDR2 / LPDDR リ ー ド の実装
DQ0
DQSDLLC
LOCK
CLK
RST
UDDCNTLN
FREEZE
IDDRDQSX1A
DQSDEL
D
DQSR90
DDRCLKPOL
SCLK
RST
Datain0
Datain8
Q0
Q1
Datain7
Datain15
.
.
.
.
DQSBUFH
DQSI
READ
READCLKSEL1
READCLKSEL0
SCLK
RST
DQSDEL
Q0
Q1
DDRCLKPOL
DQSR90
DQSW90
DATAVALID
BURSTDET
IDDRDQSX1A
DQ7
D
DQSR90
DDRCLKPOL
SCLK
RST
DDR / DDR2 / LPDDR メ モ リ ラ イ ト の実装
DDR メ モ リ イ ン タ ーフ ェ イ ス の ラ イ ト 部分を実装す る には、 シ ン グルデー タ レー ト (SDR) の 2 本のデー タ
ス ト リ ーム を、 ク ロ ッ ク の両エ ッ ジ遷移時に合わせて多重化す る 必要があ り ます。 さ ら に、 DQS は メ モ リ ピ
ンに入力 さ れ る と き 、 デー タ (DQ) の中央にエ ッ ジがあ り 、 かつ差動出力 ク ロ ッ ク (CLKP / CLKN) のエ ッ
ジに揃っ てい る 必要があ り ま す。 こ れ ら の信号に加え、 ア ド レ ス / コ マ ン ド 及びデー タ マ ス ク (DM) 信号
を生成す る 必要があ り ます。 こ の イ ン タ ーフ ェ イ ス の生成には IPexpress を使用す る 必要があ り ます。
DQSW90 は、 専用 ク ロ ッ ク ツ リ ーを介 し て各 ODDRDQS セルに分配 さ れます。 SCLK の配線は必ずプ ラ イ マ
リ ・ ク ロ ッ ク ネ ッ ト の 1 本を使用す る 必要があ り ます。
DDR / DDR2 / LPDDR のラ イ ト デー タ (DQ) と ス ト ローブ (DQS) の生成
図 11-47 は ラ イ ト 動作での DQ / DQS 信号の生成を示 し ます。 DQS90 は SCLK を 90° 位相シ フ ト し た信号
です。 前述の よ う に、 DQS ではな く DQSW90 を使用 し て DQ を 90° 位相シ フ ト し ます。 DQ と DM の生成
には DQSW90 を使用 し 、 DQS の生成には SCLK を使用 し ます。 こ れに よ り DQS のエ ッ ジが DQ と DM の中
央に合わ さ れます。 DQS は DDR と LPDDR ではシ ン グルエン ド ですが、 DDR2 では差動にな り ます。
11-44
TN1203_01.7
MachXO2 デバイスにおける
高速イ ン タ ー フ ェ イ スの実装
図 11-47. DDR/DDR2/LPDDR ラ イ ト の実装
DQSDLLC
CLK
RST
UDDCNTLN
FREEZE
LOCK
DQSDEL
ODDRDQSX1A
DQSBUFH
DQSI
READ
READCLKSEL1
READCLKSEL0
SCLK
RST
DQSDEL
DQ
DQSW90
SCLK
D0
D1
RST
DDRCLKPOL
TDDRA
DQSR90
DQSW90
DATAVALID
BURSTDET
Q
X
X
DQSW90
SCLK
TD
RST
TQ
ODDRDQSX1A
Datatri
DQSW90
SCLK
D0
D1
RST
DMout0
DMout1
DM
Q
ODDRDQSX1A
dqsout
DQSW90
SCLK
D0
D1
RST
1’b0
Q
DQS
TDDRA
DQSW90
SCLK
TD
RST
dqstri
11-45
TQ
TN1203_01.7
MachXO2 デバイスにおける
高速イ ン タ ー フ ェ イ スの実装
DDR / DDR2 / LPDDR のラ イ ト ク ロ ッ ク 、 ア ド レ ス、 及び コ マ ン ド 生成
メ モ リ の ラ イ ト 動作は、 コ ン ト ロ ー ラ が SDRAM メ モ リ に対 し て差動 ク ロ ッ ク と ア ド レ ス、 及び コ マ ン ド を
生成す る 必要があ り ます。 ク ロ ッ ク は ODDRX (x1) プ リ ミ テ ィ ブ を使用 し て生成 さ れ、 その 2 入力を Low
と High に固定す る こ と で出力 ク ロ ッ ク を生成 し ま す。 DDR SDRAM メ モ リ と イ ン タ ーフ ェ イ ス す る 場合、
CLKP を SSTL25D I/O で接続す る 必要があ り ます。DDR2 メ モ リ と イ ン タ ーフ ェ イ スす る 場合は SSTL18D I/O
で接続 し 、 差動 ク ロ ッ ク 出力を生成す る 必要があ り ます。 LPDDR SDRAM メ モ リ と イ ン タ ーフ ェ イ スす る 場
合は、 CLKP を LVCMOS18 I/O で接続す る 必要があ り ます。 同様に CLKN を生成す る こ と で 2 信号間の ス
キ ュ ーを防止で き ます。
DDR / DDR2 / LPDDR SDRAM イ ン タ ーフ ェ イ ス のア ド レ ス と コ マ ン ド 信号は、 通常の出力レ ジ ス タ OREG
に よ り 生成 さ れます。 DQ / DQS と ク ロ ッ ク / ア ド レ ス、 及び コ マ ン ド 生成には、 同一の SCLK が使用 さ れ
ます。 SCLK の配線は、 必ずプ ラ イ マ リ ・ ク ロ ッ ク ネ ッ ト の 1 本を使用す る 必要があ り ます。
図 11-48. CLK と ア ド レ ス、 及びコ マン ド 制御ピ ンの生成
ODDRXE
1’b0
1’b1
Address
SCLK
Command
D0
D1
SCLK
RST
Q
OREG
D
Q
CLKp
CLKn
Address, Bank Address
CLK
OREG
D
Q
RASN, CASN, WEN
CLK
Control
OREG
D
Q
CSN, CKE, ODT
CLK
IPexpress を使用 し た DDR メ モ リ イ ン タ ーフ ェ イ ス の生成
上記の全ての DDR / DDR2 / LPDDR イ ン タ ーフ ェ イ ス のパ ラ メ ー タ 設定 と 生成には、 IPexpress ツールを使
用す る 必要があ り ます。 IPexpress の GUI では、 全 DDR メ モ リ モジ ュ ール Architecture Modules > IO に配置 さ
れてい ます。 図 11-49 に示す よ う に、 DDR_MEM を使用 し て DDR メ モ リ イ ン タ ーフ ェ イ ス を生成 し ます。
11-46
TN1203_01.7
MachXO2 デバイスにおける
高速イ ン タ ー フ ェ イ スの実装
図 11-49. IPexpress の メ イ ン ウ イ ン ド ウ
DDR_MEM モジ ュ ールには、 2 つの タ ブがあ り ます。 図 11-50 に示す Configuration タ ブ を使用 し て、 DDR や
DDR2、 及び LPDDR と それ ら に対応す る パ ラ メ ー タ を選択 し ます。
図 11-50. DDR_MEM の Configuration タ ブ
11-47
TN1203_01.7
MachXO2 デバイスにおける
高速イ ン タ ー フ ェ イ スの実装
表 11-11 に DDR_MEM の Configuration タ ブの GUI オプシ ョ ンの詳細を示 し ます。
表 11-11. DDR_MEM モジ ュール、 Configuration タ ブのオプシ ョ ン
オプ シ ョ ン
説明
値 ・ 範囲
デ フ ォル ト 値
Interface Type
イ ン タ ーフ ェ イ ス の タ イ プ
DDR, DDR2, LPDDR
DDR
I/O Buffer Configuration
各 イ ン タ ーフ ェ イ ス タ イ プの I/O 規格。 選択 し た
イ ン タ ーフ ェ イ ス に対応 し て自動的に設定 さ れ る
SSTL25_I, SSTL18_I,
LVCMOS18
SSTL25_I
DDR Frequency
DDR メ モ リ イ ン タ ーフ ェ イ ス の動作速度
DDR = 83-100MHz
DDR = 100 MHz
DDR2 = 125 - 150MHz DDR2 = 150 MHz
LPDDR = 0-133MHz LPDDR = 133 MHz
Number of DQS
利用可能な DQS グループ数
1, 2
2
Number of DQ for DQS
Group1 and DQS Group 2
DQS グループのデー タ 幅
1~8
8
DQS Buffer Configuration
for DDR2
DQS バ ッ フ ァ タ イ プ
シ ン グルエン ド 、 差
動
Single-ended
Data Width (calculated)
イ ン タ ーフ ェ イ ス のデー タ 幅
1-16
( 算出 )
Clock/Address/Command
本オプシ ョ ンがチ ェ ッ ク さ れ る と ク ロ ッ ク / ア ド
レ ス / コ マ ン ド ・ イ ン タ ーフ ェ イ ス が生成 さ れ る
Enabled, Disabled
Disabled
Data Mask
本オプシ ョ ンがチ ェ ッ ク さ れ る と 、 デー タ マ ス ク
信号が生成 さ れ る
Enabled, Disabled
Disabled
Lock/Jitter Sensitivity
DQSDLL の ロ ッ ク 感度ア ト リ ビ ュ ー ト 。 Low は
ジ ッ タ に対す る 感度が低い こ と を意味す る
High, Low
Low
ユーザが IPexpress を使用 し て ク ロ ッ ク / ア ド レ ス / コ マ ン ド 信号の生成を選択 し た場合、 Clock / Address /
Command タ ブの設定が有効にな り 、 必要に応 じ てセ ッ ト ア ッ プで き ます。
図 11-51. DDR_MEM の Clock/Address/Command タ ブ
11-48
TN1203_01.7
MachXO2 デバイスにおける
高速イ ン タ ー フ ェ イ スの実装
表 11-12. DDR_MEM モジ ュール、 Configuration タ ブのオプシ ョ ン
GUI オプ シ ョ ン
値 ・ 範囲
デフ ォル ト 値
Number of Clocks
DDR/DDR2: 1, 2LPDDR: 1
1
Number of Clock Enables
DDR/DDR2: 1, 2 LPDDR: 1
1
Address Width
DDR: 12 – 14 DDR2: 13 – 16 LPDDR: 12 -14 DDR: 13DDR2: 14LPDDR: 13
Bank Address Width
DDR: 2 DDR2: 2, 3 LPDDR: 2
DDR: 2 DDR2: 2 LPDDR: 2
Number of ODT
DDR: blank DDR2: 1, 2 LPDDR: blank
DDR: Blank DDR2: 1 LPDDR: Blank
Number of Chip Selects
DDR / DDR2: 1, 2 LPDDR: 1
DDR/DDR2: 1 LPDDR: 1
DDR メ モ リ の DQ / DQS の設計規則 と ガ イ ド ラ イ ン
以下に示すのは MachXO2-640U と MachXO2-1200/U、 及び こ れ よ り 大規模デバ イ ス におけ る 、 DDR メ モ リ
イ ン タ ーフ ェ イ ス実装に関す る い く つかの規則 と ガ イ ド ラ イ ンです。
• DDR メ モ リ の I/O ロ ジ ッ ク と DQS 回路は、 デバ イ ス の右辺バン ク で使用可能。 即ち DDR メ モ リ イ ン
タ ーフ ェ イ ス は、 デバ イ ス の右辺バン ク でのみ実装が可能
• デバ イ ス には 2 つの DQSDLL があ り 、 一方は左辺 と 下辺バン ク 用で、 他方は右辺 と 上辺バン ク 用。 DDR
メ モ リ イ ン タ ーフ ェ イ ス の実装には、 右辺 と 上辺バン ク 用のみが使用で き る
• DQSDLL に よ り 生成 さ れ る 遅延制御 コー ド は、 右辺バン ク の全 DDR メ モ リ 用 I/O ロ ジ ッ ク に適用 さ れ る
• DDR1 SDRAM イ ン タ ーフ ェ イ ス を実装す る 場合、 全ての イ ン タ ーフ ェ イ ス信号は SSTL25 I/O で接続す る
• DDR2 SDRAM イ ン タ ーフ ェ イ ス の場合、 信号を SSTL18 I/O で接続す る
• LPDDR SDRAM イ ン タ ーフ ェ イ ス の場合、 信号を LVCMOS18 で接続す る
• DDR メ モ リ イ ン タ ーフ ェ イ ス は全て差動 ク ロ ッ ク 信号が必要で、 メ モ リ イ ン タ ーフ ェ イ ス で指定 さ れた
差動 I/O で接続す る
• DDR2 に対す る 差動 DQS の使用はオプシ ョ ン。 差動の場合は SSTLD18 I/O で接続す る
DDR/DDR2/LPDDR の ピ ン配置ガ イ ド ラ イ ン
• DQS と DQ の関連にかんす る 規則に必ず従 う こ と
– DQS に関連す る 全ての DQ (8 ま たは 4 本) は同一の DQS-14 グループ内になければな ら ない
• デー タ マ ス ク (DM) は対応す る DQS-14 グループ内の一部であ る こ と が必要
– 例えば DM[0] は DQ[7:0] と DQS[0] のあ る DQS-14 グループ内にあ る こ と
• DQS は専用の DQS パ ッ ド に割 り 当てなければな ら ない
– 差動 DQS を選択す る 場合 DQSN パ ッ ド が使用 さ れ る
• SSTL18D を DQS パ ッ ド に適用す る 場合 DQSN パ ッ ド には信号を割 り 当てない こ と
– ソ フ ト ウ ェ アが自動的に DQS# を配置す る
• 出力生成に使用す る PLL への ク ロ ッ ク は正 し い専用 PLL ピ ンの入力に割 り 当てなければな ら ない
• DQS-14 グループに加え、 DDR メ モ リ イ ン タ ーフ ェ イ ス は通常、 メ モ リ 規模に応 じ て CLK / CLKN やア ド
レ ス、 コ マン ド ピ ン な ど、 こ れ以外に 20 ~ 24 ピ ンが必要。 デバ イ ス の右辺バン ク 以外の ピ ン を こ れ ら の
信号に使用で き る
• MachXO2 デバ イ ス フ ァ ミ リ は任意の I/O を Vref ピ ン と し て使用で き る 。 し か し DDR / DDR2 用の Vref は
DQS-14 グループの一部でなければな ら ない。 Vref ピ ンの割当て規則については、 TN1202 ”MachXO2
sysIO Usage Guide (MachXO2 sysIO 使用ガ イ ド ) ” を参照の こ と
11-49
TN1203_01.7
MachXO2 デバイスにおける
高速イ ン タ ー フ ェ イ スの実装
DDR ソ フ ト ウ ェ ア ・ プ リ ミ テ ィ ブ と ア ト リ ビ ュ ー ト
こ のセ ク シ ョ ンでは、 全ての汎用 DDR イ ン タ ーフ ェ イ ス と DDR メ モ リ イ ン タ ーフ ェ イ ス の実装に使用す る
ソ フ ト ウ ェ ア ・ プ リ ミ テ ィ ブについて説明 し ます。 プ リ ミ テ ィ ブは、 その使用法に従っ て分割 さ れます。 一
部は汎用 DDR イ ン タ ーフ ェ イ ス のみに使用 さ れ、 一部は DDR メ モ リ の DQS ロ ジ ッ ク に使用 さ れ、 ま たその
他は汎用 と メ モ リ イ ン タ ーフ ェ イ ス が制御機能を共有 し ます。最初に DDR 入力のプ リ ミ テ ィ ブについて説明
し 、 続いて DDR 出力のプ リ ミ テ ィ ブ を、 そ し て DDR 制御 ロ ジ ッ ク のプ リ ミ テ ィ ブについて説明 し ます。
表 11-13. MachXO2 DDR ソ フ ト ウ ェ ア ・ プ リ ミ テ ィ ブ
タ イプ
プリ ミティブ
IDDRXE
Data Input
Data Output
使用法
汎用 DDR x1
IDDRX2E
汎用 DDR x2
IDDRX4B
汎用 DDR x4
IDDR71A
汎用 DDR 7:1
IDDRDQSX1A
DDR メ モ リ
ODDRXE
汎用 DDR x1
ODDRX2E
汎用 DDR x2
ODDRX4B
汎用 DDR x4
ODDR71A
汎用 DDR 7:1
ODDRDQSX1A
DDR メ モ リ
DQS Tristate
TDDRA
DDR メ モ リ
DQSBUF Logic
DQSBUFH
DDR メ モ リ
DLL
DQSDLLC
汎用 x2、 x4、 及び DDR メ モ リ 用のマ ス タ DLL
DELAYD
汎用 x2、 x4 用の動的制御を備え る 遅延ブ ロ ッ ク
DELAYE
汎用 DDR x1、 x2、 x4 用の固定遅延を備え る 遅延ブ ロ ッ
ク
DLLDELC
汎用 DDR x2、 x4 用の ク ロ ッ ク ス レーブ遅延セル
Input Delay
入力 DDR プ リ ミ テ ィ ブ
入力 DDR プ リ ミ テ ィ ブは、 メ モ リ イ ン タ ーフ ェ イ ス か ら 入力 さ れ る GDDR デー タ と DDR デー タ の両方を捕
捉す る ために使用す る モジ ュ ールです。 GDDR イ ン タ ーフ ェ イ ス に対 し て様々なギ ア リ ン グ を実装す る DDR
入力レ ジ ス タ には、 い く つかのモー ド があ り ます。 メ モ リ DDR は、 GDDR プ リ ミ テ ィ ブ と は異な る プ リ ミ
テ ィ ブ を使用 し ます。 入力プ リ ミ テ ィ ブの全デー タ ポー ト で受信 さ れ る 最初のビ ッ ト は、 パ ラ レルデー タ の
Q0 です。
IDDRXE
こ のプ リ ミ テ ィ ブは入力レ ジ ス タ ブ ロ ッ ク を x1 ギ ア リ ン グモー ド で実装 し 、 MachXO2 デバ イ ス の全辺で使
用可能な、 汎用 DDR x1 イ ン タ ーフ ェ イ ス (ギ ア リ ン グ比 1:2) に対 し てのみ使用 さ れます。 こ のプ リ ミ テ ィ
ブでは全体で 1 本の ク ロ ッ ク ソ ース SCLK を使用す る ため、 ク ロ ッ ク ド メ イ ン転送はあ り ません。
図 11-52. IDDRXE シ ンボル
IDDRXE
Q0
Q1
D
SCLK
RST
こ のプ リ ミ テ ィ ブの内部レ ジ ス タ 構造は、 図 11-1 で示す基本 PIO セルに基づいてい ます。 初段の組は SCLK
の両エ ッ ジでデー タ を捕捉す る DDR レ ジ ス タ です。 次段の組は捕捉 し たデー タ を FPGA コ アに転送す る 同
期レ ジ ス タ です。
IDDRX2E
11-50
TN1203_01.7
MachXO2 デバイスにおける
高速イ ン タ ー フ ェ イ スの実装
こ のプ リ ミ テ ィ ブは入力レ ジ ス タ ブ ロ ッ ク を x2 ギ ア リ ン グモー ド で実装 し 、 MachXO2-640U と MachXO21200/U、 及び こ れ よ り 大規模デバ イ ス の下辺の汎用 DDR x2 イ ン タ ーフ ェ イ ス (ギ ア リ ン グ比 1:4) に対 し
てのみ使用 し ます。 こ の レ ジ ス タ は GDDR イ ン タ ーフ ェ イ ス でエ ッ ジ ク ロ ッ ク 配線を、 FPGA コ アでシ ス テ
ム ク ロ ッ ク を使用す る よ う に設計 さ れてい ます。 エ ッ ジ ク ロ ッ ク は ECLK ポー ト に接続 さ れ、 シ ス テ ム ク
ロ ッ ク は SCLK ポー ト に接続 さ れます。 本プ リ ミ テ ィ ブはデバ イ ス下辺の I/O セルの、 A/B ま たは C/D ペア
の両方に使用で き ます。
図 11-53. IDDRX2E シ ン ボル
IDDRX2E
D
ECLK
SCLK
RST
ALIGNWD
Q0
Q1
Q2
Q3
こ のプ リ ミ テ ィ ブの内部レ ジ ス タ 構造は、 図 11-3 の受信パ ス で示す よ う な ビデオ PIO セルに基づいてい ま
す。 初段の組は ECLK の両エ ッ ジでデー タ を捕捉す る DDR レ ジ ス タ です。 次段の組は ク ロ ッ ク ド メ イ ン転
送のためにデー タ を保持す る 同期レ ジ ス タ です。 第 3 段の組は ECLK か ら SCLK への ク ロ ッ ク ド メ イ ン転送
を行い ます。
IDDRX4B
こ のプ リ ミ テ ィ ブは入力レ ジ ス タ ブ ロ ッ ク を x4 ギ ア リ ン グモー ド で実装 し 、 MachXO2-640U と MachXO21200/U、 及び こ れ よ り 大規模デバ イ ス の下辺の汎用 DDR x4 イ ン タ ーフ ェ イ ス (ギ ア リ ン グ比 1:8) に対 し
てのみ使用 し ます。 こ の レ ジ ス タ は GDDR イ ン タ ーフ ェ イ ス でエ ッ ジ ク ロ ッ ク 配線を、 FPGA コ アでシ ス テ
ム ク ロ ッ ク を使用す る よ う に設計 さ れてい ます。 エ ッ ジ ク ロ ッ ク は ECLK ポー ト に接続 さ れ、 シ ス テ ム ク
ロ ッ ク は SCLK ポー ト に接続 さ れます。 こ のプ リ ミ テ ィ ブはデバ イ ス下辺の I/O セルの A/B ペアだけに使用
で き ます。
図 11-54. IDDRX4B シ ン ボル
IDDRX4B
D
ECLK
SCLK
RST
ALIGNWD
Q0
Q1
Q2
Q3
Q4
Q5
Q6
Q7
IDDRX4B の 1:8 ギ ア リ ン グは 2 つの 1:4 ギア リ ン グ を使用 し 、 IDDRX2E と 基本アーキ テ ク チ ャ を共有 し てい
ます。 こ のプ リ ミ テ ィ ブの内部レ ジ ス タ 構造は、 図 1c の受信パ ス で示すビデオ PIO セルに基づいてい ます。
初段の組は ECLK の両エ ッ ジでデー タ を捕捉す る DDR レ ジ ス タ です。 次段の組は ク ロ ッ ク ド メ イ ン転送の
ためにデー タ を保持す る 同期レ ジ ス タ です。 第 3 段の組は ECLK か ら SCLK への ク ロ ッ ク ド メ イ ン転送を行
い ます。
IDDRX71A
こ のプ リ ミ テ ィ ブは入力レ ジ ス タ ブ ロ ッ ク を 7:1 ギ ア リ ン グモー ド で実装 し 、 MachXO2-640U と MachXO21200/U、 及び こ れ よ り 大規模デバ イ ス下辺の、 汎用 DDR71 イ ン タ ーフ ェ イ ス (ギ ア リ ン グ比 1:7) に対 し て
のみ使用 し ます。 こ の レ ジ ス タ は GDDR イ ン タ ーフ ェ イ ス でエ ッ ジ ク ロ ッ ク 配線を、 FPGA コ アでシ ス テ ム
ク ロ ッ ク を使用す る よ う に設計 さ れてい ます。 エ ッ ジ ク ロ ッ ク は ECLK ポー ト に接続 さ れ、 シ ス テ ム ク ロ ッ
ク は SCLK ポー ト に接続 さ れます。 こ のプ リ ミ テ ィ ブは入力 x4 ギ ア リ ン グのプ リ ミ テ ィ ブ と 同様に、 デバ イ
ス下辺の PIO セルの A/B ペアだけに使用で き ます。
11-51
TN1203_01.7
MachXO2 デバイスにおける
高速イ ン タ ー フ ェ イ スの実装
図 11-55. IDDRX71A シ ン ボル
IDDRX71A
D
ECLK
SCLK
RST
ALIGNWD
Q0
Q1
Q2
Q3
Q4
Q5
Q6
IDDRX71A の 1:7 ギ ア リ ン グは、 IDDRX4B プ リ ミ テ ィ ブの 1:8 ギ ア リ ン グ と 同 じ アーキ テ ク チ ャ を共有 し ま
す。一度に選択す る のが 3 ビ ッ ト デー タ か 4 ビ ッ ト デー タ かは、内部制御信号に依存 し ます。 こ のプ リ ミ テ ィ
ブの内部レ ジ ス タ 構造は、 図 11-3 の受信パ ス で示すビデオ PIO セルに基づいてい ます。 初段の組は ECLK
の両エ ッ ジでデー タ を捕捉す る DDR レ ジ ス タ です。次段の組は ク ロ ッ ク ド メ イ ン転送のためにデー タ を保持
す る 同期レ ジ ス タ です。 第 3 段の組は ECLK か ら SCLK への ク ロ ッ ク ド メ イ ン転送を行い ます。
IDDRDQSX1A
こ のプ リ ミ テ ィ ブは DDR メ モ リ の入力バ ッ フ ァ で、 MachXO2-640U と MachXO2-1200/U、 及び こ れ よ り 大
規模デバ イ ス の右辺の、 DQ ま たは DQS 入力ピ ンに対 し てのみ使用で き ます。 こ のプ リ ミ テ ィ ブは 3 段の レ
ジ ス タ か ら 構成 さ れてお り 、 DDR レ ジ ス タ の初段は、 DQS 回路 (DQSBUF) で生成す る DQS ス ト ロ ーブ を
90° 位相シ フ ト し た DQSR90 信号の、 立ち上が り と 立ち下が り エ ッ ジで入力デー タ を捕捉 し ます。 捕捉 さ れ
た デ ー タ は そ の 後、 や は り DQSBUF で 生 成 さ れ て ク ロ ッ ク ド メ イ ン 転 送 を 保証 す る 役割 を 果 た す
DDRPOLCLK 信号の極性に対応 し て、 SCLK の立ち上が り エ ッ ジ ま たは立ち下が り エ ッ ジで次段の レ ジ ス タ
に転送 さ れます。。 信号は最終段の レ ジ ス タ で SCLK の立ち上が り エ ッ ジで再びサンプル さ れ、 フル ク ロ ッ ク
周期の転送を コ アに提供 し ます。
図 11-56. IDDRXQSX1A シ ン ボル
IDDRDQSX1A
D
DQSR90
DDRCLKPOL
SCLK
RST
Q0
Q1
こ のプ リ ミ テ ィ ブの内部レ ジ ス タ 構造は、図 11-2で示す よ う に メ モ リ PIOセルの入力パス に基づいてい ます。
出力 DDR プ リ ミ テ ィ ブ
出力 DDR プ リ ミ テ ィ ブは、 2 本のデー タ ス ト リ ーム を GDDR イ ン タ ーフ ェ イ ス ま たは DDR メ モ リ デバ イ ス
に出力す る ために多重化す る 、 出力 DDR モジ ュ ールです。 GDDR イ ン タ ーフ ェ イ ス に対 し て様々なギ ア リ ン
グ を実装す る DDR 出力レ ジ ス タ には、幾つかのモー ド があ り ます。 メ モ リ DDR 出力は、GDDR イ ン タ ーフ ェ
イ ス と は異な る プ リ ミ テ ィ ブ を使用 し ます。 出力プ リ ミ テ ィ ブの全デー タ ポー ト で送信 さ れ る 最初のビ ッ ト
は、 パ ラ レルデー タ の D0 です。
ODDRXE
こ のプ リ ミ テ ィ ブは出力レ ジ ス タ ブ ロ ッ ク を x1 ギ ア リ ン グモー ド で実装 し 、 MachXO2 デバ イ ス の全辺で使
用で き ます。こ のプ リ ミ テ ィ ブでは FPGA コ アか ら の 1 本のプ ラ イ マ リ ・ ク ロ ッ ク ソ ース SCLK を使用 し ます。
図 11-57. ODDRXE シ ン ボル
ODDRXE
Q
D0
D1
SCLK
RST
11-52
TN1203_01.7
MachXO2 デバイスにおける
高速イ ン タ ー フ ェ イ スの実装
こ のプ リ ミ テ ィ ブの内部レ ジ ス タ 構造は、 図 11-1 で示す基本 PIO セルに基づいてい ます。 SCLK を使用 し 、
2 ビ ッ ト ・ パ ラ レルデー タ を多重化 し てシ リ アル ・ デー タ ス ト リ ーム を生成 し ます。
ODDRX2E
こ のプ リ ミ テ ィ ブは出力レ ジ ス タ ブ ロ ッ ク を x2 ギ ア リ ン グモー ド で実装 し 、 MachXO2-640U と MachXO21200/U、 及び こ れ よ り 大規模デバ イ ス上辺の、 汎用 DDR x2 イ ン タ ーフ ェ イ ス (ギ ア リ ン グ比 4:1) に対 し
てのみ使用 さ れます。 こ の レ ジ ス タ は FPGA でシ ス テ ム ク ロ ッ ク を使用 し 、 DDR イ ン タ ーフ ェ イ ス でエ ッ ジ
ク ロ ッ ク を使用す る よ う に設計 さ れてい ます。 エ ッ ジ ク ロ ッ ク は ECLK ポー ト に接続 さ れ、 シ ス テ ム ク ロ ッ
ク は SCLK ポー ト に接続 さ れます。 こ のプ リ ミ テ ィ ブはデバ イ ス上辺の PIO セルの、A/B と C/D ペアの両方
で使用で き ます。
図 11-58. ODDRX2E シ ン ボル
ODDRX2E
D0
Q
D1
D2
D3
ECLK
SCLK
RST
こ のプ リ ミ テ ィ ブの内部レ ジ ス タ 構造は、 図 11-3 の送信パ ス で示すビデオ PIO セルに基づいてい ます。 パ
ラ レルデー タ はレ ジ ス タ 初段の組で SCLK に よ っ て取 り 込まれます。 各ア ッ プデー ト 時に、 パ ラ レルデー タ
が SCLK に よ り ク ロ ッ キ ン グ さ れ、 次段レ ジ ス タ の組で保持 さ れます。 第 3 段レ ジ ス タ 組の出力デー タ は
ECLK に よ り 多重化 さ れシ リ アルデー タ と し て出力 さ れます。
ODDRX4B
こ のプ リ ミ テ ィ ブは出力レ ジ ス タ ブ ロ ッ ク を x4 ギ ア リ ン グモー ド で実装 し 、 MachXO2-640U と MachXO21200/U、 及び こ れ よ り 大規模デバ イ ス上辺の、 汎用 DDR x4 イ ン タ ーフ ェ イ ス (ギ ア リ ン グ比 8:1) に対 し
てのみ使用 さ れます。 こ の レ ジ ス タ は FPGA でシ ス テ ム ク ロ ッ ク を使用 し 、 GDDR イ ン タ ーフ ェ イ ス でエ ッ
ジ ク ロ ッ ク を使用す る よ う に設計 さ れてい ます。 エ ッ ジ ク ロ ッ ク は ECLK ポー ト に接続 さ れ、 シ ス テ ム ク
ロ ッ ク は SCLK ポー ト に接続 さ れます。 こ のプ リ ミ テ ィ ブは、 デバ イ ス上辺の I/O セルの A/B ペアでのみ使
用で き ます。
図 11-59. ODDRX4B シ ン ボル
ODDRX4B
D0
D1
D2
D3
D4
D5
D6
D7
ECLK
SCLK
RST
Q
こ のプ リ ミ テ ィ ブの内部レ ジ ス タ 構造は、 図 11-3 の送信パ ス で示すビデオ PIO セルに基づいてい ます。 パ
ラ レ ルデー タ は レ ジ ス タ 初段の組で SCLK に よ り 取 り 込ま れ ま す。 各ア ッ プデー ト 時にパ ラ レ ルデー タ が
SCLK に よ り 取 り 込まれ、 次段レ ジ ス タ の組で保持 さ れます。 第 3 段レ ジ ス タ の組のデー タ は、 ECLK に よ
り 多重化 さ れシ リ アルデー タ と し て出力 さ れます。
ODDRX71A
こ のプ リ ミ テ ィ ブは、出力レ ジ ス タ ブ ロ ッ ク を 7:1 ギア リ ン グモー ド で実装 し 、MachXO2-640U と MachXO21200/U、 及び こ れ よ り 大規模デバ イ ス上辺の、 汎用 DDR71 イ ン タ ーフ ェ イ ス (ギ ア リ ン グ比 7:1) に対 し て
11-53
TN1203_01.7
MachXO2 デバイスにおける
高速イ ン タ ー フ ェ イ スの実装
のみ使用 さ れます。 こ の レ ジ ス タ は FPGA でシ ス テ ム ク ロ ッ ク を使用 し 、 GDDR イ ン タ ーフ ェ イ ス でエ ッ ジ
ク ロ ッ ク 配線を使用す る よ う に設計 さ れてい ます。 エ ッ ジ ク ロ ッ ク は ECLK ポー ト に接続 さ れ、 シ ス テ ム ク
ロ ッ ク は SCLK ポー ト に接続 さ れます。 こ のプ リ ミ テ ィ ブは、 デバ イ ス上辺の I/O セルの A/B ペアでのみ使
用で き ます。
図 11-60. ODDRX71A シ ン ボル
ODDRX71A
D0
D1
D2
D3
D4
D5
D6
ECLK
SCLK
RST
Q
ODDRX71A の 7:1 ギ ア リ ン グは、 ODDRX4B プ リ ミ テ ィ ブの 8:1 ギ ア リ ン グ と 同 じ アーキ テ ク チ ャ を共有 し
てい ます。 送信のために一度に選択す る のが 3 ビ ッ ト デー タ か 4 ビ ッ ト デー タ かは、 内部制御信号に依存 し
ます。 こ のプ リ ミ テ ィ ブの内部レ ジ ス タ 構造は、 図 11-3 の送信パ ス で示すビデオ PIO セルに基づいてい ま
す。 パ ラ レルデー タ は、 SCLK で初段レ ジ ス タ の組に取 り 込まれます。 各ア ッ プデー ト 時、 パ ラ レルデー タ
が SCLK で次段レ ジ ス タ の組で保持 さ れます。 第 3 段レ ジ ス タ の組のデー タ は、 ECLK に よ り 多重化 さ れシ
リ アルデー タ と し て出力 さ れます。
ODDRDQSX1A
こ のプ リ ミ テ ィ ブは DDR メ モ リ の出力バ ッ フ ァ で、 MachXO2-640U と MachXO2-1200/U、 及び こ れ よ り 大
規模デバ イ ス右辺の DQ ま たは DQS 出力ピ ンに対 し てのみ使用で き ます。 DQ 出力デー タ の場合、 パ ラ レル
デー タ はシ ス テ ム ク ロ ッ ク SCLK で こ のプ リ ミ テ ィ ブに取 り 込まれます。捕捉 さ れたデー タ は、SCLK を DQS
回路 (DQSBUF) で 90° 位相シ フ ト し た DQSW90 信号に よ り 多重化 さ れ、 ピ ンに出力 さ れます。 DQS 出力
の場合 も 同 じ 出力バ ッ フ ァ ・ アーキ テ ク チ ャ を共有 し ますが、 DQ と は異な り ク ロ ッ ク は SCLK に よ り 制御
さ れ、 DQS は 90° 位相シ フ ト し ません。 こ れに よ り 送信時に DQS が DQ の中央にア ラ イ ン さ れます。
図 11-61. ODDRDQSX1A シ ン ボル
ODDRDQSX1A
Q
DQSW90
SCLK
D0
D1
RST
こ のプ リ ミ テ ィ ブの内部レ ジ ス タ 構造は、 図 11-2 で示す メ モ リ PIO セルの出力パス に基づ き ます。
TDDRA
こ れは MachXO2-640U と MachXO2-1200/U、 及び こ れ よ り 大規模デバ イ ス の右辺で DQ ま たは DQS ピ ンに
対 し て使用 さ れ る 、 特別な ト ラ イ ス テー ト ・ プ リ ミ テ ィ ブです。 こ の レ ジ ス タ 構造は、 図 11-2 の メ モ リ PIO
セルの ト ラ イ ス テー ト ・ レ ジ ス タ ブ ロ ッ ク に示 さ れてい ます。
図 11-62. TDDRA シ ン ボル
TDDRA
TQ
DQSW90
SCLK
TD
RST
11-54
TN1203_01.7
MachXO2 デバイスにおける
高速イ ン タ ー フ ェ イ スの実装
こ の コ ン ポーネ ン ト を DQ ピ ンに対 し て使用す る 場合、 DQSW90 ポー ト は DQSBUF コ ン ポーネ ン ト か ら の
DQSW90 信号で ド ラ イ ブ さ れ る 必要があ り ます。 DQS に対 し て使用す る 場合は、 DQSW90 ポー ト は SCLK で
ド ラ イ ブ さ れ る 必要があ り ます。 こ のプ リ ミ テ ィ ブは、 表に記載 さ れてい る ア ト リ ビ ュ ー ト (属性) があ り 、
DDR の メ モ リ ラ イ ト 時に DQS を DQ デー タ の中央に確実にア ラ イ ン さ せます。
表 11-14. TDDRA ア ト リ ビ ュー ト
ア ト リ ビ ュー ト
DQSW90_INVERT
説明
DQS ピ ンに対す る TDDRA の ク ロ ッ ク 極性を選択
す る 。 DDR ラ イ ト 時に DQS に対 し てのみ使用
値
ソ フ ト ウェア ・ デ
フ ォル ト
ENABLED,
DISABLED
DISABLED
(和訳版注 : 英語オ リ ジナルでは本表 と 異な る が こ れは誤 り 。 次改訂版では本表の よ う に更新予定)
DDR 制御 ロ ジ ッ ク ・ プ リ ミ テ ィ ブ
以下に説明す る DDR プ リ ミ テ ィ ブには DLL と DQS 回路、 及び遅延エ レ メ ン ト が含まれます。 DLL は GDDR
と DDR メ モ リ で共有 し てい ます。 DQS 回路は DDR メ モ リ に対 し てのみ使用 さ れ、 遅延エ レ メ ン ト はデー タ
パ ス ま たは ク ロ ッ ク ス レーブ遅延パ ス用です。
DQSBUFH
こ のプ リ ミ テ ィ ブは DDR メ モ リ イ ン タ ーフ ェ イ ス で使用す る DQS 回路です。DDR メ モ リ の リ ー ド / ラ イ ト
動作のために DQS を位相シ フ ト し ます。 こ のプ リ ミ テ ィ ブはプ リ ア ンブル及びポ ス ト ア ンブル検出、 デー タ
有効 (Data Valid) 検出、 及び DDR メ モ リ イ ン タ ーフ ェ イ ス のアプ リ ケーシ ョ ンに必要な多 く の機能を提供
し ます。
図 11-63. DQSBUFH シ ン ボル
DQSBUFH
DQSI
READ
READCLKSEL1
READCLKSEL0
SCLK
RST
DQSDEL
DDRCLKPOL
DQSR90
DQSW90
DATAVALID
BURSTDET
表 11-15. DQSBUFH 信号
信号
I/O
説明
DQSI
I
ピ ンか ら の DQS 信号
READ
I
FPGA ロ ジ ッ ク か ら の DDR リ ー ド モー ド 信号
READCLKSEL1,
READCLKSEL0
I
READ パル ス の位置制御に関す る READ ク ロ ッ ク ソ ース と 極性制御を T/4 精度で選択す
る 。 4 つの位置 と は、 SCLK ま たは DQSW90 のそれぞれ立ち上が り / 立ち下が り エ ッ ジ。
信号は FPGA ロ ジ ッ ク か ら 入力 さ れ る
SCLK
I
システム ク ロ ッ ク
RST
I
こ のブ ロ ッ ク の リ セ ッ ト 信号
DQSDEL
I
DQSDLLC か ら の DQS ス レーブ遅延制御
DDRCLKPOL
O
SCLK の極性制御
DQSR90
O
90° 位相シ フ ト し た DQS 出力
DQSW90
O
90° 位相シ フ ト し た SCLK 出力
DATAVALID
O
リ ー ド モー ド のデー タ 有効信号
BURSTDET
O
バース ト 検出信号
図 11-64 は DQSBUFH プ リ ミ テ ィ ブ内の機能ブ ロ ッ ク 概要です。
11-55
TN1203_01.7
MachXO2 デバイスにおける
高速イ ン タ ー フ ェ イ スの実装
図 11-64. DQSBUFH ブ ロ ッ ク 図
DQS_Clean
DQSI
Pre-amble and
Post-amble
Management
READ
POL Signal
DDRCLKPOL
READ_CLK_SEL[1:0]
READ Phase Shift
DQSR90
DQSW90
DQS Pulse Counter
BURSTDET
Data Valid Logic
DATAVALID
Write Phase Shift
DQSW90
DQSR90
SCLK
DLLDEL
DQSBUFH
DQS_Clean はデジ タ ル的に生成 さ れた DQS 信号で、 下流 ロ ジ ッ ク 用にグ リ ッ チを除去 し た DQSI 信号です。
READCLKSEL 信号はユーザ ロ ジ ッ ク に よ り ド ラ イ ブ さ れ る 、DDR メ モ リ コ ン ト ロ ー ラ IP の一部です。SCLK
と DQSW90 信号間の 4 つの位相の 1 つを選択 し 、 リ ー ド プ ロ セ ス を開始 し ます。
DDR ク ロ ッ ク 極性 (DDRCLKPOL) 信号は、 最初の DQS 遷移時に SCLK の位相に基づいて生成 さ れます。
SCLK が High の と き に DQS 遷移が発生す る と 、 DDRCLKPOL が High にな り 、 SCLK の立ち上が り エ ッ ジで
デー タ を FPGA コ アに出力 し ます。 その他の場合は DDRCLKPOL は Low にな り 、 SCLK の立ち下が り エ ッ ジ
でデー タ を FPGA コ アに出力 し ます。
DQSR90 は、 DQSDLL か ら の DQSDEL 遅延制御 コ ー ド に基づ き 、 DQS_Clean 信号を 90° 位相シ フ ト し た信
号です。 こ の信号は DQSR90 ツ リ ーに分配 さ れて DDR メ モ リ に入力す る 全 DQ デー タ で使用 さ れ、 リ ー ド
動作時に入力デー タ を取 り 込む ク ロ ッ ク と な り ます。 DQSW90 は SCLK 信号を 90° 位相シ フ ト し た信号で
す。 こ れは選択信号 と し て使用 さ れ、 ラ イ ト 動作時に出力デー タ を シ リ ア ラ イ ズ し ま す。 ラ イ ト 動作時に
DQS バ ッ フ ァ は DQ デー タ と 90° の位相差があ り ます。
DDR メ モ リ の リ ー ド 動作では、BURSTDET を使用 し て リ ー ド プ ロ セ ス の開始時に READ パルス の位置を最適
化 し ます。 ト レーニ ン グプ ロ セ ス では、 起動時に少な く と も 4 バース ト 長 (BL) が必要です。 こ れを実現す
る のは、 2 連続の BL2 (BL=2) か偶数個の BL2、 任意個の BL4 (BL=4)、 ま たは こ れ よ り 長いです。 ま た リ ー
ド 動作中には、BURSTDET 信号を用いて READ パルス位置を定期的にキ ャ リ ブ レーシ ョ ン し ます。DDR メ モ
リ コ ン ト ロ ー ラ IP は、 必要な ス テ ッ プで BURSTDET 信号を モニ タ リ ン グ し 、 最適な READ パルス の位置を
検出 し ます。
DQSBUF ブ ロ ッ ク への READ 信号は、DDR メ モ リ コ ン ト ロ ー ラ IP か ら 生成 さ れます。READ コ マ ン ド は DDRSDRAM を制御 し た後 High にな り ます。こ れは通常 1 サ イ ク ルだけ DQS プ リ ア ンブルに先行す る 必要があ り
ますが、前回の リ ー ド サ イ ク ルの ト レー リ ン グ ビ ッ ト に重な る こ と も あ り ます。READ 信号を使用 し て、図 1165 のグ レー部分で内部信号の DQS_ena を ア ク テ ィ ブに し ます。す る と BURSTDET が High にな り 、DQS_Clean
信号がア ク テ ィ ブにな り ます。 READ 信号はバース ト 長期間を維持す る 必要があ り ます。
11-56
TN1203_01.7
MachXO2 デバイスにおける
高速イ ン タ ー フ ェ イ スの実装
図 11-65. READ パルス位置の最適化
DQS (amalog)
DQSI (digital)
READ
DQS_ena
DQS_Clean
BURSTDET
DQSDLLC
DQSDLLC はオンチ ッ プ DLL で、DQS 信号に必要な 90° 位相シ フ ト を生成 し ます。DDR 実装には DQSDLLC
を 1 つだけ使用 し ます。 こ の DLL に対す る 入力 ク ロ ッ ク は DDR イ ン タ ーフ ェ イ ス と 同 じ 周波数にす る 必要
があ り ます。 DQSDLLC は こ の ク ロ ッ ク 周波数に基づ き 遅延を生成 し 、 こ のブ ロ ッ ク への制御入力を ア ッ プ
デー ト し ます。 こ のア ッ プデー ト 制御 (UDDCNTLN) 入力がアサー ト さ れ る と 、 DQSDLLC は DQS 遅延ブ
ロ ッ ク に対す る 動的遅延制御 コ ー ド (DQSDEL) を ア ッ プデー ト し ます。 こ れ以外の場合ア ッ プデー ト はホー
ル ド 状態です。 UDDCNTLN に対す る Low ア ク テ ィ ブ信号が、 DQS 位相ア ラ イ メ ン ト を ア ッ プデー ト し ます。
図 11-66. DQSDLLC シ ン ボル
DQSDLLC
LOCK
DQSDEL
CLK
RST
UDDCNTLN
FREEZE
表 11-16. DQSDLLC 信号
信号
I/O
説明
CLK
I
DLL への入力 ク ロ ッ ク 、 DDR イ ン タ ーフ ェ イ ス と 同 じ 周波数
RST
I
DLL リ セ ッ ト 制御
UDDCNTLN
I
調整に先立つ遅延 コ ー ド の制御を ア ッ プデー ト か維持す る 。 Low ア ク テ ィ ブ信号で遅延
コ ー ド を ア ッ プデー ト す る
FREEZE
I
DLL の入力 CLK を フ リ ーズ ま たは リ リ ースす る
LOCK
O
DLL ロ ッ ク 信号
DQSDEL
O
ス レーブ遅延セルへの DLL 遅延制御 コ ー ド 。 DQSBUFH エ レ メ ン ト の DQSDEL に接続す
る
DQS の遅延は、UDDCNTLN 入力を使用す る こ と で PVT バ ラ つ き に対 し て ア ッ プデー ト で き ます。UDDCNTLN
を Low にす る こ と で、 バ ラ つ き が予測 さ れ る と き DQSDEL を ア ッ プデー ト で き ます。 DDR メ モ リ の リ ー ド
ま たは ラ イ ト 動作中以外はいつで も ア ッ プデー ト で き ます。
こ の コ ン ポーネ ン ト の FREEZE 入力ポー ト を使用 し て、 DLL を フ リ ーズ ま たは リ リ ース し ます。 FREEZE が
High にな る と デバ イ ス は DLL を フ リ ーズ し て、 遅延 コ ー ド が保持 さ れ る 間の節電を し ます。 FREEZE が Low
にな る と DLL を解放 し て動作を再開 し ます。 ク ロ ッ ク を停止す る 前に、 DQSDLLC に必ず FREEZE を与え な
ければな り ません。
11-57
TN1203_01.7
MachXO2 デバイスにおける
高速イ ン タ ー フ ェ イ スの実装
DLL への入力基準 ク ロ ッ ク の周波数に基づいて、 DLL はデフ ォ ル ト では DQS ス ト ロ ーブの 90° 位相シ フ ト
信号を生成 し ます。 ユーザは LOCK_SENSITIVITY ア ト リ ビ ュ ー ト を用い る こ と で、 ジ ッ タ に対す る 感度を制
御で き ます。 Lock_sensitivity の HIGH はジ ッ タ に対す る 感度が高い こ と を意味 し ますが、 LOW にプ ロ グ ラ ム
す る こ と を推奨 し ます。
DQSDLLC は最大 400MHz ま での幅広い周波数に対応 し ます。 こ のプ リ ミ テ ィ ブに関す る FIN ア ト リ ビ ュ ー
ト に よ り 、 ユーザは DLL 周波数を設定で き ます。 周波数が非常に低い場合、 DLL ロ ッ ク プ ロ セ ス をバ イ パ ス
で き 、 その目的のためにア ト リ ビ ュ ー ト の FORCE_MAX_DELAY を使用で き ます。 セ ッ ト さ れた場合、 DLL
は ロ ッ ク プ ロ セ ス に入 る こ と な く 、最大遅延 (maximum delay) ス テ ッ プに ロ ッ ク し ます。FORCE_MAX_DELAY
ア ト リ ビ ュ ー ト の効果は、 シ ミ ュ レーシ ョ ンモデルには反映 さ れていな く 、常に 90° 位相シ フ ト 動作 し ます
ので留意 し て く だ さ い。 FORCE_MAX_DELAY が有効な周波数範囲については MachXO2 フ ァ ミ リ デー タ シー
ト を参照 し て く だ さ い。
表 11-17. DQSDLLC のア ト リ ビ ュー ト
ア ト リ ビ ュー ト
説明
値
ソフ ト ウェア ・
デフ ォ ル ト
100 MHz
LOCK_SENSITIVITY
ジ ッ タ 感度
HIGH, LOW
FIN
DLL の入力 ク ロ ッ ク 周波数
DLL がサポー ト す る 範囲
FORCE_MAX_DELAY
低周波数での DLL ロ ッ ク 手順をバ イ パ ス し 、
最大遅延設定値を セ ッ ト す る
YES, NO
LOW
NO
DELAYE
DDR レ ジ ス タ への入力デー タ は、 遅延ブ ロ ッ ク DELAYE に よ り オプシ ョ ン的に遅延で き ます。 32 タ ッ プの
DELAYE ブ ロ ッ ク は、 ク ロ ッ ク 注入遅延時間を補正す る ために用い ら れ ま す。 遅延量はア ト リ ビ ュ ー ト の
DEL_MODE に よ っ て、 実装す る イ ン タ ーフ ェ イ ス ・ タ イ プに基づいて ソ フ ト ウ ェ アが決定 し ま す。 ユーザ
は、 ブ ロ ッ ク に対 し て USER_DEFINED モー ド を選択す る こ と で遅延値を設定で き ます。 こ のモー ド ではユー
ザが手動で遅延ス テ ッ プ を セ ッ ト す る 必要があ り ます。 各ス テ ッ プご と の遅延は約 105ps です。 全ての汎用
DDR イ ン タ ーフ ェ イ ス に対 し ては PREDEFINED モー ド を使用す る こ と を推奨 し ます。何 ら かの イ ン タ ーフ ェ
イ ス に対 し て正 し く ないア ト リ ビ ュ ー ト 値を設定す る と 、 DELAYE 設定値が不正にな り 、 DDR イ ン タ ーフ ェ
イ ス の性能が最適にな り ません。 DELAYE ブ ロ ッ ク は DDR イ ン タ ーフ ェ イ ス の受信モー ド に適用 さ れます。
MachXO2 デバ イ ス全辺の全ての入力レ ジ ス タ パ ス で利用で き ます。
図 11-67. DELAYE シ ン ボル
DELAYE
A
Z
表 11-18. DELAYE 信号
信号
I/O
説明
A
I
sys I/O バ ッ フ ァ か ら の DDR 入力
Z
O
遅延を と も な う 出力
表 11-19. DELAYE ア ト リ ビ ュー ト
ア ト リ ビ ュー ト
説明
値
ソフ ト ウェア ・
デフ ォ ル ト
DEL_MODE
SCLK_ZEROHOLD
ECLK_ALIGNED
イ ン タ ーフ ェ イ ス及びユーザ指定の遅延値に依存 ECLK_CENTERED
す る 固定値
SCLK_ALIGNED
SCLK_CENTERED
USER_DEFINED
USER_DEFINED
DEL_VALUE
ユーザ定義の値
DELAY0
DELAY0…DELAY31
11-58
TN1203_01.7
MachXO2 デバイスにおける
高速イ ン タ ー フ ェ イ スの実装
表 11-20. GDDR イ ン タ ーフ ェ イ ス に対応する DEL_MODE 値
イ ン タ ー フ ェ イ ス名
DEL_MODE 値
GIREG_RX.SCLK
SCLK_ZERHOLD
GDDRX1_RX.SCLK.Aligned
SCLK_ALIGNED
GDDRX1_RX.SCLK.Centered
SCLK_CENTERED
GDDRX2_RX.ECLK.Aligned
ECLK_ALIGNED
GDDRX2_RX.ECLK.Centered
ECLK_CENTERED
GDDRX4_RX.ECLK.Aligned
ECLK_ALIGNED
GDDRX4_RX.ECLK.Centered
ECLK_CENTERED
GDDRX71_RX.ECLK.71
Bypass
GOREG_TX.SCLK
N/A
GDDRX1_TX.SCLK.Centered
N/A
GDDRX1_TX.SCLK.Aligned
N/A
GDDRX2_TX.ECLK.Aligned
N/A
GDDRX2_TX.ECLK.Centered
N/A
GDDRX4_TX.ECLK.ALIGNED
N/A
GDDRX4_TX.ECLK.CENTERED
N/A
GDDRX_TX.ECLK.7:1
N/A
DELAYD
MachXO2-640U と MachXO2-1200/U、 及び こ れ よ り 大規模デバ イ ス の下辺で、 DDR レ ジ ス タ への入力デー タ
は DELAYD ブ ロ ッ ク に よ っ て 遅延す る こ と も で き ま す。 デバ イ ス が動作す る 時に遅延値が決定 さ れ る
DELAYE ブ ロ ッ ク と 異な り 、DELAYD ブ ロ ッ ク はユーザがデバ イ ス動作中で も デー タ 遅延量を制御で き ます。
こ のブ ロ ッ ク は 5 ビ ッ ト (32 タ ッ プ) 遅延制御を受け と り 、 ユーザ ロ ジ ッ ク が遅延ポー ト を介 し て動的に制
御 し ます。 各ス テ ッ プご と の遅延は約 105ps です。
図 11-68. DELAYD シ ン ボル
DELAYD
Z
A
DEL4
DEL3
DEL2
DEL1
DEL0
表 11-21. DELAYD 信号
信号
I/O
説明
A
I
I/O バ ッ フ ァ か ら のデー タ 入力
DEL4, DEL3, DEL2, DEL1, DEL0
I
FPGA ロ ジ ッ ク か ら の動的遅延入力ポー ト
Z
O
遅延を と も な う 出力
11-59
TN1203_01.7
MachXO2 デバイスにおける
高速イ ン タ ー フ ェ イ スの実装
DLLDELC
こ れは ク ロ ッ ク ス レーブ遅延セルで、全ての受信ア ラ イ ン ・ イ ン タ ーフ ェ イ ス において 90° 遅延信号を生成
し 、 遅延は DQSDLLC エ レ メ ン ト の入力 ク ロ ッ ク に基づいて算出 さ れます。 必要な遅延量は、 DQSDLLC に
よ っ て生成 さ れ る 遅延制御 コ ー ド DQSDEL に基づ き ます。
図 11-69. DLLDELC シ ン ボル
DLLDELC
CLKO
CLKI
DQSDEL
表 11-22. DLLDELC 信号
信号
I/O
説明
CLKI
I
I/O バ ッ フ ァ か ら のデー タ 入力
DQSDEL
I
DQSDLLC か ら の動的遅延入力
CLKO
O
遅延を と も な う 出力
テ ク ニ カルサポー ト 支援
e-mail: [email protected]
イ ン タ ーネ ッ ト : www.latticesemi.com
日本語版改訂履歴
日付
バージ ョ ン 該当新ページ
改訂内容
2010 年 11 月
01.0
-
初版
2011 年 1 月
01.1
-
超多ピ ン (ultra-high, “U”) デバ イ ス を更新
2011 年 4 月
01.2
-
IPexpress モジ ュ ールの信号名 と タ イ ミ ン グ情報を追記
2011 年 8 月
01.3
-
[1] 図 11-44 差 し 替え
[2] 英語オ リ ジナルでは 1200-R1 デバ イ ス に関す る 注記が追加 さ れ
てい る が、 日本語版では省略 し た
2013 年 4 月
01.5
-
(EN:ver.1.4) 会社 ロ ゴ更新、 ス テー タ ス更新 (Preliminary-> 正規)
11-61
11-61, 63
2014 年 1 月
1.7
11-24
11-28, 30
11-33
表 11-17、 FORCE_MAX_DELAY の記述を追加
DELAYE, DELAYD 節、 遅延 タ ッ プ 105ps の追記
表 11-3 複数の信号について記述を追記
表 11-5、 表 11-6、 ク ロ ッ ク 周波数範囲の値を更新
リ セ ッ ト 同期化要件の節、 第二パ ラ グ ラ フ記述を更新
11-60
TN1203_01.7