Hello, guys, and welcome back this lecture, we're going to talk about video now, which still is
a way to program hardware.
What does this mean?
I'm going to really explain this to you in very, very simple words.
So why do we need a hardware based programming language?
What's wrong with see what's wrong with Python, C++, Java?
What's wrong with all of this programming languages?
Well, they're great.
They can do great software, but.
Deal is not really to write software.
Which deal is to right hardware?
I know the concept could be totally new to you, but it is what it is.
When you're using the HDL, you can actually write circuits.
That's really an exciting field and it's vital to understand the small bits of any microcontroller system,
because if you understand how to program a hardware or how can you design the hardware using programming,
you are going to be understanding how microcontroller works because, well, a microcontroller is actually
all of these small bits of digital hardware back together.
Now, let me introduce this to you.
An even simpler words.
Can you see this?
Those are all electronic components.
They are digital electronic components.
OK, so this could be a flip flop and gait or gait or gait, a large there is a lot of digital components
which we will talk about in the section.
But as you can see, there is a lot of them.
If we count you, at least we would be having around 25 digital, electronic, I see now we call this
black thinks I see or integrated circuits because it's backed multiple small circuits together.
So we call it an integrated circuit in addition to all the other components that this icey needs in
order to operate.
So every icey needs resistors, capacitors, inductors.
There is a lot of stuff going on here and designing.
This is really a not an easy task.
It's not about just interconnecting stuff together.
There is a lot of calculations that need to be done here in order to get this circuit to actually work
in real life.
Well, this makes prototyping any digital system a real nightmare because digital systems are really
complicated.
And if you check any small CPU or any microcontroller, you could be finding a million electronic components
packed inside it.
And that's that's a huge number.
Imagine you have thousands of these all back together in order to test a very small microcontroller.
That's crazy.
However.
What we can do is we can throw all of this away and just get this small chip, which we call FPGA.
Or feed the programmable gate array.
OK, we will figure all of this and we are going to program every one of these black integrated circuits
inside here.
So we are going to define and gates, latches, Aleuts memory sections.
We can do whatever we want and we can back any digital system we want inside here.
That's really huge.
Any large company that works with digital electronics use FBC and Programming FPGA is not really straightforward.
There is the learning curve if it is a little bit steep and we are going to try our best to explain
the concepts so that you can go for it.
Now, you might ask.
Well, guess I do this in any microcontroller.
The answer is no, because in microcontrollers you don't get to program the circuits.
You don't get to program the timing of the circuits.
You don't even get to program real parallel processing.
FPGA can work in parallel.
So you could have multiple circuits all working in parallel.
Totally.
Now, microcontrollers, as we are going to see and when we progress, they are executing in a sequential
way instruction by instruction.
It's not parallel at all.
At best, you could be having multi threading, which is a semi parallel process.
OK, I have said a lot of technical terms maybe that you won't understand for now, but by the end of
this scores everything that I said.
Now you will be able to understand it.
OK, so in simple words, this is a compact.
All of these all together inside you.
So it's used in order to prototype digital systems, prototype its timing, prototype its constraints.
It can do a lot of stuff, actually.
So what is the HDL?
It is the language that we are going to use and it is a hardware description language because we use
it to write hardware.
We use it to program digital circuit.
Now there is another programming language that is also very popular, which is called Magalog.
But in our course we are going to be focusing on the HDL.