Výhoda je to že můžete optimalizovat cenu, pokud paměti nepotřebujete moc. Krom fundamentálních nevýhod jako je nutnost kupovat druhý čip (a další sadu pasivních součástek jako jsou decoupling kontdenzátory), které zabírají další místo na PCB vedle už tak dost velkého čipu, to má i další nevýhody. Velkou nevýhodou je výkon, protože externí flash je sériová (interní je paralelní) a samozřejmě používá jiný interface než vyžaduje systémová sběrnice ARMového jádra (interní je samozřejmě navržena s mnohem vhodnějším rozhraním), takže to není moc efektivní, musí se dělat převod transakcí, atd. Každý přístup do extenrí flash hrozně dlouho blokuje jádro v jakékoliv činnosti (krom nezávsilých jednotek jako je DMA, atd.). Řeší to cache, takže to není moc velký problém, ale může to přinést různá překvapení v determinističnosti aplikace. Pokud je požadavek na determinističnost, tak se to většinou řeší kopírováním kódu do RAM. Tím se všechny problémy vyřeší, ale zase potřebuješ více RAM.
Výkon je dobrý, navíc jádra jsou taktované na vysoké frekvence. Rozdíl mezi jádry je zejména ve funkcionalitách. Nemá to floating point instrukce, DSP instrukce, bezpečnostní instrukce (spojené s TrustZone), atd. Takže jestli něco takového používáš (např. floaty můžou být problém), tak to potenciálně bude pomalejší, ale jinak to zásadní omezení nemá a lze očekávat výkon dostatečný na všechny běžné úlohy. Rozhodně to bude mnohem rychlejší než jakékoliv 8b MCU.
Nějaké detailnější porovnání je na: https://en.wikipedia.org/wiki/ARM_Cortex-M
No, jako jednotlivec si můžete koupit max. 3 kusy na osobu na nějaký divnostránce pochybného vzezření. Jako velkopán máte možnost mezi dodavatelem, na kterého je na stránkách rozbitý odkaz nebo od RS, které prodává jen kotouč po 500 kusech a navíc nejsou skladem, jen předobjednávka. To si to můžou třeba ... s takovou dostupností.
Zasadni problem pro komerci o ktere tam pisou je z toho kdokoliv vycte program, zadne code protection. Leda k tomu davat nejake mini FPGA ktere bude resit sifrovani on-the-fly, ale zase obvod s dalsim napajecim napetim, ... skoda.
Uplne nechapu proc do toho XIP modulu nejde naprogramovat do nejake OTP pameti klic, kterym by se to vscehno sifrovalo, sice to neni idealni reseni, ale...
Je ale otázkou, jestli je nějaký významný překryv mezi cílovou skupinou RP2040 a lidmi, kteří si potřebují chránit know-how natolik, že k tomu musí blokovat přečtení firmware. Podotýkám, že s trochou snahy lze číst firmware i z on-chip paměti v Atmega8 (pojistky jde resetovat ultrafialovým světlem).
Docela často kolem sebe vidím přístroje, u kterých bych nejradši zpatlaný firmware bez náhrady vymazal a naprogramoval znovu, nežiju ale věčně a dělat to nebudu.
Nepamatuju si naopak, že by ve mně něco vzbudilo zvědavost, co ten firmware doopravdy dělá. (Čínské továrny to ale můžou u západního zboží vidět jinak.)
Ja delal nejake video prevodniky a sice tam cinsky asic funguje, ale vyrobce trva na tom, ze oni upecou firmware. Je to i51 mcu, takze to slo disassemblovat, ale bez header souboru co ktery registr dela.. to je marny. Ze namisto binarniho blobu dostanete kod, ktery zapisuje anonymni data na anonymni blok adres, neznamena ze jste jakkoliv otevrel ten FW :-/