Datasheet

Table Of Contents
Important:  If the condition is verified, the length of R must be greater or equal to the length of
X.
43.3.4.6.4 Parameters Definition
This service can easily be accessed through the use of the PUKCL_CondCopy() and PUKCL() macros.
Table 43-15. CondCopy Service Parameters
Parameter Type Direction Location Data Length Before Executing
the Service
After Executing the
Service
u2Options u2 I Option for
condition (see the
following table)
Option for condition
(see the following
table)
Specific/
CarryIn
Bit I Bit CarryIn Bit CarryIn
nu1XBase nu1 I Crypto RAM u2XLength Base of X Base of X number
untouched
nu1RBase nu1 I Crypto RAM u2RLength Base of R Base of R filled with
X if condition holds
u2RLength u2 I Length of R Length of R
u2XLength u2 I Length of X Length of X
43.3.4.6.5 Available Options
The option for the condition is set by the u2Options input parameter that must take one of the values
listed in the following table.
Table 43-16. CondCopy Service Options
Option Purpose Needed parameters
PUKCL_CONDCOPY_ALWAYS Always perform the
copy
nu1XBase,u2XLength,nu1RBase,
u2RLength
PUKCL_CONDCOPY_NEVER Never perform the
copy
None
PUKCL_CONDCOPY_IF_CARRY Perform the copy if
CarryIn is 1
Specific/CarryIn
nu1XBase,u2XLength,nu1RBase,
u2RLength
PUKCL_CONDCOPY_IF_NOT_CARRY Perform the copy if
CarryIn is zero
Specific/CarryIn
nu1XBase,u2XLength,nu1RBase,
u2RLength
43.3.4.6.6 Code Example
PUKCL_PARAM PUKCLParam;
PPUKCL_PARAM pvPUKCLParam = &PUKCLParam;
// CarryIn shall be beforehand filled (with zero or one) PUKCL(Specific).CarryIn = ...;
SAM D5x/E5x Family Data Sheet
Public Key Cryptography Controller (PUKCC)
© 2019 Microchip Technology Inc.
Datasheet
DS60001507E-page 1456