12.07.2015 Views

Examen mai 2006.pdf

Examen mai 2006.pdf

Examen mai 2006.pdf

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Année 2006 : <strong>Examen</strong> du 11 <strong>mai</strong> Informatique IndustrielleINFORMATIQUE INDUSTRIELLEPA DEGRYSELicence SETIA niveau L3 / IUP2 GEIIle 11/05/2006Avec Documents Avec Calculette Durée 2 heuresPlan mémoire14h-16hSoit un microprocesseur 68000 possédant un bus d'adresse de 24 bits et un bus de données de 16 bits.A) Espace adressable.Quelle est la taille maximale de la zone mémoire adressable.B) Blocs mémoires.Donner la valeur hexadécimale binaire et décimale de la dernière adresse d'un bloc mémoirecommençant à l'adresse 0 et de taille suivante 1k, 8k, 16k, 256k, 512k, 1M, 8M.C) Décodeur d’adresse.On veut découper le plan mémoire d'un 68000 en bloc de taille minimale 64k octets: quelles sont leslignes d'adresses qu'il faut utiliser dans le circuit logique de décodage ?D) Soit le plan mémoire d'un 68000 ci-dessous :RAM CPU BUS VME ROM CPU Vide ZP2ZP1$000000 $FFFFFFLa RAM CPU a pour taille 1 Méga octets, la ROM CPU a pour taille 256k octets et les zones ZP1 etZP2 64K octets.La zone vide entre ROM CPU et ZP2 a pour taille 128k.Donner pour chaque zone, RAM CPU ,BUS VME, ROM CPU, ZP1, ZP2 son adresse de début et sonadresse de fin.E) Arithmétique binaireSoit une unité arithmétique et Logique qui réalise des opérations sur deux mots de 4 bits "A" et "B" signés encomplément à deux.Elle range le résultat dans un mot "R" de 4 bits et met à jour les bits du Registre Code Condition CCR.A=[a3 a2 a1 a0] B=[b3 b2 b1 b0] R=[r3 r2 r1 r0] CCR=[N Z V C]Le bit N indique le signe du résultat de l’opération effectuée.Le bit Z indique si le résultat de l’opération effectuée est nul.Le bit V indique si, lors de l’opération effectuée, il y a eu un dépassement de capacité en complément àdeux.Le bit C est le bit de retenue.On effectue une opération de soustraction des deux mots de 4 bits A et B : R = A-BPage 1/2


Année 2006 : <strong>Examen</strong> du 11 <strong>mai</strong> Informatique IndustrielleF) Faire le schéma symbolique de cette ALU.G) Préciser où sont les entrées d’instructions, de données.H) Préciser où sont les sorties de données et du Registre Code Condition.I) Donner les équations des 4 bits de R (r3 r2 r1 r0)J) Donner les équations des bits du Registre Code Condition N, Z, V et C.K) Programme sur un Kit DSK C5402L) Architecture du KITA) Mémoire programme• Donner les adresses physiques et la taille de chaque zone mémoire programme d’un DSP C5402.• Quel est le rôle du bit de configuration MP/PC.• Quel est la taille maximale de la mémoire RAM externe au DSP que l’on peut implanter.• Expliquer la notion de mémoire paginée.B) Mémoire de donnée• Quelle est la taille de la mémoire de donnée : est-elle paginée ?• Quels sont les adresses et le rôle de la DARAMC) Mémoire d’entrées sorties• Quelle est la taille de la mémoire d’entrées sorties : est-elle paginée ?• Quels sont les adresses et le rôle de la DARAM ?• Quels sont les adresses occupées par les registres du CPLD ?• Donner les adresses et le numéros des bits qui sont associés aux LEDS.• Donner les adresses et le numéros des bits qui sont associés aux USER SWITCH.• Donner les adresses occupées par l’UART.M) ProgrammePour chaque question on demande le programme en « C », la liste des fichiers « include », la liste et le typedes variables globales et locales utilisées.A) Initialisation de l’UART• Donner le programme qui initialise l’UART en mode 4600 Baud, 7 bits, 2 Stop, parité impaire etsynchronisation logicielle.• Donner le programme qui initialise les interruptions de l’UART. Quel est le niveau d’interruptionoù est câblé l’UART ?• Quelle est la notion de vecteur d’interruption.• Expliquer la ligne de code suivante :if (uart_interrupt_hook((Fp)c_int1)== ERROR){printf("Error initializing UART for IRQ\n");status = ERROR;}B) Initialisation du CODEC• Donner le programme d’initialisation du CODEC dans le même mode que celui utilisé en TP.• Expliquez les lignes de programme suivantes en précisant à quoi correspondent tous les symboles :/* Wait for sample from handset */while (!MCBSP_RRDY(HANDSET_CODEC)) {};/* Read sample from and write back to handset codec */data = *(volatile u16*)DRR1_ADDR(HANDSET_CODEC);*(volatile u16*)DXR1_ADDR(HANDSET_CODEC) = data;Page 2/2

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!