对于扔日本这两颗原子弹的辩论,是历史学家们的经常性话题。
- 谢尔盖·亚历山德罗维奇,我建议我们从一般问题开始,然后进入特殊问题。很多人不理解“友好国家”一词的含义,您能给出一个定义吗?
诓骗缓存增强低资本、上一代或中端的 SoC。一些贪图团队在创建片上系统(SoC)建设时,有幸或者使用最新和起首进的本领节点,何况领有相对不受猖狂的预算来从着实的第三方供应商那儿取得常识产权(IP)模块。干系词,很多工程师并莫得这样行运。关于每一个“不吝一切代价”的口头,齐有一千个“在有限预算下尽你所能”的对应口头。
一种从资本较低、早期代、中档责罚器和加快器中枢中挤出最大性能的表率是,理智地应用缓存。
削减资本
图1展示了一个典型的资本刚毅SoC场景的简化示例。尽管SoC可能由很多IP构成,但这里为了明晰起见,只展示了三个。
图 1
SoC里面IP之间连结的主要本领是麇集片上(NoC)互连IP。这不错被看作是一个超越系数建设的IP。图1中展示的例子不错假设为一个非缓存一致性场景。在这种情况下,任何一致性需求将由软件责罚。
假设SoC的时钟运转在1GHz。假设一个基于精简辅导集计较机(RISC)架构的中央责罚单位(CPU)运转一个典型辅导将销耗一个时钟周期。干系词,拜谒外部DRAM内存可能需要100到200个责罚器时钟周期(为了本文的主张,咱们将这个平均为150个周期)。这意味着,如果CPU莫得一级(L1)缓存,何况通过NoC和DDR内存划定器平直连结到DRAM,那么每个辅导将销耗150个责罚器时钟周期,导致CPU诓骗率仅为1/150 = 0.67%。
这等于为什么CPU以及一些加快器和其他IP使用缓存内存来提高责罚器诓骗率和应用门径性能。缓存意见基于的基容许趣是局部性原则。这个不雅点是,在职何给定时代,唯有一小部分主内存被使用,而且阿谁空间中的位置被屡次拜谒。主若是由于轮回、嵌套轮回和子门径,辅导偏捏有关数据资格时代、空间祥和序局部性。这意味着,一朝一块辅导和数据从主内存复制到IP的缓存中,IP经常会反复拜谒它们。
当前高端CPU IP经常至少有一个一级(L1)和二级(L2)缓存,它们经常还有一个三级(L3)缓存。此外,一些加快器IP,如图形责罚单位(GPU)经常有我方的里面缓存。干系词,这些最新一代的高端IP的价钱经常比上一代中档产物超越5倍到10倍。因此,正如图1所示,一个提防资本的SoC中的CPU可能只配备了一个L1缓存。
更深切地斟酌CPU偏捏L1缓存。当CPU在其缓存中肯求某物时,收尾被称为缓存掷中。由于L1缓存经常以与责罚器中枢调换的速率运转,因此缓存掷中将在单个责罚器时钟周期内责罚。比较之下,如果肯求的数据不在缓存中,收尾称为缓存未掷中,将需要拜谒主内存,这将销耗150个责罚器时钟周期。
现在斟酌运转1,000,000条辅导。如果缓存实足大以包含系数门径,那么这将只须耗1,000,000个时钟周期,从而达成100%的CPU成果。
可怜的是,中档CPU中的L1缓存经常唯有16KB到64KB的大小。如果咱们假设95%的缓存掷中率,那么咱们的1,000,000条辅导中的950,000条将需要一个责罚器时钟周期。其余的50,000条辅导每条将销耗150个时钟周期。因此,这种情况下的CPU成果不错计较为1,000,000/((950,000 * 1) + (50,000 * 150)) = ~12%。
耕种性能
提高提防资本SoC性能的一种资本效益高的形势是添加缓存IP。举例,Arteris的CodaCache是一个可设置的、寂然的非一致性缓存IP。每个CodaCache实例不错高达8MB,何况不错在解除个SoC中实例化多个副本,如图2所示。
图2
本文的主张并不是建议每个IP齐应该配备一个CodaCache。图2仅旨在提供潜在CodaCache部署的示例。
www.001708.com如果一个CodaCache实例与一个IP干系,它被称为专用缓存(DC)。或者,如果一个CodaCache实例与一个DDR内存划定器干系,它被称为末级缓存(LLC)。DC将加快与其干系的IP的性能,而LLC将增强系数SoC的性能。
算作咱们可能生机的性能耕种类型的一个示例,斟酌图2中表露的CPU。让咱们假设与这个IP干系的CodaCache DC实例以责罚器速率的一半运转,何况对这个缓存的任何拜谒销耗20个责罚器时钟周期。如果咱们还假设这个DC有95%的缓存掷中率,那么关于1,000,000条辅导——咱们的举座CPU+L1+DC成果不错计较为1,000,000/((950,000 * 1) + (47,500 * 20) + (2,500 * 150)) = ~44%。这是一个~273%的性能耕种!
论断
已往,镶嵌式门径员可爱挑战,尽可能从时钟速率低、内存资源有限的小责罚器中挤出最高性能。事实上,计较机杂志经常会向读者提议挑战,举例:“谁能在责罚器Y上使用最少的时钟周期和最小的内存量本质任务X?”
今天,很多SoC开导者可爱挑战,尽可能从他们的贪图中挤出最高性能台湾新闻最新消息,颠倒是如果他们被猖狂使用性能较低的中档IP。部署CodaCache IP算作专用和末级缓存,为工程师提供了一种背负得起的形势来耕种他们提防资本的SoC的性能。