|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.ObjectExamplesJaCoP.FilterBenchmark
public class FilterBenchmark
This is a set of filter scheduling examples, commonly used in High-Level Synthesis.
| Constructor Summary | |
|---|---|
FilterBenchmark()
|
|
| Method Summary | |
|---|---|
static void |
chainingSchedule()
It solves available filters for different scenario consisting of different number of resources. |
static void |
experiment1(Store store,
Filter filter,
int addNum,
int mulNum)
It optimizes scheduling of filter operations. |
static void |
experiment1C(Store store,
Filter filter,
int addNum,
int mulNum,
int clock)
It optimizes scheduling of filter operation in fashion allowing chaining of operations within one clock cycle. |
static void |
experiment1P(Store store,
Filter filter,
int addNum,
int mulNum)
It optimizes scheduling of filter operations. |
static void |
experiment1PM(Store store,
Filter filter,
int addNum,
int mulNum)
It optimizes scheduling of filter operations in a fashion allowing pipelining of multiplication operations. |
static void |
experiment2(Store store,
Filter filter,
int addNum,
int mulNum)
It optimizes scheduling of filter operations. |
static void |
experiment2C(Store store,
Filter filter,
int addNum,
int mulNum,
int clock)
It optimizes scheduling of filter operation in fashion allowing chaining of operations within one clock cycle. |
static void |
experiment2P(Store store,
Filter filter,
int addNum,
int mulNum)
It optimizes scheduling of filter operations. |
static void |
experiment2PM(Store store,
Filter filter,
int addNum,
int mulNum)
It optimizes scheduling of filter operation in fashion allowing pipelining of multiplication operations. |
static void |
main(java.lang.String[] args)
It executes the program for number of filters, number of resources (adders, multipliers) and number of different synthesis techniques ( algorithmic pipelining, multiplier pipelining, chaining, no special techniques). |
static java.util.ArrayList<java.util.ArrayList<IntVar>> |
makeConstraints(Store store,
Filter filter,
int addNum,
int mulNum)
It creates constraint model for scheduling of filter operations. |
static java.util.ArrayList<java.util.ArrayList<IntVar>> |
makeConstraintsChain(Store store,
Filter filter,
int addNum,
int mulNum,
int clk)
It creates constraint model for scheduling of filter operation in fashion allowing chaining of operations within one clock cycle. |
static java.util.ArrayList<java.util.ArrayList<IntVar>> |
makeConstraintsPipeline(Store store,
Filter filter,
int addNum,
int mulNum)
It creates a model for optimization of scheduling of operations of a given filter. |
static java.util.ArrayList<java.util.ArrayList<IntVar>> |
makeConstraintsPipeMultiplier(Store store,
Filter filter,
int addNum,
int mulNum)
It creates constraint model for scheduling of filter operation in fashion allowing pipelining of multiplication operations. |
static java.util.ArrayList<java.util.ArrayList<IntVar>> |
makeLabelingList(IntVar[] T,
IntVar[] R)
It creates an array of arrays using two arrays. |
static void |
pipelineSchedule()
It solves available filters for different scenario consisting of different number of resources. |
static void |
pipeMulSchedule()
It solves available filters for different scenario consisting of different number of resources. |
static void |
schedule()
It solves available filters for different scenario consisting of different number of resources. |
| Methods inherited from class java.lang.Object |
|---|
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
|---|
public FilterBenchmark()
| Method Detail |
|---|
public static void main(java.lang.String[] args)
args - public static void schedule()
public static void pipeMulSchedule()
public static void chainingSchedule()
public static void pipelineSchedule()
public static void experiment1(Store store,
Filter filter,
int addNum,
int mulNum)
store - the constraint store in which the constraints are imposed.filter - the filter being scheduled.addNum - number of adders available.mulNum - number of multipliers available.
public static void experiment1C(Store store,
Filter filter,
int addNum,
int mulNum,
int clock)
store - the constraint store in which the constraints are imposed.filter - the filter being scheduled.addNum - number of adders available.mulNum - number of multipliers available.clock - number of time units within a clock.
public static void experiment1PM(Store store,
Filter filter,
int addNum,
int mulNum)
store - the constraint store in which the constraints are imposed.filter - the filter being scheduled.addNum - number of adders available.mulNum - number of multipliers available.
public static void experiment2PM(Store store,
Filter filter,
int addNum,
int mulNum)
store - the constraint store in which the constraints are imposed.filter - the filter being scheduled.addNum - number of adders available.mulNum - number of multipliers available.
public static void experiment1P(Store store,
Filter filter,
int addNum,
int mulNum)
store - the constraint store in which the constraints are imposed.filter - the filter being scheduled.addNum - number of adders available.mulNum - number of multipliers available.
public static void experiment2P(Store store,
Filter filter,
int addNum,
int mulNum)
store - the constraint store in which the constraints are imposed.filter - the filter being scheduled.addNum - number of adders available.mulNum - number of multipliers available.
public static void experiment2(Store store,
Filter filter,
int addNum,
int mulNum)
store - the constraint store in which the constraints are imposed.filter - the filter being scheduled.addNum - number of adders available.mulNum - number of multipliers available.
public static void experiment2C(Store store,
Filter filter,
int addNum,
int mulNum,
int clock)
store - the constraint store in which the constraints are imposed.filter - the filter being scheduled.addNum - number of adders available.mulNum - number of multipliers available.clock - number of time units within a clock.
public static java.util.ArrayList<java.util.ArrayList<IntVar>> makeConstraints(Store store,
Filter filter,
int addNum,
int mulNum)
store - the constraint store in which the constraints are imposed.filter - the filter being scheduled.addNum - number of adders available.mulNum - number of multipliers available.
public static java.util.ArrayList<java.util.ArrayList<IntVar>> makeConstraintsPipeMultiplier(Store store,
Filter filter,
int addNum,
int mulNum)
store - the constraint store in which the constraints are imposed.filter - the filter being scheduled.addNum - number of adders available.mulNum - number of multipliers available.
public static java.util.ArrayList<java.util.ArrayList<IntVar>> makeConstraintsChain(Store store,
Filter filter,
int addNum,
int mulNum,
int clk)
store - the constraint store in which the constraints are imposed.filter - the filter being scheduled.addNum - number of adders available.mulNum - number of multipliers available.clk - number of time units within a clock.
public static java.util.ArrayList<java.util.ArrayList<IntVar>> makeConstraintsPipeline(Store store,
Filter filter,
int addNum,
int mulNum)
store - constraint store in which the constraints are imposed.filter - filter for which pipelined execution is optimized.addNum - number of available addersmulNum - number of available multipliers.
public static java.util.ArrayList<java.util.ArrayList<IntVar>> makeLabelingList(IntVar[] T,
IntVar[] R)
T - an array of variables corresponding to start time of an operation.R - an array of variables corresponding to resource of an operation.
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||