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