现在,我实现了一个ASP(特定于应用程序的处理器),我希望用RISC类型的架构来开发它。在网上读了一下,我得出结论,最好的选择是使用RISC-V。
我们的想法是在Verilog中开发一个设计,以便它可以运行RISC-V ISA。而处理器应运行的软件应用程序非常简单,只需少量算术运算。因此,由于只有一个应用程序,因此处理器不必支持操作系统。
我正在考虑从我的C应用程序生成一个hex文件并将该文件加载到ROM内存中。但我找不到如何从C代码中生成hex文件?
我使用 riscv64-unknown-elf-gcc
正确构建了我的程序但我不知道如何生成hex文件。
有人可以告诉我如何创建此文件?
答案 0 :(得分:1)
您可以使用在构建RISC-V工具链时安装的程序elf2hex
。您可以在riscv-tests / benchmark存储库的Makefile(https://github.com/riscv/riscv-tests/blob/master/benchmarks/Makefile)中看到生成hex文件的示例:
%.hex: %
elf2hex 16 32768 $< > $@
用法:
elf2hex <width> <depth> <elf_file>