|
<h3 id='___get_driver'>get_driver</h3> |
|
<pre>Get the driver of a net or pin |
|
<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> |