edu.byu.ece.edif.tools.replicate.nmr
Class AbstractNMRArchitecture

java.lang.Object
  extended by edu.byu.ece.edif.tools.replicate.nmr.AbstractNMRArchitecture
All Implemented Interfaces:
NMRArchitecture, java.io.Serializable
Direct Known Subclasses:
XilinxNMRArchitecture

public abstract class AbstractNMRArchitecture
extends java.lang.Object
implements NMRArchitecture, java.io.Serializable

Abstract representation of the NMR architecture data structure. It is intended that this data structure be implemented by any and all types of architectures. This class, in addition to the NMRArchitecture interface define the methods which must be implemented by a given architecture. This class also provides functional helper methods to avoid replicating certain code in numerous locations.

Author:
Mike Wirthlin and Keith Morgan
See Also:
Serialized Form

Field Summary
protected  BadCutConnections _badCutConnections
          Object which contains descriptions of all Bad Cut Connections for this architecture
 
Constructor Summary
AbstractNMRArchitecture()
           
 
Method Summary
 boolean isBadCutConnection(EdifPortRef epr1, EdifPortRef epr2)
          Determines whether the given set of Strings describe a Bad Cut Connection as contained in this object.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface edu.byu.ece.edif.tools.replicate.nmr.NMRArchitecture
getDefaultRestoringOrganForReplicationType, isAFlipFlop, isBRAM, isClockNet, prepareForDetectionOutput
 

Field Detail

_badCutConnections

protected BadCutConnections _badCutConnections
Object which contains descriptions of all Bad Cut Connections for this architecture

Constructor Detail

AbstractNMRArchitecture

public AbstractNMRArchitecture()
Method Detail

isBadCutConnection

public boolean isBadCutConnection(EdifPortRef epr1,
                                  EdifPortRef epr2)
Determines whether the given set of Strings describe a Bad Cut Connection as contained in this object. The EdifPortRef objects may be passed in either source, sink or sink, source order. This method attempts to sort things out. If there are discrepancies (inout ports or non-connected ports), epr1 is assumed to be the source and epr2 is assumed to be the sink.

Specified by:
isBadCutConnection in interface NMRArchitecture
Parameters:
epr1 - The first EdifPortRef of the connection to check
epr2 - The second EdifPortRef of the connection to check
Returns:
true if this connection is registered as a Bad Cut Connection in this object.