83 Premium CE 5.5 : 50K de scripts Python importables !
Posted: 12 May 2020, 13:33
Le fonctionnement matériel de ta TI-83 Premium CE Edition Python est absolument passionnant, du véritable travail d'horloger.
Elle renferme 3 puces essentielles :
L'étude du cœur secondaire Atmel avait déjà bien commencé du temps où il était proposé sur le module externe d'extension TI-Python pour l'ancien modèle TI-83 Premium CE. Il comporte :
La mémoire SRAM Atmel est utilisée :
Aujourd'hui nous nous intéressons à la mémoire Flash Atmel interne. Elle renferme
Elle renferme 3 puces essentielles :
- un cœur principal JB-007-01 S7TM2-010 qui renferme entre autres le processeur eZ80 et sa mémoire RAM
- une mémoire Flash externe Winbond 25Q32JVSIQ de 4 Mio de capacité, qui renferme :
- le code d'amorçage (Boot) de 128 Kio
- le système d'exploitation
- un espace de stockage de 3 Mio de capacité qui accueille les applications ainsi que toutes les variables que tu places en mémoire d'archive
- et un cœur secondaire Atmel ATSAMD21 dédié à l'application Python
L'étude du cœur secondaire Atmel avait déjà bien commencé du temps où il était proposé sur le module externe d'extension TI-Python pour l'ancien modèle TI-83 Premium CE. Il comporte :
- un processeur 32 bits Cortex-M0+/ARMv6 cadencé à 48MHz
- une mémoire Flash interne de 256 Kio
- une mémoire SRAM de 32 Kio
La mémoire SRAM Atmel est utilisée :
- d'une part pour l'exécution du firmware CircuitPython
- d'autre part pour l'exécution de tes scripts Python, notamment à travers le tas (heap) et la pile (stack) comme évoqué récemment
Aujourd'hui nous nous intéressons à la mémoire Flash Atmel interne. Elle renferme
- le firmware CircuitPython que nous venons de mentionner
- et un espace de stockage destiné à accueillir les fichiers utilisés par le firmware ainsi que tes scripts Python importables, avec une capacité mesurée de 58,5 Kio du temps où on pouvait analyser le module TI-Python externe par connexion USB directe à un ordinateur
Bref, ce qu'il faut comprendre avec la TI-83 Premium CE Edition Python, c'est que même si tu peux stocker jusqu'à 3 Mio de scripts Python dans la mémoire Flash externe, ces derniers ne seront pas utilisables. L'application Python ne te permet en effet de lister, modifier, importer ou lancer directement que les seuls scripts présents dans la mémoire RAM associée au cœur principal eZ80, soit jusque dans les 150K si elle est bien vide.
Ensuite, lorsque tu accèdes à l'environnement Python, tous les scripts Python présents dans la mémoire RAM eZ80 (150K) sont copiés dans l'espace de stockage du cœur Atmel (58,5 Kio).
Comme ce dernier est de capacité inférieure, Texas Instruments avait par défaut fixé des limites pour éviter de l'épuiser. Tu avais droit jusqu'à présent à :
Tu te devais alors soit de supprimer des scripts Python, soit d'en déplacer certains en mémoire d'archive. Un travail de sélection/jonglage pouvant être assez fastidieux.
Ensuite, lorsque tu accèdes à l'environnement Python, tous les scripts Python présents dans la mémoire RAM eZ80 (150K) sont copiés dans l'espace de stockage du cœur Atmel (58,5 Kio).
Comme ce dernier est de capacité inférieure, Texas Instruments avait par défaut fixé des limites pour éviter de l'épuiser. Tu avais droit jusqu'à présent à :
- jusqu'à 80 fichiers de scripts Python différents
- pour une taille globale de 40 Kio, soit très en-dessous des 58,5 Kio de capacité avec 55,5 Kio d'espace libre lorsque nous avions testé sur le module TI-Python externe
Tu te devais alors soit de supprimer des scripts Python, soit d'en déplacer certains en mémoire d'archive. Un travail de sélection/jonglage pouvant être assez fastidieux.
Et bien bonne nouvelle pour toi avec la prochaine mise à jour 5.5, qui retardera nettement ces légers embêtements.
Les limites y sont en effet augmentées de 20% selon nos tests. Tu as désormais droit en mémoire RAM eZ80 de ta calculatrice à très exactement :
Les limites y sont en effet augmentées de 20% selon nos tests. Tu as désormais droit en mémoire RAM eZ80 de ta calculatrice à très exactement :
- jusqu'à 100 fichiers de scripts Python différents
- pour une taille globale de 50 Kio, bien plus proche cette fois-ci de l'espace libre estimé donc à 55,5 Kio sur le cœur Atmel