hades.models.ttl74
Class SN7400

java.lang.Object
  extended byhades.simulator.SimObject
      extended byhades.models.ttl74.SN7400
All Implemented Interfaces:
java.lang.Cloneable, ContextToolTip, java.io.Serializable, Simulatable
Direct Known Subclasses:
SN7400_pinout, SN7408_pinout, SN7432_pinout, SN7486_pinout

public class SN7400
extends SimObject
implements Simulatable

SN7400 - a subclass of SimObject that models a standard SN7400 NAND*4 gate. Signals are expected to be StdLogic1164 objects.

See Also:
Serialized Form

Field Summary
protected  Port port_A1
           
protected  Port port_A2
           
protected  Port port_A3
           
protected  Port port_A4
           
protected  Port port_B1
           
protected  Port port_B2
           
protected  Port port_B3
           
protected  Port port_B4
           
protected  Port port_GND
           
protected  Port port_VCC
           
protected  Port port_Y1
           
protected  Port port_Y2
           
protected  Port port_Y3
           
protected  Port port_Y4
           
(package private) static double t_delay
           
protected  StdLogic1164 value_0
           
protected  StdLogic1164 value_1
           
protected  StdLogic1164 value_U
           
protected  StdLogic1164 value_X
           
 
Fields inherited from class hades.simulator.SimObject
classloader, console, debug, editor, name, parent, ports, propertySheet, simulator, symbol, versionId, visible
 
Constructor Summary
SN7400()
           
 
Method Summary
 void elaborate(java.lang.Object arg)
          elaborate(): This method is called by the simulation engine to initialize the simulation object.
 void evaluate(java.lang.Object arg)
          evaluate(): extract the active Port from the SimEvent argument and calculate the new NAND output.
 StdLogic1164 getValueOrU(Port p)
           
 void schedule(Port port_Y, Port port_A, Port port_B, double time)
           
 void schedule(Port target, StdLogic1164 value, double time)
           
 java.lang.String toString()
          toString() - the usual info method
 
Methods inherited from class hades.simulator.SimObject
configure, constructDynamicSymbol, copy, getBindkey, getClassLoader, getDebug, getEditor, getExternalResources, getFullName, getName, getParent, getPort, getPorts, getPropertySheet, getResourceAsStream, getSimulator, getSymbol, getSymbolResourceName, getToolTip, getVersionId, initialize, isVisible, keyPressed, message, mousePressed, needsDynamicSymbol, needsExternalResources, setClassLoader, setConsole, setDebug, setEditor, setName, setParent, setPorts, setSimulator, setSymbol, setVersionId, setVisible, tearDown, write
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface hades.simulator.Simulatable
message
 

Field Detail

port_A1

protected Port port_A1

port_B1

protected Port port_B1

port_Y1

protected Port port_Y1

port_A2

protected Port port_A2

port_B2

protected Port port_B2

port_Y2

protected Port port_Y2

port_A3

protected Port port_A3

port_B3

protected Port port_B3

port_Y3

protected Port port_Y3

port_A4

protected Port port_A4

port_B4

protected Port port_B4

port_Y4

protected Port port_Y4

port_GND

protected Port port_GND

port_VCC

protected Port port_VCC

value_0

protected StdLogic1164 value_0

value_1

protected StdLogic1164 value_1

value_X

protected StdLogic1164 value_X

value_U

protected StdLogic1164 value_U

t_delay

static double t_delay
Constructor Detail

SN7400

public SN7400()
Method Detail

elaborate

public void elaborate(java.lang.Object arg)
elaborate(): This method is called by the simulation engine to initialize the simulation object. We schedule "U" values on all four outputs Y1, Y2, Y3, Y4 at time t=0.0 seconds.

Specified by:
elaborate in interface Simulatable
Overrides:
elaborate in class SimObject

evaluate

public void evaluate(java.lang.Object arg)
evaluate(): extract the active Port from the SimEvent argument and calculate the new NAND output.

Specified by:
evaluate in interface Simulatable
Overrides:
evaluate in class SimObject
Parameters:
arg - an arbitrary object argument

schedule

public void schedule(Port port_Y,
                     Port port_A,
                     Port port_B,
                     double time)

schedule

public void schedule(Port target,
                     StdLogic1164 value,
                     double time)

getValueOrU

public StdLogic1164 getValueOrU(Port p)

toString

public java.lang.String toString()
toString() - the usual info method

Overrides:
toString in class SimObject