Méthodologie de compilation d'algorithmes de traitement du signal pour les processeurs en virgule fixe sous contrainte de précision - INRIA - Institut National de Recherche en Informatique et en Automatique Accéder directement au contenu
Thèse Année : 2002

Compilation of Signal Processing Algorithm into fixed-point Processor under accuracy constraint

Méthodologie de compilation d'algorithmes de traitement du signal pour les processeurs en virgule fixe sous contrainte de précision

Résumé

The efficient implementation of digital signal processing algorithms into embedded systems requires the use of fixed-point arithmetic in order to satisfy the cost and power consumption constraints. The manual coding of fixed-point data is a tedious and error prone task. Moreover, the reduction of the time-to-market of applications requires high-level development tools that allow the automation of some tasks. Thus, the development of automatic fixed-point conversion methodologies is needed. For Digital Signal Processor (DSP), the methodology must determine the optimal fixed-point specification which allows to maximize the accuracy and to minimize the size and the execution time of the code. The goal of this thesis is to define and develop a new methodology for the implementation of floating-point algorithms into fixed-point programmable processors with the constraint to fulfil the application quality criteria. This work is based on three main parts. First, the structure of the methodology has been defined. The analysis of the architecture influence on the computation accuracy underlines the necessity to take account of the target architecture in order to obtain an optimized implementation in terms of execution time and accuracy. Moreover, the study of the interaction between the compilation and the fixed-point conversion process allows to define the coupling needed between these two processes. The second part of this work deals with the evaluation of the fixed-point system accuracy through the determination of the Signal to Quantification Noise Ratio (SQNR). A new methodology which allows to determine automatically the analytical expression of the SQNR according to the fixed-point data format has been proposed. First, a new quantification noise model is presented. Then, the theoretical concepts for the determination of the output quantification noise power are detailed in the case of linear systems and non-linear and non-recursive systems. Finally, the methodology developed for determining automatically the SQNR expression of linear systems is explained. The last part of this work corresponds to the development of the fixed-point conversion methodology. First, the data dynamic range is evaluated with an analytical approach based on two different techniques. The dynamic information are used for the determination of the data binary point position by taking account of the number of guard bits available in the processor. For obtaining a complete fixed-point format, the data word-length is determined in order to exploit the diversity of data types manipulated by the processor. The methodology selects the set of instructions which allows to obtain a sufficient accuracy and to minimize the code execution time. The last stage of the methodology corresponds to the optimization of the fixed-point data format in order to obtain a more efficient implementation. The different scaling operations are moved for minimizing the global execution time as long as the accuracy constraint is fulfilled. Two types of method have been proposed according to the instruction level parallelism capabilities of the target processor. This methodology has been tested on different digital signal processing algorithms used in the third generation radio-communication systems. The results show the relevance of our methodology for reducing the development time of fixed-point systems.
L'implantation efficace des algorithmes de traitement numérique du signal (TNS) dans les systèmes embarqués requiert l'utilisation de l'arithmétique virgule fixe afin de satisfaire les contraintes de coût, de consommation et d'encombrement exigées par ces applications. Le codage manuel des données en virgule fixe est une tâche fastidieuse et source d'erreurs. De plus, la réduction du temps de mise sur le marché des applications exige l'utilisation d'outils de développement de haut niveau, permettant d'automatiser certaines tâches. Ainsi, le développement de méthodologies de codage automatique des données en virgule fixe est nécessaire. Dans le cadre des processeurs programmables de traitement du signal, la méthodologie doit déterminer le codage optimal, permettant de maximiser la précision et de minimiser le temps d'exécution et la taille du code. L'objectif de ce travail de recherche est de définir une nouvelle méthodologie de compilation d'algorithmes spécifiés en virgule flottante au sein d'architectures programmables en virgule fixe sous contrainte de respect des critères de qualité associés à l'application. Ce travail de recherche s'articule autour de trois points principaux. Le premier aspect de notre travail a consisté à définir la structure de la méthodologie. L'analyse de l'influence de l'architecture sur la précision des calculs montre la nécessité de tenir compte de l'architecture cible pour obtenir une implantation optimisée d'un point de vue du temps d'exécution et de la précision. De plus, l'étude de l'interaction entre les phases de compilation et de codage des données permet de définir le couplage nécessaire entre les phases de conversion en virgule fixe et le processus de génération de code. Le second aspect de ce travail de recherche concerne l'évaluation de la précision au sein d'un système en virgule fixe à travers la détermination du Rapport Signal à Bruit de Quantification (RSBQ). Une méthodologie permettant de déterminer automatiquement l'expression analytique du RSBQ en fonction du format des données en virgule fixe est proposée. Dans un premier temps, un nouveau modèle de bruit est présenté. Ensuite, les concepts théoriques pour déterminer la puissance du bruit de quantification en sortie des systèmes linéaires et des systèmes non-linéaires et non-récursifs sont détaillés. Finalement, la méthodologie mise en oeuvre pour obtenir automatiquement l'expression du RSBQ dans le cadre des systèmes linéaires est exposée. Le troisième aspect de ce travail de recherche correspond à la mise en oeuvre de la méthodologie de codage des données en virgule fixe. Dans un premier temps, la dynamique des données est déterminée à l'aide d'une approche analytique combinant deux techniques différentes. Ces informations sur la dynamique permettent de déterminer la position de la virgule de chaque donnée en tenant compte de la présence éventuelle de bits de garde au sein de l'architecture. Pour obtenir un format des données en virgule fixe complet, la largeur de chaque donnée est déterminée en prenant en compte l'ensemble des types des données manipulées au sein du DSP. La méthode sélectionne la séquence d'instructions permettant de fournir une précision suffisante en sortie de l'algorithme et de minimiser le temps d'exécution du code. La dernière phase du processus de codage correspond à l'optimisation du format des données en vue d'obtenir une implantation plus efficace. Les différentes opérations de recadrage sont déplacées afin de minimiser le temps d'exécution global tant que la précision en sortie de l'algorithme est supérieure à la contrainte. Deux types de méthode ont été mis en {\oe}uvre en fonction des capacités de parallélisme au niveau instruction de l'architecture ciblée. Cette méthodologie a été testée sur différents algorithmes de traitement numérique du signal présents au sein des systèmes de radio-communications de troisième génération. Les résultats obtenus montrent l'intérêt de notre méthodologie pour réduire le temps de développement des systèmes en virgule fixe.
Fichier principal
Vignette du fichier
menard-4.pdf (5.89 Mo) Télécharger le fichier

Dates et versions

tel-00609159 , version 1 (18-07-2011)

Identifiants

  • HAL Id : tel-00609159 , version 1

Citer

Daniel Ménard. Méthodologie de compilation d'algorithmes de traitement du signal pour les processeurs en virgule fixe sous contrainte de précision. Traitement du signal et de l'image [eess.SP]. Université Rennes 1, 2002. Français. ⟨NNT : ⟩. ⟨tel-00609159⟩
1032 Consultations
2501 Téléchargements

Partager

Gmail Facebook X LinkedIn More