2023年12月17日日曜日

自作CPUで遊ぶ 15

さてさて、 petalinuxの方は何とか環境ができたのでロジック部の作業に戻った。 vivadoのブロックデザインは以下のようにした。右下のmycnc_topがCNC制御用のブロックで、これはIP化せずRTLを読み込ませている。
mycnc_topは以下のような構成にした。zumi32用の命令メモリとデータメモリの他にzynqとzumi32間のデータ交換用共有メモリももたせる。これらのメモリはZynqからもzumi32からもアクセスできる。また、Zynq、zumi32相互に割り込みを発生できるようにした。データ交換用メモリはDRAMの方が良いかなとも思ったが、まずはBRAMでやってみることにした。
現状、AXI側、zumi32側のアドレスマップは以下のようになっている。
と、今日はここで時間切れになってしまった。 

2023年12月16日土曜日

鹿

私は郊外に住んでいる。
先日夕方、車で外出したら出発して 1 〜 2分のところで何と鹿に遭遇した。 
前方に暗い塊があるなと思ってライトをアップビームにしたらそこには鹿がいた。
肉眼で見たときにはかなり大きく感じたのだが、ドライブレコーダーの映像を確認したらそうでもなかった。
うちの近所では猪はよく見かけるのだが、鹿を見たのは初めてだ。 
 この子も食べ物を求めてここまで進出して来ているんだろうか?
 なんとか生き延びて欲しいものだ。
   

2023年12月3日日曜日

自作CPUで遊ぶ 14

前回の続き、 

ウィンドウマネージャだが、ネットで軽量ウィンドウマネージャについて調べたところ幾つもあることが判った。 この中で、icewm、fluxbox、fvwmをインストールしてみた。 3種のソフトをビルドしてインストールするのにメチャクチャ時間がかかったが何とかインストール出来た。

以下は各ウィンドウマネージャの画面表示だ。 上からicewm、fluxbux、fvwmだ。画面の画素数は1024x768にした。

 
icewm
fluxbox
fvwm
どれも似たようなもんだがicewmが若干好みなので、icewmを採用しようと思う。 また、画面の画素数は1280x1024に増やすことにした。
petalinux-image-fullには**gears**という3Dで歯車が回転するプログラムが含まれている。その中のX11用のgears_x11を動かしてみた。 これを動かすことに特に意味は無いが、simple frame bufferでも3Dのアニメーションプログラムが動作するので何か嬉しい。

 

… ということで、ユーザーランドもpetalinuxのまま行くこととし、ウィンドウマネージャはicewmを使うことにした。

自作CPUで遊ぶ 25

まだ制御ソフトが完成していないので今まではスピンドルを移動するために一々簡単なプログラムを書いて移動させていたのだが、非常に面倒なのでCNCペンダント的なものを作ることにした。 右側の縦に2つ並んでいるスイッチ...