Industriële fabricage
Industrieel internet der dingen | Industriële materialen | Onderhoud en reparatie van apparatuur | Industriële programmering |
home  MfgRobots >> Industriële fabricage >  >> Manufacturing Technology >> Industriële technologie

Field Programmable Gate Array (FPGA) versus microcontroller:wat is het verschil?

Een field-programmable gate of grid array (FPGA) en een microcontroller zijn vergelijkbaar, maar niet hetzelfde. Het zijn beide in wezen 'kleine computers' of geïntegreerde schakelingen die zijn ingebed in andere apparaten en producten. Het belangrijkste verschil zit in de titel. Gebruikers kunnen de hardware van FPGA's na fabricage programmeren, waardoor ze "in het veld programmeerbaar" zijn, terwijl microcontrollers alleen op een meer oppervlakkig niveau kunnen worden aangepast. Bovendien kunnen FPGA's parallelle invoer verwerken, terwijl microcontrollers één regel lezen code per keer.

Omdat ze een grotere mate van personalisatie mogelijk maken, zijn FPGA's zowel duurder als moeilijker te programmeren. Microcontrollers zijn daarentegen kosteneffectief, maar veel minder aanpasbaar. Lees meer over de overeenkomsten en verschillen tussen microcontrollers en FPGA's. De ene is niet per se beter dan de andere - houd rekening met meerdere factoren wanneer u besluit welke te gebruiken.

Wat is een microcontroller?

Een microcontroller (MCU) is in feite een kleine computer. Hij heeft dezelfde elementen als andere computers, waaronder een centrale verwerkingseenheid (CPU), wat willekeurig toegankelijk geheugen (RAM) en invoer In tegenstelling tot een desktopcomputer, die duizenden verschillende programma's kan uitvoeren, is een microcontroller een speciaal apparaat dat één programma uitvoert.

Het is gemaakt om één ding herhaaldelijk te doen, automatisch of op verzoek van de gebruiker. Het is ingebed in een ander apparaat, of het nu een consument, fabrikant, medisch of ander type product is. Het werkt op een laag energieverbruik — het stroomverbruik is meetbaar in milliampère. Als gevolg hiervan zijn microcontrollers meestal betaalbaar. Het apparaat waarin het is ingebouwd, kan echter sterk variëren in kosten.

Je vindt microcontrollers overal om je heen in je dagelijkse leven. Hier zijn een paar van de consumentenapparaten waarin een microcontroller is ingebouwd:

  • Toetsenborden
  • Bewakers
  • Printers
  • Kopieerapparaten
  • Faxmachines
  • Telefoons
  • Televisie afstandsbedieningen
  • Magnetrons
  • Wasmachines en drogers
  • Gazonsproeiers
  • Kinderspeelgoed

Naast consumentenartikelen zijn microcontrollers ook ingebouwd in de volgende apparaten:

  • Verkeerslichten
  • Besturingssystemen voor automotoren
  • Elektrisch gereedschap
  • Implanteerbare medische hulpmiddelen

Dit zijn slechts enkele voorbeelden — microcontrollers zijn ingebed in allerlei apparaten waar we in de moderne samenleving op vertrouwen. Elke microcontroller heeft een specifiek, repetitief doel. Hij kan automatisch werken met behulp van een feedbackcontrolesysteem , zoals je zou vinden bij verkeerslichten. Of het kan werken op inputsignalen van de gebruiker, zoals het omzetten van een schakelaar of het indrukken van een knop. Dit laatste concept geldt voor de afstandsbediening van uw magnetron, wasmachine en televisie.

Wat is een Field Programmable Grid Array?

Een in het veld programmeerbare gate of grid-array is iets ingewikkelder dan een microcontroller. Meestal is een chip voorgeprogrammeerd. Als gebruiker kun je software wijzigen, maar niet Dit brengt ons bij het bepalende element van een FPGA:u, de gebruiker, kunt de hardware configureren na aankoop.

Ingenieurs vinden dit vooral handig voor het maken van prototypes van hun eigen toepassingsspecifieke geïntegreerde schakelingen. Intel gebruikt in feite een vorm van FPGA om hun eigen prototypingproces te stroomlijnen. FPGA's zijn ook nuttig omdat de apparaten waarin FPGA's zijn ingebed en kunnen worden gewijzigd zonder dat er geheel nieuwe hardware nodig is.

Volgens het voorbeeld gegeven door "FPGA's voor Dummies", kunnen de voorschriften veranderen om te eisen dat achteruitkijkcamera's van voertuigen sneller werken. Als deze camera's op FPGA's werken, kunnen fabrikanten deze wijziging doorvoeren zonder dure installatie , geheel nieuwe hardware. Ze kunnen de FPGA eenvoudig herprogrammeren in de achteruitkijkcamera van elke auto. Auto's die al op de weg zijn, kunnen worden aangepast in plaats van verouderd te worden.

Hoe werkt het?

FPGA's hebben een "array" van geïntegreerde hardwarecircuits — deze arrays zijn groepen programmeerbare logische blokken. Tijdens de fabricage is een FPGA niet geconfigureerd om een ​​bepaalde functie te hebben. In plaats daarvan kan de gebruiker configureer het en configureer het later opnieuw zoals ze willen.

De gebruiker doet dit met behulp van een hardwarebeschrijvingstaal (HDL). Een FPGA heeft logische blokken, zoals AND en XOR, die de gebruiker kan samenvoegen met interconnects. Moderne FPGA's hebben veel logische poorten en RAM-blokken, zodat ze complexe berekeningen kunnen verwerken. Sommige FPGA's hebben ook analoog-naar-digitaal-converters of digitaal-naar-analoog-converters, vergelijkbaar met veldprogrammeerbare analoge arrays (FPAA's).

Hoe ze op elkaar lijken

Zowel FPGA's als microcontrollers hebben hetzelfde basisdoel:ze zijn beide zo gebouwd dat een fabrikant of eindgebruiker hun functie kan bepalen. Ze voeren beide specifieke toepassingen uit en zijn ingebed in andere apparaten, of het nu een stoplicht of een wasmachine is. Deze veelzijdigheid is de reden waarom je ze overal om je heen kunt vinden. Alles wat we doen is gemakkelijker dankzij deze kleine geïntegreerde schakelingen.

Voor een ongetraind oog zien ze er ongeveer hetzelfde uit. Beide zijn platte, vierkante, kleine chips omgeven door programmeerbare pinnen. Het zijn beide in wezen miniatuurcomputers, geprogrammeerd voor een bepaald doel. Hiervoor Daarom kunnen noch een FPGA, noch een microcontroller dienen als een persoonlijke of desktopcomputer, maar volgen ze opdrachten om één functie op verschillende niveaus van complexiteit uit te voeren.

Basiscomponenten

Deze apparaten hebben verschillende fundamentele overeenkomsten. In feite bestaan ​​ze uit dezelfde basiscomponenten. Een FPGA en een microcontroller zijn beide geïntegreerde schakelingen die werken met computerlogica en binair.

Een geïntegreerde schakeling is een verzameling elektronische schakelingen op één platte chip, die bestaat uit halfgeleidermateriaal — vaak silicium. Het kan berekeningen uitvoeren en gegevens opslaan. Geïntegreerde schakelingen maken gebruik van digitale of analoge technologie — zoals hierboven vermeld, kunnen sommige FPGA's tussen de twee converteren. Digitale technologie maakt gebruik van binaire logica, terwijl analoge technologie een lineaire functie van een invoer bepaalt om een ​​uitvoer te berekenen.

Dit basisconcept, input bepalende output, beschrijft hoe alle computers werken. Digitale technologie omvat een tweewaardig logisch systeem, of binair — één of nul, aan of uit, ja of nee. belangrijk om de basisprincipes van computerlogica te begrijpen bij het programmeren van een microcontroller of een FPGA.

Aanpassing

Bovendien zijn zowel FPGA's als microcontrollers tot op zekere hoogte programmeerbaar na productie - wat betekent dat een fabrikant of eindgebruiker hun functie kan ontwerpen en naar behoefte kan insluiten. Dit is de reden waarom deze apparaten zoveel toepassingen in een breed scala van industrieën.

De mate waarin je een FPGA kunt aanpassen, maakt hem uniek, en daarom zijn deze het handigst voor gecompliceerde, zeer technische toepassingen. Aan de andere kant is een microcontroller beter voor eenvoudigere toepassingen.

Hoe ze anders zijn

Het belangrijkste verschil tussen een FPGA en een microcontroller is het aanpassingsniveau en de complexiteit. Ze variëren ook in prijs en gebruiksgemak. In wezen zorgt een FPGA voor meer maatwerk en complexere processen, zoals evenals retroactieve wijzigingen aan hardware. Een gebruiker heeft meer vaardigheden en kennis nodig om een ​​FPGA te gebruiken.

Hoewel FPGA's hun voordelen hebben, kosten microcontrollers minder en zijn ze gemakkelijker te gebruiken. De meeste hobbyisten of beginners zouden baat hebben bij de aanschaf van microcontrollers, terwijl technische bedrijven en fabrikanten misschien de voorkeur geven aan FPGA's.

Microcontrollers

De bepalende kenmerken van microcontrollers zijn onder meer:

  • Ze zijn gemakkelijk te gebruiken: Iedereen met een basiskennis van coderen kan een microcontroller programmeren. Je kunt een microcontroller programmeren met behulp van een assembleertaal zoals Javascript of Python, die je jezelf kunt aanleren via online cursussen.
  • Ze zijn betaalbaar: Omdat ze eenvoudiger in massaproductie kunnen worden geproduceerd, zijn de initiële kosten lager voor een microcontroller dan voor een FPGA.
  • Ze zijn niet altijd ideaal voor complexe toepassingen: De speciale processor van een microcontroller verwerkt alle in- en uitgangen. Als gevolg hiervan kunnen knelpunten optreden omdat processen moeten wachten tot anderen zijn opgelost. Omdat ze geen parallelle functies toestaan, zijn microcontrollers beter voor eenvoudigere doeleinden.
  • Ze zijn ideaal voor eenvoudige toepassingen: Denk aan je wasmachine. Nadat je je kleding hebt aangetrokken, pas je twee of drie instellingen aan en druk je op start. Op dezelfde manier hoeft uw computermuis maar een paar invoer te interpreteren - omhoog scrollen, omlaag scrollen, links klikken en rechts klikken. Voor eenvoudige, onveranderlijke toepassingen zoals deze is een microcontroller ideaal.

FPGA's

Enkele bepalende kenmerken van FPGA's zijn:

  • Ze vereisen meer vaardigheid om te gebruiken: Je hebt meer nodig dan een basiskennis van codeertaal om een ​​FPGA te programmeren. Naast kennis van een codeertaal, moet u grote hoeveelheden variabelen kunnen bijhouden. U moet ook een hardwarebeschrijvingstaal begrijpen. Het ontwerpen en opnieuw ontwerpen van hardware is geen taak voor beginners.
  • Ze zorgen voor meer parallellisme: Een FPGA heeft duizenden logische blokken, die je allemaal kunt programmeren. U kunt processen onafhankelijk van elkaar maken, waardoor knelpunten worden verminderd zoals bij microcontrollers.
  • Ze zorgen voor een hoger niveau van maatwerk: Simpel gezegd, als je weet wat je doet, kun je veel meer doen met een FPGA dan met een microcontroller. Als je iets ingewikkelds wilt programmeren, heb je meer aanpasbaarheid nodig dan een microcontroller biedt.
  • Ze kosten meestal meer:​​ Een nadeel van FPGA's is dat ze doorgaans duurder zijn dan microcontrollers. Ondanks hogere initiële kosten, kunnen ze geld besparen voor industrieën die mogelijk met terugwerkende kracht wijzigingen moeten doorvoeren, denk aan het voorbeeld van de achteruitkijkcamera.
  • Ze zijn ideaal voor complexere toepassingen: Omdat FPGA's parallelle processen mogelijk maken, kunt u met een FPGA meer inputs implementeren dan met een microcontroller, zonder dat u tegen een bottleneck aanloopt. Dit maakt ze ideaal voor complexere operaties.
  • Ze maken latere wijzigingen mogelijk: Een van de grootste voordelen van een FPGA is dat de hardware zelf kan worden gewijzigd na de eerste programmering. Om deze reden kunt u de functie van een apparaat wijzigen zonder de hardware volledig te vervangen. Dit is op de lange termijn kosteneffectiever, vooral voor massaproducerende industrieën.

Moet ik een microcontroller of een FPGA gebruiken in mijn printplaat (PCB)?

Een printplaat brengt een schematische tekening tot leven. Hoe meer geleidende lagen het bord heeft, hoe meer verbindingen je kunt maken. Een vierlaags bord heeft vier geleidende lagen, met isolerende lagen Het assembleren van een PCB vereist behoorlijk wat technische kennis, dus lees het jargon als u er voor de eerste keer een assembleert. U kunt ervoor kiezen om te vertrouwen op een professionele PCB-productieservice of PCB-leverancier.

Of u een microcontroller of een FPGA in uw PCB gebruikt, hangt af van verschillende factoren, waaronder:

  • Het noodzakelijke niveau van complexiteit.
  • Uw expertiseniveau.
  • Uw budget, vooral als u groot moet inkopen.
  • Wijzigingen met terugwerkende kracht die u mogelijk moet aanbrengen.

Het noodzakelijke niveau van complexiteit

FPGA's kunnen meerdere regels code tegelijk uitvoeren, wat onafhankelijke, parallelle processen mogelijk maakt. Voor zeer geavanceerde toepassingen is deze mogelijkheid een noodzaak. Een FPGA kan meer gecompliceerde invoer aan en kan gelijktijdige bewerkingen uitvoeren Het nadeel is dat FPGA's perfecte timing en nauwkeurigheid vereisen om goed te kunnen functioneren. Een klein foutje kan het hele systeem onbruikbaar maken.

Daarentegen lezen microcontrollers slechts één regel code tegelijk en verwerken ze opdrachten in volgorde. Hoewel dit tot knelpunten kan leiden, heeft het zijn voordelen. Omdat ze minder gecompliceerd zijn, microcontrollers zijn gemakkelijker te programmeren en te herprogrammeren met behulp van een trial-and-error-methode. Voor eenvoudige toepassingen kan een FPGA ingewikkelder zijn dan nodig, en het kan het programmeren moeilijker maken dan nodig is.

Als er een fout wordt gemaakt bij het programmeren van een FPGA, zijn reparaties veel complexer. Dit brengt ons bij ons volgende punt, namelijk dat uw keuze tussen een FPGA versus een microcontroller nodig zal zijn afhankelijk van uw expertiseniveau.

Uw expertiseniveau

In eenvoudige bewoordingen is een FPGA niet de juiste keuze voor een beginner. Het leren van hardwarebeschrijvingstalen kost meer tijd en ervaring dan assembleertalen. Een hoger niveau van maatwerk betekent dat er meer vaardigheden vereist zijn. Als je veel ervaring hebt met computerengineering, biedt een FPGA je een aantrekkelijk niveau van aanpasbaarheid.

Uw budget

Houd er rekening mee dat FPGA's doorgaans duurder zijn in hun initiële kosten dan microcontrollers. Als u iets eenvoudigs wilt programmeren, zoals een automatisch dimmend licht of een temperatuursensor, kan een relatief kosteneffectieve microcontroller is misschien de betere optie.

Hoewel de initiële kosten hoger zijn, kunnen FPGA's later de kosten verlagen, vooral bij in massa geproduceerde objecten die mogelijk moeten worden gewijzigd na de oorspronkelijke montage.

Uw behoefte aan wijziging met terugwerkende kracht

Om allerlei redenen kan het zijn dat u de hardware van uw toepassing moet wijzigen. In dat geval zult u blij zijn met een FPGA. Dit is een van de redenen waarom zoveel industrieën geven de voorkeur aan FPGA's. Wanneer wetten, normen, voorschriften of behoeften veranderen, is het veel minder duur en tijdrovend om bestaande FPGA's aan te passen in plaats van geheel nieuwe hardwaresystemen te implementeren.

Meer informatie door contact op te nemen met Millennium Circuits

Zowel FPGA's als microcontrollers zijn waardevol voor een breed scala aan doeleinden. Door hun veelzijdigheid zijn ze geschikt voor duizenden toepassingen, waarvan we er enkele elke dag gebruiken. Het zal helpen om de overeenkomsten en verschillen tussen beide te begrijpen. u bepaalt wat de beste optie is voor uw doeleinden.

Hoewel ze uit dezelfde basiscomponenten bestaan, verschillen ze in mate van aanpassing, complexiteit, prijs en vereist niveau van expertise. De keuze voor de een boven de ander moet van meerdere factoren afhangen. Elk oplossing heeft unieke voordelen en mogelijke nadelen.

Of u nu een doe-het-zelf-project ontwerpt, een prototype voor een nieuw product maakt of een technisch proces wilt stroomlijnen, een van deze geïntegreerde schakelingen zal ongetwijfeld nuttig zijn. Als u vragen heeft over FPGA- of microcontrollertechnologie die wordt gebruikt op kale PCB's, neem dan contact op met de experts van Millennium Circuits Limited voor meer informatie.


Industriële technologie

  1. Thermoplastische versus thermohardende materialen:wat is het verschil?
  2. Wielen versus zwenkwielen:wat is het verschil?
  3. O-ringen versus pakkingen:wat is het verschil?
  4. IJzer versus staal:wat is het verschil?
  5. Frezen versus slijpen:wat is het verschil?
  6. Wasringen versus pakkingen:wat is het verschil?
  7. Mal en armatuur:wat is het verschil?
  8. DC versus AC-motor:wat is het verschil?
  9. EAM versus CMMS:wat is het verschil?
  10. Wat is het verschil:branddetectie, bescherming en bestrijding?
  11. Through-Hole versus Surface Mount:wat is het verschil?