METHODOLOGIE DE CONCEPTION DE GENERATEURS PORTABLES DE MACRO-BLOCS FONCTIONNELS OPTIMISES EN SURFACE ET EN PERFORMANCE A. Houelle H. Mehrez N. Vaucher Institut de programmation Laboratoire MASI/CAO-VLSI Tour 55-65, 2eme etage, Labo 13 Universite Pierre et Marie Curie (PARIS VI) 4, Place Jussieu 75252 PARIS Cedex 05 ABSTRACT This paper presents a methodology to build portable standard-cell generators of general arithmetic functional blocks. This methodology is successfully applied to create floating point IEEE arithmetic operators. In order to generate technology independent blocks, the concept of virtual cell library is used. Performance optimisation is provided by an automatic extraction of critical paths and an adequate mapping of electrical characterised cells. this mapping makes the best choice among simple buffers placement, cell duplication and different fanout cells to optimise performance. The placement optimisation is provided by using guidelines of special primitives which depend on real cell sizes. The chosen development methodology enables the generators to provide four main views. A logical netlist, a cell placement layout, a VHDL behaviour and high fault coverage test patterns. A datasheet is given and contains electrical critical path characterisation and surface evaluation. RESUME Cet article presente une methodologie de conception de generateurs portables standard-cell, utilises pour la creation d'operateurs arithmetiques. Cette methodologie a permis le developpement d'operateurs a virgule flottante, respectant la norme IEEE. Ces generateurs sont bases sur le concept de bibliotheque de cellules virtuelles permettant la portabilite des generateurs independamment de la technologie cible. Ils sont capables de resoudre automatiquement les prolemes electriques et les problemes de placement a partir des caracteristiques des cellules reelles utilisees. Les performances temporelles sont assurees par l'extraction des chemins critiques, par la possibilite de dupliquer des cellules et par le positionnement optimise de buffers. Ils permettent de generer differentes vues, comme la vue netlist (liste d'interconnexions), la vue placement, la vue comportement et la vue test permettant d'atteindre un taux de couverture important. De plus, ils fournissent les caracteristiques electriques et temporelles du circuit genere.