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.

[参考译文] CCS/F28M36P63C2:在 Concerto F28M36x 上实现 vc0 FFT 函数

Guru**** 2537590 points
Other Parts Discussed in Thread: CONTROLSUITE, C2000WARE, F28M36P63C2

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/770699/ccs-f28m36p63c2-implementing-vc0-fft-functions-on-concerto-f28m36x

器件型号:F28M36P63C2
Thread 中讨论的其他器件:controlSUITEC2000WARE

工具/软件:Code Composer Studio

您好!

我正在尝试在 M36上实现512点 FFT。 我已经查看了 controlSUITE 目录下 VCU 文件夹中的示例代码。 它似乎是为 f2837x 器件系列编写的。 然后、我打开了 vc0_fft.h 文件、并在标题中显示"Target Family: F2837x"。 vc0_types.h 文件也是如此。 我知道 f28m36x 具有 VCU 零类型硬件。 我可以在 f28m36x 上使用 vc0_fft.h 和 vc0_types.h 中的函数调用、还是需要更改这些文件中的任何内容?

谢谢、

Josh

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

    一致认为"目标系列:F2837x"有点用词不当、实际上 VCU0类型库可用于支持它的器件。 CRC controlSUITE 库中的一些示例针对特定器件(F2837x)、因此需要对其进行适当修改(系统文件、链接器命令文件)以便在其他器件上使用。 但这一点并不难。

    谢谢、
    Sira
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好,Sira,
    感谢您的回答。 因此、我正在为高级 Capstone 设计制定一个项目、因此我不太精通需要修改的某些后端内容。 例如、我不确定确切需要使用链接器执行什么操作。 我和一位教授交谈、他们说我可以砖砌板、所以我对修改它犹豫不决
    谢谢、
    Josh
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Josh、

    遗憾的是、事实证明、我们的 controlSUITE 软件包没有 F28M36器件的任何示例。 如果有一个、您可以将其用作起点、 并修改了其链接器命令文件(您可以从 F2837x FFT 示例链接器命令文件开始-识别 FFT 相关段-然后通过识别存储器映射差异并将其放置在正确的位置/段中将其移动到 F28M36链接器命令文件)。 现在、工作变得更加困难、因为我们甚至没有起点。 让我询问一下我们是否有任何示例文件。 您是否仅限于使用此器件?

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

    我要把它带回去。 controlSUITE 实际上确实有示例(请参阅下文)、C2000Ware 没有示例。

    C:\ti\controlSUITE\device_support\f28m36x\V210

    您可以执行的步骤包括:
    1.从 F28M36工程开始(将包含特定于 F28M36的链接器命令文件)。
    2.采用 FFT 示例项目-将其源文件复制到上面(1)中的项目。
    3.采用 FFT 示例工程-将链接器命令文件的 FFT 段复制到上面(1)中的链接器命令文件-注意位置/段并相应地放置它们。
    4.在(1)中构建新项目,并解决编译器或链接器错误。
    5.测试

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

    如果您的问题已得到解答、我将继续并将问题标记为已解决。 如果您也可以将我的答案标记为"已验证"、那将会有所帮助。

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

    您好,Sira,

    实际上、我今天早上坐下来、看看您的建议。 我可能还有其他问题、但如果我没有、我将告诉您我的问题已经解决、如果可以的话。

    谢谢

    Josh

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好,Sira,
    因此、我用于 f28m36x 的基本项目示例是 ADC_SoC。 我遵循了 VCU 示例库中的2837x_vcu0_rfft_512示例。 在我的基本项目中、我包含了 vcu/v2_10_00_00/include/common 和 vc0文件夹。 解析几种类型的重定义并编写 includes、define 语句和全局变量后、我构建了项目并收到以下错误:
    "
    错误#16008-D:文件"C:/ti/controlSUITE/libs/dsp/VCU/v2_10_00_00/lib/c28x_vcu0_library.lib "指定 ISA 修订版本"C2800"、它与上一个文件或命令行中指定的 ISA 修订版本"C28FPU32"不兼容
    错误#16008-D:文件"C:/ti/controlSUITE/libs/dsp/VCU/v2_10_00_00/lib/c28x_vcu0_library.lib "指定 ISA 修订版本"C2800"、它与上一个文件或命令行中指定的 ISA 修订版本"C2700"不兼容
    错误#16008-D:文件"C:/ti/controlSUITE/libs/dsp/VCU/v2_10_00_00/lib/c28x_vcu0_library.lib "指定 ISA 修订版本"C2800"、它与上一个文件或命令行中指定的 ISA 修订版本"C2700"不兼容
    "
    我在工程属性中稍微了解了编译器选项、但不确定我需要查看或更改什么

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

    在您的项目属性中、在 C2000链接器-文件搜索路径下、假设您已包含 VCU 库? 我假设您可以删除 rts2800_fpu32_fast_f늹 up.lib。

    在项目属性中、在 C2000编译器-处理器选项下、假设您已将-vcu_support 设置为 vcu0?

    在项目属性的常规下、您可以尝试将运行时支持库更改为自动。

    谢谢、
    Sira
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Sira、
    我解决了这部分问题。 我包含了 vcu0_lib、而不是 vc0_fpu32_lib。 因此、我从 VCU 示例项目中介绍了我要使用的代码部分。 我的测试数组有未定义的符号、这些符号在 rfft_512_data.asm 文件中定义。 我遇到的编译器错误是
    "
    "C:/ti/controlSUITE/device_support/f28m36x/v220/F28M36x_common/cmd/F28M36P63C2_c28.cmd "、第169行:错误#10099-D:程序不能放入可用内存中。 ".econst"大小为0x500页0的段放置对齐/分块失败。 可用存储器范围:
    FLASHA 大小:0x1f80 未使用:0x28d 最大孔数:0x28b
    "
    我不确定我需要如何处理这个问题。 我假设我需要为图像分配更多的存储空间以便适应?

    谢谢、
    Josh
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    是的、看起来 FLASHA 不够大、无法容纳它。 您必须找到使阵列适合闪存的方法、可能需要使用其他闪存扇区。

    谢谢、
    Sira
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Sira、
    很抱歉、您遇到了这么多这样的问题。 我之前没有在工程中添加 asm 文件、而是添加了它来修复未定义的对象。 然后、我在 F28M36P632_c28.cmd 文件中将.econst 被写入的闪存组从闪存 A 更改为闪存 E 页0。 这是否起作用?

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

    如果链接器没有抛出任何错误、则意味着一切都合适、并且应该正常工作。

    谢谢、
    Sira
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Sira、
    是的、所有内容都已编译、并且没有链接器错误。 因此、我应该会很高兴。 感谢所有帮助。
    Josh