edu.byu.ece.edif.tools.sterilize.halflatch
Class HalfLatchRemoval

java.lang.Object
  extended by edu.byu.ece.edif.tools.sterilize.halflatch.HalfLatchRemoval

public class HalfLatchRemoval
extends java.lang.Object

Removes half latches from an EDIF file. Replaces all types of FFs with FDCPEs and connect the unused ports (PRE, CLR, CE) to constant values (0 or 1). The constant values are provided in two ways, depending on the user's choice: 1) A LUT is added into the EDIF file and provides the constant values; 2) New input ports are added on the top-level cell's interface, and the constant values are provided by external inputs. This class provides a command-line executable interface (it has a main method). The user specifies the EDIF file, following the conventions of the JEdif tools. An argument [-c ] is used to specify the constant value mode. There are two optional modes: "lut" and "nolut". "lut" is set as default. The resulting EDIF file carries the same filename as the original, with "_noHalfLatch" appended. The resulting top-level EdifCell has the same name as the original EdifCell. For a precise list of the cells replaced by this class, please see the source code. The half latch removal is assumed to be performed on a flattened cell.

Author:
Yubo Li

Constructor Summary
HalfLatchRemoval()
           
 
Method Summary
static void main(java.lang.String[] args)
          A simple main class that can be used to perform this half latch removal.
static EdifEnvironment removeHalfLatches(EdifEnvironment env, boolean lut)
          This static method removes half latches.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

HalfLatchRemoval

public HalfLatchRemoval()
Method Detail

removeHalfLatches

public static EdifEnvironment removeHalfLatches(EdifEnvironment env,
                                                boolean lut)
This static method removes half latches. It returns a new EdifEnvironment that is a copy of the old with half latches removed.

Parameters:
env - EdifEnvironment containing half latches.
lut - a flag indicating which mode is chosen.
Returns:
EdifEnvironment in which all half latches have been removed.

main

public static void main(java.lang.String[] args)
A simple main class that can be used to perform this half latch removal.