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.

[参考译文] TMS320F28035:F28035 CLA RAM

Guru**** 2394305 points


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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1364120/tms320f28035-f28035-cla-ram

器件型号:TMS320F28035

您好、TI 专家!

我正在处理一个使用 F28035 CLA 的项目。

从其产品说明书中可以清楚地看到、

(1)如果 MMEMCFG、0x008800至0x008C00是 CLA 数据 RAM 0。 RAM0E 设置为 1

(2) 如果 MMEMCFG、0x008C00至0x009000为 CLA 数据 RAM1。 RAM1E 设置为 1

(3)如果是 MMEMCFG、0x009000至0x00A000为 CLA 程序 RAM。 PROGE 设置为 1

不过、CLA 这样做会占用大量 RAM、而 CPU 也可以使用这些 RAM。 如果我的 CLA 程序不需要那么多数据和程序 RAM、请将以下内容写入.cmd 文件以减小 CLA Data ram0和1以及 CLA Prog RAM 的大小?

CLARAMM0    :origin = 0x009000、length = 0x000400 (之前为0x008800 至0x008C00)

CLARAMM0    :origin = 0x009400、length = 0x000400 (以前为0x008C00至0x009000)

CLAPROG    :origin = 0x009800、length = 0x000800 (之前为0x009000 至0x00A000)

因此、我可以将0x008800至0x008FFF 用于 CPU。

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

    伊凡、您好!

    是的、你可以通过链接器 cmd 文件为 CLA 分配更少的空间。  我建议不要重写原始地址和/或长度量、而是将两个存储器拆分为两个区域、占用相同的起始和结束位置、以免分配任何错误。 例如:

    之前

    • CLARAM0        :origin = 0x008800,length = 0x000400 //(范围0x00008800-0x00008C00)

    之后

    • ram0_cla: origin = 0x008800,length =  0x000200 //使用您所需要的任何内容
    • RAM0_CPU: origin = 0x008A00、length =  0x000200

    然后在文件的 SECTIONS 部分中,您可以 用 ram0_cla 替换分配给 CLARAM0的所有存储器 。 这将为 C28x 编译存储器的 ram0_CPU 部分、并且  在设置 MEMCFG 寄存器字段时不会将控制权移交给 CLA。 我建议参阅链接器 cmd 文件页面、链接 在此处、这些页面解释了链接 器 cmd 文件的每个部分的含义。 这应该有助于对其进行更改。

    此致、

    德拉尼