开发板介绍 [color=rgba(0, 0, 0, 0.87)]张天飞老师编写的《RISC-V体系结构编程与实践》,里面的源码是基于 QEMU 模拟器的,可以认为它是一款虚拟的开发板。如果需要在真实开发板上学习,可以使用百问网的 DongshanPI-D1S 开发板。 [color=rgba(0, 0, 0, 0.87)]DongshanPI-D1S 是百问网推出的一款基于 RISC-V 架构的学习裸机、 RTOS 的最小开发板。集成 CKLink 调试器,支持 OTG 烧录、 GDB 调试、串口打印,并将主芯片所有的信号全部引出,其中左右两侧兼容了树莓派的电源信号定义,可以很方便扩展模块。 [color=rgba(0, 0, 0, 0.87)]D1S 是针对智能解码市场推出的高性价比 AIoT 芯片,它使用阿里平头哥的 64bit RISC-V 架构的 C906 处理器,内置了 64M DDR2 ,支持 FreeRTOS、RT-Thread 等 RTOS ,也支持 Linux 系统。同时集成了大量自研的音视频编解码相关 IP ,可以支持 H.265、H.264、MPEG-1/2/4、JPEG 等全格式视频解码,支持 ADC、DAC、12S、PCM、DMIC、OWA 等多种音频接口,可以广泛应用于智能家居面板、智能商显、工业控制、车载等产品。 [color=rgba(0, 0, 0, 0.87)] [color=var(--md-typeset-a-color)]
下载资料[color=rgba(0, 0, 0, 0.87)]资料分两部分:开发板通用资料、《RISC-V体系结构编程与实践》的 D1S 源码。前者比较庞大,放在百度网盘;后者放在书籍配套的 GITEE 网站。 [color=rgba(0, 0, 0, 0.87)]开发板通用资料: [color=rgba(0, 0, 0, 0.87)]打开 http://download.100ask.net/boards/Allwinner/D1s/index.html ,可以看到 D1s课程配套通用资料 对应的百度网盘地址,请自行下载。本课程主要使用下图所示的软件: [color=rgba(0, 0, 0, 0.87)] [color=var(--md-typeset-a-color)][color=rgba(0, 0, 0, 0.87)]《RISC-V体系结构编程与实践》的 D1S 源码: [color=rgba(0, 0, 0, 0.87)]打开https://gitee.com/weidongshan/riscv_programming_practice,登录后按如下界面操作: [color=rgba(0, 0, 0, 0.87)] [color=var(--md-typeset-a-color)][color=rgba(0, 0, 0, 0.87)]点击“克隆/下载”按钮之后,如下点击 下载ZIP 即可: [color=rgba(0, 0, 0, 0.87)] [color=var(--md-typeset-a-color)][color=rgba(0, 0, 0, 0.87)]如果你没有点击 下载ZIP,而是使用 GIT 命令来下载,那么下载成功后还需要执行如下命令: code" style="box-sizing: inherit; -webkit-tap-highlight-color: transparent; font-size: inherit; font-family: inherit; background-image: initial; background-position: initial; background-size: initial; background-repeat: initial; background-attachment: initial; background-origin: initial; background-clip: initial; border-width: 0px; border-style: initial; border-color: initial; position: absolute; top: 0.5em; right: 0.5em; z-index: 1; width: 1.5em; height: 1.5em; border-radius: 0.1rem; outline: none; outline-offset: 0.1rem; cursor: pointer; transition: color 0.25s ease 0s;">git checkout DongShanPI_D1安装软件[color=rgba(0, 0, 0, 0.87)]需要安装如下5个软件,它们都位于网盘资料 开发板通用资料\05_开发配套工具\ 目录下: [color=rgba(0, 0, 0, 0.87)]① Git\Git-2.39.1-64-bit.exe:我们把它当做命令行,不能使用 Windows 自带的 DOS 命令行、Powershell(在里面无法执行 make 命令) [color=rgba(0, 0, 0, 0.87)]② make\make-3.81.exe:make 工具 [color=rgba(0, 0, 0, 0.87)]③ toolchain\Xuantie-900-gcc-elf-newlib-mingw-V2.6.1-gdbtui-20230210.tar.gz:这是 Windows 版本的交叉编译工具,并且支持 TUI [color=rgba(0, 0, 0, 0.87)]④ CKLinkServer\T-Head-DebugServer-windows-V5.16.6-20221102-1510.zip:这是调试服务软件 [color=rgba(0, 0, 0, 0.87)]⑤ xfe\xfe.exe:烧写工具 Git Bash[color=rgba(0, 0, 0, 0.87)]双击 开发板通用资料\05_开发配套工具\Git\Git-2.39.1-64-bit.exe 即可安装。 [color=rgba(0, 0, 0, 0.87)]启动 Git Bash 有两种方法: [color=rgba(0, 0, 0, 0.87)]① 点击 开始->Git->Git Bash [color=rgba(0, 0, 0, 0.87)]② 在文件浏览器进入某个目录后,在空白处点击右键弹出菜单后选择 Git Bash Here [color=rgba(0, 0, 0, 0.87)]在 Git Bash 中各种命令的用法跟 Linux 完全一样,比如也有cd、ls、rm 等命令。在 Git Bash 中,对路径的表示方法也跟 Linux 一样,比如 D 盘下的 abc 子目录使用 /d/abc 表示,而不是 D:\abc。 [color=rgba(0, 0, 0, 0.87)]在 Git Bash 中使用命令简单示范如下: [color=rgba(0, 0, 0, 0.87)] [color=var(--md-typeset-a-color)] make[color=rgba(0, 0, 0, 0.87)]双击 开发板通用资料\05_开发配套工具\make\make-3.81.exe 即可安装。安装时,要记住安装的路径,需要把安装路径下的 bin 目录放入环境变量 Path 里。 [color=rgba(0, 0, 0, 0.87)] [color=var(--md-typeset-a-color)][color=rgba(0, 0, 0, 0.87)]如下图把 C:\Program Files (x86)\GnuWin32\bin 添加进环境变量 Path : [color=rgba(0, 0, 0, 0.87)] [color=var(--md-typeset-a-color)][color=rgba(0, 0, 0, 0.87)]验证:启动 Git Bash 后执行 make -v 命令,如下图所示。 [color=rgba(0, 0, 0, 0.87)] [color=var(--md-typeset-a-color)] 交叉工具链[color=rgba(0, 0, 0, 0.87)]把 开发板通用资料\05_开发配套工具\toolchain\Xuantie-900-gcc-elf-newlib-mingw-V2.6.1-gdbtui-20230210.tar.gz 解压即可,注意路径名不要有中文。 [color=rgba(0, 0, 0, 0.87)]解压后要确认如下目录里的文件不是 0 字节: [color=rgba(0, 0, 0, 0.87)] [color=var(--md-typeset-a-color)][color=rgba(0, 0, 0, 0.87)]使用有些解压工具比如 banzip 可能会得到 0 字节的文件,建议使用 7-Zip 解压。 [color=rgba(0, 0, 0, 0.87)]解压成功后,可以看到 riscv64-unknown-elf-gcc.exe 文件,如下图所示: [color=rgba(0, 0, 0, 0.87)] [color=var(--md-typeset-a-color)][color=rgba(0, 0, 0, 0.87)]需要把 riscv64-unknown-elf-gcc.exe 文件所在目录放入 Path 环境变量里,具体方法可以参考 《1.3.2 make》。结果如下图所示: [color=rgba(0, 0, 0, 0.87)] [color=var(--md-typeset-a-color)][color=rgba(0, 0, 0, 0.87)]验证:启动 Git Bash 后执行 riscv64-unknown-elf-gcc -v 命令,如下图所示( Git Bash 支持命令补全功能,输入 risc 后按 TAB 键会自动补全命令)。 [color=rgba(0, 0, 0, 0.87)] [color=var(--md-typeset-a-color)] 调试服务软件[color=rgba(0, 0, 0, 0.87)]先解压文件: 开发板通用资料\05_开发配套工具\CKLinkServer\T-Head-DebugServer-windows-V5.16.6-20221102-1510.zip 。 [color=rgba(0, 0, 0, 0.87)]再双击里面的 setup.exe 即可安装。 烧写工具[color=rgba(0, 0, 0, 0.87)]把 开发板通用资料\05_开发配套工具\xfel 目录复制到其他非中文路径即可。 [color=rgba(0, 0, 0, 0.87)]还需要把 xfel.exe 文件所在目录放入 Path 环境变量里,具体方法可以参考 《1.3.2 make》 。结果如下图所示: [color=rgba(0, 0, 0, 0.87)] [color=var(--md-typeset-a-color)][color=rgba(0, 0, 0, 0.87)]验证:启动 Git Bash 后执行 xfel --help 命令,如下图所示。 [color=rgba(0, 0, 0, 0.87)] [color=var(--md-typeset-a-color)]
|