Patent ID: 7861205

Claim:
A computer readable storage device, storing computer instructions for computer implementation of a method for interactive editing of layout for integrated circuits, comprising: (a) displaying, using a computer system, a depiction of layout for an integrated circuit, the layout defined by database objects, each being a respective single-width portion of layout, formed on any one of multiple interconnect layers, and having respective first and second ends; (b) accepting a user selection of one of the database objects as a start of a spine definition; (c) setting the first end of the selected object as a current end of a current object; (d) determining whether the current end of the current object corresponds to a first end of a single additional database object, of the same width, on the same layer, and of the same net as the current object, and if so, then adding the additional object to the spine definition, and repeating (d) with the second end of the additional database object as the current end of the current object; (e) determining, using the computer system, whether the current end of the current object corresponds to first ends of two or more additional database objects, and if so then (e)(1) determining whether exactly one of the two or more additional database objects is of the same width, on the same layer, and of the same net as the current object, and if so then adding that one additional database object to the spine definition and repeating (d) with that one additional database object as the current object, if not then (e)(2) determining whether exactly one of the two or more additional database objects has a first end segment collinear with a segment of the current end of the current object, and if so then adding that additional database object to the spine definition and repeating (d) with that one additional database object as the current object, and if not then terminating an end of the spine definition corresponding to the current end of the current object; (f) repeating (d) with the second end of the selected object as the current end of the current object; and (g) outputting an indication of database objects comprising the spine definition.