假设我有一个文件填充了由制表分隔的数据(以这种格式):
1 2
3 4
5 6
我希望从一行中成对读取这些数据,结果如下:
var1=1;
var2=2;
var1=3;
var2=4;
var1=5;
var2=6;
我该怎么办?现在我的代码适用于单行上的单个数据(参见下文):
read_from_file: process(clk)
variable input_data: natural;
variable ILine: line;
begin
for i in 0 to NSAMPLES-1 loop
readline (input_vectors, ILine);
read(ILine, input_data);
end loop;
end process;
感谢您的帮助!
答案 0 :(得分:1)
您应该可以再次调用read
功能。
例如:
read_from_file: process(clk)
variable input_data_column1: natural;
variable input_data_column2: natural;
variable ILine: line;
begin
for i in 0 to NSAMPLES-1 loop
readline (input_vectors, ILine);
read(ILine, input_data_column1);
read(ILine, input_data_column2);
-- Now you can do things like conv_std_logic_vector(input_data_column1, bitwidth) etc
end loop;
end process;
注意:如果接受任何空格,我不肯定。空间对我有用。