嵌入式处理器微内核低功耗的设计.doc
文本预览下载声明
嵌入式处理器微内核低功耗的设计
摘要:针对嵌入式处理器微内核的结构特点,结合32位微处理器“龙腾C1”,提出了一种微内核的低功耗设计方法#65377;在体系结构层次上,分别从微操作ROM#65380;微堆栈和微操作编码几个不同角度出发,对嵌入式处理器的微内核进行了功耗优化设计#65377;在几乎不影响速度和面积的前提下,微内核的功耗有19%的降低#65377;
关键词:微内核;微操作;微堆栈;低功耗
中图分类号:TP368.1文献标志码:A
文章编号:1001-3695(2007)04-0265-03
0引言??
嵌入式处理器的应用已日趋普及,而在它众多的应用领域中有不少地方是对嵌入式处理器的功率消耗有严格要求的#65377;许多嵌入式系统,或因为电池可供给的电能有限,或因为长期连续工作积累的电能消耗不菲,减少系统的电能消耗成为系统的重要性能指标之一#65377;而微内核是嵌入式处理器的核心部件,因此嵌入式处理器的微内核的低功耗设计是系统绿色化设计的重要环节#65377;许多嵌入式处理器的微内核都是基于微操作来完成机器指令的执行,这意味着增加一条机器指令只需改变译码电路和增加一段新的微操作即可,具有规整性#65380;灵活性#65380;可维护性等一系列优点#65377;??
数字系统的低功耗设计方法可以分为若干层次#65377;按照抽象层次的不同,可以分为系统级(System)#65380;结构级(Architecture)#65380;寄存器传输级(Register Transfer)#65380;逻辑门级(Gate/Lo??gic)#65380;版图级(Layout)和电路级(Circuit)#65377;每个级别可以达到的低功耗设计效果也完全不同,在体系结构级可降低电路40%~70%的功耗,而在电路级功耗只能降低5%~10%,所以在体系结构级对微内核进行低功耗设计更有优势#65377;??
“龙腾C1”是西北工业大学航空微电子中心自行研究设计的32位嵌入式处理器,目前,已经采用0.18μmCMOS工艺流片成功#65377;??
1微内核的结构设计??
微内核的基本思想就是把操作控制信号编成所谓的微操作,存放到一个只读存储器里,依次读出这些微操作,从而完成整个处理器所需要的各种控制信号,使相应的部件执行所规定的操作#65377;一个微操作一般由操作控制和顺序控制两大部分组成#65377;操作控制部分用来发出处理器中各个部件的操作控制信号;顺序控制部分用来决定产生下一条微操作的地址#65377;图1是“龙腾C1”的微内核的结构图#65377;??
微内核主要由存放微操作的微操作ROM#65380;微操作寄存器和微地址产生逻辑三部分构成#65377;微操作ROM用来存放实现全部指令系统的所有微操作,微地址寄存器决定将要访问的下一条微操作的地址#65377;微操作寄存器用来存放由控制存储器读出的一条微操作信息,而微命令寄存器则保存一条微操作的操作控制字段和判别测试字段信息#65377;微地址产生转移逻辑负责产生访问微操作ROM的微地址#65377;“龙腾C1”处理器的微内核还加入了微操作预取逻辑,提高了微操作流水线的效率#65377;??
2微操作控制器的功耗优化设计??
在数字CMOS电路中,动态功耗占整个功耗的80%~90%#65377;在无法改变电压的情况下,设计者只能通过降低电路的跳变次数和频率来达到降低功耗的目的#65377;??
在“龙腾C1”处理器微内核的设计过程中,考虑到微操作ROM和微堆栈包含大量的存储单元,如果能减少这些存储单元工作时的跳变次数,将大大降低功耗#65377;另外,在一段微操作中,通过合理的微操作编码也能降低微操作寄存器的翻转率,从而达到降低功耗的目的#65377;所以主要应该从微操作ROM#65380;微堆栈#65380;微操作编码几个方面来进行功耗优化设计#65377;??
2.1微操作ROM的分区设计??
在“龙腾C1”中由一个44 bits×8 KB的片上ROM来存放微操作#65377;每个ROM字分为两部分:27 bits为微操作内容,剩余的17 bits中有4 bits是控制下地址转移逻辑的工作命令字和供转移的13 bits下地址#65377;“龙腾C1”的微操作共分为三大类,即存储管理部件的微操作#65380;整数执行单元的微操作#65380;浮点部件类微操作#65377;微操作格式是根据数据通路的具体控制要求设计的#65377;其中存储管理部件的微操作用于控制MMU计算存储操作的地址及向Cache发出访存请求,整数执行单元的微
显示全部