广告

从MCU到FPGA:第3部分

时间:2019-04-02 作者:JPaul Carpenter 阅读:
当我开始这个项目的时候,我已经了解到FPGA的好处在于它可以将多种功能集成到单一的芯片中,并可以通过重配置而修改芯片功能。但是这种灵活性也让我想知道:我应该如何处理FPGA与外部组件的接口以及接口连线等问题呢?由于FPGA的平均设计周期为两到三年,并且考虑到诸如USB 3.0到USB Type-C等通信技术的更新换代,我很难理解FPGA如何才能真正地带来好处。
广告

当我开始这个项目的时候,我已经了解到FPGA的好处在于它可以将多种功能集成到单一的芯片中,并可以通过重配置而修改芯片功能。但是这种灵活性也让我想知道:我应该如何处理FPGA与外部组件的接口以及接口连线等问题呢?由于FPGA的平均设计周期为两到三年,并且考虑到诸如USB 3.0到USB Type-C等通信技术的更新换代,我很难理解FPGA如何才能真正地带来好处。

 

和处理大多数MCU项目时一样,我打算从示例代码开始,然后通过各种示例搭建自己的项目。但是对于每一个例子,我发现越来越不熟悉,并且结果也越来越混乱。在这里代码被用来定义对象和调用函数,这在MCU里倒是很常见,但是有些定义是在高阶函数里进行的,而其他的则是在另一个地方。像往常一样,这些函数被用来执行一个功能或任务,但有一些函数要依赖于其他函数而另一些函数则是独立的。正如我试图对它们发表评论时所发现的那样,那些没有被直接调用的代码仍然是代码功能的关键。

我很迷糊。

我决定在YouTube上搜索“Intel FPGA Setup Cyclone V”来寻找示例和“Setup&Go”培训。当我浏览这些内容时,我发现一个共同的主题(图1):

l   看似不连贯的一组命令仍然有效,但似乎并不完整。

l   缺乏不支持FPGA的外部模块或组件。

 

 

有了这些观察,我回顾了更多设计样本和代码,并发现了英特尔Cyclone V和HPS FPGA架构显著的优势。图1显示了HDMI命令集,其中包括一系列未被调用的代码。它们不是按顺序运行的,而是并行运行的。它们的功能很像回调函数,在HPS中如果有来自较高级别控制器的数据调用时,这些回调函数就会被激活。然后编译器就会提高向MCU传递信息的能力,反之亦然。在这两者之间需要做的就是协调定义和时间安排。

E0.jpg

图1:HDMI命令集,其中包括一系列未被调用的代码。

项目流程如下所示:

1.     Linux HPS抓取图像。

2.     Linux将OpenCV处理过程移交给FPGA。

3.     Linux调整图像。

4.     FPGA接收原始图像信息,并将其编码为HDMI接口。

这是使用HPS和FPGA的完美示例。FPGA能够处理大量重复的运算并实现协议,而Linux和MCU则处理了程序的动态元素。这让我看到了FPGA的优势。

当我深入研究仅含有MCU的设计时,我发现了FPGA的其他优点:它需要很少的元件,而且可以使成本更低,性能更好的MCU获得非常好的效果。例如,仅含MCU的设计将需要更高的A52等条件来进行图像处理,此外还需要一个GPU来进行图形加速处理和更多的RAM来完成整个设计。设计完成后,最终结果仍然是一个锁定的,有限的可升级模块。有了FPGA,这些组件便可以被引入同一个芯片,所以产品级PCB设计更为简单,因为它需要较少的的组件接口,而且由此产生的模块仍然可以升级或优化。

我头顶上的灯泡在几英里外都可能被看到。

将多功能集成到单个电路上,减少接口数量,或者根据线路修改功能等这些都是FPGA的优势,但它的好处远不止这些。FPGA改变了我为了高效完成任务而增加外部组件的方式:不是“按顺序执行步骤1,步骤2,步骤3”,现在我正在考虑这样完成任务:“执行步骤A,B,C,并且当执行完B之后,就执行D”。现在,为什么要花时间来研究MCU到FPGA开发转换的原因也已变得越来越明晰了。

请继续关注第4部分文章!

 

本文为EET电子工程专辑 原创文章,禁止转载。请尊重知识产权,违者本司保留追究责任的权利。
  • 集成动态过流检测的智能锁电机驱动器设计方案 本文介绍了使用高电压GreenPAK的一个特定示例,描述了针对特定电机和电池组的集成设计定制方法。这是一种非常灵活的电机控制解决方案,采用可配置的内部逻辑,可满足设计人员的需求。而且将电机驱动器集成进GreenPAK中,可以将整个电路放入很小的物理空间。
  • CMOS传感器在3D视觉、感测和度量中的应用 工厂已进入自动化工作,以提高产能和在产品查验和库存的方方面面节省时间和金钱。要优化这些因素,拥有视觉系统的机器需要更高速和以更佳性能工作。因应这些发展,2D视觉遇上了限制,使得3D视觉被广泛引进,以实施更高精度的质量检验,反向工程或物件量度任务。三角测量技术正在这些应用中获大量使用,鉴于三轴图像要求高分辨率,需要非常高速的的传感器。
  • 魏少军教授2020 ICCAD演讲PPT:抓住机会,实现跨越 中国集成电路设计业2020年会(2020 ICCAD)暨重庆集成电路产业创新发展高峰论坛,于2020年12月10日在重庆悦来国际会议中心举行。中国半导体行业协会集成电路设计分会理事长魏少军教授在高峰论坛上,发表了主题为《抓住机会实现跨越》的开场报告。《电子工程专辑》在现场整理了报告中的重点内容与读者分享。
  • 国产工业级MCU调研系列报道:电机控制方案 微控制器(MCU)是很多电子设备的“大脑”,其性能、稳定性和可靠性至关重要,当然也有不同的等级区别。我们重点讨论面向工业应用的工业级MCU,看看在电机控制这一细分应用领域有哪些可供选择的国产工业级MCU厂商。
  • 如何为系统选择合适的NAND闪存? 在设计使用NAND闪存的系统时,选择适当的特性平衡非常重要。 闪存控制器还必须足够灵活,以进行适当的权衡。 选择正确的闪存控制器对于确保闪存满足产品要求至关重要。
  • 如何降低步进电机的噪声? 步进电机具有简单的结构并且易于控制。作为一种数字电子元件,步进电机广泛应用于各种开环控制系统。然而,其驱动电路和谐振机械结构所产生的噪声会影响整体性能。大多数步进电机应用都要求平稳的运转。为了获得流畅的运转效果,设计者可以修改电压、电流,或者更常见的是修改微步设置。
广告
热门推荐
广告
广告
广告
EE直播间
在线研讨会
广告
广告
面包芯语
广告
向右滑动:上一篇 向左滑动:下一篇 我知道了