资料准备
要编译和仿真DSP,需要以下资料:
- DSP 核 SDK,SDK 需要包含DSP 编译源码。
- Cadence Xtensa 的 Windows IDE 工具 (Xplorer‑8.0.13 版本), Windows 版本 DSP 的 package 包。
- Cadence Xtensa 的 License,用于服务器代码编译和Xplorer 仿真使用。
其中 Allwinner 提供 DSP 核 SDK 源码包,IDE 工具和 Licence 需要向 Cadence 申请。Allwinner 不提供 IDE 工具和 Licence 的授权。
- 申请链接:https://www.cadence.com/en_US/home/tools/ip/tensilica-ip/technologies.html
- Xplorer 下载链接:https://www.cadence.com/en_US/home/tools/ip/tensilica-ip/sdk-download.html
如果已经拥有授权,需要获取开发的相关资料,请准备以下内容申请:
- 公司名称
- 项目背景
- 公司获得的 Cadence 授权相关证明
可以通过客服,或者前往 全志在线开发者论坛 发帖询问,有相关的专人对接。
Linux 环境搭建
XCC 安装
把 XCC 工具链压缩包放在目录下:
<root>/XtDevTools/install/
进行解压,解压后工具链应该存放在:
<root>/XtDevTools/install/RI‑xxxx‑linux/XtensaTools
package 包安装
DSP 核配置包由数字设计提供,一般为一个tgz 压缩包,可使用以下命令自动安装:
./build.sh
环境变量
envsetup.sh
环境变量主要宏如下:
- PATH 添加编译工具链bin/路径;
- LM_LICENSE_FILE license服务器地址;
- XTENSA_SYSTEM DSP核心配置包安装后的路径;
- XTENSA_CORE DSP核心配置包名称;
- XTENSA_TOOLS_DIR XCC工具链位置。
当想自定义编译环境或者排除编译环境问题,可以通过检查以上宏是否设置正确。
环境变量命令
envsetup.sh
脚本同时导出一些命令,用于快速执行某些命令操作。
- croot // 快速跳转到DSP FreeRTOS SDK 根目录
- doobjdump // 执行objdump 命令反编译DSP elf 文件
- dogenlds // 重新生成链接脚本
- callstack // 执行栈回溯结果解析命令
- mdsp // 编译dsp
编译代码
配置环境变量
source build/envsetup.sh
编译代码
执行./build.sh
编译
下载固件
- 把 DSP FreeRTOS SDK 目录下的
dsp_raw.bin
拷贝到 R128 根SDK 下的board/r128s/xxx/bin/
下,并重命名为rtos_dsp_sun20iw2p1.fex
。 - R128 SDK 下重新打包烧录,即可更新DSP 固件。
Windows 环境
安装 Xtensa Xplorer
Windows 下直接双击安装文件进行安装。
然后同意许可文件
记得修改下载的地址
选择 “否”
点击 Next -> Next -> Next -> Next
开始安装
去掉这个勾
选择工作环境
初始化中
License 配置
在这里配置 License 即可
安装 package 包
检查 package
没有对应package,我们要手动安装:
选择此项
找到 package 的 tgz 文件
导入即可