论文部分内容阅读
当今消费电子产品发展迅猛,种类各异,以其卓越的性能与便携性而深受消费者青睐。随着产品发展,人们越来越关注处理器的运算速度与系统的整体性能,而CPU需要先从存储器中取得数据才能对它做处理,因此存储器的读写速度及其存储容量直接影响到了处理器的运算性能。相对于其他存储器而言,SRAM(StaticRandomAccessMemory)的读写速度相当高,可以作为CPU与内存之间的桥梁,是现代嵌入式系统中必不可少的组成部分。
SRAM编译器为SRAM的生产带来了方便,它利用全定制的模块设计保证了电路的性能,并且它可以根据用户需求一键生成SRAMIP,包括版图的GDSII文件,网表Netlist文件,Datasheet文件等。同时SRAM编译器还为用户提供了详细的时序与功耗参考资料,这些资料的获取需要对SRAM进行参数建模。
传统的建模方案主要是解析建模与简单线性插值建模,这些模型在精度与复杂度之间不能很好的折中,缺乏通用性,本文立足于SRAM编译器的设计,在对SRAM电路进行分析的基础上提出了一套高效准确的时序与功耗建模方案,并通过仿真器验证了模型的精度。而后在基于LittleC的解释程序基础上,设计了一款C语言程序解析器,使SRAM编译器的脚本编写变得简单易学,易于维护。论文的主要研究内容如下:
概述SRAM编译器的工作原理与设计流程,探究SRAM的架构划分方案及其对时序与功耗的影响。
分析影响时序的具体模块电路,包括译码电路,字线和位线,SA以及输出缓冲模块等,对于译码电路及SA模块,采用直接仿真的方法得出延时数据,对于字线及位线的延时则通过等效其RC充放电模型,得到其延时的计算公式。
分析影响SRAM读写功耗以及漏功耗的电路因素,得到存储阵列结构与SRAM总体功耗的关系,然后在基于CMUX分段的基础上,利用双线性插值的方法对SRAM进行功耗建模。
对时序与功耗建模方案进行验证,通过仿真几款不同尺寸的SRAM,比较这几款SRAM的仿真结果与建模结果,分析模型的精度。
简要介绍LittleC解释程序结构,并在VC环境下设计一款基于LittleC的C语言解析器,该解析器支持C语言的基本语法,并支持类似ASP(ActiveServerPage)标记语言的编程方式,使模板的编写更加简便灵活。
利用C++build6.0软件设计SRAM编译器界面,用户可以方便的输入所需SRAM的尺寸规模,包括WORDS,BITS,CMUX等,并可以查看预览及编译信息。