Datasheet

Table Of Contents
// vPUKCL_Process() is a macro command, which populates the service name
// and then calls the library...
vPUKCL_Process(FastCopy,pvPUKCLParam);
if (PUKCL(u2Status) == PUKCL_OK)
{
...
}
else // Manage the error
43.3.4.5.6 Constraints
The parameter placements that are not allowed are are as follows.
If nu1XBase equals zero, no checks are made on nu1XBase (fixed) and u2XLength (unused).
The following conditions must be avoided to ensure that the service works correctly:
nu1XBase or nu1RBase are not aligned on 32-bit boundaries
u2XLength or u2RLength is either: <4, >0xffc or not a 32-bit length or u2XLength >u2RLength
{nu1XBase, u2XLength} or {nu1RBase, u2RLength} do not entirely lie in Crypto RAM
{nu1XBase, u2XLength} overlaps {nu1RBase,u2RLength}
43.3.4.5.7 Status Returned Values
Table 43-14. FastCopy Service Return Codes
Returned status Importance Meaning
PUKCL_OK Service functioned correctly
43.3.4.6 Conditional Copy/Clear
43.3.4.6.1 Purpose
This service conditionally performs a copy from a memory area to another or a memory area clear.
43.3.4.6.2 How to Use the Service
43.3.4.6.3 Description
This service copies a number X into another number R, padding with zero on the MSB side up to the
length specified for R. This copy operation is performed under the conditions specified in the options.
If the condition is verified, R = X.
The copy or clear action is made under condition.
The four possible options for the condition are described in the following table. Two of the conditions
check the Specific.CarryIn bit (see 43.3.3.2 Accessing Different Library Services).
The processing is done as follows:
If the condition is not verified, nothing is processed.
If the condition is verified the copy or clear follows the rules:
If the lengths of R and X are equal, a complete fast copy is processed
If the length of R is strictly greater than the length of X, X is first copied in the Low Significant
Bytes side of R, and R is padded with zeros on the Most Significant Bytes side.
If the pointer on the X area equals zero, R is filled with zeros.
The service name for this operation is CondCopy.
SAM D5x/E5x Family Data Sheet
Public Key Cryptography Controller (PUKCC)
© 2019 Microchip Technology Inc.
Datasheet
DS60001507E-page 1455