+ All Categories
Home > Documents > VHDL Tut 4 - XilinX (Bit Adders)

VHDL Tut 4 - XilinX (Bit Adders)

Date post: 05-Apr-2018
Category:
Upload: tasneem-ali
View: 240 times
Download: 1 times
Share this document with a friend

of 21

Transcript
  • 7/31/2019 VHDL Tut 4 - XilinX (Bit Adders)

    1/21

    1-Bit Adder & 4-Bit Adder

  • 7/31/2019 VHDL Tut 4 - XilinX (Bit Adders)

    2/21

    Design a 1-bit adder using VHDL.

    Design a 4-bit adder with 4x(1-bit adders)using VHDL.

  • 7/31/2019 VHDL Tut 4 - XilinX (Bit Adders)

    3/21

    File New Project Enter the Project name and location.

    Select the preferred language (VHDL)

    Sources New Source VHDL Module

    Test Bench Waveform

    VHDL Test Bench

  • 7/31/2019 VHDL Tut 4 - XilinX (Bit Adders)

    4/21

    How to test your VHDL code?

    Test bench Waveform

    VHDL Test Bench

    On the FPGA itself.

  • 7/31/2019 VHDL Tut 4 - XilinX (Bit Adders)

    5/21

    Inputs: A (1 bit)

    B (1 bit)

    Cin (1 bit)

    Outputs Sum = A xor B xor Cin

    Cout = AB + BC + AC

    BA

    SUM

    CinCout

  • 7/31/2019 VHDL Tut 4 - XilinX (Bit Adders)

    6/21

  • 7/31/2019 VHDL Tut 4 - XilinX (Bit Adders)

    7/21

    VHDL Code (1-Bit Adder)

    entity isPort( );

    end ;

    architecture of is

    begin{Code implementation}

    end;

  • 7/31/2019 VHDL Tut 4 - XilinX (Bit Adders)

    8/21

    Notes Libraries of the IEEE are analogous to the Libraries Import in JAVA.

    Entity: defines the Input (in) & Output (out) ports.

    Architecture: Comprises the Body of the code (Analogous to the Main

    Method in JAVA) STD_LOGICmeans the value of this port will be 0 or 1

    STD_LOGIC_VECTORmeans the value of this port will be a Vector

    (array) of Zeros and Ones.

    SUM

  • 7/31/2019 VHDL Tut 4 - XilinX (Bit Adders)

    9/21

    Unit 1

    1-BitAdder

    B0A0

    SUM 0

    Cin= 01-BitAdder

    B1A1

    SUM 1

    1-BitAdder

    B2A2

    SUM 2

    1-BitAdder

    B3A3

    SUM 3

    Cout

    InputsA (4 bits)

    B (4 bits)

    OutputsSum (4 bits)

    Cout (1 bit)

    Unit 2Unit 3Unit 4

  • 7/31/2019 VHDL Tut 4 - XilinX (Bit Adders)

    10/21

    Unit 1

    1-BitAdder

    Cin=0

    1-BitAdder

    1-BitAdder

    1-BitAdder

    InputsA (4 bits)

    B (4 bits)

    OutputsSum (4 bits)

    Cout (1 bit)

    Unit 2Unit 3Unit 4

  • 7/31/2019 VHDL Tut 4 - XilinX (Bit Adders)

    11/21

    Unit 1

    1-BitAdder

    Cin= 01-BitAdder

    1-BitAdder

    1-BitAdder

    : 3 2 1 0A (4 bits) : 0 1 1 0B (4 bits) : 1 0 1 1

    ---------------------------------

    Sum (4 bits) : 1 1 1 1

    Cout (1 bit) : 0 0 1 0

    Unit 2Unit 3Unit 4

    Cout, w3, w2, w1

    Sum(3), Sum(2), Sum(1), Sum(0)

    B(3), B(2), B(1), B(0)

    A(3), A(2), A(1), A(0)

  • 7/31/2019 VHDL Tut 4 - XilinX (Bit Adders)

    12/21

  • 7/31/2019 VHDL Tut 4 - XilinX (Bit Adders)

    13/21

    Entity Declaration Specifying the circuits input & output ports.

    Input ports : A represents : A(0), A(1), A(2), A(3). B represents : B(0), B(1), B(2), B(3).

    Output ports: SUM represents : SUM(0), SUM(1), SUM(2), SUM(3) Cout

    entity adder4 is

    Port ( A : in STD_LOGIC_VECTOR (3 downto 0);B : in STD_LOGIC_VECTOR (3 downto 0);

    sum : out STD_LOGIC_VECTOR (3 downto 0);cout : out STD_LOGIC);

    end adder4;

  • 7/31/2019 VHDL Tut 4 - XilinX (Bit Adders)

    14/21

    Architecture

    Component and Signalare placed above theBegin and End of the

    Architecture

  • 7/31/2019 VHDL Tut 4 - XilinX (Bit Adders)

    15/21

    Architecture Component

    Object of the (1-bitadder)

    Analogous to the

    Constructor headings inJava, however its

    initializations(architecture) are in the

    bitadder file

  • 7/31/2019 VHDL Tut 4 - XilinX (Bit Adders)

    16/21

    Architecture

    Signalw1, w2, w3 represents the

    Carry outs of the 1-Bit

    adder UNITs (1,2,3) -Inside the (4 Bit Adder)

    w1, w2, w3Temporary values

  • 7/31/2019 VHDL Tut 4 - XilinX (Bit Adders)

    17/21

    1. In the Main Method / 4-Bit adder architecture

    Student A = new Student (Name, ID); Student B = new Student (Name, ID);

    2. Calls the Constructor / Component

    (VHDL) The Component

    represents the JAVAConstructor heading ONLY

    Public Student( N , ID )

  • 7/31/2019 VHDL Tut 4 - XilinX (Bit Adders)

    18/21

    1. In the Main Method / 4-Bit adder architecture

    Student A = new Student (Name, ID); Student B = new Student (Name, ID);

    2. Calls the Constructor / Component

    (VHDL) The Component

    represents the JAVAConstructor heading ONLY

    Public Student( N , ID )

    Mapping

    with the

    Port

    JAVA : The Constructor has

    Inputs Only !!

    Label

  • 7/31/2019 VHDL Tut 4 - XilinX (Bit Adders)

    19/21

    3. The Constructor Body / 1-Bit adder file

    .

    * VHDL (Output/Returned values) are returned in the brackets.

    * Java (Output/ Returned values) are stored to a NEW variable.

    The Sum and Coutvalues will be returned

    back to the units in

    the Main 4-Bit AdderArchitecture.

  • 7/31/2019 VHDL Tut 4 - XilinX (Bit Adders)

    20/21

    Unit 1

    1-Bit

    Adder

    Cin= 01-Bit

    Adder

    1-Bit

    Adder

    1-Bit

    Adder

    Unit 2Unit 3Unit 4

  • 7/31/2019 VHDL Tut 4 - XilinX (Bit Adders)

    21/21

    Feel Free to ask any question and help inimproving these slides by your highly

    appreciated feedback.


Recommended