3 == Ports ===========================================================
10 percolate up: dvi_d2 1
11 percolate up: dvi_d3 1
12 percolate up: dvi_d4 1
13 percolate up: dvi_d5 1
14 percolate up: dvi_d6 1
15 percolate up: dvi_d7 1
16 percolate up: dvi_d8 1
17 percolate up: dvi_d9 1
18 percolate up: dvi_d10 1
19 percolate up: dvi_d11 1
23 percolate up: dvi_xclk_n 1
24 percolate up: dvi_xclk_p 1
25 percolate up: dvi_de 1
26 percolate up: dvi_reset_b 1
27 percolate down: dvi_gpio1 1
29 percolate up: dvi_iic_scl 1
30 percolate inout: dvi_iic_sda 1
32 percolate up: gpio_led_c 1
33 percolate up: gpio_led_e 1
34 percolate up: gpio_led_n 1
35 percolate up: gpio_led_s 1
36 percolate up: gpio_led_w 1
37 percolate up: gpio_led_0 1
38 percolate up: gpio_led_1 1
39 percolate up: gpio_led_2 1
40 percolate up: gpio_led_3 1
41 percolate up: gpio_led_4 1
42 percolate up: gpio_led_5 1
43 percolate up: gpio_led_6 1
44 percolate up: gpio_led_7 1
46 == TeX ==============================================================
48 == Fleeterpreter ====================================================
50 public void service() { }
52 == FleetSim ==============================================================
54 == FPGA ==============================================================
57 assign dvi_reset_b = 1;
72 assign gpio_led_n = 1;
73 assign gpio_led_s = 0;
75 assign gpio_led_0 = dvi_gpio1;
76 assign gpio_led_1 = 0;
77 assign gpio_led_2 = 1;
78 assign gpio_led_3 = 0;
79 assign gpio_led_4 = 1;
80 assign gpio_led_5 = 0;
81 assign gpio_led_6 = 1;
82 assign gpio_led_7 = 0;
84 wire dvi_xclk_p_unbuffered;
85 wire dvi_xclk_n_unbuffered;
87 BUFG GBUF_FOR_DVI_CLOCK_N (.I(dvi_xclk_n_unbuffered), .O(dvi_xclk_n));
88 BUFG GBUF_FOR_DVI_CLOCK_P (.I(dvi_xclk_p_unbuffered), .O(dvi_xclk_p));
89 DCM // 25Mhz VGA clock
93 .CLKIN_PERIOD("20 ns")
97 .CLKFX (dvi_xclk_p_unbuffered),
98 .CLKFX180 (dvi_xclk_n_unbuffered),
102 wire [31:0] vga_pixel_addr_;
106 assign vga_pixel_a_ = vga_pixel_a;
111 wire [31:0] vga_pixel_data;
112 assign vga_pixel_data = {
119 assign inAddr = inX_d + (inY_d * 640);
121 vram vram(clk, !rst, we, inAddr[18:0], vga_pixel_addr_[20:2], inData_d, , mem_out);
127 .fbwb_adr_o(vga_pixel_addr_),
128 .fbwb_stb_o(vga_pixel_r),
129 .fbwb_ack_i(vga_pixel_a_),
130 .fbwb_dat_i(vga_pixel_data),
134 .vga_psave(vga_psave),
138 .vga_blank(vga_blank),
142 // .vga_clkout(vga_clkout)
145 always @(posedge clk) begin
151 vga_pixel_a <= vga_pixel_r;
153 if (`inX_full && `inY_full && `inData_full) begin
165 == Constants ========================================================
167 == Test ==============================================================
172 == Contributors =========================================================
173 Adam Megacz <megacz@cs.berkeley.edu>