[sdiy] Non maximal-length LFSR
ASSI
Stromeko at nexgo.de
Thu Mar 3 21:20:43 CET 2016
Hi Richie,
On Thursday 03 March 2016, 19:55:59, Richie Burnett wrote:
> What my intended algorithm does instead, is implement sixteen identical
> LFSRs in parallel at the same time using an XOR instruction acting on
> 16-bit words in a circular buffer. But these 16 bits aren't 16 bits of
> one Linear Feedback Shift Register, they are all the same bit but across
> sixteen different LFSR instances. This is how I propose to generate the
> 16-bit words ensuring de-correlation between the bits, by initialising
> the 16 different shift registers to different initial states. The taps
> are currently one bit apart but I can move them anywhere I want.
You are still using bits from the same sequence (each LFSR, a bitslice of
your 48 registers, has the same structure), so you need to carefully
initialize the LFSR states to have a large enough distance. You reduce the
correlation length by a factor of 16, which is inconsequential if you keep
the sequences the maximum of 2^44 cycles apart, but could have unintended
results if they are quite close together. If you really want just 16 random
bits per cycle, one of the pseudo-random generators that are used elsewhere
might actually be much less of a headache. You don't need one that's
cryptographically secure, so there are lots of existing examples around.
Regards,
Achim.
--
+<[Q+ Matrix-12 WAVE#46+305 Neuron microQkb Andromeda XTk Blofeld]>+
SD adaptation for Waldorf rackAttack V1.04R1:
http://Synth.Stromeko.net/Downloads.html#WaldorfSDada
More information about the Synth-diy
mailing list