DSP Development Documentation
DSP Introduction
The Horizon J6 computing platform incorporates DSP cores that utilize Cadence's Tensilica Vision Q8 and Vision 130 DSP IP.
The Vision Q8 DSP is dedicated to supporting algorithms such as computer vision or image processing, the Very Long Instruction Word (VLIW) and Single Instruction Multiple Data Stream (SIMD) can greatly increase the speed of computation. Vision Q8 DSP adopts 5-way VLIW architecture. Each instruction can contain two 64-byte loads or one 64-byte load and one 64-byte store at most. SIMD supports 1024bit operations, such as 128-way 8-bit integer, 64-way 16-bit integer, etc. For more information about the Vision Q8 DSP, see Cadence's Vision Q8 User Guide.
The Horizon J6B development board uses the Vision 130 DSP component, which supports VLIW and SIMD acceleration. Some configuration information differs from that of the Vision Q8, such as SIMD supporting 512bit operations. For more information about the Vision 130 DSP, see Cadence's V130 DSP User Guide.
DSP boasts powerful computing power, and when used properly, deploying some computations that cannot be accelerated with BPU and are inefficient with ARM to DSP can greatly improve the inference performance of the model.
Linux Development Environment Installation
Development Tool Introduction
Xtensa Xplorer is an integrated development environment provided by Cadence for customers to develop software for their DSPs, which provides such functions as software development, compilation, debugging, simulation, profiling, hardware trace, etc. This section introduces only the installation of the Linux development environment. The installation and use of the Windows development environment can be found in the official documentation provided by Cadence.
Install DSP Toolchain and Configure Core
You can get the DSP development package from Horizon Robotics, which contains the Xplorer-10.1.11-linux-x64-installer.bin and the Vision_Q8_linux.tgz installer, as well as the installation package for the Vision 130 DSP.
The installation steps for different versions of DSP are the same and will not be repeated. Please refer to the following steps.
- Install Xtensa Develop Tools
By default, install Xtensa Develop Tools in the /opt/xtensa directory, but you can specify another directory as required. If you install it in the /opt/xtensa directory, a root permission is required. Execute the following command:
- Install Vision Q8 Core Configuration
Unzip and extract the Vision_Q8_linux.tgz installation package, put it in the specified location under the Xtensa Develop Tools installation directory (e.g., /opt/xtensa/XtDevTools/install/builds/RI-2023.11-linux/ ), and then install it. You need to execute the following command:
- Configure environment variables
In order to ensure that Xtensa Develop Tools can be used properly, you need to set the following environment variables:
The license should be set correctly before you use Xtensa Develop Tools, please contact your Horizon project contact person for application and configuration.
- Xtensa Develop Tools testing
Execute the following two commands. If these two commands can be executed normally, the linux development environment is successfully installed.
DSP Development Reference Materials
For better DSP development, we recommend that you refer to the following documents.
After the compiler has been installed successfully, the following documents can be found in the paths XtDevTools/downloads/RI-2023.11/docs and XtDevTools/install/builds/RI- Found under 2023.11-linux/Vision_Q8/html/ISA:
