Newer
Older
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
#
# Report generation script generated by Vivado
#
proc create_report { reportName command } {
set status "."
append status $reportName ".fail"
if { [file exists $status] } {
eval file delete [glob $status]
}
send_msg_id runtcl-4 info "Executing : $command"
set retval [eval catch { $command } msg]
if { $retval != 0 } {
set fp [open $status w]
close $fp
send_msg_id runtcl-5 warning "$msg"
}
}
proc start_step { step } {
set stopFile ".stop.rst"
if {[file isfile .stop.rst]} {
puts ""
puts "*** Halting run - EA reset detected ***"
puts ""
puts ""
return -code error
}
set beginFile ".$step.begin.rst"
set platform "$::tcl_platform(platform)"
set user "$::tcl_platform(user)"
set pid [pid]
set host ""
if { [string equal $platform unix] } {
if { [info exist ::env(HOSTNAME)] } {
set host $::env(HOSTNAME)
}
} else {
if { [info exist ::env(COMPUTERNAME)] } {
set host $::env(COMPUTERNAME)
}
}
set ch [open $beginFile w]
puts $ch "<?xml version=\"1.0\"?>"
puts $ch "<ProcessHandle Version=\"1\" Minor=\"0\">"
puts $ch " <Process Command=\".planAhead.\" Owner=\"$user\" Host=\"$host\" Pid=\"$pid\">"
puts $ch " </Process>"
puts $ch "</ProcessHandle>"
close $ch
}
proc end_step { step } {
set endFile ".$step.end.rst"
set ch [open $endFile w]
close $ch
}
proc step_failed { step } {
set endFile ".$step.error.rst"
set ch [open $endFile w]
close $ch
}
start_step init_design
set ACTIVE_STEP init_design
set rc [catch {
create_msg_db init_design.pb
create_project -in_memory -part xc7z010clg400-1
set_property board_part em.avnet.com:microzed_7010:part0:1.1 [current_project]
set_property design_mode GateLvl [current_fileset]
set_param project.singleFileAddWarning.threshold 0
set_property webtalk.parent_dir /home/nats/project/VNAV2_Zynq/IP/LTC2271_ADCGetter/edit_LTC2271_SampleGetter_v1_0.cache/wt [current_project]
set_property parent.project_path /home/nats/project/VNAV2_Zynq/IP/LTC2271_ADCGetter/edit_LTC2271_SampleGetter_v1_0.xpr [current_project]
set_property ip_repo_paths {
/home/nats/project/VNAV2_Zynq/IP/LTC2271_ADCGetter/LTC2271_SampleGetter_1.0
/home/nats/project/VNAV2_Zynq/IP/VNA_Config/VNA_Config_1.0
/home/nats/project/VNAV2_Zynq/IP/VNA_Config/VNA_Config_1.0
/home/nats/project/VNAV2_Zynq/IP/LTC2271_ADCGetter/VNA_PeripheralConfig/VNA_PeripheralConfig_1.0
} [current_project]
set_property ip_output_repo /home/nats/project/VNAV2_Zynq/IP/LTC2271_ADCGetter/edit_LTC2271_SampleGetter_v1_0.cache/ip [current_project]
set_property ip_cache_permissions {read write} [current_project]
add_files -quiet /home/nats/project/VNAV2_Zynq/IP/LTC2271_ADCGetter/edit_LTC2271_SampleGetter_v1_0.runs/synth_1/LTC2271_SampleGetter_v1_0.dcp
link_design -top LTC2271_SampleGetter_v1_0 -part xc7z010clg400-1
close_msg_db -file init_design.pb
} RESULT]
if {$rc} {
step_failed init_design
return -code error $RESULT
} else {
end_step init_design
unset ACTIVE_STEP
}
start_step opt_design
set ACTIVE_STEP opt_design
set rc [catch {
create_msg_db opt_design.pb
opt_design
write_checkpoint -force LTC2271_SampleGetter_v1_0_opt.dcp
create_report "impl_1_opt_report_drc_0" "report_drc -file LTC2271_SampleGetter_v1_0_drc_opted.rpt -pb LTC2271_SampleGetter_v1_0_drc_opted.pb -rpx LTC2271_SampleGetter_v1_0_drc_opted.rpx"
close_msg_db -file opt_design.pb
} RESULT]
if {$rc} {
step_failed opt_design
return -code error $RESULT
} else {
end_step opt_design
unset ACTIVE_STEP
}
start_step place_design
set ACTIVE_STEP place_design
set rc [catch {
create_msg_db place_design.pb
implement_debug_core
place_design
write_checkpoint -force LTC2271_SampleGetter_v1_0_placed.dcp
create_report "impl_1_place_report_io_0" "report_io -file LTC2271_SampleGetter_v1_0_io_placed.rpt"
create_report "impl_1_place_report_utilization_0" "report_utilization -file LTC2271_SampleGetter_v1_0_utilization_placed.rpt -pb LTC2271_SampleGetter_v1_0_utilization_placed.pb"
create_report "impl_1_place_report_control_sets_0" "report_control_sets -verbose -file LTC2271_SampleGetter_v1_0_control_sets_placed.rpt"
close_msg_db -file place_design.pb
} RESULT]
if {$rc} {
step_failed place_design
return -code error $RESULT
} else {
end_step place_design
unset ACTIVE_STEP
}
start_step route_design
set ACTIVE_STEP route_design
set rc [catch {
create_msg_db route_design.pb
route_design
write_checkpoint -force LTC2271_SampleGetter_v1_0_routed.dcp
create_report "impl_1_route_report_drc_0" "report_drc -file LTC2271_SampleGetter_v1_0_drc_routed.rpt -pb LTC2271_SampleGetter_v1_0_drc_routed.pb -rpx LTC2271_SampleGetter_v1_0_drc_routed.rpx"
create_report "impl_1_route_report_methodology_0" "report_methodology -file LTC2271_SampleGetter_v1_0_methodology_drc_routed.rpt -pb LTC2271_SampleGetter_v1_0_methodology_drc_routed.pb -rpx LTC2271_SampleGetter_v1_0_methodology_drc_routed.rpx"
create_report "impl_1_route_report_power_0" "report_power -file LTC2271_SampleGetter_v1_0_power_routed.rpt -pb LTC2271_SampleGetter_v1_0_power_summary_routed.pb -rpx LTC2271_SampleGetter_v1_0_power_routed.rpx"
create_report "impl_1_route_report_route_status_0" "report_route_status -file LTC2271_SampleGetter_v1_0_route_status.rpt -pb LTC2271_SampleGetter_v1_0_route_status.pb"
create_report "impl_1_route_report_timing_summary_0" "report_timing_summary -max_paths 10 -file LTC2271_SampleGetter_v1_0_timing_summary_routed.rpt -rpx LTC2271_SampleGetter_v1_0_timing_summary_routed.rpx -warn_on_violation "
create_report "impl_1_route_report_incremental_reuse_0" "report_incremental_reuse -file LTC2271_SampleGetter_v1_0_incremental_reuse_routed.rpt"
create_report "impl_1_route_report_clock_utilization_0" "report_clock_utilization -file LTC2271_SampleGetter_v1_0_clock_utilization_routed.rpt"
close_msg_db -file route_design.pb
} RESULT]
if {$rc} {
write_checkpoint -force LTC2271_SampleGetter_v1_0_routed_error.dcp
step_failed route_design
return -code error $RESULT
} else {
end_step route_design
unset ACTIVE_STEP
}