Cortex-M di ARM

Un breve articolo sui Cortex-M le loro differenze, ed una guida a come scegliere!

Le differenze tra i modelli di Cortex-M

Prima di tutto un po' di storia. Il primo modello di Cortex-M rilasciato da ARM è stato il Cortex-M3 nel 2004. A seguire arrivarono i Cortex-M4 ed i Cortex-M0+ nel 2010, e nel 2014 il top della gamma: il Cortex-M7

Collocazione dei Cortex-M nel mercato.

La ARM colloca i Cortex-M in due fasce principali: "8/16 bit Traditional application space" e "16/32 Traditional application space".
Nella prima area, quella delle applicazioni 8/16 bit, colloca i Cortex-M0 e Cortex-M0+, che come vedremo di seguito, sono effettivamente "low cost" e "low power" destinati quindi al mercato dei grandi volumi ed in sostituzione delle MCU ad 8bit.
I Cortex-M3,M4 ed M7 riempiono invece la fascia delle applicazioni 16/32, ma con una cosa distinzione in più: per i Cortex-M4 ed M7 ARM introduce la "Digital Signal Control application space". Un'area in cui queste MCU, pur non essendo DSP veri, possono essere usate per compiti di Digital Signal Processing (DSP) con estrema versatilità. Questi due modelli di Cortex possono vantare un'ampia varietà di interfacce di vario tipo, dall'Audio alle comunicazioni: QSPI, Fast Ethernet e HS USB, o specifiche per LCD, RAM o FLASH esterne. Il Cortex-M7 in particolare, ha al suo interno tecnologie del tutto simili alla famiglia Cortex-A.

Comparazione tra i vari Cortex-M.

Una tra le principali differenze tra i Cortex-M riguarda il set di istruzioni.
Il Cortex-M0 ha un piccolo subset delle istruzioni del Cortex-M3, che a sua volta è un subset dei Cortex-M4 ed M7.
Un set di istruzioni ridotto si traduce per il compilatore, che sta convertendo il nostro programma in C, in unsa serie più lunga di istruzioni assembler. E quindi più tempo a svolgere e portare a termine un determinato task.

Clemente Di Caprio (Sviluppo firmware)
Network administrator, Microcontroller fanatic, Embedded developer enthusiast, Boards Collector.
https://github.com/cledic
http://embeddednotes.org
https://www.youtube.com/results?search_query=cledic64