在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 4812|回复: 13

如何提升CPU core的性能之1--频率提升

[复制链接]
发表于 2016-6-2 17:23:09 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
最近刚开始接触基于PowerPC的SoC外包设计。先查阅了一下AMCC的资料460SX,手册里面说其464内核性能为1.2GHz@90nm-Cu(没有说是哪个工艺厂),但是我们的初步评估用0.13um工艺(core+L1 cache 16KB)tt条件下我们的软核只有300MHz左右,这个差距太大了。按照1.5倍左右进行一个工艺折算,0.13um至少应该能够达到800MHz左右,再次一点-20%,至少640MHz应该有吧?1、有大神了解这个差异的原因是什么吗?
2、按照640MHz评估,周期1.56ns,0.13um工艺下留给逻辑的时序Tlogic=T周期-T寄存器延时-T下级寄存器setup-T时钟=1.56-0.2-0.2-0.3=0.86ns,一个与非门的延迟已经有0.2ns左右,也就是说寄存器和寄存器之间只有3~4个逻辑门,设计中几乎全部都是寄存器,而这显然不合理,这样完全依靠流水做出来的设计以前也没有见到过,大神能否指点一下这样的考虑有哪里不对?
发表于 2016-6-2 22:20:38 | 显示全部楼层
90nm-Cu  应该是IBM的工艺,似乎是SOI的。
 楼主| 发表于 2016-6-3 08:30:30 | 显示全部楼层
回复 2# xudeqiang


   是的,是的,人家的数据手册上写的有。看来哥也是行家,那你看我的问题可以帮助我分析分析吗?
发表于 2016-6-5 22:20:38 | 显示全部楼层
他们的可能是定制设计,或者是基于latch的设计,同时soi速度会比较快。
1、你们可以尝试,自己设计dff,一些组合电路定制。
2、sysnopsys原来有ppc的设计包,性能应该不错。
3、更换更先进的工艺,如65nm
 楼主| 发表于 2016-6-6 11:43:49 | 显示全部楼层
回复 4# xudeqiang


   谢谢。是的,第1点和第3点正在考虑,第2点可以再详细介绍一下吗?
发表于 2016-6-6 20:29:49 | 显示全部楼层
synopsys公司的designware IP中有一类是star ip,是针对PPC arm nois 等cpu的RTL或硬核实现。http://news.synopsys.com/index.php?s=20295&item=122956 使他们早期的业务,不知现在还有吗。你们可以咨询一下代理商。
 楼主| 发表于 2016-6-9 09:25:34 | 显示全部楼层
回复 6# xudeqiang


   好的,谢谢。已经不再支持了。
发表于 2016-6-9 23:56:29 | 显示全部楼层
我觉得你拿软核TT下跑300MHz是非常正常的。想直接用常规综合例程跑个6/700MHz
在这个工艺和这个复杂的软核的前提下,都是不可能的。
AMCC的90nm的460SX跑1GHz, 主要是两方面:
1. IBM SOI工艺,这个工艺在相同的功耗下,比传统CMOS工艺能够提高20%左右的性能;
2. 这是个特别定制的硬核,首先是逻辑上会对关键的时序路径优化,然后是定制的register file和SRAM,
    在实现流程上也是全定制的做法。即便是stdcell也可能有所不同,最起码也需要支持多VT的;

IBM在POWER内核的实现上下了不少功夫, 你可以在IEEE上检索到关于Power实现的论文。
作为参考,TSMC 90nm的工艺比130nm工艺性能提升35%左右,再考虑上SOI的优势,
你拿130nm的普通工艺对照,性能至少要打50%~60%的折扣。因此理论能到400M~500MHz.
一个很好的例子,ARM926盛行的时候,普通青年做出来是300MHz以内的(130nm), Samsung做的
2410/2440是可以到400MHz的, 这就是原厂+定制的优势。
 楼主| 发表于 2016-6-14 09:44:58 | 显示全部楼层
回复 8# mipsgreen


   多谢指点~   1、是的;
   2、现在工艺厂提供的库是多vt的;其软核IP的pdf文档上也的确说明了关键路径是存储部分;
   IEEE的文档通过其他搜索引擎下载了一些,一方面英文阅读效率不高,另一方面可能没有下载到关键的内容,没有太多收获。

   关于电路原理本身再请教一下下面这样的分析应该如何落脚?我想即使他们再怎么优化,总归是要符合电路原理的。对于高频CPU内核寄存器和寄存器之间的逻辑是如何做到很小的延迟? 这样表达可能有些不严谨,主要是想讨论起来变量少些简单一些。
   “按照640MHz评估,周期1.56ns,0.13um工艺下留给逻辑的时序Tlogic=T周期-T寄存器延时-T下级寄存器setup-T时钟=1.56-0.2-0.2-0.3=0.86ns,一个与非门的延迟已经有0.2ns左右,也就是说寄存器和寄存器之间只有3~4个逻辑门,设计中几乎全部都是寄存器”
发表于 2016-6-15 21:08:45 | 显示全部楼层
回复 9# userguide


1. 可以确定的是, 用你目前手上的Library是不可能做到你要的频率的。
2. alpha 21264第一版本当时用的是0.35um的工艺, 依然可以做到600MHz的主频,
    而且21264的构架和你用的PPC440内核基本上差不多。关键是这些cell是为了实现高速设计改造的。
    这些cell的transition以及setup/hold至少要达到和目标频率相匹配的范围。
3. 除了cell本身的delay, 就是route上的, 因此时钟驱动网络就比较关键, 这些时钟网络基本上是要
    像走电源的strip一样。 甚至需要一些比较厚的metal。时钟的slew要做到几十ps以内。
4. Metal-Cu似乎是必须的
5. logic/rtl想一起综合, 是不行的。 需要分功能优化布局。
    因此,需要了解内核构架, 包括每一条关键路径。 有些路径是需要重写的。
    PPC440应也是7级左右的pipeline, 关键路径除了可能的乘、除运算外, 其他路径基本和存储有关的,
    包括各种寄存器,各个流水端所用的cache和table, 都一定会在关键路径上, 这些几乎都要用定制的结构。
6. 一个更好的参考是sun公司开源的那个opensparc t2, 他的RTL几乎是用dff写的, 绝对不是因为
    故意混乱实现细节(毕竟都开源了), 而是要保证路径的时序。
    除了RTL, 然后还可以参考sun为这个内核定制实现的各种regfile, cache, table...

如果没条件定制这些东西,估计可以这样尝试:
fdy的库都是比较保守的,直接拿FF跑也没有问题,晶圆制造也可以往FF case调整。
可以再改下库的margin约束, 强制约束下dff之间的timing path。
然后把驱动能力低的cell全部dont_use, 把skew约束到最小,跑一次看看。面积应该是要大很多。。。
然后可以分析下关键路径, 这个综合的时序信息只能用来做优化的参考。
即使没条件走全定制的设计方法, 也还是要手工优化一些路径。


总之你用目前库里的这些数据分析, 没有什么参考价值。 这些只能满足常规设计。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /2 下一条

×

小黑屋| 手机版| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-11-22 13:08 , Processed in 0.026503 second(s), 7 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表