Logic Testing

On 10 October 2014, for the first time since the end of World War II, the 1+2 Double Delta algorithm was successfully performed on the balanced modulator logic circuits.

The Double Delta algorithm was a statistical attack devised by Bill Tutte in 1942 to find the Lorenz wheel start positions. One tape had punched on to it the pure Lorenz wheel patterns that the manual code breakers had laboriously worked out. The other tape was the intercepted enciphered message tape. The double-delta cross-correlation measurement was then made for the whole length of the message tape. The relative positions then moved one character and the correlation measurement repeated. The codebreaker was looking for the relative position which gave the highest cross-correlation score — which hopefully would correspond to the correct Lorenz wheel start position.

To simulate the serial data streams produced by the Heath Robinson paper tape readers, a Personal Computer Bedstead application has been written to simulate the 23 serial output streams that would be produced from the reading of the two paper tapes running on the bedstead. (Two five-hole characters are read from each tape at the same time).

To perform the Double Delta algorithm on the Heath Robinson electronics, eight serial data tracks produced by the Personal Computer Bedstead were patched into Heath Robinson's logic modulators, then the modulators inter-patched and the outputs patched into a phase detector to perform the Double Delta algorithm.

The output from the phase detector is in the form of a single data stream which is used as the basis of the statistical count to tease out the starting positions of the Lorenz encryption wheels.

This photo (right) shows the patch panel where all the inputs and outputs can be combined in many different ways. The top row of patching are the eight serial input data feeds, then underneath is the inter-modulator patching and outputs patched to a phase detector. We will cover the operation of the Phase Detector in more detail later.

The simulator is now running. The top trace is a PC generated sprocket pulse being used as a reference timing signal and the lower trace is the output result of the Double Delta algorithm.

A great sigh of relief occurred at this point!