AlteraさんAlteraさん、どうなってるんでつか?
最近floodgateが盛り上がってるようで。とてもすばらしい試みだと思います。開発者の方々に大感謝です。
で、私としてもやってみたいのですが、何しろまだ自動対戦ができていない状況で^^; あらかじめ配列で与えた局面たちへのregressionと、コンソールから指し手を手入力して盤面を進める、& 手を考える、というのしかまだ実装してません。そこまでできたところで将棋のデバッグに戻り、FPGAの環境立ち上げの方は後まわしにしてたんですが。floodgateが来たのでこれは是非やりたいと思い、通信の方も少し優先度を上げてやりはじめました。
以前からFPGAとホストの通信形態として 1) hostfs でパイプに読み書き 2) USB 3) Ethernet の3つを検討していたのですが、1)は実験したところ動かないことが判明。2)もいろいろボードの構成を調べたところ、config用途以外には使えないことがわかりました。もともとEtherが本線だろうなとは思っていたので、これを検討しだしたのですが。
Etherの細部の仕様など当然知らなかったので、例によってまた本等読んで調べて。MACコアはAlteraサポートに問い合わせ、Triple Speed Ethernet (TSE)を選択。あと、ボードのスケマを目を皿にして眺め、TSEとFPGAピンの結線を決めて。
それでまあいちおうFPGAを設計してみました。あ、まだ将棋エンジンは入れず、Nios + MACだけ入れて、Etherを動かすためだけの実験用。で、コンパイルしてみたのですが、次のようなエラーが。(原文は英語)
rx_controlはピン位置AB4にアサインできません。同じバンクの他のピンのVREFとして
使用しています。
ボードにMarvell 88E1111というEther PHYチップが載っていて、それとFPGAがRGMII でつながっています。RGMIIの仕様ではピンは1.5V HSTLで、これにはVREFがいるのですが、Cyc3ではI/Oのピン位置ごとにVREFのピンが決まっています。で、このrx_controlピンは、他のEtherのピンがVREFとして使うピンにアサインされている。
…いや、これ、ボードの設計ミスのような気がするんですが--; いちおうAlteraに問い合わせ中ですが。あれ、何か勘違いしてるのかなぁ。でもやっぱり…
MIIでも別にできるならいいんですけど、このボード(DK-DEV-3C120N)、MIIの信号つながってないんですよね。RGMII決め打ち、みたいで。逃げようがない。
実はこれだけでなく、別件でソフトにもバグがあって。Alteraから提供される環境をそのまま使ったのではコンパイルエラーになってしまう、というのもありました。やはりTSE周り。まあこれは、#define追加で簡単に直る程度のものだったのでいちおう使えてるのですが。
そんなこんなで、或る寺さんにはいまいち不安を覚えている今日この頃です。NiosII + 将棋エンジン、の構成で今までやってたぶんにはバグはなかったんですが。TSEとかNiosとか、コンポーネントによって出来不出来があるんでしょうかね。Niosは力入れてるけど、TSEはおざなり、みたいな。
Cyc3が発表されたのが、昨年夏くらい?このキットができたのは去年11月のようです。(中のファイルをls -lすると。)ちょっと早く買いすぎたのか…まだバグの取れてない「α版」をつかまされた?という気もしてます。でも、開発キットってupdateとかあるんでしょうか。
私の不安が的中してると、このボードではどう逆立ちしても通信できない、ということになってしまうので、またまた前途多難な状況です。
« アッラーの御名において、Stand-Patは気持ち悪い | トップページ | なんでまた『オープンソースで学ぶバイオインフォマティクスほしい』のか? »
「将棋プロセサ」カテゴリの記事
- ボンクラーズの開発過程について書いた記事が掲載されました(2019.03.07)
- 「浅い評価値を深い評価値に近づける学習法」誕生の背景(2016.10.06)
- 塚田九段の対ボンクラーズ練習棋譜を公開します(2013.09.07)
- Puella α ソース公開(2013.08.28)
- クラスタ並列の解説記事を公開します(2013.08.22)
« アッラーの御名において、Stand-Patは気持ち悪い | トップページ | なんでまた『オープンソースで学ぶバイオインフォマティクスほしい』のか? »
コメント