C2000-CGT

C2000 代码生成工具 - 编译器

C2000-CGT

下载

概述

TI C2000 C/C++ 编译器和汇编语言工具支持开发适用于 TI C2000 微控制器平台的应用,包括 Concerto (F28M3xx)、Piccolo (280xx)、Delfino 浮点 (283xx) 和 C2000 定点 (2823x/280x/281x) 微控制器器件。

Code Composer Studio 是适用于 TI 嵌入式器件的集成开发环境 (IDE)。如果您希望在 TI 嵌入式器件上进行开发,建议先下载 Code Composer Studio,因为它包含 TI 编译器。如果您已经是 Code Composer Studio 的用户,则更新编译器的理想方法是转到“Help”菜单并选择安装编译器(有关更多详细信息,请参阅在 CCS 中获取编译器更新)。

特性
  • 在版本 21.12.0.STS 中提供:

    • C28 提高了中断保存/恢复效率。
    • C28 在减少寄存器溢出方面具有更高的性能。
    • C28 在寄存器中保存全局浮点/双精度变量时具有更高的性能。
    • C28 通过更多的 IF 转换用例提高性能。
    • C28 通过将 16 位常量直接加载到 ACC 寄存器提高了性能。
  • 在版本 21.6.0.LTS 中提供:

    • 提供 C28/CLA 固件更新支持的实时固件更新特性。
    • 在内存范围内生成 CRC。
    • 性能改进:
      • 当使用位置属性或文字地址时,C28 对较低 16 位内存具有更高效的数据访问。
      • 提升了库调用 fmaxf/fminf 的性能。
      • 提升了具有易失性变量的 MIN/MAX 条件的性能。
      • 整数除法单元 (--idiv_support=idiv0) 具有将整数常量加载到浮点指针寄存器的性能更新。
      • CLA 具有更高效地加载 16 位常量的性能更新。
    • 枚举类型变更。
    • 已弃用 Misra 支持。

    在版本 20.12.0.STS 中提供:

    • 提供 C28/CLA 固件更新支持的实时固件更新特性
    • 在内存范围内生成 CRC
    • 当使用位置属性或文字地址时,C28 对较低 16 位内存具有更高效的数据访问。
    • 整数除法单元 (--idiv_support=idiv0) 具有性能更新。
    • CLA 具有更高效地加载 16 位常量的性能更新。
    • 枚举类型变更。
    • 已弃用 Misra 支持
  • 在版本 20.2.0.LTS 中提供:
    • 十六进制实用程序工具新选项 --cmac(基于密码的消息身份验证协议)将 cmac 算法应用于用户定义的区域并生成 cmac 标签以支持安全启动。
    • 整数除法单元 (--idiv_support=idiv0) 具有性能、诊断和构建属性更新。
    • Memcpy 与 RPT 内联现在支持不止 255 个字(最多 65535 个)。
    • 对于 fpu32 和 fpu64 --float_support 模式,FPU64 RTS 库触发器浮点例程 sinf/cosf/tanf/cbrtf 现在相同。
    • 为以下各项添加了新的诊断检查:阻止/取消阻止访问、c28/cla 代码之间的函数调用、FPU64 汇编程序检查以及面向 fpu32/fpu64 的 --advice:performance。
    • 为具有 --isr_save_vcu_regs 选项的 ISR 提供 VCU 寄存器保存/恢复支持。
    • 编译器生成的目标文件的默认文件扩展名更新为 .c.obj 和 .cpp.obj
  • 在 v18.12.0.LTS 和更高版本的 C2000 代码生成工具中提供:
    • 连接器生成的 ECC 选项
    • 针对 64 位 FPU 硬件的浮点支持
    • 针对 C2000 EABI 的支持
    • 针对 TMU1 指令的支持
    • 针对 VCRC 器件的支持
    • 针对整数除法硬件扩展的支持
  • 在 v18.1.0.LTS 和更高版本的 C2000 代码生成工具中提供:
    • CLA 代码大小改进
    • 易失性位字段分配的优化
    • 宜使用 –cla_support=cla[12] 选项直接寻址
    • 利用内联函数提高堆栈使用率
  • 在 v16.9.0.LTS 和更高版本的 C2000 代码生成工具中提供:
    • 提高了堆栈使用率
    • 支持 LZSS 压缩
    • 压缩块对齐
    • 改进的内联功能
    • 移除了重复和不需要的编译器选项

TI 编译器支持

TI 拥有一个快速响应的活跃 E2E™ 社区,该社区为 TI 编译器提供了支持。

其他支持文章:

长期和短期支持

长期支持 (LTS) 版本主动维护期约为两年,针对所报告缺陷的修复说明如下:

  • 在 2 周之内解决停产缺陷,
  • 在 90 天内解决重要缺陷,并且
  • 会主动为每个版本流执行缺陷修复

短期支持 (STS) 版本仅在下一版本可用前受到支持,这意味着:

  • 仅停产缺陷可能导致创建补丁版本,
  • 不会计划创建 STS 版本的补丁版本,并且
  • 不会主动为每个版本流执行缺陷修复
  • 有关 LTS 和 STS 编译器版本区别的更多信息,请参阅文章:LTS 和 STS 编译器版本简介

  • 优化 C/C++ 编译器
  • 汇编器
  • 链接器
  • C/C++ 标准头文件
  • C/C++ 运行时库
  • 对象文件显示和操作实用程序

下载 观看带字幕的视频 视频

下载

IDE、配置、编译器或调试器

C2000-CGT C2000 code generation tools (CGT) - compiler

下载选项

C2000-CGT C2000 code generation tools (CGT) - compiler

close
最新版本
版本: 22.6.1.LTS
发布日期: 29 九月 2023

发布信息

This is a long-term support release of the C2000 Code Generation Tools (CGT) containing new enhancements and features. The C2000 CGT provides software development tools including the compiler, assembler, and linker, among others, which can be used to develop applications with C/C++ source code for loading and running on C2000 core processors.

最新动态

  • C28 performance improvements:
  • interrupt save/restore efficiency improvement
  • reducing register spilling
  • keeping global float/double variables in registers
  • additional if-conversion use cases
  • RTS library routine fmodf() now has faster tmu, relaxed fp_mode implementation using __fmodf intrinsic
  • CLA support enabled for generating MMACF32||MMOV32
  • New option --fp_single_precision_constant treats unsuffixed floating point constants as 32-bit
  • Hex tool new options: --boot_align_sect and --boot_block_size=size

支持的产品和硬件

C2000 实时微控制器
TMS320F280021 具有 100MHz 频率、FPU、TMU、32KB 闪存的 C2000™ 32 位 MCU TMS320F280021-Q1 具有 100MHz 频率、FPU、TMU、32KB 闪存的汽车类 C2000™ 32 位 MCU TMS320F280023 具有 100MHz 频率、FPU、TMU、64kB 闪存的 C2000™ 32 位 MCU TMS320F280023-Q1 具有 100MHz 频率、FPU、TMU、64KB 闪存的汽车类 C2000™ 32 位 MCU TMS320F280023C 具有 100MHz 频率、FPU、TMU、64KB 闪存、CLB 的 C2000™ 32 位 MCU TMS320F280025 具有 100MHz 频率、FPU、TMU、128kB 闪存的 C2000™ 32 位 MCU TMS320F280025-Q1 具有 100MHz 频率、FPU、TMU、128KB 闪存的汽车类 C2000™ 32 位 MCU TMS320F280025C 具有 100MHz 频率、FPU、TMU、128kB 闪存、CLB 的 C2000™ 32 位 MCU TMS320F280025C-Q1 具有 100MHz 频率、FPU、TMU、128KB 闪存、CLB 的汽车类 C2000™ 32 位 MCU TMS320F280033 C2000™ 32 位 MCU 120MHz 128KB 闪存、FPU、TMU、AES 和 CAN-FD TMS320F280034 具有 CLA、AES 和 CAN-FD 的 C2000™ 32 位 MCU 120MHz 128KB 闪存、FPU 和 TMU TMS320F280034-Q1 具有 CLA、AES 和 CAN-FD 以及 128KB 闪存、FPU 和 TMU 的汽车级 C2000™ 32 位 120MHz MCU TMS320F280036-Q1 具有 CLA、AES 和 CAN-FD 的汽车类 C2000™ 32 位 MCU 120MHz 256KB 闪存、FPU 和 TMU TMS320F280036C-Q1 具有 CLA、CLB、AES 和 CAN-FD 的汽车类 C2000™ 32 位 MCU 120MHz 256KB 闪存、FPU 和 TMU TMS320F280037 具有 CLA、AES 和 CAN-FD 以及 256KB 闪存、FPU 和 TMU 的 C2000™ 32 位 120MHz MCU TMS320F280037-Q1 具有 CLA、AES 和 CAN-FD 的汽车类 C2000™ 32 位 MCU 120MHz 256KB 闪存、FPU 和 TMU TMS320F280037C 具有 CLA、CLB、AES 和 CAN-FD 的 C2000™ 32 位 MCU 120MHz 256KB 闪存、FPU 和 TMU TMS320F280037C-Q1 具有 CLA、CLB、AES 和 CAN-FD 的汽车类 C2000™ 32 位 MCU 120MHz 256KB 闪存、FPU 和 TMU TMS320F280038-Q1 具有 CLA、AES 和 CAN-FD 的汽车类 C2000™ 32 位 MCU 120MHz 384KB 闪存、FPU 和 TMU TMS320F280038C-Q1 具有 CLA、CLB、AES 和 CAN-FD 的汽车类 C2000™ 32 位 MCU 120MHz 384KB 闪存、FPU 和 TMU TMS320F280039 具有 CLA、AES 和 CAN-FD 的 C2000™ 32 位 MCU 120MHz 384KB 闪存、FPU 和 TMU TMS320F280039-Q1 具有 CLA、AES 和 CAN-FD 的汽车类 C2000™ 32 位 MCU 120MHz 384KB 闪存、FPU 和 TMU TMS320F280039C 具有 CLA、CLB、AES 和 CAN-FD 的 C2000™ 32 位 MCU 120MHz 384KB 闪存、FPU 和 TMU TMS320F280039C-Q1 具有 CLA、CLB、AES 和 CAN-FD 的汽车级 C2000™32位 MCU 120MHz 384KB 闪存、FPU 和 TMU TMS320F280040-Q1 具有 100MHz 频率、FPU、TMU、128KB 闪存、PGA 和 SDFM 的汽车类 C2000™ 32 位 MCU TMS320F280040C-Q1 具有 100MHz 频率、FPU、TMU、128KB 闪存、InstaSPIN-FOC、CLB、PGA、SDFM 的汽车类 C2000™ 32 位 MCU TMS320F280041 具有 100MHz 频率、FPU、TMU、128KB 闪存、PGA、SDFM 的 C2000™ 32 位 MCU TMS320F280041-Q1 具有 100MHz 频率、FPU、TMU、128KB 闪存、PGA 和 SDFM 的汽车类 C2000™ 32 位 MCU TMS320F280041C 具有 100MHz 频率、FPU、TMU、128KB 闪存、InstaSPIN-FOC、CLB、PGA、SDFM 的 C2000™ 32 位 MCU TMS320F280041C-Q1 具有 100MHz 频率、FPU、TMU、128KB 闪存、InstaSPIN-FOC、CLB、PGA、SDFM 的汽车类 C2000™ 32 位 MCU TMS320F280045 C2000™ 具有 100MHz 频率、FPU、TMU、256KB 闪存、PGA 和 SDFM 的 32 位 MCU TMS320F280048-Q1 具有 100MHz 频率、FPU、TMU、256KB 闪存、CLA、PGA、SDFM 的汽车类 C2000™ 32 位 MCU TMS320F280048C-Q1 具有 100MHz 频率、FPU、TMU、256KB 闪存、CLA、InstaSPIN-FOC、CLB、PGA、SDFM 的汽车类 C2000™ 32 位 MCU TMS320F280049 具有 100MHz 频率、FPU、TMU、256KB 闪存、CLA、PGA、SDFM 的 C2000™ 32 位 MCU TMS320F280049-Q1 具有 100MHz 频率、FPU、TMU、256KB 闪存、CLA、PGA、SDFM 的汽车类 C2000™ 32 位 MCU TMS320F280049C 具有 100MHz 频率、FPU、TMU、256KB 闪存、CLA、InstaSPIN-FOC、CLB、PGA、SDFM 的 C2000™ 32 位 MCU TMS320F280049C-Q1 具有 100MHz 频率、FPU、TMU、256KB 闪存、CLA、InstaSPIN-FOC、CLB、PGA、SDFM 的汽车类 C2000™ 32 位 MCU TMS320F28075 具有 120MHz 频率、FPU、TMU、512KB 闪存、CLA、SDFM 的 C2000™ 32 位 MCU TMS320F28075-Q1 具有 120MHz 频率、FPU、TMU、512KB 闪存、CLA、SDFM 的汽车类 C2000™ 32 位 MCU TMS320F28076 具有 120MHz 频率、FPU、TMU、512KB 闪存、CLA、CLB、SDFM 的 C2000™ 32 位 MCU TMS320F28374D 具有 800MIPS、2 个 CPU、2 个 CLA、FPU、TMU、512KB 闪存、EMIF、12 位 ADC 的 C2000™ 32 位 MCU TMS320F28374S 具有 400MIPS、1 个 CPU、1 个 CLA、FPU、TMU、512KB 闪存、EMIF、12 位 ADC 的 C2000™ 32 位 MCU TMS320F28375D 具有 800MIPS、2 个 CPU、2 个 CLA、FPU、TMU、1024KB 闪存、EMIF、12 位 ADC 的 C2000™ 32 位 MCU TMS320F28375S 具有 400MIPS、1 个 CPU、1 个 CLA、FPU、TMU、1024KB 闪存、EMIF、12 位 ADC 的 C2000™ 32 位 MCU TMS320F28375S-Q1 具有 400MIPS、1xCPU、1xCLA、FPU、TMU、1024KB 闪存、EMIF、12 位 ADC 的汽车类 C2000™ 32 位 MCU TMS320F28376D 具有 800MIPS、2 个 CPU、2 个 CLA、FPU、TMU、512KB 闪存、EMIF、16 位 ADC 的 C2000™ 32 位 MCU TMS320F28376S 具有 400MIPS、1 个 CPU、1 个 CLA、FPU、TMU、512KB 闪存、EMIF、16 位 ADC 的 C2000™ 32 位 MCU TMS320F28377D 具有 800MIPS、2 个 CPU、2 个 CLA、FPU、TMU、1024KB 闪存、EMIF、16 位 ADC 的 C2000™ 32 位 MCU TMS320F28377D-EP 具有 800MIPS、2 个 CPU、2 个 CLA、FPU、TMU、1MB 闪存、EMIF、16 位 ADC 的 C2000™ 增强型产品 32 位 MCU TMS320F28377D-Q1 具有 800MIPS、2xCPU、2xCLA、FPU、TMU、1024KB 闪存、EMIF、16 位 ADC 的汽车类 C2000™ 32 位 MCU TMS320F28377S 具有 400MIPS、1 个 CPU、1 个 CLA、FPU、TMU、1024KB 闪存、EMIF、16 位 ADC 的 C2000™ 32 位 MCU TMS320F28377S-Q1 具有 400MIPS、1xCPU、1xCLA、FPU、TMU、1024KB 闪存、EMIF、16 位 ADC 的汽车类 C2000™ 32 位 MCU TMS320F28378D C2000™ 具有 800MIPS、2xCPU、2xCLA、FPU、TMU、1024KB 闪存、CLB、EMIF 和 12 位 ADC 的 32 位 MCU TMS320F28378S C2000™ 具有 400MIPS、1xCPU、1xCLA、FPU、TMU、1024KB 闪存、CLB、EMIF 和 12 位 ADC 的 32 位 MCU TMS320F28379D 具有 800MIPS、2 个 CPU、2 个 CLA、FPU、TMU、1024KB 闪存、CLB、EMIF、16 位 ADC 的 C2000™ 32 位 MCU TMS320F28379D-Q1 具有 800MIPS、2xCPU、2xCLA、FPU、TMU、1024KB 闪存、CLB、EMIF、16 位 ADC 的汽车类 C2000™ 32 位 MCU TMS320F28379S 具有 400MIPS、1 个 CPU、1 个 CLA、FPU、TMU、1024KB 闪存、CLB、EMIF 和 16b ADC 的 C2000™ 32 位 MCU TMS320F28384D 具有连接管理器、2 个 C28x+CLA CPU、1.5MB 闪存、FPU64、以太网的 C2000™ 32 位 MCU TMS320F28384D-Q1 具有连接管理器、2 个 C28x+CLA CPU、1.5MB 闪存、FPU64、以太网的汽车类 C2000™ 32 位 MCU TMS320F28384S 具有连接管理器、1 个 C28x+CLA CPU、1.0MB 闪存、FPU64、以太网的 C2000™ 32 位 MCU TMS320F28384S-Q1 具有连接管理器、1 个 C28x+CLA CPU、1MB 闪存、FPU64、以太网的汽车类 C2000™ 32 位 MCU TMS320F28386D 具有连接管理器、2 个 C28x+CLA CPU、1.5MB 闪存、FPU64、CLB、以太网的 C2000™ 32 位 MCU TMS320F28386D-Q1 具有连接管理器、2x C28x+CLA CPU、1.5MB 闪存、FPU64、CLB、以太网的汽车类 C2000™ 32 位 MCU TMS320F28386S 具有连接管理器、1 个 C28x+CLA CPU、1.0MB 闪存、FPU64、CLB、以太网的 C2000™ 32 位 MCU TMS320F28386S-Q1 具有连接管理器、1 个 C28x+CLA CPU、1MB 闪存、FPU64、CLB、以太网的汽车类 C2000™ 32 位 MCU TMS320F28388D 具有连接管理器、2 个 C28x+CLA CPU、1.5MB 闪存、FPU64、CLB、ENET、EtherCAT 的 C2000™ 32 位 MCU TMS320F28388S 具有连接管理器、1 个 C28x+CLA CPU、1.0MB 闪存、FPU64、CLB、ENET、EtherCAT 的 C2000™ 32 位 MCU

技术文档

未找到结果。请清除搜索,并重试。
查看全部 4
类型 标题 下载最新的英语版本 日期
应用手册 C28x 嵌入式应用程序二进制接口 (Rev. B) PDF | HTML 下载英文版本 (Rev.B) PDF | HTML 2024年 1月 5日
用户指南 TMS320C28x 优化 C/C++ 编译器v22.6.0.LTS (Rev. Z) PDF | HTML 下载英文版本 (Rev.Z) PDF | HTML 2023年 11月 30日
用户指南 TMS320C28x 汇编语言工具 v22.6.0.LTS (Rev. Z) PDF | HTML 下载英文版本 (Rev.Z) PDF | HTML 2023年 11月 9日
应用手册 Data Blocking in the C2000 MCU compiler explained 2018年 11月 27日

相关设计资源

软件开发

IDE、配置、编译器或调试器
CCSTUDIO Code Composer Studio™ 集成式开发环境 (IDE)

支持与培训

可获得 TI E2E™ 论坛的工程师技术支持

查看全部论坛主题 查看英文版全部论坛主题

所有内容均由 TI 和社区贡献者按“原样”提供,并不构成 TI 规范。请参阅使用条款

如果您对质量、包装或订购 TI 产品有疑问,请参阅 TI 支持

视频