| Motorola DSP Developer's Kit |
| Motorola DSP Developer's Kit |
| Motorola DSP Developer's Kit | ![]() |
C = mot###_conv( A,B )
Input/Output
Input: Real vector A, and real vector B
Algorithm
LengthC = LengthB + LengthA - 1
for ( i = 1; i <= LengthC; i ++ ) {
if ( i <= LengthA ) {
for ( j = 1; j <= i; j ++ ) {
C[i] += A[j] * B[i - j + 1]; }}
else {
for ( j = i - LengthA; j <= LengthA - 1; j ++ ) {
C[i] += A[j + 1] * B[i - j];
}}}
Memory & Register
Status Register
The assembly function conv-r.asm does not set any status registers/bits during the function execution
Data Size Limit
The maximum length of vector A and B can't be larger than 1/3 of the continuous available data memory size.
Data Range Limit
The input data vector range is [-1.0, +1.0].
Precision
In the case of DSP563, precision is 23 bits.
In the case of DSP566, precision is 15 bits.
Performance Limit
| angle-c.asm | conv-c.asm | |