数字滤波器模块作用是什么

[复制链接]
 楼主| 历史暴君 发表于 2016-8-18 09:43 | 显示全部楼层 |阅读模式
一些PSoC提供了专用的硬件加速器模块用于数字滤波。
        数字滤波器模块(Digital Filter Block,DFB)有一个专用的乘法器和累加器在一个时钟周期内计算24x24位的乘法和48位的累加算法。这样就能直接将直接形式的有限脉冲响应滤波器(Finite Impulse Response,FIR),因此一个时钟就可以计算一个FIR结果。
 楼主| 历史暴君 发表于 2016-8-18 09:45 | 显示全部楼层
         MCU也能实现这个模块的功能,但是速度要慢,并且会消耗MCU的带宽。
zhiyy 发表于 2016-8-18 09:49 | 显示全部楼层
用专用硬件实现滤波器是靠数据流推动的,而使用MCU实现滤波器是靠程序计数器PC推动的,所以硬件实现要比MCU实现要快很多,并且实现MCU串行处理和专用硬件并行处理的完美结合。
zhiyy 发表于 2016-8-18 09:50 | 显示全部楼层
两个数据流通道;
dianz 发表于 2016-8-18 09:53 | 显示全部楼层
两个使用模型用于流和块操作;
dianz 发表于 2016-8-18 09:55 | 显示全部楼层
三个信号量位用于和系统软件进行交互;
zhiyy 发表于 2016-8-18 10:24 | 显示全部楼层
DFB是一个24位定点的,可编程的有限范围的DSP引擎。DFB支持最多两个数据流通道,在这个通道上本地保存着编程指令,历史数据和滤波器系数。接收到的来自其它通道和模块(通过PHUB接)的周期性采样。
dianz 发表于 2016-8-18 10:27 | 显示全部楼层
用于输入和输出的数据对齐选项;
dianz 发表于 2016-8-18 10:32 | 显示全部楼层
系统软件能加载采样值和系数数据从/到DFB数据存储器,和/或者在块模式下重新编程不同的操作。这样允许多通道处理和实现比本地存储器所支持的更高阶数的滤波器。
波越 发表于 2016-8-18 10:33 | 显示全部楼层
模块提供软件可配的软件中断(DFB_INTR_CTRL)和两个DMA通道请求(DFB_DMA_CTRL)。
波越 发表于 2016-8-18 10:34 | 显示全部楼层
软件可用三个信号量与DFB代码(DFB_SEMA)进行交互。
波越 发表于 2016-8-18 10:38 | 显示全部楼层
数据的移动由DMA控制器控制,但也可以由CPU直接移动。
qiangg 发表于 2016-8-19 20:00 | 显示全部楼层
硬件滤波是一个好东西
上山砍老虎 发表于 2016-8-19 20:04 | 显示全部楼层
可以节省CPU的开销
heping517 发表于 2016-8-19 20:06 | 显示全部楼层
这个模块不错
波越 发表于 2016-8-19 20:22 | 显示全部楼层
软件其实也可以实现的
您需要登录后才可以回帖 登录 | 注册

本版积分规则

35

主题

312

帖子

0

粉丝