mardi 22 mars 2016

Let's Discover FPGA !!

La technologie FPGA (Field-Programmable Gate Array) continue de gagner du terrain au domaine :  le marché mondial du FPGA devrait passer d'1,9 milliard de dollars en 2005 à 2,75 milliards d'ici 2010. Depuis leur invention par Xilinx en 1984, les FPGA sont partis d'un simple rôle d'« interfaçage d'appoint » pour arriver à véritablement remplacer les ASIC (circuits intégrés à application spécifique) et les processeurs personnalisés dans des applications de contrôle et de traitement de signaux.


Afin d'expliquer ce succès, cet article propose une introduction à la technologie FPGA et met en évidence quelques-uns des nombreux avantages que les FPGA sont aujourd'hui les seuls à offrir, introduire le lien direct entre FPGA et VHDL.


Les FPGA (Field Programmable Gate Arrays ou "réseaux logiques programmables") sont des composants entièrement reconfigurables ce qui permet de les reprogrammer à volonté afin d'accélérer notablement certaines phases de calculs.
Résultat de recherche d'images pour "fpga vs asic logo"
L'avantage de ce genre de circuit est sa grande souplesse qui permet de les réutiliser à volonté dans des algorithmes différents en un temps très court.
Le progrès de ces technologies permet de faire des composants toujours plus rapides et à plus haute intégration, ce qui permet de programmer des applications importantes.
Les FPGA sont bien distincts des autres familles de circuits programmables tout en offrant le plus haut niveau d'intégration logique.

Les circuits FPGA sont constitués d'une matrice de blocs logiques programmables entourés de blocs d'entrée sortie programmable. L'ensemble est relié par un réseau d'interconnexions programmable. 
Il y a 4 principales catégories disponible commercialement:

  • Tableau symétrique.
  • En colonne.
  • Mers de portes.
  • Les PLD hiérarchique.




Voici la structure interne d'un FPGA de type matrice symétrique. Il s'agit de l'architecture que l'on retrouve dans les FPGA de la série XC4000 de chez Xilinx.

On programme aussi les interconnexions entre les cellules:


Anisi que les entrées et sorties du circuit. L'avantage des FPGA est de pouvoir être configuré sur place, sans envoi du circuit chez le fabricant, ce qui permet de les utiliser quelques minutes après leur conceptions. Les FPGA les plus récents sont configurables en une centaine de millisecondes. Les FPGA sont utilisés pour un développement rapide et bon marché des ASIC.
Les cinq principaux atouts de la technologie FPGA:

  • Performances
  • Temps de mise sur le marché
  • Coût
  • Fiabilité
  • Maintenance à long terme
Passons au VHDL maintenant, en faite la définition générale de cette dernière va vous expliquez pourquoi on la utilise au programmation du FPGA.
VHDL est le sigle de VHSIC hardware description language ; VHSIC vient quant à lui de very-high-speed integrated circuits, une initiative de la Défense américaine dans les années 1980 visant la construction de circuits intégrés très rapides. Le VHDL est un langage de description du matériel utilisé en électronique. En tant que standard, il est indépendant du logiciel utilisé pour la compilation, la programmation des composants, la simulation, etc.Il autorise plusieurs méthodologies de conception (comportemental, flot de données, structurel) tout en étant d'un très haut niveau d'abstraction en électronique (il est indépendant de la technologie utilisée : FPGA, CPLD, ASIC, etc.). Cette abstraction permet d'ailleurs de le simuler sur ordinateur avant de programmer la moindre puce.Lors de sa conception, l'objectif n'était pas de produire un nouveau langage ex nihilo : la Défense avait récemment mis au point le langage Ada, il était préférable de partir sur ces bases et en exploiter autant que possible la syntaxe, en l'adaptant au contexte de l'électronique numérique.  

Il n'est pas le seul sur le marché : Verilog, par exemple, est également un langage très utilisé, possédant une syntaxe fort différente mais des fonctionnalités équivalentes, si ce n'est égales. VHDL semble plus utilisé en Europe. Une belle proportion des outils disponibles supportent indifféremment les deux.

Aujourd'hui je vais vous montrer comment initialer un tel projet en VHDL et le faire implanter sur une carte FPGA.
Le logiciel sur lequel on va écrire nos programme en VHDL est :

ISE WebPACK Design Software

Voici ce premier exemple du programme VHDL fait pas à pas sur ISE dans la vidéo si dessous:



Le programme que j'ai écrit si dessus est celui la :


-- Company: 
-- Engineer: Aymen Lachkhem 
-- Create Date:    19:06:52 03/21/2016 
-- Design Name: 
-- Module Name:    Logic_Gate_Code - Behavioral 
-- Project Name: 
-- Target Devices: 
-- Tool versions: 
-- Description: 
-- Dependencies: 
-- Revision: 
-- Revision 0.01 - File Created
-- Additional Comments: 
---------------------------------------------------------------------
library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
-- Uncomment the following library declaration if using
-- arithmetic functions with Signed or Unsigned values
--use IEEE.NUMERIC_STD.ALL;

-- Uncomment the following library declaration if instantiating
-- any Xilinx primitives in this code.
--library UNISIM;
--use UNISIM.VComponents.all;
entity Logic_Gate_Code is
    Port ( x : in  STD_LOGIC;
           y : in  STD_LOGIC;
           s : out  STD_LOGIC);
end Logic_Gate_Code;
architecture Behavioral of Logic_Gate_Code is
begin
s <= x AND y;
end Behavioral;

Ce logiciel nous offre l'utilité d'éviter d'écrire notre programme comme si dessous en mais de faire réaliser une programmation graphique " Schematic" , céci facilite la programmation il suffit de choisir les ports ou les circuits intégrées ou les portes logiques qu'on a besoin de le faire connecter pour avoir notre fonctionnement demandé.
Voila un exemple de ce que j'ai dis, dans la vidéo au dessous j'ai réalisé un projet sur ISE pas à pas mais au lieu d'écrire mot a mot mon programme j'ai juste fait intervenir le Schematic.


   
  


2 commentaires:


  1. Peter Scofield22 juillet 2020 à 11:17
    If you need to hire a real hacker to help monitor your spouse's cell phone remotely, contact deadlyhacker01@gmail.com or whatsapp: +1 3478577580. They are very reliable.

    RépondreSupprimer
  2. Hi, Im working on a project with Spartan 3E on Ethernet Communication, Can you share the knowledge how to connect them?

    RépondreSupprimer