• 如何将MCU与FPGA进行配对达到提高系统效率的目的?


    FPGA已经变得如此具有成本效益,因此它们越来越多地与mcu结合使用,以提高整体系统效率。用途包括在的电路板空间中添加额外的功能,为复杂算法的前端添加节能处理,聚合多个外部设备以卸载高性能MCU或作为使现有设计适应新的所需的“粘合”逻辑在接口要求方面,FPGA提供了标准MCU中常常缺乏的额外灵活性。本文将快速回顾一些的应用,其中FPGA和MCU“配对”,以展示如何通过降低功耗,减小电路板空间,提高处理性能或接口灵活性来提高系统效率,从而显着改善您的下一个设计。
     
    FPGA作为MCU配套器件
    您为设计选择的MCU多久没有完全具备您需要的所有接口通道?或许您对MCU的初始选择非常合适,但是出现了新的要求,因为您的客户需要为其设计添加一些额外的接口。您可能可以使用更复杂的MCU,但这可能会增加显着的电路板空间(因为它仅在高引脚数封装中可用),功率增加(因为它只能提供比您真正需要的更多闪存和SRAM) 或者更高的成本(出于上述两个原因)。
     
    解决这个难题的一种方法是通过在MCU旁边添加FPGA来规划对额外接口的需求。FPGA可以轻松提供额外的接口,只需提供您需要的接口,同时限制电路板空间,成本和功耗的增加。实际上与使用更复杂的MCU的选项相比,通常会减少电路板空间,降低成本并降低功耗。
     
    例如超低功耗FPGA可在极小的2.078 mm×2.078 mm电路板占板面积内提供多达26个信号IO,并且由于这些器件是通过片上NVM配置的,您不需要额外的电路板空间用于配置设备。这些FPGA还有两个专用的I2C接口和两个专用SPI接口,具有大量可配置逻辑,可以根据应用需要添加更多接口(直到用完引脚)。
     
    该器件还具有高达80kbits的嵌入式Block RAM,可用于接口FIFO和缓冲器,因此MCU可以等待整个数据包准备好进行处理。在将数据发送到MCU之前,DSP模块还可用于对原始传感器数据进行低级数据处理,作为预处理步骤。当FPGA可以在中断MCU之前智能地聚合数据时,可以大幅降低MCU功耗。
     
    快速响应FPGA接口请求
    使用FPGA配套器件时,快速响应FPGA的服务请求非常重要。例如音频接口可能需要具有比传感器数据更高的优先级访问权,因为必须避免音频数据中的“停顿”或者用户体验可能显着降低。通常能够支持各种中断优先级有助于提高FPGA伙伴的实用性,并进一步提高整体系统性能和功效。
     
    有效使用DMA还有助于进一步卸载MCU并提高效率。例如FPGA可能首先缓冲预处理原始数据的完整数据包,以减小需要存储和传输的消息的大小。FPGA可以中断MCU并启动DMA传输,将整个消息移动到MCU存储器中。一旦DMA传输完成并且整个消息准备好进行处理,就可以中断CPU并开始对消息进行处理。

    例如32位MCU有一个DMA控制器和一个中断控制器,两者都是可编程优先级。中断控制器在右侧有一个优先级块,它为CPU产生中断级。优先级块选择具有优先级的中断,由与每个中断源相关的中断优先级寄存器(IPRn)中的中断级别字段定义。因此可以在I2C端口上为较高优先级的源(例如实时音频接口)分配比低频传感器更高的优先级,以保证更快的处理。

  • 相关阅读:
    svn command line tag
    MDbg.exe(.NET Framework 命令行调试程序)
    Microsoft Web Deployment Tool
    sql server CI
    VS 2010 One Click Deployment Issue “Application Validation did not succeed. Unable to continue”
    mshtml
    大厂程序员站错队被架空,只拿着五折工资!苟活和离职,如何选择?
    揭秘!Windows 为什么会蓝屏?微软程序员竟说是这个原因...
    喂!千万别忘了这个C语言知识!(~0 == -1 问题)
    Linux 比 Windows 更好,谁反对?我有13个赞成理由
  • 原文地址:https://www.cnblogs.com/wridy/p/14469502.html
Copyright © 2020-2023  润新知