• [^] # Re: Qu'est-ce qu'un FPGA ?

    Posté par (site web personnel) . En réponse au journal 2019, l’année de la libération des FPGA ?. Évalué à 10.

    La version simple d'un FPGA contient des blocs standard, appelé cellule avec des fils d'entré sortie, ces fils sont plus ou moins long, pour les connecté il y a un paquet de "switch" interne programmable par des points mémoires SRAM (le bitstream est copié depuis une mémoire flash, sur ces points mémoires entre autre). Ainsi, on peut faire les connections que l'on veut.

    Une cell est composé d'une ou plusieurs "LUT" c'est simplement une petite mémoire, avec 4 fils, et 2 sorties, tu peux réalisé toutes les fonctions logique à 4 entrées et 2 sorties (les bits d'adresses sont tes entrées, et les bits de sorties sont le contenu de l'adresse mémoire). Le bitstream programme le contenu de ces LUT.

    Elle peut aussi contenir des portes logiques supplémentaire pour aller plus vite.

    Les blocs spécialisé ont aussi fait leur apparition : bloc mémoire (~16ko), multiplication (16x16->32 bits), IO complexe (DRAM, PCIe), puis CPU (arm)...

    On peut faire la même chose qu'avec un microcontrôleur mais beaucoup plus rapidement (signal à 200Mhz et plus).

    Dans les applications, j'ai vu le compagnon chip d'un processeurs utilisé dans le spatial qui utilisait des protocoles spécialisé ou pas (SPI, spacewire...). J'ai vu des applications radar, quand les DSP ne vont pas assez vite (il existe des FPGA avec plusieurs centaines de bloc multiplieur).

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