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.

[参考译文] TMS320F28P650DK:F28P65x 双核器件的闪存/RAM 问题。

Guru**** 2577385 points


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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1374322/tms320f28p650dk-the-flash-ram-questions-of-f28p65x-dual-core-devices

器件型号:TMS320F28P650DK

工具与软件:

hi champs、

我的客户对双核 F28P65x 器件有以下问题、

  1. 在存储器映射表中、LS0 - LS3 RAM 的地址与 D2 RAM 相同(CPU2映射)、是否意味着不同的存储器总线有两个不同的存储块(相同地址)、以便 CPU1可以使用 LS0 - LS3 RAM、CPU2可以使用 D2 RAM?
  2. 在勘误文档中、我们说代码不应出现在闪存末尾的16个字(0x0011FFF8 - 0x11FFFF)以内、这是闪存组4的最后16个字。 如果客户将闪存组0 -组2分配给 CPU1、将闪存组3和组4分配给 CPU2、那么客户是否应该避免在 CPU1中使用闪存组2的最后16个字?
  3. 在勘误表文档中、我们说 M1和 GS4 RAM 的预取队列深度为8 wrods、但闪存的预取队列深度为16字、为什么预取大小不同?
  4. 消息 RAM、例如 CPU1到 CLA1的消息 RAM。 如果 CLA1在 CPU1将数据写入 RAM 的同时从消息 RAM 读取数据、会发生什么情况? 是否有任何硬件机制来避免这种竞态条件? 此问题适用于其他消息 RAM。
  5. 是否有任何仅属于 CPU1的外设、这意味着不能分配给 CPU2使用?

请建议、谢谢。

此致、

Luke

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

    您好!

    [报价 userid="114524" url="~/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1374322/tms320f28p650dk-the-flash-ram-questions-of-f28p65x-dual-core-devices "]在存储器映射表中、LS0 - LS3 RAM 的地址与 D2 RAM 相同(CPU2映射)、这是否意味着有两个具有不同存储器总线的不同存储器块(同一地址)、以便 CPU1可以使用 LS0 - LS3 RAM、而 CPU2可以使用 D2 RAM?

    是的、是这样。 这些是可通过 CPU1和 CPU2进行独立访问的不同存储器块。

    [报价 userid="114524" url="~/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1374322/tms320f28p650dk-the-flash-ram-questions-of-f28p65x-dual-core-devices "]在勘误文档中、我们说代码不应出现在闪存末尾的16个字(0x0011FFF8 - 0x11FFFF)内、这是闪存组4的最后16个字。 如果客户将闪存组0 -组2分配给 CPU1、将闪存组3和组4分配给 CPU2、那么客户是否应避免在 CPU1中使用闪存组2的最后16个字?

    正确。 这适用于 CPU 的最后一个有效闪存地址。

    [报价 userid="114524" url="~/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1374322/tms320f28p650dk-the-flash-ram-questions-of-f28p65x-dual-core-devices ]在勘误表文档中、我们说 M1和 GS4 RAM 的预取队列深度为8个 wrods、但闪存的预取队列深度为16个字、为什么预取大小不同?

    闪存控制器在 CPU 流水线顶部有自己的预取机制、因此二者有区别。

    [报价 userid="114524" url="~/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1374322/tms320f28p650dk-the-flash-ram-questions-of-f28p65x-dual-core-devices ]消息 RAM、例如 CPU1至 CLA1消息 RAM。 如果 CLA1在 CPU1将数据写入 RAM 的同时从消息 RAM 读取数据、会发生什么情况? 是否有任何硬件机制来避免这种竞态条件? 此问题适用于其他消息 RAM。

    是的、有硬件仲裁、它将根据轮询方案对访问进行仲裁。

    [quote userid="114524" url="~/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1374322/tms320f28p650dk-the-flash-ram-questions-of-f28p65x-dual-core-devices 是否有任何外设只属于 CPU1?这意味着不能分配给 CPU2使用?

    我认为在此器件上、所有外设都可以分配给 CPU1或 CPU2、但我建议查看 TRM 中所有的 CPUSEL 位定义。

    Vivek Singh

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

    Vivek、

    我知道轮询访问仲裁方案(TRM 中的第3.12.7节)。 不过、看起来访问仲裁大约是 GS 和 LS RAM。
    DMA、CLA、CPU1和 CPU2之间的消息 RAM 如何? 这个硬件仲裁是否可被应用于所有消息 RAM?

    此致、

    Luke

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    此硬件仲裁能否应用于所有消息 RAM?

    是的、所有共享 RAM 具有相同的仲裁机制。

    Vivek Singh

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

    Vivek、

    关于项目3 (预取大小)、您能否提供更多详细信息?

    谢谢。此致、

    Luke

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

    尊敬的 Luke:

    请参阅器件 TRM 中的"12.5.1.2预取模式"部分。

    Vivek Singh

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

    尊敬的 Vivek、

    我们说闪存的预取实例为16字深度、因为闪存预取模式有两个128位指令缓冲区、对吧?

    但是、RAM 的预取队列深度为8个字、我可以在哪里找到此信息?

    此致、

    Luke

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

    可作为 CPU 用户指南的一部分 (第 4.1.2节取指令机制)。