こんなものに手を出してしまいました。 Actel 社に関する日本語の情報はあまりないようなので、徐々に充実させていくつもりです。 Whats is FPGA or CPLDCPLD : Complex Programmable Logic Device プログラミング可能なデジタル回路のことです。ゲートの数で比較すると、CPLD で数千ゲート、FPGA で数万〜数百万ゲートのものが入手できます。 Pentium クラスのCPU が数百万ゲートですから、FPGAでは、CPU が作れる規模です。実際、研究用にある目的に特化したシグナルプロセッサを作る際に使われています。 Xilinx 社編 左側は、ザイリンクス社のCPLDデザインキット(型番DO-CPLD-DK-J)です。CoolRunner-II
と XC9572XLという2つのCPLDが搭載されており、これらのプログラミングが実験できます。JTAGケーブルも接続しているので、お買い得感がかなりあります。5千円ちょっとの価格で販売されています。 CPLD や規模が小さい FPGA の開発環境は、各社とも、ほぼ無料で入手出来ます。 上の図は、ザイリンクス社の統合開発環境 ISE WebPack8.2i で作成した否定回路です。Verilog で書きました。否定回路はもっともシンプルな論理素子の一つですので、ソースリストもきわめて単純です。下記が、そのソースリストです。 module not1 (in, out); C言語が理解できれば、なんとなく読めますでしょうか。module
〜 endomodule がプログラムの範囲です。not1は、モジュールの名前。input、output文は、入出力を定義しています。C言語なら、int
や double など変数の定義に当たるでしょうか。assign
文は、代入の意味です。in を反転(~)して、out に代入します。 ISE WebPack
本体のインストールは、ダウンロードして、実行するだけでほぼ完了します。途中でいくつか操作が必要ですが、いずれも直感的に処理が可能です。ちょっとややこしいのは、論理をシミュレートする
ModelSim
というソフトのインストールです。インストールの途中で、インターネットに接続し、license.dat
というファイルを電子メールで受け取る必要があります。 中 幸政 著 "VHDLとCPLDによるロジック設計入門" CQ出版社 ザイリンクスのCPLDは秋葉原でも簡単に入手でき、また上記のような参考文献も多く存在しますので、最初に使ってみるのはお勧めかもしれないですね。 Actel社編上の画面は、Actel 社の統合環境、Libero ver7.2 で作成した否定回路です。言語は、Verilog です。当然のことですが、上記のザイリンクス社と全く同じソースコードで否定回路が生成できます。操作方法は、下図のようなグラフィカルな画面で流れ線に沿って、各コンポーネントをクリックしていきます。ISE と比較し、操作が直感的です。デバイスの選択や初期設定のためのポップアップウインドウに意味が少しわかりにくいところがあります。 Libero のインストール方法(2007年1月時点での操作方法です。) http://www.actel.com/downloads/libero/ インストールには、約1時間かかります。実際に動作させるためには、ライセンスを受ける必要があります。ライセンスを得るために、インストールするパソコンのハードディスクのシリアル番号が必要です。スタート
→ すべてのプログラム → アクセサリ → コマンドプロンプト
を起動し、 「 vol 」と入力します。(右図)
ライセンスは1年間有効です。終了時期になると、メールで更新された license.dat が送られてきました。 Actel社のデバイスの魅力と入手性FPGAは、他のメーカーと異なりフラッシュメモリが搭載されていますので、ROMの外部接続が不要です。また、Fusion というミックスドシグナルな FPGA があり、これには、A/Dコンバーターなどが搭載されていますので、インターフェース回路の大幅な低減が可能です。PSoCと異なり、ダイナミックリコンフィグレーションは出来ないそうです。 入手性については、趣味で使うにはいろいろ不便な点が多いです。来社された営業社員および展示会で伺った話を総合すると、納期がいずれも1ヶ月以上かかるそうです。秋葉原でちょいと買ってくるとわけにはいきません。Fusion については、チップ単体の納期は不明だそうで、少量の使用なら、評価ボードをそのまま搭載した方がよいと言われました。評価ボードは流れているそうです。購入先については、代理店より秋葉原にある商社を照会されました。価格は、いずれの評価ボードも約 5 万円 Libero の WaveFormer Lite が使えなくなっている件WaveFormer Liteは、グラフィカルユーザーインタフェースで、入力波形を描き、これから、テストベンチあるいは、トップ(レベル)モジュールと呼ばれるファイルを生成するツールです。動作のシミュレーションを行うために使われます。 http://www.actel.com/documents/PDN0911_waveformerlite.pdf なかなかややこしい英文ですが、要約すると下記のようになります。 1. WaveFormer Lite の開発中止により 12.30a
からのバージョンアップは無い。 期限切れのライセンスのページを開いてみると、 Renew
License
というボタンがありますので、それで期限延長できるようです。このボタンを押してから、実際にライセンス発行されるまでは、人手による認証作業が入るのか、少し時間がかかるようです。 WaveFormer が無くても、素子に焼き込むことは可能ですが、動作のシミュレーションが出来ないので、ちょっと困ります。フリーや安価なシェアウエアの Verilog シミュレータというのがあり、これである程度まで代用可能です。しかし、この場合、テストベンチあるいは、トップ(レベル)モジュールをエディターなどで書いてやる必要があります。 ISEとLiberoを同じ環境にインストールできるか?MicroSimの環境変数で、licennse.datのフォルダを指定する必要がありますが、この設定がザイリンクスのISEと同じになります。もし、license.datをc:\xilinx\に置いたとすれば、下記のようになります。
同じ変数名で、2つの変数値がある場合、うまく区別が出来るか疑問です。現在のところ、ISE と Libero は、別々のパソコンにインストールしており、共有については試しておりません。 追記 http://www.actel.com/documents/license_troubleshooting_FAQ.pdf おそらく、上記の6/30ページにあるように変数値に下記のように書いてやれば、共存できるようです。 c:\flexlm\License.dat;c:\flexlm\License2.dat Verilog アラカルトC 言語のコンパイラと比べると、冗長性が低いところがあります。うまく動作しない場合、スペースなどを見直してみるだけで動作することがあります。また、開発環境によって動作が変わることがあります。たとえば、下記の参考文献 P136 に記載されているジョンソンカウンターは動作せず、結果的に動作するように書き換えると下記のようになりました。この文献は、Verilog の参考書としてはよく書けていて、様々な手法を見せてくれるので大変勉強になりますが、この例のように裏目に出ることもあります。絶版の理由も動作しないプログラムが多々あることにあったんじゃないかと思います。 Jayaran Bhasker 著 佐々木 尚 訳 Verilog HDL 論理合成入門 CQ出版 (絶版) module JohnsnCounter (ClockJ, PreClear, Q) ; 配列の解釈に差があるようです。
Libero は、おそらく 2 と思います。 HDL といえども、うまく動作しない場合のデバックは、回路図で検証するのが手っ取り早い場合が多々あります。この場合は、まさにそうでした。 Verilog の文法書下記が、入手性がよくわかりやすいと思います。 桜井 至 著 Velilog-HDL 言語入門 テクノプレス 2600円 |
Copyright (C) 2019 ssato. All Rights Reserved 2021/12/31 |