acm-header
登录

ACM通信

印度地区专题:大趋势

构建SHAKTI微处理器


生命力处理器

图片来源:Gopalam嵌入式系统

微处理器和微控制器构成了电子系统的核心。不幸的是,目前几乎所有的微处理器和微控制器都是进口的。拥有严格许可条款的知识产权和专利保护着他们的设计。认识到处理器行业的局限性,SHAKTI处理器程序11始于2014年的一项学术倡议。SHAKTI是一个开源处理器4该计划由印度理工学院马德拉斯的Pratap subramaniam数字智能和安全硬件架构中心(PC-CDISHA) -可重构智能系统工程(RISE)小组发起。该项目由新德里电子和信息技术部(MEITY)的慷慨资助启动。

该计划旨在创建开源的工业级处理器,并为更广泛的生态系统构建相关组件。这个生态系统超越了这些处理器设计。今天,SHAKTI程序在开放源码许可下提供了软件堆栈、FPGA原型、互连结构、加速器、设备ip、验证套件等。

回到顶部

夏克提家族

PS-CDISHA计划在硅中实现至少三种芯片C-Class、I-Class和C-Class的安全版本。C-Class的目标是深度嵌入式和边缘应用。I-Class的目标是桌面和pc类应用程序。此外,人工智能/机器学习(AI/ML)加速器也在积极考虑之中。它们适用于不同的应用,如智能卡、嵌入式系统、桌面、高性能计算(HPC)系统和各种安全计算系统。一个容错版本的SHAKTI也在开发中。5c类的安全版本具有基于硬件指令的安全解决方案。这显示了使用没有阻碍的指令集的灵活性,从而允许设计思想自由地流入创造性的处理器架构。

RISC-V9被选为SHAKTI类处理器的指令集体系结构(ISA)。SHAKTI处理器和系统设计是使用开源高级合成(HLS)语言:Bluespec System Verilog (BSV)开发的。1BSV是一种开源的高级硬件描述语言。它提供了一种高级抽象,就像从汇编编程到C语言一样,并保证了可合成的电路。由于编译器为设计器完成了所有的工作,因此生成实例的设计时间大大减少了。除了减少设计时间之外,Bluespec还允许用户在更高的级别上工作,提高吞吐量。该语言现在由一个开源的Bluespec编译器支持,它可以为FPGA和ASIC目标生成可合成的Verilog。

回到顶部

实现生命力

C-Class是SHAKTI处理器家族的一员。它是一个可配置的商用级五级有序核心,支持标准RV64GCSUN ISA扩展。这个存储库中的核心生成器可以配置核心,以从相同的高级源代码生成各种设计实例。设计实例可以服务于从嵌入式系统、电机控制、物联网、存储和工业应用到低成本、高性能的基于linux的应用等领域。这种灵活性有助于根据应用程序的需要调优处理器设计实例的性能和功率。c级概念验证设计使处理器硬件能够根据用户特定的需求进行定制。

C-Class的源代码在开放源码许可的BSD许可下可用。c级结构已经在22nm/180nm的硅工艺技术中进行了测试。SHAKTI C-Class-Rimo、Risecreek和Moushik有三种主要的硅实现(也称为测试磁带)数字).

uf1.jpg
数字SHAKTI C-Class的三个主要的硅实现。

回到顶部

SHAKTI支持

软件开发工具包是支持处理器和片上系统(SoC)所必需的。SHAKTI SDK是PS-CDISHA的软件开发工具包,是一个开源软件开发工具包。它为SPI, QSPI, PLIC, CLINT, UART, I2C和PWM提供驱动支持。它是在驱动程序、引导层、核心层和应用程序层之间进行清晰分离开发的。


该计划旨在创建开源的工业级处理器,并为更广泛的生态系统构建相关组件。


多个传感器已经使用SHAKTI-SDK进行了连接和验证。这些例子可以在博客中找到。10这可以作为软件开发的起点。对于使用硬件,可以使用SHAKTI网站。11该软件可以在独立或调试模式下运行,并支持多级日志记录、flash编程和动态内存管理。

SDK作为裸金属应用程序开发、项目和基准测试的单一点。此外,还提供对第三方董事会和内部董事会的支持。SHAKTI支持的操作系统包括Linux和FreeRTOS。3.

回到顶部

Swadeshi微处理器挑战赛和SHAKTI

为了进一步推动该国初创企业、创新者和研究人员的重要生态系统,MEITY宣布了Swadeshi微处理器挑战122020年在aatmanibharharat Abhiyan领导下。该挑战向所有层次的学生和初创企业开放,要求参赛者利用Swadeshi处理器ip为社会需求创新经济解决方案。SHAKTI处理器还以开放源码的形式提供给世界各地的技术人员,以设计他们自己的应用程序。

在挑战的最初阶段,大约有6170个团队(每个团队至少有两名成员)参加了比赛,其中包括500多家初创企业。他们完成了一项在线测试,并提交了一份抽象和详细的提案,从而进入第二阶段。与会者获得了FPGA板上移植的ip,以及围绕它们开发硬件概念验证应用程序的财务和技术支持。

30个具有最技术和财务上可行的解决方案的团队被挑选出来,并得到进一步的财政和技术支持,以进一步改进他们的硬件原型并进行演示。在30个团队中,最具创新力的10个团队凭借对各种问题的战略解决方案赢得了挑战。

回到顶部

安全与人工智能

在硬件层面,鉴于我们今天看到的技术无处不在,安全性正变得至关重要。英特尔的一项研究6注意到组织正在越来越多地寻找安全功能2从硬件层面上考虑。SHAKTI项目认识到这一需求的重要性,正致力于开发硬件级安全特性。这些包括加密算法的加速器、抗侧通道设计、8数据混淆和其他最先进的功能。除了硬件之外,正在进行提供安全引导功能的工作,以确保只有经过正确验证的软件才能在平台上运行。对于边缘设备的无线更新来说,这样的功能具有巨大的意义。

以边缘推理为重点的人工智能算法的硬件级加速正在进行积极的研究和开发。目前正在开发一种基于收缩阵列的加速器。

回到顶部

生命力的实现

今天,基于SHAKTI微处理器的FPGA在英迪拉甘地原子研究中心已经运行了一年多。7这种实现提供了防止处理器过时的安全性。该行业将在未来两年内采用SHAKTI。许多像SecurWeave这样的初创公司14和Mindgrove15为使SHAKTI类处理器适销对路做出了特别的努力。

开发微处理器的主要挑战是:

  • 设计语言: SHAKTI选择使用BSV来减少处理器的设计时间。
  • 工具:大多数情况下,开放源码工具是首选。铸造相关的工具也被使用。
  • 硅的实现该团队决定实现22nm和180nm尺寸的芯片,以展示技术独立性。
  • 资源:该项目由本科/研究生实习生、研究生在业界和学术界有经验人士的指导下执行。

回到顶部

结论

SHAKTI项目完美地呼应了印度微处理器设计、开发和生产的“Atmanirbhar”生态系统。SHAKTI项目通过周期性地剥离测试soc来持续地证明这一点。Swadeshi微处理器大挑战赛的获奖团队采用了基于SHAKTI处理器的设计。SHAKTI项目将继续“民主化并推动印度特定SOC设计走向自给自足的数字技术。”除了降低成本因素外,由于SHAKTI设计是开源的,它使初创企业能够形成一个生态系统,并增强它们在硬件方面的研发能力,这是迄今为止难以实现的。还有其他的开源项目,比如SiFive;13然而,从国家安全的角度来看,SHAKTI的设计具有重要意义。


以边缘推理为重点的人工智能算法的硬件级加速正在进行积极的研究和开发。


鸣谢SHAKTI团队得到了印度政府电子和信息技术部提供的资金支持,用于设计SHAKTI类处理器。

回到顶部

参考文献

1.Bluespec Verilog;https://bluespec.com/

2.Das, S.等。SHAKTI-MS: C. in中用于内存安全的RISC-V处理器20国会议记录thACM SIGPLAN/SIGBED嵌入式系统语言、编译器和工具国际会议, 2019年6月,19-32)。

3.FreeRTOS;https://www.freertos.org/

4.乔治,P.等人。SHAKTI:一个开源处理器生态系统。

5.Gupta, S., Gala, N., Madhusudan, G.S.和Kamakoti, V. SHAKTI-F:容错微处理器架构。在2015年IEEE 24会议记录th亚洲测试协会。电子学报,2015年11月,163-168。

6.英特尔研究;https://intel.ly/3JjGOsc

7.IGCAR SHAKTI执行,64;https://bit.ly/3vuo43u

8.KF,穆罕默德·阿尔萨斯。, Ganesan, V., Bodduna, R.和Rebeiro, C. PARAM:一种增强的微处理器,用于抗功率侧通道攻击。在2020年IEEE实习生论文集。计算机协会。面向硬件的安全和信任。电子学报,2020年12月,23-34。

9.RISC-V国际;https://riscv.org/

10.生命力博客;https://blogSHAKTI.org.in/

11.生命力的网站;https://SHAKTI.org.in/

12.Swadeshi微处理器挑战赛;https://bit.ly/3oO3lUN

13.SiFive;https://bit.ly/3Qsm7wT

14.SecurWeave;https://bit.ly/3JAFMZj

15.Mindgrove科技私人有限公司;https://bit.ly/3JAFIZz

回到顶部

作者

Kamakoti Veezhinathan是印度马德拉斯印度理工学院计算机科学与工程系的高级教授。


©2022 acm 0001-0782/22/11

允许为个人或课堂使用部分或全部作品制作数字或硬拷贝,但不得为盈利或商业利益而复制或分发,且副本在首页上附有本通知和完整的引用。除ACM外,本作品的其他组件的版权必须受到尊重。允许有信用的文摘。以其他方式复制、重新发布、在服务器上发布或重新分发到列表,都需要事先获得特定的许可和/或费用。请求发布的权限permissions@acm.org传真(212)869-0481。

数字图书馆是由计算机协会出版的。版权所有©2022 ACM, Inc.


没有找到条目

Baidu
map