Altera_Forum
Honored Contributor
15 years agodelay
hello,
i have a little question for you, guys....how can i put a delay between two if instructions (the second if to be executed after a few seconds)..........the code is in verilog. thx, tastaxhello,
i have a little question for you, guys....how can i put a delay between two if instructions (the second if to be executed after a few seconds)..........the code is in verilog. thx, tastaxwe have reset, also. The code is:
always@(posedge iCLK or negedge iRST_n) begin if (!iRST_n) begin pattern_data <= 8'h00; cnt <= 0; r1<=0; r2<=0; r3<=0; r4<=0; r5<=0; r6<=0; r7<=0; r8<=0; r9<=0; nr1<=0; nr2<=0; nr3<=0; nr4<=0; nr5<=0; nr6<=0; nr7<=0; nr8<=0; nr9<=0; culoare<=1; once1<=0; once2<=0; once3<=0; once4<=0; once5<=0; once6<=0; once7<=0; once8<=0; once9<=0; cul1<=0; cul2<=0; c1<=0; c2<=0; c3<=0; c4<=0; c5<=0; c6<=0; c7<=0; c8<=0; c9<=0; end else if((x_cnt>(Hsync_Blank-1))&&(x_cnt<(H_LINE-Hsync_Front_Porch))) begin pattern_data <= graycnt; red_1 <= pattern_data; green_1 <= 0; blue_1 <= 0; cnt <= cnt + 1'b1; if ((iY_COORD>100)&&(iY_COORD<1370)&&(iX_COORD>100)&&(iX_COORD<1353)&&(x_cnt>750)&&(x_cnt<1010)&&(y_cnt>358)&&(y_cnt<511)) begin r1<=1; r2<=1; if ((once1 == 1'b0)&&(culoare<=9)) begin culoare<=culoare+1; nr1<=culoare; once1=1'b1; nr2<=culoare+1; if (culoare%2==1) begin cul1<=cul1+1; c1<=1; end else if(culoare%2==0) begin cul2<=cul2+1; c1<=2; end end end if ((r1)&&(x_cnt>750 )&&(x_cnt<1010)&&(y_cnt>358)&&(y_cnt<511)) // r1 "if" begin if ((nr1%2==1)) begin pattern_data <= 200; blue_1 <= pattern_data; end else if ((nr1%2==0)&&(nr1!=0)) begin pattern_data <= 200; green_1 <= pattern_data; end end if ((iY_COORD>1371)&&(iY_COORD<2677)&&(iX_COORD>100)&&(iX_COORD<1353)&&(x_cnt>485)&&(x_cnt<742)&&(y_cnt>358)&&(y_cnt<511)) begin r2<=1; if ((once2 == 1'b0)&&(culoare<=9)) begin culoare<=culoare+1; nr2<=culoare; once2=1'b1; if (culoare%2==1) begin cul1<=cul1+1; c2<=1; end else if(culoare%2==0) begin cul2<=cul2+1; c2<=2; end end end if ((r2)&&(x_cnt>485)&&(x_cnt<742)&&(y_cnt>358)&&(y_cnt<511)) // r2 "if" begin if (nr2%2==1) begin pattern_data <= 200; blue_1 <= pattern_data; end else if ((nr2%2==0)&&(nr2!=0)) begin pattern_data <= 200; green_1 <= pattern_data; end end end between the r1 "if" and r2 "if" we have to produce a delay. thx