Skip to content

DWT transforms

Module: Transform Functions

More...

Modules

Name
DWT kernels on real input values
DWT kernels on Q15 input values
DWT kernels on Q31 input values
DWT kernels on Q7 input values

Functions

Name
void plp_dwt_f32(const float32_t restrict pSrc, uint32_t length, const plp_dwt_wavelet_f32 wavelet, plp_dwt_extension_mode mode, float32_t restrict pDstA, float32_t *restrict pDstD)
Floating-point DWT on real input data for XPULPV2 extension.
void plp_dwt_dec_f32(const float32_t restrict pSrc, uint32_t length, const plp_dwt_wavelet_f32 wavelet, plp_dwt_extension_mode mode, uint32_t level, float32_t restrict pTmp, float32_t *restrict pDst)
Floating-point n-level DWT for XPULPV2 extension.
void plp_dwt_f32_parallel(const float32_t restrict pSrc, uint32_t length, const plp_dwt_wavelet_f32 wavelet, plp_dwt_extension_mode mode, uint32_t nPE, float32_t restrict pDstA, float32_t *restrict pDstD)
Parallel Floating-point DWT on real input data for XPULPV2 extension.
void plp_dwt_dec_f32_parallel(const float32_t restrict pSrc, uint32_t length, const plp_dwt_wavelet_f32 wavelet, plp_dwt_extension_mode mode, uint32_t level, uint32_t nPE, float32_t restrict pTemp, float32_t *restrict pDst)
Floating-point parallel n-level DWT for XPULPV2 extension.
void plp_dwt_q16(const int16_t restrict pSrc, uint32_t length, const plp_dwt_wavelet_q16 wavelet, plp_dwt_extension_mode mode, int16_t restrict pDstA, int16_t *restrict pDstD)
16bit Fixed-point DWT on real input data for XPULPV2 extension.
void plp_dwt_q16_parallel(const int16_t restrict pSrc, uint32_t length, const plp_dwt_wavelet_q16 wavelet, plp_dwt_extension_mode mode, uint32_t nPE, int16_t restrict pDstA, int16_t *restrict pDstD)
16bit Parallel Fixed-point DWT on real input data for XPULPV2 extension.
void plp_dwt_q32(const int32_t restrict pSrc, uint32_t length, const plp_dwt_wavelet_q32 wavelet, plp_dwt_extension_mode mode, int32_t restrict pDstA, int32_t *restrict pDstD)
32bit Fixed-point DWT on real input data for XPULPV2 extension.
void plp_dwt_q32_parallel(const int32_t restrict pSrc, uint32_t length, const plp_dwt_wavelet_q32 wavelet, plp_dwt_extension_mode mode, uint32_t nPE, int32_t restrict pDstA, int32_t *restrict pDstD)
32bit Parallel Fixed-point DWT on real input data for XPULPV2 extension.
void plp_dwt_q8(const int8_t restrict pSrc, uint32_t length, const plp_dwt_wavelet_q8 wavelet, plp_dwt_extension_mode mode, int8_t restrict pDstA, int8_t *restrict pDstD)
8bit Fixed-point DWT on real input data for XPULPV2 extension.
void plp_dwt_q8_parallel(const int8_t restrict pSrc, uint32_t length, const plp_dwt_wavelet_q8 wavelet, plp_dwt_extension_mode mode, uint32_t nPE, int8_t restrict pDstA, int8_t *restrict pDstD)
8bit Parallel Fixed-point DWT on real input data for XPULPV2 extension.

Detailed Description

This module contains the code to perform DWT transforms.

Functions Documentation

function plp_dwt_f32

void plp_dwt_f32(
    const float32_t *__restrict__ pSrc,
    uint32_t length,
    const plp_dwt_wavelet_f32 wavelet,
    plp_dwt_extension_mode mode,
    float32_t *__restrict__ pDstA,
    float32_t *__restrict__ pDstD
)

Floating-point DWT on real input data for XPULPV2 extension.

Parameters:

  • pSrc points to the input buffer (real data)
  • length length of input buffer
  • wavelet wavelet structure for calculating DWT
  • mode boundary extension mode
  • pDstA points to ouput buffer with Approximate coefficients
  • pDstD points to ouput buffer with Detailed coefficients

Return: none

Glue code for matrix addition of a 32-bit integer matrices.

function plp_dwt_dec_f32

void plp_dwt_dec_f32(
    const float32_t *__restrict__ pSrc,
    uint32_t length,
    const plp_dwt_wavelet_f32 wavelet,
    plp_dwt_extension_mode mode,
    uint32_t level,
    float32_t *__restrict__ pTmp,
    float32_t *__restrict__ pDst
)

Floating-point n-level DWT for XPULPV2 extension.

Parameters:

  • pSrc points to the input buffer (real data)
  • length length of input buffer
  • wavelet wavelet structure for calculating DWT
  • mode boundary extension mode
  • level Levels of Wavelet decomposition
  • pDst points to ouput buffer with Detailed coefficients and final approximate

Return: none

function plp_dwt_f32_parallel

void plp_dwt_f32_parallel(
    const float32_t *__restrict__ pSrc,
    uint32_t length,
    const plp_dwt_wavelet_f32 wavelet,
    plp_dwt_extension_mode mode,
    uint32_t nPE,
    float32_t *__restrict__ pDstA,
    float32_t *__restrict__ pDstD
)

Parallel Floating-point DWT on real input data for XPULPV2 extension.

Parameters:

  • pSrc points to the input buffer (real data)
  • length length of input buffer
  • wavelet wavelet structure for calculating DWT
  • mode boundary extension mode
  • nPE Number of cores to use
  • pDstA points to ouput buffer with Approximate coefficients
  • pDstD points to ouput buffer with Detailed coefficients

Return: none

function plp_dwt_dec_f32_parallel

void plp_dwt_dec_f32_parallel(
    const float32_t *__restrict__ pSrc,
    uint32_t length,
    const plp_dwt_wavelet_f32 wavelet,
    plp_dwt_extension_mode mode,
    uint32_t level,
    uint32_t nPE,
    float32_t *__restrict__ pTemp,
    float32_t *__restrict__ pDst
)

Floating-point parallel n-level DWT for XPULPV2 extension.

Parameters:

  • pSrc points to the input buffer (real data)
  • length length of input buffer
  • wavelet wavelet structure for calculating DWT
  • mode boundary extension mode
  • level Levels of Wavelet decomposition
  • pDst points to ouput buffer with Detailed coefficients and final approximate

Return: none

function plp_dwt_q16

void plp_dwt_q16(
    const int16_t *__restrict__ pSrc,
    uint32_t length,
    const plp_dwt_wavelet_q16 wavelet,
    plp_dwt_extension_mode mode,
    int16_t *__restrict__ pDstA,
    int16_t *__restrict__ pDstD
)

16bit Fixed-point DWT on real input data for XPULPV2 extension.

Parameters:

  • pSrc points to the input buffer (q16)
  • length length of input buffer
  • wavelet wavelet structure for calculating DWT
  • mode boundary extension mode
  • pDstA points to ouput buffer with Approximate coefficients
  • pDstD points to ouput buffer with Detailed coefficients

Return: none

16bit Fixed-point DWT for XPULPV2 extension.

function plp_dwt_q16_parallel

void plp_dwt_q16_parallel(
    const int16_t *__restrict__ pSrc,
    uint32_t length,
    const plp_dwt_wavelet_q16 wavelet,
    plp_dwt_extension_mode mode,
    uint32_t nPE,
    int16_t *__restrict__ pDstA,
    int16_t *__restrict__ pDstD
)

16bit Parallel Fixed-point DWT on real input data for XPULPV2 extension.

Parameters:

  • pSrc points to the input buffer (q16)
  • length length of input buffer
  • wavelet wavelet structure for calculating DWT
  • mode boundary extension mode
  • nPE Number of cores to use
  • pDstA points to ouput buffer with Approximate coefficients
  • pDstD points to ouput buffer with Detailed coefficients

Return: none

function plp_dwt_q32

void plp_dwt_q32(
    const int32_t *__restrict__ pSrc,
    uint32_t length,
    const plp_dwt_wavelet_q32 wavelet,
    plp_dwt_extension_mode mode,
    int32_t *__restrict__ pDstA,
    int32_t *__restrict__ pDstD
)

32bit Fixed-point DWT on real input data for XPULPV2 extension.

Parameters:

  • pSrc points to the input buffer (q32)
  • length length of input buffer
  • wavelet wavelet structure for calculating DWT
  • mode boundary extension mode
  • pDstA points to ouput buffer with Approximate coefficients
  • pDstD points to ouput buffer with Detailed coefficients

Return: none

32bit Fixed-point DWT for XPULPV2 extension.

function plp_dwt_q32_parallel

void plp_dwt_q32_parallel(
    const int32_t *__restrict__ pSrc,
    uint32_t length,
    const plp_dwt_wavelet_q32 wavelet,
    plp_dwt_extension_mode mode,
    uint32_t nPE,
    int32_t *__restrict__ pDstA,
    int32_t *__restrict__ pDstD
)

32bit Parallel Fixed-point DWT on real input data for XPULPV2 extension.

Parameters:

  • pSrc points to the input buffer (q32)
  • length length of input buffer
  • wavelet wavelet structure for calculating DWT
  • mode boundary extension mode
  • nPE Number of cores to use
  • pDstA points to ouput buffer with Approximate coefficients
  • pDstD points to ouput buffer with Detailed coefficients

Return: none

function plp_dwt_q8

void plp_dwt_q8(
    const int8_t *__restrict__ pSrc,
    uint32_t length,
    const plp_dwt_wavelet_q8 wavelet,
    plp_dwt_extension_mode mode,
    int8_t *__restrict__ pDstA,
    int8_t *__restrict__ pDstD
)

8bit Fixed-point DWT on real input data for XPULPV2 extension.

Parameters:

  • pSrc points to the input buffer (q8)
  • length length of input buffer
  • wavelet wavelet structure for calculating DWT
  • mode boundary extension mode
  • pDstA points to ouput buffer with Approximate coefficients
  • pDstD points to ouput buffer with Detailed coefficients

Return: none

8bit Fixed-point DWT for XPULPV2 extension.

function plp_dwt_q8_parallel

void plp_dwt_q8_parallel(
    const int8_t *__restrict__ pSrc,
    uint32_t length,
    const plp_dwt_wavelet_q8 wavelet,
    plp_dwt_extension_mode mode,
    uint32_t nPE,
    int8_t *__restrict__ pDstA,
    int8_t *__restrict__ pDstD
)

8bit Parallel Fixed-point DWT on real input data for XPULPV2 extension.

Parameters:

  • pSrc points to the input buffer (q8)
  • length length of input buffer
  • wavelet wavelet structure for calculating DWT
  • mode boundary extension mode
  • nPE Number of cores to use
  • pDstA points to ouput buffer with Approximate coefficients
  • pDstD points to ouput buffer with Detailed coefficients

Return: none


Updated on 2023-03-01 at 16:16:32 +0000