MT Generate Bits (poly) VI

LabView Digital Modulation

MT Generate Bits (poly) VI

Generates the sequence of data bits to be modulated. This polymorphic VI can generate Fibonacci or Galois pseudonoise (PN) bit sequences. It can also generate bit sequences based on a user-defined pattern. The selected pattern is repeated until the user-specified number of total bits is generated.

Use the pull-down menu to select an instance of this VI.

Details

MT Generate Bits (User Defined)

This polymorphic instance generates bit sequences based on a user-defined pattern. The selected pattern is repeated until the user-specified number of total bits is generated.

MT Generate Bits (User Defined)

ci32.gif

total bits specifies the total number of pseudorandom bits to be generated. The default is 128.

c1di8.gif

user base bit pattern specifies a user-defined base pattern of bits. The default is empty.

cbool.gif

reset? specifies whether to continue generating bits using the previous iteration states. reset? must be set to TRUE when initializing the PN generator with a new PN seed. When reset? is set to FALSE, the PN sequence generator resumes where it stopped during the previous iteration. The default is TRUE.

ccclst.gif

error in (no error) can accept error information wired from previously called VIs. Use this information to decide if any functionality should be bypassed in the event of errors from other VIs. Right-click the front panel error in control and select Explain Error or Explain Warning from the shortcut menu for more information about the error.

cbool.gif

status is TRUE (X) if an error occurred or FALSE (checkmark) to indicate a warning or that no error occurred. Right-click the front panel error in control and select Explain Error or Explain Warning from the shortcut menu for more information about the error.

ci32.gif

code identifies the error or warning code. Right-click the front panel error in control and select Explain Error or Explain Warning from the shortcut menu for more information about the error.

cstr.gif

source describes the origin of the error or warning. Right-click the front panel error in control and select Explain Error or Explain Warning from the shortcut menu for more information about the error.

i1di8.gif

output bit stream returns the user-defined binary data stream corresponding to the user base bit pattern.

icclst.gif

error out passes error or warning information out of a VI to be used by other VIs. Right-click the front panel error out indicator and select Explain Error or Explain Warning from the shortcut menu for more information about the error.

ibool.gif

status is TRUE (X) if an error occurred or FALSE (checkmark) to indicate a warning or that no error occurred. Right-click the front panel error out indicator and select Explain Error or Explain Warning from the shortcut menu for more information about the error.

ii32.gif

code is the error or warning code. Right-click the front panel error out indicator and select Explain Error or Explain Warning from the shortcut menu for more information about the error.

istr.gif

source describes the origin of the error or warning. Right-click the front panel error out indicator and select Explain Error or Explain Warning from the shortcut menu for more information about the error.

MT Generate Bits (Fibonacci, Primitive Polynomial)

This polymorphic instance generates Fibonacci pseudonoise (PN) bit sequences. The selected pattern is repeated until the user-specified number of total bits is generated.

MT Generate Bits (Fibonacci, Primitive Polynomial)

ci32.gif

total bits specifies the total number of pseudorandom bits to be generated. The default is 128.

c1di8.gif

specify primitive polynomial specifies the primitive polynomial for the PN bit sequence to be generated. The degree of the primitive polynomial determines the PN order. The primitive polynomial is specified by an 8-bit signed integer array. If the degree of the primitive polynomial is N, for example, p(x) =a0+a1x+a2x 2 +……+a N a N, the array contains (N+1) elements. The first element is a0, and the last element is aN. Ensure that the polynomial you provide is a primitive polynomial. For example, if the primitive polynomial is p(x)=1+x 14+x 15, then N=15, and the array contains N+1=16 elements.

ci32.gif

seed in specifies the initial state of the PN generator shift register. If no seed is specified, the default seed is used. The default is 0xD6BF7DF2.

cbool.gif

reset? specifies whether to continue generating bits using the previous iteration states. reset? must be set to TRUE when initializing the PN generator with a new PN seed. When reset? is set to FALSE, the PN sequence generator resumes where it stopped during the previous iteration. The default is TRUE.

ccclst.gif

error in (no error) can accept error information wired from previously called VIs. Use this information to decide if any functionality should be bypassed in the event of errors from other VIs. Right-click the front panel error in control and select Explain Error or Explain Warning from the shortcut menu for more information about the error.

cbool.gif

status is TRUE (X) if an error occurred or FALSE (checkmark) to indicate a warning or that no error occurred. Right-click the front panel error in control and select Explain Error or Explain Warning from the shortcut menu for more information about the error.

ci32.gif

code identifies the error or warning code. Right-click the front panel error in control and select Explain Error or Explain Warning from the shortcut menu for more information about the error.

cstr.gif

source describes the origin of the error or warning. Right-click the front panel error in control and select Explain Error or Explain Warning from the shortcut menu for more information about the error.

i1di8.gif

output bit stream returns the generated pseudorandom data bits. If the PN sequence order is N, the output data is periodic with period T = 2N–1. For example, if N = 7, the output sequence repeats after every T = 127 bits.

ii32.gif

seed out returns a seed for use as seed in during the next call to this VI when reset? is set to FALSE.

icclst.gif

error out passes error or warning information out of a VI to be used by other VIs. Right-click the front panel error out indicator and select Explain Error or Explain Warning from the shortcut menu for more information about the error.

ibool.gif

status is TRUE (X) if an error occurred or FALSE (checkmark) to indicate a warning or that no error occurred. Right-click the front panel error out indicator and select Explain Error or Explain Warning from the shortcut menu for more information about the error.

ii32.gif

code is the error or warning code. Right-click the front panel error out indicator and select Explain Error or Explain Warning from the shortcut menu for more information about the error.

istr.gif

source describes the origin of the error or warning. Right-click the front panel error out indicator and select Explain Error or Explain Warning from the shortcut menu for more information about the error.

MT Generate Bits (Fibonacci, PN Order)

This polymorphic instance generates Fibonacci pseudonoise (PN) bit sequences. The selected pattern is repeated until the user-specified number of total bits is generated.

MT Generate Bits (Fibonacci, PN Order)

ci32.gif

total bits specifies the total number of pseudorandom bits to be generated. The default is 128.

ci32.gif

PN sequence order specifies the order of the PN bit sequence to be generated. Valid values are 5–31, inclusive. The default is 9.

ci32.gif

seed in specifies the initial state of the PN generator shift register. If no seed is specified, the default seed is used. The default is 0xD6BF7DF2.

cbool.gif

reset? specifies whether to continue generating bits using the previous iteration states. reset? must be set to TRUE when initializing the PN generator with a new PN seed. When reset? is set to FALSE, the PN sequence generator resumes where it stopped during the previous iteration. The default is TRUE.

ccclst.gif

error in (no error) can accept error information wired from previously called VIs. Use this information to decide if any functionality should be bypassed in the event of errors from other VIs. Right-click the front panel error in control and select Explain Error or Explain Warning from the shortcut menu for more information about the error.

cbool.gif

status is TRUE (X) if an error occurred or FALSE (checkmark) to indicate a warning or that no error occurred. Right-click the front panel error in control and select Explain Error or Explain Warning from the shortcut menu for more information about the error.

ci32.gif

code identifies the error or warning code. Right-click the front panel error in control and select Explain Error or Explain Warning from the shortcut menu for more information about the error.

cstr.gif

source describes the origin of the error or warning. Right-click the front panel error in control and select Explain Error or Explain Warning from the shortcut menu for more information about the error.

i1di8.gif

output bit stream returns the generated pseudorandom data bits. If the PN sequence order is N, the output data is periodic with period T = 2N–1. For example, if N = 7, the output sequence repeats after every T = 127 bits.

ii32.gif

seed out returns a seed for use as seed in during the next call to this VI when reset? is set to FALSE.

icclst.gif

error out passes error or warning information out of a VI to be used by other VIs. Right-click the front panel error out indicator and select Explain Error or Explain Warning from the shortcut menu for more information about the error.

ibool.gif

status is TRUE (X) if an error occurred or FALSE (checkmark) to indicate a warning or that no error occurred. Right-click the front panel error out indicator and select Explain Error or Explain Warning from the shortcut menu for more information about the error.

ii32.gif

code is the error or warning code. Right-click the front panel error out indicator and select Explain Error or Explain Warning from the shortcut menu for more information about the error.

istr.gif

source describes the origin of the error or warning. Right-click the front panel error out indicator and select Explain Error or Explain Warning from the shortcut menu for more information about the error.

MT Generate Bits (Galois, Primitive Polynomial)

This polymorphic instance generates Galois pseudonoise (PN) bit sequences. The selected pattern is repeated until the user-specified number of total bits is generated.

MT Generate Bits (Galois, Primitive Polynomial)

ci32.gif

total bits specifies the total number of pseudorandom bits to be generated. The default is 128.

c1di8.gif

specify primitive polynomial specifies the primitive polynomial for the PN bit sequence to be generated. The degree of the primitive polynomial determines the PN order. The primitive polynomial is specified by an 8-bit signed integer array. If the degree of the primitive polynomial is N, for example, p(x) =a0+a1x+a2x 2 +……+a N a N, the array contains (N+1) elements. The first element is a0, and the last element is aN. Ensure that the polynomial you provide is a primitive polynomial. For example, if the primitive polynomial is p(x)=1+x 14+x 15, then N=15, and the array contains N+1=16 elements.

ci32.gif

seed in specifies the initial state of the PN generator shift register. If no seed is specified, the default seed is used. The default is 0xD6BF7DF2.

cbool.gif

reset? specifies whether to continue generating bits using the previous iteration states. reset? must be set to TRUE when initializing the PN generator with a new PN seed. When reset? is set to FALSE, the PN sequence generator resumes where it stopped during the previous iteration. The default is TRUE.

ccclst.gif

error in (no error) can accept error information wired from previously called VIs. Use this information to decide if any functionality should be bypassed in the event of errors from other VIs. Right-click the front panel error in control and select Explain Error or Explain Warning from the shortcut menu for more information about the error.

cbool.gif

status is TRUE (X) if an error occurred or FALSE (checkmark) to indicate a warning or that no error occurred. Right-click the front panel error in control and select Explain Error or Explain Warning from the shortcut menu for more information about the error.

ci32.gif

code identifies the error or warning code. Right-click the front panel error in control and select Explain Error or Explain Warning from the shortcut menu for more information about the error.

cstr.gif

source describes the origin of the error or warning. Right-click the front panel error in control and select Explain Error or Explain Warning from the shortcut menu for more information about the error.

i1di8.gif

output bit stream returns the generated pseudorandom data bits. If the PN sequence order is N, the output data is periodic with period T = 2N–1. For example, if N = 7, the output sequence repeats after every T = 127 bits.

ii32.gif

seed out returns a seed for use as seed in during the next call to this VI when reset? is set to FALSE.

icclst.gif

error out passes error or warning information out of a VI to be used by other VIs. Right-click the front panel error out indicator and select Explain Error or Explain Warning from the shortcut menu for more information about the error.

ibool.gif

status is TRUE (X) if an error occurred or FALSE (checkmark) to indicate a warning or that no error occurred. Right-click the front panel error out indicator and select Explain Error or Explain Warning from the shortcut menu for more information about the error.

ii32.gif

code is the error or warning code. Right-click the front panel error out indicator and select Explain Error or Explain Warning from the shortcut menu for more information about the error.

istr.gif

source describes the origin of the error or warning. Right-click the front panel error out indicator and select Explain Error or Explain Warning from the shortcut menu for more information about the error.

MT Generate Bits (Galois, PN Order)

This polymorphic instance generates Galois pseudonoise (PN) bit sequences. The selected pattern is repeated until the user-specified number of total bits is generated.

MT Generate Bits (Galois, PN Order)

ci32.gif

total bits specifies the total number of pseudorandom bits to be generated. The default is 128.

ci32.gif

PN sequence order specifies the order of the PN bit sequence to be generated. Valid values are 5–31, inclusive.

ci32.gif

seed in specifies the initial state of the PN generator shift register. If no seed is specified, the default seed is used. The default is 0xD6BF7DF2.

cbool.gif

reset? specifies whether to continue generating bits using the previous iteration states. reset? must be set to TRUE when initializing the PN generator with a new PN seed. When reset? is set to FALSE, the PN sequence generator resumes where it stopped during the previous iteration. The default is TRUE.

ccclst.gif

error in (no error) can accept error information wired from previously called VIs. Use this information to decide if any functionality should be bypassed in the event of errors from other VIs. Right-click the front panel error in control and select Explain Error or Explain Warning from the shortcut menu for more information about the error.

cbool.gif

status is TRUE (X) if an error occurred or FALSE (checkmark) to indicate a warning or that no error occurred. Right-click the front panel error in control and select Explain Error or Explain Warning from the shortcut menu for more information about the error.

ci32.gif

code identifies the error or warning code. Right-click the front panel error in control and select Explain Error or Explain Warning from the shortcut menu for more information about the error.

cstr.gif

source describes the origin of the error or warning. Right-click the front panel error in control and select Explain Error or Explain Warning from the shortcut menu for more information about the error.

i1di8.gif

output bit stream returns the generated pseudorandom data bits. If the PN sequence order is N, the output data is periodic with period T = 2N–1. For example, if N = 7, the output sequence repeats after every T = 127 bits.

ii32.gif

seed out returns a seed for use as seed in during the next call to this VI when reset? is set to FALSE.

icclst.gif

error out passes error or warning information out of a VI to be used by other VIs. Right-click the front panel error out indicator and select Explain Error or Explain Warning from the shortcut menu for more information about the error.

ibool.gif

status is TRUE (X) if an error occurred or FALSE (checkmark) to indicate a warning or that no error occurred. Right-click the front panel error out indicator and select Explain Error or Explain Warning from the shortcut menu for more information about the error.

ii32.gif

code is the error or warning code. Right-click the front panel error out indicator and select Explain Error or Explain Warning from the shortcut menu for more information about the error.

istr.gif

source describes the origin of the error or warning. Right-click the front panel error out indicator and select Explain Error or Explain Warning from the shortcut menu for more information about the error.

Details

Pseudorandom or pseudonoise (PN) sequences, though deterministic in nature, satisfy many properties (autocorrelation, crosscorrelation, and so on) of random numbers. PN sequences are used in many applications and standards such as 802.11a and DVB. Some examples of PN sequences are m-sequences (also called maximal length shift register sequences), Gold sequences, and Kasami sequences. An m-sequence generates a periodic sequence of length L = 2m – 1 bits and is generated by Linear Feedback Shift Registers (LFSR). Two very well known implementations of m-sequences are the Fibonacci implementation and the Galois implementation.

The preceding figures shows the Fibonacci and Galois implementations of maximal length shift register m-sequences. As can be seen in these figures, m-sequences contain m shift registers. The shift register set is filled with an m-bit initial seed that can be any value except 0 (if the m bits in the m shift registers are all zero, then it is a degenerate case and the output of the generator is 0).

The following examples demonstrate bit generation.

  1. Inputs are specified as follows:

    Primitive polynomial: 1 + X14 + X15

    Initial seed: 000000010101001

    The circuitry is shown in the following figure.

    Seed Output
    000000010101001 0+0=0
    000000101010010 0+0=0
    000001010100100 0+0=0
    000010101001000 0+0=0
    000101010010000 0+0=0
    001010100100000 0+0=0
    010101001000000 0+1=1
    101010010000001 1+0=1

    The preceding example depicts the Fibonacci implementation. This structure is used in different standards, including DVB.

  2. Inputs are specified as follows:

    Primitive polynomial: 1 + X14 + X15

    Initial seed: 000000010101001

    The circuitry is shown in the following figure:

    Seed Output
    000000010101001 0
    000000101010010 0
    000001010100100 0
    000010101001000 0
    000101010010000 0
    001010100100000 0
    010101001000000 0
    101010010000000 1
    110100100000001 1
    001001000000011 0
    010010000000110 0
    100100000001100 1
    101000000011001 1
    110000000110011 1
    000000001100111 0
    000000011001110 0

The preceding example illustrates how PN bits are generated using the Galois implementation.

References

  1. McEliece, Robert J. Finite Fields for Computer Scientists and Engineers (The Kluwer International Series in Engineering and Computer Science). New York: Springer Publishers, 1986.
  2. Press, William H., et al. Numerical Recipes in C: The Art of Scientific Computing. 2nd ed. Cambridge: Cambridge University Press, 1992.
  3. Proakis, John G. and Masoud Salehi. Communication Systems Engineering. 2d ed. Englewood Cliffs: Prentice-Hall, 2001.
  4. Sklar, Bernard. Digital Communications: Fundamentals and Applications. 2d ed. Englewood Cliffs: Prentice-Hall, 2001.