DSP 编译环境

所需材料

为了开发 HiFi5 DSP,首先需要下载 软件包 和准备 Xtensa Xplorer 许可证

软件包

根据使用操作系统的不同,下载对应的软件包。

下载项

软件包

说明

Xtensa Xplorer Installer

Linux

  • Xplorer-9.0.18-linux-x64-installer.bin

  • XtensaTools_RI_2021_8_patch734507_linux.tgz

或者联系 Realtek 获取。
Linux Patch 文件是为了解决极少数情况下的编译器崩溃问题。
Windows 可以通过GUI获取Patch更新。

Windows

Xplorer-9.0.18-windows-installer.exe

HiFi5 DSP Configurations

Linux

  • HIFI5_PROD_1123_asic_UPG_linux_redist.tgz

  • HIFI5_PROD_1123_asic_wUPG_linux_redist.tgz

可以从 Realtek 发布的 DSP SDK( configurations 文件夹)中获取。

Windows

  • HIFI5_PROD_1123_asic_UPG_win32_redist.tgz

  • HIFI5_PROD_1123_asic_wUPG_win32_redist.tgz

Xtensa Xplorer 许可证

除了上文提到的软件包以外,Xtensa Xplorer 许可证也是必不可少的。

联系 <claire_wang@realsil.com.cn> 可申请一份临时许可证。

申请许可证时,邮件中必须包含以下信息:

  • MAC 地址

  • 工作单位

  • 学校/学院 (仅学生)

../../rst_dsp/dsp_environment/figures/apply_for_license_email_cn.png

备注

  • 一人只能申请一份许可证。

  • 临时许可证的有效期是 3 个月。

安装方法

Xplorer 软件是 Cadence 公司提供的基于图形界面的集成开发环境(IDE),用于编译 DSP 应用程序。

1. 安装 Xtensa Xplorer

双击安装程序,并按照提示完成安装。

备注

  • Xplorer 安装程序的版本为 9.0.18。

  • 安装完成后,首次启动 Xplorer 图形界面时通常会提示软件更新。请务必执行更新操作,因为新补丁将修复工具链的若干问题,这些问题可能导致编译器异常终止。若遇到编译特定代码段时编译器崩溃的情况,请更新工具链后重新尝试编译。

  • 请记录 IDE 的安装路径。本文档使用的安装路径为 C:\usr

2. 安装 HiFi5 DSP Configuration

编译配置(Build Configuration)是描述 Tensilica 处理器实现所需全部参数和必要编译组件的术语。在开始 DSP 开发前必须安装特定编译配置。

后续章节将使用名为 dsp_sdk 的默认 SDK。若未获取该 SDK,请联系 Realtek 现场应用工程师(FAE)。

以下是 HiFi5 DSP Configuration 的具体安装步骤:

  1. 双击 RUN Xplorer 9.0.18

  2. 点击 Browse 将 workspace 设置为 <dsp_sdk>\project

    ../../rst_dsp/dsp_environment/figures/set_workspace_in_xtensa_xplorer_launcher.png
  3. 点击 Launch 进入 Xplorer 主界面。

    默认位于左下方的 System Overview 可用于安装 Configuration。

  4. System Overview 面板未显示,可通过菜单 Window > Show View > System Overview,右键点击 Configuration 并选择 New Configuration

    ../../rst_dsp/dsp_environment/figures/new_configuration_in_system_overview.png
  5. 在新弹出的窗口中选择第四项,点击 Next

    ../../rst_dsp/dsp_environment/figures/fourth_item_in_the_new_xtensa_configuration.png
  6. 点击 Browse 定位配置文件(默认位于 <dsp_sdk>\configurations 目录下),接着点击 Add Build,最后点击 Finish

    • HIFI5_PROD_1123_asic_UPG_win32_redist.tgz 对应 CALL0 ABI

    • HIFI5_PROD_1123_asic_wUPG_win32_redist.tgz 对应 Window ABI

    以安装 CALL0 ABI 配置为例:

    ../../rst_dsp/dsp_environment/figures/install_xtensa_build.png

    System Overview 面板中出现下图红框标注的条目,则表明配置已成功安装:

    ../../rst_dsp/dsp_environment/figures/hifis_prod_1123_asic_upg_in_system_overview.png
  7. 重复相同步骤安装另一个 ABI 配置(Window ABI)。

  8. 将 Xtensa 工具的 bin 目录添加到系统环境变量中,否则部分辅助脚本可能无法定位可执行文件。Windows 系统下的路径为: C:\usr\xtensa\XtDevTools\install\tools\RI-2021.8-win32\XtensaTools\bin

3. 安装许可证

License 有两种形式:

  • floating license:需要客户自行从 cadence 购买。安装时需要配置 license 授权服务所在服务器的地址和 port。

  • node-locked license:可以从 Realtek 申请。建议客户使用此方式。

安装许可证的方法如下:

  1. 点击 Xplorer 上方的 Help 菜单,选择 Xplorer License Keys

  2. 点击 Install Software Keys

    ../../rst_dsp/dsp_environment/figures/xplorer_license_keys.png
  3. 使用 floating license 时,在对话框中填写服务器的端口和 IP 地址;使用 node-locked license 时,在右侧选择 xxx.lic 授权文件。

    ../../rst_dsp/dsp_environment/figures/install_xplorer_and_xtensa_tools_license_keys.png
  4. 点击 Finish

调试插件

Xtensa 片上调试器守护程序(Xtensa on Chip Debugger Daemon xt-ocd)是一款基于 GDB 的强大调试工具。该工具默认不随 Xplorer IDE 安装。Xplorer 中包含一个自解压的可执行安装程序。 首先参考此处 安装 J-link 驱动

以下是 xt-ocd 的简要安装方法。更多 xt-ocd 使用指南,请参阅 xtensa_debug_guide.pdf

Xplorer 的建议安装路径为 C:\usr\xtensa\XtDevTools\downloads\RI-2021.8\tools\xt-ocd-14.08-windows64-installer

由于安装路径和软件版本存在差异,实际路径和安装程序名称可能有所不同。

常见问题

Xplorer 依赖和环境问题

  • DSP SDK 需要 python3 环境。若不想更改系统默认 Python 版本,参考编译程序章节说明修改后处理命令(右键 Xtensa Xplorer > Tasks > Building your Project > Building multiple projects),然后在编译后命令中指定 python3。

  • 若系统中安装了其他版本 Xplorer 且其他版本的 bin 目录已加入系统 PATH,当直接使用 xt-clang 和 xt-ar(如通过 Cmake、Makefile 或 python)进行编译链接而非通过 Xplorer 时,链接过程可能出现注册表值错误:当前 Xtensa 配置未正确安装,或使用的 Xtensa 工具与配置安装时指定的路径不一致。此时需要用户正确管理 path 变量。

  • 若 Xplorer 能正常编译 SDK 但自定义编译方式(比如使用第三方 lib 的 Cmake)出现上述问题,通常是由于系统 PATH 中包含其他版本 Xtensa 工具的 bin 目录导致。检查 PATH 设置(如 profile 文件),然后重新打开终端。有时会话中的临时设置也会导致 PATH 问题。

auto_build.sh 编译脚本问题

  • 当前 dsp_batch.xml 默认导入并编译 project_dsp 项目。如需更改编译项目、目标或配置,需修改 dsp_batch.xml 文件,或使用 Xplorer batch build 生成目标 xml 文件(参考 Xplorer 帮助文档 Xtensa Xplorer > Tasks > Building your Project > Building multiple projects)。

  • 默认 Xplorer IDE 路径为 /opt/xtensa/Xplorer-9.0.18/xplorer,需根据实际安装位置和 Xplorer 版本修改 auto_build.sh 里的 IDE 路径。

  • 当前 auto_build.sh 编译时会创建新工作区(<sdk_root>/dsp/auto_ws)并导入项目进行编译。脚本会自动清空并重新导入项目,否则本地 Xplorer 的项目修改无法同步。因此该脚本每次都是全量编译,当前只有 GUI 才支持增量编译。

Linux 项目配置

问题描述

修改项目配置(如修改编译选项、增删文件等)需要使用 Xplorer GUI 集成开发环境,但是 Linux Server 没有 GUI。

原因分析

Cadence 的 Xplorer 工程,不建议直接手动修改工程配置源文件。使用 GUI 修改更稳定可靠。 在 Linux 服务器上,可通过 X11 协议将 Xplorer GUI 窗口远程显示到本地终端。方法如下:

解决办法

  1. /etc/ssh/sshd_config 文件中 X11Forwarding 标志设为 yes

  2. 执行以下命令

    sudo apt-get install dbus-x11
    /opt/xtensa/Xplorer-9.0.18/xplorer
    

    Xplorer 的 GUI 窗口将弹出到本地计算机。如果客户的 ssh 终端不支持远程显示,可以使用 MobaXterm。

XT-OCD Debug 问题

问题描述

在 Linux Xplorer 中进行调试时出现如下 “Cannot Find OCD Daemons” 错误:

../../rst_dsp/dsp_environment/figures/cannot_find_ocd_daemons.png

原因分析

xt-ocd 版本或者路径未正确配置。

解决办法

在文件 /opt/xtensa/Xplorer-9.0.18/utils/xocdm9.0.18.3000/xocdm.ini 中的 # [XOCDInstallations] 后添加一行:

14.08=/opt/Tensilica/xocd-14.08