Conception logique et physique des systèmes monopuces (Traité EGEM Série électronique et micro-électronique)
248 pages
Français

Découvre YouScribe en t'inscrivant gratuitement

Je m'inscris

Conception logique et physique des systèmes monopuces (Traité EGEM Série électronique et micro-électronique) , livre ebook

Découvre YouScribe en t'inscrivant gratuitement

Je m'inscris
Obtenez un accès à la bibliothèque pour le consulter en ligne
En savoir plus
248 pages
Français
Obtenez un accès à la bibliothèque pour le consulter en ligne
En savoir plus

Description

La conjonction de l'évolution des technologies de fabrication des circuits intégrés et de la nature du marché des systèmes électroniques fait que l'on est amené à concevoir des circuits de plus en plus complexes (plusieurs millions) de transistors en un temps de plus en plus court (quelques mois). Ce phénomène a entraîné une métamorphose du processus de conception. Si le principe de la conception reste le même (il s'agit de générer une réalisation physique sous forme d'une puce en partant d'une spécification système), les outils mis en œuvre et l'organisation du travail durant le processus de conception ont, en revanche, beaucoup évolué. Ainsi, on est passé de la conception où l'on dessinait les masques du circuit sur du papier spécial, à une conception quasi automatique qui part d'une description du comportement du circuit sous forme d'un programme dans un langage de haut niveau. Cet ouvrage a pour but de décrire les méthodes et les outils d'aide à la conception logique et physique des systèmes électroniques digitaux intégrés. Le chapitre 2 présente les fondements de la synthèse de circuits logiques à partir de modèles écrits dans des langages de description de matériel (VHDL / Verilog). Le lecteur aura ainsi les connaissances nécessaires pour devenir un utilisateur averti des outils de synthèse logique et un concepteur-programmeur. Le chapitre suivant est consacré à la conception physique, l'étape ultime dans une chaîne de conception de circuits intégrés, celle de l'implémentation en vue de l'obtention des dessins de masques servant à la fabrication du circuit intégré. Ses principales méthodologies (placement et routage automatiques, synthèse automatique d'arbre d'horloge, etc.) seront donc décrites ainsi que les différentes étapes de la vérification physique (extraction des composants parasites, etc.). L'accroissement en complexité des circuits intégrés et la nécessité croissante de réduire les temps de mise sur le marché exigent la mise en place d'une stratégie de test de la qualité du produit fini. Le chapitre 4 traite du test des circuits en décrivant les concepts et les outils nécessaires à la mise en place d'une telle stratégie. Le concept de communication asynchrone, très en vogue en ce moment, repose sur le concept de découplage des différents modules constituant un système. Ce principe, qui est à la base de toutes les approches modulaires développées pour maîtriser la complexité, peut amener des solutions plus efficaces en termes de performance et de consommation. Les concepts qui régissent le fonctionnement et l'implémentation des circuits asynchrones sont présentés dans le chapitre 5 ainsi que les formalismes et les méthodes utilisés pour la synthèse de circuits asynchrones. En conclusion, le lecteur trouvera une liste des principaux outils de CAO de circuits et systèmes existants. Le chapitre 6 passe en revue quelques outils du commerce s'intégrant dans le flot de conception des circuits et systèmes, en mettant l'accent en particulier sur les outils et les nouvelles méthodes de conception à base d'IP (composants virtuels ou «propriété intellectuelle».


De l'idée au produit -Ahmed-Amine Jerraya (Laboratoire TIMA, Grenoble). La conception logique -Marc Renaudin (Laboratoire TIMA, Grenoble). La conception physique : placement, routage et vérification du layout -Kholdoun Torki (Laboratoire TIMA, Grenoble). Le test -Christian Landrault (LIRMM, Montpellier). La conception de systèmes asynchrones -Marc Renaudin (Laboratoire TIMA, Grenoble). Les outils de CAO de circuits et de systèmes -Éric Martin (Laboratoire LESTER, Lorient). Bibliographies/Index.

Sujets

Informations

Publié par
Date de parution 28 mai 2002
Nombre de lectures 56
EAN13 9782746227842
Licence : Tous droits réservés
Langue Français

Informations légales : prix de location à la page 0,4300€. Cette information est donnée uniquement à titre indicatif conformément à la législation en vigueur.

Extrait

1.1. Introduction
Chapitre 1
De l’idée au produit
La conjonction de l’évolution des technologies de fabrication des circuits intégrés et de la nature du marché des systèmes électroniques fait que l’on est amené à concevoir des circuits de plus en plus complexes (plusieurs millions) de transistors en un temps de plus en plus court (quelques mois). Ce phénomène a entraîné une métamorphose du processus de conception allant de l’idée au produit.
Durant les dernières décennies, on est passé de la conception de circuits composés de quelques milliers de portes à des systèmes structurés et intégrés comme un réseau sur une même puce. Les puces modernes peuvent contenir plusieurs processeurs, de la mémoire et un réseau de communication complexe. Le principe de la conception reste le même ; il s’agit de générer une réalisation physique sous forme d’une puce en partant d’une spécification système. Par contre, les outils mis en œuvre et l’organisation du travail durant le processus de conception ont beaucoup évolué. Partant d’une conception complètement manuelle où l’on dessinait les masques du circuit à réaliser sur du papier spécial, on est passé à une conception quasi automatique en partant d’une description du comportement du circuit sous 1 forme d’un programme décrit dans un langage de haut niveau.
Cet ouvrage fait partie d’une trilogie ayant pour but de décrire les méthodes et les outils d’aide à la conception de systèmes électroniques digitaux intégrés. Il s’agit de couvrir :
Chapitre rédigé par Ahmed-Amine JERRAYA.
16Conception logique des systèmes monopuces
1) les méthodologies pour la conception de haut niveau des systèmes monopuces, 2) les méthodologies de conception logique et physique des systèmes monopuces, 3) les méthodologies de conception des logiciels et systèmes d’exploitation embarqués pour les systèmes monopuces.
Ces trois ouvrages couvriront les méthodes et flots globaux permettant de prendre en compte le cycle de conception complet allant de l’idée au produit.
Le reste de ce chapitre introduit les étapes du processus de conception et donne un aperçu de l’ensemble du présent ouvrage, qui est essentiellement consacré à la conception de haut niveau.
1.2. Les systèmes sur puces
Les prévisions stratégiques d’ITRS annoncent que 70 % des ASIC comporteront au moins un CPU embarqué à partir de l’année 2005. Ainsi, la plupart des ASIC seront des systèmes monopuces (SoC pourSystem On Chip). Cette tendance semble non seulement se confirmer mais se renforcer : les systèmes monopuces contiendront des réseaux formés de plusieurs processeurs dans le cas d’applications telles que les terminaux mobiles, lesSet top box, les processeurs de jeux et les processeurs de réseau. De plus, ces puces contiendront des éléments non digitaux (par exemple analogique ou RF) et des mécanismes de communication très sophistiqués. Etant donné que tous ces systèmes correspondent à des marchés de masse, ils ont tous été (ou seront) intégrés sur une seule puce afin de réduire les coûts de production. Il est prévu que ces systèmes soient les principaux vecteurs d’orientation de toute l’industrie des semi-conducteurs. Il est donc crucial de maîtriser la conception de tels systèmes tout en respectant les contraintes de mise sur le marché et les objectifs de qualité.
Tous les acteurs dans le domaine des semi-conducteurs travaillent déjà sur des produits intégrant des processeurs multiples (CPU, DSP, ASIC, IP, etc.) et des réseaux de communication complexes (bus hiérarchiques, bus avec protocole TDMA, connexion point à point, structure en anneau et même des réseaux de communication par paquets !) dans des systèmes monopuces. Certains commencent même à parler de réseaux de composants monopuces (network on chip). Il s’agit d’assembler des composants standard pour en faire un système comme on le fait pour les cartes. Ainsi, le problème n’est plus tant de concevoir des composants efficaces mais surtout d’obtenir une architecture qui respecte les contraintes de performance et de coût. Pour les composants, le problème devient plutôt de s’assurer de leur validité avant de les utiliser. Cette évolution fait que le goulet d’étranglement
De l’idée au produit 17
du processus de conception devient maintenant la réalisation du réseau de communication des composants embarqués sur la puce et la validation globale de l’ensemble du système avant sa réalisation. Ainsi, nous sommes déjà passés de l’ASIC au SoC et nous sommes en train de passer au réseau sur puce.
La conception de ces nouveaux systèmes à l’aide de méthodes classiques conduit à des coûts et des délais de réalisation inacceptables. En fait, la conception de ces systèmes induit plusieurs points de cassures qui rendent difficile la mise en échelle des méthodes de conception existantes. Les principaux défis sont : 1) la conception des systèmes multiprocesseurs monopuces entraînera inévitablement la réutilisation de composants existants qui n’ont pas été conçus spécialement pour être assemblés sur la même puce. Il sera donc nécessaire d’utiliser des méthodes d’assemblage de composants hétérogènes ; 2) le concepteur d’un système contenant des processeurs programmables doit obligatoirement fournir, en plus du matériel, une couche logicielle permettant la programmation de haut niveau du circuit. Il sera donc nécessaire d’aider les concepteurs de circuits à concevoir les couches logicielles ; 3) l’assemblage de composants hétérogènes sur une même puce pour concevoir des architectures dédiées à des applications particulières peut nécessiter des schémas de communication très sophistiqués mettant en œuvre des parties matérielles, des parties logicielles et des parties non numériques telles que les interfaces de composants optiques ou micromécaniques. La conception de ces interfaces hétérogènes sera vraisemblablement le principal goulet d’étranglement du processus de conception des systèmes multiprocesseurs monopuces ; 4) la complexité des systèmes est telle qu’il devient quasi impossible de les spécifier/valider manuellement à des niveaux bas tels que le RTL où il faut donner/valider des détails au niveau du cycle d’horloge. Des méthodes de conception/validation basées sur des concepts de plus haut niveau sont donc nécessaires. Comme pour le logiciel, des outils de synthèse de haut niveau seront nécessaires pour le matériel. La vérification des composants synthétisés sera obligatoire afin de pouvoir en assurer la qualité.
La grande difficulté sera de maîtriser la complexité lors de la conception de ces réseaux monopuces. Il s’agira de réussir la conception rapide de systèmes monopuces multiprocesseurs et ce sous de fortes contraintes de qualité et de temps de conception. La figure 1.1 montre l’architecture d’un système monopuce. Cette architecture est structurée en couches en vue de maîtriser la complexité. Lapartie matériellecouches :est composée de deux – la couche basse contient les principaux composants utilisés par le système. Il s’agit de composants standard tels que des processeurs (DSP, MCU, IP, mémoires) ;
18Conception logique des systèmes monopuces
– la couche de communication matérielle embarquée sur la puce. Il s’agit des dispositifs nécessaires à l’interaction entre les composants. Cette couche peut contenir un réseau de communication complexe allant du simple pont (bridge) entre deux processeurs au réseau de communication de paquets. Bien que le réseau de communication lui-même soit composé d’éléments standard, il est souvent nécessaire d’ajouter des couches d’adaptation entre le réseau de communication et les composants de la première couche.
4JL.L0O 85F.L1L6:0 j O,55OL.,9L43
!
$07;L.08 /: 8\89G20 /¶0[5O4L9,9L43 L39077:59L438 J089L43 /08 70884:7.08 0397F088479L08
!LO4908
425742L8#2F8,09,F7:L0/O0O4.4JL2.L02O:3L.,9L43 2,9F7L0O 02-,76:F
!& ! 2F24L708 '$! & $ %$
Figure 1.1.Architecture logicielle/matérielle d’un système monopuce
O4JL.L0O
2,9F7L0O
Lelogiciel embarquéest aussi découpé en couches : – la couche de gestion de ressources permet d’adapter l’application à l’architecture. Cette couche fournit les fonctions utilitaires nécessaires à l’application qu’il est nécessaire de personnaliser pour l’architecture et ce, pour des raisons d’efficacité. Cette couche permet d’isoler l’application de l’architecture. Cette couche est souvent appelée « système d’exploitation » (OS). Les applications embarquées utilisent souvent des structures de données particulières avec des accès non standard (manipulation de champs de bits ou parcours rapides de tableaux) qui ne sont généralement pas fournis par les OS standard. D’autre part, les OS standard sont généralement trop volumineux pour être embarqués. Il sera souvent nécessaire de réaliser des OS spécifiques dédiés aux applications. Le lien avec le matériel se
De l’idée au produit 19
fait via les pilotes d’entrées/sorties et d’autres contrôleurs de bas niveau, qui permettent de contrôler les composants de l’architecture. Le code correspondant à ces pilotes est intimement lié au matériel. Ces pilotes permettent d’isoler le matériel du reste du logiciel ; – le code de l’application.
Cette représentation en couches des systèmes monopuces permet de séparer la conception des composants logiciels (application) et matériels (composants existants ou dédiés) des couches de communication. Elle permet aussi de définir les différents métiers de conception et la distribution du travail entre les différentes équipes.
La plupart des méthodes de conception actuelles essayent de copier le flot de conception des cartes. Ce dernier sépare la conception en quatre métiers : l’architecture système, la conception des composants matériels, la conception des composants logiciels et l’intégration ou la conception système. Les trois derniers métiers sont montrés dans la figure 1.2a. Dans les schémas traditionnels, le travail de l’architecte consistait à tailler des composants matériels sur mesure afin de prévoir les interconnexions de manière efficace et d’obtenir les meilleures performances. Ainsi tout le matériel est taillé sur mesure, les composants et le réseau de communication. Le logiciel étant réalisé à part, le concepteur d’architecture doit juste fournir une couche mince de logiciel permettant d’accéder aux ressources matérielles. Le fait que la grande partie des couches de communication est réalisée par des équipes séparées (logiciel, matériel) peut entraîner des surcoûts dus aux précautions et/ou aux sous-utilisations. La vérification des différentes parties est aussi réalisée de manière séparée et chaque équipe utilise des programmes de test spécifiques.
Ce schéma n’est plus applicable à partir d’un certain degré de complexité. Ainsi la conception d’architecture consistera surtout à assembler des composants existants en vue de respecter des contraintes de performances et de coûts au niveau du système global et non plus au niveau du seul composant. Ainsi, il devient crucial de combiner la conception des couches de communication logicielles et matérielles. Cette évolution permettra la séparation totale entre la conception des couches de communication et les composants matériels et logiciels. Une telle séparation est nécessaire pour introduire un peu de flexibilité et de modularité dans l’architecture en permettant de changer plus facilement les modules de base. Ainsi, l’abstraction des interfaces de communication devient le pivot de la conception des systèmes monopuces.
  • Univers Univers
  • Ebooks Ebooks
  • Livres audio Livres audio
  • Presse Presse
  • Podcasts Podcasts
  • BD BD
  • Documents Documents