File size: 1,435 Bytes
fe683c0 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 |
<h3 id='___get_drivers'>get_drivers</h3> <pre>Get the drivers of a net or pin (LLM: drivers) <b>Usage:</b> @drivers = get_drivers($point, @options); $point: net name or pin name, 'n12345' or 'U12345/A1' @options: -nonbuf: Trace the drivers until none buffer @drivers: An array of the drivers, if the point is floating, @drivers is empty, if the point has multi-drivers, @drivers has more than one items. For each item in @drivers Index 0: instance, it is empty if the driver is port Index 1: pin or port, if the driver is port, return port Index 2: string "pin" or "port" depending on the driver is port or leaf cell Index 3: indicating drive path inverted or not If 'nonbuf' is present, the last item in @drivers is the non-buffer driver So '$nonbuf = pop @drivers' can get the non-buffer driver <b>Note:</b> Use 'get_driver' instead if the net has only one driver and 'nonbuf' option is not used <b>Examples:</b> #1. Get drivers of a net @drivers = get_drivers("net12345"); @drivers has content of (["U1247", "Y", "pin"]); #2. 'port_abc' is input port @drivers = get_drivers("port_abc"); @drivers has content of (["", "port_abc", "port"]); #3. Buffers in the path @drivers = get_drivers("state_reg/CK", "-nonbuf"); @drivers has content of ( ["buf_inst0", "Y", "pin"], ["inv_inst1", "Y", "pin"], ["and_inst2", "Y", "pin"] ) </pre> |