2011年3月7日月曜日

DE0でzumi32

Spartan3A StarterKitでLCDに文字列を表示させたRTLをDE0に移植して動作させた。
zumi32のClockは110MHzにしてみたがBest caseでもMetできなかったので、
100MHzにした。100MHzでもまだWorst caseではViolateしているが、
tuningすれば何とかなるんじゃないかという気がする。



で、現状の動作環境はどちらかというとBest caseに近いので、bit fileを実機に
Downloadして動作させてみたところ動作した。ただし、LCD Accessの間に入れている
Delay時間用の時定数(loop counter値)はzumi32の動作周波数が100MHzと高速に
なっているため、Spartan3 StarterKit用の値では足りず増やす必要があった。
以下が動作の様子だが、LCD表示器は手持ちの物を使ったのだがこれは数年前に
入手したJunk品で、久しぶりに通電したらまぁ~表示のうっすいこと。



でもまぁ、zumi32を100MHzで動作させてみるという目的は一応果たせたが、
これだけでは物足りない気もする。
もっと違った事もやってみたい気がするが何がいいかな。。。

zumi32版gccのPortingはCGENを使って見ようと考えていて現在勉強中だが結構難しい。
簡易Assemblerだと半日もあれば作れる位簡単なのに、binutilsに移植しようとすると
途端に難易度が上がってしまうのは何故なんだろう。。。
でもbinutilsやgccのPortingを経験できる機会なんて普通に技術屋をやってたって
そうそうできるもんじゃないから、今自分は貴重な経験を積むことが出来ているんだと思う。

2011年3月5日土曜日

Kintex 7とDE0

ISE13.1がReleaseされたので入手してWebPackをInstallした。
7系のDeviceではKintexが選択できるようになっていたので
Kintexでzumi32がどの位の周波数までいけるか見てみた。



Xilinxの資料ではKintex 7の性能はVirtex6と同等との
ことだが、結果はそれを裏付けるものだった。
7系は速度面での性能よりも消費電力面での性能向上に
力点が置かれているのかも知れない。

先日の実験でALTERAのCyclone3では100MHz以上で
動作する可能性があることがわかったが、実際に実機で
確認してみたくなりterasicのDE0を買ってしまった。
まずは小手調べとして、dvi_encのDemo用RTLを
Cyclone3用に変更して実装してみた。



次はzumi32を入れて動かしてみよう。

自作CPUで遊ぶ 22

今使用しているモータードライバはDM556Dというものだが、このドライバはMicro Stepが 800 [pulse/rev] 〜 40000 [pulse/rev]の範囲で設定できる。 Mi...