This section
describes the XTS-specific input and output signals.
| Signal Name | Direction | Description |
|---|---|---|
| algorithm_type | Input/Output | Indicates the cryptographic operation mode for the corresponding cycle.
|
| encrypt_decrypt | Input/Output | Indicates the type of cryptographic operation for the corresponding cycle.
|
| key_128b_256b | Input/Output | Indicates the key size. The signal is only valid when the key_en signal is set to 1.
Note: The SM4 algorithm only supports 128 bit key size.
|
| pattern[2:0] | Input/Output |
Pattern ID: Indicates the pattern profile selected for the current clock cycle.
When the signal switches from the IDLE state to the GENERIC_XTS state, indicates that the data associated in the given clock cycle is related to the generic XTS.
|
| TID[9:0] | Input/Output |
Channel ID. When pattern ID is set to generic XTS, the channel ID indicates to the logic which cryptographic channel or slot the data in this clock is associated with. |
| key_en | Input | When set and pattern[2:0] is set to the generic GCM profile, indicates that the data field contains keys to program in the key slots identified by TID[9:0]. You must set the key_128b_256b signal to specify the key size, 128 or 256 bit key.
This key_en is a standalone operation per clock. You can select to send the keys at one time or individually. Asserting this signal while data is in process is not allowed. |
| data_en | Input/Output | When pattern[3:0] is set to the generic GCM profile, after one clock of key_en, the data_en indicates the rest of the AAD/Data till it reaches the corresponding lengths (Bypass data and AAD). The plaintext data or ciphertext data then follows until assertion of the data_last signal. |
| MAC_IV_tweak_en | When key_en is set and MAC_IV_Tweak_en is de-asserted, the logic assumes that the you intend to only program the key slot and not program the IV to start a new AES operation using that key. When key_en is de-asserted and MAC_IV_Tweak_en is set, indicates the start of a new GCM stream using the IV associated with this cycle and using an existing key was programmed earlier into the key slot associated with this channel. |
|
| tlast | Input/Output | When set, indicates that the data ends (EOP) in the current clock cycle. Note: The tkeep signal specifies the number of valid bytes in this cycle.
|
Figure 26. Generic XTS Profile: Input Signals
Figure 27. Generic XTS Profile: Output Signals