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

Subversion Repositories or1k

[/] [or1k/] [tags/] [rel_1/] [or1200/] [syn/] [scr/] [top_or1200.scr] - Blame information for rev 1765

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 159 lampret
/*
2
 * User defines
3
 *
4
 */
5
TOPLEVEL = or1200
6
include select_tech.inc
7
CLK = clk
8
RST = rst
9
CLK_PERIOD = 2.5        /* 400 MHz */
10
MAX_AREA = 0            /* Push it */
11
DO_UNGROUP = yes        /* yes, no */
12
DO_VERIFY = no          /* yes, no */
13
RAMS = art_rams18       /* fake, art_rams18 */
14
 
15
/* Starting timestamp */
16
sh date
17
 
18
/* Set some basic variables related to environment */
19
include set_env.inc
20
STAGE = initial
21
 
22
/* Load libraries */
23
include tech_ + TECH + .inc
24
 
25
/* Load RAMs */
26
if (RAMS == "art_rams18") {
27
        include tech_art_rams18.inc
28
} else if (RAMS == "fake") {
29
        include read_fake_rams.inc
30
} else {
31
        echo "Unsupported RAMs"
32
        exit
33
}
34
 
35
/* Load HDL source files */
36
include read_design.inc         > LOG_PATH + read_design_ + TOPLEVEL + .log
37
 
38
/* Set design top */
39
current_design TOPLEVEL
40
 
41
/* Link all blocks and uniquify them */
42
link
43
/*
44
include tech_art_rams18.inc
45
list -libraries > ../logs/libs
46
link
47
list -libraries > ../logs/libs
48
*/
49
uniquify
50
check_design                    > LOG_PATH + check_design_ + TOPLEVEL + .log
51
 
52
/* Apply constraints */
53
if (TECH == "vs_umc18") {
54
        include cons_vs_umc18.inc
55
} else if (TECH == "art_umc18") {
56
        include cons_art_umc18.inc
57
} else {
58
        echo "Error: Unsupported technology"
59
        exit
60
}
61
 
62
/* Transform arithmetics */
63
transform_csa -group
64
 
65
/* Lets do initial synthesis */
66
if (DO_UNGROUP == "yes") {
67
        ungroup -all
68
}
69
compile -incremental -boundary_optimization -map_effort medium
70
 
71
/* Generate reports for basic synthesis */
72
include reports.inc
73
 
74
/* Dump gate-level from basic synthesis */
75
include save_design.inc
76
 
77
/* Advance to incremental synthesis, push hard */
78
if (DO_UNGROUP == "yes") {
79
        ungroup -all
80
}
81
STAGE = incremental
82
compile -incremental -boundary_optimization -ungroup_all -map_effort high
83
 
84
/* Optimize registers */
85
optimize_registers
86
 
87
/* Dump gate-level from incremental synthesis */
88
include save_design.inc
89
 
90
/* Generate reports for incremental synthesis */
91
include reports.inc
92
 
93
/* Set area constraint */
94
STAGE = final
95
set_max_area MAX_AREA
96
compile -incremental -boundary_optimization -auto_ungroup -map_effort medium
97
 
98
/* Dump gate-level from final synthesis */
99
include save_design.inc
100
 
101
/* Generate reports for final synthesis */
102
include reports.inc
103
 
104
/* Verify design */
105
if (NO_VERIFY == "yes") {
106
        compile -no_map -verify         > LOG_PATH + verify_ + TOPLEVEL + .log
107
}
108
 
109
/* Finish */
110
sh date
111
exit
112
 
113
 
114
 
115
 

powered by: WebSVN 2.1.0

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