This document provides an overview of decimation and interpolation in multirate signal processing. It discusses downsampling by an integer factor M, which reduces the sampling rate by taking every M-th sample and discarding the rest. Downsampling can cause aliasing if the signal is not bandlimited, so a low-pass filter is used beforehand. The document also covers properties like linearity and time-variance, identities for cascading systems, and polyphase decomposition to more efficiently implement decimation filters when the number of coefficients is a multiple of the decimation factor. Examples and illustrations are provided using MATLAB code.
Salient Features:
The magnitude response is nearly constant(equal to 1) at lower frequencies
There are no ripples in passband and stop band
The maximum gain occurs at Ω=0 and it is H(Ω)=1
The magnitude response is monotonically decreasing
As the order of the filter ‘N’ increases, the response of the filter is more close to the ideal response
Salient Features:
The magnitude response is nearly constant(equal to 1) at lower frequencies
There are no ripples in passband and stop band
The maximum gain occurs at Ω=0 and it is H(Ω)=1
The magnitude response is monotonically decreasing
As the order of the filter ‘N’ increases, the response of the filter is more close to the ideal response
In communication system, intersymbol interference (ISI) is a form of distortion of a signal in which one symbol interferes with subsequent symbols. This is an unwanted phenomenon as the previous symbols have similar effect as noise, thus making the communication less reliable.
In communication system, the Nyquist ISI criterion describes the conditions which when satisfied by a communication channel (including responses of transmit and receive filters), result in no intersymbol interference(ISI). It provides a method for constructing band-limited functions to overcome the effects of intersymbol interference.
link of a reference: http://www.slideshare.net/zena_mohammed/advanced-digital-signal-processing-book. digital_signal_processing__a_practical_approach. this reference for asked me for pictures in presentation of Multirate Digital Signal Processing.
This presentation will explain about the need for modulation in communication system. We made this presentation as our group assignment in Analog and Digital Communication System course in MIIT.
Sampling is a Simple method to convert analog signal into discrete Signal by using any one of its three methods
if the sampling frequency is twice or greater than twice then sampled signal can be convert back into analog signal easily......
This presentation covers:
Some basic definitions & concepts of digital communication
What is Phase Shift Keying(PSK) ?
Binary Phase Shift Keying – BPSK
BPSK transmitter & receiver
Advantages & Disadvantages of BPSK
Pi/4 – QPSK
Pi/4 – QPSK transmitter & receiver
Advantages of Pi/4- QPSK
Frequency-Shift Keying, also known as FSK is a type of digital frequency modulation. It is also often called as binary frequency shift keying or BFSK
Similar to analog FM, it is a constant-amplitude angle modulation.
This presentation will discuss the concepts behind FSK
In communication system, intersymbol interference (ISI) is a form of distortion of a signal in which one symbol interferes with subsequent symbols. This is an unwanted phenomenon as the previous symbols have similar effect as noise, thus making the communication less reliable.
In communication system, the Nyquist ISI criterion describes the conditions which when satisfied by a communication channel (including responses of transmit and receive filters), result in no intersymbol interference(ISI). It provides a method for constructing band-limited functions to overcome the effects of intersymbol interference.
link of a reference: http://www.slideshare.net/zena_mohammed/advanced-digital-signal-processing-book. digital_signal_processing__a_practical_approach. this reference for asked me for pictures in presentation of Multirate Digital Signal Processing.
This presentation will explain about the need for modulation in communication system. We made this presentation as our group assignment in Analog and Digital Communication System course in MIIT.
Sampling is a Simple method to convert analog signal into discrete Signal by using any one of its three methods
if the sampling frequency is twice or greater than twice then sampled signal can be convert back into analog signal easily......
This presentation covers:
Some basic definitions & concepts of digital communication
What is Phase Shift Keying(PSK) ?
Binary Phase Shift Keying – BPSK
BPSK transmitter & receiver
Advantages & Disadvantages of BPSK
Pi/4 – QPSK
Pi/4 – QPSK transmitter & receiver
Advantages of Pi/4- QPSK
Frequency-Shift Keying, also known as FSK is a type of digital frequency modulation. It is also often called as binary frequency shift keying or BFSK
Similar to analog FM, it is a constant-amplitude angle modulation.
This presentation will discuss the concepts behind FSK
Those slides describe digital design using Verilog HDL,
starting with Design methodologies for any digital circuit then difference between s/w (C/C++) and H/w (Verilog) and the most important constructs that let us start hardware design using Verilog HDL.
Design of Multiplier Less 32 Tap FIR Filter using VHDLIJMER
This Paper provide the principles of Distributed Arithmetic, and introduce it into the FIR
filters design, and then presents a 32-Tap FIR low-pass filter using Distributed Arithmetic, which save
considerable MAC blocks to decrease the circuit scale and pipeline structure is also used to increase the
system speed. The implementation of FIR filters on FPGA based on traditional method costs considerable
hardware resources, which goes against the decrease of circuit scale and the increase of system speed.
It is very well known that the FIR filter consists of Delay elements, Multipliers and Adders. Because of
usage of Multipliers in early design gives rise to 2 demerits that are:
(i) Increase in Area and
(ii) Increase in the Delay which ultimately results in low performance (Less speed).
So the Distributed Arithmetic for FIR Filter design and Implementation is provided in this work to solve
this problem. Distributed Arithmetic structure is used to increase the recourse usage and pipeline
structure is used to increase the system speed. Distributed Arithmetic can save considerable hardware
resources through using LUT to take the place of MAC units
HDL Implementation of Vending Machine Report with Verilog CodePratik Patil
A vending machine is a machine which dispenses items such as snacks, beverages, lottery tickets, consumer products to customers automatically, after the customer inserts currency or credit into the machine. Nowadays, Vending Machines are well known among Japan, Malaysia and Singapore. The quantity of machines in these countries is on the top worldwide. This is due to the modern lifestyles which require fast food processing with high quality. This paper describes the designing of Vending Machine with Auto-Billing Features. The objective here is to design Vending Machine Controller which accepts money inputs (i and j) in any sequence and delivers the products when the required amount has been deposited and gives back the change. Here an additional facility is provided to the user. It is possible to withdraw the deposited money in between if the customer wishes so by pressing a push button. The Verilog Code for the proposed Vending Machine model is developed and the Simulation results are successfully verified using Xilinx ISE 9.2i tool.
Contents of the presentation:
- ABOUT ME
- Bisection Method using C#
- False Position Method using C#
- Gauss Seidel Method using MATLAB
- Secant Mod Method using MATLAB
- Report on Numerical Errors
- Optimization using Golden-Section Algorithm with Application on MATLAB
Sparse data formats and efficient numerical methods for uncertainties in nume...Alexander Litvinenko
Description of methodologies and overview of numerical methods, which we used for modeling and quantification of uncertainties in numerical aerodynamics
MATLAB is a proprietary multi-paradigm programming language and numeric computing environment developed by MathWorks. MATLAB allows matrix manipulations, plotting of functions and data, implementation of algorithms, creation of user interfaces, and interfacing with programs written in other languages
Design of Low-Pass Digital Differentiators Based on B-splinesCSCJournals
This paper describes a new method for designing low-pass differentiators that could be widely suitable for low-frequency signals with different sampling rates. The method is based on the differential property of convolution and the derivatives of B-spline bias functions. The first order differentiator is just constructed by the first derivative of the B-spline of degree 5 or 4. A high (>2) order low-pass differentiator is constructed by cascading two low order differentiators, of which the coefficients are obtained from the nth derivative of a B-spline of degree n+2 expanded by factor a. In this paper, the properties of the proposed differentiators were presented. In addition, we gave the examples of designing the first to sixth order differentiators, and several simulations, including the effects of the factor a on the results and the anti-noise capability of the proposed differentiators. These properties analysis and simulations indicate that the proposed differentiator can be applied to a wide range of low-frequency signals, and the trade-off between noise- reduction and signal preservation can be made by selecting the maximum allowable value of a.
Finite-difference modeling, accuracy, and boundary conditions- Arthur Weglein...Arthur Weglein
This short report gives a brief review on the finite difference modeling method used in MOSRP
and its boundary conditions as a preparation for the Green’s theorem RTM. The first
part gives the finite difference formulae we used and the second part describes the implemented
boundary conditions. The last part, using two examples, points out some impacts of the accuracy
of source fields on the results of modeling.
Sachpazis:Terzaghi Bearing Capacity Estimation in simple terms with Calculati...Dr.Costas Sachpazis
Terzaghi's soil bearing capacity theory, developed by Karl Terzaghi, is a fundamental principle in geotechnical engineering used to determine the bearing capacity of shallow foundations. This theory provides a method to calculate the ultimate bearing capacity of soil, which is the maximum load per unit area that the soil can support without undergoing shear failure. The Calculation HTML Code included.
NO1 Uk best vashikaran specialist in delhi vashikaran baba near me online vas...Amil Baba Dawood bangali
Contact with Dawood Bhai Just call on +92322-6382012 and we'll help you. We'll solve all your problems within 12 to 24 hours and with 101% guarantee and with astrology systematic. If you want to take any personal or professional advice then also you can call us on +92322-6382012 , ONLINE LOVE PROBLEM & Other all types of Daily Life Problem's.Then CALL or WHATSAPP us on +92322-6382012 and Get all these problems solutions here by Amil Baba DAWOOD BANGALI
#vashikaranspecialist #astrologer #palmistry #amliyaat #taweez #manpasandshadi #horoscope #spiritual #lovelife #lovespell #marriagespell#aamilbabainpakistan #amilbabainkarachi #powerfullblackmagicspell #kalajadumantarspecialist #realamilbaba #AmilbabainPakistan #astrologerincanada #astrologerindubai #lovespellsmaster #kalajaduspecialist #lovespellsthatwork #aamilbabainlahore#blackmagicformarriage #aamilbaba #kalajadu #kalailam #taweez #wazifaexpert #jadumantar #vashikaranspecialist #astrologer #palmistry #amliyaat #taweez #manpasandshadi #horoscope #spiritual #lovelife #lovespell #marriagespell#aamilbabainpakistan #amilbabainkarachi #powerfullblackmagicspell #kalajadumantarspecialist #realamilbaba #AmilbabainPakistan #astrologerincanada #astrologerindubai #lovespellsmaster #kalajaduspecialist #lovespellsthatwork #aamilbabainlahore #blackmagicforlove #blackmagicformarriage #aamilbaba #kalajadu #kalailam #taweez #wazifaexpert #jadumantar #vashikaranspecialist #astrologer #palmistry #amliyaat #taweez #manpasandshadi #horoscope #spiritual #lovelife #lovespell #marriagespell#aamilbabainpakistan #amilbabainkarachi #powerfullblackmagicspell #kalajadumantarspecialist #realamilbaba #AmilbabainPakistan #astrologerincanada #astrologerindubai #lovespellsmaster #kalajaduspecialist #lovespellsthatwork #aamilbabainlahore #Amilbabainuk #amilbabainspain #amilbabaindubai #Amilbabainnorway #amilbabainkrachi #amilbabainlahore #amilbabaingujranwalan #amilbabainislamabad
Explore the innovative world of trenchless pipe repair with our comprehensive guide, "The Benefits and Techniques of Trenchless Pipe Repair." This document delves into the modern methods of repairing underground pipes without the need for extensive excavation, highlighting the numerous advantages and the latest techniques used in the industry.
Learn about the cost savings, reduced environmental impact, and minimal disruption associated with trenchless technology. Discover detailed explanations of popular techniques such as pipe bursting, cured-in-place pipe (CIPP) lining, and directional drilling. Understand how these methods can be applied to various types of infrastructure, from residential plumbing to large-scale municipal systems.
Ideal for homeowners, contractors, engineers, and anyone interested in modern plumbing solutions, this guide provides valuable insights into why trenchless pipe repair is becoming the preferred choice for pipe rehabilitation. Stay informed about the latest advancements and best practices in the field.
Industrial Training at Shahjalal Fertilizer Company Limited (SFCL)MdTanvirMahtab2
This presentation is about the working procedure of Shahjalal Fertilizer Company Limited (SFCL). A Govt. owned Company of Bangladesh Chemical Industries Corporation under Ministry of Industries.
Immunizing Image Classifiers Against Localized Adversary Attacksgerogepatton
This paper addresses the vulnerability of deep learning models, particularly convolutional neural networks
(CNN)s, to adversarial attacks and presents a proactive training technique designed to counter them. We
introduce a novel volumization algorithm, which transforms 2D images into 3D volumetric representations.
When combined with 3D convolution and deep curriculum learning optimization (CLO), itsignificantly improves
the immunity of models against localized universal attacks by up to 40%. We evaluate our proposed approach
using contemporary CNN architectures and the modified Canadian Institute for Advanced Research (CIFAR-10
and CIFAR-100) and ImageNet Large Scale Visual Recognition Challenge (ILSVRC12) datasets, showcasing
accuracy improvements over previous techniques. The results indicate that the combination of the volumetric
input and curriculum learning holds significant promise for mitigating adversarial attacks without necessitating
adversary training.
Student information management system project report ii.pdfKamal Acharya
Our project explains about the student management. This project mainly explains the various actions related to student details. This project shows some ease in adding, editing and deleting the student details. It also provides a less time consuming process for viewing, adding, editing and deleting the marks of the students.
Cosmetic shop management system project report.pdfKamal Acharya
Buying new cosmetic products is difficult. It can even be scary for those who have sensitive skin and are prone to skin trouble. The information needed to alleviate this problem is on the back of each product, but it's thought to interpret those ingredient lists unless you have a background in chemistry.
Instead of buying and hoping for the best, we can use data science to help us predict which products may be good fits for us. It includes various function programs to do the above mentioned tasks.
Data file handling has been effectively used in the program.
The automated cosmetic shop management system should deal with the automation of general workflow and administration process of the shop. The main processes of the system focus on customer's request where the system is able to search the most appropriate products and deliver it to the customers. It should help the employees to quickly identify the list of cosmetic product that have reached the minimum quantity and also keep a track of expired date for each cosmetic product. It should help the employees to find the rack number in which the product is placed.It is also Faster and more efficient way.
Forklift Classes Overview by Intella PartsIntella Parts
Discover the different forklift classes and their specific applications. Learn how to choose the right forklift for your needs to ensure safety, efficiency, and compliance in your operations.
For more technical information, visit our website https://intellaparts.com
COLLEGE BUS MANAGEMENT SYSTEM PROJECT REPORT.pdfKamal Acharya
The College Bus Management system is completely developed by Visual Basic .NET Version. The application is connect with most secured database language MS SQL Server. The application is develop by using best combination of front-end and back-end languages. The application is totally design like flat user interface. This flat user interface is more attractive user interface in 2017. The application is gives more important to the system functionality. The application is to manage the student’s details, driver’s details, bus details, bus route details, bus fees details and more. The application has only one unit for admin. The admin can manage the entire application. The admin can login into the application by using username and password of the admin. The application is develop for big and small colleges. It is more user friendly for non-computer person. Even they can easily learn how to manage the application within hours. The application is more secure by the admin. The system will give an effective output for the VB.Net and SQL Server given as input to the system. The compiled java program given as input to the system, after scanning the program will generate different reports. The application generates the report for users. The admin can view and download the report of the data. The application deliver the excel format reports. Because, excel formatted reports is very easy to understand the income and expense of the college bus. This application is mainly develop for windows operating system users. In 2017, 73% of people enterprises are using windows operating system. So the application will easily install for all the windows operating system users. The application-developed size is very low. The application consumes very low space in disk. Therefore, the user can allocate very minimum local disk space for this application.
Saudi Arabia stands as a titan in the global energy landscape, renowned for its abundant oil and gas resources. It's the largest exporter of petroleum and holds some of the world's most significant reserves. Let's delve into the top 10 oil and gas projects shaping Saudi Arabia's energy future in 2024.
Quality defects in TMT Bars, Possible causes and Potential Solutions.PrashantGoswami42
Maintaining high-quality standards in the production of TMT bars is crucial for ensuring structural integrity in construction. Addressing common defects through careful monitoring, standardized processes, and advanced technology can significantly improve the quality of TMT bars. Continuous training and adherence to quality control measures will also play a pivotal role in minimizing these defects.
TECHNICAL TRAINING MANUAL GENERAL FAMILIARIZATION COURSEDuvanRamosGarzon1
AIRCRAFT GENERAL
The Single Aisle is the most advanced family aircraft in service today, with fly-by-wire flight controls.
The A318, A319, A320 and A321 are twin-engine subsonic medium range aircraft.
The family offers a choice of engines
TECHNICAL TRAINING MANUAL GENERAL FAMILIARIZATION COURSE
Decimation and Interpolation
1. Department of Digital Signal
Processing
Master of Science in Electronics
Multirate Systems
Homework 1
Decimation and interpolation
Dr. Gordana Jovanovic Dolecek
Ojeda Loredo Fernando
June/15/2015
Sta. Ma. Tonantzintla, Puebla
2. Introduction
The decimator is a device that reduces the sampling rate by an integer factor of M,
whereas the interpolator is used to increase the rate by L.
In many applications the sampling rate of a system needs to be changed for a lower or
higher sampling rate for an appropriate processing of the signal, for example in a digital
mobile receiver system, the received signal often presents a high frequency which cannot be
digitized by the ADC converter , so it needs to be first converted to a lower frequency using
an Rf analog downconversion, the resultant frequency is commonly known as intermedia-
te frequency, after ADC a FIR filter is used to select a desired bandwidth and then it is
downsampled or upsampled to an appropriate sampling rate. In digital audio applications a
number of sampling rates coexist, for example, the sampling rate for studio work is 48KHz,
whereas for cd production is 44.1KHz, and the broadcast rate is 32KHz.All this rate con-
versions can be made using decimators and interpolators devices, systems that use different
sampling rates are known as multirate systems.[3]
Downsampling
The process of downsampling consist in reducing the sampling rate of a signal that
is already sampled, by an integer factor M, basically we are resampling the signal, but
because we are reducing the sampling rate then we call this as subsampling. When a signal
is downsampled we reduce the amount of data by taking only every M-th sample of the
signal and discarding all others as we can see in fig 2.
Figure 1: Downsampling.
Figure 2: Downsampling in time.
1
3. The downsamplig process can be described in time and frequency in two steps:
step 1. we obtain a signal x (n) from x(n) by setting all samples whose indexes are not
integer multiples of M to zero. We can consider x (n) as a multiplication of x(n) and CM (n)
where M denotes the downsamplig factor, in this case we use M = 2 to explain the process.
x (n) = x(n)CM (n) (1)
We express this signal in matlab as follows:
N = 26;
n = 0:N-1;
x = 0.8*sin(2*pi*0.0625*n)+0.3*sin(2*pi*0.2*n);
cm = [zeros(1,26)];
for k = 1:2:26
cm(k) = 1;
end
x2 = x.*cm;
We can see the result of first step in the figure 3 where only every 2n samples of x(n) are
taken and the others are set to zero.
Figure 3: Step 1, time.
This operation does not change the content of the signal x’(n), the spectrum undergoes
a replica every 2π/M as we can see in fig. 4, as M = 2 then the spectrum replicas appears
every π, where π = 1 in normalized frequency. Because we removed samples in time, in
frequency the spectrum is scaled by a factor of 2, we can see this scaling in fig. 4.b. Later in
this document we will present the effects of aliasing due to the overlapping of the frequency
bands and how we can avoid this undesired effect that distorts the signal.
2
4. Figure 4: Step 1, frequency.
step 2. The next step is to remove the zeros in x (n) and thus obtain y(m):
y = downsample(x,2);
This operation introduce time scaling by a factor of 1/M. Due to te principle of duality
in time-frequency, in time we get a compression so we expect an expansion in frequency as
we can see in fig 6. The frequency is scaled by a factor of 2.
Figure 5: Step 2, scaling in time. Figure 6: Scaling in frequency.
3
5. Aliasing
When a signal is downsampled, the replicas generated by the first step can overlap, this
occurs if the original signal is not bandlimited to π/M. This overlapping effect is called
aliasing, to avoid this we use a low-pass digital filter that should precede the down-sampler,
in fig 7 we can see this effect.
Figure 7: Aliasing with M = 4.
Properties of downsampling
A system is said to be linear if it complies whit the principle of superposition
T{αx1(n) + βx2(n)} = αTx1(n) + βTx2(n) (2)
We demonstrate this principle using MATLAB as follows:
N = 16;
n = 0:N−1;
a = 2;
b = 3;
x1 = 0.8∗ sin (2∗ pi ∗0.0625∗n ) ;
x2 = 0.3∗ sin (2∗ pi ∗0.2∗n ) ;
xs = a .∗ x1 + b .∗ x2 ;
xsd = downsample ( xs , 2 ) ; % Structure 1
xd1 = downsample (x1 , 2 ) ;
xd2 = downsample (x2 , 2 ) ;
x12d = a .∗ xd1 + b .∗ xd2 ; % Structure 2
4
6. We observe in fig. 8 that xsd and x12 are equal, thus we prove the linearity of the down-
sampling process.
Figure 8: linear property.
We can also demonstrate this principle using Simulink.
Figure 9: Structure 1. Figure 10: Structure 2.
If an input signal undergoes a transformation through a system we get a transformed
output signal, also if the same input signal is shifted in time k samples then we expect the
same transformed output signal but shifted k samples in time, if this is accomplished then
we say that the system is time invariant. we will demonstrate the time variance or time
invariance of a downsampling process as follows:
N = 32;
n = 0:N-1;
k = 4;
x = 0.8*sin(2*pi*0.0625*n);
xs = 0.8*sin(2*pi*0.0625*(n - k));
xd = downsample(x,2);
xsd = downsample(xs,2);
5
7. We observe in fig. 12 that the downsampled shifted signal xsd does not present the same
shift as the input signal xs, thus we conclude downsampling is a time varying operation.
Figure 11: Delayed signal by 4 samples. Figure 12: Downsampled delayed signal.
When the relation K/M is not an integer the downsampled delayed signal will have
a fractional delay, this means that the downsampled signal with no input delay and the
downsampled delayed signal will have a different shape as we can see in fig 13.
Figure 13: Downsampled signals with fractional delay.
6
8. Downsampling identities
First identity
This identity follows directly from the principle of superposition, as previously discussed.
Second identity
Establishes that the delay of M samples before the downsampler is equivalent to a delay
of one sample after the downsampler. We will show this second identity using Simulink, as
follows:
Figure 14: Structure 1. Figure 15: Structure 2.
Comparing the two graphics in fig. 16 and fig 17 it follows that structure 1 and structure
2 are equivalent.
Figure 16: Structure 1 plot. Figure 17: Structure 2 plot.
7
9. Third identity
This identity is related to cascade connection of a linear time invariant system H(Z) and
a downsampler. Filtering with H(ZM
) and downsampling by M is equal to the downsampling
by M and filtering with H(Z).
Figure 18: Third identity structures.
The third identity is demonstrated using a filter expanded with M = 4 which precedes
the downsampler as can be seen in structure 1 in figure 18. Another filter is designed to
implement structure 2, and finally the graphs in figure 19, show this identity, the Matlab
implementation is as follows:
n = 0 : 6 0 ; % Time index
x = cos (2∗ pi ∗0.05∗n ) ; % Generating the o r i g i n a l s i g n a l
h = f i r 1 ( 1 0 , 0 . 5 ) ; % Designing the f i l t e r t r a n s f e r function H( z )
hu = upsample (h , 4 ) ; % Transfer function H( zˆM)
y1 = f i l t e r (hu ,1 , x ) ; % F i l t e r i n g
y = downsample (y1 , 4 ) ; % Down−sampling
m = 0: length (y)−1; % Time index
f i g u r e (1)
subplot (3 ,2 ,1) , stem (n , x ) , ylabel ( ’ x [ n ] ’ )
t i t l e ( ’ Figure 18(a ) ’)
subplot (3 ,2 ,3) , stem (n , y1 ) , ylabel ( ’ y 1 [ n ] ’ )
subplot (3 ,2 ,5) , stem (m, y ) , ylabel ( ’ y [m] ’ )
xlabel ( ’ Time index ’ )
y2 = downsample (x , 4 ) ; % down−sampling
y = f i l t e r (h ,1 , y2 ) ; % f i l t e r i n g
subplot (3 ,2 ,2) , stem (n , x , ’ r ’ ) , ylabel ( ’ x [ n ] ’ )
t i t l e ( ’ Figure 18(b ) ’)
subplot (3 ,2 ,4) , stem (m, y2 , ’ r ’ ) , ylabel ( ’ y 2 [m] ’ )
subplot (3 ,2 ,6) , stem (m, y , ’ r ’ ) , ylabel ( ’ y [m] ’ )
xlabel ( ’ Time index ’ )
In figure 19 the left-hand side shows the signals for structure 1, and the right-hand side
presents the signals for structure 2. This results shown in fig. 19 demonstrate the equivalence
of the cascade connections defined by the third identity.
8
10. Figure 19: Illustration of the third identity.
Polyphase decimation
The decimation structure consists of two block as can be seen in figure 20, a low-pass
filter which discard all frequencies above π/M to avoid aliasing, and the downsamplign block
which reduce the sampling rate of the signal.
Figure 20: Decimation structure.
Usually H(z) is a FIR filter, which consist of N coefficients. If N is a integer multiple of
M we can obtain M different discretely sampled components of the impulse response. That
means that the corresponding Z-transform ca be partitioned into M sub-signals
H(z) =
M−1
k=0
z−k
Hk(zM
) (3)
where
Hk(zM
) =
N/M−1
n=0
h(nM + k)(zM
)−n
) (4)
9
11. The filter shown in the structure from figure 20, can be decomposed as we can observe in
figure 21.a this is a direct application of the first identity, now in figure 21.b we can see an
application of the third identity. With this implementation we obtain a more efficient version
in which both the number of filter operations as well the amount of memory required are
reduced by a factor of M.
Figure 21: Polyphase decimation.
Now we present an example in Matlab with a FIR filter which consist of N = 64 coeffi-
cients, an a decimation factor of M = 4, so we expect 4 polyphase components.
% Polyphase decomposition
c l e a r all , c l o s e a l l
% Input s i g n a l
n = 0 : 6 3 ;
h = zeros ( s i z e (n ) ) ; h (11:39) = 0 . 9 5 . ˆ ( 1 : 2 9 ) ; % Generating the sequence ’h ’
% Polyphase down−sampling with the phase of f s e t
10
12. h0 = downsample (h , 4 ) ;
h1 = downsample (h , 4 , 1 ) ;
h2 = downsample (h , 4 , 2 ) ;
h3 = downsample (h , 4 , 3 ) ;
subplot (4 ,1 ,1) , stem ( 0 : length ( h0)−1,h0 ) , ylabel ( ’ h0 [m] ’ )
subplot (4 ,1 ,2) , stem ( 0 : length ( h1)−1,h1 ) , ylabel ( ’ h1 [m] ’ )
subplot (4 ,1 ,3) , stem ( 0 : length ( h2)−1,h2 ) , ylabel ( ’ h2 [m] ’ )
subplot (4 ,1 ,4) , stem ( 0 : length ( h3)−1,h3 ) , ylabel ( ’ h3 [m] ’ )
xlabel ( ’ Time index m’ )
The original signal is shown in figure 22 and the polyphase components are given in 23.
Figure 22: Filter Coefficients. Figure 23: Polyphase components.
Upsampling
Upsampling increases the sampling rate by an integer factor L, by inserting L-1 equally
spaced zeros between each pair of samples.
y[m] =
x[m/L], m = 0, ±L, ±2L, ...
0, Otherwise
(5)
Where L is called an interpolator factor. The symbol for this operation is a box with an
upward-pointing arrow, followed by the interpolator factor.[2]
Figure 24: Upsampler.
11
13. The following Matlab code illustrates an example of the upsampler with L = 2.
N = 21; % Length of the o r i g i n a l sequence
n=0:N−1; % Time index
x=0.7∗ sin (2∗ pi ∗0.0625∗n)+0.3∗ sin (2∗ pi ∗0.2∗n ) ; % Original s i g n a l
L= 2; % Up−sampling factor
y=zeros (1 ,L∗ length (x ) ) ;
y ( [ 1 : L: length (y)])= x ; % Up−sampled s i g n a l
Ny = length (y)−L+1; % Length of the up−sampled s i g n a l
f i g u r e (2)
subplot (2 ,1 ,1)
stem (0:20 , x ( 1 : 2 1 ) )
xlabel ( ’ Time index n ’ ) , ylabel ( ’ x [ n ] ’ )
subplot (2 ,1 ,2)
stem (0:40 , y ( 1 : 4 1 ) )
xlabel ( ’ Time index m’ ) , ylabel ( ’ y [m] ’ )
We can see in figure 25, how the sampling rate is increased also we can see how L-1
equally space zeros are inserted between each pair of samples.
Figure 25: upsampling by L = 2.
12
14. Imaging
The interpolator consist of two stages as we can see in figure 26, the upsampler block
that was previously discussed and a low pass filter that is after the upsampler.
Figure 26: Interpolator
The process of upsampling introduces the replicas of the main spectra at every 2π/L.
This is called imaging, since there are L-1 replicas (images) in 2π. We illustrate this effect
next:
F = [ 0 , 0 . 2 , 0 . 9 , 1 ] ;
A = [ 0 , 1 , 0 , 0 ] ;
x = f i r 2 (128 ,F,A) ;
X = f f t (x , 1 0 2 4 ) ;
f = 0:1/1024:(512 −1)/1024;
y1 = upsample (x , 2 ) ;
y2 = upsample (x , 3 ) ;
y3 = upsample (x , 4 ) ;
Y1 = f f t (y1 , 1 0 2 4 ) ;
Y2 = f f t (y2 , 1 0 2 4 ) ;
Y3 = f f t (y3 , 1 0 2 4 ) ;
subplot (4 ,1 ,1) , plot (2∗ f , abs (X( 1 : 5 1 2 ) ) ) , t i t l e ( ’ o r i g i n a l signal ’ )
subplot (4 ,1 ,2) , plot ( f ∗2 , abs (Y1( 1 : 5 1 2 ) ) ) , t i t l e ( ’ upsampled s i g n a l L = 2 ’)
subplot (4 ,1 ,3) , plot (2∗ f , abs (Y2( 1 : 5 1 2 ) ) ) , t i t l e ( ’ upsampled s i g n a l L = 3 ’)
subplot (4 ,1 ,4) , plot ( f ∗2 , abs (Y3( 1 : 5 1 2 ) ) ) , t i t l e ( ’ upsampled s i g n a l L = 4 ’)
In figure 27 we can observe the different replicas for L = 2,3,4. We use the low pass filter
to remove these replicas, this filter is called an anti-imaging filter. In Matlab we can show
the use of this filter by using the command interp, like the command decimate, this already
includes the filter unlike the commands downsample and upsample which do not include it.
13
15. Figure 27: Interpolator
Next code show the use of interp, to remove the replicas for L = 4.
F = [ 0 , 0 . 2 , 0 . 9 , 1 ] ;
A = [ 0 , 1 , 0 , 0 ] ;
x = f i r 2 (128 ,F,A) ;
X = f f t (x , 1 0 2 4 ) ;
f = 0:1/1024:(512 −1)/1024;
L = 4;
xu = upsample (x ,L ) ;
y = interp (x ,L ) ;
Xu = f f t (xu , 1 0 2 4 ) ;
Y = f f t (y , 1 0 2 4 ) ;
subplot (3 ,1 ,1) , plot (2∗ f , abs (X( 1 : 5 1 2 ) ) ) , t i t l e ( ’ o r i g i n a l signal ’ )
subplot (3 ,1 ,2) , plot ( f ∗2 , abs (Xu( 1 : 5 1 2 ) ) ) , t i t l e ( ’ upsampled s i g n a l L = 4 ’)
subplot (3 ,1 ,3) , plot (2∗ f , abs (Y( 1 : 5 1 2 ) ) ) , t i t l e ( ’ interpolated signal ’ )
f i g u r e
subplot (3 ,1 ,1) , stem (54:74 , x ( 5 5 : 7 5 ) ) ;
subplot (3 ,1 ,2) , stem(4∗55−1:4∗74−1,xu(4∗55 −1:4∗74 −1));
subplot (3 ,1 ,3) , stem(4∗55−1:4∗74−1,y(4∗55 −1:4∗74 −1));
14
16. In the following figure we observe the effect of imaging also is necessary to say that the
upsampling process consist of the increase in the sampling rate of the signal, this is known
as an expansion in time, by the principle of duality, in the frequency domain we expect a
compression as shown in figure 28.
Figure 28: Imaging and interpolation in frequency
In time something very interesting happens due to the filter, the zeros that are inserted
by the upsampler are interpolated, for this reason we call this filter an interpolation filter, we
can see it in figure 29, also the frequency spectrum is scaled by a factor of L this is presented
in figure 28.c.
Figure 29: Interpolation in time
15
17. Properties of upsampling
Now we show the linearity of the upsample operation, just like in downsampling we will
use the same code but now we use the command upsample instead of downsample as shown
next.
N = 16;
n = 0:N−1;
a = 2;
b = 3;
x1 = 0.8∗ sin (2∗ pi ∗0.0625∗n ) ;
x2 = 0.3∗ sin (2∗ pi ∗0.2∗n ) ;
xs = a .∗ x1 + b .∗ x2 ;
xsd = upsample ( xs , 2 ) ; % Structure 1
xd1 = upsample (x1 , 2 ) ;
xd2 = upsample (x2 , 2 ) ;
x12d = a .∗ xd1 + b .∗ xd2 ; % Structure 2
We observe in figure 30 that xsd and xsd12 are equal so we can conclude that upsampling
is a linear operation.
Figure 30: Upsampling linear property
16
18. We also demonstrate this property using Simulink as follows:
Figure 31: Structure 1 Figure 32: Structure 2
Now we will show the time varying property of the upsampling block. We suppose that
the input of the upsampler has a delay of D samples.
x(m − D) (6)
The upsampled signal will be:
y((m − D)L) = y(mL − DL) = y(n − DL) = y(n − D) (7)
Consequently, upsampling is a time-dependent operation.
N = 32;
n = 0:N−1;
k = 9;
x = 0.8∗ sin (2∗ pi ∗0.0625∗n ) ;
xs = 0.8∗ sin (2∗ pi ∗0.0625∗(n − k ) ) ;
xu = upsample (x , 2 ) ;
xsu = upsample ( xs , 2 ) ;
f i g u r e
subplot (2 ,1 ,1) , stem (x , ’ LineWidth ’ , 2 ) , grid , t i t l e ( ’ x ’ ) , grid ;
subplot (2 ,1 ,2) , stem ( xs , ’ LineWidth ’ , 2 ) , grid , t i t l e ( ’ xs ’ ) , grid ;
f i g u r e
subplot (2 ,1 ,1) , stem (xd , ’ r ’ , ’ LineWidth ’ , 2 ) , grid , t i t l e ( ’ xu ’ ) , grid ;
subplot (2 ,1 ,2) , stem ( xsd , ’ r ’ , ’ LineWidth ’ , 2 ) , grid , t i t l e ( ’ xsu ’ ) , grid ;
In figure 33 xs represent a shifted version of x by 9 samples, in figure 34 xu is the
upsampled signal by L = 2 of x and xsu is the upsampled signal of xs. We expect the same
amount of delay in xsu and xs, but xsu is shifted by 14 samples unlike xs which is shifted
by 9 samples, thus we prove that upsampling is a time-varying operation.
17
19. It is important to mention that unlike downsampling, the upsampled delayed signal and
the upsampled signal with no delay will always have the same shape, this is because the
delay DL is always an integer.
Figure 33: Delayed signal by 9 samples Figure 34: Upsampled delayed signal
Upsampling identities
We have already seen three useful identities of the downsampled signals, and now we will
state the corresponding identities associated with upsampling.
Fourth identity
We have already demonstrated the fourth identity as it follows from the principle of
superposition.
Fifth identity
This identity states that a delay of one sample before upsampling is equivalent to the
delay of L samples after upsampling.
Figure 35: Structure 1 Figure 36: Structure 2
18
20. Figure 37 and 38 are equal, so the equivalence of the two structures is confirmed.
Figure 37: Structure 1 plot Figure 38: Structure 2 plot
Sixth identity
States that the filtering followed by upsampling is equivalent to having upsampling first
followed by expanded filtering.
Figure 39: Sixth identity structures
n = 0 : 1 5 ; % Time index
x = cos (0.2∗ pi ∗n ) ; % Generating the o r i g i n a l s i g n a l
h = f i r 1 ( 1 0 , 0 . 5 ) ; % Designing the f i l t e r t r a n s f e r function H( z )
hu = upsample (h , 2 ) ; % Transfer function H( zˆL)
y1 = f i l t e r (h ,1 , x ) ; % F i l t e r i n g
y = upsample (y1 , 2 ) ; % Up−sampling
m = 0: length (y)−1; % Time index
f i g u r e (1)
subplot (3 ,2 ,1) , stem (n , x ) , ylabel ( ’ x [ n ] ’ )
subplot (3 ,2 ,3) , stem (n , y1 ) , ylabel ( ’ y 1 [ n ] ’ )
subplot (3 ,2 ,5) , stem (m, y ) , ylabel ( ’ y [m] ’ )
xlabel ( ’ Time index ’ )
axis ([0 ,30 , −1 ,1])
y2 = upsample (x , 2 ) ; % Up−sampling
y = f i l t e r (hu ,1 , y2 ) ; % F i l t e r i n g
19
21. subplot (3 ,2 ,2) , stem (n , x , ’ r ’ ) , ylabel ( ’ x [ n ] ’ )
subplot (3 ,2 ,4) , stem (m, y2 , ’ r ’ ) , ylabel ( ’ y 2 [m] ’ )
axis ([0 ,30 , −1 ,1])
subplot (3 ,2 ,6) , stem (m, y , ’ r ’ ) , ylabel ( ’ y [m] ’ )
xlabel ( ’ Time index ’ )
axis ([0 ,30 , −1 ,1])
In figure 40 the left-hand side shows the signals for structure 1, and the right-hand side
presents the signals for structure 2. This results shown in fig. 40 demonstrate the equivalence
of the cascade connections defined by the sixth identity.
Figure 40: Illustration of the sixth identity
Polyphase interpolation
The convolution at the higher sampling rate can be replaced by independent convolutions
at the lower input sampling rate using polyphase decomposition.[1]
H(z) =
L−1
k=0
z−k
Hk(zL
) (8)
In figure 41 we can see the polyphase components of the signal.
20
22. Next we will show the implementation of the sixth identity in Matlab.
n = 0 : 6 3 ;
h = zeros ( s i z e (n ) ) ; h (11:39) = 0 . 9 5 . ˆ ( 1 : 2 9 ) ; % F i l t e r c o e f f i c i e n t s
hd0 = downsample (h , 4 ) ;
hd1 = downsample (h , 4 , 1 ) ;
hd2 = downsample (h , 4 , 2 ) ;
hd3 = downsample (h , 4 , 3 ) ;
% Up−sampling polyphase components with the phase o f f s e t
h0 = upsample (hd0 , 4 ) ;
h1 = upsample (hd1 , 4 , 1 ) ;
h2 = upsample (hd2 , 4 , 2 ) ;
h3 = upsample (hd3 , 4 , 3 ) ;
subplot (4 ,1 ,1) , stem ( 0 : length ( h0)−1,h0 ) , ylabel ( ’ h0 [m] ’ )
subplot (4 ,1 ,2) , stem ( 0 : length ( h1)−1,h1 ) , ylabel ( ’ h1 [m] ’ )
subplot (4 ,1 ,3) , stem ( 0 : length ( h2)−1,h2 ) , ylabel ( ’ h2 [m] ’ )
subplot (4 ,1 ,4) , stem ( 0 : length ( h3)−1,h3 ) , ylabel ( ’ h3 [m] ’ )
xlabel ( ’ Time index m’ )
Figure 41: Polyphase components
21
23. References
[1] Jovanovic-Dolecek, G. (2001). Multirate Systems: Design and Applications: Design and
Applications. IGI Global.
[2] Milic, L. (2009). Multirate Filtering for Digital Signal Processing: MATLAB Applications:
MATLAB Applications. IGI Global.
[3] Vaidyanathan, P. P. (1993). Multirate systems and filter banks. Pearson Education India.
22