2019-08-30 18:18:14 -05:00
|
|
|
read_verilog macc.v
|
2019-09-11 11:09:08 -05:00
|
|
|
design -save read
|
|
|
|
|
2019-08-30 18:18:14 -05:00
|
|
|
proc
|
2019-09-11 11:09:08 -05:00
|
|
|
hierarchy -top macc
|
2019-09-07 01:19:03 -05:00
|
|
|
#equiv_opt -assert -map +/xilinx/cells_sim.v synth_xilinx ### TODO
|
|
|
|
equiv_opt -run :prove -map +/xilinx/cells_sim.v synth_xilinx
|
|
|
|
miter -equiv -flatten -make_assert -make_outputs gold gate miter
|
|
|
|
sat -verify -prove-asserts -seq 10 -show-inputs -show-outputs miter
|
2019-08-30 18:18:14 -05:00
|
|
|
design -load postopt # load the post-opt design (otherwise equiv_opt loads the pre-opt design)
|
|
|
|
cd macc # Constrain all select calls below inside the top module
|
|
|
|
select -assert-count 1 t:BUFG
|
2019-09-07 01:19:03 -05:00
|
|
|
select -assert-count 1 t:FDRE
|
2019-08-30 18:18:14 -05:00
|
|
|
select -assert-count 1 t:DSP48E1
|
2019-09-07 01:19:03 -05:00
|
|
|
select -assert-none t:BUFG t:FDRE t:DSP48E1 %% t:* %D
|
2019-09-11 11:09:08 -05:00
|
|
|
|
|
|
|
design -load read
|
|
|
|
proc
|
|
|
|
hierarchy -top macc2
|
|
|
|
#equiv_opt -assert -map +/xilinx/cells_sim.v synth_xilinx ### TODO
|
|
|
|
equiv_opt -run :prove -map +/xilinx/cells_sim.v synth_xilinx
|
|
|
|
miter -equiv -flatten -make_assert -make_outputs gold gate miter
|
|
|
|
sat -verify -prove-asserts -seq 10 -show-inputs -show-outputs miter
|
|
|
|
design -load postopt # load the post-opt design (otherwise equiv_opt loads the pre-opt design)
|
|
|
|
cd macc2 # Constrain all select calls below inside the top module
|
|
|
|
select -assert-count 1 t:BUFG
|
|
|
|
select -assert-count 1 t:DSP48E1
|
2019-09-18 14:07:25 -05:00
|
|
|
select -assert-count 1 t:FDRE
|
|
|
|
select -assert-count 1 t:LUT2
|
|
|
|
select -assert-count 41 t:LUT3
|
|
|
|
select -assert-none t:BUFG t:DSP48E1 t:FDRE t:LUT2 t:LUT3 %% t:* %D
|