VeriSilicon se positionne sur le créneau des blocs d’IP pour vision et intelligence artificiellesAprès Synopsys (avec la famille de processeurs de vision artificielle DesignWare EV6x), Ceva (avec le DSP Ceva-XM6) et Cadence (avec le Tensilica Vision C5), VeriSilicon entre à son tour sur le marché des blocs d’IP pour vision ...et intelligence artificielles. La société chinoise, qui commercialise auprès des fabricants de semi-conducteurs et des équipementiers toute une gamme d’IP audio, vidéo et radio et qui a acquis en 2015 le spécialiste des cœurs graphiques Vivante, a en effet développé un processeur « neuronal » programmable et échelonnable pour ce type d'applications embarquées. Développant une puissance de calcul de plus de 3 téraMAC/s, le Vivante VIP8000 – c’est son nom – affiche en outre une éco-efficacité énergétique supérieure à 1,5 GMAC/s/mW et occuperait, selon son concepteur, la surface de silicium la plus compacte de l’industrie une fois gravé en technologie FinFET 16 nm. L’IP de VeriSilicon est constituée en pratique d’une unité de calcul parallèle hautement multithread, d’une unité de réseau neuronal et d’une unité de stockage cache universelle (voir ci-dessous). Selon la société asiatique, il est possible d’importer directement sur le VIP8000 des réseaux de neurones générés par des frameworks d'apprentissage profond populaires comme Caffe et TensorFlow, et ces mêmes réseaux de neurones peuvent être intégrés à d’autres fonctions de vision artificielle en utilisant le modèle de programmation OpenVX, conçu pour l’accélération multiplate-forme d’applications et de bibliothèques de vision artificielle. Si l’on en croit VeriSilicon, le processeur VIP8000 prend en charge les principaux modèles actuels de réseaux de neurones (AlexNet, GoogleNet, ResNet, VGG, Faster-RCNN, Yolo, SSD, FCN, SegNet) et les principales couches constituantes des réseaux de neurones (convolution et déconvolution, dilatation, couche entièrement connectée FC, « pooling » et « unpooling », couches de normalisation et fonctions d’activation, modes RNN – Recurrent Neural Networks – et LSTM – Long Short-Term Memory –, etc.). L’IP de VeriSilicon est par ailleurs dotée d’une interface dite VIP-Connect censée simplifier le travail de l’utilisateur qui souhaiterait associer le VIP8000 à des blocs d’accélération matérielle spécifiques à leur application. A noter enfin que le processeur est programmable en OpenCL ou OpenVX avec un modèle de programmation unifié sur les différentes unités matérielles constituantes du design, y compris les unités d’accélération spécifiques à l’utilisateur. Toutes les unités matérielles peuvent ainsi travailler simultanément en parallèle, les données partagées étant placées en mémoire cache afin de réduire de manière significative la bande passante. « Pour garantir une croissance rapide de l’intelligence artificielle dans les dispositifs embarqués, des moteurs programmables à la fois efficaces, puissants et dotés d’API aux normes du secteur comme OpenCL et OpenVX sont essentiels, a commenté Jon Peddie, président de la société d’analystes JonPeddie Research. Cette efficacité découlera à la fois des innovations dans le domaine des réseaux de neurones et de l’augmentation de la densité de calcul. » |