当前位置:首页 > 通信技术 > 通信技术
[导读]当今片上系统 (SoC) 的设计人员对中央处理器 (CPU) 中处理器核心的缓存非常熟悉。对主外部存储器的读取或写入访问可能非常耗时,可能需要数百个 CPU 时钟周期,同时处理器处于空闲状态。尽管单个存储器访问所消耗的功率很小,但当每秒执行数十亿次事务时,功率就会迅速增加。

当今片上系统 (SoC) 的设计人员对中央处理器 (CPU) 中处理器核心的缓存非常熟悉。对主外部存储器的读取或写入访问可能非常耗时,可能需要数百个 CPU 时钟周期,同时处理器处于空闲状态。尽管单个存储器访问所消耗的功率很小,但当每秒执行数十亿次事务时,功率就会迅速增加。

举例来说,假设每笔交易为 64 字节,以 1.5 GHz 运行的单个 256 位宽数据通道每秒将产生约 7.5 亿笔交易。多个数据通道通常会并行活动,执行片外 DRAM 访问。

当程序访问一个内存位置的数据时,它通常需要访问附近的其他位置。此外,程序通常具有循环和嵌套循环,在这些循环中,程序在执行下一个任务之前对同一数据块执行多个操作。

了解 SoC 中的缓存内存

鉴于内存访问耗时、功耗高以及程序中典型的数据访问和处理模式等挑战,采取战略性方法至关重要。解决方案是在靠近处理器的地方实现小型、快速的缓存。

当程序从主内存请求新的数据时,系统会自动检索一个数据块并将其加载到缓存中。随后,处理器会对本地存储的数据执行多项操作。最终,这些操作产生的新数据被复制回主内存。

第一级缓存(即 1 级或 L1 缓存)之后,随着时间的推移,陆续添加了 L2 和 L3 缓存。每个后续级别都比前一个级别更大且更慢,但比访问主内存要快得多(图 1)。

阿特里斯

1. 多个缓存存储器通常与一个或多个 CPU 一起使用。

另一个趋势是使用具有不同缓存配置的 CPU 集群。例如,在四核集群中,通常每个核心都有自己的 L1 缓存,成对的核心共享一个 L2 缓存,所有四个核心共享一个 L3 缓存(如图 1b 所示)。或者,每个核心可能都有专用的 L1 和 L2 缓存,而所有四个核心只共享 L3 缓存。

关于缓存的一个考虑因素是管理共享数据的多个副本。例如,在图 1b所示的场景中,假设 CPU0 从主内存中检索并修改数据,然后将更改后的版本存储在其 L1 缓存中。现在,假设 CPU3 希望访问相同的数据。它应该使用哪个副本——主内存中的原始副本还是 CPU0 的 L1 缓存中的修改副本?

这种困境导致了对缓存一致性的需求,这意味着当一个数据副本发生更改时,必须修改所有其他副本。这可以通过更新其他缓存中的数据或将其他缓存中的副本标记为无效来实现。

缓存一致性可以通过软件进行管理。但是,现在更常用的是使用特殊硬件来确保图 1a中所示的缓存和图 1b中所示的集群内能够高效、透明地实现这一点。

现代 SoC 除了 CPU 之外,还包含大量知识产权 (IP) 块。一些 IP 可能配备自己的缓存,这些缓存可能需要或不需要与 CPU 保持缓存一致性。

如果任何 IP 块都不需要与 CPU 保持一致,则可以使用 AMBA AXI 协议采用非一致性片上网络 (NoC)互连。或者,如果 SoC 有多个需要保持群集间一致性的 CPU 群集,或者带有缓存的 IP 需要保持一致性,则可以使用 AMBA ACE 或更现代的 AMBA CHI 协议采用缓存一致性 NoC 互连。

还有第三类一致性,称为 IO 一致性,其中设备可能希望参与访问共享内存,但不支持完全一致性。这种 IP 的一个例子是 GPU 以与系统其余部分一致的方式访问共享内存,但不能直接窥探 CPU 的缓存。IO 一致性设备依靠一致性 NoC 来代表它们维护数据一致性。

如何利用缓存提高 SoC 性能

其他 IP 功能(例如硬件加速器 IP)也可能受益于使用类似上述 CPU 示例的缓存。这些以 IP 为中心的缓存通常不需要与 CPU 保持一致性;但是,它们可以使用非一致性 NoC 互连进行连接。

或者,添加暂存器 (SRAM) 可能会使某些 IP 受益。这种高速存储器直接连接到 IP,用于临时存储少量数据,以便快速访问和检索。

设计缓存或暂存器是一项复杂的任务,即使该缓存不需要与其他缓存保持一致性。开发人员希望花费宝贵的时间来构建 SoC 并设计其专有 IP 功能,以使其创作与竞争产品区分开来。他们通常试图避免投入资源来开发缓存。

实现 CodaCache

一种解决方案是使用Arteris的 CodaCache 。它是一种可配置的独立非一致性缓存 IP。CodaCache 在使用 16 纳米工艺技术实现的 SoC 上以高达 1.2 GHz 的速度运行,可与 AMBA AXI 互操作,每个 AXI 端口提供高达 8 MB 的容量。CodaCache 提供可配置的 1 到 16 路关联性,具有路分区、缓存刷新、纠错码保护等高级功能,并支持 ISO 26262 功能安全应用。

有许多潜在的实现场景,其中两种如图2所示。第一种是向单个 IP 添加专用的 CodaCache,从而提高 IP 性能(图 2a)。第二种是添加 CodaCache 作为最后一级缓存,从而提高 SoC 性能(图 2b)。

阿特里斯

2. 最后级别的 CodaCache 实现位于互连和缓存与主存储器之间。

CodaCache 还可用于各种场景,包括用作暂存器。以这种方式使用缓存可带来诸多好处,例如增强性能,其特点是提高数据吞吐量和减少延迟。它还通过降低功耗和发热量来提高能源效率。此外,它还提供设计灵活性和可扩展性等好处。


本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

9月2日消息,不造车的华为或将催生出更大的独角兽公司,随着阿维塔和赛力斯的入局,华为引望愈发显得引人瞩目。

关键字: 阿维塔 塞力斯 华为

加利福尼亚州圣克拉拉县2024年8月30日 /美通社/ -- 数字化转型技术解决方案公司Trianz今天宣布,该公司与Amazon Web Services (AWS)签订了...

关键字: AWS AN BSP 数字化

伦敦2024年8月29日 /美通社/ -- 英国汽车技术公司SODA.Auto推出其旗舰产品SODA V,这是全球首款涵盖汽车工程师从创意到认证的所有需求的工具,可用于创建软件定义汽车。 SODA V工具的开发耗时1.5...

关键字: 汽车 人工智能 智能驱动 BSP

北京2024年8月28日 /美通社/ -- 越来越多用户希望企业业务能7×24不间断运行,同时企业却面临越来越多业务中断的风险,如企业系统复杂性的增加,频繁的功能更新和发布等。如何确保业务连续性,提升韧性,成...

关键字: 亚马逊 解密 控制平面 BSP

8月30日消息,据媒体报道,腾讯和网易近期正在缩减他们对日本游戏市场的投资。

关键字: 腾讯 编码器 CPU

8月28日消息,今天上午,2024中国国际大数据产业博览会开幕式在贵阳举行,华为董事、质量流程IT总裁陶景文发表了演讲。

关键字: 华为 12nm EDA 半导体

8月28日消息,在2024中国国际大数据产业博览会上,华为常务董事、华为云CEO张平安发表演讲称,数字世界的话语权最终是由生态的繁荣决定的。

关键字: 华为 12nm 手机 卫星通信

要点: 有效应对环境变化,经营业绩稳中有升 落实提质增效举措,毛利润率延续升势 战略布局成效显著,战新业务引领增长 以科技创新为引领,提升企业核心竞争力 坚持高质量发展策略,塑强核心竞争优势...

关键字: 通信 BSP 电信运营商 数字经济

北京2024年8月27日 /美通社/ -- 8月21日,由中央广播电视总台与中国电影电视技术学会联合牵头组建的NVI技术创新联盟在BIRTV2024超高清全产业链发展研讨会上宣布正式成立。 活动现场 NVI技术创新联...

关键字: VI 传输协议 音频 BSP

北京2024年8月27日 /美通社/ -- 在8月23日举办的2024年长三角生态绿色一体化发展示范区联合招商会上,软通动力信息技术(集团)股份有限公司(以下简称"软通动力")与长三角投资(上海)有限...

关键字: BSP 信息技术
关闭