Proposition d’un NoC dynamiquement adaptable
Mod`ele d’architecture d’un NoC dynamiquement adap table
D´efinition du flux de donn´ees Nous utilisons le terme flux (du latin fluxus, ´ecoulement) pour d´esigner un ensemble de donn´ees ´evoluant dans la mˆeme direction. Le terme ”ensemble”´etant d´efini, selon la th´eorie des ensembles, comme une collection d’´el´ements. Dans le domaine de la vision num´erique, nous parlons de flux d’une image pour d´esigner une collection de valeurs de pixels. Un pixel (de l’anglais picture element) est une unit´e de surface permettant de mesurer une image num´erique.
A chaque pixel est associ´ee une valeur d’une composante d’intensit´e (exprim´ee en bits) dans le cas d’une image monochrome en niveaux de gris, ou plusieurs valeurs de composantes dans le cas d’une image couleur selon l’espace colo rim´etrique choisi : Red Green Blue (RGB), YCrCb ou Hue Saturation Value (HSV) par exemple. Ainsi, un flux d’une image peut repr´esenter soit un bloc d’image, une image compl`ete ou une s´ equence d’image.
Choix d’une architecture orient´ee flux de donn´ees La d´efinition de notre mod`ele d’architecture se base sur le constat que la majorit´e des unit´es de calcul optimis´ees pour r´ealiser les op´erateurs de traitement d’image, pr´esent´es au chapitre 2 en section 2.3.5, sont orient´ees flux de donn´ees. Nous avons ´egalement remarqu´e dans ce mˆeme chapitre, que ces op´erateurs sont r´eutili sables entre diff´erentes applications de visualisation d’image, selon les capteurs utilis´es.
Ainsi, en supposant qu’un syst`eme dispose de l’ensemble des unit´es de calcul capables de r´ealiser toutes les applications requises, il serait id´eal que le syst`eme d’interconnexion puisse adapter dynamiquement les liaisons entre les unit´es de calcul en fonction du type de donn´ee, distingu´e selon le capteur, et de l’application `a impl´ementer.
Par ailleurs, nous avons vu que la majorit´e des architectures de vision embarqu´ee pri vil´egie, g´en´eralement, au mieux la possibilit´e de chaˆıner les unit´es de calcul sous forme d’un pipeline [127–129] afin d’obtenir un minimum de m´emorisation, de pouvoir trai ter directement en flot de donn´ees et ainsi maximiser la bande passante des canaux de communication avec une latence minimale. Notre mod`ele d’architecture NoC tient compte de cette approche de conception, afin de pouvoir composer plusieurs pipelines d’unit´es de calcul, dans le but d’approcher les performances d’une architecture cˆabl´ee sp´ecifique mais sans la contrainte de liaisons point-`a-point fig´ees entre les unit´es.
Proposition du mod`ele d’architecture de NoC Dans notre NoC propos´e, un noeud correspond soit `a un routeur unique ou soit `a l’as sociation d’une unit´e de calcul (PE) avec son routeur. Plus particuli`erement, nous dis tinguons deux types de noeuds : les noeuds maˆ ıtres (M) et les noeud esclaves (E). La figure 4.2 pr´esente un exemple de mise en oeuvre du NoC dans le cadre de l’exemple pr´ec´edent avec trois capteurs et deux afficheurs.