Further reducing the redundancy of a notation over a minimally redundant digit set.
Résumé
Redundant notations are used implicitly or explicitly in many digital designs. They have been studied in details and a general framework is known to reduce the redundancy of a notation down to the minimally redundant digit set. We present here an operator to further reduce the redundancy of such a representation. It does not reduce the number of allowed digits since removing one digit to a minimally redundant digit set is a conversion to a non redundant digit set and this is an expensive operation. Our operator introduces some correlation between the digits to reduce the number of possible redundant notations for any represented number. This reduction is visible in small useful operators like the elimination of leading zeros. We also present a key application with a CMOS Booth recoded multiplier. Our multiplier is able to accept both a redundant or a non redundant input with very little modifications and almost no penalty in time or space compared to state-of-the-art non redundant multipliers.
Les notations redondantes sont utilisées de façon implicite ou explicite dans de nombreux circuits numériques. Elles ont été étudiées en détail et des méthodes générales sont connues pour réduire la redondance jusqu'à atteindre un ensemble de chiffres redondant minimal. Nous présentons ici un opérateur pour réduire encore la redondance d'une telle notation. Il ne réduit pas le nombre de chiffres autorisés car supprimer un chiffre à une notation sur un ensemble de chiffres déjà redondant minimum est une conversion vers une notation non redondante et une opération longue. Notre opérateur introduit des correlations entre les chiffres pour réduire le nombre des notations redondantes possibles pour chaque nombre représenté. Cette réduction a un effet visible pour de petits opérateurs tels que l'élimination de zéros non significatifs en tête d'un mot. Nous présentons aussi une application importante avec un multiplieur CMOS basé sur le codage de Booth. Notre multiplieur est capable de traiter une entrée redondante ou non redondante avec très peu de modifications et sensiblement aucune pénalité en vitesse et en taille comparé à un multiplieur capable uniquement de traiter des nombres non redondants.
Origine | Fichiers produits par l'(les) auteur(s) |
---|