(toppers-users 2525) Re: Tinet でバスエラーが発生 (解決)

Takeshi Hori horit @ hokkaido-iri.go.jp
2006年 9月 11日 (月) 15:33:12 JST


システムクリエイト 高橋様、toppers-users メンバの皆様

北海道立工業試験場の堀です。

> 前略、高橋@システムクリエイトです。
> 
> 皆さんのご助言のおかげでようやく解決しました。
> 
> 原因は、SH7616 のイーサネットコントローラは、送受信バッファを16Byteアライメントに
> しなければいけないのに、北斗電子のドライバが対応していなかったためでした。

# このドライバの原型は、私が作ったものなのですが...

バッファの16バイトアライメントが必要なのはSDRAMを接続した場合で、SRAMの
場合はロングワードアライメントでよいと思います(SH7616ハードウェアマニュ
アル 10-33参照) 。HSB7616ITはSRAMだった筈。

ロングワードアライメントは考慮して実装したつもりでしたが、もう一度見直し
てみます。(現在のTINETとSH NICの組み合わせでは、4バイトのアライメントも
難しいので、かなり汚い実装になっています)

--
北海道立工業試験場 情報システム部 情報通信科
堀 武司 / horit @ hokkaido-iri.go.jp