VHDL - 读取HEX文件

时间:2013-11-29 15:13:29

标签: file file-io hex vhdl

VHDL - init std_logic_vector array from HEX file我几乎已经解决了HEX文件的RAM初始化问题。但从文件中读取似乎不起作用。

function ram_init(filename : string) return memory_array is
    variable temp : memory_array;
    file file_ptr : text;
    variable line_line : line;
    variable line_text : string(1 to 14);
    variable tmp_hexnum : string(1 to 2);
    variable lines_read : integer := 0;
    begin
        file_open(file_ptr,filename,READ_MODE);
        while (lines_read < 32 and not endfile(file_ptr)) loop
            readline (file_ptr,line_line);
            read (line_line,line_text);
            tmp_hexnum := line_text(10 to 11);
            temp(lines_read) := hex_to_bin(tmp_hexnum);
            lines_read := lines_read + 1;
        end loop;
        file_close(file_ptr);
    return temp;
end function;
signal ram : memory_array := ram_init(filename=>"../RAM.HEX");

如果我将tmp_hexnum设置为例如“0A”,没关系,但是从文件中读取不会填满RAM。

请您帮我查一下文件部分吗?

0 个答案:

没有答案