2004-12-1清华大学微电子所《数字大规模集成电路》周润德第8章(1)第1页第八章时序逻辑2种存储机理:•正反馈•基于电荷COMBINATIONALLOGICRegistersOutputsNextstateCLKQDCurrentStateInputs组合逻辑输入时钟当前状态下一状态寄存器输出2004-12-1清华大学微电子所《数字大规模集成电路》周润德第8章(1)第2页存储机理DCLKCLKQ动态CLKCLKCLKDQ静态正反馈基于电荷2004-12-1清华大学微电子所《数字大规模集成电路》周润德第8章(1)第3页存储单元的实现方法与比较:1.利用正反馈(再生):静态(双稳态)(1)静态:信号可以“无限”保持(2)鲁棒性好:对扰动不敏感(3)对触发脉冲宽度的要求:触发脉冲的宽度须稍大于沿环路总的传播时间,也即这两个反相器平均延时的两倍(4)尺寸大限制了在计算结构如流水线式数据通路中的应用2.利用电荷存储动态(要求定期刷新,要求从电容中读出信号时不会干扰所存储的电荷,因此要求具有高输入阻抗的器件)Vo2Vo1=Vi2Vo2=Vi1Vi1Vi1=Vo2Vi2=Vo1ABC(亚稳态点)2004-12-1清华大学微电子所《数字大规模集成电路》周润德第8章(1)第4页亚稳态点(Meta-Stability)过渡区的增益应当大于1ACdBVi25Vo1Vi15Vo2ACdBVi25Vo1Vi15Vo2Vi2=Vo1Vi2=Vo1Vi1=Vo2Vi1=Vo2此时,A、B为稳态工作点,C为亚稳态点触发翻转的方法:(1)切断反馈环(采用Mux)(2)强制驱动(正确设计尺寸)2004-12-1清华大学微电子所《数字大规模集成电路》周润德第8章(1)第5页Latch与RegisterLatch(以正电平透明为例)当时钟是低电平时存储(锁存)数据DClkQDClkQRegister(以上升沿触发为例)当时钟上升时存储(存入)数据ClkClkDDQQ2004-12-1清华大学微电子所《数字大规模集成电路》周润德第8章(1)第6页(1)Latch.电平灵敏(LevelSensitive),不是边沿触发.可以是正电平灵敏或负电平灵敏,当时钟为高电平(或低电平)时,输入的任何变化经过一段延迟就会反映在输出端上.有可能发生“竞争”(Race)现象,只能通过使时钟脉冲的宽度小于(包括反相器在内的)环路的传播时间来避免。tClk,DtloopLatch(锁存器)/Register(寄存器)/flip-flop(触发器)ClkDQQ2004-12-1清华大学微电子所《数字大规模集成电路》周润德第8章(1)第7页Latches(锁存器)InclkInOutPositiveLatchCLKDGQOutOutstableOutfollowsInInclkInOutNegativeLatchCLKDGQOutOutstableOutfollowsIn正电平锁存器负电平锁存器输出保持稳定(维持)输出跟随输入(透明)输出保持稳定(维持)输出跟随输入(透明)2004-12-1清华大学微电子所《数字大规模集成电路》周润德第8章(1)第8页基于Latch的设计举例•负(N)latch在φ=0时是透明的•正(P)latch在φ=1时是透明的NLatch逻辑逻辑PLatchφ2004-12-1清华大学微电子所《数字大规模集成电路》周润德第8章(1)第9页(2)Register寄存器为存放二进制数据的器件,通常由Latch构成。一般地,寄存器为边沿触发。(3)flip-flops(触发器)任何由交叉耦合的门形成的双稳电路2004-12-1清华大学微电子所《数字大规模集成电路》周润德第8章(1)第10页时序(Timing)参数的一般定义tCLKtDtclk-qtholdtsutQ输入数据应保持稳定CLKDQ输出数据已达稳定(1)建立(set-up)时间:tsu(2)维持(hold)时间:thold(3)时钟至输出(clk-q)时间(max):tclk-q(4)时钟周期:T(5)数据至输出(d-q)时间(max):td-q2004-12-1清华大学微电子所《数字大规模集成电路》周润德第8章(1)第11页Register时序参数注意:数据的上升和下降时间不同时,延时将不同。DClkQDQClktc-qtholdTtsu2004-12-1清华大学微电子所《数字大规模集成电路》周润德第8章(1)第12页Latch的时序(Timing)参数还要考虑tD-qClkDQtC2QClkDQtC2QtD2Q寄存器(Register)锁存器(Latch)Latch时序参数2004-12-1清华大学微电子所《数字大规模集成电路》周润德第8章(1)第13页Latch时序参数DClkQDQClktc-qtholdPWmtsutd-qT注意:数据的上升和下降时间不同时,延时将不同。时钟负边沿正电平Latch2004-12-1清华大学微电子所《数字大规模集成电路》周润德第8章(1)第14页最高时钟频率FF’sLOGICtp,combφ其中tplogic=tp,comb(max)tclk-Q+tplogic+tsetupT=其中tcd:污染延时(contaminationdelay)=最小延时(minimumdelay)=tcdreg+tcdlogicthold但同时需要满足:最高时钟频率需要满足:2004-12-1清华大学微电子所《数字大规模集成电路》周润德第8章(1)第15页经组合逻辑到达寄存器输入端tttclk-qttholdtsuFF1输入数据应保持稳定tsuFF2输入数据FF1输出数据已达稳定应保持稳定tclk-Qtsetuptp,comb(max)holdFF1LOGICtp,combφFF2φ(t1)(t2)DQCLK研究不同时刻(t1,t2)t1t2因此要求:tclk-Q+tp,comb(max)+tsetupT=2004-12-1清华大学微电子所《数字大规模集成电路》周润德第8章(1)第16页Q经组合逻辑已到达FF2输入端tclk-qttcdregtcdlogicFF1LOGICtp,combφFF2φ(t1)(t1)研究同一时刻(t1)Dtholdsu输入数据(2)应保持稳定至输入数据(1)输入数据(2)t1FF1输出数据已达稳定t1时FF1t1时FF2破坏了本应保持的数据(2)t1因此要求:tcdreg+tcdlogictholdtcd:污染延时(contaminationdelay)=最小延时(minimumdelay)=2004-12-1清华大学微电子所《数字大规模集成电路》周润德第8章(1)第17页写入(触发)静态Latch的方法:CLKCLKCLKDQDCLKCLKDMUX实现弱反相器实现(强制写入)以时钟作为隔离信号,它区分了“透明”(transparent)和“不透明”(opaque)状态(控制门可仅用NMOS实现)弱反相器2004-12-1清华大学微电子所《数字大规模集成电路》周润德第8章(1)第18页基于Mux的Latch负(电平)latch(CLK=0时透明)正(电平)latch(CLK=1时透明)CLK10DQ0CLK1DQInClkQClkQ⋅+⋅=InClkQClkQ⋅+⋅=Latch的具体实现2004-12-1清华大学微电子所《数字大规模集成电路》周润德第8章(1)第19页基于(传输门实现的)Mux的LatchCLKCLKCLKDQ(1)尺寸设计容易(2)晶体管数目多(时钟负载因而功耗大)2004-12-1清华大学微电子所《数字大规模集成电路》周润德第8章(1)第20页基于(传输管实现)Mux的LatchCLKCLKCLKCLKQMQM仅NMOS实现不重叠时钟(Non-overlappingclocks)(仅NMOS实现)(1)仅NMOS实现,电路简单,减少了时钟负载(2)有电压阈值损失(影响噪声容限和性能,可能引起静态功耗)2004-12-1清华大学微电子所《数字大规模集成电路》周润德第8章(1)第21页基于三态缓冲器实现的Latch2004-12-1清华大学微电子所《数字大规模集成电路》周润德第8章(1)第22页采用基于RAM或SRAM单元形式的Latch采用串联电压开关逻辑(CVSL)实现的LatchQQ2004-12-1清华大学微电子所《数字大规模集成电路》周润德第8章(1)第23页主Latch从Latch主从Latch构成的寄存器.由一个正电平灵敏Latch和一个负电平灵敏Latch构成(主从Latch对).输出状态在效果上表现为在时钟边沿处发生变化(正边沿处或负边沿处).确保了整个寄存器的反馈路径(或者在主锁存器或者在从锁存器处)被中断,因而可以解决上述由于反馈造成的信号“竞争”问题.CLK(CLK)的脉冲宽度应分别大于主(从)latch的传播延时.实质仍然是电平灵敏,当时钟信号有效时,输入信号必须保持不变。此时在输入端的spike或glitch会被主锁存器所锁存并传给从锁存器。Register的具体实现JKQQSSRRClkQQQQ2004-12-1清华大学微电子所《数字大规模集成电路》周润德第8章(1)第24页正负电平灵敏的两个Latch构成主从(Master-Slave)“边沿触发”寄存器10DCLKQMMaster01CLKQSlaveQMQDCLK时钟为高电平时,主Latch维持,QM值保持不变,输出值Q等于时钟上升沿前的输入D的值,效果等同于“正沿触发”效果等同于“负沿触发”的主从寄存器只需互换正Latch和负Latch的位置负Latch正Latch2004-12-1清华大学微电子所《数字大规模集成电路》周润德第8章(1)第25页QMQDCLKT2I2T1I1I3T4I5T3I4I6传输门实现的正负电平灵敏latch构成主从(Master-Slave)“边沿触发”寄存器(基于传输门多路开关的latch对)负Latch正Latch2004-12-1清华大学微电子所《数字大规模集成电路》周润德第8章(1)第26页QMQDCLKT2I2T1I1I3T4I5T3I4I6传输门主从(Master-Slave)边沿触发寄存器的建立时间、延迟时间和维持时间(基于传输门多路开关的latch对)负Latch正Latchtpd_txtpd_invOdelay2004-12-1清华大学微电子所《数字大规模集成电路》周润德第8章(1)第27页寄存器的触发脉冲寄存器状态只允许在时钟的上升(或下降)沿处改变,由此可避免输入端的spike或glitch被错误锁存。一般使出现在实际Latch输入端的S/R脉冲具有较窄和可控制的宽度,并与时钟的切换同步。N1ClkClk-outxInN2ClkInxClk-outClkJKSQRQQQ2004-12-1清华大学微电子所《数字大规模集成电路》周润德第8章(1)第28页延时(Clk-qDelay)DQCLK20.50.51.52.5tc-q(lh)0.511.522.50time,nsecVoltstc-q(hl)QCLKD2004-12-1清华大学微电子所《数字大规模集成电路》周润德第8章(1)第29页建立时间(SetupTime)建立时间不满足要求建立时间满足要求DQQMCLKI22T220.5Volts0.00.20.4time(nsec)(a)Tsetup50.21nsec0.60.8100.51.01.52.02.53.0DQQMCLKI22T220.5Volts0.00.20.4time(nsec)(b)Tsetup50.20nsec0.60.8100.51.01.52.02.53.0==2004-12-1清华大学微电子所《数字大规模集成电路》周润德第8章(1)第30页减少时钟负载的主从寄存器DCLKCLKD(1)设计复杂性增加:尺寸设计要保证能强制写入(2)反相导通:当T2导通时,第二个触发器有可能通过传输门T2耦合而影响第一个触发器存储的数据。DQT1I1CLKCLKT2CLKCLKI2