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

Subversion Repositories or1k

[/] [or1k/] [tags/] [rel_1/] [or1200/] [syn/] [scr/] [top_ic.scr] - Blame information for rev 1780

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

Line No. Rev Author Line
1 159 lampret
/*
2
 * User defines for synthesizing insn cache / IMMU unit
3
 *
4
 */
5
TOPLEVEL = ic
6
include select_tech.inc
7
CLK = clk
8
RST = rst
9
CLK_PERIOD = 1.8        /* 555 MHz */
10
MAX_AREA = 0            /* Push hard */
11
DO_UNGROUP = yes        /* yes, no */
12
DO_VERIFY = yes         /* 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
uniquify
44
check_design                    > LOG_PATH + check_design_ + TOPLEVEL + .log
45
 
46
/* Apply constraints */
47
if (TECH == "vs_umc18") {
48
        include cons_vs_umc18.inc
49
} else if (TECH == "art_umc18") {
50
        include cons_art_umc18.inc
51
} else {
52
        echo "Error: Unsupported technology"
53
        exit
54
}
55
 
56
/* Transform arithmetics */
57
transform_csa -group
58
 
59
/* Lets do basic synthesis */
60
if (DO_UNGROUP == "yes") {
61
        ungroup -all -flatten
62
}
63
compile -boundary_optimization -map_effort low
64
 
65
/* Generate reports for basic synthesis */
66
include reports.inc
67
 
68
/* Dump gate-level from basic synthesis */
69
include save_design.inc
70
 
71
/* Advance to incremental synthesis, push hard */
72
STAGE = incremental
73
compile -incremental -boundary_optimization -ungroup_all -map_effort high
74
 
75
/* Optimize registers */
76
optimize_registers
77
 
78
/* Dump gate-level from incremental synthesis */
79
include save_design.inc
80
 
81
/* Generate reports for incremental synthesis */
82
include reports.inc
83
 
84
/* Set area constraint */
85
STAGE = final
86
set_max_area MAX_AREA
87
compile -incremental -boundary_optimization -auto_ungroup -map_effort medium
88
 
89
/* Dump gate-level from final synthesis */
90
include save_design.inc
91
 
92
/* Generate reports for final synthesis */
93
include reports.inc
94
 
95
/* Verify design */
96
if (DO_VERIFY == "yes") {
97
        compile -no_map -verify         > LOG_PATH + verify_ + TOPLEVEL + .log
98
}
99
 
100
/* Finish */
101
sh date
102
exit
103
 
104
 
105
 
106
 

powered by: WebSVN 2.1.0

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