OpenCores
URL https://opencores.org/ocsvn/orsoc_graphics_accelerator/orsoc_graphics_accelerator/trunk

Subversion Repositories orsoc_graphics_accelerator

[/] [orsoc_graphics_accelerator/] [tags/] [version1.0/] [bench/] [verilog/] [gfx/] [line_bench.v] - Blame information for rev 5

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 2 maiden
`include "../../../rtl/verilog/gfx/gfx_line.v"
2
 
3
module line_bench();
4
 
5
reg clk_i;
6
reg rst_i;
7
 
8
reg [15:0] pixel0_x_i;
9
reg [15:0] pixel1_x_i;
10
reg [15:0] pixel0_y_i;
11
reg [15:0] pixel1_y_i;
12
 
13
reg [15:0] delta_major_i;
14
reg [15:0] delta_minor_i;
15
 
16
reg draw_line_i;
17
reg read_pixel_i;
18
reg x_major_i;
19
reg minor_slope_positive_i;
20
 
21
wire busy_o;
22
 
23
wire [15:0] major_o;
24
wire [15:0] minor_o;
25
 
26
initial begin
27
  $dumpfile("line.vcd");
28
  $dumpvars(0,line_bench);
29
 
30
  draw_line_i = 0;
31
  clk_i = 0;
32
  rst_i = 1;
33
 
34
// timing
35
#2 rst_i = 0;
36
 
37
   pixel0_x_i = 10;
38
   pixel0_y_i = 10;
39
   pixel1_x_i = 20;
40
   delta_major_i = 2;
41
   delta_minor_i = 2;
42
#2 draw_line_i = 1;
43
#2 draw_line_i = 0;
44
 
45
#30 rst_i = 1;
46
#2  rst_i = 0;
47
    pixel0_x_i = 10;
48
    pixel0_y_i = 10;
49
    pixel1_x_i = 20;
50
    delta_major_i = 4;
51
    delta_minor_i = 2;
52
#2  draw_line_i = 1;
53
#2  draw_line_i = 0;
54
 
55
#30 pixel0_x_i = 10;
56
    pixel0_y_i = 10;
57
    pixel1_x_i = 20;
58
    delta_major_i = 6;
59
    delta_minor_i = 2;
60
#2  draw_line_i = 1;
61
#2  draw_line_i = 0;
62
 
63
 
64
#30 pixel0_x_i = 10;
65
    pixel0_y_i = 10;
66
    pixel1_x_i = 20;
67
    delta_major_i = 8;
68
    delta_minor_i = 2;
69
#2  draw_line_i = 1;
70
#2  draw_line_i = 0;
71
 
72
#30 pixel0_x_i = 10;
73
    pixel0_y_i = 10;
74
    pixel1_x_i = 20;
75
    delta_major_i = 16;
76
    delta_minor_i = 2;
77
#2  draw_line_i = 1;
78
#2  draw_line_i = 0;
79
 
80
#30 pixel0_x_i = 10;
81
    pixel0_y_i = 10;
82
    pixel1_x_i = 20;
83
    delta_major_i = 32;
84
    delta_minor_i = 2;
85
#2  draw_line_i = 1;
86
#2  draw_line_i = 0;
87
 
88
  #1000 $finish;
89
end
90
 
91
 
92
always begin
93
  #1 clk_i = ~clk_i;
94
end
95
 
96
bresenham_line bresenham(
97
.clk_i            ( clk_i         ),
98
.rst_i            ( rst_i         ),
99
.pixel0_x_i       ( pixel0_x_i    ),
100
.pixel0_y_i       ( pixel0_y_i    ),
101
.pixel1_x_i       ( pixel1_x_i    ),
102
.pixel1_y_i       ( pixel1_y_i    ),
103
.x_major_i        ( x_major_i     ),
104
.minor_slope_positive_i ( minor_slope_positive_i ),
105
.delta_minor_i    ( delta_minor_i ),
106
.delta_major_i    ( delta_major_i ),
107
.draw_line_i      ( draw_line_i   ),
108
.read_pixel_i     ( read_pixel_i  ),
109
.busy_o           ( busy_o        ),
110
.major_o          ( major_o       ),
111
.minor_o          ( minor_o       )
112
);
113
 
114
endmodule

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.