EOS S3, le bitstream libéré !

38
11
juin
2020
Matériel

Pour configurer les différentes connexions des blocs de logiques contenus dans un FPGA il faut lui fournir un fichier de configuration appelé « bitstream ». Quand on parle de libération des FPGA, on pense principalement à la publication de ces spécifications.
Jusqu’à présent, cette « libération » s’est faite, pour une poignée de FPGA (majoritairement Lattice), par ingénierie inverse. Donc jamais à l’initiative du constructeur, ce dernier n’ayant même pas toujours connaissance de projet d’ingénierie inverse à destination de ses produits. Et il faut aller fouiller dans d’obscurs fils Twitter et autre forums de bidouilleurs pour les découvrir.

Mais la libération s’accélère, et une petite société peu connue dans le monde du FPGA vient de lancer un produit basé sur des outils libres pour le développement : l’EOS S3.

Comme on peut le voir dans le diagramme bloc ci‑dessous, le produit est en fait un microcontrôleur Cortex‑M4 qui possède une zone périphérique « de FPGA » appelée eFPGA.

EOS S3 Block Diagram

La société QuickLogic a considéré que développer des logiciels de synthèse et de placement‐routage n’était pas son métier. Elle s’est donc « contentée » de l’adapter aux logiciels open source de la suite SymbiFlow.

Pour la première fois dans l’histoire des FPGA, nous avons donc une société qui affirme documenter son « bitstream » et qui propose des outils libres pour le développement. C’est un événement que beaucoup attendaient depuis des dizaines d’années !

Bon, le (tout petit) FPGA ne concerne qu’une partie du composant. Mais c’est un bon début, et l’utilisation de logiciels libres reste la philosophie de la société pour le développement de ce produit. Comme dit dans les avantages de la fiche marketing du kit de développement :

« No more multi Gigabyte software installs, no more of the hassles associated with proprietary tools, no more vendor‑specific hardware incompatible with the industry. »

eFPGA

La fiche technique nous dit que la partie FPGA (celle qui nous intéresse ici) est composée de :

  • 891 cellules logiques ;
  • 8 blocs de mémoire vive à double port de 8 kilobits ;
  • 2 multiplieurs câblés de 32 × 32 bits ;
  • 32 entrées‐sorties configurables.

Alors, certes, on est très très bas dans la gamme des FPGA du marché, mais on peut déjà envisager faire des petites choses intéressantes avec. Surtout qu’il n’y a pas que le FPGA dans ce microcontrôleur.

Kit de développement QuickFeather

Le kit est encore en phase de lancement, même s’il semble que certaines développeuses aient déjà reçu la carte pour faire des tests. Le tarif de 50 US$ n’est pas prohibitif pour en envisager l’acquisition à des fins de tests. Les frais de port de 80 US$, en revanche, posent problème ; surtout s’il faut ajouter des frais de douane.

Bref, ça n’est pas du vaporware puisque les composants existent, mais il est pour l’instant difficile d’en dire plus concernant les outils. Dans tous les cas, une nouvelle très rafraîchissante, et une accélération de la libération des FPGA qui fait plaisir !

Aller plus loin

  • # enfin

    Posté par  . Évalué à 7.

    Je n'y croyais plus. Je me suis éloigné de la microélectronique depuis un moment.

    Je pensais que le succès du PC et de la documentation ouverte des CPU auraient montré l'intérêt des vendeurs de hardware de documenter leur FPGA. Mais non, cela a mis 20 ans pour arriver.

    "La première sécurité est la liberté"

    • [^] # Re: enfin

      Posté par  . Évalué à 6.

      Ah ben, tu mets plus de temps à processer l'information sur un cortex-M4 que sur un Ryzen, du coup, ils ont juste un peu de décalage :)

      « Rappelez-vous toujours que si la Gestapo avait les moyens de vous faire parler, les politiciens ont, eux, les moyens de vous faire taire. » Coluche

      • [^] # Re: enfin

        Posté par  . Évalué à 7.

        Le jour où ils sortiront des eFPGA + Cortex A avec quelques centaines de multiplieurs minimum, je pense que l'on pourra voir des démonstrations graphiques intéressante (certaines personnes ont implémenté des ray tracer sur FPGA). Niveau calcul, il y a du potentiel.

        "La première sécurité est la liberté"

  • # Jamais content !

    Posté par  . Évalué à 6.

    Ça aurais été encore plus libre si le cœur du microcontrôleur avait été un RISC V.
    Mais bon, on ne peut pas tout avoir en une seule fois.

    • [^] # Re: Jamais content !

      Posté par  (site Web personnel) . Évalué à 3.

      Ça va venir, ça va venir, à mon avis.

      Sinon ça existe déjà avec le Microsemi et son polarfire SOC (quad cœurs RV64GC plus un cœur «temps réel» RV64IMAC et 500kLUT).
      Mais on est plus du tout dans les même puissance et taille de processeur (Linux tourne dessus sans problème). Et surtout, pas de bistream libre avec microsemi :(

  • # Nouveauté ?

    Posté par  (site Web personnel) . Évalué à 2.

    Merci pour cette dépêche. J'adore l'idée du FPGA intégré au boîtier d'un MCU.

    La perspective de pouvoir modeler soi-même son propre contrôleur de périphérique avec accès direct par un bus interne est très attirante.

    Mis à part l'aspect libre des outils, existe-t-il déjà d'autres circuits de ce type (plus légers, moins coûteux) ou bien est-ce tout nouveau ? J'aimerais bien un STM32 avec quelques blocs FPGA.

    « J'ai pas Word, j'ai pas Windows, et j'ai pas la télé ! »

    • [^] # Re: Nouveauté ?

      Posté par  (site Web personnel) . Évalué à 4.

      Oui ça existe depuis un certain temps maintenant.
      Il y a la série des PSoC de cypress qui a son petit succès dans le genre. Mais évidemment c'est du soft proprio (et que sous windows il me semble).

      • [^] # Re: Nouveauté ?

        Posté par  (site Web personnel) . Évalué à 3.

        Il y a également la série des smartfusion2 de microsemi. Une base de cortex-m3.
        Là encore soft proprio, très pénible à installer et à utiliser (une énorme partie est en 32bits -> docker conseillé).

  • # Le bébé de Antmicro et Quicklogic aidé par Google

    Posté par  (site Web personnel) . Évalué à 4. Dernière modification le 17/06/20 à 09:26.

    Je ne l'ai pas dit dans la dépêche, mais l'entreprise qui est derrière ce nouveau produit est Antmicro. Une entreprise qui fait de la conception FPGA/ASIC à base de logiciel libre.
    Il semble également qu'ils aient été aidé par google.

    Le communiqué de Antmicro.

    Et en plus du EOS S3, Quicklogic lance une gamme de FPGA «discret» : le PolarPro 3E. Également basé sur une chaîne de développement libre \o/

Suivre le flux des commentaires

Note : les commentaires appartiennent à ceux qui les ont postés. Nous n’en sommes pas responsables.