广告

系统级芯片(SoC)的复杂设计选择:片上网络(NoC)

时间:2020-12-21 作者:Benoit de Lescure , Arteris IP公司CTO 阅读:
什么是片上网络(NoC)?为什么系统级芯片(SoC)设计需要NoC?片上网络(NoC)相比传统的总线接口通信有什么优点和缺点?高性能的SoC设计在性能、功耗和尺寸方面面临哪些挑战? 5G、AI和自动驾驶等新兴应用对SoC设计提出了什么特别要求?
广告

Benoit在互连IP、ASIC工程和半导体IP方面拥有三十年的经验。 他于2013年加入Arteris,担任负责全球应用工程的应用总监,并提升为负责FlexNoC产品开发的技术副总裁。 在加入Arteris之前,他曾在欧洲的Sonics和Thomson Multimedia工作。

Benoit拥有七项发明专利,获得巴黎Pierre et Marie Curie(UPMC)大学微电子学研究生学位。

1.什么是片上网络(NoC)?为什么系统级芯片(SoC)设计需要NoC?

在介绍NoC相关历史之前,我想提出一个观点:NoC是一种SoC架构。从字面上看,NoC是SoC架构师在其框图和平面图中绘制的IP模块之间连接的逻辑和物理实例。如此众多的SoC设计团队从Arm、Synopsys和Cadence等公司获得IP模块的授权许可,SoC设计趋向于同质化。实现SoC差异化设计的关键在于架构师如何选择和连接这些IP模块以满足他们的系统级要求。

2.片上网络(NoC)相比传统的总线接口通信有什么优点和缺点?

SoC所包含的IP模块数量不断增加,同时片上服务质量(QoS)、仲裁和数据流优化的复杂性越来越高, NoC逐渐取代总线和交叉开关(crossbar),而成为片上互连的行业标准。总线是共享的通信资源,除了最简单的系统之外,总线无法提供系统所需的带宽。交叉开关虽然可以提供足够带宽,但是其大小随着所连接的IP模块数量成倍增长,并且大型的交叉开关根本无法构建。 它们都不能很好地利用布线,而布线可是当今芯片技术中最为昂贵的东西。NoC可以极大地减少裸片面积(尤其是更少的布线),功耗更低,而且可以对片上数据流和服务质量进行微调优化,甚至可以提供数据保护功能以提高整个系统的功能安全性。

总线是系统级芯片发展的早期阶段所采用的标准,那时连接的IP模块(CPU、存储器和外围控制器等)可能不超过20个。 然而,随着更多IP模块连接到总线,它们开始争夺优先级和可用的带宽。总线需要集中的仲裁器和地址解码逻辑,而随着主机和从机数量的增加,大家竞争同一条总线资源,这反而成了SoC性能的瓶颈。

另一个问题是,针对总线定义的信令和事务没有与传输通信分开。总线不会区分通常归类为事务、传输和物理层的活动,因此总线结构无法适应系统架构的变化,或不能充分利用芯片工艺技术的迅速发展。

相反,片上网络(NoC)采用独立的事务、传输和物理层三层通信机制,来实现IP模块的通信。 事务层可以接受AMBA、OCP甚至用户定义的事务协议(读取、写入、响应等),然后将其发送到传输层以便转换为数据包。数据包转换可以使用任何能够支持的事务协议来混合数据流,从而实现SoC的IP“即插即用” 。 此外,数据包转换还可以灵活地为预期的系统级数据流特性而自定义物理层。 这样可以针对物理组件(如交换机、防火墙等)及其链接进行带宽、距离跨度、成本、所需功耗和数据完整性等方面的优化,而不会影响传输和事务层。

仍然有一些小型SoC设计会使用总线结构,例如基于Arm Cortex-M的MCU设计,其中集成的IP模块可能只有10来个。但是我们看到,即使是这些设计也开始往NoC互连转移,特别是那些有低功耗要求的设计,要求系统具有多个电源和时钟域,而且相互之间要通信。在处理不同的时钟和电源域方面,NoC比总线甚至交叉开关都要好得多。

3.高性能的SoC设计在性能、功耗和尺寸方面面临哪些挑战?

现在大多数高性能SoC设计均使用10 nm以下的先进工艺节点,其中晶体管的尺寸可缩小到令人难以置信的地步。这样就可以将数十亿个晶体管集成到一颗裸片上,而几年前同样尺寸的裸片只能容纳几亿个晶体管。然而,金属线宽还没有缩小到晶体管那么小,当系统中添加更多IP模块时,连接它们所需的金属线数量却随之增加,并且数据在片上传输所需的距离也增加了。对于5年前的SoC设计而言,NoC可能占裸片面积的10%,但在当今的先进高性能SoC中,这一面积比却在增加。但是,我们也在不断改进NoC技术,使其能够在高性能应用的高时钟频率和高电压下运行。而当NoC不需要大带宽时,我们能够非常快速、透明地“使之节流”至节能模式。NoC技术提供了很多“杠杆”,SoC架构师可以使用它们针对特定的性能、功耗和面积要求进行优化。

4. 5G、AI和自动驾驶等新兴应用对SoC设计提出了什么特别要求?

所有这些新兴应用都在创新的独特架构中使用人工智能/机器学习硬件加速器IP。 SoC架构师面临的首要挑战是如何为这些加速器提供高带宽数据流,这就要求优化NoC以提供所需的带宽而又不能阻塞整个系统其余部分的通信。

其实最具技术挑战性的AI / ML实施是在汽车和机器人领域,这些应用会使用神经网络边缘推理。但有一个问题,架构师必须同时满足实时要求(比如在击中目标对象之前对其进行检测和分类)和功能安全性(空气中一点辐射变化可不能导致机器人发疯或汽车碰撞)。NoC技术提供了基础技术,可确保整个SoC的通信延迟、带宽和仲裁优先级,同时还通过ECC、硬件复制和检查等技术手段来保护数据及避免信令硬件故障。

5.有哪些跟SoC设计相关的先进技术值得关注?

当我们为无人驾驶的自动驾驶汽车开发系统时,必须确保SoC即使出现故障也可以继续安全运行。在航空系统中,我们用到一些“宏观”级别的传统技术,会使用三重模式冗余和详尽的检查来确保安全。这些技术已被应用到“微观”的半导体级别,纳入到SoC设计中。但是,除了简单地三倍增加逻辑(以及导线和门)以满足要求之外,我们还需要做更多的事情,我相信在这一领域会有很多创新。

我们认为需要采用新技术的另一个领域是使用芯粒(chiplet)来扩展SoC。我们的客户已经表示出担心,对于某些用例,当前的标准(例如CXL和CCIX)对系统有多大的负担和影响。绝对需要低延迟、高带宽的芯粒互联,这种连接可以让单个NoC透明地跨越多个芯粒。

责编:Amy Guan

本文为EET电子工程专辑 原创文章,禁止转载。请尊重知识产权,违者本司保留追究责任的权利。
  • 系统级芯片(SoC)的复杂设计选择:EDA和IP 在做系统级芯片(SoC)的设计规划时,需要考虑哪些主要因素?目前主流的SoC一般包括哪些功能模块或IP?有什么新的技术趋势值得关注?为SoC选择IP时主要基于什么标准或要求?如何实现差异化设计?当前SoC在设计验证方面遇到哪些挑战?有什么应对解决方案?AI在复杂的高性能SoC设计中能够发挥什么作用?未来设计趋势如何?
  • 传微软自研Arm处理器,用于服务器和Surface设备 微软正在为服务器设计自己的Arm处理器,未来还可能发布搭载该处理器的Surface设备。目的在于在最重要的硬件方面自给自足,减少对英特尔(intel)的依赖。微软认为自己的处理器更适合他们的某些需求,与英特尔提供的现成处理器相比,更具有成本和性能优势,性价比更高。
  • ICCAD 2020:芯片IP客户圈即生态圈,各家玩法不尽相同 根据市场分析公司IPnest发布的2019年全球半导体IP厂商的营收排名,进入前十大IP厂商中的中国大陆厂商,仅排名第7的芯原股份一家,市占率为1.8%。而且中国公司在高端CPU的 IP 核上处于空白状态,国产化的需求仍然迫切。
  • ICCAD 2020:本土EDA崛起,必须走巨头没走过的路 有人说EDA是一个神奇的行业,参与的公司不多,却凝聚了人类在电子工业领域最多的智慧结晶,被称作“芯片之母”、“芯片产业皇冠上的明珠”。此前人们普遍认为芯片是中国科技行业中最被卡脖子的一个环节,但在美国对中兴、华为的制裁中我们发现,一旦EDA工具被限制,整个芯片产业都可能停摆。
  • 2021年1月起,Mentor将更名为Siemens EDA 日前,西门子(Siemens)EDA IC-EDA执行副总裁Joe Sawicki在其一篇博客中透露,从2021年1月起,Mentor将正式更名为Siemens EDA(西门子EDA)。此次更名,将EDA软件、仿真、机械设计、制造、云、物联网和低代码技术带入到工业软件的统一旗帜下……
  • Arm在数据中心的价值:黄氏定律背后,英伟达打的什么算盘? 英伟达DPU这种类型的硬件,几乎可以代表数据中心的某一个发展方向。这个议题甚至恰好能够解答,英伟达为何要收购Arm,以及AMD为何要收购赛灵思。在近期英伟达GTC China首日主题演讲之后的圆桌论坛上,英伟达全球业务运营执行副总裁Jay Puri谈到了有关英伟达收购Arm的问题……
广告
热门推荐
广告
广告
广告
EE直播间
在线研讨会
广告
广告
面包芯语
广告
向右滑动:上一篇 向左滑动:下一篇 我知道了