Hemlock is a special version of Carafe that is used to analyze standard cell based designs. Hemlock does not flatten the circuit since it is only interested in finding faults at the top level. The benefits of not flattening are that extractions are faster, larger circuits can be analyzed, and a gate level description of the fault list can be generated.
Hemlock looks and acts exactly like Carafe. The only visual differences being the lack of a flatten option in the Extract window and the inclusion of more file output options like .ccshort, .bridger, .gateBreaks, .gateBridge, and .tdl. The major underlying difference between Carafe and the Hemlock version is that Hemlock is aware of the structure of the logic cells. Thus, Hemlock knows that nodes can run through logic gates and come out the other side of the gate. This information comes from the .lib file.
The Hemlock version of Carafe extracts faults only from a circuit's top level of hierarchy. Thus, to analyze the interconnection wires for faults, the layout needs to be organized such that the top level of hierarchy only contains the interconnect wires and that all of the cells are at the next lower level of hierarchy. This allows the Hemlock version of Carafe to see that a wire runs through a cell and out to another wiring channel; Carafe, which uses a flattened netlist, cannot do this. Hemlock does not output a .sim file as it assumes there are no transistors in the top level cell. Faults are identified in the .gateBreaks and .gateBridge files.
Hemlock and Carafe together can be used to extract almost all the realistic faults in a large circuit more quickly than Carafe alone by using Carafe to find all the faults in each cell and Hemlock to find those in the routing channel. This saves computation time, memory, and disk resources by extracting the faults from each cell once instead of for every instance of the cell. Also the gate-level description generated by Hemlock facilitates fault simulation and test pattern generation of the extracted faults. For an example of how this is done, see [FL91].