PDFprof.com Search Engine



Circuits Logiques Programmables

PDF
Images
List Docs
  • Quels éléments composent un circuit logique programmable ?

    Un bloc logique est de manière générale constitué d'une table de correspondance (LUT ou lookup table) et d'une bascule (flip-flop en anglais).
    La LUT sert à implémenter des équations logiques ayant généralement 4 à 6 entrées et une sortie.

  • Quels sont les circuits logiques de base ?

    Les circuits de base (comportant un nombre réduit de transistors) de l'électronique numérique et logique réalisent des opérations logiques simples : ET (AND), OU (OR), NON (NOT), XOR, etc.
    A partir de ces briques de base de la logique, on peut ensuite réaliser toutes les fonctions logiques complexes.

  • C'est quoi une carte FPGA ?

    FPGA est l'abréviation de « Field-programmable gate array », ce qui peut être traduit en français par « réseau de portes programmables sur site ».
    C'est un circuit intégré fait pour être (re)programmé par l'utilisateur après sa fabrication en utilisant un langage informatique spécifique, donc sans modifier le matériel.

  • On appelle circuit logique (ou circuit combinatoire) un ensemble de portes logiques reliées entre elles pour répondre à une expression algébrique.
    Il s'agit donc d'aller transcrire en schéma électrique (à l'aide des représentations ci-dessus) l'expression algébrique que l'on a simplifiée grâce aux lois de composition.

Circuits Logiques Programmables
Circuits programmables FPGA (Field Programmable Gate Array)
LES CIRCUITS LOGIQUE LES CIRCUITS LOGIQUES
Les circuits logiques programmables
Evolution des circuits logiques programmables PLDs
Chapitre I Les circuits logiques programmables
Analyses Thermiques en Science des Matériaux
Chapitre 1 Principe de l'analyse thermique
Analyse thermique
ANALYSE THERMIQUE DIFFERENTIELLE (ATD)
CALORI METRI E
Next PDF List

Circuits Logiques Programmables

BADJI MOKHTAR-ANNABA UNIVERSITYUNIVERSITE BADJI MOKHTAR-ANNABA)MŃXOPp GHV 6ŃLHQŃHV GH O·LQgénieur Année 2013GpSMUPHPHQP G·pOHŃPURQLTXHTHÈSEDOCTORATOptionPRESIDENT : H.A.

ABBASSI Professeur Université .AnnabaEXAMINATEURS : A.H. BOUKROUCHE Professeur Université .Guelma: A.FAROUKI Professeur Université .Constantine: M. FEZARI M.C Université .Annaba: A.R.

LACHOURI M.C Université .SkikdaIMPLEMENTATION SUR FPGA D͛UN ALGORITHME DEDEBRUITAGEEN UTILISANT 1D-DWTREMERCIEMENTH.A.

ABBASSI, pourM.

BENOUARETconseils tout au long de ces années.DaâouatISMAHANESAHOUR AbdelhakimRESUMEondelettes ainsi que le choix de la fonction de seuillage ont été décortiquées et étudiées danssémantique difficile qui consiste à passer du type abstrait des variables manipulées par notrecomportementale pouvant être assimilée à la conception de code source sur les dernièresalgorithme,transformatiapplication, en particulier, le traitement en temps réel.c.à.d. augmenter lematérielles.MOTS CLESABSTRACTThe signal processing is a research object in the most electronics laboratories,vector admissible for RTL system (register logic transfer).that the transformations and conversions lie on the methods like scheduling and theKEY WORD:Listes des figuresIntroduction généraleCHAPITRE IIIntroductionHistoire de la logique programmableLes FPGAsArchitecture des FPGAsFournisseurs des circuits logiquesOutils deLes langages de description de matérielLe Verilog : historique et descriptionVHDL : historique et descriptionTraduction et optimisationPartitionnement placement et routageSimulationConfigurationLes atouts dePerformancesTemps de mise sur le marchéCoutFiabilitéMaintenanceLes tendances courantesLe choix des FPGAsLa carte de développementPrésentation2 CODEC AUDIOReprésentation des nombresLes nombres en virgule fixeReprésentation des nombres non signé (positifs)Représentation des nombres signésReprésentations biaiséesComplément à deux (2C)Complément à un (1C)unNombres à Chiffre SignéLe code (CSD) Fractionnelles nombres en virgule flottanteOperateurs arithmétiques spécifiques pour les FPGAsIntroductionAddition binaireSemi additionneurAdditionneur completAdditionneur par propagation de retenueAdditionneur par anticipation de retenuea soustraction en complément à deuxLa multiplicationLa multiplication graphiqueLa multiplication d'accumulateur (MAC) et somme de produit (SOP)La multiplication distribuLook4 IntroductionTransformée en ondelette4 La transformée discrète en ondelettePropriété des ondelettesSupport compactSymétrieNombre de moment nulsRégularitéApplicationBanc de filtreIntroductionConversion de la fréquenceSous échantillonnageSur échantillonnageLa décimationLes identités noblesUtilisation du Bancs de filtreDébruitage de signauxIntroductionPosition du problèmeDébruitage par des filtres linéairesDébruitage par les ondelettesDébruitage parMéthode de seuillageSeuillages durSeuillage douxSeuillage dur modifieSélection du seuilleIntroduction5 Design méthodologie de développementADC/DAC CODEC AUDIOopération de débruitagePChoix des ondelettes et niveau de décompositionBanc )Banc de filtre de synthèse (reconstitutionLe seuillageFLa transformée en ondelettes discrèteAnaLa multiplication par une constanteReprésentation binaire des nombres décimauxUn niveau de décompositionLe seuillageUn niveau de reconstitutionFiltre moSimulationImplémentation hardwareC1C2CADCs analogue-to-digital converterALM Altera Logic ModuleASG Analysis Standardisation GroupASIC Application Specific Integrated CircuitBDTI Berkeley Design Technology IncBGA Ball Grid ArrayCD Compact DiscCLBs configurable logic blocksCPA Carry-Propagate AdderCPLD Complex Programmable Logic DeviceCSD Canonic Signed Digit SystemCSD canonic signed digitCWT Continuous Wavelet TransformDA Distributed ArithmeticDACs digital-to-analogue converterDSP Digital Signal ProcessorDWT Discrete Wavelet TransformEEPROM ElectricallyEPROM erasable PROMFA full-adderGPS Global Positioning systemHA Half-AdderHDL Hardware Description LanguageHDL Hardware Description LanguageI/O Input/OutputI²C Inter Integrated Circuitiid indépendant et identiquement distribuéIP Intellectual PropertyIrDA Infrared Data AssociationJTAG Joint Test Action GroupLCD Liquid Crystal DisplayLE Logic ElementLED light-emitting diodeLSB Least significant bitLUT Look up tableMAC Multiply-AccumulatorMMI Monolithic Memories IncMRA Multi-Resolution AnalysisMSB Most significant bitNRE Non-Recurring EngineeringOFDM Orthogonal Frequency Division MultiplexingOLMC Output Logic Macro CellOT Objets TechniquesOVI Open Verilog InternationalP.L.D Programmable Logic DevicePCI Personel Computer InterfacePDA Personal Digital AssistantsPLA Programmable Logic ArrayPLI Progamming Language InterfaceRAM Random Access MemoryRISC Reduced Instruction Set ComputerROM Read Only MemoryRTL Register Transfer LevelSD Signed DigitSNR Rapport signal sur bruitSoC System on ChipSOP Sum Of ProductSPLD Simple Programmable Logic DevicesSRAM Static Random Access MemoryUAL Unite Arithmetic LogicUSB Universal Serial BusVHDL VHSIC Hardware Description LanguageVHDL-AMS VHDL Analog and Mixed SignalVHSIC Very High Speed Integrated CircuitFigure2.1 Les déférentes catégories des circuits intégrées numériquesFigure2.2 avant la programmationFigure2.3 un PLA réalisant un OU exclusifFigure2.

4) Figure2. 5) Figure2. 6) Figure2.

7) Figure2.8 Exemple de LUTFigure2.9 Exemple de LUT ALTERA Cyclone IIFigure2.10 Une ALM de stratix IIIFigure2.11 Virtex-II Pro Slice (Top Half)Figure2.12 Cellule SRAMFigure2.13 Résumé graphique des familles de P.L.DFigure2.14 Les étapes du développement pour les PLDFigure2.15Figure2.16Figure2.17 La carte DE2Figure2.18 Le Bloc diagramme du WM8731Figure 3.

1) Aperçu des représentations de nombresFigure 3. 2) Représentation en signe et valeur absolue de nombres de quatre bits.Figure 3.

3) Représentation biaisée (R = 23) de nombres entre -8 et +7, avec des mots dequatre bits.Figure 3.4 Représentation en complément à deux de nombres entre -8 et +7, avec des motsde quatre bits.Figure 3.

5) Représentation en complément à un de nombres entre -7 et +7, avec des mots dequatre bits.Figure 3.

6) Résumé des diverses représentations des nombres étudiées.Figure 3.7 résultats de simulation.Figure 3.8 -adder)Figure 3.9 -adderFigure 3.10Figure 3.11 S, G et P.Figure 3.12Figure 3.13 Soustraction en complément à deux réalisée avec un additionneur à retenuepropagéeFigure 3.14 Multiplication traditionnelle de deux nombresFigure 3.15 Multiplicateur baséFigure 3.16 Les deux réalisations pour la constante 124.Figure 3.17 Multiplicateur avec un coefficient 124Figure 3.18Figure 3.19Figure 3.20Figure 3.21Figure 4.1 Analyse temps-échelle par la transformée en ondeletteFigure 4.2asymétrique et irrégulièreFigure 4.

3) Figure 4. 3) Figure 4.

4) Figure 4. 6 Ondelette de Daubechies à 2 moments nuls (4 coefficients)Figure 4. 7 Ondelette de Daubechies à 6 moments nuls (12 coefficients) pour 2 facteursFigure 4.

8) Figure 4. 5 Le sous-échantillonnageFigure 4. 6 Le sur-échantillonnageFigure 4. 7 La décimationFigure 4.

8) Figure 4.9 Les identités noblesFigure 4.14 La structure polyphaséFigure 4.15 La structure polyphase efficace pour la décimationFigure 4.16Figure 4.17Figure 4.18 sortieFigure 4.19Figure 4.20 Seuillages dur et doux.Figure 5.

1) Bloc diagramme des différentes étapesFigure 5. 2) Les protocoles des lignes de bus I2C de WM8731 WolfsonFigure 5. 3) Résultas-Stream ClockFigure 5. 4) Schéma bloc de la fonction débruitageFigure 5. 5) Banc de filtre à deux canauxFigure 5.6 décompositionFigure 5. 7) Banc de filtre de décomposition à deux canauxFigure 5.

9) Figure 5.10 Banc de filtre de reconstitutionFigure 5.12 banc de filtre polyphase à deux canaux de la phase de synthèseFigure 5.13 Filtre daubechies sous la structure polyphaseFigure 5.14Figure 5.15 Les trois niveaux de décompositionFigure 5.16 les trois niveaux de synthèse (reconstitution)Figure 5.17 Schéma bloc de la fonction débruitageFigure 5.18Figure 5.19Figure 5.20 Résultat de la simulation par Quartus ® II de la LUT du coefficient 0.8365Figure 5.21 Architecture RTL donnée par Quartus ® II du multiplicateur par le coefficient0.8365Figure 5.22Figure 5.23 Schéma bloc du diviseurFigure 5.24 Machine à états finis et programme VHDL du DiviseurFigure 5.25 Le résultat de la simulation par Modelsim du diviseurFigure 5.26 Vue interne (RTL) du diviseur.Figure 5.27 Vue interne (RTL) des deux filtres décompositionFigure 5.28Figure 5.29 niveau décompositionFigure 5.30 Architecture du composant de seuillageFigure 5.31 Vue interne (RTL) du composant de seuillageFigure 5.32Figure 5.33Figure 5.34Figure 5.35Figure 5.36Figure 5.37 Vue interne (RTL) des deux filtres reconstitutionFigure 5.38 Simulation par ModelSim deFigure 5.39 Schéma bloc de la phase de décompositionFigure 5.40Figure 5.41Figure 5.42 Vue interne (RTL) du filtre moyenneurFigure 5.43 Simulation par ModelSim du filtreFigure 5.44 Le résultat de la simulation avec ModelSim; (a) signal original ; (b) signaloriginal retardé; (c) signal débruité; (d) signal débruité et filtré.Tableau 2.1 ionneur incompletTableau 4. 1 Les pseudo-fréquences et les échelles correspondantesTableau 5.

1) Coefficients des différents filtres de daubechiesTableau 5.2 résultats Matlab décompositionTableau 5.

3) Hardware Resource ConsumptionIntroduction Générale1 IntroductionEUXLW/HEUXLWGpJUDGHOdonc fortementinstrumentale.Pour les applications à grand intérêt, dans lesle bruit est principalement à haute fréquence,coefficients de détail contiendront une grande partie du bruit.auseuil [en deux classes les détails et les approximations.optimisée.té avec un temps de développement important, les2005 à 5.6 milliards en 2014 [2,3].technologie FPGA sontExécution très rapideAdapté au prototypage rapideAdaptabilité aux futures évolutions grâce à la possibilité de reconfiguraFabrication économiqueMaintenance à long termeFacilité de test2de la transformées en ondelettes discrètes (DWT) sur la base des processeurs de traitementsde la transformée en ondelettes discrète Néanmoins, ces dispositifs étant coûteux, pas deAccumulateur parallèle en langage assembler.

Tous les travaux mentionnés avants ont été uneDSP à virgule fixeet de taille de la mémoire nécessaireimplémentations sur la base des FPGAs ont été proposées. Le premiprises en compte.

Un autre travail similaire est présenté par Zhang et Hu.

Ici, les auteurs ontdébruitage par ondelettes sur un DSP et un FPGA. Les performances ont été justifiées par laFPGA et en virgule flottante sur le DSP.laapplication vantage d'assurer uneDWTl'utilisateur avec une relative simplicité.

Un inconvénient bien connu de ces systèmes, est3 Plan de la thèLe deuxième chapitre est consacré à la présentation des différents circuits logiquesprésentons la réalisation des opérations algébriques et arithmétique implémenté dans desdresse un panorama de nouvelles représentations multi résolution.

Nous allons donner unsignal.mps la conclusion de ce travail,Chapitre IICircuits Logiques2 Circuits logiques programmables3 IActuellement les Objets Techniques (O.T.)exigeant des arbitrages matériellogicielLe nombre deFigure 2.

1) Ce chapitre détaille l'histoire desleurs3 HUn circuit logique programmable sefonctions logiques [2.1].Circuitsprogrammable (PLA, pour programmable logic array) inventé par Monolithic Memories Inc.annéeappelle classiquement la première forme normale, ou forme disjonctive. nemployé pourcorrespondavaleur constante.Figuresa݁sRAtLAsHAtEAsHAtprogrammation du PLA de la figure 2.Figure 2.La plupart des PLDs suivent la structure suivanteentrée et de son complément.UnUn bloc de sortie.Les interconnections de ces matrices doivent êtres programmables, et ceci est réalisé par deslogic Macro Cell) signifiant macroUne porte OU exclusif, une bascule D.Des multiplexeurs qui permettent de définir différentes configuration et unDes fusibles de configuration (dans les FPGAs on utilise plutôt des cellules deFigur]Une amélioration du PALFigure 2.

2) En 1984 Xilinx a présenté le FPGAn type alternatif du PLD s'est développé plus récemmentuneentrées/sortiese(programmable interconnect)entre ellesFigure 2.La partie fondamentale du FPGA estregroupementsmentaire.plus utiFigureFPGALa fonction de la LUT est de stocker la table de véritéFigureChaque fabricant de FPGA a par la suite réalisé des choix de regroupement de LUTs,ce type de FPGA sera utilisé durant cette thèse, la, Altera les nomes élémentCout)que le circuit bleusont regroupés dans un logic array block (LAB) via une interconnexion locale hauteplus lente 5X3 (soit 1920 ALM).

Ces blocs sont ensuite maillés dans une interconnexionChaque CLB dans un FPGA de Xilinx1]Figure 2.2 A(0 ou 1Mémoire volatile :d'énergie.Mémoire Quand des données sont stockées dans la mémoire, ils serontLa majorité des FPGAs sont à base des mémoires SRAM et donc ellesun autre circuit de mémorisation du programme de configuration, tel qu'une mémoireLa cellule ElleFigureFournisseurs des circuits logiLesPLDCircuit logiqueprogrammableP.A.LetF.P.L.SP.A.L CMOS Effaçable ElectriquementP.A.L à Fusibles BipolairesG.A.L EffaçableElectriquementP.A.L Effaçable aux U.V.L.C.AC.P.L.DF.PG.AFPGA2 Outils dePLDcomposant.FigDéfinir manuellement lesamaLa conception schématipour des fonctions de circuit, telles que des diviseurs d'horloge.

Des composants faits surTable 2.A B S Cout0 01 10 11 0Un additionneur additionne deux entrées binaires A et B, pour produire a la sortieABUne fois que les équationstravers la modification schématique est lourde.Figure 2.Il convient à noter que quel que soit le niveau d'abstraction, l'outil de synthèse2 LActuellement la densité de fonctions logiques (portes et bascules) intégrée dans lesouti pour développer les circuits.circuits. Ils ont donc créé des langages dits de haut niveau à saLanguage) et Verilog. Ces deux langages bénéficient ducircuitécrite pour un circuit peut être facilemeque ces langages dits de haut niveau permettent de matérialiser les structures électroniquesLe VERILOG : Historique et descriptionLa1989, Cadence devientInterface : PLI).

En 1990, Verilog est ouvert au domaine public ce qui permet à chacun dePour ces équipes de conception, les points positifs de ce langage sont : une facilité deb VHDL : Historique et descriptionLe VHDL est un langage de description matériel,description matérielle numérique unique.

Le langage VHDL (VHSIClogicielsPourquoi un langage de description ?cEn VHDL, une structure logiqued'une architectureLIBRARY2 Traduction et optimisationLale niveau structurel décrit le câblage des composants élémentaires,le niveau flot de données décrit les transformations d'un flot de données dele niveau comportemental décrit le fonctionnement par des blocs programmestoute la structure logique. Lorsque des composants de ce circuit sont décrits de manièreune fonctionnalité équivalente encircuit.

Il c2 Partitionnement placement et routageLa2 SimulationLaLeComme2 ConEn2 LPerformancesComme ils tirent parti du parallélisme matériel, les FPGAs offrent une puissance deBerkeley Design Technology Incapplicationss2 Temps de mise sur le marchéFace à des préoccupations croissantes concernant les temps de mise sur le marché, la27multiplication des outilsPropriété Intellectuelle (fonction précompilées) utiles pour le contrôle et le traitement de2 CoûtLes rrents (NRE) des ASIC personnalisées sont biendépart que requièrent le2 FiabilitéTandis que les outils logiciels fournissent l'environnement de programmation, lesinstruction peut s'exécuter à la fois ; c'est pourquoi les systèmes basés processeur risquent2 MaintenanceComme nous l'avons vu, les circuits FPGA sont évolutifs et v2 Lfacilité de programmation (et reprogrammation).

ContrairePour une application visant la mise sur le mmise au point de protcomplet.microprocesinclure des macros de sigFPGA.performance.

2) Lperformant, consommant un minimum de puissance, il est nécessaire de respecter unCeci est dû au fait queles applications.

Ceupartagent les même caractéristiques de base et chaqsortieFiguresynthèse de qualité.

2) La carte de développement DE2PrésentationLa carte de développement DE2 a été utilisée comme plate(61LV25616) : 256 k*16 (10ns)), SDRAM (IS42S16400convertisseur audio (Codec Audio (FigureCODEC AUDIONLe WM8731 est un CODEC Audio qui se trouve sur la carte DE2.ions comme parlesFigureChapitre IIIArithmétique sur FPGA3 ARITHMETIQUE SUR FPGA3 IntroductionDans l'arithmétique des ordinateurs deux principaux concepts fondamentaux qui ont3La Décision si on doit utiliser la représentation à virgule fixe ou en virgule flottanteeAperçu des représentations de nombres.Système denumérationvirgule fixeconventionnel unconventionnelvirgule flottanteconventionnel unconventionnel3 Les nombres en virgule fixeNous devrons en premier temps voir les systèmes de numération en virgule fixe3 Représentation des nombres non signés (positifs)Cette représentation permet le codage binaire des nombres2N.A଴ൌ:ssrs;ଶൌstଷᇣᇤᇥ൅stଶᇣᇤᇥ8൅rtଵ൅st଴ᇣᇤᇥ5ൌsuଵ଴ 3 Représentation des nombres signés :Une méthode desontே?6comporte quelques inconvénients.

La dpart, ce codage implique des algorithmes complexes pour des opérations arithmétiques tellestion.Représentation en signe et valeur absolue de nombres de quatre bits.Représentations biaiséesX appartenant à Z, de sorte que X + R soit toujours positif.

XR = 2n R = 2 n-.n1. 2n1-ŀn+1,nŀavec R =23. le bit de poids fort indique le signe du nombre.

Contrairement àReprésentation biaisée (R = 23) de nombres entreComplément a deux (2c)La méthode du complément:L:Rr2NReprésentation en complément à deux de nombres entreComplément a un (1c):Rrs bits du nombren n-fonctionnementReprésentation en complément à un de nombres entreLa figure 3.6 résume les caractéristiques des diverses représentations binairesRésumé des diverses représentations des nombres étudiées.UnIntéressons3 Nombres à chiffre signéLe système à chiffre signé (Signed Digit Numbers SD) diffère des systèmes binaires$.

Prenant comme exemple le codage du21510 10 10 ͳ$SD1510 10 210 10 ͳ$1SD1510 10 10 + 110 ͳ$11SD (3.7)10 2 ͳ$SD ͳ$0ͳ$CSD3 Le code (canonical signed digit) fractionnelLa plus part des algorithmes de DSP exigent l'exécution des nombres fractionnés.LyHTz ݕL:yHT;z, etL:Tz;Hy. Cette dernière produira malheureusement une grande erreur deݔzLyzen utilisant uneLzFsݕrLyHTzL:yHT;zݕsLTzHyL:Tz;HyݕtLTtETvETzL:Tt;E:Tv;E:Tz;ݕuLTFTzLTF:T8) (3.9)Les nombres en virgule flottantenombre est limité. Pournombres exprimables est indépendant du nombre de chiffres significatifsS = indique le signe si le nombre est négatif ou positifE47.

Il0,043523 108 Par contre 0,43523 107une représentation 16 bits (précision rédusur 64 bits (double précision),ou sur 32 bits (simple précision)le signe S ͛ĞdžƉŽƐĂŶƚ La mantisse M18 123111 152115 164les nombres en virgule flottante.3ment2 Introductionle retard global entre l'instant d'acquisition de la donnée et l'instant final du2 Addition binaire2 Semi additionneurout ou