一种低功耗系统芯片的实现流程
摘要: 本文基于IEEEl801标准Uni-fied Power Format(UPF),采用Synopsys和Mentor Graphics的EDA工具实现了包括可测性设计在内的“从RTL到GDSII”的完整低功耗流程设计。本论文第1部分描述了低功耗技术和术语。第2部分描述了本文设计的系统芯片的情况。第3部分描述了整个设计的流程和采用的EDA工具。
随着CMOS半导体工艺的进步,集成电路进入系统芯片(System on Chip,SoC)设计时代,极大地提高了集成度和时钟频率,导致芯片的功耗急剧增加。功耗成为集成电路设计中除面积和时序之外的又一个重要因素,因此低功耗设计成为学术界和产业界关注的焦点。低功耗技术的引入,给芯片的设计和实现提出了新的挑战。这些挑战包括电压域的划分、EDA工具之间数据的交换和管理等。本文基于IEEEl801标准Uni-fied Power Format(UPF),采用Synopsys和Mentor Graphics的EDA工具实现了包括可测性设计在内的“从RTL到GDSII”的完整低功耗流程设计。本论文第1部分描述了低功耗技术和术语。第2部分描述了本文设计的系统芯片的情况。第3部分描述了整个设计的流程和采用的EDA工具。第4部分为总结。
1 低功耗技术
数字CMOS电路的功耗主要有三个来源,分别是开关功耗Pswitching、短路功耗Pshort-circuit和泄漏功耗Pleakage,分为动态功耗(Psw itching+Pshort-circuit)和静态功耗(Pleakage)两大类,如式(1)所示。
其中,α是开关活动因子,CL是有效电容,VDD是工作电压,fclk是时钟频率,ISC是平均短路电流,Ileak是平均漏电流。目前提出了各种降低功耗的方法,主流的技术有门控时钟(Clock-Gating)、多阈值电压(Multi-threshold),先进的技术包括多电压(Mulit- Voltage,MV)电源关断(MTCMOS Pwr Gating)、多电压和带状态保持功能的电源关断(MV&Pwr Gating with State Retention)、低电压待机(Low-VDD Stan-dby)、动态或自适应电压和频率调整(Dynamic or Adaptive Voltage&Frequency Scaling,DVS、DVFS、AVS、AVFS)、阱偏置(Well Biasing,VTCMOS)等。为了实现这些技术,需要在设计的时候划分电压域(Power Domain,PD),组成不同的工作模式(Power Mode,PM)和加入特殊器件,比如电源关断器件(Power Switches)、电平转换器件(Level Shifter,LS)、隔离器件(Isolation Cell)和状态保持器件(State Ret-ention Cell)等。在本文的芯片设计中采用了门控时钟、多电压和电源关断技术。
2 本次设计的概括
本文的芯片设计如图1所示,有4万个寄存器、20万逻辑门,共分七个电压域,PD TOP(顶层)、PD1、PD2、PD3、PD4、PD5和PD6,其中PD6工作在1.2V,其余的工作在1.8V。在正常工作模式下有三种电压模式,分别为PM1(PD1关断,其余开启)、PM2(PD TOP和PD1开启,其余关断)和PM3(PD TOP开启,其余关断)。电源关断器件和隔离器件的使能信号(ps en和iso en)由处于常开区PD TOP的功耗模式控制器(PMC)产生。
3 低功耗设计流程
如图1所示,每个关断电压域的输出要插入隔离器件,以防止该电压域电源关断后输出的不定态影响别的电压域正常工作,由于PD6的工作电压是1.2V,其余的是1.8V,因此要在PD6的输入和输出插入电平转换器件。这些低功耗的设计意图写入UPF文件,EDA工具根据UPF实现设计者的想法。整个设计实现过程中包括RTL代码的综合、可测试性设计、布局布线、物理验证和网表的等价形式验证,如图2所示。
3.1 综合
RTL代码的综合使用Design Compiler(DC),输入文件为UPF、带电源信息的库文件(pg.db)、RTL代码和时序约束文件(SDC。在综合优化的过程中,工具会根据 UPF自动地在相应的位置插入电平转换器件和隔离器件,优化完成后,可以用check_mv_desing命令进行正确性检查。 DC输出的网表与RTL代码使用Formality进行等价形式验证。
3.2 可测试性设计
在通过等价形式验证的综合网表中做可测性设计。首先利用MBISTArchitect做静态随机存储器(SRAM)的内在自测试(MBIST)。输入文件包括网表、SRAM的模型,输出带自测试电路的网表。其次利用BSDArchitect完成边界扫描测试,输入文件包括网表和输入/输出接口电路的模型,输出包含边界扫描电路的网表。最后利用DFTCompiler完成逻辑扫描测试,输入文件为UPF、时序约束文件和网表,利用insert dft命令完成扫描链的连接。由于做内在自测试和边界扫描测试电路时没有用到UPF,因此在扫描链插入后要用check mv desing命令进行检查,电平转换器件和隔离器件如果缺少用insert_mv_cell插入,如果多余用remove_mv_cell命令删除。DFT Compiler输出为网表、新的UPF'、SPF、DEF和时序约束文件。做完可测试性设计的网表和综合的网表进行等价形式验证。
3.3 布局布线
利用IC Compiler进行布局布线,输入文件有UPF'、时序约束文件、网表,输出文件为网表和时序约束文件。输出网表要完成等价形式验证。完成布局布线后的网表使用MVRIC进行低功耗设计的检查,用Star-RCXT抽取寄生参数,用PrimeTime进行时序和功耗的签收,最后用MVSIM和VCS完成后仿真。最后使用Calibre完成物理验证,输出GDSII文件。最终的芯片版图如图3所示。
3.4 自动测试向量的生成
完成布局布线后的网表和DFT Compiler输出的SPF文件送入TetraMAX中进行自动测试向量的生成。本文的设计生成2576个向量,故障覆盖率为98%,并用VCS完成了测试向量的后仿真。
4 结论
本文阐述了一种低功耗系统芯片的实现流程。利用该流程实现了一个包含4万寄存器、20万等效逻辑门的系统芯片,并流片验证,结果达到预期目标。
暂无评论