位置:51电子网 » 技术资料 » 显示光电

用FPGA实现高性能的数据采集和控制卡

发布时间:2007/8/24 0:00:00 访问次数:557

摘 要:本文主要叙述采用Lattice的FPGA体系结构能够在给定的DSP CPU的基础上,经济地增加通道数和每个通道的采样频率。

  带有DSP CPU的现成的数据采集和控制卡经常只能达到预期性能的一小部分。随着通道数目的增加或者采样频率的提高,在达到全部通道性能之前,DSP CPU已经开始呈现出超载现象。

  当今市场的压力迫使数据采集和控制卡的供应商在增加数据采集卡的通道数和提高采样频率的同时还要考虑降低成本。而且,卡的实际功能可以由生产或者在系统配置时决定。有时候,同一种卡在同一个系统的不同插槽中需要完成不同的功能。

  当通道数增加时,DSP的负荷也随之增加。在多数应用中,大部分的DSP CPU的带宽被前端预处理任务(偏移校正、增益调整、预滤波等)所消耗。而且这种代码的开发也是费时费力的,因为出于效率方面的原因,它通常需要用汇编语言来编写。即使采样数据从每个通道到不同的存储器之间的传送过程由DMA来处理,CPU的性能仍然会因可用的存储器带宽减小而降低。采样频率越高,处理器可用的执行诸如信号分析、视频处理、压缩等的实际DSP功能的时间就越少。

  由于DSP处理器不得不从一个通道切换到下一个通道,因此高速缓存器进一步降低了可用的总线带宽。除了处理数据以外,DSP CPU还必须管理数据(缓冲、数据移动等)、通过背板将处理完的数据传送到主处理器、处理背板协议等。

  要满足通道数目增加时的处理要求,DSP CPU的性能必须呈指数型的提高。对提升DSP性能的要求可以通过提高处理器的工作频率(将导致更高的总线传输频率、使用更快的存储器和外设接口芯片)或使用功能更为强大的处理器这两种方法来满足。无论哪种方法都会大大地增加电路板的成本。

  本文提出的体系结构能够在给定的DSP CPU的基础上,经济地增加通道数和每个通道的采样频率。它通过采用低成本的LatticeECP和 LatticeEC FPGA作为 DSP CPU的协处理器,在降低预处理和非DSP工作负荷的同时保持了灵活性,可以适应多种不同的应用。由于这些FPGA器件提供了充足的局域存储器,因此可以实现一种能够进一步提高性能的可编程的数据流结构:一旦所有操作数就绪,数据流结构将帮助DSP处理器执行计算任务。它取代了需要等待操作数就绪的顺序执行的方式。

  图1 数据采集和控制卡结构(略)

  结构图1显示了如今的数据采集和控制卡结构。该卡被设计成能够处理来自ADC板块的20M的采样数据。

  从左边开始,多个高频模拟信号被ADC板块量化并通过一个LVDS接口被传送到FPGA中。FPGA通过DMA将数据直接传送到连在DSP CPU上的SRAM中。DSP CPU处理存储器中的数据,并将分析过的数据通过PCI背板传送到主处理器中。在CPU的命令下,FPGA产生用于与外部数字子系统通信的控制信号。该板的基准产能是能够处理4个5M采样频率的通道。在这样的速率下,已经没有剩余的可用于模拟控制(用数字I/O驱动DAC)或者分析调理过的信号的处理能力了。因为DSP CPU已经在处理所有的任务(包括预处理功能、与主处理器通信等),任何新增的处理要求只能由下一代的、配备了更昂贵的DSP CPU的数据采集卡来完成。另一种可选方案是通过减少输入通道数来处理额外的工作。

  ECP FPGA中的DSP模块

  在分析实际应用的结构图之前,先描述一下内嵌在LatticeECP-DSP FPGA中的独特灵活的DSP模块是很有帮助的。这种模块经过配置可以用于许多种DSP应用。每片ECP-DSP器件有4到10个sysDSP模块。它们可以通过多个通道实现并行的DSP处理。借助软件,每个sysDSP模块可以配置成下列的模式之一:

36x36模式

一个36x36的乘法器

18x18模式

四个乘法器

两个52位的乘法累加器

两个各含两个18x18乘法器的求和器

一个含四个18x18乘法器的求和器

9x9模式

八个乘法器

两个34位的乘法累加器

四个各含两个9x9乘法器的求和器

两个各含四个9x9乘法器的求和器

  sysDSP模块提供的灵活性可以被用来实现许多种DSP任务。以下是sysDSP模块在18x18模式下的配置示意图,见图2。

  图2 sysDSP模块在18x18模式下的配置示意图(略)

  这些模块可以实现250MHz速度下的所有功能,总的处理能力达一万个MMAC(百万乘法累加操作)。由于待处理的数据通过硬件送到这些sysDSP模块中(与微处理器需要从它的存储器中读取数据不同),所以这些模块的性能非常接近基准期望值。这些流水线寄存器可以使DSP处理任务在最高运行速度下执行。这种sysDSP模块可以在同一个模块中实现乘法累加、求和、加法或减法运算,而无需使用外部的FPGA结构,因此避免了这些结构的布线延时。

  这些FPGA结构可以编程实现所要求的数据管理功能,从而减轻DSP CPU处理非DSP工作的负担。

  重新配置改善性能

  结构图3采用了相同的DSP CPU来实现所有

摘 要:本文主要叙述采用Lattice的FPGA体系结构能够在给定的DSP CPU的基础上,经济地增加通道数和每个通道的采样频率。

  带有DSP CPU的现成的数据采集和控制卡经常只能达到预期性能的一小部分。随着通道数目的增加或者采样频率的提高,在达到全部通道性能之前,DSP CPU已经开始呈现出超载现象。

  当今市场的压力迫使数据采集和控制卡的供应商在增加数据采集卡的通道数和提高采样频率的同时还要考虑降低成本。而且,卡的实际功能可以由生产或者在系统配置时决定。有时候,同一种卡在同一个系统的不同插槽中需要完成不同的功能。

  当通道数增加时,DSP的负荷也随之增加。在多数应用中,大部分的DSP CPU的带宽被前端预处理任务(偏移校正、增益调整、预滤波等)所消耗。而且这种代码的开发也是费时费力的,因为出于效率方面的原因,它通常需要用汇编语言来编写。即使采样数据从每个通道到不同的存储器之间的传送过程由DMA来处理,CPU的性能仍然会因可用的存储器带宽减小而降低。采样频率越高,处理器可用的执行诸如信号分析、视频处理、压缩等的实际DSP功能的时间就越少。

  由于DSP处理器不得不从一个通道切换到下一个通道,因此高速缓存器进一步降低了可用的总线带宽。除了处理数据以外,DSP CPU还必须管理数据(缓冲、数据移动等)、通过背板将处理完的数据传送到主处理器、处理背板协议等。

  要满足通道数目增加时的处理要求,DSP CPU的性能必须呈指数型的提高。对提升DSP性能的要求可以通过提高处理器的工作频率(将导致更高的总线传输频率、使用更快的存储器和外设接口芯片)或使用功能更为强大的处理器这两种方法来满足。无论哪种方法都会大大地增加电路板的成本。

  本文提出的体系结构能够在给定的DSP CPU的基础上,经济地增加通道数和每个通道的采样频率。它通过采用低成本的LatticeECP和 LatticeEC FPGA作为 DSP CPU的协处理器,在降低预处理和非DSP工作负荷的同时保持了灵活性,可以适应多种不同的应用。由于这些FPGA器件提供了充足的局域存储器,因此可以实现一种能够进一步提高性能的可编程的数据流结构:一旦所有操作数就绪,数据流结构将帮助DSP处理器执行计算任务。它取代了需要等待操作数就绪的顺序执行的方式。

  图1 数据采集和控制卡结构(略)

  结构图1显示了如今的数据采集和控制卡结构。该卡被设计成能够处理来自ADC板块的20M的采样数据。

  从左边开始,多个高频模拟信号被ADC板块量化并通过一个LVDS接口被传送到FPGA中。FPGA通过DMA将数据直接传送到连在DSP CPU上的SRAM中。DSP CPU处理存储器中的数据,并将分析过的数据通过PCI背板传送到主处理器中。在CPU的命令下,FPGA产生用于与外部数字子系统通信的控制信号。该板的基准产能是能够处理4个5M采样频率的通道。在这样的速率下,已经没有剩余的可用于模拟控制(用数字I/O驱动DAC)或者分析调理过的信号的处理能力了。因为DSP CPU已经在处理所有的任务(包括预处理功能、与主处理器通信等),任何新增的处理要求只能由下一代的、配备了更昂贵的DSP CPU的数据采集卡来完成。另一种可选方案是通过减少输入通道数来处理额外的工作。

  ECP FPGA中的DSP模块

  在分析实际应用的结构图之前,先描述一下内嵌在LatticeECP-DSP FPGA中的独特灵活的DSP模块是很有帮助的。这种模块经过配置可以用于许多种DSP应用。每片ECP-DSP器件有4到10个sysDSP模块。它们可以通过多个通道实现并行的DSP处理。借助软件,每个sysDSP模块可以配置成下列的模式之一:

36x36模式

一个36x36的乘法器

18x18模式

四个乘法器

两个52位的乘法累加器

两个各含两个18x18乘法器的求和器

一个含四个18x18乘法器的求和器

9x9模式

八个乘法器

两个34位的乘法累加器

四个各含两个9x9乘法器的求和器

两个各含四个9x9乘法器的求和器

  sysDSP模块提供的灵活性可以被用来实现许多种DSP任务。以下是sysDSP模块在18x18模式下的配置示意图,见图2。

  图2 sysDSP模块在18x18模式下的配置示意图(略)

  这些模块可以实现250MHz速度下的所有功能,总的处理能力达一万个MMAC(百万乘法累加操作)。由于待处理的数据通过硬件送到这些sysDSP模块中(与微处理器需要从它的存储器中读取数据不同),所以这些模块的性能非常接近基准期望值。这些流水线寄存器可以使DSP处理任务在最高运行速度下执行。这种sysDSP模块可以在同一个模块中实现乘法累加、求和、加法或减法运算,而无需使用外部的FPGA结构,因此避免了这些结构的布线延时。

  这些FPGA结构可以编程实现所要求的数据管理功能,从而减轻DSP CPU处理非DSP工作的负担。

  重新配置改善性能

  结构图3采用了相同的DSP CPU来实现所有

相关IC型号

热门点击

 

推荐技术资料

按钮与灯的互动实例
    现在赶快去看看这个目录卞有什么。FGA15N120AN... [详细]
版权所有:51dzw.COM
深圳服务热线:13692101218  13751165337
粤ICP备09112631号-6(miitbeian.gov.cn)
公网安备44030402000607
深圳市碧威特网络技术有限公司
付款方式


 复制成功!