the” terrible ” 3 cent MCU – a short survey of sub $0.10 microcontrollers.

net als vele anderen was ik nogal verbaasd over een microcontroller die vorig jaar voor slechts 0,03 USD werd verkocht via de EEVblog. Hoe was dit mogelijk? Velen gingen ervan uit dat dit een brandverkoop van een oud product was. Een beetje verder graven, werd het duidelijk dat er een hele marktsegment van ultra-low-cost microcontrollers. Bijna allemaal zijn ze producten van vrij onbekende bedrijven uit China of Taiwan. Dit schrijven vat mijn bevindingen in deze nogal eigenaardige niche.

we hebben al geleerd dat er een grote verscheidenheid aan zeer krachtige $1.00 microcontrollers is, maar hoe zit het met de $0.10 MCU? Zijn ze inderdaad allemaal “verschrikkelijk”, zoals elders gesuggereerd?

methodologie

hoe definieer ik een $0.10 microcontroller? Hoe je het ook zegt, het zal een enigszins willekeurige keuze zijn. Ik nam een eenvoudige aanpak en gebruikte de prijs van de 100pc beugel bij LCSC. Zes leveranciers werden geïdentificeerd die een of meerdere apparaten hadden onder $ 0,10, allemaal uit Azië. Als er verschillende pakketten van dezelfde MCU beschikbaar waren, koos ik de SOP8 versie. Sommige fabrikanten hadden meer dan één kandidaat, dus moest ik mezelf beperken tot representatieve apparaten voor een laatste kandidaatlijst van acht.

Ik kon geen sub $0,10 MCU vinden bij de grote distributeurs zoals edigikey of Mouser. Om het voor de hand liggende te stellen: dit betekent niet noodzakelijkerwijs dat het onmogelijk is om sub $0,10 MCU ‘ s te vinden van westerse fabrikanten met de juiste ordergrootte. Twee factoren lijken hierbij een rol te spelen: Ten eerste lijkt Lcsc veel kleinere marges te hanteren dan de gevestigde distributeurs.Ten tweede zijn de gevestigde MCU-fabrikanten niet zo afhankelijk van kleine afnemers en kunnen zij daarom een premie op bestellingen met een laag volume aanvragen.

door gebrek aan programmeertools en evaluatieborden was ik alleen in staat om de meeste apparaten door middel van datasheet te bekijken, met uitzondering van de Padauk MCU ‘ s.

overzicht

in totaal werden acht kandidaten van zes verschillende fabrikanten geïdentificeerd. Een overzicht van de apparaten is te vinden in de onderstaande tabel.

Er zijn enkele duidelijke overeenkomsten: Alle apparaten zijn ontworpen rond een accumulator gebaseerde architectuur, ontegenzeggelijk geïnspireerd door de Microchip PIC12 serie. Interessant, met alleen MDT als uitzondering, alle leveranciers uitgebreid en aangepast hun ontwerpen van het origineel. De reden hiervoor is waarschijnlijk tweeledig: ten eerste willen ze juridische problemen met Microchip vermijden en ten tweede is de PIC12 zelf zeer beperkt. Sommige van de belangrijkste tekortkomingen worden aangepakt, zoals een gebrek aan interrupts, adresseerbare ruimte van JMP/CALL, bankieren van geheugen/IO en ernstig gebrek aan periferie.

helaas deelt geen van de leveranciers openlijk details zoals instructiecodering of geheugenalgoritmen. De ontwikkeling voor alle apparaten moet beginnen via door de leverancier verstrekte IDEs. Met uitzondering van Holtek zijn alle apparaten afhankelijk van een hoogspanningsprogrammeerinterface en programmeren ze niet gemakkelijk in-circuit. Alleen Padauk en Holtek bieden apparaten aan die meerdere keren geprogrammeerd kunnen worden.

samenvatting van mijn bevindingen. PDF-versie hier.

individuele bevindingen

Bojuxing Industrial

De BJ8P509F, geprijsd op $0,0466, is een enigszins verbeterde versie van de PIC12C509. De instructieset wordt uitgebreid van 12 bit naar 13 bit. Dit zorgt voor JMP-instructies die het hele geheugen kunnen adresseren. Daarnaast werden interrupt mogelijkheden en een uitgebreide HW stack toegevoegd.

een Engels datasheet is beschikbaar en ziet er uitgebreid genoeg uit om met het apparaat te werken. Helaas is de vendor website en IDE documentatie alleen beschikbaar in het Chinees.eastsoft Micro

Eastsoft Micro

Eastsoft Micro heeft een uitgebreide portfolio van Pic-afgeleide microcontrollers. Ze noemen hun smaak van de architectuur “HR7P RISC”. Het is een uitgebreide accumulator gebaseerde architectuur met interrupt mogelijkheden, 8 level stack en niet-bankgeschakelde toegang tot het geheugen en I/O.

er is één apparaat in de sub $0,10 ruimte beschikbaar, De HR7P153P45SA. Opvallende kenmerken zijn de beschikbaarheid van een 12 BitADC, een lage snelheid oscillator voor een lager vermogen en de toevoeging van twee timers met PWM-mogelijkheid.

helaas lijken zowel de website als datasheets alleen in het Chinees beschikbaar te zijn.

Holtek

Holtek is een gevestigde Microcontroller leverancier uit Taiwan. Hun binnenkomst in deze categorie, de HT68F001,is een beetje vreemd: het is een vrij beperkt apparaat met slechts 512 woorden programmaflitser en 16 bytes RAM. De architectuur is zeer vergelijkbaar met thePIC12 en kan alleen worden geklokt vanuit een interne 32 kHz oscillator. Aangezien elke instructie 4 cycli vergt om uit te voeren, resulteert dit in slechts 8000 instructiesper seconde! Het lijkt erop dat dit apparaat is gericht ultra-laag vermogen applicaties die zeer lage complexiteit eisen.

deze MCU wordt geleverd met uitstekende documentatie. Dit omvat hun website, datasheets, application notes en IDE. Het is ook het enige apparaat om lage voltage flash programmering aan te bieden. Hierdoor onderscheidt Holtek zich enigszins van de rest van het veld.

gezien de beperkte functionaliteit van hun entry lijkt het er echter op dat het ultra-low-cost segment geen prioriteit is voor Holtek.

Padauk

Het is zeer duidelijk dat de sub $0.10 MCUmarket Padauks home turf is. Ze hebben tientallen producten in deze prijsklasse,met een breed scala aan functies en pakkettypes.

alle apparaten zijn gebaseerd op de PADAUKS MCU-architectuur, die aanzienlijk is uitgebreid over die van de PIC12: het gebruikt gescheiden I/O-en SRAM-geheugengebieden en maakt het mogelijk om het volledige bereik aan te pakken zonder te bankieren. In tegenstelling tot alle andere apparaten, is de stack geheugen toegewezen. De meeste instructies worden uitgevoerd in een enkele cyclus.

een interessant en zeer uniek aspect is dat de padauks-architectuur is gericht op synchrone multithreading, waardoor meer dan één programma parallel op dezelfde MCU-kern kan worden uitgevoerd met behulp van een time-slicing-schema. Ze noemen dit concept “Field Programmable Processor Array” (FPPA). Een soortgelijk concept wordt gebruikt in de Xcore architectuur door XMOS. Een nuttige toepassing van multithreading in kleine MCU ‘ s is het creëren van virtuele periferie, bijvoorbeeld UART, I2C, die parallel met het hoofdprogramma wordt bediend.

Ik koos drie representatieve producten in een SOP8-verpakking: De PMS150C, de PFS154 en de PFS173. Al deze hebben slechts één FPPA-eenheid en ondersteunen daarom geen multithreading.

De PMS150C is hun laagste kosten aanbieding op $0,033, de originele “3 cent MCU”. Dit apparaat wordt geleverd met 1 kiloword eenmalig programmeerbaar geheugen en 64 bytes RAM. De periferie is met name uitgebreid over veel van de concurrerende onderdelen, Het aanbieden van een 16 Bit timer, een 8 Bit timer met PWM, LF oscillator en een analoge comparator met 4 Bit referentiespanning DAC die kan worden gebruikt om eenvoudige ADC-functionaliteit te implementeren. Dit alles is voldoende om eenvoudige sensor-en besturingsfuncties te implementeren.

De PFS154 kost bijna twee keer zoveel. Echter, in tegenstelling tot de PMS150 biedt het 2kw flash-geheugen en kan meerdere keren worden geprogrammeerd, wat veel handiger is voor de werkelijke ontwikkeling. De omtrek is uitgebreid met 3×11 bit PWM units, die er goed uitzien geschikt om RGB LED ‘ s te besturen.

ten slotte is de PFS173 een stapsgewijze verbetering ten opzichte van de PFS154, waarbij een 8-bit ADC wordt toegevoegd en flash wordt uitgebreid naar 3kilowords en RAM naar 256 bytes.

Padauk biedt een IDE die de ontwikkeling in Assembler ondersteunt en een enigszins cryptisch dialect van C (“Mini-C”). Ze bieden uitstekende datasheets in zowel het Engels en Chinees als een tweetalige website. Programmeren van de apparaten gebeurt via een 5-of 6-draads hoogspanningsprotocol, wat in-circuit programmeren uitdagend maakt.

Open source toolchain

na de discussie over EEVblog is er een kleine community ontstaan rond de padauk MCU met als doel een open source toolchain voor het apparaat te creëren. De meeste activiteiten worden behandeld in deze draad.

vanaf vandaag (augustus 2019) werd reverse engineering voltooid, werd het programmeerprotocol gedocumenteerd, werd een open hardwareprogrammeur ontwikkeld en werd ondersteuning voor verschillende smaken van de PDK-architectuur geïntegreerd in SDCC. Ontwikkeling voor alle eerder genoemde Padauk MCU ‘ s is nu mogelijk met behulp van een volledig open toolchain.

Puolop

Puolop is een in Shenzhen gevestigde Chinese leverancier van microcontrollers en verschillende gemengde signaalcircuits. Ze lijken te bieden een breed scala van relabeled Padauk MCU ‘ s, met name de oudere OTP-versie.

bijvoorbeeld, de Puolop PTB150CSE lijkt identiek te zijn aan de Padauk PMS150C. hun prijs is iets lager dan het origineel ($0,0315 vs $0,334). Het is niet duidelijk wat de relatie tussen Puolop en Padauk is, maar het lijkt erop dat Padauk optreedt als leverancier van Puolop.

de website van het bedrijf en alle documentatie zijn alleen beschikbaar in het Chinees.

Er lijkt geen specifieke reden te zijn om Puolop MCU ‘ s boven Padauks te overwegen, anders dan fracties van centen op de prijs te besparen.Yspring Tech / MDT is een in China gevestigd bedrijf dat een breed scala aan apparaten aanbiedt die functioneel compatibel zijn met tegenhangers van Microchip. Het lijkt erop dat het grootste deel van de productportfolio is ontstaan bij MDT tech, een Taiwanese onderneming en kan zijn overgenomen of is in samenwerking met Yspring. Microchip heeft problemen met hun business model in het verleden.

Ysprings naast dit overzicht is de MDT10P509 die verkoopt voor $0,0795. Dit apparaat lijkt een exacte kloon te zijn van de PIC12C509. Hoewel dit nuttig kan zijn als een goedkope vervanging van het oorspronkelijke product, is het duidelijk inferieur aan de andere producten in deze categorie uit een functioneel oogpunt.

De MDT10P509 biedt 1KW OTP geheugen, 41 bytes RAM en slechts een enkele 8 Bit timer als periferie. Net als de PIC12C509 biedt het geen interrupts, slechts EEN 2 niveau HW stack en neemt 4 klokken per instructie

conclusies

zijn deze microcontrollers inderdaad “verschrikkelijk”? Dat is zeker een kwestie van perspectief. Ze hebben betrekking op een specifieke categorie van goedkope, grote, niet-bruikbare producten met beperkte functionaliteit. U moet wachten op een druk op de knop en dan laat een LED knipperen precies vijf keer? Moet u een nachtlampje op batterijen bedienen? De sub $ 0,10 MCU is uw vriend om BOM te verminderen en verkorten ontwikkelingstijd.

een waarschuwing is dat de ontwikkeling voor de meeste van deze apparaten vrij lastig is vanwege de beperkte beschikbaarheid van flash-varianten en het gebrek aan in-service programmeren. Debugging wordt meestal alleen aangeboden via In circuit emulators.

Geef een antwoord

Het e-mailadres wordt niet gepubliceerd.