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

Subversion Repositories idea

[/] [idea/] [trunk/] [simulation/] [idea_machine/] [idea_encryptor.pat] - Rev 9

Compare with Previous | Blame | View Log

--  File Name     :  idea_encryptor.pat                                          --
--  Description   :  The test patterns of the encryption block of idea processor --
--                   for the normal verification of the structural view          --
--                   with zero delay                                             --
--  Purpose       :  To be used by ASIMUT                                        --
--  Date          :  Aug 23, 2001                                                --
--  Version       :  1.1                                                         --
--  Author        :  Martadinata A.                                              --
--  Address       :  VLSI RG, Dept. of Electrical Engineering ITB                --
--                   Bandung, Indonesia                                          --
--  E-mail        :  marta@ic.vlsi.itb.ac.id                                     --

in   vdd;;
in   vss;;;

in   x1(15 downto 0) X;;
in   x2(15 downto 0) X;;
in   x3(15 downto 0) X;;
in   x4(15 downto 0) X;;;

in   z1(15 downto 0) X;;
in   z2(15 downto 0) X;;
in   z3(15 downto 0) X;;
in   z4(15 downto 0) X;;
in   z5(15 downto 0) X;;
in   z6(15 downto 0) X;;;

in   z19(15 downto 0) X;;
in   z29(15 downto 0) X;;
in   z39(15 downto 0) X;;
in   z49(15 downto 0) X;;;

in   clk;;
in   reset;;;
in   start;;
in   key_ready;;

out  round(2 downto 0);;
out  en_key_out;;
out  finish;;

out  y1(15 downto 0) X;;
out  y2(15 downto 0) X;;
out  y3(15 downto 0) X;;
out  y4(15 downto 0) X;;

begin
-- for a 64-bit input data 0001000200030004 (x1=0001, x2=0002, x3=0003, x4=0004) 
-- and the 52 16-bit sub-keys z11=0001, z21=0002, z31=0003, z41=0004, z51=0005, z61=0006
--                            z12=0001, z22=0002, z32=0003, z42=0004, z52=0005, z62=0006
--                            z13=0001, z23=0002, z33=0003, z43=0004, z53=0005, z63=0006
--                            z14=0001, z24=0002, z34=0003, z44=0004, z54=0005, z64=0006
--                            z15=0001, z25=0002, z35=0003, z45=0004, z55=0005, z65=0006
--                            z16=0001, z26=0002, z36=0003, z46=0004, z56=0005, z66=0006
--                            z17=0001, z27=0002, z37=0003, z47=0004, z57=0005, z67=0006
--                            z18=0001, z28=0002, z38=0003, z48=0004, z58=0005, z68=0006
--                            z19=0001, z29=0002, z39=0003, z49=0004

-- round 1
path_00  : 1 0  0000 0000 0000 0000  0000 0000 0000 0000 0000 0000 
                                     0000 0000 0000 0000 0 1 0 0  ?*** ?* ?*  ?**** ?**** ?**** ?****; 
path_00  : 1 0  0000 0000 0000 0000  0000 0000 0000 0000 0000 0000
                                     0000 0000 0000 0000 1 1 0 0  ?*** ?* ?*  ?**** ?**** ?**** ?****;
path_00  : 1 0  0000 0000 0000 0000  0000 0000 0000 0000 0000 0000
                                     0000 0000 0000 0000 0 0 0 0  ?*** ?* ?*  ?**** ?**** ?**** ?****;
path_00  : 1 0  0000 0000 0000 0000  0000 0000 0000 0000 0000 0000
                                     0000 0000 0000 0000 1 0 0 0  ?*** ?* ?*  ?**** ?**** ?**** ?****;
path_00  : 1 0  0000 0000 0000 0000  0000 0000 0000 0000 0000 0000 
                                     0000 0000 0000 0000 0 0 0 0  ?*** ?* ?*  ?**** ?**** ?**** ?****; 
path_00  : 1 0  0000 0000 0000 0000  0000 0000 0000 0000 0000 0000 
                                     0000 0000 0000 0000 1 0 1 1  ?*** ?* ?*  ?**** ?**** ?**** ?****; 
path_11  : 1 0  0001 0002 0003 0004  0001 0002 0003 0004 0005 0006 
                                     0000 0000 0000 0000 0 0 1 1  ?*** ?* ?*  ?**** ?**** ?**** ?****;

path_21  : 1 0  0001 0002 0003 0004  0001 0002 0003 0004 0005 0006
                                     0000 0000 0000 0000          0100000 0 0 0 ?**** ?**** ?**** ?****;
path_31  : 1 0  0001 0002 0003 0004  0001 0002 0003 0004 0005 0006
                                     0000 0000 0000 0000          0010000 0 0 0 ?**** ?**** ?**** ?****;
path_41  : 1 0  0001 0002 0003 0004  0001 0002 0003 0004 0005 0006
                                     0000 0000 0000 0000          0001000 0 0 0 ?**** ?**** ?**** ?****;
path_51  : 1 0  0001 0002 0003 0004  0001 0002 0003 0004 0005 0006
                                     0000 0000 0000 0000          0000100 0 0 0 ?**** ?**** ?**** ?****;
path_61  : 1 0  0001 0002 0003 0004  0001 0002 0003 0004 0005 0006
                                     0000 0000 0000 0000          0000010 0 0 0 ?**** ?**** ?**** ?****;
path_71  : 1 0  0001 0002 0003 0004  0001 0002 0003 0004 0005 0006
                                     0000 0000 0000 0000          0000001 0 0 0 ?**** ?**** ?**** ?****;

-- round 2
path_12  : 1 0  0001 0002 0003 0004  0001 0002 0003 0004 0005 0006
                                     0000 0000 0000 0000          1000000 0 1 0 ?**** ?**** ?**** ?****;
path_22  : 1 0  0001 0002 0003 0004  0001 0002 0003 0004 0005 0006
                                     0000 0000 0000 0000          0100000 0 1 0 ?**** ?**** ?**** ?****;
path_32  : 1 0  0001 0002 0003 0004  0001 0002 0003 0004 0005 0006
                                     0000 0000 0000 0000          0010000 0 1 0 ?**** ?**** ?**** ?****;
path_42  : 1 0  0001 0002 0003 0004  0001 0002 0003 0004 0005 0006
                                     0000 0000 0000 0000          0001000 0 1 0 ?**** ?**** ?**** ?****;
path_52  : 1 0  0001 0002 0003 0004  0001 0002 0003 0004 0005 0006
                                     0000 0000 0000 0000          0000100 0 1 0 ?**** ?**** ?**** ?****;
path_62  : 1 0  0001 0002 0003 0004  0001 0002 0003 0004 0005 0006
                                     0000 0000 0000 0000          0000010 0 1 0 ?**** ?**** ?**** ?****;
path_72  : 1 0  0001 0002 0003 0004  0001 0002 0003 0004 0005 0006
                                     0000 0000 0000 0000          0000001 0 1 0 ?**** ?**** ?**** ?****;

-- round 3
path_13  : 1 0  0001 0002 0003 0004  0001 0002 0003 0004 0005 0006
                                     0000 0000 0000 0000          1000000 0 1 0 ?**** ?**** ?**** ?****;
path_23  : 1 0  0001 0002 0003 0004  0001 0002 0003 0004 0005 0006
                                     0000 0000 0000 0000          0100000 0 1 0 ?**** ?**** ?**** ?****;
path_33  : 1 0  0001 0002 0003 0004  0001 0002 0003 0004 0005 0006
                                     0000 0000 0000 0000          0010000 0 1 0 ?**** ?**** ?**** ?****;
path_43  : 1 0  0001 0002 0003 0004  0001 0002 0003 0004 0005 0006
                                     0000 0000 0000 0000          0001000 0 1 0 ?**** ?**** ?**** ?****;
path_53  : 1 0  0001 0002 0003 0004  0001 0002 0003 0004 0005 0006
                                     0000 0000 0000 0000          0000100 0 1 0 ?**** ?**** ?**** ?****;
path_63  : 1 0  0001 0002 0003 0004  0001 0002 0003 0004 0005 0006
                                     0000 0000 0000 0000          0000010 0 1 0 ?**** ?**** ?**** ?****;
path_73  : 1 0  0001 0002 0003 0004  0001 0002 0003 0004 0005 0006
                                     0000 0000 0000 0000          0000001 0 1 0 ?**** ?**** ?**** ?****;

-- round 4
path_14  : 1 0  0001 0002 0003 0004  0001 0002 0003 0004 0005 0006
                                     0000 0000 0000 0000          1000000 0 1 0 ?**** ?**** ?**** ?****;
path_24  : 1 0  0001 0002 0003 0004  0001 0002 0003 0004 0005 0006
                                     0000 0000 0000 0000          0100000 0 1 0 ?**** ?**** ?**** ?****;
path_34  : 1 0  0001 0002 0003 0004  0001 0002 0003 0004 0005 0006
                                     0000 0000 0000 0000          0010000 0 1 0 ?**** ?**** ?**** ?****;
path_44  : 1 0  0001 0002 0003 0004  0001 0002 0003 0004 0005 0006
                                     0000 0000 0000 0000          0001000 0 1 0 ?**** ?**** ?**** ?****;
path_54  : 1 0  0001 0002 0003 0004  0001 0002 0003 0004 0005 0006
                                     0000 0000 0000 0000          0000100 0 1 0 ?**** ?**** ?**** ?****;
path_64  : 1 0  0001 0002 0003 0004  0001 0002 0003 0004 0005 0006
                                     0000 0000 0000 0000          0000010 0 1 0 ?**** ?**** ?**** ?****;
path_74  : 1 0  0001 0002 0003 0004  0001 0002 0003 0004 0005 0006
                                     0000 0000 0000 0000          0000001 0 1 0 ?**** ?**** ?**** ?****;

-- round 5
path_15  : 1 0  0001 0002 0003 0004  0001 0002 0003 0004 0005 0006
                                     0000 0000 0000 0000          1000000 0 1 0 ?**** ?**** ?**** ?****;
path_25  : 1 0  0001 0002 0003 0004  0001 0002 0003 0004 0005 0006
                                     0000 0000 0000 0000          0100000 0 1 0 ?**** ?**** ?**** ?****;
path_35  : 1 0  0001 0002 0003 0004  0001 0002 0003 0004 0005 0006
                                     0000 0000 0000 0000          0010000 0 1 0 ?**** ?**** ?**** ?****;
path_45  : 1 0  0001 0002 0003 0004  0001 0002 0003 0004 0005 0006
                                     0000 0000 0000 0000          0001000 0 1 0 ?**** ?**** ?**** ?****;
path_55  : 1 0  0001 0002 0003 0004  0001 0002 0003 0004 0005 0006
                                     0000 0000 0000 0000          0000100 0 1 0 ?**** ?**** ?**** ?****;
path_65  : 1 0  0001 0002 0003 0004  0001 0002 0003 0004 0005 0006
                                     0000 0000 0000 0000          0000010 0 1 0 ?**** ?**** ?**** ?****;
path_75  : 1 0  0001 0002 0003 0004  0001 0002 0003 0004 0005 0006
                                     0000 0000 0000 0000          0000001 0 1 0 ?**** ?**** ?**** ?****;

-- round 6
path_16  : 1 0  0001 0002 0003 0004  0001 0002 0003 0004 0005 0006
                                     0000 0000 0000 0000          1000000 0 1 0 ?**** ?**** ?**** ?****;
path_26  : 1 0  0001 0002 0003 0004  0001 0002 0003 0004 0005 0006
                                     0000 0000 0000 0000          0100000 0 1 0 ?**** ?**** ?**** ?****;
path_36  : 1 0  0001 0002 0003 0004  0001 0002 0003 0004 0005 0006
                                     0000 0000 0000 0000          0010000 0 1 0 ?**** ?**** ?**** ?****;
path_46  : 1 0  0001 0002 0003 0004  0001 0002 0003 0004 0005 0006
                                     0000 0000 0000 0000          0001000 0 1 0 ?**** ?**** ?**** ?****;
path_56  : 1 0  0001 0002 0003 0004  0001 0002 0003 0004 0005 0006
                                     0000 0000 0000 0000          0000100 0 1 0 ?**** ?**** ?**** ?****;
path_66  : 1 0  0001 0002 0003 0004  0001 0002 0003 0004 0005 0006
                                     0000 0000 0000 0000          0000010 0 1 0 ?**** ?**** ?**** ?****;
path_76  : 1 0  0001 0002 0003 0004  0001 0002 0003 0004 0005 0006
                                     0000 0000 0000 0000          0000001 0 1 0 ?**** ?**** ?**** ?****;

-- round 7
path_17  : 1 0  0001 0002 0003 0004  0001 0002 0003 0004 0005 0006
                                     0000 0000 0000 0000          1000000 0 1 0 ?**** ?**** ?**** ?****;
path_27  : 1 0  0001 0002 0003 0004  0001 0002 0003 0004 0005 0006
                                     0000 0000 0000 0000          0100000 0 1 0 ?**** ?**** ?**** ?****;
path_37  : 1 0  0001 0002 0003 0004  0001 0002 0003 0004 0005 0006
                                     0000 0000 0000 0000          0010000 0 1 0 ?**** ?**** ?**** ?****;
path_47  : 1 0  0001 0002 0003 0004  0001 0002 0003 0004 0005 0006
                                     0000 0000 0000 0000          0001000 0 1 0 ?**** ?**** ?**** ?****;
path_57  : 1 0  0001 0002 0003 0004  0001 0002 0003 0004 0005 0006
                                     0000 0000 0000 0000          0000100 0 1 0 ?**** ?**** ?**** ?****;
path_67  : 1 0  0001 0002 0003 0004  0001 0002 0003 0004 0005 0006
                                     0000 0000 0000 0000          0000010 0 1 0 ?**** ?**** ?**** ?****;
path_77  : 1 0  0001 0002 0003 0004  0001 0002 0003 0004 0005 0006
                                     0000 0000 0000 0000          0000001 0 1 0 ?**** ?**** ?**** ?****;

-- round 8
path_18  : 1 0  0001 0002 0003 0004  0001 0002 0003 0004 0005 0006
                                     0000 0000 0000 0000          1000000 0 1 0 ?**** ?**** ?**** ?****;
path_28  : 1 0  0001 0002 0003 0004  0001 0002 0003 0004 0005 0006
                                     0000 0000 0000 0000          0100000 0 1 0 ?**** ?**** ?**** ?****;
path_38  : 1 0  0001 0002 0003 0004  0001 0002 0003 0004 0005 0006
                                     0000 0000 0000 0000          0010000 0 1 0 ?**** ?**** ?**** ?****;
path_48  : 1 0  0001 0002 0003 0004  0001 0002 0003 0004 0005 0006
                                     0000 0000 0000 0000          0001000 0 1 0 ?**** ?**** ?**** ?****;
path_58  : 1 0  0001 0002 0003 0004  0001 0002 0003 0004 0005 0006
                                     0000 0000 0000 0000          0000100 0 1 0 ?**** ?**** ?**** ?****;
path_68  : 1 0  0001 0002 0003 0004  0001 0002 0003 0004 0005 0006
                                     0000 0000 0000 0000          0000010 0 1 0 ?**** ?**** ?**** ?****;
path_78  : 1 0  0001 0002 0003 0004  0001 0002 0003 0004 0005 0006
                                     0000 0000 0000 0000          0000001 0 1 0 ?**** ?**** ?**** ?****;

-- output transformation
path_19  : 1 0  0001 0002 0003 0004  0001 0002 0003 0004 0005 0006
                                     0001 0002 0003 0004          0000000 1 0 0 ?**** ?**** ?**** ?****;

end;

Compare with Previous | Blame | View Log

powered by: WebSVN 2.1.0

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