对于 1024 点 FFT 的 C 语言程序的交叉编译,需要在原始的 RISC-V 交叉编译环境的基础之上,添加一些必要的嵌入式开发文件、相关的链接处理步骤以及具体的 SoC 实现平台等等。
RISC-V 交叉编译环境配备完毕之后,还需要针对性地修改 1024 点 FFT 的 C 代码。主要是在 FFT 纯软件程序实现的基础上,加入了一些基于嵌入式开发的软件编程。
接下来,就可以在 Ubuntu 16.04 的 Linux 开发环境中,生成 FFT.c 对应的 FFT.o 目标文件。同时,还需要生成 1024 点 FFT 的 RISC-V 嵌入式系统的其余的目标文件。其中,包括了系统上电初始化文件 init.o、系统上电启动引导程序文件 start.o、串口外设文件 uart.o 以及串口输出文件 xprintf.o 等等。这些文件的生成不仅仅依赖于 FFT 设计的板级支持包(Board Support Package,BSP)、部分的主程序以及相关的库文件