EEJournal

专题文章
现在就订阅

C转FPGA

Altera加速Nios II

作为片上系统平台,fpga正在嵌入式系统领域取得重大进展。配方是坚实的-将处理器与一些外围设备一起连接到片上总线或交换结构。添加一点芯片外内存和快速嵌入式系统,随时准备在片刻的通知更改,甚至在它在您的客户手中。从5万英尺的高度看,它似乎是尖端嵌入式开发的理想解决方案。当然,就像任何看似理想化的解决方案一样,它也有其局限性。这就是竞争仍然存在的原因。

采用软核嵌入式处理器的基于fpga的片上系统的主要限制是处理器性能。今天,有相当复杂的32位RISC处理器可作为fpga的可配置IP,仅占典型设备的LUT结构的一小部分。Altera的NIOS II可能是最典型的例子。使用这样的核心和像Altera的SOPC Builder这样的环境,系统设计人员只需点击几下鼠标,就可以在几分钟内快速拼接一个定制的系统,并完成外围设备。然而,这种系统的普通版本没有充分利用FPGA的许多潜在优势。

fpga中的嵌入式处理器性能不是大问题的原因是,关键性能的功能可以在硬件中加速。除了处理器或微控制器提供的可编程性外,硬件加速器可以被插入,大规模并行化关键功能。例如,许多fpga具有大量硬连接的乘法器或乘累加单元,可以连接到并行数据路径中,以缩短许多数字信号处理(DSP)算法中的数学密集型例程的工作。然而,利用这种能力的挑战在于,这些硬件加速器的设计通常是低水平的数字硬件工作,需要精通硬件描述语言(hdl)、逻辑合成和复杂时序设计的工程师的专业知识。设计的硬件加速部分的开发开始成为进度中的瓶颈,需要相当多的额外专业知识。

本周,Altera宣布了一个解决这个问题的新解决方案。Altera的新Nios II C-to-Hardware加速编译器(C2H)正是顾名思义,专门针对其功能强大的Nios II软核处理器以及Stratix II和Cyclone II fpga的用户。它允许从正常的Nios II软件流程中提取C例程,并将其编译成高性能硬件,从而显著提高计算吞吐量。

尽管如今有许多产品和项目声称可以从c到硬件进行编译,但Altera在几个重要方面脱颖而出。首先,它并不是一个通用的算法到硬件编译器。它专门针对Altera的FPGA结构,并通过Altera的Avalon互连结构和I/O生成其外部连接性。其次,它直接从普通的ANSI C运行。它不依赖于特殊的库或非标准的C结构来将C转换为虚拟HDL。最后,它自动将生成的硬件连接到运行在Nios II处理器上的主程序。

这三个区别有可能使交付易于使用、实用的软件加速变得完全不同,而不仅仅是为定制硬件开发提供一种新的方法。由于Altera的C2H使用通用C(只有很少的限制,如浮点和递归),程序员可以快速地将例程移进或移出硬件,试验以找到性能、功耗和硬件利用率的最佳组合。

将c到硬件系统带入生活的最具挑战性的方面之一是缩小几乎无穷无尽的可能性列表。你想展开你的循环并使用数百个乘数来获得超加速吗?你想要一个有更多链接的慢时钟,还是一个有更多流水线的快时钟?Altera瞄准特定硬件结构的方法确定了许多这些变量。系统可以对硬件加速器做出一些适当的假设,如时钟频率、资源的数量和类型(如乘法器)以及可用的互连结构。

c -to-硬件技术通常有两种可能的目标受众——寻求更高生产力的硬件工程师和寻求加速算法的软件开发人员。通常,很难判断产品的目标受众是什么。然而,在Altera的案例中,他们已经明确表示,C2H将瞄准软件加速器。这一点很重要,因为这两组人对成功的标准截然不同,对编译过程中人工干预等不便的容忍度也非常不同。硬件工程师通常会寻找生成的硬件,其性能与手工制作的RTL代码相当。为了实现这个目标,硬件工程师愿意忍受实质上更具交互性的编译过程,并且他希望对生成的硬件的微架构有更多的控制。

另一方面,软件工程师希望生成的硬件比处理器上的等效代码运行得更快。他通常不关心硬件是否达到手工制作的最佳状态。他重视自动化而不是控制,通常希望工具像软件编译器一样运行——源代码进去,硬件加速器出来。他也不想为这种能力支付ASIC设计工具的价格。

Altera的C2H非常适合后一种用户。使用C2H,选择要加速的C函数,然后单击右键将它们加速到硬件。剩下的由系统来处理。Altera的Avalon开关结构解决了此类加速方案中常见的关键瓶颈之一,即处理器到加速器的连接。通过让加速器直接访问内存,数据可以通过加速路径移动,而不需要由处理器传递。然后,加速器使用的资源可以与内存延迟相匹配,从而消除了加速器过度设计和由于I/O带宽而不能充分利用的情况。

早期的客户报告了C2H的良好结果。像任何新的方法一样,它可能需要一段时间才能成熟,并且对某些应用程序比其他应用程序更有效。无论如何,这是fpga作为可行的高性能嵌入式计算平台向前迈出的重要一步。如果像C2H这样的工具能够消除广泛采用的工程障碍,那么fpga的成本、性能、功耗和灵活性特征将会脱颖而出。基于fpga的片上系统将比传统的基于离散处理器的嵌入式技术更有优势,并可能获得重要的市场份额。

留下回复

有特色的博客
2023年2月9日
现在,从政治到经济、就业、健康和冲突的威胁,都有很多悲观情绪。持续不断的负面新闻报道加剧了这种悲观情绪。如果你听新闻节目的时间足够长,你会确信底部是关于……
2023年2月8日
作为PCIe 6.0规范的一部分,了解TEE设备接口安全协议(TDISP)如何保护I/O虚拟化并启用安全密钥交换。新PCIe TDISP架构保护设备接口与虚拟服务器首次出现在从硅…
2023年1月19日
你是否在调整表带或更换手表电池时遇到了问题?如果是这样,我是好消息的携带者....

特色粉笔谈话亚博里的电子竞技

室内空气质量的关键要素:为什么它们很重要,我们为什么要检测它们?

逮老鼠的电子产品而且Sensirion

测量室内空气污染是监测我们健康和生产力的宝贵工具。在这期Chalk Talk节目中,来自亚博里的电子竞技盛思敏的Amelia Dalton和Timothy Kennedy讨论了室内空气质量测试的内容、方式和原因,以及盛思敏的Sen5X一体空气质量传感器如何使测量室内空气质量比以往任何时候都更容易。

更多关于盛思睿SEN5x环境传感器节点的信息

Baidu