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

Subversion Repositories de1_olpcl2294_system

[/] [de1_olpcl2294_system/] [trunk/] [sim/] [tests/] [debug/] [tb_dut.v] - Blame information for rev 8

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 7 qaztronic
// --------------------------------------------------------------------
2
//
3
// --------------------------------------------------------------------
4
 
5
 
6 8 qaztronic
`include "timescale.v"
7 7 qaztronic
 
8 8 qaztronic
 
9 7 qaztronic
module tb_dut(
10
                input tb_clk,
11
                input tb_rst
12
              );
13
 
14
 
15
  // --------------------------------------------------------------------
16 8 qaztronic
  // wires
17
  wire [3:0]  boot_strap = 4'b0010;
18
 
19
 
20
  // --------------------------------------------------------------------
21
  // de1 wires
22
  wire  [1:0]   clock_24;
23
  wire  [1:0]   clock_27;
24
  wire          clock_50;
25
  wire          ext_clock;
26
  wire  [3:0]   key;
27
  wire  [9:0]   sw;
28
  wire  [6:0]   hex0;
29
  wire  [6:0]   hex1;
30
  wire  [6:0]   hex2;
31
  wire  [6:0]   hex3;
32
  wire  [7:0]   ledg;
33
  wire  [9:0]   ledr;
34
  wire          uart_txd;
35
  wire          uart_rxd;
36
  wire  [15:0]  dram_dq;
37
  wire  [11:0]  dram_addr;
38
  wire          dram_ldqm;
39
  wire          dram_udqm;
40
  wire          dram_we_n;
41
  wire          dram_cas_n;
42
  wire          dram_ras_n;
43
  wire          dram_cs_n;
44
  wire          dram_ba_0;
45
  wire          dram_ba_1;
46
  wire          dram_clk;
47
  wire          dram_cke;
48
  wire  [7:0]   fl_dq;
49
  wire  [21:0]  fl_addr;
50
  wire          fl_we_n;
51
  wire          fl_rst_n;
52
  wire          fl_oe_n;
53
  wire          fl_ce_n;
54
  wire  [15:0]  sram_dq;
55
  wire  [17:0]  sram_addr;
56
  wire          sram_ub_n;
57
  wire          sram_lb_n;
58
  wire          sram_we_n;
59
  wire          sram_ce_n;
60
  wire          sram_oe_n;
61
  wire          sd_dat;
62
  wire          sd_dat3;
63
  wire          sd_cmd;
64
  wire          sd_clk;
65
  wire          i2c_sdat;
66
  wire          i2c_sclk;
67
  wire          ps2_dat;
68
  wire          ps2_clk;
69
  wire          tdi;
70
  wire          tck;
71
  wire          tcs;
72
  wire          tdo;
73
  wire          vga_hs;
74
  wire          vga_vs;
75
  wire  [3:0]   vga_r;
76
  wire  [3:0]   vga_g;
77
  wire  [3:0]   vga_b;
78
  wire          aud_adclrck;
79
  wire          aud_adcdat;
80
  wire          aud_daclrck;
81
  wire          aud_dacdat;
82
  wire          aud_bclk;
83
  wire          aud_xck;
84
  wire  [35:0]  gpio_0;
85
  wire  [35:0]  gpio_1;
86
 
87
 
88
  // --------------------------------------------------------------------
89
  // fpga top
90
  assign clock_24 = {1'b0, tb_clk};
91
  assign sw       = {6'b000000, boot_strap};
92
  assign key      = {3'b000, ~tb_rst};
93
 
94
top
95
  i_top(
96
    ////////////////////////  Clock Input     ////////////////////////
97
    .clock_24( clock_24 ),               //  24 MHz
98
    .clock_27(clock_27),               //  27 MHz
99
    .clock_50(clock_50),               //  50 MHz
100
    .ext_clock(ext_clock),              //  External Clock
101
    ////////////////////////  Push Button     ////////////////////////
102
    .key( key ),                    //  Pushbutton[3:0]
103
    ////////////////////////  DPDT Switch     ////////////////////////
104
    .sw( sw ),                     //  Toggle Switch[9:0]
105
    ////////////////////////  7-SEG Dispaly   ////////////////////////
106
    .hex0(hex0),                   //  Seven Segment Digit 0
107
    .hex1(hex1),                   //  Seven Segment Digit 1
108
    .hex2(hex2),                   //  Seven Segment Digit 2
109
    .hex3(hex3),                   //  Seven Segment Digit 3
110
    ////////////////////////////  LED     ////////////////////////////
111
    .ledg(ledg),                   //  LED Green[7:0]
112
    .ledr(ledr),                   //  LED Red[9:0]
113
    ////////////////////////////  UART    ////////////////////////////
114
    .uart_txd(uart_txd),               //  UART Transmitter
115
    .uart_rxd(uart_rxd),               //  UART Receiver
116
    ///////////////////////       SDRAM Interface ////////////////////////
117
    .dram_dq(dram_dq),                //  SDRAM Data bus 16 Bits
118
    .dram_addr(dram_addr),              //  SDRAM Address bus 12 Bits
119
    .dram_ldqm(dram_ldqm),              //  SDRAM Low-byte Data Mask
120
    .dram_udqm(dram_udqm),              //  SDRAM High-byte Data Mask
121
    .dram_we_n(dram_we_n),              //  SDRAM Write Enable
122
    .dram_cas_n(dram_cas_n),             //  SDRAM Column Address Strobe
123
    .dram_ras_n(dram_ras_n),             //  SDRAM Row Address Strobe
124
    .dram_cs_n(dram_cs_n),              //  SDRAM Chip Select
125
    .dram_ba_0(dram_ba_0),              //  SDRAM Bank Address 0
126
    .dram_ba_1(dram_ba_1),              //  SDRAM Bank Address 0
127
    .dram_clk(dram_clk),               //  SDRAM Clock
128
    .dram_cke(dram_cke),               //  SDRAM Clock Enable
129
    ////////////////////////  Flash Interface ////////////////////////
130
    .fl_dq(fl_dq),                  //  FLASH Data bus 8 Bits
131
    .fl_addr(fl_addr),                //  FLASH Address bus 22 Bits
132
    .fl_we_n(fl_we_n),                //  FLASH Write Enable
133
    .fl_rst_n(fl_rst_n),               //  FLASH Reset
134
    .fl_oe_n(fl_oe_n),                //  FLASH Output Enable
135
    .fl_ce_n(fl_ce_n),                //  FLASH Chip Enable
136
    ////////////////////////  SRAM Interface  ////////////////////////
137
    .sram_dq(sram_dq),                //  SRAM Data bus 16 Bits
138
    .sram_addr(sram_addr),              //  SRAM Address bus 18 Bits
139
    .sram_ub_n(sram_ub_n),              //  SRAM High-byte Data Mask
140
    .sram_lb_n(sram_lb_n),              //  SRAM Low-byte Data Mask
141
    .sram_we_n(sram_we_n),              //  SRAM Write Enable
142
    .sram_ce_n(sram_ce_n),              //  SRAM Chip Enable
143
    .sram_oe_n(sram_oe_n),              //  SRAM Output Enable
144
    ////////////////////  SD Card Interface   ////////////////////////
145
    .sd_dat(sd_dat),                 //  SD Card Data
146
    .sd_dat3(sd_dat3),                //  SD Card Data 3
147
    .sd_cmd(sd_cmd),                 //  SD Card Command Signal
148
    .sd_clk(sd_clk),                 //  SD Card Clock
149
    ////////////////////////  I2C     ////////////////////////////////
150
    .i2c_sdat(i2c_sdat),               //  I2C Data
151
    .i2c_sclk(i2c_sclk),               //  I2C Clock
152
    ////////////////////////  PS2     ////////////////////////////////
153
    .ps2_dat(ps2_dat),                //  PS2 Data
154
    .ps2_clk(ps2_clk),                //  PS2 Clock
155
    ////////////////////  USB JTAG link   ////////////////////////////
156
    .tdi(tdi),                    // CPLD -> FPGA (data in)
157
    .tck(tck),                    // CPLD -> FPGA (clk)
158
    .tcs(tcs),                    // CPLD -> FPGA (CS)
159
    .tdo(tdo),                    // FPGA -> CPLD (data out)
160
    ////////////////////////  VGA         ////////////////////////////
161
    .vga_hs(vga_hs),                 //  VGA H_SYNC
162
    .vga_vs(vga_vs),                 //  VGA V_SYNC
163
    .vga_r(vga_r),                  //  VGA Red[3:0]
164
    .vga_g(vga_g),                  //  VGA Green[3:0]
165
    .vga_b(vga_b),                  //  VGA Blue[3:0]
166
    ////////////////////  Audio CODEC     ////////////////////////////
167
    .aud_adclrck(aud_adclrck),            //  Audio CODEC ADC LR Clock
168
    .aud_adcdat(aud_adcdat),             //  Audio CODEC ADC Data
169
    .aud_daclrck(aud_daclrck),            //  Audio CODEC DAC LR Clock
170
    .aud_dacdat(aud_dacdat),             //  Audio CODEC DAC Data
171
    .aud_bclk(aud_bclk),               //  Audio CODEC Bit-Stream Clock
172
    .aud_xck(aud_xck),                //  Audio CODEC Chip Clock
173
    ////////////////////////  GPIO    ////////////////////////////////
174
    .gpio_0(gpio_0),                 //  GPIO Connection 0
175
    .gpio_1(gpio_1)                  //  GPIO Connection 1
176
  );
177
 
178
 
179
  // --------------------------------------------------------------------
180
  // IS61LV25616
181
  IS61LV25616
182
    i_IS61LV25616 (
183
                    .A(sram_addr),
184
                    .IO(sram_dq),
185
                    .CE_(sram_ce_n),
186
                    .OE_(sram_oe_n),
187
                    .WE_(sram_we_n),
188
                    .LB_(sram_lb_n),
189
                    .UB_(sram_ub_n)
190
                  );
191
 
192
 
193
  // --------------------------------------------------------------------
194
  // s29al032d_00
195
  s29al032d_00
196
    i_s29al032d_00(
197
                    .A21(fl_addr[21]),
198
                    .A20(fl_addr[20]),
199
                    .A19(fl_addr[19]),
200
                    .A18(fl_addr[18]),
201
                    .A17(fl_addr[17]),
202
                    .A16(fl_addr[16]),
203
                    .A15(fl_addr[15]),
204
                    .A14(fl_addr[14]),
205
                    .A13(fl_addr[13]),
206
                    .A12(fl_addr[12]),
207
                    .A11(fl_addr[11]),
208
                    .A10(fl_addr[10]),
209
                    .A9(fl_addr[9]),
210
                    .A8(fl_addr[8]),
211
                    .A7(fl_addr[7]),
212
                    .A6(fl_addr[6]),
213
                    .A5(fl_addr[5]),
214
                    .A4(fl_addr[4]),
215
                    .A3(fl_addr[3]),
216
                    .A2(fl_addr[2]),
217
                    .A1(fl_addr[1]),
218
                    .A0(fl_addr[0]),
219
 
220
                    .DQ7(fl_dq[7]),
221
                    .DQ6(fl_dq[6]),
222
                    .DQ5(fl_dq[5]),
223
                    .DQ4(fl_dq[4]),
224
                    .DQ3(fl_dq[3]),
225
                    .DQ2(fl_dq[2]),
226
                    .DQ1(fl_dq[1]),
227
                    .DQ0(fl_dq[0]),
228
 
229
                    .CENeg(fl_ce_n),
230
                    .OENeg(fl_oe_n),
231
                    .WENeg(fl_we_n),
232
                    .RESETNeg(fl_rst_n),
233
                    .ACC(),
234
                    .RY()
235
                  );
236
 
237
 
238
  // --------------------------------------------------------------------
239 7 qaztronic
  //  async_mem_master
240
  wire [31:0] mem_d;
241
  wire [31:0] mem_a;
242
  wire        mem_oe_n;
243
  wire [3:0]  mem_bls_n;
244
  wire        mem_we_n;
245
  wire        mem_cs_n;
246
 
247 8 qaztronic
  assign gpio_0[23:0] = mem_a[23:0];
248
 
249
  async_mem_master #( .ce_setup(10), .op_hold(15) )
250 7 qaztronic
    async_mem(
251 8 qaztronic
      .mem_d( gpio_1[31:0] ),
252
      .mem_a( mem_a ),
253
      .mem_oe_n( gpio_0[30] ),
254
      .mem_bls_n( { gpio_0[26], gpio_0[27], gpio_0[28], gpio_0[29] } ),
255
      .mem_we_n( gpio_0[25] ),
256
      .mem_cs_n( gpio_0[24] ),
257
 
258 7 qaztronic
      .tb_clk(tb_clk),
259
      .tb_rst(tb_rst)
260
    );
261 8 qaztronic
 
262 7 qaztronic
 
263
endmodule
264
 

powered by: WebSVN 2.1.0

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