入局IoT芯片战场 RISC-V暗藏应用碎片化“风险”

来源:华强电子网 作者:Andy 时间:2019-05-24 11:39

iot 芯片 RISC-V

  凭借极简、模块化、可扩展以及完全开源等多项优势,RISC-V被业界认为是非常适合于物联网等嵌入式应用以及对计算性能、功耗和灵活性要求较高应用场景的指令集,对于广大芯片设计厂商来说,也是区别于ARM、MIPS等架构更为经济实惠的选择。但尽管RISC-V指令集应用优势众多,其高度的开源及可扩展性反过来也催生了一定的碎片化风险;另一方面,与成熟的x86和Arm架构相比,RISC-V当前在软件生态、操作系统支持还是微架构等方面也不成熟,这就使得IoT芯片设计中最敏感的安全问题也难以覆盖到。RISC-V究竟该如何破除这些质疑和禁锢,借力物联网等新兴市场迈向真正意义上的大发展,是当下整个芯片产业密切关注的话题。

  一直以来,芯片架构之争都是业界关注的焦点,如今在ARM、x86以及MIPS这类已具备庞大市场基础的架构体系的“狂轰滥炸”之下,作为行业新秀的RISC-V依然能于万军之中冲破重围,杀出一片血路,编者认为这主要归功于其两大优势——即高度开源与可扩展性。正是基于这两种独有的特性,令其在全球芯片界获得了越来越多的支持和青睐,力克后来跟风的MIPS,成功上位。毕竟,采用RISC-V指令集来开发芯片,企业不仅能够基于32、64甚至128位的指令集在微架构层面上做各种应用的高自由度扩展,同时又能够节省微架构上的一大笔授权许可费,更不用交版税,这对于当今已具备足够芯片开发实力的企业们来说,无疑是一举多得。

  事实上,RISC-V的优势并不能只用其在某个采用该指令集方案的芯片能够在跑分或者一些主要性能参数上优化了多少的数据来衡量,SiFive中国资深现场应用经理胡进认为:“关键在于其创造了一个全新的商业模式,可以让企业按项目需求自主挑选其项目标准的组合,并按自身需要去实现这样的设计。同时,它也能够按需加入自己的一些非标准的扩展,这一系列的选择都是由企业自己做主,不需要得到他人的批准或者授权,这种自由度目前只有RISC-V才能提供,其他任何架构都不具备这种自由度。有了指令集,设计方就可以按照自己项目需求的一些功能,对PPA的一些量化条件去实现。况且,现在有了诸如RISC-V基金会和现有基金会广大的成员,RISC-V有任何不足或者做的不好的地方,能够比其他架构更快的去修复和完善,这也是现在越来越多芯片设计商在项目中选择RISC-V的重要原因。”

  当然,在诸如云端服务器、智能手机以及平板电脑和PC这类传统市场,如今RISC-V几乎已不可能打破ARM和x86架构的垄断地位。但对于AI、IoT这类创新的应用场景,RISC-V却是大有机会实现反超。尤其是当下火热的IoT芯片领域,RISC-V的可扩展性优势可以体现的淋漓尽致,这种可扩展的自主定制化能够让IoT芯片做到相比同类ARM架构更低的功耗、更小的体积以及更高速的睡眠和唤醒时间。

  与同级的ARM架构芯片相比,胡进举例到:“以我们自己的RISC-V核来举例,我们的E2系列,比如E21可以跟ARM的Cortex-M3和M4去比,在芯片强调的功耗上都是比它们要低的,虽然我们E21是一个标准核,但我们的配置会比M3和M4要更多一些,当然功耗也是更低,这些我们自己都实际测试过,当然我们的客户也都测过。而芯片进入到睡眠状态的话,RISC-V可能只要一个Cycle或两个Cycle执行这个指令就能进入睡眠状态,到6个Cycle就能够唤醒过来。而且还有一个像断电这种深度睡眠状态的话,我们一般不同的核也有不同的实现。”

  有利必有弊,这种高自由度的扩展能力虽能够让芯片实现自主定制,但在应用端也暗藏碎片化风险,这个问题自RISC-V诞生以来一直备受关注。与当年的MIPS类似,MIPS阵营的商业公司可以通过自由添加指令形成自己的指令集,比如国内的龙芯就是以MIPS为基础添加了多达1000多条的新指令,进而形成了自己的指令集LoongISA。但这却使得其在进行与硬件芯片相匹配的软件开发时,即便同样属于MIPS架构的产品,也必须额外区分出龙芯自主版和MIPS版两种版本,才能提供给应用端客户。

  RISC-V也同样如此,由于RISC-V允许用户自己任意添加新的指令,但照此趋势发展下去,可能以后很多芯片厂商开发出的RISC-V架构处理器尽管都归属于同一RISC-V体系,但在实际应用搭配时却不能够适配同样版本的软件。尤其是中国市场,编者认为这种情况会更为严重,因为对于像RISC-V这种开源性的架构,很多芯片设计厂家可能更多的偏向于使用而很少分享,就像现在的手机安卓系统一样,各手机品牌都做独立自主开发,因此也演变出了各自不同的版本。况且,芯片与手机不同,在现在任何一种智能设备当中,各类芯片的用量会更大,这样的话,RISC-V类的芯片被应用的更多之后,应用端会出现非常多硬件和硬件之间、硬件与软件之间的适配问题。

  不过,业界某芯片设计企业人士却表示:“从英特尔或者ARM的经验来看,碎片化的确会造成它们‘发展不上去’。所以过去ARM为了防止碎片化,严格禁止用户修改指令集,但是RISC-V解决的思路并不是严格限制,它的策略是建立一个简易的小型指令集基础和模块标准扩展,适用于大多数代码,同时为不干扰标准指令集核心的应用特定扩展留出足够的空间。”

  这个体现在以下两个方面:首先,是RISC-V的模块化指令集,它让厂商在实现方案的时候能够根据自己的需求选择标准指令集组合,厂商完全没有必要为不兼容付出额外的成本;其次,指令集里已经提前预留好了大量的定制指令空间,指令长度从16byte到1024byte理论上都支持,这些空间就是专门给定制处理器的厂商实现自己的指令集的。这样一来,基本的软件都能兼容,遇到定制指令集,厂家提供预先设计好的函数库就能在很好地保证效率的同时不失兼容性。

  的确,这在一定程度上减少了RISC-V碎片化的发生,但并没有从根本上解决问题。目前,很严重的碎片化问题尽管现在还没有出现,但随着产业和技术的进一步发展,待整个圈子越来越大之后,编者认为这种风险发生还是具有不小的可能性,这需要引起业界的重视。因为这种问题一旦出现,哪怕只是一丁点,但对于RISC-V的发展却可能会是毁灭性的打击。这也是RISC-V基金会与整个产业界现阶段必须直面的挑战和风险,业界某芯片设计企业人士认为:“既要尽可能的让RISC-V顺利、灵活的发展,同时还要防止出现碎片化,这个‘度’的掌握的确很不容易。”(责编:June)



本文为华强电子网原创,版权所有,转载需注明出处

关注电子行业精彩资讯,关注华强资讯官方微信,精华内容抢鲜读,还有机会获赠全年杂志

关注方法:添加好友→搜索“华强微电子”→关注

或微信“扫一扫”二维码

资讯排行榜

  • 每日排行
  • 每周排行
  • 每月排行

华强资讯微信号

关注方法:
· 使用微信扫一扫二维码
· 搜索微信号:华强微电子