SPRUIG6K January   2018  – March 2024

 

  1.   1
  2.   C7000 Host Emulation
  3. About This Document
    1. 1.1 Related Documentation
    2. 1.2 Disclaimer
    3. 1.3 Trademarks
  4. Getting Started with Host Emulation
    1. 2.1 System Requirements
    2. 2.2 Installation Instructions
    3. 2.3 Summary of Differences: Host Emulation Coding vs. Native C7000 Coding
  5. General Coding Requirements
    1. 3.1 Required Header Files
    2. 3.2 Package Dependencies
    3. 3.3 Example Program
  6. Intrinsics
    1. 4.1 OpenCL-Like Intrinsics
    2. 4.2 Streaming Address Generator Intrinsics
    3. 4.3 C6000 Legacy Intrinsics
    4. 4.4 Memory System Intrinsics
  7. TI Vector Types
    1. 5.1 Constructors
    2. 5.2 Accessors
    3. 5.3 Vector Operators
    4. 5.4 Print Debug Function
  8. Streaming Engine and Streaming Address Generator
  9. Lookup Table and Histogram Interface
    1. 7.1 Lookup Table and Histogram Data
  10. C6000 Migration
    1. 8.1 __float2_t Legacy Data Type
  11. Matrix Multiply Accelerator (MMA) Interface
  12. 10Compiler Errors and Warnings
    1. 10.1 Key Terms Found in Compiler Errors and Warnings
    2. 10.2 Host Emulation Specific Syntax
  13. 11Revision History
  14.   35

Summary of Differences: Host Emulation Coding vs. Native C7000 Coding

When coding an application to run with C7000 Host Emulation, you should be aware of the following general limitations:

  • All source files must #include the c7x.h file. (See Section 3.1.)
  • Use of standard integer types rather than built-in types is recommended for future portability. (See Section 3.2.)
  • The code must use C++14 due to the underlying implementation, which relies heavily on C++14 constructs and features. (See Section 3.2.)
  • C7000 pragmas are not supported with Host Emulation. (See Section 3.2.)
  • There are certain limitations and differences with intrinsics. (See Section 4.) For example, intrinsics that operate directly on memory and the L1D cache cannot be used with C7000 Host Emulation. (See Section 4.4.)

See Section 10 for information about specific compiler errors and warnings and about syntax interpretation differences between the C7000 compiler and the Host Emulation compiler.