INF3500 – Hiver 2017 Exercices #1

publicité
INF3500 – Hiver 2017
Exercices #1 – Introduction
0101 Vue d’ensemble
1. Nommez les quatre niveaux d’abstraction des systèmes numériques. Identifiez, dans votre programme
d’études de baccalauréat, les cours qui se rapportent à chacun des quatre niveaux.
2. Énumérer et décrire les quatre considérations principales pour l’implémentation d’un système numérique. Expliquez l’effet de doubler la précision des calculs, par exemple en les faisant passer de 16 à 32
bits, sur les trois autres considérations d’implémentation d’un système numérique.
3. Considérez le problème de la conception du système numérique contrôlant un téléviseur à haute définition. Énumérez les entrées et les sorties. Proposez une décomposition de ce système en modules et faites
un partitionnement initial logiciel-matériel. Pour chaque module, justifiez brièvement votre choix entre
une implémentation en logiciel (L) et une implémentation en matériel (M).
0102 Options d’implémentation
4. Vous travaillez pour la compagnie Chips’r’Us sur un système embarqué d’analyse automatisée
d’images provenant d’une caméra montée dans un cockpit d’un A-320. Votre patron vous demande de
l’aider à déterminer s’il faut viser une implémentation en logique fixe ou sur FPGA. Vous estimez le
temps de conception à 6 mois pour 3 ingénieurs, à $100K/an. Les licences d’outils coûtent $5K/an/poste.
Les frais de la fonderie s’élèvent à $275K pour les 50 premières puces, puis $100/puce pour les 250 suivantes, puis $10/puce pour les 500 suivantes, puis $1/puce ensuite. La fonderie demande un délai de 10
semaines avant la livraison. Le FPGA le moins cher qui accommoderait le design coûte $750 et peut être
livré dans 4 semaines. Les frais de production dans les deux cas sont de $20/puce, et les frais de distribution sont estimés à $25/puce. Que dites-vous à votre patron?
5. On est en juillet 2017. Vous travaillez chez FPGA Solutions Consultants Inc. Tous les employés, sauf
vous et la présidente, sont partis en vacances. La présidente vient de recevoir un appel d’un client qui veut
implémenter un nouveau produit : un système de vision artificielle pour une voiture autonome. Un prototype est fonctionnel, et le client veut maintenant procéder à un premier déploiement dans 500 voitures en
pré-production.
Le système doit traiter des données provenant de plusieurs caméras, pour un débit total de 750 × 106 résultats par seconde. On peut l’implémenter avec un processeur unique qui produit un résultat par cycle
d’horloge. Ce processeur occupe l’équivalent de 3500 blocs logiques, et sa fréquence maximale dépend
de la technologie utilisée. Il est possible d’instancier plusieurs processeurs en parallèle pour multiplier le
débit. Cependant, il est essentiel que tout le système puisse être implémenté sur une seule puce.
La présidente vous demande de l’aider à choisir parmi trois technologies dont les données de comparaison
sont présentées au tableau suivant. Laquelle des trois technologies privilégiez-vous? Énoncez clairement
toutes les suppositions raisonnables que vous faites et montrez tous vos calculs.
Technologie
A. Logique fixe
B. FPGA moyenne
gamme
C. FPGA bas de gamme
Polytechnique Montréal
$875 000
$24
Fréquence
d’horloge maximale
2.00 GHz
$12 000
$1 350
0.50 GHz
7 500
$12 000
$49
0.25 GHz
1 750
Frais fixes de
développement
Coût par puce
page 1/7
Ressources de
calcul
(blocs logiques)
Max. 25 000
Département de génie informatique et génie logiciel
INF 3500 : Conception et réalisation de systèmes numériques
0103 Flot de conception
6. Réponses brèves :
a. Quelles contraintes peuvent guider l’outil de synthèse dans son travail?
b. Quelles métriques peuvent être obtenues concernant un design après l’étape d’implémentation?
c. Quelle est la différence entre la simulation d’un module avant la synthèse, après la synthèse et
après l’implémentation?
0104 Introduction à VHDL
7. Donnez les neuf valeurs du type std_logic de VHDL ainsi qu’un schéma d’un circuit électrique
montrant leur signification physique.
8. Donnez le code VHDL synthétisable pour un circuit numérique qui calcule le carré d’un nombre entier positif A exprimé sur 4 bits. La sortie S = A2 doit être un nombre entier positif exprimé sur 8 bits.
Polytechnique Montréal
page 2/7
Département de génie informatique et génie logiciel
Téléchargement