SFE.PF
Class S

java.lang.Object
  extended by SFE.PF.Block
      extended by SFE.PF.S
Direct Known Subclasses:
S_U, S_u_1, S_u_v, S_V

public abstract class S
extends Block

S(u,v) selection block.

Select for each of the v outputs one of the u inputs. (with duplicates)

Author:
Thomas Schneider

Constructor Summary
S(int u, int v, UC c)
          Constructor
 
Method Summary
abstract  int estimateGates(int u, int v)
          Estimate number of gates of selection block.
abstract  void generate(int u, int v, UC c)
          Generate selection block.
static S generateS(int u, int v, UC c)
          Generate smallest selection block for given parameters.
abstract  void program(int[] s)
          Program selection block.
 
Methods inherited from class SFE.PF.Block
countGates, extractCircuit
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

S

public S(int u,
         int v,
         UC c)
Constructor

Parameters:
u - #inputs
v - #outputs
c - UC containing this selection block
Method Detail

program

public abstract void program(int[] s)
Program selection block.

Specified by:
program in class Block
Parameters:
s - selection mapping: output[i] <- input[s[i]], i=0..(v-1)

generate

public abstract void generate(int u,
                              int v,
                              UC c)
Generate selection block.

Parameters:
u - #inputs
v - #outputs
c - UC containing this selection block

estimateGates

public abstract int estimateGates(int u,
                                  int v)
Estimate number of gates of selection block.

Parameters:
u - #inputs
v - #outputs
Returns:
estimated #gates of selection block

generateS

public static S generateS(int u,
                          int v,
                          UC c)
Generate smallest selection block for given parameters.

Parameters:
u - #inputs
v - #outputs
c - UC containing the selection block
Returns:
generated selection block