[Suzaku:02055] Re: SZ410 SPIの一部レジスタが読めない
mio
email@hidden
2010年 12月 14日 (火) 12:20:08 JST
中島です。
> 佐藤です。
>
> 確認ありがとうございます。
> 手元のソースを修正して使用させていただきます。
>
> 質問ですが、
>
> この修正は次期リリースで反映されるのでしょうか?
> 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 メーリングリストの案内