介绍
的应用数字信号处理(DSP)继续扩大,由趋势如视频和静态图像的使用和需求增加等越来越多的可重构系统软件定义无线电(SDR)。许多这样的应用程序将需要巨大的DSP处理成本敏感性,创造需求的高性能、低成本的DSP的解决方案。
通用DSP芯片和FPGA实现DSP功能的两种常见方法,尽管如此,直到现在,一个FPGA实现的选择是有限的高端,昂贵的平台。每一种方式都有其优势,优化实现方法会有所不同取决于应用程序的需求。本文概述了常见的DSP功能,探讨了通用DSP和fpga之间的区别。这是紧随其后的描述优化,低成本LatticeECP-DSP™FPGA架构,并比较LatticeECP-DSP现有FPGA的解决方案。
典型的功能
而大量的数字信号处理功能是由设计师,实现有限脉冲响应(杉木)过滤器、无限脉冲响应(IIR)过滤器,快速傅里叶变换(fft算法)和搅拌机是常见的许多应用程序。每一个函数需要用的组合元素之外,减法和积累。
有限脉冲响应(杉木)过滤器
|
图1 -典型的冷杉过滤器
|
有限脉冲响应滤波器存储一系列n数据元素,每推迟了一个额外的周期。这些数据元素是通常被称为龙头。每个挖掘乘以一个系数,总结产生输出结果。有些实现并行执行所有的乘法。更普遍的是,实现分解成N阶段,与蓄电池通过部分的结果从一个阶段到下一个。这个实现功能资源的交易速度,N计算阶段,要求N / N乘数。根据系数是静态或动态,是否和系数的设计值,常用的有很多其他设计优化,超出了本文的范围。图1显示了一个典型的实现冷杉过滤器。
快速傅里叶变换(FFT)的功能
快速傅里叶变换用于各种各样的应用,包括图像压缩、确定光谱数据样本的内容。有各种各样的方法实现快速傅里叶变换。最常见的方法是使用Cooley-Tukey大量毁灭在时间的方法,它打破了FFT分解成许多小的FFT算法。最简单的实现使用一个元素通常被称为Radix-2蝴蝶(图2),输入数据必须经过很多次了。计算概念上很简单,左边的图上所示。然而,正如所有的繁殖和添加完成复杂的数字,实际所需数量的增加和补充更有挑战性,右边的图所示。
|
图2 - Radix-2蝴蝶常用的实现fft算法
|
无限脉冲响应(IIR)过滤器
无限脉冲响应(IIR)过滤器类似于冷杉过滤器,除了介绍了反馈路径。这些反馈路径使IIR滤波器的设计和分析更复杂的比FIR滤波器。然而,信息检索的方法可以提供一个更强大的过滤器相同的硅区域。虽然有几个IIR架构,一个常见的方法是构建IIR滤波器的二阶bi-quads,如图3所示。
|
图3 -丁基橡胶二阶Bi-quad
|
机功能
许多应用程序使用搅拌机将一个信号的频率。,从概念上讲,一个乘数可以使用,在数字应用程序有许多优势,代表在一个复杂的数字形式。通常这是通过将信号表示为我和Q组件。图4显示了一个搅拌机,用于数字上变频。
|
图4 -典型的转换器搅拌机使用复杂的算法
|
通用DSP和FPGA实现的解决方案
如常见的描述函数,乘数,紧随其后的是加法、减法或积累是大多数DSP应用程序的核心。通用DSP芯片结合高效的实现这些功能与通用微处理器。乘数的数量一般在1到4,和微处理器将序列数据通过乘法和其他功能,将中间结果存储在内存或蓄电池。性能提高主要通过增加用于乘法的时钟速度。典型的时钟速度运行从几十兆赫到1 ghz。性能,以每秒数百万乘积累(MMAC),通常范围从10到4000。功能要求更高的性能必须跨越多个DSP引擎。这些芯片的价格范围从几美元的低端性能范围在高端数百美元。这种方法的主要优势是能够直接实现算法用高级编程语言如C编写的。
DSP-oriented fpga并行提供能够实现许多功能在一个芯片上。通用路由、逻辑和内存资源用于互连功能,执行额外的功能,序列,在必要时,存储数据。一些基本的设备提供乘数只支持,要求用户在逻辑构建所有其他功能。更复杂的设备提供加法、减法和累加器功能的DSP构建块。fpga通常有数万乘数元素,可以在数百兆赫的时钟速度。例如,LatticeECP-DSP20 FPGA有28个18×18乘数运行速度高达250 mhz,每秒7000 MMAC交付性能。表1比较了FPGA和通用的方法。
设备 |
时钟速度 |
数量的乘数 |
MMAC /秒 |
1 k单位成本* |
每MMAC成本/ s |
TI DSP |
1 ghz |
4 |
4000年
|
256美元 |
0.064美元 |
TI DSP |
300兆赫 |
4 |
1200年 |
40美元 |
0.033美元 |
ECP-DSP20 |
250兆赫 |
28 |
7000年 |
59美元 |
0.008美元 |
*近似1 k通过NA分销商定价
表1——比较通用的DSP和FPGA的方法
LatticeECP-DSP架构
LatticeECP-DSP设备由一个低成本FPGA织物加上四到十sysDSP TM块。图5显示了该项目设备的总体框图。sysDSP块LatticeECP家族支持四个功能元素在三个数据路径宽度:9,18 - 36。用户选择一个DSP功能元件块然后选择宽度和类型的操作数(签名/无符号)。sysDSP块的操作数可以是签署或无符号,但不是混合在一个函数元素。同样,操作数宽度不能混合在一块。资源在每个sysDSP块可以配置为支持以下四个要素:
- 乘(相乘,图6)
- MAC(乘积累,图7)
- MULTADD(用加法和减法,图8)
- MULTADDSUM(用加法和减法求和,9)
每个块中可用的元素数量取决于所选择的宽度从三个选项:x9, x18和x36。许多这些元素连接高度并行DSP的实现功能。表2显示的功能块。
宽度乘以 |
X9 |
X18 |
X36 |
乘 |
8 |
4 |
1 |
MAC |
2 |
1 |
- - - - - -
|
MULTADD |
4 |
2 |
- - - - - - |
MULTADDSUM |
4 |
2 |
- - - - - - |
表2——sysDSP块元素的最大数量
图5 - LatticeECP-DSP框图
|
sysDSP块内置的可选的输入管道,中间值和输出阶段。此外,输入可以并行加载或转移整个数组。选项也提供动态切换签署和无符号算术加法和减法。
图6 -相乘(乘数)元素
|
图7 - MAC(乘积累)元素
|
图8 - MULTADD(乘数加/减)元素
|
图9 - MULTADDSUM(乘数加/减总和) 元素 |
性能和设备利用率的改进
流水线寄存器的可用性,求和,减法和积累在sysDSP块增加他们的效用。说明,在典型的函数是很常见的需要结合乘法与加法,求和,或者积累。流水线寄存器,在概念上很简单,快速消耗大量资源上实现宽数据时的路径。sysDSP块实现这些功能的能力导致较低的通用FPGA资源的消费和更高的性能。这两个因素将直接转化为更低的成本,在许多情况下他们允许设计人员选择速度等级较低的小型设备。
LatticeECP-DSP设计流程
晶格为设计师提供了四个简单的方法来访问sysDSP块的功能:
- 的模块/ IP经理ispLEVER O工具中提供的是一个图形界面,允许模块实现DSP的快速创建元素。这些模块可以用于HDL设计。
- 某些功能的编码设计的高密度脂蛋白和允许合成工具推理一块DSP的使用。
- 设计的实现MathWork的仿真软件工具使用一个网格块组。的ispLeverDSP部分ispLEVER工具将这些块转换成适当的高密度脂蛋白。
- 实例化直接在源代码中DSP的原语。
方法的选择对于任何设计取决于DSP算法设计方法和物理实现所需的程度的控制。图10显示了相乘的规范元素使用模块管理器。图11显示了使用点阵块集MathWork仿真软件的工具。
|
图10 -模块管理器中配置一个乘数元素
|
|
图11 -使用点阵块集MathWork仿真软件的工具
|
低成本FPGA实现
LatticeECP / EC设备的引入,用户现在可以选择三个当代,低成本fpga:斯巴达III设备从Xilinx,阿尔特拉的气旋的家人和LatticeECP / EC设备。然而,直到现在,低成本fpga提供很少或没有DSP功能。
大约在过去的一年里,两个一代之间的用户不得不选择,低成本fpga:斯巴达III设备从Xilinx和阿尔特拉的气旋的家庭。设计师实现DSP功能,这个选择仅限于斯巴达III的基本因子。LatticeECP / EC设备的引入,现在允许用户选择三个一代低成本FPGA, DSP的用户,提供——第一次——一个先进的DSP块在一个低成本FPGA结构。
阿尔特拉的气旋fpga不包含面向DSP的元素,使其难以实现大DSP功能在这些设备没有消耗大量的内部资源。自然,实现高性能与这些实现同样具有挑战性。Xilinx斯巴达三世FPGA家庭确实提供了一些基本的乘数功能。虽然这是肯定比没有DSP功能,仍然必须消耗大量资源来实现该方案,减法器,蓄电池和管道寄存器中发现典型的设计。
测量的影响提供这些资源,晶格基准测试性能和利用FIR滤波器和IIR滤波器。使用的冷杉是64 -自来水过滤与18位宽数据。IIR滤波器使用4 th顺序安排两个bi-quads和一个18位数据路径。图12显示结果为斯巴达III和LatticeECP-DSP设备。
图12 - LatticeECP-DSP FIR和IIR实现 和斯巴达三世设备 |
总结
DSP技术的使用将继续增长的模拟实现。函数通常用于DSP应用程序的分析表明,乘数、加法、减法和积累元素是必需的。LatticeECP-DSP设备提供一个先进的DSP块结合低成本FPGA结构。通过实现加、减、积累和管道内sysDSP块,性能和附近地区利用率显著高于替代低成本FPGA只提供基本的乘数功能的解决方案。的速度和利用优势sysDSP块帮助用户降低成本通过小型和低速度级设备的选择。
关于作者
戈登•格半导体是一个战略营销经理,参与晶格的新一代可编程器件技术的定义。手参与的定义和发射ispMACH 4000 z cpld,第三代ispXPLDs, ispXPGA非易失性无限可重复编程的fpga和第二代ispGDX2可编程互连设备。在加入晶格,手在系统设计工作了四年。他已经从美国亚利桑那州立大学mba, B.Eng.伯明翰大学的英格兰。