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

  Переглядів 27,476

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...

КОМЕНТАРІ: 78
@briancooper2737
@briancooper2737 2 роки тому
Great to see the new content. Thanks for the channel and your great explanations.
@pjsmith6954
@pjsmith6954 Рік тому
great overview and exactly what I was looking for! Thanks for putting in the work to make this video and share it with us
@sree8132
@sree8132 10 днів тому
Good overview ,particular with the examples. Looking for forward for FPGA vs Micro processor
@poll1986
@poll1986 2 роки тому
Really great video many thanks for sharing such high-quality content.
@pluszakpluszak5226
@pluszakpluszak5226 Рік тому
@nandland is this channel dead? I really love your videos. They are very informative and you can explain FPGA topics very clearly.
@user-xb5zu6zu7j
@user-xb5zu6zu7j 2 роки тому
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!
@964tractorboy
@964tractorboy 2 роки тому
Good video with lots of handy tips. Nice work. Must have a look at your Go Board.
@ruinex7718
@ruinex7718 2 роки тому
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 :)
@bendustin7609
@bendustin7609 Місяць тому
Thank you!
@xynostasos9022
@xynostasos9022 8 місяців тому
It would be nice if new videos covering AXI and PS-PL architectures will come to the channel.
@Kamal_Kalyan887
@Kamal_Kalyan887 Рік тому
Please make more videos like this related to embedded, fpga and asic system designs
@R2AUK
@R2AUK 2 роки тому
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.
@1mdobro
@1mdobro 2 роки тому
Thanks a lot!
@Jinjukei
@Jinjukei 2 місяці тому
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.
@joelressell9871
@joelressell9871 2 роки тому
Another great video. Fun to see the Scout team making a special appearance. We need good engineers so please apply!
@neelimhaider4854
@neelimhaider4854 Рік тому
Thanks!
@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 Рік тому
Okay, I have seen that you updated your websites. Hope you continue doing stuff ;)
@Ionizedwater-xc6tq
@Ionizedwater-xc6tq Рік тому
please do lecture on avalon bus protocol used in altera fpga.
@mehranbidkhori3245
@mehranbidkhori3245 2 роки тому
Please increase your activity, you explain very well, we will learn a whole new thing
@parasshukla3963
@parasshukla3963 5 місяців тому
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
@MohanRaj-pp6zz
@MohanRaj-pp6zz Рік тому
intellegently explained. With JDs
@mujeevkhan7298
@mujeevkhan7298 11 місяців тому
what could be some hot research areas in this field for phd and masters?
@KFlorent13
@KFlorent13 2 роки тому
Are you gonna continue videos ?
@MubinIcyer
@MubinIcyer 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
@akpresentations3645
@akpresentations3645 11 місяців тому
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?
@iliasoul3947
@iliasoul3947 2 роки тому
Hello dear friend... Thank you for your good work... I like it sincerly... We need more video about FPGA please
@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...
@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!
@pouryaahmadi615
@pouryaahmadi615 2 роки тому
👍👍
@FilipMilerX
@FilipMilerX 2 роки тому
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 8 місяців тому
Ok
@cosmosaodyssey2188
@cosmosaodyssey2188 2 роки тому
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.
@liliansirbu840
@liliansirbu840 2 роки тому
Can you make a video with a simple SOC project inside of your go-board?
@mouseminer2978
@mouseminer2978 5 місяців тому
Is quantum computer work like a FPGA?
@bcrutzen7336
@bcrutzen7336 2 роки тому
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.
@alexandrosiii5676
@alexandrosiii5676 2 роки тому
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?
@ahmeta6367
@ahmeta6367 2 роки тому
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 2 роки тому
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 2 роки тому
@@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.
@MannyBojorquez
@MannyBojorquez 2 роки тому
Anyone know how to mine with an FPGA? I have an NEXYS 4DDR that could be put to good use
@reynirari6840
@reynirari6840 2 роки тому
Watched the whole video, don't know what an FPGA is. Still don't know. Still enjoyed it, don't know why.
@anilkadiyala
@anilkadiyala 2 роки тому
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
@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 2 роки тому
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.
@CodigoMorsa
@CodigoMorsa Рік тому
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
Переглядів 19 тис.
EEVblog #496 - What Is An FPGA?
37:44
EEVblog
Переглядів 751 тис.
Артем Пивоваров х Klavdia Petrivna - Барабан
03:16
Artem Pivovarov
Переглядів 6 млн
Зомби Апокалипсис  часть 1 🤯#shorts
00:29
0% Respect Moments 😥
00:27
LE FOOT EN VIDÉO
Переглядів 36 млн
Эта Мама Испортила Гендер-Пати 😂
00:40
Глеб Рандалайнен
Переглядів 978 тис.
Software Emulators vs FPGAs
27:08
What's Ken Making
Переглядів 264 тис.
EEVblog #635 - FPGA's Vs Microcontrollers
9:28
EEVblog
Переглядів 254 тис.
XDC 2019 | Everything Wrong With FPGAs - Ben Widawsky
1:03:20
X.Org Foundation
Переглядів 11 тис.
Choosing the Right FPGA for your Application
29:04
Mercury Systems
Переглядів 2,3 тис.
A $9 Introduction to the RISC-V Future of Computing
26:34
apalrd's adventures
Переглядів 326 тис.
10 steps to start AVR microcontrollers
28:53
Electronic Wizard
Переглядів 9 тис.
I Made 200 Python Projects...Here Are My 5 FAVORITES
11:23
Tech With Tim
Переглядів 107 тис.
Driving a VGA Display?! Getting started with an FPGA! (TinyFPGA)
11:26
GreatScott!
Переглядів 478 тис.
Самый маленький игровой ПК
0:46
ITMania - Сборка ПК
Переглядів 619 тис.
НЕ ПОКУПАЙТЕ НОВЫЙ СМАРТФОН, ПОКА НЕ ВЫШЕЛ ЭТОТ [2024]
13:25
Thebox - о технике и гаджетах
Переглядів 59 тис.