LatticeのマイコンコアMico8をLatticeのFPGAに組み込みます。日本語の参考書がないってのと、リアルに一度もやったことないから尻込みしていましたが、ホビーユーザーにはIntel(ALTERA)もAMD(Xilinx)も巨大すぎるんよ。背に腹は代えられない。
まずGoogleでLattice Mico8を検索してここに飛ぶ。
で、下のほうで、Tutorialをダウンロードする。
今からこれを見ながらやります。2時間あれば終わる内容だと書いてあるけど、英語だからなー、、、
で、Tutorialによると、Lattice DiamondとLatticeMico Systemが必要だと書いてある。上図のDownloadable SoftwareをつつくとLatticeMico8 Development Toolsってのがダウンロードできるけど、これじゃない。
LatticeMico SystemはGoogleで再度検索するか、上のメニューで「製品」-->「Software tools」とたどり、Diamondとかと同列に扱われているこれ
をつつく。で、下のほうで、
ファイルをダウンロードしたところでファイル名で気づくけど、LatticeMico Systemのことを、LMSって書いていることがあるので、覚えておくとあとでなんのこっちゃとならない。英語文化のこの省略って、まじ唐突に、さも当たり前のようにでてくる。でもすでに市民権を得ていて唐突に出てくるのが当然のもの(RAMとかFPGAとかMSBとか)もあって、結局、その沼に入ってようやく深みにはまれる権利が得られる文化なのかなー、、、いいのか悪いのか、、、
まずはDiamond3.12がすでにインストールされているとして、LMS(ヾ(-ω-;)さっそくかい)のインストールはなすがままで、まったく悩む余地はない。
で、Tutorialによると、
1. Create a new project in Lattice Diamond.
Lattice Diamondに新しいプロジェクトを作る
2. Create a microcontroller platform for the LatticeMico8 microcontroller in MSB with a shared-bus arbitration scheme, which is the default.
MSB(Mico System Builder)にMico8用のマイクロコントローラプラットフォームを共有バス調停方式(これはデフォ)で作成する。
3. Write the software application code for the microcontroller platform in C/C++ SPE.
C/C++ SPE(Software Project Environment)にマイコン用のアプリケーションコードを書く。
4. Deploy the software application code to the microcontroller’s internal PROM and Scratchpad.
ソフトウェアアプリケーションコードをマイコン内部のPROMとスクラッチパッド(今はなんのことだかわからん)に配置する。
5. Generate a bitstream of the microcontroller platform in Diamond.
マイコンプラットフォームの書き込みファイルをDiamondで生成する。
6. Download the hardware
ハードウェアに書き込む
大まかにこういう流れらしい、、、(普通じゃないMSBが出てくるけど、Tutorialの最初のほうに記述があるのでここは怒らない)
では、やったるでー(通常は教科書に従わないこともありますが、今回はおおむね教科書通りに行きます。)
Diamondを起動してProjectのNewを押す。
ここで、天下一品インスタントの4分がきたとかじゃない限り、Cancelを押したい人はいないと思う。ていうか、長くなるので、インスタントラーメンにお湯を入れたりしてはいけないと最初に書いておくべきだった。
プロジェクトのフォルダーはTutorial通り、<Diamond_install_path>\examplesの中で、
新しいフォルダを作って、
lm8_tutorフォルダを作って、この空っぽのフォルダを開き、
フォルダーの選択を押す。
Tutorial通り、プロジェクト名とインプリメンテーション名は両方ともplatform1とする。
今回使うのはSparkfun製TinyFPGA AX2です。
印字でわかります。
だいぶ昔に購入したTinyFPGA AX2ですが、なにかちょっとお触りした後、お蔵入りになっていたものをほじくり返したものです。、、、相変わらず半導体が手に入らんねー。TinyFPGAみたいに明らかなホビーユースのものなんて
こんな状態よ。°(°`ω´ °)°。
なので、万が一この記事を見てチャレンジしようとした人がいたとしても無理なんです。まぁそんな奇特な人はいないので、個人的なメモとして淡々とやりますよ。
デフォのままネクスト。
これでいきまっせーってでるのでフィニッシュー。
Diamondのファイルリストがこうなっているはず。で、Task 1が終了。
先が長いー(;´Д`)
コメントをお書きください