IP Library Granted Patent US 7,221,763
Granted Patent B2
US 7,221,763 · App. 10/132,788 · Granted May 22, 2007

High throughput AES architecture

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,221,763
App. No.
10/132,788
Granted
May 22, 2007
Kind
B2
Abstract

An advanced encryption system (AES) architecture includes a maximum parallel encryption module which implements one round of the AES algorithm in one clock cycle, and a maximum parallel key scheduling module which generates sub-keys in one clock cycle in parallel with the encryption module, thereby permitting feedback modes of operation to be used without adversely affecting AES throughput. A controller controls the operation of the encryption and key scheduling modules such that one round is completed per clock cycle. The controller is preferably part of a hierarchical distributed control scheme comprising communicating finite state machines (FSMs). The architecture also preferably includes asynchronous input and output buffers.

Claims (80)

1. An advanced encryption standard (AES) architecture which provides high throughput and low latency, comprising:

a maximum parallel encryption circuit that receives a plurality of data bytes to be encrypted and implements one round of the AES algorithm in one clock cycle;

a maximum parallel key scheduling circuit that generates sub-keys in one clock cycle in parallel with said maximum parallel encryption circuit, said sub-keys provided to said maximum parallel encryption circuit; and

a controller that controls the operation of said maximum parallel encryption and key scheduling circuits such that said AES architecture performs one round of the AES algorithm in one clock cycle;

wherein said AES architecture employs a chosen key-length k and a data-block length m, said maximum parallel key scheduling circuit comprising:

a first key scheduling sub-circuit that receives a previously-generated sub-key and generates a current sub-key;

a second key scheduling sub-circuit that receives the current sub-key and generates a next sub-key; and

a roundkey assembly sub-circuit which receives said previously-generated sub-key, said current sub-key, said next sub-key and which assembles an m-bit roundkey from said previously-generated sub-key, said current sub-key, and said next sub-key, and provides said roundkey to said maximum parallel encryption circuit.

2. An advanced encryption standard (AES) architecture which provides high throughput and low latency, comprising:

a maximum parallel encryption circuit that receives a plurality of data bytes to be encrypted and implements one round of the AES algorithm in one clock cycle;

a maximum parallel key scheduling circuit that generates sub-keys in one clock cycle in parallel with said maximum parallel encryption circuit, said sub-keys provided to said maximum parallel encryption circuit; and

a controller that controls the operation of said maximum parallel encryption and key scheduling circuits such that said AES architecture performs one round of the AES algorithm in one clock cycle;

wherein said AES architecture implements the AES standard with at least 128 bit data-blocks and a chosen key-length k, said maximum parallel key scheduling circuit comprising:

a key scheduling sub-module arranged to receive a previously-generated sub-key and to generate a current sub-key; and

a roundkey assembly sub-circuit which receives said previously-generated sub-key and said current sub-key and assembles an at least 128-bit roundkey from said previously-generated sub-key and said current sub-key, said at least 128-bit roundkey provided to said maximum parallel encryption circuit.

3. The AES architecture of claim 2 , further comprising:

an asynchronous input buffer that receives data bytes to be encrypted, to buffers a plurality of said data bytes in parallel, and provides parallel data bytes to said maximum parallel encryption circuit; and

an asynchronous output buffer that receives an output of said maximum parallel encryption circuit and outputs encrypted data bytes to an output bus.

4. The AES architecture of claim 3 , wherein said maximum parallel encryption circuit comprises:

a substitution sub-circuit comprising substitution blocks which are replicated as needed to receive all of said parallel data bytes from said asynchronous input buffer simultaneously;

a shift row sub-circuit which receives the outputs of said substitution sub-circuit;

a mix column sub-circuit which receives the outputs of said shift row sub-circuit; and

a key addition sub-circuit that receives and combines the outputs of said mix column sub-circuit and said sub-keys from said maximum parallel key scheduling circuit, and provides the results at an output, said output being the output of said maximum parallel encryption circuit.

5. The AES architecture of claim 4 , wherein said maximum parallel encryption and key scheduling circuits are implemented exclusively with combinatorial logic.

6. The ABS architecture of claim 3 , wherein said controller is implemented with a hierarchical distributed control scheme comprising communicating finite state machines (FSMs), comprising:

a main FSM; and

local FSMs which are controlled by said main FSM, said local FSMs comprising:

a maximum parallel encryption circuit FSM which controls said maximum parallel encryption circuit;

a key scheduling circuit FSM which controls said key scheduling circuit;

an input buffer FSM which controls said asynchronous input buffer; and

an output buffer FSM which controls said asynchronous output buffer.

7. The AES architecture of claim 2 , wherein said controller is implemented with a hierarchical distributed control scheme comprising communicating finite state machines (FSMs).

8. The AES architecture of claim 2 , wherein said AES architecture implements a Rijndael algorithm with a data-blocks length of 128, 192 or 256 bits and a key-length of 128, 192 or 256 bits.

9. The AES architecture of claim 2 , wherein said AES architecture implements the AES standard with a data-block length of 128 bits and a key-length of 128, 192 or 256 bits.

10. The AES architecture of claim 2 , wherein said AES architecture implements the electronic code book (ECB) mode of operation.

11. The AES architecture of claim 2 , wherein said AES architecture implements a feedback mode of operation.

12. The architecture of claim 2 , wherein:

a said maximum parallel encryption circuit receives the output of an asynchronous input buffer and implements one round of the AES algorithm in one clock cycle;

wherein said controller is a hierarchical distributed control scheme comprising communicating finite state machines (FSMs).

13. The AES architecture of claim 12 , wherein said maximum parallel encryption circuit comprises:

a substitution sub-circuit comprising substitution blocks which are replicated as needed to receive all of said parallel data bytes from said asynchronous input buffer simultaneously;

a shift row sub-circuit which receives the outputs of said substitution sub-circuit;

a mix column sub-circuit which receives the 10 outputs of said shift row sub-circuit; and

a key addition sub-circuit that receives and combines the outputs of said mix column sub-circuit and said sub-keys from said maximum parallel key scheduling circuit, and provides the results at an output, said output being the output of said maximum parallel encryption circuit;

each of said maximum parallel encryption module sub-circuits implemented exclusively with combinatorial logic.

14. The AES architecture of claim 12 , wherein said communicating FSMs comprise:

a main FSM; and

local FSMs which are controlled by said main FSM, 5 said local FSMs comprising:

a maximum parallel encryption circuit FSM which controls said maximum parallel circuit module;

a key scheduling circuit FSM which controls said key scheduling circuit;

an input buffer FSM which controls said asynchronous input buffer; and

an output buffer FSM which controls said asynchronous output buffer.

15. An advanced encryption system (AES) architecture which provides high throughput and low latency, comprising:

an asynchronous input buffer that receives data bytes to be encrypted, buffers a plurality of said data bytes in parallel, and provides said parallel data bytes at an output;

a maximum parallel encryption circuit that receives the output of said asynchronous input buffer and implements one round of the AES algorithm in one clock cycle;

a maximum parallel key scheduling circuit that generates sub-keys in one clock cycle in parallel with said maximum parallel encryption circuit;

an asynchronous output buffer that receives the output of said maximum parallel encryption circuit and outputs said encrypted data bytes to an output bus; and

a controller that controls the operation of said maximum parallel encryption and key scheduling circuits such that said AES architecture performs one round of the AES algorithm in one clock cycle;

wherein said controller is a hierarchical distributed control scheme comprising communicate finite state machines (FSMs);

wherein said AES architecture employs a chosen key-length k and a data-block length m, said maximum parallel key scheduling circuit comprising:

a first key scheduling sub-circuit that receives a previously-generated sub-key and generates a current sub-key;

a second key scheduling sub-circuit that receives the current sub-key and generates a next sub-key; and

a roundkey assembly sub-circuit which receives said previously-generated sub-key, said current sub-key, said next sub-key and which assembles a m-bit roundkey from said previously generated sub-key, said current sub-key, and said next sub-key, and provides said roundkey to said maximum parallel encryption circuit.

16. An advanced encryption system (AES) architecture which provides high throughput and low latency, comprising:

an asynchronous input buffer that receives data bytes to be encrypted, buffers a plurality of said data bytes in parallel, and provides said parallel data bytes at an output;

a maximum parallel encryption circuit that receives the output of said asynchronous input buffer and implements one round of the AES algorithm in one clock cycle;

a maximum parallel key scheduling circuit that generates sub-keys in one clock cycle in parallel with said maximum parallel encryption circuit;

an asynchronous output buffer that receives the output of said maximum parallel encryption circuit and outputs said encrypted data bytes to an output bus; and

a controller that controls the operation of said maximum parallel encryption and key scheduling circuits such that said AES architecture performs one round of the AES algorithm in one clock cycle;

wherein said controller is a hierarchical distributed control scheme comprising communicating finite state machines (FSMs);

wherein said AES architecture implements the AES standard with at least 128 bit data-blocks and a chosen key-length k, said key scheduling module comprising:

a key scheduling sub-circuit that receives the previously-generated sub-key and generates the current sub-key; and

a roundkey assembly sub-circuit which receives said previously-generated sub-key and said current sub-key and assembles an at least 128-bit roundkey from said previously-generated sub-key and said current sub-key, said at least 128-bit roundkey provided to said maximum parallel encryption circuit.

17. The AES architecture of claim 16 , wherein said AES architecture implements the a Rijndael algorithm with a data-blocks length of 128, 192 or 256 bits and a key-length of 128, 192 or 256 bits.

18. The AES architecture of claim 16 , wherein said AES architecture implements the AES standard with a data-block length of 128 bits and a key-length of 128, 192 or 256 bits.

19. The AES architecture of claim 16 , wherein said AES architecture implements the electronic code book (ECB) mode of operation.

20. The AES architecture of claim 16 , wherein said AES architecture implements a feedback mode of operation.

21. The AES architecture of claim 20 , wherein said AES architecture implements the Cipher Block Chaining (CBC) feedback mode of operation.

22. The AES architecture of claim 20 , wherein said AES architecture implements the Cipher Feedback (CFB) feedback mode of operation.

23. The AES architecture of claim 20 , wherein said AES architecture implements the Output Feedback (OFB) feedback mode of operation.

Assignments (18)
RELEASE OF SECURITY INTEREST Recorded Mar 14, 2022
From: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
To: MICROCHIP TECHNOLOGY INCORPORATED; SILICON STORAGE TECHNOLOGY, INC.; ATMEL CORPORATION; MICROSEMI CORPORATION; MICROSEMI STORAGE SOLUTIONS, INC.
Reel/Frame 060894/0437 →
RELEASE OF SECURITY INTEREST Recorded Mar 11, 2022
From: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
To: MICROCHIP TECHNOLOGY INCORPORATED; SILICON STORAGE TECHNOLOGY, INC.; ATMEL CORPORATION; MICROSEMI CORPORATION; MICROSEMI STORAGE SOLUTIONS, INC.
Reel/Frame 059363/0001 →
RELEASE OF SECURITY INTEREST Recorded Mar 10, 2022
From: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
To: MICROCHIP TECHNOLOGY INCORPORATED; SILICON STORAGE TECHNOLOGY, INC.; ATMEL CORPORATION; MICROSEMI CORPORATION; MICROSEMI STORAGE SOLUTIONS, INC.
Reel/Frame 059863/0400 →
RELEASE OF SECURITY INTEREST Recorded Mar 9, 2022
From: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
To: MICROCHIP TECHNOLOGY INCORPORATED; SILICON STORAGE TECHNOLOGY, INC.; ATMEL CORPORATION; MICROSEMI CORPORATION; MICROSEMI STORAGE SOLUTIONS, INC.
Reel/Frame 059358/0001 →
RELEASE OF SECURITY INTEREST Recorded Feb 28, 2022
From: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
To: MICROCHIP TECHNOLOGY INCORPORATED
Reel/Frame 059666/0545 →
RELEASE OF SECURITY INTEREST Recorded Feb 25, 2022
From: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
To: MICROCHIP TECHNOLOGY INCORPORATED; SILICON STORAGE TECHNOLOGY, INC.; ATMEL CORPORATION; MICROSEMI CORPORATION; MICROSEMI STORAGE SOLUTIONS, INC.
Reel/Frame 059333/0222 →
SECURITY INTEREST Recorded Jun 4, 2021
From: MICROCHIP TECHNOLOGY INCORPORATED; SILICON STORAGE TECHNOLOGY, INC.; ATMEL CORPORATION; MICROSEMI CORPORATION; MICROSEMI STORAGE SOLUTIONS, INC.
To: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 057935/0474 →
SECURITY INTEREST Recorded Dec 24, 2020
From: MICROCHIP TECHNOLOGY INCORPORATED; SILICON STORAGE TECHNOLOGY, INC.; ATMEL CORPORATION; MICROSEMI CORPORATION; MICROSEMI STORAGE SOLUTIONS, INC.
To: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 055671/0612 →
SECURITY INTEREST Recorded Jun 5, 2020
From: MICROCHIP TECHNOLOGY INC.; SILICON STORAGE TECHNOLOGY, INC.; ATMEL CORPORATION; MICROSEMI CORPORATION; MICROSEMI STORAGE SOLUTIONS, INC.
To: WELLS FARGO BANK, NATIONAL ASSOCIATION
Reel/Frame 053468/0705 →
RELEASE OF SECURITY INTEREST Recorded May 30, 2020
From: JPMORGAN CHASE BANK, N.A, AS ADMINISTRATIVE AGENT
To: MICROCHIP TECHNOLOGY INC.; SILICON STORAGE TECHNOLOGY, INC.; ATMEL CORPORATION; MICROSEMI CORPORATION; MICROSEMI STORAGE SOLUTIONS, INC.
Reel/Frame 053466/0011 →
SECURITY INTEREST Recorded Apr 24, 2020
From: MICROCHIP TECHNOLOGY INC.; SILICON STORAGE TECHNOLOGY, INC.; ATMEL CORPORATION; MICROSEMI CORPORATION; MICROSEMI STORAGE SOLUTIONS, INC.
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 053311/0305 →
SECURITY INTEREST Recorded Sep 18, 2018
From: MICROCHIP TECHNOLOGY INCORPORATED; SILICON STORAGE TECHNOLOGY, INC.; ATMEL CORPORATION; MICROSEMI CORPORATION; MICROSEMI STORAGE SOLUTIONS, INC.
To: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 047103/0206 →
SECURITY INTEREST Recorded Jun 25, 2018
From: MICROCHIP TECHNOLOGY INCORPORATED; SILICON STORAGE TECHNOLOGY, INC.; ATMEL CORPORATION; MICROSEMI CORPORATION; MICROSEMI STORAGE SOLUTIONS, INC.
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 046426/0001 →
SECURITY INTEREST Recorded Feb 10, 2017
From: MICROCHIP TECHNOLOGY INCORPORATED
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 041675/0617 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 3, 2011
From: SILICON STORAGE TECHNOLOGY, INC.
To: MICROCHIP TECHNOLOGY INCORPORATED
Reel/Frame 026213/0515 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 21, 2007
From: SST COMMUNICATIONS, CORP.
To: SILICON STORAGE TECHNOLOGY, INC.,
Reel/Frame 019466/0040 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 29, 2004
From: GJ-PLUS, INC.
To: SST COMMUNICATIONS, CORP.
Reel/Frame 016016/0660 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 24, 2002
From: VERBAUWHEDE, INGRID
To: G-PLUS, INC.
Reel/Frame 012840/0906 →