RAMパリティエラー発生箇所の特定

Kirinさん

現在、RL78での開発をしています。

単体動作でRAMパリティエラーが発生しています。
オンチップデバッグではRAMパリティエラーが発生しないみたいなのでオンチップデバッグによるチェックができません。

何処でRAMパリティエラーが発生しているか確認できる方法はあるのでしょうか?

RAMの初期化は出来ているはずなのですが・・・
Parents
  • スタッフのチョコです。

    Kirin様の「Re:Re:Re9:RAMパリティエラー発生箇所の特定」にコメントさせていただきます。

    結論として問題はございません。詳細は以下をご参照ください。


    > なぜ、hdwinitでは「MOV [SP+3]\,#0」してないんでしょうか?

    「hdwinit」はユーザが内蔵周辺の初期化を記述したC記述のプログラムです。そのような記述はできません。



    > リセット初期値がRPERDIS=0なので、高頻度でチップが動作しない問題が発生しそうですけど、大丈夫なのかなぁ。

    大丈夫です。基本的に,RET命令ではSP+3番地は読みません。読み出すのはSP,SP+1,SP+2のセーブされたアドレスだけです。

    _stkinitでSP+3に書き込んでいたのは,単にCALL命令ではそこに何も書き込まれないので,そこにあえて書き込むことで,スタック領域をすべてクリアするためのようです。



Reply
  • スタッフのチョコです。

    Kirin様の「Re:Re:Re9:RAMパリティエラー発生箇所の特定」にコメントさせていただきます。

    結論として問題はございません。詳細は以下をご参照ください。


    > なぜ、hdwinitでは「MOV [SP+3]\,#0」してないんでしょうか?

    「hdwinit」はユーザが内蔵周辺の初期化を記述したC記述のプログラムです。そのような記述はできません。



    > リセット初期値がRPERDIS=0なので、高頻度でチップが動作しない問題が発生しそうですけど、大丈夫なのかなぁ。

    大丈夫です。基本的に,RET命令ではSP+3番地は読みません。読み出すのはSP,SP+1,SP+2のセーブされたアドレスだけです。

    _stkinitでSP+3に書き込んでいたのは,単にCALL命令ではそこに何も書き込まれないので,そこにあえて書き込むことで,スタック領域をすべてクリアするためのようです。



Children
No Data