描述
一般描述:
“硬件过采样”对FIR和乘法器块意味着什么?这是否等同于等效内核生成器GUI中的“每输出时钟”参数?这个参数有什么影响?
解决方案
术语“硬件过采样”和“每输出时钟”描述了系统生成器和核心发生器中的相同原理。此参数影响以下内容:
执行函数所需的时钟周期数
-实现设计的大小
从根本上讲,该值是对输入块的采样精度和在一个时钟周期中处理的输入样本的位数,这与输入数据的采样频率直接相关。
例1顺序结构
一个15 MHz的单速率非对称100抽头DA FIR滤波器与8位输入数据应该有一个“时钟每输出”值8的CORE Generator。(这个值与在SysGEN中的“硬件过采样”)相同,这就创建了一个滤波器,它需要一个时钟驱动120 MHz的逻辑,从而达到12.5 MHz采样频率的要求。该设计将是一个完全串行的结构,在分布式算术(DA)引擎中每时钟周期处理1位,因此需要8个时钟周期来计算。过滤器的大小会很小。
例2并联结构
一个100 MHz的单速率非对称100抽头DA FIR滤波器与8位输入数据应该有一个“时钟每输出”值1的CORE Generator。(这个值与在SysGEN中的“硬件过采样”)相同,这就创建了一个滤波器,它需要一个时钟驱动100 MHz的逻辑,从而达到100 MHz采样频率的要求。该设计将是完全并行的结构,处理每个时钟周期的所有8位输入数据(实际上是八个1位DA引擎并行工作)。因此,需要1个时钟周期进行计算。并行结构的大小将远远大于串行实现的大小,但将获得更大的性能。
例3半平行结构
一个70 MHz的单速率非对称100抽头DA FIR滤波器与8位输入数据应该有一个“时钟每输出”值2的CORE Generator。(这个值与在SysGEN中的“硬件过采样”)相同,这就创建了一个滤波器,它需要一个时钟驱动140 MHz的逻辑,从而达到70 MHz采样频率的要求。该设计将创建一个4位的DA引擎(实际上是四个1位DA引擎并行工作),需要两个时钟周期来处理完整的8位样本。这种设计的大小将大于纯串行实现的大小,但小于完全并行实现的大小。
下面的图表表示这个概念:
“硬件过采样”参数效应的说明
系统生成器中的“硬件过采样”参数及其等效的“发生器输出时钟”参数可直接控制DA FIR滤波器的大小和性能。同样的概念也适用于基于切片的乘法器结构。使用DA FIR实现的一个优点是,滤波器的性能不依赖于抽头的数目(像MAC引擎),而是依赖于输入数据的宽度,其通常小于滤波器中的抽头数目。
这些规则的重要例外
对称系数
如果系数具有对称脉冲响应,则由于对称系数的线性相位效应在FIR滤波器设计中经常出现这种情况,所以向DA发动机的数据输入宽度增加了一个。这是由于滤波器结构中的优化可以由对称系数实现的,该对称系数几乎减半了实现结果所需的乘法数。为了实现这种优化,在DA引擎之前需要一个预加法器——这将输入数据宽度增加1位。
例如:
一个44 MHz的单速率对称100抽头DA FIR滤波器与8位输入数据应该有一个“时钟每输出”值3的CORE Generator。(这个值与在SysGEN中的“硬件过采样”)相同,这就创建了一个滤波器,它需要一个时钟驱动132 MHz的逻辑,从而达到44 MHz采样频率的要求。该设计将创建一个3位的DA引擎(实际上是三个1位DA引擎并行工作),需要3个时钟周期来处理完整的9位(8 + 1=9)样本。
注意:请参阅DA FIR V8.0数据表以了解更多细节。
多相实现
在实现抽取或插值函数的DA FIR的多相实现中,滤波器总是在与滤波器的频率相等的频率下工作。更慢的工作频率因此,完全并行滤波器结构不应用于多相实现。
例如:
具有100 MHz输入采样率的非对称100抽头DA FIR滤波器具有10位输入数据的4:1多相抽取器应该具有核心发生器中的5“每输出时钟”值。(这个值与SysGEN中的“硬件过采样”)相同,这是必要的,因为各个相位滤波器工作在25 MHz的慢输出频率上。因此,可以使用更串行的实现来实现这些滤波器。10位样本可以在需要的时间由五个2位DA引擎操作。滤波器需要时钟驱动125 MHz的逻辑,以实现相位滤波器的25 MHz采样频率要求。
注意:请参阅DA FIR V8.0或乘法器生成器数据表以获取更多信息。
没有回复内容