La fonctionnalité de mise à jour du micrologiciel peut être personnalisée non seulement lors de l'installation initiale sur le site du client, mais aussi après l'installation du produit, de nouvelles fonctions / fonctionnalités peuvent être ajoutées sur place et tous les problèmes de firmware peuvent être résolus. Les composants de mémoire volatile ont des capacités d'enregistrement reproductibles et sont extrêmement fiables. Ils sont souvent utilisés comme supports de stockage de code de programme.
En réécrivant le micrologiciel du composant et en changeant une partie du programme (le composant utilise une mémoire non volatile), le fabricant peut facilement mettre à jour les fonctionnalités ou les mises à jour du périphérique.Pour mettre à jour le micrologiciel, il faut tenir compte de la mise à jour. Quoi / combien de code de programme, fréquence de mise à jour, et le temps requis pour effectuer la mise à jour (vitesse).
Considérons d'abord le nombre de mises à jour du code du programme du microprogramme
Dans le temps de conception initiale dispositif IdO, qui doit être considéré / mise à jour du firmware nombre relatif à la partie non mise à jour, le firmware partie mise à jour peut être stocké dans des zones séparées NOR assemblage flash. Toutes les mises à jour de fragments flash NOR doivent avoir cette partie d'effacement de la mémoire, programmer ensuite de nouvelles informations dans la section de combustion. la mémoire flash NOR est divisé en une pluralité de parties appelées segments et des blocs, leurs tailles varient.
NOR composants de mémoire flash (telles que l'utilisation du composant de la technologie SST SuperFlash), est divisé en une pluralité de blocs de 4 Ko, chaque bloc peut être effacé individuellement et ensuite réécrite (4 Ko = 4 × 1024 × 8 bits = 32,762 bits). Elle peut être divisée en Pour les sections plus grandes de 8, 32 et 64 Ko, ces sections peuvent également être effacées individuellement.
En conséquence, il existe une taille de deux blocs de 8 Ko, 32 Ko une taille de 8 blocs, une taille de bloc de 64 Ko de 16 la Fig. 1 montre SST26VF064B en utilisant la région de mémoire de 8 Ko / 32 Ko / 64KB composé, et chaque région peut être protégé séparément. avant toute mise à jour d'une partie d'une mémoire flash, doit annuler la zone de protection de la partie pour permettre la combustion et d'effacement.
configuration de la mémoire figure 1 SST26VF064B (l'image) est composé de huit segments de 8 Ko, 32 Ko segments et deux segments 126 de composition 64Ko.
Après la mise à jour, encore une fois ces sections soigneusement protégées pour éviter écriture accidentelle ou d'effacer ces zones. Le firmware peut être mis à jour la section doit être façon suffisamment souple divisée en segments et des blocs, de façon à prendre en charge simultanément un nombre limité et le nombre maximum de fonctionnalités / mise à jour de la fonctionnalité.
Étant donné que la vitesse d'exécution est déterminée par le nombre de secteurs et de blocs devant être effacés et réécrits, il est préférable de prendre en compte à la fois la vitesse et la flexibilité lors de l'organisation de la partie modifiable du microprogramme.
La figure 2 montre un exemple d'organisation de la mémoire en tant que parties pouvant être mises à jour et non mises à jour. Les parties non modifiables telles que le code bootstrap sont stockées dans la zone protégée.
La figure 2 divise l'organisation de la mémoire en plusieurs parties non modifiables (telles que le code du chargeur) et des parties pouvant être mises à jour (telles que le code de fonction / programme, le code de programme image et le code de programme variable).
mise à jour du micrologiciel peut faire partie, par exemple, les caractéristiques / fonctions, conformément aux exigences de flexibilité en sections plus petites ou plus grandes sections peuvent être mis à jour le fichier image stocké dans la plus grande section, les variables mises à jour / Les paramètres sont stockés dans des sections plus petites.
La principale limitation de la fréquence de mise à jour du microprogramme est utilisé dans le numéro de demande de restrictions d'écriture de lissage résistant à la mémoire. La technologie de mémoire SuperFlash (comme SST26VF064B) fois la résistance réinscriptible jusqu'à 100.000 fois, ce qui signifie que chaque section peut être gravé et effacé 100000 Les temps
Calculez la fréquence de mise à jour de la vérification de la résistance d'écriture du micrologiciel
Le firmware peut être mis à jour 100.000 sons comme beaucoup, mais de nombreux appareils IdO recueillent des données et des informations stockées dans la mémoire flash NOR pendant l'utilisation, donc cela doit être pris en compte dans le calcul de la résistance maximale à effacer limiter les cycles.
Compte tenu du nombre d'écritures, un nombre suffisant de segments doit être alloué en mémoire Comme cela sera illustré ci-dessous, on suppose que l'IoT recueille et stocke 16 octets d'informations et que l'information devrait être collectée et stockée pendant la durée de vie du produit. 100 millions de fois.
De cette manière, le nombre de sections à affecter peut être calculé comme suit:
1 section = 4 Ko
Supposons que toutes les unités d'adresse du segment sont utilisées pour stocker des informations (16 octets de données à la fois), puis écrivent dans un nouvel emplacement d'adresse jusqu'à la fin du segment (par exemple, 0x0000-0x000F). , 0x0010-0x001F, 0x0020-0x002F, etc.).
Depuis 4 Ko / 16 octets = 256, il s'agit du nombre de fois que la capacité peut être écrite sur le support de stockage avant d'atteindre la capacité de la section et d'effacer toutes les données de la section.
La limite de résistance à l'effacement de 1 zone = 100 000 fois.
Par conséquent, si un secteur peut être écrit 256 fois et le nombre de temps résistant aux rayures est de 100 000, alors 25,6 millions de données peuvent être collectées et stockées.
Si une application doit collecter et stocker des données 100 millions de fois, le nombre de segments à attribuer est de 100 000 000/25 600 000 = 3,9 Par conséquent, dans cet exemple, quatre segments doivent être alloués pour gérer un cycle de vie de 100 millions. Données d'octet
Les ingénieurs d'équipement IoT doivent effectuer des calculs similaires pour allouer suffisamment de sections et de blocs pour les paramètres d'enregistrement de données afin d'éviter de dépasser les limites de tolérance en écriture de leurs composants flash NOR.
Réduire le temps d'actualisation et réduire les temps d'arrêt de la machine
Le nombre peut être calculé en fonction de la nécessité d'effacer et réécrire la section et le taux de mise à jour des carreaux de plusieurs hypothèses doivent réécrire les segments SST26VF064B 64KB stockés dans 1Mb, 2Mb ou code de programme firmware 4Mb / données, code de programme / données Il peut s'agir d'un code de microprogramme, d'images ou d'un autre code de programme qui doit être mis à jour.
Le processus de mise à jour implique l'exécution d'une série d'instructions de commande sur la mémoire flash.La séquence commence par déprotéger les segments de mémoire, puis les effacer, les brûler avec le code de données / programme mis à jour, et enfin les reprotéger.
SST26VF064B adopte la technologie SuperFlash qui offre de meilleures performances d'effacement Par rapport à la mémoire flash traditionnelle, les meilleures performances d'effacement fournies par la technologie SuperFlash sont très utiles pour raccourcir le temps de mise à jour.
La fréquence maximale du support 104MHz SST26VF064B, le temps d'effacement maximum 25 ms, ce qui correspond à la durée maximale d'enregistrement sur 1.5ms de page. De plus, chaque instruction de commande émise à partir de la mémoire flash de fonctionner à la fréquence de 104MHz, le délai nécessaire intermédiaire de 12ns (CE temps).
Des procédés spécifiques sont présentés dans le tableau 1 et le tableau. Ces calculs doivent être effectués pour estimer les ingénieurs de l'appareil IdO pour effectuer le taux de mise à jour, dans le but de raccourcir l'étendue maximale au cours de l'appareil de mise à jour montré sur la figure 2 les temps d'arrêt IdO.
Sélectionnez le périphérique de mémoire volatile appropriée pour améliorer la flexibilité de l'IdO
Les ingénieurs de conception d'équipements IdO doivent fournir lors de la mise à jour du code d'application et des données de flexibilité / comment les mises à jour de code bien programme, la fréquence de mise à jour et le taux de mise à jour est la nécessité de résoudre le problème de la conception d'équipements IdO, les choix de mémoire non volatile affectent ces questions et jouent un rôle clé dans le code de programme informatique mise à jour du temps et de la vitesse.