FPGA vs. Microcontroller: How to choose the right one for your project

  Рет қаралды 28,962

nandland

nandland

Күн бұрын

Picking the smarts of your project is an incredibly important decision. It will impact your project for its entire lifetime. A common choice is between using an FPGA or a Microcontroller as the "heart" of your design. Learn the strengths and weaknesses of FPGAs and Microcontrollers. Given project requirements, you might decide one or another, so make sure you choose correctly!
If you like this video and want me to make more, please support me on Patreon:
/ nandland
The Go Board is the best FPGA development board for beginners. Get one for yourself today:
nandland.com/goboard/introduc...

Пікірлер: 79
@user-xb5zu6zu7j
@user-xb5zu6zu7j 3 жыл бұрын
Hi, thanks to this channel I got into FPGA's and now plan to do FPGA based project for my final uni year. Thanks man!
@pluszakpluszak5226
@pluszakpluszak5226 Жыл бұрын
@nandland is this channel dead? I really love your videos. They are very informative and you can explain FPGA topics very clearly.
@briancooper2737
@briancooper2737 3 жыл бұрын
Great to see the new content. Thanks for the channel and your great explanations.
@pjsmith6954
@pjsmith6954 2 жыл бұрын
great overview and exactly what I was looking for! Thanks for putting in the work to make this video and share it with us
@964tractorboy
@964tractorboy 3 жыл бұрын
Good video with lots of handy tips. Nice work. Must have a look at your Go Board.
@poll1986
@poll1986 2 жыл бұрын
Really great video many thanks for sharing such high-quality content.
@R2AUK
@R2AUK 3 жыл бұрын
Nice presentation, many thanks for sharing! I have Go Board and enjoyed it very much, and your series of tutorials as well (in text, I believe it was before the channel). Don't have many projects for FPGAs at the moment though.
@ruinex7718
@ruinex7718 3 жыл бұрын
Thank you so much, this was actually a question in my mind for a while and your explanation cleared everything in my mind. Super helpful, please post more frequently :)
@balachandran1559
@balachandran1559 16 күн бұрын
very detailed n clear vid.
@sree8132
@sree8132 3 ай бұрын
Good overview ,particular with the examples. Looking for forward for FPGA vs Micro processor
@bendustin7609
@bendustin7609 4 ай бұрын
Thank you!
@joelressell9871
@joelressell9871 2 жыл бұрын
Another great video. Fun to see the Scout team making a special appearance. We need good engineers so please apply!
@mehranbidkhori3245
@mehranbidkhori3245 2 жыл бұрын
Please increase your activity, you explain very well, we will learn a whole new thing
@1mdobro
@1mdobro 3 жыл бұрын
Thanks a lot!
@Jinjukei
@Jinjukei 5 ай бұрын
Another disadvantage of FPGA is the heat generation (due to high power consumption). If you want to build a compact prototype (product), it might get pretty hot and will reduce the lifetime or even shut down in warmer environments.
@neelimhaider4854
@neelimhaider4854 2 жыл бұрын
Thanks!
@Kamal_Kalyan887
@Kamal_Kalyan887 Жыл бұрын
Please make more videos like this related to embedded, fpga and asic system designs
@isuckatthisgame
@isuckatthisgame Жыл бұрын
I had FPGA and VHDL on Digital Electronics class at university. But I dropped off college and now enrolled again. Looking to expand on what I've failed to do few years ago. Your tutorials help.
@FATALK1LLCAMZ
@FATALK1LLCAMZ Жыл бұрын
Are you studying at CSUN for your masters???
@KFlorent13
@KFlorent13 2 жыл бұрын
Okay, I have seen that you updated your websites. Hope you continue doing stuff ;)
@xynostasos9022
@xynostasos9022 11 ай бұрын
It would be nice if new videos covering AXI and PS-PL architectures will come to the channel.
2 жыл бұрын
You can design high-speed (for example optical 10Gb/s) communication hardware with FPGAs: Serializer, deserializer, clock regeneration and so on. You can not make any of them at that speed with a microcontroller.
@conorstewart2214
@conorstewart2214 Жыл бұрын
Wrong. You can make those interfaces with some FPGAs (not all), you can also have them in microcontrollers too.
@vitalyl1327
@vitalyl1327 Жыл бұрын
@@conorstewart2214 prey tell, what MCU have >20gbps serialisers? Or at the very least an array of 2.5gbps LVDS links? Even getting a full speed 4-lane D-PHY on an MCU is a wet dream.
@happychuckprogramming6048
@happychuckprogramming6048 2 жыл бұрын
nice vid, bud
@MohanRaj-pp6zz
@MohanRaj-pp6zz 2 жыл бұрын
intellegently explained. With JDs
@Ionizedwater-xc6tq
@Ionizedwater-xc6tq Жыл бұрын
please do lecture on avalon bus protocol used in altera fpga.
@parasshukla3963
@parasshukla3963 7 ай бұрын
great. can you please explain same with all uC, uP, FPGA, ASIC, DSP. Specially with last three as here i got understanding in uC and FPGAs thanks
@iliasoul3947
@iliasoul3947 2 жыл бұрын
Hello dear friend... Thank you for your good work... I like it sincerly... We need more video about FPGA please
@mujeevkhan7298
@mujeevkhan7298 Жыл бұрын
what could be some hot research areas in this field for phd and masters?
@akpresentations3645
@akpresentations3645 Жыл бұрын
Hi, I have a query unrelated to this video. If I need to detect a pulse on sdata when sclk is turned off in a serial interface, how to do so without using a latch?
@pouryaahmadi615
@pouryaahmadi615 3 жыл бұрын
👍👍
@ZayMeisters
@ZayMeisters 2 жыл бұрын
Does anyone know how long it takes the Go-Board to be shipped to you. I wanna buy one but I'm not sure if it would be a good time since he hasnt posted in awhile.
@Nandland
@Nandland 2 жыл бұрын
A few days to US. Up to 10 days international. I'm not dead! News soon...
@KFlorent13
@KFlorent13 2 жыл бұрын
Are you gonna continue videos ?
@sowmyareddy8897
@sowmyareddy8897 2 жыл бұрын
for implementation of infotainment which one would be better FPGA or microcontroller and could you explain y
@NoSpeechForTheDumb
@NoSpeechForTheDumb Жыл бұрын
Generish answer to a generish question: Use an FPGA for the signal processing and a microcontroller for the control logic. SOCs with integrated processors are ideal for such hybrid tasks.
@ShiiniigamiiX
@ShiiniigamiiX 2 жыл бұрын
Hi, I ordered a go board, I'm excited to start learning FPGA! Is there a way to track my package?
@Nandland
@Nandland 2 жыл бұрын
Shipped today. You should get an email with tracking number.
@ShiiniigamiiX
@ShiiniigamiiX 2 жыл бұрын
​@@Nandland Just checked it and I got the email, thanks!
@FilipMilerX
@FilipMilerX 3 жыл бұрын
Programming FPGAs is more fun than programming MCUs, this should also be considered.
@wolfgeowild8709
@wolfgeowild8709 2 жыл бұрын
As well as the fact that programming the same things (uart, spi, i2c) takes considerably less time and rows in MCUs
@briancannard7335
@briancannard7335 2 жыл бұрын
I agree, it's a reactive programming model of computation that web developers keep wanting for a few decades now.
@richstaubin333
@richstaubin333 11 ай бұрын
Ok
@cosmosaodyssey2188
@cosmosaodyssey2188 3 жыл бұрын
I am wondering if you might know where I could find Verilog code which describes a logic element like the ones you might find inside of an FPGA. I have been learning about FPGA and Verilog for a while and would like to look a little deeper inside of their hardware. It might be a neat project to build an FPGA using an FPGA... Zero practical value of course but it would be interesting to understand how they're configured. I understand how a multiplexer can be used to describe any combinational logic function but this is somewhat trivial and logic elements a a lot more complicated. Most seem to have at least a flip flop, and some look like they have adders built in.
@conorstewart2214
@conorstewart2214 Жыл бұрын
A “slice” or logic element is pretty much just a multiplexer with a latch chained after it. Look at any FPGA datasheet and you will see their layout.
@bcrutzen7336
@bcrutzen7336 3 жыл бұрын
use both!
@NoSpeechForTheDumb
@NoSpeechForTheDumb Жыл бұрын
Not if power consumption matters. FPGAs are very hungry. 😉
@briancannard7335
@briancannard7335 2 жыл бұрын
The Go board is the best, I agree.
@conorstewart2214
@conorstewart2214 Жыл бұрын
Except only 1280 LUTs and very little storage for $70, it is a very bad deal.
@mouseminer2978
@mouseminer2978 8 ай бұрын
Is quantum computer work like a FPGA?
@liliansirbu840
@liliansirbu840 2 жыл бұрын
Can you make a video with a simple SOC project inside of your go-board?
@ahmeta6367
@ahmeta6367 3 жыл бұрын
In aviation, FPGA goes through hardware life cycle and verification which is much cheaper and quicker than software verification. This is where FPGA shines the most.
@Nandland
@Nandland 3 жыл бұрын
That's interesting. Can you elaborate on why FPGA verification is cheaper than software verification? FPGA verification is not exactly simple and quick. It usually takes longer than designing the FPGA itself.
@ahmeta6367
@ahmeta6367 3 жыл бұрын
@@Nandland In aviation DO254 and DO178 standards are used for hardware and software development respectively. In DO254 system level testing (black box) is good enough but DO178 requires unit testing (white box) which is apparently tedious and longer. Some good info here: afuzion.com/do-254-costs-versus-benefits/ Im not sure on how either testing is performed but thats just how I read it. Curious to find out more though.
@NoSpeechForTheDumb
@NoSpeechForTheDumb Жыл бұрын
I never worked in aviation but generally consider this a myth because in hardware you always have phenomenons like clock-domain crossing or timing issues which are very hard to debug. Not to mention that there are much too few competent hardware designers in the industry.
@alexandrosiii5676
@alexandrosiii5676 3 жыл бұрын
Hi, i am a beginner. I am looking for a book on ethernet protocol. Can you show me that book or a course on that part?
@reynirari6840
@reynirari6840 3 жыл бұрын
Watched the whole video, don't know what an FPGA is. Still don't know. Still enjoyed it, don't know why.
@anilkadiyala
@anilkadiyala 3 жыл бұрын
you can think of fpga as - readily available interconnection matrix on the fpga. As per the boolean equation of your written logic in HDL. interconnection matrix will be realized as a logic circuit.
@briancannard7335
@briancannard7335 2 жыл бұрын
99.999% of all electronic devices on this planet are sliced as chips from disk-shaped n-type or p-type silicon wafers, processed at a factory (called "fab") to make patterns of transistors and HARDWIRE them, using layers of metal and oxide (insulator). All these chips are called ASICs. A microprocessor is an ASIC. A GPU is an ASIC. Even an FPGA is an ASIC. But it's a clever one. Ross Freeman in the 1980s at Xilinx (now AMD) has invented an idea to wire up the transistors at ASIC's application FIELD, and so FIELD-Programmable Gate Arrays were born. ASICs are hard-wired at the fab. FPGAs are soft-wired at the field. To hard-wire the ASICs, we use Verilog (or VHDL) and special place-and-route methods to lay out the transistors and hard-wires on a 2D description of the ASIC chip (manual, traveling salesman, simulated annealing). Fab owns proprietary trade secrets of how to make actual transistors on a wafer. Everything below 130 nm is covered by NDAs and "top secret" access agreements (or non-commercial use university-accesses). The fab gives exact sizes and spacing between transistors so the so called "Standard Cells" can be used at the place-and-route process. To soft-wire FPGAs, we ALSO use Verilog (or VHDL), and very similar place-and-route (P&R) methods. But instead of waiting several months for creating a chip at a fab, we create a special "firmware" that's called "bitstream" and we can put all kinds of different bitstreams into the same FPGA indefinite number of times. Some FPGAs, connected to each other, can even reprogram one another, while working in the "field of their application". Both FPGAs and all ASICs run on a special model of computation that is different from CPU. It's a massively parallel computation of a forest of Boolean functions of many variables (sharing a lot of overlapping branches, otherwise there's not enough atoms in the Universe to compute anything fun). Each trunk of such a Boolean function tree produces a single 1-bit value, 0, or 1. In order to do all the magic we see around us, that single bit is stored inside of the truly magical device called D flip-flop. D flip-flop is crucial to understand the magic of FPGAs (and most ASICs). D flip-flop stores the PREVIOUS (old, "current") value of all computed variables, so that value can be fed into the forest of Boolean function trees. Each Boolean tree in an FPGA produces the NEXT value (new, "updated") value and feeds it into the "D" input of the D flip-flop at a special moment, when the "CLOCK" input of the D flip-flop changes from 0 to 1: the D flip-flop has internal double buffer to swap between the "old" and the "new" 1-bit values stored inside of it. The "Q" output shows only one internal buffer's value at a time: a special device called "multiplexer" (MUX) switches between one of the two buffers. In short, what FPGAs and ASICs do, for software developers can be summarized as reactive programming: en.wikipedia.org/wiki/Reactive_programming
@MannyBojorquez
@MannyBojorquez 2 жыл бұрын
Anyone know how to mine with an FPGA? I have an NEXYS 4DDR that could be put to good use
@briancannard7335
@briancannard7335 2 жыл бұрын
Correction: you can get an FPGA for almost a dollar. iCE40LP384-SG32. And you can even solder it without X-ray BGA inspection! It has 21 GPIO, 48 bytes in D flip-flops, and 384 LUT4 for your custom Boolean logic.
@NoSpeechForTheDumb
@NoSpeechForTheDumb Жыл бұрын
FPGAs use fixed-point arithmetics. If your algorithm uses a lot of floating point operations and accuracy matters, you should think twice before you choose an FPGA. It can be really hard because you do not get any support from the hardware.
@conorstewart2214
@conorstewart2214 Жыл бұрын
Wrong. You can implement floating point in FPGAs, also a lot of microcontrollers don’t have floating point units (FPUs) hence are not good at floating point arithmetic. So with a lot of microcontrollers you don’t get any support from the hardware, but FPGAs you can implement floating point math if you need it and have enough resources.
@NoSpeechForTheDumb
@NoSpeechForTheDumb Жыл бұрын
@@conorstewart2214 the DSP slices in FPGAs are fixed-point. That's the only support for arithmetic operations you get from the FPGA itself. Of course, since an FPGA can be synthesized to almost any boolean function, you could implement a floating-point unit or use some IP core for that, but that would be an extreme waste of resources. Floating-point operations are usually done in software, typically on a softcore or hardcore processor built into the FPGA, which I personally do not consider as FPGA design since I'm a hardware developer. 😉
@conorstewart2214
@conorstewart2214 Жыл бұрын
@@NoSpeechForTheDumb you can use the existing DSP slices plus a little additional logic to do floating point operations. It is generally easier to implement multiplication and division than addition and subtraction though.
@NoSpeechForTheDumb
@NoSpeechForTheDumb Жыл бұрын
@@conorstewart2214 the point is: even though you CAN do virtually anything in an FPGA since it's a reprogrammable integrated circuit doesn't mean you SHOULD do everything in it. If your algorithms rely mostly on floating-point logic, a dedicated microcontroller may be MUCH more economical since it is cheaper.
@conorstewart2214
@conorstewart2214 Жыл бұрын
@@NoSpeechForTheDumb in just about every situation you would be cheaper to use a microcontroller, but if you are using an FPGA anyway there is nothing wrong with implementing a floating point math unit in it and if you needed to do lots of floating point calculations then you can do them in parallel.
@bluegizmo1983
@bluegizmo1983 3 жыл бұрын
I can get FPGA's for $1.... But I'm not telling you how, it's my secret!!! 😈🤣 I'm kidding of course, FPGA's are expensive (unless your reading this in 2031 or something, they're probably cheap by then lol)
@conorstewart2214
@conorstewart2214 Жыл бұрын
2023 they are cheap, cheap enough that their “go board” is very bad value.
@abusayemmasud2074
@abusayemmasud2074 Жыл бұрын
Pls speak slow..it is hard to understand your speech
@conorstewart2214
@conorstewart2214 Жыл бұрын
This is very typical of someone who speaks English, the problem isn’t with the video.
Жыл бұрын
Hi nandland, I am interesting in doing an unboxing, I sent you more details in your reddit account as a pm. Cheers.
How to Choose an FPGA for your design
22:02
nandland
Рет қаралды 20 М.
What is a Flip-Flop?  How are they used in FPGAs?
24:13
nandland
Рет қаралды 158 М.
Clown takes blame for missing candy 🍬🤣 #shorts
00:49
Yoeslan
Рет қаралды 46 МЛН
Little girl's dream of a giant teddy bear is about to come true #shorts
00:32
Spot The Fake Animal For $10,000
00:40
MrBeast
Рет қаралды 189 МЛН
IQ Level: 10000
00:10
Younes Zarou
Рет қаралды 10 МЛН
Which ESP32 is Best for Your Project?
11:12
Predictable Designs
Рет қаралды 23 М.
How To Learn Embedded Systems At Home | 5 Concepts Explained
10:34
These Chips Are Better Than CPUs (ASICs and FPGAs)
5:08
Techquickie
Рет қаралды 493 М.
Software Emulators vs FPGAs
27:08
What's Ken Making
Рет қаралды 275 М.
Example Interview Questions for a job in FPGA, VHDL, Verilog
20:34
FPGA Design | Beyond dev boards: your own custom PCB
10:45
Psychogenic Technologies
Рет қаралды 9 М.
XDC 2019 | Everything Wrong With FPGAs - Ben Widawsky
1:03:20
X.Org Foundation
Рет қаралды 12 М.
Driving a VGA Display?! Getting started with an FPGA! (TinyFPGA)
11:26
İĞNE İLE TELEFON TEMİZLEMEK!🤯
0:17
Safak Novruz
Рет қаралды 1,8 МЛН
Как бесплатно замутить iphone 15 pro max
0:59
ЖЕЛЕЗНЫЙ КОРОЛЬ
Рет қаралды 8 МЛН