QUESTION A - Réponse aux évènements Dans un système d’acquisition avec interruptions, la fonction d’interruption est appelée de façon cyclique à toutes les 125 microsecondes pour lancer une nouvelle acquisition. Les spécifications et les délais temporels du système sont spécifiés dans le tableau suivant : - 3 cycles par instruction (pour toutes les instructions assembleur) Horloge du processeur : 10.498 MHz Sauvegarde du contexte : 21 cycles Récupération du contexte : 19 cycles Obtention du numéro de vecteur et du pointeur à la sous-routine d’IRQ : 11 cycles Latence de l’interruption négligeable Un programme d’arrière-plan nécessite 30 % du temps du processeur pour la gestion d’autres équipements. a) Quel est le nombre maximal d’instructions assembleur que peut contenir cette fonction d’interruption pour ne pas perdre d’échantillon? (Considérer le pire cas.) b) Après une analyse de votre fonction de traitement des interruptions, vous avez déterminé que cette fonction exécute un maximum de 200 instructions assembleur. Dans ce cas, quelle est la fréquence d’échantillonnage maximale si on ne veut pas manquer d’interruptions? Note : Nous avons toujours le programme d’arrière-plan qui prend 30 % du temps du processeur. QUESTION B Comme dans votre laboratoire, nous avons un système d’acquisition (ordinateur PC) qui reçoit les échantillons sur le port série et qui affiche à l’écran le signal reçu dans le domaine temporel et fréquentiel : • Les échantillons sont reçus sur le port série à une fréquence constante qui est égale à la fréquence d’échantillonnage. • Chaque échantillon reçu par l’ordinateur PC requiert immédiatement 180 microsecondes pour sa réception, son enregistrement dans le tampon et son affichage temporel. • À tous les 256 échantillons reçus, l’ordinateur entreprend une transformée de Fourrier discrète qui prend 8160 microsecondes, et l’affichage des résultats sous forme de spectre de fréquence prend 800 microsecondes. • On assume que l’ordinateur PC est dédié exclusivement à cette tâche (réception, affichage temporel, transformée de Fourrier, affichage fréquentiel). • On assume aussi que le port de communication série fonctionne à une vitesse suffisante pour transmettre tous les échantillons. De plus, un tampon circulaire est disponible pour enregistrer les données de façon temporaire durant les opérations de l’ordinateur PC. En considérant les spécifications ci-dessus, quelle est la fréquence d’échantillonnage maximale, en échantillon/sec, que peut supporter l’ordinateur PC pour éviter de perdre des échantillons ? QUESTION C Vous êtes responsable de concevoir un système qui doit gérer les signaux d’urgence provenant de 3 capteurs de température. Dès que le processeur reçoit un signal de un des capteurs, il doit identifier ce capteur et entreprendre le plus rapidement possible l’exécution d’un sousprogramme d’urgence. Un concept est proposé et vous devez l’analyser. Les principales caractéristiques du concept proposé sont : • L’architecture matérielle est illustrée dans le schéma ci-dessous. • L’IRQ0 est utilisée par le processeur pour recevoir le signal, par interruption. • L’identification du capteur est réalisée en interrogeant le registre d’état de chaque capteur à tour de rôle. • On suppose que IRQ0 est la plus prioritaire. • On suppose qu’un seul capteur envoie un signal à la fois. a) Identifiez deux faiblesses de ce concept au niveau du temps de réponse à un événement. Justifier votre réponse. (5 lignes maximum pour chaque faiblesse) b) Proposez et justifiez une architecture matérielle plus performante. (5 lignes maximum) c) En conservant la même architecture matérielle que la figure ci-dessous, pouvez vous proposer et justifier une méthode plus performante pour identifier le capteur qui requiert l’attention du processeur ? Si oui, laquelle ? (5 lignes maximum) IRQ7 CPU Capteur Capteur Capteur état état état IRQ0 Bus d’adresse et de données