×
模拟电路设计 > 详情

基于RSA算法电子系统认证芯片的电源规划

本文所研究的电子系统认证芯片是基于硬加密技术采用专用集成电路(ASIC)设计的方法来实现的。由于ASIC上有特殊算法,PCB和一些硬件可能被复制,但是无法复制ASIC的加密数据,保密性更强。该芯片采用RSA加密算法,它是非对称密钥密码体制的代表,其安全性在于找到两个大素数p和q比较容易;但目前没有有效的方法从p和q的乘积N中分解出p和q。有专家建议,普通公司使用1 024位的密钥就可以保证资料的安全性,因此该系统认证芯片采用密钥为1 024位的RSA加密算法。

该电子系统认证芯片采用SMIC 0.18μm 6层金属工艺,在SoC Eneounter平台上进行物理设计。为了了解整个芯片的布线拥塞程度和功耗的大概情况,进行正式设计之前,对该芯片进行预设计;通过预设计的结果分析芯片的布线拥塞情况,并对布局布线后的功耗进行预估。在分析预设计的基础上,针对预设计中存在的问题对芯片进行详细的电源规划,为整个芯片设计出一个合理的供电网络,使最终的设计实现面积优化,并且满足功耗、时序等要求。

1 功耗预估

预设计采用75%的利用率,对该电子系统认证芯片进行了粗略的布图规划,仅设计了宽度为10 μm的电源环。为了使芯片功耗的分析结果更接近实际,对该芯片进行了布局、时钟树综合和详细布线等步骤。在时序收敛的前提下,进行功耗分析,工作电压VDD为1.8 V,得到芯片的总功耗为115.41 mW,包括开关功耗(Switehing Power)、内部功耗(Internal Power)和泄露功耗(Leakage Power)。但是芯片中存在IRDrop违规(即芯片中的电压降超过了5%VDD),如图1所示,左上角的对话框中列出了存在IR Drop违规的地方,具体位置在版图中的深色区域。一般情况下,5%的电压降会增大10%~15%的线延迟,会产生时序违规,使芯片处于不正常的工作状态,因此,需要在后续设计中进行详细的电源规划。

式中:n为电源环的对数。

由式(3)可得所需电源环的总宽度为64.117μm。为了有效减小电源环所占据的芯片面积,该设计采用双层电源环的设计,横向采用Met-a13,Meta15;纵向采用Meta14,Meta16,因此n为2,由式(4)可得w为8.015 μm。为了给整个芯片的功耗预留一定的冗余量,并且金属线的宽度足够宽,可以降低由于电迁移导致的电路失效,从反复实践中得出,单个电源环的宽度取15 μm,可以满足该芯片电迁移和电压降的要求,设计好的电源环如图2所示。

最后,根据文档中提供的Rom核工作所需的最大电流值,设计Block Ring为Rom供电。

2.4 电源条的设计

为了解决芯片预设计时内部IR Drop违规的问题,通过设计电源条(Power Stripe)来减小芯片内部的电压降。电源条分为横向和纵向,纵向电源条宽度设为WV,横向电源条宽度设为WH,纵向电源条的间距设为SV,横向电源条的间距设为SH。一般来说,由于在横向有很多标准单元的电源/地线,因此需要的横向电源条线比纵向电源条线要少很多。

对于WV,WH和SV,SH的设定,有以下几个经验规则:

(1)WV一般取垂直布线间距(Pitch)的整数倍,其目的是充分利用布线通道。取值不能太大,一般情况下不超过最小二输入与非门宽度的4倍。

每一层金属的Pitch在物理库中都有相应的定义。SMIC的0.18μm工艺库中所定义的Meta11~Meta16的Pitch如表1所示。

SMIC的0.18μm工艺库中最小二输入与非门的宽度为1.98μm。因此,若采用Meta12或Meta14作为纵向电源条,WV取0.66~7.92μm之间0.66的整数倍值;若采用Meta16作为纵向电源条,则WV取0.95~7.92μm之间0.95的整数倍值。

(2)WH的取值一般是标准单元高度的整数倍,通常选择1倍或2倍;也可以将电源条线的宽度设为整数。SMIC 0.18μm工艺库中标准单元的高度为5.04μm,则横向电源条的宽度取5.04μm或10.08μm。

(3)在电源条金属层的选择上,根据LEF的规定,纵向选择偶数层,横向选择奇数层。由于高层金属具有较小的寄生电阻,用高层金属走线可以有效地减小电压降。

(4)确定电源条线的宽度后,需要计算其间距SV,SH。可根据文献中提出的方法进行计算。

如图3所示的电源网格,在估算出Core内部横/纵向供电金属条宽基础上,可以求出功耗为P的总电流JTOTAL=P/VDD。

假设图3中A点有5%的电压降,那么位于A点其有效电阻分别为:

式中:RVW和RHW分别是竖直方向和水平方向的参考方块电阻。

假设N为纵向电源条线的对数,M为横向电源条线的对数,则其值分别为:

最后,若所设计的纵向电源条和横向电源条是均匀分布在芯片内核,则纵向电源网格的间距SV和横向电源网格的间距SH分别为:

首先对纵向电源条进行设计。由于电源条位于芯片内部,将占据一定的布线资源,而布线器一般是优先选用底层金属开始布线,因此顶层金属的布线资源比较宽裕。并且,顶层金属比其他层金属要厚一些,电气性能也要好一些,多使用顶层金属对减小IR Drop有着很大的帮助。因此选用Meta16作为纵向电源条。根据实际情况,纵向电源条的宽度WV取为7.6 μm。芯片内核区域的宽度W为1 578.085μm,高度H为1 567.44μm,因此由上述公式可得该系统认证芯片所需电源条的总对数N为5.749,取N=6,即在芯片内核区域均匀放置6对宽度为7.6μm的Meta16电源条,每对电源条之间的间距为225.44μm。

接着进行横向电源条的设计。选用高层金属Meta15作为横向电源条,宽度取为5.04μm,由上述公式可得,所需横向电源条的总宽度为87.424 μm。但是,实际上并不需要这么多电源条,因为标准单元的电源/地都通过Metal1连接到芯片内核的两端,并且与纵向电源条相连。该设计共有标准单元行(Row)312行,每行有1对0.4μm的横向电源条,相当于有312×0.4=124.8μm的电源条,大于所需的横向电源条总宽度,已经足够供应整个芯片,使水平方向的电压降小于VDD×5%=0.09 V。

为了使水平方向的电压降更小,设计了3对宽度为5.04 μm的Metal5层横向电源条,均匀分布在芯片内核区域。电源条的设计结果如图4所示。

经过后续物理设计后,在满足时序收敛的前提下,最终详细布线后电源网络VDD功耗分析的结果如表2所示,可看出,电源规划的设计很好地改善芯片内部的IR Drop,最终芯片内部不存在IR Drop的违规,满足了功耗要求,如图5所示。

3 结语

本文主要讨论了基于RSA算法的电子系统认证芯片的电源规划。基于SMIC 0.18μm工艺,首先对该芯片进行预设计,通过对预设计进行功耗预估和布线拥塞程度的分析结果,在正式设计时提高了芯片利用率,减小了芯片的面积;并且通过详细的电源规划(包括双层电源环和电源条的设计等)消除了预设计时存在的电压降违规,使该电子系统认证芯片最终满足功耗要求和时序收敛。



『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
晶体管的工作状态判断和工作条件