2003年5月アーカイブ

 と言っても猫の話。年に1度の3種混合予防接種を受けに動物病院へ連れていく。大きめの洗濯ネットに入れ、さらにカゴに入れていざ車の中へ。逃げられたら不味いので心を鬼にして<font color=FireBrick size=+1>どんなに鳴いても出さん!</font>と決めたのだがいきなり大鳴き<b>(@_@;)</b> <font color=DarkBlue>まぁ車の中なら</font>とネットから出す<font color=PowderBlue>まだものの1分も経ってないよ(-_-;)</font> 窓開けなきゃ逃げられはしないんだけど、<font color=FireBrick>ペダルの下に入り込まれるととても危険</font>なので、よい子はマネしないでください<font color=FireBrick>【爆】</font> 10分ほど走って病院に到着。他の動物もいるのでここからはマジで鬼となってネットに入れる。が、さすがは憶病者の我が猫。まるで猫かぶったように大人しくなる<font color=PowderBlue>だから猫だって・・・</font> 予約を入れていたのでさほど待たずに順番。体温と簡単な内診をしていよいよ注射。ここでも大人しい。看護婦さん(?)が<font color=DarkBlue>我慢強いですねぇ</font>とか言ってくれるが、<font color=DarkBlue>単にビビってるだけ</font>です、はい<b>(^^;</b> これはこれでちょっと情けない気もするが、暴れ回られるよりはまぁマシだわ。注射も終わり会計を済ませて車に戻るとまた大鳴き。身の安全を確保するといきなり態度がデカくなるのは飼い主に似たな<b>(^^;</b>


 うまく動いているかと思われてたetherが実はちゃんと動いていなかったという<b>(T_T)</b> しかも前に書いた割り込み以前の問題。受信バッファをキャッシュ可能な空間に確保していたため、ステータスがうまく取得出来ていたかったのでした。

 流れとしては、受信したデータがFIFOを通してバッファに保存され、パケットを受信し終えると受信デスクリプタのOWNビットがクリアされ、ホストであるSH4がそのバッファにアクセス出来るようになる訳ですが、これがなんかの拍子でクリアされなくなり、通信がロックしてしまうと言う現象が発生。

 最初は79c973の設定が何か変なのかと思ってEEPROMやレジスタの内容を一通りチェックしてみたものの、これと言って問題は無さ気。八方塞がりで途方に暮れていた所に<font color=DarkBlue size=+1>キャッシュじゃない?</font>との助言を貰い、SH5のソースをじっくり見直してみたら、この受信デスクリプタのバッファはキャッシュされない領域に確保しているではないですか<b>(@_@;)</b> で、SH3のソースを見てみたら常にキャッシュするような設定で確保している様子。こりゃぁもしかして、と思ってその部分をキャッシュ無しでも確保出来るように修正してみた所<font color=FireBricksize=+1>なんとまぁロックしなくなりましたのよ</font><b>ヽ(^。^)ノ</b> ftpもpingもストレス無く使えるようになったし、今度こそ、<font color=DarkBlue size=+1>今度こそはちゃんと動いているのではないか</font>、と・・・<b>(^^;</b>

 あ、で、ここまで来てわかった事ですが、<font color=FireBrick>前回の割り込み云々の話はさほど重要ではなかったようです【爆】</font>


 いや、無かったものが終わる訳もないんだけど、世間で言う所のゴールデンウィークは終わりました。ま、1日休み入れたからブロンズぐらいにはなったか・・・ ふん!

でもまぁ、それなりに楽しみはしましたよ。恒例となった学生時代の仲間との飲み会は相変わらずのノリ。久々に登場のM寿ちゃんが引いてしまわないかどうかがちと不安ではあったのだけど・・・【爆】 予定していたタケノコ掘りは、少ないながらも予想を上回る収穫だったので、こちらも一安心。田植えの手伝いは・・・ とりあえずは出来るだけの事はやったっていう事で・・・(^^;

 これから夏までが辛いんだよねぇ。連休という連休が無いから。貯まってる代休をうまく消化すればなんとか乗り切れるか?


 原因判明。<font size=+1 color=FireBrick>なんと受信したパケットの処理を2段階割り込みで処理していたという・・・</font><b>(@_@;)</b>
 パケットを受信すると受信割り込みが掛かり、とりあえずバッファにパケットを保存。で、タイマ割り込みが掛かった時点でそのパケットを処理するという仕組みになっておりましたとさ。さらに悪い事に<font size=+1 color=FireBrick>そのタイマ割り込みの優先順位が一番低くなっていたというおまけ付き【爆】</font> そりゃnetinter()呼ばれない訳だわ・・・<b>(T_T)</b> ま、とりあえずこれで前回の悩みが解決された訳で、この辺は残りの作業を続けながら追々調整していくって事でとりあえず終了<b>(-。-;)</b>

 さぁ次はFlashROMブート対応だ・・・<b>(T_T)</b>


カテゴリアーカイブ

月別アーカイブ

  • このサイトで使用されているリソースの著作権は、すべて作成者・撮影者が保有しています。無断での2次利用はご遠慮下さい。