- ベストアンサー
古いFPGAデバイスの開発方法について
- 古いFPGAデバイスの開発方法について知りたい
- QuartusIIを使用してEP1K10TC100-3を選択できないのか
- QuartusIIを使わずにHDLをエディタで書いてGHDLでコンパイルしてFPGAデバイスへ書き込む方法があるか
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
GHDLを調べてみました。 情報が少なかったですが、フリーのWindows以外のOSでも動作するものですね。 数社から公開されている歴史のある高機能の開発ツールが無料で使える状況にあるので、どうしてもMacやLinux等のマシンで開発したい、というユーザー以外にメリットは感じられませんでした。 デバイス固有のデータや制限等は供給されているのでしょうか? 私の情報の入手不足かもしれません。 「EP1K10TC100-3」は調べてみるとACEXですね。 初期に活躍した汎用のFLEXシリーズのローコスト版でとても良いデバイスだった記憶があります。 ロジックデバイスの基本構造、特性や設定のしくみなどを勉強するのには、ちょうど良いと思います。 FPGAの書き込み方法についてですが、コンパイル後のデータを定まった手順で書き込みますので、コンパイラ等の開発ツールと切り離して考えれば良いと思います。 遅くなりましたが、書き込みまでの流れは、質問者様のお考えの通りですが、タイミング調整は予め指定したタイミングマージンが確保できない場合のみ、設計変更して再配置配線又はマージン設定の変更等を行い、再コンパイル後に確認します。 遠隔地の機器にリモートで書き込みしたい場合は、コンパイル後(タイミング検証後)のバイナリーデータを電波や通信で送り書込みます。 FPGA自体は高速のタイミングシーケンサが一般的ですので、システムをコントロールするマイコン等のコントローラでこれらのデータを受信し、一旦そのメモリに読込み 1)IO(メモリ)マップ上のFPGAを専用端子を使ってシリアルで書込むか 2)FPGAのJTAGポートをそのネットワーク上で書込めば 良いと思います。 上記1及び2の書き込み方法はデータシート上で規定されていますので、そちらをご覧ください。 こういった各種コントローラの(再)書き込みはマイコン等のコントローラも、JTAGポートを使うのが一般的になっていますので、マスターのコントローラから一括管理すべきですね。 GHDLについてご存知なら、教えて頂けるとありがたいです。
その他の回答 (2)
- ricardo_
- ベストアンサー率19% (14/72)
暫くアルテラのホームページを見ていなかったけど、久し振りに見てみました。 以前は MAX2PLUS2 などの古いバージョンもインストール出来るようになっていたけど、もう無くなったようですね。 次のページを見ると、色々なバージョンがインストール出来るみたいですよ。 https://www.altera.com/jp/download/sw/dnl-sw-index.jsp
お礼
ありがとうございます。 「ACEX1K」ですが、ちょっと前のQuartusで選択できるようになりました。
- cyclone3
- ベストアンサー率62% (22/35)
Alteraの古いデバイスを選択するときは、古いバージョンのQuartusを選ばないと、デバイス選択ができません。 但し、Quartusはご多聞にもれず、バグ取りの歴史(昔は特にひどかった)ですので、古いバージョンはお勧めできません。 確かVers12.1が境で、古いデバイスを切り捨てた気がします。(12.2かな?) このバージョンがFPGAコンパイラ、タイミングツール等の集大成で、基本部分の完成版だと個人的には思っております。 お勧めです。 (この時代のデバイスはこれ以上の機能は必要ないし、新しい機能類はつかえないはず) 選択画面は少しづつ変わっていますが、現在は下記だと思います。 デフォルトバージョンを変更して選択してください。 http://dl.altera.com/?edition=web ダウンロードケーブルにも注意してください。 あまりバージョンが古いと、USB接続は対応していないかもしれません。 GHDLというのは知りません。 VHDL、VerilogHDL、AHDLがQuartusの読み込める記述言語だと思っていました。 会社をリタイアして、最近はあまりいじっていないので何か変わったかな? 自身がありません。 三十数年のハード設計屋から言わせてもらえば、FPGAはマイコンプログラミングとは異なります。 同じ様な流れで書き込みは出来ますので、マイコンプログラマーの方が良く扱われますが、 ・無駄な回路そして無駄なタイミング ・スキばっかりの危ないタイミング ・外部との同期性をあまり考えていないシステム設計 ・レベルマージンをあまり考慮していないI/O設計 などを山の様に作っています。 アマチュアなら何も問題ありませんが、まがりなりにもプロの方が使うなら、「確実に動作する高速の同期回路」を充分勉強する必要があります。 そうでないなら、普通の高速RISCマイコンをうまく使った方が、確実で融通性の高い回路が出来ます。 適材適所をお勧めいたします。 FPGA自体は専門ではないですが、参考までに
お礼
「EP1K10TC100-3」(ACEX1K)ですが、ちょっと前のQuartusで選択できるようになりました。 これでぼちぼちお勉強していこうと思います。 ありがとうございます。
補足
ご返答ありがとうございます。 本当に助かります。 「GHDL」というフリーコンパイラの話を出したのは、 「地デジTVとかもFPGAを使っているよ」というのを以前聞いたことがあって、FPGA使っているのは「放送電波を使ってFPGAを書き換えれるから」らしいんですが、そうであればHDLをコンパルさえできればQuartusなどを使わなくてもFPGAに書き込みできるんじゃないかなと思ったのがあったからです。。。 Quartusですが、勉強目的なので古いバージョン使ってみます。
お礼
GHDLですが、 ”設計した回路のネットリストへの変換はできない” みたいでした。(http://penguin.tantin.jp/mori/soft/GHDL.html) GHDLでコンパイルはできてもFPGAへの書き込みはできないみたいです。
補足
ご回答ありがとうございます。 情報が少なく、独学なので本当に助かっております。 コンパイル後のFPGAへの書き込みについて(Quartusを使わないとしたとき)のザッとした流れがわかりとても助かります。 FPGAもマイコンもまだ触り始めですが、データーシートを一度見てみたいと思います。 GHDLですが、当方もまだインストールもしておらず名前だけ知っている状態です。 ネットでもGHDLでコンパイルしてGTK等のツールで波形表示させている方々はいらっしゃるみたいです。 もしかして、GHDLはシュミレーションにしか使えないとかでしょうか。 (けど、HDLのコンパイルはしているだろうし) 余談ですが、「EP1K10TC100-3」は遠い昔の学生の頃にFPGA・ASICを勉強したくて購入していたものです(トラ技の付録)