3 软件仿真
ARM汇编器工具ARMASM、ARM的C/C++编译工具ARMCC和ARMCPP,以及ARM的链接工具ARMLINK,利用ARM工具对软件代码进行编译链接生成的文件格式为ELF格式(Executable Link File),原始代码在文件中的位置通过SCATTER文件指定,ARM提供了fromelf工具,该工具将ELF格式的文件根据运行时域转化为二进制文件,以便在仿真起始阶段将代码放到指定的Memory中。在makefile中将ELF格式转化为BIN文件的具体实例如下:
Fromelf-bin output./SOFtWare.elf
上述语句表示将software.elf文件转化为二进制文件放到当前目录。
在软硬件协同仿真的初始阶段,需要将生成的二进制文件导入相应的存储器中,这通过Verilog提供的系统函数fread实现。下面是一个将二进制文件导入存储器的实例,先通过$fopen函数读出文件地址,然后通过$fread函数将指定地址的文件数据传给变量inst_fik_word,最后将变量inst_file_world中的值传给存储器中的相应地址单元。在DSM仿真中都需要一个这样的“桥梁”文件,将软件和逻辑链接起来。
上一页 [1] [2] [3] [4] [5] 下一页