| <h3 id='___get_driver'>get_driver</h3> | |
| <pre>Get the driver of a net or pin (LLM: driver) | |
| <b>Usage:</b> @driver = get_driver($point, @options); | |
| $point: net name or pin name, 'n12345' or 'U12345/A1' | |
| @options: | |
| -pin: Return in "inst/pin" format, E.G. "state_reg/Q" | |
| Return an array if '-pin' is not present | |
| -nonbuf: Trace the drivers until none buffer | |
| @driver: The driver in array format, if '-pin' is not present. | |
| If the point is floating, @driver is empty, | |
| $driver[0]: Driver instance name. It is empty if the driver is port | |
| $driver[1]: Driver pin or port name. If the driver is a port, it is the port name | |
| $driver[2]: Driver type. It is string "pin" or "port" depending on the driver is port or leaf cell | |
| $driver[3]: Driver phase. It is valid when -nonbuf is present, | |
| indicating if the driver path is inverted | |
| 0: not inverted 1: inverted | |
| <b>Note:</b> | |
| 1. If '-pin' is present, return a scalar, $driver = get_driver("n12345", "-pin"); | |
| 2. Use 'get_drivers' if there are multiple drivers, the return data has different structure | |
| <b>Examples:</b> | |
| #1. Get driver of a net | |
| @driver = get_driver("net12345"); | |
| @driver has content of ("U1247", "Y", "pin"); | |
| #2. port_abc is input port | |
| @driver = get_driver("port_abc"); | |
| @driver has content of ("", "port_abc", "port"); | |
| #3. Return in instance/pin format | |
| $driver = get_driver("net12345", "-pin"); | |
| $driver has content of "U1247/Y" | |
| </pre> |