Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //Time in horizontal lines
- parameter HorTimeWidth = 10'd128;
- parameter HorFrontPorch = 10'd40;
- parameter HorBackPorch = 10'd88;
- parameter HorTimeToDisplay = 10'd800;
- parameter HorTotalTime = 12'd1056;
- parameter HorSyncStart = 10'd840;
- //Time in Vertincal lines
- parameter VerTimeWidth = 10'd4;
- parameter VerFrontPorch = 10'd1;
- parameter VerBackPorch = 10'd23;
- parameter VerTimeToDisplay = 10'd600;
- parameter VerTotalTime = 10'd628;
- parameter VerSyncStart = 10'd601;
- parameter initial_borders = 10'b0;
- //Horizontal counter
- always @(posedge pclk or posedge rst)
- if (rst)
- hcount <= initial_borders;
- else
- begin
- if (hcount == HorTotalTime)
- hcount <= initial_borders;
- else
- hcount <= hcount + 1;
- end
- //Vertical counter
- always @(posedge pclk or posedge rst)
- if (rst)
- vcount <= initial_borders;
- else begin
- if (hcount == HorTotalTime)
- begin
- if (vcount == VerTotalTime)
- vcount <= initial_borders;
- else
- vcount <= vcount +1;
- end
- end
- always @(posedge pclk or posedge rst)
- if (rst)
- begin
- hsync <= initial_borders;
- vsync <= initial_borders;
- vblnk <= initial_borders;
- hblnk <= initial_borders;
- end
- else begin
- if (hcount >= HorSyncStart && hcount < HorTotalTime) begin
- hsync <= 1;
- if (vcount >= VerTimeToDisplay && vcount < VerTotalTime)
- vblnk <= 1;
- else
- vblnk <= 0;
- if (vcount >= VerSyncStart && vcount < VerTotalTime)
- vsync <= 1;
- else
- vsync <= 0;
- end
- else
- vsync <=0;
- if (hcount >= HorTimeToDisplay && hcount < HorTotalTime)
- hblnk <= 1;
- else
- hblnk <= 0;
- end
- endmodule
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement