createModule method

  1. @override
Module createModule()
override

Creates a Module instance as configured.

Implementation

@override
Module createModule() {
  final input = Logic(width: widthKnob.value);
  final treeGenerator = _treeGenerators[treeKnob.value]!;
  return switch (operationKnob.value) {
    ParallelPrefixOperation.orScan =>
      ParallelPrefixOrScan(input, ppGen: treeGenerator),
    ParallelPrefixOperation.priorityFinder =>
      ParallelPrefixPriorityFinder(input, ppGen: treeGenerator),
    ParallelPrefixOperation.increment =>
      ParallelPrefixIncr(input, ppGen: treeGenerator),
    ParallelPrefixOperation.decrement =>
      ParallelPrefixDecr(input, ppGen: treeGenerator),
  };
}