Introduction au FPGA et Modelsim
5 Questions
0 Views

Choose a study mode

Play Quiz
Study Flashcards
Spaced Repetition
Chat to lesson

Podcast

Play an AI-generated podcast conversation about this lesson

Questions and Answers

Quel est le langage de description utilisé dans le composant présenté ?

  • Verilog
  • C++
  • VHDL (correct)
  • Python
  • Quelle version de Modelsim doit être installée pour une utilisation sans licence ?

  • 20.0.0
  • 20.1.1 (correct)
  • 21.0.0
  • 18.5.0
  • Quelles recommandations sont faites concernant la création d'un dossier pour les projets ?

  • Éviter les espaces et les accents (correct)
  • Utiliser un nom de dossier très long
  • Utiliser des noms courts
  • Inclure des espaces et des accents
  • Quels logiciels ou éditeurs peuvent être utilisés en complément de Modelsim ?

    <p>VSCode</p> Signup and view all the answers

    Quel espace de stockage est recommandé pour installer Modelsim ?

    <p>5 Go</p> Signup and view all the answers

    Study Notes

    Introduction

    • The presentation is about LINUX FPGA.
    • The presenter is Laurent Fiack, with email address [email protected]
    • The presenter's office is D212.
    • The presentation is part of a larger series (RTOS 2/43).

    Table of Contents

    • Tutorial Modelsim
    • What is a FPGA?
    • HDL Languages
    • Hardware Presentation

    Installing Modelsim

    Example Code (component_nul.vhd)

    • Create a folder called tuto_modelsim (no spaces or accents)
    • Paste the example code provided (library ieee, entity, architecture etc).
    • Use the correct indentation.

    Why Simulate?

    • Debugging a microcontroller code using a debugger can be simple (step by step execution to isolate issues).
    • FPGA debugging with a complete simulation is harder involving, among others, LUTs and interconnection structures and different timings.
    • Simulation on a FPGA is considerably longer compared to the FPGA operation itself.
    • Simulation allows for extensive verification/testing possibilities, not possible on hardware.

    Testbench Example (component_nul_tb.vhd)

    • Create a test configuration and use a process with wait commands for sequential switching in test values (00, 01, 10, 11).

    Starting/Restarting the Simulation

    • To run the code simulation, using the command 'run -all'.
    • Restarting simulation. use the ‘restart -f’ command
    • Compiling the code in the new test bench, after change, is necessary.

    Automation (using a .do file)

    • Creating automation script files (e.g., .do) for code compilation and simulation helps to streamline repetitive tasks.

    What is a FPGA?

    • FPGAs were invented in 1984.
    • A FPGA (Field Programmable Gate Array) is a reprogrammable integrated circuit.
    • FPGAs are reconfigurable.
    • FPGAs can implement any digital logic circuit with different functions like microprocessors, peripheral etc
    • FPGAs are suitable for tasks requiring flexibility and rapid prototyping compared to application specific integrated circuits (ASIC).

    Digital Circuit

    • A digital circuit manipulates binary information (0/1).
    • Composed of transistors grouped in logic gates (e.g., AND, OR, NOT).
    • Booleans algebra is involved.
    • Logic gates produce new logic values dependently to input and function (AND, OR, NOT).

    Why use FPGAs?

    • FPGAs offer parallelism and high speed,
    • Deterministic timings.
    • Fast simulation and test possibility
    • Reconfigurability in comparison to ASIC, allows flexibility in application re-use vs. highly specialized design.

    Differences (FPGAs vs. Microcontrollers/ASIC)

    • FPGA cost is moderate at large quantities, microcontrollers, are significantly cheaper while ASICs cost exponentially dependent on the complexity.
    • FPGA performance is comparatively high, microcontrollers are more varied but middle performance range, while ASICs are considerably higher depending on design and complexity.
    • Consumption, flexilibity, time to develop is also considered. Both are relative to the task.

    Internal Architecture

    • The internal FPGA architecture details will be discussed in future sessions.

    Logic Variables/Functions

    • Logic variable can take only two values, (True/False), (0/1)
    • A logic function is the result of combining one or more logic variables using boolean operations
    • Logic functions can take one or multiple input values, to produce output results. -Combinational logic is a type of logic circuit where the output depends only on the current input values, and there is no memory for past inputs. This means that the output of the circuit is independent of previous inputs, and it changes immediately in response to any change in the input values .
    • Basic functions are (OR, AND, NOT, XOR)

    Logic Function Representation

    • Includes the table of truth, chronogram, and logic diagrams (gates) for input/output values.

    Logic Function Examples (NOT, OR, AND, XOR)

    • Explanation, symbol, truth table, and timing diagrams are presented for these basic functions. . Combining these basic functions creates more complex functions (NOR, NAND, XNOR...).

    FPGA Implementation

    • Shows a simplified block diagram of a FPGA, highlighting the Logic blocks, LUTs, and input/output blocks.

    Routing in FPGA

    • A block diagram illustrating how components are interconnected inside FPGA. (routing examples)

    LUT (Look-Up Table)

    • Describes the internal structure of a LUT, showing the memory and how data relates to inputs and outputs.

    Configuring a FPGA

    • Describes the steps for configuring FPGA, such as programming the LUTs and interconnects blocks.

    HDL Languages

    • Describes the types of HDL languages, providing example of languages such as VHDL.
    • Explores high and low level synthesis and their differences (compilation steps).
    • Discusses the aspects of why HDL languages are used for designing FPGA circuits.

    Hardware Presentation (DE10-Nano Kit and Cyclone V SoC)

    • Presents the specific FPGA development hardware (DE10-Nano Kit), used in the presentations design.
    • Explains how the internal Cyclone V SoC is comprised of different components (HPS, FPGA, memory).
    • Includes peripherals and connectors.

    Studying That Suits You

    Use AI to generate personalized quizzes and flashcards to suit your learning preferences.

    Quiz Team

    Related Documents

    Description

    Cette présentation aborde les fondamentaux des FPGA et l'utilisation de Modelsim pour la simulation VHDL. Vous apprendrez ce qu'est un FPGA, les langages HDL, ainsi que des conseils pour installer Modelsim et intégrer des exemples de code. Parfait pour les débutants souhaitant se familiariser avec la conception matérielle !

    More Like This

    FPGA Basics Quiz
    5 questions
    FPGA Design: Verilog Basics
    12 questions

    FPGA Design: Verilog Basics

    AccessibleHarmonica avatar
    AccessibleHarmonica
    FPGA LC3 Implementation and SRAM Overview
    12 questions
    Use Quizgecko on...
    Browser
    Browser