1 Jeudi 03 avril 2014 EXAMEN – Langage VHDL – Durée : 2 heures – Jeudi 03 avril 2014 Documents autorisés : tous polycopiés VHDL Documents interdits : TD et TP du cours VHDL Téléphones portables interdits Exercice n°1 - Réalisation d’un driver DAC101S101 L'objectif est de réaliser dans un FPGA Spartan6 de Xilinx, un driver (pilote) matériel pour utiliser le convertisseur numérique-analogique DAC101S101 du fabricant "National Semiconductor". Un extrait de la documentation technique du DAC est fourni en annexe. Le schéma complet du driver DAC101S101 est représenté ci-dessous. Ce schéma sera la dernière description VHDL « top_driverDAC », de type structurelle, que vous devrez réaliser à partir des 3 symboles des descriptions VHDL suivantes : "div_freq", "fsm_DAC101S101", et "registre_10b". Ce schéma présente les entrées et sorties de la description « top_driverDAC », ainsi que les signaux internes utilisées dans cette architecture. 2 Jeudi 03 avril 2014 b. Ecrire en VHDL l’entité de cette fonction. c. Ecrire en VHDL l’architecture de cette fonction en utilisant une description comportementale avec l'utilisation d'un processus. L'entrée de remise à zéro est asynchrone et active à l'état haut ‘1’. 2. Fonction "registre_10b" : Cette fonction est un registre 10 bit synchrone. Le bus de sortie de cette fonction prendra la valeur du bus d’entrée lors d’un front montant de son signal d’horloge. Par ailleurs, ce bus de sortie sera initialisé à zéro lorsque son entrée de remise à zéro asynchrone sera activée par un niveau haut ‘1’. a. Ecrire en VHDL l’entité de cette fonction. b. Ecrire en VHDL l’architecture de cette fonction en utilisant une description comportementale avec l'utilisation d'un processus. 3. Fonction "fsm_DAC101S101" : Il s’agit ici du cœur de l’architecture qui est une machine à états finis de Moore (FSM). Le graphe d’état de cette machine d’états finis est représenté ci-dessous. 1. Fonction "div_freq" : a. Si le DAC101S101 est alimenté à 3,3 Volts, quelle est la fréquence maximale de SCLK ? Il s'agit de diviser la fréquence de 100 MHz du signal d'entrée "clk" en un signal d'horloge de fréquence compatible avec le signal "sclk" (c'est-à-dire de fréquence égale ou inférieure à celle déterminée à la question précédente). Licence Professionnelle CONception des Systèmes Electroniques et oPToélectroniques IUT d’Aix-Marseille Université Licence Professionnelle CONception des Systèmes Electroniques et oPToélectroniques IUT d’Aix-Marseille Université 3 Jeudi 03 avril 2014 a. Ecrire en VHDL l’entité de cette fonction. b. Ecrire en VHDL l’architecture de cette fonction en utilisant une description comportementale avec l'utilisation de trois processus. 4. Fonction "top_driverDAC" : C’est la description correspondant au schéma donné en première page. a. Ecrire en VHDL l’entité de cette fonction. b. Ecrire en VHDL l’architecture de cette fonction en utilisant une description structurelle avec l'utilisation de trois composants réalisés précédemment. L’inverseur logique sera décrit en utilisant l’opérateur logique d’inversion du VHDL directement dans une instruction concurrente ! Exercice n°2 - Descriptions VHDL d’une fonction combinatoire 1. Dessinez (en grand) la boîte noire en indiquant le nom, les entrées et sorties correspondant à la description VHDL donnée ci-dessous. 2. A l'intérieur de la boîte noire, dessinez aussi clairement que possible, le schéma électronique équivalent avec des portes logiques. 3. Quelle est la fonction combinatoire représentée par cette description ? 4. Ecrire une autre architecture en VHDL, nommée « ARCHI2 », correspondant à la même fonctionnalité, mais utilisant l'instruction concurrente WITH/SELECT. 5. Ecrire une autre architecture en VHDL, nommée « ARCHI3 », correspondant à la même fonctionnalité, utilisant l'instruction concurrente WHEN/ELSE. 4 Jeudi 03 avril 2014 Exercice n°3 – Machine à états finis de Moore Un monte-charge dessert 2 étages. Pour sa commande, à chaque étage est prévu un bouton poussoir permettant : - à l’étage inférieur de demander la montée, - à l’étage supérieur de demander la descente. Pour que ces informations soient prises en considération, il est nécessaire que le montecharge soit à l’étage correspondant. Des capteurs permettent de connaître les positions haute et basse du monte-charge. Signaux de commande (actifs à ‘1’) M : Montée D : Descente Informations (capteurs actifs à l’état haut) fdcB : Fin de course ‘bas’ fdcH ; fin de course ‘haut’ BPM : Bouton Poussoir ‘haut’ pour monter BPD : Bouton Poussoir ‘bas’ pour descendre. Le graphe d’états finis est donné : RAZ etat1 FdcB Remarques : 9 La clause OTHERS est nécessaire pour les questions 4 des exo1 et exo2, puisque le type des signaux permet 9 états possibles (std_logic : 10XZWHLU-). 9 Les instructions séquentielles doivent toujours se trouver à l'intérieur d'un processus. 9 Le 'begin' de l'architecture ne doit pas faire oublier le 'begin' des processus ! FdcB BPM etat4 etat2 D M BPD etat3 FdcH FdcH Remarque : Dans la partie inférieur de chaque bulle est indiqué les signaux de commande actifs, c.à.d. mis à l’état ‘1’. Si le nom n’apparaît pas, il sera inactif, c.à.d. à l’état logique’0’. 1. 2. 3. 4. Sur un schéma bloc, répertoriez les entrées et les sorties de la machine d'états. Ecrire l'entité en VHDL de cette machine d'états. Ecrire l’architecture de cette machine d’états en utilisant 3 processus. Modifiez le graphe d’état ci-dessus en ajoutant un signal d’urgence, nommé « URG » actif à ‘1’. Lorsque ce signal sera activé, le monte-charge devra descendre au niveau inférieur s’il n’y est pas ou rester à ce niveau s’il s’y trouve. Remarque : compléter votre graphe d’état en utilisant un stylo de couleur vert de préférence. Licence Professionnelle CONception des Systèmes Electroniques et oPToélectroniques IUT d’Aix-Marseille Université Licence Professionnelle CONception des Systèmes Electroniques et oPToélectroniques IUT d’Aix-Marseille Université Symbol Parameter fSCLK SCLK Frequency ts Output Voltage Settling Time (Note 10) SR Output Slew Rate Glitch Impulse Conductions 100h to 300h code change, RL = 2kΩ CL ≤ 200 pF Code change from 200h to 1FFh Digital Feedthrough Typical Limits Units (Limits) 30 MHz (max) 5 7.5 μs (max) 1 V/μs 12 nV-sec 0.5 nV-sec VA = 5V 1.6 μs VA = 3V 1.9 tWU Wake-Up Time 1/fSCLK SCLK Cycle Time tH SCLK High time tL SCLK Low Time tSUCL Set-up Time SYNC to SCLK Rising Edge −15 ns (min) 5 13 ns (min) 5 13 ns (min) 0 ns (min) tSUD Data Set-Up Time 2.5 5 ns (min) Data Hold Time 2.5 4.5 ns (min) tCS SCLK fall to rise of SYNC VA = 5V 0 3 ns (min) VA = 3V −2 1 ns (min) 2.7 ≤ VA ≤ 3.6 9 20 ns (min) SYNC High Time 3.6 ≤ VA ≤ 5.5 5 Transfer Characteristic μs 33 tDHD tSYNC DAC101S101 Values shown in this table are design targets and are subject to change before product release. The following specifications apply for VA = +2.7V to +5.5V, RL = 2kΩ to GND, CL = 200 pF to GND, fSCLK = 30 MHz, input code range 12 to 1011. Boldface limits apply for TMIN ≤ TA ≤ TMAX: all other limits TA = 25˚C, unless otherwise specified. DAC101S101 A.C. and Timing Characteristics 10 20154105 FIGURE 1. Input / Output Transfer Characteristic ns (min) Note 1: Absolute Maximum Ratings indicate limits beyond which damage to the device may occur. Operating Ratings indicate conditions for which the device is functional, but do not guarantee specific performance limits. For guaranteed specifications and test conditions, see the Electrical Characteristics. The guaranteed specifications apply only for the test conditions listed. Some performance characteristics may degrade when the device is not operated under the listed test conditions. Timing Diagram Note 2: All voltages are measured with respect to GND = 0V, unless otherwise specified Note 3: When the input voltage at any pin exceeds the power supplies (that is, less than GND, or greater than VA), the current at that pin should be limited to 10 mA. The 20 mA maximum package input current rating limits the number of pins that can safely exceed the power supplies with an input current of 10 mA to two. Note 4: The absolute maximum junction temperature (TJmax) for this device is 150˚C. The maximum allowable power dissipation is dictated by TJmax, the junction-to-ambient thermal resistance (θJA), and the ambient temperature (TA), and can be calculated using the formula PDMAX = (TJmax − TA) / θJA. The values for maximum power dissipation will be reached only when the device is operated in a severe fault condition (e.g., when input or output pins are driven beyond the power supply voltages, or the power supply polarity is reversed). Obviously, such conditions should always be avoided. Note 5: Human body model is 100 pF capacitor discharged through a 1.5 kΩ resistor. Machine model is 220 pF discharged through ZERO Ohms. Note 6: See the section entitled "Surface Mount" found in any post 1986 National Semiconductor Linear Data Book for methods of soldering surface mount devices. Note 7: The analog inputs are protected as shown below. Input voltage magnitudes up to VA + 300 mV or to 300 mV below GND will not damage this device. However, errors in the conversion result can occur if any input goes above VA or below GND by more than 100 mV. For example, if VA is 2.7VDC, ensure that −100mV ≤ input voltages ≤2.8VDC to ensure accurate conversions. 20154106 FIGURE 2. DAC101S101 Timing 20154104 Note 8: To guarantee accuracy, it is required that VA be well bypassed. Note 9: Typical figures are at TJ = 25˚C, and represent most likely parametric norms. Test limits are guaranteed to National’s AOQL (Average Outgoing Quality Level). Note 10: This parameter is guaranteed by design and/or characterization and is not tested in production. 5 www.national.com 7 www.national.com
© Copyright 2024 ExpyDoc