ブログでやれ
#そうだ!FPGAボードを触ろう
学校で環境全て構築されてる状態でSFL書いて画像処理回路は作った。
せっかくなので最初からやりたい
#FPGAボード手に入れよう
FPGAボードは市販されてるらしい。
メーカーはAltera(アルテラ)とXilinx(ザイリンクス)の二強でAlteraの方がポピュラーっぽい
AlteraにはCycloneとかMax10がある何が違うのさ
それを乗っけたボードがあるし,同じ名前なのに新旧あったりわかりづらい。おまけに高い。なんだよ4万って。僕のスマホの3倍の値段じゃん。助けてドラえもん
教授「はい,どうぞ」
CX-Card4
やったぜ,おまけに日本のメーカーだ。取説が日本語なのは疲れなさそうだ。おまけに「かんたん回路設計対応」とか書いてある。とても嬉しい。
#FPGA怖い
教授「適当に扱うと壊れるよ」
ハンダづけミスったりとか,ネジ落としたりとかですか?
教授「いやPCから入出力の設定を間違うと本当に壊れるよ」
え,なにそれこわい。そしてこのボードの価格は?
教授「10万」
それを設定一つミスると
教授「壊れる」
FPGA怖い
#開発環境を整える
CX-Card4のサイトを眺める
ほーん,なるほどな(わかってない)
お,RefApp7ってのがいるんやな。よくわからんけど。
どこでDLできるんや?(1時間後)
DLリンクないやん,嫌がらせかな。
おまけにこのサイトTableレイアウトやんけ・・・。
メール送れば実行ファイルくれるんかな。いやまてよ?
教授ー,ディスク付属してませんでしたか?
会議中
しゃぁないあとやな。
お,Quartus Prime Lite editionっての使えばいいんやな
プログラミングでいうVisualStudioみたいなもんかね。
タダだしえぇやん。DLしよ。
(垢作れとか住所入力しろとかデカイファイルをダウンロードする専用ツールいれたり,くっそ長いインストールとかがあって)
ようやく完了したわ,起動しよ
#Quartus Prime Liteを起動する
ありすぎぃ!どれ起動すればええねん。
とりあえず一番下のQuartus Prime 16.0がそれっぽいので起動する。
ライセンス認証がどうのとか言われたけど適当にいなす
ボタンありすぎぃ,とりあえずnew projectで
へぇ(読んでない)
プロジェクト名な。適当に
お,テンプレートあるんか。でも日本メーカーのボードがテンプレートにあるか?ないだろうね。空プロジェクトで
あ,Boardタブがある。ここにCyclone4EつんだCX-Card4があれば
は~マジ日本のメーカーってこういうときにつらい
付属ディスクにいい感じの何かがあることを祈る
しょうがない,Alteraのサイト眺めるか。
「これを見ればできるFPGA設計無料」
完璧やん,みよ!
→リンク切れ(トップページへ飛ばされる)
・ω・うーんこの
#SFL/NSLの歴史?
SFL:NTTが作った世界初のハードウェア記述言語
NSL:SFLを改良したもの,オーバートーン社が管理販売
http://www.overtone.co.jp/
#NSL環境を作る
ダウンロードするには個人情報書き込んだらメールでDLリンクが自動返信される方式
リンクを全部DLしてzip内startup.batを実行すると
linux仮想環境が起動する,あとすごく親切なチュートリアルがついてる,ソース付きで,初回なんて10行ですよ。Quartusもこれくらい親切なのだったらいいのに。そのチュートリアルPDFには清水尚彦著とかいてる。
#Quartusの本を探す
(上はリンクではない)
埒が明かないので,本に頼ることにする。古いのが気になる。Quartus PrimeではなくIIなのも気になる。
けど他に良さそうな本が見つからないし,これを読むぜ
図書館→ない。県立図書館→ない。市立図書館→ない。詰み
助けてドラえもん
教授「注文したで」
神
注文待ち←いまここ
#暇なので売店の本屋を覗く
雑誌が売ってた。2016年4月発売なのに10月現在までおいてある。
4500円なんだけど,SRAMや端子,書き込み用ICも別売。
USBBlasterを持っている上級者は手持ちのパーツをくっつけて,初心者は課金する方式。
HDMIや音やUSB入出力の別売パーツをつけると2万円になる。やすいのか高いのかよくわからん。ディアゴスティーニかな。
本は立ち読みした。お金ないので。そしてざっくりと開発の流れがわかった。
#便利なサイト
あとで知った。アルティマ技術データベース(旧EDISON)
http://www.altima.jp/members/p1-literature/1-software/1-altera/1-q2/index.cfm#q2_flow
EDISONから名前を変えたのは,IntelがEDISONというプロセッサ作ってSEO的不利を考慮してかな。
#今回遭遇した単語
- Altera,Xilinx :FPGA2大メーカ,あくまでFPGA本体のメーカでボードや言語の会社ではない。intelとamdみたいなものかね
- Quartus Prime Lite: Altera用開発環境無料。一つ前はQuartusIIというものだった。
- Model Sim シミュレーションするツール。波形みれる。
- NiosII AlteraのFPGA上で作れるCPU。それラズパイやマイコンでよくね? 専用のCプログラムかけるエディタ付属。オープンソースなOpenCoreってのもあるってきいた。あれ,じゃぁ講義で頑張ってCPU作ったのなんだったのさ。車輪の再発明は学習のために大事
- PinPlanner:Quartusから起動できる。verilogの合成が完了したら,入出力をFPGAのPinにわりあてるためのツール。ここをミスると爆発するって本当?
- プログラミング:まずFPGAは揮発性で(初めて知った),電源を落とすと回路が消滅する。そこでromに回路データをいれて起動と同時にFPGAに取り込むという方式。このROMに書き込むことをプログラミングという。
- コンフィギュレーション:回路をFPGAに書き込むこと。ROM→FPGA,PC→FPGAのどちらの場合も指す。後者は電源消すと消える。
- JTAG:FPGAに回路かくための端子?USBブラスターを使うらしい
- SRAM:使い勝手の良いメモリ。基本的にFPGAにはメモリが内蔵されてないので,このSRAMを外付けして使う。
- MAX10:ところがどっこいSRAM内蔵したのがこのMAX10。便利やな。
- PLL:好きなクロックを作れる素敵な奴。
- .tcl:よくわかってない,Pin入出力が設定されたファイル?
- .qpf:Quartus用プロジェクトファイル
- .rbf:FPGAに書き込む生データ。winでいうexeみたいな?
- .ttf:rbfをテキストにしたもの
- .sof:rbf亜種
- .pof:rbf亜種 ROMに書き込むためのファイル
- USBコントローラIC: