Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Next »

Overview

This module accepts a real or complex input and generates a complex

Discussion

This module multiplies the input by the complex exponential exp(-j*2*pi*modBin*n/K) where modBin is an inspector parameter, K is the size of the input buffer (the FFT size) and n = 0:1:(K-1) is the sample number in the block. The only tunable parameter is modBin and K is taken from the wire size.

This module is usually used as part of frequency domain processing. The module effectively shifts the frequency spectrum right by 2*pi*modBin/K radians/sample. Alternatively, you can think of the modules as shifting by modBin FFT bins.

modBin is a floating-point value and can take on any real value including non-integer values. By default modBin = 0.25. The module supports real and complex inputs and always generates a complex output.

Type Definition

typedef struct _ModuleComplexModulate
{
    ModuleInstanceDescriptor instance;            // Common Audio Weaver module instance structure
    FLOAT32 modBin;                               // Omega of modulation coefficient equation.
    FLOAT32* modCoeffs;                           // Modulation coefficient array
} ModuleComplexModulateClass;

Variables

Properties

Name

Type

Usage

isHidden

Default value

Range

Units

modBin

float

parameter

0

0.25

Unrestricted

modCoeffs

float*

state

1

[32 x 1]

Unrestricted

Pins

Input Pins

Name: in

Description: Real or complex input

Data type: float

Channel range: 1

Block size range: Unrestricted

Sample rate range: Unrestricted

Complex support: Real and Complex

Output Pins

Name: cmplx

Description: Complex result

Data type: float

MATLAB Usage

File Name: complex_modulate_module.m

 M=complex_modulate_module(NAME)
 This module accepts a real or complex input and generates a complex
 output by multiplying input with exp(j*2*pi*modBin*n/N)
 Arguments:
    NAME - name of the module.

  • No labels