2024-05-16 05:28:46 发布
网友
我有一些VHDL代码要模拟。它使用整数FIR系数并执行整数加法。我使用的系数是根据西皮.信号.菲文. 在我的实际硬件中,我看到了一些来自过滤器的干扰,我想用python来模拟。在
但是Python使用lfilter浮点运算,这并不是我所需要的。我需要整数运算,使用取整来获得最接近的整数,并通过滤波器传播信号。在
有这样的功能还是我自己做?在
谢谢
.d
numpy.convolve怎么样?在
下面是一个使用过滤器添加前两个示例的简单示例。在
signal, coeffs = np.array([1,2,3,4,5]), np.array([1, 1]) output = np.convolve(signal, coeffs, mode='valid')
结果:
注意,输出比输入稍短,因为mode=valid开关避免在数据不足的情况下计算样本。可以尝试使用不同的开关来获得边缘效果所需的行为。在
mode=valid
此函数可能在内部计算浮点,然后舍入为整数。如你所知,这对最终答案没有影响。但是,如果您的目标是节省计算时间,那么您应该检查整数输入的速度是否比浮点输入快。我打赌是的。在
numpy.convolve怎么样?在
下面是一个使用过滤器添加前两个示例的简单示例。在
结果:
^{pr2}$注意,输出比输入稍短,因为
mode=valid
开关避免在数据不足的情况下计算样本。可以尝试使用不同的开关来获得边缘效果所需的行为。在此函数可能在内部计算浮点,然后舍入为整数。如你所知,这对最终答案没有影响。但是,如果您的目标是节省计算时间,那么您应该检查整数输入的速度是否比浮点输入快。我打赌是的。在
相关问题 更多 >
编程相关推荐