Bending = Info :: Instruments :: Music :: Sequencers :: Youtube Channel
   Art = Statement :: Show List :: Pieces :: Videos
Pseudo Random Sequencer - Pseudo Random Number Generator

Housed inside of an old Dora music toy.

Inside the clear star are 4 red LEDs which blink with the triggered output. It is a pretty useless visual reference.


Playskool Drum 1.39 Mb
MixMeDJ 1.21 Mb
Talking Alphabet Desk Numbers then tones. 0.8 Mb
All 3 Playskool drum, MixMeDJ, and Talking Alphabet Desk 1.24 Mb

Block Diagram

Circuit Function and Description
     This is a Pseudo Random Sequencer with dual PRNG.
     This circuit was removed from another pseudo random sequencer, 2 osc , because they could not play well together and share.
     This circuit utilizes a 2 to 4 decode. The decode has 4 outputs, 2 inputs, and an enable. When the enable is LOW the outputs will be 1 LOW and 3 HIGH. Which of the 4 is LOW depends on the states of the 2 inputs.
     An osc controls the enable and sets the tempo.
     Dual PRNG (Pseudo Random Number Generator), can be a bit complex. Also refered to as LFSR (Linear Feedback Shift Registers) and PRBS (Pseudo Random Bit Sequencer) among other names. Basically it will produce X number of binary combos depending on a few variables, number of flip-flops used and Exclusive OR (XOR) tap points. Both PRNG get the same CLK sig from the same osc that enables the decode setting the tempo. Each pulse from the osc will "push" one bit to the decode. Each PRNG has a momentary switch to clear the flip-flops, and get the PRNG generating.
     I am using 6 FF and one XOR per PRNG. This will produce 63 6 bit binary numbers, 000000 all zeros is not possible. After 63 CLK pulses the pattern will repeat. Both PRNGs are made the same but can be thrown out of phase by pressing either CLEAR button. That will lead to more than 63 patterns generated before a repeat. Each CLK pulse pushes one bit off the end and feeds that bit back into the XOR.
     You would see a progression like this:
011000 - previous 0 pushed off and fed back
011100 - previous 0 pushed off and fed back
011110 - previous 0 pushed off and fed back
111111 - previous 0 pushed off and fed back
001111 - previous 1 pushed off and fed back
010111 - previous 1 pushed off and fed back

     The output of each PRNG is varied something like 010001100111. The specific sound triggered depends on the intersection of outputs when osc enables the decode.

The circuit plugged into the seq is the interface that was also used on the V-tech laptop seq.

These are example outputs for the PRNGs. There is not always the alternating 1010101.
The red examples 1 & 2 are the same output just with differing freq from the osc clocking them.
The blue examples 1 & 2 are again the same outputs with differing freq from the osc.
Compared with the 3rd osc sig and its varying freq of 10101010101.

PRNG schematic. 6 Flip Flops and one XOR, exclusive OR.
MOM SW will clear all flip flops. This can be used to restart the sequence and throw out of phase with the other PRNG. From FF2 to FF3 /Q is used instead of Q. This is the seed, otherwise all nodes would be LOW and never change.

XOR Truth Table
A B | Y
1 1 | 0
1 0 | 1
0 1 | 1
0 0 | 0

Decode Truth Table
/E A0 A1 | /O1 /O2 /O3 /O4
H  X  X  |  H   H   H   H
L  L  L  |  L   H   H   H
L  H  L  |  H   L   H   H
L  L  H  |  H   H   L   H
L  H  H  |  H   H   H   L