Colorbars basics show up
This commit is contained in:
parent
4ead7d4d5b
commit
fce90e9269
1 changed files with 48 additions and 25 deletions
73
src/top.v
73
src/top.v
|
|
@ -25,6 +25,13 @@ module proc_top(
|
|||
|
||||
/* Color bar generator */
|
||||
|
||||
parameter CB_HRES = 1280;
|
||||
parameter CB_VRES = 720;
|
||||
parameter CB_H_FP = 68;
|
||||
parameter CB_H_BP = 300;
|
||||
parameter CB_V_FP = 25;
|
||||
parameter CB_V_BP = 5;
|
||||
|
||||
reg [11:0] cb_x = 0;
|
||||
reg [11:0] cb_y = 0;
|
||||
reg [11:0] cb_cnt = 0;
|
||||
|
|
@ -43,39 +50,55 @@ assign out_green = cb_green;
|
|||
assign out_blue = cb_blue;
|
||||
|
||||
always @(posedge clk) begin
|
||||
cb_red <= 8'hff;
|
||||
cb_green <= 8'h00;
|
||||
cb_blue <= 8'h00;
|
||||
|
||||
if (cb_x == 1279) begin
|
||||
cb_blank <= 1;
|
||||
end else if (cb_x == 1648-1 && (cb_y == 749 || cb_y < 719)) begin
|
||||
cb_blank <= 0;
|
||||
end
|
||||
cb_x <= cb_x + 1;
|
||||
|
||||
if (cb_x == 1280+72-1) begin
|
||||
cb_hsync <= 1;
|
||||
end else if (cb_x == 1280+72+80-1) begin
|
||||
cb_hsync <= 0;
|
||||
end
|
||||
cb_hsync <= cb_x >= 8 && cb_x <= 15;
|
||||
cb_vsync <= cb_y >= 4 && cb_y <= 7;
|
||||
|
||||
if (cb_x == 1648-1) begin
|
||||
if (cb_x == CB_H_FP + CB_HRES + CB_H_BP - 1) begin
|
||||
cb_x <= 0;
|
||||
cb_y <= cb_y + 1;
|
||||
|
||||
if (cb_y == 720+3-1) begin
|
||||
cb_vsync <= 1;
|
||||
end else if (cb_y == 720+3+5-1) begin
|
||||
cb_vsync <= 0;
|
||||
end
|
||||
|
||||
if (cb_y == 750-1) begin
|
||||
if (cb_y == CB_V_FP - 1) begin
|
||||
cb_vactive <= 1;
|
||||
|
||||
end else if (cb_y == CB_V_FP + CB_VRES - 1) begin
|
||||
cb_vactive <= 0;
|
||||
|
||||
end else if (cb_y == CB_V_FP + CB_VRES + CB_V_BP - 1) begin
|
||||
cb_y <= 0;
|
||||
end else begin
|
||||
cb_y <= cb_y + 1;
|
||||
end
|
||||
|
||||
end else begin
|
||||
cb_x <= cb_x + 1;
|
||||
end else if (cb_vactive && (cb_x == CB_H_FP - 1)) begin
|
||||
cb_red <= 0;
|
||||
cb_green <= 0;
|
||||
cb_blue <= 0;
|
||||
cb_blank <= 0;
|
||||
cb_cnt <= 0;
|
||||
cb_bar <= 0;
|
||||
|
||||
end else if (cb_vactive && (cb_x == CB_H_FP + CB_HRES - 1)) begin
|
||||
cb_blank <= 1;
|
||||
|
||||
end
|
||||
|
||||
if (!cb_blank) begin
|
||||
cb_cnt <= cb_cnt + 1;
|
||||
|
||||
if (cb_cnt == 255) begin
|
||||
cb_cnt <= 0;
|
||||
cb_bar <= cb_bar + 1;
|
||||
|
||||
if (cb_bar == 7) begin
|
||||
cb_bar <= 0;
|
||||
end
|
||||
|
||||
cb_red <= {8{cb_bar[0]}};
|
||||
cb_green <= {8{cb_bar[1]}};
|
||||
cb_blue <= {8{cb_bar[2]}};
|
||||
end
|
||||
|
||||
end
|
||||
end
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue