The AES-C core implements hardware data encryption and decryption using Rijndael encoding in compliance with the FIPS-197 Advanced Encryption Standard (AES). It runs any one of the common block-cipher modes: ECB, CBC, CFB, OFB, or CTR.
The core can be run-time programmed to perform either encryption or decryption, and to use a 128-bit, 192-bit or 256-bit cipher key.
Two architectural versions are available to suit system requirements. The Standard version is more compact, using a 32-bit datapath and requiring four clock cycles for each data block. The Fast version achieves higher transmission bit rates (throughput), using a 128-bit datapath and requiring one clock cycle to for each data block. The Fast version can achieve throughput rates of 2 Gbps or more in FPGAs, and 5 Gbps or more in ASICs.
The core includes an internal round key table in which expanded AES encryption and decryption key values are stored. An optional Key Expander module can automatically generate the round keys and fill the table, or this can be handled externally by the user.
Fully-stallable input and output interfaces simplify AES integration for different applications. These enable system software to stop the input stream according to a specific data arrival rate, or to stop the output stream when the core is not able to receive data.
The core has been verified against the AES FIPS 197 standard using the NIST AES Algorithm Validation Suite (AESAVS), NIST document SP800-38A, and additional random test vectors. Deliverables include all these tests, plus a bit-accurate model (BAM) for generating additional test vectors. The AES-P core has been evaluated in a variety of technologies, and is available optimized for ASICs or FPGAs.
Features
# Conforms to the Advanced Encryption Standard (AES) standard (FIPS PUB 197) # Single module efficiently integrates multiple AES functions
# Run-time programmable for: * Encryption or Decryption * Cipher Key length: 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
# Fully-stallable input and output interfaces, ideal for streaming applications, e.g. system software can: * pause input processing to match slow transmission, or * pause output processing to allow a slower application to catch up with decrypted
data; # Optional Key Expander automatically generates and stores Round Keys for AES processing # Round key (encryption) and inverse round key (decryption) both stored internally
# Optimized design for ASIC or FPGA implementations. # Verified against the AES FIPS 197 standard using:
* Known Answer Tests (KAT) of the NIST AES Algorithm Validation Suite (AESAVS), * Block cipher modes tests of NIST document SP800-38A, * Additional random test vectors
# Deliverables include bit-accurate software model (BAM) for easy user-generation of tests # Scan-ready design architecture
Deliverables
HDL (VHDL or Verilog) RTL source code (ASICs) or post-synthesis EDIF netlist (FPGAs); Synthesis script (ASICs) or place and route script (FPGAs)
Simulation script, vectors and expected results; NIST KAT test vectors, SP800-38A test vectors, additional vectors for block cipher modes
Sophisticated self-checking Testbench (Verilog versions use Verilog 2001)
Software (C++) Bit-Accurate Model for additional test vector generation
Comprehensive user documentation, including detailed specifications and a system integration guide
Market Category
Communications, Consumer Electronics, Data Processing, Industrial and Medical, Military/Civil Aerospace, Others
"iSine provides custom ASIC and SoC solutions to multiple market segments (see www.isine.com). The quality and support of CAST IP cores have saved us valuable time to market with these products. In this highly competitive environment, this advantage is critical to the success of our company. CAST has repeatedly and quickly helped us out of last-minute jams and multi-vendor IP interface issues.
"