module_pattern: PRBS31 lfsr_poly fails to compile
Got
** Error: /home/desimone/repos/fw/uc_device/sim/vunit_out/preprocessed/obr/obr_cfg_pkg.vhd(37): near "2415919105": (vcom-119) Integer value exceeds INTEGER'high.
when using:
self.pattern = module_pattern.Module(
parent=self,
mode=module_pattern.PatternMode.TX,
lfsr_poly=(1 << 31) + (1 << 28) + 1
)
because this generates:
constant c_obr_cfg_init : t_obr_cfg := (
pattern => (
local => (
mode => tx,
width => 31,
prng_kind => lfsr_fibonacci,
seed => 1,
lfsr_poly => 2415919105,
lfsr_full_cycle => False,
lfsr_use_xnor => False
)
)
);
Note:
self.add_config_entry("lfsr_poly", "natural", lfsr_poly)
in module_pattern.py