여전히 화면은 안나오지만 일단 modelsim에서 패턴은 대충 확인했으니
이제 맞춰나가면 될 듯..
module vga640x480( input clk, input rst, output [7:0] LED, output hsync, output vsync, output [3:0] r, output [3:0] g, output [3:0] b ); parameter HSYNC = 190; parameter HBP = (190 + 96); parameter HVID = (190 + 96 + 1271); parameter HFP = (190 + 96 + 1271 + 32); parameter HTOTAL = 1589; parameter VSYNC = 3200; parameter VBP = (3200 + 52400); parameter VVID = (3200 + 52400 + 762650); parameter VFP = (3200 + 52400 + 762650 + 15900); parameter VTOTAL = 834150; reg [19:0] cnt; always @ (posedge clk or negedge rst) begin if (~rst) cnt <= 0; else begin if(cnt < VTOTAL) cnt <= cnt + 1; else cnt <= 0; end end assign LED[0] = ~vsync; assign LED[1] = ~hsync; assign r[3:0] = (((VBP < cnt) && (cnt < VVID)) && ((HBP < (cnt % HTOTAL)) && ((cnt % HTOTAL) < HVID))) ? 4'b1111 : 4'b0000; assign g[3:0] = (((VBP < cnt) && (cnt < VVID)) && ((HBP < (cnt % HTOTAL)) && ((cnt % HTOTAL) < HVID))) ? 4'b1111 : 4'b0000; assign b[3:0] = (((VBP < cnt) && (cnt < VVID)) && ((HBP < (cnt % HTOTAL)) && ((cnt % HTOTAL) < HVID))) ? 4'b1111 : 4'b0000; assign hsync = ((cnt % HTOTAL) < HSYNC)? 0 : 1; assign vsync = ((cnt ) < VSYNC)? 0 : 1; endmodule |
다시 보니.. 비디오 출력 하는 부분에서 &&대신 & 쓰지 않나
조건식 비교 범위를 반대로 하지 않나(그러니 계속 0이지) 완전 난리 부르스. ㄷㄷ
타이밍이 잘못되었나.. 왜 안나올까...
'모종의 음모 > DE0-Nano VGA' 카테고리의 다른 글
어라.. 스펙을 잘못봤나? (0) | 2018.06.15 |
---|---|
먼가 이상하지만 640x480x60 되는 소스 발견 (0) | 2018.06.05 |
vga 640x480 실패중 그리고 800x600x60 (0) | 2018.06.05 |
800x600 72hz vga 출력 예제 (0) | 2018.06.05 |
vga 출력 해보기.. 시도중 (2) | 2018.06.03 |