谢丫丫

如何在学术环境中利用开源硬件?

0
阅读(99) 评论(0)

在本文中,苏黎世联邦理工学院的FrankKGürkaynak探讨并解释了他的团队在学术环境中选择和使用开源硬件平台RISC-V的过程。

五年前,我们在卢卡贝尼尼的领导下,与博洛尼亚大学一起在苏黎世联邦理工学院开始了并行超低功率(PULP)项目。我们的目标是探索新的计算架构,这些架构能够充分利用系统在广泛的操作范围内使用的能量,从物联网(IoT)中使用的微小系统一直到高性能应用计算(HPC)。我们很清楚,要构建这样一个系统,我们需要一个小而有效的处理器核心。但在哪里可以找到我们可以使用的处理器核心? 

 

探索商业与开源处理器

我们首先调查了可用的商用处 由于我们的研究活动不直接导致我们支付常规商业许可证的收入,我们需要利用学术许可协议。平心而论,大多数处理器IP提供商都拥有合理条件的大学课程。问题在于,大多数这些程序都不允许您对架构进行更改,有些需要额外的许可证来制造实际芯片,最重要的是,我们希望与业界和学术界的新合作伙伴建立的任何合作都需要额外的签署的协议需要很长时间才能建立。

所以我们开始关注开源处理器。虽然有许多Verilog和VHDL代码可用于不同许可下的各种处理器内核,但目前许多读者都不同,我们不太确定这些内核的设计和验证情况,无论它们是否实际用于实际。

 

PULP项目中的RISC-V

作为一个学术机构,我们能够通过我们的选择和开源处理器为您提供的自由带来更大的风险,无论是在增强方面,还是允许与任何人进行协作而无需冗长的IP所有权谈判都太诱人了。向上。在最初几年,PULP项目使用基于32位OpenRISC的处理器取得了巨大成功。我们能够提高我们自己实施的OpenRISC内核(称为OR10N)的性能,以便与最先进的32位处理器竞争,这些构成了我们成功的多核系统的支柱,旨在实现超低功耗运行。 

 

PULP系统相结合,创造了不同的平台

图1.  PULP系统由高效的RISC-V内核,外设,互连解决方案和加速器组成,它们组合在一起以创建不同的平台。 

 

RISC-V作为解决方案

与此同时,我们看到了RISC-V ISA的受欢迎程度。到目前为止,决定在项目中使用哪种处理器的最重要问题是开发环境的可用性,最好是使用广为人知的工具。无论您在开发架构时多么聪明,如果您无法让开发人员轻松地将应用程序移植到您的系统中,您将无法获得所需的结果。在我看来,正是这一点,RISC-V ISA对开源硬件社区做出了最大的贡献。

通过保持由RISC-V基础(苏黎世联邦理事会的创始成员)维护的清晰且深思熟虑的ISA定义,大型社区可以提供支持RISC-V的编译器和工具端口。与此同时,大多数这些端口都已经过上线,并且可以直接使用(例如,自2017年4月发布的7.1版以来的GCC)。

这就是为什么在2015年初,我们也转向了RISC-V。我们能够将大部分开发用于我们的OR10N内核并派生我们的第一个核心实现名为RI5CY的RISC-V ISA,我们继续使用和改进我们在整个项目中开发的数十个ASIC的核心。我们还针对不同的用例调整了RISC-V内核,并为资源紧张(Zero / Micro Riscy)的应用程序添加了专用内核,并添加了一个名为Ariane的64位内核,可以启动Linux操作系统。

 

演示板上的9核iot处理器

图2.我们的9核IoT处理器Wolf先生在一个小型演示板上。

 

在项目实施了5年多的时间之后,PULP项目产生了26个ASIC(见下图3),这些ASIC采用各种技术进行测试,从成熟的180nm技术的早期试验一直到我们的最新设计被称为Poseidon的是使用Globalfoundries 22nm技术实现的。我们还没有完成,我们目前正在参与许多利用我们的PULP技术的项目和合作,并将允许我们进一步开发它。 

 

PULP芯片库

图3.  我们在过去5年中录制的所有26个PULP芯片(未按比例)。 

 

开源项目的实现

从一开始,我们就清楚地知道我们将保留PULP项目的开源,这使我们能够灵活地与其他团体和公司合作,并且最终允许来自世界各地的贡献。我们采用了Solderpad许可计划,该计划是由剑桥大学发起的LowRISC项目引入的Apache许可证的衍生版,该项目已经帮助它被用于各种项目。我们的GitHub存储库包含我们作为PULP项目的一部分开发的各种硬件的源代码,不仅包括RISC-V处理器,还包括外围设备(SPI,I2C,GPIO,JTAG)和完整系统,形成简单的微控制器,状态为所有使用System Verilog编写的多核IoT平台ICfans。  

但到目前为止,该项目最有价值的部分是体验我们的工作不仅得到了学术界的好评,而且还得到了行业的好评。我们在上一次在巴塞罗那举行的RISC-V会议上了解到,谷歌,IBM和恩智浦都已经评估并使用了我们的核心,并根据我们的工作成功地完成了设计。像Cadence和Mentor这样的EDA公司已将我们的设计作为其培训和评估的一部分,来自法国格勒诺布尔的初创公司Greenwaves Technologies基于他们的第一个产品GAP8处理器,主要基于我们的多核OpenPULP架构。我们的GitHub页面适合所有人。 

当人们谈论开源项目时,他们经常提到它是免费的。大多数人只是认为你不支付它,但你从开源项目获得的真正自由要多得多,我认为更重要。使用我们的RISC-V系统的人可以随时从任何其他来源切换到RISC-V实现 - 毕竟,相同的二进制文件将适用于遵循该标准的任何RISC-V实现。

研究人员可以采取我们提供的内容并自由更改它们的实验,充分了解他们使用的系统不是玩具示例,而是可以在现实场景中找到应用程序。初创公司可以在我们提供的基础上作为起点,将时间和精力集中在他们想要提供的实际创新上。受到系统各种攻击干扰的人有机会向内部看,知道他们系统究竟是什么。这可能无法自动解决所有安全问题,但通过提供更大的社区访问权限来审查您使用的系统,这是提高安全性的重要一步。是的,所有这些自由都不需要额外的费用,同时还有商业RISC-V实现, 

 

RISC-V在学术界的好处

当我们5年前启动PULP项目时,开源硬件还处于起步阶段。今天,仍然有许多怀疑论者,但通过我们项目中大小公司的兴趣判断,它已经确立了自己作为一种可行的替代方案,开放式协作模式肯定会进一步推动它。我们与博洛尼亚大学的合作伙伴一起,为RISC-V社区的积极贡献者而感到自豪,并将继续成为学术界开源硬件的主要支持者。