MCUXpresso SDK API Reference Manual  Rev. 0
NXP Semiconductors
 All Data Structures Functions Variables Typedefs Enumerations Enumerator Groups Pages

Overview

Enumerations

enum  casper_operation_t { ,
  kCASPER_OpMul6464Sum,
  kCASPER_OpMul6464FullSum,
  kCASPER_OpMul6464Reduce,
  kCASPER_OpAdd64 = 0x08,
  kCASPER_OpSub64 = 0x09,
  kCASPER_OpDouble64 = 0x0A,
  kCASPER_OpXor64 = 0x0B,
  kCASPER_OpShiftLeft32,
  kCASPER_OpShiftRight32 = 0x11,
  kCASPER_OpCopy = 0x14,
  kCASPER_OpRemask = 0x15,
  kCASPER_OpCompare = 0x16,
  kCASPER_OpCompareFast = 0x17
}
 CASPER operation. More...
 

Functions

void CASPER_Init (CASPER_Type *base)
 Enables clock and disables reset for CASPER peripheral. More...
 
void CASPER_Deinit (CASPER_Type *base)
 Disables clock for CASPER peripheral. More...
 

Driver version

#define FSL_CASPER_DRIVER_VERSION   (MAKE_VERSION(2, 0, 2))
 CASPER driver version. More...
 

Macro Definition Documentation

#define FSL_CASPER_DRIVER_VERSION   (MAKE_VERSION(2, 0, 2))

Version 2.0.2.

Current version: 2.0.2

Change log:

  • Version 2.0.0
    • Initial version
  • Version 2.0.1
    • Bug fix KPSDK-24531 double_scalar_multiplication() result may be all zeroes for some specific input
  • Version 2.0.2
    • Bug fix KPSDK-25015 CASPER_MEMCPY hard-fault on LPC55xx when both source and destination buffers are outside of CASPER_RAM

Enumeration Type Documentation

Enumerator
kCASPER_OpMul6464Sum 

Walking 1 or more of J loop, doing r=a*b using 64x64=128.

kCASPER_OpMul6464FullSum 

Walking 1 or more of J loop, doing c,r=r+a*b using 64x64=128, but assume inner j loop.

kCASPER_OpMul6464Reduce 

Walking 1 or more of J loop, doing c,r=r+a*b using 64x64=128, but sum all of w.

kCASPER_OpAdd64 

Walking 1 or more of J loop, doing c,r[-1]=r+a*b using 64x64=128, but skip 1st write.

kCASPER_OpSub64 

Walking add with off_AB, and in/out off_RES doing c,r=r+a+c using 64+64=65.

kCASPER_OpDouble64 

Walking subtract with off_AB, and in/out off_RES doing r=r-a uding 64-64=64, with last borrow implicit if any.

kCASPER_OpXor64 

Walking add to self with off_RES doing c,r=r+r+c using 64+64=65.

kCASPER_OpShiftLeft32 

Walking XOR with off_AB, and in/out off_RES doing r=r^a using 64^64=64.

kCASPER_OpShiftRight32 

Walking shift left doing r1,r=(b*D)|r1, where D is 2^amt and is loaded by app (off_CD not used)

kCASPER_OpCopy 

Walking shift right doing r,r1=(b*D)|r1, where D is 2^(32-amt) and is loaded by app (off_CD not used) and off_RES starts at MSW.

kCASPER_OpRemask 

Copy from ABoff to resoff, 64b at a time.

kCASPER_OpCompare 

Copy and mask from ABoff to resoff, 64b at a time.

kCASPER_OpCompareFast 

Compare two arrays, running all the way to the end.

Function Documentation

void CASPER_Init ( CASPER_Type *  base)

Enable clock and disable reset for CASPER.

Parameters
baseCASPER base address
void CASPER_Deinit ( CASPER_Type *  base)

Disable clock and enable reset.

Parameters
baseCASPER base address