Thread 中讨论的其他器件:controlSUITE、 C2000WARE
工具/软件:Code Composer Studio
您好!
我希望使用 fastRTS 加快项目中的一些浮点计算。 首先、我尝试通过使用 controlSUITE 提供的示例来学习如何使用它。
示例名称是"28335_fastRTS"、位于"C:\ti\controlSUITE\libs\math\FPUfastRTS\V100\examples_ccsv4\2833x_fastRTS"。
我遵循了文档"C28x 浮点单元 fastRTS 库"(SPRCA75):
(1)在 build---c2000 link--file search path 中-- rts2800_fpu32.lib 和 rts2800_fpu32_fast_imple.lib 都已存在。
(2)按优先顺序搜索库和重新读取库已勾选。 另一个没有被勾选。
(3)按照链接顺序、它是28235_IQmath_Ink。cmd (不知道为什么是28235?)、rts2800_Fpu_fast_implement 和 rts2800_fpu32.lib。
I 编译工程时、编译日志如下所示。
****为项目28335_fastRTS 构建配置调试****
"C:\\ti\\ccsv8\\utils\\bin\\gmake"-k all
编译文件:"c:/ti/controlSUITE/libs/math/FPUfastRTS/V100/examples_ccsv4/source/CodeStartBranch.asm
调用:C2000编译器
"c:/ti/ccsv8/tools/compiler/ti-cgt-c2000_18.1.3.LTS/bin/cl2000 "--silicon_version=28 -g -define=_debug -define=larg_model --include_path="C:/ti/ccsv8/tools/compiler/ti-cgt-c2000_18.1.3.LTS/include /ti/controlSUITE/libs/math/FPUfastRTS/V100/examples_ccsv4/source/CodeStartBranch.asm --include_path="/packages/ti/xdais --include_path="C:/ti/controlSUITE/libs/math/FPUfastRTS/V100/include --use_path="C:--quiet --diag_dwarning=225 --optimize_with_debug --large_memory_model --include_support_preproc_use_output-code.come_use_code.come_use_use_use_code.compruategrand_dive-proc-ase-use_use_use_use_suppuse_code.c -code.c -code.c -code.c -code.c -code.come_
完工:"c:/ti/controlSUITE/libs/math/FPUfastRTS/V100/examples_ccsv4/source/CodeStartBranch.asm
编译文件:"c:/ti/controlSUITE/libs/math/FPUfastRTS/V100/examples_ccsv4/source/fastRTS_sample.c
调用:C2000编译器
"c:/ti/ccsv8/tools/compiler/ti-cgt-c2000_18.1.3.LTS/bin/cl2000 "--silicon_version=28 -g -define=_debug -define=larg_model --include_path="C:/ti/ccsv8/tools/compiler/ti-cgt-c2000_18.1.3.LTS/include /ti/controlSUITE/libs/math/FPUfastRTS/V100/examples_ccsv4/source/fastRTS_sample.c --include_path="/packages/ti/xdais --include_path="C:/ti/controlSUITE/libs/math/FPUfastRTS/V100/include --quiet --diag_warning=225 --optimize_with_debug --large_memory_model --include_support_ase_pred_use_output=use_ase-fategrus_us_use_output-"--ategrus_us_us_use_output-"--ategrus_us_us_proc-ase_us_us_us_use_output=us_us_use_use_output-output-cn
完工:"c:/ti/controlSUITE/libs/math/FPUfastRTS/V100/examples_ccsv4/source/fastRTS_sample.c
构建目标:"28335_fastrts.out"
调用:C2000链接器
"c:/ti/ccsv8/tools/compiler/ti-cgt-c2000_18.1.3.LTS/bin/cl2000 /ti/ccsv8/tools/compiler/ti-cgt-c2000_18.1.3.LTS/lib /ti/controlSUITE/libs/math/FPUfastRTS/V100/examples_ccsv4/2833x_fastRTS "--silicon_version=28 -g -define=_debug -define=large_model --quiet --diag_warning=225 --optimize_with_debug --large_memory_model --unified_memory --float_support=fpu32 -asm_listing-out_output_all_syms -status-from_ram_infote_status-"-r32m /ti/ccsv8/tools/compiler/ti-cgt-c2000_18.1.3.LTS/include -ine-from_infot_infot_infot_infot_code"-r32m -r_code.rts"-r_code.tex-r_code.tex-r32"/ti/controlSUITE/libs/math/FPUfastRTS/V100/lib -r_infot_infot_infot_infot_infot_code.tex-r_infot_infot_infot_infot_infot_code.tex-r_code.tex-rts.ip_infot_code"-r32"-r_code.ts.r_infot_infot_infot_infot_infot_infot_infot_code./ti/controlSUITE/libs/math/FPUfastRTS/V100/examples_ccsv4/cmd/28335_fastRTS_lnk.cmd
警告:指定了"_c_int00"以外的入口点符号:"code_start"
已完成构建目标:"28335_fastrts.out"
****构建完成****
映射文件显示如下。
.text 0 00009000 0000030d
00009000 00000134 fastrts_sample.obj (.text)
00009134 00000056 rts2800_fpu32.lib:boot28.asm.obj (.text)
0000918a 0000004a rts2800_fpu32_fast_f늹 훺.lib:atan_F32.obj (.text)
000091d4 00000034:Cos_F32.obj (.text)
00009208 00000034:Sin_F32.obj (.text)
0000923c 00000029 rts2800_fpu32.lib:exit.c.obj (.text)
00009265 00000024:cpy_tbl.c.obj (.text)
00009289 00000021 rts2800_fpu32_fast_finc补.lib:sqrt_F32.obj (.text)
000092aa 0000001d rts2800_fpu32.lib:memcpy.c.obj (.text)
000092c7 00000019:args_main.c.obj (.text)
000092e0 00000019 rts2800_fpu32_fast_补 遗.lib:div_F32.obj (.text)
000092f9 00000009 rts2800_fpu32.lib:_lock.c.obj (.text)
00009302 00000008 CodeStartBranch.obj (.text)
0000930a 00000002 rts2800_fpu32.lib:pre_init.c.obj (.text)
0000930c 00000001:startup.c.obj (.text)
根据上面提到的文档、这个.map 意味着它仍然使用正常的 RTS、而不是 fastRTS、因为 rts2800_fpu32.lib 出现在第一个。 为什么会发生这种情况、因为我没有更改代码中的任何内容、并按照文档中的说明更改设置。 实际上、我不必更改这些设置、因为它们已经与文档中所述的相同。
为什么它仍在使用正常 RTS?
我将 CCS8.2与 TI F28335实验套件搭配使用。
谢谢、
