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

Subversion Repositories minsoc

[/] [minsoc/] [branches/] [verilator/] [backend/] [std/] [minsoc_defines.v] - Blame information for rev 52

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

Line No. Rev Author Line
1 2 rfajardo
//
2
// Define FPGA manufacturer
3
//
4
//`define GENERIC_FPGA
5
//`define ALTERA_FPGA
6
`define XILINX_FPGA
7
 
8
// 
9
// Define FPGA Model (comment all out for ALTERA)
10
//
11
//`define SPARTAN2
12
//`define SPARTAN3
13
//`define SPARTAN3E
14
`define SPARTAN3A
15
//`define VIRTEX
16
//`define VIRTEX2
17
//`define VIRTEX4
18
//`define VIRTEX5
19
 
20
 
21
//
22
// Memory
23
//
24
`define MEMORY_ADR_WIDTH   13   //MEMORY_ADR_WIDTH IS NOT ALLOWED TO BE LESS THAN 12, memory is composed by blocks of address width 11
25
                                                                //Address width of memory -> select memory depth, 2 powers MEMORY_ADR_WIDTH defines the memory depth 
26
                                                                //the memory data width is 32 bit, memory amount in Bytes = 4*memory depth
27
 
28
//
29 7 rfajardo
// Memory type  (uncomment something if ASIC or generic memory)
30 2 rfajardo
//
31
//`define GENERIC_MEMORY
32
//`define AVANT_ATP
33
//`define VIRAGE_SSP
34
//`define VIRTUALSILICON_SSP
35
 
36
 
37
//
38
// TAP selection
39
//
40
//`define GENERIC_TAP
41
`define FPGA_TAP
42
 
43
//
44
// Clock Division selection
45
//
46
//`define NO_CLOCK_DIVISION
47
//`define GENERIC_CLOCK_DIVISION
48 52 javieralso
`define FPGA_CLOCK_DIVISION             // Altera ALTPLL is yet implemented in Verilog and will be used with this option
49 2 rfajardo
 
50
//
51
// Define division
52
//
53 52 javieralso
`define CLOCK_DIVISOR 4         //in case of GENERIC_CLOCK_DIVISION the real value will be rounded down to an even value
54
                                //in FPGA case, check minsoc_clock_manager for allowed divisors
55
                                //DO NOT USE CLOCK_DIVISOR = 1 COMMENT THE CLOCK DIVISION SELECTION INSTEAD
56 2 rfajardo
 
57
//
58 52 javieralso
// Define multiply
59
//
60
`define CLOCK_MULTIPLIER 2      // In case of FPGA_CLOCK_DIVISION for Altera FPGAs, ALTPLL Megafunction will be used
61
                                // and this will need a clock multiply factor.
62
 
63
//
64 7 rfajardo
// Reset polarity
65
//
66 20 rfajardo
//`define NEGATIVE_RESET      //rstn
67
`define POSITIVE_RESET      //rst
68 7 rfajardo
 
69
//
70 2 rfajardo
// Start-up circuit (only necessary later to load firmware automatically from SPI memory)
71
//
72
//`define START_UP
73
 
74
//
75
// Connected modules
76
//
77
`define UART
78
//`define ETHERNET
79
 
80
//
81
// Ethernet reset
82
//
83
//`define ETH_RESET     1'b0
84
`define ETH_RESET       1'b1
85
 
86
//
87
// Interrupts
88
//
89
`define APP_INT_RES1    1:0
90
`define APP_INT_UART    2
91
`define APP_INT_RES2    3
92
`define APP_INT_ETH     4
93
`define APP_INT_PS2     5
94
`define APP_INT_RES3    19:6
95
 
96
//
97
// Address map
98
//
99
`define APP_ADDR_DEC_W  8
100
`define APP_ADDR_SRAM   `APP_ADDR_DEC_W'h00
101
`define APP_ADDR_FLASH  `APP_ADDR_DEC_W'h04
102
`define APP_ADDR_DECP_W  4
103
`define APP_ADDR_PERIP  `APP_ADDR_DECP_W'h9
104
`define APP_ADDR_SPI    `APP_ADDR_DEC_W'h97
105
`define APP_ADDR_ETH    `APP_ADDR_DEC_W'h92
106
`define APP_ADDR_AUDIO  `APP_ADDR_DEC_W'h9d
107
`define APP_ADDR_UART   `APP_ADDR_DEC_W'h90
108
`define APP_ADDR_PS2    `APP_ADDR_DEC_W'h94
109
`define APP_ADDR_RES1   `APP_ADDR_DEC_W'h9e
110
`define APP_ADDR_RES2   `APP_ADDR_DEC_W'h9f
111
 
112
//
113
// Set-up GENERIC_TAP, GENERIC_MEMORY if GENERIC_FPGA was chosen
114
// and GENERIC_CLOCK_DIVISION if NO_CLOCK_DIVISION was not set
115
//
116
`ifdef GENERIC_FPGA
117
        `define GENERIC_TAP
118
        `define GENERIC_MEMORY
119
        `ifndef NO_CLOCK_DIVISION
120
                `define GENERIC_CLOCK_DIVISION
121
        `endif
122
`endif

powered by: WebSVN 2.1.0

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