ntt=24( & ) + , = 7 encryption and decryption logic output registers plaintext / ciphertext...

43

Upload: others

Post on 21-Jan-2021

36 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: NTT=24( & ) + , = 7 Encryption and Decryption Logic Output Registers Plaintext / Ciphertext Critical Path of Data Encryption (or Decryption) Ciphertext / Plaintext Data Selector and

�������� �� � � ��������� ������� ��������� ���������

��������� � ������ ��� ������

������ ��� ����� �������

�������� ��� �� ���� ������� ������ ������

� ���� �� ��� ���� ����� ���� ������� ����� �� ��

������ ��������� ��� ��������� ������� ��

� � !������" #�����" ��������" $%& '()* �����

����������������� ����������

�� ��+�� ,��� �� ������� ��

- � � ./���" �������" ��������" $)* (-'� �����

��������������������������������� ��� ��������

0�� �1'2 ���� �%" $'''

0�� $1'2 ��� ��+�� $3" $''�

��������� �� ����� � �� ������ ����� ������ ������ ��������� �� ������������ ������ ����� ��!� � � ����" �#��" � � �$%��� ����" ���� �� �� � � ��&��������'���� � �� �� (�)� ��� � ������ *� ���� +(�*,� �-��� �� � ��� ��&����� � � �������� ���&�� � �� � �� ������� ������������ �& �� ����� � ������ � �� ���� ��)�� �& �������� . �� �� '� �� �� �� ����� ���)���� ��� � ����������� � ��/��� ��� � � �� ��� ����� ������� �� ����� � �� (�* ' �����" �����(0*" 0�%" 0�1 ����" *���� " � � ���'��" �� ����� �/��� � ���� �� �������� ������ ����� � ��&���� � � ��������� ( ��� �!�� � ��� � ��� �& �� ������ � ���� ��� �� ����� �� � ���� � � 2� �� ... +���345!, � �� ��� �& 67����� ��� ���� �� . ������ " � ���� ������ � &����� �� �� � ��� �������� ����� �( �������� � ��� � ��� " ����� � ������ � ������ " �������� " � � �� ����������� &�� ������ ����" �������� � �� ����8 ���� ��� � � ������ ��9* (*.��������� ���� �� � �� � ����� ����� � � � ��� �:��� � ������ ����� ��������

Page 2: NTT=24( & ) + , = 7 Encryption and Decryption Logic Output Registers Plaintext / Ciphertext Critical Path of Data Encryption (or Decryption) Ciphertext / Plaintext Data Selector and

�������� �� � � ��������� ������� ��������� ���������

��������

���� ������

� ������ ��������� ���� � �&� ��� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 3��� � �&� ��� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 3��3 ����:�� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 3��6 ��� � � �����&� ��� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 3��$ 8�� *������� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 6

� ����������� ������� �3�� *�&���� 2��&�� � �� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � $3�� 5������� 2��&�� � �� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � $

� �������� ������������� ��!��"��� 6�� *��� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��6�� ;�� 0� �� �!��� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��6�3 4� ���� 4������ �� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��

� #�� ���� $%��������� �&$�� ���� �< =�� . ��� � ��� �� +=���� ���� � ������ ����������, � � � � � � � � � ��$�� ���� �< * ��� . ��� � ��� �� +>��� ����������, � � � � � � � � � � � � � � � � ��$�3 ���� 3< * ��� . ��� � ��� �� +*������ ���� &�� =24(" >��� ����������, � � ��$�6 ���� 6< =�� . ��� � ��� �� +2����� � ����������, � � � � � � � � � � � � � � � �6

' �������( �'%�� ;�/��� ��� � � >� ��� ����� ������ � � � � � � � � � � � � � � � � � � � � � � � � � �%%�� ��� ���� ;�/��� ��� ����� ������ � � � � � � � � � � � � � � � � � � � � � � � � � �7%�3 ��� ���� >� ��� ����� ������ � � � � � � � � � � � � � � � � � � � � � � � � � � � � �#%�6 ����� ������ ��� . �������� ;�/��� ��� � � � � � � � � � � � � � � � � � � � � � � �#%�$ ?�� ��� � (��� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �#%�% 5����� 9���� ;�/��� ��� (��� � � � � � � � � � � � � � � � � � � � � � � � � � � � 3�%�7 ������ (��� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 3�%�� . �������� (��� � � >� ��� *� (��� � � � � � � � � � � � � � � � � � � � � 3�%�# � �@��)��� 8��� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 3�%��� *���� (��� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 3�%��� 0��������� (��� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 3�%��� *������� ���� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 3�%��3 . ��� � ��� (���� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 3�%��6 ?��� =���� (���� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � 33

) *��������� ��

� #�����( �

Page 3: NTT=24( & ) + , = 7 Encryption and Decryption Logic Output Registers Plaintext / Ciphertext Critical Path of Data Encryption (or Decryption) Ciphertext / Plaintext Data Selector and

�������� �� � � ��������� ������� ��������� ���������

� ������� ��

���� ����� ����� � � ������ ����� ������ ������ ��������" ����� ��� 1�� �� ��)������ �� ��� � ��������� ������� ��������� � �� ����� ������� ������ ����� ��!� � � ����" �#��" � ��$%��� ��� �� ���" � � �� �/��� �� �� � � ��&��� �����'���� � �� �� (�)� ��� � ������ *� ���� +(�*,� ��� ����� ����� �& �� ����� ��� �� &�������

#��! ��%�� �� �������(� ��� ���� ��)� ��� � ����� ����� ��� �@��� ��� �� �������� (@�� ���)� �)������ �& ������� ���� � �����&�� ����� ����� ��� �@��� ���� �� ��/��� �������� ������ A?*#3B � � �� ��� ����� ������ A�#6B �� �� ������� � �� ���� ��� � ����� � � � � �� ����� ������� �� �)������ �� ������� �& �� ����� �� ����!� � �����&��� ����� �������� �@���� �� ��)� �� '� �� �� �� ����� ��� � ��/��� ��� � � �� ��� ������������� ������ ��� ���������� ��� �� ������ �����)��" �� ����� ��� ����� �� � �/�� ������� ���� ����� ��)� ��� ����� ����� ����� � ����� � ������ ����� ��/��� ��� ����� A8#$" C8#7B"� �������� ����� AC8#7" (��B" ���������� ����� A?#6" 8*�#%B" �� ���� ��/��� ��� ������ A8#$" ��##B" ��� ��� � ����� A�##B" � � ����� ����� A?�##" ?���B�

$+�����( �� �������� ���������� (� ������������ ���� � ��� ����� � )������ ���������� �" � ������ ������� � �� �� �� � ��� � �� �-��� �� � � ���� �� �� �& ���&�� ���� ���������" ����)��" &�� ������ ����� ������� ��� ������� &�� ��� ��&���� � � ��������� ��� � ��� � �� ����� ��� ����� �� � �/�� �:����� �-��� �� � �������� � � ��&����� ��� � ��� �" � ����� � ��� ��� &�� �������� ����� " � ��� ��@���� � � � � �� ����� ��� � ��� �" �� ���� �� ���&�� � �� � ������ ���&�� ��

�� ����� �� ���� �& � �� ��������� �������� ����� +����:��, � � ������� ������� � ���� �� �-��� �� � ��� � �� � � ���� )����� �& ���&�� �� �����&���" � �� �� � ��� � ���-��� �� � ��&����" � ����� � �� ���� ���������� ���� � ����� � � �� �����" 3���� ����������� ������ ���� � 2��" � � %6��� ����������� �� ����� ���� D ��� 3���� � ���� ������ � � � ���������� �" ����� ��� �:� ��)��� ���� � �� � ��&��������� �� ������ ����� �������� *���������� � ���&�� ���� � ���&�� � ���)��� � � ���� ������ �& ������" ����" 2� �� ..E... ��(��� " �� � �� ���� � ������ ����� ������� � �� ����� � �� ��� ������� ��� � � �������������� � ��� � ��� ��@���� � ����� ����:�� �& �� ����� ��� ����� �� � � � �!� �������� ��!�� ��� &��� ����:�� ���

�- � �@��)��� � �� � )����� &� ��� � �� ' �� '��� 4=+��,� �����)��" �� ������� ��� )����� &� ��� � 4=+��, � � &�� 4=+��, ���� ��� ������� �� . � ����� �� � � ��� � �� ����:�� �� &���� ��� ��� ����� ��� �������� �� )��� �� ��� � � ������ ��� �& �� ��������� ��� � ������ � . �������

� ������� ������ �� ����� � � ������� ��� �� ������ � � � ������ ��� � ��� ��@����� � &�� �� ���� � ������� �� @��� � ���F � �-��� � ��� � ��� ��@����� ���� 3�����0(� &�� ������ ���� � � ���� %6���� 0(� &�� �#�� � � �$%��� �����

���� �� �,����� ����%������ . ����� ���� �� � � ��������� ������� ��������� ��������� �� ����� � ����� �� � �� ���� &�� �� ������ � &�� .*9E.�� C�� �E*� �7" �� � � ��� ��� � ������ �� � � �� ��� �� �� ����� . *��� ��� ����" �� ��� ��� �� ����� �

Page 4: NTT=24( & ) + , = 7 Encryption and Decryption Logic Output Registers Plaintext / Ciphertext Critical Path of Data Encryption (or Decryption) Ciphertext / Plaintext Data Selector and

�������� �� � � ��������� ������� ��������� ���������

�**.� +�� ������� *��� �� &�� *�� ����" . �����" � � � ������ , ���1�� �� � ��� ������������� ��� ��)�� . *��� ��� ����" �� ����� ��� ������� �� � �� ������ &�� �� � �2���� �& �� �**.� ���1���

-������ �� �!� ������ ���� ����� �� ���� �!�� �� &������< *���� � ��������� �� ���� ������� � �� �����D� ����� � *���� 3 ��������� �� ���&�� � �� �& �� ������ *���� 6 �� �� ��� ��� �@��� &�� ��&���� � ��� � ��� � . *���� $ �� ������� ��� �������� �)������ ��. *���� % �� �)������ �� �����D� ��� �� ���� � � �� ������ �� �� ����� � *���� 7�=�� �� �����'���� �& �� �����" ������ ��� �� ������� ���� � ���� G*����'���� �&

�� ����� H � ������ ?���� �������I �� ���� &����� �� ��' ��� � � � ���� ��)� � ���������� ������

Page 5: NTT=24( & ) + , = 7 Encryption and Decryption Logic Output Registers Plaintext / Ciphertext Critical Path of Data Encryption (or Decryption) Ciphertext / Plaintext Data Selector and

�������� �� � � ��������� ������� ��������� ���������

� ��� �� ��� �����

��� � �������

��� ����� ������ �& �� � �&� ��� �& �� ����� &������ �� �& �� � �&� ��� �& �� A8�(�#�B���� �� ��/��� �� ����� �� � � �� ����� �� �� ������ �& �� ����� � +�� ���)��)�, *2+*������� �2�� ���� �����," � �� ����� � *2" ���� *�2�*� ��� �� ����� � *2�� ���� �� �� ��� � &� ��� � � =����� ������" �� ��������� �)������ �& �� ����� ��� ��& ��/��� ��� � � �� ��� ������������ ���������� ���� �� ��� �� �������" �� �� ������ ��� �� �� � ��)�� �& G����I ������� �� �:����� � �� � ���)��� *�� *���� % &�� ���������������� � � ��������

��� � �������

��� ����� ���� ��� �& �� � �&� ��� �� �� ���� � �� �& �� � �&� ��� �& ��� ��� ��" &�� �� ������ �� �-��� ��" � ������ �� ������� �� ��� � � �� ������� �:�����)��90� � � &�� ����������� � ��/��� ��� � � �� ��� ����� ������" �� ��� �� � ��� ������ �� ��� �� A8���##B�=�� � � � �� �� ��� �� �&�� ��� � �� ����&� ���� �� ���� �" �� ����� � � �� ������ ������� �-��� � ��� � ��� � 3������������ A(J��B � � ������ � � �� �����" �� ���� ������ �����������

��� �� ����

(� �� ����:�� �� ������ &� ��� � �- � �@��)��� � �� � )����� &� ��� � 4=+��, &��� �� ��� ������� � � � ��� �������� ����� �. �� ���� � �� �� �� � ����� �& �� �:� � ��/��� ��� ���������� �& &� ��� � �

4=+��, ��� ���)� � �� ���" � � �� � ����� �& �� �:� � �� ��� ���������� �& &� ��� � � 4=+��, �� �� 1������ � �� ���� ����� �� � &� ��� �- � �@��)��� � �� � )����� &� ��� � 4=+��, �� �����)�� �� ��� � �� �& �� �:� � ��/��� ��� � � �� ��� ������������"���� �� ������ ��� �� � �& &� ��� � �� ����:��� �����)��" �� ���� ������ �& �� ?����� ���� � ��� �& �)��� ���� �� �& �� ����:�� ���� � ��-��� � ���� �� ����� �� ������ �������/��� ��� ������ ��� �� �- � &� ��� � �� ��� ���&�� �� � �� � �� � � ���� �& ��� )����� &� ��� � 4=+��, �� ������� �� �:������� � �& �� ����:�� � 4=+��," ����� ����� �������� ����� � �/���)�� ���� � �� &��� ����:�� ��/��� ������� � ���)�� ����������� � �� ���� ��/��� ��� ����� ������ A��##B�=�� � ��� �������� ����� " �� ��� � � � 4=+��, �� �� ������� �� �� ���� � ���� ���

���-��� � � �� ���'��� 4=+��,� . ���� �����" �� �� � ��� � �� ����:�� �� ��� � � &��������� � � �� ���'��� 4=+��, A�.KK��B� ��� �- � &� ��� � � �� � �� � � ���� �&�� � )����� &� ��� � 4=+��, ���� ���� � ���� � �� ������ � �� �:������� � �& �� ����:��� 4=+��,�

��� ��� ��� ������������

��� � � �����&� ��� � ��� G� �����I ����� �)��� % ��� �� �& � =����� ����� � ���)��� � ���������� ������ ��� ��� 9 � �& �� ����� &�� ���� � ����� �� � ���� &���� � � �� ������ . �� � � �& ���� �& ������� =����� ������ �� � ������ � � �������� ����������

3

Page 6: NTT=24( & ) + , = 7 Encryption and Decryption Logic Output Registers Plaintext / Ciphertext Critical Path of Data Encryption (or Decryption) Ciphertext / Plaintext Data Selector and

�������� �� � � ��������� ������� ��������� ���������

��� �� �� � �:��� &�� �� ����� �& �� �������� . �� �����" ��������&� ��� ������ ���� ����� �)��� % ��� ��" �� ��� ������� �� ���� ������)������ ����� ������� �& ��� � � �����&� ��� � ��� �� ���� � ���� �& �� ���&� ��� �&

�.*�K A�#7B� ��� ��/��� �� ����� �.*�K � � �� ����� �� �� ������ �& ���� ����� ����� �� �:����� � ��� ������� ����� ������ ������" �� � ��� � ����)� � ��� � �������� ��!� �� ������ ��� ����� ������� ��� �� ���� &� ��� � �� �� �� ��� &�� � � ':����� � � �� ���� &�� � ���� � � ��� )������ *� �� ���� &� ��� � ��� �� ��� �� �� � �� �� ����� ':��" ��� �� � ��� �� �)����� ��/��� ��� � � �� ��� ������������ �& �� ������ ������������)��" ���� &� ��� � ��� &�� � ��� ��&���� � � �������� �� �� ��� ��� �� ������ ��������� ������� � ���� �� (;" 90" L90" � � ����� ��

��� ��� ��������

��� ����� ������� �& �� ��� �������� ��� �� &�������

�� . ������ �� �� ��� � � ����� ��� �& �� ��������� ��� � ������ E�������� �

�� *����� �� ����� &�� ����" �#�� � � �$%��� ���� �� �� ���&�� �� �� ��� � �� �� � ����������� +������,� �����)��" �� ��� �������� &�� ������ ���� �� �� ���&�� �� �� ��� �� ��� �& ��� �������

3� 8�� ���� � � ������ �� ������ �� � ������ � ��. ����� ����� ����� � �� � �& ��� ��� ��������� ��� � �� ��� ����� ���" �� ���� � �&�� ��� �������� � �� �� � � ���� � 9 �� ���� �� �" � ��������� � � ����� ����� �� ��� ��� &��@�� ��" ��� ������ �� � &����� 9 � ����� �� �� � �& ��� ������ �� ������� � ��

6� . ������ ������ � ����M� ������ �� ����� �

$� 9 ����M� ������ �� ����� ������ �� �� ������ � �� �� � ��� � ��� � ������ � � �������� �

*� � ������� ��)� ������� ��� ��������� &�� � ������ � � �������� � . �����������" ����" 0�1 ���� A;0#�B �� *���� A(?8#�B" ������� ��� �� ������ � �� &������������� � �� � � ��@���� � �� �� � &�� �������� �

%� ����� ������ �� � �@��)��� �����

7� ����� ������ �� � ���������� ����� �� ����� ������

������� � � � � �� �� ������� � ��� �������� ��@���� � �" ������� 3" 6" � � $ ��� ���)� ������ � �� � �& �������� ��������� �" � � ������� % � � 7 ��� &�� ����������� � ��� ��@���� � &�� �� ���� � ������� �� @��� � ���� ( �-��� � ��� � ���

�& �� ����� &�� ������ ���� ��@����� �% ���� +N��� ���, &�� �� ����� �� ����� ���" �" � � �%���� +N��� ���, &�� �� � �� ����� ���"�� ���� �� ��@����� � ��� �� 3� ����� *� ������"� �-��� � ��� � ��� �& �� ����� &�� �#�� � � �$%��� ���� ���� � �� %6 �����

6

Page 7: NTT=24( & ) + , = 7 Encryption and Decryption Logic Output Registers Plaintext / Ciphertext Critical Path of Data Encryption (or Decryption) Ciphertext / Plaintext Data Selector and

�������� �� � � ��������� ������� ��������� ���������

� ��������� � ����

��� ������� �����������

����� � �� ���!�� �� ����� ��&���� ���&�� � �� �& �� ����� � �� �� � ������� 3����� � %6��� ����������� ����� � ����� �� ��&���� ���&�� � �� � �� �������������� ���� &��� �� ����� � � � ������ ���� �" ����� ��� �@������ ��� �� �������� � ���� 4� ������������ �" �� '�� ������� �& �� &�� �� �� G*����"I ����� �� �& �� ���� �� G0(� J���� � �09� J�����I *� � �& �� ��� ��� ��������� � A(.8����" ���" .*8���" (.8����" K���"K���B" �� �� ����� ��)� � ��� ��������� ������ ����� ���� �� �� ����� �� �� �-��� �� � ��� � �� � ����� � � �� �����" 3����

� � %6��� ����������� �� ��� �� �����)���� � � + ���, &�� ��� � � + ����, &�� ���� � ��������

-�����,����� ��%��� ��� �� ����� ������ � ��� � ���� ��� �� �����" �� ���� � ��� � � ��� �@��� ��������� � *���� 6 � �����)� �� ��� ���&�� � ��� 5���)��" ���� �� ���� &�� &����� � ���)� � �9 �� ���� �� �" ���� �� � � �� � �� ����� ����" ��/��� ���� ��� ����� ��� ��������

&�� �� �� � � ����� ���� �� � �� �� ���� ��� ����� ��� � ����� ��� � �� ��� ��"�)� �& �� � ���� �� ��� �!��� ����" �� ��� � ��� � � �� � � � � ��� �!� � � �����

#�� �� ������� ���� � . �� ��-��� � ������ ����� � ���� ���������� �� �� ������� � � ��� � �" &�� �:� ���" ���� �& �����" �� ��� ���� � �� ����� �� ��� � � ��� M�� �� ������ �� ������� � ������ ����� � ��� �� &������ � �� ���� � � � ���� ��� �<

� (�� ����� � � ��� ��� �������� ���� ���

� . �� � � ���� �:� � � ����� ��� ��������� � �� '�� ��)�� ������

� ?�� �� �������� � ��� �������

� *��� &� ��� +�:��� &�� � ����M� � ��� � ��� �, �� ����� ����������� �� �� ��� � &�� �� ����� ���" � � �� �� �� � ��� ���� �� � ������ �� �������� &� ��� �

� � ������ +�������� , &� ��� �:��� &�� � ����M� � ��� � ��� � �� � ���� +�������, � � ����� � ��� �& �������

� �� ������� �� ����� � � � ��" � � ����� �� ��� ����� � ��� � �� ����� �� ������ � ���� � �� �������� &������

� �� �)������ �� ����� � ���� &�� ����� ����� � ������ " �� �� )����� � ����� ����)������� � ����� � ���� � � &� ��� ������

��� �������� �����������

����� 3 ������� � �� ���� ������ � �������� ���&�� � �� �& �� ����� � (*.� +(�������� *����'� . ������ ������, � � =24( +=���� 2����� ���� 4�� (����,� ����� 6 ����� ��� )��� � �& ��� �������� ����� � � �)������ �

$

Page 8: NTT=24( & ) + , = 7 Encryption and Decryption Logic Output Registers Plaintext / Ciphertext Critical Path of Data Encryption (or Decryption) Ciphertext / Plaintext Data Selector and

�������� �� � � ��������� ������� ��������� ���������

���� �< 5������� �)������ � )��� � +(*.�" =24(,>� ����� +(*.�" =24(, O�������5;>

;���� ������� +(*.�, ��������� ������� ��3$� ��9* (*.� ���������������� ������� ����� ��9* (*.� ����������$ � ��9* (*.� ������� +������� �� �0K2�0��0���� ����,

+=24(, L��� : L�6���L> ������L��� : O���:� ������

*� ����� +(*.�" =24(, O�������L> +�:��� &�� ���$� ,+(*.�, O�*$�� +���� &�� ���$� ,

>���� �� ����� +(*.�, ;���� �� ����� )����� �##���� +���� &�� ��3$� ,;���� �� ����� )����� ��������*2� +���� &�� ����� ,;���� �� ����� )����� ������$�� +���� &�� ���$� ,

+=24(, *� ���&� )����� $�3�� � � (>>.(�� )����� ����+���� &�� L�6���L> ������,

*� ���&� )����� %���3 � � (>>.(�� )����� 3�3��7�+���� &�� O���:� ������,

���� �< 5������� ����� �������� +���� �,���� ��� ������� 9��� � �& �����

���� � =�� � ��� � ��� &�� �� )������ �& � �+;��, ����� =����� �

���� � * ��� � ��� � ��� &�� �� )������ �& ��� ����� ��!� =����� �

���� 3 * ��� � ��� � ��� +������� ���� &�� =24(, =����� 3

���� 6 2����� � � ��� � ��� =����� 6

%

Page 9: NTT=24( & ) + , = 7 Encryption and Decryption Logic Output Registers Plaintext / Ciphertext Critical Path of Data Encryption (or Decryption) Ciphertext / Plaintext Data Selector and

�������� �� � � ��������� ������� ��������� ���������

�� �)������ ���� � ������ ���� 6 ������ ����� $ ����� �� �� ��������� �& �� ����� �������� ������ �& ���� ��� ��� ��������� � *���� $�

7

Page 10: NTT=24( & ) + , = 7 Encryption and Decryption Logic Output Registers Plaintext / Ciphertext Critical Path of Data Encryption (or Decryption) Ciphertext / Plaintext Data Selector and

Key setup(*2) Key setup(*2) Enc. / Dec. Total size Key setup(*2) Enc. / Dec. Table

[bits] [cycles] [cycles] [Mbps] [bytes] [bytes] [bytes] [bytes] [bytes] [bytes]128 1,570 308 290.9 288 20 15,012 6,788 0 8,224 [AIK+00b]128 160 371 241.5 28 36 11,420 1,046 2,150 8,224 [AIK+00b]192 222 494 181.4 28 36 13,032 1,469 3,323 8,240 [AIK+00b]256 226 494 181.4 28 36 13,048 1,485 3,323 8,240 [AIK+00b]128 - 326 255.2 - - 29,285 - - - [C01]128 0.72msec - - 20,110 - - - [C01]128 0.73msec - - 20,236 - - - [C01]

Pentium II (*6) ANSI C(*7) 128 263 577 66.6 44 64 9,461 1,600 3,733 4,128 [AIK+00b]Pentium III (*8) Java(*9) 128 9,091 793 161.4 - - - - - - Not published

128 158 326 261.9 48 48 21,040 1,600 2,928 16,512 [AIK+00b]128 118 339 251.8 48 48 20,736 1,132 3,076 16,528 [AIK+00b]192 176 445 191.9 48 48 22,196 1,668 4,000 16,528 [AIK+00b]256 176 445 191.9 48 48 22,204 1,676 4,000 16,528 [AIK+00b]128 - 282 210.2 - - 31,552 - - - [C01]128 0.97msec - - 25,792 - - - [C01]128 0.94msec - - 25,792 - - - [C01]128 - 355 144.2 - - 15,240 - - - [C01]128 1.01msec - - 23,992 - - - [C01]

(*9) IBM Java Compiler 1.2.2 and IBM Java VM 1.2.2.

(*7) Microsoft Visual C++ 6 with the optimization options /G6 /Zp16 /ML /Ox /Ob2.(*8) IBM PC/AT compatible PC, Intel Pentium III (1GHz), 256KB on-die L2 cache, Windows2000, 512MB main memory.

(*11) Alpha 21264 (463MHz), Tru64 UNIX V5.1, 512MB main memory.(*12) Ultra SPARC IIi (400MHz), Solaris 7, 256MB main memory. Copyright NTT and Mitsubishi Electric Corporation 2000-2001

(*6) IBM PC/AT compatible PC, Intel Pentium II (300MHz), 512KB L2 cache, Windows95, 160MB main memory.

(Dec) 435 (*3)

Pentium III (*5)

Alpha 21264 (*10)

Alpha 21264 (*11) Assembly

Table 1: Camellia Software Performance (updated on Aug.31, 2001)RAM Usage(*1) ROM Usage

Processor ReferenceLanguageKey Size

Speed

Enc. / Dec.

(*4) IBM PC/AT compatible PC, Intel Pentium III (700MHz), 256KB on-die L2 cache, FreeBSD 4.0R, 128MB main memory.(*5) IBM PC/AT compatible PC, Intel Pentium III (650MHz), 256KB on-die L2 cache, Windows98 SE, 64MB main memory.

Pentium III (*4) Assembly

(Enc) 467 (*3)Assembly

(Enc) 448 (*3)

(*10) Alpha 21264 (667MHz), Tru64 UNIX 4.0F, 2GB main memory.

UltraSPARCIIi (*12)

403 (*3)Assembly

(*3) The figure includes key generation and one block encryption. This is achieved by using the on-the-fly subkey generation.(*2) Key schedule may be included.

(*1) The figure includes stack area, and excludes text area and key area.

Assembly

(Dec) 474 (*3)

Page 11: NTT=24( & ) + , = 7 Encryption and Decryption Logic Output Registers Plaintext / Ciphertext Critical Path of Data Encryption (or Decryption) Ciphertext / Plaintext Data Selector and

Key setup(*1) Enc. / Dec. Key setup(*1) Enc. / Dec. Total size Key setup(*1) Enc. / Dec. TableSharingsize(*2)

[bits] [cycles] [cycles] [bytes] [bytes] [bytes] [bytes] [bytes] [bytes] [bytes]

5,146 28,3821.03msec 5.68msec

2,380 4,1000.95msec 1.64msec

7,500 9,9003.57msec 4.71msec

5,679 8,4300.71msec 1.05msec

642 1,2366.42msec 12.36msec

Copyright NTT and Mitsubishi Electric Corporation 2000-2001

(*11) Motorola 6805 series MC68HC908AB32 (8MHz) on Motorola's In-Circuit Simulator Kits.(*12) Mitsubishi 32-bit microcomputer M32Rx/D (100MHz) on MSA2310 evaluation board.

(*1) Key schedule may be included.

MC68HC908AB32 (*11) Assembly

44 (*5)M32Rx/D (*12) Assembly 128 44 (*5)

128

Keysize

[AIK+00b]

-131

0

1,698 Not published2881,183358

128

ROM Usage

0

-

-

-797-

1,023

-

Table 2: Camellia Software Performance for Smart Cards and Embedded Systems (updated on Aug.31, 2001)

10.22msec

Processor Language Reference

702 288990

(*4) The figure includes stack area, and excludes text area and key area.

3,164 [AIK+00b]

208 (*6)

208 (*6)

-

-

8,684 1,392 4,128

(*7) Intel 8051 (12MHz; 1cycle=12 oscillator periods) simulator on Unix.(*8) Z80 (5MHz) simulator on Windows.(*9) Hitachi H8/3113 (5MHz; 1cycle=2 oscillator periods) on Hitachi's E6000 Emulator.

(*5) The figure includes stack area, text area and key area.(*6) The figure shows the size of round keys.

(*10) Motorola 6805 series MC68HC705B16 (2.1MHz) on Motorola's In-Circuit Simulator Kits.

0

0

-

-

-

-

-

-

(*3) The figure includes key generation and one block encryption. This is achieved by using the on-the-fly subkey generation.

1,042

- -

1,268-

0

MC68HC705B16 (*10) Assembly

(*2) Some ROM size may be reduced, since some functions can be shared among key generation, encryption and decryption.

(Enc) 35,951 (*3)

-

RAM UsageSpeed

10,217 (*3)

0 60 (*5)

7.19msec(Dec) 37,553 (*3)

7.51msec

208 (*6)

0

44 (*5)

0

62 (*5)

32 (*4)

60 (*5)

8051 (*7)

H8/3113 (*9) Assembly

128Assembly

AssemblyZ80 (*8)

128

128

128

-

-

-

0

[Y01a]

[Y01a]

[Y01b]

Not published

Page 12: NTT=24( & ) + , = 7 Encryption and Decryption Logic Output Registers Plaintext / Ciphertext Critical Path of Data Encryption (or Decryption) Ciphertext / Plaintext Data Selector and

Efficiency

Key setupMax.

delay(*1) Latency Throughput Total(*2) Keyexpan.(*3) Enc./Dec.(*4) Throughput/Area

[bits] [nsec] [nsec] [cycles] [Mbps] [unit] [unit] [unit] [Kbps/unit]

Mitsubishi 0.35µm 128 24.36 109.35 1 1,170.55 272.82 55.91 216.91 4.29 [AIK+00b]Mitsubishi 0.18µm 128 40.00 40.00 1 3,200.00 355.10 - - 9.01 Not publishedMitsubishi 0.18µm 128 45.96 45.96 1 2,785.00 244.90 - - 11.37 Not publishedMitsubishi 0.35µm 128 110.20 27.67 21 220.28 11.35 4.98 6.37 19.41 [AIK+00a]Mitsubishi 0.35µm 128 117.04 28.73 21 212.16 9.66 5.75 3.91 21.96 [AIK+00b]Mitsubishi 0.18µm 128 144.88 36.22 21 168.28 8.51 - - 19.77 Not publishedMitsubishi 0.18µm 128 25.92 6.48 21 940.62 27.46 - - 34.25 Not publishedMitsubishi 0.18µm 128 28.20 7.05 21 864.57 21.45 - - 40.31 Not publishedMitsubishi 0.18µm 128 23.20 5.80 21 1,050.90 11.87 - - 88.52 Not publishedMitsubishi 0.18µm 128 137.24 34.31 21 177.65 8.12 - - 21.87 Not publishedMitsubishi 0.18µm 128 12.96 3.24 21 1,881.25 44.30 - - 42.47 Not published

0.25µm 256 - 5.46 - 837.00 39.35 22.76 16.33 21.27 [C01]0.25µm 256 - 11.51 - 397.00 23.12 13.30 9.67 17.17 [C01]

Type 2 Xilinx XC4000XL 128 362.83 78.82 21 77.34 1,296 - - 59.68 [AIK+00b]Type 3 Xilinx XC4000XL 128 - 50.00 21 122.01 874 - - 139.60 [AIK+00b]

Xilinx VirtexE 128 135.03 30.56 21 199.46 1,816 - - 109.83 [ISKM01]Xilinx VirtexE 128 126.00 28.80 21 211.90 1,816 - - 116.69 [ISKM01]Xilinx VirtexE 128 127.04 26.80 21 227.42 1,780 - - 127.76 [ISKM01]

Unrolled Type 1 Xilinx VirtexE 128 97.70 318.50 1 401.89 9,426 - - 42.64 [ISKM01]Pipeline Type 4 Xilinx VirtexE 128 83.25 18.96 20 6,749.99 9,692 - - 696.45 [ISKM01]

Copyright NTT and Mitsubishi Electric Corporation 2000-2001

(*1) Critical path of data encryption (or decryption)

FPGALoop

CLB

Type 1

Type 2

Type 2

(*4) The figure includes output register and data selector (if necessary).

(*2) The figure includes key scheduling logic, encryption/decryption logic, data selector (if necessary), output register, subkey register and buffers for fan-out adjustment.(*3) The figure includes subkey register.

Loop Kgate

KgateUnrolled

Table 3: Camellia Hardware Performance (updated on Aug.31, 2001)

Design LibraryKeysize ReferenceArchitecture

Unit

Area SizeSpeed

Slice

ASIC

Page 13: NTT=24( & ) + , = 7 Encryption and Decryption Logic Output Registers Plaintext / Ciphertext Critical Path of Data Encryption (or Decryption) Ciphertext / Plaintext Data Selector and

�������� �� � � ��������� ������� ��������� ���������

� ������� ����������� �� ����� ����

���� ����� ��������� ��� � � ��� � �� ����� �-��� �� � ��&����� . �� �����" � � ��� � ��� �� �� ��)���� � � �� ����< ��� � ����� � ��� �������� � � ���� �� ���������� " �� ��" � ������ �� �������� � �� '�� �������� ��� � ��� �!� �� ���� ����" � ��� �������� ��� � ��� �!� �� ��� �� �� �!��� ��������� ����� ��������� �����'� ��� �@��� &�� ��" 3��" �� %6��� ����������� 5���)��" � ����

�@�� &�� ���� ���������� �� �� ���������� � 3�� �� %6��� ���������� � � � ��� �@�� &�� 3�������������� �� �� ���������� � %6��� ����������� 9��� ���� ��!�� �� ��� � �� �� ���������� ���� � �� ��� '�� � ��� � �� ����� ��� � �� �����'���� �� � ��� ���� �����

���� ��� �!� �� ������ � ������� �� � ��� ����� G����I �� � �� ����� ��!� �& �� ���� ���������� =�� �:� ���"

�� ����� �& .(�3� ����� ��L ��� �����" .(�3� ��� ��L ��� ����� � � (���� ��� 3��"%6�" � � %6���� �� � �������)����

��� ����

��� ����� ��� ���.�(�

*��� ��� ������� � � � ��� � �� ��� �� ���� �� �& ��� ��)� ��-��� � ���" � � ����� ����� ������� &�� ��� �� �� �!��� �

���� ���.�( /��������� -� ��

K�� �� � ��)� � �� ��� ������� � ������ =�� �:� ���" ��� ��� �� ��� ������� &�� ������� ���" '�� �� ��� �� ������� �� � �� ���� � � �" � � �� �� ��� ������� ��� �� ���� � � �� ���� ������� �� � ��� �& �������� �� � ��� &�� ���� � ��

���� 0-� *����������� �������( �� 1�( ��!� ���

��� ��� �������� �& �� ����� �� ����� � �� =����� �������� ?���� �� � � ��� � � � ��3�� ��� �" � �� L90�� � � � �� ����� )����� ���� ������� ������ �� ������� � �& ������ ���������" �� � �� �& �� 3�� ��� � �� �� �� ���� �� �� &������ � �@���� ���

+���� ���&, N � +��P�,+��& ���&, N � +�� � +���� ���&,P�,

&�� ������ �����+���� ���&, N �� � � +�� ���P�,+��& ���&, N �� � � +�� � +���� ���&,P�,

&�� �#�� � � �$%��� ����

J�� � �� ���)� �@���� �" �� �� ��� � �� 3 � � � L90� � 2 &�� ���� � � �#�E�$%��� ����"�������)���" �� ����� � �� ������&������ � ��� � ��� �& �� �����'���� �

���� �������� 3��� ��� ��4 ��4 ��4 �� ��

K�� �� � ��� � ���� �" �" �" � � �" �� ��� ������ ���� ���� ����� )����� ��� �� ���� � �������� K�� �� �� ���� ������� �� ���� � �� ��� )����� �� � �� �& � ����� ������� �& �%� � ����

��

Page 14: NTT=24( & ) + , = 7 Encryption and Decryption Logic Output Registers Plaintext / Ciphertext Critical Path of Data Encryption (or Decryption) Ciphertext / Plaintext Data Selector and

�������� �� � � ��������� ������� ��������� ���������

���� ��� �� ��� /��������� ���� ��� �� ���

=�� �#�� � � �$%� �� ����" ��� �� ��� ��������� �� ����� � �� ���� +��� ���, &�� +��� ���," �� �� +��� ���, �@���� +��� ���, ��� ���� ��)�� � &�� � ������ � �� ����� � �� ����� ����� �

���' -�5�!�56( ���.�( /���������

K�� �� �� ���� ������� � ������� � (�� ������� ��� � � �& �� ����� )����� �& �" �"�" � � � � ����" ��� '�� �� ���� �" �" �" � � � " � � �� ���� �� � �� ���������� 0�&�� � *���� 6���6 &�� �� ����� � ���� �& ��� &�� �" �" �" � � � �

���) �75��� .�( �� 8�9��'5��� .�(

.& ���� ���� ���� � ��� � ��� ��� ��!�� ������ �� ��� ���" ��� �� � ��� � �� ����� � ��� ��" ��� �� � � �� �� ����� � &�� �� ��� �� � �&� ��� ��

���7 #�� �� ������ �� $������ �� :

75��� ���������� (� ���� � *���� 6���6" �� � �� �& ����� � ��� �� � �� �& � ����� ������� �& �%� �� ����" ��� �� ���� � ��� � � : �� �%� � ��� �� ���� � ���� ��&�� ���� &������� �� � ����� �)��

��5��� ���������� �� ����� �� ��� �& � ������ �������� ���& � ������ < ���� �� ���� �&��� ��� ������ � � � .(�3��

���8 � 5��������

8�� �������� � ������ � �&� ��� �" �� �� �� ����� �& �� � �&� ��� �� &�� ��� �� �� �!���� � 0�&�� � *���� 6���

���& 1�(� ���������

�� ����� ��� ���� ����� &� ��� �< ������ L90" ������ 90" � � ������ (;� �� ����� ����� �& � ���&� ���&�� � ����" �& ���������

��� �� !�����"���

���� $� ��� *��%������

�� ����� ���&��� ��� � ��� � ����" �� ���� &�� ���� � ��� ���������� ���� ������ �� ����&�� � ��� �� )����� ����� �� ������&������ � ��� � ��� �� )��� �� � ��� ��� ����� � � ������� &��

� ��� � � ���� � � ������� � � ���� 9 �� ��� � � �����&� ��� � ��� � ��� ���� �� ����� ���������" � �� �� ���� ����� � ��� �� �����&� ��� �� � ��� ���� �� � ���� �� ��� ��� �� �� )�� � ��� � 1�� ��&��� �� 1�� �&�� �� ���� ����� ��� �� ����������

��

Page 15: NTT=24( & ) + , = 7 Encryption and Decryption Logic Output Registers Plaintext / Ciphertext Critical Path of Data Encryption (or Decryption) Ciphertext / Plaintext Data Selector and

�������� �� � � ��������� ������� ��������� ���������

������ �� ����� ���� �� ( �� �� ��� �& �� ��� � � ��� �� )����� � � ���� ����� �� � ������ �� ���&�� � �� �& �� ������ ;����� ��� ��������� � *���� 6�����*� � ���������� ��)� � ������� � ������ &�� � ��� �� )����� � =�� �:� ���" .(�3� +�&��

��6�%, ��� ���� � ������ � J�� ���� � ������ �� 5���)��" �� � ��� �� ��� ������� �@�� ��������� � A�#�" (��� ��: (B� ��� ��� �@�� ������� �� ���� ��!�" �� � �� �&��" �� �� �� � ��� ���� � � ���� � ������ � ���� �� � ��� ���(� ��������� ���)�" �� � ��� ������ � �� �/��� �� ���� ����� �& � 3���� �����

����" �� �� � ��� &��� %6��� ���� � ��� �� )����� ���� &������ � ��� �� ���� ����� � �����!� � ��� �� )����� &�� 3���� ������� �� .

�� &������ � ��� �@���" ��� �� ��� ����� � �� � � ���� �& Q � �� �@���� �" � � ��� �� ����� �� �� ����� �� ����� ����� ���&� � ����� � ����� � � � (;� ��� � ������������ )����� �& ����� �� �� ��

������!������� �

�� +����, Q ++� � ���,��, Q ++���, � ���, Q +����,

��� ��� �@�� ��� ���� ���������� �

;������ ���������� ���!��� ���������

� � +����, Q +����,

� � ++� � �����,��, Q ++���, � �����,

<���� ����������

�� ++� � �����,����, Q ++� �, � �����,

<���� ��$� �� . �� 2� �� &� ��� ���������� � ����� � 2� �� ... ��)� � )��� �/���)�� ������ &�� �������� � ���" ����� �� ������ �� �� A.##B� $ � ������ � � ����� � �� ��

��� ��-��� � �� )�� � ��� &�� %6��� ����

����� 5��� �������� �� 2����� $� ��� �������������

(� ��������� � *���� 6����" �� �� � ��� � ��� �� )����� ��� ����� � � � ���� � �:��& �� �� �-��� �� � ��� � ���� ����� � ��� � � �����&� ��� ��(��� � � � � �� � 3���� ������� �� �� �� � ���� � ��� ��� � �� ����� �� ����" ��

�� �� ��� ���� ����� �� �� &������ � �@���� �

�� ++��, � ���������, Q ++������, � ���������, +�,

9& ������" ��� ��� �@�� ��@����� � ���������� ��� ��� � ������ ���� � � ���� &� ��� ���� �� Q � �@���� +�, �� �� �������� ��� � �� �" � � �� ��� � �� �� �� �� � ��

��" � �� ������ ��� � ����&" � � ��� �� ����� �� �� ����� �� ����� ����� ���&�� ����� � ����� � � � (;� ��� � ���������� �� )����� �& ����� �� �� ���� '� ������ ���� ��������� ��� (;9� � ������ " ���� �� ���� � .(�3� � � ���

� (����� . ��� ����" ��� �� � ��� � ������� �� �� �� " ����������

�3

Page 16: NTT=24( & ) + , = 7 Encryption and Decryption Logic Output Registers Plaintext / Ciphertext Critical Path of Data Encryption (or Decryption) Ciphertext / Plaintext Data Selector and

�������� �� � � ��������� ������� ��������� ���������

����� =!�������

��� ��� ������ � ��� � � ��� �� �� �� �� �� � � ���� ����� ������� � ��� � �� &������ ��@���� ��

+�� �,� � N +�� �,� �

+�� �,� � N �� +� � �,

+�� �, � � N +� � �,� +� � �, +�,

+�� �, � N +� �,� +� �,

+�� �, � � N +� � �,� +� � �,

����� �" �" �" � ��� �� ��� ��� (�1�� ������� � ���� � ��� � �� � L90� � 2�

����� 1�( 0-�

J�� � �@���� � +�," ��� �� �)� ��� L90� � � � ����� �& �� �)� � ���� � �� �������� ��&� ��� � =�� �:� ���" ��� �� � � �&� ��� �� ����� � +�+� � �,, � � +�+�,, � ��

�� � ���)� � ������ �������� ��

����� �5��������

�� �� ��' �� �� �� ���� ���� � 4=+��,� 5���)��" �� � �� ��� 4=+��, ���� ����F � ����

����� ��� � � ��������� � ���� � ���� ������ " ��� ����� 6 � �� �����'���� ��� ��� ��� ������ �� ��� ���� ����� ��� � � ��������� ��" ��" � � �� ����� � ������

� ��" �& ��� ��)� ��-��� � ��� � � ���� ����� �� �:�� ��)�� .& ��� �� � ��)� ��-��� � ���" �� ��� �& ��" ��" � � �� �� �� �� ����� &�� �� ���� &�� �� ��� � � � ����� +*�� *���� 6�$ � �� �����'���� ,�.& ��� ��)� ��-��� � ���" � � ��� �& ���� ������ �� ���)�" �� �� ��� &�� �� ����� C�)�

)����� ���� ��" �� ����� �� ��� �& � �� ����: �� �� �� ����" &�� �:� ��� +��+��, ��+��,,�

����' � 5��������

��5��� ���������� >� +�� ��, N ++�� �� �� ��, +�� �� � ��,, �� �� � �� �& � �&� ��� � � +� �

� ���, N ++�

�� �

�� �

�� �

��, +�

�� �

�� �

� �

��,, �� �� ���� �& � �&� ��� �

=�� =����� $ � �� �����'���� " ��� �� ��� �� � �&� ��� �� �� �� ���� �� &�������

�� � �� � +�� �,

�� � �� � +�� ��,

�� � �� � +������,

�� � �� � +������,

� �� � ��

� �� � ��

�6

Page 17: NTT=24( & ) + , = 7 Encryption and Decryption Logic Output Registers Plaintext / Ciphertext Critical Path of Data Encryption (or Decryption) Ciphertext / Plaintext Data Selector and

�������� �� � � ��������� ������� ��������� ���������

��� ������� ��� �& ��� �� ����� �� �� �� �� �� ���&� �� �� ����� �� &�������

�� � �� �

�� � �� � �� �� � �� �

�� � ������ �� � �� � ���� � �� � �� �� � �� ��

�� � �� � �� � �� � ��� �� � �� � �� � ��

��� ������� ��� �& �� ���)� �� ����� �� ���������� . ��� � �� �� ��� �@�� ��@����� � ������� �� ����� " ����)��" ��� �� �������� �� �� � �� '�� ��� �& �� ���)� �� ����� � � ��&� ��� ����� � � ������ �� ����

75��� ��������� >���!������ ���������?� .& �� � ������ � ���� ��������� �� L90� � �� �� ��� �& �������� � � ��� ��-��� ��������" ��� �� �� ��� � �&� ��� �� ��� �1�� �% L90� ��� � =����� $ � �� �����'���� �

75��� ��������� >����������� ���� ?� .& ���� ��������� �� ���� ����� �����" � � �!� ��� � ��� �& L90� �� � ������ � ���� ����" �� �� �� �� ����� �� ��@���� ������� ����&�� � ��� � � ���� � � � ��� � � � ��� ��� &������ � �� ����� �� ��� �!�� &��� ���� ����� ����� ����������

��� � �� � �� � �� � �� � �

��� � ��� � �� � �� � ��

�� � ��� � �� � � � ��

��� � �� � �� � �� � ��

��� � ��� � �� � �� � �

��� � ��� � �� � �� � ��

��� � ��� � �� � �� � ��

��� � ��� � �� � �� � ��

��� � ��:� � ��� ���� � � ������� �" �� &������ � �� ���&���

� � �� � �� � �� � �� � �� � �� � � � ��

��� � � � �� � ��

��� � � � �� � ��

��� � � � �� � �

��� � � � �� � ��

��� � � � �� � �� � ��

��� � � � �� � �� � ��

�� � � � �� � �� � �

��� � � � �� � �� � ��

�$

Page 18: NTT=24( & ) + , = 7 Encryption and Decryption Logic Output Registers Plaintext / Ciphertext Critical Path of Data Encryption (or Decryption) Ciphertext / Plaintext Data Selector and

�������� �� � � ��������� ������� ��������� ���������

����) ������������ �� �����������

���� ����� ��������� ��� � �-��� �� �� ��� � � �� ����� � � ���� �� �� �� ��� �� � � � �

'�5��� ���������� .& ���� ��������� ��� � ��-��� �� ����� '�� ��)�� �����" ��� �� ��� �@����������� � A0;2�#%B� ��� ��� �@�� �������� �� &������ � ����� ��' �� �� �@���� � +3,�

���+��, N +��+��, ��+��, ��+��, � ��+��, � � ��+��,,���+��, N + � ��+��, ��+��, ��+��, ��+��, ��+��, � �,���+��, N +��+��, � ��+��, ��+��, � ��+��, ��+��, �,���+��, N +��+��, ��+��, � ��+��, � � ��+��, ��+��,,���+��, N + � ��+��, ��+��, ��+��, � ��+��, ��+��, ��+��,,���+��, N +��+��, � ��+��, ��+��, ��+��, � ��+��, ��+��,,��+�, N +��+�, ��+�, � ��+�, ��+�, ��+�, � ��+�,,���+��, N +��+��, ��+��, ��+��, � ��+��, ��+��, ��+��, �,

+3,

�:" �� ��� �� &������ � �@���� <

+��� ��� �

�� �

�� �

�� �

�� �

� �

��,�

����

���+��,

���� ��� �@�� ��@����� �� &������ � ������� ��

R �& ���� ������� �R �& L90� 7*�!� �& ���� +8?, �%

.& �� '�� ����� �& �� ���� ��������� �� �������� �����" ������� � &�� �& �� �������' �� �� �@���� � +3, ��� �� ����� ������

���+�, N +��+�, ��+�, ��+�, ��+�, ��+�, ��+�, ��+�, ��+�,,���+�, N +��+�, ��+�, ��+�, ��+�, ��+�, ��+�, ��+�, ��+�,,���+�, N +��+�, ��+�, ��+�, ��+�, ��+�, ��+�, ��+�, ��+�,,��+�, N +��+�, ��+�, ��+�, ��+�, ��+�, ��+�, ��+�, ��+�,,

+6,

��� " ��� �� �������� ��� ������ �� ���� ��� �@�� ��@����� �� &������ � ������� � �&��� ��� 1�� ����� �& �@���� � +6,�

R �& ���� ������� �R �& L90� 7R �& (;� �*�!� �& ���� +8?, �

��� � ��� � � � ��� ��� �@�� � (���� ���������� A�#�B" � � �& �� � ��� �& ���������� � ��-��� &�� ���� � �� �� � &�� ���� � ������� " ��� �� �� ����� � ������ ��

�%

Page 19: NTT=24( & ) + , = 7 Encryption and Decryption Logic Output Registers Plaintext / Ciphertext Critical Path of Data Encryption (or Decryption) Ciphertext / Plaintext Data Selector and

�������� �� � � ��������� ������� ��������� ���������

.& ���� ��������� �� �-��� �� ���� ���& ��� �& � ������� � �� ���� ���&" &�� �:� ����" ������E ������ �� �� �� � ������ � � .(�3� A.##B ����� ��� �����!�� �&�� 2� ��� ��� ��L ��� ����� � � 2� �� ..." �������)���" ������� ���" ���" ���" � � �����' �� � �@���� � +3,� ��� " �� ��� �� &������ � �@���� <

+��� ��� �

�� �

�� �

�� �

�� �

� �

��,

� ���+��,� ���+��,� ���+��,� ���+��,� �+���+��,� ���+��,� ���+��,� ���+�,,

����� � �� ��� �� ������� �� ������ �� '�� 6 ���� � �� ��� 6 ����� ���� ��� �@����@����� �� &������ � ������� ��

R �& ���� ������� �R �& L90� 7R �& �� �*�!� �& ���� +8?, �

��5��� ���������� A(J��B ����� �-��� � ��� � ��� � �& �� ��������� �������� � ���� ���� ������� 9 � �& �� ��� �@��� �������� �� &������ � ����� ��' �� �� �@����� � +$,<

������+�, N +��+�, ��+�, ��+�, �,������+�, N + � ��+�, ��+�, ��+�,,������+�, N +��+�, � ��+�, ��+�,,������+�, N +��+�, ��+�, � ��+�,,

+$,

��� " �� ��� �� &������<

� � ������+��,� ������+��,� ������+��,� ������+�,

� � ������+��,� ������+��,� ������+��,� ������+��,

+��� ��� �

�� �

��, � � � �

+��� ��� �

� �

��, � +��� �

�� �

�� �

��,� +�����,

���� ��� �@�� ��@����� �� &������ � ������� ��

R �& ���� ������� �R �& L90� �R �& ����� � �*�!� �& ���� +8?, 6

A(J��B ���� ����� � � ��� � ��� �� �� ������� &�� � ��������� � ����� ����� �� )��������� ��� ��� �@�� �������� �� &������ � ����� � ������ � ����� ��' �� �� �@���� � +$,<

������+�, N +��+�, � � ��+�,,������+�, N +��+�, ��+�, � �,������+�, N + � ��+�, ��+�, �,������+�, N + � � ��+�, ��+�,,

�7

Page 20: NTT=24( & ) + , = 7 Encryption and Decryption Logic Output Registers Plaintext / Ciphertext Critical Path of Data Encryption (or Decryption) Ciphertext / Plaintext Data Selector and

�������� �� � � ��������� ������� ��������� ���������

��� " �� ��� �� &������<

� � ������+��,� ������+��,� ������+��,� ������+�,

+��� ��� �

�� �

��, � � � ������+��,� ������+��,� ������+��,� ������+��,

+��� ��� �

� �

��, � � � ������+��,� ������+��,� ������+��,� ������+��,

���� ��� �@�� ��@����� �� &������ � ������� ��

R �& ���� ������� ��R �& L90� ��*�!� �& ���� +8?, �

����7 ;�.��� � ���� ��� �5��@

K�� �� ��� � � ��: &�� ����: �� �� ��� ��� � ���&� � � (;�� 5���)��" ��)���� ������������)� ������� � ������ � &�� ��� � � � ��:" &�� �:� ���" ����� � .(�3� A.##B � � ����� � (���� A�#�B�

����� �� � &�� ������� � 2%" �� � �� �� ���� � �� &�� �� �� ���� ��� �'�� �����( ������&������ � ��� � ��� ���� ���" ���" ���" � � ��� �������� &�� ���� � +� �,"� � � ����� � ��� ���� &�� ��� � � �����F � ����� � ��� ���� &�� ����)��� � ��� ����� � �� �������� �)��� ��� �� 5���)��" ��� �� �� �)� � ����� � &�� ����)��� � ��� ����� �)������ � �& ��� ������� ����� ������ �� �� �� ��� ����� � �������� ���� � � � ���������� �)��� 6 ��� ���

��� #������ #�������

���� ����� ��������� �� ���� ������� ��� ��� ������� �� ��� ���&�� � ��� �!� �� ����� �� ������ ���� ����� �������� 2����� ��&�� � �� ��� �!��� � ���� &�� ���� ����������

�%�� ��������� ��� ��������� (� �� ��� ���������� �� ���!� ������ �� ��� �������(��� ��� � �� ���� ��� �����

�%�� ������� ��� ��������� ��� ���������� ��)� � &� ��� � ������ � � ����� ��� �� ���� ��!�� 5���)��" ��� &� ��� �� ����� � �� ���� ;� � ������ ������ ���" �)� �& ��� �� � ��� &��� ��!� �& ���� � � ��� ��)� ��-��� � ����

3� ������� �� �!� ��,� �� �!� ���!�� .& �� ������ �� �� ��� �:����� �� ��!� �& �� �����"�� ����� �& �� ������ ���� ��� �'�� �� ��������� >��� � ����� � � � ���� �:�� ��� ��� ���� ��� �@��� � ����� �� �� ������ " �� �� � �:���� �� ��!� �& �� ������

<�� ��������� ���������� *�)���� �� ������ ������ � �� ��� &� ��� �� =�� �:� ���" ��� ��� ��� �������& O����� �QQ )����� % �� ����� � .(�3�" � � ������� G���������������� ������I � � ��� G �����I" �� �� ����� �� ����� ����� � ������ � � ���� ��� �� ������ 0�&�� � �� � ��� �& �� �� ����� �� ��� ��� &�� �������

;�������� ������� ���� � �� �+����� ��� �� � � � � �& ���� ���� ���� �� � � �&�����< ����� �� �����" 9* � ������" � � �� � � =����� ���" �� ������������

��

Page 21: NTT=24( & ) + , = 7 Encryption and Decryption Logic Output Registers Plaintext / Ciphertext Critical Path of Data Encryption (or Decryption) Ciphertext / Plaintext Data Selector and

�������� �� � � ��������� ������� ��������� ���������

���������" &�� �:� ���" �� � ��� �& ������ � �� � ������" ���� �/�� �� �� � �� ��

( &�� ���������� ��)� � � ������ � �� �� � � �� �� =�� �:� ���" .(�3� +�&��2� �� , ��� ����� A.##B � � (���� ��� ��� A�#�B� . �� � ���� ���� � ��� �� � ��� � ��� �� &�� ������ � ������" �� ��� ������ � ������� ����� ���� � ������ �� ����&������ ����������� ���� �� 2% � � �O%�

.& ��� �� � ������ ����� ���������" �� ��� ���� ����������� =�� �:� ���" �& ������ 2� �� &� ��� ����������" ��&�� � A=��B�

�#

Page 22: NTT=24( & ) + , = 7 Encryption and Decryption Logic Output Registers Plaintext / Ciphertext Critical Path of Data Encryption (or Decryption) Ciphertext / Plaintext Data Selector and

�������� �� � � ��������� ������� ��������� ���������

!���� "#����� ���

. *���� 3" �� ������ �)������ ������ �& �������� � ��� � ��� � +(*.�" =24(, �&�� ������ . ��� *���� " �� �������� �� ����� �������� �& �� &��� ���� �& ����� �)������ � *���� 3� ��� ������ �& ���� ��� ��� ��������� ������

��� $��� �% &�� '������������ (&���� ���� �������� ���������)

. ���� �" �� �)����� �� �������� � ��� � ��� +(*.� � � =24(, ����� �� ���� �� ������)� �� &���� � ������ � � �������� ����� ��� � �� �������� �& ����� ��!�� =����� ����� �� �� ���� � ������ ����� % ����� �� ����� ���� � �� �� � ��

Encryptionand

DecryptionLogic

OutputRegisters

Plaintext / Ciphertext

Cri

tical

Pat

h of

Dat

a E

ncry

ptio

n(o

r D

ecry

ptio

n)

Ciphertext / Plaintext

Subk

ey R

egis

ters

Key Expansion Logic

Key

Critical Path of Key Expansion

������ < 9��� � �& ���� � +(*.�" =24(,

���� '< ��� ����� ���� � �� �� � �

� ������ � � ;�� �� �� �!� � ����� &�� � ������ � � �������� "�������� ����� ����� �� ���� �& �� �� ��� �� ������

9��� ������� 0������ &�� �� � ������ +�������� , ����

8�� �:�� ��� ����� >���� � ����� ������� ��� �� ����� &�� ���"����� �� ���� �& �� �� ��� �� ������

*����� ������� 0������ &�� �� ���� ��� �& ��� �:�� ��� ������

��� ����� �������� �& ���� ����� �� �� � � ��� ����� ������

�� G� ������ � � �������� �����I � � G8�� �:�� ��� �����I

+�, >��� ���������� �� � � ��������

��

Page 23: NTT=24( & ) + , = 7 Encryption and Decryption Logic Output Registers Plaintext / Ciphertext Critical Path of Data Encryption (or Decryption) Ciphertext / Plaintext Data Selector and

�������� �� � � ��������� ������� ��������� ���������

+�, 2����� � ���������� �� � � ��������

+�, *������� ����� +����:��, ��� ����� �� �� ����� �� ����� ����

�� G9��� �������I � � G*����� �������I

+�, ��� ��!� �& 9��� ������� �� � � ����� +N��� ���,�

+�, ��� ��!� �& *����� ������� �� �� ��� �� �� �& ��� ������� � �� ������� �

J ��� �� ���)� ����� ��������" �� �)������ �� ����� � (*.� � � =24( ��)����� ��������� ��� �� ���!�� � ����� 3 � *���� 3� G���������I �� ��' �� �� &������<

���������A���B N?���� ��!�+��� A���B,

������� ��� �& ��� � ������ +�������� ,A���B�

��� $��� �% ����� '������������ (*��� ���������)

. ���� �" �� �)����� �� �������� � ��� � ��� � � (*.�� � � =24(� ��� �� ���� �&�����)� � �� � ����� ����� � � ������ +� � �������� ,� =����� � ���� �� �� ���� � ����������� 7 ����� �� ����� ���� � �� �� � ��

Encryption and DecryptionLogic

Output Registers

Plaintext / Ciphertext

Cri

tical

Pat

h of

Dat

a E

ncry

ptio

n(o

r D

ecry

ptio

n)

Ciphertext / Plaintext

Data Selector anda part of

Key Expansion Logic

Subkey Registers

Key

Cri

tical

Pat

h of

Key

Exp

ansi

on

One Round of

with sharing a part of(or all of) Key Expansion Logic

Key Schedule Logic

������ �< 9��� � �& ���� � +(*.�" =24(,

��� ����� �������� �& ���� ����� �� �� � � ��� �� &�������

�� G� ������ � � �������� �����I � � G8�� �������� � �����I

+�, >��� ���������� �� � ������� +����� �� ���� �& � � ��� � ������� ,�

+�, 2����� � ���������� �� � � ��������

��

Page 24: NTT=24( & ) + , = 7 Encryption and Decryption Logic Output Registers Plaintext / Ciphertext Critical Path of Data Encryption (or Decryption) Ciphertext / Plaintext Data Selector and

�������� �� � � ��������� ������� ��������� ���������

���� )< ��� ����� ���� � �� �� � �

� ������ � � ;�� �� �� �!� � ����� &�� � � ��� � ������� �& � ������ � ��������� ����� �������� " ����� � ������ +� ��� �&, ��� �:�� ��� �����" � �

�� ���� �& �� �� ��� �� �������

9��� ������� 0������ &�� �� ���� +� � � �� �����, ����

;�� ������� *������ ����� ������ ����� � ������ E�������� ��� �� ���� ����

8�� �������� � ����� >���� � ����� ������� ��� �� ����� ��� � +� ��� �&,��� �:�� ��� ����� � � ������ � � �������� ����� � ��� ���� �& �� �� ��� �� �������

*����� ������� 0������ &�� �� ���� ��� �& ��� �������� � ������

+�, *������� ����� +����:��, ��� ��� �!�� �� �� ��

+�, 8�� �������� � ����� �� ���� +� ��� �&, ��� �:�� ��� ����� � � �� ��� ������

�� G9��� �������I" G*����� �������I � � G;�� �������I

+�, ��� ��!� �& 9��� ������� �� � � ����� +N��� ���,�

+�, ��� ��!� �& *����� ������� �� �� �& �� ������� ���� � � ������ � � �������� ������

+�, ;�� ������� �� ��� �������" ����� ��!� �� � � ����� +N��� ���,�

J ��� �� ���)� ����� ��������" �� �)������ �� ����� � (*.�� � � =24(�� ��� ��������� �� ���!�� � ����� 3 � *���� 3� G���������I �� ��' �� �� &������<

���������A���B N?���� ��!�+��� A���B,

������� ��� �& ��� � ������ +�������� ,A���B ��� ���

��� $��� �% ����� '������������ (������ +��� ��� &�#,- *��� ����������)

. ���� 3" �� �)������ �� �������� � ��� � ��� +=24(, �� � ������� ���� �& ���� ��

. ���� 3" �� ���� � �� ��� ������� ��� ��)� � � ��� ������ � � =24( � �� �� � ����=����� 3 ���� �� �� ���� 3 ������ ����� � ����� �� ����� ���� 3 �� �� � ����� ����� �������� �& ���� ����� �� �� � � ��� �� &�������

�� G� ������ � � �������� �����I

+�, >��� ���������� �� � ������� +����� �� ���� �& � � ��� � ������� ,�

+�, 2����� � ���������� �� � � ��������

+�, *������� ����� +����:��, ��� ��� �!�� �� �� ��

�� G9��� �������I" G*����� � ���I � � G;�� �������I

��

Page 25: NTT=24( & ) + , = 7 Encryption and Decryption Logic Output Registers Plaintext / Ciphertext Critical Path of Data Encryption (or Decryption) Ciphertext / Plaintext Data Selector and

�������� �� � � ��������� ������� ��������� ���������

Encryptionand

DecryptionLogic

Output Registers

Plaintext / CiphertextC

ritic

al P

ath

of D

ata

Enc

rypt

ion

(or

Dec

rypt

ion)

Ciphertext / Plaintext

Subkeys

Data Selector

One Round of

Subk

ey M

emor

y

������ �< 9��� � �& ���� 3 +=24(,

���� 7< ��� ����� ���� 3 �� �� � �

� ������ � � ;�� �� �� �!� � ����� &�� � � ��� � ������� �& � ������ � ��������� ����� �������� " ����� � ������ +� ��� �&, ��� �:�� ��� �����" � �

�� ���� �& �� �� ��� �� ������

9��� ������� 0������ &�� �� ���� +� � � �� �����, ����

;�� ������� *������ ����� ������ ����� � ������ +�������� , ��� �� ���� ����

*����� � ��� �� ��� &�� �� ������� ������ &�� �������

�3

Page 26: NTT=24( & ) + , = 7 Encryption and Decryption Logic Output Registers Plaintext / Ciphertext Critical Path of Data Encryption (or Decryption) Ciphertext / Plaintext Data Selector and

�������� �� � � ��������� ������� ��������� ���������

+�, ��� ��!� �& 9��� ������� �� � � ����� +N��� ���,�

+�, ��� ��!� �& *����� � ��� �� �� �� �� �& ��� ������� � �� ������� �

+�, ;�� ������� �� ��� ������� ����� ��!� �� � � ����� +N��� ���,�

J ��� �� ���)� ����� ��������" �� �)������ �� ����� � � =24(� ��� ������ ��� �� � ���!�� � ����� 3� G���������I �� ��' �� �� &������<

���������A���B N?���� ��!�+��� A���B,

������� ��� �& ��� � ������ +�������� ,A���B ��� ���

��� $��� �% &�� '������������ (������ ���������)

. ���� 6" �� �)����� �� �������� � ��� � ��� +=24(, ����� �� ���� �� � �����)��� &���� � ������ � � �������� ����� ��� � �� �������� �& ����� ��!�� +��� ������ ����������� �� � �����!� � � &������� ����" ���� �� �?�" �=?" � � 9=?,� =����� 6 ���� ���� ���� 6 ������ ����� # ����� �� ����� ���� 6 �� �� � ��

Encryption andDecryption Logic

Plaintext / Ciphertext

Cri

tical

Pat

h of

Pi

pelin

e St

age

Ciphertext / Plaintext

Subk

ey R

egis

ters

Key Expansion Logic

Key

Critical Path of Key Expansion

1 round

Register 1

1 round

Register n-1

1 round

Register n

Stage 1

Stage n-1

Stage n

������ �< 9��� � �& ���� 6 +=24(,

��� ����� �������� �& ���� ����� �� �� � � ��� �� &�������

�� G� ������ � � �������� �����I � � G8�� �:�� ��� �����I

+�, >��� ���������� �� � � ��������

+�, 2����� � ���������� �� � ��������

+�, *������� ����� +����:��, ��� ����� �� �� ����� �� ����� ����

+�, ��� ��!� �& 0������� +� � �, �� � � ����� +N ��� ���,�

�6

Page 27: NTT=24( & ) + , = 7 Encryption and Decryption Logic Output Registers Plaintext / Ciphertext Critical Path of Data Encryption (or Decryption) Ciphertext / Plaintext Data Selector and

�������� �� � � ��������� ������� ��������� ���������

���� 8< ��� ����� ���� 6 �� �� � �

� ������ � � ;�� �� �� �!� � ����� &�� � ������ � � �������� "�������� ����� ����� �� ���� �& �� �� ��� �� �����" � �

0������� +� � �, &�� �� ���� � � � �� ����� ����

8�� �:�� ��� ����� �� �� ��� �� ����� � ����� ������� ��� �� ����� &�� �� ����

*����� ������� 0������ &�� �� ���� ��� &�� ��� �:�� ��� ������

�� G*����� �������I

+�, ��� ��!� �& *����� ������� �� �� ��� �� �� �& ��� ������� � �� ������� �

J ��� �� ���)� ����� ��������" �� �)������ �� ����� � � =24( ��)����� ��� ��������� �� ���!�� � ����� 3� G���������I �� ��' �� �� &������<

���������A���B N?���� ��!� +��� A���B,

������� ��� �& 2����� � *��� A���B�

�$

Page 28: NTT=24( & ) + , = 7 Encryption and Decryption Logic Output Registers Plaintext / Ciphertext Critical Path of Data Encryption (or Decryption) Ciphertext / Plaintext Data Selector and

�������� �� � � ��������� ������� ��������� ���������

$ ���� �%

.�� /������ ��� *���� +����������

��� �� ������ �� � � �����&�� ���������� � ����� � � � ����� ������� ��� ��/��� �������� ������" �������� �� ?��� � � *�� �� A?*#3B" � � �� ��� ����� ������" � ������� ������� A�#6B� ����� ��� ��)���� ����� �& �)����� � ������� ���� � ���� �����" ��������� �� � �� � �& G������I ������ ����� �� A�#$" �O#$B< � ���� �����" �� ����������� � ��� ����� �� �� �)������ � �� ���� �����. �� � �� �� �� ����� ��� �� �& ��/��� ���E�� ��� ������������ ������������ �� " &��

��)���� ����� �������" �� ��� ��� ��� � �� � � � � ���� �& ��/��� ���E�� ��� ���)�����:�� � �� � �� �����)� ��� ��� 8� �� A8��B ����� �� � � � � ���� �& ��/��� ����E�� ��� ���)� ����:�� &�� =����� ������� ��� �� ���)��)� *2 +*�2, ��� � &� ��� � 5�����&��" �� ���� � �� �� ��� �� �&�� ��� � �� ��1���)��

��A������ ��� ��� �� � ��� � �& �� ��� �� �&�� ��� � �� ��' �� ��

� N � ���+��+�, Q ��+� +�,,,

����� ��+�, �� ��� �� ������� 5� � � ����� �& ��

��A������ � ( ��/��� ��� ���)� ����: �� ��' �� �� � ����: ��)� � � �!��� � �� ��/��� ���( �� ��� ���)� ����: �� ��' �� �� � ����: ��)� � � �!��� ���� ��� )�����

!����� ��� � � � � ��� �& ��/��� ���E�� ��� ���)� ����:�� � � � ���� �� �����)���� �� �� �@��� �� ������ �� �� Q ��

��A������ � =�� � � ��)� S�" S�" T�" T� 4=+��," �� ��/��� ���E�� ��� ������������ �&�����:< 4=+�

�,� 4=+��, ��� ��' �� ��<

2��A��+�,� ��+��S�, N S�B N

R�� 4=+��,���+�,� ��+��S�, N S��

��

2��A� � T� N ��+�, � T�B N

R�� 4=+��,�� � T� N ��+�, � T��

��

��A������ � >� � � � � �� �� �:� � ��/��� ���E�� ��� ������������ �& ��� ����:����� �� � � ���

� N �:�

�: ���� �

2��A��+�,� ��+��S�, N S�B

� N �:�

�:�� �����

+�2��A� � T� N ��+�, � T�B� �,

!����� � >� � � � � �� �� � � � � ���� �& ��� ��/��� ���E�� ��� ���)� ����:������ " �� �:� � ��/��� ���E�� ��� ������������ ������������ ��� ��� ��� �� �� � � �� "�������)����

�%

Page 29: NTT=24( & ) + , = 7 Encryption and Decryption Logic Output Registers Plaintext / Ciphertext Critical Path of Data Encryption (or Decryption) Ciphertext / Plaintext Data Selector and

�������� �� � � ��������� ������� ��������� ���������

��� �� ���)�� � �� �� ��� �@���" �� ���)� �� �� ����� �/��� � � �� � ��������� �� ����� � �� ����� ��� �� �& �:� � ��/��� ���E�� ��� ������������ ������������"�� �� �� ����� �� � =����� ������ ����� ��� � &� ��� ���� �� *�2 ��� � &� ��� �. �� ���� �& �� �����" �� �:� � ��/��� ���E�� ��� ������������ �& �� ����:�� ���

� N � N ����

��� ��� �� � ��� �& �� �� ��� �� �&�� ��� +� �&� ��� , �� $" ����

� N $�

>�� � �" � �� �� �:� � ��/��� ���E�� ��� ������������ ������������ �& �� ����� �������� �%���� � ����� ��� � � �����&� ��� �" �������)���" �� ��)�

� � �������� N +���,�� N ����� � � � � �������� N +���,�� N �����

&�� ������ � � � � �� ?�� ������������ ��� ����� �� ������� �������� �& ������ ������������< ������ . &������ �� ���� �� � �/���)� ��/��� ��� ������������ �� �� ��� ������������� &�� �� ����� ������� � ��� �� �$ ��� �� ����� ��� � � �����&� ��� �� *� ����� � � �����&� ��� � ��� �� ��� &�� � � ':�� ���" ��� �� � ��� �� �)����� ��/��� ����E�� ��� ������������ �& �� ������ ������� 5� ��" � �� ���)� �� �� ����� �/��� � ����������� ���� � ��/��� ��� � � �� ��� �������� �� �� ����� ���)� ��� ����� � ������ � � � � �� ?�� ����� � ���� ��� �� ����

����� �& =����� ������� ��� *2 ��� � &� ��� " �� �� �:��� �� �� ����� �� ������� ��������� �� ���� �� �� ����� ���)�� (� ������� � �)��� ��" �� ��� �� �� � ��� �& ���)�����:�� �& �� ����� ��� ������� ��� ��� ��� ��� � � ������� �� �� ���� � �� ���������� A�##B �:��� &������ � ���� �� ��

� 2������ �� ���� &�� �� � ��� �& ���)� ����:�� � ���� �& �� ���� ���������� �����

� ��� �� � ��� �& ���)� ����:�� � ���� �& �� ��� � �� ���� �����������

� ��� � � �����&� ��� � �� ��� ��� � � � �� � � � � ��� �& ���)� ����:�� � ������� ���� �� � �� �� ������� ��)�� �� �������� � �:��� �� �& ���� ������� � ������ � ��� � � �����&� ��� �" �� �� ���� �� �� �� � ���������� �& �� ��� � �)������� ��/��� ���E�� ��� ������������ ��� �� ���)���� � � ��� �� ������ ����������"����� �� �@��)��� � �� � � � � ��� �& ���)� ����:���

(� � �����" �� �� '� �� �� ������ � �� ����� ��� ��� � � ���&� ��� � ��� � ��/���� ���E�� ��� ������������ ��� ���������� ������ �� ����� +��� ������ �� � � ��,�

.�� $������� /������ +����������

��� ����� ��� � �� ���� ��/��� ���� ���� � ������� �� 8 ���� A8#$B� 5� ��' �� �� �� ��/��� ���� ����� � �� � ��� �& �� ��/��� �� �� �� ��������� ��� ��� �& �� ������/��� ���� � ������� �� �� �� ����" �� ��� � �������� �� ������ � �� ����� � ����������� ��/��� ���� �� �� ���� ��/��� ���� A��##B�

�7

Page 30: NTT=24( & ) + , = 7 Encryption and Decryption Logic Output Registers Plaintext / Ciphertext Critical Path of Data Encryption (or Decryption) Ciphertext / Plaintext Data Selector and

�������� �� � � ��������� ������� ��������� ���������

R �& ��� �� � � 3 6 $ % 7 � # �� �� ��

��� ��� ����� ���� ���� ���� ���� ����

� ��� � � � � +�, +$, +7, +��, +�%,

�� ����� � ��� ���� ���� ���� ���� ��� ��� ��� ����� ����� �����

+�, +�, +�, +7, +#, +��, +��, +��, +�3, +��, +��, +��,

����� ��E����� � ��� ���� ���� ���� ���� ��� ���� ����� ����� �����

&� ��� � +�, +�, +�, +7, +#, +��, +�3, +�$, +��, +��, +��,��< ��� � ���� � ������� ��� �� � ��� �& ���)� ����:���

���� &< J���� ��� �� �& ��/��� ��� ������������ ���������� �& �� �����

R �& ��� �� � � 3 6 $ % 7 � # �� �� ��

��� ��� ����� ���� ���� ���� ���� ����

� ��� � � � � +�, +$, +7, +��, +�%,

�� ����� � ��� ���� ���� ���� ���� ��� ��� ��� ����� ����� �����

+�, +�, +�, +%, +#, +��, +��, +��, +�3, +�7, +��, +��,

����� ��E����� � ��� ���� ���� ���� ���� ��� ���� ����� ����� �����

&� ��� � +�, +�, +�, +%, +#, +��, +�3, +�6, +��, +��, +��,��< ��� � ���� � ������� ��� �� � ��� �& ���)� ����:���

���� < J���� ��� �� �& �� ��� ������������ ���������� �& �� �����

��� �:� � ��/��� ��� ���������� �� �� ������� � ���)��� �� ���� �)������ �& �������� ���� � ��/��� ��� ����� ������" �� �� ��� � �� )���� �� � �������� � �� ����" �� �� ���/��� ��� �� � �� �& ��� ��/��� ��� ������������� ��� �� �� � � �� ��/��� �� � � �� �� ����� ��/��� �� &�� � �����) ������ A>��#�B� 9 �� ���� �� �" � �� ���� ��/��� ����� �� �������� �� � ����� �& �� ��/��� ��� ������������� ����� ��� �:�������� � ������ ������� =�� �� � �������" ����" �������� �� �������" �� ���������� �& �� ���� ��/��� ����� �� �� ���� ������ � � ��������" � � � ��)�� � ��� ���� �)������ �� �� �:� � ��/��� ��� ������������ �����������( �� ���� ��/��� ��� ����� ������ �& ����������� � )���� � �& �� ��� ����� �� �� ���

��� � � ����� � =*�D## A��##B� ����� � ������ ��� ����� � �� G��� ������������"I ������� )����� � �� ��/��� �� � � ��� ��� ���� ������� ����� � �!��� � � !���� ���� &�� � �7���� � ��� ������������" ����� ����� � � �������� ���� � � ����� � )���� �& �� ������� �=� ��� +�� � ���� �� �&�� ��� , � � �� �=� ��� +�� ' �� �� �&�� ��� ,� ��� ������� �& �� ���� � A�*(8��B ������ � ����� � )���� �& �� ��� ����� �� �=� ��� ���� �=� ��� ��� � ��� ����� ���� �:�� . A�*(8��B �� ���� ���� �� ���� ����� ���� �������� � 7���� � )���� �& �� ��� �� � � � �� �=� ��� � &�� � �� �� ��� ���� ��� ���� ����� ���� �:���� ����� �� � �������� �� ������ �� ���� � ��" � � � �� � ���� � �)����� �� �������

���� � �� ���� ��/��� ��� ����� ������� �� �������� &�� �� ���� ��/��� ���� ��� � �

��

Page 31: NTT=24( & ) + , = 7 Encryption and Decryption Logic Output Registers Plaintext / Ciphertext Critical Path of Data Encryption (or Decryption) Ciphertext / Plaintext Data Selector and

�������� �� � � ��������� ������� ��������� ���������

������� �� ���� � �� � � ��������� � A��##" �*(8��B� ��� �� ��/��� �� �& �� ��� �&� ��� ����� �� � � �� ����� �� �� ������ �& �� ����� � *2 � �� ����� � *2"���� *�2�*� . �� ������ &�� �� ���� ��/��� ���� �& ��" �� ���� ���� ��� �� �� �����������& ��/��� �� �� ������� � ��� � �� L90 �& =����� ������ 5���)��" �� ��� � &� ��� �& �� ����� ���� D ��)� �� ���� � ����:��������" � � �� �� ������� �� �� �� ������ ������������� �� (� � �����" ��� �� ������ � �� ����� �� � ���� ��������� &�� � �� �� ��� ���� ��� ���E����� ���E�����&� ��� �������0��� ��" *���� � ���D� ����� � �� ���� � � � �������� ��/��� ��� ����� ������ �&

�� ����� +����� ���E�����&� ��� �, ��� ������� &�� (*.(�0K2� ���� A*8.��B� �������� �� ��� &�� � �� � ���)��� #���� � �� ���� ��/��� ���� +��� �� �� � � ��E������/��� ��� ���� �," ����� ���� � � �������� ���� �& �� ����� ������� � �� ��� �� ������ ��E���� ���� � �� � � ���E�����&� ��� �� 5���)�� �� �� � � �� ���� ��� ��� � ���� �� �& �� ����� �� �� ������ ��� � �� �� ���� ��/��� �����

.�� $������� *���� +����������

�� � ������ � �� ����� ������ ������ �� ���� �� ��� ����� �������;�� � �� ������ ����� ��/��� ��� � � �� ��� ����� ������" �� �� �)����� �������

���� � �� ���� �� ��� ����� ������ �� ��� � � �� ���� ������� � �� ���)�� �� �� ��� ������" �� �� ���&�� �� ������ �� ������� � �� ���: �& � �&� ��� ��� �� �� ������� ���:� (� � �����" ��� �� ������ � �� ����� �� � ���� ��������� &�� � �� �� ��� ���� ����� ���E�����&� ��� �������

.�� +���������� �� '����� �� /������

��� � �������� ��/��� ��� �� � �� ��/��� ��� ����� ����� ��� ���������� �" �� �� ��/��� ���� ����� �)�� �:���� J�� � ���� � � �������� ��/��� ���" � �� �������� � ����� ��� ���� ������ �& �� ������� . �� � �� �� ���� �� � ���� � � $���� � � �������� ��/��� ���� � � =����� ����� ��� � ��1���)� ��� � &� ��� � *� �� �� ����� ��� �� =����� �����+��� ��� � � �����&� ��� � � ����� ����� �)��� % ��� ��, � � �� ��� � &� ��� �� ��1����)�" �� ����� ��� $���� � � �������� ��/��� ����� (����� ���� �� � ���� �����" *���� � ���&�� � � 7���� � � �������� ��/��� ��� &�� �� ����� +����� ���E�����&� ��� �, A*8.��B� ���:��� ��� � � �����&� ��� � ��� ����� � �� ����� ��� � � �������� ��/��� ���� ��-���"�� �� �� &� ��� � ��� �� ��/��� ��� ���� ���� �� � � ��� )������ . �� ��@�� " �� �������� &��� ��� �� ���� � �� ����� �� ����� ������ ��� � � �������� ��/��� �����

.�� 0�������1 ,��2

?�� ��� � ���� A�##B ��@����� � ��/��� ����� >� �� ���������� �& �� ��/��� ���� �� � � � ��� ( ��� ��� � ���� �� �� �������� �� �:�����)� ��� ������ ��@�����

� �� � ����� +%,

J�� � ����� ��" ���� �� � �� �� ��� �� ����'�� . �@����� +%, &�� �� ����� ����� ���� � �����&� ��� �� ��� ��� ��� ��� � ���������� &�� �� ����� ����� ��� � � �����&� ��� � ������� � ����� � �� ��� ��� �� ���� �� �� ���� �� �� � N �

��� +3 ��� ��, � �

�#

Page 32: NTT=24( & ) + , = 7 Encryption and Decryption Logic Output Registers Plaintext / Ciphertext Critical Path of Data Encryption (or Decryption) Ciphertext / Plaintext Data Selector and

�������� �� � � ��������� ������� ��������� ���������

�� N ���� +$ ��� ��,� *� �� �������� ��� �� &�� �� ����� ����� ��� � � �����&� ��� � ��

��� ��� �� ��� ������ �� �� �����'���� �& �� �����" ��" �� ����� ��� � ������ ���� �� ��� ��� � �����

.�. �1��� 3���� /������ ,��2

5����� ����� ��/��� ��� ���� �� �� ������ ���������� � ������� �� �� �� ������� �� ��?����� ���� � ���� �& ��� ������� . �� ������ ����� ��/��� ��� ���� ��������� � AC8#7"������ �B" �� ������� �� �& �� � �� ����� ��� ��� ������� �� �� ?����� ���� � �����& ������ � ��� � " �� + Q �,�� ����� ��/��� ��� �& �� ?����� ���� � ��� ���� �� � ������!���

������� �� 3������ ���(������� �� �!� �5��@�� ��� &� ��� � �- � +�)�� 4=+�,, �@��)���� � �� � )����� &� ��� � 4=+��, ��� ������ �� �� ����:��� . �� � �� �� �� �������& �� ?����� ���� � ��� �& �)��� ���� �� �& �� � )����� &� ��� � 4=+��, �� 7" �� �������� &�� �� ����:�� �& �� ����� �� � ��)���" �� �� �� �- � &� ��� � ��� ����� � �� � ��� � ����� �� �� '� �� �� �� ������ �& �� ?����� ���� � ��� �& �)��� ���� �� �& ������:�� �� 7 �� ' �� � ?����� ���� � ��� &�� �)��� ���� �� �& �� ����:���

������� �� 3������ ���(������� �� �!� ������ ���!�� . �� �:����� �� �� �������& � � �� ����� �� � �� � ������ ������� � ������� �� �� ��� ���� ������ � � ����:��" ����� ������ �� 7� �����&���" �� �:��� �� ������ ����� ��/��� ��� ����� &������� � �� ����� ��� &��� ��� ��� 5���)��" ���� �� ���� ��� &�� &����� ���� � ������ �������/��� ��� ����� �& �� �����" ������� ���� ��� ���� ���������� &�� ������ ����� ��/��� ��������� . A88��B 8������ � ��� ����� �� �� ����� ��� �� ��� �� +����� ��� � ������&� ��� �, �� �� ������ &���� �� �:�����)� ������ ��� �� ��� ��!� �� �$%������� ���� �� ���������� � # ��� �� &�� �#���� ���� � � � ��� �� &�� ������ ����� (�������� ���)� ���� �� ���� � G������ ����� ��/��� ��� ����I" �� ���� �������� �� �� ���� ��� ���� &�� �� ������ �����

.�4 ������ ,��2

��� ������ ���� ��� �������� �� � �������� ���� � ������ A;80#7B �� �:����� ���������� �� �������� . ����� ���� &�� ���� �������� �� ������� ���� �� 0�1 ����" 5��������� � �� ������ =�� ��� ����� ������ �& �� ����� ��� � �� ������ ����" ��� *��� %������ �������� �& ������ ���� ���� ���� �� �& ������ ����� ��/��� ��� �����< � �

������� � ����� �� ���� �� �& ���� �:�" � � �&�� �� � ��� �� �& �� ������" ������� ������ ���� �� ������� ��� ���������� � �� ��� ������ ����� ��/��� ��� ���� �& �� ������� 8������ � ��� A88��B ���� ���� ��� ���������( ���� ������ ���� �� 5� � � U� � A5U��B � % ��� �� �& �� ����� ��� �������

&�� .�.�* ����� ��� ���� �� ���� � % ��� �� �& �� ����� ��@����� ��� ��� �� ���:��� �� 8������ � � 8� ���D� ���� +�� ���� A5U��B ��@����� ���� � ������ � � � ������ A88��B ����% � ������ �," �� &���� ���� �:� +�� ���� A5U��B ��@����� �3 ��

���� �:� � � �� ���� A88��B �� ���� �:�,�

3�

Page 33: NTT=24( & ) + , = 7 Encryption and Decryption Logic Output Registers Plaintext / Ciphertext Critical Path of Data Encryption (or Decryption) Ciphertext / Plaintext Data Selector and

�������� �� � � ��������� ������� ��������� ���������

.�5 '��������� ,��2 ��� *���� ��� ,��2

��� � �������� ���� �������� � AC8#7B �� �������� ���������� � ����� � ������� �� ����� ��� ��������� &� ��� ����� ��� ����� �& � �������� ���� �� ��" ������� ������ �" �& �� �������: �� ������� ��

�� � ���� � ��� �� ���� �� �:������� �& �� ���� �: ����� � ��� �& � � �� ���-��� ��� ! " �� ���� � ��� �� ���� �� �:������� �� �� �� ������ ��� � ! ����� �& ���� �:� � ��������:�� 9 �� �� ������ �� ����� �� ���� � ��� �� ���� �� �:������� " �� �� � ����� � ���� �: � � �� �������� �� � �������: �� ������ � � �������: � � �� �������� �� ����� �: &�� �� ��� ����� � ��� � �� ���� *� �� ! ���� � �� �� �� ���:�� � � �� � ��� �& ����� ��@����� &�� �� ����" � �� � ���� � ��� ! �� ����� �� ��������� .& ! ���� ����� �� � �� � �������� &�� �� ������� � ����� ! ���� �:��������: �����" �� �������� ������ ���� � � �������� �����>� ��� �� ���� A(��B �� � �� �����!��� �& �� � �������� ���� AC8#7B� ( ��������

������� �� �)������ �� ������� ���� � �� ��� �� ���� ��� �������� � A(��B� ���������� &�� �� ��� ������ � ����� � � ���� �: ��� � � � � �������: ��� �)�� 4=+��,��� � �� ������� � ����� �� �� ���!�� �� �������

���� �< * ����� � ��� �& � � �� ���-��� � &�� ����" �#��" � � �$%��� ����

���� � �� Q ��� �" +" 6, ����� � �� Q ��� �6 �$$���� ��� �� �$%

����� �� ����� �� �� ����� �� ������ ���� � �� ��� �� ���� � ����� � � �������� ����� . ���� � ����� �� �� ����� �� ������ ���� � ������ ���� A;80#7B &������� �� A(��"������ 3B�

.�6 7� 89�:���� ����

*� �� �� �� �& ������� �� ����� �� �� ��� �������� �� �� �� ����� �� ����� ���" ������ � �@��)��� �� �& ������� �� ����� &�� ���� � ����� ����� �����&���" �� �:��� ������ ��� � ���� � ����� ���� ��� �& ����� � ���� ���� �& � � ���� �:� � � �� �� ��������:�

.��; ���� ,��2

. A?�##" ?���B �� ����� ����� ���� � �������" ����� � ������� ���� � A?#6" 8#3B� . ��������� � ��� ���� �� ������ ������� ��� ��� ���� ��� � &� ��� �" �� ��" �@����������� � � �@��� ������� � �� ��� � &� ��� �" ��� ���������� � ����� ������. �� �����" ��� � � �����&� ��� � ��� G� �����I ����� �)��� % ��� �� �& � =�����

����� � ���)��� � ���������� ������ ��� ��� �����)��" &�� �� )������ �& �� �����������" ����� ����� ��� � � �� )��� � ������ � ������� +*�� *���� %���,�

3�

Page 34: NTT=24( & ) + , = 7 Encryption and Decryption Logic Output Registers Plaintext / Ciphertext Critical Path of Data Encryption (or Decryption) Ciphertext / Plaintext Data Selector and

�������� �� � � ��������� ������� ��������� ���������

.��� !������2�� ,��2

�� ��� �� )� ��� �� �� ��� �������� �& �� ����� ���� ���������� ����� A?#6" 8*�#%B )�����-���� . ���� �����" � ������ �� �� ���� � �� � ������ � ��� � ��)���� ������ �����.& �� ������ ����� " ���" �� ����" �� � �� �� �& �� �������� �� � ������ � ����� ��������� �� �� ������� � ��" � ��� ���� � �������� � ������ ��� �� ���� ����� � ����� ���� �& ��/��� ���� �:�� 5���)��" �� �� �� ������� ���� � � � � � � " ����� ��� �������� �& � ������ �& � ����� ���" � � �& � ������ �� � � ��� �� �� ����� ���" �� �� D�� � � � � �������" � � )��� )����" ���� ������ ������ � ���� �� )��� ���� � �� ��� � ��������

.��� ������ $���

��� �& �������� ������������� ���� �� � �� ��/��� ��� ���� � � ���� ����� ����������� =�� �:� ���" � �� &��@�� �� ��������� ��� � � �������: ��� ��� �� ��� � ����� � � ���� �: �� �� �� ��� � ��� (������ � � �� ��' ��� � � �� ������� �& ����/��� ��� ��������� ����" �� ������ �� � ��/��� ��� ����� � ����� �� �� � ��� �&�� ��� � �� ��� �� ���� � ���&� 9& ������" �� �� ' � � �������� ���� ���" �& �� ��)�� ���� �� ����� �� ��������� 5���)��" � � � �� ����� ��� � �-��� �������� � �� ������� � �������� ������ &�� � ������ ����� ��������� �� �� &������ �� . �� &��@�� �� ���� &�� � ��� � &� ��� " ������� �& �� �� ���

�� ����� �� ��������� 5���)��" �� �� � �� � �� � ��� �'�� " ������� �� �� �� ����� ������ �� ���� � ���� ���� �������� ��������� &�� �� ��� � &� ��� �� ����� ������������ ��������� &�� � ������ � � �� �� ���� �� ���� � ������ �� ����� ���� ����������������� &�� �� ��� � &� ��� �� ���� � ���� ���� �������� ��������� &�� � �������. �� �0K2�0�� 0���� ���� A���B" � �� ������� �� �� �)��� �����/�� �)������ �

�� ����� ��� ���� � � �� ��� &�� � �� � ��� � ����� ��)��� &�� �� �:����� )���� � �� ��� � &� ��� " �� � ��������� ������������� � �� ������ �� �!� � ��� �&�� �� 6���� ��

.��� '���������� ,��2�

. �� ���� � �� �� � ���� � ��� � ��� �� ���� � &�� ��� �� � � � ����� A8#%B ������� � ������ ����� A8CC##B� J�� � �� ������'���� �������� � A;0##B" �� ����� �� � ������� �& G&�)������I ������� �" �� �� � ���� � �� ������� ������� � � � ������������ � � ':������� ��9 �� ���� �� �" ����� � ��� A�C00##B ���� � �� ��� (�* �� ������ ��� ���������� �

����� � ������ ������ (� ���� �� ������ �� ����� ��� ���� ����" ��� � ����� ���� ������ � ������ ����� �� � � �� " �� �� ���� � ����� � ������ ����� ��� 1�� ���� � ���� � �� �� ����� ������ �� ������� �� �� �������� ��� �@��� � � ������ � �� �)�������� �� ������� ������� ����)�� &�� �� �����'���� " �� ������ � �� ����� ��� �� ���� ���� ���� � � ��� � ��� ����� ���� �� ���������� � �� ��� &�����

3�

Page 35: NTT=24( & ) + , = 7 Encryption and Decryption Logic Output Registers Plaintext / Ciphertext Critical Path of Data Encryption (or Decryption) Ciphertext / Plaintext Data Selector and

�������� �� � � ��������� ������� ��������� ���������

.��� 0��� &���� ,��2�

��� ���� &���� ����� ��� ���������� � � � ���� � ���� ����� ������" � � �� �������� �� ��� ���:�� ���� �� � � �� �� ����� ��!� �� ��� ��!��" ���������� �& �� ����� � �� ����� ���� ����� ��!� �& ������ � � ������ &�� �� ���� ��� ��!�� �& ����" �#��" � � �$%���� . ����������� � �����" � �� ��� �� ��� ��!� � ����

$@!�����%� .�( �����!� . �:�����)� ��� ������" �& � ������ ��� � � ���� �& ���� �:� � �������: � ������ � ��? ���" �� �� ' � �� ������ ��� �� � ����� � �� ���� �:��� ��� �� �������� �����( ���� ��� � �� ��� �������� � �& �� ������ �� ���� � ���)� �� �-��� �� �& �:�����)�

��� ������ ���� A8#6B" �� �� ��)� � &�� � ���� � ���� ��� � �� ������ ��� �� ���:���& �� �:�����)� ��� ������ �� ��� ��� � �� ���� ���� � ������ � � �)������ ����" ����@����� �� ���:�� &�� �:�����)� ��� ������ �� ���" ����" � � ���� � ������ � &�� �� �������� ����" �#��" � � �$%��� ����" �������)���� �����&���" �� �����D� ������� ���� � �:�����)���� ������ �� ���@����

���5�����( ��� �5�B �����.� ����� ��� �� � ����� �� ��� �&� ���� � ���� �:��.& � ������ � ����� ���� � ���� �: ����� ��� � �� ���� � � ���� �� � ����� &�� ��

�������:�" �� �&�� �� ��� �� �������� �� � �������:" �� � �� ��� � ���� � �� � ' ��� �������� �� � ���� ���� ���� �� ������ ���� ����� . ��� ����" �&�� �� � ������ ���� �" �� ���� �� ���:�� �� ��� � ����� �� �� ��� &�� �:�����)� ��� ��������� �� � ��� ������/ ���� A5��" 8�#%B �� ���������� ������ ��� � � �� ���:�� �

� ������� �������:� �& �:�����)� ��� ������ � � ����� �� ���:�� �& ���� ����� 5���)��"��� ����� ��@���� ����� ����� �@��)��� � �� � � �� ���:�� �& �:�����)� ��� ���������� ��� ��!�� �������� �� �� ����� ��� �� � � ���� &�� ������� ���� � �:�����)� ��� �������� ����D� ��� ������

���������( �����.� . ����� ��� ����" � ������ ������� ���� �:��������: ����� � ����� �� � ��� � � �� �� � � G����� ���I� ��� �� ������ �� ��� � �� � �������:� ������ �� �� ���" �� �� ����� �& � �� � �� ����� ���� .& � ��" �� ��� ������� �� ���� �:�*� �� �� ����� ��!� �& �� ����� �� ��� ���" ����� ��� ���� ����� ��@���� �� ����� &�� ����

��/��� ���� �: ������ � ����� �� ������� � � ���� �� ������ �������� ������� � ���� � � �� ���� ��� ������� ���������� ���� �� � �� ����� &�� �� ����� ���" � � ���� ����� ��!� �� ������" �� ��@����� ����� � �����)� �� �� � ������� ���������� � ��������:�� � ������ ��� ������ ����� ������ �� ����� ��� � ���� ������� ���� � ��� �����

;���!��� ���!����@� �����.� . ���� � �������: ���� A8#�" ������ �B" ��� ������ �@���� ��� �& ��� �������:� ��� �)������� ��� ���� �������: ������ �� �� �:����� ������������� ��� �� �

� �� �� G������� ������:I &�� �� � ���� �& ������� � ���� �� ��?"�?�" � � �=? ����� ��� " )������� � &�� ��� ���� �� ���� �:� �� �� ����)��� ��

��������� ���� �� �� ��������� ��� ������ ��� �� ������ � �� � �� ������ � �� �� �����

����� ������ �� ������ � � �� ����� �� ������ ��� � � � �� ��� �� �� ��� �������� ��

������� �������

33

Page 36: NTT=24( & ) + , = 7 Encryption and Decryption Logic Output Registers Plaintext / Ciphertext Critical Path of Data Encryption (or Decryption) Ciphertext / Plaintext Data Selector and

�������� �� � � ��������� ������� ��������� ���������

�� ��� ���� �� � ���� �� �& �� ��� ��!�� *� �� �� ����� ��!� �& �� ����� �� ��� ���" ������ � ��� ���� �� � ���" �& � ������ �& �� � � �� ��� ������ � ��� �� �� � ��� �� ����&�� ���

36

Page 37: NTT=24( & ) + , = 7 Encryption and Decryption Logic Output Registers Plaintext / Ciphertext Critical Path of Data Encryption (or Decryption) Ciphertext / Plaintext Data Selector and

�������� �� � � ��������� ������� ��������� ���������

& ������� ��

�� ��)� ����� �� �� �����" �� ���� ��� ���� � �� ����� " �� ��������� &�� ��� ��&����� � �������� � ��� � ��� " � � �� ������ �& ��� ����� ���������� ���&�� � ��� ���� � ��� ����� ���)� ��� &�� &����� ��� �!��� �� ��� ����

���&�� � �� ������ ���� �� ����� � �� �� ����� �� � ����< ���������������������� ������������� ��)� � ���!�� �� ����� � � &�� � � � ���� ���� ���� ��� ������ ��� � �� ���)��)�

����� � � � � �������� ����� ���� � �� ����� ����� ��@���� � �1�� ����������� � ������ �& ����� ������� �� �� � �� �� ����� �� � )��� ��� � ������" ����� ����� �� ��������& �� �:��� � ��� ����� ��������

3$

Page 38: NTT=24( & ) + , = 7 Encryption and Decryption Logic Output Registers Plaintext / Ciphertext Critical Path of Data Encryption (or Decryption) Ciphertext / Plaintext Data Selector and

�������� �� � � ��������� ������� ��������� ���������

���������

A(��B 8� (���� 2������� �)������ �& *������ ���� � 4� �����!�� . �������� (��������� ��� ������ � � ���� ���� �� ������� ���� ���� ������ � � � ������

���� ��� ���� �" O��� ��3�(" �� �" ��� 33H3�" ����� +( ����� � ��� )����� �������� �� � *(�D##,�

A(?8#�B 0� ( ����� " �� ?��� " � � >� 8 ���� � *���� < ( =��:���� ?���� ������ �����:� � (����� ��� . ��� ����� ��� �� ������ �� ���� ��" �##��

A(.8����B 8� (���" �� .�������" �� 8� ��" �� �����" *� ������" C� ���1� �" � � �� ������. ��� � ��� � �& �� ������ ����� ������ H �������� H� ���� ���� 0����.*�������73" ��� . ���� �& ������ ���" . &�� ��� � � �� � ����� � ��� ����" ����� +� C��� ���,�

A(.8����B 8� (���" �� .�������" �� 8� ��" �� �����" *� ������" C� ���1� �" � � �� ��������������< ( ����?� ?���� ������ *������ &�� ������� 2��&�� � H �:� ��� (������ H� . ����� ����� !��"���" �����

A(J��B 8� (��� � � 5� J���� 9�� �!�� *�&���� . ��� � ��� � �& ��� �����

��� ������ � � ���� ���� �� ������� ���� ���� ������ � � � ������ ���� ���

���� �" O��� ��3�(" �� �" ��� ���H��$" ����� +��� &��� ����� �� �)������� � ����������������������! ���������"#$ ��%�&��'����,�

A?#6B �� ?��� � �� ����� �& ����� ����� (���� J�� � 0����� 8���� ��� �� ���������#�" O��� 7" �� 6" ��� ��#H�6%" �##6� +��� �:� ��� ������ ��� ��������� �J09�0K2�D#3,�

A?*#3B �� ?��� � � (� *�� ��� $�%��� ���� ����� ������ �� ��� $��� � ������ ��� ������ *��� ����O�����" ?���� " 5���������" �� K���" �##3�

A?�##B (� ?������) � � ;� ��� ��� *���� (����� . >� 8 ���� " �����" ���� ����&���� ������ ' (�� � ��� ���� �� !��"���� ���)**" O��� � �%3% �& +����� ����� ������ ���� ��" ��� �6$H�$#" ?���� " 5���������" �� K���" �###� *��� ����O������

A?���B (� ?������) � � ;� ��� ��� (�)� ��� *���� (����� . *� O���� ��" �����"��,� ��� � �������#� ' �-./�.01�2333" O��� � ���7 �& +����� ���� � ������ ���� ��" ��� $�#H%�%" ?���� " 5���������" �� K���" ����� *��� ����O������

A�#�B �� ��@ �� ���� ��������� � ���� ����������� 4� �5��" �6����� 7�"�##�� +K�� �� ��� ���� �� � ��� &�� �� ��@D� ��� ���� ���� � ���� �������< ����������� ������������������(��������� ����������

� ���������(���������,�

A���B �0K2�0��� �0K2�0�� 0���� ����" (���� �����

3%

Page 39: NTT=24( & ) + , = 7 Encryption and Decryption Logic Output Registers Plaintext / Ciphertext Critical Path of Data Encryption (or Decryption) Ciphertext / Plaintext Data Selector and

�������� �� � � ��������� ������� ��������� ���������

A�C00##B *� �����" �� C���" C� 0� 0��" � � 2� 0������ ( ����� ��� �� 0������ � �)������� �& (�* �� ������ � * ��������� . ���� � ��,� ��� � ������ ��� ������ ������ �� ���� ��" ��� �33H�67" 5��� U���� ���" 0� �" .���" �###� . &�� ��� ���� ����� >��������" ��� �� . ���� �& *� ����� � � ���� ������

A�O#$B =� ������� � � *� O���� ��� >� �� ?���� ;�/��� ��� � � >� ��� ����� �������� . (� ;� *� ��" �����" ��,� ��� � �������#� ' �-./�.01�)*7" O��� �#$� �& +����� ���� � ������ ���� ��" ��� 3$%H3%$� *��� ����O�����" ?���� "5���������" �� K���" �##$�

A;80#7B C� ;�� � " >� 0� 8 ���� " � � O� 0�1 � � ��� ?���� ������ ������� . �� ?��� "�����" ���� ����&��� � ������ ' 7�� � ��� ���� �� !��"���� ���)*8" O��� ���%7 �& +����� ���� � ������ ���� ��" ��� $6H%�" ?���� " 5���������" ��K���" �##7� *��� ����O������

A;0#�B C� ;�� � � � O� 0�1 � � ��� 1������9 .�: ����" �##�� +���������������� �� ����������)�� ������ ������,�

A;0##B C� ;�� � � � O� 0�1 � � 0����� �� (��� � . ��� � ��� (����� ( �� ������)� *��� �& �� (�* 2��������� . ��� ���� � ��� �� ������ �� ���� ��"�###�

A=��B (� =��� 4�& �� ������� ��� ��� 1� ��� ��������������" ����� +��������������������������,�

A5��B �� 5��� � � ( ����� ����� � �� � ��� ������/� ���� ��� ������ � � � ��������� ������" O��� .���%" �� 6" ��� 6��H6�%" �#���

A5U��B K� 5� � � *� U� �� *@���� (��� � 0������ �� ����� ������� ��� ��� � ��3�� . �� ��� �� �� &��� �� � . &�� ��� � � �� � ����� � *������ +.�.�*����," �����

A.##B . �� ��������� � � ��� ����������� ����&��� $�,�����)� ;� �� �6���� 29 � �������� ��� .����� ���" �###� +K�� �� ��� ���� �� � ��� &�� . ��D� ��)���������< �������������������������,�

A.*8���B �� .�������" �� *��� ����" �� 8�����" � � �� ������ 9 �� ������� �& ���������)������ �& ����� ������� +�,� ���� ���� 0���� .*�������$3" ��� . ���� �&������ ���" . &�� ��� � � �� � ����� � �� ����" ����� +� C��� ���,�

AC8#7B �� C������ � � >� 0� 8 ���� � ��� . �������� (��� � ?���� ������� . �� ?��� " �����" ���� ����&��� � ������ ' 7�� � ��� ���� �� !��"���� ���)*8"O��� � ��%7 �& +����� ���� � ������ ���� ��" ��� ��H6�" ?���� " 5���������"�� K���" �##7� *��� ����O������

A8#3B >� 0� 8 ���� � ����� ������ �& >98.#�� . C� *������ � � K� V�� �" ������" ���,� ��� � �������#� ' �-��.01�)*2" O��� � 7�� �& +����� ���� � ���������� ��" ��� �#%H���� *��� ����O�����" ?���� " 5���������" �� K���" �##3�

37

Page 40: NTT=24( & ) + , = 7 Encryption and Decryption Logic Output Registers Plaintext / Ciphertext Critical Path of Data Encryption (or Decryption) Ciphertext / Plaintext Data Selector and

�������� �� � � ��������� ������� ��������� ���������

A8#6B >� 0� 8 ���� � 2��������� ������ =����� �������� . 0� ( ����� " �����" ��������&��� � ������ <**= ' ���5���#� ������� !��"��� ����<�" O��� � ��# �&+����� ���� � ������ ���� ��" ��� ���H���" ?���� " 5���������" �� K���"�##6� *��� ����O������

A8#$B >� 0� 8 ���� � ��� ���� � � 5����� 9���� ;�/��� ����� . ?� 2�� ���" �����"���� ����&��� � ������ ' ���� � � ��� ���� �� !��"���" O��� � ���� �& +����� ���� � ������ ���� ��" ��� �#%H���� *��� ����O�����" ?���� " 5���������" ��K���" �##$�

A8#%B 2� 8������ �� � � (���� � . ��� � ��� � �& ;�-��5��� � " 0*(" ;**" � �9��� *��� �� . � 8����!" �����" ��,� ��� � �������#� ' �.01�/)*("O��� � ���# �& +����� ���� � ������ ���� ��" ��� ��6H��3� *��� ����O�����"?���� " 5���������" �� K���" �##%�

A8#�B >� 0� 8 ���� � ?���� ������� W ( *��)��� . ?� 2�� ��� � � O� 0�1 � " ������"����� �� ��� ��� � ����� �����#����" O��� � �$�� �& +����� ���� � ���������� ��" ��� ��H6�" ?���� " 5���������" �� K���" �##�� *��� ����O������

A8��B �� 8� ��� 2������� *������ �)������ ���� � ;�/��� ��� � � >� ��� (���� &��=����� ������� ��� *2 0�� � =� ��� � . ���2333� ��,� �� � �� !��"���� �������� ����� � �����#����� <7�<> �#�� 2333� !��"��� .�����" �����

A8CC##B 2� 8�����" C� C�/�" � � ?� C� � ;�/��� ��� 2���� ( ������� . �� ��� ��" �����"��,� ��� � �������#� ' �.01�/)**" O��� � �%%% �& +����� ���� � ���������� ��" ��� 3��H3#7� *��� ����O�����" ?���� " 5���������" �� K���" �###�

A88��B �� 8������ � � �� 8� ���� ( *��� � 5����� 9���� ;�/��� ��� (��� �&�� ������ . ���� � ����� !��"���" ����� +���� ����� �� ����� � �� 8������"K� 9����� � � �� 8� ���" G( *��� � *�� �� �& �� ����� ���� � 5����� 9����;�/��� ��� (���"I +� C��� ���," ���� ���� ����� �& .�.��" .*�������#" ���$$H%�" ��� . ���� �& ������ ���" . &�� ��� � � �� � ����� � �� ����" �����,�

A8�#%B 8� 8����� � � �� ���� ��� 9�� �!��� �& �� ���� ��� ������9/ ������ ������ � � .� (�������� � ;�*" =�(>�3�" � � *���1���� ����� ��� ������ �� ���� ���� �� ������� ���� ���� ������ � � � ������ ���� ��� ���� �"O��� �7#�(" �� �" ��� 3$H6�" �##%�

A8�(�#�B �� 8� ��" *� ������" 8� (���" 5� J���" �� 9�����" K� ������� �" 8� 9��" � ��� ���� ��� ( �� ������ ?���� ������ ��� ���� ���� 0���� .*��#����"��� . ���� �& ������ ���" . &�� ��� � � �� � ����� � �� ����" �##�� +� C��� ���,�

A8*�#%B C� 8�����" ?� *�� ����" � � ;� ��� ��� 8���*������� ����� ������ �& .;�(" 4�;�*" 49*�" *(=�0" � � �������;�*� . � 8����!" �����" ��,� ��� � �������#�' �.01�/)*(" O��� � ���# �& +����� ���� � ������ ���� ��" ��� �37H�$��*��� ����O�����" ?���� " 5���������" �� K���" �##%�

3�

Page 41: NTT=24( & ) + , = 7 Encryption and Decryption Logic Output Registers Plaintext / Ciphertext Critical Path of Data Encryption (or Decryption) Ciphertext / Plaintext Data Selector and

�������� �� � � ��������� ������� ��������� ���������

A8���##B �� 8� ��" K� ������� �" �� ���� ��" 8� (���" � � 8� 9��� ( *����� &���� ����� � =�� 0�� � =� ��� � ��� 2������� *������ ���� � ;�/��� ��� � �>� ��� ����� ������� . *� ��)���� � � 5� ���1��" ������" �������� ����� � ������#���� ' >�� � �� � ��� ���� �� !��"���� ���)*?" O��� � �$$% �& +����� ���� � ������ ���� ��" ��� �%6H�7#" ?���� " 5���������" �� K���" �###�*��� ����O������

A>��#�B L� >��" C� >� ������" � � *� ������� �����) ������� � � ;�/��� ��� ����� �������. ;� �� ;�)���" �����" ��,� ��� � �������#� ' �-./�.01�)*<" O��� � $67 �&+����� ���� � ������ ���� ��" ��� �7H3�� *��� ����O�����" ?���� " 5���������"�� K���" �##��

A�#6B �� ������ >� ��� ����� ������ ����� &�� ;�* ������� . �� 5�������" �����"��,� ��� � �������#� ' �-./�.01�)*=" O��� � 7%$ �& +����� ���� � ������� ���� ��" ��� 3�%H3#7� *��� ����O�����" ?���� " 5���������" �� K���" �##6�+( ����� � ��� )����� ���� � C��� ��� ��� ����� �� � *�.*#3�3�,�

A�#$B �� ������ 9 ��������� ?���� �� 9���� �& *���:�� � � �� *�� �� �&;�*� . (� ;� *� ��" �����" ��,� ��� � �������#� ' �-./�.01�)*7" O��� �#$� �& +����� ���� � ������ ���� ��" ��� 3%%H37$� *��� ����O�����" ?���� "5���������" �� K���" �##$�

A�#7B �� ������ �� ?���� � ������ (������ �.*�K� . �� ?��� " �����"���� ����&��� � ������ ' 7�� � ��� ���� �� !��"���� ���)*8" O��� � ��%7�& +����� ���� � ������ ���� ��" ��� $6H%�" ?���� " 5���������" �� K���"�##7� *��� ����O������ +( ����� � ��� )����� ���� � C��� ��� ��� ����� �� �.*��#%���,�

A�##B �� ������ ;�/��� ��� 2�� *����� �& �� ?���� ������ ��� ���� ���� 0����.*��##��#" ��� . ���� �& ������ ���" . &�� ��� � � �� � ����� � �� ����"�###� +� C��� ���,�

A�.KK��B �� �����" �� . ���" (� K� ������" � � 5� K������� ( �� � ��������� ��������)�� 4=+���,� ���� ���� 0���� .�����6" ��� . ���� �& ������ ���" . &�� ��� � � �� � ����� � �� ����" �#��� +� C��� ���,�

A�*(8��B *� ������" �� *����" 8� (���" � � �� 8� ��� *������ �& �� ���� � ��� ����;�/��� ��� ����� ������� . 5� 5��� � � �� (�� �" ������" �������� ����� � �����#���� ' (�� � �� � ��� ���� �� !��"���� ���)**" O��� � �7$� �& +������ ���� � ������ ���� ��" ��� ��%H��7" ?���� " 5���������" �� K���" �����*��� ����O������

A��##B �� ����� � � �� ������ ����� ������ �& � 0������ O����� �& �� ?���� ��������� . >� 8 ���� " �����" ���� ����&��� � ������ ' (�� � ��� ���� �� !��"����

���)**" O��� � �%3% �& +����� ���� � ������ ���� ��" ��� 7�H��" ?���� "5���������" �� K���" �###� *��� ����O������ +C��� ��� )����� ��� ����� �� �*�.*##�,�

3#

Page 42: NTT=24( & ) + , = 7 Encryption and Decryption Logic Output Registers Plaintext / Ciphertext Critical Path of Data Encryption (or Decryption) Ciphertext / Plaintext Data Selector and

�������� �� � � ��������� ������� ��������� ���������

A0;2�#%B O� 0�1 � " C� ;�� � " ?� 2�� ���" (� ?���������" � � �� ;� �� � ��� ������*5(08� . ;� 4��� � " �����" ���� ����&��� � ������ ' ����� � ��� ��

��� �� !��"���" O��� � ��3# �& +����� ���� � ������ ���� ��" ��� ##H����*��� ����O�����" ?���� " 5���������" �� K���" �##%�

A*8.��B �� *����" 8� 8�����" � � 5� . ��� *������ �& 0������ O����� �& �� ?���� �������� ����� ���� � ��� ���� � � . �������� ;�/��� ��� ����� ������� ��� ��� �(*.(�0K2� ����" �����

A�##B ;� ��� ��� ��� ?�� ��� � (���� . >� 0� 8 ���� " �����" ���� ����&��� � ������� ' (�� � ��� ���� �� !��"���� ���)**" O��� � �%3% �& +����� ���� � ������ ���� ��" ��� �$%H�7�" ?���� " 5���������" �� K���" �###� *��� ����O������

AK���B ���5� K� �� 2��&�� � �� �)������ �& (�*E;�*E�� ����� � �� %��$ � � 5�E3���2J�� . 1������� #� �� ��� 233< ������� � �����#���� � � � �������� �������" O��� � .. �& ����233<" ��� 7�7H73�" 9���" C��� " ����� ���� ���� 4����� . &�� ��� *������ +.�.��,�

AK���B ���5� K� �� *����� � ��� � &�� ��� &�� ��5� K� � *�.* ���� ��������<EE��������������� E���� ���E*�.*����" �����

6�

Page 43: NTT=24( & ) + , = 7 Encryption and Decryption Logic Output Registers Plaintext / Ciphertext Critical Path of Data Encryption (or Decryption) Ciphertext / Plaintext Data Selector and

�������� �� � � ��������� ������� ��������� ���������

' ! ���%

O�� ��� +*��� ��� �%" ����,

� (����� ��� �� ���� ��� �� ���� ���&�� � �� '������

� *���� �" �� ��������� �& G=���� ��)���� � �I ��� �� ���� ����� � �� ����� ����� ��� ��� ��� ���� ��� ��� � � G*� �����!��� ���)����I�

� *���� 3 ��� �� ���� ��� �� ���� ���&�� � �� '������

� . *���� 6���7" �� �@���� � �������� �@�+3, ��� � � �� &��� �����" ��� ��� ��� ���"��� ���������

� *���� $ ��� �� ���� �� ���� � �� ���� � &�� ��� � �������� �)������ ��

� . *���� %�� +;�/��� ��� � � >� ��� ����� ������," � ����� � ������� GJ������� �� �& ��/��� ��� ������������ ���������� �& �� �����I +� �� ��� �& G�������������&� ��� �I, ��� ':���

� *���� %�� +��� ���� ;�/��� ��� ����� ������, ��� �� ���� �� ���� � �� ���� ������

� *���� %�6 +����� ������ ��� . �������� ;�/��� ���, ��� �� ���� �� ���� � �� ���� ������ ( ����� ��� ���� ':��< G ��� �� % ��� ��I � G ��� �� $ ��� ��I

� *���� %�% +5����� 9���� ;�/��� ��� (���, ��� �� ���� ����� � �� ���� ������

� *���� %�7 +������ (���, ��� ������

� *���� %��� +*������� ����, ��� �� ���� �� ���� � ��� � &�� ��� �

6�