FPGA(Lattice XP2)と格闘中 | 貯え 小道具 興味ない?

貯え 小道具 興味ない?

「貯えもの」とは、いってもお金をご想像の方は、ご遠慮くださいまし。
Storage = Data Storage
関わってお仕事したり、使ってて感じたことなり
記すBlogでございます。
トラックバックを時折頂きますが、削除する場合がございます。

ディジタル・デザイン・テクノロジ〈No.1〉FPGA超入門―FPGA開発を体験してみよう/CQ出版

¥3,065
Amazon.co.jp

の付録基板のLattice XP2で「Lチカ」しようとしているのですが、まだできません。
HDLにVHDLが使われていたので、せっかくVerilog-HDLに少しだけ慣れたのに1からやり直しすることになってます。

Verilog-HDLの「Lチカ」ソースプログラムが
トランジスタ技術 2015年 11月号/CQ出版

¥850
Amazon.co.jp
には載ってました。この号はFPGAの最近販売されているモジュールの紹介などFPGAの入門記事が特集です。ここから「Lチカ」のVerilog-HDLのソースプログラムを入力して、「論理合成」まで進めましたが、まだその後の作業工程に不慣れなので書き込むJEDECファイルがうまく作れていません。

やはり開発ツールの使い込みがまだ必要だと思い、探したところ「Lattice Diamond 1.1 Startup Manual - マクニカ」という取り扱っている古めのDiamond(バージョンは1.1。現行最新版は3.7)の図説の使い方の分かりやすい資料を見つけたので、この手順を順番に進めてみています。

論理合成したファイルをタイミング、ピン配置など実際のデバイスに合わせて条件を入れないとちゃんと使えるJEDECのファイルは作れません。この辺りの条件の入力を「デバイスの制約設定」と呼ぶようです。

ispLEVERでもDiamondでもユーザーインターフェイスの違いはありますが、「SpreadSheet View」での作業です。( ispLEVERでは「Design Planner」機能の中に「SpreadSheet View」があった様なので、それと同じ作業です。)

これは実際のデバイスのための、「データベース作成」といった感じの作業です。

・ピン配置設定
・I/Oバッファ・タイプの選択
・クロックのタイミング制約設定

などがそれにあたります。

そして、「配置配線」の段階を済ませて書き込む回路情報ファイル作成と続きます。

FPGAへのデータの書き込みは、ispLEVERだと「ispVM」、Diamondだと「Programmer」で書き込みます。

書籍、ネットの資料を見比べながら少しずつ進めてますが、まだちゃんと動かせていません。手元のハードウェアがちゃんと使えるものだという確証も無いので、製造元、出版社へのメールでの問い合わせも並行してやっています。

書籍の付録という半完成品のものなので、出来上がっている製品よりも手間がかかるのは承知で手をつけましたが、「Lチカ」まででもここまで苦労するとは思ってませんでした。

目下、格闘中です。

#追記((2016/05/06)
開発ソフトウェアの取り扱い以外の修正もありました。
水晶発振器が届きました」とFPGA基板に水晶発振器を実装したのですが、「FPGA学習ベースボードを手に入れました」の基板にもFPGAにクロックを供給する水晶発振器が実装されていて、どうやら同じ端子に2種類のクロック信号を供給する構成になってしまっていることがわかりました。自分で付けた水晶発振器を半田を溶かして綺麗に取り外そうとしましたが、表面実装の部品は一度半田付けしたら簡単には取れません。仕方なく水晶発振器をニッパで壊して取り外しました。

XP2基板-水晶取り外し
(右下隅のパッドが水晶発振器のあった場所です)