1 |
2 |
dimamali |
source setup_rhumc.tcl
|
2 |
|
|
source leon3mp_dc.tcl
|
3 |
|
|
set_scan_configuration -style multiplexed_flip_flop
|
4 |
|
|
source timing.tcl
|
5 |
|
|
#ungroup -flatten -simple_names core0/ringosc0/drx
|
6 |
|
|
#ungroup -flatten -simple_names core0/leon3core0/grspw0_0/nrx_clkbuf_0
|
7 |
|
|
|
8 |
|
|
ungroup core0/ringosc0/drx -flatten -simple_names
|
9 |
|
|
ungroup core0/leon3core0/dsu0/x0 -simple_names
|
10 |
|
|
ungroup core0/leon3core0/grspw0_0/ram0 -flatten -simple_names
|
11 |
|
|
#ungroup core0/leon3core0/grspw0_0/grspwc0 -flatten -simple_names
|
12 |
|
|
ungroup core0/leon3core0/grspw0_0/nrx_clkbuf_0 -flatten -simple_names
|
13 |
|
|
ungroup core0/leon3core0/grspw0_0/rx_clkbuf_0 -flatten -simple_names
|
14 |
|
|
ungroup core0/leon3core0/grspw0_0/rx_ram0 -flatten -simple_names
|
15 |
|
|
ungroup core0/leon3core0/grspw0_0/rx_ram1 -flatten -simple_names
|
16 |
|
|
ungroup core0/leon3core0/grspw0_0/tx_ram0 -flatten -simple_names
|
17 |
|
|
|
18 |
|
|
ungroup core0/leon3core0/grspw0_1/ram0 -flatten -simple_names
|
19 |
|
|
#ungroup core0/leon3core0/grspw0_1/grspwc0 -flatten -simple_names
|
20 |
|
|
ungroup core0/leon3core0/grspw0_1/nrx_clkbuf_0 -flatten -simple_names
|
21 |
|
|
ungroup core0/leon3core0/grspw0_1/rx_clkbuf_0 -flatten -simple_names
|
22 |
|
|
ungroup core0/leon3core0/grspw0_1/rx_ram0 -flatten -simple_names
|
23 |
|
|
ungroup core0/leon3core0/grspw0_1/rx_ram1 -flatten -simple_names
|
24 |
|
|
ungroup core0/leon3core0/grspw0_1/tx_ram0 -flatten -simple_names
|
25 |
|
|
|
26 |
|
|
#ungroup core0/leon3core0/leon3ft0_0/tbmem0/ram0_0 -flatten -simple_names
|
27 |
|
|
#ungroup core0/leon3core0/leon3ft0_0/tbmem0/ram0_1 -flatten -simple_names
|
28 |
|
|
|
29 |
|
|
current_instance pads0
|
30 |
|
|
ungroup [find cell "*"] -flatten -simple_names
|
31 |
|
|
current_instance ..
|
32 |
|
|
set_dont_touch pads0
|
33 |
|
|
|
34 |
|
|
current_instance core0
|
35 |
|
|
#ungroup find(cell, {"clk*"} ) -flatten -simple_names
|
36 |
|
|
current_instance leon3core0
|
37 |
|
|
#group [find cell {apb* uart* timer* irq* ahb* rst0 dcom* grg* sr* dsu0 ahbjtag0 }] -design_name amod -cell_name amod0
|
38 |
|
|
current_instance leon3ft0_0/p0
|
39 |
|
|
ungroup -all -flatten -simple_names
|
40 |
|
|
current_instance ../rf0
|
41 |
|
|
ungroup -all -flatten -simple_names
|
42 |
|
|
current_instance ../cmem0
|
43 |
|
|
ungroup -all -flatten -simple_names
|
44 |
|
|
current_instance ../fpu0
|
45 |
|
|
ungroup -all -flatten -simple_names
|
46 |
|
|
current_instance ../../ahbuart0
|
47 |
|
|
ungroup -all -flatten -simple_names
|
48 |
|
|
|
49 |
|
|
current_instance ../ftmctrl0
|
50 |
|
|
ungroup -all -flatten -simple_names
|
51 |
|
|
current_instance ..
|
52 |
|
|
ungroup ahbctrl0 -flatten -simple_names
|
53 |
|
|
ungroup apbctrl0 -flatten -simple_names
|
54 |
|
|
|
55 |
|
|
current_instance ../../..
|
56 |
|
|
|
57 |
|
|
set compile_auto_ungroup_override_wlm "true"
|
58 |
|
|
set compile_auto_ungroup_count_leaf_cells "true"
|
59 |
|
|
set compile_auto_ungroup_delay_num_cells 100
|
60 |
|
|
set compile_ultra_ungroup_small_hierarchies "false"
|
61 |
|
|
set compile_auto_ungroup_area_num_cells 100
|
62 |
|
|
|
63 |
|
|
set_max_area 0
|
64 |
|
|
set_max_transition 1.0 leon3mp
|
65 |
|
|
|
66 |
|
|
source scan.tcl
|
67 |
|
|
#compile_ultra -scan -no_boundary_optimization
|
68 |
|
|
compile_ultra -scan -retime
|
69 |
|
|
|
70 |
|
|
write -f ddc -hier leon3mp -output synopsys/leon3mp.ddc
|
71 |
|
|
|
72 |
|
|
report_timing
|
73 |
|
|
report_timing > synopsys/timing1.log
|
74 |
|
|
write_sdc synopsys/leon3mp.sdc
|
75 |
|
|
report_area
|
76 |
|
|
report_area -hierarchy > synopsys/area1.log
|
77 |
|
|
report_power
|
78 |
|
|
report_power > synopsys/pow1.log
|
79 |
|
|
report_power -hier > synopsys/pow1h.log
|
80 |
|
|
|
81 |
|
|
change_names -rules verilog -hierarchy
|
82 |
|
|
write -f verilog -hier leon3mp -output synopsys/leon3mp.v
|
83 |
|
|
#source timing3.tcl
|
84 |
|
|
source scan2.tcl
|
85 |
|
|
|
86 |
|
|
quit
|
87 |
|
|
|