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

Subversion Repositories cryptography

[/] [cryptography/] [trunk/] [encryption/] [carrysave_adder.vhd] - Blame information for rev 4

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 4 marcus.erl
----------------------------------------------------------------------------------
2
-- Company: 
3
-- Engineer: 
4
-- 
5
-- Create Date:    17:10:53 10/09/2007 
6
-- Design Name: 
7
-- Module Name:    carrysave_adder - Behavioral 
8
-- Project Name: 
9
-- Target Devices: 
10
-- Tool versions: 
11
-- Description: 
12
--
13
-- Dependencies: 
14
--
15
-- Revision: 
16
-- Revision 0.01 - File Created
17
-- Additional Comments: 
18
--
19
----------------------------------------------------------------------------------
20
library IEEE;
21
use IEEE.STD_LOGIC_1164.ALL;
22
use IEEE.STD_LOGIC_ARITH.ALL;
23
use IEEE.STD_LOGIC_UNSIGNED.ALL;
24
 
25
 
26
 
27
entity carrysave_adder is
28
port (p1,p2,p3,p4,p5,p6,p7,p8,p9 :in std_logic_vector ( 15 downto 0);
29
       s1 : out std_logic_vector (15 downto 0);
30
       c1 :out std_logic_vector (15 downto 0));
31
 
32
 
33
end carrysave_adder;
34
 
35
architecture Behavioral of carrysave_adder is
36
 
37
 
38
 component full_adder
39
  port (a,b,c :in std_logic_vector(15 downto 0) ;
40
        sf,cf :out std_logic_vector(15 downto 0) );
41
  end component;
42
 
43
signal su1,ca1 :std_logic_vector (15 downto 0);
44
signal su2,ca2 :std_logic_vector (15 downto 0);
45
signal su3,ca3 :std_logic_vector (15 downto 0);
46
signal su4,ca4 :std_logic_vector (15 downto 0);
47
signal su5,ca5 :std_logic_vector (15 downto 0);
48
signal su6,ca6 :std_logic_vector (15 downto 0);
49
 
50
 
51
begin
52
 fa0 : full_adder port map(p1,p2,p3,su1,ca1);
53
 fa1 : full_adder port map(p4,p5,p6,su2,ca2);
54
 fa2 : full_adder port map(p7,p8,p9,su3,ca3);
55
 fa3 : full_adder port map(ca1,su1,su2,su4,ca4);
56
 fa4 : full_adder port map(ca3,su3,ca2,su5,ca5);
57
 fa5 : full_adder port map(ca4,su4,su5,su6,ca6);
58
 fa6 : full_adder port map(ca6,su6,ca5,s1,c1);
59
 
60
 
61
 
62
 
63
 
64
end Behavioral;
65
 

powered by: WebSVN 2.1.0

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