Xilinx acquiert Silexica, un spécialiste de la programmation en C/C++ de systèmes multicœurs hétérogènes

Xilinx Silexica

Le fournisseur de circuits logiques programmables Xilinx (en cours de rachat par AMD) annonce l'acquisition pour un montant non dévoilé de l'allemand Silexica, éditeur d’un outil de programmation, d'analyse et d’optimisation de code C/C++ implanté sur des processeurs à cœurs multiples et hétérogènes.... La suite d'outils SLX FPGA de Silexica, qui propose aux développeurs la possibilité de créer des applications sur des FPGA ou des puces-systèmes SoC multicoeurs, sera notamment intégrée à la plate-forme logicielle unifiée Vitis de Xilinx, avec comme objectif de réduire considérablement la courbe d'apprentissage du développement sur la technologie Xilinx.

Fondé en 2014 et basé à Cologne, Silexica est une émanation de l'université d'Aix-la-Chapelle et a reçu un financement à hauteur de 18 millions de dollars en 2018. La société prône avec sa technologie une approche globale qui permet aux développeurs d'analyser, d'optimiser et d'implanter du code embarqué sur des processeurs à cœurs multiples, utilisés notamment dans les secteurs de l'aérospatial, de la Défense, de l'automobile, du sans fil et de l’embarqué.

Dans cette approche, la phase d'analyse étudie la structure du code via des technologies de compilation avancées et extrait dans un modèle les possibilités de parallélisation, y compris les analyses temporelles, tandis que la partie optimisation réalise la distribution automatique du code sur les différents cœurs du processeur utilisé ou sur une architecture multicoeur hétérogène. Avec, à la clé, des informations sur les flux des tâches logicielles, les accès mémoire, le comportement déterministe du code, les performances des bus de communication utilisés, etc. Enfin, dans la phase d’implantation physique du code, l’outil SLX guide étape par étape l'utilisateur dans le transfert du code vers les cœurs de processeurs.

Tirant parti de ses outils de synthèse standard de haut niveau, Xilinx va s’appuyer sur l’outil SLX pour la partie du code C/C++ d’une application non synthétisable au sein d’un circuit programmable (c’est-à-dire exécutée directement par un cœur de processeur). L’outil à ce niveau détecte le parallélisme des applications, insère des pragmas et détermine le partitionnement logiciel et matériel optimal. Ce qui permet de concevoir une application à un niveau d'abstraction plus élevé, avec une simulation de plusieurs ordres de grandeur plus rapide et une optimisation de haut niveau grâce à une exploration de l'espace de conception.

« La "programmabilité" logicielle est impérative dans le cadre de notre objectif à long terme qui est d'accélérer le passage des logiciels vers des systèmes matériels optimisés, précise Salil Raje, vice-président exécutif et directeur général, Data Center Group, chez Xilinx. La technologie de Silexica qui complète notre feuille de route de l’environnement Vitis va accélérerer notre capacité à attirer un plus large éventail de développeurs cherchant à tirer parti de nos architectures de traitement hétérogènes. »