createModule method

  1. @override
Module createModule()
override

Creates a Module instance as configured.

Implementation

@override
Module createModule() {
  final pipeline = depthBetweenFlopsKnob.value != null;
  return ReductionTree(
    List<Logic>.generate(
        inputCountKnob.value, (_) => Logic(width: inputWidthKnob.value)),
    _operation,
    radix: radixKnob.value,
    signExtend: signExtendKnob.resolve('signExtend'),
    depthBetweenFlops: depthBetweenFlopsKnob.value,
    clk: pipeline ? Logic() : null,
    reset: pipeline ? Logic() : null,
    enable: pipeline ? Logic() : null,
  );
}