- Encrypts and decrypts using the AES Rijndael Block Cipher Algorithm
- Satisfies Federal Information Processing Standard (FIPS) Publication 197 from the US National Institute of Standards and Technology (NIST)
- Processes 128-bit data in 32-bit blocks
- Employs user-programmable key size of 128, 192 or 256 bits
- Two architectural versions:
- Standard is more compact: 32-bit data path size Processes each 128-bit data block in 44/52/60 clock cycles for 128/192/256-bit cipher keys, respectively
- Fast yields higher transmission rates: 128-bit data path Processes each 128-bit block in 11/13/15 clock cycles for 128/192/256-bit cipher keys, respectively
- Supports Electronic Codebook (ECB), Cipher Block Chaining (CBC), Cipher Feedback (CFB), Output Feedback (OFB) and Counter (CTR) modes
- Works with a pre-expended key or can integrate the optional key expansion function
- Simple, fully synchronous, reusable design
- Available as fully functional and synthesizable VHDL or Verilog, or as a netlist for popular programmable devices
- Complete deliverables include test benches, C model and test vector generator
Contact Sales
Call or click.
+1 201.391.8300
Downloads (PDFs)
Related Products
- AES Advanced Encryption Standard Core
- AES-CCM Advanced Encryption Standard Core
- AES-GCM AES GCM Authenticated Encrypt/Decrypt Core
- AES-XTS Advanced Encryption Standard Core
- KEXP Key Expander Core
AES Core Links
FIPS 197, Advanced Encryption Standard (AES): download PDF
AES test suite: The Advanced Encryption Standard Algorithm Validation Suite (AESAVS): download PDF
White Paper
AES-P Programmable Advanced Encryption Standard Core
The AES-P encryption IP core implements Rijndael encoding and decoding in compliance with the NIST Advanced Encryption Standard. It processes 128-bit blocks, and is programmable for 128-, 192-, and 256-bit key lengths.
Two architectural versions are available to suit system requirements. The Standard version (AES-P-S) is more compact, using a 32-bit datapath and requiring 44/52/60 clock cycles for each data block (128/192/256-bit cipher key, respectively). The Fast version (AES-P-F) achieves higher throughput, using a 128-bit datapath and requiring 11/13/15 clock cycles for each data block. It can be programmed to use any of the following cypher modes: ECB, CBC, OFB, CFB and CTR.
The core works with a pre-expanded key, or with optional key expansion logic.
The AES-P core is a fully synchronous design and has been evaluated in a variety of technologies, and is available optimized for ASICs or FPGAs.
This core can be mapped to any any Intel, Lattice, MicroSemi, or Xilinx programmable device, or to any ASIC technology, provided sufficient silicon resources are available. Please contact CAST Sales to get accurate characterization data for your specific implementation requirements. Meanwhile, we provide the following representative results (each in a new pop-up window):
Applications
The AES-P can be utilized for a variety of encryption applications including:
- Protected network routers
- Electronic financial transactions
- Secure wireless communications
- Secure video surveillance systems
- Encrypted data storage
Block Diagram
Support
The core as delivered is warranted against defects for ninety days from purchase. Thirty days of phone and email technical support are included, starting with the first interaction. Additional maintenance and support options are available.
Verification
The core has been verified through extensive synthesis, place and route and simulation runs. It has also been embedded in several products, and is proven in FPGA technologies.
Export Permits
This core implements encryption functions and as such it is subject to export control regulations. Export to your country may or may not require a special export license. Please contact CAST to determine what applies in your specific case.
Deliverables
The core is available in ASIC (RTLL) and FPGA (netlist) forms, and includes everything required for successful implementation:
- HDL RTL source code (ASICs) or post-synthesis EDIF netlist (FPGAs)
-
Sophisticated HDL Testbench (self checking)
-
C Model & test vector generator
-
Simulation script, vectors & expected results
-
Synthesis script
-
User documentation
Comparing AES Encryption/Decryption Cores
AES* (-S or -F) | AES-P (-S or -F) |
AES-GCM or AES-CCM (-S or -F) |
AES-GCM, AES-CCM or AES-XTS (-X or -X2) |
|
---|---|---|---|---|
Run time Programmable Encryption or Decryption operation | yes | yes | yes | yes |
Run-time Programmagle Cipher-Key length | yes | yes | yes | yes |
Run-time Programmable Block Cipher mode | no | yes | no | no |
ECB mode | yes | yes | no | no |
CBC mode | yes | yes | no | no |
CFB mode | yes | yes | no | no |
OFB mode | yes | yes | no | no |
CTR mode | yes | yes | no | no |
LRW mode | yes | no | no | no |
Key Expander | optional | optional | optional | yes |
Number of bits/cycle for128/192/256 key | 2.91/2.46/2.13 or 11.64/9.85/8.53 |
2.91/2.46/2.13 or 11.64/9.85/8.53 |
2.91/2.46/2.13 or 11.64/9.85/8.53 |
128/128/128 or 256/256/256 |
* only one encryption/deceryption mode supported by each release of the core |