嵌入式存储器的容量及其在系统芯片中所占的面积越来越大,对其操作所带来的动态功耗成为系统芯片功耗中重要的组成部分,因此,必须寻求有效的低功耗设计技术,以降低嵌入式存储器对整个系统的影响。为了降低存储器的功耗,人们采用了字线分割、分级字线译码以及字线脉冲产生等技术,大大降低了存储器的动态功耗。 另外一种能有效降低存储器动态功耗的技术就是位线分割(DBL)。 针对系统要求,笔者采用DBL结构以及一种存储阵列分块译码结构,完成了64 kb嵌入式存储器模块的设计。
参数的修正与公式的重新推导
DBL结构的原理
DBL结构就是通过将两个或者多个SRAM存储单元进行合并,以减少连接到位线上的晶体管数目,从而减小位线电容,达到降低存储器动态功耗的目的。 图1w给出了将4个SRAM单元连接在一起并通过传输管连接到位线上的电路示意图。 与一般布局的位线结构相比,图1w所示的DBL结构中连接到位线上的传输管数目减少了3 /4。
DBL结构有两个关键:第1,确定存储阵列行数N 与合并的单元个数M 之间的最优关系。 所谓最优是指合并后存储器的动态功耗最小。 对于这个关系,文献< 1 >中给出了相应的公式:
pnor = (1 /M + 0.1) + 2 ×( (M + 1) / (N (ΔV /V ) ) ) , (1)
Mop t = ( (N /2) ×(ΔV /V ) ) 1 /2 , (2)
式中ΔV 表示位线上电压的摆幅, V 表示电源电压。第2,确定合并后各个管子的宽长比。下面,针对这两个问题进行讨论。
DBL功耗公式的修正
公式(1) , ( 2)是在下述假设下得出的:在SRAM中,位线的电容主要是由存储单元中传输晶体管的漏极电容和位线的金属连线电容构成,并且金属线的寄生电容是与位线相连管子漏极总电容C的10% ,则图2中寄生电容C1 和C2 可表示为
C1 = C M /N , C2 = C /M + 0.1C。
然而,上述假设并没有真正反映位线电容的构成,因为位线电容的组成包括存储单元中传输晶体管的源/漏电容CBS ,位线间的耦合电容CBB ,位线与横向字线之间的耦合电容CWW ,位线与地线的耦合电容CBSS ,位线与电源线的耦合电容CBDD ,位线的金属连线电容CW 等。 随着深亚微米技术的发展,在位线总电容中,传输晶体管的源/ 漏电容CBS 所占的比例只有60% ~ 70% ,其他的电容分量共占30% ~40%,在这种情况下公式设计电路会带来较大的误差。 另外,对C1 的舍入过大,由此也引入了很大的误差,必须进行修正。 笔者对公式的重新推导如下。
假设存储阵列的行数为N, DBL 结构中合并的存储单元数为M,一般布局结构(N 行) 中, 与位线相连的所有传输管漏极的总电容为C,并假定位线上其他的寄生电容是此漏极总电容的30% , 则图2中电容C1 和C2 可表示为
C1 = C (1.3M + 1) /N , C2 = (C /M ) + 0.3C。
假设读写操作时子位线不进行预充电,并且其电压值能够达到电源电压,用ΔV 表示位线上电压的摆幅,那么,图2中DBL存储器的动态功耗可表示为
p =f (M ) = (C2 ×ΔV ×V + 2 ×C1 ×V2 ) ×f = < (C /M + 0.3 ×C) ×ΔV ×V + 2 ×C ( (1.3M + 1) /N ) ×V2 > ×f (3)
根据标准存储单元的功耗表达式pstan = (C ×ΔV ×V ) ×f, (4)
对式(3) 归一化得pnor = (1 /M + 0.3) + 2 ×( (1.3M + 1) / (N ×ΔV /V ) ) , (5)
因此可求得功耗最小时的M 值Mop t = ( (N /2. 6) ×(ΔV /V ) ) 1 /2 。 (6)
如果存储阵列的行数N = 1 024,位线电压变化率ΔV /V = 011,则Mop t ≈ 6, pnor ≈ 0164。 但是如果按照公式(1) , (2) 计算,则Mop t ≈ 8, pnor ≈ 0140,后面的设计均基于修正后的公式(5) , (6)。