Sysacom conception de circuits électroniques Custom Electronic Circuits
Conception de circuits électroniques Conception Circuits Électroniques
 
  Page principale
  Conception de circuit électronique
  Conception PCB
  DSP
  FPGA
  Contrôle de moteur
  Logiciel
  Évaluation Technique
  Produits
  Notes Applicatives
  Modèle d'entreprise
  Équipe de direction
  Questions fréquentes
  Événements
  Partenaire
  Carrière chez Sysacom
  Contact
          
Page Principale > FPGA
Systèmes électroniques Systèmes électroniques sur mesures
Connaissance appliquée en conception FPGA

Qu'est-ce qu'un FPGA?

 "Un field-programmable gate array (FPGA) est un circuit semiconducteur qui peut-être configuré par le client ou le concepteur avant et après avoir été manufacturé, d'où le nom "field programmable". Les FPGA sont programmé ou configuré, pour définir leur fonctionnalité, à l'aide d'un circuit logique ou de code source nommé "Hardware Description Language" (HDL). Les FPGA peuvent remplir la plupart des fonctions supportées par les ASIC, mais en plus ils peuvent être modifiés après avoir été inséré dans l'application. Les FPGA sont constitués de blocs contenant une certaine quantité de circuit logique et/ou table de vérité, puis de plusieurs facilités pout faire l'interconnexion entre les blocs logiques. On peut voir le FPGA comme étant un emplacement pour faire des prototypes de circuits logiques. Chaque bloc logique peut être configuré pour faire des fonctions simples comme des ET, OU, NOT, XOR. Dans la plupart des FPGA les blocs logiques contiennent des éléments de mémoire et des registres." (référence Wikipedia)   

 

 Certains FPGA contiennent des sections de circuit fixes:

  • Lien série haute vitesse (LVDS)
  • Serializer and deserializer (SERDES)
  • Boucle verrouilleur de phase (PLL)
  • Boucle verrouilleur de délai (DLL)
  • Multiplicateur et accumulateur pour utilisation en traitement de signal (DSP).
  • Interface mémoire tel que DDR.
  • Interface BUS standard tel que PCI.
  • Noyau de CPU.
  • Fonction analogique de base et superviseur de tension.
  • Bloc de mémoire RAM.
  • FIFO, mémoire à dux port d'accès
  • Plusieurs types d'entrée et sorties tel que CMOS, TTL, différentielles.

Qu'est-ce que peut faire un FPGA?

Un FPGA ça peut faire plein de chose. Ça peut faire toutes sorte de circuits numériques. Par exemple de la logique combinatoire tel des circuits complexes composés de portes logiques ET, OU, NON. Par exemple un circuit pour adapter un périphérique à un CPU. Dans les FPGA il y a des registres et de la mémoire, alors il est possible de faire des machines séquentielles comme les machine à états de Mealy et Moore. Par exemple un contrôleur de lumière de trafic ou bien un contrôleur de mémoire dynamique.

Comme les DSP le FPGA peuvent faire du traitement de signal numérique comme de la génération d'onde, de la démodulation, du filtrage, de l'analyse spectrale. etc. Les FPGA vont être favorisés par rapport aux DSP lorsque les taux d'échantillonnage sont très élevés soit de l'ordre de million d'échantillons par secondes et dans les applications où les DSP ne peuvent fournir tous les million de instructions par seconde requises. Un avantage indéniable des FPGA par rapport aux DSP est qu'avec un FPGA on peut avoir plusieurs multiplicateur et accumulateurs qui fonctionnent en même temps, la plupart des DSP sont limités à un ou deux.

Comment travaille t-on avec un FPGA?

Les FPGA sont développés en utilisant un langage texte spécifique pour la description de circuit logique comme par exemple le VHDL ou le Verilog. Avec ces langages on élabore le circuit logique un peu comme on écrit un logiciel pour un CPU, mais attention la principale différence est que l'exécution n'est pas séquentielle. Un exemple de code VHDL est montré plus bas:

CounterP: process(N_RESET, DSP_CLK_PIN, DSP_NCS_PIN, StateCount)

begin

   if (DSP_NCS_PIN = '1' OR N_RESET = '0') then --async reset.

      Count <= "0000000";

   elsif (DSP_CLK_PIN='1' and DSP_CLK_PIN'event) then --sync increment.

      Count <= Count + 1;

   end if;

end process CounterP;

La méthode pour travailler avec les FPGA est pas mal directe:

  • Spécifier les fonctions requises.
  • Établir l'architecture.
  • Rechercher de la propriété intellectuelle (PI) disponible pour faire les fonctions requises. Utiliser la PI peut sauver beaucoup de temps de développement.
  • Développer le code VHDL ou Verilog.
  • Simuler.
  • Intégrer le FPGA au produit final et faire les ajustements finaux.

Sysacom dispose d'une procédure de travail pour les FPGA, cette procédure défini le contenu de la documentation et le style de l'écriture du code.

Qui vend des FPGA?

Il y a principalement quatre compagnies qui produisent des FPGA: Xilinx, Altera, Lattice et Actel. Jusqu'à maintenant nous avons travaillé avec trois d'entre elles, puis nous avons été satisfaits avec chacune d'elle.

 

Qui développe avec des FPGA?

Sysacom développe pour ses clients des FPGA. Nous développons les FPGA en utilisant les langages VHDL et Verilog, mais nous faisons beaucoup plus, comme par exemple le sélection des FPGA, le conception des schémas, des circuits imprimés, nous allons aussi fournir quelques circuits prototypes et faire les tests et l'intégration.


 
 
Page principales | Conception de circuit électronique | Conception PCB | DSP | FPGA | Contrôle de moteur | Logiciel | Évaluation Technique | Produits | Notes Applicatives | Modèle d'entreprise | Équipe de direction | FAQ | Événements | Partenaire | Carrière | Contact
 
 
 
© Copyrights Sysacom R&D Inc. 1999-2010