Interpolate digital signal and translate it from baseband to IF band
The dsp.DigitalUpConverter
System object™ interpolates a digital signal, and translates it from baseband to intermediate
frequency (IF) band.
To digitally upconvert the input signal:
Create the dsp.DigitalUpConverter
object and set its properties.
Call the object with arguments, as if it were a function.
To learn more about how System objects work, see What Are System Objects?.
returns a
digital up-converter (DUC) System object, upConv
= dsp.DigitalUpConverterupConv
.
returns a DUC System object with the specified property upConv
= dsp.DigitalUpConverter(Name,Value
)Name
set to the specified
value Value
. You can specify one or more name-value pair arguments in
any order as
(Name1
,Value1
,...,NameN
,ValueN
).
Enclose each property name in single quotes. For example, create an object that upsamples
the input signal by a factor of 20, using a filter with the specified
qualities.
upConv = dsp.DigitalUpConverter('InterpolationFactor',20,... 'SampleRate',Fs,... 'Bandwidth',2e3,... 'StopbandAttenuation',55,... 'PassbandRipple',0.2,... 'CenterFrequency',50e3);
To use an object function, specify the
System object as the first input argument. For
example, to release system resources of a System object named obj
, use
this syntax:
release(obj)
The object up samples the input signal using a cascade of three interpolation filters.
This object frequency-upconverts the upsampled signal by multiplying it by a complex
exponential with center frequency equal to the value in the
CenterFrequency
property. In this case, the filter cascade consists of
a FIR interpolation stage, a second stage for CIC compensation, and a CIC interpolator. The
block diagram shows the architecture of the digital up converter.
The scaling section normalizes the CIC gain and the oscillator power. It can also contain
a correction factor to achieve the desired ripple specification. Depending on the setting of
the InterpolationFactor
property, you might be able to bypass the first
filter stage. When the input data type is floating point, the object implements an
N-section CIC interpolation filter as a FIR filter with a response that
corresponds to a cascade of N boxcar filters. The CIC filter is emulated
with a FIR filter so that you can run simulations with floating-point data. When the input
data is fixed-point type, the object implements a true CIC filter with actual comb and
integrator sections.
The diagram represents the DUC arithmetic with floating-point inputs.
For details of fixed-point operation, see Fixed Point.
fvtool
| generatehdl
| getDecimationFactors
| getFilterOrders
| getFilters
| groupDelay
| visualizeFilterStages