MT Convolutional DeInterleave VI

LabView Digital Modulation

MT Convolutional DeInterleave VI

Performs deinterleaving using delays that are computed based on the delays defined for the corresponding interleaver.

A convolutional deinterleaver is the inverse of a convolutional interleaver. In convolutional deinterleaving, data elements pass cyclically through a set of branches. That is, in an N branch convolutional deinterleaver, the element 0 goes through branch 0, element 1 goes through branch 1, element N–1 goes through branch N–1, element N goes through branch 0, and so on. Each branch has different delays associated with it. Hence the data sent to each deinterleaver branch is delayed by a specific amount (the amount of delay in that particular branch) before the deinterleaver returns the data.

In a convolutional interleaver, if the delay in branch number n is d n, maximum delay is max_delay and the minimum delay is min_delay, then for the corresponding convolutional deinterleaver, the delay in branch number n is:

D n=(max_delay+min_delay)–d n.

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

Details

MT Convolutional DeInterleaver (Standard)

This polymorphic instance performs the deinterleaving process using a fixed number of branches and fixed unit delay.

MT Convolutional DeInterleaver (Standard)

c1di32.gif

data in specifies the input data to the deinterleaver. The default is empty.

ci32.gif

number of branches specifies the number of branches of the convolutional deinterleaver. Data elements pass through the branches in a cyclic fashion. For example, in an N branch convolutional deinterleaver, data element 0 goes through branch 0, element 1 goes through branch 1, element N–1 goes through branch N–1, element N returns through branch 0 and so on. Each branch incorporates different delays. The default is empty.

ci32.gif

unit delay specifies the unit delay value. If this value is defined as D, then the number of delays on the ith branch is (i×D). If the total number of branches is N, then i=0,1,…, N–1. The default is 1.

c2di32.gif

initial state specifies the shift register values when the convolutional deinterleaver begins operation. The default is empty.

cbool.gif

reset? specifies whether to check the current input parameters. On the first call to this VI or when reset? is set to TRUE, the VI checks input parameters. 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.

i1di32.gif

data out returns the output of the convolutional deinterleaver.

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 Convolutional DeInterleaver (Generic)

This polymorphic instance performs the deinterleaving process with user-specified delays for each branch.

MT Convolutional DeInterleaver (Generic)

c1di32.gif

data in specifies the input data to the deinterleaver. The default is empty.

c1di32.gif

interleaver delays specifies the number of delays individually for each branch of the corresponding interleaver. The number of elements in this array determines the number of branches, and the value of each element denotes the delay for that branch. For example, if interleaver delays is [3,6,9,2], then it implies that branch 0 has 3 delays, branch 1 has 6 delays, and so on, for the corresponding interleaver. The default is empty.

Note  You must specify a value for this parameter.
c2di32.gif

initial state specifies the shift register values when the convolutional deinterleaver begins operation. The default is empty.

cbool.gif

reset? specifies whether to check the current input parameters. On the first call to this VI or when reset? is set to TRUE, the VI checks input parameters. 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.

i1di32.gif

data out returns the output of the convolutional deinterleaver.

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

The following example demonstrates convolutional interleaving/deinterleaving.

Let the data in be: x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, …

Interleaver Input Interleaver Output

D = unit delay in the path

Assume for this example that the unit delay = 1, and that the initial state shift registers are initialized with values of 0 for both the interleaver and the deinterleaver.

Interleaved Data: x0, 0, 0, 0, x4, x1, 0, 0, x8, x5, x2, 0, x12, x9, ….

Deinterleaver Input Deinterleaver Output

Deinterleaved Data: 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, x0, x1, x2, x3, x4, x5, x6, x7, x8, x9, …

References

  1. Wicker, Stephen B. Error Control Systems for Digital Communication and Storage. Englewood Cliffs: Prentice-Hall, 1995.
  2. Proakis, John G. and Masoud Salehi. Communication Systems Engineering. 2d ed. Englewood Cliffs: Prentice-Hall, 2001.
  3. Sklar, Bernard. Digital Communications: Fundamentals and Applications. 2d ed. Englewood Cliffs: Prentice-Hall, 2001.