No, and this lecture I want to introduce to you the different type of design in video, there is actually
three very important types when we approach video design.
First one is called structural.
Second one is dataflow.
And latest one is the behavioural.
Now take a closer look.
The structural design is actually when you implement.
The circuits yourself.
Take, for example, the plot diagram that we were using for designing a clue that was pure structural.
And as you've seen in the structural.
You design your smallest components like the end and the OR and in end gates, you combine them into
a bigger structure to create, let's say for Adir, then you combine multiple have added together to
create a full order that is structural.
And the advantage of structural is that this can go directly to manufacturing and this can go directly
to prototyping.
Like if you have a component circuits, you can just look at the structural design and just put a bunch
of electronics and get it on your breadboard and then you would have the same design almost.
Of course, there's a lot of other considerations, but basically you would have the same design ready
to be tested with real electronics.
Now, the next step is dataflow.
And we have designed something like that in the multiplex or in the dataflow.
We tell exactly how the signal should be flowing without actually designing the same circuit.
Right.
So in dataflow, you would go and say this some for like a half hour equals A or B or C N, and then
the carry would be the expression.
Right.
So you exactly specify using the video, how is everything is going to be connected.
It is called dataflow.
It means it shows you how the data flow from input to output is being carried out.
So this could be something longer than that.
Where we continue that discovery should be connected to the next component and so on and so forth.
So this is data flow.
Now, the behavioral structure is a little bit different.
Behavioral is like any other programming languages, like like C, like in Boskell, like any other
language.
The thing is, you don't really specify what's going on in the background, but you just specify the
high level instruction.
I mean, take a look here.
You're saying the result should equal to A plus B?
That's really a high abstraction because how does this A plus B circuit looks like is something you
really don't know?
And same thing here for subtraction.
You say A minus B and you have no idea what is the real implementation behind it.
So this is behavioral.
And when you program microcontrollers, you always try to program at the high level so that you don't
really waste a lot of time thinking how the circuit should look like.
And this is very useful when you are trying to prototype a very quick video model.
I mean, if you have something quick on FPGA, you just download this image to the FPGA and you don't.
But if you want to really consider every single aspect, you would either go with dataflow or even better
with a structure.
Now there are other techniques where you write in behavioral and then you optimize the circuits.
I'm going to go and show you a little bit about this domain, about like optimizing.
But I just going to give you an overview later.
It's a really deep topic.
And this, of course, really is not designed to cover all the aspects of that.
But I just want to give you the handles to all of these doors so that you can explore on your own or
if you ever heard of this term, you know what they are talking about.
So.
These are the three types, and when we are designing our ACLU, I'm going to go with this behavioral
and I'm going to show you how we can program in a high level.
We have already seen structural we've seen a little bit of data flow.
But now in the upcoming lectures, I'm going to show you behavioral and how we can really quickly prototype
stuff.