[Suzaku:02056] Re: SZ410 SPIの一部レジスタが読めない

email@hidden
2010年 12月 16日 (木) 18:55:21 JST


佐藤です。

> 以下のような感じで新たにバージョンレジスタを実装でもよいでしょうか?
> (きちんと考えていないので、少々変わるかも知れませんが・・)

> when x"fc" =>
> IP2Bus_Data(0 to C_SLV_DWIDTH-1) <= x"0000101a";

ありがとうございます。
xps_spiとの見分けがつけば良いです。

バージョンレジスタの位置ですが、
xps_spiでゼロが読めるところで、バスエラーが出ないところが良いです。
EDKのペリフェラルはちょっと違うアドレスにアクセスしただけですぐバスエラーが
出るので・・・。

よろしくお願いします。


email@hidden wrote on 2010/12/14 12:20:08:

> 中島です。

> > 佐藤です。
> >
> > 確認ありがとうございます。
> > 手元のソースを修正して使用させていただきます。
> >
> > 質問ですが、
> >
> > この修正は次期リリースで反映されるのでしょうか?
> > SUZAKU-Vを購入のたびに手元で変更を入れるとなると、
> > 修正漏れの可能性が出てあまり良くない状態になるので。
> >
> 早めに反映したものをリリースしようと思います。

> > また、偶然ですが、このレジスタの動作が違うおかげで、
> > Xilinx標準のxps_spiとSUZAKU-VのSPIがソフトウェア的に区別出来ています。
> > xps_spiとSUZAKU-VのSPIは機能が微妙に違うようなので、
> 一応、ソフトウェアからはxps_spiと同等に扱えるように設計していたつもりで
> した・・・。
> 指摘していただけて大変ありがたいです。

> > 修正の際に単純にすべて有効にするのではなくて、
> > 実装されている機能に合った修正をしていただけると幸いです。

> 以下のような感じで新たにバージョンレジスタを実装でもよいでしょうか?
> (きちんと考えていないので、少々変わるかも知れませんが・・)

> when x"fc" =>
> IP2Bus_Data(0 to C_SLV_DWIDTH-1) <= x"0000101a";
>
> >
> >
> > 以上、よろしくお願いいたします。
> >
> >
> > email@hidden wrote on 2010/12/14 10:53:39:
> >
> >> 中島です。
> >
> >>> 佐藤と申します。
> >>> 初めて投稿させていただきます。
> >>>
> >>> SUZAKU-V   SZ410-U00 を使用しています。
> >>>
> >>>         sz410-20090427
> >>>
> >>> SPIのレジスタを読みだそうとしているのですが、
> >>> ゼロしか読み出せません。
> >>>
> >>> VHDLのソースを見たところ読出し値がゼロ埋めされてしまっているように見
え
> > ま
> >>> す。
> >>>
> >>> sz410-20090427\pcores\xps_spi_sz410_v1_00_a\hdl\vhdl\user_logic.vhd
> >>>
> >>> 261             when x"60" =>
> >>> 262               IP2Bus_Data(C_SLV_DWIDTH-1)<= loop_mode;
> >>> 263               IP2Bus_Data(C_SLV_DWIDTH-2)<= spe;
> >>> 264               IP2Bus_Data(C_SLV_DWIDTH-3)<= master;
> >>> 265               IP2Bus_Data(C_SLV_DWIDTH-4)<= cpol;
> >>> 266               IP2Bus_Data(C_SLV_DWIDTH-5)<= cpha;
> >>> 267               IP2Bus_Data(C_SLV_DWIDTH-6)<= tx_fifo_reset;
> >>> 268               IP2Bus_Data(C_SLV_DWIDTH-7)<= rx_fifo_reset;
> >>> 269               IP2Bus_Data(C_SLV_DWIDTH-8)<= man_ssaen ;
> >>> 270               IP2Bus_Data(C_SLV_DWIDTH-9)<= mst_tranen;
> >>> 271               IP2Bus_Data(0 to C_SLV_DWIDTH-1)<= (others =>
'0');
> >>>
> >>>
> >>> 上記271行目の部分です。
> >>> ゼロが読み出されるのはこのせいでしょうか?
> >>>
> >> このせいのようです。
> >> 意図してゼロ埋めしているわけではなく、
> >> バグのようです・・・。
> >
> >>> これは修正しても問題無いのでしょうか?
> >>>
> >>> 271               IP2Bus_Data(0 to C_SLV_DWIDTH-10)<= (others =>
'0');
> >>>
> >>> どなたかご存じの方いらっしゃいましたら教えてください。
> >>> よろしくお願いいたします。
> >>>
> >> 申し訳ないです。。
> >> IPコアが正常動作することにより、おかしなことがおこらないか、
> >> ざっくり動作を確認してみましたが、大丈夫そうです。
> >> 修正していただいて問題ないです。
> >

> _______________________________________________
> suzaku mailing list
> email@hidden
> http://lists.atmark-techno.com/cgi-bin/mailman/listinfo/suzaku




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