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

Subversion Repositories minsoc

[/] [minsoc/] [trunk/] [utils/] [contributions/] [gpio/] [rtl/] [minsoc_spartan_3a_starter_kit_ios.v] - Blame information for rev 107

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

Line No. Rev Author Line
1 40 rfajardo
//////////////////////////////////////////////////////////////////////////////////
2
// Company: 
3
// Engineer: 
4
// 
5
// Create Date:    11:51:27 10/29/2009 
6
// Design Name: 
7
// Module Name:    minsoc_spartan_3a_starter_kit_ios 
8
// Project Name: 
9
// Target Devices: 
10
// Tool versions: 
11
// Description: 
12
//
13
// Dependencies: 
14
//
15
// Revision: 
16
// Revision 0.01 - File Created
17
// Additional Comments: 
18
//
19
//////////////////////////////////////////////////////////////////////////////////
20
 
21
module minsoc_spartan_3a_starter_kit_ios
22
(
23
    // Signals from GPIO Core
24
    ext_pad_o,
25
    ext_pad_oe,
26
    ext_pad_i,
27
 
28
         // Signals driving external pins
29
    i_pins,
30
    o_pins,
31
    io_pins
32
);
33
         parameter gpio_num = 32;
34
         parameter i_line_num = 8;
35
         parameter o_line_num = 8;
36
         parameter io_line_num= 8;
37
 
38
    input  [gpio_num-1:0] ext_pad_o;
39
    input  [gpio_num-1:0] ext_pad_oe;
40
    output [gpio_num-1:0] ext_pad_i;
41
 
42
    input  [i_line_num-1:0] i_pins;
43
    output [o_line_num-1:0] o_pins;
44
    inout  [io_line_num-1:0] io_pins;
45
 
46
         IOBUF #(
47
      .DRIVE(12), // Specify the output drive strength
48
      .IBUF_DELAY_VALUE("0"),   // Specify the amount of added input delay for the buffer, "0"-"16" (Spartan-3E only)
49
      .IFD_DELAY_VALUE("AUTO"), // Specify the amount of added delay for input register, "AUTO", "0"-"8" (Spartan-3E only)
50
      .IOSTANDARD("DEFAULT"), // Specify the I/O standard
51
      .SLEW("SLOW") // Specify the output slew rate
52
    ) IOBUF_inst_0 (
53
          .O(ext_pad_i[0]),     // Buffer output
54
          .IO(io_pins[0]),   // Buffer inout port (connect directly to top-level port)
55
          .I(ext_pad_o[0]),     // Buffer input
56
          .T(~ext_pad_oe[0])      // 3-state enable input 
57
    );
58
 
59
         IOBUF #(
60
      .DRIVE(12), // Specify the output drive strength
61
      .IBUF_DELAY_VALUE("0"),   // Specify the amount of added input delay for the buffer, "0"-"16" (Spartan-3E only)
62
      .IFD_DELAY_VALUE("AUTO"), // Specify the amount of added delay for input register, "AUTO", "0"-"8" (Spartan-3E only)
63
      .IOSTANDARD("DEFAULT"), // Specify the I/O standard
64
      .SLEW("SLOW") // Specify the output slew rate
65
    ) IOBUF_inst_1 (
66
          .O(ext_pad_i[1]),     // Buffer output
67
          .IO(io_pins[1]),   // Buffer inout port (connect directly to top-level port)
68
          .I(ext_pad_o[1]),     // Buffer input
69
          .T(~ext_pad_oe[1])      // 3-state enable input 
70
    );
71
 
72
         IOBUF #(
73
      .DRIVE(12), // Specify the output drive strength
74
      .IBUF_DELAY_VALUE("0"),   // Specify the amount of added input delay for the buffer, "0"-"16" (Spartan-3E only)
75
      .IFD_DELAY_VALUE("AUTO"), // Specify the amount of added delay for input register, "AUTO", "0"-"8" (Spartan-3E only)
76
      .IOSTANDARD("DEFAULT"), // Specify the I/O standard
77
      .SLEW("SLOW") // Specify the output slew rate
78
    ) IOBUF_inst_2 (
79
          .O(ext_pad_i[2]),     // Buffer output
80
          .IO(io_pins[2]),   // Buffer inout port (connect directly to top-level port)
81
          .I(ext_pad_o[2]),     // Buffer input
82
          .T(~ext_pad_oe[2])      // 3-state enable input 
83
    );
84
 
85
         IOBUF #(
86
      .DRIVE(12), // Specify the output drive strength
87
      .IBUF_DELAY_VALUE("0"),   // Specify the amount of added input delay for the buffer, "0"-"16" (Spartan-3E only)
88
      .IFD_DELAY_VALUE("AUTO"), // Specify the amount of added delay for input register, "AUTO", "0"-"8" (Spartan-3E only)
89
      .IOSTANDARD("DEFAULT"), // Specify the I/O standard
90
      .SLEW("SLOW") // Specify the output slew rate
91
    ) IOBUF_inst_3 (
92
          .O(ext_pad_i[3]),     // Buffer output
93
          .IO(io_pins[3]),   // Buffer inout port (connect directly to top-level port)
94
          .I(ext_pad_o[3]),     // Buffer input
95
          .T(~ext_pad_oe[3])      // 3-state enable input 
96
    );
97
 
98
         IOBUF #(
99
      .DRIVE(12), // Specify the output drive strength
100
      .IBUF_DELAY_VALUE("0"),   // Specify the amount of added input delay for the buffer, "0"-"16" (Spartan-3E only)
101
      .IFD_DELAY_VALUE("AUTO"), // Specify the amount of added delay for input register, "AUTO", "0"-"8" (Spartan-3E only)
102
      .IOSTANDARD("DEFAULT"), // Specify the I/O standard
103
      .SLEW("SLOW") // Specify the output slew rate
104
    ) IOBUF_inst_4 (
105
          .O(ext_pad_i[4]),     // Buffer output
106
          .IO(io_pins[4]),   // Buffer inout port (connect directly to top-level port)
107
          .I(ext_pad_o[4]),     // Buffer input
108
          .T(~ext_pad_oe[4])      // 3-state enable input 
109
    );
110
 
111
         IOBUF #(
112
      .DRIVE(12), // Specify the output drive strength
113
      .IBUF_DELAY_VALUE("0"),   // Specify the amount of added input delay for the buffer, "0"-"16" (Spartan-3E only)
114
      .IFD_DELAY_VALUE("AUTO"), // Specify the amount of added delay for input register, "AUTO", "0"-"8" (Spartan-3E only)
115
      .IOSTANDARD("DEFAULT"), // Specify the I/O standard
116
      .SLEW("SLOW") // Specify the output slew rate
117
    ) IOBUF_inst_5 (
118
          .O(ext_pad_i[5]),     // Buffer output
119
          .IO(io_pins[5]),   // Buffer inout port (connect directly to top-level port)
120
          .I(ext_pad_o[5]),     // Buffer input
121
          .T(~ext_pad_oe[5])      // 3-state enable input 
122
    );
123
 
124
         IOBUF #(
125
      .DRIVE(12), // Specify the output drive strength
126
      .IBUF_DELAY_VALUE("0"),   // Specify the amount of added input delay for the buffer, "0"-"16" (Spartan-3E only)
127
      .IFD_DELAY_VALUE("AUTO"), // Specify the amount of added delay for input register, "AUTO", "0"-"8" (Spartan-3E only)
128
      .IOSTANDARD("DEFAULT"), // Specify the I/O standard
129
      .SLEW("SLOW") // Specify the output slew rate
130
    ) IOBUF_inst_6 (
131
          .O(ext_pad_i[6]),     // Buffer output
132
          .IO(io_pins[6]),   // Buffer inout port (connect directly to top-level port)
133
          .I(ext_pad_o[6]),     // Buffer input
134
          .T(~ext_pad_oe[6])      // 3-state enable input 
135
    );
136
 
137
         IOBUF #(
138
      .DRIVE(12), // Specify the output drive strength
139
      .IBUF_DELAY_VALUE("0"),   // Specify the amount of added input delay for the buffer, "0"-"16" (Spartan-3E only)
140
      .IFD_DELAY_VALUE("AUTO"), // Specify the amount of added delay for input register, "AUTO", "0"-"8" (Spartan-3E only)
141
      .IOSTANDARD("DEFAULT"), // Specify the I/O standard
142
      .SLEW("SLOW") // Specify the output slew rate
143
    ) IOBUF_inst_7 (
144
          .O(ext_pad_i[7]),     // Buffer output
145
          .IO(io_pins[7]),   // Buffer inout port (connect directly to top-level port)
146
          .I(ext_pad_o[7]),     // Buffer input
147
          .T(~ext_pad_oe[7])      // 3-state enable input 
148
    );
149
 
150
 
151
         IBUF #(
152
      .IBUF_DELAY_VALUE("0"),   // Specify the amount of added input delay for                                //   the buffer, "0"-"16" (Spartan-3E/3A only)
153
      .IFD_DELAY_VALUE("AUTO"), // Specify the amount of added delay for input                                //   register, "AUTO", "0"-"8" (Spartan-3E/3A only)
154
      .IOSTANDARD("DEFAULT")    // Specify the input I/O standard
155
    )IBUF_inst_0 (
156
      .O(ext_pad_i[8]),     // Buffer output
157
      .I(i_pins[0])      // Buffer input (connect directly to top-level port)
158
    );
159
 
160
         IBUF #(
161
      .IBUF_DELAY_VALUE("0"),   // Specify the amount of added input delay for                                //   the buffer, "0"-"16" (Spartan-3E/3A only)
162
      .IFD_DELAY_VALUE("AUTO"), // Specify the amount of added delay for input                                //   register, "AUTO", "0"-"8" (Spartan-3E/3A only)
163
      .IOSTANDARD("DEFAULT")    // Specify the input I/O standard
164
    )IBUF_inst_1 (
165
      .O(ext_pad_i[9]),     // Buffer output
166
      .I(i_pins[1])      // Buffer input (connect directly to top-level port)
167
    );
168
 
169
         IBUF #(
170
      .IBUF_DELAY_VALUE("0"),   // Specify the amount of added input delay for                                //   the buffer, "0"-"16" (Spartan-3E/3A only)
171
      .IFD_DELAY_VALUE("AUTO"), // Specify the amount of added delay for input                                //   register, "AUTO", "0"-"8" (Spartan-3E/3A only)
172
      .IOSTANDARD("DEFAULT")    // Specify the input I/O standard
173
    )IBUF_inst_2 (
174
      .O(ext_pad_i[10]),     // Buffer output
175
      .I(i_pins[2])      // Buffer input (connect directly to top-level port)
176
    );
177
 
178
         IBUF #(
179
      .IBUF_DELAY_VALUE("0"),   // Specify the amount of added input delay for                                //   the buffer, "0"-"16" (Spartan-3E/3A only)
180
      .IFD_DELAY_VALUE("AUTO"), // Specify the amount of added delay for input                                //   register, "AUTO", "0"-"8" (Spartan-3E/3A only)
181
      .IOSTANDARD("DEFAULT")    // Specify the input I/O standard
182
    )IBUF_inst_3 (
183
      .O(ext_pad_i[11]),     // Buffer output
184
      .I(i_pins[3])      // Buffer input (connect directly to top-level port)
185
    );
186
 
187
         IBUF #(
188
      .IBUF_DELAY_VALUE("0"),   // Specify the amount of added input delay for                                //   the buffer, "0"-"16" (Spartan-3E/3A only)
189
      .IFD_DELAY_VALUE("AUTO"), // Specify the amount of added delay for input                                //   register, "AUTO", "0"-"8" (Spartan-3E/3A only)
190
      .IOSTANDARD("DEFAULT")    // Specify the input I/O standard
191
    )IBUF_inst_4 (
192
      .O(ext_pad_i[12]),     // Buffer output
193
      .I(i_pins[4])      // Buffer input (connect directly to top-level port)
194
    );
195
 
196
         IBUF #(
197
      .IBUF_DELAY_VALUE("0"),   // Specify the amount of added input delay for                                //   the buffer, "0"-"16" (Spartan-3E/3A only)
198
      .IFD_DELAY_VALUE("AUTO"), // Specify the amount of added delay for input                                //   register, "AUTO", "0"-"8" (Spartan-3E/3A only)
199
      .IOSTANDARD("DEFAULT")    // Specify the input I/O standard
200
    )IBUF_inst_5 (
201
      .O(ext_pad_i[13]),     // Buffer output
202
      .I(i_pins[5])      // Buffer input (connect directly to top-level port)
203
    );
204
 
205
         /* PUSH Button NORTH is RESET.
206
         IBUF #(
207
      .IBUF_DELAY_VALUE("0"),   // Specify the amount of added input delay for                                //   the buffer, "0"-"16" (Spartan-3E/3A only)
208
      .IFD_DELAY_VALUE("AUTO"), // Specify the amount of added delay for input                                //   register, "AUTO", "0"-"8" (Spartan-3E/3A only)
209
      .IOSTANDARD("DEFAULT")    // Specify the input I/O standard
210
    )IBUF_inst_6 (
211
      .O(ext_pad_i[14]),     // Buffer output
212
      .I(i_pins[6])      // Buffer input (connect directly to top-level port)
213
    );
214
         */
215
 
216
         IBUF #(
217
      .IBUF_DELAY_VALUE("0"),   // Specify the amount of added input delay for                                //   the buffer, "0"-"16" (Spartan-3E/3A only)
218
      .IFD_DELAY_VALUE("AUTO"), // Specify the amount of added delay for input                                //   register, "AUTO", "0"-"8" (Spartan-3E/3A only)
219
      .IOSTANDARD("DEFAULT")    // Specify the input I/O standard
220
    )IBUF_inst_7 (
221
      .O(ext_pad_i[15]),     // Buffer output
222
      .I(i_pins[7])      // Buffer input (connect directly to top-level port)
223
    );
224
endmodule

powered by: WebSVN 2.1.0

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