fpga构建高性能dsp
在数据通信和图像处理这样的应用中,需要强大的处理能力。当最快的数字信号处理器(dsp)仍无法达到速度要求时,唯一的选择是增加处理器的数目,或采用客户定制的门阵列产品。现在,设计人员有了新的选择,可采用现场可编程门阵列(fpga)来快速经济地完成设计。采用现场可编程器件不仅缩短了产品上市时间,还可满足现在和下一代便携式设计所需要的成本、性能、尺寸等方面的要求,并提供系统级支持。
fpga的方案选择
幸运的是,需要高性能dsp功能的便携式设备设计者还有其它选择。最近fpga开始达到了应用所要求的成本竞争力。优选的fpga方案可用来处理计算量繁重的高端dsp算法,同时还可为设计提供可编程逻辑解决方案所固有的灵活性特点,以及定制门阵列(如asic)解决方案所具有的高性能及集成度。
增强dsp处理能力的传统方法是采用多个处理器。选择此类方案的缺点是成本昂贵,需要众多附加部件,并且功耗很大。此外,开发和调试多处理器软件通常会大大延迟产品上市时间。
定制门阵列或标准单元方案可以提供所需的强大dsp处理能力,然而,这种方案是以损失灵活性为代价的,并需要相当的工程化投资。由于他们不可重新编程,固定逻辑器件在发生错误时很难补救,也不容易对解决方案进行优化。因此,定制方案的成本、风险以及所需要的开发时间,对许多应用来说都是无法接受的。
fpga与传统逻辑电路和门阵列具有不同的结构,fpga利用小型查找表(16×1 ram)来实现组合逻辑。每个查找表连接到一个d触发器的输入器,触发器再来驱动其它逻辑,或驱动i/o。这些模块间利用金属连线互相连接或连接到i/o模块。fpga的逻辑是通过向内部静态存储器单元加载配置数据来实现的。存储在存储器单元中的值决定了逻辑单元的逻辑功能以及模块间或与i/o间的连接,并最终决定了fpga实现的功能。fpga的这种结构允许无限次的重新编程。
fpga还具有可扩展的优点,fpga本身复杂性的提高远远超过最终产品要求的复杂性。最新的fpga产品,例如xilinx的virtex-e系列,提供的系统门密度从58000门到最高320万门不等。最新器件的速度也大大提高。例如,1.8v virtex-e器件比前一代产品快了30%,采用源同步数据传输结构,其i/o性能可达到622mbps。
时间和投资
任何涉足便携式产品设计的人,特别是通信领域的设计人员,都明白及时推出产品是产品设计首先要遵守的原则之一。所以能够提供所需要的性能、达到成本要求并可以加快上市时间的器件具有重要的优势。
与专用集成电路(asic)相比,fpga可使产品上市时间更快,并具有更小的风险。fpga库中的dsp核心不断增加,许多现在就可使用。结果,设计人员可以利用比定制门阵列方案或多处理器解决方案所需要的时间短得多的时间就完成一项dsp设计。
加快fpga实现和编程的一个方法是采用知识产权(ip)的模块或核心。例如,大多数标准dsp功能都在xilinx库中以可参数配置的dsp核心的形式实现了,它们通过xilinx公司的core生成器提供。包括乘法器、平方根电路、有限脉冲响应(fir)滤波器、梳状滤波器、积分器、正弦/余弦表以及离散傅里叶变换(dft)、快速傅里叶变换(fft)和离散余弦变换(dct)等都已包括在内。
ip核心的使用也促进了设计再利用,这在生产周期中可节约大量的时间。fpga和asic制造商正密切协作,使设计再利用变得更为容易。例如,xilinx公司的ip互联网收集和封装工具使客户可以将他们为fpga创建的ip设计收集并封装起来,并在公司内部或通过互联网与其它设计小组共享。这样的工具为设计人员提供了一个对可综合的vhdl或verilog代码,或固定功能网表等进行明确、收集和封装并建立相关文档的自动化的方法。新的模块一旦封装好并公布出来,其它工程师就可以利用标准的互联网浏览器下载这些ip,并安装到他们的xilinx core生成器系统中去。
虽然成本曾是阻碍在大批量生产的产品中选择fpga的重要因素,但现在却不成问题了。实际上,当今的fpga产品单位货币(每个美元)所买到的mac(乘法/累加运算)数比传统的dsp处理器还要高。正如任何器件一样,fpga制造商也在持续寻求降低成本的方法。例如,除了高密度的virtex系列以外,xilinx最近还推出了低成本的spartan-ii系列fpga产品,直接向固定门阵列产品挑战,对从年产5万至百万件的大批量生产都非常理想。例如,10万门的spartan-ii fpga器件售价不到10美元(在与门阵列产品相当的批量时)。
性能和功耗
与传统数据处理方法不同,dsp采用了高度流水线化的并行操作。而fpga结构则可以做得更好,达到更高的性能。fpga具有成千上万的查找表和触发器,因此fpga平台可以更低的成本达到比通用dsp更快的速度。例如,目前的两百万门fpga可达到每秒1280亿mac的性能,比目前最快的dsp性能还要高一个量级。
对多dsp处理器解决方案,需要较大的功率才能驱动连接多个处理器的板级连接(具有较大的容抗)。与此相对比,fpga可创建具有定制数据通道的处理器,数据以最小的负载从一个并行操作传送到下一个操作,并且没有取指令的额外开销。这种结构使得在较低的时钟频率下可达到较高的性能。而功耗直接正比于电路的频率,因此运行于较低时钟频率下并行处理的fpga方案可大大减小功耗。
设计及实施
虽然fpga的“可编程”特性带来明显的灵活性优势,但也需要设计编程技巧。fpga制造商不断改进这一流程,开发专门的软件,与第三方软件供应商建立伙伴关系,从而简化编程过程,并提供最大的灵活性。
fpga核心与系统级模型工具的集成为设计人员提供了创建低功耗、高性能便携式dsp应用的简明方法。实际上,目前的便携式系统设计人员可以采用自动化的设计工具来完成系统设计和fpga实施。采用与系统框图类似的图形化方法,软件可自动将模块转换成相应的fpga dsp核心。
为简化fpga设计流程,设计新手和有经验的设计人员可以利用像xilinx最近推出的系统生成器这样的工具,直接连接使用the mathworks, inc. (natick, ma)的matlab和simulink系统工具。设计人员采用这一解决方案可以快速建立和验证一个dsp系统。软件自动生成hdl表示,然后再映射成xilinx logiccore构建模块。设计人员利用它来优化设计、并在高性能和低芯片成本之间进行平衡。
采用这一设计方法时,设计人员可以系统模块方式定义dsp算法,并验证算法数学上是否正确,然后利用位真值模拟方法来实施定点测试。在流程中的每一步,位宽度都可以优化以与系统要求相匹配。然后,利用核心生成器实施系统级工具所指定的设计。
应用举例
由于fpga的性能和灵活性,以及新的简明的设计和实施方法,在很多新兴dsp应用领域,如数字通信和视频处理,fpga都成为优选的解决方案。例如,xilinx virtex和spartan-ii fpga可以用来实现通用移动通信系统(umts)码分多址(cdma)应用中的匹配滤波器。umts标准的芯片速率有8.192mhz和15.36mhz两种选择。通过fpga解决方案,在未来不需要额外的资源就可以改变数据速率。
在cdma无线通信系统中,所有移动手机和所有无线基站都工作在相同的频谱。为区分不同的呼叫,每个手机广播一个唯一的码序列。cdma基站必须能够判别这些不同的码序列才能够分辨出不同的传输呼叫进程。这一判别是通过匹配滤波器实现的,匹配滤波器的输出显示出在输入数据流中探测到特定的码序列。
在cdma数字通信接收器中,匹配滤波器作为信号处理器来计算发送信号与接收信号的相关性。fpga都能提供良好的滤波器设计,而且能完成dsp的高级数据处理功能。
结论
充分发挥fpga dsp核心所具有的优点,便携式系统设计人员可大大缩短设计周期。采用fpga技术,还可以获得高性能,满足成本要求,并享有快速有效地对新设计进行优化的灵活性。
共享经济入侵充电宝行业 共享充电宝能赚钱吗?
运动员(听觉)神经-运动反应时的测量系统
沁恒微无线充电管理芯片CH246
选择合适的 IP 实现 Die-to-Die 连接
AirPods的无线充电盒上市之日出现眉目,可能就在今年年底!
FPGA构建高性能DSP
三个电压如何判断npn还是pnp
甲骨文创始人炮轰亚马逊云:“用了必死无疑”?
使用LabVIEW进行GPU计算
关于PROFET摩托车BTS6110-1SJA的分析和介绍
一张图总结Google C++编程规范
英国小镇Hulk正在尝试推出自己的数字货币
三星将推8英寸平板电脑 剑指苹果iPad mini
LED VF值偏髙5V不亮失效分析
喜欢炫酷的伙伴们看看,这风扇够不够酷
基于单片机控制的多功能充电系统设计
USB接口WiFi模块将助力智慧安防实时高清视频数据传输
数据库为什么有可能喜欢Linux AIO(异步I/O)?
新一代直线马达式抽油机在大庆油田正式上岗
硅基氮化镓充电器的原理 有哪些优缺点