- Mikrocontroller og mikroprosessor
- Faktorer du bør vurdere når du velger en MPU eller MCU
- 1. Behandlingskraft
- 2. Grensesnitt
- 3. Minne
- 4. Kraft
- Konklusjon
Hjernen til en innebygd enhet, som er prosesseringsenheten, er en nøkkeldeterminer for enhetens suksess eller fiasko i å utføre oppgaven (e) den er designet for. Behandlingsenheten er ansvarlig for hver prosess som involverer fra inngang til systemet, til den endelige utgangen, og dermed blir valg av riktig plattform for hjernen veldig viktig under utformingen av enheten, da alle andre ting vil avhenge av nøyaktigheten av den beslutningen.
Mikrocontroller og mikroprosessor
Prosesseringskomponentene som brukes til innebygde enheter kan deles inn i to brede kategorier; Mikrokontrollere og mikroprosessorer.
Microcontrollers er små databehandlingsenheter på en enkelt brikke som inneholder en eller flere prosessorkjerner, med minneenheter innebygd sammen med programmerbare spesial- og I / O-porter. De brukes spesielt i applikasjoner der bare spesifikke repetitive oppgaver må utføres. Vi har allerede diskutert om å velge riktig mikrokontroller for dine innebygde prosjekter.
Mikroprosessorer derimot er generelle databehandlingsenheter som inneholder alle funksjonene til sentralbehandlingsenheten på en brikke, men inkluderer ikke periferiutstyr som minne og inngangs- og utgangspinner som mikrokontrolleren.
Selv om produsenter nå endrer mange ting som slører linjen mellom mikrokontrollere og mikroprosessorer som bruk av minne på sjetonger for mikroprosessorer og muligheten til mikrokontrollere å koble til et eksternt minne, eksisterer det fortsatt viktige forskjeller mellom disse komponentene og designeren vil trenger å velge det beste mellom dem for et bestemt prosjekt.
Lær mer om forskjellen mellom mikrokontroller og mikroprosessor.
Faktorer du bør vurdere når du velger en MPU eller MCU
Før du tar en beslutning om retningen for prosesseringsenheten som skal brukes til design av et innebygd produkt, er det viktig å utvikle designspesifikasjonene. Utviklingen av designspesifikasjonene gir en vei for forhåndsdesign av enheter som hjelper til med å identifisere detaljer, problemet som skal løses, hvordan det skal løses, fremhever komponentene som skal brukes og mye mer. Dette hjelper designeren til å ta informerte generelle beslutninger om prosjektet og hjelper med å bestemme hvilken retning du skal reise for prosesseringsenheten.
Noen av faktorene i designspesifikasjonen som må vurderes før du velger mellom en mikrokontroller og en mikroprosessor er beskrevet nedenfor.
1. Behandlingskraft
Behandlingskraft er en av de viktigste (hvis ikke de viktigste) tingene du bør vurdere når du velger mellom en mikrokontroller og en mikroprosessor. Det er en av hovedfaktorene som vippes til mikroprosessorer. Den måles i DMIPS (Dhrystone Million of Instructions Per Seconds) og representerer antall instruksjoner en mikrokontroller eller mikroprosessor kan behandle på et sekund. Det er egentlig en indikasjon på hvor raskt en enhet kan fullføre en oppgave som er tildelt den.
Selv om det å bestemme den nøyaktige beregningskraften som designet ditt krever, kan være en veldig vanskelig oppgave, kan du lage en utdannet gjetning ved å undersøke oppgavene, enheten blir opprettet for å utføre og hva beregningskravene til disse oppgavene kan være. For eksempel vil utviklingen av en enhet som krever bruk av et fullstendig operativsystem innebygd Linux, windows CE eller noe av det andre operativsystemet, kreve en prosessorkraft så høyt som 500 DMIPS, som høres ut som en prosessor? Ja. For å legge til det, vil kjøre et operativsystem på en enhet kreve en minnehåndteringsenhet (MMU) som vil øke den nødvendige prosessorkraften. Enhetsapplikasjoner som involverer mye aritmetikk krever også svært høye DMIPSverdier og jo mer matematikk / numeriske beregninger enheten skal utføre, desto mer vipper designkravene mot bruk av en mikroprosessor på grunn av prosessorkraften som kreves.
En annen hovedimplikasjon av prosessorkraft som påvirker valget mellom mikroprosessorer og mikrokontrollere er kompleksiteten eller enkelheten i ting som brukergrensesnitt. Det er en ønskelig ting i disse dager å ha fargerike og interaktive GUI-er, selv for de mest grunnleggende applikasjonene. De fleste biblioteker som brukes til å lage brukergrensesnitt som QT, krever prosessorkraft så mye som 80 - 100 DMIPS, og jo flere animasjoner, bilder og annet multimediainnhold som skal vises, desto mer kreves prosessorkraften. Imidlertid krever enklere brukergrensesnitt på skjermer med lav oppløsning lite prosessorkraft og kan drives av mikrokontrollere, ettersom ganske mange av disse i dag, kommer med innebygde grensesnitt for å samhandle med forskjellige skjermer.
I tillegg til noen av kjernefunksjonene nevnt ovenfor, er det viktig å reservere litt prosessorkraft for kommunikasjon og annet periferiutstyr. Selv om de fleste eksemplene ovenfor har en tendens til å støtte bruken av mikroprosessorer, er de generelt dyrere sammenlignet med mikrokontrollere og vil være en overkill når de brukes i visse løsninger, for eksempel ved å bruke en 500 DMIPS mikroprosessor for å automatisere en lyspære, vil de totale kostnadene av produktet høyere enn normalt og til slutt kan føre til at det mislykkes i markedet.
2. Grensesnitt
Grensesnittet som skal brukes til å koble til forskjellige elementer i produktet er en av faktorene som skal vurderes før du velger mellom en mikrokontroller og en mikroprosessor. Det er viktig å sikre at prosessorenheten som skal brukes, har grensesnittene som kreves av de andre komponentene.
Fra for eksempel tilkoblings- og kommunikasjonsstandpunkt, har de fleste mikrokontrollere og mikroprosessorer grensesnittene som kreves for å koble til kommunikasjonsenheter, men når det kreves høyhastighets kommunikasjonsutstyr som superhastighets USB 3.0-grensesnitt, flere 10/100 Ethernet-porter eller Gigabit Ethernet-port, ting vippe i retning av mikroprosessoren ettersom grensesnittet som kreves for å støtte disse, vanligvis bare finnes på dem fordi de er mer i stand til å håndtere og behandle de store datamengdene og hastigheten som disse dataene overføres til.
Virkningen av protokollene som brukes for disse grensesnittene på mengden minne som kreves for fastvaren, bør bekreftes ettersom de pleier å øke minnekravene. Det er en generell tommelfingerregel at en mikroprosessorbasert design blir vedtatt for applikasjoner som krever høyhastighetsforbindelse med stor mengde data som utveksles, spesielt når systemet innebærer bruk av et operativsystem.
3. Minne
Disse to databehandlingsenhetene håndterer minne og datalagring forskjellig. Microcontrollers for eksempel kommer med innebygde, faste minneenheter mens mikroprosessorer kommer med grensesnitt som minneenheter kan kobles til. To store implikasjoner av dette er;
Koste
Mikrokontrolleren blir en billigere løsning, siden den ikke krever bruk av en ekstra minneenhet mens mikroprosessoren blir en kostbar løsning å adoptere på grunn av disse tilleggskravene.
Begrenset minne
Det faste minnet på mikrokontrolleren begrenser mengden data som kan lagres på den. Dette er en situasjon som ikke gjelder for prosessorer, siden de vanligvis er koblet til eksterne minneenheter. Et godt eksempel på når denne begrensningen kan være et problem, er når du utvikler fastvare for enheten. Hvis du legger til ekstra kilobyte i kodestørrelsen, kan det hende at en endring i mikrokontrolleren skal brukes, men hvis designet var basert på en prosessor, trenger vi bare å endre minneenheten. Dermed tilbyr mikroprosessorer mer fleksibilitet med minne.
Det er flere andre faktorer basert på minne som skal vurderes, en av dem er oppstartstid (oppstartstid). Mikroprosessorer lagrer for eksempel fastvaren på et eksternt minne (vanligvis et eksternt NAND- eller serielt flashminne) og ved oppstart blir firmwaren lastet inn i prosessoren. Selv om dette skjer innen et par sekunder, er det kanskje ikke ideelt for visse applikasjoner. Den mikrokontroller på den andre tar mindre tid.
Av generelle hastighetshensyn vinner MCU vanligvis på grunn av sin evne til å adressere de mest tidskritiske applikasjonene på grunn av prosessorkjernen som brukes i dem, det faktum at minnet er innebygd og fastvaren som brukes med dem, er alltid enten et RTOS eller bart metall C.
4. Kraft
Et siste poeng å vurdere er strømforbruk. Mens mikroprosessorer har moduser med lav effekt, er disse modusene ikke så mange som de som er tilgjengelige på en typisk MCU, og med eksterne komponenter som kreves av en mikroprosessorbasert design, er det litt mer komplisert å oppnå moduser med lav effekt. Bortsett fra modusene med lavt strømforbruk, er den faktiske mengden strøm som forbrukes av en MCU mye lavere enn hva en mikroprosessor bruker, fordi jo større prosesseringsevne, jo mer kreft kreves for å holde prosessoren i gang.
Mikrokontrollere har derfor en tendens til å finne applikasjoner der det kreves ultra-lav effektbehandlingsenheter, for eksempel fjernkontroller, forbrukerelektronikk og flere smarte enheter der designvekten er på batteriets levetid. De brukes også der det er behov for en svært deterministisk oppførsel.
Mikroprosessorer derimot er ideelle for industri- og forbrukerapplikasjoner som krever et operativsystem, er beregningskrevende og krever høyhastighetsforbindelse eller et brukergrensesnitt med mye medieinformasjon.
Konklusjon
Flere andre faktorer eksisterer og fungerer som avgjørende faktorer for å velge mellom disse to plattformene, og alle faller under ytelse, evne og budsjett, men det samlede utvalget blir lettere når en riktig systemkonstruksjon er på plass og kravene tydelig oppgitt. Mikrokontrollere brukes mest i løsninger med et veldig stramt BOM-budsjett og med strenge strømkrav, mens mikroprosessorer brukes i applikasjoner med enorme beregnings- og ytelseskrav.