You are on page 1of 30

K L UNIVERSITY

Green Fields, Vaddeswaram, Guntur Dist, Andhra Pradesh,


Pin:522502. Ph.No: 08645246948. Fax: 08645247249

Department of Electronics And Communications Engineering.


(Lab Manual for III/ IV B.TECH Students of V Semester, 2014-15

Name:

Roll No:

Register No:

Sec:

Preface

Digital signal processing (DSP) is used in numerous applications such as video


compression, digital set-top box, cable modems, digital versatile disk, portable video
systems/computers, digital audio, multimedia and wireless communications, digital radio, digital
still and network cameras, speech processing, transmission systems, radar imaging, acoustic
beamformers, global positioning systems, and biomedical signal processing. The field of DSP has
always been driven by the advances in DSP applications and in scaled very-largescale-integrated
(VLSI) technologies.
This laboratory course offers insight into implementing the fundamental issues which are
essential for advanced understanding of DSP. This course requires the student to implement the

fundamentals in MATLAB thereby enhancing the programming skills of the student.

Authors

Department Of Electronics And Communications


K.L.University

K L UNIVERSITY
DEPARTMENT OF ELECTRONICS AND COMMUNICATION ENGINEERING
COURSE: III YEAR B.Tech A.Y: 2014-2015

LIST OF EXPERIMENTS
1. Computation of N-point DFT.
2. (a). Circular convolution in time domain and frequency domain.

(b). Linear convolution and correlation using DFT.


3. Implementation of DIT-FFT and DIF-FFT.
4. Design of IIR Butterworth and Chebyshev Filters using Impulse Invariance technique
and Bilinear Transformation.
5. Design of FIR filters using Windowing Techniques.
6. Realization of FIR filters and IIR filters.

Digital Signal Processing

Department of Electronics And Communications

K.L.University

INRODUCTION
MATLAB: MATLAB is a software package for high performance numerical
computation and visualization provides an interactive environment with hundreds of
built in functions for technical computation, graphics and animation. The MATLAB
name stands for MATrix Laboratory

The diagram shows the main features and capabilities of MATLAB.

MATLAB

Graphics

Computations

External interface

2D graphics

Linear algebra

Interface with C and


F t

3D graphics

Signal processing
Polynomials & interpolation

Toolbox
Signal processing

Image processing

Statistics

Control system

Digital Signal Processing Laboratory Manual


2

Page

Department of Electronics And Communications

K.L.University

At its core ,MATLAB is essentially a set (a toolbox) of routines (called m files or mex files)
that sit on your computer and a window that allows you to create new variables with names (e.g.
voltage and time) and process those variables with any of those routines (e.g. plot voltage against
time, find the largest voltage, etc).
It also allows you to put a list of your processing requests together in a file and save that combined
list with a name so that you can run all of those commands in the same order at some later time.
Furthermore, it allows you to run such lists of commands such that you pass in data and/or get data
back out (i.e. the list of commands is like a function in most programming languages). Once you
save a function, it becomes part of your toolbox (i.e. it now looks to you as if it were part of the
basic toolbox that you started with).
For those with computer programming backgrounds: Note that MATLAB runs as an interpretive
language (like the old BASIC). That is, it does not need to be compiled. It simply reads through
each line of the function, executes it, and then goes on to the next line. (In practice, a form of
compilation occurs when you first run a function, so that it can run faster the next time you run
it.).

Digital Signal Processing Laboratory Manual


3
Department of Electronics And Communications

Page
K.L.University

EXPERIMENT NO: 1

Date:
Computation of N point D.F.T

Introduction:
The Discrete Time Fourier Transform (DTFT) is the member of the Fourier transform
family that operates on aperiodic, discrete signals. Discrete Fourier Transform (D.F.T) is used to
practically implement D.T.F.T and determine the frequency components of the given signal. D.F.T
is usually the sampled version of the Frequency spectrum.

Aim:
To compute the N-point D.F.T of a given sequence.
Software Used :
Matlab
Theory:
Discrete Fourier Transform (DFT) is used for performing frequency analysis of discrete
time signals. DFT gives a discrete frequency domain representation whereas the other
transforms are continuous in frequency domain.
The N point DFT of discrete time signal x[n] is given by the equation

jw

X(k) is a complex number (remember e =cosw + jsinw). It has both magnitude and phase
which are plotted versus k. These plots are magnitude and phase spectrum of x[n]. The k
gives us the frequency information.
Here k=N in the frequency domain corresponds to sampling frequency (fs). Increasing N,
increases the frequency resolution, i.e., it improves the spectral characteristics of the
sequence. For example if fs=8kHz and N=8 point DFT, then in the resulting spectrum,
k=1 corresponds to 1kHz frequency. For the same fs and x[n], if N=80 point DFT is
computed, then in the resulting spectrum, k=1 corresponds to 100Hz frequency. Hence,
the resolution in frequency is increased.
Digital Signal Processing Laboratory Manual
4

Page

Department of Electronics And Communications

K.L.University

Since N L , increasing N to 8 from 80 for the same x[n] implies x[n] is still the same
sequence (<8), the rest of x[n] is padded with zeros. This implies that there is no further
information in time domain, but the resulting spectrum has higher frequency resolution.
This spectrum is known as high density spectrum (resulting from zero padding x[n]).
Instead of zero padding, for higher N, if more number of points of x[n] are taken (more
data in time domain), then the resulting spectrum is called a high resolution spectrum.
Algorithm:

1.
2.
3.
4.

Enter the sequence for which DFT is to be computed.


Enter the length of the DFT required (say 4, 8, >length of the sequence).
Compute the DFT using the fft command.
Plot the magnitude & phase spectra.

Result:
enter the sequence=[1
2 1 0] enter the
length=5

Digital Signal Processing Laboratory Manual


5

Page

Department of Electronics And Communications

EXPERIMENT NO: 2 a

K.L.University

Date:

CIRCULAR CONVOLUTION IN TIME AND FREQUENCY DOMAIN


Introduction:
Circular convolution is a property of D.F.T used to find out the convolved output of a
given D.F.T sequence. This particular property of D.F.T is used to determine the linear
convolution practically for any given input and response.
Aim:
To implement circular convolution using (a) Matrix Method (time domain)
(b) D.F.T (frequency domain)
Software Used:
Matlab
Theory
Algorithm:

(a) Matrix Method.


1) enter the two sequences x[n].
2) Create the matrix for the second sequence h[n].
3) Multiply x[n] and h[n].
(b) D.F.T
1) Enter the two sequences.
2) Determine their D.F.T.
3) Multiply their D.F.Ts
4) Find its I.D.F.T
Expected Figures: For both time and frequency domain.

Digital Signal Processing Laboratory Manual


7

Page

Department of Electronics And Communications

EXPERIMENT NO: 2 b

K.L.University

Date:

LINEAR CONVOLUTION AND CORRELATION USING D.F.T


Introduction:
Linear convolution is used to determine the output when input and impulse response is
given. It is practically implemented using the circular convolution property of D.F.T.
Correlation is used to identify the similarity between two signals. If is a signal is
correlated with a delayed version of itself it is called as auto correlation. If the correlation is
between two different wave forms it is called as cross correlation.
Aim:
To implement linear convolution and correlation using D.F.T
Software Used :
Matlab
Theory :

Convolution is a mathematical way of combining two signals to form a third


signal.It is
the signal most important technique in Digital signal processing .Using the strategy of
impulse
decomposition,systems are subscribed by a signal called the impulse response.Convolution
is
important because it relates the three signals of intrest:the input signals,the output
signal,and the
impulse response.This chapter presents convolution from two different view points, called
the
input side algorithm and the output side algorithm.Convolution provides the mathematical
framework for DSP.
The Convolution theorem states that if X(z)=z{x(n)} and H(z)=z{h(n)}, then

Y(z)=z{x(n)*h(n)}=X(z)H(z).
where
X(z) is the z-transform of x(n).
H(z) is the z-transform of h(n).
Y(z) is the z-transform of y(n).

Digital Signal Processing Laboratory Manual


8

Page

Department of Electronics And Communications

K.L.University

Algorithm :

(a) Linear convolution using D.F.T


1) Consider the given input two sequences.
2) Determine the length of the output sequence for the linearly convolved
sequence.
3) The length of the input sequences are made equal to the length obtained in
step2 by zero padding.
4) Determine the circular convolution for the two sequences using D.F.T
(b) Correlation using D.F.T
1) Consider the two given input sequences.
2) Determine the length of the output sequence for the convolved sequence.
3) The length of the input sequences are made equal to the length obtained in
step2 by zero padding.
4) Reverse the second sequence.
5) Determine its linear convolution using D.F.T which is the correlation.
Expected Figures:
(a) Linear Convolution Using D.F.T

Digital Signal Processing Laboratory Manual


9

Page

Department of Electronics And Communications

K.L.University

(b) Correlation Using D.F.T

Digital Signal Processing Laboratory Manual


10
Department of Electronics And Communications

Page
K.L.University

EXPERIMENT NO: 3 A

Date:

Implementation of D.I.T-F.F.T
Introduction:
Discrete Fourier transform is implemented in many ways. Fast Fourier Transform (FFT),
is an ingenious algorithm that decomposes a DFT with N points, into N DFTs each with a single
point. The FFT is typically hundreds of times faster than the other methods.
The FFT operates by decomposing an N point time domain signal into N time domain
signals each composed of a single point. The second step is to calculate the N frequency spectra
corresponding to these N time domain signals. Lastly, the N spectra are synthesized into a single
frequency spectrum.FFT is implemented using 2 algorithms Decimation in Time(D.I.T) and
Decimation in Frequency(D.I.F).
The decimation -in-time FFT algorithm is based on splitting (decimating) x(n) into
smaller sequences and finding X ( k ) from the DFTs of these decimated equences. This
decimation leads to an efficient algorithm when the sequence length is a power of 2. Since the
time samples which are divided up, this algorithm is known as the decimation in-time (DIT)
algorithm.
Aim:
To implement F.F.T using D.I.T-F.F.T algorithm
Software Used:
Matlab
Theory:
The CooleyTukey algorithm, named after J.W. Cooley and John Tukey, is the most
common fast Fourier transform (FFT) algorithm. It re-expresses the discrete Fourier transform
(DFT) of an arbitrary composite size N = N1N2 in terms of smaller DFTs of sizes N1 and N2,
recursively, in order to reduce the computation time to O(N log N) for highly-composite N
(smooth numbers). Because of the algorithm's importance, specific variants and implementation
styles have become known by their own names, as described below.
Because the Cooley-Tukey algorithm breaks the DFT into smaller DFTs, it can be
combined arbitrarily with any other algorithm for the DFT. For example, Rader's or Bluestein's
algorithm can be used to handle large prime factors that cannot be decomposed by Cooley
Tukey, or the prime-factor algorithm can be exploited for greater efficiency in separating out
relatively prime factors
A radix-2 decimation-in-time (DIT) FFT is the simplest and most common form of the
CooleyTukey algorithm, although highly optimized CooleyTukey implementations typically
Digital Signal Processing Laboratory Manual
11

Page

Department of Electronics And Communications

K.L.University

use other forms of the algorithm as described below. Radix-2 DIT divides a DFT of size N into
two interleaved DFTs (hence the name "radix-2") of size N/2 with each recursive stage.
The discrete Fourier transform (DFT) is defined by the formula:

where k is an integer ranging from 0 to N 1.


Radix-2 DIT first computes the DFTs of the even-indexed inputs
(
)
and of the odd-indexed inputs
(
), and then combines those two
results to produce the DFT of the whole sequence. This idea can then be performed recursively to
reduce the overall runtime to O(N log N). This simplified form assumes that N is a power of two,
since the number of sample points N can usually be chosen freely by the application, this is often
not an important restriction.
The Radix-2 DIT algorithm rearranges the DFT of the function xn into two parts: a sum over the
even-numbered indices n = 2m and a sum over the odd-numbered indices n = 2m + 1:

One can factor a common multiplier


out of the second sum, as shown in the equation
below. It is then clear that the two sums are the DFT of the even-indexed part x2 m and the DFT of
odd-indexed part x2 m + 1 of the function xn. Denote the DFT of the E ven-indexed inputs x2m by Ek
and the DFT of the Odd-indexed inputs x2m + 1 by Ok and we obtain:

However, these smaller DFTs have a length of N/2, so we need compute only N/2 outputs: thanks
to the periodicity properties of the DFT, the outputs for
from a DFT of length
N/2 are identical to the outputs for
. That is, Ek + N / 2 = Ek and Ok + N / 2 = Ok. The
phase factor exp[ 2 ik / N] (called a twiddle factor) obeys the relation: exp[ 2i(k + N / 2) /
i
N] = e
exp[ 2ik / N] = exp[ 2ik / N], flipping the sign of the Ok + N / 2 terms. Thus, the
whole DFT can be calculated as follows:

Digital Signal Processing Laboratory Manual


12

Page

Department of Electronics And Communications

K.L.University

This result, expressing the DFT of length N recursively in terms of two DFTs of size N/2, is the
core of the radix-2 DIT fast Fourier transform. The algorithm gains its speed by re-using the
results of intermediate computations to compute multiple DFT outputs. Note that final outputs
are obtained by a +/ combination of Ek and Okexp( 2ik / N), which is simply a size- 2 DFT
(sometimes called a butterfly in this context); when this is generalized to larger radices below,
the size-2 DFT is replaced by a larger DFT (which itself can be evaluated with an FFT).
Algorithm :

1)
2)
3)
4)
5)

Determine the number of samples.


Shuffle the input sequence using bit reversal.
Calculate the number of stages.
Determine the twiddle factors for every stage
Execute the butterfly for every stage.

Expected Figures:

Digital Signal Processing Laboratory Manual


13
Department of Electronics And Communications

Page
K.L.University

EXPERIMENT NO: 3 B

Date:

IMPLEMENTATION OF D.I.F-F.F.T
Introduction:
Discrete Fourier transform is implemented in many ways. Fast Fourier Transform (FFT),
is an ingenious algorithm that decomposes a DFT with N points, into N DFTs each with a single
point. The FFT is typically hundreds of times faster than the other methods.
The FFT operates by decomposing an N point time domain signal into N time domain
signals each composed of a single point. The second step is to calculate the N frequency spectra
corresponding to these N time domain signals. Lastly, the N spectra are synthesized into a single
frequency spectrum.FFT is implemented using 2 algorithms Decimation in Time(D.I.T) and
Decimation in Frequency(D.I.F).
In D.I.F algorithm the input is unaltered and its D.F.T is calculated. But the DFTs (X(k))
obtained will be splitted (in frequency domain), hence the name Decimation in Frequency.
Aim:
To implement F.F.T using D.I.F-F.F.T algorithm
Software Used:
Matlab
Theory :
The decimation-in-frequency (DIF) radix-2 FFT partitions the DFT computation into
even-indexed and odd-indexed outputs, which can each be computed by shorter-length DFTs of
different combinations of input samples. Recursive application of this decomposition to the
shorter-length DFTs results in the full radix-2 decimation-in-frequency FFT.

Algorithm :

1)
2)
3)
4)
5)

Determine the number of samples.


Calculate the number of stages.
Determine the twiddle factors for every stage
Execute the butterfly for every stage.
Shuffle the output sequence after the last stage using bit reversal.

Digital Signal Processing Laboratory Manual


14

Page

Department of Electronics And Communications

K.L.University

Expected Figures:

Digital Signal Processing Laboratory Manual


15
Department of Electronics And Communications

Page
K.L.University

EXPERIMENT NO: 4 A

Date:

Design of IIR Butterworth and Chebyshev Filter using Impulse Invariant Technique
Introduction:
Almost each and every electronic system has filters in it. Filters allow some signal
frequencies applied at their input terminals to pass through their output terminals with little or no
reduction in signal level. There are 2 types of I.I.R filters namely butterworth and chebyshev. One
method to realize these filters is that they are first designed in analog domain and then
transformed into digital domain using transformation techniques.. One such technique is Impulse
invariance technique. In this the impulse response is kept invariant after transformation also.
Aim:
To design butterworth and chebyshev filters using impule invariant technique
Software Used :
Matlab
Theory:
IIR filters are one of two primary types of digital filters used in Digital Signal processing
applications. The word IIR means Infinite Impulse Response. The impulse response is infinite
because there is feedback in the filter; if you put in an impulse, an infinite number of non-zero
values will come out. IIR filters can achieve a given filtering characteristic using less memory and
calculations than a similar FIR filter. However they suffer from the following disadvantages. They
are more susceptible to problems of finite length arithmetic, such as noise generated by
calculations, and limit cycles. They are harder to implement using fixed-point arithmetic and they
do not offer the computational advantages of FIR filters for multirate applications. IIR filters have
the transfer function of the form

There are several methods that can be used to design digital filters having an infinite duration unit
impulse response. The most common technique involves first designing an analog prototype filter
and then transforming the prototype into a digital filter. The most commonly used techniques for
digitizing an analog filter are
(a) Approximation of derivatives
(b) Impulse invariance transformation
(c) Bilinear transformation
(d) Matched z-transformation
Digital Signal Processing Laboratory Manual
16

Page

Department of Electronics And Communications

K.L.University

Impulse invariance is a technique for designing discrete-time infinite-impulse-response


(IIR) filters from continuous-time filters in which the impulse response of the continuous-time
system is sampled to produce the impulse response of the discrete-time system. The frequency
response of the discrete-time system will be a sum of shifted copies of the frequency response of
the continuous-time system; if the continuous-time system is approximately band-limited to a
frequency less than the Nyquist frequency of the sampling, then the frequency response of the
discrete-time system will be approximately equal to it for frequencies below the Nyquist
frequency.

Algorithm :

(a) Butterworth filter


(1) Consider the passband frequency, stopband frequency, passband ripple, stopband ripple
(2) Determine the order of the butterworth filter
(3) Determine the filter coefficients.
(4) Determine the digital butterworth coefficients using impulse invariant technique.
(b) Chebyshev filter
(1) Consider the passband frequency, stopband frequency, passband ripple, stopband ripple
(2) Determine the order of the chebyshev filter
(3) Determine the filter coefficients.
(4) Determine the digital chebyshev coefficients using impulse invariant technique.

Digital Signal Processing Laboratory Manual


17

Page

Department of Electronics And Communications

K.L.University

Expected Figures:
(a) Butterworth filter

(b) Chebyshev Filter

Digital Signal Processing Laboratory Manual


18
Department of Electronics And Communications

Page
K.L.University

EXPERIMENT NO: 4 B

Date:

Design of I.I.R Butterworth and Chebyshev filter using Bilinear transformation.


Introduction:
Almost each and every electronic system has filters in it. Filters allow some signal
frequencies applied at their input terminals to pass through their output terminals with little or no
reduction in signal level. There are 2 types of I.I.R filters namely butterworth and chebyshev. One
method to realize these filters is that they are first designed in analog domain and then
transformed into digital domain using transformation techniques.. Another such technique is
Bilinear transformation.
Aim:
To design Butterworth and Chebyshev Filter using Bilinear Transformation.
Software Used :
Matlab
Theory:
The bilinear transform (also known as Tustin's method) is used in digital signal
processing and discrete-time control theory to transform continuous-time system representations
to discrete-time and vice versa.
The bilinear transform is a special case of a conformal mapping, often used to convert a
transfer function Ha(s) of a linear, time-invariant (LTI) filter in the continuous-time domain (often
called an analog filter) to a transfer function H d(z) of a linear, shift-invariant filter in the discretetime domain (often called a digital filter although there are analog filters constructed with
switched capacitors that are discrete-time filters). It maps positions on the jw axis, ,Re[s]=0 in the
s-plane to the unit circle,|Z|=1 , in the z-plane. Other bilinear transforms can be used to warp the
frequency response of any discrete-time linear system (for example to approximate the non-linear
frequency resolution of the human auditory system) and are implementable in the discrete domain
-1

by replacing a system's unit delays (z ) with first order all-pass filters.


The transform preserves stability and maps every point of the frequency response of the
continuous-time filter,Ha(ja) to a corresponding point in the frequency response of the discretetime filter,Hd(exp(j dT) although to a somewhat different frequency, known as frequency
Warping. This means that for every feature that one sees in the frequency response of the analog
filter, there is a corresponding feature, with identical gain and phase shift, in the frequency
response of the digital filter but, perhaps, at a somewhat different frequency. This is barely
noticeable at low frequencies but is quite evident at frequencies close to the Nyquist frequency.
Digital Signal Processing Laboratory Manual
19
Department of Electronics And Communications

Page
K.L.University

-z 1
In bilinear transformation s is replaced by 2 (1
)
T 1+z1
Algorithm :

(a) Butterworth filter


(1) Consider the pass band frequency, stop band frequency, pass band ripple, stop
band ripple.
(2) Pre-warp the pass band and stop band frequencies.
(3) Determine the order of the Butterworth filter.
(4) Determine the filter coefficients.
(5) Determine the digital Butterworth coefficients using Bilinear Transformation.
(b) Chebyshev filter
(1) Consider the passband frequency, stopband frequency, passband ripple, stopband
ripple
(2) Pre-warp the passband and stop band frequencies.
(3) Determine the order of the chebyshev filter.
(4) Determine the filter coefficients.
(5) Determine the digital chebyshev coefficients using Bilinear Transformation.
Expected Figures:

(a)

Butterworth filter

Digital Signal Processing Laboratory Manual


20

Page

Department of Electronics And Communications

(b)

K.L.University

Chebyshev filter

Digital Signal Processing Laboratory Manual


21

Page

EXPERIMENT NO: 5

Date:
F.I.R Filter Design using Windows

Introduction:
An important step in development of a digital filter is the determination of a realizable
transfer function H(z). The process of deriving H(z) is called as digital filter design. The
characteristics of FIR filters is that they can achieve linear phase frequency response. They can be
efficiently realized on general or special purpose hardware. But the implementation of narrow
transition band is costly as it requires more arithmetic operations and hardware components.
Unlike IIR filter design, FIR filter design does not have any connection with the design of
analog filters. One way of developing a realizable approximation (H(z)) to the filter would be to
truncate the Ideal impulse response and then find its Frequency response. Truncation of the Ideal
impulse response is done using windows. Various windows such as rectangular, bartlett,
hamming, hanning, kaiser are used.
Aim:
To design F.I.R filter using various windows.
Software Used :
Matlab

Digital Signal Processing Laboratory Manual


22
Department of Electronics And
Communications

Page
K.L.University

Algorithm :

1) Define the filter specifications(passband and stopband ripples,passband and stopband


frequencies, sampling frequency).
2) Calculate the order of the filter.
3) Determine the window coefficients.
4) Draw the magnitude and phase responses.
Expected Figures:

Digital Signal Processing Laboratory Manual


23

Page

Department of Electronics And Communications

EXPERIMENT NO: 6 A

K.L.University

Date:
Realization of FIR Filters

Introduction:
Using the direct form I, we will get a special realization form, called the transversal form.
Using the linear phase property a linear phase realization structure is realized.
Aim:
To realize FIR filters using Direct form 1(Transversal Form).
Software Used :
Matlab
Theory:
A straightforward approach for IIR filter realization is Direct Form I, where the difference
equation is evaluated directly. This form is practical for small filters, but may be inefficient and
impractical (numerically unstable) for complex designs. In general, this form requires 2N delay
elements (for both input and output signals) for a filter of order N. Transversal form is a special

form of Direct form I which is used for realization of FIR filters.


Let the FIR structure to be implemented be

so that the difference equation is

Digital Signal Processing Laboratory Manual


24

Page

Department of Electronics And Communications

K.L.University

The following block diagram is the transversal form of this system:

Output
Out:
1.0000 3.2000 5.7600 8.3200 10.8800 13.4400 16.0000 18.5600 21.1200 23.6800

Digital Signal Processing Laboratory Manual


25
Department of Electronics And Communications

Page
K.L.University

EXPERIMENT NO: 6 B

Date:
Realization of IIR Filters

Introduction:
IIR filters are digital filters with infinite impulse response. Unlike FIR filters, they have the
feedback (a recursive part of a filter) and are known as recursive digital filters therefore.
Aim:
To realize IIR filter using Direct form -I
Software Used :
Matlab
Theory:
IIR filters have much better frequency response than FIR filters of the same order. Unlike FIR
filters, their phase characteristic is not linear which can cause a problem to the systems which need phase
linearity. For this reason, it is not preferable to use IIR filters in digital signal processing when the phase is
of the essence.

The system function of an IIR filter is given by

B(z)
H (z) =
A(z)
the difference equation is implemented as given using delays, multipliers, and adders. For the purpose of
illustration, Let M=N=2,

Digital Signal Processing Laboratory Manual


26

Page

Department of Electronics And Communications

x(n)

K.L.University

y(n
)

b0
1/z

b1

1/z
b2
H1(z)

-a1

1/z

-a2

1/z

H2(z)

Output:
0.3872 0.1499 0.2953 0.2062 0.2608 0.2274 0.2479 0.2353 0.2430 0.2383

Digital Signal Processing Laboratory Manual


27

Page

You might also like