createModule method

  1. @override
Module createModule()
override

Creates a Module instance as configured.

Implementation

@override
Module createModule() => CarrySelectOnesComplementCompoundAdder(
      Logic(width: widthKnob.value),
      Logic(width: widthKnob.value),
      subtract: subtractKnob.resolve('subtract'),
      generateCarryOut: generateCarryOutKnob.value,
      generateCarryOutP1: generateCarryOutP1Knob.value,
      widthGen: blockWidthKnob.value > 0
          ? CarrySelectCompoundAdder.splitSelectAdderAlgorithmNBit(
              blockWidthKnob.value)
          : CarrySelectCompoundAdder.splitSelectAdderAlgorithmSingleBlock,
      adderGen: (a, b, {carryIn}) => adderSelectKnob.selectedAdder()(a, b,
          carryIn: carryIn, name: 'compound_add'),
    );