createModule method
override
Creates a Module instance as configured.
Implementation
@override
Module createModule() {
final outProduct = outputWidthSelectKnob.differentWidthOutput.value
? FloatingPoint(
exponentWidth: outputWidthSelectKnob.exponentWidthKnob.value,
mantissaWidth: outputWidthSelectKnob.mantissaWidthKnob.value,
explicitJBit: outputWidthSelectKnob.explicitJBitKnob.value,
)
: null;
return FloatingPointMultiplierSimple(
clk: multiplierSelectKnob.pipelinedKnob.value ? Logic() : null,
FloatingPoint(
exponentWidth: exponentWidthKnob.value,
mantissaWidth: mantissaWidthKnob.value,
explicitJBit: inputExplicitJBitKnob.value,
),
FloatingPoint(
exponentWidth: exponentWidthKnob.value,
mantissaWidth: mantissaWidthKnob.value,
explicitJBit: inputExplicitJBitKnob.value,
),
outProduct: outProduct,
roundingMode: roundingModeKnob.value,
multGen: multiplierSelectKnob.selectedMultiplier(),
definitionName: 'FloatingPointMultiplierSimple',
);
}