Filter posts by Category Or Tag of the Blog section!

VHDL basics

Friday, 10 April 2015

VHDL (VHSIC Hardware Description Language) is a hardware description language used for designing digital electronic systems. It was developed as a standard by the U.S. Department of Defense in the 1980s and is widely used in the field of digital design and electronic circuitry. VHDL allows designers to describe the behavior and structure of digital systems at various levels of abstraction. Here are the basics of VHDL programming language:


  1. Entity-architecture Model:
    • VHDL programs are structured using an entity-architecture model.
    • The entity declaration describes the inputs, outputs, and other properties of a digital circuit.
    • The architecture defines the behavior and structure of the circuit.
  2. Signals and Data Types:
    • Signals are used to represent data flow within a circuit.
    • VHDL supports various data types, including STD_LOGIC, INTEGER, BOOLEAN, and more.
    • Data types define the possible values and operations on signals.
  3. Concurrent and Sequential Statements:
    • Concurrent statements define the behavior of the circuit in parallel.
    • Examples of concurrent statements include assignments, conditional statements, and case statements.
    • Sequential statements describe the behavior of the circuit sequentially.
    • Examples of sequential statements include IF-ELSE, FOR loops, and process statements.
  4. Components and Instantiation:
    • Components allow designers to create reusable modules.
    • Components can be instantiated multiple times within a circuit.
    • Instantiation involves connecting the input and output ports of a component to signals in the main circuit.
  5. Simulation and Synthesis:
    • VHDL supports both simulation and synthesis.
    • Simulation allows designers to verify the functionality of their design using software simulators.
    • Synthesis converts the VHDL code into a gate-level representation that can be implemented on a specific hardware platform.


Here's a simple example of VHDL code that describes a 2-to-1 multiplexer:


entity MUX2to1 is

  port (

    A, B : in STD_LOGIC;

    S    : in STD_LOGIC;

    F    : out STD_LOGIC


end MUX2to1;

architecture Behavioral of MUX2to1 is


  process (A, B, S)


    if S = '0' then

      F <= A;


      F <= B;

    end if;

  end process;

end Behavioral;


In this code, the entity declaration defines the input (A, B, S) and output (F) ports of the multiplexer. The architecture describes the behavior of the circuit using a process statement. Depending on the value of the select signal S, the output F is assigned either the value of input A or input B.


VHDL provides a powerful and structured approach to describe digital circuits. It enables designers to model complex systems, perform simulations, and synthesize designs for implementation on hardware platforms. This overview covers the basics of VHDL, including entity-architecture model, signals and data types, concurrent and sequential statements, components and instantiation, and simulation and synthesis. VHDL is widely used in the design and verification of digital systems.


Category: Software

Tags: VHDL

comments powered by Disqus