This repository was archived by the owner on Apr 19, 2022. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathanalyze.sh
More file actions
executable file
·47 lines (43 loc) · 1.72 KB
/
analyze.sh
File metadata and controls
executable file
·47 lines (43 loc) · 1.72 KB
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
#!/usr/bin/env bash
cd $1
cd magic
echo "no" | ext4mag $1.mag
cd ../sue
echo "set NETLIST(no_header) 1" > .suerc
sue $1.sue -CMD netlist -CMD exit -ICONIFY 1
cd ../calibre
printf "*lvsRulesFile: /classes/ecen4303F18/calibre/calibreLVS_scn3me_subm.rul\n">runset.calibre.lvs
printf "*lvsRunDir: .\n">>runset.calibre.lvs
printf "*lvsLayoutPaths: ../magic/%s.gds\n" $1>>runset.calibre.lvs
printf "*lvsLayoutPrimary: %s\n" $1>>runset.calibre.lvs
printf "*lvsSourcePath: ../sue/%s.sp\n" $1>>runset.calibre.lvs
printf "*lvsSourcePrimary: %s\n" $1>>runset.calibre.lvs
printf "*lvsSourceSystem: SPICE\n">>runset.calibre.lvs
printf "*lvsSpiceFile: extracted.sp\n">>runset.calibre.lvs
printf "*lvsPowerNames: vdd\n">>runset.calibre.lvs
printf "*lvsGroundNames: gnd\n">>runset.calibre.lvs
printf "*lvsIgnorePorts: 1\n">>runset.calibre.lvs
printf "*lvsERCDatabase: %s.erc.db\n" $1>>runset.calibre.lvs
printf "*lvsERCSummaryFile: %s.erc.summary\n" $1>>runset.calibre.lvs
printf "*lvsReportFile: %s.lvs.report\n" $1>>runset.calibre.lvs
printf "*lvsMaskDBFile: %s.maskdb\n" $1>>runset.calibre.lvs
printf "*cmnShowOptions: 1\n">>runset.calibre.lvs
printf "*Cmnvconnectnames: VDD GND\n">>runset.calibre.lvs
printf "*cmnVConnectNamesState: ALL\n">>runset.calibre.lvs
printf "*cmnFDILayerMapFile: /classes/ecen4303F18/calibre/layer.map\n">>runset.calibre.lvs
printf "*cmnFDIUseLayerMap: 1">>runset.calibre.lvs
./run_calibre.sh
cd ..
if [ -e ./calibre/$1.lvs.report ] && !(grep -Fq INCORRECT ./calibre/$1.lvs.report)
then printf "\nSimulation results CORRECT!\n"
else
printf "\nERROR in LVS!\n"
exit 0
fi
if [ ! -d "../output" ]
then mkdir ../output
fi
cd ../output
cp ../$1/calibre/$1.lvs.report .
echo "y" | pplot -k $1.ps -l allText -d 10 ../$1/magic/$1.cif
printf "\n"