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

Required Header Files

Regardless of your chosen host, certain prerequisites are required for every program written to be run with C7000 Host Emulation.

All source files that use C7000 compiler features with Host Emulation need to #include the c7x.h or c6x_migration.h file, as appropriate. These files in turn include all other required header files. When compiling for Host Emulation, do not #include any of the other header files provided in the C7000 Run Time Support Library.

When compiling for Host Emulation, do not #include any of the headers found in the C7000 Run Time Support library. This includes the c7x.h and c6x_migration.h files. Instead, use preprocessor symbols to control which header files are included.

Table 3-1 Host Emulation Header Files
File Included ExplicitlyDescription
c7x.hMain header file. Includes all others listed below except c6x_migration.h.
c6x_migration.hLegacy intrinsics and data types. Includes all others listed below.
Files Included Automatically
c7x_cr.hGlobal control register definitions
c7x_ecr.hGlobal extended register definitions
c7x_luthist.hLookup table and histogram control interface
c7x_strm.hStreaming engine control interface

The ti_he_impl folder contains other header files used for the implementation; these files should not be included directly.