嵌入式存储器的设计方法和策略
扫描二维码
随时随地手机看文章
随着集成电路制造工艺水平的提高,半导体芯片上可以集成更多的功能,为了让产品有别于竞争对手的产品特性,在ASIC上集成存储器可以降低成本和功耗、改善性能、增加系统级芯片的可靠性。随着对嵌入式存储器需求的持续增长,其复杂性、密度和速度也日益增加,从而需要提出一种专用存储器设计方法。
存储器的外包设计
存储器模块都具有相对独立的特性,在一个时钟系统中它通常占用一个管道,从成本和人力资源两方面考虑,许多芯片开发商都将存储器模块外包设计,因为,与其它半导体芯片相比,在系统中定义和分离存储器模块要容易得多。此外,诸多因素促进了存储器编辑器及定制存储器设计公司的发展,例如:存储器模块的标准模块特性、对嵌入式存储器的巨大市场需求以及存储器核心采用的是系统设计人员不熟悉的新技术,为了满足紧迫的系统设计进度要求,存储器设计公司通过板上存储器设计及时地为系统设计公司服务。
当许多公司外包嵌入式存储器设计时,也有许多公司迟迟迟疑不决。在外包设计过程中,要让系统设计人员尽可能早地获得引脚的位置、存储芯片面积以及存储器HDL模型,这样,就能够及时和高效地推出系统级芯片,同时不必担心系统芯片的面积、性能和品质问题。
获取嵌入式存储器设计的另一种方法是利用存储器编译器,它能够快捷和廉价地设计存储器物理模块。尽管该方法很有效并且完全适合标准存储器结构,但它存在若干缺陷。通常,编译后的存储器设计导出大量存储器模块,并造成系统的整体性能下降,另外,当系统设计需要添加新的功能时,该设计方法灵活性较差。
与此相反,向存储器定制设计公司定制嵌入式存储器设计则大有裨益。定制存储器可满足系统对存储器的突发需求,例如修改逻辑电路以便和存储器核实现逻辑兼容。定制存储器不是简单地在芯片上嵌入标准存储器模块,然后围绕存储器的其它逻辑电路来综合实现预想的功能。实际上,设计人员将逻辑电路直接植入存储器模块,从而使物理版图与存储器的存储单元紧密结合,这就能减小芯片的总面积,从而实现较高的存储密度,并提高芯片的性能,达到高速、紧凑、低耗电和布线简洁的设计要求。
现有存储器设计的复杂性需要完整的设计流程。本文介绍的设计方法包括设计概念、网表的建立、设计、布线以及存储器模块的验证,该方法可确保存储器模块在嵌入SoC时能有效地工作。
RISC中的存储器设计
在500MHz、64位RISC微处理器的嵌入式存储器设计中,片上存储器速度要足够快速,结构要足够复杂,否则无法与高速而复杂的微处理器相匹配。定制存储器占据200mm2 处理器1/3以上的面积,包括:一级和二级高速缓存、将虚拟页地址转化为物理地址的两级转换后备缓存(TLB)、用于定点和浮点内核的多端口寄存器文件以及查寻表(LUT)和通用存储器(GP)等。高速缓存包含实现数据存储、标识及LRU功能的独立存储器。除了多端口存储阵列之外,寄存器文件还包含用于地址翻译和命名逻辑单元的ROM和CAM(见图1)。总之,要设计20个独特的存储器。
图1 逻辑单元的ROM和CAM
存储器的复杂性和独特性表明,采用存储器编译器并不完全可行,每种嵌入式存储器都需要采用新的电路技术来设计,以便满足微处理器的高性能、高密度、低功耗和极低噪声的要求。
这样的高速微处理器必须采用最先进的0.18μm、6层铜线双镶嵌金属CMOS工艺制作,其极小的特征尺寸和高性能的晶体管使存储器设计面临严峻的考验,因为窄金属导线(线高大于水平间距)尤其容易受到串扰及电子迁移效应的影响,而晶体管的低阈值将导致抗噪声性能降低。
嵌入式存储器设计方法
要制定出每个设计人员都必须遵循的设计指南,首先要开发出一套设计标准,该标准包括最优门比率、扇出数目、最大晶体管宽度以及预布线阻抗和电容的经验法则。在高密度、高速存储器的设计过程中,要采用先进的电路技术、抗串扰技术及噪声容限设计标准。串扰标准规定了邻近信号的布线规则,其它噪声容限标准则规定静态噪声容限和锁存电路的可写性规则。
芯片的多种宏设计要求与电路标准保持一致。时钟发生器和寄存器的标准尤为重要,它们是整个CPU输入设置和保持时间维持一致的前提。为了使时钟偏差最小,设计人员需要密切控制占空比和扇出数目以及所有时钟发生器的上升和下降时间。
另外,我们采用可测性设计(DFT)方法,如扫描和全频内建自检(BIST)方法来设计每个存储器。毫无无疑,BIST技术比采用测试仪器测试要复杂得多,后者要将嵌入式存储器的I/O信号复用到测试总线上,并通过布线连接到芯片的I/O端口以便测试仪器进行测试。但是,BIST方法的优点在于与测试仪器无关,并可全频测试存储器。利用BIST复杂的测试功能,可以用标记将故障与特定的例程或一个实际的I/O或一个存储单元隔离。该特性可实现冗余处理和详细的故障分析。BIST还具备测试存储器功能和确定宏或存储器最大工作频率的能力,但通常无法计算宏的存取时间。
DFT方法虽然增加不到2%的开销,但对存储器的验证来说,其作用非常重要。采用这些技术及定制嵌入式ATE(自动测试设备)电路,我们已经制作了一些测试芯片来验证存储器设计过程中采用的复杂设计技术(图2)。
图2 验证存储器设计
现在,要驱动500MHz的外部I/O引脚很不实际,我们设计了专用嵌入式ATE电路来俘获并评估嵌入式宏的实际存取时间。通过建立片上测试器,可确保采用低成本的数字测试器来驱动及评测芯片。
时序和功能验证
对高性能半导体芯片,精确的时序模型至关重要。为了提取嵌入式存储器中关键路径的特征并进行仿真,要采用了Avant!公司的Hspice软件。从仿真运行时间来看,仿真整个宏的LPE网表是不切实际的,为此要采用集总和加载技术(见图3)。
图3 采用集总和加载技术
集总和加载方法是通用技术,面临分布式载荷造成的模型不精确的问题,并受到由阻容(RC)网络引起的传输线效应的影响。RC网络不仅包含阻容元件,还包含要对栅极、源极和漏极电容精确建模的晶体管。为了获得精确时序,要建立验证关键路径中所有元件与实际宏的LPE网表之间匹配程度的工具。对我们感兴趣的节点,要比较关键路径和LPE网表之间的引线、栅极、源极、漏极、耦合电容和电阻。当这些参数不匹配时,就必须修正负载模型。
Hspice可以仿真温度、P-T-V曲线并对每个角作出测量说明和绘图分析,从而便于查找不正确的电路行为,例如分析信号偏移率变差的程度、由串扰引起的信号尖峰、不期望的脉冲重叠程度、传输延迟变坏的程度、时钟电路的建立和保持时间变坏的程度等。
我们通常利用Verilog或VHDL模型来仿真整个SoC并对其建模。为了确保精确度,每个嵌入式存储器都有一个与之对应的Verilog模型,这样才能确保电路的功能与HDL模型匹配。对每个存储器,要建立全面的测试平台来测试所有的地址组合、控制和测试模式(即扫描和BIST),然后,我们将测试矢量及其相关的预测数据应用到每个宏的所有LPE网表。
如上所述,可以证明用Hspice仿真大型网表和大型测试向量集(通常有数千个向量)是不切实际的。为了弥合Hspice和Verilog之间的差距,要采用Synopsys公司的Timemill测试工具, 该工具可将逻辑等价性测试和电路的电性能验证结合起来,它可将向量驱动的全部存储器的LPE网表作为输入置于Verilog环境中进行仿真,其优点在于能检测电路网表和Verilog模型之间功能上的差异,并具有良好时序精度,从而发现时序缺陷。Timemill测试工具不是故障仿真器,但是测试向量能够涵盖99%以上的待测节点。我们在与Hspice仿真相同的P-T-V曲线下运行了Timemill测试。此外,还检测了未驱动的节点、最低和最高工作频率及P-T-V曲线的极端情形。
物理验证
我们还采用Mentor Graphics公司的Calibre工具来验证物理设计,并用完整的LVS和DRC规则基准来检验电路连接的正确性、所有的间距和宽度等,用附加的质量保证规则基准来检验浮动层、阻抗连接和不期望出现的几何结构。
对于版图的寄生参数抽取,要采用Mentor公司的xCalibre工具,它可生成用于Hspice关键路径分析和Timemill仿真的LPE网表。为了达到精确抽取,版图的层次必须与电路图的层次匹配,此外,所有的馈通(feedthrough)必须嵌入页元(leaf cell)中,这样其寄生效应才会在子电路的LPE网表中得到仿真。
LPE网表只能对关键路径仿真进行事后说明,但为了防止LPE预仿真和LPE后仿真的结果之间出现大的差异,这样做有必要。假如我们要达到高性能的仿真结果,关注实际版图的质量对电路设计技术也至关重要,例如合并或共用信号源极或漏极、屏蔽时钟信号线和解码信号线组、以及使用多个触点把电阻降到最小(在驱动大负载时,这点特别重要)。
质量保证
除了上述步骤和检验以外,在每个宏输出到系统设计工程师之前,要对其进行强化质量保证分析。目前,EDA质量保证工具正在形成之中,我们已经开发了很多专用检验工具。一级QA检验工具专用于较小面积的存储器开发,用该工具能确保Hspice关键路径网表加载与全版图LPE网表准确匹配。该工具还能分析整个LPE网表里的每个节点,并检验额外的驱动输出和偏移率,它检测到节点上的多个驱动器并找到易受电荷共享(特别是动态节点)和串扰影响的节点,然后要考虑耦合电容、驱动强度、接收器的噪声容限以及相邻节点的数量。检验之后,设计工程师必须纠正或者调整上述检验中有问题的节点。
我们采用一套特殊的DRC规则集对版图进行QA检验,该工艺找到具有阻性的连接点并检查电源格的完整性以及超宽晶体管。典型的DRC规则无法检查的阻性连接点或软连接不会导致芯片的功能故障,但容易产生与频率相关的问题或稳定性故障。
为了满足时序要求,设计工程师有时必须在噪声容限和速度之间作出折衷。即便如此,所有电路都必须通过最小噪声容限规则,否则当把存储器嵌入到整个CPU 后,就存在故障隐患。存储器、比例逻辑(伪NMOS逻辑)和动态逻辑门等电路都要经过静态和动态噪声容限分析。对于那些在同一裸片上参数不匹配的器件(如差分传感放大器),要通过蒙特卡洛Hspice分析,最后,存储器单元和锁存器要在所有P-V-T曲线上进行可写性测试。
功率分配和电源格的完整性对宏的性能有显著影响。电压IR降到Vdd,Vss上的电位抖动对噪声容限、时序甚至电路的功能有重要影响,随着电源电压的降低和深亚微米特征尺寸Vts的减小,这个问题甚至会恶化。在0.18微米工艺中,窄线距必然电流密度高,从而增加了出现电子迁移故障的可能性。因为电流和焦耳热会造成互连线特性的逐步退化,通常在几个月或几年后就可能发生电子迁移故障,如果故障出现得太早,那么就有可能造成灾难性的损失。
采用Synopsys公司的Pow ermill(Timemill的姊妹工具)仿真整个宏的电源,能按照放置的位置详细描绘各子电路电源的电流图,该电流图和宏版图的RC网表一起,输入到分析电源总线IR压降和电子迁移的工具中,该工具将指出任何有故障的线段或触点/通孔,并允许设计工程师改进总线,同时,输出的版图错误标识图、轮廓图、 3D电流和电压分布图有助于进一步分析。
事实上,不仅限于最高速和最小加工工艺,即使0.35微米以上的工艺和 100MHz以下的速度,也可以采用上述QA流程对噪声容限、串扰、IR压降或电子迁移相关的故障进行检测和分析。
本文总结
在外包嵌入式存储器设计的时候,一般都有明确的交付日期。在设计初期,存储器设计工程师必须向系统设计工程师提供底层规划图、关于重要边界和引脚位置的布局和布线约束条件。用户还希望用精确的HDL模型来消除系统中出现的小错误。然后,存储器设计工程师必须提交一个配备延迟和竞争查寻表或方程的时序库,从而方便客户对整个芯片逻辑和时序进行仿真。当前的拓扑图有助于系统设计工程师对整个芯片的电源、IR压降和电子迁移进行分析。设计工具必须具备一个用于存储器模块测试的配备测试向量的测试基准以及足够的文档。最终设计结果是完整的版图数据库,可以作为存储器模块直接放置到系统芯片上,同时还要提供包括仿真、时序、验证结果、设计细节、网表和电路图在内的完整设计文件。[!--empirenews.page--]
嵌入式存储器在半导体芯片中的作用非常重要,它向整个芯片提供的可互用特性决定了整个芯片的效率、速度和性能。只有设计方法可靠,才能设计出优良的存储器。
嵌入式存储器易受外部噪声的影响,因而要求比传统的片外存储器更严格。存储器的设计通常要与整个芯片并行开始,所以工程师必须学会预测和实现精确的灰盒存储器模型。
要保证嵌入式存储器的质量,必须建立严格的设计标准,设计工程师在设计过程中,不仅要善于创新,还要坚持采用严格的设计方法和质量保证工具,只有这样才能取得设计的成功。