A newer version of this document is available. Customers should click here to go to the newest version.
1. Introduction
2. Interface Overview
3. Parameters
4. Designing with the IP Core
5. MACsec Intel® FPGA IP Example Design
6. Functional Description
7. Configuration Registers for MACsec IP
8. MACsec Intel FPGA IP User Guide Archives
9. Document Revision History for the MACsec Intel FPGA IP User Guide
2.2.1.1. Common Port Mux Interface
2.2.1.2. Common Port Demux Interface
2.2.1.3. Controlled Port Mux Interface
2.2.1.4. Controlled Port Demux Interface
2.2.1.5. Uncontrolled Port RX Interface
2.2.1.6. Uncontrolled Port TX Interface
2.2.1.7. Crypto RX Interface
2.2.1.8. Crypto TX Interface
2.2.1.9. Management Interface
2.2.1.10. Decrypt Port Mux Management Interface
2.2.1.11. Decrypt Port Demux Management Interface
2.2.1.12. Encrypt Port Mux Management Interface
2.2.1.13. Encrypt Port Demux Management Interface
2.2.1.14. Crypto IP Management Bus
2.2.2.1. Common Port Mux Interface Waveform
2.2.2.2. Common Port Demux Interface Waveform
2.2.2.3. Controlled Port Mux Interface Waveform
2.2.2.4. Controlled Port Demux Interface Waveform
2.2.2.5. Uncontrolled Port RX Interface Waveform
2.2.2.6. Uncontrolled Port TX Interface Waveform
2.2.2.7. Crypto RX Waveform
2.2.2.8. Crypto TX Waveform
2.2.2.9. MACsec Management Interface (Read)
2.2.2.10. MACsec Management Interface (Write)
6.4.2.1. Bypass Packet
During the MACsec secure frame verification check, there are a few cases where the IP can bypass the whole Crypto process and redirect the packet to the Controlled port. For example, when there is no SA found for the packet and the validateFrames is not equal to STRICT.
In order to simplify the MACsec IP implementation, the MACsec IP sends the packet with the AAD_Len = FFFF_FFFF. The Crypto AES treats all the payloads as AAD and returns the payloads as cleartext together with the 16B ICV. The MACsec IP then discards the 16B ICV on the Crypto Egress.
TID[31:26] - Stream ID Packet 1 | X | X |
TID[25:16] - Channel Packet 1 | X | X |
TID[15:10] - Stream Packet 0 | 0 | 0 |
TID[9:0] - Channel Packet 0 | 23 | 6 |
Data[127:0] | IV + AAD_Len (FFFF_FFFF) | DATA (Pkt 0) |
Data[255:128] | DATA (Pkt 0) | DATA (Pkt 0) |
Data[383:256] | DATA (Pkt 0) | DATA (Pkt 0) |
Data[511:384] | DATA (Pkt 0) | IDLE |
TID[31:26] - Stream ID Packet 1 | X | X |
TID[25:16] - Channel Packet 1 | X | X |
TID[15:10] - Stream Packet 0 | 0 | 0 |
TID[9:0] - Channel Packet 0 | 23 | 6 |
Data[127:0] | DATA (Pkt 0) | DATA (Pkt 0) |
Data[255:128] | DATA (Pkt 0) | DATA (Pkt 0) |
Data[383:256] | DATA (Pkt 0) | MAC (Discard) |
Data[511:384] | DATA (Pkt 0) | IDLE |