Verilog 1 檔案讀寫有關操作

2021-10-07 08:00:20 字數 2913 閱讀 8912

module read_tb()

;reg clk;

reg rst_n;

reg [23:

0] img_in;

wire [23:

0] img_out;

parameter sum1=

49729

;//223*223=49729

parameter sum2=

49729

;//24025

reg [23:

0] data_in_ram[sum1:0]

;//in 暫存器組

reg [23:

0] data_out_ram[sum1+2:

0];integer i;

integer j;

integer fp_r,fp_w;

always #5 clk=

~clk;

//將輸入檔案資料讀取到暫存器組

initial

begin

i=0;

fp_w=$fopen

("e:/comp/crop/read_write/data_out.txt"

,"w");

fp_r=$fopen

("e:/comp/crop/read_write/data_in.txt"

,"r");

//以讀的方式開啟檔案,用/

while

(!$feof

(fp_r)

)begin

$fscanf

(fp_r,

"%b"

,data_in_ram[i]);

//每次讀一行,%d 十進位制方式

i = i +1;

end

$fclose

(fp_r)

;//關閉檔案

$display

("read over"

);

end//時鐘訊號與復位訊號處理

initial

begin

clk<=0;

rst_n<=0;

#8rst_n<=1;

end//陣列輸入到read模組,模組結果存到data_out_ram

integer counter_1=

0,counter_2=0;

always @(posedge clk or negedge rst_n) begin

if(!rst_n) begin

counter_1<=0;

img_in<=

24'b0;

endelse

if(counter_1img_in<=data_in_ram[counter_1]

; counter_1<=counter_1+1;

endelse begin

counter_1<=counter_1;

img_in<=

24'b0;

endend

// img_out的處理

reg over=0;

always @(posedge clk or negedge rst_n) begin

if(!rst_n) begin

counter_2=0;

endelse

if(counter_22) begin

data_out_ram[counter_2]

<=img_out;

counter_2<=counter_2+1;

endelse begin

over<=1;

endend

// 寫入檔案[將陣列的資料寫入檔案]

reg w_over=0;

initial begin

wait

(over)

fp_w=$fopen

("e:/comp/crop/read_write/data_out.txt"

,"w");

for(j=

0;j2;j=j+

1) begin

if((data_out_ram[j]

<

24'b1111_1111_1111_1111_1111_1111)

&&(data_out_ram[j]

>0)

) begin

$fwrite

(fp_w,

"%24b "

,data_out_ram[j]);

if(j%2==

1)

$fwrite

(fp_w,

"\n");

if(j%

223==

1)

$fwrite

(fp_w,

"\n"

);

end

end$fclose

(fp_w)

; w_over<=

1;

endread test(.

clk(clk),.

rst_n

(rst_n),.

img_in

(img_in),.

img_out

(img_out));

endmodule

// begin

// $readmemb("e:\comp\m\data_in.txt",data_in_ram);//以二進位制逐個讀取

// end

檔案操作《1》檔案的讀寫

檔案操作在c語言中是乙個不能忽略的知識點,學習檔案操作也可以解除大家對檔案的誤解,可能許多人會認為只有資料夾中的文字檔案,編譯c語言時的原始檔和標頭檔案才是檔案等,其實不能,計算機中的顯示器 滑鼠 鍵盤 印表機等都可以稱為檔案,沒想到吧,其中的鍵盤是標準輸入檔案,顯示器是標準輸出檔案 理解了檔案後我...

python3 檔案讀寫1

檔案 開啟檔案 r 檔案可讀可寫,不會建立檔案,從頂部開始寫,會覆蓋之前此位置的內容 with open output.txt r as f1 print name of the file f1.name 向開啟的檔案寫入內容,並沒有從檔案頂部開始寫啊,是為什麼?f1.write begin 追加在...

2019 10 15檔案的讀寫

開啟檔案的讀寫操作需要包含.為了讀而開啟檔案需要建立乙個ifstream物件,為了寫而開啟檔案,要建立乙個ofstream物件。檔案開啟了就可以像處理其他iostream物件一樣進行讀寫。將乙個檔案的內容拷貝到另乙個檔案 include include includeusing namespace ...