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

Subversion Repositories aes_decry_ip_128bit

[/] [aes_decry_ip_128bit/] [trunk/] [testbench/] [misc_tb/] [tb_key_scheduler.vhd] - Blame information for rev 5

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 5 ghegde
library ieee;
2
use ieee.std_logic_1164.all;
3
 
4
entity tb_key_schedular is
5
end tb_key_schedular;
6
 
7
architecture beh_tb_key_schedular of tb_key_schedular is
8
 
9
   component key_scheduler
10
   port(
11
        key_in  : in std_logic_vector(127 downto 0);
12
         key_out : out std_logic_vector(127 downto 0);
13
         valid_in : in std_logic;--Input key is valid
14
         key_ready : out std_logic;
15
         round: in std_logic_vector(3 downto 0);
16
         clk,reset: in std_logic
17
       );
18
   end component;
19
 
20
   constant clk_period: time := 10 ns;
21
   signal key_in,key_out:std_logic_vector(127 downto 0);
22
   signal valid_in,key_ready,reset,clk : std_logic;
23
   signal round : std_logic_vector(3 downto 0);
24
 
25
begin
26
 
27
  uut:key_scheduler
28
  port map(key_in=>key_in,key_out=>key_out,valid_in=>valid_in,key_ready=>key_ready,round=>round,reset=>reset,clk=>clk);
29
 
30
  clk_process:process
31
  begin
32
     clk<='1';
33
     wait for clk_period/2;
34
     clk<='0';
35
         wait for clk_period/2;
36
  end process;
37
 
38
  stimulus:process
39
  begin
40
     reset<='1';
41
         valid_in<='0';
42
         round <=(others =>'0');
43
 
44
         wait for 5*clk_period;
45
         reset<='0';
46
 
47
         wait for 2 ns;
48
         valid_in <= '1';
49
         key_in<=x"000102030405060708090a0b0c0d0e0f";
50
 
51
     wait until key_ready <= '1';
52
     wait for clk_period;
53
     round <= "0000";
54
 
55
         wait for clk_period;
56
     round <= "0001";
57
 
58
         wait for clk_period;
59
     round <= "0010";
60
 
61
         wait for clk_period;
62
     round <= "0011";
63
 
64
         wait for clk_period;
65
     round <= "0100";
66
 
67
         wait for clk_period;
68
     round <= "0101";
69
 
70
         wait for clk_period;
71
     round <= "0110";
72
 
73
         wait for clk_period;
74
     round <= "0111";
75
 
76
         wait for clk_period;
77
     round <= "1000";
78
 
79
         wait for clk_period;
80
     round <= "1001";
81
 
82
         wait for clk_period;
83
     round <= "1010";
84
 
85
         wait for 20*clk_period;
86
         round <= "1000";
87
     wait;
88
 
89
  end process;
90
 
91
end beh_tb_key_schedular;

powered by: WebSVN 2.1.0

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