Entwicklung Board / Tools sind reif Mbird OS Ökosystem schreitet voran

Mbed OS stellt neben dem CPU-Kern das wichtigste strategische Produkt dar. In den letzten Jahren wurden Hardware-, Software- und Entwicklungstools implementiert, die für die zukünftige Entwicklung der Sicherheit von entscheidender Bedeutung sind.

Der Börsengang des Unternehmens, ARM, war ähnlich dem der Chip-Design-Industrie: Es wurde erwartet, dass es seine eigenen Chips verkaufen würde, musste aber aufgrund finanzieller Schwierigkeiten zu einem profitablen Modell mit rein designten Schaltungen wechseln. Der Prozessorkern ARM7TDMI (ARM7 + 16 Bit Thumb + JTAG Debug + Fast Multiplier + Enhanced ICE) wurde eingeführt.Dieser Kern wurde weithin bekannt und die Popularität von ARM und seinem Produktgeschäft hat allmählich an Popularität gewonnen.

Nach der Einführung der ARM-, ARM9-, ARM10- und AMR11-Kerne, ARM7 und ARM9 / 10 / 11. ARM7 hat mit der Entwicklung von Zeit und Technologie entschieden, eine neue Reihe von Kernen zu entwickeln und schrittweise zu eliminieren. Zusätzlich zu dem alten autorisierten Kern.

Im Jahr 2008 schlug ARM eine neue Serie von Cores unter dem Namen Cortex vor, darunter Cortex-A, Cortex-R, Cortex-M. Die drei Serien von drei Buchstaben A, R, M. Eine Serie wie die Sicherheitsfirma konzentrierte sich auf die Anwendungsverarbeitung. Auf dem Markt für Anwendungsprozessoren (AP) ist die M-Serie der Markt für Mikrocontroller-Einheiten (MCUs), und die R-Serie konzentriert sich ebenfalls auf den Mikrocontroller-Markt, aber mehr Gewicht wird auf Echtzeit-Steuerungsanwendungen wie industrielle Gerätesteuerung und Automobilanwendungen gelegt. Elektronische und so weiter.

Nach der Einführung von Cortex-A / R / M verwies ARM auf die vorherige ARM7 / 9/10/11-Serie als klassische und klassische Serie, die weiterhin die Zulassung erteilt, sich aber allmählich abschwächt und sich auf neue Technologien konzentriert. Architektur des Kortex.

CMSIS versucht, Softwarestandards zu vereinheitlichen

Mit der Einführung der neuen Cortex-Serie versuchte ARM auch, einige Probleme der Vergangenheit zu lösen: Nachdem viele Chiphersteller in der Vergangenheit die ARM-Kernautorisierung erworben hatten, fragte ARM nicht, wie Chiphersteller die Schaltung im Chip aktualisierten, sondern die Softwareentwicklung des Chips anfragten.

Da Chip-Unternehmen unabhängig sind, auch wenn verschiedene Chip-Unternehmen den gleichen ARM-Kern verwenden, die Art und Weise, wie sie die Peripherieschaltungen manipulieren, sind die Entwicklung und das Schreiben der Programme auch anders und sogar anders als die Chips der Chip-Hersteller, Kompatibilität und Austausch. Niedrige Sexualität, Programmschreiben kann nicht üblich und vererbt sein, was zu wiederholter Verschwendung von Softwareentwicklung führt, was es für ARM schwierig macht, ein vollständiges und kontinuierliches ARM-Kernsoftware-Ökosystem zu entwickeln.

Daher schlug ARM den CMSIS-Standard (Cortex Microcontroller Software Interface Standard) vor (Abbildung 1), um eine gemeinsame Referenz für jeden Chip-Hersteller zu liefern.Für Chips, die den Kern der Cortex-M-Serie verwenden, haben sie höhere Werte, wenn sie diesem Standard zur Entwicklung von Software folgen Allgemein, Kontinuität.

Abbildung 1 CMSIS-Software-Stack-Architektur

Der Grund gesperrt Cortex-M-Serie, klassische Serie ist die meistverkauften beliebten Kern ARM7TDMI, die meiste Zeit dieser Kern-Chip-Geschäft als Mikrocontroller positioniert ist, CMSIS vorgebracht, es ist wünschenswert, die Verdoppelung der Entwicklung Mikrocontroller-Software zu reduzieren, ist es zum Austausch schwierig ist, schwer mit anderen Problemen fortzusetzen.

Wie für Cortex-A-Serie eine relativ neue Entwicklung, weniger Belastung und starke Rechenleistung und Hardware-Ressourcen reichliche, als solche ohne ARM7TDMI, Software-Entwicklung Probleme wie Cortex-M-Mikrocontroller ARM sind in der Tat im Jahr 2009 nach mbed schlägt Linaro, Lianro versucht, Linux-Software-Ökosystem ein gemeinsame ARM-Architektur, die Linux-Software-Cortex-a-Serie verwendet, um einen gemeinsamen Standard folgen, sollte die Verringerung von Doppeln Entwicklung ihre eigene Art und Weise im Jahr 2010 die kumulativen vorzuschlagen und zu konstruieren Ergänzen kontinuierliches Software-Technologie-Assets.

Aufgrund der starken Entwicklung und Popularität von Android (Root basierend auf Linux), Linaro's industrielle Bedeutung wurde reduziert, Cortex-A-Serie von großen Software-Ökologie ist bereits Android.

CMSIS-Architekturanalyse

CMSIS ist streng genommen der Oberbegriff einer Architektur und enthält eine Reihe von Softwarekomponenten wie CMSIS-CORE, CMSIS-Treiber, CMSIS-RTOS usw. Der grundlegendste Teil ist CMSIS-CORE, das den Zugriffsbuchstaben definiert. Typ, Peripherie und Interrupt-Definition, alle anderen Software, wenn Sie die Cortex-M-Core-Schaltung, die Core-Peripherieschaltung oder andere periphere Schaltungen usw. steuern wollen, müssen CMSIS-CORE übergeben.

Zwei weitere wichtige Punkte außerhalb von CMSIS-CORE sind CMSIS-Driver, CMSIS-RTOS, bei denen es sich um Anwendungsprogrammschnittstellen handelt, die von einem Anwendungsaufruf (Aufruf, auf der anderen Seite genannt) verwendet werden können. Letzteres bietet eine konsistente interaktive Aufrufmethode zwischen Anwendungen und Echtzeitbetriebssystemen.

CMSIS-Driver kann auch von Hardware-Herstellern definiert werden, um die Hardware Abstraction Layer (HAL) zu definieren und die Middleware (Middleware) des Drittanbieters zum Aufruf des CMSIS-RTOS zu verwenden. nur in der Definition von Standards, Echtzeit-Betriebssystem (Real-Time-Betriebssystem, RTOS, sagte die andere Seite des Echtzeit-Betriebssystem) tatsächlich elastisch verfügbare ARM offiziellen ausgeführt austauschen kann auch von Drittbetreibern ersetzt werden, um einen so lange im Einklang mit CMSIS- Die RTOS-Spezifikation kann problemlos ersetzt werden.Der offizielle ARM, der von der Firma bereitgestellt wird, heißt RTX und wurde erhalten, nachdem ARM Keil erworben hatte.

Die meisten anderen Software als der zur Anwendung, während die Nachfrage für das Debuggen von CMSIS-SVD (Systemansicht Beschreibung), CMSIS-DAP (Debug Access Port). Oder für die digitale Signalverarbeitung und Rechenanforderungen vorbringen CMSIS-DSP (Digital Signal Processing ), und vorgeschlagen CMSIS-NN (Neuronales Netzwerk) für die Bedürfnisse der neuronalen Netzwerk-Computing.

Mbed vereinfacht die Softwareentwicklung weiter

Nachdem ARM CMSIS vorgeschlagen hat, hat es das Ziel erreicht, Software-Spezifikation zu befürworten.Das Architektur-Design von CMSIS konzentriert sich jedoch immer noch auf die Entwicklung professioneller Software-Programmierer.Die Software-Entwicklung von Mikrocontrollern hat nach der Einführung von Arduino im Jahr 2005 aktive Schritte in Richtung Zivilisten unternommen. Die Entwicklung hat zu einem Anstieg der Anzahl von Softwareentwicklern für Mikrocontroller, zu einem Rückgang des Alters und sogar zu einem Anstieg von Maker geführt.Aus diesem Grund hat ARM mehr Projekte zur Vereinfachung der Verpackung auf der Grundlage der CMSIS-Standards durchgeführt. Präsentierter mbed Software Standard.

Mbed stellte einfachere Methoden in der Entwicklung vor: In der Vergangenheit musste der Softwareentwickler des Mikrocontrollers die Entwicklungsumgebung selbst installieren, aber mbed wurde auf eine webbasierte Entwicklungsumgebung umgestellt (Abbildung 2): Einfach ein kostenloses Account-Passwort beantragen und über die Webseite einloggen. Programmentwicklung (Compiler in der Cloud, ARMCC C / C ++ Compiler).

Abbildung 2 mbed integrierte Entwicklungsumgebung (IDE) erfordert keine Download und Installation, direkte Konto Passwort Login-Seite zu verwenden.

Nachdem das Programm geschrieben und kompiliert wurde, ist es nicht notwendig, das Programm über die Layer-Menüoptionen auf das Entwicklungsboard hochzuladen.Das Entwicklungsboard ist über den USB-Port mit dem PC verbunden und wird auf der PC-Seite als steckbarer Port betrachtet. Solange die kompilierte Datei auf das USB-Flash-Laufwerk gezogen und abgelegt wird, ist der Uploadvorgang abgeschlossen, einfach und intuitiv.

Mbed Entwicklungskurs ändert sich

2009 mbed vorbringen, nach 1,0, 2,0 später entwickelt, im Jahr 2013, 2014, wie Intel, TSMC und anderen globalen Halbleiter-Unternehmen haben Initiativen der Dinge (Internet of Things, IoT) neue Marktkonzept, ARM suchen auch aktiv Marktchancen die Technologie Layout erweitern. Zum Beispiel 2013 Übernahme der finnischen Protokollsoftware Industrie Sensinode Oy, 2014 Nian Erwerb von SSL, TLS-Protokoll-Software-Industrie PolarSSL 2015 Nian Erwerb der israelischen Hardware-Verschlüsselung Schaltungsentwickler Sansa Sicherheit, Akquisitionen Bluetooth Vereinbarungen mit der Art der Software-Industrie Wicentric, Übernahme des Internet-of-Things-Verschlüsselungssoftware-Anbieters Offspark et al.

In der Welle von Fusionen und Übernahmen in der Halbleiterindustrie, die 2013 begann, wurde auch ARM selbst von SoftBank übernommen.Viele Beobachter sprachen darüber, warum Softbank ARM gekauft hat.Der Fokus könnte auf 5G, V2X usw. liegen. In der Diskussion.

viele Netzwerktechnologie-Industrie nach dem Erwerb ARM, mbed die erworbene Software transplantiert zum Beispiel der Erwerb PolarSSL mbed TLS umbenannt, und die Technologie mbed sichtbaren Bereich zu erweitern ist in einem Sensorknoten Terminal geteilt, um die OS mbed und das Ende des Gateways mbed-Device-Server, während auch die mbed-Version von 2,0 bis 3,0 fort, die andere nehmen auch die Informationssicherheit Technologie mbed μVisor Geräteseite nach vorne (Fig. 3).

Fig. 3 mbed von der einfachen bis der Mikrocontroller Anschlussenden, wobei ein Ende näher an der ursprünglichen Mikrocontroller-Anwendungen, das heißt für das OS mbed Dinge Sensorknoten, ist das andere Ende der Dinge Gateways mbed Geräteserver.

Mbed Route Regression

Da MBED eine große Anzahl von Internet of Things-Technologien eingeführt hat, kann es der Kompatibilität der ursprünglichen Version 2.0 nicht völlig folgen.Die neue 3.0-Version wird zu einer Verzweigung, die eine separate Entwicklung ist, aber diese Entwicklung hat auch die früheren mbed-Entwickler verursacht. Reklamationen: So schlug ARM 2016 die mbed-Version 5.0 vor und versuchte, die Entwicklung der Unterschiede in der Vergangenheit zu vereinheitlichen. Nachdem mbed 5.0 vorgeschlagen worden war, übersprang die Versionsnummer offensichtlich 4,0, vor allem weil "5.0 eine vereinheitlichte Version von 2.0 und 3.0 ist". 2 + 3 = 5.

Obwohl es sich um eine integrierte Version handelt, erbt mbed 5.0 das ursprüngliche 2.0 Die Bibliotheken der letzten 2.0-Ära sind fast immer kompatibel, aber nicht in der Version 3.0 Die Internet of Things-Funktion der Vorgängerversion 3.0 wurde in Version 5.0, Version 3.0 neu interpretiert. Die Hauptlinie, die als kurzfristiger Übergang in der Gesamtentwicklung betrachtet wird, liegt in der Entwicklung von 2,0 auf 5,0 (Abbildung 4).

Abbildung 4 mbed Version der Routenkarte

Darüber hinaus mbed Entwicklung ARM auch den Anwendungsbereich erweitern, aufgrund der Multi-Networking-Anwendungen erfasste Wert werden in die Cloud, in der Vergangenheit zu laden mbed-Client mit ARM mbed Gerätestecker angehoben haben 2015 mbed-Geräte anschließen als technische Lösung für die Cloud, aber es ist schnelle ARM startete mbed Wolke das mbed-Client und mbed Gerät Connector wird die neue Cloud-Support-Technologie im November 2016 ersetzen; 2017 ARM auch Sensorfeld am Ende der Technologie vorgeschlagen mbed Ränder, stärken Dinge Gateways stärken Knotenverwaltungsfunktionen

Basierend auf mbed Micro: Bit boomt

mbed ist ein Software-Entwicklungsmodell nahe an den Menschen auf dem Weg der Entwicklung war, die Umwelt, sondern die Entwicklung nicht nur Zivilisten zu kontrollieren, wehende Wind, die weitere Wind Schüler blasen, Pädagogen begannen Initiativen STEM / STEAM (Wissenschaft, Technologie, Ingenieurwesen, Kunst und Mathematik) Lernen, so gibt es Boxen, modulare Entwicklungsumgebung des Bildes erscheinen, wie Arduino Bereiche haben S4A (Scratch für Arduino), Google auch Blockly gemacht und so weiter.

So gibt es Unternehmen mit technologiebasierten mbed Entwicklung bekannt als Micro: Bit Schulbildungssystem Leiterplatte (Abbildung 5) Micro :. Bit verwendet die gleiche webbasierte mbed-Entwicklungsumgebung, keine Software auf der PC-Seite installieren müssen kann Entwicklung, aber Entwicklungsmodus von Schreibstil C / C ++ ist alphanumerisch, und wird die Bausteine ​​Box-Stil Patchwork Entwicklung Uploader Weise auch gleiche mbed Micro :. Umsetzung des Ziels zu entwickeln Bit gesetzt für 11, 12 Jahre alt Kinder (Fig. 6).

Figur 5 Micro: Bit erläuternde Ansicht der Systemleiterplatte, Micro: bit Softwareumgebung Technologie Stielen mbed.

Abbildung 6 Micro: Bit-Seitenlayout Art von Baustein Programmentwicklung.

Micro: Bit bald Schulbücher haben viele Regierungen eine große Anzahl von Micro gekauft: Bit Bord und an die Schule gespendet, wie Großbritannien, Singapur, Malaysia, und haben in mehr als 20 Länder erweitert worden und werden von Microsoft, ARM und anderen Technologie-Herstellern unterstützt .

Mehr mbed-Entwicklungstools, verbesserte Benutzerfreundlichkeit

Zuvor nur geheime Yaozhang Zeichen erwähnt, mbed in die Web-Version der Entwicklungsumgebung und Tools ein, sind aber nicht mbed begrenzt nur die Web-Version von Programmentwicklungsumgebung verwenden, gibt es viele mbed-Entwicklungstools, zum Beispiel mbed Compiler auch die Seite PC bietet z.B. mbed CLI (Command Line Interface) Befehlszeilenschnittstelle in einem herkömmlichen Betrieb; Prüfprogramm hat Greentea mbed (für Testautomatisierung Generisches Regression Environment, abgekürzt grüner Tee); -Bibliotheken mit Debugging debug Aspekte mbed pyOCD, ausgenommen Missbrauch der Firmware mbed DAPLink.

die verteilte Version des Codes der Kontrolle oder auch professionelle Programm-Entwicklungs-Tools, wie Keil Unternehmen (im Jahr 2005 von der ARM-Akquisition) von μVision, IAR Workbench, ein Open-Source-Code GCC (GNU Compiler Collection) das Make-Datei Verfahren sein auf dem System (Distributed System Version Control, DVCS), unterstützt auch git, GitHub, mercurial, Gitlab, mbed seine eigene mbed.org/code auch und so weiter hat.

Das mbed-Ökosystem wird zunehmend gesund

Nach einem tieferen und breiteren Layout ist das mbed-Ökosystem robuster geworden: Es haben sich mehr als 200.000 Entwickler auf der Webseite registriert, es gab mehr als 2 Millionen einzigartige Webseitenaufrufe für die Community, es gibt mehr als 10 Chip-Unternehmen. , Mehr als 20 Board-Anbieter, akkumuliert mehr als 130 mbed System-Entwicklungs-Boards, und viele Peripherie-Support-Teile, einschließlich 30 Arten von Aktoren, 61 Arten von Kommunikationsfunktion Geräte, 92 Arten von Monitoren, 59 Arten von Erweiterungskarten, 27 Internet of Things-Module, 187 Sensoren, 17 Robotermodule, 15 Speichergeräte und sogar 8 Online-Support-Dienste wie Twitter, IFTTT (wenn dies dann das ist) usw. (Abbildung 7) ).

Abbildung 7 unterstützt mbed System Entwicklungsboard hat 130 oder mehr erreicht.

Das mbed-Konzept führt zu Followern / Konkurrenten

Die Entwicklung von mbed in Verbindung mit einer Vielzahl von Elementen wie Affinität, Maker-Kultur, Konzeptmarkt des Internets der Dinge, scheint einen Trend zu integrierten Betriebssystemen zu haben, obwohl mbed immer noch ähnliche Wettbewerbsstandards hat und es nicht die einzige Wahl ist.

Das erste ist Arduino, das mit Affinity begann.Arduino ist seit 2005 ein 8-Bit-AVR-Architektur-Mikrocontroller.In den letzten Jahren hat es jedoch mit der Aktualisierung begonnen.Zum Beispiel wurde das Arduino Zero-Entwicklungsboard im Jahr 2014 auf den Markt gebracht. Adoptieren Cortex-M0 + Kern, oder Einführung von Arduino Due Entwicklungsboard, der Hauptsteuerchip auf dem Entwicklungsboard nimmt Cortex-M3-Kern.

Zweitens, nachdem Intel im Jahr 2013 den ultrakleinen quark embedded Prozessor in der x86-Architektur eingeführt hat, hat Intels Wind River im November 2015, Februar 2016, sein Instant-Betriebssystem Rocket für Internet of Things-Anwendungen auf den Markt gebracht. Übertragen auf die Linux Foundation für Entwicklung und änderte seinen Namen in Zephyr und erhielt Unterstützung von Intel, NXP, Nordic und anderen Chip-Anbietern.

Das dritte ist Huaweis LiteOS, das behauptet, dass 10KB RAM-Speicher zur Ausführung bereit sind, und hat Unterstützung von STMicroelectronics, Atmel, NXP und Silicon Labs erhalten. Chinesische Chip-Unternehmen wie Beijing Zhaoyi Innovation, Shanghai Smart Microelectronics und Huawei Hisilicon Semiconductor unterstützen dies ebenfalls.

Viertens hat Amazon FreeRTOS als Softwareentwickler für die Gründung eines Unternehmens eingestellt und dann eine eigene Version von Amazon FreeRTOS als Teil der gesamten Edge-Computing-Technologiestrategie von Amazon auf den Markt gebracht.

Alle der oben genannten vier Betriebssysteme stellen potentielle konkurrierende Standards für mbed dar. Die erforderlichen Hardware-Ressourcen sind ebenfalls in der gleichen Größenordnung und können mit 16 KB ~ 64 KB RAM-Speicher betrieben werden, wie bei anderen bekannten eingebetteten Betriebssystemen, wie sie von OpenWrt oder Google vorgeschlagen werden. Android Things, beide in der 8MB ~ 64MB Klasse, gehören nicht zum selben Level wie mbed und haben eine höhere und niedrigere komplementäre Beziehung als überlappende Konkurrenz.

In den drei mit mbed konkurrierenden Software-Standards ist die Entwicklung von Arduino nicht reibungslos: Nachdem die in der 8-Bit-AVR-Architektur implementierte Software in die 32-Bit-Cortex-M-Architektur transplantiert wurde, gab es noch viele Fehler. Darüber hinaus bevorzugen die meisten Hersteller immer noch das ursprüngliche 8-Bit-System, und nur wenige verwenden 32-Bit-Yuan.

Zephyr, da das Intel Atom im Jahr 2017, im Zusammenhang mit der Entwicklung von Quark Prozessoren gestoppt eingebettet ist, verlieren Zephyr ihre größte Unterstützung Chip Echos, stark die Dynamik reduziert, die neue Unterstützung oder eine neue Richtung zu sein.

Daher wird der Hauptkonkurrent mbed Schätzungen für das Amazon FreeRTOS, ehemalige First Amazon nicht FreeRTOS unterstützen, bereits FreeRTOS verwenden mehr als 10 Jahren der Entwicklung, ist der zweite den Segen Riese Amazon zu erhalten, enthält die offiziellen Cloud-Services von Amazon (Amazon Web Services, AWS) von Amazon offizielle Unterstützung und Support Hardware-Produkte (Feuer-Serie, Dash-Serie). Amazon ist sowohl der weltweit größte öffentliche Cloud (public Cloud) Betreiber, sondern auch die Aufmerksamkeit auf kleine Gewinne in den Produkten von Amazon-Hardware bezahlen, und Sie knausern nicht öffnen oder lizenzierte Technologie, wie Alexa Spracherkennungstechnologie wird auf den nicht-offiziellen Amazon-Hardware-Produkte weit verbreitet, die alle dazu beitragen, nach vorne Amazon FreeRTOS zu nehmen.

Allerdings muss Amazon FreeRTOS seine Affinität zur Entwicklung noch verstärken, und da Amazon bis November 2017 Unterstützung angekündigt hat, sind nur vier offizielle Entwicklungsboards zugelassen, aber wie bereits erwähnt, hat mbed 130 erreicht, und mbed hat immer noch einige Vorteile.

Darüber hinaus kann mbed auch mit anderen Embedded-Betriebssystemen wie μC / OS-II und embOS konkurrieren, die beide sehr leicht sind. Diese Betriebssysteme gibt es schon seit einiger Zeit. Wenn Sie mit dem FreeRTOS-Modus vergleichen, können Sie Unterstützung von einigen internationalen Technologieunternehmen erhalten. Die Entwicklung kann sich sofort ändern, oder andere neue Embedded-Betriebssystem-Projekte, die sich aus dem Konzept des Internets der Dinge ergeben, wie das von der irischen Firma vorgeschlagene Mongoose-Betriebssystem oder das Embedded-Betriebssystem, das sich seit langem auf das Internet der Dinge konzentriert, wie Contiki.

Schließlich ist die weitere Entwicklung von mbed möglicherweise nicht so wie erwartet, da Linaros ursprüngliche Absicht von Android umgesetzt wurde, aber selbst wenn das ursprüngliche Circuit Licensing-Geschäft von ARM nicht verliert, dominieren nur andere sein Software-Ökosystem, da Intel x86 dominiert. Der Chip beherrscht aber auch nicht das x86-Software-Ökosystem, sondern Microsoft, angeführt von der Linux-Community.

2016 GoodChinaBrand | ICP: 12011751 | China Exports