Lfsr.h – Quantum Data 881 User Manual

Page 308

Advertising
background image

290

Chapter 9 Analyzing Digital Sources and Cables

Generating pseudo-random noise from an external source

This section explains how to implement pseudo-random noise is your own device. Once
implemented, the Analyzer can test and analyze the transmission quality of an external
HDMI/DVI transmit device using pseudo-random noise.

Implementing pseudo-random noise on an external source

The Analyzer can test and analyze pixel data received from an HDMI/DVI source. To
accomplish this, a pseudo-random noise pattern is used that provides a sequence of
highly dynamic pixel values.

To maximize your ability to analyze pixel data generated by set-top boxes, you must be
able to generate pseudo-random noise. To facilitate this, you can use the lfsr.h and lfsl.cpp
source code files from
http://www.quantumdata.com/support/resources/pr_noise/QDI-BCM_PseudoNoise.ZIP,
which enable you to generate QDI-BCM pseudo-random noise from your device.

Once implemented, you can verify that the code is implemented correctly by using the
Dump10K() function to write the first 10,000 pixel values to a file. This result should match
the contents of the PN_31_24.txt reference file included in
http://www.quantumdata.com/support/resources/pr_noise/QDI-BCM_PseudoNoise.ZIP.

lfsr.h

The following source code is provided for the lfdr.h file.

// LFSR.h: interface for the CLFSR class.

#if !defined(AFX_LFSR_H__5947F6F9_1DBE_4E6E_9AFB_77D5D8857A10__INCLUDED_)
#define AFX_LFSR_H__5947F6F9_1DBE_4E6E_9AFB_77D5D8857A10__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

class CLFSR
{
public:

void Dump10K();
unsigned long GetPixel();
void Reset();
CLFSR();
virtual ~CLFSR();

protected:

int state;
unsigned long seed;

Advertising
This manual is related to the following products:

882