eISP : processeur vidéo pour la téléphonie mobile
Mathieu Thevenin
et Laurent Letellier
CEA LIST – Laboratoire Calculs Embarqués
F-91191 Gif sur Yvette – France
Michel Paindavoine
Université de Bourgogne – UMR CNRS 5158
Rue Alain Savary
F-21000 Dijon – France
Email : Michel.Paindavoine@u-bourgogne.fr
Abstract—Today’s smart phones, with their embedded high-
resolution video sensors, require computing capacities that are
too high to easily meet stringent silicon area and power consump-
tion requirements (some one and a half square millimeters and
half a watt) especially when programmable components are used.
To develop such capacities, integrators still rely on dedicated
low resolution video processing components, whose drawback is
low flexibility. With this in mind, our paper presents eISP –
a new, fully programmable Embedded Image Signal Processor
architecture, now validated in TSMC 65nm technology to achieve
a capacity of 16.8 GOPs at 233 MHz, for 1.5 mm2of silicon area
and a power consumption of 250 mW. Its resulting efficiency
(67 MOPs/mW), has made eISP the leading programmable
architecture for signal processing, especially for HD 1080p video
processing on embedded devices such as smart phone.
I. INTRODUCTION
Les capteurs vidéo embarqués au sein de dispositifs mobiles
font maintenant partie de notre quotidien et tout spécialement
dans les téléphones portables. Il est nécessaire d’associer
au capteur un processeur de traitement du signal permettant
non seulement la reconstruction des images couleur, mais
aussi d’en améliorer la qualité intrinsèque. Les consommations
électriques consenties dans le domaine de l’embarqué sont de
l’ordre de quelques centaines de milliwatts pour une puissance
de calcul de plusieurs milliards d’opérations par seconde alors
que la surface silicium est de l’ordre du millimètre carré ce
qui permet de limiter les coûts de fabrication. Aujourd’hui les
intégrateurs utilisent des composants dédiés qui manquent de
flexibilité. Par ailleurs la vidéo Haute Définition (HD), qui
n’est, pour l’heure, pas supportée par les téléphones portables
nécessite une capacité de calcul telle (plusieurs dizaines de
GOPs) qu’il est impossible de l’embarquer sur ces dispositifs
mobiles en utilisant les architectures programmables usuelles.
Comme les intégrateurs veulent souvent utiliser leurs propres
fonctions d’amélioration d’image, il est crucial de rendre
flexible et programmable l’ensemble de la structure de calcul
en aval du capteur. Les différentes méthodes de reconstruction
et d’amélioration sont étudiées, ce qui permet de déterminer
les ressources nécessaires à leur exécution. L’architecture
embedded Image Signal Processor (eISP) entièrement pro-
grammable qui est destinée à exécuter des traitements vidéo
HD 1080p – 1920 ×1080 pixels à 25 trames par seconde –
est enfin présentée.
II. CHAÎNE DE RECONSTRUCTION VIDÉO ET CAPACITÉ DE
CALCUL NÉCESSAIRE
Un ensemble de traitements sont nécessaires à l’acquisition
puis à l’amélioration des images issues des capteurs Comple-
mentary Metal Oxide Semiconductor (CMOS). De nombreux
types de traitements et algorithmes peuvent être utilisés dans
la chaîne de reconstruction de l’image. La réduction du bruit
est une étape essentielle. Différents algorithmes de réduction
de bruits sont mis œuvre afin d’améliorer le rapport signal
sur bruit des capteurs utilisant des photosites de plus en
plus petits. Par ailleurs, comme le capteur est recouvert d’un
filtre alternant les couleurs primaires (le filtre de Bayer),
il est nécessaire de reconstruire les plans couleurs à pleine
résolution. C’est le démosaïquage de l’image brute. Enfin,
il est possible d’améliorer la qualité visuelle des images par
le rehaussement des contrastes et des contours ainsi que par
des techniques de "tone mapping". D’autres variantes de la
chaîne d’acquisition d’image sont couramment utilisées, c’est
pourquoi il est crucial de les inventorier.
Une fois que les algorithmes correspondants aux traitements
sont identifiés, il est possible de déterminer la capacité de cal-
cul nécessaire à leur exécution. Pour cela un profil dynamique
de leur exécution est réalisé et qui permet d’obtenir le graphe
d’exécution des traitements. Son analyse permet d’identi-
fier avec précision les opérations réalisées ainsi que leur
enchaînement, mais aussi d’identifier les principaux modes
d’accès aux données de l’image. Ces données permettent de
dimensionner l’architecture. Ainsi il apparaît que pour traiter
un flux vidéo HD 1080p une capacité de calcul de 30 GOPs est
nécessaire. Plus de la moitié de ces opérations sont dédiées à
l’accès aux données (calcul d’adresses, lecture) et au contrôle
(parcours de l’image, compteurs/indices). Or il apparaît que
ces tâches présentent d’importantes similitudes pour l’en-
semble des algorithmes de la chaîne de traitement. Aussi est-il
envisageable de les exploiter au sein de l’architecture afin que
la capacité de calcul programmable soit effectivement dédiée
au traitement.
III. L’ARCHITECTURE EISP ET SON IMPLÉMENTATION
En considérant un flux HD 1080p devant être traité en
temps réel par un seul processeur fonctionnant par exemple
à 233 MHz, seuls trois cycles d’horloges processeur sont
disponibles pour réaliser les opérations de traitement, ce qui
est insuffisant au regard des dizaines de cycles par pixel