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

Subversion Repositories salsa20

[/] [salsa20/] [trunk/] [rtl/] [salsaa.vhd] - Blame information for rev 6

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 6 lukasz.dzi
--
2
-- Copyright 2012 iQUBE research
3
--
4
-- This file is part of Salsa20IpCore.
5
--
6
-- Salsa20IpCore is free software: you can redistribute it and/or modify
7
-- it under the terms of the GNU Lesser General Public License as published by
8
-- the Free Software Foundation, either version 3 of the License, or
9
-- (at your option) any later version.
10
--
11
-- Salsa20IpCore is distributed in the hope that it will be useful,
12
-- but WITHOUT ANY WARRANTY; without even the implied warranty of
13
-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14
-- GNU Lesser General Public License for more details.
15
--
16
-- You should have received a copy of the GNU Lesser General Public License
17
-- along with Salsa20IpCore.  If not, see <http://www.gnu.org/licenses/>.
18
--
19
-- contact: Rúa Fonte das Abelleiras s/n, Campus Universitario de Vigo, 36310, Vigo (Spain)
20
-- e-mail: lukasz.dzianach@iqube.es, info@iqube.es
21
-- 
22
 
23
library IEEE;
24
use IEEE.std_logic_1164.all;
25
use IEEE.NUMERIC_STD.all;
26
 
27
 
28
entity salsaa is
29
        port (
30
                clk : in std_logic;
31
                reset : in std_logic;
32
 
33
                key : in std_logic_vector(255 downto 0);
34
                nonce : in std_logic_vector(63 downto 0);
35
                start : in std_logic;
36
 
37
                data_valid : out std_logic;
38
 
39
                data : out std_logic_vector(31 downto 0);
40
                data_req : in std_logic
41
 
42
        );
43
end entity salsaa;
44
 
45
architecture rtl of salsaa is
46
 
47
signal mc_data          : std_logic_vector(511 downto 0);
48
signal mc_restart       : std_logic;
49
signal mc_busy          : std_logic;
50
 
51
begin
52
 
53
salsaa_dm_0: entity work.salsaa_dm
54
port map(
55
        clk => clk,
56
        reset => reset,
57
 
58
        -- iface for user
59
        data => data,
60
        data_req => data_req,
61
 
62
        data_valid => data_valid,
63
 
64
        -- iface to salsaa_mc
65
        mc_data => mc_data,
66
        mc_restart => mc_restart,
67
        mc_busy => mc_busy
68
);
69
 
70
salsaa_mc_0: entity work.salsaa_mc
71
port map(
72
        clk => clk,
73
        reset => reset,
74
 
75
        -- iface for user
76
        key => key,
77
        nonce => nonce,
78
        start => start,
79
 
80
        -- iface to salsaa_dc
81
        mc_data => mc_data,
82
        mc_restart => mc_restart,
83
        mc_busy => mc_busy
84
);
85
 
86
main:   process(clk) is
87
begin
88
        if (clk'event and clk='1') then
89
                if (reset='1') then
90
                else
91
                end if;
92
        end if;
93
end process;
94
 
95
 
96
end architecture rtl;

powered by: WebSVN 2.1.0

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