CHAPITRE 1
cD~finitions et rappe(s
1.1. Introduction :
Dans ce chapitre, nous donnerons quelques définitions
et rappels qui sont en rapport avec le problème traité. Nous
espérons qu'ils aideront le lecteur à mieux cerner le contenu de
ce mémoire et la problématique, définie dans ce même
chapitre, qui est posée.
1.2. Définitions et rappels :
Par le passé, la conception d'un circuit
intégré se faisait à partir du tout début (?from
scratch?). Cette méthode de conception appelée dans la
terminologie anglosaxonne ?full custom? a pour avantage de produire un circuit
sur mesure, c'est-à-dire conformément à la demande du
client. Son inconvénient majeur et par ailleurs évident est le
temps de conception.
On opta alors pour une autre méthode appelée
?Gate Arrays? ou réseaux prédiffusés qui consiste à
concevoir un circuit à partir d'un circuit constitué de
composants assurant plusieurs fonctions. Ce circuit est déjà
fabriqué et ne reste que la phase de métallisation qui consiste
à relier les blocs permettant de réaliser le circuit
demandé. Cette méthode est relativement rapide mais l'un de ses
inconvénients est que des blocs peuvent exister dans le circuit sans
pour autant être utilisés. Ceci a pour conséquence
d'augmenter inutilement la surface du circuit et d'induire un coût de
silicium (assez cher) supplémentaire.
Les années passant, on conceva plusieurs circuits
(additionneurs, multiplieurs, comparateurs, ...) et l'idée vint de les
utiliser comme des briques de base pour constituer un circuit plus complexe. On
constitua alors des bibliothèques de cellules (?standard cells?) servant
à cet effet. Ainsi, on gagna l'avantage des réseaux
prédiffusés (?gate arrays?) en matière de rapidité
de conception, tout en évitant de gaspiller inutilement du silicium.
Rappelons aussi que pour éviter de constater
l'existence d'erreurs à des bas niveaux de conception et de refaire la
conception (ce qui est une perte de temps et d'argent), on bascula de la
méthodologie de conception ?bottom-up? à la méthodologie
?top-down?. Avec cette dernière, la conception démarre à
partir du niveau de conception le plus abstrait (le moins
détaillé) et le passage d'un niveau à
celui qui est immédiatement inférieur ne se fait
qu'après validation. Ainsi, on augmente la probabilité
d'inexistence d'erreurs aux niveaux d'abstraction les plus bas, ceux où
l'erreur est très coûteuse.
Les méthodologies et méthodes que nous venons de
décrire succinctement concernent les ASICs (?Applied Specific Integrated
Circuits?), ou circuits intégrés à applications
spécifiques. Notons que les différentes phases de conception d'un
ASIC sont menées dans un laboratoire, mais sa fabrication est
exclusivement faite dans une fonderie (appelée aussi salle blanche) qui
est une centrale technologique très coûteuse où sont
menées les différentes phases de fabrication du circuit. Il est
possible d'éviter le recours à une fonderie en utilisant des
circuits déjà fabriqués. Cependant, à la
différence des ?gate arrays?, ceux-ci sont programmables. Il suffit
alors de mener les différentes étapes de conception, puis
à la fin, de générer un code qui va programmer le FPGA.
L'avantage est donc de réaliser toutes les étapes, depuis la
conception jusqu'à la réalisation du circuit, au laboratoire
seulement. L'autre avantage est qu'un FPGA programmé pour une
application donnée peut servir pour une autre application, après
sa reprogrammation. Il existe actuellement plusieurs familles de FPGAs dont le
choix se fait en fonction de la complexité de l'application.
Néanmoins, les FPGAs présentent plusieurs inconvénients
par rapport aux ASICs : moins de performance, plus volumineux et ne peuvent
donc être utilisés pour certaines applications (montre
électronique, carte à puce, puce d'un téléphone,
...). Enfin, leur utilisation à une très grande échelle de
production serait plus coûteuse. On n'utilise donc les FPGAs que pour
réaliser des prototypes.
|