器件型号: AM2634
尊敬的 TI 支持服务:
我正在使用 PRU C 编译器来实现一个简单的 xy2 100 流生成器、我注意到定义常量表、如下所示:
- 是否有方法访问 IMEM 中存储的数据
- 是否有任何其他方法可以访问常量表?
此致、非常感谢您的帮助
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.
器件型号: AM2634
尊敬的 TI 支持服务:
我正在使用 PRU C 编译器来实现一个简单的 xy2 100 流生成器、我注意到定义常量表、如下所示:
此致、非常感谢您的帮助
您好:
可以在 IMEM 中的特定地址定义存储器段、然后使用汇编 JMP 命令跳转到该地址。 (我已经看到,当代码需要跳转到大量函数之一时,这用在时序受限的用例中以节省几个时钟周期,但如果您使用 C 语言编程,我假设您没有这么严格的约束。) 但是、据我所知、使用 IMEM 进行数据存储的方式并不理想。 如前所述、PRU 内核设计为使用 DMEM0、DMEM1 和 SMEM 进行本地数据存储。
有关读取/写入延迟的一般概述、请参阅此常见问题解答。 AM26x 的行为与 AM62x 类似:
【常见问题解答】PRU:如何计算读取和写入延迟?
此致、
Nick
中存储的数据的方法是否有访问 IMEM
不, IMEM 是唯一的指令,而不是数据!!!
是否有任何其他方法可以访问 const 表?
是的、在 DMEM 或 SMEM 中保留 const 表。 (+) LP-AM261:以编程方式在 PRU 上加载 C 应用程序时出现的问题(卡在_TI_decompress_lzss 中)-基于 Arm 的微控制器论坛 — 基于 Arm 的微控制器 — TI E2E 支持论坛 提供了在初始化期间加载.data 段的示例
尊敬的 TI 支持服务:您好!
似乎附件丢失了。
请参阅以下 linker.cmd 文件中的:
你(们)好
我们需要将.rodata 段放在链接器文件中的 DMEM/SMEM 中。
请 检查 以下链接器文件以供参考: 位于主·Texas Instruments/open-PRU·GitHub 上的 open-pru/source/linker_cmd/c_code/am263x/AM263x_PRU0.cmd
此致
Dhaval