Być może rok temu istniała znacząca różnica między najniższymi 8-bitowymi gorzkami a najtańszymi 32-bitowymi mikrokontrolerami. Już nie tak.
Na podstawie cen hurtowych Digi-Key można uzyskać 8-bitowy PIC10F200 dla 35ȼ w 2500 ilościach w pakiecie SOT-23-6. Otrzymasz 32-bitowy CY8C4013SXI-400 (ARM Cortex-M0) za 36ȼ w 2500 ilościach w pakiecie SOIC-8. (Ceny hurtowe Digi-Key nie są realistyczne pod względem tego, co faktycznie płacą producenci, co prawdopodobnie jest znacznie niższe, ale myślę, że warto zastosować przybliżone porównanie cen różnych produktów dla podobnych ilości).
Więc OP ma rację, są zbieżne.
Dlaczego więc 32-bitowe układy nie są częściej używane? Cóż, jak powiedziałem w pierwszym akapicie, ten punkt cenowy i parytet wielkości wystąpiły dopiero w ostatnim roku lub 18 miesiącach. I wciąż mają przed sobą długą drogę, zanim będzie wystarczająco dużo żetonów, aby być konkurencyjnym.
Z 6875 układów ARM dostępnych w Digi-Key, są tylko cztery w magazynie z wyceną ilości poniżej dolara. Cztery . Tymczasem inżynierowie mogą wybierać spośród setek 8-bitowych układów za dolara.
Ale powiedzmy, że dostępnych było co najmniej kilkadziesiąt 32-bitowych mikrów z niższej półki. Czy byłyby automatycznie wybierane spośród tych 8-bitowych?
Przede wszystkim musisz uświadomić ich inżynierom. Zawsze istnieje duży opór przed zmianami. Nowe rzeczy do nauczenia - ze sprzętowego punktu widzenia, nauczenie się, jak włączyć nowy układ do obwodu. Pojawiły się nowe narzędzia, takie jak programatory w obwodzie, nowe kompilatory itp. Dla inżynierów oprogramowania układowego uczenie się korzystania z zupełnie nowego zestawu urządzeń peryferyjnych i timerów (głównie układów rejestrów i znaczeń bitowych).
32-bitowe jest fajne i tak dalej, ale o ile nie trzeba wykonywać dużo ciężkich obliczeń, jaki jest sens? Jeśli masz tylko cztery piny GPIO, dostęp do nich wewnętrznie jako rejestr 32-bitowy nie daje przewagi nad użyciem rejestru 8-bitowego.
Myślę, że zużycie energii zawsze będzie sprzyjać 8-bitowym mikrom.
Na przykład PIC10F200 pobiera 175 µA pracując przy 4 MHz i 2 V oraz 100 nA w trybie uśpienia. CY8C4013SXI-400 pobiera około 800 µA przy 4 MHz i 2 V i 1 μA w trybie uśpienia. (Arkusz danych dla CY8C4013SXI nie miał liczb ani dla 4 MHz, ani 2v, więc musiałem dokonać pewnych oszacowań - arkusz danych mówi, że pobiera 2 ma @ 6 MHz i 3,3 v.)
Tak więc ARM pobiera 4,5 razy więcej prądu po przebudzeniu i 10 razy podczas snu. Nie wydaje się to dużo, ale jest to różnica między uruchomieniem komórki na monety przez 3 miesiące lub przez rok. (Zakładam, że oba mikrokontrolery przeważnie wykonują synchronizację, aktualizują porty itp. I nie wykonują naprawdę ciężkich obliczeń. W takim przypadku 8-bitowa mikroprocesor musi wykonywać wiele arytmetyki wielobajtowej przez dłuższy czas czasu traci część swojej przewagi).
Interesujące jest to, że ARM pobiera około czterokrotnie więcej prądu niż 8-gorzki, a to z kolei ma wewnętrzne rejestry i ścieżki danych, które są czterokrotnie szersze. Nie sądzę, że to zbieg okoliczności. W przypadku CMOS zużycie energii jest w przybliżeniu proporcjonalne do liczby przełączanych tranzystorów, a ARM oczywiście robi znacznie więcej na wykonaną instrukcję.
Ponieważ coraz więcej dostawców ARM wprowadza na rynek chipy niskiej jakości, nie zdziwiłbym się, gdyby tacy dostawcy jak Microchip jeszcze bardziej obniżyli swoje ceny. W każdym razie, przy cenach mniej więcej równych, podobnych rozmiarach, ale o wiele mniej 32-bitowych układów do wyboru, myślę, że 8-bitowe mikrokontrolery będą jeszcze przez jakiś czas - szczególnie dlatego, że masz zapoznało się z nimi dziesiątki tysięcy inżynierów.