<@U016HSAA3RQ> In the Timing closure run log, I se...
# timing-closure
d
@jeffdi In the Timing closure run log, I see there is warning in top-level case analysis Warning: propagated logic value 0 differs from constraint value of 1 on pin padframe/flash_io1_pad/DM[2]. Warning: propagated logic value 0 differs from constraint value of 1 on pin padframe/flash_io1_pad/DM[1]. Warning: propagated logic value 1 differs from constraint value of 0 on pin padframe/flash_io1_pad/DM[0]. I feel this is because there are two case constraint in caravel SDC Set-1: # Add case analysis for pads DM[2]==1'b1 & DM[1]==1'b1 & DM[0]==1'b0 to be outputs *set_case_analysis 1 [get_pins padframe/*_pad*/DM[2]]* *set_case_analysis 1 [get_pins padframe/*_pad*/DM[1]]* *set_case_analysis 0 [get_pins padframe/*_pad*/DM[0]]* Set-2: # the following pads are set as inputs *set_case_analysis 0 [get_pins padframe/*area1_io_pad[4]/DM[2]]* *set_case_analysis 0 [get_pins padframe/*area1_io_pad[4]/DM[1]]* *set_case_analysis 1 [get_pins padframe/*area1_io_pad[4]/DM[0]]* Better to add full path to avoid over-lapping case analysis
p
@Dinesh A Hi, all the gpio pads require a case analysis constraint to analyze the timing of the pads correctly. There are two constraints as all the pads are assumed to be output pads except for 3 pads;
clock
,
IO[2]
(hkspi serial data in), and
IO[4]
(hkspi serial clock) pads. The second case analysis constraint overwrites the first one, so, there's no conflict between the constraints. Regarding the
flash_io1_pad
warning, the pad is assumed to be an output pad in the SDC and in the gate-level netlist as well. However, the propagated logic from the housekeeping configures it as an input pad. Summary: the warning is expected and in the context of STA, it is okay to ignore it.
d
@Passant I am not sure on OpenSTA behaviors here, tool picks User constraints or design propagated logic value in this case?
p
@Dinesh A OpenSTA doesn't support reporting the case analysis set like primetime, so I am not 100% sure that it forces the SDC as well. However, from the timing results comparison between OpenSTA and PrimeTime, I believe it does force the constraints or else some paths might have been different.