[管理者用]

イゼルローン日誌
宇宙・・・それは人類に残された最後の観光地である

         
戻る 
01月
02月
03月
04月
05月
06月
07月
08月
09月
10月
11月
12月
1998年
1999年
2000年
2001年
2002年
2003年
2004年
2005年
2006年
2007年
2008年
2009年
2010年
2011年
2012年
2013年
2014年
2015年
2016年
2017年
2018年
2019年
2020年
2021年

2021年10月
10月31日 みつのえ ね:出雲大国主大社秋季大祭
・さて、昨日の続きで、送られてきたバイナリをデコードして動作するように改変してみる。とりあえず、一番簡単な手法でゴチャゴチャと書いていざテスト。おっ、ちゃんと動いた感じだな。ではクリックするたびに違うデータが送られるようにしてみると・・・これもOKだ。やっとここまできた。あと、ホストからのコマンドでの動作を考えてXilinx側のソフトウェアをもう少しフレキシブルに改造したほうが良いな。

10月30日 かのと ゐ
・さて、今度はUSBからのデータに従って動作するように書き換えていくことにするのだけど、送るデータはやはりバイナリにしておきたい。そのためにはホスト側を作ってやらないといけない。ということで、何を使おうか。まぁVisualStudioを使うのが手堅いのかな。2015がどこかに入っていたはずとちょっと見つけた。ついでなので2019を別環境でインストールしてみたけど、あまり違う気がしないな。まぁ、今回は単にCOMポートを開いてボタンを押したらバイナリデータが送られるようにしたいだけ。C#の方が文法上はCに近そうだけど、まぁ、VBでもいいとするかな。
・たまにしか使わないからすぐ忘れる。COMポートの列挙方法は、検索すればすぐ出る・・と。で、SerialPort.Open()してSerialPort.Write(Byte[],integer, integer)を使えば良いだけか。Xilinx側を少し変更して、受け取ったバイナリを16進数変換したASCII文字列で送り返すように変更。これでとりあえずやってみる。よし、うまくできたようだな。今日はちょっとドタバタとしてしまった。続きは明日やることにしよう

10月29日 かのと いぬ:香椎宮祭
・「かしいぐう」とよむらしい。神様の夫婦が祈った地だとか。令和6年には創建1300年になるそうだ。
・さて、昨日のソースコードを少し整理して扱いやすいように手を入れておく。

10月28日 つちのと とり:藤沢白旗神社愛祭特殊神事
・さて、今度はUSB側のソースコードのコピー。現在のディレクトリだとゴチャゴチャになりそうなので、サブディレクトリを作成してそちらにコピー。main()が重複してしまうので、main()の中にずらずらと書かれている初期化部分を切り取って初期化関数。そして無限ループしているところを切り出して今度は毎回リターンするようにする。これをHDMI側のmain()の初期化とループの中に埋め込めば良いか。
・埋め込んで組み合わせてビルド。さて、ハブの先にはFPGAの書き込み用ポート、FPGAのxil_printf()用、そして今回新規接続するUSBポートと3つつなぎ、更にHDMIケーブルも繋ぎ、プログラムをダウンロード。完了とともに接続したディスプレイが反応。USB UARTも動き出してデバイス接続の音。VDMAを動かすといつものオーバーレイ表示され、シリアルポート側はエコーバックされると共にバルクOUTからデータが来たというメッセージ。どうやら合体は成功したようだ。そして、以前おかしかったオーバーレイ側の変なスジも現れない。あれはひょっとしてアライメントの問題だったのかな。
・さて、とりあえず合体したソースコードに手を入れてブレームバッファやオーバーレイ用のデータ領域をキャシュアラインにアライメントしてやろう。USB側のソースコードを眺めて真似してやってみるとエラー。一体どこの定義でうまくいくようになっているんだと探していってようやく#defineしているところを発見。これは64バイト境界にアライメントしているのか。この宣言を埋め込んで再ビルド。動作確認。よし、これで大きな壁は崩れたな。長かった。実に長かった。
10月27日 つちのえ さる:多田神社祭
・そして、HDMIとUSBのの合体のためにVivadoのプロジェクトから新規に作成することにする。ところがこれがまた手間取る。VivadoでSave asで新たなディレクトリに新たな名前でセーブして、そのままビルドしようとしたら、合成、配置配線と進んでビットストリームを生成させようとしたら、合成・配置配線がout of dateだからやり直すねということで無限ループで終了しなくなってしまう。
・なぜなのかよくわからないので、tcl出力にして、生成されたtclファイルの中をいじってターゲットのディレクトリなどをエディタで置換して、tclコンソールから実行。しばし時間をかけてとりあえず出来上がったものでもう一回wrapper生成して、ライブラリ類を生成させてビットストリーム生成。こんどはうまくいった。これでExport Hardware。よしよし。
・そしてVitis起動して、プロジェクト作成。Vivadoで作ったxsaを読み込ませて、一応雛形はhelloでいい。
・これも問題なく出来上がったので、まず自動生成されたソースを削除して、HDMI側のソースコードをコピー。vitisが賢いので、勝手にディレクトリ中のソースの変更を検知して勝手にツリーも再構築。仮ビルドしてみたら問題なし。あとはUSBのとの合体だな。

10月26日 ひのと ひつし:宮崎神宮祭
・少し見直しをかけてはチェックという感じで、USB側のソースコードをちょっと誠意。

10月25日 ひのえ ね:太宰府天満宮祭
・さて、とりあえずできたみたいなので、PCにつないでみたら、認識がうまくいかない。こういうときはUSBバスアナライザだなということで持ち出して、ホスト役には現役を引退していたノートPCを引っ張り出してきていざ接続。とりあえず接続してみたら、使用する準備ができた・・なんていうメッセージ。なんだ、ちゃんと動くのか。確かにWindows10には標準でドライバが鎮座しているんだな。ターミナルを起動してみるとポート洗濯画面で確かにポートが見えている。そのままターミナルを動かしてキーを叩くとちゃんとエコーバックされている。いいじゃないか、いいじゃないか。
・が、しかし、なぜかUSBアナライザはトリガがかからない。
・しばらく悩んでいて気がついた。フルスピードじゃなくては、ハイスピードで接続されているのだな。なるほど、最初ケーブルが足りなくて延長ケーブルなんて使ったのが間違いだったのかな。
・ここまできたらあと一息。ターミナルを立ち上げたとたん・・・たぶんCOMポートがオープンされたらインタラプトINエンドポイントに激しくアクセスされるので、ターミナルがインタラプトIN発生メッセージだらけになってしまってうっとおしいので、削除。
・さて、とりあえずUSB側も開通。あとは、HDMIとの合体だな。

10月24日 きのと ゐ:芝愛宕神社例大祭
・ディスクリプタテーブルも直したけど、VIDとPIDがちょっと思案。Interface誌の記事などでもUSB UARTをやっているし、あちこちのサンプルにもいろいろあるわけだけど、さて、ドライバはどうだったかな。確か最近のWindowsはCDCドライバは標準添付されていたはずだったなと検索したらここにあった。Usbser.sysが添付されているわけで、それならINFファイルすら不要なはずだな。じゃあ大丈夫か。とりあえずXilinxが出しているZynq-7000のCDCサンプルのIDを拝借しておくとするか。

10月23日 きのえ いぬ:桜ヶ池池宮神社例祭
・電話がかかってきたのだけど、土日に掛けてくるやつもそうはいまいと、留守電の応答を聞いていたら、自動の電話アンケートの類。「最初にアスタリスクを押してください」とか言うのだけど、押してもいないのに勝手に進む。どういう設定をしているのやら。
・「選択的夫婦別姓」とか「同性婚」とかを持ち出している政党もあるけど、それって今ここで争点とするようなことなのだろうか。突き詰めればそもそも結婚って何だ?というところまで行くわけだ。
・どうせマイナンバーで全部管理されていることを考えれば、姓名はマイナンバーに紐づけされた情報の一つでしかない。ならば自分の好きなものを好きなように登録すれば良いというのも一つの考え方であるし、結婚はマイナンバー同士のリンクを張ることであるということにすれば、別に性別なんて関係ない。たまたま性別欄の情報が異なる相手とリンクを張ることが多いだけだという考え方だってできる。どうせ「選択的夫婦別姓」だの「同性婚」だのといった表層的なことではなく、そうしたところまで掘ってみてほしいものだと思う


10月22日 みつのと とり:井伊谷宮祭
・とりあえずUSB Studyは動き出したようだ。PICのマニュアルを見ると外部オシレータがなくても良いよと書いているので、多分オシレータモードを変更すれば内蔵RCだけで行けるんだろうけど、とりあえず動作確認を先行させよう。
・さて、改めて読み込まれたディスクリプタテーブルを読んでみるとちょっとおかしい。何かずれている。あぁ、手が滑っている。修正してビルドして、再チェック。され?まだおかしい。あぁ、パディングされたな。USBののディスクリプタテーブルを構造体で持っているのだけど、このテーブル、奇数番地から16ビットデータが来たりするところが随所にある。おかげでコンパイラは気を利かせて偶数番地に割り振ってくれてしまったわけだ。しかたないので、全部バイト単位に変更。やれやれというところだな。

10月21日 みつのえ とら:宇都宮 二荒山神社祭
・USBシリアル変換アダプタも来たのでPICとつないでみる。が、動かない。シリアルポートに全く応答無しという感じがする。そういえば、ファームウェアのソースを見ると
RPOR4 = 0x0003; // TX uses RP8 pin
などと書いてあるのだが、良いのだろうか。RPOR4ってRP4用のセレクタではないのか?などと思ってデータシートを見て分かった。そうか16ビット長だから、1つのレジスタで2ポート分ずつ埋め込んだのか。RPOR4ならRP8とRP9ということか。
・ということで、ここも合っている。配線らしい配線もないけど、一応テスターであたってみるけど問題はない。PICの中身か?と思って再度消去して書き込んでみるけどやっぱり動かない。が、なぜかVerifyするとエラーになる。デバイスを壊したか?と思って改めて消去・書き込みをすると正常終了。
・何事かと思ったけど、結局はコントロールビット部分の書き込みをしていなかったというオチ。こちらも書き込むようにしたら、無事ターミナルにプロンプトが出た。USB Studyを立ち上げてUSBマウスをつないでGET DESCRIPTORしてやるとちゃんとそれらしいものが読めている。よし、とりあえずこの部分は動いたな。

10月20日 かのと うし:清水氷川神社祭
・一昨日から不調のiPhoneだけど、やはり治らない。これはやはりバッテリーだろうということで、昨日バッテリー交換にいくことにした。オフィシャルなところは、この近辺では立川のヤマダか、八王子のビックカメラ。八王子の方に行ってみた。とにかくゴチャゴチャと書くものやら延々と続く説明・・というのか、ほぼ予防線を張っている感じだけど・・に辟易しながら約30分。ようやくバッテリ交換開始で30分。そして終わってから確認だの何だのとまた延々と説明されて、バッテリ交換代約6000円なりを支払って無事復旧。
・そして1日たった今日。うん、電池の持ちが圧倒的に良い。なんとなく早く動くような気がするのは、気のせいか。とりあえず大丈夫そうだ。
・そんなところで、USB。結構あちこち手入れが必要だけどだいぶ形になった。そして、秋月に頼んだUSBシリアルも到着。明日にでも組み立てて動かしてみるかな。

10月19日 かのえ ね:建勲神社船岡大祭
・「けんくんん」ではなく「たけいさお」ということらしい。・Facebook社が仮想現実空間(メタバース)の開発のための人材をEUで大量採用するというニュースが流れていた。
・同じようなことは各社で行われているし、ボチボチと実用化されてもいる。仮想現実空間といば、20年ほど前にあった富士通の「Habitat」やら「セカンドライフ」などもあった。自分でもアカウントを作ってディスプレイと向かい合って街の中を探検したりしたのを覚えている。
・この手のものが現実に近づくのにネックになるのはサーバー、ネットワーク、端末それぞの能力、いわば仮想現実空間全体の処理能力が問われるだけど、この点が解決されていくと、まさに現実と渾然一体となったシームレスな世界になるわけで、食事などの物理的にネットワークでは無理なこと以外はすべて仮想現実空間の方に移行することだって不可能ではない。たぶん、一日のほとんどを仮想現実空間で過ごすという方も現れてくるだろう。
・その物理的な活動でも、レストランでの配膳などで次第にロボットが使われるようになっている。
・働くことも含めて自分の分身であるアバターということになると、年齢も性別も人種も関係ない。言語についてもAIによる機械翻訳のレベルは急上昇で、じきに同時通訳もそれほど違和感なく行われるようになるのだろう。文書や音声だけでなく、仮想ホワイトボードなどへの書き込みも自動翻訳されるのだろう。もはや直接的に人を隔てる壁はほとんどなくなると思って良い。そのような世界で物やサービスが提供され、会社が運営され社員同士が交流し、会議も行われ、経済活動が行われるわけだ。仮想通貨とも一体化するのだろうか。
・もっとも、こうなってくると、働いているのが「人間」である必要性すらない。AIが作り出した仮想人間に働かせて報酬を受け取ることだって可能だ。
・行くところまでいくと最後に残るも人間らしさは何だろう。芸術・工芸・文学・芸能といった、人の感性が生み出すものになるのだろうかな。

10月18日 つちのと ゐ:靖国神社祭
・さて、そんなこんなで、とりあえずUSBの標準リクエスト部分は一通り把握した感じ。あとはバルクIN/OUT部分を書き換えて・・・とりあえずエコーバックかな。
・iPhone君の調子がおかしい。充電されているのにいきなり電源が切れて再起動なんていうパターンが続く。OS絡みでなにかあるのかなと思ってアップデートが出ていないかチェックしたら出ているようだ。iOS14系とiOS15系があるようだけど、アプリが対応しているかまだわからないので、とりあえず14系の方で。ちょっと時間がかかったけど、とりあえず今のところは順調そうだな。
10月17日 つちのえ いぬ:神宮新嘗祭
・電子回路の勉強用のキット類というと、電子ブロックやマイキット、そしてブレッドボードを使っていくタイプあたりが王道路線というとこころか。このブレッドボードをもう一弾発展させることを考えては消去ということを繰り返していたりする。というのは、やはり「その先」がまだ良く見えないから。どうも昔のようなわけのわからないような発想のホッピング能力は落ちているのかな。リハビリすれば少しは取り戻せるのかな。
・というところで、インターフェース誌にあったPICを使った簡易ホストをとりあえず動かしてみるかということで、入手したPIC24に書き込み。ユニバーサルプログラマは全くなんの問題もなく認識され、接続されて簡単に書き込めた。
・さて、そういえばPCとつなぐためにUSBUARTが必要なのだが、以前買っておいたはずのものが見当たらない。まぁどうせ今後共よく使うのだから、秋月のやつでも買っておくかということで、手配。ついでに減ってきていたシングルインラインのコネクタも一緒にね。

10月16日 ひのと とり:丹生川上神社祭
・メインで使っているUbuntuのWine下で動かしているxyzzyの日本語表示がおかしくなってしまった。もう一つのUbuntu環境の方では何事もないので、アップデート絡みではない。まぁどうせ使えないならということで、メニューエディタを使ってwineを一旦消去。仮想ドライブも削除。そしてもう一度インストールし直して、xyzzyも再コピーしてやったら何故か直った。何かのファイルが壊れていただけなのかな?

10月15日 ひのえ さる:石神神宮例大祭
・そろそろ帳簿付けをしておかねばと、会計ソフトを起動する。そういえば、昨年度の入力用に新しいのにしたんだっけ。繰越の処理もしていないから、昨年度のままになっていた。経理を見てもらっている方からもらった決算済みファイルを取り込んでとりあえず準備完了。
・4月に作ったメガネ。一方を常用しはじめたらあまり不自由がないので、もう一方の少し遠距離用のものの出番がなくなっていた。もったいないので、運転時用として昇格させてやろうということで、レンズの交換を依頼。2回まで無料で変更できるのが利点だな。
・DoCoMoでトラブルが起きていたらしい。昨日の17:00頃からというけど、その前からなんとなく繋がりにくいなど、変なことがあったようなのだけどな。未だに完全復旧とはいかないようだけど、自宅ではWi-Fiだし、WiMaxも解約しないまま持っていたので大きな影響は無かったけど、これからこういうことが増えるんだろうな

10月14日 きのと ひつし:熊野大社祭
・新型コロナの方も数値の上ではだいぶ落ち着いてきたようだ。第六波を気にする向きもあるけど、先のことを心配しても仕方がない。なるようにしかならないのだな。
・さて、古い通帳がいくつか出てきたのを整理。すっかり忘れいて、「この銀行の口座ってどうなってるんだ?」というものも多々。こんど時間のあるときに調べておかないとな。

10月13日 きのえ うま:北畠神社祭
・洗濯ネットが擦り切れて穴があいてきたので買い直すことに。ダイソーに行ってみたけど、良いおおきさのものがない。とりあえず買ってはおいたけど、今までのものと同じようなものは無いのかと探してたら見つけた。ついでに物干し竿をくわえられるような大き目のピンチで以前使っていて具合が良かった形のものも発見。これもダイソーでは見つからなくて諦めていたんだよな。
・ついでに買った大きい保存容器を使って散乱状態だったACアダプタを整理する。+5V系は多すぎたので前回だいぶ捨てたので、数点。あとは3Vとか、2.5Vとか6V、7V、9V、12V・・・というところ。ちゃんと分類して収納。だいぶすっきりした。


10月12日 みつのと み:佐嘉神社祭
・まさに佐賀県にある「さがじんじゃ」ということだ。
・とりあえずプログラム読みと、修正と。なんか結構ややこしいことをやっているな。このサンプル。そういえばそろそろ帳簿付けもやっておかねば

10月11日 みつのえ たつ:安仁神社祭
・「あにじんじゃ」である。
・ちょっと運動したら筋肉痛。かなり体がなまっているな。
・一応ディスクリプタテーブルは把握したのだけど腑に落ちないところがある。CypressのFX3のUSBシリアルのサンプルも見つけたのでこちらとも突き合わせをしてみると、なんだか混乱しているような感じ。XilinxのマスストレージもFX3のUARTもUSB2.0と3.xに対応させているのは確かなのだけど、ディスクリプタテーブルではスーパースピードとハイスピード対応なのか、スーパースピードとフルスピード対応なのかがよくわからない。どうもXilinxは前者、FX3は後者にしているようだ。「最低速度」は、Xilinxはロースピード(1.5Mbps)、FX3はフルスピードであるとしている。なかなか興味深い。CypressもUSBの関係では老舗どころだし、Xilinxは言うまでもなくFPGA界の巨塔なわけで、どちらもUSB.orgではおれなりの実力派メンバのはずだけど、どうなっているのやら。

10月10日 かのと う:梨木神社秋季慰霊大祭
・旧体育の日っていうところ。ちょっと用があって車ででたけど、あっちもこっちも渋滞。無料開放される運動施設もあるようだけど、駐車場待ちの行列をしていたりするのを見ると、如何なものかと思ったりもする。
・ゴチャゴチャしていたケーブル類を整理することにした。何かうまい手はあるかと思っていて目にとまったのがキッチンで使っていたチャック付きのビニール袋。ケーブルの種類ごとに分けて袋に入れて元の引き出しにIN。ついでに「とりあえず」放り込んでいたIC類も整理していたら、まぁなんと懐かしい。6502や68000がでてきた。まぁ、6502は秋月で取り扱うようになったようだけど。それなら、再び6502マイコンボードを作るっていう手もありなのかな?

10月9日 かのえ とら:飛形神宮大祭
・「とびがた」と読むのかな?
・ポチッとしたものはまだ届かないようなので、プログラムの方を進めておく。バルクのサンプルだとEP0以外のエンドポイントは2つしか使ってない。3つ目はどうやったら生かせるのかということも大事だけど、とりあえずディスクリプタテーブルに手入れをしていこう。改めてCDCの仕様書をダウンロードしてみると、以前よりずいぶんと充実というのか、拡散していった感じだな。とりあえず、CDCの仕様書と、PSTN(Public Switched Telephone Network)の仕様書が該当。しかし、インタラプトINエンドポイントは今回のような用途だと完全未使用。ただのデータ入出力だけのCDCっていうのは無いものかなとも思ってしまう。

10月8日 つちのと うし:寒露:丹生上川神社上社祭
・USBターゲットを作るということで、既存のものをとりあえず読む。マスストレージを改造してCDCに変身させようという魂胆。でも、やはりこういう手入れをしているとミスをすることもあるわけだけど、Windows君は昔変なディスクリプタを返したりするとあっさりブルーパニックでお亡くなりになったりしたよなぁとふと。
・ここはやはり簡易的なホストがほしいところ。USB経由でコマンドを送ってUSBバスを動かすというスタイルだな。PCとの間はUSBシリアル変換アダプタを使っておけば世話はない。
・マイコン関係だと、手元にはPSoC5LPボードとか、SiliconLabsのUniversalBeeボードなどの手前設計品があるわけだけど、USBホストの機能は無い。SL811が手元に転がっていたような気もするけどちょっと見つからないな。まぁ、秋月でも買えるか。あとは、最近だとMAXIMのMAX3421あたりをSPIでつなぐ手か。秋月さんを見ると中国のCH559なんていうのもあるけど、さすがに気持ちが悪い。と、思ってみていたら、なんのことはない、PIC24FJ64GB002とかいうものがある。480円なりか。これなら安上がりだな。外付けの水晶も要らないということで、USB-UARTとUSBのTypeAコネクタをつければいっちょう上がりか。
・更に検索していたら、どうやらInterface誌の2014年12月号でこれを使ってPCからUSBホストの動作を1つずつ試すというありがたやなことをやっていたようだ。ちょうどいいことに、この年は記事を書いていたので、年間の記事をまとめたCD-ROMをいただけている。いずれ自分で書き直すことにするとして、とりあえずこれを書き込めば良さそうだな。
・さて、あとは書き込みである。PicKitは結構なお値段だし、そうそう使うものでもないしな。手元のユニバーサルプログラマは対応しているのかな?と久しぶりにELNECさんのサイトを訪れる。(買ったのはミナトエレクトロニクスさんブランドだけど、これはELNECさんのOEMだった)。当然のように、既に製造中止の製品なのだけど、ソフトウェアはしっかり今年に入ってもアップデートされていて、最新は今年の9/9版。「114033 supported devices from 372 manufacturers by 3.70 version of SW (9. Sep. 2021)」ということで、サポートデバイスリストを見たら、しっかりPIC24FJ64GB002も対応している。これで書き込みの問題もない。では、早速手配だな。

10月7日 つちのえ ね:赤間神社祭
・さて、USBのサンプルがそのままでは使えないので、改造が必要。でもUSBというのは例によってデバッグがうっとおしい。PCにつないだときに変なディスクリプタを返すと簡単にお亡くなりになってくれるし。昔作ったパケットジェネレータは便利だったんだけどな。と思いつつ、そういえば昔抽選であたったUSB2.0のバスアナライザがあったなと思い出す。
・まだ動くだろう。ところでアプリやドライバ類はCDだったっけと探してみたけど見つからない。さて、どうしたものか。ふと、そういえばISO形式でバックアップできるものは吸い上げてバックアップしていたなと思って、CDのイメージファイルのディレクトリを探してみたら、あったあった。
・残る問題はなにぶんにも古い製品であるので、このドライバ類は恐らくWindows10などでは弾かれるだろうなということ。OSも昔のが必要か。そういえば、XPの環境があったなと掘り出してみると、あったあった。まぁ、実に久しぶりのXP起動。CDイメージファイルをCD-ROMに見せかけた状態でUSBバスアナライザをつないでみる。しっかり認識されてドライバのインストール画面。自動的にドライバを見つけてね・・とやったら、あっさり仮想CD-ROMドライブを発見されて、ドライバインストール完了。続いてアプリをいれたけど、これまたあっさりと終了。
・ここまでサクッと動くと感動的だな。試しに立ち上げて、トリガをかけて、USBポートにアナライザ経由でマウスを接続。あっという間にトリガがかかって、最初のSETUPパケットから全部動きが取れた。ただ、問題は画面の解像度が昔よりはるかに高いため、文字が米粒になってしまうこと。こればかりはどうしようもないな。まぁ、読めないほどではないので良しとしよう。
10月6日 <ひのと ゐ:横浜新羽 杉山神社祭
・ケーブルを調達。それにしても世の中すっかりType-Cな時代になってしまったんだな。Type-CとLightningコネクタだらけだ。とりあえずMicro-Bを見つけたので2本ゲット。家に帰ってFPGAボードとPCを接続。マスストレージクラスのサンプルをビルドしたものをダウンロードしたら、ちゃんとディスクとして認識された。よし。
・あとはエンドポイントを追加できたら良いのだけど、ところで、こいつのUSBファンクションモード時の動作ってどうなっているんだっけな。

10月5日 ひのえ いぬ:多治速比売神社例祭
・「たじはやひめじんじゃ」と読むらしい。
・とりあえず、CDCのサンプルは無いのでマスストレージを試してみるか。サンプルを取り込んでやってみると、FreeRTOSを使うものはベアメタルがベースになっているので流石にこのままでは無理。ということで、ベアメタルのサンプルを持ってきてビルド。うん、別に何事もなく通るな。ソースコードをを見るとUSB2.0とともに3.0も対応しているようだな。
・とりあえず試してみようということでFPGAボードをみたらUSBコネクタがMicro-Bを拡張したタイプのコネクタ。まぁ、一応Micro-Bとしては使えるはずだから・・と思ってケーブルを探したけども、刺してみたらグラグラで安定して認識できない。一応それらしくPCは反応したので、ケーブル・・・コネクタが駄目なだけだろう。だいぶ使い込んだケーブルだしな。明日100均で買ってこよう。

10月4日 きのと とり
・先日テレビで、古い家電やらオーディオ機器などの修理を専門にやっているオジサンを取り上げていた。次々に舞い込むので、修理が一つ終わるまで次は受け付けないとかいうことで、かなりのバックオーダーを抱えておられる様子。ただ、最近のものって修理不能なことも多いよなと思いながら見終わって、ふとなんとなく捨てずにおいた無線LANルーターを思い出した。あれも捨てる前にもう一回バラして中を見る位やってもいいか。
・ちょっとバラしてみる。ACアダプタのプラグがちょっと特殊で、なかなか見つからなかったけど、こちらも捨てずにとっておいたのを発見する。試しにつないでみたけど、LEDが細かく点滅するだけで全く動かない。リセットスイッチを押しても何も変わらない。やはり駄目かなと思って、ふとこのLEDの点滅ってなんか変じゃないかと気づく。PowerLEDまでが激しく点滅するというのはおかしいだろう。まさかねと思って電源電圧を測ると+5V程度。このACアダプタって+5Vだったっけ?と見直すと+12Vと書いてある。ひょっとしてACアダプタが壊れたってだけ?
・+12VのACアダプタは作業部屋に転がっている。コネクタの形状を一般的なものに交換してみよう。幸い端子のピッチと配置は秋月で買っておいたライトアングルと同じ。ちょっと+側の端子が大きいので、これはニッパーでカットして挿入。後でハンダをおごっておけば良いだろう。
・変更したものとACアダプタをつないでLANケーブルもつないで電源ON。おっ、ちゃんとLEDが連続点灯・・そしてLAN側のLED,続いてWirelessのLEDも点灯。これはうまくいったか。スマホで見ると、見慣れたルータのIDが出ている。選択したら冷静につながった。もちろん、ちゃんとネットにつながっている。本体は壊れていなかったのだ。捨てないで良かった。

10月3日 きのえ さる:木曽 五宮神社花馬祭り
・「ごのみやじんじゃ」と読むらしい。花馬祭りと、流鏑馬は一回生でみたいと思っているのだけど、なかなか機会がない。
・さて、続いてUSBだな。ある程度の量のデータ転送で手軽なのはバルク転送で、バルク転送を手軽にできるのはなんといってもCDC、まぁ平たく言えばUSB-UART。別にUARTだからといって数百kbpsだなんていうのにこだわることはなくて、どんどんデータを吐き出してやれば、通常のシリアルポートではありえないような速度でデータを送ることができることは言うまでもない。ハンドシェーク用信号の入出力もあるので、これもうまく使ってやれば簡単なデジタル入出力もできて、なかなかな便利ではある。
・ところが、例によってXilinxは痒いところには手が届かない。Linuxを動かしてUSBのターゲットデバイスとして動作させるのはあまりにも大げさだ。ベアメタルなアプリケーション例をなんとか見つけたけど今回使っているデバイスで使えるのかな?とりあえずソースコードを読んでみるか。

10月2日 みつのと ひつし:福井 佐佳枝廼社祭
・「さかえのやしろ」と読むらしい。
・さて、昨日の続きで、レイヤを増やす。とりあえず8枚のレイヤを重ねてみる。このVideoMixer、面白い作りになっていて、レイヤごとにAXI4バスが出力されている。つまりは、このAXI4バスの先をバラバラにしてやれば、たとえばあるレイヤはメモリ上のデータ、あるレイヤはVerilogなどで書いたパターンジェネレータ・・・なんていう具合に、ビデオデータをあちこちからかき集めることが簡単にできるわけだ。今回は全部メモリ上に持ってくるつもりなので、これらのAXI4バスをまとめて1つにしてCPUから出ているバスに接続してやる。これもコンポーネントが用意されているので難しくはない。あとはVideoMixerのレジスタをゴニョゴニョとしてやれば良いわけだ。
・とりあえず書いて動かしてみる。ビルドは一発で通った。さて、RUN・・・おっ、予定通りのストライプが画面に8個。パターンは全部違うので、ちゃんと別々のところから取り込んでいることは間違いない。うまくいったようだ。


10月1日 みつのえ うm:唐津春日神社祭
・さて、昨日の続き。なんで真っ黒なんだろう。と、プログラムを眺め直しかけて気がついた。バッファの初期化ルーチンを呼んでいない。ただ、このままだと例によってキャッシュの問題がでてくるな。ときにキャッシュ制御はどうやるんだろうとこれまた検索検索してやっと分かった。自動生成されるライブラリの中にちゃんとある。include/xil_cache.hで、これを眺めると、Xil_DCacheFlushという、いかにもそれらしいものがある。まぁキャッシュをディセーブルしてから書き込むというのでも良いのだろうけど、ここは簡単に、バッファ領域を初期化して、フラッシュする方法でも良いだろう。
・とりえあず、これを入れ込んで動かしてみる。と、おっ、うまくいったじゃないか。とりあえずVideo Mixerを最小構成で動かすことはできた。次はレイヤ数を増やす算段だな。

前月 次月
エース