OpenCores
URL https://opencores.org/ocsvn/generic_booth_multipler/generic_booth_multipler/trunk

Subversion Repositories generic_booth_multipler

[/] [generic_booth_multipler/] [trunk/] [rtl/] [modules/] [00.Adder.vhd] - Blame information for rev 6

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 2 alimpk
library IEEE;
2
use IEEE.STD_LOGIC_1164.ALL;
3
 
4
entity Adder is
5 6 alimpk
        generic(
6
                size : integer:= 4
7
        );
8 2 alimpk
        port(
9 6 alimpk
                A               : in  std_logic_vector(size-1 downto 0);
10
                B               : in  std_logic_vector(size-1 downto 0);
11
                Cin             : in  std_logic;
12
                S               : out std_logic_vector(size-1 downto 0);
13 2 alimpk
                Cout    : out std_logic);
14
end Adder;
15
 
16
architecture Behavioral of Adder is
17
        component FullAdder is
18
                port(
19
                        A        :in    std_logic;
20
                        B        :in    std_logic;
21
                        Cin :in std_logic;
22
                        Sum :out std_logic;
23
                        Cout:out std_logic);
24
        end component;
25
        signal carry : std_logic_vector(A'length downto 0);
26
begin
27
        carry(0) <= cin;
28
        cout <= carry(A'length);
29
        AdderGen : for i in A'range generate
30
                FA : FullAdder port map(A(i),B(i),carry(i),S(i),carry(i+1));
31
        end generate;
32
 
33
 
34
end Behavioral;
35
 

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.