SPRUIG6J January   2018  – December 2023

 

  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

Revision History

Changes from August 5, 2022 to December 15, 2023 (from Revision I (August 2022) to Revision J (December 2023))

  • Corrected example for multiple element swizzle accessor workaround.Go
  • Corrected example code.Go

Changes from October 22, 2021 to August 5, 2022 (from Revision H (October 2021) to Revision I (August 2022))

  • Added __C7X_HOSTEM__, __C7120__, and __C7504__ preprocessor symbols.Go
  • Simplified example program syntax since the cl7x compiler now accepts the constructor-style syntax for vector initialization.Go
  • Native vector types are now called "TI vector types." In addition, several limitations related to complex vector types have been resolved. See the C7000 C/C++ Optimizing Compiler User's Guide for details.Go
  • Both cl7x and Host Emulation compilers now accept constructor-style syntax for vector initialization.Go
  • Clarified types of accessors supported, and updated workarounds for swizzle accessors.Go
  • Modified example code.Go
  • Updated table of key terms found in vector-related errors and warnings.Go
  • Updated table of errors and warnings related to syntax changes.Go

Changes from March 15, 2021 to October 22, 2021 (from Revision G (March 2021) to Revision H (October 2021))

  • Added a list of pointer comparisons operators to vector and complex element pointer types.Go

Changes from December 31, 2020 to March 15, 2021 (from Revision F (December 2020) to Revision G (March 2021))

  • Allow Visual C++ build tools versions after 2017.Go
  • Both release and debug-compatible static run-time libraries are provided for use with Microsoft Visual C++.Go
  • The initial values of control registers are now set to the values used in a hardware reset instead of setting all control register values to 0.Go

Changes from May 1, 2020 to December 31, 2020 (from Revision E (May 2020) to Revision F (December 2020))

  • Updated the numbering format for tables, figures, and cross-references throughout the document.Go
  • Noted that Host Emulation support is an experimental product, and its limitations should be considered.Go
  • Added -fno-strict-aliasing option to command line for g++ compiler. Corrected error in sample code.Go
  • Array access operators are not supported for vector and complex element pointer types.Go
  • The vector ternary operator is not supported with C7000 Host Emulation.Go
  • Modified example code.Go
  • Modified example code.Go