L'offerta pubblica iniziale della società, ARM, era simile a quella del settore della progettazione di chip: si prevedeva che avrebbe venduto i propri chip, ma fu costretta a passare a un modello redditizio con circuiti puramente progettati a causa di difficoltà finanziarie. È stato introdotto il core del processore ARM7TDMI (ARM7 + 16 bit Thumb + JTAG Debug + Fast Multiplier + Enhanced ICE), che è stato ampiamente divulgato e la popolarità di ARM e del suo business di prodotto è diventata sempre più popolare.
ARM lanciata dopo nucleo ARM9, ARM10, AMR11, l'ARM7 originale deriva anche da una varietà di versioni per i clienti di scegliere, ARM9 / 10/11 non è diverso. Ma con il tempo e la tecnologia, lo sviluppo di una nuova serie di nucleo risoluzioni ARM, e gradualmente eliminando in aggiunta al nucleo della vecchia licenza.
Nel 2008 ARM Cortex presentato nel nome della nuova serie di nucleo, contenente Cortex-A, Cortex-R, Cortex-M, tre serie esattamente come ARM tre lettere A, R, M. Una serie di fuoco nel processo di applicazione dispositivo (applicazione Processor, AP) mercato, microcontrollori serie M era (microcontroller, MCU) mercato, serie R guarda anche al mercato microcontrollore, ma più enfasi sul tempo reale applicazioni di controllo, come ad esempio apparecchiature di controllo industriale, veicolo elettronica.
Dopo l'introduzione di Cortex-A / R / M, ARM si è riferito alle precedenti serie ARM7 / 9/10/11 come serie Classic e Classic e continua a fornire l'autorizzazione, ma gradualmente si indebolisce e concentrerà i suoi sforzi sulle nuove tecnologie. Architettura di Cortex.
CMSIS tenta di unificare gli standard del software
Con l'introduzione della nuova serie di Cortex, ARM ha anche provato a risolvere alcuni problemi del passato: dopo che molti produttori di chip hanno acquisito l'autorizzazione del nucleo ARM in passato, ARM non ha chiesto come i produttori di chip hanno aggiornato il circuito nel chip, ma non ha chiesto lo sviluppo del software del chip.
Tuttavia, a causa l'industria dei chip frammentato, anche se diverso settore dei chip ad adottare lo stesso nucleo ARM, per controllare il modo in cui i circuiti periferici, lo sviluppo di programmi di scrittura, ecc hanno la loro diversa, anche con anteriori e posteriori tipi del chip di chip sono differenti, la compatibilità, scambio il sesso è basso, il programma non può scrivere e seguire un comune, con conseguente inutili duplicazioni di sviluppo del software, questo rende difficile sviluppare una completa ARM ARM software di base dell'ecologia consecutivo.
ARM ha proposto CMSIS (Cortex microcontrollore Interfaccia software standard) standard (1), ogni tentativo di fornire un riferimento comune per produttori di chip, che adottano core Cortex-M serie di chip, standard di sviluppo software Zoe in questo modo, v'è una maggiore GM, la continuità.
Il bloccato Cortex-M serie di ragioni, serie classica è il best-seller di base popolare ARM7TDMI, il più delle volte questo chip core business è posizionato come un microcontrollore, CMSIS addotti, è auspicabile ridurre la duplicazione di software di sviluppo microcontrollore, è difficile lo scambio, difficile continuare con altri problemi.
Per quanto riguarda il Cortex-A serie è uno sviluppo relativamente nuovo, meno peso, e forti risorse energetiche e hardware di calcolo più abbondante, rispetto a quelli senza ARM7TDMI, problemi di sviluppo software come microcontrollori Cortex-M, ARM sono infatti realizzati nel 2009 dopo mbed, propone Linaro, Lianro cercando di proporre e costruire una comune architettura ARM Linux ecosistema software, il software Linux Cortex-una serie usato per avere uno standard di follow comune, inteso come ridurre la duplicazione di sviluppo la propria strada nel 2010, il cumulativo completare le attività continue di tecnologia software.
Tuttavia, a causa del forte sviluppo e popolarità di Android (root basato su Linux), l'importanza industriale di Linaro è stata ridotta, Cortex-Una serie di importanti software di ecologia è già Android.
Analisi dell'architettura CMSIS
Il CMSIS si riferisce strettamente al termine generale di un'architettura e contiene una serie di componenti software, come CMSIS-CORE, CMSIS-Driver, CMSIS-RTOS, ecc. La parte più elementare è CMSIS-CORE, che definisce la lettera di accesso. Tipo, definizione di interrupt e periferiche, ecc. Tutti gli altri software che desiderano manipolare circuiti core Cortex-M, circuiti periferici centrali o altri circuiti periferici, ecc., Devono superare CMSIS-CORE.
All'esterno CMSIS-CORE altri due fuoco che è CMSIS-driver, CMSIS-RTOS, entrambi i quali sono disponibili API per la chiamata applicazione (Call, l'altro lato detto le chiamate) utilizzando il primo per fornire un coerente driver hardware, metodi di controllo, Quest'ultimo fornisce un metodo di chiamata interattivo coerente tra applicazioni e sistemi operativi in tempo reale.
CMSIS-driver può anche essere ri-definito dal layer chip di astrazione di hardware (Hardware Abstraction Layer, HAL), nonché tramite terzi operatori (terzi) middleware (Middleware, l'altro lato detto middleware) per chiamare da usare; CMSIS-RTOS anche solo nella definizione di standard, il sistema operativo in tempo reale (sistema operativo real-time, RTOS, l'altro lato detto che il sistema operativo in tempo reale) effettivamente svolta elasticamente cambio per disponibili ufficiale ARM può anche essere sostituito da operatori terzi di fornire, purché in linea con CMSIS- specifica RTOS può agevolmente cambia chiesto ufficiale RTX. di ARM, dopo l'acquisizione di ARM Keil fatto.
La maggior parte degli altri software come necessario per adottare, mentre la domanda per il debug CMSIS-SVD (sistema Visualizza descrizione), CMSIS-DAP (Debug porta di accesso). O per le esigenze di elaborazione dei segnali e di elaborazione digitali proposto CMSIS-DSP (Digital Signal Processing ), così come proposto CMSIS-NN (rete neurale) per le esigenze informatiche di rete neurale.
mbed semplificare ulteriormente lo sviluppo di software
Dopo la proposta di CMSIS ARM ha raggiunto l'obiettivo di promuovere le specifiche del software, ma l'architettura CMSIS design è ancora basato sviluppatori professionisti di software e di messa a fuoco programma, e lo sviluppo di software microcontrollore, già dopo l'Arduino 2005 ha proposto, è stato attivamente verso i civili percorso semplice lo sviluppo, il numero di sviluppatori di software per aumentare il microcontrollore, il declino di età, o addirittura portare il potere per contribuire a spingere il maker (creatore) onda. in considerazione di ciò, ARM CMSIS per essere più pacchetto basato su standard semplifica l'ingegneria, mbed proposto standard software.
Mbed ha proposto metodi più semplici per lo sviluppo: in passato, l'ingegnere del software del microcontrollore doveva installare personalmente il software dell'ambiente di sviluppo, ma mbed è stato modificato in un ambiente di sviluppo basato sul web (Figura 2). Basta richiedere una password account gratuita e accedere attraverso la pagina web. Sviluppo del programma (compilatore nel cloud, compilatore ARMCC C / C ++).
Quando si scrive il programma, completata la compilazione, non hanno bisogno di passare attraverso strati di opzioni di menu prima di poter caricare il programma (Carica) per la scheda di sviluppo, scheda di sviluppo collegato al PC tramite la porta USB, è considerato come un lato pluggable PC L'unità flash USB, finché il file compilato viene trascinato e rilasciato sull'unità flash, l'operazione di caricamento è completata ed è facile intuirlo.
Modifiche al corso di sviluppo mbed
2009 mbed avanzate, dopo 1.0, 2.0 sviluppato in seguito, nel 2013, 2014, come Intel, TSMC e di altre società di semiconduttori a livello mondiale hanno iniziative delle cose (Internet of Things, IoT) concetto di nuovo mercato, ARM anche cercare attivamente le opportunità di mercato il layout tecnologia di espandere. Per esempio 2013 acquisizione del settore finlandese software di protocollo Sensinode Oy 2014 acquisizione Nian di SSL, TLS protocollo industria del software PolarSSL 2015 acquisizione Nian dei progettisti di circuiti di crittografia hardware israeliano Sansa sicurezza, accordi acquisizioni Bluetooth con il tipo di industria del software Wicentric, M & crittografia cose industria del software Offspark e così via.
In onda Semiconductor Industry fusione nel 2013 che si apre, braccio stesso la fusione di Softbank (SoftBank), molti osservatori parlare perché l'acquisizione Softbank di ARM? Sembra probabile che 5G, networking veicolo (V2X), ecc, ma le cose sono per lo più in Nella discussione
Dopo l'acquisizione ARM industria molti tecnologia di rete, il software acquisito mbed trapiantato, per esempio, il PolarSSL acquisizione rinominato mbed TLS, e la tecnologia per espandere zona visibile mbed è diviso in un terminale mote mbed il sistema operativo, e l'estremità del gateway mbed dispositivo server, ma anche di avanzare la versione mbed 2,0-3,0, anche l'altra portare avanti la tecnologia della sicurezza delle informazioni lato del dispositivo μVisor mbed (fig. 3).
ritorno mbed percorso di integrazione
Poiché MBED ha introdotto un gran numero di tecnologie correlate a Internet of Things, non può seguire completamente la versione 2.0 originale: la nuova versione 3.0 diventa una fork, una branca di sviluppo indipendente, ma questo sviluppo ha anche causato il passato sviluppo di sviluppatori mbed. Reclami. Pertanto, ARM ha proposto la versione 5.0 mbed nel 2016 e ha cercato di unificare le differenze nel passato.Dopo aver aggiunto 5.0 mbed, il numero di versione ha ovviamente saltato 4.0. L'aspettativa principale è che "5.0 è la versione integrata di 2.0 e 3.0". 2 + 3 = 5.
Sebbene sia una versione integrata, mbed 5.0 eredita l'originale 2.0 Le librerie dell'era 2.0 passata sono quasi sempre compatibili, ma non nella versione 3.0 La funzione Internet of Things nella passata versione 3.0 è stata reinterpretata nella versione 5.0, versione 3.0. Considerata una transizione a breve termine nello sviluppo generale, la linea principale sta nell'evoluzione da 2.0 a 5.0 (Figura 4).
Inoltre, ARM ha ulteriormente ampliato la categoria di sviluppo mbed poiché l'applicazione di Internet of Things si basa principalmente su misurazioni di sensori sul cloud, nel passato ARM aveva proposto il client mbed Device Connector nel 2015 come soluzione tecnica per i dispositivi mbed connessi al cloud. Fast ARM ha lanciato mbed Cloud a novembre 2016 per sostituire mbed Client e mbed Device Connector e diventare una nuova tecnologia di supporto cloud. Nel 2017, ARM ha anche migliorato la tecnologia di rilevamento del terreno sul campo e proposto il mbed edge per rafforzare il gateway per Internet of Things. Funzionalità di gestione dei nodi.
Basato su mbed Micro: il bit sta esplodendo
mbed è un modello di sviluppo del software è stato vicino alla gente verso il percorso di sviluppo, l'ambiente, ma per controllare lo sviluppo non solo i civili, il vento che soffia, che ha ulteriormente vento che soffia scolari, gli educatori hanno cominciato iniziative staminali / VAPORE (Scienza, Tecnologia, Ingegneria, Arte e Matematica) apprendimento, in modo ci sono scatole, appaiono ambiente di sviluppo modulare dell'immagine, come le aree Arduino hanno S4A (Scratch per Arduino), Google ha anche reso Blockley e così via.
Quindi ci sono aziende con la tecnologia a base di sviluppo mbed nota come Micro: scheda di bit di sistema di istruzione scolari circuito (Figura 5) Micro :. Bit utilizza lo stesso ambiente di sviluppo mbed basato sul web, non è necessario installare alcun software sul lato PC può sviluppo, ma modalità di sviluppo da stile di scrittura per lo sviluppo C / C ++ è alfanumerico, e diventano lo sviluppo blocchi di costruzione box-stile patchwork modo Uploader anche mbed stessa Micro :. realizzazione del target impostato il bit per 11, 12 anni bambini (fIG. 6).
Micro: bit divennero presto i libri di testo scolastici, molti governi hanno acquistato un gran numero di micro: bordo bit e donato alla scuola, come la Gran Bretagna, Singapore, Malesia, ed è stato esteso per più di 20 paesi ed è supportato da Microsoft, ARM e altri produttori di tecnologia .
Altri strumenti di sviluppo mbed, una maggiore facilità d'uso
In precedenza accennato, mbed basta Yaozhang segno segreta utilizzando la versione web del l'ambiente di sviluppo e gli strumenti, ma non sono limitati mbed può utilizzare solo la versione web di ambiente di sviluppo del programma, ci sono molti strumenti di sviluppo mbed, ad esempio il compilatore mbed fornisce anche il lato PC , per esempio mbed CLI (interfaccia di comando Line) l'interfaccia a riga di comando in una gestione convenzionale; programma di test ha mbed Greentea (Generic Regressione Ambiente per automazione di test, abbreviato tè verde); biblioteche con aspetto di debug di debug vi mbed pyOCD, ad eccezione mbed DAPLink sbagliato con il firmware.
O può anche essere strumenti professionali per lo sviluppo del programma, come ad esempio società Keil (nel 2005 l'acquisizione ARM) di μVision, Workbench di IAR, un codice di GCC open source (GNU Compiler Collection) le procedure di makefile, la versione distribuita del codice di controllo sul (Distributed Version Control system, DVCS) del sistema, supporta anche git, GitHub, mercuriale, gitLab, mbed ha anche un proprio mbed.org/code e così via.
L'ecosistema mbed è sempre più sano
Dopo un layout sempre più profondo, l'ecosistema mbed è diventato più robusto: ci sono più di 200.000 sviluppatori che si sono registrati sulla pagina Web e ci sono oltre 2 milioni di pagine Web uniche nella comunità: ci sono più di 10 aziende di chip. Più di 20 produttori di schede hanno lanciato più di 130 schede di sviluppo del sistema mbed e molte parti di supporto periferiche, tra cui 30 tipi di attuatori, 61 tipi di dispositivi di comunicazione, 92 tipi di monitor, 59 tipi di schede di espansione, 27 Moduli di Internet of Things, 187 sensori, 17 moduli di robot, 15 dispositivi di archiviazione e persino 8 servizi di supporto online come Twitter, IFTTT (If This Then That), ecc. (Figura 7) ).
Il concetto mbed porta a follower / concorrenti
sviluppo mbed di affinità di legame, cultura maker, il concetto di cose dopo una varietà di elementi come il mercato, la tendenza sembra dominare il sistema operativo embedded, ma in realtà mbed ha ancora il suo standard concorrente, non è l'unica scelta.
In primo luogo, il pro-sviluppo e ha iniziato Arduino, Arduino dal 2005 si è basata su otto yuan AVR architettura microcontrollore-based, ma negli ultimi anni ha cominciato a cercare l'aggiornamento e lo sviluppo, come ad esempio del 2014 lancio scheda di sviluppo Arduino Zero, il chip utilizzato per il cambiamento mineraria Cortex-M0 nucleo +, o spinto schede Arduino Due, il bordo di sviluppo mineraria core Cortex-M3 circuito integrato matrice.
In secondo luogo, l'introduzione di Advanced Micro Devices, quark architettura x86 di Intel più piccoli (Quark) nel 2013, dopo un processore embedded, il sistema operativo real-time di Wind River di Intel si propone anche per applicazioni di networking Rocket nel mese di novembre 2015, febbraio 2016 trasmessa alla Linux Foundation sviluppo e rinominato Zephyr (vento), e sostenuto da Intel, NXP, nordico e altri fornitori di chip.
In terzo luogo, la proposta di LiteOS Huawei, sostenendo la memoria 10KB di RAM può essere eseguito, e sono stato orgoglioso Act (ST), Atmel (Atmel), NXP (NXP), Silicio (Silicon Labs) e altre forme di sostegno europeo i produttori di chip produttori di chip Continental come Pechino Zhao Yi innovazione, microelettronica Shanghai intelligenti, così come Hisilicon di Huawei, sono supportati.
In quarto luogo, Amazon ha assunto FreeRTOS come ingegnere software fondatore e ha quindi lanciato la sua versione di Amazon FreeRTOS come parte della strategia globale di Edge Computing di Amazon.
Tutti i suddetti quattro sistemi operativi sono potenziali standard concorrenti per mbed, le risorse hardware richieste sono anch'esse dello stesso ordine di grandezza e possono funzionare con 16 KB 64 KB di memoria RAM, come per altri sistemi operativi embedded noti, come quelli proposti da OpenWrt o Google. Android Things, entrambi nella classe da 8 MB a 64 MB, non appartengono allo stesso livello di mbed e hanno una relazione complementare sempre più bassa rispetto alla concorrenza sovrapposta.
Nei tre standard del software in competizione con mbed, lo sviluppo di Arduino non è fluido: dopo che il software implementato nell'architettura AVR a 8 bit è stato convertito nell'architettura Cortex-M a 32 bit, c'erano ancora molti bug. Inoltre, molti produttori preferiscono ancora il sistema originale a 8 bit e solo pochi usano lo yuan a 32 bit.
Zephyr, dal momento che il processore Intel Atom EMBEDDED fermato nel 2017, legato allo sviluppo di processori Quark, Zephyr perdono il loro massimo sostegno echi di chip, notevolmente ridotto la quantità di moto, per essere il nuovo supporto o di nuova direzione.
Pertanto, il principale concorrente stime mbed per l'Amazzonia FreeRTOS, ex First Amazon non supporta FreeRTOS, FreeRTOS già utilizzano più di 10 anni di sviluppo, il secondo è quello di ottenere il gigante benedizione Amazzonia, contiene i servizi ufficiali Amazon cloud (Amazon Web Services, AWS) di prodotti di Amazon ufficiali di sostegno e di supporto hardware (serie Fuoco, serie Dash). Amazon è il più grande di cloud pubblico (cloud pubblico) gli operatori sia del mondo, ma anche prestare attenzione ai piccoli profitti nei prodotti hardware di Amazon, e non lesinare tecnologia open o concessi in licenza, come Alexa tecnologia di riconoscimento vocale è ampiamente applicata ai prodotti hardware non-ufficiale di Amazon, che contribuiscono a portare avanti Amazon FreeRTOS.
Ma Amazon FreeRTOS ancora bisogno di rafforzare lo sviluppo di affinità, e poiché il supporto Amazon per novembre 2017 è stato annunciato per il riconoscimento ufficiale della scheda di sviluppo è solo quattro, ma come descritto in precedenza mbed ha raggiunto 130, mbed ha ancora diversi vantaggi.
Inoltre mbed può anche voler competere con gli altri sistemi operativi embedded, come ad esempio leggero appartengono al uC / OS-II, embOS, esistono questi sistemi operativi già da qualche tempo, se la modalità di FreeRTOS cf, sostenuto da alcuni produttori di tecnologia internazionali, sviluppo può cambiare immediatamente. o altre risposte alla nascita di un nuovo concetto di networking progetto di sistema operativo embedded, come proposto dalla società irlandese Mongoose OS, o è di lunga data, ma le cose hanno cominciato a girare al centro di sistemi operativi embedded, come ad esempio Contiki.
Infine, lo sviluppo di follow-up di mbed potrebbe non essere come previsto, poiché l'intenzione originale di Linaro è stata implementata da Android, ma anche se le attività di licensing di circuiti originali di ARM non hanno perso, solo gli altri dominavano il suo ecosistema software, poiché Intel dominava x86. Il chip, ma non domina l'ecosistema software x86, ma Microsoft, guidato dalla comunità Linux.