vect_dsp32_convpart.c File Reference


Detailed Description

Generic 32-bit partial convolution function for the AVR32 UC3.

This file contains the code of the partial convolution.

Author:
Atmel Corporation: http://www.atmel.com
Support and FAQ: http://support.atmel.no/

Definition in file vect_dsp32_convpart.c.

#include "dsp.h"
#include "preprocessor.h"

Go to the source code of this file.

Defines

#define DSP32_CONVPART_KERNEL_X_FCT(x_num, data)
#define DSP32_SUM_ITEM(x, line)   sum += ((long long) pvect2[x])*((long long) pvect3[8 - x - 1]);
#define DSP32_SUM_ITEM_INIT(x, line)   sum += ((long long) *pvect2++)*((long long) *--pvect3);

Functions

void dsp32_vect_convpart (dsp32_t *vect1, dsp32_t *vect2, int vect2_size, dsp32_t *vect3, int vect3_size)
 32-bit fixed point version of the Partial Convolution.


Define Documentation

#define DSP32_CONVPART_KERNEL_X_FCT ( x_num,
data   ) 

Value:

static void TPASTE2(dsp32_vect_convpart_kernel_x, x_num)(dsp32_t *vect1, dsp32_t *vect2, int vect1_size, dsp32_t *vect3, int vect3_size) \
{ \
  int i, j; \
  long long sum; \
  dsp32_t *pvect3, *pvect2; \
\
  for(j=0; j<vect1_size; j++) \
    { \
      sum = 0; \
      pvect3 = &vect3[vect3_size]; \
      pvect2 = &vect2[j]; \
\
      MREPEAT(x_num, DSP32_SUM_ITEM_INIT, ) \
\
      for(i=x_num; i<vect3_size; i += 8) \
        { \
          pvect3 -= 8; \
          MREPEAT8(DSP32_SUM_ITEM, ) \
          pvect2 += 8; \
        } \
\
      vect1[j] = sum >> DSP32_QB; \
    } \
}

Definition at line 59 of file vect_dsp32_convpart.c.

#define DSP32_SUM_ITEM ( x,
line   )     sum += ((long long) pvect2[x])*((long long) pvect3[8 - x - 1]);

Definition at line 55 of file vect_dsp32_convpart.c.

#define DSP32_SUM_ITEM_INIT ( x,
line   )     sum += ((long long) *pvect2++)*((long long) *--pvect3);

Definition at line 57 of file vect_dsp32_convpart.c.


Generated on Fri Feb 19 02:23:21 2010 for AVR32 UC3 - EVK1104 DSPLib Demo Documentation by  doxygen 1.5.5