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.

[参考译文] TMS320F280049:VCU#39;s CRC 库、EABI 格式

Guru**** 2535750 points
Other Parts Discussed in Thread: C2000WARE

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1125245/tms320f280049-vcu-s-crc-library-in-eabi-format

器件型号:TMS320F280049
主题中讨论的其他器件:C2000WARE

尊敬的香榭丽舍

我向我们的客户提出这一问题。

用户希望使用诸如 getCRC32_VCU ()的 CRC。

来自 P12中的文档

C:\ti\c2000Ware_4_01_00_00\libraries\dsp\vcu\c28\docs\C28X_VCU_LIB_UG.pdf

其内容为"...C28x_VCU 库_fpu32.lib、用于浮点支持的构建。 请注意,这些库是为 COFF 格式构建的,而不是为 EABI 格式构建的....”

现在、用户希望使用  C28x_VCU 在 EABI 中为_library_fpu32.lib。 您是否会帮助在 EABI 中生成库?

还是用户可以自己实现它?

黄维恩

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

    韦恩、

    我们的一位工程师尝试为 EABI 构建。让我与他核实一下、看看他的观察结果是什么。

    谢谢

    阿拉夫

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

    您好、Wayne、

    要为 VCRC 创建基于 EABI 的库、请执行以下步骤:

    对于 VCU 库、要使用该库的最新输出格式和编译器选项、请执行以下操作:

    1. 从 C2000Ware_X_XX_XX_XX\libraries\DSP\VCU\c28\ccs\c28x_vcu0_crctables_lib 导入工程
    2. 右键点击工程并选择 Properties
    3. 验证编译器版本是否为最新版本、并将输出格式从"legacy COFF"更改为"eabi (ELF)"
    4. 点击"Apply and Close"、然后重新构建项目。

    这将生成并替换旧库。 请告诉我是否还有其他问题。

    此致、

    Omer Amir

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

    尊敬的 Omer:

    一些问题。

    1) 1)如果我们要使用 FPU32、我们应该在下面选择 FPU32配置、对吧?

    2) 2)当我们按照上述步骤进行操作时、在第117行的建筑过程中出现了错误  

    C:\ti\c2000Ware_4_01_00_00\libraries\dsp\vcu\c28\include\vcu0\vcu0_types.h

    我们尝试删除(注释)下面的第117行、没有错误、看起来不错。

    请确认是否不需要第117行、可以删除它吗?

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

    尊敬的 Omer:

    还有一个问题、用户希望仅使用 VCU0 CRC 计算32-CRC。

    也就是说,他们希望使用  getCRC32_VCU ()。

    在这种情况下,它们是否仍需要在 初始化中调用 genCRC32Table()?

    我们在调用 genCRC32Table()时感到困惑。

    它 仅用于基于 C 的查找表函数 getCRC32_CPU(), 还是用于 getCRC32_VCU ()?

    黄维恩

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

    尊敬的 Omer:

    除了前面的两篇文章外,我们还发现还有另一个名为“C28x_vcu0_library”的库 ,其中定义了 getCRC32_VCU ()。

    我们很困惑、为什么您要求我们构建"C28x_vcu0_crctables_lib"而不是"C28x_vcu0_library"、因为我们应该使用 getCRC32_VCU ()?

    当我们尝试为 C28x_vcu0_library 构建 EABI 时、 vcu0_Viterbi_K7_cr12.asm 中存在旧版.ebss、我们应该将它们更改为.bss、对吧?

    请帮助澄清此帖子和上述两个帖子。

    黄维恩

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

    您好、Wayne、

    要解决您的问题:

    1. 如果客户希望使用 FPU32、那么应该选择这个构建配置。
    2. 正确、我也为我的代码注释了这一行117 (这是一个问题、我将确保归档并修复)
    3. 关于 在初始化中使用 genCRC32Table(),这将是 
    4. 我并不完全熟悉 VCU 中哪些库文件包含哪些 VCRC 项、因为我没有广泛使用 VCRC。 我的直觉是、标记有 crctables 的库会包含必要的文件、但我可能会错。 我只能确认重建库的步骤、也许  可以纠正我需要重建的库
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Omer:

    当我尝试使用 EABI 以 相同的方式构建 C28x_vcu0_library 时、出现错误、无法解决。

    请您仔细研究一下吗?

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

    您好、Wayne、

    抱歉、这是我忘记提到的另一个已知问题。   FFT 文件 vcu0_CFFT_utils.asm 需要将第67行更改为" MOVL XAR5、#CFFT16_TF;"。 目前、它应该具有前面 的下划线、这是 COFF 输出格式中函数的典型值。 另一种解决   方案是添加一个.asg 语句、该语句执行以下操作:".asg CFFT16_TF、_CFFT16_TF"。

    此致、

    Omer Amir

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

    韦恩、

    我要回答几个问题  

    3. 关于 在初始化中使用 genCRC32Table(),这将是  - C28x 上运行的实现不需要这个问题。这用于模拟 CRC 功能。  getCRC32_VCU ()不需要?

    4.生成的库具有所有函数、如果您在代码中包含 getCRC32_VCU、链接器将从库中选择所需的函数。 对于 VCU、我们没有单独的 CRC 库。  

    我想您在 F280049x 上寻找 CRC 支持、对吧?

    谢谢

    Aravindhan

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

    尊敬的 Arav:

    是的、我们希望 VCU0使用32-CRC。

    感谢您的信息。

    尊敬的 Omer:

    我建议稍后正式添加 EABI 库。

    我们最终通过为  getCRC32_VCU ()添加如下所示的代码来实现它。 没有这一点、它就无法工作。

    我认为还有其他功能也会有类似的问题。

    .if $defined (_TI_EABI)
    .if __TI_EABI
    .asg getCRC32_VCU、_getCRC32_VCU
    .endif
    .endif

     

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

    韦恩、

    我们现在可以关闭此主题吗?

    谢谢

    Aravindhan  

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

    尊敬的 Arav、Omer

    感谢您的支持。

    韦恩

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

    我要关闭线程。