next up previous
Next: References Up: Exemples Previous: Exemple 1 : STD

Exemple 2: PLA

Le circuit à synthétiser est num6add.raw.pla, un additionneur 6 bits (6+6 bits vers 6 bits) avec un codage spécial des opérandes []. Le circuit est décrit en logique 2-niveaux au format PLA. Cela correspond à une équation logique unique, très complexe (le fichier fait 82 Ko), par sortie du circuit. Là encore, la cible technologique est la série FPGA  xc4000. 8 processeurs sont disponibles pour la synthèse.

L'application de la méthode de synthèse de l'exemple STD ne donnera pas de bons résultats sur ce circuit pour deux raisons :

La représentation du circuit va donc être décomposée (éclatée) avant le partitionnement pour la synthèse en parallèle, afin de permettre la répartition des équations sur les 8 processeurs disponibles. De plus, en employant un nombre de parties important, on va limiter la complexité de chaque partie dans un premier temps. Ensuite, pour obtenir des résultats acceptables en terme de qualité, des parties de taille plus importante seront utilisées dans une deuxième passe d'optimisation.

#########################
# Pscript file PLA/8P : #
#########################

# Demarrage de la machine virtuelle
pvm mach1 mach2 mach3 mach4 mach5 machine6 machine7 machine8

# Repartition des equations dans un sous-circuit chacune, puis
# eclatement de la repr\'esentation des equations en sommets de 
# petite taille a l'aide du script SIS 'pla'
part 6 num6add.raw.pla pla
6 source pla num6add.raw.pla num6add.comb 
merge 6 num6add.comb num6add.comb.blif

# Le circuit obtenu est de tres grande taille. Partition en 16
# petites parties et synthese
part 16 num6add.comb.blif
16 source 1P num6add.comb.blif num6add.map4.blif
merge 16 num6add.map4.blif num6add.map4.blif

# Le nombre de parties utilise dans la phase precedente etant
# tres important (16), le partage de logique commune n'a pas ete
# realise efficacement. Une deuxieme phase de synthese, sur le
# circuit deja optimise est faite, avec un nombre de parties moins
# important, pour ameliorer la qualite du circuit
part 8 num6add.map4.blif
8 source 1P num6add.map4.blif num6add.map4.blif
merge 8 num6add.map4.blif num6add.map4.blif



Laurent Lemarchand
Mon Jan 25 14:57:16 MET 1999