ホーム フォーラム Texas Instruments マイコン C2000 TMUの平方根演算について

このトピックには2件の返信が含まれ、2人の参加者がいます。2 年、 6 ヶ月前 guest さんが最後の更新を行いました。

3件の投稿を表示中 - 1 - 3件目 (全3件中)
  • 投稿者
    投稿
  • #18404 返信

    guest

    TMUの平方根演算について

    F28065のTMUの評価を行っているのですが、平方根演算を行うと、演算結果=入力値となってしまいます。
    どのような原因が考えられるかアドバイスをいただけたらと思います。

    f_data_b = __sqrt(f_data_a);
    →  f_data_b = f_data_a となってしまいます。

    コンパイル結果は以下の通りです。
    ——————————————————-
    MOVW      DP,#_f_data_a         ; [CPU_U]
    MOV32     R0H,@_f_data_a        ; [CPU_] |394|
    SQRTF32   R0H,R0H               ; [CPU_] |394|
    NOP       ; [CPU_]
    NOP       ; [CPU_]
    NOP       ; [CPU_]
    NOP       ; [CPU_]
    MOV32     @_f_data_b,R0H        ; [CPU_] |394|
    ——————————————————–
    気になる点としては、SQRTF32 実行時、入力と出力に同一レジスタが指定されていますが問題ないのでしょうか?
    また、古いバージョンのCCSを使用しているのですが、関係ありますか?

    CCSバージョン:6.2.0.00050
    Compilerバージョン:TI v15.12.3.LTS

    #18406 解決済み提案を取消 | 返信
    umamiti
    umamiti
    従業員

    お問い合わせいただきありがとうございます。

    F28065のTMUの評価を行っているのですが、平方根演算を行うと、演算結果=入力値となってしまいます。
    どのような原因が考えられるかアドバイスをいただけたらと思います。

    F28065にはTMUは内蔵されておりませんので、以下のURLよりダウンロード可能な「C2000WARE」内のサンプルコードをご参考に動作をご確認頂けますでしょうか。

    URL:https://www.ti.com/tool/ja-jp/C2000WARE

    PCへインストール後、下記のパスにCCSへインポート可能なプロジェクトが確認できるかと存じます。
    C:\ti\c2000\C2000Ware_4_01_00_00\libraries\math\FPUfastRTS\c28\examples\isqrt_f32
    C:\ti\c2000\C2000Ware_4_01_00_00\libraries\dsp\FPU\c28\examples\math\fastsqrt_f32
    C:\ti\c2000\C2000Ware_4_01_00_00\device_support\f2806x\examples\cla\sqrt

    また、古いバージョンのCCSを使用しているのですが、関係ありますか?

    CCSバージョン:6.2.0.00050
    Compilerバージョン:TI v15.12.3.LTS

    バージョンによる関係性については現在の情報のみではコメント出来かねますが、弊社としましても可能であれば比較的新しいバージョンをご利用いただくことを推奨いたします。

    例)
    CCS:v10.4.0:https://software-dl.ti.com/ccs/esd/documents/ccs_downloads.html#code-composer-studio-version-10-downloads
    Compiler:上記CCSに付属のバージョン

    以上、よろしくお願いいたします。

    #18407 返信

    guest

    ご回答ありがとうございます。
    F28065にはTMU非搭載でしたね。失礼しました。
    他の機種(F28075など)で試したいと思います。

3件の投稿を表示中 - 1 - 3件目 (全3件中)