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

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [orpsocv2/] [boards/] [actel/] [ordb1a3pe1500/] [rtl/] [verilog/] [include/] [orpsoc-params.v] - Blame information for rev 544

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 408 julius
//////////////////////////////////////////////////////////////////////
2
////                                                              ////
3
//// orpsoc-params                                                ////
4
////                                                              ////
5
//// Top level ORPSoC parameters file                             ////
6
////                                                              ////
7
//// Included in toplevel and testbench                           ////
8
////                                                              ////
9
//////////////////////////////////////////////////////////////////////
10
////                                                              ////
11
//// Copyright (C) 2009, 2010 Authors and OPENCORES.ORG           ////
12
////                                                              ////
13
//// This source file may be used and distributed without         ////
14
//// restriction provided that this copyright statement is not    ////
15
//// removed from the file and that any derivative work contains  ////
16
//// the original copyright notice and the associated disclaimer. ////
17
////                                                              ////
18
//// This source file is free software; you can redistribute it   ////
19
//// and/or modify it under the terms of the GNU Lesser General   ////
20
//// Public License as published by the Free Software Foundation; ////
21
//// either version 2.1 of the License, or (at your option) any   ////
22
//// later version.                                               ////
23
////                                                              ////
24
//// This source is distributed in the hope that it will be       ////
25
//// useful, but WITHOUT ANY WARRANTY; without even the implied   ////
26
//// warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR      ////
27
//// PURPOSE.  See the GNU Lesser General Public License for more ////
28
//// details.                                                     ////
29
////                                                              ////
30
//// You should have received a copy of the GNU Lesser General    ////
31
//// Public License along with this source; if not, download it   ////
32
//// from http://www.opencores.org/lgpl.shtml                     ////
33
////                                                              ////
34
//////////////////////////////////////////////////////////////////////
35
 
36
///////////////////////////
37
//                       //
38
// Peripheral parameters //
39
//                       //
40
///////////////////////////
41
 
42
// SPI 0 params
43
parameter spi0_ss_width = 1;
44
parameter spi0_wb_adr = 8'hb0;
45
parameter wbs_d_spi0_data_width = 8;
46
parameter spi0_wb_adr_width = 3;
47
 
48
// SPI 1 params
49
parameter spi1_ss_width = 1;
50
parameter spi1_wb_adr = 8'hb1;
51
parameter spi1_wb_adr_width = 3;
52
parameter wbs_d_spi1_data_width = 8;
53
 
54
// SPI 2 params
55
parameter spi2_ss_width = 1;
56
parameter spi2_wb_adr = 8'hb2;
57
parameter spi2_wb_adr_width = 3;
58
parameter wbs_d_spi2_data_width = 8;
59
 
60
// i2c master slave params
61
// Slave addresses
62
parameter HV0_SADR  = 8'h44;
63
parameter HV1_SADR  = 8'h45;
64
parameter HV2_SADR  = 8'h46;
65
parameter HV3_SADR  = 8'h47;
66
 
67
// i2c 0 params
68
parameter i2c_0_wb_adr = 8'ha0;
69
parameter i2c_0_wb_adr_width = 3;
70
parameter wbs_d_i2c0_data_width = 8;
71
 
72
// i2c 1 params
73
parameter i2c_1_wb_adr = 8'ha1;
74
parameter i2c_1_wb_adr_width = 3;
75
parameter wbs_d_i2c1_data_width = 8;
76
 
77
// i2c 2 params
78
parameter i2c_2_wb_adr = 8'ha2;
79
parameter i2c_2_wb_adr_width = 3;
80
parameter wbs_d_i2c2_data_width = 8;
81
 
82
// i2c 3 params
83
parameter i2c_3_wb_adr = 8'ha3;
84
parameter i2c_3_wb_adr_width = 3;
85
parameter wbs_d_i2c3_data_width = 8;
86
 
87
// GPIO 0 params
88
parameter wbs_d_gpio0_data_width = 8;
89
parameter gpio0_wb_adr_width = 3;
90
parameter gpio0_io_width = 8;
91
parameter gpio0_wb_adr = 8'h91;
92
parameter gpio0_dir_reset_val = 0;
93
parameter gpio0_o_reset_val = 0;
94
 
95
// UART 0 params
96
parameter wbs_d_uart0_data_width = 8;
97
parameter uart0_wb_adr = 8'h90;
98
parameter uart0_data_width = 8;
99
parameter uart0_addr_width = 3;
100
 
101
// USB slave 0 params
102
parameter wbs_d_usb0_data_width = 8;
103
parameter wbs_d_usb0_adr_width = 8;
104
parameter usb0_wb_adr = 8'h9c; // USB0
105
 
106
// USB slave 1 params
107
parameter wbs_d_usb1_data_width = 8;
108
parameter wbs_d_usb1_adr_width = 8;
109
parameter usb1_wb_adr = 8'h9d; // USB1
110
 
111
// Flash ROM (Actel 1Kbit internal flash)
112
parameter flashrom_wb_data_width = 8;
113
parameter flashrom_wb_adr_width = 7;
114
parameter flashrom_wb_adr = 8'hcf;
115
 
116
// ROM
117
parameter wbs_i_rom0_data_width = 32;
118
parameter wbs_i_rom0_addr_width = 6;
119
parameter rom0_wb_adr = 4'hf;
120
 
121
// MC0 (SDRAM, or other)
122
parameter wbs_i_mc0_data_width = 32;
123
parameter wbs_d_mc0_data_width = 32;
124
 
125
// ETH0 defines
126
parameter eth0_wb_adr = 8'h92;
127
parameter wbs_d_eth0_data_width = 32;
128
parameter wbs_d_eth0_addr_width = 12;
129
parameter wbm_eth0_data_width = 32;
130
parameter wbm_eth0_addr_width = 32;
131
 
132 544 julius
// SDC controller defines
133
parameter sdc_wb_adr = 8'h9e;
134
parameter wbs_d_sdc_data_width = 32;
135
parameter wbm_sdc_data_width = 32;
136
parameter wbm_sdc_addr_width = 32;
137
 
138 439 julius
// Memory sizing for wb_ram (simulation only)
139
parameter internal_sram_mem_span = 32'h0080_0000; // 8MB
140
parameter internal_sram_adr_width_for_span = 23;  // log2(8192*1024)
141 408 julius
 
142
//////////////////////////////////////////////////////
143
//                                                  //
144
// Wishbone bus parameters                          //
145
//                                                  //
146
//////////////////////////////////////////////////////
147
 
148
////////////////////////
149
//                    //
150
// Arbiter parameters //
151
//                    // 
152
////////////////////////
153
 
154
parameter wb_dw = 32; // Default Wishbone full word width
155
parameter wb_aw = 32; // Default Wishbone full address width
156
 
157
///////////////////////////
158
//                       //
159
// Instruction bus       //
160
//                       //
161
///////////////////////////
162
parameter ibus_arb_addr_match_width = 4;
163
// Slave addresses
164
parameter ibus_arb_slave0_adr = rom0_wb_adr; // FLASH ROM
165
parameter ibus_arb_slave1_adr = 4'h0; // Main memory (SDRAM/FPGA SRAM)
166
 
167
///////////////////////////
168
//                       //
169
// Data bus              //
170
//                       //
171
///////////////////////////
172
// Has auto foward to last slave when no address hits
173
parameter dbus_arb_wb_addr_match_width = 8;
174 544 julius
parameter dbus_arb_wb_num_slaves = 4;
175 408 julius
// Slave addresses
176
parameter dbus_arb_slave0_adr = 4'h0; // Main memory (SDRAM/FPGA SRAM)
177
parameter dbus_arb_slave1_adr = eth0_wb_adr; // Ethernet 0
178 544 julius
parameter dbus_arb_slave2_adr = sdc_wb_adr;
179 408 julius
 
180
///////////////////////////////
181
//                           //
182
// Byte-wide peripheral bus  //
183
//                           //
184
///////////////////////////////
185
parameter bbus_arb_wb_addr_match_width = 8;
186
parameter bbus_arb_wb_num_slaves = 12; // Update this when changing slaves!
187
// Slave addresses
188
parameter bbus_arb_slave0_adr  = uart0_wb_adr;
189
parameter bbus_arb_slave1_adr  = gpio0_wb_adr;
190
parameter bbus_arb_slave2_adr  = usb0_wb_adr;
191
parameter bbus_arb_slave3_adr  = i2c_0_wb_adr;
192
parameter bbus_arb_slave4_adr  = i2c_1_wb_adr;
193
parameter bbus_arb_slave5_adr  = i2c_2_wb_adr;
194
parameter bbus_arb_slave6_adr  = i2c_3_wb_adr;
195
parameter bbus_arb_slave7_adr  = spi0_wb_adr;
196
parameter bbus_arb_slave8_adr  = spi1_wb_adr;
197
parameter bbus_arb_slave9_adr  = spi2_wb_adr;
198
parameter bbus_arb_slave10_adr = flashrom_wb_adr;
199
parameter bbus_arb_slave11_adr = usb1_wb_adr;
200
parameter bbus_arb_slave12_adr = 0 /* UNASSIGNED */;
201
parameter bbus_arb_slave13_adr = 0 /* UNASSIGNED */;
202
parameter bbus_arb_slave14_adr = 0 /* UNASSIGNED */;
203
parameter bbus_arb_slave15_adr = 0 /* UNASSIGNED */;
204
parameter bbus_arb_slave16_adr = 0 /* UNASSIGNED */;
205
parameter bbus_arb_slave17_adr = 0 /* UNASSIGNED */;
206
parameter bbus_arb_slave18_adr = 0 /* UNASSIGNED */;
207
parameter bbus_arb_slave19_adr = 0 /* UNASSIGNED */;
208
 
209
 
210
 
211
 

powered by: WebSVN 2.1.0

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