A float pin is a user-defined timing model that describes a delay as seen from a pin. If you expect that a float pin is to be rising edge, you should specify max_rise and min_rise delay.If you expect it to be falling edge, you should specify max_fall and min_fall delay. If you expect it to be both rising and falling edge, you should specify all 4 delays: max_rise, min_rise, max_fall, and min_fall. Float pins are used in the following situations:
A float pin is a user-defined timing model that describes a delay as seen from a pin. If you expect that a float pin is to be rising edge, you should specify max_rise and min_rise delay.If you expect it to be falling edge, you should specify max_fall and min_fall delay. If you expect it to be both rising and falling edge, you should specify all 4 delays: max_rise, min_rise, max_fall, and min_fall. Float pins are used in the following situations:
To define the data setup requirements for hard macros. For example, if a clock signal terminates on a RAM pin that has significant setup requirements, you might want to synthesize the clock tree so that the arrival time of the clock signal at the RAM occurs before the arrival time of the clock signal at the sequential clock sinks.The float pin alerts the clock tree synthesis engine that there is additional internal delay within the RAM.
To provide a coarse model of the internal clock network delays inside a hierarchical block that is timing-arc-based timing modeled. (For example, one that is using STAMP, ETM, QTM, or a Library Compiler format.) If the internal clock network is already implemented, use the timing arcs between the clock pins and the dedicated internal clock pins to model the internal clock delays. This technique allows you to properly reflect the sensitivity of the internal clock delays to the input clock transition delay.
To capture the budgeted clock network delays of a portion of the current clock network that will be implemented separately. In this case, define the float pin as the input pin of the subtree root cell. If the subtree is already implemented, use the -dont_touch_subtrees option instead.