數位信號處理器_林顯易_第六單元 數位系統實現_Part1 直接架構

. DeltaMOOCx
50粉絲
1 次觀看·2023年12月3日
DeltaMOOCx 台達磨課師是大學及高中/高工的免費公益磨課師(MOOCs)平臺。練習題、討論、教師輔導及更多數位課程資源,請至https://univ.deltamoocx.net 註冊。本影片採用「創用CC-姓名標示-非商業性-禁止改作4.0」臺灣授權條款,相關授權作業依「創用CC-姓名標示-非商業性-禁止改作4.0」規範辦理。
Hi everyone,
welcome to the digital signal processor (DSP) course,
Unit 6 – Realization of Digital Systems.
In this unit, we will teach everyone
the means of creating a digital system
such as direct forms,
or series forms,
or frequency sampling
as well as lattice forms
in creating our digital system.
So what are the contents?
Let's go and take a look.
The learning objectives and outline of this unit
will start off with the direct structure,
serial connection structure,
frequency sampling structure,
and finally the
lattice structure.
Now basically,
we can think of this problem:
if a linear time-invariant system
can be written
as this difference equation,
where this part is the output, the past output.
and this part is the input, and the past input.
Now how do we create this
digital system?
Let's take a look at this. Firstly,
this is a formula, an algorithm.
We can re-write it as a Z-transform method.
The system's Z-transform can be equated to this rational,
can be expressed as a rational function.
This is what we've previously mentioned.
So there are some equations
that can be written in this way.
But we can add some block diagrams
or use some delay components,
for example, z to the -k power,
to represent these delay components
and create the system.
How do we create this system?
To create this system,
we basically have a few considerations.
First, we will consider
the complexity of the calculations.
For example, the system and the
mathematical operations it uses such as multipliers, adders,
and division, and its quantities.
Because we know when we are trying to create early hardware,
the multiplication usually takes a significant amount of time.
So if we want to make the system faster,
we must consider the frequency of using the multiplier.
Secondly, when creating the system,
we must consider the memory requirements.
Memory requirements mean that
when we perform this algorithm,
we may be using past outputs or inputs,
or we must store system coefficients
or other temporary data of the system.
These data must be
stored in the memory.
The quantity of the variables needed
is strongly correlated to the size of the memory required.
So when we look at the hardware,
the memory would represent our cost.
So how can we reduce this cost?
This of course involves making the memory
required smaller.
Finally we must consider the effects of limited character length.
This is also what we refer to as the quantization error.
In a digital system,
we know all data
are represented by numbers.
When a number is used to represent a data,
it must be quantified.
You can use many levels of precision
such as 16 bits,
or 32 bits to represent a number.
Different bit sizes will lead to different levels of precision.
Different levels of precision can help us
generate different final outputs.
This would be what we define as quantization errors.
So these 3 points
must be considered
when we create a system.
Next, we will talk about
in the following structure on our considerations
when creating the system form
and if there are better forms
including parallel processing
which can help accelerate our computing speed.
OK, first, we will
introduce the direct form.
For direct form, we will first introduce FIR.
We have mentioned FIR for the first time here.
I believe that the course on Filter designs
and later units will mention this.
So here we have mentioned it first
so that you will know
how to create an FIR form.
Later, when we get to filter design,
we will provide a more detailed explanation.
FIR is the finite impulse response filter.
which is abbreviated as FIR.
Mathematically, it is expressed as this equation.
So its output is equal to its past input
multiplied by the filter coefficient.
This is its length, the length of the filter.
When we look at this formula, we know that
to achieve this output,
we need M -1
an input of M-1, as well as M multipliers.
Because we have 1 multiplier here
and M-1 adders.
Given the large numbers involved,
we would need M-1 adders.
So if you use a
direct form to express this
type of output,
we can see that
our inputs will undergo different delays
because it’s K will change.
So after passing through different delays,
different delays and multiplied by this coefficient,
we would add them up,
finally add them up
to get the final output of the system.
So from this direct form, we can see that
an FIR filter
and its basic expression.
It is created via direct form
which looks very simple.
Next we will consider
if we were to design an FIR
an FIR filter,
the benefit is that the filter has linear phases.
Linear phase means that the system,
its phase, which is Theta.
We know that when differentiating Theta and Omega,
we would obtain a constant.
This property is the linear phase.
The benefit of this
is that for a system output,
if your system, this system,
has a linear phase,
it means that your input signal
will have
a fixed delay time.
After a Fourier transform, we would have an additional term.
If we differentiate this by Omega we will get a constant.
This means that in the time domain,
all frequency components
would be subject to the same time delay,
otherwise the filtered signal would be distorted.
So linear phases have this benefit.
Now let's look at FIR with linear phase.
The property is that
its filter coefficients
are symmetric. They are symmetrical.
So if the formula is symmetrical,
if it has this property,
we can correct the direct form
and change this single way
from here to there
and break it in half.
Why half?
because we know that its coefficients are symmetric.
Coefficients at the beginning and at the end can be shared.
For example, h0 can be shared with
h M-1
So when we share these coefficients and bring x(n) in
after delay, and allow this to go out.
Once this go out,
both will use the same coefficient.
Let's look at an example
to make it clearer for everyone.
For example,
when M = 5
so in this example, M = 5, we have a formula where M = 5
we can expand this formula into this.
When M = 5,
we would find out that for linear phase, it
will satisfy this formula.
This means that h0 and h4 are basically the same.
My h3 and h1 are the same as well.
So, I can
combine these pairs
and bring out the coefficient.
So we represent this by h0, and combining these two,
we would represent this with h1,
and combine the x terms behind the h together.
What is the benefit of this?
We can cut down on the number of coefficients
to give us this.
In other words, once my equation
becomes this
I can take h0 and h1
and multiply them with this term and this term.
Adding these two together, and these two together,
this route and
this route together, sharing the same coefficient
we basically reduced the number of multiplier needed by half.
So linear phase and its
symmetrical property
help us to significantly reduce
the multipliers we need,
and the time needed by the multipliers.
So we have IIR, standing for infinite impulse response
happens to be another type of
mathematical formula depicted in this way.
So it uses the past output
summed with the current input.
So this formula, if we intend to rewrite it
as a Z-transform,
then we have previously talked about this before.
OK, so now we can see
the means of creating the direct form.
This is the way it looks. Here is the input.
So after the delay, it is multiplied by the coefficient
to generate the output here.
After the delay, we take this back and multiply it by the coefficient
add them all up, and add these together
and use the direct form to create an IIR.
The reason is simple. We need M + N delays and
M + N + 1 multipliers. We have mentioned this before.
If we use the Canonical form,
Direct Form II,
what happens? We transpose the left and right sides,
which is to say,
I would transpose these two things from the previous page
so that we can share
a single delay.
Hence, we can change this into a Direct Form II
with the delay at the middle
the delay it needs will become
the maximum value of M and N.
Hence, you can reduce the number of delays.
Since it needs so many multipliers,
so we would use Direct Form II for the IIR realization.
So in this part,
we have introduced the direct form for digital system realization.
We have learned that
to create an actual digital system,
we must consider its requirements
such as its computational load and memory requirements.
So in the direct form,
we achieve less significant reductions
in computational load.
But we have introduced linear phase filters
that can help us reduce the number of multipliers needed.
In the next unit, we will introduce the series form,
which helps achieve a further reduction in computational load.
Let's go on and take a look.
