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.

TMDSCNCD28388D: 关于memory的三个疑惑

Part Number: TMDSCNCD28388D

您好:

关于memory我有三个疑惑

1.28388的memory中LS0RAM,M0RAM,D0RAM三者有什么区别么?

2.我可以把cmd文件中的.text,.bss,.stack等段放在GSRAM中么?我不确定这样做会不会出现一些问题

3.我发现cmd文件中一般将程序段和数据段分开存放,我将程序和数据段全部放在LSRAM中会出现隐藏问题么(我用电灯的程序测试了一下发现可以运行但不确定这样做是否存在隐患)

  • 你好,我将在咨询资深工程师后回复您。

  • 你好,

    1.28388的memory中LS0RAM,M0RAM,D0RAM三者有什么区别么?

    此器件上的所有 RAM 都是0等待状态。 我们根据不同初启程序的可访问性、安全功能或 ECC/奇偶校验提供了不同的 RAM 名称.

    LS0RAM 可从 CPU 和 CLA 进行访问、其中 M0和 D0 RAM 仅可从 CPU 进行访问。 LS0和 D0 RAM 可被保护、而 M0 RAM 不安全。 这些详细信息可在器件数据表(Memory Map section)中找到。 

    .我发现cmd文件中一般将程序段和数据段分开存放,我将程序和数据段全部放在LSRAM中会出现隐藏问题么(我用电灯的程序测试了一下发现可以运行但不确定这样做是否存在隐患)

    如果数据和代码被映射到同一个 RAM 块中、如果数据和程序访问同时发生、则可能存在仲裁(取决于程序)。 如果这两个都映射到不同的 RAM 块中、则不会存在仲裁惩罚。

  • 非常感谢您的解答,我对您说的两个名词还有点不清楚,一个是安全指的是什么意思(就是手册中的security),二是仲裁惩罚大概是什么意思,不清楚ti官方是否有相关的手册。

  • 好的,已向工程师跟进。

  • 你好,安全就是手册中security的意思。仲裁惩罚(arbitration penalty)是指,当内存同时被多个启动程序(initiator)访问时,这时仲裁会发生,这意味着其中一个启动程序访问会被拖延至其他访问完成。你可以在TRM 3.12.1.7“Access Arbitration”章节中了解更多细节。

    TRM:www.ti.com.cn/.../spruii0d.pdf

  • 非常感谢!关于security还是有点疑问,我想问一下security的作用,比如图中红框标出的两块MsgRAM,一块是带security的,但另一块没有security,那这个security起到什么作用呢?

  • 你好,security将会阻挡从非安全区域进行的对安全内存的读写操作。拿你举的例子来说,配置了security的MsgRAM(手动配置需要的话)只能从从安全区域进行读写,没有配置security的MsgRAM则可以从任何内存区域进行读写。