嵌入式系統(tǒng)芯片的軟硬件協(xié)同仿真環(huán)境設(shè)計
3 軟件仿真
ARM匯編器工具ARMASM、ARM的C/C++編譯工具ARMCC和ARMCPP,以及ARM的鏈接工具ARMLINK,利用ARM工具對軟件代碼進行編譯鏈接生成的文件格式為ELF格式(Executable Link File),原始代碼在文件中的位置通過SCATTER文件指定,ARM提供了fromelf工具,該工具將ELF格式的文件根據(jù)運行時域轉(zhuǎn)化為二進制文件,以便在仿真起始階段將代碼放到指定的Memory中。在makefile中將ELF格式轉(zhuǎn)化為BIN文件的具體實例如下:
Fromelf-bin output./softWare.elf
上述語句表示將software.elf文件轉(zhuǎn)化為二進制文件放到當(dāng)前目錄。
在軟硬件協(xié)同仿真的初始階段,需要將生成的二進制文件導(dǎo)入相應(yīng)的存儲器中,這通過Verilog提供的系統(tǒng)函數(shù)fread實現(xiàn)。下面是一個將二進制文件導(dǎo)入存儲器的實例,先通過$fopen函數(shù)讀出文件地址,然后通過$fread函數(shù)將指定地址的文件數(shù)據(jù)傳給變量inst_fik_word,最后將變量inst_file_world中的值傳給存儲器中的相應(yīng)地址單元。在DSM仿真中都需要一個這樣的“橋梁”文件,將軟件和邏輯鏈接起來。
linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)
評論