Brevet FR2832233A1 — publié le 20030516

Reconfiguration de composants programmables dans un appareil électronique La présente invention concerne la reconfiguration de composants reprogrammables dans un appareil électronique, tel qu'un terminal de télécommunications, y compris un terminal radiotéléphonique. Par exemple, les modes de configuration concernent des interfaces de télécommunications afin d'adapter l'appareil au réseau de télécommunications auquel il est susceptible d'être connecté temporairement en fonction du lieu où se trouve l'appareil. Une solution connue pour résoudre l'adaptation de l'appareil à diverses interfaces de télécommunications est de prévoir différents modules matériels et logiciels indépendants implémentant les diverses interfaces souhaitées et insérées dans le terminal. Si l'appareil doit être connecté au réseau de télécommunications correspondant à l'une des interfaces introduites, celle-ci est sélectionnée et les autres interfaces demeurent inactives. Une autre solution moins encombrante consiste à interchanger un module d'interface de télécommunications avec une autre dans l'appareil. Dans ces deux solutions connues, il est nécessaire de prévoir un module d'interface chaque fois qu'un nouveau réseau de télécommunications ou que des modifications d'un réseau connu sont définies et généralement normalisées. La présente invention vise à remédier aux inconvénients des solutions connues précitées en tirant profit du caractère reprogrammable de certains composants dans l'appareil afin d'autoriser l'usager de l'appareil à sélectionner un mode de configuration de manière autonome, sans l'apport de modules spécifiques chaque fois qu'un nouveau mode de configuration est créé. A cette fin, un procédé pour reconfigurer un appareil électronique ayant des composants programmables selon des modes de configuration est caractérisé en ce qu'il comprend les étapes de : - fournir un dispositif électronique ayant mémorisé des données définissant plusieurs modes de configuration et connecter le dispositif à l'appareil, - sélectionner un mode de configuration depuis l'appareil dans le dispositif, - déprogrammer les composants programmables de l'appareil sous la commande du dispositif, et - configurer les composants programmables selon les données du mode de configuration sélectionné sous la commande du dispositif. Ainsi, selon l'invention, lorsque l'usager de l'appareil souhaite changer de mode de configuration, le dispositif électronique, de préférence portable et amovible de l'appareil, efface toutes les données et programmes dans les composants programmables de l'appareil qui ne sont pas nécessaires au nouveau mode de configuration sélectionné et fournit toutes les données à l'appareil qui sont nécessaires au fonctionnement de celui-ci selon le mode de configuration sélectionné. Selon un autre aspect de l'invention, le procédé comprend une sauvegarde du contexte de fonctionnement dans l'appareil à la suite d'une décision de reconfiguration dans l'appareil, préalablement à l'étape de sélectionner un mode de configuration. Cet aspect permet à l'usager de l'appareil de récupérer certaines données et programmes qui sont spécifiques au fonctionnement de l'appareil et/ou au contexte environnant l'appareil et qui sont indépendants des modes de configuration. Initialement, le dispositif électronique fourni contient de préférence des caractéristiques matérielles et logicielles de l'appareil notamment relatives à chacun des composants programmables. Ces caractéristiques de l'appareil sont nécessaires pour acquérir le programme et les paramètres de chaque mode de configuration les mieux adaptés à l'architecture de l'appareil définie par lesdites caractéristiques d'appareil. Les données telles que programme et paramètres d'un mode sélectionné sont téléchargées dans le dispositif électronique selon les étapes suivantes : - connecter le dispositif dans un moyen téléchargeur, - transmettre depuis le moyen téléchargeur un identificateur d'un mode de configuration et les caractéristiques d'appareil lues dans le dispositif, à un serveur, - analyser les caractéristiques d'appareil dans le serveur afin de sélectionner dans celui-ci des données définissant le mode de configuration désigné par l'identificateur les plus adaptées aux caractéristiques d'appareil, et - transmettre l'identificateur et les données de mode de configuration sélectionnées depuis le serveur vers le moyen téléchargeur afin d'écrire l'identificateur et les données dans le dispositif. L'invention concerne également un dispositif électronique pour reconfigurer un appareil électronique ayant des composants programmables, mettant en oeuvre le procédé selon l'invention. Le dispositif est caractérisé en ce qu'il comprend un moyen de mémoire pour mémoriser des données définissant respectivement plusieurs modes de configuration de l'appareil, et un moyen de commande pour déprogrammer les composants programmables et configurer les composants programmables de l'un sélectionné des modes de configuration lues dans le moyen de mémoire. A des fins de téléchargement des données définissant des modes de configuration, le dispositif comprend de préférence un moyen de mémoire pour mémoriser des caractéristiques matérielles et logicielles de l'appareil. D'autres caractéristiques et avantages de la présente invention apparaîtront plus clairement à la lecture de la description suivante de plusieurs réalisations préférées de l'invention en référence aux dessins annexés correspondants dans lesquels : - la figure 1 est un bloc-diagramme schématique d'un appareil électronique à composants programmables relié à un dispositif de reconfiguration selon l'invention ; - la figure 2 est un algorithme d'étapes du procédé de reconfiguration selon l'invention ; et - la figure 3 est un bloc-diagramme schématique d'un système de téléchargement de données de mode de configuration dans le dispositif de reconfiguration. Dans la figure 1 est montré un appareil électronique AP ayant des composants programmables selon des modes de configuration. Par exemple, l'appareil AP est un terminal de données, tel qu'un ordinateur personnel PC, ou un terminal radiotéléphonique cellulaire mobile. De manière générale, l'appareil AP comprend quatre types de composants programmables Cl à C4. Le premier composant Cl est généralement unique et constitue un microcontrôleur qui gère l'activation et le fonctionnement de l'appareil AP. Le premier composant Cl est relié à une interface d'usager comprenant notamment un afficheur AF et un clavier CL, et gère le lien de communication et la gestion de la ressource de communication lors d'une communication avec un terminal distant, ainsi que la source d'alimentation électrique. Un ou plusieurs deuxièmes composants C2 sont des processeurs de type traitement de signal DSP (Digital Signal Processor). Chaque processeur DSP est habituellement dédié à des tâches de traitement du signal et son fonctionnement est contrôlé par le microcontrôleur Cl. Par exemple, un ou plusieurs processeurs DSP peuvent être dédiés à une interface de communication ou de radiocommunication et aussi réaliser les opérations nécessaires au codagedécodage et à l'émission-réception des données. Les composants du troisième type C3 sont des circuits programmables à logique séquentielle et combinatoire du type FPGA (Field Programmable Gate Array) qui peuvent pour certains constituer des coprocesseurs esclaves de processeurs DSP C2. Le quatrième type de composants est relatif à des mémoires reprogrammables C4. Selon le type de l'appareil AP, celui-ci comprend un ou plusieurs des composants programmables Cl à C4. Au minimum, un appareil AP comprend un microcontrôleur Cl avec éventuellement une mémoire reprogrammable C4. Tous les composants Cl à C4 sont reliés par un bus classique BAP interne à l'appareil AP. L'appareil se comporte ainsi comme un système multi-processeur programmable. Un dispositif électronique portable DI pour configurer l'appareil AP est également montré à la figure 1. Le dispositif DI comprend essentiellement un microcontrôleur CT et des mémoires ME qui sont reliées par un bus BDI. Le bus BDI du dispositif DI est relié au bus BAP de l'appareil AP par une liaison LI qui peut être une liaison filaire, un bus série universel USB, ou bien une liaison radioélectrique de proximité du type Bluetooth ou toute autre liaison sans contact. Par exemple, le dispositif DI est un petit module à circuit intégré ou une carte à microcontrôleur, dite également carte à puce, et est encastré ou enfiché dans l'appareil AP et ainsi amovible de celui-ci. En ce qui concerne l'invention, la mémoire ME contient des données relatives aux caractéristiques matérielles et logicielles CAP de l'appareil AP et à des modes de configuration Ml à MQ de l'appareil AP. Les caractéristiques CAP de l'appareil concernent aussi bien les ressources matérielles que les ressources logicielles de celui-ci. Les caractéristiques de matériel sont par exemple la marque, le nom du fabricant, le type et le numéro de série de chacun des composants Cl à C4, le nombre de composants du même type, la taille de chacune des mémoires C4, la fréquence d'horloge des composants Cl et C2, etc. Les caractéristiques CAP sont également relatives aux ressources logicielles de l'appareil AP et en particulier aux versions du système d'exploitation et des divers programmes, applications et librairies implémentés dans les composants de l'appareil AP, à l'interdépendance entre ces derniers, etc. L'ensemble des caractéristiques matérielles et logicielles CAP constitue une signature de l'architecture de l'appareil AP qui sera utilisée pour télécharger des modes de configuration dans le dispositif DI, comme on le verra dans la suite de la description. Chaque mode de configuration Mq, avec 1 q bien encore avec un réseau de radiocommunication par satellites non géostationnaires à orbite basse. Le procédé de reconfiguration de l'appareil électronique AP selon l'invention comprend essentiellement des étapes principales EO à E7 montrées à la figure 2. Il est supposé qu'à l'étape initiale EO, l'appareil AP est dans un mode de configuration prédéterminé et que le dispositif DI est connecté à l'appareil AP et est à l'état de veille. Tous les composants programmables Cl à C4 de l'appareil AP ont été configurés de manière à réaliser toutes les tâches associées au mode de configuration prédéterminé, que les tâches soient liées à un traitement en bande de base ou à des couches protocolaires par exemple. A l'état de veille, le dispositif DI n'intervent pas dans le fonctionnement de l'appareil AP et lorsqu'il n'est pas autonome en matière d'alimentation électrique, est alimenté par la source d'alimentation de l'appareil AP à travers la liaison LI. Il est également supposé que la mémoire ME du dispositif DI contient les programmes PR1 à PRQ et paramètres PA1 à PAQ de plusieurs modes de configuration Ml à MQ. Pour changer de mode de configuration à l'étape El, l'usager de l'appareil AP sélectionne un menu de configuration dans un menu principal présenté sur l'afficheur AF de l'appareil AP. D'une manière classique, les affichages à l'afficheur AF de l'appareil et les sélections par l'usager peuvent être relayées par des messages vocaux. Lorsque le menu de configuration de mode est sélectionné à l'étape El, l'appareil AP se met en état d'attente, c'est-à-dire les composants Cl à C3 commandent à l'étape E2 une sauvegarde des données du contexte de fonctionnement actuel de l'appareil AP dans les mémoires C4 afin de les retrouver après le changement de mode. A partir de l'étape E2, le microcontrôleur CT dans le dispositif DI est réveillé et prend le contrôle de l'ensemble DI et AP afin d'installer le mode de configuration qui sera sélectionné. En d'autres termes, toutes les opérations effectuées dans les étapes suivantes sont pilotées par le microcontrôleur CT directement ou par l'intermédiaire du microcontrôleur Cl ou de l'un des processeurs DSP C2 qui fonctionne alors en esclave du microcontrôleur CT. A l'étape E3, l'afficheur AF présente la liste des modes de configuration Ml à MQ enregistrés dans la mémoire ME du dispositif DI, sous la forme de leurs noms accompagnés le cas échéant de certaines caractéristiques CAP. L'usager valide une sélection de l'un Mq des modes de configuration affichés notamment au moyen du clavier CL afin que le microcontrôleur Cl communique un identificateur du mode sélectionné au microcontrôleur CT du dispositif DI, à l'étape E4. Les étapes suivantes E5 et E6 sont gérées automatiquement par le microcontrôleur CT et sont transparentes à l'usager. A l'étape E5, le microcontrôleur CT commande une mise au repos des composants programmables Cl à C4 dans l'appareil AP, c'est-à-dire une déprogrammation partielle ou totale d'un ou de plusieurs composants de manière à réinitialiser des mémoires de programme dans les composants Cl et C2 ainsi qu'éventuellement dans les circuits programmables C3 et C4. La déprogrammation à l'étape E5 dépend d'une comparaison entre le mode de configuration prédéterminé précédent qui doit être supprimé et le nouveau mode de configuration Mq qui vient d'être sélectionné. Puis à l'étape E6, le microcontrôleur CT du dispositif DI reconfigure les composants Cl à C4 de l'appareil AP en fonction des paramètres PAq du mode sélectionné Mq selon des opérations déterminées commandées et contrôlées par le programme correspondant PRq. En particulier, les paramètres PRq sont chargés dans les zones programmables des composants Cl à C4 à la place des paramètres du mode de configuration prédéterminé précédent qui ont été effacés à l'étape E5. Le dispositif DI se remet ensuite à l'étape E7 automatiquement à l'état de veille et devient inactif par rapport à l'appareil AP qui peut maintenant fonctionner selon le mode de configuration sélectionné Mq. L'appareil AP retrouve les données relatives au contexte de fonctionnement sauvegardées dans les mémoires C4 pour les utiliser dans le mode de configuration Mq. Les données PRq et PAq définissant un mode de configuration Mq sont téléchargées dans la mémoire ME du dispositif portable DI comme indiqué à l'étape initiale EO dans la figure 2. Par exemple, les données PRq et PAq sont incluses dans un paquetage sous la forme d'une applet écrite en langage orienté objet Java. Le dispositif DI est introduit dans un terminal téléchargeur TC qui communique avec un serveur SE à travers un réseau de télécommunications de type internet RT, comme montré à la figure 3. Le terminal téléchargeur contient une application dédiée au téléchargement de mode de configuration. Le téléchargement des données PRq et PAq d'un mode de configuration prédéterminé Mq dans le dispositif DI comporte principalement quatre étapes E01 à E04. A l'étape E01, après la connexion du dispositif DI au terminal de téléchargement TC, l'usager saisit dans le terminal TC un identificateur IDq du mode Mq à écrire en mémoire ME du dispositif DI et ultérieurement à installer dans l'architecture de l'appareil AP. A l'étape E02, le terminal TC produit et transmet au serveur SE un paquet IP (Internet Protocol) destiné au serveur SE et contenant l'identificateur IDq du mode sélectionné Mq et les caractéristiques CAP de l'architecture de l'appareil AP qui sont lues par le terminal téléchargeur TC dans la mémoire ME du dispositif DI. En fonction des caractéristiques matérielles et logicielles CAP dans le paquet reçu par le serveur SE, ce dernier décide du meilleur choix des données PRq et PAq du mode désigné par l'identificateur IDq et lit les données PRq et PAq dans une base de données associée au serveur SE à l'étape E03. Le serveur SE contient des caractéristiques de divers modes de configuration qui sont mises à jour aussi bien par des équipementiers d'appareils AP et de composants programmables Cl à C4 que par des opérateurs de réseau de télécommunications. Selon l'analyse des caractéristiques d'appareil effectuée par le serveur, celui-ci retourne au terminal téléchargeur TC un paquet IP comprenant l'identificateur de mode IDq et les données PRq et PAq du mode de configuration sélectionné Mq les plus adaptées à l'architecture d'appareil définie par les caractéristiques reçues CAP, ou le cas échéant un paquet indiquant qu'il n'y a aucune configuration du mode Mq adaptable à l'architecture de l'appareil AP selon les caractéristiques CAP. Les données PRq et PAq sont alors écrites par le terminal téléchargeur TC dans la mémoire ME du dispositif DI en correspondance avec l'identificateur de mode IDq. Lorsqu'ultérieurement une reconfiguration de mode est demandée à l'étape El, le microcontrôleur Cl de l'appareil AP lit dans la mémoire ME l'identificateur IDq du mode Mq qui vient d'être téléchargé dans le dispositif DI afin de permettre sa sélection aux étapes E3 et E4. En pratique, le terminal de téléchargement TC peut constituer une borne publique de téléchargement au même titre qu'un terminal bancaire ou autre terminal de service mis à la disposition du public. En variante, le terminal téléchargeur TC peut être confondu avec l'appareil AP accueillant le dispositif DI. Dans cette variante, l'application dédiée au téléchargement des données de mode de configuration est installée dans le dispositif DI dont le microcontrôleur CT commande les échanges de paquets avec le serveur SE à travers l'appareil AP qui est transparent au contenu des paquets. REVENDICATIONS 1-Procédé pour reconfigurer un appareil électronique ayant des composants programmables selon des modes de configuration, caractérisé en ce qu'il comprend les étapes de : - fournir (EO) un dispositif électronique (DI) ayant mémorisé des données (PRq, PAq) définissant plusieurs modes de configuration (M1-MQ) et connecter le dispositif à l'appareil, - sélectionner (ES, E4) un mode de configuration (Mq) depuis l'appareil (AP) dans le dispositif (DI), - déprogrammer (E5) les composants programmables (Cl-C4) de l'appareil sous la commande du dispositif, et - configurer (E6) les composants programmables (C1-C4) selon les données du mode de configuration sélectionné (Mq) sous la commande du dispositif (DI). 2-Procédé conforme à la revendication 1, comprenant une sauvegarde (E2) du contexte de fonctionnement dans l'appareil (AP) à la suite d'une décision de reconfiguration (El) dans l'appareil (AP), préalablement à l'étape de sélectionner (E3, E4) un mode de configuration. 3-Procédé conforme à la revendication 1 ou 2, selon lequel le dispositif (DI) est en veille avant l'étape (EO) de sélectionner (E3, E4) et après l'étape de configurer (E6). 4-Procédé conforme à l'une quelconque des revendications 1 à 3, selon lequel le dispositif (DI) est amovible de l'appareil (AP). 5-Procédé conforme à l'une quelconque des revendications 1 à 4, selon lequel les modes de configuration concernent des interfaces de télécommunications, y compris de radiocommunications. 6-Procédé conforme à l'une quelconque des revendications 1 à 5, selon lequel le dispositif (DI) contient en mémoire (ME) des caractéristiques matérielles et logicielles (CAP) de l'appareil (AP). 7-Procédé conforme à la revendication 6, caractérisé en ce qu'il comprend les étapes de : - connecter (E01) le dispositif (DI) à un moyen téléchargeur (TC), - transmettre (E02) depuis le moyen téléchargeur (TC) un identificateur (IDq) d'un mode de configuration (Mq) et les caractéristiques d'appareil (CAP) lues dans le dispositif, à un serveur (SE), - analyser (E03) les caractéristiques d'appareil (CAP) dans le serveur (SE) afin de sélectionner dans celui-ci des données (PRq, PAq) définissant le mode de configuration désigné par l'identificateur (IDq) les plus adaptées aux caractéristiques d'appareil (CAP), et - transmettre (E04) l'identificateur (IDq) et les données de mode de configuration sélectionnées (PRq, PAq) depuis le serveur (SE) vers le moyen téléchargeur (TC) afin d'écrire l'identificateur et les données de mode de configuration dans le dispositif (DI). 8-Procédé conforme à la revendication 7, selon lequel le moyen téléchargeur (TC) est confondu avec l'appareil (AP). 9-Dispositif électronique (DI) pour reconfigurer un appareil électronique ayant des composants programmables, mettant en oeuvre le procédé conforme à l'une quelconque des revendications 1 à 8, caractérisé en ce qu'il comprend un moyen de mémoire (ME) pour mémoriser des données (PRq, PAq) définissant respectivement plusieurs modes de configuration (M1-MQ) de l'appareil (AP), et un moyen de commande (CT) pour déprogrammer les composants programmables (Cl-C4) et configurer les composants programmables selon les données de l'un sélectionné (Mq) des modes de configuration lues dans le moyen de mémoire (ME). 10-Dispositif conforme à la revendication 9, comprenant un moyen de mémoire (ME) pour mémoriser des caractéristiques matérielles et logicielles (CAP) de l'appareil (AP).