Identification processeur Zero: STM32F412/413 Arm Cortex-M4
Posted: 04 Apr 2022, 12:42
Dans une actualité précédente nous t'annoncions pour la rentrée 2022 la sortie d'une toute nouvelle calculatrice graphique, la Zero. Le projet se veut offrir une version améliorée et plus abordable de la TI-84 Plus CE, équivalent à l'international de notre TI-83 Premium CE française, tout en étant compatible avec ces dernières niveau utilisation.
Par rapport à ce dernier point, on peut justement noter les claviers aux inscriptions absolument identiques :
Les nombreuses améliorations concernent le logiciel et le matériel.
Niveau logiciel par exemple, on peut noter une fenêtre graphique tirant grandement profit de la définition en 320×240 pixels de l'écran, alors que Texas Instruments la limite pour sa part à une zone centrale de 265×165 pixels alors entourée d'une épaisse bordure inesthétique et totalement inutile sur ses parties latérales.
Niveau matériel nous en savons déjà un peu plus. La Zero utilise :
Imagine ce que donneront tes programmes TI-Basic pour TI-83 Premium CE et TI-84 Plus CE avec une telle puissance...
Par rapport à ce dernier point, on peut justement noter les claviers aux inscriptions absolument identiques :
Les nombreuses améliorations concernent le logiciel et le matériel.
Niveau logiciel par exemple, on peut noter une fenêtre graphique tirant grandement profit de la définition en 320×240 pixels de l'écran, alors que Texas Instruments la limite pour sa part à une zone centrale de 265×165 pixels alors entourée d'une épaisse bordure inesthétique et totalement inutile sur ses parties latérales.
Niveau matériel nous en savons déjà un peu plus. La Zero utilise :
- à la place du processeur 8 bits eZ80 à 48 MHz des TI-84 Plus CE, un 32 bits à pas moins de 100 MHz !
- à la place de l'antique port mini-USB AB des TI-84 Plus CE, une connectivité USB enfin contemporaine et facile avec un port USB-C, première calculatrice graphique au monde à nous proposer cette évolution tant attendue !
- par rapport aux 4 Mio de Flash des TI-84 Plus CE 20% de stockage supplémentaire, ce qui nous amène donc à 5 Mio (que l'on peut supposer répartis sur 2 puces de capacités respectives 4 Mio et 1 Mio, règle binaire des puissances de 2 oblige)
Imagine ce que donneront tes programmes TI-Basic pour TI-83 Premium CE et TI-84 Plus CE avec une telle puissance...
Restait toutefois une question essentielle par rapport à la possibilité de faire tourner des programmes écrits en langage assembleur.
Quel pouvait bien être le processeur utilisé ?
Quel pouvait bien être le processeur utilisé ?
Et bien RapidZapper de la communauté NumWorks Omega a étudié le fichier de mise à jour en version 1.0.106 présent sur le site officiel.
Sans avoir donc la calculatrice entre les mains, il réussit l'exploit d'identifier son processeur. Cela l'amène en effet à conclure à l'utilisation d'une puce microcontrôleur STM32 comme sur les calculatrices NumWorks, et plus précisément à un membre de la famille STM32F4, tous basés sur un processeur Arm Cortex-M4.
Cela fait beaucoup de choix, il en existe pas moins de 11 :
STM32F401, STM32F405, STM32F407, STM32F410, STM32F411, STM32F412, STM32F413, STM32F427, STM32F429 ou STM32F469
Mais nous savons que le processeur doit tourner à 100 MHz, ce qui nous permet de réduire le choix à seulement 4 puces :
STM32F410, STM32F411, STM32F412 ou STM32F413
On peut affiner encore un petit peu. Nous avons vu plus haut que la mémoire de stockage Flash était scindée en deux espaces de 4 Mio et 1 Mio répartis sur 2 puces. Sans doute que les 1 Mio sont sur une Flash interne au microcontrôleur. Cela nous permet de réduire le choix à seulement 2 puces :
STM32F412 ou STM32F413
À bientôt pour la réponse...
Sans avoir donc la calculatrice entre les mains, il réussit l'exploit d'identifier son processeur. Cela l'amène en effet à conclure à l'utilisation d'une puce microcontrôleur STM32 comme sur les calculatrices NumWorks, et plus précisément à un membre de la famille STM32F4, tous basés sur un processeur Arm Cortex-M4.
Cela fait beaucoup de choix, il en existe pas moins de 11 :
STM32F401, STM32F405, STM32F407, STM32F410, STM32F411, STM32F412, STM32F413, STM32F427, STM32F429 ou STM32F469
Mais nous savons que le processeur doit tourner à 100 MHz, ce qui nous permet de réduire le choix à seulement 4 puces :
STM32F410, STM32F411, STM32F412 ou STM32F413
On peut affiner encore un petit peu. Nous avons vu plus haut que la mémoire de stockage Flash était scindée en deux espaces de 4 Mio et 1 Mio répartis sur 2 puces. Sans doute que les 1 Mio sont sur une Flash interne au microcontrôleur. Cela nous permet de réduire le choix à seulement 2 puces :
STM32F412 ou STM32F413
À bientôt pour la réponse...
Source : viewtopic.php?f=121&t=25579#p267378
Crédits photos : TIFreak8x