一种MCU时钟系统的设计
3.4 低功耗设计
低功耗设计要求时钟网络尽量简单,晶体管尺寸尽量小,并且应尽量减少不必要的电路节点翻转,所以设计的MCU一方面要大量采用只有三个元件组成的静态锁存器,参见图3;另一方面要有三种工作功率管理模式,即正常、空闲、掉电三种方式,以满足低功耗方式的应用。因此,内部所使用的时钟分三类,第一类送入部分控制器和数据通道(CPU核),在低功耗方式(空闲)下时钟关闭,如图6中的Clk5和Clk6;第二类用于控制定时器,如Clk1和Clk2;第三类则用于控制中断电路和串行口的时钟,如Clk3和Clk4。后两类不受低功耗方式的限制。
(1)在掉电方式(PD=1)下,时钟信号发生器及内部所有的功能部件都停止工作。如图3所示,PD=1时,封锁一个“与非”门和一个“或非”门,使V一直为低电平,输给R-S触发器的单相时钟的状态被固定,或为低电平或为高电平,这样整个芯片的时钟信号被冻结。
(2)在空闲方式(IDL=1)下,时钟信号继续提供给中断逻辑、串行口、定时器,但CPU 的时钟被切断了。如图6所示,IDL=1时,“或非”门输出为低电平,“与非”门输出为高电平,通过时钟驱动器使得Clk5=1、Clk6=0,这样通往CPU的信号就被冻结了。
图7 用CSMC 0.6um工艺库对时钟电路的逻辑仿真
4 设计验证与总结
综合图3、图4、图6就构成了整个时钟系统。为了对电路进行逻辑仿真,首先在CADENCE 的 Composer-schematic中调用CSMC 0.6μm标准单元工艺库,设置好管子参数,画出电路图。然后进入Analog Artist Simulation环境进行参数较理想化的电路仿真。其中clk的脉宽为0.5μs,周期为1μs,将各种信号(如PD、IDL)的上升时间和下降时间设置为0.002μs整个仿真时间取16μs,参考电压为5V,得到的仿真结果如图7所示。可以看到I1=1时,通往内部的各时钟信号被封锁;PD=1时,所有时钟(Clk1~Clk6)被冻结;而IDL=1时只有通往CPU的Clk5和Clk6被冻结,因此各信号满足设计要求。