ZHCUBL2K January   2018  – March 2024

 

  1.   1
  2.   C7000 主机仿真
  3. 关于本文档
    1. 1.1 相关文档
    2. 1.2 免责声明
    3. 1.3 商标
  4. 主机仿真入门
    1. 2.1 系统要求
    2. 2.2 安装说明
    3. 2.3 差异总结:主机仿真编码与原生 C7000 编码
  5. 一般编码要求
    1. 3.1 所需的头文件
    2. 3.2 包依赖项
    3. 3.3 示例程序
  6. 内在函数
    1. 4.1 类似 OpenCL 的内在函数
    2. 4.2 流地址生成器内在函数
    3. 4.3 C6000 传统内在函数
    4. 4.4 存储器系统内在函数
  7. TI 向量类型
    1. 5.1 构造函数
    2. 5.2 访问器
    3. 5.3 向量运算符
    4. 5.4 打印调试函数
  8. 流引擎和流地址生成器
  9. 查询表和直方图接口
    1. 7.1 查询表和直方图数据
  10. C6000 迁移
    1. 8.1 __float2_t 传统数据类型
  11. 矩阵乘法加速器 (MMA) 接口
  12. 10编译器错误和警告
    1. 10.1 编译器错误和警告中包含的关键术语
    2. 10.2 主机仿真特定语法
  13. 11修订历史记录
  14.   35

矩阵乘法加速器 (MMA) 接口

C7000 主机仿真矩阵乘法加速器 (MMA) 接口与目标硬件上 C7000 编译器使用的接口相同,但有一个重要差异。c7x_mma.h 中提到的所有内在函数和定义也都是针对 C7000 主机仿真定义和实现的,并且可以以相同的方式使用。但是,程序必须通过调用所提供的 _HWAADV() 内在函数来显式指明 MMA 状态何时推进。这是因为与目标硬件不同,为主机仿真的 MMA 不能与 CPU 时钟的概念联系起来。

程序必须跟踪旨在并行执行的指令,并通过在每组“并行”指令之后调用 __HWAADV() 来显式推进 MMA 状态。

为了方便在主机模式和目标模式之间轻松移植,目标编译器将 __HWAADV() 内在函数定义为空宏。