DSP中的卷积算法.docx
- 文档编号:11928367
- 上传时间:2023-04-16
- 格式:DOCX
- 页数:21
- 大小:392.98KB
DSP中的卷积算法.docx
《DSP中的卷积算法.docx》由会员分享,可在线阅读,更多相关《DSP中的卷积算法.docx(21页珍藏版)》请在冰豆网上搜索。
DSP中的卷积算法
DSP中的卷积算法
卷积算法设计总框图
YES
3.2卷积算法设计的原理
intout1_buffer[BUFSIZE];
intout2_buffer[BUFSIZE];
intout3_buffer[BUFSIZE];
intout4_buffer[BUFSIZE*2];
intsize=BUFSIZE;
intain=MINGAIN;
intzhy=0;
intsk=64;
unsignedintprocessingLoad=1;
staticintprocessing1(int*output1,int*output2);
staticintprocessing2(int*output2,int*output3);
staticintprocessing3(int*input1,int*output2,int*output4);
staticintprocessing4(int*input2,int*output1);
staticvoiddataIO1(void);
staticvoiddataIO2(void);
int*input1=&inp1_buffer[0];
int*input2=&inp2_buffer[0];
int*output1=&out1_buffer[0];
int*output2=&out2_buffer[0];
int*output3=&out3_buffer[0];
int*output4=&out4_buffer[0];
voidmain(void)
{intjishu=0;
int*input1=&inp1_buffer[0];
int*input2=&inp2_buffer[0];
int*output1=&out1_buffer[0];
int*output2=&out2_buffer[0];
//int*output3=&out3_buffer[0];
int*output4=&out4_buffer[0];
puts("volumeexamplestarted\n");
while(TRUE)
{
dataIO1();
dataIO2();
processing4(input2,output1);
processing1(output1,output2);
/*processing2(output2,output3);*/
processing3(input1,output2,output4);
jishu++;//在此处加断点
}
}
staticintprocessing4(int*input2,int*output1)
{intm=sk;
for(;m>=0;m--)
{
*output1++=(*input2++)*ain;
}
for(;(size-m)>0;m++)
{output1[m]=0;
}
}
staticintprocessing1(int*output1,int*output2)
{
intm=sk-1;
for(;m>0;m--)
{
*output2++=*output1++*ain;
}
}
staticintprocessing2(int*output2,int*output3)
{intn=zhy,m;
size=64;
for(;n<64;n++)
{*output3++=output2[n];
m=*output3;
}
return(TRUE);
}
staticintprocessing3(int*input1,int*output2,int*output4)
{intm=sk;
inty=zhy;
intz,x,w,i,f,g;
for(;(m-y)>0;)
{i=y;
x=0;
z=0;
f=y;
for(;i>=0;i--)
{g=input1[z]*output2[f];
x=x+g;
z++;
f--;
}
*output4++=x;
y++;
}
m=sk;
y=sk-1;
w=m-zhy-1;
for(;m>0;m--)
{
y--;
i=y;
z=sk-1;
x=0;
f=sk-y;
for(;i>0;i--,z--,f++)
{g=input1[z]*output2[f];
x=x+g;
}
out4_buffer[w]=x;
w++;
}
}
staticvoiddataIO1()
{
return;
}
staticvoiddataIO2()
{
/*dodataI/O*/
return;
}
仿真设置
1)在程序中“dataIO1();”上单击鼠标右键选择“Togglesoftwarebreakpoint”,设置软件断点:
再在同一行上单击鼠标右键,选择“softwarebreakpoint”,“edit”,来设置断点。
此时打开了一个新的窗口。
最后设置成如下图所示:
2)同理,在程序中“dataIO2();”上同样操作设置。
最后设置如下图:
3)打开窗口菜单Viwe->Graph->Frequency…进行如下设置:
仿真图
1)当输入波为SIN,SIN时
SIN---------------------inp1
SIN---------------------inp2
SIN---------------------out
2)当输入波为SIN11、SIN11时
SIN11---------------------inp1
SIN11---------------------inp2
SIN11---------------------out
3)当输入波为SIN22、SIN22时
SIN22---------------------inp1
SIN22---------------------inp2
SIN22---------------------out
1)当输入波为SIN33、SIN33时
SIN33---------------------inp1
SIN33---------------------inp2
SIN33---------------------out
2)当输入波为SIN44、SIN44时
SIN44---------------------inp1
SIN44---------------------inp2
SIN44---------------------out
7)当输入波为SIN44、SIN
Sin44----------------inp1
Sin-------------------inp2
SIN44、SIN---------Out
8)当输入波为SIN11、SIN33时
Sin11--------------------------inp1
Sin33-------------------------inp2
Sin11.sin33-------------------Out
9)当输入波为SIN22、SIN时
Sin22-----------------------inp1
Sin---------------------------inp2
Sin22.Sin---------------------Out
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- DSP 中的 卷积 算法