Objectifs
|
- Knowledge of digital technology
- Concepts of Boolean algebra
- Some programming concepts are desirable (whatever language)
- This training is intended to electronic engineers who are willing to acquire a strong designing methodology, and to take the best of VHDL language and the associated synthesis and simulation tools for designing Xilinx FPGA
- One PC for two trainees
- Xilinx ISE Design Suite 13.3 Logic Edition
- MicroBlaze implementation, reference cours N2 - IEEE1588 - Precise Time Protocol
- Spartan-6 / Virtex-6 Integrated PCI Express Blockn, reference cours N2 - IEEE1588 - Precise Time Protocol
- Designing with Ethernet MAC logicores, reference cours N2 - IEEE1588 - Precise Time Protocol
- Cours théorique
- Support de cours au format PDF (en anglais) et une version imprimée lors des sessions en présentiel
- Cours dispensé via le système de visioconférence Teams (si à distance)
- Le formateur répond aux questions des stagiaires en direct pendant la formation et fournit une assistance technique et pédagogique
- Au début de chaque demi-journée une période est réservée à une interaction avec les stagiaires pour s'assurer que le cours répond à leurs attentes et l'adapter si nécessaire
- Tout ingénieur ou technicien en systèmes embarqués possédant les prérequis ci-dessus.
- Les prérequis indiqués ci-dessus sont évalués avant la formation par l'encadrement technique du stagiaire dans son entreprise, ou par le stagiaire lui-même dans le cas exceptionnel d'un stagiaire individuel.
- Les progrès des stagiaires sont évalués par des quizz proposés en fin des sections pour vérifier que les stagiaires ont assimilé les points présentés
- En fin de formation, une attestation et un certificat attestant que le stagiaire a suivi le cours avec succès.
- En cas de problème dû à un manque de prérequis de la part du stagiaire, constaté lors de la formation, une formation différente ou complémentaire lui est proposée, en général pour conforter ses prérequis, en accord avec son responsable en entreprise le cas échéant.
Plan du cours
- Structure of an Integrated Circuit
- SSI (small scale integration), TTL
- MSI (medium scale integration), PALs, GALs, PLDs
- LSI (large scale integration), CPLDs
- VLSI (very large scale integration), ASICs, ASSPs, FPGAs
- Development of logical architectures
- Technology constraints
- Interconnection methods (SRAM, Fuse, AntiFuse, Flash)
- Clock distribution
- Logic element types
- Timing issues
- General structure
- CLB and slices notion
- Combinatory logic and registers
- Arithmetical logic
- Distributed memory
- Shift register SRL
- In/Out blocks
- In/Out registers
- DDR registers
- Timing and electric settings and specificities
- Dedicated RAM blocks and use modes
- Customable FIFOs implementation
- Other example of use
- Clocks distribution, DCMs & PLLs
- Global Buffer, local buffer
- DCMs, PLLs and settings
- Dedicated multipliers and DSP48 blocks
- Configuration
- Master, slave, SPI, BPI, JTAG
- Interest of VHDL programming
- Different steps of the design
- Programming
- Simulation
- Synthesis
- Mapping
- Place and Route
- Timing Analysis
- Bitstream generation
- Notion of entity / architecture
- IEEE library use
- Predefined types and objects
- Ports, signals, variables
- Different styles of architecture
- Component instantiation
- Practical lab
- Tools for modeling components
- Concurrent and sequential instructions
- Allocation
- Process(Ssensitivity list, Sequential instructions, Variables)
- Predefined operators and of use extended by using standardized packages
- Concurrent instructions : when, with select, for generate
- Practical lab
- Flip-flop reminder
- Reset management
- Tri-state buffers
- Synchronous process
- Practical lab
- Asynchronous conception and classic tricks
- Metastability and hazards of functioning
- Limits of functional simulation and timing on asynchronous designs: how to get over them?
- Asynchronous event management
- Random
- Data streams
- Synchronous design –advantages-methodology-focusing
- Static timing analysis: how to use it?
- Optimization of performance irrespective of the target
- Pipeline notion
- Practical lab
- A few tricks to avoid
- Potential interpretation incoherencies between the logical synthesis and the simulation : how to avoid it
- Organization of design by functional modules : what routing to choose
- Inference and instancing notions
- When is it important to instantiate primitives or macros ?
- Precautions for an evolutionary and / or re-usable code
- Importance of modules’ name selection and of the nets to facilitate the physical implementation, the simulation and the tuning
- Does the hierarchy have to be preserved during the logical synthesis ?
- Practical lab
- Notion of variable and example of use
- Genericity and automatic configuration of re-usable modules
- Useful predefined attributes in logical synthesis
- Functions and procedures
- Definition of packages and libraries
- Practical lab
- Implementation stream and bitstream generation
- Translate
- Map
- Place and Route (PAR)
- BitGen
- Analysis of MRP and PAR reports
- Main implementation options
- MAP
- PAR
- BITGEN
- Implementation results analysis tools - constraints
- PlanAhead
- FPGA EDITOR
- TIMING ANALYZER
- Introduction to CHIPSCOPE
- Constraints file
- Mealy and Moore machines
- Graphic representations
- Implementation
- VHDL translation
- Design principles of an FSM with two processes
- Reset of a state machine
- Simulation usage to verify the design
- Resource use optimization
- Practical lab
- A few basic rules for the writing of an efficient test bench
- VHDL instructions specific to simulation
- Wait and its various forms
- « Loop »
- Assertions
- Data types
- Timing verification
- Others
- Writing components models intended to make the simulation more realistic
- Use of existing models and simulation packages
- Practical lab
- Integration of « pseudo logic » in order to facilitate the interpretation of the simulation results
- Writing and reading of ASCII files
- Allocation of a data flow from a file - Test vector generation
- Storage of the simulation results in a file
- Command interpreter
- Generating information messages
- Practical lab
Plus d'information
Pour vous enregistrer ou pour toute information supplémentaire, contactez nous par email à l'adresse info@ac6-formation.com.
Les inscriptions aux sessions de formation sont acceptées jusqu'à une semaine avant le début de la formation. Pour une inscription plus tardive nous consulter
Vous pouvez aussi remplir et nous envoyer le bulletin d'inscription
Ce cours peut être dispensé dans notre centre de formation près de Paris ou dans vos locaux, en France ou dans le monde entier.
Les sessions inter-entreprises programmées sont ouvertes dès deux inscrits. Sous condition d'un dossier complet, les inscriptions sont acceptées jusqu'à une semaine avant le début de la formation.
L'inscription à nos formations est soumise à nos Conditions Générales de Vente