Conception d`un convoyeur de courant CMOS à l

publicité
Conception d’un convoyeur de courant CMOS à l’aide de
l’algorithme NSGA-II
Abbas El Dor1 , Patrick Siarry2
1
Ecole des Mines de Nantes, TASC INRIA (CNRS UMR 6241),
4 rue Alfred Kastler, 44300 Nantes, FRANCE
[email protected]
2
Université de Paris-Est Créteil
Laboratoire Images, Signaux et Systèmes Intelligents, LiSSi (E.A. 3956)
122 rue Paul Armangot, 94400 Vitry-sur-Seine, FRANCE
[email protected]
Mots-clés : optimisation, algorithme génétique, multiobjectif, convoyeur de courant, CMOS.
1
Introduction
Cet article porte sur une contribution relative à l’optimisation du dimensionnement d’un
circuit analogique, plus précisément à l’optimisation des caractéristiques importantes d’un
convoyeur de courant de seconde génération positif à boucle translinéaire CMOS. Le but est de
trouver les dimensions des transistors qui permettent au circuit d’avoir des performances optimales, suivant un critère donné. En d’autres termes, nous cherchons à déterminer les longueurs
et les largeurs des transistors qui permettent au circuit d’avoir des performances optimales,
suivant un critère donné. Ce problème peut être considéré comme un problème d’optimisation
multi-critères à variables continues soumis à des contraintes. Nous utilisons un algorithme génétique pour générer le front de Pareto en minimisant la résistance parasite RX et maximisant
la fréquence de coupure en courant fci . Des simulations effectuées sur SPICE 1 mettent en relief
les résultats atteints.
2
Convoyeur de courant de seconde génération
Les convoyeurs de courant (CCs, Current Conveyors) ont été introduits en 1970 [1]. Ces
convoyeurs constituent à ce jour l’élément le plus courant des circuits analogiques en mode
courant (CMCs, Current Mode Circuits). En effet, un convoyeur de courant (CC) est un dispositif électronique composé de trois ports actifs (X, Y et Z). Le convoyeur de courant de seconde
génération est le convoyeur le plus souvent utilisé, tant pour ses bonnes performances, que pour
l’intérêt apporté par l’utilisation d’une boucle translinéaire. La figure 1-(a) montre l’exemple
d’un convoyeur de courant de seconde génération positif à boucle translinéaire CMOS (CCII+).
La Figure 1-(b) montre les différents composants parasites d’un convoyeur de courant qui sont
souvent modélisés par trois impédances ZX , ZY et ZZ et reliés aux ports correspondants. Ces
composants affectent de manière significative le comportement du circuit. Il a été prouvé que,
parmi ces éléments, ZX est le composant parasite dont les effets sont les plus importants sur le
comportement du convoyeur de courant. Plus précisément, c’est la résistance parasite RX du
port X qui est la plus importante et qui affecte les performances de la façon la plus significative
du CC.
1. SPICE (Simulation Program with Integrated Circuit Emphasis) est un logiciel de simulation généraliste
de circuits électroniques analogiques.
Ix
Lx
Rx
CC
Iy
Vy
Y
Vz
Zi
Iz
Yi
Cy
Cz
Ry
Zy
For our system we could achieve satisfactory performance
with the first choice of parameters a ¼ b ¼1. The suitable
expression of fci is obtained for the system by employing a
symbolic analyzer [16] and the expression contains large number
of terms. Because of the presence of these large number of terms,
the explicit expression of fci is not given here.
Rz
Zz
real CC
Fig. 2. Equivalent model of a CC.
VDD
M10
M9
M8
M1
M7
M2
Y
X
Z
I0
M3
M13
M12
M4
M11
M5
M6
VSS
Fig. 3. A conventional translinear loop based CMOS CCII+ [6].
(a)
3. The bacterial foraging optimization (BFO) algorithm
According to foraging theory, the animals search for and obtain
nutrients in such a fashion that
Zx the energy intake per unit time is
Cx
maximized, so that the animals get enough nutrient sources to
surviveX
and, at the same time, they can have spare time for other
Vx
activities [9]. Hence, it is well-known
those
Xi thatideal
CC animals which
Rx get eliminated
Lx capability,
have poor Ixforaging
and thoseZanimals
CC
i
idéal
which have
Iy strong foraging capability, have their genes propaY
V
y
i
gated for further reproduction procedure.
An analog of this
Y problem has been formulated as an optimization
foraging
Cy
Cz a
problem by employing optimal foraging theory, to propose
Ry
new evolutionary optimization algorithm [9,17,18]. The idea is to
biomimic the foraging
behavior of a common
type of bacteria,
CC réel
Zy
real
CC of a E.ZzColi
E. coli, popularly known as E. Coli [18]. The
movement
bacterium in a three-dimensional space is usually characterized
by alternate phases of running and tumbling.
(b) The basic difference
Z
Vz
Iz
Rz
FIG. 1 – (a) Convoyeur de courant de seconde génération positif (CCII+), et (b) Schéma équivalent
avec composants parasites.
L’utilisation de ce type de circuits nécessite leur optimisation pour pouvoir tirer un maximum
de profit de leurs performances, en particulier maximiser la fréquence de coupure en courant
fci et minimiser la résistance parasite RX .
3
Présentation de l’algorithme génétique
NSGA (Non-dominated Sorting Genetic Algorithm) est un algorithme génétique qui génère
le front de Pareto d’un problème d’optimisation multiobjectif. Il s’agit d’un algorithme très
efficace mais généralement critiqué pour sa complexité de calcul, le manque d’élitisme et le choix
de la valeur optimale du paramètre de la fonction de partage des performances (sharing : qui
a été utilisé pour maintenir la diversité).
Une version modifiée NSGA-II a été développée [2], cette modification présente une meilleure
procédure de tri de la population en la répartissant sur plusieurs fronts. Ainsi, dans cette
version, l’élitisme a été intégré et aucun paramètre de partage ne doit être choisi à priori. Dans
cet algorithme, les étapes principales sont : la création d’une population initiale, la sélection
de parents, les opérations de croisement et de mutation pour créer des enfants, et le choix des
meilleures solutions selon la dominance de Pareto. Toutes ces étapes sont répétées à chaque
génération. Il existe 4 paramètres à régler pour NSGA-II : la taille de la population, le nombre
de générations, la probabilité de croisement et la probabilité de mutation. Ces paramètres
déterminent la convergence de l’algorithme et aident à obtenir des résultats diversifiés.
4
Travaux en cours
Des résultats encourageants ont été obtenus en configurant le problème comme un problème
bi-objectif à minimiser. Notre travail continue en appliquant l’algorithme génétique NSGAII sur ce problème, dans son cas standard multiobjectif, afin de concevoir un convoyeur de
courant (CCII+) de manière optimale pour donner de meilleures performances. Cela revient
alors à trouver les positions de l’espace de recherche qui correspondent au front de Pareto.
Références
[1] A. Sedra and K. Smith. A second generation current conveyor and its applications. In IEEE
Transactions on Circuits Theory, Vol. 17, pp. 132-134, 1970.
[2] K. Deb, A. Pratap, S. Agarwal and T. Meyarivan. A Fast Elitist Multi-objective Genetic
Algorithm : NSGA-II. In IEEE Transactions on Evolutionary Computation, Vol. 6, N˚2,
pp. 182-197, 2002.
Téléchargement