sdfnep
I found that the SDF from the P&R engineer doesn't match with the description
in the standard cell library, which caused some annotation failures.
It looks to me that both SDF and model coding are correct, only that they used
different styles...
How am I going to deal with such situation?
Thank you.
In the SDF annotation of ncverilog: 05.10-s016...
----------------------------------------
ncelab: *W,SDFNEP: Failed Attempt to annotate to non-existent path (IOPATH (posedge A1) X) of instance sim.chip.add_132.U4 of module OR2X1000 </home/worst.sdf, line 48010>.
ncelab: *W,SDFNEP: Failed Attempt to annotate to non-existent path (IOPATH (negedge A1) X) of instance sim.chip.add_132.U4 of module OR2X1000 </home/worst.sdf, line 48011>.
ncelab: *W,SDFNEP: Failed Attempt to annotate to non-existent path (IOPATH (posedge A2) X) of instance sim.chip.add_132.U4 of module OR2X1000 </home/worst.sdf, line 48012>.
ncelab: *W,SDFNEP: Failed Attempt to annotate to non-existent path (IOPATH (negedge A2) X) of instance sim.chip.add_132.U4 of module OR2X1000 </home/worst.sdf, line 48013>.
In the standard cell library, the segment regarding the timing:
----------------------------------------
// PATH DELAY
if(A1 == 1'b0) (A1 => X) = (50:50:50 , 50:50:50);
if(A1 == 1'b1) (A1 => X) = (50:50:50 , 50:50:50);
if(A2 == 1'b0) (A2 => X) = (50:50:50 , 50:50:50);
if(A2 == 1'b1) (A2 => X) = (50:50:50 , 50:50:50);
`ifdef no_ifnone
`else
ifnone (A1 => X) = (50:50:50 , 50:50:50);
ifnone (A2 => X) = (50:50:50 , 50:50:50);
`endif
In the SDF file, one segment:
----------------------------------------
(CELL
(CELLTYPE "OR2X1000")
(INSTANCE add_132/U4)
(DELAY (ABSOLUTE
(IOPATH (posedge A1) X (50:50:50) (50:50:50))
(IOPATH (negedge A1) X (50:50:50) (50:50:50))
(IOPATH (posedge A2) X (50:50:50) (50:50:50))
(IOPATH (negedge A2) X (50:50:50) (50:50:50))
))
)