rapport final version 1 - uqac · rapport final projet de synthÈse en ingÉnierie (6gin555)...

91
Université du Québec à Chicoutimi RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau audio numérique 5.1 sur fibre optique Auteurs Jean-Benoit Boudreault BOUJ11028704 Etienne Leclerc LECE19058705 Promoteur Luc Morin, ing., Ph.D. Professeur/Responsable LDL Coordonnateur Conseiller Jacques Paradis, ing. Luc Morin, ing., Ph.D.

Upload: others

Post on 26-Jun-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi

RAPPORT FINAL

PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555)

Département des Sciences Appliquées

Module d’ingénierie Génie électrique

Réseau audio numérique 5.1 sur fibre optique

Auteurs Jean-Benoit Boudreault BOUJ11028704 Etienne Leclerc LECE19058705

Promoteur

Luc Morin, ing., Ph.D. Professeur/Responsable LDL

Coordonnateur Conseiller

Jacques Paradis, ing. Luc Morin, ing., Ph.D.

Page 2: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

Page

II

Approbation pour diffusion (RAPPORT FINAL) Nom du conseiller : Luc Morin Date : 27 août 2010 Signature :

Page 3: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

Page

III

Remerciements Avant d’entamer ce rapport, nous profitons de l’occasion pour remercier tout d’abord notre conseiller M. Luc Morin pour son suivi tout au long du projet et sa générosité en matière de formation et d’encadrement. Nous tenons à remercier également le personnel technique de l’Université du Québec à Chicoutimi, soit M. Richard Martin et M. Danny Ouellet qui ont permis au projet de se réaliser.

Etienne Leclerc Jean-Benoit Boudreault

Page 4: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

Page

IV

Résumé

RÉSEAU AUDIO NUMÉRIQUE 5.1 SUR FIBRE OPTIQUE

Depuis quelques années dans le domaine de la musique, tout tend à migrer du domaine analogique au domaine numérique. En effet, il n’y a qu’à penser aux lecteurs de disque compact, au MP3 ou à la distribution de la télévision numérique. Cela est, bien sûr, pour des raisons bien précise : les systèmes numériques sont à la fois compacts, adaptables, plus rapides et moins sensibles au bruit que leurs équivalents analogiques. Le projet consistait donc, avec la technologie moderne, d’imaginer et de concevoir un système de son Dolby 5.1, entièrement numérique, acceptant plusieurs sources numériques sur fibre optique. Le système devait faire les traitements nécessaires à la distribution du son aux haut-parleurs par un média numérique, soit la fibre optique. Quelle que soit la façon de faire, le résultat final devait se conformer à plusieurs contraintes, dont voici les principales :

- Recevoir et distribuer les signaux numériques par fibre optique. - Exécuter le décodage et les traitements nécessaires à la distribution du son. - Être compatible avec les protocoles audio dont Dolby 5.1. - Être livré sous un produit fini inclut dans un boitier d’aspect professionnel. - Être ouvert à de futurs ajustements et modifications.

Après une analyse de tous les besoins du projet, une recherche bibliographique a permis de cerner les principaux éléments d’un tel système. Les schémas blocs et les circuits électriques ont ensuite été conçus. Afin de valider les bases de conception, de petits circuits imprimés prototype ont été créés afin de simuler chaque puces indépendamment. Par la suite, les circuits imprimés finaux et le boitier ont été construits. Enfin, l’équipe s’est lancée au développement de la programmation du système et aux bancs d’essai finaux. Enfin, les bancs d’essai finaux démontrent la fonctionnalité physique du prototype. Le développement de la programmation est un très gros maillon du projet et cette dernière aurait nécessité davantage de temps. Cependant, les parties les plus importantes ont été conçues et le produit final est en mesure de distribué la musique de façon numérique.

Page 5: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

Page

V

Table des matières Remerciements.................................................................................................................. III

Résumé.............................................................................................................................. IV

Table des matières.............................................................................................................. V

Liste des figures ...............................................................................................................VII

Liste des tableaux............................................................................................................VIII

1.0 Introduction................................................................................................................... 1

2.0 Présentation du projet ................................................................................................... 1

2.1 Description de l’équipe de travail ............................................................................. 1 2.2 Problématique et état de l’art reliés au projet ........................................................... 2 2.3 Objectifs généraux et spécifiques du projet .............................................................. 2

3.0 Éléments de conception relatifs au projet ..................................................................... 3

3.1 Fonctionnement du contrôleur .................................................................................. 3 3.2 Fonctionnement du module H.P. .............................................................................. 5 3.3 Le décodeur audio (STA310).................................................................................... 7 3.4 L’interface audio numérique (DIR9001) .................................................................. 7 3.5 Le convertisseur numérique-analogique (WM8740) ................................................ 8 3.6 L’ajustement analogique du volume (LM1972) ....................................................... 8 3.7 Les amplificateurs audio ........................................................................................... 8 3.8 Le développement modulaire.................................................................................... 9 3.9 Les sources de DOLBY 5.1 .................................................................................... 10 3.10 Les schémas de développement ............................................................................ 11 3.11 L’enregistrement de trames numériques ............................................................... 12 3.12 Le boitier............................................................................................................... 13

Les façades................................................................................................................ 13 La découpe des panneaux ......................................................................................... 15 L’impression sur les panneaux.................................................................................. 16

3.13 Le fonctionnement de la façade avant .................................................................. 16 3.14 Le circuit imprimé de façade ................................................................................ 18

Le module d’affichage .............................................................................................. 18 Le module de contrôle .............................................................................................. 20 Le circuit imprimé..................................................................................................... 21

3.15 Le circuit imprimé principal ................................................................................. 22 Les alimentations du circuit ...................................................................................... 23 Le circuit de mise en marche .................................................................................... 28 Les circuits digitaux.................................................................................................. 29 Les circuits analogiques............................................................................................ 33

3.16 Le choix du FPGA ................................................................................................ 37 3.17 La programmation du prototype ........................................................................... 38

Principe général ........................................................................................................ 38

Page 6: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

Page

VI

Le contrôle du processus........................................................................................... 39 Les protocoles de communications........................................................................... 39 Le traitement de signal.............................................................................................. 39

3.18 Aspect final ........................................................................................................... 40 4.0 Bilan des activités ....................................................................................................... 41

4.1 Arrimage formation pratique/universitaire ............................................................. 41 4.2 Travail d’équipe ...................................................................................................... 41 4.3 Respect de l’échéancier........................................................................................... 42 4.4 Analyses et discussions........................................................................................... 43

La méthode de travail................................................................................................ 43 La partie physique..................................................................................................... 43 La partie numérique .................................................................................................. 44

5.0 Conclusion et recommandations ................................................................................. 45

6.0 Bibliographie............................................................................................................... 46

7.0 Annexes....................................................................................................................... 47

Annexe 1 : Spécification détaillée ................................................................................ 47 Annexe 2 : Schématique des plaquettes........................................................................ 49 Annexe 3 : Mise en plan des façades ............................................................................ 53 Annexe 4 : Dessins vectoriels de l’impression sur les façades..................................... 55 Annexe 5 : Schématiques du circuit imprimé principal................................................ 57 Annexe 6 : Plans de connexions du circuit imprimé principal ..................................... 60 Annexe 7 : Codes sources du prototype........................................................................ 62 Annexe 8 : Schématiques de programmation ............................................................... 79 Annexe 9 : Fichier de contraintes du Spartant 3E ......................................................... 82

Page 7: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

Page

VII

Liste des figures Figure 1 - Schéma bloc du contrôleur................................................................................. 3 Figure 2 - Schéma bloc du module H.P. ............................................................................. 5 Figure 3 - Raccordement général ........................................................................................ 6 Figure 4 – Système de prototypage haute performance (SPHP)......................................... 9 Figure 5 - Sound Blaster X-FI Titanium........................................................................... 10 Figure 6 - Schémas de développement ............................................................................. 11 Figure 7 - Enregistrement d'une trame numérique............................................................ 12 Figure 8 - Boitier Hammond 6.5 x 6.3 x 1.2 pouce. ......................................................... 13 Figure 9 - Insertion du circuit imprimé de façade............................................................. 14 Figure 10 - Insertion du circuit imprimé principal............................................................ 14 Figure 11 - Représentation 3D de la façade avant après découpe .................................... 15 Figure 12 - Représentation 3D de la façade arrière après découpe................................... 15 Figure 13 - Schématique du concept d'affichage de la plaque avant ................................ 19 Figure 14 - Schématique du concept de contrôle de la plaque avant................................ 20 Figure 15 - Circuit imprimé de la façade .......................................................................... 21 Figure 16 - Schéma bloc de gestion des alimentations ..................................................... 23 Figure 17 - Application typique AP1509.......................................................................... 24 Figure 18 - Exemple de connexion d'une alimentation à découpage................................ 25 Figure 19 - Exemple de connexion d'une alimentation à découpage................................ 26 Figure 20 – Application typique MAX765CSA ............................................................... 27 Figure 21 - Schéma du circuit de mise en marche ............................................................ 28 Figure 22 – Plan de connexion du circuit de mise en marche .......................................... 28 Figure 23 – Exemple de schéma du circuit d’un TORX................................................... 29 Figure 24 – Exemple de plan de connexion d'un TORX .................................................. 29 Figure 25 - Schéma du circuit du DIR9001 ...................................................................... 30 Figure 26 - Plan de connexion du DIR9001 ..................................................................... 30 Figure 27 - Schéma du circuit du STA310 ....................................................................... 31 Figure 28 - Plan de connexion du STA310....................................................................... 32 Figure 29 - Schéma du circuit du WM8740...................................................................... 34 Figure 30 - Plan de connexion du WM8740 - vue de dessus............................................ 34 Figure 31- Plan de connexion du WM8740 - vue de dessous........................................... 35 Figure 32 - Schéma du circuit du LM1972....................................................................... 36 Figure 33 - Plan de connexion du LM1972 ...................................................................... 36 Figure 34 - Façade avant et arrière du prototype .............................................................. 40 Figure 35 - Échéancier Hiver 2010................................................................................... 42 Figure 36 - Échéancier Été 2010....................................................................................... 42 Figure 37 - Résumé schématique du système ................................................................... 48 Figure 38 - Schématique du DIR9001 .............................................................................. 49 Figure 39 - PCB du DIR9001 ........................................................................................... 49 Figure 40 - Schématique du WM8740.............................................................................. 50 Figure 41 - PCB du WM8740........................................................................................... 50 Figure 42 - Schématique du STA310................................................................................ 51 Figure 43 - PCB du STA310............................................................................................. 51

Page 8: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

Page

VIII

Figure 44 - Schématique du DIT4096 .............................................................................. 52 Figure 45 - PCB du DIT4096............................................................................................ 52 Figure 46 - Mise en plan de la façade avant ..................................................................... 53 Figure 47 - Mise en plan de la façade arrière.................................................................... 54 Figure 48 - Impression de la façade avant du contrôleur.................................................. 55 Figure 49 - Impression de la façade arrière du contrôleur ................................................ 56 Figure 50 - Schématique du circuit imprimé principal, partie 1 ....................................... 57 Figure 51- Schématique du circuit imprimé principal, partie 2 ........................................ 58 Figure 52- Schématique du circuit imprimé principal, partie 3 ........................................ 59 Figure 53- Plan de connexion du circuit imprimé principal – vue de dessus ................... 60 Figure 54- Plan de connexion du circuit imprimé principal - vue de dessous.................. 61 Figure 55 - Schématique d'entrées-sorties du microcontrôleur ........................................ 79 Figure 56 - Schématique du microcontrôleur émulé......................................................... 80 Figure 57 - Exemple de connexion du microcontrôleur ................................................... 81 Figure 58 - Exemple de connexion du microcontrôleur ................................................... 81

Liste des tableaux Tableau 1 - Nombre de pattes du FPGA........................................................................... 37

Page 9: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

1

Réseau audio numérique 5.1 sur fibre optique

1.0 Introduction Le présent projet consiste en un système audio acceptant plusieurs formats de signaux d’entrée, dont le protocole Dolby 5.1. Ce système est entièrement numérique et commandé à distance par une télécommande infrarouge. De plus, le lien entre le contrôleur/décodeur et les haut-parleurs est fait par fibre optique. Chaque enceinte acoustique comprend un module numérique qui fait la conversion numérique-analogique, ainsi que le traitement nécessaire pour la commande des haut-parleurs. Le rapport pose donc précisément les objectifs du projet et décrit la conception réalisé afin de répondre aux besoins de l’énoncé du projet.

2.0 Présentation du projet

2.1 Description de l’équipe de travail

Jean-Benoit Boudreault Co-auteur du présent projet Étudiant en génie électrique à l’UQAC, finissant Etienne Leclerc Co-auteur du présent projet Étudiant en génie électrique à l’UQAC, finissant Luc Morin, ing., Ph. D. Conseiller et promoteur du présent projet Professeur en génie électrique et informatique au département des sciences appliquées de l’UQAC Richard Martin Conseiller technique du présent projet Technicien en génie électrique au département des sciences appliquées de l’UQAC

Page 10: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

2

2.2 Problématique et état de l’art reliés au projet

Depuis quelques années dans le domaine de la musique, tout tend à migrer du domaine analogique au domaine numérique. En effet, il n’y a qu’à penser aux lecteurs CD, MP3 et autres IPOD pour s’en rendre compte. Cela est, bien sur, pour une raison bien précise : les systèmes numériques sont à la fois compacts, adaptables, plus rapides et moins sensibles au bruit que leurs équivalents analogiques. Il est évident qu’un système audio avec enceintes acoustiques permettant de communiquer facilement avec différents systèmes numérique serait très utile. De plus, le fait de ne faire la conversion numérique-analogique qu’à la base des hauts parleurs permet de rendre ceux-ci plus faciles à installer par l’utilisateur. Cela rend aussi possible une communication numérique entre l’enceinte et de le contrôleur. Ensuite, le fait de relier les différents modules par de la fibre optique communiquant par protocole TOSLINK paverait le chemin pour une future adaptation sans-fil, puisque la conversion entre ces deux médiums est relativement aisée. Les avantages apportés par cela sont évidents lorsque l’on pense à tout le filage que cela économiserait et à la logistique que cela demande à l’utilisateur pour installer ces nombreux câbles

2.3 Objectifs généraux et spécifiques du projet

L’objectif du projet est de concevoir un prototype capable d’accepter plusieurs types de signaux, les décoder et les envoyer aux haut-parleurs en format numérique sur fibre optique. Le réseau fibre optique suivra le protocole TOSLINK. Les sources seront des signaux de types Dolby 5.1 ou stéréophonique avec des connexions par câble RCA. Spécifiquement, cela veut dire :

- Recevoir et distribuer les signaux numériques par fibre optique. - Exécuter le décodage et les traitements nécessaires à la distribution du son. - Être compatible avec les protocoles audio dont Dolby 5.1. - Être livré sous un produit fini inclut dans un boitier d’aspect professionnel. - Être ouvert à de futurs ajustements et modifications.

Page 11: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

3

3.0 Éléments de conception relatifs au projet

3.1 Fonctionnement du contrôleur

Voici le schéma bloc du contrôleur à la Figure 1.

Figure 1 - Schéma bloc du contrôleur

Page 12: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

4

Par des connexions TOSLINK, le contrôleur reçoit les signaux Dolby 5.1 provenant soit de décodeurs numériques, de lecteurs DVD ou de cartes de son d’ordinateur. L’entrée désirée est ensuite sélectionnée par un multiplexeur et le signal est envoyé à la puce DIR9001. Cette puce reconstitue le signal sonore codé sur un seul fil en ses signaux d’origines : soit l’horloge gauche-droite, l’horloge de signal et le signal. Il est à noter que cette puce fournie une horloge extrêmement précise, nécessaire lors de la conversion numérique-analogique dans le monde audio. Le signal Dolby 5.1 est donc sous la bonne forme pour être converti par la puce STA310. Les signaux audio résultant de cette conversion sont sous la forme de trames stéréophoniques qui représentent les haut-parleurs avant, les haut-parleurs ambiophoniques ainsi que le haut-parleur central et le caisson de grave. Le contrôleur sera en mesure d’ajuster le niveau des fréquences. Cela demande donc de décoder les signaux stéréophoniques, de faire l’ajustement et de les encoder de nouveaux. Les signaux peuvent donc être envoyés par fibre optique aux enceintes correspondantes après avoir été recodés au format de la norme SPDIF. Le FPGA fait donc le codage des 2 signaux d’horloges et du signal en un signal codé sur un seul fil. L’information est donc prête à être transmise par fibre optique à l’enceinte. À l’intérieur du FPGA, un microcontrôleur émulé fera le contrôle et l’initialisation des puces énumérés ci-haut ainsi que la gestion de la télécommande infrarouge. Lors du développement des schémas bloc du contrôleur ainsi que du module H.P., une répétition des pièces externes s’est présentée. La comparaison avec la Figure 2 du schéma bloc du module des haut-parleurs démontre ce fait. Il s’avérait donc possible de concevoir qu’un seul circuit imprimé pour les deux systèmes. Même si le traitement interne au FPGA différait, cela ne nuisait pas à l’idée puisque par définition la programmation du FPGA est faite pour être facilement adaptable. Ainsi, la conception du schéma bloc s’est orientée pour permettre cette nouvelle idée. Étant donné que le même circuit intégré sert pour les deux modules, il était simple de joindre le convertisseur numérique-analogique, nécessaire dans le module H.P., dans le module du contrôleur. En ajoutant une pièce pour le contrôle du volume (LM1972), ce dernier possède une sortie stéréo analogique pour d’autres haut-parleurs. Ce qui ajoute de l’attrait au produit fini.

Page 13: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

5

3.2 Fonctionnement du module H.P.

Voici le schéma bloc proposé pour le module de traitement des haut-parleurs à la Figure 2.

Figure 2 - Schéma bloc du module H.P.

Page 14: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

6

Tel que mentionné précédemment, les circuits intégrés utilisés pour le module de traitement des haut-parleurs seront les mêmes que pour le contrôleur car les puces extérieures au FPGA sont les mêmes sans être au même nombre. Ainsi, il ne devait pas avoir de différence entre un circuit intégré pour une enceinte droite ou une enceinte gauche. La technique utilisée est d’inverser le signal stéréophonique avant de l’envoyer à l’enceinte suivante. Le module H.P. reçoit le signal stéréophonique fourni par le contrôleur codé sur une fibre optique. L’horloge droite-gauche bien précise ainsi que l’horloge de donnée et le signal sont ensuite reconstitués par la puce DIR9001. Le décodeur stéréo sélectionne par la suite le bon canal et prépare le signal pour la séparation dans le séparateur audio numérique. Le séparateur audio numérique permet de séparer un signal sonore en hautes et basses fréquences afin qu’elles soient transmises dans l’air par le bon haut-parleur. Les deux signaux représentant les deux niveaux de fréquences sont alors recodés par le FPGA de la même façon qu’un signal stéréophonique. Cette étape est nécessaire car le convertisseur numérique-analogique demande une entré stéréo et fourni alors les deux voies analogiques. Chaque canal est ensuite amplifié par les amplificateurs de puissance et prêt à être transformé en ondes acoustiques par les haut-parleurs. Le second signal à la sortie de la puce DIR9001 doit être envoyé à l’autre enceinte. L’inversion de la trame audio se fait par l’inversion de la polarité de l’horloge gauche-droite. Le codage en un fil du signal audio et des horloges se fait évidemment de la même façon que dans le contrôleur, soit à l’aide d’un code dans le FPGA. La trame audio inversée se rend donc à l’autre enceinte. Le contrôle des puces externes se fera aussi par le biais d’un microcontrôleur émulé à l’intérieur du FPGA. La façon de raccorder le système se fera comme le montre la Figure 3.

Figure 3 - Raccordement général

Page 15: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

7

3.3 Le décodeur audio (STA310)

Le format audio numérique dans lequel est codée la trame audio est le standard SPDIF. Ce protocole permet le transfert de signaux stéréo entre différents systèmes en format numérique à l’aide de connexions physique précises (RCA, TOSLINK). Avec l’évolution du monde audio, le protocole SPDIF a été enrichi afin d’être en mesure de contenir les signaux de 6 canaux. Cette procédure de codage est la norme AC3. Les laboratoires Dolby utilisent donc cette norme pour coder le Dolby 5.1. Le protocole SPDIF est standardisé par le standard IEC 60958, ainsi, des codes de programmation ou des puces se vendent afin de faire le décodage de ces protocoles. La puce sélectionnée pour le projet est le décodeur audio STA310 de la compagnie STMicroelectronics. Ce dernier a été sélectionné car il semble un des plus populaire et a un prix assez bas. À l’aide des signaux d’horloges reconstitués, cette puce décode les 6 canaux du DOLBY 5.1 et fournie 3 signaux stéréophonique en format PCM (Pulse Code Modulation). Une configuration de la puce sera nécessaire lors de la mise en marche du système.

3.4 L’interface audio numérique (DIR9001)

Pour plusieurs raisons, le signal Dolby 5.1 et les trames stéréophoniques sont codés selon le codage Manchester ou bi-phase. Ce codage de trames binaires implique de toujours avoir une transition, peut importe la valeur du bit. Cela évite donc la perte de synchronisation avec l’horloge lorsqu’une longue série de bits de même polarité est envoyée. Comme l’horloge est d’une certaine façon incorporée au signal, il n’est plus nécessaire de l’envoyer. Ainsi, la transmission peut se faire avec un seul fil. Tous ces avantages demandent donc d’avoir une horloge de codage du double de la vitesse du signal. La puce DIR9001 assure donc la reconstruction du signal et de l’horloge à partir de ce codage. De plus, elle assure une horloge extrêmement précise nécessaire dans le monde audio.

Page 16: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

8

3.5 Le convertisseur numérique-analogique (WM8740)

Le monde réel étant analogique, il est nécessaire au système de pouvoir faire la conversion numérique-analogique. Les signaux sont donc enregistrés et codés au format Dolby 5.1 en studio, décodés en trames stéréophoniques par le contrôleur du système, traités et envoyés aux enceintes. Toutes ces différentes étapes se font de façon numérique. Cela assure une précision du son et une qualité musicale qui perdure avec le temps. Dans le présent projet, la conversion vers le monde analogique se fait au tout dernier moment, dans l’enceinte, soit juste avant l’amplification et la conversion en pression acoustique par le haut-parleur. Le convertisseur utilisé dans le projet est le WM8740 de la compagnie Wolfson microelectronics. Ce dernier a été sélectionné car il est un convertisseur de haute performance utilisé en audio haute fidélité, ce qui convenait à la philosophie globale du projet. L’utilisation de fibre optique pour la transmission entre le contrôleur et les haut-parleurs implique de ne pas négliger la qualité ailleurs. Le contrôle série se fait par le microcontrôleur émulé dans le FPGA.

3.6 L’ajustement analogique du volume (LM1972)

Tel que mentionné, l’ajout d’une sortie pour haut-parleurs au niveau du contrôleur s’avérait simple avec la compilation des deux circuits dans un seul circuit imprimé. Cela ne demandait que l’ajout d’une puce qui fait l’ajustement analogique du volume. La puce sélectionnée est la LM1972 de la compagnie National Semiconductor. Cette puce est très simple d’utilisation par le contrôle numérique et est de faible coût. Elle procure une bonne atténuation avec un très faible taux de distorsions harmoniques. Il est préférable de faire le contrôle du volume de façon analogique pour éviter la perte de précision que provoque l’ajustement d’une donnée au format numérique.

3.7 Les amplificateurs audio

La puissance de la pression acoustique d’un système audio dépend à la fois des enceintes et des amplificateurs. Une fois en format analogique, le signal électrique est amplifié pour être suffisamment puissant pour faire vibrer le haut-parleur. Dans le projet, chaque canal aura une puissance d’environ 35 watts. Comme l’amplification se situe au niveau des enceintes, chacune d’elles devront être branchées au secteur.

Page 17: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

9

3.8 Le développement modulaire

Au cours de l’analyse des pièces et de l’établissement des pattes à utiliser, il s’est avéré que la conception du circuit imprimé final en début de projet était un choix trop risqué. Étant donnée l’énorme quantité de connexions à faire, le circuit imprimé devait contenir plusieurs couches. Le développement se fera donc de façon plus modulaire par l’utilisation de la plaquette du département de génie électrique de l’UQAC. Chaque pièce externe énumérée plus-haut sera contenue sur une plaquette et les connections se feront dans un premier temps avec des fils. La Figure 4 montre le système de prototypage haute performance de l’UQAC.

Figure 4 – Système de prototypage haute performance (SPHP)

Le FPGA sélectionné sera aussi inséré sur une plaquette qui permettra la connexion physique de ses pattes grâce à plusieurs bus de connecteurs. Une fois le circuit imprimé final complété, la plaquette du FPGA s’insèrera dans ce dernier. Le FPGA pourra donc être changé lors de futur développement sur le projet et cette façon de procéder évite que le circuit imprimé complet soit multicouches, situation imposée par le FPGA. Seule la plaquette de FPGA sera constituée de cette façon et une seule version aura besoin d’être conçue. Toutes ces astuces ont pour but d’optimiser le temps de conception, permettant ainsi de développer davantage d’aspect dans le projet.

Page 18: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

10

3.9 Les sources de DOLBY 5.1

Afin de procéder au développement et aux différents tests de fonctionnement, des sources du protocole DOLBY 5.1 étaient nécessaire. Une carte de son spéciale pour ordinateur à donc été achetée. Cette dernière est en mesure de fournir et de recevoir le protocole SPDIF contenant le DOLBY 5.1 sous la forme « TOSLINK », c’est-à-dire par fibre optique. Cette carte est la Sound Blaster X-FI Titanium de la compagnie Creative et est montrée à la Figure 5.

Figure 5 - Sound Blaster X-FI Titanium

Afin d’avoir une seconde source DOLBY 5.1 et pour éviter d’utiliser la carte de son comme source et analyseur du son, un lecteur DVD a aussi été trouvé. Ce dernier possède une sortie SPDIF sous la forme d’un connecteur coaxial qui est transformé en fibre optique par un simple convertisseur externe. Avec ces deux sources de protocole audio numérique, il est possible de procéder au développement du prototype selon différentes étapes qui sont démontrées à la section suivante.

Page 19: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

11

3.10 Les schémas de développement

Tel que mentionné, le développement d’un prototype implique d’être en mesure de le tester. Comme les parties se conçoivent les unes après les autres, chaque pièce est vérifiée individuellement. La maîtrise des différentes puces mènent à l’obtention de l’architecture du produit final. Les différentes étapes de développement utilisées pour la conception de l’architecture complète sont exposées à la Figure 6.

DVDCarte de

son2.0

Carte de son

DIR9001 DACHaut-parleur

Carte de son

DIR9001 FPGA DACHaut-parleur

Carte de son

FPGA DIR9001 FPGA

5.12.0

STA310 DACHaut-parleur

Carte de son

FPGA DIR9001 FPGA STA310ModuleHP

2.0

2.0

5.12.0

DVD FPGA DIR9001 FPGA STA310

5.12.0 Codage

SPDIF

1

2

3

4

5

6

Carte de son

optique

Codage SPDIF

optique

Figure 6 - Schémas de développement

1) Permet l’essai de la fonction d’envoi du lecteur DVD et la fonction de réception de la carte de son. 2) Le décodeur DIR9001 et le convertisseur numérique-analogique sont ajouté. Le son passe du codage en lumière à un son émis par un haut parleur. 3) Le FPGA avec ou sans programmation s’interpose ensuite dans le passage du signal sonore. L’effet de sa présence peut donc être évalué. 4) Le multiplexage des entrées est fait par le FPGA. L’ajout de la puce STA310 permet de recevoir un son 5.1. 5) Le signal sonore reste au format numérique et est encodé par le FPGA et analysé par ordinateur grâce à la carte de son. 6) Le signal se rend au module H.P. au lieu de l’ordinateur. Architecture complète.

Page 20: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

12

Au niveau de l’intégration des puces, selon les schémas de développement précédant, le projet se situe à l’étape 4, soit à l’intégration et l’initialisation du décodeur STA310. Le STA310 est la dernière puce critique qui peut occasionner des difficultés. Sa maîtrise mènera donc à l’obtention du montage final du contrôleur, et par le fait même celui du module H.P. étant donné que c’est le même circuit imprimé. La difficulté sera donc au niveau de la programmation du FPGA, cette tâche prendra plusieurs semaines. Afin de procéder à des essais individuels de chaque puce, des petites plaquettes comprenant la puce ont été conçues. Au présent niveau de développement, ces dernières sont reliées entre elles par des fils. Les schématiques de ces plaquettes sont illustrées à l’Annexe 2 : Schématique des plaquettes.

3.11 L’enregistrement de trames numériques

Une fois la programmation minimale des puces complétée, le développement de la programmation future et l’analyse des signaux audio demandera d’être en mesure de saisir les trames numériques avec la carte de son afin de les analyser. Même avant d’avoir terminé toute la programmation, ce banc de test a été validé de la façon montrée au schéma de développement 1 : Du lecteur DVD à la carte son de l’ordinateur. Un extrait audio de 15 secondes offrant un effet stéréophonique entre les canaux a été fournit de façon numérique par le lecteur DVD, transmis par fibre optique, enregistré par la carte son de l’ordinateur et visualisé à l’aide du logiciel MATLAB. La taille des échantillons est de 16 bits et la fréquence d’échantillonnage est de 48kHz. Le logiciel MATLAB permet de voir la valeur de chacune des échantillons et de tracer le graphique des signaux audio. Il est donc possible de voir si des altérations ont été faites au signal audio après un traitement par le prototype. La Figure 7 montre le graphique du signal enregistré, il est possible de voir la différence entre le canal droit et le canal gauche.

Figure 7 - Enregistrement d'une trame numérique

Page 21: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

13

3.12 Le boitier

Les circuits imprimés du contrôleur et du module haut-parleur seront contenus dans un boitier en aluminium extrudé de la compagnie Hammond Manufacturing TM. Comme il s’agit du même circuit imprimé pour le contrôleur et les modules HP, le même boitier est utilisé. Ce dernier d’une hauteur de 6.5 pouces, d’une profondeur de 6.3 pouces et d’une épaisseur de 1.2 pouce est représenté à la Figure 8. Le circuit imprimé principal est glissé dans les fentes préconçues. La pièce détachée sur la figure est la façade avant qui contiendra les contrôles et lumières.

Figure 8 - Boitier Hammond 6.5 x 6.3 x 1.2 pouce.

Les façades Dans l’optique de fournir un prototype ayant l’allure d’un produit fini, des plans de découpe et d’impression ont été créés pour les façades avant et arrière du contrôleur. Tout en se souciant de l’allure des pièces physiques, de leurs dimensions et du fait de produire un produit fini professionnel, des choix de design ont du être faits sur chacune des pièces. Par la suite, un assemblage a été proposé pour les faces avant et arrière. Le panneau avant du système audio comprend les boutons de contrôles principaux ainsi que de l’information sur l’état du système visualisé à l’aide de LED et de deux 7 segments bleus. Ces pièces devaient donc être soudées sur un circuit imprimé parallèle au panneau avant. Les trous de vis existant sont utilisés afin de fixer le circuit imprimé et l’espace de la coiffure de la boîte permet l’ajustement de la hauteur des pièces. L’insertion du circuit imprimé de façade est montrée à la Figure 9.

Page 22: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

14

Figure 9 - Insertion du circuit imprimé de façade

Le panneau arrière contient les entrées fibre optique provenant de source audio digitale, les sorties fibre optique des haut-parleurs, la sortie RCA analogique vers des haut-parleurs amplifiés et le connecteur de tension 12V. Tous ces connecteurs sont soudés sur l’extrémité droite du circuit imprimé principal. Tel que mentionné, ce dernier se glisse à l’intérieur de la boîte jusqu’au panneau arrière comme le montre la Figure 10.

Figure 10 - Insertion du circuit imprimé principal

Page 23: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

15

La découpe des panneaux La découpe des façades d’aluminium ne peut pas être réalisée avec n’importe quel outil afin de produire un résultat propre et de qualité. De plus, la précision des trous devait être parfaite pour s’emboîter parfaitement avec les pièces soudées sur le circuit imprimé. Ainsi, le choix de procédure a été la découpe laser par la compagnie Coupesag de Saguenay. Un fichier de dessin numérique nécessaire à la découpe a été créé selon l’arrangement choisi des façades. Les pièces en 3 dimensions sont présentées à la Figure 11 et à la Figure 12.

Figure 11 - Représentation 3D de la façade avant après découpe

Figure 12 - Représentation 3D de la façade arrière après découpe

Page 24: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

16

La représentation de mise en plan des pièces est jointe en annexe 3 à la Figure 46 et à la Figure 47. L’impression sur les panneaux Pour que l’utilisateur soit en mesure de contrôler le système audio, les boutons, lumières et connecteurs doivent être identifiés sur les panneaux. Afin de minimiser le coût de production du prototype et d’obtenir un produit professionnel, la technique d’identification est l’impression sur transparent autocollant réalisé par la compagnie Impression ST de Saguenay. Comme pour la découpe au laser, un fichier de dessin vectoriel doit être fournit. L’allure des panneaux avant et arrière est représentée à la Figure 48 et à la Figure 49 à l’annexe 4.

3.13 Le fonctionnement de la façade avant

Le choix des pièces électroniques et physiques, les tâches que la façade avant doit accomplir ainsi que la conception du circuit imprimé sont tous des aspects directement reliés qui imposent des compromis lors de la conception de design. En effet, les options de la façade dictent la quantité et l’aspect des pièces physiques qui elles, imposent des dimensions et formes au circuit imprimé de façade. Des contrôles et informations minimales sont requis dans la façade. Bref, le panneau avant doit répondre aux tâches suivantes :

- Sélection de la source audio 1 à 4 - Affichage de la source audio sélectionnée 1 à 4 - Affichage de l’état de lecture - Réglage du niveau du volume - Affichage du niveau de volume - Réglage du niveau des aigus - Affichage du niveau des aigus - Réglage du niveau des graves - Affichage du niveau des graves - Mise en marche du système audio - Réception des signaux infrarouge d’une télécommande

Selon les options listées ci-haut, des pièces ont été choisies et l’arrangement final est montré à la Figure 48. Dans l’optique de réduire le nombre de pièces électroniques, ce qui réduit la complexité du circuit imprimé et par le fait même les sources d’erreurs, il s’est avéré logique de fusionner certaines fonctions d’affichage et de contrôle. Un afficheur 7 segments indique donc le niveau du volume, des aigus et des graves et les niveaux s’ajustent tous par les touches (+) (-).

Page 25: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

17

La mise en marche du système Une section dans le présent rapport sur le bouton d’alimentation a été développée. La mise en marche et l’arrêt se fait par une simple pression sur le bouton d’alimentation. Une DEL allumé indique que le système est en fonction. La sélection de la source audio Le système sélectionne par défaut la source 1 lors de la mise sous tension. Une pression sur la touche SRC bascule entre les sources de la façon 1-2-3-4-1. La DEL correspondant à la source sélectionnée s’allume. L’ajustement du volume La programmation sera construite de façon à ce que le niveau de volume soit affiché par défaut dans l’afficheur 7 segments et qu’une pression sur les touches d’ajustement de niveau (+) (-) modifie directement le volume. La DEL « VOL » allumée indique que l’afficheur 7 segments est en mode d’ajustement du volume. L’ajustement des graves et aigus Une pression sur le bouton « AUDIO » allume la DEL « BS ». L’afficheur 7 segments indique donc le niveau des graves et le niveau est ajusté à l’aide des touches (+) (-). Une seconde pression sur la touche « AUDIO » allume la DEL « TRB ». L’afficheur 7 segments indique alors le niveau des aigus et le niveau s’ajuste de la même façon que le volume et les graves. Le système reviendra par lui-même à l’affichage du volume après un délai de 5 secondes d’inactivité ou par une troisième pression sur la touche « AUDIO ». Le système répond donc de façon très simple aux fonctions de bases d’un système audio. Le circuit imprimé supportant les pièces à donc été construit en tenant compte des aspects physiques et de programmation. Le détail de la conception du circuit imprimé de façade est expliqué à la section suivante.

Page 26: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

18

3.14 Le circuit imprimé de façade Afin de supporter l’interface utilisateur du module (les DELs1, sept-segments et autres boutons poussoirs), un circuit imprimé a été conçu et réalisé. Celui-ci devait répondre à plusieurs critères, qui sont, dans l’ordre : la facilité et la rapidité d’installation, l’efficacité de son système d’alimentation et de communication avec le circuit imprimé principal, les exigences de l’apparence professionnelle et finalement le coût de production. Les pièces du circuit ont donc été choisies dans cette optique, dépendamment des critères s’appliquant. Le module d’affichage Le module d’affichage du circuit comprend les nombreuses DELs d’état et les afficheurs sept-segments. Les DELs doivent être bleues afin de satisfaire aux exigences de l’apparence professionnelle, ce qui complique un peu les choses. En effet, la plupart des DELs bleues ont une tension de conduction élevée (aux alentours de 4V) et cela est encore pire au niveau des sept-segments, laquelle tension peut s’élever jusqu’à 4.5 et même 5V. De plus, un courant de conduction d’environ 20 à 25mA est nécessaire pour assurer une bonne luminosité. La somme de ces contraintes fait qu’il est énergivore de faire fonctionner ces types de composants. Le fait que le concept retenu pour le fonctionnement de la façade requiert un nombre important de DELs vient compliquer encore les choses. En effet, il est illogique et peu élégant d’utiliser une sortie de la FPGA par diode, et en faire plusieurs à la fois serait peu efficace puisque la plupart sont indépendantes. La première solution venant à l’esprit est d’utiliser un multiplexage analogique, faisant passer le nombre de pattes utilisées de 24 à environ 10. Cependant, cela reste encore excessif puisque d’autres sorties sont utilisées sur la façade : le nombre de fils nécessaire pour faire le transfert entre les deux circuits imprimés serait trop élevé. Une deuxième solution serait d’utiliser un module d’extension d’entrées-sorties. Cette solution se pose comme meilleure que la précédente, puisque il est possible de profiter du réseau I2C requis pour le fonctionnement de la puce STA310 afin de faire la communication. Cela réduirait le nombre de fils d’environ 10 fils pour le multiplexage aux 2 fils du protocole I2C, et en plus cela ne nécessiterait aucune patte supplémentaire du FPGA ! Dans les deux solutions proposées, il y a cependant un problème supplémentaire : la régulation du courant dans la diode. En effet, peu de modules d’expansion d’entrées-sorties peuvent directement faire fonctionner les DELs, ce qui augmente le nombre de composantes physiques nécessaires, principalement des transistors et des résistances. La façon de contrer cela est d’utiliser un module d’expansion spécialisé, ou régulateur de DELs. 1Diode Électro-Luminescente

Page 27: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

19

Puisqu’il est plus efficace de contrôler les tensions de conduction des diodes à l’aide d’une tension relativement élevée, 12V dans ce cas, la dissipation de puissance dans le régulateur est grande, trop pour ce type de puce. Des résistances de dissipation ont donc été ajoutées afin de corriger ce problème. Les résistances ont été choisies à l’unité, et non en circuit intégré, pour des raisons évidentes de dissipation de chaleur. C’est donc une solution élégante, n’utilisant pas d’entrées-sorties supplémentaires sur le FPGA et nécessitant peu de fils de jonction entre les deux circuits imprimés. Le seul point négatif est donc que cette solution est un peu énergivore... En effet, 24 DELs branchées sur 12V et tirant chacune en moyenne 20mA consomment 240mW, ce qui est beaucoup. Cependant, puisque les 24 DELs ne seront jamais alimentées toutes en même temps, ce point négatif n’a pas été jugé significatif et le concept a donc été conservé.

Figure 13 - Schématique du concept d'affichage de la plaque avant

Page 28: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

20

Les DELs retenues ont été les SLR343, qui sont les moins chères de leur catégorie et dont les caractéristiques physiques sont acceptables en termes de diamètre et de hauteur. Les écrans sept-segments sélectionnés (LTS-2801AB) l’ont surtout été en raison de leur couleur (bleue), du montage en anode commune nécessaire pour être contrôlés par un régulateur de DEL et enfin pour leurs petites dimensions. Le régulateur de DELs choisi est le TLC59116 de Texas Instruments, un régulateur fiable, physiquement petit et convenant tout à fait aux besoins du concept, tant au niveau de la communication I2C que de la dissipation de puissance. Son prix est légèrement élevé, mais cela est compensé par ses nombreuses autres qualités. Voilà. Le montage schématique du module d’affichage est montré à la Figure 13. Le module de contrôle Pour ce qui est de l’interface de contrôle (les boutons) le choix du concept est simple : pour les mêmes raisons que pour le module d’affichage, les boutons ne peuvent pas être directement reliés au FPGA. La meilleure solution, dans ce cas, est d’utiliser un module d’expansion des entrées-sorties communicant lui aussi par protocole I2C. Le PCA8574 s’est révélé un choix logique, puisqu’il répond aux caractéristiques et est peu coûteux. Pour ce qui est du bouton de mise en marche, un design spécial a été conçu afin de transformer un simple bouton poussoir en interrupteur on-off. Ce design sera cependant expliqué dans la section suivante. Il est simple de dire que les deux fils nécessaires pour relier le bouton sont jugés non-significatifs.

Figure 14 - Schématique du concept de contrôle de la plaque avant

Page 29: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

21

Les boutons sélectionnés sont des EVQ2, simples, efficaces, ergonomiques, esthétiques et peu coûteux. Enfin, de façon à éventuellement pouvoir interagir avec une télécommande infrarouge, un capteur compatible avec le protocole de communication infrarouge standard RC-5 a été sélectionné. Celui-ci est le GP1UE260RKVF de Sharp Microelectronics. Le montage schématique du module de contrôle est montré à la Figure 14. Le circuit imprimé Suite aux choix faits lors de la conception de la circuiterie de la façade, 9 fils sont nécessaires afin de relier celle-ci au circuit imprimé principal. En raison de l’abondance et de la standardisation des connecteurs de fils plats, ceux-ci ont été choisis afin de les connecter. Pour que cela soit plus solide, un connecteur à double bande a été choisi, soit deux rangées de 5 fils. Cela peut être vu sur la Figure 14. Le circuit imprimé en lui-même est assez simple. En effet, les alimentations proviennent du circuit principal et la majorité des pièces sont des DELs et des boutons. Les trois puces du circuit ne demandent pas de circuits spéciaux mis à part le filtrage habituel de l’alimentation, et puisque la majorité des signaux sont numériques, il n’est pas nécessaire de prendre de mesures spatiales particulières. De plus, puisque la vague de fabrication de circuits imprimés était sur quatre couches, l’alimentation 12V des DELs et le plan de terre sont répartis sur deux couches, ce qui vient encore faciliter le dessin de celui-ci. Le placement des diodes et des boutons était le plus important, puisqu’il faut que cela arrive avec le dessin prévu pour la façade. Le circuit vu du dessus est montré en rouge à la Figure 15, tandis que la vue de dessous est montrée en bleu.

Figure 15 - Circuit imprimé de la façade

Page 30: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

22

3.15 Le circuit imprimé principal

Le circuit imprimé principal fait passer le simple prototypage de plaquettes à un niveau supérieur, puisque c’est un montage autonome. Il faut donc en premier lieu s’assurer que celui-ci dispose des alimentations nécessaires au fonctionnement de toutes les puces du concept. Ensuite, le circuit contient à la fois des circuits analogiques sensibles au bruit et des circuits digitaux bruyants. Il est évident que faire une architecture de circuit imprimé qui mélangerait les deux types de signaux serait néfaste à leur bon fonctionnement. La solution principale est donc de répartir les composants dans l’espace afin de faire une séparation. Étant donné la grande prédisposition des circuits numériques à pourrir les signaux des alimentations leur étant reliées, il est aussi recommandé de séparer les alimentations analogiques et numériques. Enfin, pour ne pas que des variations mineures dans la terre numérique n’affectent les signaux analogiques, les plans de terre numérique et analogique sont aussi séparés. De façon à pourvoir aux besoins en courant, en tension et donc en puissance du montage, il est nécessaire de placer un certain nombre d’alimentations à découpage. Ce type d’alimentation est plutôt déplaisant, puisque très bruyant. Il est donc nécessaire de bien s’assurer que les circuits analogiques ne soient pas alimentés par ce type de puce d’alimentation. De plus, la disposition physique des pièces de ce type de montage est très importante pour réduire le niveau de bruit généré sur le plan de terre correspondant. Puisque réalisé sur quatre couches, le circuit imprimé s’est vu ajouter un plan de terre numérique et un plan d’alimentation 3.3V sur les deux couches intermédiaires. Ainsi, étant donné que le plan de terre numérique est le plus répandu et l’alimentation numérique 3.3V la plus fréquente, le circuit imprimé en est beaucoup simplifié. De plus, cela donne un bien meilleur accès à la terre numérique pour toutes les pièces, ce qui augmente la capacité du circuit imprimé à réduire le niveau de bruit et diminue la différence entre le niveau de tension de la terre entre les pièces. Enfin, puisque l’arrière du boitier contient les entrées-sorties numériques et analogique du circuit, il faut que chacun des connecteurs soit prévu au bon endroit et cela réduit beaucoup les possibilités de placement : les connecteurs analogiques avec le bloc analogique et les connecteurs numériques avec le bloc correspondant. L’entrée de tension (12V analogique) doit aussi idéalement être installée proche des blocs d’alimentation afin de réduire les différences de potentiel créées par la longueur des chemins. Il est donc évident que le concept final du circuit sera en trois blocs : les alimentations numériques en bas, les circuits numériques au milieu et les circuits et alimentations analogiques vers le haut du circuit imprimé. Une schématique ainsi qu’un schéma de connexions complets peuvent être retrouvés à l’annexe 5 et 6, respectivement.

Page 31: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

23

Les alimentations du circuit Le circuit imprimé est alimenté de base à un niveau de 12V continu par un transformateur mural. Le fonctionnement des différentes puces énumérés plus haut implique les niveaux de tensions suivants qui seront obtenus selon le schéma de la Figure 16.

• 5V numérique 100mA • 5V analogique 100mA • 3,3V numérique 800mA • 2,5 numérique 100mA • -5V analogique 100mA • -12V analogique 100mA

Figure 16 - Schéma bloc de gestion des alimentations

La sélection des régulateurs de tension implique de considérer la puissance qui sera dissipée à travers les puces et ainsi calculer si ces dernières subiront des échauffements trop intenses. Ce calcul diffère selon que les régulateurs sont de technologies à découpage ou linéaire. 1- Régulateur AP1509-50SG-13 : Régulateur de tension à découpage 5V, 150kHz, 2A, Rendement de 80% Un régulateur de tension à découpage a été préféré à ce niveau en raison du bon rendement de cette technologie. Selon le courant nécessaire, des calculs ont démontrés que les régulateurs linéaires auraient beaucoup trop chauffés. Cependant, les régulateurs de tension à découpage sont plus chers et causent davantage de bruit. Des mesures de filtrages s’avèrent essentielles.

Page 32: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

24

Selon la Figure 16, 1,1A seront fournit par cette puce. L’équation suivante explique le calcul d’augmentation de température du régulateur à découpage.

WP

WW

P

WAVP

dissipée

in

out

4,15,59,6

9,68,0

5,5

5,51,15

=−=

==

=⋅=

CT

WC

JC

JC

°=

°=

125

15

max

θ

CC

CWW

CCT

TTT ext

°≤°

°=⋅°

+°=

∆+=

12561

614,11540

La Figure 17 montre les composantes externes nécessaires au filtrage du bruit de commutation.

Figure 17 - Application typique AP1509

Les alimentations à découpage sont très capricieuses au niveau du placement sur le circuit imprimé. En effet, le filtrage extensif nécessaire à leur bon fonctionnement peut être circonvenu par une mauvaise disposition des pièces, car la longueur des chemins et la présence de « vias » viennent modifier l’impédance des composants des filtres, ce qui est néfaste. De plus, la résistance des chemins peut induire des tensions non-voulues en raison des formes atypiques de courant générées par un tel dispositif. Enfin, la grandeur des courants et les besoins en précision de ce type d’alimentation font que souvent les composants passifs (résistances, inductances et condensateurs) des circuits à découpage sont d’une taille gigantesque pour un circuit imprimé. Toutes ces contraintes donnent une certaine façon d’assemblage facilement reconnaissable. La Figure 18 montre ce à quoi ressemble ce montage sur le circuit imprimé. Le nom des inductances commence par L, les diodes par D, les condensateurs par C et s’il y avait des résistances, leur nom commencerait par R. L’on peut bien voir la différence de grosseur entre la puce (U20) et par exemple l’inductance L5.

Page 33: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

25

Figure 18 - Exemple de connexion d'une alimentation à découpage

Il est aisé de suivre le chemin de la tension d’alimentation puisque les chemins la supportant, dont le maximum théorique de conduction est 2A, sont très gros. Le point le plus remarquable d’un tel montage est le fait qu’il ne se situe que sur une seule surface parce que les « vias » sont trop résistifs. Il est aussi possible de voir que le nombre de « vias » connectant les plans de masse, ou d’alimentation, est très élevé pour réduire ladite résistance. Il est à noter que les dénominations ne sont pas les mêmes sur le schéma de la Figure 17 que sur le plan de montage de la Figure 18, même si les composantes le sont.

Page 34: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

26

2- Régulateur AP130-25YRL Régulateur linéaire, 2.5V, 300mA Selon la Figure 16, 100mA est demandé à cette puce. Le calcul de l’échauffement s’exprime de la façon suivante.

CT

WC

WP

P

IVP

JC

JC

dissipée

dissipée

demandédissipée

°=

°=

=

⋅−=

⋅∆=

125

23

25,0

1,0)5,25(

max

θ

CC

CWW

CCT

TTT ext

°≤°

°≈⋅°

+°=

∆+=

12546

4625,02340

De façon à faciliter encore plus le transfert de chaleur entre le régulateur linéaire et l’environnement, un plan (d’alimentation, de terre ou de sortie) est ajouté et raccordé à la plus grande des pattes du régulateur. Dans le cas présent, cela veut dire un plan d’alimentation. Plus le plan est grand, moins la puce risque de chauffer. Cette topologie se répète pour tous les régulateurs linaires, en variant la grandeur du plan selon la puissance dissipée par le régulateur. La Figure 19 donne un exemple de la topologie en question.

Figure 19 - Exemple de connexion d'une alimentation à découpage

Le dimensionnement des autres régulateurs de tension linéaires se fait de la même façon.

Page 35: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

27

3- Régulateur LD1117ADT33TR Régulateur de tension linéaire, 3.3V, 1A 4- Régulateur MAX765CSA Régulateur de tension inverseur à découpage, -12V, 250mA, 300kHz, Rendement de 80% La Figure 20 représente les composantes externes nécessaires au filtrage.

Figure 20 – Application typique MAX765CSA

Le montage et les caractéristiques de ce circuit sont très semblables à celles du régulateur AP-1509. 5- Régulateur L78L05ACUTR Régulateur linéaire 5V, 100mA, Package SOT-89 L’utilité d’avoir une seconde puce qui fournit le niveau de tension de 5V s’explique par le désir de fournir une tension sans bruit au convertisseur numérique-analogique WM8740. La tension de 5V existante était commune à plusieurs puces et provenait d’une alimentation à découpage. 6- Régulateur L79L05ACUTR Régulateur linéaire -5V, 100mA, Package SOT-89 Tel que mentionné, cette tension est nécessaire au convertisseur numérique –analogique et doit être très stable.

Page 36: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

28

Le circuit de mise en marche Lors de la conception du prototype, il semblait plus intéressant que le système se démarre à l’aide d’un bouton poussoir contrairement à un interrupteur à deux états mécaniques. De plus, pratiquement tous les systèmes électroniques récents possèdent cette caractéristique. Le circuit imprimé nécessitait donc un circuit qui alternait entre l’état de marche et l’état d’arrêt à chaque impulsion sur le bouton d’alimentation. Le circuit fonctionne à l’aide d’une bascule qui transfert le bit qui se trouve sur sa patte d’entrée à la patte de sortie à chaque transition montante de l’horloge. Dans le cas du présent circuit, l’horloge est remplacée par le bouton poussoir. Cette bascule fonctionne de façon complémentaire avec un P-MOSFET qui est en mesure de supporter et couper le courant demandé à la tension requise, tout en ayant une faible résistance drain-source. Un système de réinitialisation à aussi été implanté de façon à prévoir l’état dans laquelle le système tombe lorsque l’alimentation est branchée. Ainsi, lorsque l’alimentation est branchée au secteur, le système est assurément en état d’arrêt. Cela se fait par la charge d’un condensateur qui impose le niveau de réinitialisation à la bascule. La schématique du circuit décrit précédemment est montrée à la Figure 21, et son implémentation physique à la Figure 22.

Figure 21 - Schéma du circuit de mise en marche

Figure 22 – Plan de connexion du circuit de mise en marche

Page 37: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

29

Les circuits digitaux La partie des circuits digitaux comprend toutes les puces servant au décodage et au traitement des signaux numériques, ainsi qu’à la réception et l’envoi de ceux-ci. Cela comprend les différents connecteurs à fibre optique ainsi que les puces de décodage, c’est-à-dire le DIR9001, le STA310, le FPGA, les TORX et les TOTX. 1- La réception numérique La réception initiale des signaux numériques lumineux se fait par les TORX de Toshiba. Ce sont des capteurs abordables, ayant une bonne caractéristique de réception et sont relativement faciles à trouver. Le modèle choisi est le TORX147PL(L,F), qui fonctionne sous 3.3 V et dispose d’une empreinte compacte. De ce fait, les signaux émis par le capteur choisi sont parfaitement compatibles avec le FPGA et le DIR9001, la puce suivante dans l’ordre de traitement des signaux sonores. Un filtre passe-bas est fait à l’alimentation afin de s’assurer de la pureté de réception du signal. Celui-ci est installé proche du capteur afin que les résistances parasites des fils ne viennent pas nuire au filtrage. La schématique d’installation d’un tel connecteur est montrée à la Figure 23, tandis que le plan de connexion est montré à la Figure 24

Figure 23 – Exemple de schéma du circuit d’un TORX

Figure 24 – Exemple de plan de connexion d'un TORX

Il est à noter que le filtre est installé sur la face du dessous dans le plan de connexion.

Page 38: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

30

2- Le décodage I2S Comme il l’est expliqué dans la section 3.4, le DIR9001 est une interface de réception numérique qui décode les signaux venant des connecteurs TOSLINK et, s’il s’agit de signaux 2.0, les rend intelligible selon le protocole I2S constitué du signal, d’une horloge de bit et d’une horloge d’échantillonnage. La puce en question retransmet tout cela avec une précision d’horloge atomique, ce qui en fait une puce toute désignée pour l’audio haute-fidélité. La connexion de cette puce est en réalité assez simple, puisque les seules pièces requises servent au filtrage de l’alimentation ou au réglage du circuit « PLL » intégré qui sert à recouvrer l’horloge. Il est bien sur critique de placer ces filtres aussi proches que possible de la puce en elle-même, afin de réduire les interférences créées par les impédances parasites des filtres. C’est doublement important au niveau de la reconstruction de l’horloge, puisque tout le reste du circuit en dépend. On peut voit la schématique correspondante à la Figure 25 et le plan de connexion à la Figure 26.

Figure 25 - Schéma du circuit du DIR9001

Figure 26 - Plan de connexion du DIR9001

Page 39: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

31

3- Le décodage SP/DIF Le STA310 est une autre pièce critique au montage, puisque sa fonction est de prendre un signal I2S modulé SP/DIF, qui n’est pas intelligible normalement, et de le transformer en le nombre adéquat de sortie I2S, pour que le traitement de signal soit possible dans le FPGA. Le STA310 est commandé par protocole I2C et donc nécessite peu de fils de contrôle, mais le seul nombre des pattes d’alimentation vient compliquer le concept de connexion dune telle puce. En fait, en raison de la grosseur de la puce les façons de la connecter sont très réduites et les deux plans supplémentaires du circuit sur les couches intermédiaires viennent beaucoup simplifier son design de connexion. De façon à fonctionner comme il faut, le STA nécessite un oscillateur externe à 47MHz. Afin d’économiser l’espace sur le circuit imprimé, il a été décidé que le STA310 serait installé sous la plaque d’expansion du FPGA.

Figure 27 - Schéma du circuit du STA310

L’on peut voir sur la Figure 27 le nombre impressionnant d’alimentations, ainsi que le filtrage indispensable à celles-ci. La Figure 28 montre le plan de connexion du la puce.

Page 40: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

32

Figure 28 - Plan de connexion du STA310

Le FPGA, ou module de traitement de signal Il est prévu d’utiliser la plaquette FPGA construite par Richard Martin, et les empreintes de connexions ont donc été faites dans ce sens. On peut les voir dans la Figure 28, puisque cette plaquette est prévue pour aller par-dessus le STA310 et que le dessin basique est fait sur le circuit imprimé. L’envoi de signaux numériques La transmission de signaux numériques se fait par des modules TOTX de Toshiba, correspondant aux TORX. Le connecteur choisi est le TOTX147PL(F,T), qui fonctionne sur 3.3V et est donc compatible avec les signaux envoyés par le FPGA. Une filtration très simple est faite à l’alimentation et c’est tout. L’empreinte d’un tel connecteur et le schéma de connexion sont très semblables à ceux d’un TORX, en plus simple puisque le filtre n’est composé que d’un condensateur, ce qui fait qu’en inclure une image serait redondant.

Page 41: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

33

Les circuits analogiques Les circuits analogiques du circuit imprimé servent « de a à z » à traiter des signaux audio pour les envoyer à des haut-parleurs. Il est donc critique que ceux-ci soient affectés le moins possible par le bruit ambiant du circuit. En plus des mesures énumérées plus haut, cela veut dire de réduire au maximum la longueur des fils en question. Les circuits analogiques comprennent le WM8740 et ses amplificateurs différentiels/filtres actifs, ainsi que le LM1972 et son amplificateur suiveur de sortie. Le convertisseur numérique-analogique Pour obtenir les signaux analogiques nécessaires à l’utilisation de hauts parleurs standards, il est recommandé d’utiliser un convertisseur analogique-numérique. Produit d’une entreprise reconnue pour la qualité de ses puces à vocation audio, le WM8740 est un choix certain puisqu’il dispose de caractéristiques incroyables au niveau du rapport signal-bruit et de la qualité de la conversion. Pour qu’il fonctionne convenablement, cependant, il faut lui donner les conditions d’opération requises. La première condition, et la plus importante, est la stabilité des alimentations analogiques de la puce. À cet effet, plusieurs condensateurs de filtrage d’alimentation sont prévus. Ensuite, afin d’améliorer le rapport signal-bruit du circuit, un montage en amplificateur différentiel est installé à la sortie du convertisseur. Celui-ci comprend en outre un filtre passe-bas de deuxième ordre pour chaque sortie afin d’améliorer la qualité de la sortie du convertisseur. Il est bien sur très important que chacun des deux filtres soit calibré de la même façon afin de ne pas perturber le signal lorsque celui-ci est additionné. Les amplificateurs opérationnels choisis, les AD797 d’Analog Devices, font partie de la gamme supérieure de qualité des amplificateurs audio. Le convertisseur en lui-même dispose d’alimentation numériques pour la communication avec le FPGA et d’alimentations analogiques pour le signal de sortie en lui-même. Il dispose d’une grande batterie de filtres intégrés et de plusieurs filtres externes de calibration pour la conversion numérique-analogique, qui doivent être placés le plus près possible de la puce. Enfin, il utilise une horloge de fonctionnement très précise fournie par le DIR9001. De façon à réduire les perturbations, le plan de terre analogique est réparti tout autour du Wolfson et relié à chaque composante du circuit de celui-ci par le plus court chemin possible. La Figure 29 montre le schéma du convertisseur ainsi que d’un seul des deux montages à amplificateurs différentiels, tandis que la Figure 30 et la Figure 31 montrent respectivement la vue de dessus et dessous du plan de connexion.

Page 42: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

34

Figure 29 - Schéma du circuit du WM8740

Figure 30 - Plan de connexion du WM8740 - vue de dessus

Page 43: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

35

Figure 31- Plan de connexion du WM8740 - vue de dessous

Il est évident sur la Figure 31 que le plan de terre de la face du dessous a été conservé dans son intégralité le mieux possible, de façon à diminuer la distance vue entre chaque point du plan et donc la différence de potentiel entre chaque point. Le contrôle analogique du volume Pour les raisons expliquées dans les sections précédentes, il a été décidé de faire le contrôle du volume d’une façon analogique. La puce choisie à cet effet est le LM1972 de National Semiconductors, qui est une des seules puces conçues à cet effet. Le contrôle de cette puce se fait de façon sérielle par un protocole semi-SPI. Les alimentations sont filtrées normalement pour réduire les perturbations dues à l’alimentation. Le problème avec cette puce est que ses sorties sont à impédance variable, ce qui fait un effet de potentiomètre à la sortie. La façon de régler ce problème est d’installer un amplificateur suiveur à la sortie de la puce, ce qui vient stabiliser l’impédance de sortie. La Figure 32 montre le schéma du circuit correspondant, tandis que la Figure 33 en montre le plan de connexion.

Page 44: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

36

Figure 32 - Schéma du circuit du LM1972

Figure 33 - Plan de connexion du LM1972

Page 45: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

37

3.16 Le choix du FPGA

Les facteurs critiques dictant le choix du FPGA sont le nombre de pattes et la capacité en mémoire de la puce. Une analyse du nombre de connexions avec le FPGA de chaque puce externe a été faite. La distribution est montrée dans le tableau 1.

Tableau 1 - Nombre de pattes du FPGA

Description Nombre de pattes du FPGA nécessaires

STA310 10 DIR9001 10 LM1972 3 WM8740 7

Connecteur de façade/IR 1 Interfaces d’entrées 4 Interfaces de sortie 3

Pattes supplémentaires 7 Total 45

Le FPGA contient un minimum de 45 pattes afin de réponde de façon minimale aux besoins du projet. Le fait que l’interface audio numérique DIR9001 ne se contrôle pas de façon sériel, cela demande d’amputer environ 10 pattes au FPGA. La plus grande capacité de la mémoire est dédiée à la sauvegarde du code du microcontrôleur émulé qui sert au contrôle et à la configuration des puces externes. Ainsi, le microcontrôleur devra configurer et contrôler le convertisseur numérique-analogique (WM8740), l’interface audio numérique (DIR9001), le décodeur numérique (STA310), le contrôle du volume (LM1972), le protocole de communication avec la façade et l’interface infrarouge. La capacité en mémoire est évaluée à environ 5k octets. Le FPGA sélectionné est le Spartan 3 XC3S250E de la compagnie Xilinx.

Page 46: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

38

3.17 La programmation du prototype

Principe général Comme le montre les schémas blocs de la Figure 1 et de la Figure 2, pratiquement chaque puce est rattachée au FPGA. La programmation peut donc gérer toutes les connexions et traitements, le prototype est donc facilement modifiable et reconfigurable. En effet, il est plus simple de changer un code qu’un chemin gravé sur le circuit imprimé. Le rôle du FPGA peut être séparé en 2 grandes fonctions, soit le contrôle du processus et le traitement de signal. Le contrôle consiste en la configuration initiale des puces lors de la mise sous tension, au contrôle du chemin de donnée et à la gestion des interfaces utilisateur et infrarouge. Le traitement de signal est associé à tout ce qui décode, traite et modifie le signal audio avant la conversion numérique-analogique. Il est évident que le développement de la partie du traitement de signal ne se fait que lorsque la partie du contrôle est fonctionnelle. Ainsi, c’est cette dernière qui à été priorisé et développé en premier lieu. La structure de haut niveau de la programmation est schématique, ce qui consiste en un assemblage de blocs connectés par des fils. Ce type de structure est excellent au niveau de la lisibilité du code, et a le mérite de beaucoup ressembler aux schémas blocs dessinés précédemment. Ce type de structure facilite aussi beaucoup les interactions et la cohabitation entre les différentes parties, qu’elles soient reliées ou non. Les différentes boîtes représentent chacune une fonction du code général, et peuvent elles-mêmes contenir des sous-sections dont la visibilité n’est pas nécessaire dans l’ensemble. C’est ce que l’on appelle une architecture par strates. Les sous-sections peuvent être dans différents langages, soit VHDL, schématique ou assembleur PIC16. Le logiciel qui a été sélectionné pour soutenir la programmation (mais aussi la conception physique des pièces) est « Altium Designer », version « summer 09 ». Le principal avantage d’Altium est qu’il regroupe toutes les différentes fonctionnalités nécessaires du programmeur à l’ingénieur de « Hardware ». En effet, tous les circuits électriques, circuits imprimés, fichier VHDL ou assembleur et schématiques de programmation peuvent être développées dans l’environnement Altium, ce qui facilite énormément les interactions entre ces parties somme toute assez disparates. « Altium Designer », malgré toute sa puissance et sa versatilité, a cependant aussi quelques défauts. En effet, il le fournit pas de synthétiseur pour la programmation des FPGA et donc se sert de celui du logiciel correspondant au modèle de FPGA choisi. Il faut donc disposer de Xilix ISE ou de Quartus pour pouvoir utiliser une vraie FPGA dans les concepts développés sur Altium. De plus, l’immensité même de l’environnement Alium fait qu’à certains moments celui-ci souffre de légers problèmes de stabilité ou de bogues mineurs et, moins souvent, majeurs. Quelques problèmes de compatibilité avec

Page 47: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

39

différents autres programmes ou puces peuvent aussi advenir. Ces problèmes sont plutôt mineurs en général, mais certains peuvent être assez gênants. Le contrôle du processus Le contrôle de puce s’adapte bien avec la technologie des microcontrôleurs et le langage assembleur et la tâche ne justifie normalement pas l’utilisation d’une puce aussi complexe qu’un FPGA et le langage VHDL. De plus, il n’était pas avantageux et ingénieux d’utiliser physiquement les deux technologies. Cependant, un FPGA est une technologie très puissante et il a été découvert qu’il était possible d’émuler une autre technologie dans le FPGA, soit un microcontrôleur. Le contrôle serait donc plus simple à programmer car l’équipe avait une solide base dans la programmation de ce langage suite à de nombreux projets antérieurs. L’utilisation d’un tel procédé est désigné par l’acronyme anglophone SOPC (System On Programmable Chip). La technologie émulé est celle d’un PIC16F de la compagnie Microchip® et se nomme TSK165C à l’intérieur du FPGA. Il est à noter que les technologies sont imbriquées, c’est-à-dire qu’il est possible de créer des blocs simple en VHDL et de les utiliser avec le code Assembleur, tel que pour les modules de communication I2C ou SPI. Les protocoles de communications Afin de communiquer avec les puces, certains protocoles de communication imposés par ces dernières, sont utilisés. Ces protocoles standards permettent d’envoyer convenablement l’information de contrôle aux puces. Évidemment, le protocole le plus simple est d’associé chaque bit d’un registre à un fil et de transmettre l’information d’un seul coup d’horloge. Ce protocole se nomme parallèle et nécessite beaucoup trop de fils et de pattes au FPGA. Des protocoles séries ont donc été développés. Pour l’interface utilisateur, les DELs et les boutons ont été instrumentés à l’aide de multiplexeurs d’entrées-sorties fonctionnant sur réseau I2C. Cette astuce trouve toute sont utilité dans le gain du rapport information/nombre de fils. En effet, la connexion de la façade avant nécessitait 39 fils. Ce nombre a pu être réduit à 9 connections, un gain de 400%. Cependant, ce protocole demande une programmation plus complexe. Il est à noter que la puce STA310 fonctionne aussi sur le même réseau I2C. L’interface infrarouge demande l’utilisation du protocole RC5 développé par la compagnie Philips®. Le traitement de signal La partie de traitement de signal est surtout constituée de blocs VHDL, sur 24 bits parallèles, soit la plus grande résolution actuelle pour un signal audio. Les blocs faisant le transfert du protocole I2S vers le traitement parallèle et le transfert inverse sont prêts et fonctionnels. Cependant, la partie comprenant les différents filtres n’a pas du tout été touchée, mais est prévu pour utiliser environ 50 à 60% de l’espace disponible sur le FPGA. La programmation qui pourra être faite dans le futur traitera donc principalement de ce point. Les schématiques crées ainsi que les codes sources sont inclus à l’Annexe 8 : Schématiques de programmation et à l’Annexe 7 : Codes sources du prototype.

Page 48: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

40

3.18 Aspect final

La présente section démontre l’allure de l’assemblage finale du prototype. À la Figure 34, il est possible de remarquer que le montage final correspond à ce qui a été décrit dans les sections de conception précédentes et que le prototype est d’aspect professionnel.

Figure 34 - Façade avant et arrière du prototype

La façade avant constitue l’interface de l’utilisateur et celle arrière permet la connexion des entrées-sorties et de l’alimentation.

Page 49: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

41

4.0 Bilan des activités

4.1 Arrimage formation pratique/universitaire

Au cours du présent projet, les membres de l’équipe ont pu se servir des connaissances obtenues lors de nombreux cours donnés à l’UQAC. En premier lieu, les connaissances de base acquises lors des cours « Électronique » 1 (6GEI300) et 2 (6GEI620), ainsi que « Dynamique des systèmes » 1 (6GEI205) et 2 (6GEI305) et « Transfert de Chaleur » (6GMC505), en plus des connaissances plus poussées obtenues lors des cours « Interfaces et instrumentation » (6GEI542), « Électrotechnique » (6GEI510) et « Signaux et systèmes » (6GEI500), ont été mises en pratique pour réaliser la partie physique du projet. Les cours « Systèmes Digitaux » (6GEI420), « Systèmes à microprocesseurs » (6GEI530), « Traitement numérique des signaux » (6GEI600), « Conception de systèmes digitaux » (6GEI550) et l’expérience acquise lors du cours « Projet de conception en ingénierie » (6GIN333) ont été utiles pour la partie numérique du projet. Les cours « Projet de conception en ingénierie » (6GIN333), « Introduction aux projets d’Ingénieur » (6GIN300) et « Sciences graphiques » (6DDG100) ont aussi beaucoup servi lors des tâches annexes, et de la rédaction des rapports d’étape et du rapport final. Enfin, des connaissances supplémentaires, surtout au niveau des protocoles de communication série (I2C et I2S) et des standards audio (SP/DIF, AC3, etc.), ont dû être acquises afin de pouvoir réaliser le projet.

4.2 Travail d’équipe

Les auteurs du présent projet ont déjà travaillé de concert sur plusieurs projets d’ingénierie, dont notamment la Formule SAE, où ils ont occupé un poste conjoint, et le cours« Projet de conception en ingénierie » (6GIN333) qu’ils ont suivi ensemble. Cette expérience n’est donc pas une nouveauté et tout s’est bien passé, nonobstant les frictions habituelles provenant du temps de cohabitation.

Page 50: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

42

4.3 Respect de l’échéancier

Le projet de synthèse en ingénierie est accompli sur deux sessions, soit celles d’Hiver 2010 et d’Été 2010. Les Figure 35 et Figure 36 représente l’échéancier pour la session d’Hiver 2010 et Été 2010 respectivement.

Figure 35 - Échéancier Hiver 2010

Figure 36 - Échéancier Été 2010

Modification à l’échéancier En raison des vacances du personnel durant la saison estival, un certain ralentissement s’est produit dans la réalisation du projet. Ainsi, la réalisation des circuits imprimés finaux s’est avérée plus longue. De plus, une certaine partie de la programmation dépendait de ces circuits. La partie programmation s’est donc vue écourtée de plusieurs semaines. Cependant, les parties principales ont tous pu être réalisée et le projet est fonctionnel dans une grande partie. La conception de boitier semble s’étendre sur plusieurs semaines car cette tâche se réalisait en parallèle avec toutes les autres et était moins prioritaire.

Page 51: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

43

4.4 Analyses et discussions

La méthode de travail De façon générale, une approche structurée du problème est priorisée afin d’optimiser la démarche de conception. En ayant en vue les objectifs du projet, les principales fonctionnalités sont cernées et différentes solutions sont envisagées pour finalement conserver la plus efficace. La méthode de travail utilisée pour la réalisation physique, c'est-à-dire une conception modulaire des parties avant l’implémentation finale, s’est révélée très pratique et efficace. En effet, cela a permis d’isoler efficacement les problèmes récurrents au concept et de les corriger plus rapidement. Le temps de réalisation ainsi économisé a permis une plus grande concentration sur les problématiques de conception et a permis un meilleur résultat final. Cela a beaucoup facilité le travail de programmation, puisqu’il était facile de séparer les erreurs d’implémentation des erreurs de programmation ou des autres. Afin de conserver la bonne orientation du projet et pour valider les choix de conception, l’équipe et le conseiller se sont rencontrés de façon hebdomadaire. Dès le début des activités du projet, l’élaboration d’une base solide a été priorisée, ainsi les points les plus importants ont été traités en priorité. Cependant, malgré la méthode de travail efficace, les objectifs de départ ont été trop ambitieux pour être convenablement réalisés. Il a donc été décidé de couper dans la partie de traitement de signal de la programmation, puisque celle-ci était la moins nécessaire au fonctionnement direct du projet. La partie physique En dehors de quelques problèmes d’empreintes de pièces, la plupart des circuits construits pour ce projet sont fonctionnels. Cependant, quelques améliorations pourraient êtres apportées au concept général. En premier lieu, le circuit analogique permettant de tourner l’alimentation en marche ou fermée manque d’une certaine stabilité. En effet, si l’on appuie trop rapidement sur le bouton poussoir, le résultat est aléatoire. Un filtre a été installé entre les pattes Q et D de la flip-flop afin de potentiellement régler ce problème, mais cela n’a pas été concluant. Il serait bon de rééquilibrer ce filtre, mais la solution réelle à ce problème serait sans doute de changer le concept pour plutôt se servir des fonctions de mise en veille des puces et laisser l’alimentation en tout temps.

Page 52: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

44

Ensuite, l’ajout d’une prise « Jack » (pour écouteurs principalement) sur la façade serait une bonne chose pour la facilité d’utilisation du module. Cela rendrait le prototype beaucoup plus pratique et standard. Des dispositions ont déjà été prises en ce sens sur le circuit imprimé principal. Enfin, la sortie de l’oscillateur alimentant la puce STA310 n’a pas été filtrée, ce qui n’est pas une bonne chose. Il faudrait rajouter un filtre coupant avant 45MHz et après 50MHz (passe-bande) à cet endroit. Un filtre passif de 2eme ordre serait probablement suffisant. En dernier lieu, le fait que la plus grande partie du projet ait été réalisée durant l’été a compliqué les choses au niveau de la réalisation physique : il a fallu jongler avec de nombreuses contraintes de temps et de budget. La partie numérique La programmation servant à contrôler et initialiser les nombreuses puces du concept s’est bien passée et le choix du protocole I2C pour communiquer avec de nombreuses puces s’est révélé judicieux.

L’implémentation du microcontrôleur s’est révélée un peu plus difficile, cependant. En effet, l’organisation de la mémoire dans celui-ci et des problèmes de stabilité inhérents à « Altium Designer » ont beaucoup compliqué le fonctionnement et le débogage de celui-ci pour les parties de code complexes. Ces parties, dans ce cas, étant le menu d’interaction avec l’interface utilisateur, en ce moment fonctionnel à 80% environ.

La partie traitement de signal du projet a été laissée de côté en majeure partie puisque c’est la dernière étape nécessaire au fonctionnement du prototype. Cependant, la preuve du concept a été faite et l’implémentation de cette partie ne nécessiterait que du temps de programmation.

Page 53: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

45

5.0 Conclusion et recommandations En conclusion, il est possible d’affirmer que la partie physique du projet est parfaitement fonctionnelle. Cette partie englobe la conception, la fabrication et l’utilisation des circuits imprimés ainsi que la partie du produit fini du projet. L’utilisation du prototype a démontré que les circuits électroniques étaient tous fonctionnel et qu’il n’y avait aucun problème de surchauffe. Ainsi, il est possible d’affirmer que la programmation future pourrait se faire sans problème. De cette façon, le projet est en mesure d’être utilisé par d’autres étudiants en programmation dans un contexte de projet par exemple. En lien avec les objectifs initiaux, le prototype est en mesure, dans un premier temps, de recevoir des signaux audio numériques par fibre optique, de procéder au décodage nécessaire, d’accéder au signal de données et de redistribuer les signaux par fibre optique aux enceintes correspondantes. Ensuite, le prototype est capable de faire la conversion numérique-analogique des signaux pour qu’ils soient transformés en pression acoustique par les haut-parleurs. De plus, le prototype est un produit fini qui contenu dans un boitier d’une allure professionnelle. La réalisation du projet s’est déroulée de façon structurée à l’aide de rencontre hebdomadaire avec le conseiller. Ces rencontres conservaient le projet sur les bonnes voies et priorisaient la construction de bases solides avant le passage à une autre étape de conception. La réalisation d’un projet durant la période estival permet évidemment d’investir davantage de temps dans le projet et ainsi obtenir des résultats plus impressionnants. Cependant, l’équipe à du faire une bonne organisation du temps afin de se conformer avec les vacances du personnel. Cela a évidemment allongé le temps qui était alloué à certaines tâches de conception.

Page 54: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

46

6.0 Bibliographie Datasheet de la puce DIR9001, Burr-Brown Products from Texas Instruments < http://www.burr-brown.com > (Consulté le 03/17/10). Datasheet de la puce STA310, STMicroelectronics < http://www.st.com > (Consulté le 03/17/10). Datasheet de la puce WM8740, Wolfson Microelectronics < http://www.wolfsonmicro.com > (Consulté le 03/17/10). Datasheet de la puce DIT4096, Burr-Brown Products from Texas Instruments < http://www.burr-brown.com > (Consulté le 03/17/10). Datasheet de la puce LM1972, National Semiconductor < http://www.national.com > (Consulté le 03/17/10). Petite histoire du SPDIF par Tomi Engdahl, [en ligne] Disponible sur : < http://francois.barvec.free.fr/spdif.html > (Consulté le 03/17/10). Dolby Labotories, [en ligne] Disponible sur : < http://www.dolby.com > (Consulté le 03/17/10). Techniques de l’ingénieur [en ligne] Disponible sur : < http://www.techniques-ingenieur.fr> (Consulté le 03/17/10).

Page 55: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

47

7.0 Annexes

Annexe 1 : Spécification détaillée

A.1 Contrôleur Cette composante décode, traite et transforme au format optique les signaux audio. Entrées :

-Audio Dolby Digital 5.1/stéréo TOSLINK -Capteur infrarouge (télécommande) -Autres (à déterminer)

Sorties :

-3 connecteurs fibre optique (numérique TOSLINK) -Haut-parleurs avant (droit et gauche) -Haut-parleurs arrière (droit et gauche) -Haut-parleur central et caisson de grave -Façade avant Traitement :

-Décodage Dolby 5.1 -Réglages en fréquence et amplitude -Encodage stéréo Module de traitement :

-FPGA Mécanique :

-Boitier en aluminium -Bouton,lumière sur façade

-Interfaces de connexion -Montage sur circuit imprimé A.2 Télécommande (à déterminer) Cette composante possède le contrôle du volume, des aigus et des graves. Traitement : -Détection des touches -Encodage infrarouge -Autres (à déterminer) Module de traitement :

-FPGA Mécanique :

-Boitier en plastique -Interfaces de commande manuelle -Montage sur circuit imprimé

Page 56: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

48

A.3 Module de traitement des haut-parleurs Cette partie sépare les hautes et les basses fréquences, fait la conversion numérique-analogique et amplifie les signaux. Entrée :

-Connecteur fibre optique (numérique TOSLINK) Sortie :

-Signaux analogiques de commande des haut-parleurs Traitement :

-Décodage stéréophonique -Réglages en fréquences -Amplification (50-80W) -Conversion numérique-analogique Module de traitement :

-FPGA -Amplificateur audio Mécanique :

-(À déterminer) Voici le résumé schématique du système complet à la Figure 37.

Haut-parleur(avant gauche)

Haut-parleur(avant droit)

RCAENTRÉESTOSLINK

SORTIESTOSLINK

Fibreoptique

Caisson degrave

CONTRÔLEUR

V+

Vout

C+

GND

C-

Voltage Converter

V+

Vout

C+

GND

C-

Voltage Converter

V+

Vout

C+

GND

C-

Voltage Converter

Haut-parleur(Centre)

V+

Vout

C+

GND

C-

Voltage Converter

Haut-parleur(avant droit)

V+

Vout

C+

GND

C-

Voltage Converter

Haut-parleur(avant droit)

V+

Vout

C+

GND

C-

Voltage Converter

Figure 37 - Résumé schématique du système

Page 57: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

49

Annexe 2 : Schématique des plaquettes

Décodeur DIR9001

Figure 38 - Schématique du DIR9001

Figure 39 - PCB du DIR9001

Page 58: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

50

Convertisseur numérique-analogique WM8740

Figure 40 - Schématique du WM8740

Figure 41 - PCB du WM8740

Page 59: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

51

Décodeur STA310

Figure 42 - Schématique du STA310

Figure 43 - PCB du STA310

Page 60: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

52

Encodeur DIT4096

Figure 44 - Schématique du DIT4096

Figure 45 - PCB du DIT4096

Page 61: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

53

Annexe 3 : Mise en plan des façades

Figure 46 - Mise en plan de la façade avant

Page 62: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

54

Figure 47 - Mise en plan de la façade arrière

Page 63: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

55

Annexe 4 : Dessins vectoriels de l’impression sur les façades

Voici l’impression de la façade avant à la Figure 48.

Figure 48 - Impression de la façade avant du contrôleur

Le fonctionnement des touches et lumières est expliqué à la section 3.13.

Page 64: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

56

Voici l’impression de la façade arrière à la Figure 49.

Figure 49 - Impression de la façade arrière du contrôleur

Page 65: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

57

Annexe 5 : Schématiques du circuit imprimé principal

Figure 50 - Schématique du circuit imprimé principal, partie 1

Page 66: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

58

Figure 51- Schématique du circuit imprimé principal, partie 2

Page 67: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

59

Figure 52- Schématique du circuit imprimé principal, partie 3

Page 68: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

60

Annexe 6 : Plans de connexions du circuit imprimé principal

La Figure 53 montre le plan de connexion du dessus du circuit imprimé principal.

Figure 53- Plan de connexion du circuit imprimé principal – vue de dessus

Page 69: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

61

La Figure 54 montre le plan de connexion du dessous du circuit imprimé principal.

Figure 54- Plan de connexion du circuit imprimé principal - vue de dessous

Page 70: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

62

Annexe 7 : Codes sources du prototype

Partie 1 – Codes d’initialisation des puces audio (Assembleur) ;**************************************************************************** ; PROGRAMME DE CONTROLE DU MODULE PRINCIPAL (COMPATIBLE PIC16Fxxxx) ; CONÇU POUR TSK165C ; AUTEURS : ETIENNE LECLERC ; JEAN-BENOIT BOUDREAULT ; VERSION 1.5 - INITIALISATION DU DIR9001 ; - INITIALISATION DU WM8740 avec Clock_div et SPI_T v. 1.7 ;**************************************************************************** ; ; ;**************************************************************************** ; VARIABLES ;**************************************************************************** .SECTION VARIABLES,DATA

.MESSAGE I "Programme de contrôle du module principal, Version 1.5"

.GLOBAL START

.GLOBAL INITUC

.GLOBAL INITHARDWARE

.GLOBAL INITDIR9001

.GLOBAL INITWM8740

.GLOBAL INITLM1972

.GLOBAL SPI_TRANSMIT

.GLOBAL WAITREADY1

BYTEH .EQU 0X00F

BYTEL .EQU 0X010

;**************************************************************************** ; INITIALISATION ;**************************************************************************** .SECTION _MAIN,Code

START:

GOTO INITUC

INITUC:

MOVLW 0XFF

TRIS PORTA

TRIS PORTD

TRIS PORTE

MOVLW 0X00

TRIS PORTB

MOVLW 11100000b

TRIS PORTC

MOVLW 01110000b

TRIS PORTF

CALL INITDIR9001

CALL INITWM8740

CALL INITLM1972

GOTO INITHARDWARE

Page 71: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

63

;**************************************************************************** ; ROUTINE PRINCIPALE ;**************************************************************************** INITHARDWARE:

GOTO INITHARDWARE

;**************************************************************************** ; ROUTINE D'INITIALISATION DU DIR9001 ; ; FMT[1..0] => 00 ; PSCK[1..0] => 10 ; ;**************************************************************************** INITDIR9001:

BCF PORTF,4 ; RST BCF PORTF,0 ; FMT0 BCF PORTF,1 ; FMT1 BCF PORTF,2 ; PSCK0 BSF PORTF,3 ; PSCK1 NOP

NOP

NOP

NOP

NOP

BSF PORTF,4 ; RST RETLW 0X00

;**************************************************************************** ; ROUTINE D'INITIALISATION DU WM8740 ; ; UTILISE LE BLOC VHDL "CLOCK_DIV" POUR GENERER UNE HORLOGE DE 1MHz ; Registres à envoyer : ; "00000000 11111111" ; "00000010 11111111" ; "00000100 00001000" ; "00000110 00000001" ; "00001100 00000000" ;**************************************************************************** INITWM8740:

BSF PORTC,0

MOVLW 0X00

TRIS PORTB

BCF PORTC,1 ;Met ModeT à 0 ; REG0 MOVLW 00000001b ;Byte d'envoi haut MOVWF BYTEH

MOVLW 11111111b ;Byte d'envoi bas MOVWF BYTEL

CALL SPI_TRANSMIT

NOP

NOP

NOP

; REG1 MOVLW 00000011b ;Byte d'envoi haut MOVWF BYTEH

MOVLW 11111111b ;Byte d'envoi bas MOVWF BYTEL

Page 72: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

64

CALL SPI_TRANSMIT

NOP

NOP

NOP

; REG2 MOVLW 00000100b ;Byte d'envoi haut MOVWF BYTEH

MOVLW 00000100b ;Byte d'envoi bas MOVWF BYTEL

CALL SPI_TRANSMIT

NOP

NOP

NOP

; REG3 MOVLW 00000110b ;Byte d'envoi haut MOVWF BYTEH

MOVLW 00001000b ;Byte d'envoi bas MOVWF BYTEL

CALL SPI_TRANSMIT

NOP

NOP

NOP

; REG4 MOVLW 000010000b ;Byte d'envoi haut MOVWF BYTEH

MOVLW 00000001b ;Byte d'envoi bas MOVWF BYTEL

CALL SPI_TRANSMIT

RETLW 0X00

;**************************************************************************** ; ROUTINE D'INITIALISATION DU LM1972 ; ;**************************************************************************** INITLM1972:

BSF PORTC,0

MOVLW 0X00

TRIS PORTB

BSF PORTC,1 ;Met ModeT à 1 MOVLW 00000000b ;Byte d'envoi bas - atténuation de 2dB - Le même pour les trois channels MOVWF BYTEL

MOVLW 00000000b ;Byte d'envoi haut - Channel 1 MOVWF BYTEH

CALL SPI_TRANSMIT

MOVLW 00000001b ;Byte d'envoi haut - Channel 2 MOVWF BYTEH

CALL SPI_TRANSMIT

MOVLW 00000010b ;Byte d'envoi haut - Channel 3 MOVWF BYTEH

Page 73: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

65

CALL SPI_TRANSMIT

RETLW 0X00

;**************************************************************************** ; ROUTINE D'UTILISATION DU BLOC SPI_T ; COMPREND LA SOUS-ROUTINE "WAITREADY" ;**************************************************************************** SPI_TRANSMIT:

BSF PORTC,2 ;Reset le bloc SPI_T BSF PORTC,4 ;Reset le Diviseur de clock BCF PORTC,4

BCF PORTC,2

MOVF BYTEH,W

MOVWF PORTB

BSF PORTC,3 ;Dit au module de passer à l'état suivant NOP

NOP

BCF PORTC,3

CALL WAITREADY1

MOVF BYTEL,W

MOVWF PORTB

BSF PORTC,3 ;Dit au module de passer à l'état suivant NOP

NOP

BCF PORTC,3

CALL WAITREADY1

BSF PORTC,3 ;Dit au module de passer à l'état suivant NOP

NOP

BCF PORTC,3

CALL WAITREADY1 ;Attend la fin de la transmission RETLW 0X00

WAITREADY1:

BTFSS PORTC,5

GOTO WAITREADY1

RETLW 0X00

.END

Page 74: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

66

Partie 2 – Codes de l’interface utilisateur (Assembleur) ;**************************************************************************** ; VARIABLES ;**************************************************************************** .SECTION VARIABLES,DATA

;**************************************************************************** ; INITIALISATION ;**************************************************************************** .MESSAGE I "I2CM ok"

.GLOBAL __START

TEMPO .EQU 0X000B

ADR_TEMPO .EQU 0X000C

DATA_TEMPO .EQU 0X000D

FLAG .EQU 0X000E

ADR_STA .EQU 0X000F

DATA_STA .EQU 0X0010

ADR_LED .EQU 0X0011

DATA_LED .EQU 0X0012

SOURCE .EQU 0X0013

AUDIO .EQU 0X0014

VOL .EQU 0X0015

BASS .EQU 0X0016

TRB .EQU 0X0017

DELTEMP .EQU 0X0018

LSD .EQU 0X0019

MSD .EQU 0X001A

UPD_TEMP .EQU 0X001B

S_IO_TEMP .EQU 0X001C

;PLAY_FLAG FLAG,0 .SECTION _MAIN,Code

__START:

GOTO INITUC

;LUTs DES 7 SEGMENTS LUTAFFG_14

ADDWF PCL,1

RETLW 00111111b ;0 RETLW 00000000b ;1 RETLW 11001111b ;2 RETLW 11000011b ;3 RETLW 11110000b ;4 RETLW 11110011b ;5 RETLW 11111111b ;6 RETLW 00000000b ;7 RETLW 11111111b ;8 RETLW 11110011b ;9 LUTAFFG_15

ADDWF PCL,1

RETLW 11001111b ;0 RETLW 11001100b ;1 RETLW 00001111b ;2 RETLW 11001111b ;3 RETLW 11001100b ;4 RETLW 11000011b ;5 RETLW 11000011b ;6 RETLW 11001111b ;7 RETLW 11001111b ;8 RETLW 11001111b ;9

Page 75: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

67

LUTAFFD_16

ADDWF PCL,1

RETLW 11110011b ;0 RETLW 00000000b ;1 RETLW 11111100b ;2 RETLW 11001100b ;3 RETLW 00001111b ;4 RETLW 11001111b ;5 RETLW 11111111b ;6 RETLW 00000000b ;7 RETLW 11111111b ;8 RETLW 11001111b ;9 LUTAFFD_17

ADDWF PCL,1

RETLW 00111111b ;0 RETLW 00110011b ;1 RETLW 00001111b ;2 RETLW 00111111b ;3 RETLW 00110011b ;4 RETLW 00111100b ;5 RETLW 00111100b ;6 RETLW 00111111b ;7 RETLW 00111111b ;8 RETLW 00111111b ;9 BIN2BCD

CLRF MSD

MOVWF LSD

GTENTH

MOVLW 10

SUBWF LSD,W

BTFSS STATUS,0

GOTO OVER

MOVWF LSD

INCF MSD,F

GOTO GTENTH

OVER

RETLW 0

UPDATE_AFF

;UPDATE AUDIO CLRF UPD_TEMP

MOVF AUDIO,F

BTFSC STATUS,2

GOTO UPD_VOL

DECF AUDIO,W

BTFSC STATUS,2

GOTO UPD_BASS

MOVF TRB,W

CALL BIN2BCD

BSF UPD_TEMP,0

BSF UPD_TEMP,1

GOTO NEXT_UPDATE_AUDIO

UPD_VOL

MOVF VOL,W

CALL BIN2BCD

BSF UPD_TEMP,4

BSF UPD_TEMP,5

GOTO NEXT_UPDATE_AUDIO

Page 76: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

68

UPD_BASS

MOVF BASS,W

CALL BIN2BCD

BSF UPD_TEMP,2

BSF UPD_TEMP,3

NEXT_UPDATE_AUDIO

BTFSC FLAG,0

BSF UPD_TEMP,6

BTFSC FLAG,0

BSF UPD_TEMP,7

MOVF UPD_TEMP,W

MOVWF DATA_LED

MOVLW 0X14 ;ADRESSE DE CONTROL REGISTER DS LED DRIVER MOVWF ADR_LED

MOVLW 11011000b ;ADRESSE DE LED DRIVER (7 BIT) + BIT0=0 CALL S_LED

;UPDATE7SEG MOVF LSD,W

CALL LUTAFFD_16

MOVWF DATA_LED

MOVLW 0X16 ;ADRESSE DE CONTROL REGISTER DS LED DRIVER MOVWF ADR_LED

MOVLW 11000110b ;ADRESSE DE LED DRIVER (7 BIT) + BIT0=0 CALL S_LED

MOVF LSD,W

CALL LUTAFFD_17

MOVWF DATA_LED

MOVLW 0X17 ;ADRESSE DE CONTROL REGISTER DS LED DRIVER MOVWF ADR_LED

MOVLW 11000110b ;ADRESSE DE LED DRIVER (7 BIT) + BIT0=0 CALL S_LED

MOVF MSD,W

CALL LUTAFFG_14

MOVWF DATA_LED

MOVLW 0X14 ;ADRESSE DE CONTROL REGISTER DS LED DRIVER MOVWF ADR_LED

MOVLW 11000110b ;ADRESSE DE LED DRIVER (7 BIT) + BIT0=0 CALL S_LED

MOVF MSD,W

CALL LUTAFFG_15

MOVWF DATA_LED

MOVLW 0X15 ;ADRESSE DE CONTROL REGISTER DS LED DRIVER MOVWF ADR_LED

MOVLW 11000110b ;ADRESSE DE LED DRIVER (7 BIT) + BIT0=0 CALL S_LED

;UPDATESRC MOVF SOURCE,F

BTFSC STATUS,2

GOTO UPD_SRC1

DECF SOURCE,W

BTFSC STATUS,2

GOTO UPD_SRC2

MOVLW 2

XORWF SOURCE,W

BTFSC STATUS,2

GOTO UPD_SRC3

MOVLW 00000011b

GOTO NEXT_UPDATESRC

Page 77: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

69

UPD_SRC1

MOVLW 11000000b

GOTO NEXT_UPDATESRC

UPD_SRC2

MOVLW 00110000b

GOTO NEXT_UPDATESRC

UPD_SRC3

MOVLW 00001100b

NEXT_UPDATESRC

MOVWF DATA_LED

MOVLW 0X15 ;ADRESSE DE CONTROL REGISTER DS LED DRIVER MOVWF ADR_LED

MOVLW 11011000b ;ADRESSE DE LED DRIVER (7 BIT) + BIT0=0 CALL S_LED

RETLW 0

;********************************************************** WRITE: ;ÉCRITURE DS REGs INTERNES AU I2CM MOVLW 00000000b

TRIS PORTA

MOVF DATA_TEMPO,W

MOVWF PORTA

MOVF ADR_TEMPO,W

ANDLW 00000111b

MOVWF PORTB

BSF PORTB,3 ;START L'ECRITURE NOP

BCF PORTB,3 ;FIN DE L'ECRITURE RETLW 0 ;REVIENS OÙ ÉTAIT READ: ;LECTURE DES REGs INTERNES AU I2CM MOVLW 11111111b

TRIS PORTA

MOVF ADR_TEMPO,W

ANDLW 00000111b

MOVWF PORTB

BSF PORTB,4 ;START L'ECRITURE NOP

MOVF PORTA,W

MOVWF DATA_TEMPO

BCF PORTB,4

RETLW 0

CTRL_1

MOVLW 00000011b ;DATA À METTRE DS "CTRL_REG" MOVWF DATA_TEMPO ;TRANSFERT DE DATA MOVLW 00000000b ;ADRESSE DE "CTRL_REG" MOVWF ADR_TEMPO ;TRANSFERT DE ADRESSE CALL WRITE

RETLW 0

CLK_ADJ

MOVLW 00000000b ;8-BIT HAUT DE 24d MOVWF DATA_TEMPO

MOVLW 00000011b ;ADRESSE DE CLK_1_REG (3) MOVWF ADR_TEMPO

CALL WRITE

MOVLW 01100011b ;8-BIT BAS DE 24d MOVWF DATA_TEMPO

MOVLW 00000010b ;ADRESSE DE CLK_0_REG (2) MOVWF ADR_TEMPO

CALL WRITE

RETLW 0

Page 78: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

70

READ_CTRL

MOVLW 00000000b ;ADDRESSE POUR LA LECTURE CTRL_REG MOVWF ADR_TEMPO

CALL READ

RETLW 0

; SEND LED DRIVER************************************************************* S_LED

; MET L'ADRESSE DE LA PUCE LED DRIVER DANS WR_DATA_REG MOVWF DATA_TEMPO

MOVLW 00000100b ;ADRESSE DE WR_DATA_REG (4) MOVWF ADR_TEMPO

CALL WRITE

; ACTIVE LA COMMUNICATION I2C MOVLW 01001111b ;01001011 SET "WR" ET "START" MOVWF DATA_TEMPO

MOVLW 00000000b ;ADRESSE DE "CTRL_REG" MOVWF ADR_TEMPO

CALL WRITE

; ATTEND SI LA PUCE ACKNOWLEDGE CALL WAIT_ACK

; DIT AU LED DRIVER LE REGISTRE DANS LEQUEL ON VA ÉCRIRE MOVF ADR_LED,0

MOVWF DATA_TEMPO

MOVLW 00000100b ;ADRESSE DE WR_DATA_REG (4) MOVWF ADR_TEMPO

CALL WRITE

; ENVOIE SUR LE RÉSEAU I2C MOVLW 00001111b ;00001011 SET "WR" *START EST PAS REMI (ESSAI) MOVWF DATA_TEMPO

MOVLW 00000000b ;ADRESSE DE "CTRL_REG" MOVWF ADR_TEMPO

CALL WRITE

; ATTEND SI LA PUCE ACKNOWLEDGE CALL WAIT_ACK

; ENVOIE LA DONNÉE DANS LE REGISTRE DU STA310 ADRESSÉ CI-HAUT MOVF DATA_LED,0

MOVWF DATA_TEMPO

MOVLW 00000100b ;ADRESSE DE WR_DATA_REG (4) MOVWF ADR_TEMPO

CALL WRITE

; ENVOIE SUR LE RÉSEAU I2C MOVLW 00101111b ;00001011 SET "WR" *START EST PAS REMI (ESSAI) MOVWF DATA_TEMPO

MOVLW 00000000b ;ADRESSE DE "CTRL_REG" MOVWF ADR_TEMPO

CALL WRITE

; ATTEND SI LA PUCE ACKNOWLEDGE CALL WAIT_ACK

; RETOUR AU MAIN RETLW 0

; FIN SEND LED DRIVER********************************************************** WAIT_ACK

BTFSS PORTB,5 ;VERIFIE SI ACKNOWLEDGE 1--> ACKNOWLEDGÉ

Page 79: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

71

GOTO WAIT_ACK ; 0--> PAS ACKNOWLEDGÉ MOVLW 00000001b

MOVWF ADR_TEMPO

CALL READ

BTFSC DATA_TEMPO,1

NOP

NOP

RETLW 0

MODE1

MOVLW 00000001b ;DATA À METTRE DS "MODE1" REGISTER MOVWF DATA_LED

MOVLW 00000000b ;ADRESSE DE CONTROL REGISTER DS LED DRIVER MOVWF ADR_LED

RETLW 0

; SEND IO EXPANDER********************************************************** READ_BUTTON

MOVLW 01000001b ;ADRESSE DE I/O EXPANDER ; MET L'ADRESSE DE LA PUCE IO EXPANDER DANS WR_DATA_REG MOVWF DATA_TEMPO

MOVLW 00000100b ;ADRESSE DE WR_DATA_REG (4) MOVWF ADR_TEMPO

CALL WRITE

; ACTIVE LA COMMUNICATION I2C MOVLW 01001111b ;01001011 SET "WR" ET "START" MOVWF DATA_TEMPO

MOVLW 00000000b ;ADRESSE DE "CTRL_REG" MOVWF ADR_TEMPO

CALL WRITE

; ATTEND SI LA PUCE ACKNOWLEDGE CALL WAIT_ACK

; ENVOIE SUR LE RÉSEAU I2C MOVLW 10110111b ; 00110111 SET "RD" ET "STO" MOVWF DATA_TEMPO

MOVLW 00000000b ;ADRESSE DE "CTRL_REG" MOVWF ADR_TEMPO

CALL WRITE

WAIT_BUTTON

MOVLW 00000001b

MOVWF ADR_TEMPO

CALL READ

BTFSC DATA_TEMPO,2

GOTO WAIT_BUTTON

MOVLW 00000101b

MOVWF ADR_TEMPO

CALL READ

MOVF DATA_TEMPO,W

MOVWF S_IO_TEMP

; RETOUR AU MAIN RETLW 0

; FIN SEND LED DRIVER********************************************************** DELAY

MOVLW 255

MOVWF DELTEMP

DELLOOP

NOP

NOP

NOP

Page 80: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

72

NOP

NOP

DECFSZ DELTEMP,F

GOTO DELLOOP

RETLW 0

INITUC:

MOVLW 00100000b

TRIS PORTB

MOVLW 11111111b

TRIS PORTC

CLRW

CLRF TEMPO

CLRF PORTA

CLRF PORTB

BSF PORTB,7

NOP

BCF PORTB,7

MOVLW 0 ;SOURCE À 0 --> SOURCE = 1 MOVWF SOURCE

MOVLW 0 ;AUDIO À 0 --> AFF VOLUME MOVWF AUDIO

MOVLW 12 ;VOL À 5/20 (0 1 2 ... 18 19 20) MOVWF VOL

MOVLW 25 ;BASS À 2/6 (0 1 2 3 4 5 6) MOVWF BASS

MOVLW 16 ;BASS À 2/6 (0 1 2 3 4 5 6) MOVWF TRB

BCF FLAG,0

CLRF UPD_TEMP

CALL CTRL_1

CALL CLK_ADJ

CALL MODE1

MOVLW 11000110b ;ADRESSE DE LED DRIVER (7 BIT) + BIT0=0 CALL S_LED

CALL MODE1

MOVLW 11011000b ;ADRESSE DE LED DRIVER (7 BIT) + BIT0=0 CALL S_LED

MOVLW 16 ;DIMMER DES 7 SEGMENTS MOVWF TEMPO

MOVLW 01111111b

MOVWF DATA_LED

MOVLW 0X01

MOVWF ADR_LED

LOOP

INCF ADR_LED,F

MOVLW 11000110b

CALL S_LED

DECF TEMPO,F

BTFSS STATUS,2

GOTO LOOP

MOVLW 16 ;DIMMER DES LEDS MOVWF TEMPO

MOVLW 00001111b

MOVWF DATA_LED

MOVLW 0X01

MOVWF ADR_LED

LOOP2

INCF ADR_LED,F

MOVLW 11011000b

CALL S_LED

DECF TEMPO,F

BTFSS STATUS,2

GOTO LOOP2

Page 81: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

73

CALL UPDATE_AFF

;********************************************************** ;MAIN ;********************************************************** MAIN:

CALL READ_BUTTON

MOVF S_IO_TEMP,W

MOVWF SOURCE

MOVF PORTC,W

MOVWF FLAG

CALL UPDATE_AFF

GOTO MAIN

.END

Page 82: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

74

Partie 3 – Blocs VHDL -------------------------------------------------------------------------------- -- SubModule Fake_SPI_Transmitter -- Version 1.7 -- - WM8740 -- - LM1972 -- Auteur : Etienne Leclerc -- NB : à utiliser avec le module Clock_Div du même auteur, ou une quelconque -- horloge synchrone de 1M -- NB : Fait avec une FSM de Moore -------------------------------------------------------------------------------- library IEEE;

use IEEE.Std_Logic_1164.all;

entity SPI_Transmitter is port

(

ModeT : in std_logic;

Enable : in std_logic;

Reset : in std_logic;

Ready : out std_logic;

Data_In : in std_logic_vector (7 downto 0);

Data_Line : out std_logic;

Shift_Load : out std_logic;

Clock_1M : in std_logic;

Clock_50 : in std_logic

);

end SPI_Transmitter;

-------------------------------------------------------------------------------- -------------------------------------------------------------------------------- architecture Structure of SPI_Transmitter is

Signal Termine,Termine_t, Enable_t, Ready_t, Enable_Recoit,

Choix_Recoit,Enable_Envoi :std_logic := '0';

Signal Data_t :std_logic_vector (7 downto 0) := "00000000";

Signal Reg_t, Reg :std_logic_vector (15 downto 0) := "0000000000000000";

Signal Data_Line_t :std_logic :='0';

Signal Bit_pos : integer range 0 to 18 := 0;

type state_type is (State1_Res, State1_Wait, State2_Load1, State3_Wait1,

State3_Wait2, State2_Load2, State4_Wait1, State4_Wait2, State5_Envoi);

Signal state, next_state :state_type;

begin

SYNC_PROC: process (Clock_50)

begin

if (rising_edge(CLock_50)) then

if (Reset = '1') then

state <= State1_Res;

else

state <= next_state;

Enable_t <= Enable;

Data_t <= Data_In;

Data_Line <= Data_Line_t;

-- Shift_Load <= load_t; -- assign other outputs to internal signals end if;

end if;

end process;

OUTPUT_DECODE: process (state)

begin

--insert statements to decode internal output signals --below is simple example

Page 83: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

75

if (state = State2_Load1 ) then

Ready <= '0';

Enable_Recoit <= '1';

Enable_Envoi <= '0';

Choix_Recoit <= '0';

elsif (state = State2_Load2 ) then

Ready <= '0';

Enable_Recoit <= '1';

Enable_Envoi <= '0';

Choix_Recoit <= '1';

elsif (state = State5_Envoi ) then

Ready <= '0';

Enable_Recoit <= '0';

Enable_Envoi <= '1';

Choix_Recoit <= '0';

else

Ready <= '1';

Enable_Recoit <= '0';

Enable_Envoi <= '0';

Choix_Recoit <= '0';

end if;

end process;

NEXT_STATE_DECODE: process (state, Reset, Enable_t, Termine, ModeT)

begin

--declare default state for next_state to avoid latches next_state <= state; --default is to stay in current state --insert statements to decode next_state --below is a simple example case (state) is

when State1_Res =>

if (Enable_t = '1') then

next_state <= State1_Wait;

end if;

when State1_Wait =>

if Enable_t = '0' then

next_state <= State2_Load1;

end if;

when State2_Load1 =>

next_state <= State3_Wait1;

when State3_Wait1 =>

if (Enable_t = '1') then

next_state <= State3_Wait2;

end if;

when State3_Wait2 =>

if (Enable_t = '0') then

next_state <= State2_Load2;

end if;

when State2_Load2 =>

next_state <= State4_Wait1;

when State4_Wait1 =>

if (Enable_t = '1') then

next_state <= State4_Wait2;

end if;

when State4_Wait2 =>

if (Enable_t = '0') then

next_state <= State5_Envoi;

end if;

Page 84: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

76

when State5_Envoi =>

if (Termine = '1') then

next_state <= State1_Res;

end if;

when others =>

next_state <= State1_Res;

end case;

end process;

ENVOI: process(ModeT, Clock_1M,Clock_50,Termine_t, Enable_Envoi, Reg)

begin

if (Enable_Envoi = '1') and (ModeT ='0') then

-- if (ModeT = '0') then -- Mode d'envoi pour le WM 8740 if (falling_edge(Clock_1M)) then

case (Bit_pos) is

when 0 => Data_Line_t <= Reg_t(15);

when 1 => Data_Line_t <= Reg_t(14);

when 2 => Data_Line_t <= Reg_t(13);

when 3 => Data_Line_t <= Reg_t(12);

when 4 => Data_Line_t <= Reg_t(11);

when 5 => Data_Line_t <= Reg_t(10);

when 6 => Data_Line_t <= Reg_t(9);

when 7 => Data_Line_t <= Reg_t(8);

when 8 => Data_Line_t <= Reg_t(7);

when 9 => Data_Line_t <= Reg_t(6);

when 10 => Data_Line_t <= Reg_t(5);

when 11 => Data_Line_t <= Reg_t(4);

when 12 => Data_Line_t <= Reg_t(3);

when 13 => Data_Line_t <= Reg_t(2);

when 14 => Data_Line_t <= Reg_t(1);

when 15 => Data_Line_t <= Reg_t(0); Termine <= '1';

when others => NULL;

end case;

Bit_pos <= Bit_pos + 1;

end if;

-- elsif (ModeT ='1') then -- Mode d'envoi pour le LM 1972 elsif (Enable_Envoi = '1') and (ModeT ='1') then

if (falling_edge(Clock_1M)) then

Shift_Load <= '0';

case (Bit_pos) is

when 0 => Data_Line_t <= '0';

when 1 => Data_Line_t <= Reg_t(15);

when 2 => Data_Line_t <= Reg_t(14);

when 3 => Data_Line_t <= Reg_t(13);

when 4 => Data_Line_t <= Reg_t(12);

when 5 => Data_Line_t <= Reg_t(11);

when 6 => Data_Line_t <= Reg_t(10);

when 7 => Data_Line_t <= Reg_t(9);

when 8 => Data_Line_t <= Reg_t(8);

when 9 => Data_Line_t <= Reg_t(7);

when 10 => Data_Line_t <= Reg_t(6);

when 11 => Data_Line_t <= Reg_t(5);

when 12 => Data_Line_t <= Reg_t(4);

when 13 => Data_Line_t <= Reg_t(3);

when 14 => Data_Line_t <= Reg_t(2);

when 15 => Data_Line_t <= Reg_t(1);

when 16 => Data_Line_t <= Reg_t(0);

when 17 => Data_Line_t <= '0';

when 18 => Termine <= '1';

when others => NULL;

end case;

Bit_pos <= Bit_pos + 1;

end if;

else

if (falling_edge(Clock_1M)) then

Page 85: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

77

Termine <= '0';

Data_Line_t <= '0';

Shift_Load <= '1';

Bit_pos <= 0;

Reg_t <= Reg;

end if;

end if;

end process;

RECEPTION: process (Clock_50, Enable_Recoit, Choix_Recoit)

begin

if (rising_edge(Clock_50)) then

if (Enable_Recoit = '1') then

if ( Choix_Recoit = '0') then

Reg (15 downto 8) <= Data_t;

elsif (Choix_Recoit = '1') then

Reg (7 downto 0) <= Data_t;

end if;

else

Reg <= Reg;

end if;

end if;

end process;

end Structure;

--------------------------------------------------------------------------------

Note : petit problème de synchronisation avec Shift-Load

Page 86: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

78

Partie 4 – Diviseur de CLOCK (VHDL) -------------------------------------------------------------------------------- -- SubModule CLK_DIV -- Created 2010-04-13 14:58:20 -------------------------------------------------------------------------------- Library IEEE;

Use IEEE.Std_Logic_1164.all;

use IEEE.std_logic_unsigned.all;

use IEEE.numeric_std.all;

entity CLOCK_DIV is port

(

CLOCK_50 : in std_logic;

CLOCK_RST : in std_logic;

CLOCK_1MHz : out std_logic

);

end CLOCK_DIV;

-------------------------------------------------------------------------------- -------------------------------------------------------------------------------- architecture Structure of CLOCK_DIV is

Signal CLOCK_1MHZ_t : std_logic := '0';

Signal count : integer range 0 to 25 :=0;

begin

CLOCK_1MHZ <= CLOCK_1MHZ_t;

process (CLOCK_50,CLOCK_1MHZ_t,CLOCK_RST)

begin

if (CLOCK_RST='1') then

count <= 0 ;

CLOCK_1MHZ_t <='0';

elsif (rising_edge(CLOCK_50)) then

if count=24 then

count <=0;

CLOCK_1MHZ_t <= not CLOCK_1MHZ_t;

else

count <= count + 1;

end if;

end if;

end process;

end Structure;

--------------------------------------------------------------------------------

Page 87: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

79

Annexe 8 : Schématiques de programmation

La Figure 55 représente les entrées-sorties du microcontrôleur.

Figure 55 - Schématique d'entrées-sorties du microcontrôleur

Page 88: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

80

La Figure 56 représente le microcontrôleur émulé dans le FPGA.

Figure 56 - Schématique du microcontrôleur émulé

Page 89: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

81

La Figure 57 et la Figure 58 représentent des exemples de connexion du microcontrôleur.

Figure 57 - Exemple de connexion du microcontrôleur

Figure 58 - Exemple de connexion du microcontrôleur

Page 90: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

82

Annexe 9 : Fichier de contraintes du Spartant 3E

;............................................................................... ; Constraints File ; ; Family : Xilinx Spartan 3E ; Device : XC3S250E-5VQG100CS1 ; Board : Surface Mounted FPGA on the UQAC's High-Performance Breadboard ; Project : Spartan 3E RevA by Richard Martin ; ; Created 1/17/2010 ; By Etienne Leclerc, University of Quebec at Chicoutimi ; (c) 2010, no constaint for using this file, please keep header ; Note : Modified to include pullups for I2C communication and two different ; plug-ins for soft-JTAG ; Send any error to : [email protected] ;............................................................................... Record=FileHeader | Id=DXP Constraints v1.0

;............................................................................... ; Target FPGA ;............................................................................... Record=Constraint | TargetKind=Part | TargetId=XC3S250E-5VQG100CS1

;............................................................................... ; ; ; ||=======================================================|| ; || GPIO:0_ 1_ 2_ 3_ || ; || _____ _____ || ; || |0 0| |0 0| || ; || |1 1| |1 1| || ; || |2 2| __________________ |2 2| || ; || |3 3| | | |3 3| || ; || |4 4| | | |4 4| || ; || |5 5| | | |5 5| || ; || |6 6| | FPGA | |J 6| || ; || |7 7| | | |T 7| || ; || |8 8| | | |A 8| || ; || |9 9| |__________________| |G 9| || ; || |10 10| |6 10|*I2C || ; || |11 11| |7 11|*I2C || ; || | | | | || ; || | | JTAG Port PROM | | || ; || | | _______________ __ | | || ; || | | | Hard | Soft | | | | | || ; || | GND | |______|_______| |__| | GND | || ; || |_____| |_____| || ; || Bank 0&3 Bank 1&2 || ; || || ; ||=======================================================|| ; ;............................................................................... ; ;............................................................................... ; Clock and Reset ;............................................................................... Record=Constraint | TargetKind=Port | TargetId=CLOCK_100 | FPGA_PINNUM=P38 |

FPGA_CLOCK=TRUE | FPGA_CLOCK_DUTY_CYCLE=50 | FPGA_CLOCK_FREQUENCY=100MHz

;Record=Constraint | TargetKind=Port | TargetId=Ext_Reset | FPGA_PINNUM=P89 ;............................................................................... ; JTAG Software port (used for Nexus_JTAG_Port generic Component) ;............................................................................... ;Record=Constraint | TargetKind=Port | TargetId=S_TDI | FPGA_PINNUM=P13 ; Blanc

Page 91: Rapport final Version 1 - UQAC · RAPPORT FINAL PROJET DE SYNTHÈSE EN INGÉNIERIE (6GIN555) Département des Sciences Appliquées Module d’ingénierie Génie électrique Réseau

Université du Québec à Chicoutimi Départements des Sciences Appliquées Module d’Ingénierie

6GIN555 Projet de synthèse en

ingénierie Rapport final

Etienne Leclerc Jean-Benoit Boudreault

83

;Record=Constraint | TargetKind=Port | TargetId=S_TDO | FPGA_PINNUM=P24 ; Mauve ;Record=Constraint | TargetKind=Port | TargetId=S_TCK | FPGA_PINNUM=P88 ; Jaune ;Record=Constraint | TargetKind=Port | TargetId=S_TMS | FPGA_PINNUM=P69 ; Bleu Record=Constraint | TargetKind=Port | TargetId=S_TDI | FPGA_PINNUM=P95 ; Blanc Record=Constraint | TargetKind=Port | TargetId=S_TDO | FPGA_PINNUM=P3 ; Mauve Record=Constraint | TargetKind=Port | TargetId=S_TCK | FPGA_PINNUM=P5 ; Jaune Record=Constraint | TargetKind=Port | TargetId=S_TMS | FPGA_PINNUM=P10 ; Bleu ;............................................................................... ; General purpose IO, connectors 0,1 2 and 3 ;............................................................................... Record=Constraint | TargetKind=Port | TargetId=GPIO0_[11..0] |

FPGA_PINNUM=P71,P68,P66,P63,P61,P58,P54,P48,P41,P36,P33,P27

Record=Constraint | TargetKind=Port | TargetId=GPIO1_[11..0] |

FPGA_PINNUM=P70,P67,P65,P62,P60,P57,P53,P47,P40,P35,P32,P26

Record=Constraint | TargetKind=Port | TargetId=GPIO2_[7..0] |

FPGA_PINNUM=P79,P84,P86,P91,P12,P16,P18,P23

Record=Constraint | TargetKind=Port | TargetId=GPIO3_[9..0] |

FPGA_PINNUM=P85,P90,P94,P2,P4,P9,P11,P15,P17,P22

;............................................................................... ; I2C PINS, took on GPIO3, GPIO3_10 and GPIO3_11 ;............................................................................... Record=Constraint | TargetKind=Port | TargetId=I2C_DATA | FPGA_PINNUM=P83 |

FPGA_PULLUP=TRUE ;| FPGA_IOSTANDARD=LVCMOS33 | FPGA_DRIVE=24mA Record=Constraint | TargetKind=Port | TargetId=I2C_CLK | FPGA_PINNUM=P78 |

FPGA_PULLUP=TRUE ;| FPGA_IOSTANDARD=LVCMOS33 | FPGA_DRIVE=24mA