[Suzaku:01161] Re: SUZAKU-VでPLBペリフェラルの作り方(レジスタの使い方)

kawaoka email@hidden
2008年 4月 30日 (水) 20:41:32 JST


川岡と申します。

私も「レジスタの書き込み読み込み」あたりが怪しいかなと思いました。

切り分けの方法とし、hermitの「frob」という機能を使ってみてはいかがでしょうか。
ターミナルから直接手入力で「レジスタの書き込み読み込み」ができます。
IPコアは新しく作った構成として、BBootが起動するよう設定してください。
JP1をショートして電源を投入し、そうするとhermitのプロンプトが出てきます。
そこで、
hermit> frob
hermit:frob> poke 0xFF0FD200 0x55555555
hermit:frob> poke 0xFF0FD200 0xaaaaaaaa
と入力してみてたりしてください。LEDに何か変化があるかもしれません。
(ちなみに > helpと入力するとhermitのヘルプが見れます)

もし、hermitが起動しなかい場合、sレコードでhermitを書き直してみてください。
sレコードの使い方はマニュアルを参照ください。

高橋 優樹 さんは書きました:
> 情報通信機構の高橋と申します。お世話になっております。
> 
> SZ410のスターターキットを使って初等的なPLBインターフェースをCreate and
> Import Peripheral(CIP) Wizardから作ろうとしているのですが上手くいきませ
> ん。何が問題なのかご指摘いただければ幸いです。
> 基本的には、スターターキットガイドFPGA開発編(ver 2.3.1)の11章の内容に沿
> って、それをさらに簡略化し、単純にソフトウェアからLEDに書き込みだけがで
> きるようにしようとしました。
> 以下試した具体的な工程を記述します。ちなみに、開発環境はWinXPSP2+ISE9.2i
> /EDK9.2iです。
> 
> 1,SUZAKUのデフォルトのプロジェクトsz410-20080327からスタートしました。
> 
> 2,CIPウィザードでPLB Peripheralコアのテンプレートを作成しました。その際、
> IPIF serviceの設定でsoftware registerのみ有効にしました(割り込み制御は設
> けませんでした)。そして、レジスタの数は一つとしました。それ以外はスター
> ターキットガイドと同様です。なお、作ったコアの名前をcustum_ipとします。
> 
> 3,できたテンプレートを編集しました。まず、新規にle_core.vhd(スターター
> キットガイドでのsil00u_coreに相当)を作りました。この回路では、単に4ビッ
> トの入力を受けて4ビットの出力にそのまま繋いでいるだけです。つぎに、user_
> locig.vhd内でまず4ビットの出力nLEをつくり、先程つくったle_coreをよびだし
> て、その入力にslv_reg0(4 to 7)をつなぎ、その出力をnLEにつなぎました。最
> 後に、最上位のcustum_ip.vhd内で新たに4ビットの外部出力nLEを設け、user_
> logicを呼び出している箇所でuser_logicのnLEをcustum_ipのnLEに繋ぎました。
> 基本的に、slv_reg0(4 to 7)の内容を、user_logicとle_coreを経由して、
> custum_ipの外部出力nLEにルーティングしているだけになっていると思います。
> 
> 4,custum_ipのmpdファイルとpaoファイルをガイドを参考にして編集しました。
> この自作コアをプロジェクトに追加し、ucfファイルを編集してnLEをLEDに繋げ
> るようにしました。また、ipのメモリマップは0xFF0FD200から512バイトとしま
> した。
> 
> 5,ハードウェアを作り、次にライブラリとドライバを作ったところdriverフォル
> ダ以下にcustum_ip用のサンプルコードができたのでこれをアプリケーションと
> して登録し、BBootは起動しないようにしました。サンプルコードはipのベース
> アドレスに対して読み書きしているだけのようです。
> 
> 6,bitファイルをつくり、iMpactで書き込みをしました。アプリケーションは起
> 動し、端末上にメッセージは表示されるのですが、肝心のLEDは光りません。
> 
> 以上です。レジスタの値ではなく、ロジックリテラルを繋げばLEDは光るのでル
> ーティング自体は間違っていないと思います。やはり、レジスタの書き込み読み
> 込みが間違っているのだと思います。
> なにぶん、FPGAをいじりだして日が浅く勘違いしている点もあるかもしません。
> また、説明も長くなり、分かりにくいかもしませんが、何卒宜しくお願いいたし
> ます。



suzaku メーリングリストの案内