------------------------------------------------------------
-- Copyright: 2011 George Mason University, Virginia USA
--            http://www.iis.ee.ethz.ch/~sha3
------------------------------------------------------------
-- =====================================================================

-- Copyright  2010-2011 by Cryptographic Engineering Research Group (CERG),

-- ECE Department, George Mason University

-- Fairfax, VA, U.S.A.

-- =====================================================================


library ieee;
use ieee.std_logic_1164.all;	
use work.sha3_pkg.all;
use work.keccak_pkg.all;

entity gmu_keccak_top is
        port (
                ClkxCI         : in  std_logic;  -- Rising Edge Triggered Clock

                ScanInxTI      : in  std_logic;
                ScanOutxTO     : out std_logic;
                ScanEnxTI      : in  std_logic;
                RstxRBI        : in  std_logic;  -- Active-low, asynchronous Reset Signal

                InEnxSI        : in  std_logic;  -- Input Enable

                FinBlockxSI    : in  std_logic;  -- Final Block

                DataxDI        : in  std_logic_vector(1087 downto 0);  -- Input Data

                OutEnxSO       : out std_logic;  -- Output Enable

                PenUltCyclexSO : out std_logic;  -- Penultimate Cycle

                DataxDO        : out std_logic_vector(255 downto 0)  -- Output Data

        );         
end gmu_keccak_top;


architecture structure of gmu_keccak_top is 	 	
	signal sel_xor, sel_final, wr_state :std_logic;
	signal ld_rdctr, en_rdctr  : std_logic;	  
	signal rd_ctr : std_logic_vector(4 downto 0);
begin
	
	control_gen : entity work.gmu_keccak_control(struct)		
		port map (clk => ClkxCI, rst => RstxRBI, 
		InEnxSI => InEnxSI, FinBlockxSI => FinBlockxSI, OutEnxSO => OutEnxSO, PenUltCyclexSO => PenUltCyclexSO,
		sel_xor=>sel_xor, sel_final=>sel_final, wr_state=>wr_state, rd_ctr=>rd_ctr	);


	datapath_gen : entity work.gmu_keccak_datapath(struct)
		port map (
		clk => ClkxCI, rst => RstxRBI, din => DataxDI, dout => DataxDO,
		sel_xor=>sel_xor, sel_final=>sel_final, wr_state=>wr_state, rd_ctr=>rd_ctr		
		);	
   
end structure;		


Generated on Tue Nov 22 15:16:34 CET 2011
Home