Systèmes de microcontrôleurs Segger - Segger Microcontroller Systems
| Taper | GmbH |
|---|---|
| Industrie | Logiciel embarqué |
| Fondé | 1992 |
| Quartier général | Monheim am Rhein , Allemagne |
| Des produits | Composants middleware , outils de développement JTAG |
| Site Internet | www |
Segger Microcontroller , fondée en 1992, est une société privée active dans l'industrie des systèmes embarqués . Elle fournit des produits utilisés pour développer et fabriquer des systèmes embarqués, dans 4 catégories : systèmes d'exploitation temps réel (RTOS) et bibliothèques logicielles ( intergiciels ), sondes de débogage et de trace , outils de programmation ( environnement de développement intégré (IDE), compilateur , éditeur de liens ) et programmeurs intégrés (gamme de produits Flasher). La société a son siège à Monheim am Rhein , en Allemagne, avec des bureaux aux États-Unis à Gardner, dans le Massachusetts et à Milpitas, en Californie , et en Chine à Shanghai .
Histoire
Segger a été fondée en 1992 par Rolf Segger, à Hilden, en Allemagne. Le premier produit était le système d'exploitation en temps réel (RTOS) qui s'appelle maintenant embOS ; emWin a suivi 2 ans plus tard. Les produits initiaux se sont concentrés sur cette catégorie de produits RTOS et middleware, suivis des outils de programmation ISP (Flasher), puis des sondes de débogage (J-Link). En 2015, Segger a présenté Embedded Studio, son IDE multiplateforme , disponible pour les unités centrales de traitement (CPU) par ARM initialement, et maintenant aussi pour RISC-V . Tous les produits sont développés, maintenus et constamment améliorés en Allemagne, à l'exception d'Embedded Studio, qui est principalement développé par une équipe de développeurs au Royaume-Uni.
Catégories de produits
Déboguer et tracer les sondes (J-Link et J-Trace)
J-Trace
J-Trace PRO est une sonde de débogage avancée qui peut capturer des traces d'instructions complètes sur de longues périodes de temps, permettant ainsi l'enregistrement de bogues rares et difficiles à reproduire. Il est compatible avec J-Link et possède en plus des fonctions de trace. Les fonctions de débogage sont prises en charge par tous les IDE populaires et peuvent être utilisées sur plusieurs plates-formes avec Windows , Linux et macOS . Les fonctions de trace complètes (trace de streaming avec analyse en temps réel et visualisation en temps réel) sont disponibles avec le débogueur et l'analyseur de performances Ozone, qui peuvent être téléchargés gratuitement et utilisés avec J-Trace. Ozone peut charger n'importe quel fichier ELF ( Executable and Linkable Format ) conforme à la norme .
Lien J
Segger est surtout connu pour son Joint Test Action Group ( JTAG ) et ses sondes de débogage SWD pour les microcontrôleurs basés sur ARM qui ont ARM7 , ARM9 , ARM11 , Cortex M0 , M0+ , M1 , M3 , M4 , M7 , M23 , M33 , R4 , R5 , R8 , A5 , A7 , A8 , A9 , A12 , A15 , A17 cœurs, Renesas RX et Microchip PIC32 . Cet appareil s'appelle le J-Link. Il est également reconditionné et vendu en tant qu'article OEM par Analog Devices sous le nom de mIDASLink, Atmel sous le nom de SAM-ICE, Digi International sous le nom de Digi JTAG Link et IAR Systems sous le nom de J-Link et J-Link KS. Il s'agit du seul émulateur JTAG qui peut ajouter le logiciel de point d'arrêt flash breveté de Segger à un débogueur pour permettre la définition de plusieurs points d'arrêt en flash tout en s'exécutant sur un périphérique ARM qui est généralement entravé par la disponibilité limitée des points d'arrêt matériels. Pour des fonctionnalités d'émulation améliorées, Segger propose un émulateur de trace, J-Trace, qui fonctionne avec l'interface ARM ETM et permet aux ingénieurs de retracer l'exécution de leur code.
| Modèle* | USB hôte |
Ethernet hôte |
Hôte Wi-Fi |
Connecteur cible |
Connecteur de traçage |
Tension cible |
Cibler la vitesse d'interface maximale |
Cibler la vitesse de téléchargement maximale |
|---|---|---|---|---|---|---|---|---|
| J-Trace PRO Cortex | 3.0 SS | 1 Gbit/s | Non | 20 broches 0,1" | 19 broches 0,05" | 1.2V à 5V |
50 MHz
|
3 Mo/s
|
| J-Trace PRO Cortex-M | 3.0 SS | 1 Gbit/s | Non | 20 broches 0,1" | 19 broches 0,05" | 1.2V à 5V |
50 MHz |
3 Mo/s
|
| J-Link PRO | 2.0 SH | 100 Mbit/s | Non | 20 broches 0,1" | Non | 1.2V à 5V |
50 MHz |
3 Mo/s
|
| J-Link ULTRA+ | 2.0 SH | Non | Non | 20 broches 0,1" | Non | 1.2V à 5V |
50 MHz |
3 Mo/s
|
| Wi-Fi J-Link | 2.0 SH | Non | 802.11b/g/n | 20 broches 0,1" | Non | 1.2V à 5V |
15 MHz |
1 Mo/s
|
| J-Link PLUS | 2.0 SH | Non | Non | 20 broches 0,1" | Non | 1.2V à 5V |
15 MHz |
1 Mo/s
|
| BASE J-Link | 2.0 SH | Non | Non | 20 broches 0,1" | Non | 1.2V à 5V |
15 MHz |
1 Mo/s
|
| J-Link EDU | 2.0 SH | Non | Non | 20 broches 0,1" | Non | 1.2V à 5V |
15 MHz |
1 Mo/s
|
| J-Link EDU Mini | 2.0 FS | Non | Non | 9 broches 0,05" | Non | 3.3V | 4 MHz | 0,2 Mo/s |
- Remarque : les autres modèles sont J-Link LITE ARM, J-Link LITE CortexM, J-Link LITE RX, J-Link OB, J-Link OEM.
- Remarque : les modèles PLUS, BASE, EDU sont physiquement le même matériel. La différence réside dans les options de licence et de logiciel, telles que GDB Server, Flash Download, Unlimited Flash Breakpoints, J-Flash, RDI, RDDI. Le modèle EDU ne peut pas être utilisé pour le développement de logiciels commerciaux.
- Remarque : Des adaptateurs et des isolateurs sont disponibles pour convertir l'embase (boîtier) mâle à 20 broches 0,1"/2,54 mm en un autre connecteur de carte cible.
RTOS et middleware
Segger développe et octroie des licences pour une large gamme de middleware. Au centre de tout cela se trouve embOS, le noyau du système d'exploitation en temps réel (RTOS) de Segger .
embOS RTOS
| Développeur | Microcontrôleur Segger |
|---|---|
| Écrit en | Langage assembleur , C |
| État de fonctionnement | Courant |
| Modèle source | Source-disponible |
| Première version | 1992 |
| Cible marketing | Systèmes embarqués |
| Disponible en | Anglais |
| Plateformes | ARM , AVR , ColdFire , Nios II , PIC , PowerPC , RISC-V , STM8 – 32 , SuperH , x86 |
| Type de noyau | Temps réel |
| Licence | Commercial |
| Site officiel | www |
embOS est un RTOS pour toutes les applications embarquées. Il est écrit à partir de zéro par la société Segger Microcontroller en utilisant ANSI C et le langage assembleur .
Caractéristiques
Les fonctionnalités incluent:
- nombre limite de tâches non fixé : limité uniquement par la quantité de mémoire disponible
- planification préemptive avec jusqu'à 2 32 priorités
- planification à tour de rôle avec tranches de temps réglables pour les tâches de même priorité
- résolution temporelle réglable (la valeur par défaut est de 1 ms)
- minuteries logicielles
- faible consommation et prise en charge multicœur
- communication sécurisée entre les tâches en utilisant :
- événements de tâche avec jusqu'à 32 événements par tâche
- objets d'événement
- ressource et comptage des sémaphores
- boîtes aux lettres
- files d'attente
- prise en charge complète des interruptions
- L'API peut être appelée à partir de code assembleur, C et C++
En plus d'embOS, embOS-MPU offre une protection de la mémoire en utilisant l'unité de protection de la mémoire du matériel et d'autres mécanismes logiciels, pour empêcher qu'une tâche n'affecte l'ensemble du système.
embOSView
embOSView est un outil d'analyse de l'application cible en cours d'exécution sur un système embarqué utilisant embOS. Pour la communication, embOSView peut utiliser UART, la lecture/écriture de mémoire pour les processeurs Cortex-M et RX, le DCC pour les processeurs ARM7/9 et Cortex-A ainsi que Ethernet. Outre les variables système et le traçage logiciel, embOSView répertorie également toutes les tâches avec les informations suivantes :
- ID : ID de tâche, qui est l'adresse du bloc de contrôle de tâche
- Nom : Nom attribué lors de la création
- Statut : état actuel de la tâche (prête, en cours d'exécution, retardée, motif de la suspension)
- Données : Dépend du statut
- Délai d'expiration : heure de la prochaine activation
- Pile : taille de pile utilisée/max. taille de la pile/emplacement de la pile
- Charge CPU : pourcentage de charge CPU causée par la tâche
- Nombre d'exécutions : nombre d'activations depuis la réinitialisation
- Tranche de temps : tranche de temps du tournoi à la ronde
Champs d'application
embOS est utilisé dans une variété de systèmes embarqués dans les domaines d'application tels que :
- Contrôles industriels
- Internet des objets
- La mise en réseau
- Electronique grand public
- Dispositifs critiques de sécurité
- Automobile
- Équipement médical
- Avionique
Il est pris en charge par les bibliothèques SSL/TLS populaires , maintenant ainsi les normes de sécurité intégrées dans tous les secteurs.
Périphériques compatibles
embOS prend en charge tous les cœurs et compilateurs, par exemple :
ARM7/9/11, ARM Cortex-A/R/M, Altera NIOS2, AVR, AVR32, C16x, CR16C, ColdFire, H8, HCS12, M16C, M32C, MSP430, NIOS2, PIC18/24/32, PowerPC, R32C, R8C, 78K0, V850, RL78, RH850, RX100/200/600/700, RZ, SH2A, STM8, ST7, S08, 8051, Xtensa, ...
GCC, IAR, Keil MDK, Tasking, GreenHills, CodeWarrior, Renesas compilateur CCRX, CCRL, ...
Autres logiciels embarqués
Segger fournit également des logiciels/intergiciels dans les domaines de la connectivité, de la cryptographie et de la sécurité et de l'Internet des objets (IoT).
Programmeurs intégrés (gamme de produits Flasher)
Les produits Flasher prennent en charge la programmation dans le système pour plusieurs familles de processeurs.
Outils de développement (Embedded Studio & Systemview)
Studio intégré
Embedded Studio est un IDE C/C++ pour les systèmes embarqués. Il est spécialement conçu pour fournir aux utilisateurs tout ce dont ils ont besoin pour la programmation et le développement professionnels en C embarqué.
Embedded Studio comprend les compilateurs Clang et GCC, ainsi que le compilateur Segger interne, et prend en charge les sondes de débogage tierces via le protocole GDB.
Il peut être utilisé sur plusieurs plates-formes avec Windows, Linux et macOS.
SystemView
SystemView est un outil d'enregistrement et de visualisation en temps réel pour les systèmes embarqués qui révèle le véritable comportement d'exécution d'une application, allant plus loin que les informations système fournies par les débogueurs. Il est particulièrement efficace lors du développement et de l'utilisation de systèmes embarqués complexes comprenant plusieurs threads et interruptions.
SystemView peut garantir qu'un système fonctionne comme prévu, peut détecter les inefficacités et afficher les interactions involontaires et les conflits de ressources, en mettant l'accent sur les détails de chaque tick du système.
Il fournit un enregistrement continu en temps réel d'un système intégré, capture des tâches, des interruptions, des minuteurs, des ressources, des appels d'API et des événements utilisateur, et permet une analyse et une visualisation en direct des données capturées.
SystemView enregistre via J-Link et Segger RTT Technology, IP ou UART, fonctionne sur n'importe quel processeur, fonctionne avec tous les systèmes RTOS et bare-metal, et est peu intrusif pour le système.
Ozone : débogueur et analyseur de performances J-Link
Ozone est un débogueur graphique complet pour les applications embarquées. Avec Ozone, il est possible de déboguer n'importe quelle application embarquée au niveau source et assembleur C/C++.
Il peut charger des applications construites avec n'importe quelle chaîne d'outils ou IDE, ou déboguer l'application résidente de la cible sans code source . Il comprend tous les contrôles de débogage et fenêtres d'informations bien connus et utilise les sondes de débogage J-Link et J-Trace.
Voir également
- Système embarqué , Microcontrôleur monocarte
- Architecture ARM , Liste des cœurs de microprocesseur ARM
- Joint Test Action Group (JTAG), Serial Wire Debug (SWD)
- Débogueur GNU (GDB)