mirror of
				https://github.com/YosysHQ/yosys
				synced 2025-11-04 05:19:11 +00:00 
			
		
		
		
	Use ABC to convert AIGER to Verilog, then sat against Yosys
This commit is contained in:
		
							parent
							
								
									1b113a0574
								
							
						
					
					
						commit
						ebe29b6659
					
				
					 1 changed files with 15 additions and 21 deletions
				
			
		| 
						 | 
				
			
			@ -1,24 +1,18 @@
 | 
			
		|||
#!/bin/bash
 | 
			
		||||
 | 
			
		||||
OPTIND=1
 | 
			
		||||
seed=""    # default to no seed specified
 | 
			
		||||
while getopts "S:" opt
 | 
			
		||||
do
 | 
			
		||||
    case "$opt" in
 | 
			
		||||
	S) arg="${OPTARG#"${OPTARG%%[![:space:]]*}"}" # remove leading space
 | 
			
		||||
	   seed="SEED=$arg" ;;
 | 
			
		||||
    esac
 | 
			
		||||
set -e
 | 
			
		||||
for aig in *.aig; do
 | 
			
		||||
    ../../yosys-abc -c "read -c $aig; write ${aig%.*}_ref.v"
 | 
			
		||||
    ../../yosys -p "
 | 
			
		||||
read_verilog ${aig%.*}_ref.v
 | 
			
		||||
prep
 | 
			
		||||
design -stash gold
 | 
			
		||||
read_aiger -clk_name clock $aig
 | 
			
		||||
prep
 | 
			
		||||
design -stash gate
 | 
			
		||||
design -import gold -as gold
 | 
			
		||||
design -import gate -as gate
 | 
			
		||||
miter -equiv -flatten -make_assert -make_outputs gold gate miter
 | 
			
		||||
sat -verify -prove-asserts -show-ports -seq 16 miter
 | 
			
		||||
"
 | 
			
		||||
done
 | 
			
		||||
shift "$((OPTIND-1))"
 | 
			
		||||
 | 
			
		||||
# check for Icarus Verilog
 | 
			
		||||
if ! which iverilog > /dev/null ; then
 | 
			
		||||
  echo "$0: Error: Icarus Verilog 'iverilog' not found."
 | 
			
		||||
  exit 1
 | 
			
		||||
fi
 | 
			
		||||
 | 
			
		||||
echo "===== AAG ======"
 | 
			
		||||
${MAKE:-make} -f ../tools/autotest.mk $seed *.aag EXTRA_FLAGS="-f aiger"
 | 
			
		||||
 | 
			
		||||
echo "===== AIG ======"
 | 
			
		||||
exec ${MAKE:-make} -f ../tools/autotest.mk $seed *.aig EXTRA_FLAGS="-f aiger"
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue