· 

MAX10(FPGA)(1)

ロジックアナライザ的なロジックレコーダを作りたい。超高速で超ロングメモリは高価なので。うちのLAP-C 16032改は各チャンネル128kビット記録できるけど、10MS/sだと12.8msしか記録できない。だいたい十分なんだけどね、、、で、どうやるか、、、FPGAでやります。なんとうちにトランジスタ技術 増刊 (1)MAX10(2)ライタ(3)DVD付き! FPGA電子工作スーパーキットなるものがある。そして、マルツで買ったMAX10-FB(FPGA)基板 全実装版もある。メモリも512Mbitが載ってる!そして、MAX10-JB(JTAG)基板 全実装版もある。のでこれでやってみるぅ。512Mbitもあれば16chで33Mbit、、、すげーぜ。5年以上前のものだけど、今も買えます。

MAX10はかつてALTERAが作った遺物、、、すみませんIntelがALTERAを買い取ってちゃんとサポートしているデバイスです。

他の案としては、EBIとDMAがあるマイコンを使うってのも考えたけど、ただポートを記憶していくだけなのに色々調べないといけないのでしんどいだろうなってことで、まずはFPGAでやってみることにした。

開発環境はQuartus。IntelとかQuartusとかで検索すると出てくるので、Quartus Prime Lite 18.1.0を一括ファイルでダウンロードする。18.1.0は最新ではないけど19以降はNiosII開発環境のEclipseが付属していないし、NiosIIコンパイルのシェルがWSLを使うことになっていて(18以前はcygwinが勝手にインストールされているらしい)、やたら設定がめんどくさい(何回かチャレンジしたけど成功しなかったので一旦あきらめることにした)ので。

一括ファイルはtarになっているので、7zipとか使って解凍して、setup.batを実行して言いなりでおk。

ところで、私はVHDL派です。Verilogがいやってわけではないけど、最初CPLDをいじり始めたときに、VHDLのほうが文法が堅苦しいって聞いて、そっちのほうが向いているかなーって。一時期お仕事でVerilogを使うこともあって、しんどいかなーって思ってたけど、まぁそんなに差はないかなーと思った。Verilogの方が記述量が少ないのは確かだけど。

では、記録のためにstep-by-stepで行くぞい。(途中から雑になっちゃうんだろうけど)

で、Quartusを起動して、New Project Wizardを押す。

で、迷わずNext。

参考書に倣って、こんな感じでNext。

反射的にYes!

Empty projectのままNext。

いじらず、Next。

今回のデバイス「10M08SAE144C8GES」を選んでNext。

今回はやらんと思うけど、SimulationはToolName「ModelSim-Altera」でFormat「VHDL」。で、Next。

確認画面が出るけど、反射的にFinish。そして、しばし待つ。

ここで、TopLevelの記述を作るんだけど、正しい作り方はわからない。次の手順で、ある程度勝手に作ってくれるので、毎回こうしている。

メニューの「Assignments」の「Pin Planner」を押す。

こういうのが出るので、メニューの「File」->「Create/Update」->「Create Top-Level Design File ...」を押す。

こんな画面が出るので、VHDLを選んでOK。

こんな画面で反射的にOK。で、ピンアサインの画面に戻るので、「File」->「Close」。で、Quartusのメイン画面に戻るので、左上のFPGAってのをダブルクリックすると、ソースができている。

かったるいので今日はここまで。ほんとマジしんどい。そろそろ色々と赦してほしい。

で、ところで、久しぶりに書いたのに、全然興味ないんですけどっなんていわないでぇ~。本当はpyAutoGUIをやりたいんだけど、いまいち理解できないので、UWSCに回帰している今日この頃。いつかpyAutoGUIをやりたい。で、最近RPAが脚光を浴びているけど、RPAで何かの「自動ツールです!」ってのを作るのよりは、「この仕事繰り返しでかったるいなー」って思ったときに、すぐに作れるスキルを身につけたほうがいいんじゃないかと思う。会社のシステムとかすぐ変わっちゃうので、時間をかけてしっかり作ったものが一瞬でパーになるってこと、、、あると思います!!でも、「繰り返しかったるいなー」と思わない人も実際のところ多いんだろうなーー。あ、FPGAの回に関係ないこと語っちゃった。