关 闭

新闻中心

EEPW首页 > 工控自动化 > 设计应用 > 运用FPGA进行控制平面/数据平面视频处理

运用FPGA进行控制平面/数据平面视频处理

作者: 时间:2011-01-12 来源:网络 收藏

  让我们来近距离观察一个涉及流数据实时处理的控制平面/数据平面应用。我们将面临高清视频流特有模式的识别。该实要求混合使用高性能数据处理和包含嵌入式微处理器的控制功能的多种应用的典型代表。

  720p/60Hz的HD视频流的像素频率为74.25MHz。这就要求222.75MB每秒的处理速率。假定采用2.5GHz的双核双指令处理器来处理该数据,最佳的指令率为10G指令每秒。这样的处理器可针对所处理数据的每一字节执行22.4条指令。对某些应用而言这已经足够了,但22.4条指令表明所能处理的数据非常有限。复杂的视频处理功能,比如内核卷积(kernelconvolution)、噪音消减和其他过滤功能需要更高的指令执行效率。本文的解决方案准备在数据平面上创建并行或流水线处理单元。

  HD视频处理是一种可以把问题划分为控制平面和数据平面予以高效处理的常见的现实应用。作为一种高度并行处理单元,FPGA在本例中负责视频处理,同时由FPGA内部的中等性能处理器负责视频处理流水线。该处理器可专用于单个应用,也可以运行诸如Linux这样的操作系统。最终形成的硬软件混合实施方案可以把处理交付给能够进行最佳处理的部分,实现低成本、高性能数据处理解决方案。图1显示的是典型的控制平面/数据平面系统。

  图1:典型的控制平面/数据平面处理系统。

  图1:典型的控制平面/数据平面处理系统。

  采用FPGA实现计算负载均衡

  除了不菲的ASIC,FPGA是性能最高、最具经济效益的流数据处理单元实施方法。FPGA因其灵活的架构而能让设计人员实施包含并行和流水线单元的处理系统。这样设计人员即可优化系统的性能和时延。

  设计人员随后可以将该数据平面解决方案应用于外部的分立微处理器以进行控制。在FPGA内部加入该处理器能够带来多项优势。内部处理器能够大大减少处理器和数据平面单元之间的控制时延。时延的减少可以释放出许多处理器周期。外部处理器必须与数据平面保持通信。通信通道可以是32位或者更多位数,并同时需要更多导线用于寻址和控制。增加的导线可能会要求更强大的处理器和FPGA封装,从而导致系统成本增加。而采用PCIExpress(PCIe)能大幅度减少引脚数量。遗憾的是,不是所有的处理器和FPGA都支持这种相对新型的接口,而且即便支持,PCIe器件的成本也大大高于不采用PCIe的同类器件。

  在FPGA内部实施控制平面处理器和数据平面可以减少器件数量、板级空间和功耗,最终形成一个低成本的解决方案。在FPGA内既有诸如PowerPC等硬核处理器,也有赛灵思MicroBlaze等软核处理器,可以根据应用要求配置基于FPGA的处理器。基于FPGA的系统能够在处理器和FPGA逻辑之间移植决策和计算功能,从而实现系统级的优化。

  控制平面/数据平面系统的实施

  某些工具可以简化基于FPGA的控制平面/数据平面系统的实施。使用向导或者通过调整现有参考设计来编译系统是其中两种常用的方法。

  通过向导FPGA工具可迅速汇编微处理器系统。使用下拉列表或者复选框,您可以轻松地指定目标部件以及需要的处理器和外设。同时,可以使用诸如MATLAB软件这样的工具来迅速编译具有处理器总线接口的信号处理流水线以用于控制。另外,还可以使用C-to-HDL工具构建数字信号流水线。控制平面/数据平面的连接可以简单地通过匹配总线接口来完成。图2显示的是启动向导的说明窗口和用向导构建的最终系统。



关键词: 收发器

评论


相关推荐

技术专区

关闭