jaga.pj.circuits
Interface CircuitMapping

All Superinterfaces:
java.io.Serializable
All Known Implementing Classes:
OptimizedMapping, VassilevMapping, LUTAbsoluteMapping, FaultyOptimizedMapping, FPGALUTVariableSizedAbsoluteMapping, FPGALUTAbsoluteMapping, LUTAbsoluteMappingVariableSized

public interface CircuitMapping
extends java.io.Serializable

A circuit mapping object defines the mapping from a genotype to the structure of a circuit. This can be used to customize faulty or non faulty circuits to have different mappings like 'nearest neighbour', 'absolute position', and/or cater for variable length genotypes with adaptive mappings.

Current convention is elements array is made of all elements to be updated and last numInputs elements are the inputs which aren't updated..


Field Summary
static int ELEMENTS
           
static int INPUTS
           
static int OUTPUTS
           
 
Method Summary
 SimulatorLogicElement getElementFromAddress(SimulatorLogicElement[][] inoutels, int address)
           
 SimulatorLogicElement[][] map(BitSet individual)
          Takes and individual and an array of arrays of logic elements where this individual must be instantiated.
 void resetDelays(java.lang.Object delayDef)
           
 

Field Detail

INPUTS

public static final int INPUTS

OUTPUTS

public static final int OUTPUTS

ELEMENTS

public static final int ELEMENTS
Method Detail

map

public SimulatorLogicElement[][] map(BitSet individual)
Takes and individual and an array of arrays of logic elements where this individual must be instantiated.
Parameters:
individual - The individual to be mapped into a circuit.
Returns:
Array consisting of three subarrays: The first will represent the inputs to the circuit and is where the inputs will be fed in. The second represents the elements that are the outputs of the circuit and is where they will be read out from. The last is an array with all the elements of the circuit.

getElementFromAddress

public SimulatorLogicElement getElementFromAddress(SimulatorLogicElement[][] inoutels,
                                                   int address)

resetDelays

public void resetDelays(java.lang.Object delayDef)