在testbench常用到文件的读取
reg [9:0] img [1:data_num]; //数组形式存储读出的数据integer file_out; integer file_out_u; integer file_out_v; initial
begin
//读文件到mem中$readmemh("img_bayer.txt",img); //读取十六进制格式文件使用readmemh。$readmemb("img_bayer.txt",img); //读取二进制格式的文件是用readmemb;
//其命令为$readmemb(“filename”, mem_name),将filename中的内容读取到mem_name中。file_out=$fopen("image_out_r.txt","w"); //以写的方式打开文件file_out_u=$fopen("image_out_g.txt","w");file_out_v=$fopen("image_out_b.txt","w");
// fp_r=$fopen("data_in.txt","r");//以读的方式打开文件
// 用$fopen打开文件会将原来的文件清空,这个语句不会清空原来文件中的数据。
// 用$fopen的情况是为了取得句柄,即文件地址, end always @(posedge clk)beginif(en)begin$fwrite(file_out, "%d\n", data_out);if(cnt==1)begin$fclose(file_out); $stop;endend
// $fwrite(data_wr0,"%d\n",Sig0[m]); //向txt写十进制 写下一个数不会自动转行,所以要加\n// for input img data
always @(*)begindin < = 'h0;if(dval) begindin <= img[v_cnt*IMG_WIDTH+h_cnt];endend