TN1205 - Lattice Semiconductor
TN1205 - Lattice Semiconductor
TN1205 - Lattice Semiconductor
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
2011 年 9 月 テ ク ニ カル ノ ー ト <strong>TN1205</strong><br />
はじめに<br />
MachXO2 PLD フ ァ ミ リ は高性能で低消費電力の PLD フ ァ ブ リ ッ ク と 、 ハー ド マ ク ロ化制御機能、 及びオ<br />
ンチ ッ プ ・ ユーザフ ラ ッ シ ュ メ モ リ を集積し ています。 ハー ド マ ク ロ制御機能に よ り デザ イ ンの実装が容易<br />
にな り 、 LUT やレ ジ ス タ、 ク ロ ッ ク 、 及び配線な どの汎用 リ ソ ース使用が節約さ れます。 ハー ド マ ク ロ制御<br />
機能は物理的には EFB (Embedded Function Block、 組み込み機能ブ ロ ッ ク) 内にあ り ます。 全 MachXO2 デ<br />
バイ スに EFB モジ ュールが集積 さ れていて、 次の制御機能が含まれます。<br />
• 2 個の I 2 Cコア<br />
• 1 個の SPI コア<br />
• 1 個の 16 ビッ ト タイマ / カウンタ<br />
• PLL設定のダイナミ ッ ク ・ コンフィグレーショ ンへのインターフェイス<br />
• コンフィグレーシ ョ ン ・ ロジッ クへのインターフェイス<br />
• オンチップ ・ パワーコン ト ローラへのインターフェイス<br />
• ユーザフ ラ ッ シ ュ メ モ リ (UFM) ~ MachXO256 を除 く<br />
UFM はオンチ ッ プ ・ フ ラ ッ シ ュ メ モ リ 内にあ る別個のフ ラ ッ シ ュ セ ク タ で、 ページ単位で編成さ れてお<br />
り 、 各ページは 128 ビ ッ ト (16 バ イ ト ) です。 表 9-1 にビ ッ ト 、 バイ ト 及びページで表し た、 各デバ イ ス<br />
における UFM リ ソースサイ ズを示し ます。<br />
表 9-1. MachXO2 デバ イ スの UFM リ ソース<br />
MachXO2-<br />
256<br />
MachXO2-<br />
640<br />
MachXO2-<br />
640U<br />
MachXO2 デバイスのユーザフラッシュ<br />
メモリとハードマクロ制御機能の使用<br />
ガイド<br />
MachXO2-<br />
1200<br />
MachXO2-<br />
1200U<br />
MachXO2-<br />
2000<br />
MachXO2-<br />
2000U<br />
SPI や I 2 C、JTAG、EFB またはWISHBONE インターフェイスを使用して、コンフィグレーションロジック・<br />
イ ン ターフ ェ イ ス を介し て UFM にア ク セ スで き ます。<br />
図 9-1 に EFB アーキテ ク チャ及び PLD コ ア ロ ジ ッ ク と の イ ン ターフ ェ イ ス を示し ます。<br />
MachXO2-<br />
4000<br />
MachXO2-<br />
7000<br />
UFM ビ ッ ト 数 0 24,448 65,408 65,408 81,792 81,792 98,176 98,176 261,888<br />
UFM バイ ト 数 0 3,056 8,176 8,176 10,224 10,224 12,272 12,272 32,736<br />
UFM ページ数 0 191 511 511 639 639 767 767 2046<br />
© 2011 <strong>Lattice</strong> <strong>Semiconductor</strong> Corp. All <strong>Lattice</strong> trademarks, registered trademarks, patents, and disclaimers are as listed at www.latticesemi.com/legal. All other brand or product<br />
names are trademarks or registered trademarks of their respective holders. The specifications and information herein are subject to change without notice. (日本語版は日本語に<br />
よ る理解のため一助 と し て提供し ています。 その作成にあたっては可能な限 り 正確を期し てお り ますが、 原文英語版 と の不一致や不適切な訳文があ る場合を含み、<br />
註記がない限 り 英語版が正 (有効) です。 特に電気的特性 ・ 仕様値係わる事項については最新版の英語版を必ず参照する よ う にお願い致し ます。)<br />
www.latticesemi.com 9-1 tn1205J_02.3
MachXO2 デバイスのユーザフ ラ ッ シ ュ メ モ リ と<br />
ラ テ ィ スセ ミ コ ンダ ク タ ー ハー ド マ ク ロ化制御機能の使用ガ イ ド<br />
図 9-1. EFB (組み込み機能ブ ロ ッ ク<br />
Core Logic and Routing<br />
PLL0<br />
Registers<br />
EFB<br />
EFB<br />
WISHBONE<br />
Interface<br />
Embedded Functional Block (EFB)<br />
PLL1<br />
Registers<br />
Configuration<br />
Logic<br />
EFB に含まれる マ ク ロ に よ って、こ れら の同一機能を ラ テ ィ ス参照デザ イ ン を用いて PLD ロ ジ ッ ク に実装し<br />
た場合に比べて、 最大 500 LUT を節約可能です。<br />
EFB モジ ュールは設計ソ フ ト ウ ェ アではプ リ ミ テ ィ ブ と し て表現されますが、 こ れ ら について本書で説明し<br />
ます。 IPexpress TM を用いてハー ド マ ク ロ IP 機能のパ ラ メ ータ を設定し、 そ し て EFB プ リ ミ テ ィ ブを生成で<br />
き ます。 IP は Verilog HDL ま たは VHDL のモジ ュール と し て生成さ れ、 設計プ ロ ジ ェ ク ト 内で イ ン ス タ ン ス<br />
化します。<br />
ハー ド マ ク ロ化 WISHBONE バス イ ン ターフ ェ イ ス<br />
MachXO2 の WISHBONE バスは OpenCores 標準に準拠し ています。 こ のバスに よ って、 PLD コ ア ロ ジ ッ ク 及<br />
び EFB 機能ブ ロ ッ ク 間 と 、 個々の EFB 機能ブ ロ ッ ク間が接続 さ れます。 ユーザは、 EFB WISHBONE ス レー<br />
ブ ・ イ ン ターフ ェ イ ス と 通信する、 独自の WISHBONE マ ス タ ・ イ ン ターフ ェ イ ス を実装する こ と も、<br />
<strong>Lattice</strong>Mico8 ソ フ ト プ ロ セ ッ サ コ ア を使用し て EFB WISHBONE と 通信する こ と も で き ます。<br />
図 9-2 のブ ロ ッ ク図は、 PLD コ ア及び EFB 間で使用 さ れる WISHBONE バス信号を示し、 表 9-2 に各信号の<br />
詳細な定義を示し ます。<br />
9-2<br />
I 2C Primary Core<br />
I 2 C Sec. Core<br />
SPI Core<br />
Power<br />
Control<br />
Timer-Counter<br />
UFM-Configuration<br />
I 2C Specific I/O<br />
(Primary)<br />
General Purpose I/O<br />
(Secondary)<br />
SPI Specific I/O<br />
General Purpose I/O
MachXO2 デバイスのユーザフ ラ ッ シ ュ メ モ リ と<br />
ラ テ ィ スセ ミ コ ンダ ク タ ー ハー ド マ ク ロ化制御機能の使用ガ イ ド<br />
図 9-2. PLD コ ア と EFB モジ ュール間の WISHBONE バス イ ン ターフ ェ イ ス<br />
MachXO2<br />
PLD Core WISHBONE Master<br />
表 9-2. EFB モジ ュールの WISHBONE ス レーブ ・ イ ン ターフ ェ イ ス信号<br />
信号名 I/O ビ ッ ト 幅 記 述<br />
wb_clk_i 入力 1<br />
wb_rst_i 入力 1<br />
wb_cyc_i 入力 1<br />
wb_stb_i 入力 1<br />
wb_we_i 入力 1<br />
wb_adr_i 入力 8<br />
wb_dat_i 入力 8<br />
wb_dat_o 出力 8<br />
wb_ack_o 出力 1<br />
wb_clk_i<br />
wb_rst_i<br />
wb_cyc_i<br />
wb_stb_i<br />
wb_we_i<br />
wb_adr_i [7:0]<br />
wb_dat_i [7:0]<br />
wb_dat_o [7:0]<br />
wb_ack_o<br />
PLL0<br />
Registers<br />
立ち上 り エ ッ ジ有効のク ロ ッ ク で、 EFB モジュール内の WISHBONE イ ン ターフ ェ<br />
イ ス ・ レ ジ ス タ、 及びハー ド マ ク ロ機能に よ って使用さ れる。 ク ロ ッ ク 速度は最<br />
速 133 MHz まで対応<br />
ア ク テ ィ ブ High の同期 リ セ ッ ト 信号。 WISHBONE イ ン タ フ ェース ・ ロ ジ ッ ク の<br />
みを リ セ ッ ト する。 こ の信号はいかな る レ ジ ス タ の値に も影響し ない。 進行中の<br />
バス ト ラ ンザ ク シ ョ ンにのみ影響する<br />
WISHBONE マス タ に よ ってアサー ト さ れる ア ク テ ィ ブ High の信号。 有効なバス<br />
サ イ ク ルが進行中であ る こ と を示す。 複数マス タ の構成では、 こ の信号は<br />
WISHBONE マス タ のバス要求 と し ての役割を果たす<br />
ア ク テ ィ ブ High のス ト ローブ入力信号。 その WISHBONE ス レーブが進行中のバ<br />
ス ト ラ ンザ ク シ ョ ンの ターゲ ッ ト であ る こ と を示す。 WISHBONE ス レーブは、 ス<br />
ト ローブのアサー ト に対応し てア ク ノ レ ッ ジをアサー ト する<br />
レベルセンシテ ィ ブな ラ イ ト / リ ー ド 制御信号。 Low は リ ー ド 動作を示し、 そ し<br />
てHighはライト動作を示す<br />
8ビット幅アドレス。EFBモジュールのレジスタマップからの特定のレジスタを<br />
選択する ために使用さ れる<br />
8 ビ ッ ト 幅データ入力パス。 EFB モジ ュールのレジ ス タ マ ッ プの特定のレジ ス タ<br />
へバイ ト データ を ラ イ ト する ために使用さ れる<br />
8 ビ ッ ト 幅データ出力パス。 EFB モジ ュールのレジ ス タ マ ッ プの特定のレジ ス タ<br />
からバイ トデータをリードするために使用される<br />
High ア ク テ ィ ブの転送ア ク ノ レ ッ ジ信号で、 WISHBONE ス レーブ ・ イ ン ターフ ェ<br />
イスがアサー ト する。 リ クエス ト された転送がアク ノ レ ッジされたこ と を示す<br />
EFB の WISHBONE バ ス は、 WISHBONE 標準の " ク ラ シ ッ ク (Classic) " バージ ョ ンに対応 し てい ます。<br />
WISHBONE バスはオープン ソ ース標準ですが、 その全機能が実装されてい る、 ま たは必要 と さ れる わけでは<br />
ありません。<br />
9-3<br />
WISHBONE Slave Interface<br />
PLL1<br />
Registers<br />
EFB Register Map<br />
I 2 C Primary<br />
Registers<br />
I 2 C Secondary<br />
Registers<br />
SPI Registers<br />
Timer-Counter<br />
Registers<br />
UFM-Configuration
MachXO2 デバイスのユーザフ ラ ッ シ ュ メ モ リ と<br />
ラ テ ィ スセ ミ コ ンダ ク タ ー ハー ド マ ク ロ化制御機能の使用ガ イ ド<br />
• タ グ (Tag) は、 EFB モジ ュールの WISHBONE ス レーブ ・ イ ン ターフ ェ イ スではサポー ト さ れない。 EFB<br />
はハードマク ロ化されたブロ ッ クのため、 これらの信号をユーザが追加する こ とはできない<br />
• データバスは 1 バイ ト幅しかないため、 EFB モジュールのスレーブ WISHBONE バスインターフェイスに<br />
バ イ ト セレ ク ト 信号 (sel_i or sel_o) は不要<br />
• EFB WISHBONE ス レーブ ・ イ ン ターフ ェ イ スはオプシ ョ ンのエ ラー及び リ ト ラ イ ア ク セ ス終了信号に対<br />
応し ない。 無効ア ド レ スにア ク セス さ れた場合、 ス レーブは応答 と し て wb_ack_o 信号を アサー ト する の<br />
み。 ユーザは有効なア ド レ ス範囲を超えない よ う に し なければな ら ない<br />
WISHBONE マス タは PLD フ ァ ブ リ ッ ク の汎用 LUT 及びレ ジ ス タ を用いて MachXO2 ユーザが開発し ます。複<br />
数マ ス タ構成では、 WISHBONE マ ス タ出力はやは り ユーザ定義のアービ タ で多重化し ます。 <strong>Lattice</strong>Mico8 ソ<br />
フ ト プ ロ セ ッ サは、 マルチマ ス タバス構成を実装可能な Mico System Builder プ ラ ッ ト フ ォームで利用する こ<br />
と も で き ます。 2 つのマ ス タ が同一サ イ ク ルでバス を要求し た場合は、 アービ ト レーシ ョ ン勝者の出力のみ<br />
がスレーブ ・ インターフェイスに伝達されます。<br />
WISHBONE ラ イ ト サ イ ク ル<br />
図 9-3 に EFB WISHBONE ス レーブ ・ イ ン ターフ ェ イ ス側か ら見た ラ イ ト サ イ ク ルの波形を示し ます。1 回の<br />
ライ トサイクル中に、 1 バイ トデータのみが WISHBONEマスタから EFBブロッ クに書き込まれます。 ライ<br />
ト 動作には、 最低 3 ク ロ ッ ク サ イ ク ル必要です。<br />
ク ロ ッ ク エ ッ ジ Edge0 において、 マ ス タはア ド レ ス と データ、 及びアサー ト の各制御信号を更新し ます。 こ<br />
のサイ クル中に次のこ とが行われます。<br />
• マス タ が wb_adr_i [7:0] ア ド レ ス線でア ド レ ス を更新する<br />
• EFB ブ ロ ッ ク に ラ イ ト するデータ を wb_dat_i [7:0] データ線で更新する<br />
• ラ イ ト イ ネーブル wb_we_i 信号を アサー ト し て、 ラ イ ト サ イ ク ルであ る こ と を示す<br />
• wb_cyc_i を アサー ト し て、 サ イ ク ルの開始を示す<br />
• wb_stb_i を アサー ト し て、 特定のス レーブモジ ュールを選択する<br />
ク ロ ッ ク エ ッ ジ Edge1 において、WISHBONE ス レーブはマ ス タ に よ って出力 さ れた信号入力をデコー ド し ま<br />
す。 このサイ クル中に次のこ と が行われます。<br />
• ス レーブが wb_adr_i [7:0] ア ド レ ス線で与え ら れたア ド レ ス をデコー ド する<br />
• ス レーブが wb_dat_i [7:0] データ線で与え ら れたデータ を ラ ッ チする準備を整え る<br />
• ス レーブが wb_ack_o 信号を アサー ト する<br />
• マスタはwb_ack_o線がアクティブHighレベルになるのを待ち、Highが検出されたら、次のクロックエッ<br />
ジでサ イ ク ルを終了する準備を整え る<br />
クロックエッジEdge2において、次のことが行われます。<br />
• ス レーブは wb_dat_i [7:0] データ線で提供 さ れたデータ を ラ ッ チする<br />
• マス タはス ト ローブ信号 wb_stb_i、 サ イ ク ル信号 wb_cyc_i、 及びラ イ ト イ ネーブル信号 wb_we_i をネゲー ト<br />
する<br />
• ス レーブはマス タ に よ る ス ト ローブ信号のネゲー ト に応答し て、 確認応答信号 wb_ack_o をネゲー ト する<br />
9-4
MachXO2 デバイスのユーザフ ラ ッ シ ュ メ モ リ と<br />
ラ テ ィ スセ ミ コ ンダ ク タ ー ハー ド マ ク ロ化制御機能の使用ガ イ ド<br />
図 9-3. WISHBONE バスの ラ イ ト 動作<br />
wb_clk_i<br />
wb_rst_i<br />
wb_cyc_i<br />
wb_stb_i<br />
wb_we_i<br />
wb_adr_i [7:0]<br />
wb_dat_i [7:0]<br />
wb_dat_o [7:0]<br />
wb_ack_o<br />
Edge 0 Edge 1 Edge 2<br />
WISHBONE リ ー ド サ イ ク ル<br />
図 9-4 に EFB WISHBONE ス レーブ ・ イ ン ターフ ェ イ ス側か ら見た リ ー ド サ イ ク ルの波形を示し ます。1 回の<br />
リ ー ド サ イ ク ル中に、 1 バ イ ト データ のみが WISHBONE マ ス タ に よ って EFB ブ ロ ッ ク か ら読み出さ れます。<br />
リ ー ド 動作には、 最低 3 ク ロ ッ ク サ イ ク ル必要です。<br />
ク ロ ッ ク エ ッ ジ Edge0 において、 マ ス タはア ド レ ス、 データ及びアサー ト の各制御信号を更新し ます。 こ の<br />
サイ クル中に次のこ と が行われます。<br />
• マス タ が wb_adr_i [7:0] ア ド レ ス線でア ド レ ス を更新する<br />
• ラ イ ト イ ネーブル wb_we_i 信号をネゲー ト し て、 リ ー ド サ イ ク ルであ る こ と を示す<br />
• wb_cyc_i を アサー ト し て、 サ イ ク ルの開始を示す<br />
• wb_stb_i を アサー ト し て、 特定のス レーブモジ ュールを選択する<br />
ク ロ ッ ク エ ッ ジ Edge 1 において、 WISHBONE ス レーブはマ ス タ に よ って出力 さ れた信号入力をデコー ド し<br />
ます。 このサイ クル中に次のこ とが行われます。<br />
• ス レーブが wb_adr_i [7:0] ア ド レ ス線で与え ら れたア ド レ ス をデコー ド する<br />
• ス レーブが有効データ を wb_dat_o [7:0] データ線に出力する<br />
• ス レーブがス ト ローブ信号 wb_stb_i に応答し て wb_ack_o 信号を アサー ト する<br />
• マス タ が EFB WISHBONE ス レーブか ら wb_dat_o [7:0] データ線に与え られたデータ を、 次の ク ロ ッ ク エ ッ<br />
でラッチする準備を整える<br />
• マスタはwb_ack_o線がアクティブHighレベルになるのを待ち、High検出されると、次のクロックエッジ<br />
でサ イ ク ルを終了する準備を整え る<br />
ク ロ ッ ク エ ッ ジ Edge 2 において次のこ と が行われます。<br />
• マスタが wb_dat_o [7:0] データ線で提供されたデータをラ ッチする<br />
• マス タ がス ト ローブ信号 wb_stb_i 及びサ イ ク ル信号 wb_cyc_i をネゲー ト する<br />
9-5<br />
VALID ADDRESS<br />
VALID DATA
MachXO2 デバイスのユーザフ ラ ッ シ ュ メ モ リ と<br />
ラ テ ィ スセ ミ コ ンダ ク タ ー ハー ド マ ク ロ化制御機能の使用ガ イ ド<br />
• ス レーブがマス タ に よ る ス ト ローブ信号のネゲー ト に応答し て、 確認応答信号 wb_ack_o をネゲー ト する<br />
図 9-4. WISHBONE バスの リ ー ド 動作<br />
wb_clk_i<br />
wb_rst_i<br />
wb_cyc_i<br />
wb_stb_i<br />
wb_we_i<br />
wb_adr_i [7:0]<br />
wb_dat_i [7:0]<br />
wb_dat_o [7:0]<br />
wb_ack_o<br />
WISHBONE リ セ ッ ト サ イ ク ル<br />
図 9-5 に同期信号 wb_rst_i の波形を示し ます。 リ セ ッ ト 信号のアサー ト では、WISHBONE イ ン ターフ ェ イ ス ・<br />
ロ ジ ッ ク が リ セ ッ ト さ れる だけです。 こ の信号が EFB レ ジ ス タ マ ッ プ内のレ ジ ス タ の内容に影響する こ と は<br />
あ り ません。 影響が及ぶのは進行中のバス ト ラ ンザ ク シ ョ ンのみです。<br />
図 9-5. EFB WISHBONE イ ン ターフ ェ イ スの リ セ ッ ト<br />
wb_clk_i<br />
wb_rst_i<br />
wb_cyc_i<br />
wb_stb_i<br />
wb_rst_i 信号は任意の時間長、 アサー ト 可能です。<br />
Edge 0 Edge 1 Edge 2<br />
EFB レ ジ ス タ マ ッ プ<br />
EFB モジ ュールには、 WISHBONE バス イ ン ターフ ェ イ スの リ ー ド / ラ イ ト 動作に よ り ハー ド マ ク ロ機能の<br />
サービ ス を可能にする レ ジ ス タ マ ッ プがあ り ます。 それぞれのハー ド マ ク ロ機能には、 専用の 8 ビ ッ ト デー<br />
タ レ ジ ス タ及び制御レ ジ ス タ があ り ます。 ただ し、 UFM セ ク タ と コ ン フ ィ グ レーシ ョ ン ・ ロ ジ ッ ク は例外<br />
9-6<br />
VALID ADDRESS<br />
Edge 0 Edge 1<br />
VALID DATA
MachXO2 デバイスのユーザフ ラ ッ シ ュ メ モ リ と<br />
ラ テ ィ スセ ミ コ ンダ ク タ ー ハー ド マ ク ロ化制御機能の使用ガ イ ド<br />
で、 それら には同じ一組のレ ジ ス タ でア ク セ ス さ れます。 PLL レ ジ ス タは MachXO2 PLL モジ ュールにあ り<br />
ますが、 それらには EFB WISHBONE リ ード / ラ イ ト サイ クルでア ク セス し ます。 図 9-2 のブロ ッ ク図に、<br />
PLL モジ ュール と EFB モジ ュールの WISHBONE バス イ ン ターフ ェ イ ス間にあ る専用の接続線を示し ますが、<br />
こ れら については本書で後述し ます。<br />
表 9-3. EFB メ モ リ マ ッ プ<br />
ア ド レ ス (16 進 ) ハー ド マ ク ロ機能<br />
0x00-0x1F PLL0 ダ イナ ミ ッ ク ア ク セス 1<br />
0x20-0x3F PLL1 ダ イナ ミ ッ ク ア ク セス 1<br />
0x40-0x49 I 2 C プ ラ イ マ リ<br />
0x4A-0x53 I2 C セカ ンダ リ<br />
0x54-0x5D SPI<br />
0x5E-0x6F タ イ マ / カ ウ ン タ<br />
0x70-0x75 UFM / コ ン フ ィ グ レーシ ョ ン<br />
0x76-0x77 EFB 割 り 込みソース<br />
1. MachXO2 デバイ スの PLL 数は最大 2。 PLL0 はア ド レ ス範囲が 0x00 か ら<br />
0x1F まで。 PLL1 (該当する場合) は 0x20 か ら 0x3F まで。 PLL コ ン フ ィ<br />
グ レーシ ョ ン ・ レ ジ ス タ と 使用法の詳細については TN1199, MachXO2<br />
sysCLOCK PLL Design and Usage Guide(MachXO2 sysCLOCK PLL デザ イ<br />
ン と 使用法ガ イ ド ) を参照<br />
表 9-3 に定義 さ れていないア ド レ ス空間は無効で、 結果は不定 と な り ます。 WISHBONE ス レーブ ・ イ ン ター<br />
フ ェ イ スに EFB の有効ア ド レスを確実に与える よ う にしなければな り ません。<br />
IPexpress に よ る EFB モジ ュールの生成<br />
IPexpress に よ ってハー ド マ ク ロ IP 機能のパ ラ メ ータ を設定し て、EFB プ リ ミ テ ィ ブを生成で き ます。<strong>Lattice</strong><br />
Diamond ® ま た は ispLEVER ® の プ ロ ジ ェ ク ト ナ ビ ゲ ー タ (Project Navigator) ト ッ プ メ ニ ュ ーか ら Tools<br />
>IPexpress の順に選択し ます。 ウ ィ ン ド ウが開き、 EFB モジ ュールは Modules > Architecture Modules (アー<br />
キテクチャ ・ モジュール) の下にあ り ます。<br />
9-7
MachXO2 デバイスのユーザフ ラ ッ シ ュ メ モ リ と<br />
ラ テ ィ スセ ミ コ ンダ ク タ ー ハー ド マ ク ロ化制御機能の使用ガ イ ド<br />
図 9-6. IPexpress の EFB モジ ュール<br />
Project Path (プ ロ ジ ェ ク ト パス)、 File Name (フ ァ イル名)、 及び Design Entry (デザ イ ン名) の各フ ィ ール<br />
ドに入力し、 Customize (カス タム化) を ク リ ッ ク し ます。<br />
Customize ボ タ ン を ク リ ッ クする と 、 IPexpress ウ ィ ン ド ウ には EFB の構成可能な設定で更新 さ れます。 すな<br />
わち、 シンボルが EFB ウ ィ ン ド ウの左側に表示 さ れ、 こ れが イ ネーブル さ れた各 EFB 機能に対応する ポー<br />
ト で更新されます。 ハー ド マ ク ロ機能、 PLL コ ン フ ィ グ レーシ ョ ン設定への動的ア ク セス、 UFM の イ ネーブ<br />
ル、 及び WISHBONE ク ロ ッ ク 周波数を入力で き ます。 図 9-7 に EFB 生成の例を示し ます。 こ の例では、 全<br />
ての EFB 機能がイネーブルになっています。<br />
ハー ド マ ク ロ IP 機能及び UFM には、個々の コ ン フ ィ グ レーシ ョ ン設定に対応し た個別の タ ブが EFB ウ ィ ン<br />
ド ウにあ り ます。 こ れら の タ ブについては本書で後述し、 一部機能については技術的に説明し ます。 全ての<br />
機能について設定し た後、 Generate ボ タ ン を ク リ ッ ク し ます。 EFB モジ ュールが生成 さ れて、 デザ イ ンでの<br />
イ ン ス タ ン ス化の準備完了 と な り ます。<br />
9-8
MachXO2 デバイスのユーザフ ラ ッ シ ュ メ モ リ と<br />
ラ テ ィ スセ ミ コ ンダ ク タ ー ハー ド マ ク ロ化制御機能の使用ガ イ ド<br />
図 9-7. IPexpress に よ る EFB モジ ュールの生成<br />
選択可能な PLL モジ ュールの数はデバ イ スの規模に よ って決ま り 、 こ れは IPexpress の EFB GUI に反映 さ れ<br />
ます。 MachXO2-256 及び MachXO2-640 には PLL モジ ュールがないため、 EFB ウ ィ ン ド ウ の PLL チェ ッ ク<br />
ボ ッ ク スは選択で き ません。 MachXO2-640U と MachXO2-1200、 MachXO2-1200U 及び MachXO2-2000 には<br />
それぞれ 1 個の PLL、 MachXO2-2000U と MachXO2-4000 及び MachXO2-7000 にはそれぞれ 2 個の PLL が、<br />
EFB WISHBONE ス レーブ ・ イ ン ターフ ェ イ スに よ る動的ア ク セ ス用に選択可能です。<br />
デフ ォル ト の WISHBONE ク ロ ッ ク 周波数は 50MHz に設定 さ れています。 入力で き る最高 ク ロ ッ ク 周波数は<br />
133MHz です。 WISHBONE ク ロ ッ ク は EFB WISHBONE イ ン ターフ ェ イ ス ・ レ ジ ス タ と 、 SPI 及び I 2 Cハード<br />
マ ク ロ IP コ アに よ って も使用 さ れます。<br />
ハー ド マ ク ロ I 2 C IP コ ア<br />
全てのMachXO2デバイスに2個のハードマクロI 2 C IP コ アが含まれ、 それぞれ "Primary (プ ラ イ マ リ ) " 及<br />
び "Secindary (セカ ンダ リ ) " と 指定されています。 両者のいずれ も I 2 CマスタまたはI 2 Cスレーブとして構<br />
成で き ます。 2 個の コ アの違いは、 プ ラ イ マ リ コ アは I/O ピ ンが事前に割 り 当て られてい る の対し、 セカ ン<br />
ダ リ コ アのポー ト は設計時に任意の汎用 I/O に割 り 当て る こ と がで可能な こ と です。 ま たプ ラ イ マ リ コ アは<br />
MachXO2デバイスのコンフィグレーション ・ ロジックにもアクセスできます。<br />
マ ス タ の場合、 I 2 C コ アは物理的イ ン ターフ ェ イ ス を介し て I 2 Cバス上の他のデバイスを制御できます。ス<br />
レーブの場合、デバ イ スは I/O 拡張機能を I 2 C マス タ に提供で き ます。本コ アは以下の I 2 C 機能を実現し ます。<br />
• マスタ / スレーブモードに対応<br />
• 7 ビッ ト及び10 ビッ トのアドレッシング<br />
• クロッ ク ・ ス ト レッチ<br />
• 50K/100K/400KHz のデータ転送速度<br />
• 同報通知 (General Call) に対応<br />
• EFB WISHBONEスレーブ・ インターフェイスからカスタムロジックへのインターフェイス<br />
9-9
MachXO2 デバイスのユーザフ ラ ッ シ ュ メ モ リ と<br />
ラ テ ィ スセ ミ コ ンダ ク タ ー ハー ド マ ク ロ化制御機能の使用ガ イ ド<br />
I 2 C IP 信号<br />
図 9-8. プ ラ イ マ リ I2Cのブロック図 I 2 C プ ラ イ マ リ コ アの SCL ポー ト 及び SDA ポー ト は、 それぞれの MachXO2 デバ イ スの割 り 当て済みピ ンに<br />
直接配線されています。設計時に こ れら の信号を PLD フ ァ ブ リ ッ ク の一般配線に よ って配線する こ と はで き<br />
ません。 各 MachXO2 デバイスの I 2 C ポー ト の詳細なパ ッ ド 位置及びピ ン位置については、 MachXO2 フ ァ ミ<br />
リ・データシート のピンテーブルを参照し て く ださい。<br />
プライマリ I 2 CコアのI 2 CパッドはI 2 Cポートを介したUFM/コンフィグレーション・ロジックのアクセス<br />
用、 及びプ ロ グ ラ ミ ン グに使用可能であ る点に留意が重要です。 図 9-8 のブ ロ ッ ク図に、 I 2 C ブ ロ ッ ク 及び<br />
コンフィグレーション ・ ロジック間の直接インターフェイスを示します。 デバイス ・プログラ ミング用の専<br />
用I 2 C ポー ト の使用法については、 ”TN1204 MachXO2 Programming and Configuration Usage Guide (MachXO2<br />
プ ロ グ ラ ミ ン グ と コ ン フ ィ グ レーシ ョ ンのユーザガ イ ド ) ” を参照し て く だ さ い。<br />
表 9-4 はプ ラ イ マ リ I 2 C コ アの IP 信号を記述し ます。 こ れら信号は MachXO2 デバ イ スのどの GPIO か ら も<br />
配線出来ます。 各信号には、 使用方法 と 、 デザ イ ンプ ロ ジ ェ ク ト の中での接続方法に関する説明が記述 さ れ<br />
ています。<br />
表 9-4. プ ラ イ マ リ I 2 C ~ IP 信号<br />
信号名<br />
アサ イ ン済みの<br />
ピン名称<br />
Core<br />
Logic/<br />
Routing<br />
i2c1_scl SCL 双方向 1<br />
i2c1_sda SDA 双方向 1<br />
i2c1_irqo — 出力 1<br />
cfg_wake — 出力 1<br />
cfg_stdby — 出力 1<br />
EFB<br />
EFB<br />
WISHBONE<br />
Interface<br />
Configuration<br />
Logic<br />
I 2C<br />
Registers<br />
I/O ビ ッ ト 幅 記 述<br />
I 2 C コ アの双方向 ク ロ ッ ク 線。 I 2 C コ アがマ ス タ モー ド 動作時、 信号は出力。<br />
I 2 C コ アがス レーブモー ド 動作時、 信号は入力。 チ ッ プの事前に割 り 当て ら<br />
れた I/O に直接配線 さ れなければな ら ない。 それぞれの MachXO2 デバイ<br />
スの I 2 C ポー ト の詳細なパッ ド と ピン位置については、 MachXO2 フ ァ ミ<br />
リ・データシートのピンテーブルを参照<br />
I 2 C コ アの双方向データ線。 I 2 C コ アか らデータ を送信する と き、 信号は出<br />
力。 I 2 C コ アがデータ を受信する と き、 信号は入力。 チ ッ プの事前に割 り 当<br />
て ら れた I/O に直接配線 さ れなければな ら ない。 それぞれの MachXO2 デ<br />
バイスの I 2 C ポー ト の詳細なパッ ド と ピン位置については、 MachXO2 フ ァ<br />
ミリ・データシートのピンテーブルを参照<br />
I 2 C コ アの割 り 込み要求を示す出力信号。 本信号の意図は、 こ れを<br />
WISHBONEマスタコントローラ (すなわち、 マイクロコントローラやス<br />
テー ト マシン ) に接続する使用法。 そ し て特定の条件が満た さ れた と き に、<br />
割 り 込みを要求する。 こ れら の条件は I 2 C レ ジ ス タ定義で記述 さ れてい る<br />
通り<br />
ウ ェ イ ク ア ッ プ信号。 MachXO2 デバイ スのパワーモジ ュールにのみ接続 さ<br />
れる。 本信号は EFB GUI、 I 2 C タ ブ内の "Wakeup Enable" 機能が イ ネーブル<br />
された場合のみ<br />
ス タ ンバイ信号。 MachXO2 デバイ スのパワーモジ ュールにのみ接続 さ れ<br />
る。 本信号は EFB GUI、 I 2 C タブ内の "Wakeup Enable" 機能がイネーブルさ<br />
れた場合のみ<br />
9-10<br />
I 2 C Function<br />
Power<br />
Control<br />
Control<br />
Logic<br />
SCL<br />
SDA
MachXO2 デバイスのユーザフ ラ ッ シ ュ メ モ リ と<br />
ラ テ ィ スセ ミ コ ンダ ク タ ー ハー ド マ ク ロ化制御機能の使用ガ イ ド<br />
プライマリ I 2 Cコアとは異なり、セカンダリはコンフィグレーション・ロジックにアクセスできず、したがっ<br />
て MachXO2 デバ イ スのプ ロ グ ラ ミ ン グに使用する こ と はで き ません。 その SCL ポー ト 及び SDA ポー ト は<br />
PLD フ ァ ブ リ ッ ク の一般配線に よ って配線さ れ、設計時にそれれら を GPIO (General Purpose I/O、汎用 I/O)<br />
に割 り 当て る こ と ができ ます。<br />
図 9-9 にセカ ンダ リ I 2 Cコアのブロック図を示します。プライマリI 2 Cコアとは異なり、コンフィグレーショ<br />
ン・ロジックブロックにアクセスできない点に留意してください。<br />
図 9-9. セカ ンダ リ I 2 Cのブロック図<br />
表 9-5 にセカ ンダ リ I 2 C コ アの IP 信号を示し ます。 こ れら の信号は MachXO2 デバ イ スの任意の GPIO に配<br />
線可能です。<br />
表 9-5. セカ ンダ リ ~ IP 信号<br />
信号名 アサイン済み<br />
のピン名称<br />
Core<br />
Logic/<br />
Routing<br />
I/O<br />
ビッ ト<br />
幅<br />
i2c2_scl — 双方向 1<br />
i2c2_sda — 双方向 1<br />
i2c2_irqo — 出力 1<br />
cfg_wake — 出力 1<br />
cfg_stdby — 出力 1<br />
EFB<br />
EFB<br />
WISHBONE<br />
Interface<br />
I 2C<br />
Registers<br />
I 2 Cレジスタ<br />
二つの I 2 C コ アは共に制御レ ジ ス タ と コ マン ド レ ジ ス タ、 ス テータ ス レ ジ ス タ、 及びデータ レ ジ ス タ の組を<br />
通し て EFB WISHBONE イ ン ターフ ェ イ ス と 通信し ます。 表 9-6 にレ ジ ス タ名 と その機能を示し ます。 こ れ<br />
らのレジスタはEFBレジスタマップのサブセットになっています。 9-11<br />
I 2C Function<br />
Power<br />
Control<br />
Control<br />
Logic<br />
記 述<br />
I 2 C コ アの双方向 ク ロ ッ ク 線。 I 2 C コ アがマス タ モー ド 動作時、 信号は出力。<br />
I 2 C コ アがス レーブモー ド 動作時、 信号は入力。 本信号は MachXO2 デバイ ス<br />
のどの GPIO に も配線する こ と がで き る<br />
I 2 C コ アの双方向データ線。 I 2 Cコアからデータが送信されるとき、信号は出<br />
力。 I 2 C コ アがデータ を受信する と き、 信号は入力。 本信号は MachXO2 デバ<br />
イ スのどの GPIO に も配線する こ と がで き る<br />
I 2 C コ アか ら の割 り 込み要求の信号出力。 本信号は WISHBONE マス タ コ ン ト<br />
ローラ (すなわちマイ ク ロ コン ト ローラやステー ト マシン) に接続されて、 特<br />
定の条件が満た さ れた場合に割 り 込みを要求する こ と を意図し てい る。 それら<br />
の条件は、 I 2 C レ ジ ス タ定義で記述 さ れてい る通 り<br />
ウ ェ イ ク ア ッ プ信号。 MachXO2 デバイ スのパワーモジ ュールにのみ接続さ れ<br />
る。 本信号は EFB GUI、 I 2 C タ ブ内の "Wakeup Enable" 機能がセ ッ ト さ れた場<br />
合にのみイ ネーブルにな る<br />
ス タ ンバイ信号。 MachXO2 デバイ スのパワーモジ ュールにのみ接続さ れる。<br />
本信号は EFB GUI、 I 2 C タ ブ内の "Wakeup Enable" 機能がセ ッ ト さ れた場合に<br />
のみイネーブルになる<br />
SCL<br />
SDA
MachXO2 デバイスのユーザフ ラ ッ シ ュ メ モ リ と<br />
ラ テ ィ スセ ミ コ ンダ ク タ ー ハー ド マ ク ロ化制御機能の使用ガ イ ド<br />
表 9-6. I 2 Cレジスタ<br />
プライマリ I 2 C<br />
レジスタ名<br />
セカンダ リ I 2 C<br />
レジスタ名<br />
レジスタ機能<br />
注 : 特に指定し ない限 り 、 書き込み可能レ ジ ス タ の全予約ビ ッ ト には '0' が書かれなければな り ません。<br />
表 9-7. I 2 C制御 (プライマリ /セカンダリ)<br />
注 : 本レ ジ ス タ に書き込みをする と I 2 Cコアはリセットされます。<br />
I2CEN I 2 C System Enable (シ ス テム ・ イ ネーブル) ビ ッ ト 。 本ビ ッ ト は I 2 C コ ア機能を イ ネー<br />
ブルする。 I2CEN が ク リ ア さ れてい る場合、 I 2 Cはディセーブルされて、アイドルス<br />
テー ト に強制される。<br />
0: I 2 C機能はディセーブル<br />
1: I 2 C機能はイネーブル<br />
GCEN General Call Response Enable (同報通知応答イ ネーブル) ビ ッ ト 。 ス レーブモー ド に<br />
おけ る同報通知応答を イ ネーブルする。<br />
0: デ ィ セーブル<br />
1: イ ネーブル<br />
WKUPEN Wake-up from Standby/Sleep Enable(by Slave Address matching) ビ ッ ト (ス レーブア ド レ<br />
ス一致によ る) 。 Standby/Sleep からのウ ェ イ ク ア ッ プを イ ネーブルする ビ ッ ト 。 本<br />
ビッ トがイネーブルされると、 I 2 Cコアはスタンバイ/スリープからデバイスを起動<br />
するために、 ウェイ クアップ信号をオンチップ・パワーマネージャに送る こ とができ<br />
る。 本ウ ェ イ ク ア ッ プ機能が有効なのは、 ス タ ンバイ / ス リ ープモード中にス レーブ<br />
ア ド レ スが コール さ れる場合。<br />
0: デ ィ セーブル<br />
1: イ ネーブル<br />
SDA_DEL_SEL[1:0] SDA Output Delay (Tdel) Selection (出力遅延の選択、 図 9-24 参照)<br />
00: 300ns<br />
01: 150ns<br />
9-12<br />
アドレス<br />
プライマリ I 2 C<br />
アドレス<br />
セカンダ リ I 2 C<br />
アクセス<br />
I2C_1_CR I2C_2_CR 制御 0x40 0x4A Read/Write<br />
I2C_1_CMDR I2C_2_CMDR コ マン ド 0x41 0x4B Read/Write<br />
I2C_1_BR0 I2C_2_BR0<br />
クロックプリスケール<br />
(分周)<br />
0x42 0x4C Read/Write<br />
I2C_1_BR1 I2C_2_BR1<br />
クロックプリスケール<br />
(分周)<br />
0x43 0x4D Read/Write<br />
I2C_1_TXDR I2C_2_TXDR 送信データ 0x44 0x4E Write<br />
I2C_1_SR I2C_2_SR ス テータ ス 0x45 0x4F Read<br />
I2C_1_GCDR I2C_2_GCDR<br />
同報通知 (General<br />
Call)<br />
0x46 0x50 Read<br />
I2C_1_RXDR I2C_2_RXDR 受信データ 0x47 0x51 Read<br />
I2C_1_IRQ I2C_2_IRQ IRQ (割 り 込み要求) 0x48 0x52 Read/Write<br />
I2C_1_IRQEN I2C_2_IRQEN IRQ イ ネーブル 0x49 0x53 Read/Write<br />
I2C_1_CR / I2C_2_CR 0x40/0x4A<br />
ビッ ト 7 6 5 4 3 2 1 0<br />
名称 I2CEN GCEN WKUPEN (Reserved) SDA_DEL_SEL[1:0] (Reserved)<br />
デフォル ト 0 0 0 0 0 0 0 0<br />
ア ク セ ス R/W R/W R/W — R/W R/W — —
MachXO2 デバイスのユーザフ ラ ッ シ ュ メ モ リ と<br />
ラ テ ィ スセ ミ コ ンダ ク タ ー ハー ド マ ク ロ化制御機能の使用ガ イ ド<br />
10: 75ns<br />
11: 0ns<br />
表 9-8. I 2 Cコマンド (プライマリ/セカンダリ)<br />
I2C_1_CMDR / I2C_2_CMDR 0x41/0x4B<br />
ビッ ト 7 6 5 4 3 2 1 0<br />
名称 STA STO RD WR ACK CKSDIS (Reserved)<br />
デフォルト 0 0 0 0 0 0 0 0<br />
ア ク セ ス R/W R/W R/W R/W R/W R/W — —<br />
STA START (= 起動、 又は ” 繰 り 返し START”) 条件を生成する。 マ ス タ動作。<br />
STO STOP (= 停止) 条件を生成する。 マ ス タ動作。<br />
RD ス レーブか ら リ ー ド を示す。 マ ス タ動作。<br />
WR ス レーブへの ラ イ ト を示す。 マ ス タ動作。<br />
ACK ア ク ノ レ ッ ジ ・ オプシ ョ ン。 受信時の ACK 送信を選択。<br />
0: ACK を送出<br />
1: NACK を送出<br />
CKSDIS Clock Stretching Disable (ク ロ ッ ク ・ ス ト レ ッ チン グ (伸張) をデ ィ セーブルする) 。<br />
I 2Cコアはスレーブからの"待ちステート"あるいはクロック・ストレッチングに対 応する。 即ち、 タ ス ク を終了する ための時間が必要な場合は、 ス レーブが待ち状態を<br />
強制する こ と がで き る こ と を意味する。 ビ ッ ト CKSDIS は、 ユーザが望む場合、 ク<br />
ロ ッ ク ・ ス ト レ ッ チン グ をデ ィ セーブルする。 その場合、 オーバフ ローフ ラ グ をモニ<br />
タ し なければな ら ない。 マ ス タ動作では、 本ビ ッ ト を ‘0’ にする。<br />
0: イ ネーブル<br />
1: デ ィ セーブル<br />
表 9-9. I 2 Cクロック・プリスケール0 (プライマリ/セカンダリ)<br />
I2C_1_BR0 / I2C_2_BR0 0x42/0x4C<br />
ビッ ト 7 6 5 4 3 2 1 0<br />
名称 I2C_PRESCALE[7:0]<br />
デフォルト 0 0 0 0 0 0 0 0<br />
ア ク セ ス R/W R/W R/W R/W R/W R/W R/W R/W<br />
1. ハー ド ウ ェ アのデフ ォル ト 値は、 EFB コ ンポーネン ト ・ イ ン ス タ ン ス化パ ラ メ ータ に よ っ て上書き さ れる こ と があ り ま<br />
す。 次項を参照<br />
表 9-10. I 2 Cクロック・プリスケール1 (プライマリ/セカンダリ)<br />
I2C_1_BR1 / I2C_2_BR1 0x43/0x4D<br />
ビッ ト 7 6 5 4 3 2 1 0<br />
名称 (Reserved) I2C_PRESCALE[9:8]<br />
デフォル ト 0 0 0 0 0 0 0 0<br />
アクセス — — — — — — R/W R/W<br />
1. ハー ド ウ ェ アのデフ ォル ト 値は、 EFB コ ンポーネン ト ・ イ ン ス タ ン ス化パ ラ メ ータ に よ っ て上書き さ れる こ と があ り ま<br />
す。 次項を参照<br />
I2C_PRESCALE[9:0] I 2 C ク ロ ッ ク ・ プ リ ス ケーラ値。 WISHBONE ク ロ ッ ク周波数は (I2C_PRESCALE*4) で<br />
分周され、 I 2 C バスが対応し てい る ク ロ ッ ク 周波数 (50KHz、 100KHz、 400KHz) まで<br />
9-13
MachXO2 デバイスのユーザフ ラ ッ シ ュ メ モ リ と<br />
ラ テ ィ スセ ミ コ ンダ ク タ ー ハー ド マ ク ロ化制御機能の使用ガ イ ド<br />
下げられる。 I2CBR [9:8] への ラ イ ト 動作が行われる と 、 I 2 C コアがリセッ ト される。<br />
50kHz の I 2 C 動作に対応する WISHBONE 最大 ク ロ ッ ク 周波数は 102MHz です。<br />
注:I 2 C コ アが EFB GUI の I2C タ ブで構成さ れた と き に、 IPexpress に よ ってデジ タル値が計算さ れます。 こ<br />
の計算は WISHBONE ク ロ ッ ク 周波数及び I 2 C 周波数 (両方 と も ユーザが入力する値) に基づき ます。 分周器<br />
のデジ タル値はデバイ スのプ ロ グ ラ ミ ン グ中に MachXO2 にプ ロ グ ラ ム さ れます。 電源起動後ま たはデバ イ<br />
スの再コ ン フ ィ グ レーシ ョ ン後に、 データ が I2C_1_BR1/0 レ ジ ス タ及び I2C_2_BR1/0 レ ジ ス タ に ロー ド さ れ<br />
ます。<br />
レ ジ ス タ I2C_1_BR1/0 及び I2C_2_BR1/0 には、 WISHBONE イ ン ターフ ェ イ スか ら リ ー ド / ラ イ ト ア ク セ ス を<br />
行います。 デバイ ス動作中に こ れら の ク ロ ッ ク のプ リ ス ケール ・ レ ジ ス タ を動的に更新で き ますが、 I 2 C バ<br />
ス周波数に違反し ない よ う 注意する必要があ り ます。<br />
表 9-11. I 2 C Transmit Data Register ( プ ラ イ マ リ / セカ ンダ リ )<br />
I2C_1_TXDR / I2C_2_TXDR 0x44/0x4E<br />
ビッ ト 7 6 5 4 3 2 1 0<br />
名称 I2C_Transmit_Data[7:0]<br />
デフォルト 0 0 0 0 0 0 0 0<br />
アクセス W W W W W W W W<br />
I2C_Transmit_Data[7:0] I 2 C 送信データ。 本レ ジ ス タ には、 データ ラ イ ト ・ フ ェーズで I 2 C バスに送信され<br />
るバイ ト が格納される。 ビ ッ ト 0 が LSB と な り 、 最後に送信される。 ス レーブア<br />
ド レ ス を送信する際、 ビ ッ ト 0 は R/W ビ ッ ト を表す。<br />
表 9-12. I 2 C Status (プライマリ/セカンダリ)<br />
I2C_1_SR / I2C_2_SR 0x45/0x4F<br />
ビッ ト 7 6 5 4 3 2 1 0<br />
名称 TIP* BUSY* RARC SRW ARBL TRRDY TROE HGC<br />
デフォルト — — — — — — — —<br />
アクセス R R R R R R R R<br />
* 注 : R1 デバ イ スでは、 こ れら ビ ッ ト は有効にな る前の 0.5 SCK 周期の遅延を表し ます。<br />
TIP Transmitting In Progress (データバイ ト を送信中)。 信号の同期が行われる ため、 TIP フ<br />
ラ グは START 条件の直後に SCL 半サイ クル分だけ遅延される。 また注意が必要なの<br />
は、 本ビ ッ ト はコ ン フ ィ グ レーシ ョ ンの ウ ェ イ ク ア ッ プ後、 及び最初の有効な I 2C 送<br />
信開始前 (BUSY が Low の場合) に High と な る こ と で、 バ イ ト 送信中を表 さ ないた<br />
め イ ンジケータ と し ては無効。<br />
1: バイ ト 転送が進行中<br />
0: バイ ト 転送が完了し た<br />
BUSY I 2 Cバスビジー。I 2 C バスが送信に使用さ れてい る。 START 条件でセ ッ ト さ れ、 STOP<br />
でクリアされる。本ビットがセットされた場合に限り、他の全てのI2C SRビットが 有効な送信の有効な イ ンジケータ と し て扱われる。<br />
1: I 2 Cバスはビジー<br />
0: I 2Cバスはビジーでない RARC Received Acknowledge (受信ア ク ノ レ ッ ジ)。 ア ド レ ス ス レーブか ら (マ ス タ の ラ イ ト<br />
中)、 ま たは受信マス タ か ら (マス タ の リ ー ド 中) ア ク ノ レ ッ ジ応答を受信し た。<br />
1: ア ク ノ レ ッ ジは受信されなかった<br />
0: ア ク ノ レ ッ ジが受信された<br />
SRW Slave R/W (ス レーブ リ ー ド / ラ イ ト )。 送信ま たは受信モー ド を示す。<br />
9-14
MachXO2 デバイスのユーザフ ラ ッ シ ュ メ モ リ と<br />
ラ テ ィ スセ ミ コ ンダ ク タ ー ハー ド マ ク ロ化制御機能の使用ガ イ ド<br />
1: マ ス タ受信中 / ス レーブ送信中<br />
0: マ ス タ送信中 / ス レーブ受信中<br />
ARBL Arbitration Lost (調停喪失)。 コ アがマ ス タ モー ド で調停を喪失し た。 本ビ ッ ト は割 り<br />
込みを発生可能。<br />
1: 調停喪失<br />
0: 正常<br />
TRRDY Transmitter or Receiver Ready ( ト ラ ン ス ミ ッ タ / レ シーバ ・ レデ ィ )。 I 2C 送信データ<br />
レ ジ ス タ が送信データ を受信可能であ る か、 ま たは I2C 受信データ レ ジ ス タ に受信<br />
データ が格納されてい る (マ ス タ / ス レーブモー ド と 、 SRW ス テータ スに依存)。 本<br />
ビ ッ ト は割 り 込みを発生可能。<br />
1: ト ラ ン ス ミ ッ タやレ シーバの準備がで き てい る<br />
0: ト ランス ミ ッ タやレシーバの準備ができていない<br />
TROE Transmitter/Receiver Overrun Error or NACK received ( ト ラ ン ス ミ ッ タ / レ シーバ ・<br />
オーバラ ンエラーまたは NACK 受信)。 送信または受信オーバラ ンエラー (マス タ /<br />
ス レーブモー ド と SRW ス テータ スに依存) が発生し たか、 ア ク ノ レ ッ ジが受信 さ れ<br />
ない (RARC も セ ッ ト さ れてい る場合のみ)。 本ビ ッ ト は割 り 込みを発生可能。<br />
1: ト ラ ン ス ミ ッ タ / レ シーバ ・ オーバ ラ ン検出、 ま たは NACK を受信し た<br />
0: 正常<br />
HGC Hardware General Call Received(ハー ド ウ ェ ア同報通知受信)。ス レーブモー ド で、ハー<br />
ド ウ ェ ア同報通知を受信し た。 同報通知データ レ ジ ス タ では、 対応する コ マン ド バ イ<br />
ト を利用で き る。 本ビ ッ ト は割 り 込みを発生可能。<br />
1: ス レーブモー ド でハー ド ウ ェ ア同報通知を受信し た<br />
0: 正常<br />
表 9-13. I 2 C 同報通知 (General Call) データ レ ジ ス タ ( プ ラ イ マ リ / セカ ンダ リ )<br />
I2C_1_GCDR / I2C_2_GCDR 0x46/0x50<br />
ビッ ト 7 6 5 4 3 2 1 0<br />
名称 I2C_GC_Data[7:0]<br />
デフォルト — — — — — — — —<br />
アクセス R R R R R R R R<br />
I2C_ GC _Data[7:0] I 2 C General Call Data (同報通知データ) 。 本レ ジ ス タ には、 I2C バスの同報通知 ト ラ<br />
ンザクシ ョ ンの第 2 (コマン ド) バイ ト が格納される。<br />
表 9-14. I 2 C 受信データ レ ジ ス タ ( プ ラ イ マ リ / セカ ンダ リ )<br />
I2C_1_RXDR / I2C_2_RXDR 0x47/0x51<br />
ビッ ト 7 6 5 4 3 2 1 0<br />
名称 I2C_Receive_Data[7:0]<br />
デフォルト — — — — — — — —<br />
アクセス R R R R R R R R<br />
I2C_ Receive _Data[7:0] I 2 C Receive Data (受信データ) 。 本レ ジ ス タ には、 リ ー ド データ ・ フ ェーズ中に<br />
I2C バスか ら キ ャ プチャ さ れたバイ ト が格納される。 ビ ッ ト 0 が LSB で、 最後に<br />
受信される。<br />
9-15
MachXO2 デバイスのユーザフ ラ ッ シ ュ メ モ リ と<br />
ラ テ ィ スセ ミ コ ンダ ク タ ー ハー ド マ ク ロ化制御機能の使用ガ イ ド<br />
表 9-15. I 2 C割り込みステータス (プライマリ/セカンダリ)<br />
I2C_1_IRQ / I2C_2_ IRQ 0x48/0x52<br />
ビッ ト 7 6 5 4 3 2 1 0<br />
名称 (Reserved) IRQARBL IRQTRRDY IRQTROE IRQHGC<br />
デフォル ト — — — — — — — —<br />
アクセス — — — — R/W R/W R/W R/W<br />
IRQARBL Interrupt Status for Arbitration Lost (調停喪失ス テータ スの割 り 込みス テータ ス)<br />
イ ネーブルする と 、 ARBL がアサー ト さ れた こ と を示す。 本ビ ッ ト に '1' を ラ イ ト す<br />
ると、割り込みがクリアされる。<br />
1: 調停喪失割 り 込み<br />
0: 割 り 込みな し<br />
IRQTRRDY Interrupt Status for Transmitter or Receiver Ready ( ト ラ ン ス ミ ッ タ ま たはレシーバ ・ レ<br />
ディの割り込みステータス)<br />
イ ネーブルする と 、 TRRDY がアサー ト さ れた こ と を示す。 本ビ ッ ト に '1' を ラ イ ト す<br />
ると、割り込みがクリアされる。<br />
1: ト ラ ン ス ミ ッ タ ま たはレ シーバ ・ レデ ィ の割 り 込み<br />
0: 割 り 込みな し<br />
IRQTROE Interrupt Status for Transmitter/Receiver Overrun or NACK received ( ト ラ ン ス ミ ッ タ /<br />
レシーバ ・ オーバラ ン または NACK 受信の割 り 込みス テータ ス)。 イ ネーブルする と 、<br />
TROE がアサー ト さ れた こ と を示す。 本ビ ッ ト に '1' を ラ イ ト する と 、 割 り 込みが ク<br />
リアされる。<br />
1: ト ラ ン ス ミ ッ タ / レシーバ ・ オーバラ ン または NACK 受信割 り 込み<br />
0: 割 り 込みな し<br />
IRQHGC Interrupt Status for Hardware General Call Received (ハー ド ウ ェ ア同報通知受信の割 り<br />
込みス テータ ス)。 イ ネーブルする と 、 HGC がアサー ト さ れた こ と を示す。 本ビ ッ ト<br />
に '1' を ラ イ ト する と、 割 り 込みが ク リ ア される。<br />
1: ス レーブモー ド でハー ド ウ ェ ア同報通知受信割 り 込み<br />
0: 割 り 込みな し<br />
表 9-16. I 2 C割り込みイネーブル (プライマリ /セカンダリ)<br />
I2C_1_ IRQEN / I2C_2_IRQEN 0x49/0x53<br />
ビッ ト 7 6 5 4 3 2 1 0<br />
名称 (Reserved) IRQARBLEN IRQTRRDYEN IRQTROEEN IRQHGCEN<br />
デフォル ト 0 0 0 0 0 0 0 0<br />
アクセス — — — — R/W R/W R/W R/W<br />
IRQARBLEN Interrupt Enable for Arbitration Lost (調停喪失割 り 込みを イ ネーブル)<br />
1: 割 り 込み生成イ ネーブル<br />
0: 割 り 込み生成デ ィ セーブル<br />
IRQTRRDYEN Interrupt Enable for Transmitter or Receiver Ready ( ト ラ ン ス ミ ッ タ ま たはレシーバ ・ レ<br />
デ ィ 割 り 込みを イ ネーブル)<br />
1: 割 り 込み生成イ ネーブル<br />
0: 割 り 込み生成デ ィ セーブル<br />
IRQTROEEN Interrupt Enable for Transmitter/Receiver Overrun or NACK Received ( ト ラ ン ス ミ ッ タ<br />
またはレシーバ ・ オーバラン割り込みをイネーブル)<br />
9-16
MachXO2 デバイスのユーザフ ラ ッ シ ュ メ モ リ と<br />
ラ テ ィ スセ ミ コ ンダ ク タ ー ハー ド マ ク ロ化制御機能の使用ガ イ ド<br />
1: 割 り 込み生成イ ネーブル<br />
0: 割 り 込み生成デ ィ セーブル<br />
IRQHGCEN Interrupt Enable for Hardware General Call Received (ハー ド ウ ェ ア同報通知受信割 り 込<br />
みをイネーブル)<br />
1: 割 り 込み生成イ ネーブル<br />
0: 割 り 込み生成デ ィ セーブル<br />
図 9-10にWISHBONE イ ン ターフ ェ イ スか ら開始されたマ ス タ I 2 C リ ー ド 及びラ イ ト の制御についてのフ ロー<br />
図を示し ます。<br />
9-17
MachXO2 デバイスのユーザフ ラ ッ シ ュ メ モ リ と<br />
ラ テ ィ スセ ミ コ ンダ ク タ ー ハー ド マ ク ロ化制御機能の使用ガ イ ド<br />
図 9-10. I 2 C マス タ、 リ ー ド / ラ イ ト 例 (WISHBONE 経由 )<br />
Start<br />
TXDR
MachXO2 デバイスのユーザフ ラ ッ シ ュ メ モ リ と<br />
ラ テ ィ スセ ミ コ ンダ ク タ ー ハー ド マ ク ロ化制御機能の使用ガ イ ド<br />
図 9-11. I 2 C ス レーブ、 リ ー ド / ラ イ ト 例 (WISHBONE 経由)<br />
Start<br />
CMDR
MachXO2 デバイスのユーザフ ラ ッ シ ュ メ モ リ と<br />
ラ テ ィ スセ ミ コ ンダ ク タ ー ハー ド マ ク ロ化制御機能の使用ガ イ ド<br />
IPexpress に よ る I 2 Cコアの構成<br />
IPexpress を使用し て I 2 C コ ア を設定し、 EFB プ リ ミ テ ィ ブを生成で き ます。 EFB GUI で I 2 C タ ブを選択する<br />
と、 I 2 C コ アの構成可能な設定が表示 さ れます。 図 9-12 に I 2 C コ ア をサンプルデザ イ ン用に構成し た例を示<br />
します。<br />
図 9-12. IPexpress に よ る EFB モジ ュールの I 2 C機能の構成<br />
I 2 Cコアは個別にI 2 C 同報通知応答を イ ネーブルに し た り 、 I 2 Cポートを介してスタンバイ/スリープモード<br />
か らデバイ ス を ウ ェ イ ク ア ッ プ さ せる機能を イ ネーブルに し た り で き ます。ウ ェ イ ク ア ッ プ機能は MachXO2<br />
がスタンバイ / ス リープモードのと きに I 2 C ス レーブア ド レ スが コール さ れた場合に有効です。 同報通知バ<br />
イト 0xF3をI 2 C バス上で受信する と 、 EFB I 2 Cコアはウェイクアップ信号をオンチップ・パワーコントロー<br />
ラ に送信し、 デバイ ス を ス タ ンバイ / ス リ ープか ら起動し ます。<br />
I 2 C 周波数は 50KHz / 100KHz / 400KHz か ら選択可能です。 こ れは I 2 C バスの SCL ク ロ ッ ク 周波数にな り ま<br />
す。 こ の GUI 値 と 、 EFB Enables タ ブの WISHBONE ク ロ ッ ク周波数属性 と を使用し て、 ソ フ ト ウ ェ アは 10<br />
ビ ッ ト のプ リ ス ケール ・ レ ジ ス タ用の ク ロ ッ ク 分周値を計算で き ます。 プ リ ス ケール値は GUI に参考 と し て<br />
表示されます。<br />
I 2 Cスレーブ・アドレッシング機構は7ビットまたは10ビットを選択できます。7ビットアドレス及び10<br />
ビ ッ ト ア ド レ スの最後の 2 ビ ッ ト は、 ハー ド コー ド さ れています。 残 り のビ ッ ト はプ ロ グ ラ マブルで、 I 2 Cコ<br />
アのコンフ ィ グレーシ ョ ン中に定義されます。 スレーブアド レス ・ フ ィールドはスレーブ I 2 C 動作でのみ使<br />
用されます。 本フ ィ ール ド は、 マ ス タ I 2 C 動作では使用されません。<br />
• ア ド レ スはユーザモー ド のプ ラ イ マ リ モジ ュールでは XXXXX01 ま たは XXXXXXXX01 で終了する (デバ<br />
イ ス を コ ン フ ィ グ レーシ ョ ン し て動作準備の完了後)<br />
– ソ フ ト ウ ェ ア ・ デフ ォル ト の ソ フ ト ア ド レ ス値は 7 ビ ッ ト ア ド レ ッ シングの場合は 0001001 と な る。<br />
10 ビ ッ ト ア ド レ スにする には、 I 2 C タブの Slave Address フ ィ ール ド に 8 桁の 2 進数を入力する必要が<br />
ある<br />
• ア ド レ スはセカ ンダ リ モジ ュールでは XXXXX10 ま たは XXXXXXXX10 で終了する<br />
– セカンダリ I 2 CコアのSlave Addressフィールドのソフトアドレス値はプライマリI 2 Cコアと等しい。<br />
9-20
MachXO2 デバイスのユーザフ ラ ッ シ ュ メ モ リ と<br />
ラ テ ィ スセ ミ コ ンダ ク タ ー ハー ド マ ク ロ化制御機能の使用ガ イ ド<br />
アドレス最後 (LSB) の2 ビッ トはプライマリ コアとセカンダリ コアで異なり、 シリ コンにハード<br />
ウェア化されているため、 これら 2個のコアは固有のアドレスを持つこ とができる。 両方のコアを使<br />
用する こ と をユーザが選択し た場合は、 プ ラ イ マ リ I 2 C コ アの Slave Address フ ィ ール ド のみが編集可<br />
能となる。 セカンダリ I 2 CコアのSlave Addressフィールドは、プライマリI 2 Cコアがイネーブルでな<br />
い場合に編集可能であ る<br />
ハー ド マ ク ロ SPI IP コ ア<br />
MachXO2 EFB には SPI マ ス タ ま たはス レーブ と し て構成可能なハー ド SPI IP コ アが含まれています。マ ス タ<br />
と し て構成される場合、 IP コ アは SPI バスに接続されたス レーブ SPI イ ン ターフ ェ イ スで他のデバイ ス を制<br />
御可能です。 コ アがス レーブ と し て構成される場合は、 外付け SPI マ ス タデバ イ ス と イ ン ターフ ェ イ スで き<br />
ます。 MachXO2 デバ イ ス上の SPI IP コ アは次の機能に対応し ています。<br />
• マス タ モー ド かス レーブモー ド に構成可能<br />
• CPU 割 り 込み機能を備えたモー ド フ ォル ト (Mode Fault) エ ラーフ ラ グ<br />
• ダブルバ ッ フ ァ 化データ レ ジ ス タ<br />
• 極性及び位相がプ ロ グ ラ マブルなシ リ アル ク ロ ッ ク<br />
• LSB 先出し ま たは MSB 先出し のデータ転送<br />
• EFB WISHBONEスレーブ ・ インターフェイスによるカスタムロジック とのインターフェイス<br />
図 9-13. SPI ブ ロ ッ ク 図<br />
Core<br />
Logic/<br />
Routing<br />
EFB<br />
EFB<br />
WISHBONE<br />
Interface<br />
SPI<br />
Registers<br />
Configuration<br />
Logic<br />
SPI Function<br />
マ ス タ モー ド では、 SPI コ アで使用可能な MCSN (マ ス タ ・ チ ッ プセレ ク ト ) ポー ト は 8 本あ り 、 ス レーブ<br />
SPI イ ン ターフ ェ イ ス を持つ外部デバイ ス を最大 8 個まで制御で き ます。 ス レーブモー ド (ユーザモー ド 、 デ<br />
バイ スの コ ン フ ィ グ レーシ ョ ン後) では、 SPI コ アには一本の SCSN (ス レーブ ・ チ ッ プセレ ク ト ) ピ ンがあ<br />
り 、 マ ス タ SPI イ ン ターフ ェ イ ス を持つ外部デバイ スが SPI コ ア を選択で き ます。<br />
SPI ポー ト はデバイ スのプ ロ グ ラ ミ ン グに使用する こ と も で き ます。 SN ピ ン を外部コ ン ト ローラ か ら アサー<br />
トすると、SPI ポートはコンフィグレーション・モードになります。その状態では、SPI ポートはスレーブ<br />
SPI イ ン ターフ ェ イ ス と し て動作し、 デバ イ スの コ ン フ ィ グ レーシ ョ ン ・ ロ ジ ッ ク へのア ク セ スに使用 さ れ<br />
ます。<br />
9-21<br />
Control<br />
Logic<br />
MISO<br />
MOSI<br />
SCK<br />
SN Configuration Mode<br />
SCSN User Mode
MachXO2 デバイスのユーザフ ラ ッ シ ュ メ モ リ と<br />
ラ テ ィ スセ ミ コ ンダ ク タ ー ハー ド マ ク ロ化制御機能の使用ガ イ ド<br />
電源起動時、外付け ス レーブ SPI フ ラ ッ シ ュデバ イ スか ら MachXO2 デバ イ ス をブー ト する よ う SPI ポー ト が<br />
イネーブルにされている場合、 SPI ポー ト はマス タ コ ン ト ローラ と し て動作し、 特定のス レーブ SPI フ ラ ッ<br />
シ ュデバイ ス選択用のマ ス タ ・ チ ッ プセレ ク ト と し て MCSN [0] が使用 さ れます。 デバ イ スのプ ロ グ ラ ミ ン<br />
グ用の SPI ポー ト の使用法については、 ”TN1204, MachXO2 Programming and Configuration Usage Guide (プ ロ<br />
グ ラ ミ ン グ と コ ン フ ィ グ レーシ ョ ンのユーザガ イ ド ) " を参照し て く だ さ い。<br />
SPI コ アの MISO、 MOSI、 SCK、 MCSN [0] 及び SN の各ポー ト は、 MachXO2 デバ イ スの割 り 当て済み I/O に<br />
直接配線されています。こ れら の信号を設計時に PLD フ ァ ブ リ ッ ク の一般配線に よ って配線する こ と はで き<br />
ません。各 MachXO2 デバ イ スの SPI 信号の詳細なパ ッ ド 位置及びピ ン位置については、 MachXO2 フ ァ ミ リ ・<br />
データ シー ト のピンテーブルを参照してください。<br />
SPI IP 信号<br />
SPI イ ン ターフ ェ イ スはシ リ アル転送プ ロ ト コルを使用し ます。 データはシ リ アル転送 (送信側デバイ スか<br />
ら シ フ ト ア ウ ト ) さ れ、 シ リ アルに受信されて、 受信側デバ イ スにシ フ ト イ ン さ れます。 マ ス タデバ イ スは<br />
特定のス レーブデバイ ス を選択し て、 そのス レーブデバイ スが コ マン ド / データ のシ フ ト イ ン を行った り 、<br />
データのシフ ト アウ ト によ る応答を行った り でき る よ う にし ます。<br />
表 9-17 に IP コ ア と し て生成さ れる信号を示し ます。各信号の説明 と し てその使用法 と 、それを設計プ ロ ジ ェ<br />
ク ト で接続する方法が示されています。<br />
表 9-17. SPI ~ IP 信号<br />
信号名<br />
アサイン済み<br />
のピン名称<br />
I/O<br />
ビッ ト<br />
幅<br />
spi_clk MCLK/CCLK 双方向 1<br />
spi_miso SPISO/SO 双方向 1<br />
spi_mosi SISPI/SI 双方向 1<br />
spi_csn[7:0] CSSPIN 出力 8<br />
spi_scsn — 入力 1<br />
9-22<br />
記 述<br />
SPI コ アの双方向 ク ロ ッ ク 線。 SPI コ アがマス タ モー ド の場合、 信号は出力<br />
(MCLK) で SPI コ アがス レーブモー ド の場合、 信号は入力 (CCLK)。 ク ロ ッ<br />
ク 速度は最速 50MHz まで対応。<br />
デバイ スの事前に割 り 当て ら れた I/O に直接配線さ れなければな ら ない。 各<br />
MachXO2 デバイ スの SPI ポー ト の詳細なパッ ド と ピン位置については<br />
MachXO2 フ ァ ミ リ ・ データ シー ト のピ ンテーブルを参照。<br />
SPI コ アの双方向データ線。 SPI コ アがマス タ モー ド の場合、 信号は入力<br />
(SPISO) で、 SPI コ アがス レーブモー ド の場合、 信号は出力 (SO)。<br />
デバイ スの事前に割 り 当て ら れた I/O に直接配線さ れなければな ら ない。 各<br />
MachXO2 デバイ スの SPI ポー ト の詳細なパッ ド と ピン位置については<br />
MachXO2 フ ァ ミ リ ・ データ シー ト のピ ンテーブルを参照。<br />
SPI コ アの双方向データ線。 SPI コ アがマス タ モー ド の場合、 信号は出力<br />
(SISPI) で、 SPI コ アがス レーブモー ド の場合、 信号は入力 (SI)。<br />
デバイ スの事前に割 り 当て ら れた I/O に直接配線さ れなければな ら ない。 各<br />
MachXO2 デバイ スの SPI ポー ト の詳細なパッ ド と ピン位置については<br />
MachXO2 フ ァ ミ リ ・ データ シー ト のピ ンテーブルを参照。<br />
マスタチップセレクト (Lowアクティブ)。 スレーブSPIインターフェイスで 最大 8 本の外付けデバイ ス を制御で き る。<br />
spi_csn[0] はデバイ スの事前に割 り 当て ら れた I/O に直接配線 さ れなければな<br />
らない。 各 MachXO2 デバイ スの SPI ポー ト の詳細なパッ ド と ピン位置につ<br />
いては MachXO2 フ ァ ミ リ ・ データ シー ト のピ ンテーブルを参照。<br />
ス レーブチ ッ プセレ ク ト (Low ア ク テ ィ ブ )。 外付け SPI マス タ コ ン ト ローラ<br />
は、 MachXO2 のス レーブ SPI コ アを選択する ための本信号を アサー ト で き<br />
る。 本信号は MachXO2 デバイ スのどの GPIO に も配線する こ と がで き る。
MachXO2 デバイスのユーザフ ラ ッ シ ュ メ モ リ と<br />
ラ テ ィ スセ ミ コ ンダ ク タ ー ハー ド マ ク ロ化制御機能の使用ガ イ ド<br />
表 9-17. SPI ~ IP 信号<br />
信号名<br />
アサイン済み<br />
のピン名称<br />
ufm_sn SN 入力 1<br />
spi_irq — 出力 1<br />
cfg_wake — 出力 1<br />
cfg_stdby — 出力 1<br />
SPI レ ジ ス タ<br />
SPI コ アは制御レ ジ ス タ、 コ マン ド レ ジ ス タ、 ス テータ ス レ ジ ス タ、 及びデータ レ ジ ス タ の組を通し て EFB<br />
WISHBONE イ ン ターフ ェ イ ス と 通信し ます。 表 9-18 にレ ジ ス タ名 と その機能を示し ます。 こ れ ら のレ ジ ス<br />
タは、 EFBレジスタマップのサブセッ トになっています。<br />
表 9-18. SPI レ ジ ス タ<br />
注 : 特に指定し ない限 り 、 書き込み可能レ ジ ス タ の全予約ビ ッ ト には '0' が書かれなければな り ません。<br />
表 9-19. SPI 制御 0<br />
I/O<br />
ビッ ト<br />
幅<br />
注 : 本レ ジ ス タ に書き込みをする と SPI コ アは リ セ ッ ト さ れます。<br />
UFM を選択する ための、 専用の コンフィグレーション ・スレーブチップセレ<br />
クト(アクティブLow)。<br />
ufm_sn はデバイ スの事前に割 り 当て ら れた I/O に直接配線 さ れなければな ら<br />
ない。 各 MachXO2 デバイ スの SPI ポー ト の詳細なパッ ド と ピン位置につい<br />
ては MachXO2 フ ァ ミ リ ・ データ シー ト のピ ンテーブルを参照。 SPI コ アがデ<br />
ザ イ ンで イ ン ス タ ン ス化 さ れてい る と 、 'ufm_sn' が EFB プ リ ミ テ ィ ブのポー<br />
トに現れているかどうかに関わらずSNはアクティブとなる。外部マスタSPI<br />
バスに接続されていない場合は、 このピンを外部プルア ッ プする必要があ<br />
る。<br />
SPI コ アの割 り 込み要求の信号出力。 本信号の意図する使用法は、<br />
WISHBONE マス タ コ ン ト ローラ (すなわちマ イ ク ロ コ ン ト ローラやス テー ト<br />
マシン) に接続し て、 特定の条件が満た さ れた場合に割 り 込みを要求する こ<br />
と 。 それら の条件は SPI レ ジ ス タ定義で記述さ れてい る通 り 。<br />
ウ ェ イ ク ア ッ プ信号。 MachXO2 デバイ スのパワーモジ ュールにのみ接続 さ<br />
れる。 本信号は EFB GUI、 SPI タ ブ内の "Wakeup Enable" 機能がセ ッ ト さ れ<br />
た場合にのみイネーブルになる。<br />
ス タ ンバイ信号。 MachXO2 デバイ スのパワーモジ ュールにのみ接続 さ れる。<br />
本信号は EFB GUI、 SPI タ ブ内の "Wakeup Enable" 機能がセ ッ ト さ れた場合<br />
にのみイネーブルになる。<br />
SPI レ ジ ス タ名 レ ジ ス タ機能 ア ド レ ス ア ク セ ス<br />
SPICR0 制御レ ジ ス タ 0 0x54 Read/Write<br />
SPICR1 制御レ ジ ス タ 1 0x55 Read/Write<br />
SPICR2 制御レ ジ ス タ 2 0x56 Read/Write<br />
SPIBR ク ロ ッ ク ・ プ リ ス ケール 0x57 Read/Write<br />
SPICSR マス タ チ ッ プセレ ク ト 0x58 Read/Write<br />
SPITXDR 送信データ 0x59 Write<br />
SPISR ス テータ ス 0x5A Read<br />
SPIRXDR 受信データ 0x5B Read<br />
SPIIRQ 割 り 込み要求 0x5C Read/Write<br />
SPIIRQEN 割 り 込み要求イ ネーブル 0x5D Read/Write<br />
SPICR0 0x54<br />
ビッ ト 7 6 5 4 3 2 1 0<br />
名称 TIdle_XCNT[1:0] TTrail_XCNT[2:0] TLead_XCNT[2:0]<br />
デフォルト 0 0 0 0 0 0 0 0<br />
ア ク セ ス R/W R/W R/W R/W R/W R/W R/W R/W<br />
9-23<br />
記 述
MachXO2 デバイスのユーザフ ラ ッ シ ュ メ モ リ と<br />
ラ テ ィ スセ ミ コ ンダ ク タ ー ハー ド マ ク ロ化制御機能の使用ガ イ ド<br />
TIdle_XCNT[1:0] Idle Delay Count (ア イ ド ル遅延カ ウ ン ト )。 SCK 期間中に、 マ ス タ ・ チ ッ プセレ ク ト<br />
が Low にアサー ト さ れる (マ ス タ モー ド のみ) 前の最小イ ン ターバルを指定する。<br />
00: ½<br />
01: 1<br />
10: 1.5<br />
11: 2<br />
TTrail_XCNT[2:0] Trail Delay Count ( ト レ イル遅延カ ウ ン ト )。 SCK 期間中の、 SCK の最後のエ ッ ジと、<br />
マ ス タ ・ チ ッ プセレ ク ト の High デサー ト (マ ス タ モー ド のみ) と の間の最小イ ン ター<br />
バルを指定する。<br />
000: ½<br />
001: 1<br />
010: 1.5<br />
…<br />
111: 4<br />
TLead_XCNT[2:0] Lead Delay Count ( リ ー ド 遅延カ ウ ン ト )。 SCK 期間中に、 マ ス タ ・ チ ッ プセレ ク ト が<br />
Low にアサー ト さ れてか ら、 SCK の最初のエ ッ ジ (マ ス タ モー ド のみ) までの最小イ<br />
ン ターバルを指定する。<br />
000:½<br />
001:1<br />
010:1.5<br />
…<br />
111: 4<br />
表 9-20. SPI 制御 1<br />
SPICR1 0x55<br />
ビッ ト 7 6 5 4 3 2 1 0<br />
名称 SPE WKUPEN_USER WKUPEN_CFG TXEDGE (Reserved)<br />
デフォル ト 0 0 0 0 0 0 0 0<br />
ア ク セ ス R/W R/W R/W R/W — — — —<br />
注 : 本レ ジ ス タ に書き込みをする と SPI コ アは リ セ ッ ト さ れます。<br />
SPE SPI Enable。 本ビ ッ ト は SPI コ ア機能を イ ネーブルする。 SPE が ク リ ア さ れる と 、 SPI<br />
はデ ィ セーブルされて、 ア イ ド ルス テー ト に強制される。<br />
0: SPI はデ ィ セーブル<br />
1: SPI はイ ネーブルで、 ポー ト 端子は SPI 機能専用にな る<br />
WKUPEN_USER Wake-up Enable via User (ユーザに よ る ウ ェ イ ク ア ッ プを イ ネーブル)。 ユーザス レー<br />
ブSPIチップセレクト (SCSN) がLowにドライブされたときに、SPIコアがオンチッ<br />
プ電源コ ン ト ローラにウ ェ イ ク ア ッ プ信号を送信し、ス タ ンバイ / ス リ ープモード の<br />
部分をウェイ クアップするこ とをイネーブルする。<br />
0: ウ ェ イ ク ア ッ プはデ ィ セーブル<br />
1: ウ ェ イ ク ア ッ プはイ ネーブル<br />
WKUPEN_CFG Wake-up Enable Configuration (ウ ェ イ ク ア ッ プ ・ イ ネーブル、 コ ン フ ィ グ レーシ ョ ン)<br />
本ビ ッ ト は、 コンフ ィ グレーシ ョ ン ・ スレーブ SPI イネーブルである SN が Low にド<br />
ラ イ ブ さ れた時に、ス タ ンバイ / ス リ ープモー ド か らデバイ ス を起動する ために、SPI<br />
コアがウェイクアップ信号をオンチップ・パワーコント ローラに送出することをイ<br />
ネーブルする。<br />
0: ウ ェ イ ク ア ッ プはデ ィ セーブル<br />
1: ウ ェ イ ク ア ッ プはイ ネーブル<br />
9-24
MachXO2 デバイスのユーザフ ラ ッ シ ュ メ モ リ と<br />
ラ テ ィ スセ ミ コ ンダ ク タ ー ハー ド マ ク ロ化制御機能の使用ガ イ ド<br />
TXEDGE Data Transmit Edge (データ送信エ ッ ジ)。 SPI プ ロ ト コルに対する ラ テ ィ ス固有の拡<br />
張機能を イ ネーブルする。SPI データ を どの ク ロ ッ ク エ ッ ジで送信する かを選択する。<br />
図 9-27 ~ 9-30 を参照。<br />
0: CPOL 及び CPHA で定義 さ れた MCLK エ ッ ジでデータ を送信する<br />
1: CPOL 及び CPHA の定義よ り も 1/2 MCLK 前にデータ を送信する<br />
表 9-21. SPI 制御 2<br />
SPICR2 0x56<br />
ビッ ト 7 6 5 4 3 2 1 0<br />
名称 MSTR MCSH SDBRE (Reserved) CPOL CPHA LSBF<br />
デフォル ト 0 0 0 0 0 0 0 0<br />
ア ク セ ス R/W R/W R/W — — R/W R/W R/W<br />
注 : 本レ ジ ス タ に書き込みをする と SPI コ アは リ セ ッ ト さ れます。<br />
MSTR SPI Master/Slave Mode (マス タ / ス レーブモー ド 選択)。 本ビ ッ ト は SPI コ アのマ ス タ<br />
/ ス レーブ動作モー ド を選択する。 本ビ ッ ト を変更する こ と は、 SPI シ ス テム を ア イ<br />
ド ルス テー ト に強制する。<br />
0: SPI はス レーブモー ド<br />
1: SPI はマ ス タ モー ド<br />
MCSH SPI Master CSN Hold (マス タ CSN 保持)。 ホ ス ト がビジ ィ の場合に、 チ ッ プセレ ク ト<br />
を High にせず と もデータ送信を停止する ために、 マ ス タチ ッ プセレ ク ト を ア ク テ ィ<br />
ブに保持する。<br />
注:本モードの使用は、WISHBONEクロックが4以上の値 (R1デバイスでは6) で分周される<br />
場合に限定されます。<br />
0: マ ス タは通常動作<br />
1: マ ス タは送信データ が全 く な く て も チ ッ プセレ ク ト を Low に保持する<br />
SDBRE Slave Dummy Byte Response Enable (ス レーブ ・ ダ ミ ーバイ ト 応答イ ネーブル)。 SPI プ<br />
ロ ト コルに対する ラ テ ィ ス固有の拡張機能を イ ネーブルする。 内部サポー ト 回路<br />
(WISHBONE ホ ス ト な ど) が必要な時間内に初期データ に応答で き ない場合、 及びス<br />
レーブ ・ リ ー ド ア ウ ト データ を定期的に高速 SPI ク ロ ッ ク レー ト で使用で き る よ う に<br />
する場合に使用する。<br />
イ ネーブル さ れる と 、SPI ス レーブ リ ー ド に応答し てダ ミ ーの0xFFバイ ト が、SPITXDR<br />
への初期ラ イ ト (TRRDY=1) まで送信 さ れる。 WISHBONE ホ ス ト に よ って 1 バ イ ト<br />
が SPITXDR に ラ イ ト さ れる と 、 0x00 が 1 バイ ト と 、 それに続いてすぐに SPITXDR の<br />
データ が送信さ れる。 こ のモー ド では、 外部 SPI マ ス タ が SPI ス レーブの リ ー ド 時に<br />
初期 0x00 バイ ト を ス キ ャ ン し、 実際のデータ の開始を示す必要があ る。 図 9-29 を参<br />
照。<br />
0: 通常のス レーブ SPI 動作<br />
1: ラ テ ィ ス固有のス レーブ ・ ダ ミ ーバ イ ト 応答を イ ネーブル<br />
注 : こ の メ カニズムは、 初期データ遅延期間でのみ有効です。 初期データ が利用可能になった後<br />
は、 その後のデータ を必要な SPI バス ・ データ レー ト で SPITXDR に渡す必要があ り ます。<br />
CPOL SPI Clock Polarity (SPI ク ロ ッ ク 極性)。 SPI ク ロ ッ ク を反転する かど う かを選択する。<br />
SPI モジ ュール間でデータ を転送する には、 SPI モジ ュール同士が同一の CPOL 値を<br />
持つ必要があ る。 マ ス タ モー ド では、 本ビ ッ ト を変更する と 実行中の転送が中止 さ<br />
れ、 SPI シ ス テムが強制的にア イ ド ル状態にな る。 図 9-25 ~ 9-28 を参照。<br />
0: ア ク テ ィ ブ High の ク ロ ッ ク を選択。 ア イ ド ル状態では SCK は Low<br />
1: ア ク テ ィ ブ Low の ク ロ ッ ク を選択。 ア イ ド ル状態では SCK は High<br />
9-25
MachXO2 デバイスのユーザフ ラ ッ シ ュ メ モ リ と<br />
ラ テ ィ スセ ミ コ ンダ ク タ ー ハー ド マ ク ロ化制御機能の使用ガ イ ド<br />
CPHA SPI Clock Phase (SPI ク ロ ッ ク 位相)。 SPI ク ロ ッ ク 形式を選択する。 マ ス タ モー ド で<br />
は、 本ビ ッ ト を変更する と 実行中の転送が中止 さ れ、 SPI シ ス テムが強制的にア イ ド<br />
ル状態にな る。 図 9-25 ~ 9-28 を参照。<br />
0: データ が最初の ク ロ ッ ク エ ッ ジでキ ャ プチャ さ れ、 反対の ク ロ ッ ク エ ッ ジで<br />
伝播される<br />
1: データ が 2 番目の ク ロ ッ ク エ ッ ジでキ ャ プチ ャ さ れ、 反対の ク ロ ッ ク エ ッ ジ<br />
で伝播される *<br />
* 注 : CPHA=1 では、 ユーザが CPOL の値に応じ て明示的に SCK パッ ド をプルア ッ プまたはプル<br />
ダ ウ ンする必要があ り ます (例えば CPHA=1 及び CPOL=0 では SCK をプルダ ウ ン)。 CPHA=0 で<br />
は、 プル方向は任意に設定で き ます。<br />
ス レーブ SPI コ ン フ ィ グ レーシ ョ ンモー ド のデフ ォル ト 設定は、CPOL と CPHA のみに対応する。<br />
LSBF LSB-First。 LSB か ら先に SPI イ ン ターフ ェ イ スに送出 さ れる。 マス タ モー ド では、 本<br />
ビ ッ ト を変更する と 実行中の転送が中止 さ れ、 SPI シ ス テムが強制的にア イ ド ル状態<br />
にな る。 図 9-25 ~ 9-28 を参照。<br />
注 : 本ビ ッ ト はデータ レジス タ内の MSB と LSB 位置には影響し ません。 データ レジス タの リ ー<br />
ドライトは、常にビット7がMSB となります。<br />
0: データ送出は最上位ビ ッ ト (MSB) が先出し<br />
1: データ送出は最上位ビ ッ ト (LSB) が先出し<br />
表 9-22. SPI ク ロ ッ ク ・ プ リ ス ケール<br />
SPIBR 0x57<br />
ビッ ト 7 6 5 4 3 2 1 0<br />
名称 (Reserved) DIVIDER[5:0]<br />
デフォル ト 0 0 0 0 0 0 0 0<br />
アクセス — — R/W R/W R/W R/W R/W R/W<br />
1. ハード ウ ェアのデフ ォル ト は EFB コ ンポーネン ト のイ ン ス タ ン ス化パラ メ ータで上書き されるかも しれません。 次の記述<br />
を参照。<br />
DIVIDER[5:0] SPI Clock Prescale value (SPI ク ロ ッ ク のプ リ ス ケール値)。 WISHBONE ク ロ ッ ク 周波<br />
数が DIVIDER[5:0] で分周 さ れ、求め ら れる SPI ク ロ ッ ク 周波数が生成 さ れる。本レ ジ<br />
スタにライト動作を行うと、SPIコアがリセットされる。DIVIDERは2以上にする必<br />
要があ る。<br />
注 : EFB GUI の SPI タ ブで SPI コ ア をパ ラ メ ータ設定する と 、IPexpress に よ ってデジ タル値が計<br />
算さ れます。 こ の計算は、 どち ら も ユーザが入力する WISHBONE ク ロ ッ ク 周波数 と SPI 周波数<br />
に基づいて行われます。 分周器のデジ タル値は、 デバイ スのプロ グ ラ ム中に MachXO2 デバイ ス<br />
にプ ロ グ ラ ム さ れます。 電源投入後、 ま たはデバ イ スの再コ ン フ ィ グ レーシ ョ ン後、 データ が<br />
SPIBR レ ジ ス タ に ロー ド さ れます。<br />
SPIBR レ ジ ス タは WISHBONE イ ン ターフ ェ イ スか ら リ ー ド / ラ イ ト ア ク セ スがで き<br />
る。 デバイ ス動作中にダ イ ナ ミ ッ ク に ク ロ ッ ク ・ プ リ ス ケールレ ジ ス タ を書き換え可<br />
能。<br />
表 9-23. SPI マ ス タ ・ チ ッ プセレ ク ト<br />
SPICSR 0x58<br />
ビッ ト 7 6 5 4 3 2 1 0<br />
名称 CSN_7 CSN_6 CSN_5 CSN_4 CSN_3 CSN_2 CSN_1 CSN_0<br />
デフォルト 0 0 0 0 0 0 0 0<br />
ア ク セ ス R/W R/W R/W R/W R/W R/W R/W R/W<br />
9-26
MachXO2 デバイスのユーザフ ラ ッ シ ュ メ モ リ と<br />
ラ テ ィ スセ ミ コ ンダ ク タ ー ハー ド マ ク ロ化制御機能の使用ガ イ ド<br />
CSN_[7:0] SPI Master Chip Selects (マ ス タ ・ チ ッ プセレ ク ト )。 特定の MCSN (マ ス タ ・ チ ッ プ<br />
セレク ト) 線をアサートするためにマスタモードで使用される。 このレジスタは 8<br />
ビ ッ ト で、 SPI コ アは最大 8 個の外付け SPI ス レーブデバ イ ス を制御可能。 各ビ ッ ト<br />
は 1 本のマ ス タ ・ チ ッ プセレ ク ト 線 (ア ク テ ィ ブ Low) に対応する。 ビ ッ ト [7:1] は<br />
FPGA フ ァ ブ リ ッ ク 経由で任意の I/O ピ ンに接続で き る が、 ビ ッ ト 0 はピ ン位置が事<br />
前に割 り 当て られている。このレジス タには、WISHBONE イ ン ターフ ェ イ スから リ ー<br />
ド/ライ トアクセスができる。 このレジスタでのライ ト動作によってSPIコアはリセッ<br />
トされる。<br />
表 9-24. SPI 送信データ レ ジ ス タ<br />
SPITXDR 0x59<br />
ビッ ト 7 6 5 4 3 2 1 0<br />
名称 SPI_Transmit_Data[7:0]<br />
デフォルト — — — — — — — —<br />
アクセス W W W W W W W W<br />
SPI_Transmit_Data[7:0] SPI Transmit Data (SPI 送信データ)。 本レ ジ ス タ には、 SPI バスに送信 さ れ る バ イ ト<br />
が格納 さ れる。 本レ ジ ス タ のビ ッ ト 0 は LSB で、 LSBF=0 の場合は最後に送信さ れ、<br />
LSBF=1 の場合は最初に送信される。<br />
注 : ス レーブ と し て動作し てい る時は、 SPITXDR は TRDY が '1' の時に、 かつ少な く と も先頭ビ ッ ト<br />
が SO に表れる 0.5 CCLK 周期前に ら い と さ れなければな り ません。 例えば、 CPOL = CPHA =<br />
TXEDGE = LSBF = 0 の時、 SPITXDR は must be written prior to the 直前バイ ト の LSB (ビ ッ ト 0)<br />
をサンプルする ために用いられる CCLK の立ち上が り よ り も前にラ イ ト されなければな り ませ<br />
ん。 図 9-27 を参照の こ と 。 本タ イ ミ ン グでは、 全てのス レーブ SPI リ ー ド 動作では、 少な く と<br />
も 1 ダ ミ ーバ イ ト が含まれる こ と が必要 と な り ます。<br />
表 9-25. SPI ス テータ ス<br />
SPISR 0x5A<br />
ビッ ト 7 6 5 4 3 2 1 0<br />
名称 TIP (Reserved) TRDY RRDY (Rsrv) ROE MDF<br />
デフォル ト 0 — — 0 0 — 0 0<br />
アクセス R — — R R — R R<br />
TIP SPI Transmitting In Progress (送信中)。本ビ ッ ト は SPI ポー ト がデータ の送受信中であ<br />
る こ と を示す。<br />
0: SPI の送信は完了<br />
1: SPI は送信中 *<br />
*注:本ビットはR1デバイスでは機能しません。<br />
TRDY SPI Transmit Ready (SPI 送信レデ ィ )。 SPI 送信データ レ ジ ス タ (SPITXDR) が空であ<br />
る こ と を示す。 本ビ ッ ト は SPITXDR への ラ イ ト で ク リ ア さ れる。 本ビ ッ ト は割 り 込<br />
みを発生可能。<br />
0: SPITXDR データ レ ジ ス タは空でない<br />
1: SPITXDR データ レ ジ ス タは空であ る<br />
RRDY SPI Receive Ready (SPI 受信レデ ィ )。 受信データ レ ジ ス タ (SPIRXDR) に有効な受信<br />
データ が格納されてい る こ と を示す。 本ビ ッ ト は SPIRXDR への リ ー ド ア ク セ スで ク<br />
リ ア さ れる。 本ビ ッ ト は割 り 込みを発生可能。<br />
0: SPIRXDR にデータ がない<br />
1: SPIRXDR に有効な受信データ が格納 さ れてい る<br />
9-27
MachXO2 デバイスのユーザフ ラ ッ シ ュ メ モ リ と<br />
ラ テ ィ スセ ミ コ ンダ ク タ ー ハー ド マ ク ロ化制御機能の使用ガ イ ド<br />
ROE Receive Overrun Error (受信オーバ ラ ンエ ラー)。 前のデータ が読まれる前に SPIRXDR<br />
に新し いデータ を受信し た こ と を示す。 前のデータは失われる。 本ビ ッ ト は割 り 込み<br />
を発生可能。<br />
0: 正常<br />
1: 受信オーバ ラ ンが検出された<br />
MDF Mode Fault (モー ド フ ォル ト ) 。 MSTR=1 の と き に、 ス レーブ SPI チ ッ プセレ ク ト<br />
(SPI_SCSN) が Low に ド ラ イ ブ さ れた こ と を示す。 本ビ ッ ト は SPICR0 か SPICR1、 ま<br />
たは SPICR2 に何ら かの ラ イ ト を行 う と ク リ ア さ れる。 本ビ ッ ト は割 り 込みを発生可<br />
能。<br />
0: 正常<br />
1: モー ド フ ォル ト が検出された<br />
表 9-26. SPI 受信データ レ ジ ス タ<br />
SPIRXDR 0x5B<br />
ビッ ト 7 6 5 4 3 2 1 0<br />
名称 SPI_Receive_Data[7:0]<br />
デフォルト 0 0 0 0 0 0 0 0<br />
アクセス R R R R R R R R<br />
SPI_Receive_Data[7:0] SPI Receive Data (SPI 受信データ)。 本レ ジ ス タ には、 SPI バスか ら キャプチャされた<br />
バイ ト が格納される。 本レ ジ ス タ のビ ッ ト 0 は LSB で、 LSBF=0 の場合は最後に受信<br />
さ れ、 LSBF=1 の場合は最初に受信 さ れる。<br />
表 9-27. SPI 割 り 込みス テータ ス<br />
SPIIRQ 0x5C<br />
ビッ ト 7 6 5 4 3 2 1 0<br />
名称 (Reserved) IRQTRDY IRQRRDY (Rsrv) IRQROE IRQMDF<br />
デフォル ト — — — 0 0 — 0 0<br />
アクセス — — — R/W R/W — R/W R/W<br />
IRQTRDY SPI Transmit Ready (SPI 送信レディ) 割り込みステータス。 イネーブルされる と、<br />
TRDY がアサー ト さ れた こ と を示す。 本ビ ッ ト に '1' を ラ イ ト する と 、 割 り 込みが ク<br />
リアされる。<br />
1: SPI 送信レデ ィ 割 り 込み<br />
0: 割 り 込みな し<br />
IRQRRDY SPI Receive Ready (SPI 受信レデ ィ ) 割 り 込みス テータ ス。イ ネ ー ブ ル さ れ る と 、<br />
RRDY がアサー ト さ れた こ と を示す。 本ビ ッ ト に '1' を ラ イ ト する と 、 割 り 込みが ク<br />
リアされる。<br />
1: SPI 受信レデ ィ 割 り 込み<br />
0: 割 り 込みな し<br />
IRQROE Receive Overrun Error (受信オーバ ラ ン) 割 り 込みス テータ ス。 イ ネーブル さ れる と 、<br />
ROE がアサー ト さ れた こ と を示す。 本ビ ッ ト に '1' を ラ イ ト する と 、 割 り 込みが ク リ<br />
アされる。<br />
1: 受信オーバ ラ ンエ ラー割 り 込み<br />
0: 割 り 込みな し<br />
9-28
MachXO2 デバイスのユーザフ ラ ッ シ ュ メ モ リ と<br />
ラ テ ィ スセ ミ コ ンダ ク タ ー ハー ド マ ク ロ化制御機能の使用ガ イ ド<br />
IRQMDF Mode Fault (モー ド フ ォール ト ) 割 り 込みス テータ ス。 イ ネーブル さ れる と 、 MDF が<br />
アサー ト さ れた こ と を示す。 本ビ ッ ト に '1' を ラ イ ト する と 、 割 り 込みが ク リ ア さ れ<br />
る。<br />
1: モー ド フ ォール ト 割 り 込み<br />
0: 割 り 込みな し<br />
表 9-28. SPI 割 り 込みイ ネーブル<br />
SPIIRQEN 0x5D<br />
ビッ ト 7 6 5 4 3 2 1 0<br />
名称 (Reserved) IRQTRDYEN IRQRRDYEN (Rsrv) IRQROEEN IRQMDFEN<br />
デフォル ト 0 0 0 0 0 0 0 0<br />
アクセス — — — R/W R/W — R/W R/W<br />
IRQTRDYEN SPI Transmit Ready (SPI 送信レデ ィ ) 割 り 込み要求を イ ネーブル<br />
1: 割 り 込み生成を イ ネーブル<br />
0: 割 り 込み生成をデ ィ セーブル<br />
IRQRRDYEN SPI Receive Ready (SPI 受信レデ ィ ) 割 り 込み要求を イ ネーブル<br />
1: 1: 割 り 込み生成を イ ネーブル<br />
0: 割 り 込み生成をデ ィ セーブル<br />
IRQROEEN Receive Overrun Error (受信オーバ ラ ンエ ラー) 割 り 込み要求を イ ネーブル<br />
1: 1: 割 り 込み生成を イ ネーブル<br />
0: 割 り 込み生成をデ ィ セーブル<br />
IRQMDFEN Mode Fault (モー ド フ ォル ト ) 割 り 込み要求を イ ネーブル<br />
1: 1: 割 り 込み生成を イ ネーブル<br />
0: 割 り 込み生成をデ ィ セーブル<br />
図 9-14にWISHBONE イ ン ターフ ェ イ スか ら開始されたマス タ SPI リ ー ド 及びラ イ ト の制御についてのフ ロー<br />
図を示し ます。<br />
9-29
MachXO2 デバイスのユーザフ ラ ッ シ ュ メ モ リ と<br />
ラ テ ィ スセ ミ コ ンダ ク タ ー ハー ド マ ク ロ化制御機能の使用ガ イ ド<br />
図 9-14. SPI マ ス タ の リ ー ド / ラ イ ト 例 (WISHBONE 経由 )<br />
Y<br />
Start<br />
CR2
MachXO2 デバイスのユーザフ ラ ッ シ ュ メ モ リ と<br />
ラ テ ィ スセ ミ コ ンダ ク タ ー ハー ド マ ク ロ化制御機能の使用ガ イ ド<br />
IPexpress に よ る SPI コ アの構成<br />
IPexpress に よ って SPI コ アのパ ラ メ ータ を設定し て、 EFB モジ ュールを生成で き ます。 EFB GUI で SPI タ ブ<br />
を選択する と 、 SPI コ アの構成可能なパ ラ メ ータ設定が表示されます。 図 9-15 に SPI コ ア をサンプルデザ イ<br />
ン用に構成した例を示し ます。<br />
図 9-15. IPexpress に よ る EFB モジ ュールの SPI 機能の構成<br />
SPI Mode (SPI モー ド )<br />
こ のオプシ ョ ンでは、 ユーザは SPI コ アの初期モー ド と し て Master、 Slave、 Include Both のいずれかを選択<br />
できます。 デバイスのコンフィグレーション ・ ビッ トスト リームによって、 これらの設定がデバイスのコン<br />
フ ィ グ レーシ ョ ン時に SPI レ ジ ス タ に ロー ド さ れます。レ ジ ス タ SPICR1 が SPI モー ド 設定の影響を受け ます。<br />
SPI モー ド は WISHBONE イ ン ターフ ェ イ スに よ る動的な制御が可能であ る ため、 マ ス タ と ス レーブの両方に<br />
ア ク セ スで き る よ う に設定を変更する には、 こ のオプシ ョ ンの設定で行います。<br />
SPI Master Clock Rate – Desired Frequency (SPI マス タ ク ロ ッ ク レー ト 、 目標周波数)<br />
こ の編集ボ ッ ク スで、 ユーザは目標のマス タ ク ロ ッ ク周波数を指定で き ます。 SPI イ ン ターフ ェ イ スは最高<br />
50 MHz の ク ロ ッ ク 速度に対応で き ます。 計算に よ って分周値が決定さ れ、 入力 ク ロ ッ ク ソースか ら こ の値<br />
に近いクロックが生成されます。WISHBONEクロックが SPI コアへの入力クロックソースです。入力<br />
WISHBONE ク ロ ッ ク の周波数は"EFB Enables" タ ブで指定し ます。レ ジ ス タ SPIBRが本設定の影響を受け ます。<br />
SPI Master Clock Rate – Actual Frequency (SPI マス タ ク ロ ッ ク レー ト 、 実際の周波数)<br />
ユーザが要求し た周波数に正確に入力 WISHBONE ク ロ ッ ク を分周する こ と は必ずし も可能でないため、 こ<br />
の リ ー ド オン リ ・ フ ィ ール ド に実際の周波数値が表示されます。 目標の SPI ク ロ ッ ク及び WISHBONE ク ロ ッ<br />
ク の両方のフ ィ ール ド のデータ が有効な と き にいずれかが更新 さ れる と 、 こ のフ ィ ール ド には小数点以下 2<br />
位に丸められた値が表示されます。<br />
9-31
MachXO2 デバイスのユーザフ ラ ッ シ ュ メ モ リ と<br />
ラ テ ィ スセ ミ コ ンダ ク タ ー ハー ド マ ク ロ化制御機能の使用ガ イ ド<br />
LSB First (LSB 先出し)<br />
こ の設定は 1 バイ ト データ のシ リ アルシ フ ト の順序を指定し ます。 データ順序 (MSB あ る いは LSB 先出し)<br />
は、 SPI コ ア内部でプ ロ グ ラ マブルです。 レ ジ ス タ SPICR2 が本設定の影響を受け ます。<br />
Inverted Clock (反転ク ロ ッ ク)<br />
データ のサンプ リ ン グ と 出力に使用 さ れる ク ロ ッ ク極性は、 SPI コ ア用にプ ロ グ ラ ム可能です。 レ ジ ス タ<br />
SPICR1 が本設定の影響を受け ます。<br />
Phase Adjust (位相調整)<br />
特定の要件を備えた SPI デバ イ ス用に、 代替の ク ロ ッ ク / データ関係が用意されています。 こ のオプシ ョ ン<br />
では、 ユーザは用途に合わせて位相変更を指定で き ます。 レ ジ ス タ SPICR0 が本設定の影響を受け ます。<br />
Master Chip Selects (マスタ ・ チ ッ プセレク ト )<br />
SPI コ アには、 マ ス タ動作用に最高 8 個の個別チ ッ プセレ ク ト 出力を提供する機能があ り ます。 こ のフ ィ ー<br />
ル ド では、 ユーザはコ アに よ る制御対象のス レーブ SPI イ ン ターフ ェ イ ス を持つ外部デバ イ スの数を選択で<br />
き ます。 SPICSR レ ジ ス タ が本設定の影響を受け ます。<br />
TX Ready, RX Ready, TX Overrun, RX Overrun (TX/RX レデ ィ 、 オーバラ ン)<br />
コ アには、 特定のデータバ ッ フ ァ状態を WISHBONE ホ ス ト に通知する、 パ ラ メ ータ設定可能な ス テータ ス<br />
フ ラ グがあ り ます。 ユーザは、 こ れ ら のいずれのオプシ ョ ンが必要であ る かを指定で き ます。 SPIIRQEN が<br />
GUI の割 り 込み設定の影響を受け ます。<br />
Enable Port (Interrupts) (割 り 込みイネーブルポー ト )<br />
こ の設定では、ユーザは必要に応じ て EFB モジ ュールの SPI 割 り 込み出力信号 と イ ン ターフ ェ イ ス可能です。<br />
Wake-up Enable (ウ ェ イ クア ッ プ ・ イネーブル)<br />
SPI コ アは、 低電力モー ド か ら デバ イ ス を起動 さ せる ために、 ウ ェ イ ク ア ッ プ信号をオンチ ッ プ ・ パワーコ<br />
ン ト ローラ に送信し ます。 ウ ェ イ ク ア ッ プ機能は SSCS ま たは SN がアサー ト さ れ、 デバ イ スが低電力モー ド<br />
の場合に有効です。 レ ジ ス タ SPICR1 が本設定の影響を受け ます。<br />
ハー ド マ ク ロ ・ タ イ マ / カ ウ ン タ PWM<br />
MachXO2 EFB はハードタイマ / カウンタ IP コアを持っています。 このタイマ / カウンタは、 独立したアウ<br />
ト プ ッ ト コ ンペア (出力比較) ユニ ッ ト 及び PWM サポー ト を備えた汎用の双方向 16 ビ ッ ト タ イ マ / カ ウ ン<br />
タモジュールです。 このタイマ / カウンタは次の機能を実現します。<br />
• 4 通 り の固有の動作モー ド<br />
– ウォッチド ッグタイマ<br />
– 比較一致時の タ イ マ ク リ ア<br />
– 高速 PWM<br />
– 位相及び周波数補正 PWM<br />
• プログラマブル ・ クロッ ク入力ソース<br />
• プログラマブル入力クロッ クプリ スケール<br />
• PLD フ ァ ブ リ ッ ク への割 り 込み出力<br />
• オンチップ ・ スタンバイモード ・ コン ト ローラに対する 1 本のウェイクアップ割り込み<br />
• 3 つの独立し た割 り 込みソース : オーバフ ロー、 ア ウ ト プ ッ ト コ ンペア一致、 イ ンプ ッ ト キ ャ プチャ<br />
• 自動再ロー ド<br />
• インプットキャプチャ・ユニットでタイムスタンプ対応<br />
• 出力時波形生成<br />
9-32
MachXO2 デバイスのユーザフ ラ ッ シ ュ メ モ リ と<br />
ラ テ ィ スセ ミ コ ンダ ク タ ー ハー ド マ ク ロ化制御機能の使用ガ イ ド<br />
• グ リ ッ チのない PWM 波形生成 (PWM 期間可変)<br />
• 制御レジスタ及びステータスレジスタへの内部 WISHBONEバスアクセス • 事前ロー ド 済み制御レ ジ ス タ及び直接 リ セ ッ ト 入力を備えた ス タ ン ド ア ロ ン ・ モー ド<br />
図 9-16. タ イ マ / カ ウ ン タ のブ ロ ッ ク 図<br />
Trigger Event (tc_ic)<br />
Reset (tc_rstn)<br />
Clock (tc_clki)<br />
こ の タ イ マ / カ ウ ン タは WISHBONE イ ン ターフ ェ イ ス及び特定の信号 (ク ロ ッ ク 、 リ セ ッ ト 、 割 り 込み、 タ<br />
イ マ出力、イベン ト ト リ ガな ど)を通し てPLD コ ア ロ ジ ッ ク と 通信し ます。こ の タ イ マ/カ ウ ン タはWISHBONE<br />
イ ン ターフ ェ イ ス付きでデザイ ンに含める こ と も、 あ るいは WISHBONE イ ン ターフ ェ イ スな しで含める こ<br />
と も可能です。<br />
タイマ/カウンタの動作モード<br />
タ イ マ / カ ウ ン タは柔軟な IP で、 4 通 り の動作モー ド があ り ます。 こ れら のモー ド は、 イベン ト の順序及び<br />
パルス幅変調に関係し た各種のシ ス テムニーズを満たすよ う に設計 さ れています。<br />
• 比較一致時の タ イ マ ク リ ア<br />
• ウォッチド ッグタイマ<br />
• 高速 PWM<br />
• 位相及び周波数補正 PWM<br />
WISHBONE Slave Interface<br />
TCTOPSET<br />
TCOCRSET<br />
TCICR<br />
TCCR0,1,2<br />
TCSR0<br />
TCIRQ<br />
TCIRQEN<br />
to logic block<br />
to counter<br />
PRE-SCALE<br />
Timer/Counter Registers and Logic<br />
Clear Timer on Compare Match Mode (比較一致時タ イ マ ク リ ア ・ モー ド )<br />
カ ウ ン タは、カ ウ ン タ値(TCCNT レ ジ ス タ)が TCTOP レ ジ ス タ に ロー ド 済み値に一致する と 自動的に 0x0000<br />
にク リアされます。TCTOPレジスタの値は、WISHBONEレジスタによ り動的に更新するこ と も、 あるいは、<br />
IP 生成時に IPexpress で割 り 当て ら れた静的な値をそ こ に保持する こ と も で き ます。 TCTOP レ ジ ス タ のデ<br />
フ ォル ト 値は 0xFFFF です。<br />
9-33<br />
TCTOP<br />
TCOCR<br />
16-bit Counter<br />
TCCNT<br />
Timer/Counter<br />
Logic<br />
Output (tc_oc)<br />
Interrupt (tc_int)
MachXO2 デバイスのユーザフ ラ ッ シ ュ メ モ リ と<br />
ラ テ ィ スセ ミ コ ンダ ク タ ー ハー ド マ ク ロ化制御機能の使用ガ イ ド<br />
オー ト ク リ アの際に、 TCTOP レジス タは WISHBONE イ ン ターフ ェ イ ス経由で提供された新規の値で更新さ<br />
れ、 オーバフ ローフ ラ グが 1 ク ロ ッ ク サイ ク ルの間アサー ト され、 そ し てカ ウ ン タの出力が ト グルし ます。<br />
ト ッ プカ ウ ン タ値を定義する ために タ イ マカ ウ ン タ に ロー ド さ れるデータは、 二度レ ジ ス タ でサンプル さ れ<br />
ます。 WISHBONE ホ ス ト はこ のデータ を TCTOPSET レジス タにラ イ ト し、 そ し て次にそのデータはオー ト<br />
クリア時に自動的にTCTOPレジスタにロードされます。したがって、新規のトップ値は、オーバフローフ<br />
ラ グの後、 及びその ト ッ プ値までのカ ウ ン ト ア ッ プ中に TCTOPSET レ ジ ス タ に ラ イ ト で き ます。 TCTOP レ<br />
ジ ス タ の値を更新する と 、 タ イ マカ ウ ン タ の出力信号の周波数が変化し ます。<br />
カウンタ値をキャプチャするためのインプッ トキャプチャ ・ ト リガイベントは、 いつでも与えられます。 こ<br />
れは一般的に、 特定の外部イベン ト の タ イ ム ス タ ンプ と し て使用 さ れます。<br />
図 9-17. タ イ マ / カ ウ ン タ の出力波形<br />
Period 1 Period 2<br />
Period 3<br />
Period 4<br />
OC<br />
CNT<br />
OVF<br />
Top 0 1 Counting Up Top 0 1 Counting Up Top 0 1<br />
Watchdog Timer Mode (ウ ォ ッ チ ド ッ グ タ イ マ ・ モー ド )<br />
ウ ォ ッ チ ド ッ グ タ イ マは、 シ ス テム動作時の振る舞いの監視に使用 さ れ、 シ ス テムのマ イ ク ロ コ ン ト ローラ<br />
や組み込みス テー ト マシンが処理中にハン グア ッ プ し た場合に、 リ セ ッ ト ま たは割 り 込みを生成し ます。 一<br />
つのシナ リ オ と し て、 マ イ ク ロ コ ン ト ローラ が タ イ ム ア ウ ト 期間を設定後、 カ ウ ン タ を 0x0000 か ら開始し て<br />
か ら特定の処理に入る場合があ り ます。 マ イ ク ロ コ ン ト ローラ が処理か ら戻ら なければ、 タ イ マはオーバフ<br />
ローし、 コン ト ローラがその処理から抜け出すために割り込みをアサート します。 タイマオーバフロー ・ イ<br />
ベン ト の前に処理を完了し た場合、 マ イ ク ロ コ ン ト ローラ はカ ウ ン タ を リ セ ッ ト する必要があ り ます。 処理<br />
中に、 非同期イベン ト は、 カ ウ ン タ値を TCICR レ ジ ス タ にキ ャ プチ ャする ための イ ンプ ッ ト キ ャ プチ ャ ・ ト<br />
リ ガ イベン ト (tc_ic IP 信号) を アサー ト する こ と があ り ます。 キ ャ プチャ さ れたカ ウ ン タ値はタ イ ム ス タ ン<br />
プとして扱われます。<br />
ウ ォ ッ チ ド ッ グ ・ モー ド におけ る タ イ マ / カ ウ ン タ の こ れ以外の実用的な使用法 と し ては、 定期的にシ ス テ<br />
ムモジ ュールを OFF にする こ と 、 ま たはパワーコ ン ト ローラ (MachXO2 のオンチ ッ プ ・ パワーコ ン ト ロー<br />
ラ な ど) を同期化する こ と があ り ます。<br />
ウォッチドッグタイマ・モードで最もよく使用されるタイマ/カウンタのポートは、 クロック、 リセッ ト及<br />
び割 り 込みです。 必要に応じ て WISHBONE イ ン ターフ ェ イ ス を使用し て、 TCICR レ ジ ス タ か ら タ イ ム ス タ<br />
ンプを リード してカウンタ ト ップ値を更新できます。<br />
Fast PWM Mode (高速 PWM モー ド )<br />
PWM (Pulse Width Modulation、 パルス幅変調) はアナロ グ回路をデジ タル制御する ために よ く 使用 さ れる手<br />
法です。 PWM は矩形パルス波を使用し、 そのパルス幅を変調する こ と で、 波形の平均値が変化し ます。 カ ウ<br />
ン タ の ト ッ プ値を定義する ために TCTOP レ ジ ス タ に 16 ビ ッ ト デジ タル値を ロー ド する こ と に よ って、波形<br />
の周期 と デューテ ィ サ イ ク ルを変化させる こ と がで き、 同様に TCOCR レ ジ ス タ にカ ウ ン タ出力 と の比較値<br />
をロードします。<br />
タ イ マ / カ ウ ン タ の出力は、 カ ウ ン タ値が TCTOP レ ジ ス タ に ロー ド 済みの ト ッ プ値に一致する と 自動的に<br />
ク リ ア さ れ、 カ ウ ン タ値が TCOCR レ ジ ス タ に ロー ド 済みの比較値に一致する と セ ッ ト さ れます。 ク リ ア /<br />
9-34
MachXO2 デバイスのユーザフ ラ ッ シ ュ メ モ リ と<br />
ラ テ ィ スセ ミ コ ンダ ク タ ー ハー ド マ ク ロ化制御機能の使用ガ イ ド<br />
セ ッ ト 機能は逆にする こ と ができ ます。 即ちカ ウ ン タ値が ト ッ プ値に一致し た と きにタ イマ / カ ウ ン タの出<br />
力をセ ッ ト し、 カ ウ ン タ値が比較値に一致し た と き に ク リ アする よ う にで き ます。<br />
割 り 込み線は、 OVF (Overflow Flag、 オーバフ ロー ・ フ ラ グ) と OCRF (Output Compare Flag、 ア ウトプッ<br />
トコンペア・フラグ) に使用できます。<br />
図 9-18 に PWM 波形の生成を示し ます。 タ イ マ / カ ウ ン タ の出力はカ ウ ン タ が ト ッ プ値に一致し た と き に<br />
セ ッ ト さ れ、 カ ウ ン タ が比較値に一致し た と き に ク リ アする よ う に構成 さ れています。<br />
図 9-18. PWM 波形の生成<br />
Period 1 Period 2<br />
Period 3<br />
Period 4<br />
OC<br />
CNT<br />
OVF<br />
OCRF<br />
top 0 1 ... ocr ocr+1 ... Top 0 1 ... ocr ocr+1 ... Top 0 1<br />
Phase and Frequency Correct PWM Mode (位相及び周波数補正 PWM モー ド )<br />
位相及び周波数補正 PWM モー ド では、 カ ウ ン タ が ト ッ プ値 (” ト ッ プ値 -1”) までカ ウ ン ト ア ッ プする と 、<br />
カ ウ ン ト 方向がア ッ プか ら ダ ウ ンに変化し ます。 カ ウ ン タ が 0x0001 か ら 0x0000 にカ ウ ン ト ダ ウ ンする と き<br />
に、 以下が実行されます。<br />
1. TCTOPSET レ ジ ス タ に ロー ド 済みの値で tCTOP が更新される<br />
2. TCOCRSET レ ジ ス タ に ロー ド 済みの値で tCOCR が更新される<br />
3. オーバフ ロー OVF が 1 ク ロ ッ ク サ イ ク ルだけアサー ト さ れる<br />
タ イ マ / カ ウ ン タ の出力は、 カ ウ ン タ値が TCOCR レ ジ ス タ の比較値に一致し た と き にのみ更新さ れます。<br />
こ れは 1 周期内に 2 回発生し ます。 最初の一致はカ ウ ン タ のカ ウ ン ト ア ッ プ時に発生し、 2 回目の一致はカ<br />
ウ ン タのカ ウ ン ト ダウ ン時に発生し ます。 OCRF は両方の一致でアサー ト されます。 タ イマ / カ ウ ン タの出<br />
力は、 最初の比較一致でセ ッ ト さ れ、 2 回目の比較一致で ク リ ア さ れます。 セ ッ ト と ク リ アの順序は逆にす<br />
ることができます。<br />
こ のモー ド では、 ユーザは生成された波形の周波数 ( ト ッ プ値に基づ く ) と 位相 (比較値に基づ く ) を調整<br />
できます。<br />
9-35
MachXO2 デバイスのユーザフ ラ ッ シ ュ メ モ リ と<br />
ラ テ ィ スセ ミ コ ンダ ク タ ー ハー ド マ ク ロ化制御機能の使用ガ イ ド<br />
図 9-19. 位相及び周波数補正 PWM の波形生成<br />
OC<br />
Direction<br />
CNT<br />
OVF<br />
OCRF<br />
タイマ/カウンタのIP信号<br />
表 9-29 に IP で生成される信号を示し ます。 各信号の説明には使用法 と 、 それを設計プ ロ ジ ェ ク ト で接続す<br />
る方法が示されています。<br />
表 9-29. タ イ マ / カ ウ ン タ ~ IP 信号<br />
信号名 I/O ビ ッ ト 幅 記 述<br />
tc_clki 入力 1<br />
タ イ マ / カ ウ ン タは入力 ク ロ ッ ク 信号。 オンチ ッ プ ・ オシ レータ に接続する こ と がで<br />
きる<br />
tc_rstn 入力 1 こ れは Low ア ク テ ィ ブの リ セ ッ ト 信号で、 16 ビ ッ ト カ ウ ン タ を リ セ ッ ト する<br />
tc_ic 入力 1<br />
Period 1 Period 2<br />
Period 3<br />
Counting<br />
UP<br />
1 0 1 ... ocr ocr+1 ... top-1 top top-1 ... ocr ocr-1 ... 1 0 1<br />
こ れは High ア ク テ ィ ブの入力捕獲 ト リ ガ イベン ト で、 WISHBONE イ ン ターフ ェ イ ス<br />
のあ る非 PWM モー ド に適用さ れる。 イ ネーブル さ れる と 、 本信号の立ち上 り エ ッ ジ<br />
が検出される と 、 カ ウ ン タ値 (TCCNT レ ジ ス タ) を キ ャ プチャする ために同期化 さ<br />
れ、 TCICR にそれを ロー ド する こ と によ って WISHBONE イ ン ターフ ェ イ スか ら値に<br />
ア ク セスで き る よ う に さ れる。 一般的な使用法は、 カ ウ ン タ に よ って タ イ ム ス タ ンプ<br />
動作を実行する こ と<br />
tc_int 出力 1<br />
こ れは割 り 込み信号で、 オーバフ ローや出力コ ンペアマ ッ チ ( 比較一致 )、 ま たはイ<br />
ンプ ッ ト ・ キ ャ プチ ャ の よ う な特定の イベン ト の発生を示す<br />
tc_oc 出力 1 タ イ マ / カ ウ ン タ出力信号<br />
タイマ/カウンタ ・レジスタ<br />
タ イ マ / カ ウ ン タは制御レ ジ ス タ、 ス テータ ス レ ジ ス タ、 及びデータ レ ジ ス タ の組を利用する こ と に よ り 、<br />
EFB WISHBONE イ ン ターフ ェ イ ス経由で PLD ロ ジ ッ ク と 通信し ます。表 9-30 にレ ジ ス タ名 と その機能を示<br />
します。 これらのレジスタは EFBレジスタマップのサブセッ トになっています。各レジスタの特定のアドレ<br />
スについては、 EFB レ ジ ス タ マ ッ プを参照し て く だ さ い。<br />
9-36<br />
Counting<br />
DOWN
MachXO2 デバイスのユーザフ ラ ッ シ ュ メ モ リ と<br />
ラ テ ィ スセ ミ コ ンダ ク タ ー ハー ド マ ク ロ化制御機能の使用ガ イ ド<br />
表 9-30. タ イ マ / カ ウ ン タ ・ レ ジ ス タ<br />
タイマ/カウンタ<br />
レジスタ名<br />
レジスタ機能 アドレス アクセス<br />
TCCR0 制御レ ジ ス タ 0 0x5E Read/Write<br />
TCCR1 制御レ ジ ス タ 1 0x5F Read/Write<br />
TCTOPSET0 ト ッ プ (Top) カ ウ ン タ値 [7:0] をセ ッ ト 0x60 Write<br />
TCTOPSET1 ト ッ プ (Top) カ ウ ン タ値 [15:8] をセ ッ ト 0x61 Write<br />
TCOCRSET0 比較カ ウ ン タ値 [7:0] をセ ッ ト 0x62 Write<br />
TCOCRSET1 比較カ ウ ン タ値 [15:8] をセ ッ ト 0x63 Write<br />
TCCR2 制御レ ジ ス タ 2 0x64 Read/Write<br />
TCCNT0 カ ウ ン タ値 [7:0] 0x65 Read<br />
TCCNT1 カ ウ ン タ値 [15:8] 0x66 Read<br />
TCTOP0 現在の ト ッ プ (Top) カ ウ ン タ値 [7:0] 0x67 Read<br />
TCTOP1 現在の ト ッ プ (Top) カ ウ ン タ値 [15:8] 0x68 Read<br />
TCOCR0 現在の比較カ ウ ン タ値 [7:0] 0x69 Read<br />
TCOCR1 現在の比較カ ウ ン タ値 [15:8] 0x6A Read<br />
TCICR0 現在のキ ャ プチ ャ カ ウ ン タ値 [7:0] 0x6B Read<br />
TCICR1 現在のキ ャ プチ ャ カ ウ ン タ値 [15:8] 0x6C Read<br />
TCSR0 ス テータ ス レ ジ ス タ 0x6D Read<br />
TCIRQ 割 り 込み要求 0x6E Read/Write<br />
TCIRQEN 割 り 込み要求イ ネーブル 0x6F Read/Write<br />
注 : 特に指定し ない限 り 、 書き込み可能レ ジ ス タ の全予約ビ ッ ト には '0' が書かれなければな り ません。<br />
表 9-31. タ イ マ / カ ウ ン タ制御 0<br />
TCCR0 0x5E<br />
ビッ ト 7 6 5 4 3 2 1 0<br />
名称 RSTEN (Rsrv) PRESCALE[2:0] CLKEDGE CLKSEL (Rsvd)<br />
デフォル ト 0 0 0 0 0 0 0 0<br />
アクセス R/W — R/W R/W R/W R/W R/W —<br />
RSTEN PLD ロ ジ ッ ク か ら リ セ ッ ト 信号 (tc_rstn) が タ イ マ / カ ウ ン タ の コ アに入力 さ れる こ と<br />
を許容する。<br />
1: 外部 リ セ ッ ト をデ ィ セーブル<br />
0: 外部 リ セ ッ ト をデ ィ セーブル<br />
PRESCALE[2:0] タ イ マ / カ ウ ン タへの ク ロ ッ ク 入力を分周する ために使用 さ れる。<br />
000: ス タ テ ィ ッ ク (ク ロ ッ ク はデ ィ セーブル)<br />
001: 1 で分周<br />
010: 8 で分周<br />
011: 64 で分周<br />
100: 256 で分周<br />
101: 1024 で分周<br />
110: ( 予約 )<br />
111: ( 予約 )<br />
CLKEDGE 入力 ク ロ ッ ク ソ ースの有効エ ッ ジを選択する ために使用 さ れる。 タ イ マ / カ ウ ン タは<br />
入力 ク ロ ッ ク ソ ースの有効エ ッ ジでス テー ト を更新する。<br />
0: 立ち上 り エ ッ ジ<br />
9-37
MachXO2 デバイスのユーザフ ラ ッ シ ュ メ モ リ と<br />
ラ テ ィ スセ ミ コ ンダ ク タ ー ハー ド マ ク ロ化制御機能の使用ガ イ ド<br />
1: 立ち下 り エ ッ ジ<br />
CLKSEL 入力 ク ロ ッ ク の ソ ース を定義する。<br />
0: ク ロ ッ ク ツ リ ー<br />
1: オンチ ッ プ ・ オシ レータ<br />
表 9-32. タ イ マ / カ ウ ン タ制御 1<br />
TCCR1 0x5F<br />
ビッ ト 7 6 5 4 3 2 1 0<br />
名称 (Rsrv) SOVFEN ICEN TSEL OCM[1:0] TCM[1:0]<br />
デフォル ト 0 0 0 0 0 0 0 0<br />
アクセス — R/W R/W R/W R/W R/W R/W R/W<br />
SOVFEN 割 り 込み出力信号 と 共に使用さ れる オーバフ ロー ・ フ ラ グ を イ ネーブルする。<br />
WISHBONEインターフェイスがなく、 タイマ / カウンタがスタンドアロンであると<br />
きにセッ ト される。<br />
0: デ ィ セーブル<br />
1: イ ネーブル<br />
注;本ビ ッ ト がセ ッ ト さ れる と 、 OCRF や ICRF な どの他のフ ラ グは割 り 込み出力信号に接続 さ<br />
れません。<br />
ICEN カ ウ ン タ値をキ ャプチャする動作の実行を可能にする。 ユーザは、 TCICR0/1 レジス<br />
タにカウンタ値をロードするために、"tc_ic"信号をアサートするこ とができる。キャ<br />
プチャ された値は、 特定イベン ト のタ イマス タ ンプ と しての役割を持つこ と ができ<br />
る。<br />
0: デ ィ セーブル<br />
1: イ ネーブル<br />
TSEL カ ウ ン タ に TCTOPSET0/1 値の自動ロー ド を イ ネーブルする。 デ ィ セーブルする と 、<br />
値 0xFFFF が自動ロー ド さ れる。<br />
0: デ ィ セーブル<br />
1: イ ネーブル<br />
OCM[1:0] タ イ マ / カ ウ ン タ の出力信号の機能を選択する。 選択で き る機能は、 ス タ テ ィ ッ ク<br />
(Static)、 ト グル (Toggle)、 セ ッ ト / ク リ ア、 そ し て ク リ ア / セ ッ ト 。<br />
全タイマ / カウンタモード :<br />
00: 出力はス タ テ ィ ッ ク Low<br />
非PWMモード :<br />
01: TOP マ ッ チで ト グル<br />
高速 PWM モー ド :<br />
10: TOP マ ッ チで ク リ ア、 OCR マ ッ チでセ ッ ト<br />
11: TOPマッチでセッ ト、 OCRマッチでクリア 位相 ・ 周波数補正 PWM モー ド :<br />
10: カウンタがインク リ メント中OCRマッチでクリア、カウンタがディク リ メン<br />
ト中にOCRマッチでセッ ト<br />
11: カウンタがインク リ メント中OCRマッチでセット、カウンタがディク リ メン<br />
ト中にOCRマッチでクリア<br />
TCM[1:0] Timer Counter Mode (タ イ マカ ウ ン タ ・ モー ド )。 タ イ マ / カ ウ ン タ の動作モー ド を定<br />
義する。<br />
00: ウ ォ ッ チ ド ッ グ タ イ マ ・ モー ド<br />
9-38
MachXO2 デバイスのユーザフ ラ ッ シ ュ メ モ リ と<br />
ラ テ ィ スセ ミ コ ンダ ク タ ー ハー ド マ ク ロ化制御機能の使用ガ イ ド<br />
01: 比較マ ッ チ時タ イ マ ク リ ア ・ モー ド<br />
10: 高速 PWM モー ド<br />
11: 位相 ・ 周波数補正 PWM モー ド<br />
表 9-33. タ イ マ / カ ウ ン タ ・ ト ッ プカ ウ ン タ値設定 0<br />
TCTOPSET0 0x60<br />
ビッ ト 7 6 5 4 3 2 1 0<br />
名称 TCTOPSET[7:0]<br />
デフォルト 1 1 1 1 1 1 1 1 1<br />
ア ク セ ス R/W R/W R/W R/W R/W R/W R/W R/W<br />
1. ハー ド ウ ェ アのデフ ォル ト 値は、 EFB コ ンポーネン ト ・ イ ン ス タ ン ス化パ ラ メ ータ に よ って上書き さ れる こ と があ り ま<br />
す。<br />
表 9-34. タ イ マ / カ ウ ン タ ・ ト ッ プカ ウ ン タ値設定 1<br />
TCTOPSET1 0x61<br />
ビッ ト 7 6 5 4 3 2 1 0<br />
名称 TCTOPSET[15:8]<br />
デフォルト 1 1 1 1 1 1 1 1 1<br />
ア ク セ ス R/W R/W R/W R/W R/W R/W R/W R/W<br />
1. ハー ド ウ ェ アのデフ ォル ト 値は、 EFB コ ンポーネン ト ・ イ ン ス タ ン ス化パ ラ メ ータ に よ って上書き さ れる こ と があ り ま<br />
す。<br />
カ ウ ン タ が現在のカ ウ ン ト サ イ ク ルを完了する と 、 TCTOPSET0/1 の値が TCTOP0/1 レ ジ ス タ に ロー ド さ れ<br />
ます。 使用法の詳細については、 タ イ マ / カ ウ ン タ の動作モー ド を参照し て く だ さ い。<br />
TCTOPSET0 レ ジ ス タは ト ッ プ値の下位 8 ビ ッ ト 値 [7:0] を保持し ます。 TCTOPSET1 レ ジ ス タは ト ッ プ値の<br />
上位 8 ビ ッ ト 値 [15:8] を保持し ます。<br />
表 9-35. タ イ マ / カ ウ ン タ比較カ ウ ン タ値設定 0<br />
TCOCRSET0 0x62<br />
ビッ ト 7 6 5 4 3 2 1 0<br />
名称 TCOCRSET[7:0]<br />
デフォルト 1 1 1 1 1 1 1 1 1<br />
ア ク セ ス R/W R/W R/W R/W R/W R/W R/W R/W<br />
1. ハー ド ウ ェ アのデフ ォル ト 値は、 EFB コ ンポーネン ト ・ イ ン ス タ ン ス化パ ラ メ ータ に よ って上書き さ れる こ と があ り ま<br />
す。<br />
表 9-36. タ イ マ / カ ウ ン タ比較カ ウ ン タ値設定 1<br />
TCOCRSET1 0x63<br />
ビッ ト 7 6 5 4 3 2 1 0<br />
名称 TCOCRSET[15:8]<br />
デフォルト 1 1 1 1 1 1 1 1 1<br />
ア ク セ ス R/W R/W R/W R/W R/W R/W R/W R/W<br />
1. ハー ド ウ ェ アのデフ ォル ト 値は、 EFB コ ンポーネン ト ・ イ ン ス タ ン ス化パ ラ メ ータ に よ って上書き さ れる こ と があ り ま<br />
す。<br />
ウ ン タ が現在のカ ウ ン ト サ イ ク ルを完了する と 、TCOCRSET0/1 の値が TCOCR0/1 レ ジ ス タ に ロー ド さ れま<br />
す。 使用法の詳細については、 タ イ マ / カ ウ ン タ の動作モー ド を参照し て く だ さ い。<br />
9-39
MachXO2 デバイスのユーザフ ラ ッ シ ュ メ モ リ と<br />
ラ テ ィ スセ ミ コ ンダ ク タ ー ハー ド マ ク ロ化制御機能の使用ガ イ ド<br />
TCOCRSET0 レ ジ ス タは比較値の下位 8 ビ ッ ト 値 [7:0] を保持し ます。 TCOCRSET1 レ ジ ス タは比較値の上位<br />
8 ビ ッ ト 値 [15:8] を保持し ます。<br />
表 9-37. タ イ マ / カ ウ ン タ制御 2<br />
TCCR2 0x64<br />
ビッ ト 7 6 5 4 3 2 1 0<br />
名称 (Reserved) WBFORCE WBRESET WBPAUSE<br />
デフォル ト 0 0 0 0 0 0 0 0<br />
アクセス — — — — — R/W R/W R/W<br />
WBFORCE 非 PWM モー ド では、カ ウ ン タ値が比較(TCOCR)値 と 一致し たか、ト ッ プ値(TCTOP)<br />
と 一致し たかの よ う に、 カ ウ ン タ の出力が強制的にセ ッ ト さ れる。<br />
0: デ ィ セーブル<br />
1: イ ネーブル<br />
WBRESET WISHBONE イ ン ターフ ェ イ スか ら本レ ジ ス タ に '1' を ラ イ ト する と 、 カ ウ ン タ が リ<br />
セッ ト される。 マニュアルで ’0’ にク リアする。 WISHBONEクロックドメインで立 ち上が り が検出される と 、 カ ウ ン タは次の tc_clki に同期し て リ セ ッ ト さ れる。 ク ロ ッ<br />
ク ド メ イ ン を跨ぐ関係で、 リ セ ッ ト が有効にな る まで 1 ク ロ ッ ク の不確定期間があ<br />
る。 本ビッ トは WBPAUSE よ り も優先される。<br />
0: デ ィ セーブル<br />
1: イ ネーブル<br />
WBPAUSE 16 ビ ッ ト カ ウ ン タ を一時停止 (Pause) する<br />
1: 一時停止<br />
0: 正常<br />
表 9-38. 1 タイマ/カウンタ ・カウンタ値 0<br />
TCCNT0 0x65<br />
ビッ ト 7 6 5 4 3 2 1 0<br />
名称 TCCNT[7:0]<br />
デフォルト 0 0 0 0 0 0 0 0<br />
アクセス R R R R R R R R<br />
表 9-39. 2 タイマ/カウンタ ・カウンタ値 1<br />
TCCNT1 0x66<br />
ビッ ト 7 6 5 4 3 2 1 0<br />
名称 TCCNT[15:8]<br />
デフォルト 0 0 0 0 0 0 0 0<br />
アクセス R R R R R R R R<br />
レ ジ ス タ TCCNT0 及び TCCNT1 は 8 ビ ッ ト レ ジ ス タ で、 こ れら の組み合わせに よ ってカ ウ ン タ値を保持し<br />
ます。 WISHBONE ホス ト は、 これらのレジスタに対する リードオン リ ・ アクセスができます。<br />
TCCNT0 レ ジ ス タはカ ウ ン タ値の下位 8 ビ ッ ト 値 [7:0] を保持し ます。 TCCNT1 レ ジ ス タはカ ウ ン タ値の上<br />
位8ビット値[15:8]を保持します。<br />
1.オリジナル英語版Ver.2.3ではFigure.9-20とある。日本語版では図番と表番をそのまま連番としている<br />
2.オリジナル英語版Ver.2.3ではFigure.9-21とある。日本語版では図番と表番をそのまま連番としている<br />
9-40
MachXO2 デバイスのユーザフ ラ ッ シ ュ メ モ リ と<br />
ラ テ ィ スセ ミ コ ンダ ク タ ー ハー ド マ ク ロ化制御機能の使用ガ イ ド<br />
表 9-40. タ イ マ / カ ウ ン タ現在の ト ッ プカ ウ ン タ値 0<br />
TCTOP0 0x67<br />
ビッ ト 7 6 5 4 3 2 1 0<br />
名称 TCTOP[7:0]<br />
デフォルト 1 1 1 1 1 1 1 1<br />
アクセス R R R R R R R R<br />
表 9-41. タ イ マ / カ ウ ン タ現在の ト ッ プカ ウ ン タ値 1<br />
TCTOP1 0x68<br />
ビッ ト 7 6 5 4 3 2 1 0<br />
名称 TCTOP[15:8]<br />
デフォルト 1 1 1 1 1 1 1 1<br />
アクセス R R R R R R R R<br />
レ ジ ス タ TCTOP0 及び TCTOP1 は 8 ビ ッ ト レ ジ ス タ で、 こ れ ら の組み合わせに よ って、 TCTOPSET0/1 か ら<br />
の 16 ビ ッ ト 値を受けと り ます。 これらのレジスタに格納されているデータは、カウンタの ト ップ値を表し ま<br />
す。 カ ウ ン タ が現在のカ ウ ン ト サ イ ク ルを完了する と 、 こ れら のレ ジ ス タは更新されます。 WISHBONE ホ ス<br />
ト は こ れら のレ ジ ス タ に リ ー ド オン リ ・ ア ク セ スが可能です。 使用法の詳細については、 タ イ マ / カ ウ ン タ<br />
の動作モード を参照し て く ださい。<br />
TCTOP0 レ ジ ス タは ト ッ プ値の下位 8 ビ ッ ト 値 [7:0] を保持し、TCTOP1 レ ジ ス タは上位 8 ビ ッ ト 値 [15:8] を<br />
保持し ます。<br />
表 9-42. タ イ マ / カ ウ ン タ現在の比較カ ウ ン タ値 0<br />
TCOCR0 0x69<br />
ビッ ト 7 6 5 4 3 2 1 0<br />
名称 TCOCR[7:0]<br />
デフォルト 1 1 1 1 1 1 1 1<br />
アクセス R R R R R R R R<br />
表 9-43. タ イ マ / カ ウ ン タ現在の比較カ ウ ン タ値 1<br />
TCOCR1 0x6A<br />
ビッ ト 7 6 5 4 3 2 1 0<br />
名称 TCOCR[15:8]<br />
デフォルト 1 1 1 1 1 1 1 1<br />
アクセス R R R R R R R R<br />
レ ジ ス タ TCOCR0 及び TCOCR1 は 8 ビ ッ ト レ ジ ス タ で、 こ れら の組み合わせに よ って、 TCOCRSET0/1 か<br />
ら の 16 ビ ッ ト 値を受け と り ます。 こ れら のレ ジ ス タ に格納されてい るデータは、 カ ウ ン タ の比較値を表し ま<br />
す。 カ ウ ン タ が現在のカ ウ ン ト サ イ ク ルを完了する と 、 こ れら のレ ジ ス タは更新されます。 WISHBONE ホ ス<br />
ト は こ れら のレ ジ ス タ に リ ー ド オン リ ・ ア ク セ スが可能です。 使用法の詳細については、 タ イ マ / カ ウ ン タ<br />
の動作モード を参照し て く ださい。<br />
TCOCR0 レ ジ ス タは比較値の下位 8 ビ ッ ト 値 [7:0] を保持し、 TCOCR1 レ ジ ス タは上位 8 ビ ッ ト 値 [15:8] を<br />
保持し ます。<br />
9-41
MachXO2 デバイスのユーザフ ラ ッ シ ュ メ モ リ と<br />
ラ テ ィ スセ ミ コ ンダ ク タ ー ハー ド マ ク ロ化制御機能の使用ガ イ ド<br />
表 9-44. タ イ マ / カ ウ ン タ現在のキ ャ プチ ャ カ ウ ン タ値 0<br />
TCICR0 0x6B<br />
ビッ ト 7 6 5 4 3 2 1 0<br />
名称 TCICR[7:0]<br />
デフォルト 0 0 0 0 0 0 0 0<br />
アクセス R R R R R R R R<br />
表 9-45. タ イ マ / カ ウ ン タ現在のキ ャ プチ ャ カ ウ ン タ値 1<br />
TCICR1 0x6C<br />
ビッ ト 7 6 5 4 3 2 1 0<br />
名称 TCICR[15:8]<br />
デフォルト 0 0 0 0 0 0 0 0<br />
アクセス R R R R R R R R<br />
レ ジ ス タ TCICR0 及び TCICR1 は 8 ビ ッ ト レ ジ ス タ で、 こ れら の組み合わせに よ ってカ ウ ン タ値を保持で き<br />
ます。 ト リガイベン ト である tc_ic IP 信号がアサート される と、カウンタ値はこれらのレジスタにロード され<br />
ます。 キ ャ プチャ値は特定のシ ス テム イベン ト の タ イ ム ス タ ンプ と し て よ く 使用 さ れます。 WISHBONE ホ ス<br />
ト は、 こ れら のレ ジ ス タ に対する リ ー ド オン リ ・ ア ク セ スがで き ます。<br />
TCICR0 レ ジ ス タはカ ウ ン タ値の下位 8 ビ ッ ト 値 [7:0] を保持し ます。 TCICR1 レ ジ ス タはカ ウ ン タ値の上位<br />
8 ビ ッ ト 値 [15:8] を保持し ます。<br />
表 9-46. タ イ マ / カ ウ ン タ ・ ス テータ ス レ ジ ス タ<br />
TCSR 0x6D<br />
ビッ ト 7 6 5 4 3 2 1 0<br />
名称 (Reserved) BTF ICRF OCRF OVF<br />
デフォル ト — — — — 0 0 0 0<br />
アクセス — — — — R R R R<br />
BTF Bottom Flag (ボ ト ム フ ラ グ)。 カ ウ ン タ が値 0 に達する と アサー ト さ れる。 本レ ジ ス<br />
タにライ ト動作を行う と、 本フラグがク リ アされる。<br />
1: カ ウ ン タ値がゼ ロ に達し た<br />
0: カ ウ ン タ値がゼ ロ に達し ていない<br />
ICRF Capture Counter Flag (キ ャ プチ ャ カ ウ ン タ ・ フ ラ グ)。 ユーザが TC_IC 入力信号を ア<br />
サートするとアサート される。カウンタ値はTCICR0/1レジスタにキャプチャされる。<br />
本レジスタにラ イ ト 動作を行う と、本フラグがク リ アされる。本ビ ッ ト は割り込みを<br />
発生可能。<br />
1: TC_IC 信号がアサー ト さ れた<br />
0: 通常<br />
OCRF Compare Match Flag (比較一致フ ラ グ)。 カ ウ ン タ が TCOCR0/1 レ ジ ス タ の値 と 一致<br />
するとアサートされる。本レジスタにライト動作を行うと、本フラグがクリアされ<br />
る。 本ビ ッ ト は割 り 込みを発生可能。<br />
1: カ ウ ン タ マ ッ チ<br />
0: 通常<br />
OVF Overflow Flag (オーバフ ローフ ラ グ)。 カ ウ ン タ が TCTOP0/1 レ ジ ス タ の値 と 一致す<br />
る とアサート される。 本レジスタにラ イ ト動作を行う と、 本フラグがク リ アされる。<br />
本ビ ッ ト は割 り 込みを発生可能。<br />
9-42
MachXO2 デバイスのユーザフ ラ ッ シ ュ メ モ リ と<br />
ラ テ ィ スセ ミ コ ンダ ク タ ー ハー ド マ ク ロ化制御機能の使用ガ イ ド<br />
1: カ ウ ン タ マ ッ チ<br />
0: 通常<br />
表 9-47. タ イ マ / カ ウ ン タ割 り 込みス テータ ス<br />
TCIRQ 0x6E<br />
ビッ ト 7 6 5 4 3 2 1 0<br />
名称 (Reserved) IRQICRF IRQOCRF IRQOVF<br />
デフォル ト 0 0 0 0 0 0 0 0<br />
アクセス — — — — — R/W R/W R/W<br />
IRQICRF Interrupt Status for Capture Counter Flag (キ ャ プチャ カ ウ ン タ ・ フ ラ グの割 り 込みス<br />
テータ ス)。 イ ネーブルする と 、 ICRF がアサー ト さ れた こ と を示す。 本ビ ッ ト に '1'<br />
をライ トすると、 割り込みがクリアされる。 1: キ ャ プチャ カ ウ ン タ ・ フ ラ グ割 り 込み<br />
0: 割 り 込みな し<br />
IRQOCRF Interrupt Status for Compare Match Flag (比較一致フ ラ グの割 り 込みス テータ ス) 。 イ<br />
ネーブルする と、 OCRF がアサート されたこ とを示す。 本ビッ ト に '1' をラ イ トする<br />
と、割り込みがクリアされる。割り込みラインがアサート されるのは1クロックサイ クルのみ。<br />
1: 比較一致フ ラ グ割 り 込み<br />
0: 割 り 込みな し<br />
IRQOVF Interrupt Status for Overflow Flag(オーバフ ローフ ラ グの割 り 込みス テータ ス)。イ ネー<br />
ブルする と 、 OVF がアサー ト さ れた こ と を示す。 本ビ ッ ト に '1' を ラ イ ト する と 、 割<br />
り込みがクリアされる。割り込みラインがアサート されるのは1クロックサイクルの み。<br />
1: オーバフ ローフ ラ グ割 り 込み<br />
0: 割 り 込みな し<br />
表 9-48. タ イ マ / カ ウ ン タ割 り 込みイ ネーブル<br />
TCIRQEN 0x6F<br />
ビッ ト 7 6 5 4 3 2 1 0<br />
名称 (Reserved) IRQICRFEN IRQOCRFEN IRQOVFEN<br />
デフォル ト 0 0 0 0 0 0 0 0<br />
アクセス — — — — — R/W R/W R/W<br />
IRQICRFEN Capture Counter Flag (キ ャ プチ ャ カ ウ ン タ フ ラ グ) 割 り 込み要求イ ネーブル<br />
1: 割 り 込み生成イ ネーブル<br />
0: 割 り 込み生成デ ィ セーブル<br />
IRQOCRFEN Compare Match Flag (コ ンペアマ ッ チフ ラ グ) 割 り 込み要求イ ネーブル<br />
1: 割 り 込み生成イ ネーブル<br />
0: 割 り 込み生成デ ィ セーブル<br />
IRQOVFEN Overflow Flag (オーバフ ローフ ラ グ) 割 り 込み要求イ ネーブル<br />
1: 割 り 込み生成イ ネーブル<br />
0: 割 り 込み生成デ ィ セーブル<br />
9-43
MachXO2 デバイスのユーザフ ラ ッ シ ュ メ モ リ と<br />
ラ テ ィ スセ ミ コ ンダ ク タ ー ハー ド マ ク ロ化制御機能の使用ガ イ ド<br />
IPexpress に よ る タ イ マ / カ ウ ン タ の構成<br />
IPexpress に よ って タ イ マ / カ ウ ン タ機能のパ ラ メ ータ を設定し て、 EFB プ リ ミ テ ィ ブを生成で き ます。 EFB<br />
GUI で Timer/Counter タ ブを選択する と 、タ イ マ / カ ウ ン タ コ アの構成可能なパ ラ メ ータ設定が表示されます。<br />
タイマ / カウンタは WISHBONE インターフェイス付きで使用することも、 あるいは WISHBONE インター<br />
フ ェ イ ス な し で使用する こ と も可能です。 WISHBONE イ ン ターフ ェ イ ス な し で使用する場合、 IPexpress の<br />
EFB GUI で値を選択 / 入力で き ます。 値はタ イ マ / カ ウ ン タ のレ ジ ス タ にプ ロ グ ラ マブル ・ ビ ッ ト ス ト リ ー<br />
ムでプ ロ グ ラ ム さ れます。 タ イ マ / カ ウ ン タ を WISHBONE イ ン ターフ ェ イ ス付き で使用する と 、 ユーザは<br />
WISHBONE イ ン ターフ ェ イ ス経由でレ ジ ス タ の内容を動的に更新で き ます。 主要な EFB GUI であ る EFB<br />
Enables タ ブでは、 ユーザはタ イ マ / カ ウ ン タ使用時の WISHBONE イ ン ターフ ェ イ スの有無の選択を行 う こ<br />
とができます。<br />
図 9-20 に タ イ マ / カ ウ ン タ を特定の設計用に構成し た例を示し ます。<br />
図 9-20. IPexpress に よ る EFB モジ ュールの タ イ マ / カ ウ ン タ機能のパ ラ メ ータ設定<br />
Mode Selections (モード選択)<br />
このオプションでは、 ユーザは次の 4つの動作モードの 1つを選択できます。<br />
• CTCM ~ 比較一致時の タ イ マ ク リ ア<br />
• WATCHDOG ~ ウ ォ ッ チ ド ッ グ タ イ マ<br />
• FASTPWM ~ 高速 PWM<br />
• PFCPWM ~ 位相及び周波数補正 PWM<br />
ま た、 タ イ マ / カ ウ ン タ IP の出力信号 (tc_oc) の機能を選択で き ます。 選択可能な機能は次の と お り です。<br />
• STATIC ~ タ イ マ / カ ウ ン タ の出力は静的な Low<br />
• TOGGLE ~ タ イ マ / カ ウ ン タの出力は条件が満た された場合に ト グルする<br />
• WAV_GENERATE ~ 波形は条件が満た さ れた場合にセ ッ ト / ク リ アのアサー ト に よ って生成 さ れる<br />
• INV_WAV_GENERATE ~ 波形の反転<br />
9-44
MachXO2 デバイスのユーザフ ラ ッ シ ュ メ モ リ と<br />
ラ テ ィ スセ ミ コ ンダ ク タ ー ハー ド マ ク ロ化制御機能の使用ガ イ ド<br />
タ イ マ / カ ウ ン タは WISHBONE イ ン ターフ ェ イ スに よ り 動的に制御可能であ る ため、デバ イ ス動作中にモー<br />
ド を更新するオプシ ョ ンがユーザに用意されています。 WISHBONE イ ン ターフ ェ イ スによ る動作について<br />
は、 タ イ マ / カ ウ ン タ のレ ジ ス タ定義を参照し て く だ さ い。<br />
Clock Selection (ク ロ ッ クの選択)<br />
入力クロ ッ ク ソースのエッジ (立ち上り / 下り) を選択したり、 オンチップ ・ オシレータの使用を有効にし<br />
た り で き ます。 プ リ ス ケール分周器の値は、 16 カ ウ ン タ に到達する前に入力 ク ロ ッ ク を分周する ために提供<br />
されます。<br />
タ イ マ / カ ウ ン タは WISHBONE イ ン ターフ ェ イ スに よ り 動的に制御可能であ る ため、 プ リ ス ケールレ ジ ス<br />
タ の分周値を更新する オプシ ョ ンがユーザに用意さ れています。 WISHBONE イ ン ターフ ェ イ スに よ る オペ<br />
レーシ ョ ンについては、 タ イマ / カウンタのレジスタ定義を参照して ください。<br />
Counter Values (カウンタ値)<br />
カ ウ ン タ の ト ッ プ値及び比較値を選択で き ます。 タ イ マ / カ ウ ン タは WISHBONE イ ン ターフ ェ イ スに よ り<br />
動的に制御可能であ る ため、 デバイ ス動作中にカ ウ ン タ値を更新する オプシ ョ ンがユーザに用意 さ れていま<br />
す。WISHBONEインターフェイスによるオペレーシ ョ ンについては、 タイマ / カウンタのレジスタ定義を参<br />
照してください。<br />
Enable Interrupt Registers (割り込みイネーブルレジス タ)<br />
こ れら の設定では、 ユーザはタ イ マ / カ ウ ン タ の特定の割 り 込み要求を イ ネーブルにで き ます。 選択可能な<br />
割 り 込み要求は次の と お り です。<br />
• Overflow (オーバフ ロー) ~ WISHBONE イ ン ターフ ェ イ スで使用 さ れ、 WISHBONE で使用可能な全ての<br />
割 り 込み信号 と 論理和が取ら れる。 OR ゲー ト の出力は タ イ マ / カ ウ ン タ IP 割 り 込み出力信号 (tc_int)<br />
に直接配線されてい る<br />
• Output Compare Match (ア ウ ト プ ッ ト コ ンペア一致) ~ WISHBONE イ ン ターフ ェ イ スで使用 さ れ、<br />
WISHBONE で使用可能な全ての割 り 込み信号 と 論理和が取ら れる。 OR ゲー ト の出力は タ イ マ / カ ウ ン タ<br />
IP 割 り 込み出力信号 (tc_int) に直接配線 さ れてい る<br />
• Input Capture (イ ンプ ッ ト キ ャ プチャ) ~ WISHBONE イ ン ターフ ェ イ スで使用 さ れ、 WISHBONE で使用<br />
可能な全ての割 り 込み信号 と 論理和が取ら れる。 OR ゲー ト の出力はタ イ マ / カ ウ ン タ IP 割 り 込み出力信<br />
号 (tc_int) に直接配線 さ れてい る<br />
• Standalone Overflow (スタンドアローン ・ オーバフロー) ~ WISHBONEインターフェイスで使用され、 使<br />
用可能な唯一の割 り 込み要求 と し て機能する<br />
コ ン フ ィ グ レーシ ョ ン空間ア ク セス (UFM、 コ ン フ ィ グ レーシ ョ ン を含む)<br />
論理規模が MachXO2-640 以上のデバイ スでは、 UFM と い う 一つのセ ク タ が提供されます。 UFM はページ単<br />
位で編成されてい る フ ラ ッ シ ュ セ ク タ で、 各ページは 128 ビ ッ ト (16 バイ ト ) です。 UFM はバ イ ト ア ド レ ス<br />
指定で き ません。 表 9-1 にビ ッ ト 、 バ イ ト 及びページで表し た、 各デバ イ スにおけ る UFM リ ソースサ イ ズ<br />
を示します。<br />
UFM は汎用フ ラ ッ シ ュ メ モ リ です。UFM は一般的にシ ス テム レベルの不揮発性データ、オンチ ッ プ EBR (組<br />
み込みブ ロ ッ ク RAM) ブ ロ ッ ク 用の初期化データ、 及びマ イ ク ロ コ ン ト ローラ ま たは組み込みス テー ト マシ<br />
ン用の実行可能コー ド を格納する ために使用されます。 ラ テ ィ スでは次のツールに よ る UFM セ ク タ の ソ フ<br />
ト ウ ェ ア ・ プ ラ ンニン グに対応し ます。<br />
• IPexpress : ユーザは WISHBONE イ ン ターフ ェ イ ス を イ ネーブルに し、 必要に応じ て任意のデータパター<br />
ンで UFM ページを初期化可能<br />
• Spreadsheet View (スプレ ッ ド シー ト ・ ビ ュー、 Diamond) ま たは Design Planner (ispLEVER) : ユーザは<br />
UFM ア レ イ を EBR の初期化で共有し、 一部のページを汎用の不揮発 メ モ リ 用に維持する こ と を選択可能<br />
9-45
MachXO2 デバイスのユーザフ ラ ッ シ ュ メ モ リ と<br />
ラ テ ィ スセ ミ コ ンダ ク タ ー ハー ド マ ク ロ化制御機能の使用ガ イ ド<br />
IPexpress に よ る UFM セ ク タ の初期化<br />
IPexpress に よ って UFM セ ク タ をシ ス テム レベルの不揮発性データ で初期化し て、 EFB プ リ ミ テ ィ ブを生成<br />
で き ます。 EFB GUI で UFM タ ブを選択する と 、 UFM の構成可能なパ ラ メ ータ設定が表示さ れます。<br />
図 9-21. IPexpress に よ る UFM セ ク タ の初期化<br />
設定 と し て初期化データ を ロー ド するページ数を入力し ます。初期化データは 'bottom justified (下寄せ) ' さ<br />
れる ため、 リ ー ド オン リ ・ フ ィ ール ド の "Initialization Data Starts at Page" に よ って、 初期化 される先頭ペー<br />
ジのア ド レ スが通知さ れます。本書の使用例では、MachXO2-2000 の UFM セ ク タ の 512 ページが メ モ リ フ ァ<br />
イ ル "example.mem" の内容で初期化されます<br />
.<br />
Uninitialized Pages<br />
First Page of Initial Data<br />
Last Page of Initial Data<br />
UFM Utilization Example (MachXO2-2000)<br />
Initializing 512 Pages<br />
Page 0<br />
Page 1<br />
...<br />
MachXO2-2000 は UFM セ ク タ に 640 ページあ り ます。 初期化データは UFM のア ド レ ッ シング可能な上位<br />
ページ を占有する のに対し て、 ア ド レ ッ シング可能な下位ページは未初期化のま ま残 り ます (全てゼ ロ)。 メ<br />
モ リ フ ァ イルのフ ォーマ ッ ト はページベースで、 2 進または 16 進フ ォーマ ッ ト で表記でき ます。<br />
9-46<br />
Page 128<br />
Page 129<br />
...<br />
Page 639
MachXO2 デバイスのユーザフ ラ ッ シ ュ メ モ リ と<br />
ラ テ ィ スセ ミ コ ンダ ク タ ー ハー ド マ ク ロ化制御機能の使用ガ イ ド<br />
UFM 初期化 メ モ リ フ ァ イル<br />
初期化データ フ ァ イ ルは次のプ ロパテ ィ と フ ォーマ ッ ト を持ち ます。<br />
拡張子 : .mem<br />
フォーマッ ト : バイナリ、 16進<br />
データ幅 : 1 ページ (フ ァ イルの 1 行に 128 ビ ッ ト )<br />
行数 : 使用可能なページ数に等し いかそれ以下<br />
例1. バイナリ<br />
1010…1010 (UFM 初期化データ の開始ページに配置、 ア ド レ ス =N)<br />
1010…1010 (ページア ド レ ス =N+1)<br />
1010…1010 (ページア ド レ ス =N+2)<br />
…<br />
1010…1010 (最上位 UFM ページア ド レ スに配置)<br />
例2. 16進<br />
A…B (UFM 初期化データ の開始ページに配置、 ア ド レ ス =N)<br />
C…D (ページア ド レ ス =N+1)<br />
E…F (ページア ド レ ス =N+2)<br />
…<br />
A…F (最上位 UFM ページア ド レ スに配置)<br />
ページの最上位バイ ト (バイ ト 15) は行の左側で、 最下位バイ ト (バイ ト 0) は行の右側です。<br />
EBR の初期化<br />
UFM セ ク タ を EBR 初期化データ で共有する こ と を選択し た場合は、 次のセ ク タ マ ッ プを設計プ ラ ン時に例<br />
として参照してください。<br />
Block N Location<br />
and Initiliazation<br />
Data<br />
Block M Location<br />
and Initialization<br />
Data<br />
Pages Available for<br />
General Purpose<br />
Non-volatile Data<br />
バル ク 消去動作の実行時に、 EBR 初期化データ が失われない よ う に注意を払 う 必要があ り ます。 セ ク タ を消<br />
去する前に、EBR ブ ロ ッ ク 位置及び EBR 初期化データ を保持し てい るページを 2 次 メ モ リ リ ソースにコ ピー<br />
し て く だ さ い。 UFM セ ク タ が消去 さ れた後で、 そのデータ を UFM に ラ イ ト バ ッ ク で き ます。 電源起動時ま<br />
たは再コ ン フ ィ グ レーシ ョ ン ・ コ マン ド の受信時に、 EBR 初期化データは自動的にそれぞれの EBR ブ ロ ッ ク<br />
にロードされます。EBRブロック位置のデータによって、EBRブロックの位置にコンフィグレーション・ロ<br />
ジックがガイドされます。<br />
9-47<br />
UFM Sector<br />
(MachXO2-2000)<br />
Page 0 (EBR Block N Location)<br />
Page 1 (EBR Block N Initialization Data)<br />
...<br />
Page 72 (EBR Block N Initialization Data)<br />
Page 73 (EBR Block M Location)<br />
Page 74 (EBR Block M Initialization Data)<br />
...<br />
Page 145 (EBR Block M Initialization Data)<br />
Page 146<br />
...<br />
...<br />
Page 639
MachXO2 デバイスのユーザフ ラ ッ シ ュ メ モ リ と<br />
ラ テ ィ スセ ミ コ ンダ ク タ ー ハー ド マ ク ロ化制御機能の使用ガ イ ド<br />
<strong>Lattice</strong> Diamond や ispLEVER ソ フ ト ウ ェ アでの UFM<br />
UFM セ ク タは MachXO2 デバイ スの コ ン フ ィ グ レーシ ョ ン ・ リ ソ ースの 1 つです。 ユーザは、 Diamond の<br />
Spreadsheet view (ス プ レ ッ ド シー ト ・ ビ ュ ー) ま たは Design Planner の Global (グ ロ ーバル) タ ブにある<br />
CONFIGURATION パ ラ メ ータ で、 コ ン フ ィ グ レーシ ョ ン関連オプシ ョ ン を定義で き ます。<br />
図 9-22. Diamond Spreadsheet ビ ューでの UFM<br />
コンフィグレーションのパラメータ ・オプション<br />
CFG_EBRUFM に設定し た場合、 コ ン フ ィ グ レーシ ョ ン ・ ビ ッ ト ス ト リ ーム (EBR 初期化データ を含ま ない)<br />
はコ ン フ ィ グ レーシ ョ ン ・ フ ラ ッ シ ュ ア レ イ に格納されます。 EBR 初期化データ があれば、 それは UFM セ<br />
ク タ の下位ページア ド レ ス (ページ 0 か ら開始) に格納されます。 EBR 初期化データ のマ ッ ピ ン グ後に未占<br />
有の UFM ページは汎用フ ラ ッ シ ュ メ モ リ と し て使用可能です。<br />
CFG に設定し た場合、 コ ン フ ィ グ レーシ ョ ン ・ ビ ッ ト ス ト リ ーム (EBR 初期化データ があればそれを含む)<br />
はコ ン フ ィ グ レーシ ョ ン ・ フ ラ ッ シ ュ ア レ イ に格納さ れ、 UFM にオーバフ ローし ません。 完全な UFM セ ク<br />
タは汎用フ ラ ッ シ ュ メ モ リ と し て使用可能です。<br />
CFGUFM に設定し た場合、 コ ン フ ィ グ レーシ ョ ン ・ ビ ッ ト ス ト リ ーム (EBR 初期化データ があればそれを含<br />
む) は UFM へのオーバフ ローを許可 さ れます。 ユーザは UFM への ラ イ ト ア ク セスはで き ません。<br />
EXTERNAL に設定し た場合、 コ ン フ ィ グ レーシ ョ ン ・ ビ ッ ト ス ト リ ーム (EBR 初期化データ があればそれを<br />
含む) は外付け メ モ リ デバイ スに格納されます。 完全な UFM セ ク タは汎用フ ラ ッ シ ュ メ モ リ と し て使用可<br />
能です。<br />
UFM ア ク セスポー ト<br />
EFB モジ ュールの内部 WISHBONE イ ン ターフ ェ イ ス、外部ス レーブ SPI ポー ト 及び外部 I2Cプライマリポー ト か ら UFM セ ク タ にア ク セ スで き ます。 ま た、 UFM セ ク タ には JTAG ポー ト (IEEE 1149.1 及び IEEE 1532<br />
9-48
MachXO2 デバイスのユーザフ ラ ッ シ ュ メ モ リ と<br />
ラ テ ィ スセ ミ コ ンダ ク タ ー ハー ド マ ク ロ化制御機能の使用ガ イ ド<br />
仕様に準拠する ポー ト ) 経由でア ク セ スする こ と も で き ます。 図 9-23 に UFM セ ク タへの イ ン ターフ ェ イ ス<br />
を示します。<br />
図 9-23. UFM セ ク タへの イ ン ターフ ェ イ ス<br />
UFM Access Ports<br />
CPLD Core Logic<br />
WISHBONE Slave Interface<br />
External Controller<br />
JTAG Port<br />
External Controller<br />
Slave SPI Port<br />
External Controller<br />
I 2 C Primary Port<br />
コ ン フ ィ グ レーシ ョ ン ・ ロ ジ ッ ク は次の優先順位で、 UFM セ ク タへの イ ン ターフ ェ イ スの調停を行います。<br />
1. JTAG ポー ト<br />
2. ス レーブ SPI ポー ト<br />
3. プ ラ イ マ リ I 2 Cポート<br />
4. WISHBONE ス レーブ ・ イ ン ターフ ェ イ ス<br />
Configuration<br />
Logic<br />
WISHBONE ス レーブ ・ イ ン ターフ ェ イ スに よ る UFM ア ク セス<br />
EFB モジ ュールの WISHBONE ス レーブ イ ン ターフ ェ イ ス を使用する と 、PLD コ ア ロ ジ ッ ク か ら UFM セ ク タ<br />
に直接ア ク セ スで き ます。 WISHBONE バスの信号 (本書で前述) は、 汎用 PLD リ ソース を使用し て実装で<br />
き る WISHBONE ホ ス ト に よ って利用されます。WISHBONE バスの信号以外に、割 り 込み要求出力信号が PLD<br />
フ ァ ブ リ ッ ク に届き ます。 IP 信号は "wbc_ufm_irq" で、 それはデータ リ ー ド / ラ イ ト FIFO ス テータ スやアー<br />
ビ ト レーシ ョ ン ・ エ ラーに基づいて、 内部 WISHBONE ホ ス ト に対する割 り 込み要求 と し て機能し ます。<br />
WISHBONE イ ン ターフ ェ イ スは一連のデータ レ ジ ス タ、 制御レ ジ ス タ、 及びス テータ ス レ ジ ス タ を通し て コ<br />
ン フ ィ グ レーシ ョ ン ・ ロ ジ ッ ク と 通信し ます。 表 9-49 にレ ジ ス タ名 と その機能を示し ます。 こ れ ら のレ ジ<br />
スタはEFB レジスタマップのサブセッ トになっています。各レジスタの特定のアドレスについては、EFB レ<br />
ジスタマップを参照してください。<br />
表 9-49. WISHBONE か ら CFG (コ ン フ ィ グ レーシ ョ ン) ロ ジ ッ ク レ ジ ス タ<br />
WISHBONE か ら CFG<br />
レジスタ名<br />
レジスタ機能 アドレス アクセス<br />
CFGCR 制御 0x70 Read/Write<br />
CFGTXDR 送信データ 0x71 Write<br />
CFGSR ス テータ ス 0x72 Read<br />
CFGRXDR 受信データ 0x73 Read<br />
CFGIRQ 割 り 込み要求 0x74 Read/Write<br />
CFGIRQEN 割 り 込み要求イ ネーブル 0x75 Read/Write<br />
注 : 特に指定し ない限 り 、 ラ イ ト 可能レ ジ ス タ の全予約ビ ッ ト には '0' が ラ イ ト さ れなければな り ません。<br />
9-49<br />
User Flash Memory/<br />
UFM/Sector 1<br />
Configuration Memory/<br />
Sector 0
MachXO2 デバイスのユーザフ ラ ッ シ ュ メ モ リ と<br />
ラ テ ィ スセ ミ コ ンダ ク タ ー ハー ド マ ク ロ化制御機能の使用ガ イ ド<br />
表 9-50. UFM/ コ ン フ ィ グ レーシ ョ ン制御<br />
CFGCR 0x70<br />
ビッ ト 7 6 5 4 3 2 1 0<br />
名称 WBCE RSTE (Reserved)<br />
デフォル ト 0 0 0 0 0 0 0 0<br />
アクセス R/W R/W — — — — — —<br />
WBCE WISHBONE Connection Enable (WISHBONE コ ネ ク シ ョ ン ・ イ ネーブル)。 WISHBONE<br />
が、 UFM/ コ ン フ ィ グ レーシ ョ ン ・ ロ ジ ッ ク と リ ー ド / ラ イ ト 接続を確立で き る よ う<br />
にする。 本ビ ッ ト は、 WISHBONE ポー ト か ら何ら かの コ マン ド を実行する前にセ ッ<br />
ト する必要があ る。 同様に、 コマン ド を終了するには本ビ ッ ト を ク リ アする必要があ<br />
りる。WISHBONEコマンドの"フレーミング"の詳細については、付録Aを参照。<br />
1: イ ネーブル<br />
0: デ ィ セーブル<br />
RSTE WISHBONE Connection Reset (WISHBONE コ ネ ク シ ョ ン ・ リ セ ッ ト ) 。 入力 / 出力<br />
FIFO ロ ジ ッ ク を リ セ ッ ト する。<br />
1: CFGCR の ラ イ ト で リ セ ッ ト<br />
0: 通常動作<br />
表 9-51. UFM / コ ン フ ィ グ レーシ ョ ン送信データ<br />
CFGTXDR 0x71<br />
Bit 7 6 5 4 3 2 1 0<br />
名称 CFG_Transmit_Data[7:0]<br />
デフォルト 0 0 0 0 0 0 0 0<br />
アクセス W W W W W W W W<br />
CFG_Transmit_Data[7:0] CFG Transmit Data (CFG 送信データ)。 本レ ジ ス タ には、 UFM/ コ ンフィグレー<br />
ション・ロジックにライトされるバイトが格納される。 ビット 1がLSB<br />
表 9-52. UFM / コ ン フ ィ グ レーシ ョ ン ・ ス テータ ス<br />
CFGSR 0x72<br />
ビッ ト 7 6 5 4 3 2 1 0<br />
名称 WBCACT (Rsrv) TXFE TXFF RXFE RXFF SSPIACT I2CACT<br />
デフォル ト 0 0 0 0 0 0 0 0<br />
アクセス R — R R R R R R<br />
WBCACT WISHBONE Bus to Configuration Logic Active (WISHBONE バスか ら コ ン フ ィ グ レー<br />
ション・ロジックがアクティブ)。WISHBONEからコンフィグレーション・インター<br />
フ ェ イ スへの接続がア ク テ ィ ブで、 確立し てい る こ と を示す。<br />
1: WB ア ク テ ィ ブ<br />
0: WB 非ア ク テ ィ ブ<br />
TXFE Transmit FIFO Empty (送信 FIFO エンプテ ィ )。 送信データ レ ジ ス タ が空であ る こ と<br />
を示す。 本ビ ッ ト は割 り 込みを発生可能。<br />
1: FIFO は空<br />
0: FIFO は空でない<br />
TXFF Transmit FIFO Full (送信 FIFO フル)。 送信データ レ ジ ス タ がフルであ る こ と を示す。<br />
本ビ ッ ト は割 り 込みを発生可能。<br />
9-50
MachXO2 デバイスのユーザフ ラ ッ シ ュ メ モ リ と<br />
ラ テ ィ スセ ミ コ ンダ ク タ ー ハー ド マ ク ロ化制御機能の使用ガ イ ド<br />
1: FIFO フル<br />
0: FIFO フルでない<br />
RXFE Receive FIFO Empty (受信 FIFO エンプテ ィ )。 受信データ レ ジ ス タ が空であ る こ と を<br />
示す。 本ビ ッ ト は割 り 込みを発生可能。<br />
1: FIFO は空<br />
0: FIFO は空でない<br />
RXFF Receive FIFO Full (受信 FIFO フル)。 受信データ レ ジ ス タ がフルであ る こ と を示す。<br />
本ビ ッ ト は割 り 込みを発生可能。<br />
1: FIFO フル<br />
0: FIFO フルでない<br />
SSPIACT Slave SPI Active (ス レーブ SPI ア ク テ ィ ブ)。 WBCE が イ ネーブル さ れた状態で、 ス<br />
レーブ SPI ポー ト が コ ン フ ィ グ レーシ ョ ン ・ ロ ジ ッ ク と のア ク テ ィ ブな通信を開始し<br />
た こ と を示す。 本ポー ト は I2C 及び WISHBONE ポー ト よ り も優先 さ れ、 既存の優先<br />
度の低い ト ラ ンザ ク シ ョ ンに割 り 込み、新し い優先度の低い ト ラ ンザ ク シ ョ ンが全て<br />
禁止される。 本ビ ッ ト は割 り 込みを発生可能。<br />
1: ス レーブ SPI ポー ト はア ク テ ィ ブ<br />
0: ス レーブ SPI ポー ト はア ク テ ィ ブでない<br />
I2CACT I 2C Active (I2C ア ク テ ィ ブ)。 WBCE が イ ネーブル さ れた状態で、 I2C ポー ト がコ ン<br />
フ ィ グ レーシ ョ ン ・ ロ ジ ッ ク と のア ク テ ィ ブな通信を開始し た こ と を示す。 本ポー ト<br />
は WISHBONE ポー ト よ り も優先され、 既存の ト ラ ンザ ク シ ョ ンに割 り 込み、 新し い<br />
ト ラ ンザ ク シ ョ ンが全て禁止される。 本ビ ッ ト は割 り 込みを発生可能。<br />
1: I 2Cポートはアクティブ 0: I 2Cポートはアクティブでない 表 9-53. UFM / コ ン フ ィ グ レーシ ョ ン受信データ<br />
CFGRXDR 0x73<br />
ビッ ト 7 6 5 4 3 2 1 0<br />
名称 CFG_Receive_Data[7:0]<br />
デフォルト 0 0 0 0 0 0 0 0<br />
アクセス R R R R R R R R<br />
CFG_Receive_Data[7:0] CFG 受信データ。 本レ ジ ス タは UFM/ コ ン フ ィ グ レーシ ョ ン ・ ロ ジ ッ ク か ら読ま<br />
れたバイ ト を保持する。 ビ ッ ト 0 が LSB。<br />
表 9-54. UFM / コ ン フ ィ グ レーシ ョ ン割 り 込みス テータ ス<br />
CFGIRQ 0x74<br />
ビッ ト 7 6 5 4 3 2 1 0<br />
名称 (Reserved) IRQTXFE IRQTXFF IRQRXFE IRQRXFF IRQSSPIACT IRQI2CACT<br />
デフォル ト 0 0 0 0 0 0 0 0<br />
アクセス — — R/W R/W R/W R/W R/W R/W<br />
IRQTXFE Transmit FIFO Empty (送信 FIFO エンプテ ィ ) 割 り 込みス テータ ス。 イ ネーブル さ れ<br />
る と 、 TXFE がアサー ト さ れた こ と を示す。 本ビ ッ ト に ‘1’ を書 く と 割 り 込みが ク リ<br />
アされる。<br />
1: 送信 FIFO エンプテ ィ 割 り 込み<br />
0: 割 り 込みな し<br />
9-51
MachXO2 デバイスのユーザフ ラ ッ シ ュ メ モ リ と<br />
ラ テ ィ スセ ミ コ ンダ ク タ ー ハー ド マ ク ロ化制御機能の使用ガ イ ド<br />
IRQTXFF Transmit FIFO Full (送信 FIFO フル) 割 り 込みス テータ ス。 イ ネーブル さ れる と 、<br />
TXFF がアサー ト さ れた こ と を示す。 本ビ ッ ト に ‘1’ を書 く と 割 り 込みが ク リ ア さ れ<br />
る。<br />
1: 送信 FIFO フル割 り 込み<br />
0: 割 り 込みな し<br />
IRQRXFE Receive FIFO Empty 受信 FIFO エンプテ ィ ) 割 り 込みス テータ ス。 イ ネーブル さ れる<br />
と 、 RXFE がアサー ト さ れた こ と を示す。 本ビ ッ ト に ‘1’ を書 く と 割 り 込みが ク リ ア<br />
される。<br />
1: 受信 FIFO エンプテ ィ 割 り 込み<br />
0: 割 り 込みな し<br />
IRQRXFF Receive FIFO Full (送信 FIFO フル) 割 り 込みス テータ ス。 イ ネーブル さ れる と 、RXFF<br />
がアサー ト さ れた こ と を示す。 本ビ ッ ト に ‘1’ を書 く と 割 り 込みが ク リ ア さ れる。<br />
1: 受信 FIFO フル割 り 込み<br />
0: 割 り 込みな し<br />
IRQSSPIACT Slave SPI Active (ス レーブ SPI ア ク テ ィ ブ) 割 り 込みス テータ ス。 イ ネーブル さ れる<br />
と 、 SSPIACT がアサー ト さ れた こ と を示す。 本ビ ッ ト に '1' を ラ イ ト する と 、 割 り 込<br />
みが ク リ ア される。<br />
1: ス レーブ SPI ア ク テ ィ ブ割 り 込み<br />
0: 割 り 込みな し<br />
IRQI2CACT I 2C Active (I2C ア ク テ ィ ブ) 割 り 込みス テータ ス。 イ ネーブル さ れる と 、 I2CACT が<br />
アサー ト さ れた こ と を示す。 本ビ ッ ト に '1' を ラ イ ト する と 、 割 り 込みが ク リ ア さ れ<br />
る。<br />
1: I 2Cアクティブ割り込み 0: 割 り 込みな し<br />
表 9-55. UFM / コ ン フ ィ グ レーシ ョ ン割 り 込みイ ネーブル<br />
CFGIRQEN 0x75<br />
ビッ ト 7 6 5 4 3 2 1 0<br />
名称 (Rsrv) IRQTXFEEN IRQTXFFEN IRQRXFEEN IRQRXFFEN IRQSSPIACTEN IRQI2CACTEN<br />
デフォル<br />
ト<br />
0 0 0 0 0 0 0 0<br />
アクセス — — R/W R/W R/W R/W R/W R/W<br />
IRQTXFEEN Transmit FIFO Empty (送信 FIFO エンプテ ィ ) 割 り 込みイ ネーブル<br />
1: 割 り 込み生成イ ネーブル<br />
0: 割 り 込み生成デ ィ セーブル<br />
IRQTXFFEN Transmit FIFO Full (送信 FIFO フル) 割 り 込みイ ネーブル<br />
1: 割 り 込み生成イ ネーブル<br />
0: 割 り 込み生成デ ィ セーブル<br />
IRQRXFEEN Receive FIFO Empty (受信 FIFO エンプテ ィ ) 割 り 込みイ ネーブル<br />
1: 割 り 込み生成イ ネーブル<br />
0: 割 り 込み生成デ ィ セーブル<br />
IRQRXFFEN Receive FIFO Full (受信 FIFO フル) 割 り 込みイ ネーブル<br />
1: 割 り 込み生成イ ネーブル<br />
0: 割 り 込み生成デ ィ セーブル<br />
IRQSSPIACTEN Slave SPI Active (ス レーブ SPI ア ク テ ィ ブ) 割 り 込みイ ネーブル<br />
1: 割 り 込み生成イ ネーブル<br />
9-52
MachXO2 デバイスのユーザフ ラ ッ シ ュ メ モ リ と<br />
ラ テ ィ スセ ミ コ ンダ ク タ ー ハー ド マ ク ロ化制御機能の使用ガ イ ド<br />
0: 割 り 込み生成デ ィ セーブル<br />
IRQI2CACTEN I 2C Active ( I2C ア ク テ ィ ブ) 割 り 込みイ ネーブル<br />
1: 割 り 込み生成イ ネーブル<br />
0: 割 り 込み生成デ ィ セーブル<br />
表 9-56. 未使用 (予約) レ ジ ス タ<br />
UNUSED 0x76<br />
ビッ ト 7 6 5 4 3 2 1 0<br />
名称 (Reserved)<br />
デフォル ト 0 0 0 0 0 0 0 0<br />
アクセス — — — — — — — —<br />
表 9-57. EFB 割 り 込みソース<br />
EFBIRQ 0x77<br />
ビッ ト 7 6 5 4 3 2 1 0<br />
名称 (Reserved) UFMCFG_INT TC_INT SPI_INT I2C2_INT I2C1_INT<br />
デフォル ト 0 0 0 0 0 0 0 0<br />
アクセス R R R R R R R R<br />
UFMCFG_INT UFM/Config Interrupt Source (UFM/ コ ン フ ィ グ レーシ ョ ン割 り 込みソース)。 EFB割<br />
り 込みソースが UFM/ コ ン フ ィ グ レーシ ョ ン ・ ブ ロ ッ ク であ る こ と を示す。 ソース を<br />
さ ら に詳し く 調べる には CFGIRQ を使用する。<br />
1: レジスタCFGIRQのビットがセットされた<br />
0: 割 り 込みな し<br />
TC_INT Timer/Counter Interrupt Source (タ イ マ / カ ウ ン タ割 り 込みソース)。 EFB 割 り 込み<br />
ソ ースが タ イ マ / カ ウ ン タ ・ ブ ロ ッ ク であ る こ と を示す。 ソース を さ ら に詳し く 調べ<br />
る には TCIRQ を使用する。<br />
1: レジスタTCIRQのビットがセットされた<br />
0: 割 り 込みな し<br />
SPI_INT SPI Interrupt Source (SPI 割 り 込みソース)。 EFB 割 り 込みソースが SPI ブ ロ ッ ク であ<br />
る こ と を示す。 ソ ース を さ ら に詳し く 調べる には SPIIRQ を使用する。<br />
1: レジスタSPIIRQのビットがセットされた<br />
0: 割 り 込みな し<br />
I2C2_INT I2C2 Interrupt Source (I2C2 割 り 込みソース)。 EFB 割 り 込み ソースがセカ ンダ リ I 2 C<br />
ブ ロ ッ ク であ る こ と を示す。ソース を さ ら に詳し く 調べる にはI2C_2_ IRQ を使用する。<br />
1: レジスタI2C_2_ IRQのビットがセットされた<br />
0: 割 り 込みな し<br />
I2C1_INT I2C1 Interrupt Source (I2C1 割 り 込みソース)。 EFB 割 り 込み ソースがプ ラ イ マ リ I 2C ブ ロ ッ ク であ る こ と を示す。ソース を さ ら に詳し く 調べる にはI2C_1_ IRQを使用する。<br />
1: レジスタI2C_1_ IRQのビットがセットされた<br />
0: 割 り 込みな し<br />
JTAG コ ン フ ィ グ レーシ ョ ン ・ ポー ト に よ る UFM ア ク セス<br />
全ての MachXO2 デバイ スに専用の JTAG ポー ト があ り 、 UFM セ ク タ と の リ ー ド / ラ イ ト 動作の実行に使用<br />
で き ます。JTAG ポー ト は IEEE 1149.1 及び IEEE 1532 仕様に準拠し ています。JTAG ポー ト は全ての コ ン フ ィ<br />
グ レーシ ョ ン ・ ロ ジ ッ ク リ ソ ースに対する ア ク セ ス権を持っています。 こ のセ ク シ ョ ンの目的は、JTAG ポー<br />
トによる UFMアクセスをユーザに知らせることです。 MachXO2デバイスにおける JTAGポートの詳細につ 9-53
MachXO2 デバイスのユーザフ ラ ッ シ ュ メ モ リ と<br />
ラ テ ィ スセ ミ コ ンダ ク タ ー ハー ド マ ク ロ化制御機能の使用ガ イ ド<br />
いては、”TN1204, MachXO2 Programming and Configuration Usage Guide (MachXO2 プ ロ グ ラ ミ ン グ と コ ン フ ィ<br />
グ レーシ ョ ンのユーザガ イ ド ) ” を参照し て く だ さ い。<br />
スレーブSPIコンフィグレーション ・ポートによる UFMアクセス 全ての MachXO2 デバイ スに専用のス レーブ SPI ポー ト があ り 、 UFM セ ク タ と の リ ード / ラ イ ト 動作の実行<br />
に使用で き ます。 コ ン フ ィ グ レーシ ョ ン SPI ポー ト は、 EFB モジ ュールのハー ド マ ク ロ SPI コ ア と 共有され<br />
ます。コンフィグレーショ ン SN(セレクト)ピンをアサートすると、SPIポートはそのサービスを WISHBONE<br />
インターフェイス付きユーザモードからコンフィグレーション ・ モードに遷移させます。<br />
コ ン フ ィ グ レーシ ョ ン ・ ス レーブ SPI ポー ト のピ ン位置は、全ての MachXO2 デバ イ スにおいて事前割 り 当て<br />
さ れています。 デバイ ス ピ ンの詳細な割 り 当てについては、 MachXO2 フ ァ ミ リ ・ データ シー ト のピンテー<br />
ブルを参照して く ださい。<br />
コ ン フ ィ グ レーシ ョ ン用 I2C ポー ト か ら の UFM ア ク セス<br />
全ての MachXO2デバイ スに専用の I2C ポー ト があ り 、 UFM セ ク タ と の リ ー ド / ラ イ ト 動作の実行に使用で<br />
き ます。 コ ン フ ィ グ レーシ ョ ン I 2Cポートは、EFBモジュールのハードマクロI2Cプライマリコアと共有さ れます。<br />
I 2 C プラ イマ リ ポー ト を コ ンフ ィ グレーシ ョ ン ・ ア ド レ スでア ド レ ス指定する と、 ポー ト サービスは<br />
WISHBONE イ ン ターフ ェ イ ス付き ユーザモー ド か ら コ ン フ ィ グ レーシ ョ ン ・ モー ド に変化し ます。<br />
コンフィグレーション I 2 C ポー ト のピ ン位置は、全ての MachXO2 デバ イ スにおいて事前割 り 当て さ れていま<br />
す。 デバイ スピンの詳細な割 り 当てについては、 MachXO2 フ ァ ミ リ ・ データ シー ト のピンテーブルを参照し<br />
てください。<br />
UFM への コ マン ド 及びデータ の転送<br />
UFM セ ク タへの コ マン ド 及びデータ の転送は、 それぞれの物理イ ン ターフ ェ イ スの違いに関係な く 、 全ての<br />
ア ク セ ス ポー ト について同じ です。 UFM セ ク タはページ単位で編成さ れています。 し たがって、 ユーザは特<br />
定のページに対する リ ー ド ま たは ラ イ ト 動作のために、そのページのア ド レ ス を指定し ます。各ページは 128<br />
ビ ッ ト (16 バイ ト ) です。 転送は一連の命令及びページア ド レ スに基づき ます。 フ ラ ッ シ ュ メ モ リ は二つの<br />
セ ク タ、 コ ン フ ィ グ レーシ ョ ン メ モ リ (セ ク タ 0) と UFM (セ ク タ 1)、 よ り な り ます。 消去動作はセ ク タ単<br />
位です。<br />
用途ご と コ マン ド のま と め<br />
表 9-58. UFM ( セ ク タ 1) コ マン ド<br />
コマンド名<br />
コマンド<br />
msb lsb<br />
記 述<br />
Read Status Reg 0x3C 4 バイ ト のコ ン フ ィ グ レーシ ョ ン ・ ス テータ ス レ ジ ス タ を リ ー ド する<br />
Check Busy Flag 0xF0 コ ン フ ィ グ レーシ ョ ン ・ ビジーフ ラ グ を リ ー ド する<br />
Enable Configuration Interface<br />
(Transparent Mode)<br />
0x74<br />
透過的 UFM ア ク セス を イ ネーブルする。 ユーザ ロ ジ ッ ク で制御さ れる全ての<br />
ユーザ I/O、 デバイ スはユーザモード のま ま (この表内の以下のコマン ド で<br />
は、 イ ン ターフ ェ イ ス を イ ネーブルする必要があ る)<br />
Disable Configuration Interface 0x26 コ ン フ ィ グ レーシ ョ ン (UFM) ア ク セス をデ ィ セーブルする<br />
Set Address 0xB4 UFM セ ク タ及び 14 ビ ッ ト ・ ア ド レ ス レ ジ ス タ をセ ッ ト する<br />
Init UFM Address 0x47<br />
ア ド レ ス レ ジ ス タ を リ セ ッ ト し、 第 1 URM ページ (セ ク タ 1、 ページ 0) を指<br />
すよ うにする<br />
Read UFM 0xCA<br />
UFMデータを リードする。 オペランドは、 リードするページ数、 及びプリペン<br />
ド する ダ ミ ーバイ ト 数を指定する。 ア ド レ ス レ ジ ス タはポス ト (動作後) イ ン<br />
クリメントされる<br />
Erase UFM 0xCB UFM セ ク タ のみを消去する<br />
Program UFM 0xC9<br />
UFM に 1 ページのデータをライ トする。 アド レスレジスタは事後インク リ メン<br />
トされる<br />
9-54
MachXO2 デバイスのユーザフ ラ ッ シ ュ メ モ リ と<br />
ラ テ ィ スセ ミ コ ンダ ク タ ー ハー ド マ ク ロ化制御機能の使用ガ イ ド<br />
表 9-59. コ ン フ ィ グ レーシ ョ ン ・ フ ラ ッ シ ュ ( セ ク タ 0) コ マン ド<br />
Command Name<br />
Command<br />
msb lsb 記 述<br />
Read Device ID code 0xE0 4 バイ ト のデバイ ス ID を リ ー ド する (0x01 2b 20 43)<br />
Read USERCODE 0xC0 32 ビ ッ ト の USERCODE を リ ー ド する<br />
Read Status Reg 0x3C 4 バイ ト の コ ン フ ィ グ レーシ ョ ン ・ ス テータ ス レ ジ ス タ を リ ー ド する<br />
Check Busy Flag 0xF0 コ ン フ ィ グ レーシ ョ ン ・ ビ ジーフ ラ グ を リ ー ド する<br />
Refresh 1<br />
0x79 ブー ト シーケン ス を起動する (PROGRAMN ピ ンの ト グル動作 と 同じ)<br />
Flash Check 1<br />
Enable Configuration Interface<br />
(Transparent Mode) コ ン フ ィ グ<br />
レーシ ョ ン ・ インターフェイ<br />
スをイネーブル<br />
0x7D<br />
0x74<br />
1. リフレッシュとフラッシュチェック両コマンドはシミュレーション ・モデルではサポート されていません。<br />
表 9-60. 不揮発性レ ジ ス タ (NVR) コ マン ド<br />
これによ り、 ビッ ト をコンフィグレーショ ン SRAM に実際にライ トするこ とな<br />
く、 オンチップ・ コンフィグレーション ・ フラッシュ ・ ビッ トスト リームが<br />
リ ー ド さ れ、 フ ラ ッ シ ュバイ ト の CRC がチェ ッ ク さ れる (通常のデバイ ス動<br />
作中にバ ッ ク グ ラ ウ ン ド で行われる)。 結果のス テータ ス レ ジ ス タ の失敗フ ラ<br />
グをチェッ クする<br />
透過的コ ン フ ィ グ レーシ ョ ン ・ フ ラ ッ シ ュ ・ ア ク セス を イ ネーブルし、 ユーザ<br />
ロ ジ ッ ク で制御される全てのユーザ I/O、 デバイ スはユーザモー ド のま ま (こ<br />
の表内の以下の コ マン ド では、 イ ン ターフ ェ イ ス を イ ネーブルする必要があ<br />
る)<br />
Disable Configuration Interface 0x26 ア ク セ スモー ド を終了する<br />
Set Address 0xB4 14 ビ ッ ト のア ド レ ス レ ジ ス タ をセ ッ ト する<br />
Verify Device ID 0xE2<br />
Init CFG Address 0x46<br />
Read Config Flash 0x73<br />
Erase Flash 0x0E<br />
32 ビ ッ ト 入力でデバイ ス ID を確認し、 不一致の場合は失敗フ ラ グ をセ ッ ト す<br />
る<br />
アドレスレジスタをリセッ トし、 第1 コンフィグレーション・フラッシュペー<br />
ジ (セク タ 0、 ページ 0) を指すよ うにする<br />
コ ン フ ィ グ レーシ ョ ン ・ フ ラ ッ シ ュデータ を リ ー ド する。 オペラ ン ド は、 リ ー<br />
ド するページ数、 及びプ リ ペン ド する ダ ミ ーバイ ト 数を指定する。 ア ド レ ス レ<br />
ジスタは事後インク リ メン ト される<br />
コンフィグレーション・フラッシュ、Doneビット、セキュリティビット、及<br />
びUSERCODEを消去する<br />
Program Config Flash 0x70<br />
コ ン フ ィ グ レーシ ョ ン ・ フ ラ ッ シ ュ に 1 ページのデータ を ラ イ ト する。 ア ド レ<br />
スレジスタは事後インク リ メント される<br />
Program DONE 0x5E Done ビ ッ ト をプ ロ グ ラ ムする<br />
Program SECURITY 0xCE セキ ュ リ テ ィ ビ ッ ト (CFG フ ラ ッ シ ュ セ ク タ を保護) をプ ロ グ ラ ムする<br />
Program SECURITY PLUS 0xCF<br />
セキ ュ リ テ ィ ・ プ ラ ス ビ ッ ト (UFM セ ク タ を保護) をプ ロ グ ラ ムする (セ<br />
キ ュ リ テ ィ ビ ッ ト も セ ッ ト し た場合のみ有効)<br />
Program USERCODE 0xC2 32 ビ ッ ト の USERCODE をプ ロ グ ラ ムする<br />
コマンド名<br />
コマンド<br />
msb lsb<br />
Read Trace ID code 0x19 64 ビ ッ ト の TraceID を リ ー ド する<br />
WISHBONE バス イ ン ターフ ェ イ ス使用時にはコ マン ド と オペコー ド 、 オペラ ン ド 、 及びデータ が CFGTXDR<br />
レジスタに書き込まれます。 シリアルのスレーブ SPI または I 2 C イ ン ターフ ェ イ ス使用時には、 MSB (最上<br />
位ビ ッ ト ) が最初に MachXO2 デバ イ スにシ フ ト さ れます。 こ れは、 MachXO2 デバ イ ス内部の コ ン フ ィ グ<br />
レーシ ョ ン ・ ロ ジ ッ ク と の通信の場合にのみ必要です。<br />
UFM ま たはコ ン フ ィ グ レーシ ョ ン ・ フ ラ ッ シ ュ で ラ イ ト 、 リ ー ド 、 ま たは消去動作を実行する には、 コ マン<br />
ド 0x74 を使用し て イ ン ターフ ェ イ ス を イ ネーブルする必要があ り ます。該当する コ マン ド は、 コ マン ド 説明<br />
の "EN Required (EN 必要) " に示し てあ り ます。 変更動作の完了後は、 コ マン ド 0x26 を使用し て イ ン ター<br />
フェイスをディセーブルできます。<br />
9-55<br />
記 述
MachXO2 デバイスのユーザフ ラ ッ シ ュ メ モ リ と<br />
ラ テ ィ スセ ミ コ ンダ ク タ ー ハー ド マ ク ロ化制御機能の使用ガ イ ド<br />
コマンドコード別コマンド説明<br />
表 9-61. フ ラ ッ シ ュ メ モ リ 消去 (0x0E)<br />
UFM CFG NVR EN 必要? CMD<br />
(Hex)<br />
オペラ ン ド : 0000 uc00 0000 0000 0000 0000 (バ イナ リ )<br />
こ こ で : u: UFM セ ク タ消去<br />
0: ア ク シ ョ ンな し<br />
1: 消去<br />
c: CFG セ ク タ消去 ( コ ン フ ィ グ レーシ ョ ン ・ フ ラ ッ シ ュ , DONE, セキ ュ リ テ ィ ビ ッ<br />
ト , USERCODE)<br />
0: ア ク シ ョ ンな し<br />
1: 消去<br />
注 : フ ラ ッ シ ュ ビ ッ ト の消去状態 = ‘0’<br />
例 : 0x0E 04 00 00<br />
CFG セ ク タ消去<br />
0x0E 08 00 00<br />
UFM セ ク タ消去<br />
0x0E 0C 00 00<br />
UFM と CFG セ ク タ消去<br />
表 9-62. リ ー ド TraceID コー ド (0x19)<br />
オペラ ン ド<br />
(Hex)<br />
データ<br />
モード<br />
例 : 0x19 00 00 00<br />
8バイトのTraceIDをリード<br />
注 : リ ー ド さ れる先頭バ イ ト はユーザ部で、 続 く 7 バ イ ト が各デバイ ス個体に固有の値です。<br />
表 9-63. コ ン フ ィ グ レーシ ョ ン ・ イ ン ターフ ェ イ ス ・ デ ィ セーブル (0x26)<br />
例 : 0x26 00 00 00<br />
ア ク セ ス変更に対し て、 URM/ コ ン フ ィ グ レーシ ョ ン ・ イ ン ターフ ェ イ ス をデ ィ セー<br />
ブルする<br />
注 : コ ンフ ィ グレーシ ョ ン ・ ステータ スレジス タのビジービ ッ ト がアサー ト されている間は、 イ ン<br />
ターフ ェ イ ス をデ ィ セーブルで き ません。 コ マン ド (消去、 プ ロ グ ラ ムなど) の実行後、 ビ ジー<br />
が ク リ ア さ れた こ と を確認し てか ら、 デ ィ セーブル ・ コ マン ド を発行し ます。<br />
9-56<br />
データ<br />
サイズ<br />
データ フ ォーマ ッ ト<br />
x x Y 0E 下記 — — —<br />
UFM CFG NVR EN 必要? CMD<br />
(Hex)<br />
オペラ ン ド<br />
(Hex)<br />
データ<br />
モード<br />
データ<br />
サイズ<br />
データ フ ォーマ ッ ト<br />
x N 19 00 00 00 R 8B —<br />
UFM CFG NVR EN 必要? CMD<br />
(Hex)<br />
オペラ ン ド<br />
(Hex)<br />
データ<br />
モード<br />
データ<br />
サイズ<br />
データ フ ォーマ ッ ト<br />
x x — 26 00 00 00 — — —
MachXO2 デバイスのユーザフ ラ ッ シ ュ メ モ リ と<br />
ラ テ ィ スセ ミ コ ンダ ク タ ー ハー ド マ ク ロ化制御機能の使用ガ イ ド<br />
表 9-64. リ ー ド ・ ス テータ ス レ ジ ス タ (0x3C)<br />
UFM CFG NVR EN 必要? CMD<br />
(Hex)<br />
データ フ ォーマ ッ ト : SR の最上位バ イ ト が最初に受信 さ れ、 LSB が最後にな る。<br />
B bit 12: ビジーフ ラ グ (1 = ビジー)<br />
F bit 13: 失敗フ ラ グ (1 = 動作失敗)<br />
D bit 8: 完了フ ラ グ (1 = フ ラ ッ シ ュ か ら SRAM への転送が正常に完了)<br />
(他の全てのビ ッ ト は予約済み)<br />
例 : 0x3C 00 00 00<br />
4バイ ト ・ス テータ ス レ ジ ス タ を リ ー ド する。例えば0x00 00 20 00(fail フ ラ グがセ ッ ト )<br />
表 9-65. CFG ア ド レ ス初期化 (0x46)<br />
例 : 0x46 00 00 00<br />
アドレスレジスタにコンフィグレーション・セクタ、 ページ0をセットする 表 9-66. UFM ア ド レ ス初期化 (0x47)<br />
例 : 0x47 00 00 00<br />
UFM セ ク タ、 ページ 0 へのア ド レ ス レ ジ ス タ をセ ッ ト<br />
表 9-67. DONE プ ロ グ ラ ム (0x5E)<br />
例 : 0x5E 00 00 00<br />
DONE ビ ッ ト をセ ッ ト<br />
オペラ ン ド<br />
(Hex)<br />
データ<br />
モード<br />
表 9-68. プ ロ グ ラ ム ・ コ ン フ ィ グ レーシ ョ ン ・ フ ラ ッ シ ュ メ モ リ (0x70)<br />
例 : 0x70 00 00 01 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F<br />
ア ド レ ス レ ジ ス タ が指す 1 ページのデータ を ラ イ ト する。<br />
注 : 16データバイ ト に続いてコマンド及びオペランド ・バイ ト をライ トするこ とで、正しいデータ ・<br />
アライメントを確実なものとする必要があります。<br />
本コ マン ド の実行前に、 0x0E を使用し て CFG セ ク タ を消去し なければな り ません。<br />
9-57<br />
データ<br />
サイズ<br />
データ フ ォーマ ッ ト<br />
x x N 3C 00 00 00 R 4B xxxx xxxx xxxx xxxx xxFB xxxD xxxx xxxx<br />
UFM CFG NVR EN 必要? CMD<br />
(Hex)<br />
オペラ ン ド<br />
(Hex)<br />
データ<br />
モード<br />
データ<br />
サイズ<br />
データ フ ォーマ ッ ト<br />
x Y 46 00 00 00 — — —<br />
UFM CFG NVR EN 必要? CMD<br />
(Hex)<br />
オペラ ン ド<br />
(Hex)<br />
データ<br />
モード<br />
データ<br />
サイズ<br />
データ フ ォーマ ッ ト<br />
x Y 47 00 00 00 — — —<br />
UFM CFG NVR EN 必要? CMD<br />
(Hex)<br />
オペラ ン ド<br />
(Hex)<br />
データ<br />
モード<br />
データ<br />
サイズ<br />
データ フ ォーマ ッ ト<br />
x Y 5E 00 00 00 — — —<br />
UFM CFG NVR EN 必要? CMD<br />
(Hex)<br />
オペラ ン ド<br />
(Hex)<br />
データ<br />
モード<br />
データ<br />
サイズ<br />
データ フ ォーマ ッ ト<br />
x Y 70 00 00 01 W 16B 16 bytes UFM write data
MachXO2 デバイスのユーザフ ラ ッ シ ュ メ モ リ と<br />
ラ テ ィ スセ ミ コ ンダ ク タ ー ハー ド マ ク ロ化制御機能の使用ガ イ ド<br />
表 9-69. リ ー ド ・ コ ン フ ィ グ レーシ ョ ン ・ フ ラ ッ シ ュ メ モ リ (0x73)<br />
UFM CFG NVR EN 必要? CMD<br />
(Hex)<br />
x Y 73<br />
* オペラ ン ド : 000i dddd 00pp pppp pppp pppp ( バ イ ナ リ )<br />
こ こ で : i: 4 バ イ ト のダ ミ ー ・ オーバ ラ イ ド を挿入する<br />
0: num_dummy = 4 ( デフ ォル ト )<br />
*1: num_dummy をセ ッ ト する には 'dddd' フ ィ ール ド を使用する<br />
dddd: num_dummy override<br />
*0000:0 ダ ミ ーバイ ト をプ リ ペン ド する (1 ページ リ ー ド )<br />
1 ページをプ リ ペン ド する (1 ページを超え る リ ー ド )<br />
0001: 1 ダ ミ ーバイ ト をプ リ ペン ド<br />
0010: 2 ダ ミ ーバイ ト をプ リ ペン ド<br />
…<br />
1111: 15 ダ ミ ーバ イ ト をプ リ ペン ド<br />
pp..pp: num_pages リ ー ド する CFG ページ数(i=1 及び dddd = 0000 の場合はプ リ ペン<br />
ド さ れたページ を含む)<br />
* R1 デバ イ スが唯一対応し てい る設定。<br />
** データ サ イ ズ : (num_dummy) + (num_pages * 16) バ イ ト<br />
注 : CFG の リ ー ド はいつで も中止で き ます。 リ ー ド FIFO 内の残 り のデータは全て破棄 さ れ、 指定 さ<br />
れた リ ー ド サ イ ズを超え る リ ー ド データは不定 と な り ます。 ア ド レ ス レ ジ ス タは、 各ページの<br />
リード後に自動インク リ メント されます。<br />
*** 例 : 0x73 10 00 04<br />
1 ページのダ ミ ー と 、 それに続 く 3 ページの CFG データ (合計 4 ページ) を リ ー ド<br />
0x73 00 00 07<br />
4 バイ ト のダ ミ ー と 、 それに続 く 7 ページの CFG データ (合計 132 バイ ト ) を リ ー ド<br />
0x73 10 00 01<br />
0バイトのダミーと、それに続く1ページのCFGデータ (合計16バイト) をリード<br />
0x73 11 00 01<br />
1 バイ ト のダ ミ ー と 、 それに続 く 1 ページの CFG データ (合計 176 バイ ト ) を リ ー ド<br />
注 : 内部フ ラ ッ シ ュ ・ リ ー ド 回路は、 最大 WISHBONE、 SPI、 ま たは I 2 C レート よ り も速い速度で動<br />
作し ます。 ' 有効な ' データ の前に挿入する ダ ミ ーバ イ ト 数は、 0 ま たは 1 (それぞれ 1 ページ ま<br />
たは複数ページの リ ー ド ) に減ら し て も問題あ り ません。<br />
表 9-70. コ ン フ ィ グ レーシ ョ ン ・ イ ン ターフ ェ イ ス ・ イ ネーブ (0x74) ル<br />
UFM CFG NVR EN 必要? CMD<br />
(Hex)<br />
オペラ ン ド<br />
(Hex)<br />
*<br />
(下記)<br />
オペラ ン ド<br />
(Hex)<br />
データ<br />
モード<br />
注 : 本コ マン ド は、 UFM、 コ ン フ ィ グ レーシ ョ ン ・ フ ラ ッ シ ュ、 ま たは不揮発性レ ジ ス タ (NVR) を<br />
変更可能にする ため必要です。 本コ マン ド は 0x26 を使用し て終了し ます。<br />
例 : 0x74 08 00 00<br />
R<br />
データ<br />
モード<br />
9-58<br />
データ<br />
サイズ<br />
**<br />
(下記)<br />
データ<br />
サイズ<br />
データ フ ォーマ ッ ト<br />
***<br />
(below)<br />
データ フ ォーマ ッ ト<br />
x x — 74 08 00 00 — — —
MachXO2 デバイスのユーザフ ラ ッ シ ュ メ モ リ と<br />
ラ テ ィ スセ ミ コ ンダ ク タ ー ハー ド マ ク ロ化制御機能の使用ガ イ ド<br />
表 9-71. リ フ レ ッ シ ュ (0x79)<br />
UFM CFG NVR EN 必要? CMD<br />
(Hex)<br />
変更ア ク セ スに対し て、 URM/ コ ン フ ィ グ レーシ ョ ン ・ イ ン ターフ ェ イ ス を イ ネーブ<br />
ルする。<br />
例 : 0x79 00 00 00<br />
リ フ レ ッ シ ュ ・ コ マン ド を発行する。<br />
注 : ブー ト シーケ ン ス を起動する。<br />
表 9-72. フ ラ ッ シ ュ メ モ リ ・ チェ ッ ク (0x7D)<br />
例 : 0x7D 20 00 00<br />
フラッシュ ・チェックを起動<br />
注: コンフィグレーション ・ フラッシュの更新後に本コマンドを使用して、 リ フレッシュ ・ コマンド<br />
の発行前に イ メ ージを確実にチェ ッ ク し ます。 ビ ジー及び失敗ス テータ スのチェ ッ ク にはコ マン<br />
ド 0x3C を使用し ます。<br />
表 9-73. ア ド レ ス設定 (0xB4)<br />
データ フ ォーマ ッ ト : s: セ ク タ<br />
0: コ ン フ ィ グ レーシ ョ ン<br />
1: UFM<br />
aa..aa: address14 ビ ッ ト のページア ド レ ス<br />
例 : 0xB4 00 00 00 40 00 00 0A<br />
ア ド レ ス レ ジ ス タ に UFM セ ク タ、 ページ 10 (10 進) をセ ッ ト する。<br />
表 9-74. リ ー ド USERCODE (0xC0)<br />
例 : 0xC0 00 00 00<br />
CFG セ ク タ か ら 4 バ イ ト の USERCODE を リ ー ド する。<br />
表 9-75. プ ロ グ ラ ム USERCODE (0xC2)<br />
オペラ ン ド<br />
(Hex)<br />
データ<br />
モード<br />
9-59<br />
データ<br />
サイズ<br />
データ フ ォーマ ッ ト<br />
x Y 79 00 00 00 — — —<br />
UFM CFG NVR EN 必要? CMD<br />
(Hex)<br />
オペラ ン ド<br />
(Hex)<br />
データ<br />
モード<br />
データ<br />
サイズ<br />
データ フ ォーマ ッ ト<br />
x N 7D 20 00 00 — — —<br />
UFM CFG NVR EN 必要? CMD<br />
(Hex)<br />
オペラ ン ド<br />
(Hex)<br />
データ<br />
モード<br />
データ<br />
サイズ<br />
データ フ ォーマ ッ ト<br />
x x Y B4 00 00 00 W 4B 0s00 0000 0000 0000 00aa aaaa aaaa aaaa<br />
UFM CFG NVR EN 必要? CMD<br />
(Hex)<br />
オペラ ン ド<br />
(Hex)<br />
データ<br />
モード<br />
データ<br />
サイズ<br />
データ フ ォーマ ッ ト<br />
x N C0 00 00 00 R 8B —<br />
UFM CFG NVR EN 必要? CMD<br />
(Hex)<br />
オペラ ン ド<br />
(Hex)<br />
データ<br />
モード<br />
データ<br />
サイズ<br />
データ フ ォーマ ッ ト<br />
x Y C2 00 00 00 W 4B —
MachXO2 デバイスのユーザフ ラ ッ シ ュ メ モ リ と<br />
ラ テ ィ スセ ミ コ ンダ ク タ ー ハー ド マ ク ロ化制御機能の使用ガ イ ド<br />
例 : 0xC2 00 00 00 10 20 30 40<br />
USERCODE を 32 ビ ッ ト 入力 0x10 20 30 40 にセ ッ ト 。<br />
表 9-76. プ ロ グ ラ ム UFM (0xC9)<br />
UFM CFG NVR EN 必要? CMD<br />
(Hex)<br />
例 : 0xC9 00 00 01 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F<br />
ア ド レ ス レ ジ ス タ が指す 1 ページのデータ を ラ イ ト する。<br />
注 : 注: 16 データバイ ト に続いて コマン ド及びオペラ ン ド ・ バイ ト を ラ イ ト する こ と で、正しいデー<br />
タ・アライメントを確実なものとする必要があります。アドレスレジスタは、ページライト後に<br />
自動イ ン ク リ メ ン ト さ れます。<br />
本コ マン ド の実行前に、0x0E ま たは 0xCB を使用し て UFM セ ク タ を消去し なければな り ません。<br />
表 9-77. リ ー ド UFM (0xCA)<br />
オペラ ン ド<br />
(Hex)<br />
データ<br />
モード<br />
* オペラ ン ド : 000i dddd 00pp pppp pppp pppp ( バ イ ナ リ )<br />
ここで: i: 4バイトのダミー・オーバーライドを挿入<br />
0: num_dummy = 4 ( デフ ォル ト )<br />
*1: num_dummy のセ ッ ト に ‘dddd’ フ ィ ール ド を使用<br />
dddd: num_dummy オーバ ラ イ ド<br />
*0000: 0 ダ ミ ーバ イ ト をプ リ ペン ド (1 ページ リ ー ド )<br />
1ページプリペンド (1ページより大きいリード )<br />
0001: 1 ダ ミ ーバ イ ト をプ リ ペン ド<br />
0010:<br />
…<br />
2 ダ ミ ーバ イ ト をプ リ ペン ド<br />
1111: 15 ダ ミ ーバイ ト をプ リ ペン ド<br />
pp..pp: num_pages – リ ー ド する UFM ページ数 (i=1 及び dddd = 0000 の場合はプ リ ペ<br />
ン ド さ れたダ ミ ーページを含む)<br />
* R1 デバ イ スが唯一対応し てい る設定<br />
** データ サ イ ズ (num_dummy) + (num_pages * 16) バ イ ト<br />
注 : UFM の リ ー ド はいつで も中止で き ます。 リ ー ド FIFO 内の残 り のデータは全て破棄され、指定 さ<br />
れたリードサイズを超えるリードデータは不定となります。 アドレスレジスタは、各ページの<br />
リード後に自動インク リ メント されます。<br />
*** 例 : 0xCA 10 00 04<br />
1 ページのダ ミ ー と 、 それに続 く 3 ページの UFM データ (合計 4 ページ) を リ ー ド<br />
0xCA 00 00 07<br />
4 バ イ ト のダ ミ ー と 、それに続 く 7 ページの UFM データ ( 合計 132 バ イ ト ) を リ ー ド<br />
0xCA 10 00 01<br />
9-60<br />
データ<br />
サイズ<br />
データ フ ォーマ ッ ト<br />
x Y C9 00 00 01 W 16B 16 bytes UFM write data<br />
UFM CFG NVR EN 必要? CMD<br />
(Hex)<br />
x Y CA<br />
オペラ ン ド<br />
(Hex)<br />
*<br />
(下記)<br />
データ<br />
モード<br />
R<br />
データ<br />
サイズ<br />
**<br />
(下記)<br />
データ フ ォーマ ッ ト<br />
***<br />
(below)
MachXO2 デバイスのユーザフ ラ ッ シ ュ メ モ リ と<br />
ラ テ ィ スセ ミ コ ンダ ク タ ー ハー ド マ ク ロ化制御機能の使用ガ イ ド<br />
0 バ イ ト のダ ミ ー と 、 それに続 く 1 ページの UFM データ ( 合計 16 バ イ ト ) を リ ー ド<br />
0xCA 11 00 01<br />
1 バ イ ト のダ ミ ー と 、それに続 く 1 ページの UFM データ ( 合計 176 バ イ ト ) を リ ー ド<br />
注 : 内部フ ラ ッ シ ュ ・ リ ー ド 回路は、 最大 WISHBONE、 SPI、 ま たは I2C レー ト よ り も速い速度で動<br />
作する ' 有効な ' データ の前に挿入する ダ ミ ーバ イ ト 数は、0 ま たは 1 (それぞれ 1 ページ ま たは<br />
複数ページの リ ー ド ) に減ら し て も問題あ り ません。<br />
表 9-78. 消去 UFM (0xCB)<br />
UFM CFG NVR EN 必要? CMD<br />
(Hex)<br />
注 : UFM ビ ッ ト の消去状態は = ‘0’ です。<br />
例 : 0xCB 00 00 00<br />
UFM セ ク タ消去<br />
表 9-79. プ ロ グ ラ ム SECURITY (0xCE)<br />
例 : 0xCE 00 00 00<br />
SECURITY ビ ッ ト をセ ッ ト<br />
表 9-80. プ ロ グ ラ ム SECURITY PLUS (0xCF)<br />
例 : 0xCF 00 00 00<br />
SECURITY PLUS ビ ッ ト をセ ッ ト<br />
表 9-81. リ ー ド デバイ ス ID コー ド (0xE0)<br />
オペラ ン ド<br />
(Hex)<br />
例 : 0xE0 00 00 00<br />
4バイトのデバイスIDをリード<br />
データ<br />
モード<br />
9-61<br />
データ<br />
サイズ<br />
データ フ ォーマ ッ ト<br />
x Y CB 00 00 00 — — —<br />
UFM CFG NVR EN 必要? CMD<br />
(Hex)<br />
オペラ ン ド<br />
(Hex)<br />
データ<br />
モード<br />
データ<br />
サイズ<br />
データ フ ォーマ ッ ト<br />
x Y CE 00 00 00 — — —<br />
UFM CFG NVR EN 必要? CMD<br />
(Hex)<br />
オペラ ン ド<br />
(Hex)<br />
データ<br />
モード<br />
データ<br />
サイズ<br />
データ フ ォーマ ッ ト<br />
x Y CF 00 00 00 — — —<br />
UFM CFG NVR EN 必要? CMD<br />
(Hex)<br />
オペラ ン ド<br />
(Hex)<br />
データ<br />
モード<br />
データ<br />
サイズ<br />
データ フ ォーマ ッ ト<br />
x N E0 00 00 00 R 4B See 表 9-80
MachXO2 デバイスのユーザフ ラ ッ シ ュ メ モ リ と<br />
ラ テ ィ スセ ミ コ ンダ ク タ ー ハー ド マ ク ロ化制御機能の使用ガ イ ド<br />
表 9-82. デバイ ス ID の一覧<br />
例 : 0xE0 00 00 00<br />
4バイトのデバイスIDをリード<br />
表 9-83. ベ リ フ ァ イ ・ デバイ ス ID コー ド (0xE2)<br />
例 : 0xE2 00 00 00 01 2B 20 43<br />
32 ビ ッ ト 入力でデバイ ス ID を確認し、不一致の場合は SR に失敗フ ラ グをセ ッ ト する<br />
表 9-84. チェ ッ ク ・ ビジーフ ラ グ (0xF0)<br />
データ フ ォーマ ッ ト : B: bit 0: ビジーフ ラ グ (1= ビ ジー ) 他の全ビ ッ ト は予約 )<br />
例 : 0x3C 00 00 00<br />
1 バイ ト リ ー ド , e.g. 0x01 (busy フ ラ グがセ ッ ト )<br />
ま と め と し て、 UFM への ラ イ ト と 消去、 および リ ー ド には複数のポー ト を使用し て実行で き ます。 こ れはシ<br />
ス テム設計におけ る柔軟性を増大し ます。 操作はセ ク タ内の特定ページに対し て定義 さ れた命令 と オペラ ン<br />
ドを用いて実行されます。<br />
タイミング図<br />
デバイス HE/ZEデバイス HCデバイス<br />
MachXO2-256 0x01 2B 00 43 0x01 2B 80 43<br />
MachXO2-640 0x01 2B 10 43 0x01 2B 90 43<br />
MachXO2-1200 0x01 2B 20 43 0x01 2B A0 43<br />
MachXO2-2000 0x01 2B 30 43 0x01 2B B0 43<br />
MachXO2-4000 0x01 2B 40 43 0x01 2B C0 43<br />
MachXO2-7000 0x01 2B 50 43 0x01 2B D0 43<br />
UFM CFG NVR EN 必要? CMD<br />
(Hex)<br />
図 9-24. I 2 Cビットの転送タイミング<br />
オペラ ン ド<br />
(Hex)<br />
データ<br />
モード<br />
9-62<br />
データ<br />
サイズ<br />
データ フ ォーマ ッ ト<br />
x N E2 00 00 00 W 4B 表 9-80 参照<br />
UFM CFG NVR EN 必要? CMD<br />
(Hex)<br />
オペラ ン ド<br />
(Hex)<br />
データ<br />
モード<br />
データ<br />
サイズ<br />
データ フ ォーマ ッ ト<br />
x x N F0 00 00 00 R 1B xxxx xxxB<br />
SCL<br />
SDA<br />
data line<br />
stable;<br />
data valid<br />
change<br />
of data<br />
allowed<br />
tSDA_DEL
MachXO2 デバイスのユーザフ ラ ッ シ ュ メ モ リ と<br />
ラ テ ィ スセ ミ コ ンダ ク タ ー ハー ド マ ク ロ化制御機能の使用ガ イ ド<br />
図 9-25. SPI 制御タ イ ミ ン グ (CPHA=0, TXEDGE=0)<br />
MCLK/CCLK<br />
(CPOL=0)<br />
MCLK/CCLK<br />
(CPOL=1)<br />
SPISO or SI<br />
SISPI or SO<br />
CSSPIN/SCSN/SN<br />
MSB first (LSBF=0):<br />
LSB first (LSBF=1):<br />
tL = TLead_XCNT<br />
tT = TTrail_XCNT<br />
tL = Tidle_XCNT<br />
MSB<br />
LSB<br />
bit6<br />
bit1<br />
sample instants<br />
bit5<br />
bit2<br />
bit4<br />
bit3<br />
図 9-26. SPI 制御タ イ ミ ン グ (CPHA=1, TXEDGE=0)<br />
MCLK/CCLK<br />
(CPOL=0)<br />
MCLK/CCLK<br />
(CPOL=1)<br />
SPISO or SI<br />
SISPI or SO<br />
CSSPIN or SCSN<br />
MSB first (LSBF=0):<br />
LSB first (LSBF=1):<br />
tL = TLead_XCNT<br />
tT = TTrail_XCNT<br />
tL = Tidle_XCNT<br />
tL tT tI tL<br />
sample instants<br />
9-63<br />
bit3<br />
bit4<br />
bit2<br />
bit5<br />
bit1 LSB<br />
bit6 MSB<br />
*Note: MachXO2 SPI configuration modes only support<br />
CPHA = CPOL = LSBF = TXEDGE = 0<br />
tL tT tI tL<br />
MSB bit6 bit5 bit4 bit3 bit2 bit1 LSB<br />
LSB bit1 bit2 bit3 bit4 bit5 bit6 MSB
MachXO2 デバイスのユーザフ ラ ッ シ ュ メ モ リ と<br />
ラ テ ィ スセ ミ コ ンダ ク タ ー ハー ド マ ク ロ化制御機能の使用ガ イ ド<br />
図 9-27. SPI 制御タ イ ミ ン グ (CPHA=0, TXEDGE=1)<br />
MCLK/CCLK<br />
(CPOL=0)<br />
MCLK/CCLK<br />
(CPOL=1)<br />
SPISO or SI<br />
SISPI or SO<br />
CSSPIN or SCSN<br />
MSB first (LSBF=0):<br />
LSB first (LSBF=1):<br />
tL = TLead_XCNT<br />
tT = TTrail_XCNT<br />
tL = Tidle_XCNT<br />
MSB<br />
LSB<br />
図 9-28. SPI 制御タ イ ミ ン グ (CPHA=1, TXEDGE=1)<br />
MCLK/CCLK<br />
(CPOL=0)<br />
MCLK/CCLK<br />
(CPOL=1)<br />
SPISO or SI<br />
SISPI or SO<br />
CSSPIN or SCSN<br />
MSB first (LSBF=0):<br />
LSB first (LSBF=1):<br />
tL = TLead_XCNT<br />
tT = TTrail_XCNT<br />
tL = Tidle_XCNT<br />
tL tT tI tL<br />
MSB<br />
LSB<br />
図 9-29. ス レーブ SPI のダ ミ ーバイ ト 応答 (SDBRE) タ イ ミ ング<br />
SI(MOSI)<br />
CS(SS)<br />
SO(MISO)<br />
bit6<br />
bit1<br />
bit6<br />
bit1<br />
sample instants<br />
bit5<br />
bit2<br />
bit5<br />
bit2<br />
bit4<br />
bit3<br />
sample instants<br />
9-64<br />
bit4<br />
bit3<br />
bit3<br />
bit4<br />
bit3<br />
bit4<br />
bit2<br />
bit5<br />
bit2<br />
bit5<br />
bit1 LSB<br />
bit6 MSB<br />
tL tT tI tL<br />
FF FF FF FF FF<br />
bit1 LSB<br />
bit6 MSB<br />
CMD OP1 OP2 OP3 FF FF FF FF FF FF<br />
Receiving Read Command<br />
SPITXDR<br />
NOT Ready<br />
FF 00 D1 D2 D3<br />
SPITXDR<br />
Ready<br />
DATA Read Out
MachXO2 デバイスのユーザフ ラ ッ シ ュ メ モ リ と<br />
ラ テ ィ スセ ミ コ ンダ ク タ ー ハー ド マ ク ロ化制御機能の使用ガ イ ド<br />
PLL のダ イ ナ ミ ッ ク ・ コ ン フ ィ グ レーシ ョ ン設定 と の イ ン ターフ ェ イ ス<br />
EFB モジ ュールの WISHBONE イ ン ターフ ェ イ ス を使用し て、MachXO2 デバ イ スにおけ る PLL (Phase Locked<br />
Loop) の構成可能な設定を動的に更新で き ます。<br />
MachXO2 デバ イ スでは最大 2 個の PLL があ り ます。 PLL0 のア ド レ ス範囲は EFB レ ジ ス タ マ ッ プでの 0x00<br />
か ら 0x1F です。PLL1 (存在する場合) のア ド レ ス範囲は EFB レ ジ ス タ マ ッ プでの 0x20 か ら 0x3F です。PLL<br />
コ ン フ ィ グ レーシ ョ ン ・ ビ ッ ト 及び推奨する使用法に関する詳細については ”TN1199, MachXO2 sysCLOCK<br />
PLL Design and Usage Guide (MachXO2 sysCLOCK PLL 設計 と 使用法ガ イ ド ) ” を参照し て く だ さ い。<br />
図 9-30 に示すよ う な、 IPexpress の EFB GUI か ら PLL コ ンポーネン ト の WISHBONE イ ン ターフ ェ イ ス を イ<br />
ネーブルでき ます。<br />
図 9-30. ダ イナ ミ ッ ク PLL コ ン フ ィ グ レーシ ョ ン設定の イ ン ターフ ェ イ ス<br />
WISHBONE イ ン ターフ ェ イ スに よ り PLL 設定を動的に制御で き る よ う な イ ン ターフ ェ イ スにする と 、 次の<br />
ポー ト を備えた IP が生成 さ れます。 それら のポー ト は PLL と の専用接続に使用されます。<br />
表 9-85 に IP で生成さ れる信号を示し ます。 各信号の説明には使用法 と 、 それを設計プ ロ ジ ェ ク ト で接続す<br />
る方法が示されています。<br />
表 9-85. タ イ マ / カ ウ ン タ ~ IP 信号<br />
信号名 I/O ビ ッ ト 幅 記 述<br />
pll0_bus_i Input 9<br />
pll0_bus_i Input 9<br />
pll0_bus_o Output 17<br />
pll0_bus_1 Output 17<br />
入力データ と 制御バス。 ユーザは、 こ のバス をデザ イ ンで イ ン ス タ ン ス さ<br />
れる PLL コ ンポーネン ト にのみ接続し なければな ら ない<br />
入力データ と 制御バス。 ユーザは、 こ のバス をデザ イ ンで イ ン ス タ ン ス さ<br />
れる PLL コ ンポーネン ト にのみ接続し なければな ら ない<br />
出力データ と 制御バス。 ユーザは、 こ のバス をデザ イ ンで イ ン ス タ ン ス さ<br />
れる PLL コ ンポーネン ト にのみ接続し なければな ら ない<br />
出力データ と 制御バス。 ユーザは、 こ のバス をデザ イ ンで イ ン ス タ ン ス さ<br />
れる PLL コ ンポーネン ト にのみ接続し なければな ら ない<br />
9-65
MachXO2 デバイスのユーザフ ラ ッ シ ュ メ モ リ と<br />
ラ テ ィ スセ ミ コ ンダ ク タ ー ハー ド マ ク ロ化制御機能の使用ガ イ ド<br />
コンフィグレーション ・ ロジックとのインターフェイス<br />
EFB モジ ュールの WISHBONE イ ン ターフ ェ イ スに よ り 、WISHBONE ホ ス ト は MachXO2 デバ イ スのコ ン フ ィ<br />
グ レーシ ョ ン ・ リ ソ ースにア ク セ スで き ます。 こ れは USERCODE 及び TraceID な どの コ ン フ ィ グ レーシ ョ<br />
ン ・ リ ソースからのデータ リ ード の場合に特に有用です。 よ り 重要な点は、 ユーザはデバイ スが動作モード<br />
の間に、 この機能によ ってデバイ スのコ ンフ ィ グレーシ ョ ン ・ フ ラ ッ シュ アレ イ を更新でき る こ と です。 こ<br />
れはセルフ ・ コ ン フ ィ グ レーシ ョ ン動作の 1 つです。電源起動時ま たはコ ン フ ィ グ レーシ ョ ン ・ リ フ レ ッ シ ュ<br />
動作時に、 コンフィグレーション・ フラッシュアレイの新しい内容がコンフィグレーション SRAM アレイに<br />
ロー ド さ れ、 デバイ スは新規の コ ン フ ィ グ レーシ ョ ンで動作を継続し ます。<br />
データ転送及び動作の実行は、 本書の UFM セ ク シ ョ ンに示し た も の と 同じ です。 こ れは、 UFM が コ ン フ ィ<br />
グレーショ ン・ リ ソースでもあり、WISHBONE ホス ト とコンフィグレーショ ン・ ロジック との間の通信が同<br />
一の コ マン ド レ ジ ス タ、 ス テータ ス レ ジ ス タ、 及びデータ レ ジ ス タ を通し て実行 さ れる ためです。 こ れら の<br />
レ ジ ス タ については表 9-49 か ら表 9-57 を参照し て く だ さ い。<br />
MachXO2 プ ロ グ ラ ミ ン グ及びコ ン フ ィ グ レーシ ョ ンの詳細については、"TN1204, MachXO2 Programming and<br />
Configuration Usage Guide (MachXO2 プ ロ グ ラ ミ ン グ と コ ン フ ィ グ レーシ ョ ンのユーザガ イ ド ) ” を参照し て<br />
ください。<br />
表 9-86. MachXO2 の コ ン フ ィ グ レーシ ョ ン ・ フ ラ ッ シ ュ メ モ リ ・ サ イ ズ<br />
MachXO2<br />
-256<br />
MachXO2<br />
-640<br />
MachXO2-<br />
640U<br />
MachXO2-<br />
1200<br />
フラッシュメモリの消去とプログラム性能<br />
表 9-87. MachXO2 の UFM/ コ ン フ ィ グ レーシ ョ ン ・ フ ラ ッ シ ュ メ モ リ 性能 1<br />
9-66<br />
MachXO2-<br />
1200U<br />
MachXO2-<br />
2000<br />
MachXO2-<br />
2000U<br />
MachXO2-<br />
4000<br />
MachXO2-<br />
7000<br />
CFG ビ ッ ト 数 73,600 147,456 278,528 278,528 409,600 409,600 737,280 737,280 1,179,648<br />
CFG バイ ト 数 9,200 18,432 34,816 34,816 51,200 51,200 92,160 92,160 147,456<br />
CFG ページ数 575 1,152 2,176 2,176 3,200 3,200 5,760 5,760 9,216<br />
MachXO2<br />
-256<br />
MachXO2<br />
-640<br />
MachXO2<br />
-640U<br />
MachXO2<br />
-1200<br />
MachXO2<br />
-1200U<br />
MachXO2<br />
-2000<br />
MachXO2<br />
-2000U<br />
MachXO2<br />
-4000<br />
MachXO2<br />
-7000<br />
CFG 消去<br />
min.<br />
max.<br />
400<br />
700<br />
600<br />
1100<br />
800<br />
1400<br />
800<br />
1400<br />
1100<br />
1900<br />
1100<br />
1900<br />
1800<br />
3100<br />
1800<br />
3100<br />
2800<br />
4800<br />
CFG プ ロ 全て 130 270 500 500 740 740 1400 1400 2200<br />
グラム 1 ページ 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2<br />
UFM 消去<br />
min.<br />
max.<br />
—<br />
—<br />
300<br />
600<br />
400<br />
700<br />
400<br />
700<br />
500<br />
900<br />
500<br />
900<br />
600<br />
1000<br />
600<br />
1000<br />
900<br />
1600<br />
UFM プ ロ 全て — 40 110 110 140 140 180 180 480<br />
グラム 1 ページ — 0.2 0.2 0.2 0.2 0.2 0.2 0.2 0.2<br />
1. 全ての時間単位は ミ リ 秒で、 値は平均値です。
MachXO2 デバイスのユーザフ ラ ッ シ ュ メ モ リ と<br />
ラ テ ィ スセ ミ コ ンダ ク タ ー ハー ド マ ク ロ化制御機能の使用ガ イ ド<br />
図 9-31. コ ン フ ィ グ レーシ ョ ン ・ フ ラ ッ シ ュ ・ ア ッ プデー ト の基本フ ロー例<br />
テクニカルサポート<br />
Start<br />
Ensure unused Configuration<br />
Ports are Inactive<br />
Enable Transparent<br />
Configuration (0x74)<br />
Erase Configuration Flash<br />
Sector (0x0E)<br />
wait for !BUSY (0xF0)<br />
then verify !FAIL (0x3C)<br />
Set Address to 0 (0x46)<br />
Write 1 Page Config Data<br />
(0x70)<br />
wait for !BUSY (0xF0)<br />
then verify !FAIL (0x3C)<br />
Write more data?<br />
ホ ッ ト ラ イ ン :1-800-LATTICE (北米)<br />
+1-503-268-8001 (北米以外)<br />
電子 メ ール :techsupport@latticesemi.com<br />
インターネッ ト :www.latticesemi.com<br />
Y<br />
N<br />
9-67<br />
set Flash DONE bit (0x5E)<br />
(optional)<br />
set USERCODE (0xC2)<br />
set SECURITY (0xCE, 0xCF)<br />
Execute Flash Check (0x7D)<br />
wait for !BUSY (0xF0)<br />
then verify !FAIL (0x3C)<br />
Disable Configuration (0x26)<br />
N<br />
Issue REFRESH (0x79)<br />
Config via WB?<br />
N<br />
wait for !BUSY (0xF0)<br />
then verify DONE (0x3C)<br />
Done<br />
Y
MachXO2 デバイスのユーザフ ラ ッ シ ュ メ モ リ と<br />
ラ テ ィ スセ ミ コ ンダ ク タ ー ハー ド マ ク ロ化制御機能の使用ガ イ ド<br />
改訂履歴」<br />
リ リ ース バージ ョ ン 該当新ページ 改 訂 内 容<br />
2010 年 11 月 01.0 初版<br />
2011 年 1 月 01.1 超多ピ ン (ultra-high I/O) “U” デバイ ス関連記述追加<br />
2011 年 6 月 02.0<br />
2011 年 7 月 02.1<br />
2011 年 8 月 02.2<br />
2011 年 9 月 02.3<br />
WISHBONE レ ジ ス タ記述を I 2 C, SPI, TC および UFM/Configuration 各ブ<br />
ロ ッ ク について大幅追加 ・ 修正<br />
マスタ I2 CとマスタSPI WISHBONEフロー図を追加<br />
UFM/Configuration コ マン ド 表を追記<br />
UM/Configuration コ マン ド 記述を追加<br />
I2 CとSPIタイミング図を追加<br />
コ ン フ ィ グ レーシ ョ ン ・ フ ラ ッ シ ュ メ モ リ ・ リ ソース数の表追加<br />
UFM/Configuration 性能表を追加<br />
付録 A, B および C を追加<br />
その他種々のマ イナーな修正 ・ 追加 ・ 変更<br />
図 9-11 I2C ス レーブ、 リ ー ド ラ イ ト 例追加<br />
日本語注 :<br />
①オ リ ジナル英語版では以下の表番号に図の連番が割 り 当て ら れています<br />
が、 互換性のために敢えて修正し ていません。<br />
図 9-19 / 9-20 / 9-20<br />
②オ リ ジナル英語版では ”R1” デバイ スか ら の移行に関する記述が追加 さ<br />
れていますが、 日本語版では省略し ています。<br />
9-27<br />
表番号に図番号が割 り 当て ら れていたのを修正<br />
SPITXDR レ ジ ス タ記述の注記を追加<br />
9-40 WBRESET ビ ッ ト の記述更新<br />
Erase DONE コ マン ド を一覧表 9-59 内 と 個別表を削除<br />
9-67 図 9-31 追加<br />
9-13 I2C_PRESCALE 記述追加<br />
9-18 図 9-10 更新<br />
9-55 表 9-59 脚注、 シ ミ ュ レーシ ョ ン未サポー ト の追記<br />
9-58, 9-60 フ ラ ッ シ ュ ア ド レ スの自動イ ン ク リ メ ン ト 記述追記 (3 カ所)<br />
9-59 図 9-23 更新<br />
9-72 付録 B 説明文追加<br />
表 9-38/39 は英語版では Figure 9-20/21 にな っ ているが、 日本語版は連番<br />
9-40 を付与し ている。 従っ て これらの番号以降は図表と もずれ (不一致) があ<br />
るので、 注意されたい<br />
9-68
MachXO2 デバイスのユーザフ ラ ッ シ ュ メ モ リ と<br />
ラ テ ィ スセ ミ コ ンダ ク タ ー ハー ド マ ク ロ化制御機能の使用ガ イ ド<br />
付録 A. フ レー ミ ン グ ・ コ マン ド<br />
SSPI、 I2C、 ま たは WISHBONEEFB を通じ てポー ト に送出 さ れる各コ マン ド ・ ス ト リ ン グは、 各イ ン ターフ ェ<br />
イ ス用に定義さ れたプ ロ ト コルを使用し て正し い ' フ レーム ' にする必要があ り ます。SSPI 及び I2C の場合、<br />
プ ロ ト コルは業界で定義さ れてお り 、 ま た周知さ れています (表 9-88 参照)。 内部 WISHBONE ポー ト の場<br />
合は、 WBCE (CFGCR 0x70 のビ ッ ト 7) をセ ッ ト する こ と で各コ マン ド 列が処理 さ れます。 同様に、 各コ マ<br />
ンド列の後でWBCEビットがクリアされます。<br />
表 9-88. イ ン ターフ ェ イ ス ご と の コ マン ド フ レーム ・ プ ロ ト コル<br />
イ ン ターフ ェ イ ス Pre-op (+) コ マン ド 列 Post-op (-)<br />
SPI CS を アサー ト ( コ マン ド / オペラ ン ド / データ ) CS をネゲー ト<br />
I2 C スタート (コマンド/オペランド/データ ストップ<br />
WISHBONE WBCE を アサー ト ( コ マン ド / オペラ ン ド / データ ) WBCE をネゲー ト<br />
図 9-32. WISHBONE でのデバイ ス ID リ ー ド の例 (-1200 HC デバイ ス )<br />
wb_clk_i<br />
wb_we_i<br />
wb_adr_i<br />
wb_dat_i<br />
wb_dat_o<br />
wb_str_i<br />
wb_ack_o<br />
70 71 71 71 71 73 73 73 73 70<br />
80 E0 00 00 00 00<br />
9-69<br />
01 2B A0 43
MachXO2 デバイスのユーザフ ラ ッ シ ュ メ モ リ と<br />
ラ テ ィ スセ ミ コ ンダ ク タ ー ハー ド マ ク ロ化制御機能の使用ガ イ ド<br />
図 9-33. I 2 Cリード・デバイスIDの例<br />
SCL<br />
SDA<br />
SCL<br />
(continued)<br />
SDA<br />
(continued)<br />
Start By<br />
Master<br />
SCL<br />
(continued)<br />
SDA<br />
(continued)<br />
Restart<br />
By Master<br />
SCL<br />
(continued)<br />
SDA<br />
(continued)<br />
A6 A5 A4 A3 A2 0 0 W 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0<br />
0 0 0 0 0 0 0 0<br />
ACK By<br />
MachXO2<br />
0 0 0 0 0 0 0 0<br />
9-70<br />
ACK By<br />
MachXO2<br />
Frame 1 I 2 C Slave Address Byte Frame 2 CMD Byte Frame 3 Op Byte 1<br />
Frame 4 Op Byte 2<br />
ACK By<br />
MachXO2<br />
Frame 5 Op Byte 3<br />
ACK By<br />
XO2<br />
A6 A5 A4 A3 A2 0 0 R 0 0 0 0 0 0 0 1 0 0 1 0 1 0 1 1<br />
ID ID ID ID<br />
0 0 0 0<br />
ACK By<br />
MachXO2<br />
0 1 0 0 0 0 1 1<br />
ACK By<br />
Master<br />
Frame 6 I 2 C Slave Address Byte Frame 7 Read ID Byte 1 Frame 8 Read ID Byte 2<br />
Frame 9 Read ID Byte 3<br />
ACK By<br />
Master<br />
Frame 10 Read ID Byte 4<br />
NACK By<br />
Master<br />
...<br />
...<br />
Stop By<br />
Master<br />
ACK By<br />
MachXO2<br />
ACK By<br />
Master<br />
...<br />
...<br />
...<br />
...
MachXO2 デバイスのユーザフ ラ ッ シ ュ メ モ リ と<br />
ラ テ ィ スセ ミ コ ンダ ク タ ー ハー ド マ ク ロ化制御機能の使用ガ イ ド<br />
図 9-34. SSPI リ ー ド ・ デバ イ ス ID の例<br />
SN<br />
CCLK<br />
SI<br />
SO<br />
SN<br />
(continued)<br />
CCLK<br />
(continued)<br />
SI<br />
(continued)<br />
SO<br />
(continued)<br />
SN<br />
(continued)<br />
CCLK<br />
(continued)<br />
SI<br />
(continued)<br />
SO<br />
(continued)<br />
1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0<br />
CMD Byte Op Byte 1 Op Byte 2<br />
0 0 0 0 0 0 0 0<br />
Op Byte 3 Read ID Byte 1 Read ID Byte 2<br />
ID ID ID ID 0 0 0 0 0 1 0 0 0 0 1 1<br />
Read ID Byte 3 Read ID Byte 4<br />
0 0 0 0 0 0 0 1 0 0 1 0 1 0 1 1<br />
9-71<br />
...<br />
...<br />
...<br />
...<br />
...<br />
...<br />
...<br />
...
MachXO2 デバイスのユーザフ ラ ッ シ ュ メ モ リ と<br />
ラ テ ィ スセ ミ コ ンダ ク タ ー ハー ド マ ク ロ化制御機能の使用ガ イ ド<br />
付録 B. UFM の ラ イ ト 及び リ ー ド の例<br />
UFM およびコ ン フ ィ グ レーシ ョ ン両セ ク タ なページベースの リ ー ド と ラ イ ト に対応し ますが、消去動作はセ<br />
ク タベースにな り ます。 一般の多数のフ ラ ッ シ ュ メ モ リ デバ イ ス と 同様に、 バ イ ト ベースの動作は対応し ま<br />
せん。 ま た同様に、 フ ラ ッ シ ュ内の既に ラ イ ト さ れた位置にあ る値を修正し たい場合は、 消去可能な フ ラ ッ<br />
シュの単位に対しての ” リード ・モディファイ ・ ライ ト (read-modify-write) ” 操作が必要になります。<br />
MachXO2 の場合は最小消去単位が UFM 全セ ク タ か、 コ ン フ ィ グ レーシ ョ ン全セ ク タ にな り ます。<br />
例えば、 UFM 内のバ イ ト 値を任意に修正する ためには、 以下が必要です。<br />
• 1. 全 UFM データ を リ ー ド し、 EBR な ど ど こ か他の場所に保存する<br />
• 2.UFM セ ク タ を消去する<br />
• 3. 選択 さ れたバ イ ト を更新する<br />
•4.UFMをページごとにプログラムする<br />
用途に よ っては、 UFM 内容の コ ピーを EBR な ど揮発 メ モ リ に保持し、 あ る周期で UFM を更新する のが適切<br />
かもしれません。<br />
9-72
MachXO2 デバイスのユーザフ ラ ッ シ ュ メ モ リ と<br />
ラ テ ィ スセ ミ コ ンダ ク タ ー ハー ド マ ク ロ化制御機能の使用ガ イ ド<br />
表 9-89. ラ イ ト 2 UFM フ レーム<br />
R/W 1<br />
CMD 2<br />
オペラ ン ド データ コ メ ン ト<br />
+ フレームをオープン<br />
W 74 08 00 00 — コ ン フ ィ グ レーシ ョ ン ・ イ ン ターフ ェ イ ス を イ ネーブル<br />
-<br />
+<br />
フレームをクローズ<br />
W 47<br />
-<br />
+<br />
00 00 00 — UFM ア ド レ ス を 0000 に初期化<br />
W C9 00 00 01<br />
00 01 02 03<br />
04 05 06 07<br />
08 09 0A 0B<br />
0C 0D 0E 0F<br />
UFM ページ 0 データ を ラ イ ト<br />
W<br />
-<br />
+<br />
3C 00 00 00 — コ ン フ ィ グ レーシ ョ ン ・ ス テータ ス レ ジ ス タ をポー リ ングする<br />
R xx xx bx xx<br />
-<br />
+<br />
W C9 00 00 01<br />
10 11 12 13<br />
14 15 16 17<br />
18 19 1A 1B<br />
1C 1D 1E 1F<br />
ビジーフラグがセッ ト されなくなるまで繰り返すか、 ポーリ ングし<br />
ない場合は 1000us 待つ<br />
UFM ページ 1 データ を ラ イ ト<br />
( ア ド レ スは自動的に イ ン ク リ メ ン ト する こ と に留意 )<br />
W<br />
-<br />
+<br />
3C 00 00 00 — コ ン フ ィ グ レーシ ョ ン ・ ス テータ ス ・ レ ジ ス タ をポー リ ング<br />
R xx xx bx xx<br />
-<br />
+<br />
ビジーフラグがク リアされるまでポーリングするか、 ポーリ ングし<br />
ない場合は 1000us 待つ<br />
W 26<br />
-<br />
00 00 00 — コ ン フ ィ グ レーシ ョ ン ・ イ ン ターフ ェ イ ス をデ ィ セーブル<br />
1. WISHBONE か ら UFM/ コ ン フ ィ グ レーシ ョ ン ・ フ ラ ッ シ ュ にア ク セ スする場合は、 データ の ラ イ ト に CFGTXDR<br />
(0x71)、 データ の リ ー ド に CFDRXDR (0x73) を使用し ます<br />
2. '+' 及び '-' は、 付録 A で説明し た、 各イ ン ターフ ェ イ スに該当する コ マン ド ・ フ レー ミ ング ・ プ ロ ト コルを表し ます<br />
9-73
MachXO2 デバイスのユーザフ ラ ッ シ ュ メ モ リ と<br />
ラ テ ィ スセ ミ コ ンダ ク タ ー ハー ド マ ク ロ化制御機能の使用ガ イ ド<br />
表 9-90. リ ー ド 1 UFM フ レーム ( 全デバ イ ス )<br />
R/W 1<br />
CMD 2<br />
オペラ ン ド データ コ メ ン ト<br />
+ フレームをオープン<br />
W 74 08 00 00 — コ ン フ ィ グ レーシ ョ ン ・ イ ン ターフ ェ イ ス を イ ネーブル<br />
-<br />
+<br />
フレームをクローズ<br />
W B4<br />
-<br />
+<br />
00 00 00 40 00 00 01 UFM ア ド レ ス を 0001 にセ ッ ト<br />
W CA 10 00 01<br />
10 11 12 13<br />
0 ダ ミ ーバイ ト 後、 1 ページの UFM (ページ 1) データ を<br />
リードする<br />
R<br />
-<br />
+<br />
14 15 16 17<br />
18 19 1A 1B<br />
1C 1D 1E 1F<br />
W 26<br />
-<br />
00 00 00 — コ ン フ ィ グ レーシ ョ ン ・ イ ン ターフ ェ イ ス をデ ィ セーブル<br />
1. WISHBONE か ら UFM/ コ ン フ ィ グ レーシ ョ ン ・ フ ラ ッ シ ュ にア ク セスする場合は、 データ の ラ イ ト に CFGTXDR (0x71)、<br />
データ の リ ー ド に CFDRXDR (0x73) を使用すし ます<br />
2. '+' 及び '-' は、 付録 A で説明し た、 各イ ン ターフ ェ イ スに該当する コ マン ド ・ フ レー ミ ング ・ プ ロ ト コルを表し ます<br />
表 9-91. 2 UFM フ レームの リ ー ド (R1 デバイ ス を除 く )<br />
R/W 1<br />
CMD 2<br />
オペラ ン ド データ コ メ ン ト<br />
+ フレームをオープン<br />
W 74 08 00 00 — コ ン フ ィ グ レーシ ョ ン ・ イ ン ターフ ェ イ ス を イ ネーブル<br />
-<br />
+<br />
フレームをクローズ<br />
W 47<br />
-<br />
+<br />
00 00 00 — UFM ア ド レ ス を 0000 に初期化<br />
W CA 00 00 02<br />
xx xx xx xx<br />
00 01 02 03<br />
04 05 06 07<br />
08 09 0A 0B<br />
4 ダ ミ ーバイ ト 後、 2 ページの UFM データ を リ ー ド する<br />
R<br />
-<br />
+<br />
0C 0D 0E 0F<br />
10 11 12 13<br />
14 15 16 17<br />
18 19 1A 1B<br />
1C 1D 1E 1F<br />
W 26<br />
-<br />
00 00 00 — コ ン フ ィ グ レーシ ョ ン ・ イ ン ターフ ェ イ ス をデ ィ セーブル<br />
1. WISHBONE か ら UFM/ コ ン フ ィ グ レーシ ョ ン ・ フ ラ ッ シ ュ にア ク セスする場合は、 データ の ラ イ ト に CFGTXDR (0x71)、<br />
データ の リ ー ド に CFDRXDR (0x73) を使用し ます<br />
2. '+' 及び '-' は、 付録 A で説明し た、 各イ ン ターフ ェ イ スに該当する コ マン ド ・ フ レー ミ ング ・ プ ロ ト コルを表し ます<br />
9-74
MachXO2 デバイスのユーザフ ラ ッ シ ュ メ モ リ と<br />
ラ テ ィ スセ ミ コ ンダ ク タ ー ハー ド マ ク ロ化制御機能の使用ガ イ ド<br />
表 9-92. リ ー ド 2 UFM フ レーム ( 全デバ イ ス )<br />
R/W 1<br />
CMD 2<br />
オペラ ン ド データ コ メ ン ト<br />
+ フレームをオープン<br />
W 74 08 00 00 — コ ン フ ィ グ レーシ ョ ン ・ イ ン ターフ ェ イ ス を イ ネーブル<br />
-<br />
+<br />
フレームをクローズ<br />
W 47<br />
-<br />
+<br />
00 00 00 — UFM ア ド レ ス を 0000 に初期化<br />
W CA 10 00 03<br />
1 ページのダ ミ ーバイ ト に続いて UFM データ 2 ページを リ ー<br />
ド 3<br />
xx xx xx xx<br />
xx xx xx xx<br />
xx xx xx xx<br />
xx xx xx xx<br />
00 01 02 03<br />
R<br />
-<br />
+<br />
04 05 06 07<br />
08 09 0A 0B<br />
0C 0D 0E 0F<br />
10 11 12 13<br />
14 15 16 17<br />
18 19 1A 1B<br />
1C 1D 1E 1F<br />
W 26<br />
-<br />
00 00 00 — コ ン フ ィ グ レーシ ョ ン ・ イ ン ターフ ェ イ ス をデ ィ セーブル<br />
1. WISHBONE か ら UFM/ コ ン フ ィ グ レーシ ョ ン ・ フ ラ ッ シ ュ にア ク セスする場合は、 データ の ラ イ ト に CFGTXDR (0x71)、<br />
データ の リ ー ド に CFDRXDR (0x73) を使用し ます<br />
2. '+' 及び '-' は、 付録 A で説明し た、 各イ ン ターフ ェ イ スに該当する コ マン ド ・ フ レー ミ ング ・ プ ロ ト コルを表し ます<br />
3. num_pages カ ウ ン ト 数にはダ ミ ーページ も含め る必要があ り ます<br />
9-75
MachXO2 デバイスのユーザフ ラ ッ シ ュ メ モ リ と<br />
ラ テ ィ スセ ミ コ ンダ ク タ ー ハー ド マ ク ロ化制御機能の使用ガ イ ド<br />
付録 C. 応用例<br />
図 9-35. EFB が I 2 C マス タ / ス レーブ ( ユーザモード と コ ンフ ィ グレーシ ョ ン ・ モード )<br />
I 2 C Device 1<br />
I 2 C Device 2<br />
図 9-36. EFB はス レーブ SPI ( ユーザモー ド )<br />
External<br />
SPI Master<br />
SCL<br />
SDA<br />
SCL<br />
SDA<br />
SCLK<br />
MOSI<br />
MISO<br />
SS<br />
Port Address<br />
yyyxxxxx00 (config)<br />
yyyxxxxx01 (Pri)<br />
Port Address<br />
yyyxxxxx10 (Sec)<br />
(opt.)<br />
9-76<br />
MachXO2<br />
SCL<br />
SDA<br />
(Any GPIO)<br />
(Any GPIO)<br />
SN<br />
MachXO2<br />
CCLK<br />
SI<br />
SO<br />
(Any GPIO)<br />
SN<br />
EFB<br />
i2c1_scl<br />
i2c1_sda<br />
i2c2_scl<br />
i2c2_sda<br />
Configuration<br />
EFB<br />
spi_clk<br />
spi_mosi<br />
spi_miso<br />
spi_scsn<br />
Configuration<br />
ufm_sn<br />
WISHBONE<br />
WISHBONE
MachXO2 デバイスのユーザフ ラ ッ シ ュ メ モ リ と<br />
ラ テ ィ スセ ミ コ ンダ ク タ ー ハー ド マ ク ロ化制御機能の使用ガ イ ド<br />
図 9-37. EFB がマス タ SPI ( ユーザモー ド )<br />
WISHBONE<br />
MachXO2<br />
図 9-38. 外部マ ス タ SPI か ら MachXO2 コ ン フ ィ グ レーシ ョ ン /UFM ア ク セ ス<br />
External<br />
SPI Master<br />
EFB<br />
spi_clk<br />
spi_mosi<br />
spi_miso<br />
spi_csn[0]<br />
spi_csn[1]<br />
...<br />
Configuration<br />
SCLK<br />
MOSI<br />
MISO<br />
spi_csn[7]<br />
SS<br />
図 9-39. MachXO2 が外部 SPI フ ラ ッ シ ュ メ モ リ か ら セルフダ ウ ン ロー ド<br />
EFB<br />
spi_clk<br />
spi_mosi<br />
spi_miso<br />
spi_csn[0]<br />
spi_csn[1]<br />
...<br />
spi_csn[7]<br />
MCLK<br />
SISPI<br />
SPISO<br />
CSSPIN<br />
(any gpio)<br />
(any gpio)<br />
MachXO2<br />
SN<br />
MCLK<br />
SISPI<br />
SPISO<br />
CSSPIN<br />
Configuration SN<br />
(opt.)<br />
(opt.)<br />
(opt.)<br />
(opt.)<br />
9-77<br />
MachXO2<br />
CCLK<br />
SI<br />
SO<br />
SN<br />
SCLK<br />
MOSI<br />
MISO<br />
SS<br />
EFB<br />
spi_clk<br />
SCLK<br />
MOSI<br />
MISO<br />
SS<br />
spi_mosi<br />
spi_miso<br />
spi_scsn<br />
Configuration<br />
ufm_sn<br />
SCLK<br />
MOSI<br />
MISO<br />
SS<br />
External<br />
SPI Slave(s)<br />
External<br />
Slave SPI Flash