|
|
Description technique du BioWall
La réalisation de machines embryoniques demeure la raison principale qui se cache derrière la construction du BioWall.
La structure des machines en question est hiérarchique: les organismes (systèmes spécialisés) résultent de l'utilisation
en parallèle de plusieurs cellules (petits processeurs), elles-mêmes implémentées sous forme d'un réseau de molécules
(éléments logiques programmables). Pour la réalisation matérielle de telles machines, la structure du BioWall correspond
à un tissu bidimensionnel composé d'unités (représentant chacune une molécule), où chaque unité est constituée par un
élément d'entrée (une membrane tactile), un élément de sortie (une matrice de 8x8=64 diodes électroluminescentes
bicolores) et un élément de calcul programmable (un circuit FPGA Xilinx Spartan XCS10XL).

Le BioWall est une machine totalement modulaire: des prototypes variant de 150 (10 rangées de 15 unités) à 3500 unités
(25 rangées de 140 unités) ont été réalisés et testés. Le tissu représente alors une impressionnante puissance de calcul
(pouvant atteindre 3500 circuits FPGA) couplée avec une interface d'entrée/sortie (les membranes et les diodes) permettant
une interaction visuelle et tactile à grande échelle. Les avantages d'une telle solution sont évidents: d'une part, la
taille de l'affichage autorise une interaction directe avec des applications qui sont d'ordinaire limitées à une
simulation logicielle sur l'écran d'un ordinateur et, d'autre part, la puissance de calcul et la reconfiguration des
circuits FPGA permet le prototypage de nouveaux systèmes bio-inspirés.

Pour le moment, chacun des circuits FPGA Xilinx du BioWall ne peut être programmé qu'avec la même configuration, ce qui
réduit la fonctionnalité des unités aux 10'000 portes logiques équivalentes du circuit FPGA. D'autre part, les délais
considérables engendrés par la propagation des signaux globaux sur des distances de plusieurs mètres limitent la fréquence
du signal d'horloge à quelques centaines de KHz (une fréquence qui demeure plus qu'adéquate si l'on tient compte du
parallélisme massif de la machine et qui reste considérablement trop élevée pour les interactions humaines dans la
plupart des applications).
Outre les possibilités d'entrée/sortie des membranes et des diodes mentionnées précédemment, un ensemble de modules
placés à la périphérie de la machine permettent d'interfacer le tissu avec des circuits logiques standard, soit via
le PC ou directement avec des circuits conçus par l'utilisateur (les modules n'autorisent évidemment l'accès qu'à la
périphérie du réseau mais, si cela s'avère nécessaire, les circuits FPGA peuvent être programmés de façon à assurer
la propagation interne des signaux).

Les outils logiciels développés pour le BioWall sont rudimentaires mais complets. Une simple interface sur le PC
permet à l'utilisateur de définir un ensemble de fichiers destinés à la configuration du tissu. Actuellement, il y
a quatre types de fichiers (d'autres peuvent être ajoutés): le fichier de configuration pour les circuits FPGA Xilinx
et des fichiers présentant trois formats différents pour envoyer des données définies par l'utilisateur sur les bormes
d'entrée disposées à la périphérie du tissu (pour initialiser l'état d'un automate cellulaire, par exemple). Les
valeurs prises par les bornes de sortie à la périphérie du tissu peuvent être lues par le PC afin de les stocker sur
disque ou de les utiliser directement.
Ressources
 |
Rear view: Xilinx
FPGAs.
© A. Herzog
62KB JPEG
|
|
|
|
|
|
|
|
 |
Back view of
the BioWall.
© SAVE,
EPFL
4,533KB MPEG |
|
|