Izbor između mikroprocesora (MPU) i mikrokontrolera (MCU) je osnovni izbor sistema. Oba imaju CPU, ali su napravljeni za različite poslove. MPU-ovi se fokusiraju na visoke performanse i često zahtevaju dodatnu memoriju i čipove za podršku. MCU-ovi kombinuju CPU, memoriju i zajednički I / O u jedan čip za kontrolne zadatke i malu snagu. Ovaj članak jasno razbija detalje.

Šta su mikroprocesori i mikrokontroleri?
Mikroprocesor je CPU-samo čip koji obavlja obradu podataka i izvršava instrukcije, ali zavisi od eksterne memorije i ulazno/izlaznih uređaja za rad. Obično se koristi u složenim sistemima koji zahtevaju veliku računarsku snagu, veliku memoriju i operativne sisteme kao što je Linuk.
Mikrokontroler, nasuprot tome, integriše CPU, memoriju, ulazne / izlazne portove, tajmere i često analogne funkcije u jedan čip. Ovaj samostalni dizajn čini ga idealnim za namenske zadatke kontrole, rad u realnom vremenu i nisku potrošnju energije.
Ukratko, mikroprocesori su napravljeni za performanse i fleksibilno proširenje sistema, dok su mikrokontroleri dizajnirani za kompaktne, efikasne ugrađene kontrolne aplikacije.
KSNUMKS. Mikroprocesor vs mikrokontroler: unutrašnja arhitektura

Arhitektura mikrokontrolera
Mikrokontroler ima glavne delove koji su mu potrebni ugrađeni u jedan čip, kao što su:
• CPU jezgro
• Ugrađena Flash memorija za programe
• Ugrađeni SRAM za podatke
• GPIO pinovi, tajmeri, ADC, UART, SPI, i I²C
• Kontroler prekida
Arhitektura mikroprocesora
Mikroprocesor se više fokusira na jaku obradu i blisko sarađuje sa spoljnim delovima. To uključuje:
• CPU jezgro, ponekad sa više od jednog jezgra
• Nekoliko nivoa keš memorije
• Eksterni memorijski kontroler
Sistemske komponente za sistem zasnovan na mikroprocesoru
Sistem izgrađen oko mikroprocesora treba dodatne čipove, kao što su:
• Eksterni DRAM za glavnu memoriju
• Eksterno neisparljivo skladištenje
• Upravljanje napajanjem IC
• Dodatna kola podrške
Arhitektura memorije i ponašanje pokretanja
Način na koji je memorija raspoređena utiče na to kako se sistem pokreće i radi. Većina mikrokontrolera čita i pokreće kod direktno iz internog Flash-a. Ovo omogućava brzo pokretanje i direktniji put od resetovanja do pokretanja programa.
Mikroprocesori počinju učitavanjem koda iz spoljne memorije preko jednog ili više bootloadera. Nakon toga, oni pokreću aplikacije sa eksternog DRAM-a. Ovo obezbeđuje mnogo više memorije i napredniji softver, ali takođe dodaje više koraka tokom pokretanja.
KSNUMKS Modeli instrukcija i arhitekture podataka
Mnogi mikrokontroleri prate dizajn u stilu Harvarda, razdvajajući instrukcije i puteve podataka. Mnogi mikroprocesori koriste jedinstveni model memorije, gde instrukcije i podaci dele isti memorijski prostor.
KSNUMKS. Performanse i ponašanje: Mikroprocesor protiv mikrokontrolera

Mikrokontroleri (MCU) su pogodni za zadatke kao što su:
• Kontrola motora
• Uzorkovanje senzora
• Kontrolni sistemi zatvorene petlje
• Rukovanje prekidima niske latencije
• Kontinuirana ugrađena logika
Mikroprocesori (MPU) su bolje usklađeni sa zadacima kao što su:
• Složeni aplikativni softver
• Multimedijalna obrada
• Rukovanje velikim podacima
• Grafički korisnički interfejsi
• Platforme za umrežavanje
Složenost napajanja i dizajna sistema

Mikrokontrolerski sistemi
Mikrokontrolerski sistemi su jednostavniji i troše manje energije. Oni često rade od jednog ili nekoliko naponskih šina i podržavaju duboke režime spavanja sa veoma niskom strujom pripravnosti. Sekvenciranje snage je jednostavno, što pomaže da se dizajn napajanja lakše upravlja.
Mikroprocesorski sistemi
Mikroprocesorski sistemi su složeniji i imaju veću snagu. Oni često koriste više naponskih domena za jezgro, memoriju i I / O, i moraju da napajaju eksterni DRAM. IC za upravljanje napajanjem pomaže u koordinaciji ovih šina, a odbor mora podržati kontrolisano usmeravanje impedanse za brze memorijske signale.
Razmatranja troškova sistema
Ukupni troškovi sistema premašuju troškove procesora. Mikrokontroleri mogu smanjiti troškove smanjenjem broja eksternih memorijskih delova, broja slojeva PCB-a, logike lepka i strujnih kola. Mikroprocesori često zahtevaju eksterni DRAM, eksterni Flash, PMIC, i složeniji PCB raspored, što može povećati troškove sistema.
Softverski modeli u mikroprocesorima i mikrokontrolerima
| Aspekt | MCU softverski model | MPU Softverski model |
|---|---|---|
| Glavni tip softvera | MCU-ovi pokreću bare-metal firmver ili stvarni operativni sistem (RTOS). | MPU-ovi pokreću kompletne operativne sisteme kao što su Linuk, Android ili slične platforme. |
| Ponašanje pokretanja | Ovo podešavanje daje brzo pokretanje i kratak put od resetovanja do pokretanja glavnog koda. | Boot traje duže, jer sistem mora da učita operativni sistem pre aplikacija. |
| Pristup hardveru | Firmvare može kontrolisati hardver direktno sa jednostavnim, predvidljivim putevima. | Operativni sistem upravlja hardverom, a programi mu pristupaju preko OS usluga. |
| Korišćenje resursa | Softver je napisan tako da odgovara uskim granicama memorije i procesorske snage. | Više memorije i CPU prostora za glavu podržavaju veće programe i složenije funkcije. |
| Ugrađene funkcije | Ovaj model podržava brzo pokretanje, direktnu kontrolu hardvera i pažljivo korišćenje resursa. | Ovaj model omogućava datotečne sisteme, mrežne okvire, aplikativne slojeve i bogate interfejse. |
Periferije, povezivanje i I / O razlike

MCU I / O i povezivanje
• Često uključuju blokove mešovitog signala kao što su ADC, DAC, komparatori, PVM jedinice i osnovni op-amperi.
• Obezbedite standardne digitalne interfejse male brzine kao što su I²C, SPI, UART, CAN i LIN.
• Uključite osnovnu USB podršku i stvarne I/O pinove za direktnu kontrolu nivoa pinova.
MPU I / O i povezivanje
• Fokusirajte se na interfejse velike brzine, uključujući eksterne DRAM sabirnice i USB velike brzine.
• Podržava napredne sistemske veze kao što su PCIe, Gigabit Ethernet i brzi ekran ili interfejsi kamere kao što je MIPI.
• Oslanjajte se na eksterne čipove za većinu analognih funkcija i mnoge specijalizovane I/O funkcije.
Sigurnost, sigurnost i pouzdanost u MCU-ima i MPU-ovima
Mikrokontroleri često uključuju ugrađene sigurnosne blokove kao što su sigurno pokretanje, zaštita od čitanja koda, kriptografski akceleratori i pouzdano skladištenje. Ove funkcije pomažu u sprečavanju manipulisanja firmverom i štite osetljive informacije koje se nalaze na uređaju.
Mikroprocesori pružaju napredniju zaštitu, uključujući sigurne lance pokretanja, pouzdana okruženja za izvršenje, jaku zaštitu memorije i, u nekim slučajevima, virtuelizaciju. Ove funkcije podržavaju bezbedno rukovanje operativnim sistemima i podacima aplikacija.
Potrebne su i funkcije bezbednosti i pouzdanosti, kao što su tajmeri čuvara, memorija za ispravljanje grešaka i porodice uređaja sa sigurnosnom ocenom. U mnogim projektima, sigurnost, sigurnost i dugoročna pouzdanost mogu biti jednako kritični kao i performanse, snaga ili memorija pri izboru između MCU i MPU.
Brza tabela poređenja: MPU vs MCU
| Sistemski zahtevi | Preporučena arhitektura | Zašto se uklapa |
|---|---|---|
| Dugo trajanje baterije | MCU | Optimizovano za režime niske potrošnje energije i rad u stanju mirovanja |
| Deterministički tajming | MCU | Lakše održavati preciznu kontrolu u realnom vremenu |
| Jednostavan ugrađeni kontroler | MCU | Integriše CPU, memoriju i periferije u jednom čipu |
| Velika memorija (stotine MB ili više) | MPU | Podržava eksterni RAM i velike memorijske prostore |
| Bogat korisnički interfejs ili multimedija | MPU | Pogodniji za grafičku obradu i medijske zadatke |
| Proširiva računarska platforma | MPU | Lakše skaliranje sa naprednim operativnim sistemom i dodatnim funkcijama |
| Potrebna podrška za Linuk | MPU | Dizajniran za pokretanje punih operativnih sistema |
| Stroga kontrola u realnom vremenu | MCU | Predvidljivije vreme prekida i izvršenja |
| Na baterije sa dugim periodima spavanja | MCU | Niža pripravnost i aktivna potrošnja energije |
| Teško umrežavanje i slojeviti softverski stackovi | MPU | Veća procesorska snaga i memorijski resursi |
| Mali PCB i jednostavan hardverski dizajn | MCU | Smanjuje spoljne komponente i složenost rutiranja |
| Očekuje se buduća ekspanzija funkcija | MPU | Podržava složen rast softvera i nadogradnje hardvera |
Zaključak
Mikrokontroleri i mikroprocesori odgovaraju različitim potrebama. MCU-ovi su najbolji kada tajming mora biti predvidljiv, potrošnja energije mora ostati niska, a hardver mora biti kompaktan i jednostavan. MPU-ovi rade bolje za veću memoriju, tešku obradu, čitave operativne sisteme, multimediju i složeno umrežavanje. Razlike uključuju kako se pokreću, kako koriste memoriju, koje periferije podržavaju, koliko snage crpe, koliko složena ploča postaje, i koje bezbednosne funkcije su dostupne. Ove tačke odvajaju kontrolu MCU-stila od računarstva u MPU-stilu.
Često postavljana pitanja [FAK]
K1. Koji je bolji za stvarnu kontrolu: MCU ili MPU?
MCU. MCU-ovi daju predvidljiviji tajming i brži, konzistentniji odgovor na prekid od MPU-a koji pokreću kompletne operativne sisteme.
K2. Može li MPU zameniti MCU?
Ponekad. To može da uradi posao, ali obično treba spoljnu memoriju, koristi više energije, košta više, i dodaje složenost dizajna.
K3. Koji alati se koriste za programiranje MCU-a u odnosu na MPU-ove?
MCU: ugrađeni IDE + C / C ++ toolchain + JTAG / SVD debugger. MPU: cross-kompajler + podešavanje bootloader + Linuk / Android kernel i drajveri.
K4. Da li MPU-ima treba više hlađenja od MCU-a?
Da. MPU-ovi rade toplije i možda će trebati hladnjak ili bolji termalni dizajn PCB-a; MCU-ovi često ne.
K5. Da li je veća brzina takta glavni razlog zašto su MPU-ovi brži?
Ne. MPU-ovi su brži uglavnom zbog keša, većeg propusnog opsega memorije i višejezgrenih / naprednih CPU funkcija, a ne samo brzine takta.
K6. Koji ima bolju dugoročnu dostupnost za industrijske proizvode?
MCU-ovi. MCU-ovi imaju duži životni ciklus proizvoda i dugoročno snabdevanje od mnogih MPU platformi.