This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] RTOS/CC2640R2F:multi_role 示例仅剩10%的 RAM、开箱即用

Guru**** 2562990 points
Other Parts Discussed in Thread: SYSBIOS

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/wireless-connectivity/bluetooth-group/bluetooth/f/bluetooth-forum/587614/rtos-cc2640r2f-multi_role-example-only-10-ram-left-out-of-the-box

器件型号:CC2640R2F
Thread 中讨论的其他器件:SYSBIOS

工具/软件:TI-RTOS

您好!

我已开始基于 multi_role 示例构建我的应用、似乎开箱即用的 SRAM 剩余不足10%。 那么,我现在想了解它的用途是什么?

对堆进行性能评测、似乎需要5KB 以上的用户 SRAM。 为什么这么多?

在的顶部

-射频内核自己的4KB SRAM。

- sysbios.aem3:BIOS.obj (.text:xdc_runtime_HeapMin_alloc__E),1668-B

-各种 BLE 统计信息、> 3KB
                 200000c8   00000348    multi.obj (.data:$O8$)
                 20000410   00000240    RFCC26XX_singlemode.obj (.data:$O2$)
                 20000650   000001d4    devinfoservice.obj (.data:$O6$$)
                 20000824   00000124    simple_gatt_profile.obj (.data:$O9$$)
                 20000948   00000114    drivers_cc26x0r2.aem3:PowerCC26XX.oem3 (.data:PowerCC26XX_MODULE)
                 20000a5c   000000dc    multi_role_cc2640r2lp_stack_library.lib:gapbondmgr.obj (.data:$O16$$)
                 20000b38   000000dc    iCall.obj (.data:$O3$$)
                 20000c14   00000090    cc26xx_profiles_pcxx.a:gapgattserver.o (.data)

cc26xx_app.cmd 中定义的 RESERVE_RAM_SIZE (0x0C00 / 3072)用于什么?

我已经对 C-Stack 和任务堆栈进行了性能评测和缩减、但这并没有带来太多...

我现在别无选择,只能使用 swra537中建议的8KB 高速缓存,但我仍然想知道 TI-RTOS 和 TI-BLE 为什么会吃这么多的 RAM?!

谢谢、

此致、

Jerome

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好 Jerome、

    保留的 RAM 用于 ROM 中的 BLE 堆栈库。 请注意、堆大小被视为用户 RAM、因为您可以将其用于其他连接或您自己的应用。

    您可以执行的另一项更改是删除设备信息服务的内容或将其放在闪存中。 这可以节省~ 450字节的 RAM。

    祝你一切顺利