(toppers-users 3155) Re: Microblaze依存部のコード不具合

Shinya Honda honda @ ertl.jp
2010年 4月 6日 (火) 19:01:28 JST


山下さん

名古屋大学の本田です.

ご指摘ありがとうございます.

ご指摘いただいた問題ともう一点スタック関係の修正を行ったMicrobalze 依存
部及び各簡易パッケージを公開しました.

SD1800A_DSP 簡易パッケージ
  asp_sd1800a_dsp_gcc-20100405.tar.gz
SUZUME 簡易パッケージ
  asp_suzume_gcc-20100405.tar.gz
Microblze個別パッケージ
  asp_arch_microblaze_gcc-1.3.3.tar.gz

修正点は次の通りです.

・TOPPERS_ISTKPT で,int型のポインタでスタック領域を確保していた問題を
  修正.char_t型のポインタへ修正.

・(toppers-users 3123)で指摘された,dispatcher_2:のアイドルループを抜
  ける際に,割込みを禁止していない問題を修正.


申し訳ないのですが,こちらでは現状コンパイル環境までしかないため,コンパ
イルが通ることは確認しましたが,動作確認をしておりません.修正内容の確認
と動作確認をしていただければ幸いです.

以上,よろしくお願いします.


(2010/03/29 12:10), Yoshinori Yamashita wrote:
> 山下と申します。
> 
> 不具合報告先の情報を見つけられなかったので、こちらに投稿させて
> いただきます。
> 
> 既知かもしれませんが、ASPカーネルMicroblaze依存部(Ver.1.3.2)の
> 不具合報告です。
> 
> prc_support.S: dispacher_2ループ内の割り込み禁止処理で、本来なら
> 
>   ~MSR_IE  (bit反転したパターン)
> 
> とandを取るべきところで、反転処理(~)が抜けています。
> このため、
>  ・dispacher_2ループ内は常に割り込み許可状態でループ
>  ・MSRのIEビット以外が全てクリアされる
> 
> という状態になり、GPIO割り込みを多用している環境ではリセットや
> 未登録例外が発生します。
> 
> sampleプログラムは動作するので、dispacherにたどり着くまでに3日
> かかりました。
> 
> 以上、ご報告まで。
> 
>