createModule method

  1. @override
Module createModule()
override

Creates a Module instance as configured.

Implementation

@override
Module createModule() => CompressionTreeMultiplyAccumulate(
      Logic(width: multiplicandWidthKnob.value),
      Logic(width: multiplierWidthKnob.value),
      Logic(width: addendWidthKnob.value),
      radix: radixKnob.value,
      clk: pipelinedKnob.value ? Logic() : null,
      reset: pipelinedKnob.value ? Logic() : null,
      enable: pipelinedKnob.value ? Logic() : null,
      signedMultiplicand:
          signedMultiplicandKnob.resolve('signedMultiplicand'),
      signedMultiplier: signedMultiplierKnob.resolve('signedMultiplier'),
      signedAddend: signedAddendKnob.resolve('signedAddend'),
      outputWidth: outputWidthKnob.value,
      adderGen: (a, b, {carryIn}) => adderSelectKnob.selectedAdder()(a, b,
          carryIn: carryIn, name: 'mac_add'),
    );