e2studio+JLINKでRX72MのDoublePrecisionFP命令のステップ実行時にエラーが出ます

これは、SystemGeneratorで作成したFreeRTOSのプロジェクトのリセット直後の部分です。冒頭0xffc0ba73の位置でステップ実行(アセンブリステップ)を行うと、

次のようなダイアログが出現して、e2studioの応答がなくなります。

この件について、SEGGER社に問い合わせたところ、このエラーはe2studioが出しているよとのことでした。

この問題はルネサスのツールでは起こらないのでしょうか?

ステップ実行ではなく、リセット直後にRUNすれば、回避はできていますが、

同じオペコードの命令が出てきたら止まるのかと思い、コンパイラオプションでDoublePrecisionFPを使わない設定にしてデバッグしています。

サポートに連絡してみても良いものでしょうか。フリーで使わせていただいているe2studioに、他社のJLINKデバッガでの問題となると、

ルネサスさんの手を煩わせるのも気が引けてしまうのですが。症状を解消する最適なルートを教えて下さい。

  • くまくま さん、こんにちは。NoMaYと申します。

    SEGGER J-Link RX Error
    Unknown instruction @0xFFC0BA73, Opcode: FD

     
    これはe2 studioのe2-server-gdb.exeが出しているエラーですね。お使いのe2 studioのバージョンは何でしょうか?e2 studioの最新版(2021-10)でも発生するなら、私は、これはルネサスさんに報告した方が良い案件、と思います。(J-Link対応は、Cortex-MユーザさんがCortex-MコアからRXコアへ移行する際の敷居を下げる役割もあるだろうし、と思うのです。)

    技術的な話になりますけど、いわゆるデバッガでのステップ実行の実装方法の著名なもののひとつに、ステップ実行する際にステップ実行する命令を解析する(およびCPUの内部状態も把握する)ことが必要になる手法があるのですが、その際のエラーではないかと思うのです。

    発生範囲は以下の2つの可能性が考えられます。(ソフトウェアマニュアルの命令セットを詳細にはチェックしていません)

    (1) RXv3の倍精度浮動小数点演算命令のステップ実行が全滅
    (2) RXv3の数種類?の倍精度浮動小数点演算命令がステップ実行エラーになる

    また、発生箇所の補足ですが、エラーメッセージボックスをポップアップさせたのがe2-server-gdb.exeだとしても、e2-server-gdb.exeが呼び出しているSEGGER J-Link DLLがエラーを返していたため、という可能性も無くはないかも知れません。

    ちなみに、RX72N Envition Kitというボードのon-board E2 Liteエミュレータで当該命令を命令単位ステップ実行してみましたけど問題無くステップ実行出来ました。

    追伸

    ちょっとググってみましたが、SystemGeneratorというのはXilinxですかね、、、

  • >ちょっとググってみましたが、SystemGeneratorというのはXilinxですかね、、、

    失礼しました。プロジェクトジェネレータのことです(汗

    プロジェクト作成時に一瞬見ただけなので文言がうろ覚えでした。

    使用しているe2Studioのバージョンは2021-10で、コンパイラCC-RXは3.03.00の評価期間中です。

    内部の動作についての見解、ありがとうございました。

    エラーメッセージから見ると0xFDで始まる命令は全滅しそうな印象ですが、FDで始まる命令はざっと見ただけでもたくさんありますね・・・

    FTOD

    ITOD

    MVFDC

    MVTDC

    UTOD

    DMOV

    SAVE

    RSTR

    TST

    STZ

    STNZ

    SHLL

    ・・・・・snip

    E2-Liteで問題ないとなるとやはりJLINK固有の問題かと思いますが、私の手元にはJLINKしか無いのでなんとか直ってほしいところです。

    CC-RXを購入したらもう少し整理して報告してみようと思います。

    ありがとうございました。