-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathtop.v
94 lines (80 loc) · 1.46 KB
/
top.v
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
module top #(
parameter reserved = 'd0
)
(
inout clk_in,
output reg [35:0] pixdata,
output reg fv,
output reg lv,
output pixclk,
output reg de,
// HDMI configuration
inout HDMI_scl,
inout HDMI_sda,
output test
);
reg reset_n;
wire clk24M;
wire de;
/*
OSCH #(
.NOM_FREQ("24.18")
)u_OSCH
(
.STDBY(0),
.OSC(clk24M)
);
*/
always @ (posedge clk24M)
begin
if (!reset_n ) reset_n <= 1;
end
wire w_pixclk;
//pll_sensor_clk u_pll_sensor_clk(.CLKI(clk_in), .CLKOP(w_pixclk), .CLKOS(pixclk));
pll_sensor_clk u_pll_sensor_clk(.CLKI(clk24M), .CLKOP(w_pixclk));
assign pixclk = ~w_pixclk;
wire w_fv;
wire w_lv;
wire [35:0] w_pixdata;
always @ (posedge w_pixclk or negedge reset_n)
begin
if(!reset_n) begin
pixdata <= 0;
fv <= 0;
lv <= 0;
end
else begin
pixdata <= w_pixdata;
fv <= w_fv;
lv <= w_lv;
end
end
colorbar_gen #(
.h_active('d1920),
.h_total('d2200),
.v_active('d1080),
.v_total('d1125),
.H_FRONT_PORCH('d88),
.H_SYNCH('d44),
.H_BACK_PORCH('d148),
.V_FRONT_PORCH('d4),
.V_SYNCH('d5)
)u_colorbar_gen
(
.rstn (reset_n ) ,
.clk (w_pixclk) ,
.fv () ,
.lv () ,
.data (w_pixdata),
.de (de),
.vsync (w_fv),
.hsync (w_lv)
);
hdmi_i2c_top hdmi_i2c_top_inst(
.rst_n (reset_n),
.clk (clk_in),
.scl (HDMI_scl),
.sda (HDMI_sda),
.config_done ()
);
endmodule