mirror of https://github.com/YosysHQ/icestorm.git
30 lines
690 B
Bash
30 lines
690 B
Bash
#!/bin/bash
|
|
|
|
set -ex
|
|
|
|
yosys -p '
|
|
cd equiv
|
|
equiv_mark
|
|
select -write equiv_graph.segs w:seg_*_gate a:equiv_region!=0 %i
|
|
show -prefix equiv_graph -format dot a:equiv_region!=0 %co2 a:equiv_region!=0 %ci2
|
|
' $1.il
|
|
|
|
./icetime -P tq144 -p $1.pcf $1.asc $( sed 's,_gate$,,; s,.*_,-g ,;' < equiv_graph.segs ) > /dev/null
|
|
|
|
{
|
|
egrep -v '^}' icetime_graph.dot
|
|
egrep -v '^(digraph|label=|})' equiv_graph.dot
|
|
|
|
for seg in $( sed 's,equiv/,,' equiv_graph.segs ); do
|
|
n=$( awk "/$seg/ { print \$1; }" equiv_graph.dot )
|
|
s=$( echo $seg | sed 's,_[0-9]*_gate$,,' )
|
|
echo " $n:s -> $s:n [style=bold];"
|
|
done
|
|
echo "}"
|
|
} > $1.dot
|
|
|
|
rm -f equiv_graph.segs
|
|
rm -f equiv_graph.dot
|
|
rm -f icetime_graph.dot
|
|
|