地平线J6处理器中包含两个DSP核,时钟频率为1GHz,使用的是Cadence公司的Tensilica Vision Q8 DSP IP。
Vision Q8 DSP专用于支持计算机视觉或图像处理等算法,超长指令字(VLIW)与单指令多数据流(SIMD)可以很大程度提升计算的速度。Vision Q8 DSP采用5路VLIW架构,每条指令最多可以包含两个64字节加载或一个64字节加载和一个64字节存储;SIMD支持1024bit的操作,如:128路8位整型,64路16位整型等。更多关于Vision Q8 DSP的信息,可参见Cadence的Vision Q8 用户手册。
DSP拥有强大的计算能力,在使用得当的情况下,将一些不能用BPU加速且ARM低效的计算部署到DSP上可以大大提高模型的推理性能。
Xtensa Xplorer是Cadence为客户提供的针对其DSP进行软件开发的一个集成开发环境,具有软件开发(software development)、编译(compile)、调试(debugging)、仿真(simulation)、性能分析(profiling)、硬件跟踪(hardware trace)等功能。本开发文档中将只介绍Linux开发环境的安装,Windows开发环境的安装使用可参考Cadence提供的官方文档。
您可以从地平线获取DSP开发包,开发包中包含 Xplorer-9.0.17-linux-x64-installer.bin 和 Vision_Q8_linux.tgz 安装包。
这里我们默认将 Xtensa Develop Tools 安装在 /opt/xtensa 目录下,您也可以自行指定其他目录。若安装在 /opt/xtensa 目录则需要root权限。执行如下命令:
将 Vision_Q8_linux.tgz 安装包解压,解压后将其放在 Xtensa Develop Tools 安装目录下指定位置(如:/opt/xtensa/XtDevTools/install/builds/RI-2021.7-linux/ ),放到指定位置后进行安装。安装需要执行如下命令:
为保证 Xtensa Develop Tools 的正常使用,您需要设置以下环境变量:
Xtensa Develop Tools 的使用需要正确配置License,申请和配置方式请联系地平线项目对接人。
执行如下两个命令,如果此两命令可以正常执行,则表明linux开发环境安装成功:
为了更好地进行DSP开发,我们建议您参考以下文档,编译器安装成功后,以下文档可在路径 XtDevTools/downloads/RI-2021.7/docs 及XtDevTools/install/builds/RI-2021.7-linux/Vision_Q8/html/ISA 下找到:
| 编号 | 文档名称及描述 | 文档目录 |
|---|---|---|
| 1 | Vision Q8 DSP 介绍文档 | visionq8_ug.pdf |
| 2 | Dev Toolkit 使用介绍文档 | sw_dev_toolkit_ug.pdf |
| 3 | Compiler 使用介绍文档 | xtensa_xt_clang_compiler_ug.pdf |
| 4 | Xi Library 文档,位于XI_Library_7.14.2.xws 工程 Doc目录 | XI_Library_UserGuide.pdf |
| 5 | Profiler 使用说明文档 | gun_profiler_ug.pdf |
| 6 | Vision Q8 DSP 指令 | NewISAhtml/index.html |