小言_互联网的博客

FPGA数字滤波----梯形成形设计

375人阅读  评论(0)
     在核技术领域中,针对核脉冲信号速度快、幅值不定、随机性的特点,需要针对核信号进行特殊的处理,普通的电子学器件已经无法满足我们设计的要求,所需需要引入核电子学器件,如多道脉冲幅度分析器。其功能就是测准粒子的能量谱。而传统的模拟多道脉冲脉冲幅度分析器涉及信号干扰较大,所以引入了基于FPGA的数字多道,在多道器前端调剂电路中,主放大器的作用为放大和成形,而对于模拟信号的干扰较大,所以引入更快的数字滤波成形算法来带你传统的模拟成形,以比来提高FPGA器件的利用率和发挥更好的作用。
     梯形成形滤波器是将输入的下降沿衰减的指数信号成形为梯形脉冲信号输出,已有研究证明,当只考虑电压和电流噪声,探测器收集电荷的时间不为零时,梯形成形滤波器是最优滤波器,并且非常适合用数字方法实现 。
     算法:
   设前置放大器输出为理想指数信号,时域表达式为:
          Ui(t)=Umax*e-t/tao*μ(t)                                                                                      

Umax 为脉冲幅值,tao为前端放大器的时间常数,μ(t)为标准单位阶跃函数,以Ts为周期对输入信号进行采样,可以得到脉冲序列的表达式:
Ui(t)=Umaxe-nTs/taoμ(t)
令e-nTs/tao=q,对上式进行Z变换得:
Ui(t)=Umaxz/(z-d)
理想梯形函数的分段函数表示如下: Uo(t)=y1(t)+y2(t)+y3(t)+y4(t)
y1(t)=(Umax/ta)t y2(t)=-y1(t-ta)
y3(t)=-y1(t-tb)
y4(t)=y1(t-tc)
式中:ta、tb、tc分别为梯形的上升沿、平顶、下降沿的宽度。令ta=naTs、tb=nbTs、tc=ncTs,理想梯形函数的分段函数经过单边的z变换可表示为:
Uo(z)=Umax
(1-z-na-z-nb+z-nc)/(1-2z-1+z-2)
从而可得梯形成形算法的传递函数:
H(z)=Uo(z)/Ui(z)=[z(1-z-na)(1-z-nb)(1-qz-1)]/[na(1-z-1)2

Matlab仿真如下图


在FPGA中使用modelsim软件做独立仿真的结果如下图

从matlab仿真到FPGA实现再到modelsim功能仿真验证了数字梯形成形算法的可行性。


转载:https://blog.csdn.net/qq_46907522/article/details/114342696
查看评论
* 以上用户言论只代表其个人观点,不代表本网站的观点或立场