Modern VLSI Design 4e: Chapter 5 Copyright 2008 Wayne Wolf Topics n Memory elements. n Basics of sequential machines.
Modern VLSI Design 4e: Chapter 5 Copyright 2008 Wayne Wolf Memory elements n Stores a value as controlled by clock. n May have load signal, etc. n In CMOS, memory is created by: –capacitance (dynamic); –feedback (static).
Modern VLSI Design 4e: Chapter 5 Copyright 2008 Wayne Wolf Variations in memory elements n Form of required clock signal. n How behavior of data input around clock affects the stored value. n When the stored value is presented to the output. n Whether there is ever a combinational path from input to output.
Modern VLSI Design 4e: Chapter 5 Copyright 2008 Wayne Wolf Memory element terminology n Latch: transparent when internal memory is being set from input. n Flip-flop: not transparent—reading input and changing output are separate events.
Modern VLSI Design 4e: Chapter 5 Copyright 2008 Wayne Wolf Clock terminology n Clock edge: rising or falling transition. n Duty cycle: fraction of clock period for which clock is active (e.g., for active-low clock, fraction of time clock is 0).
Modern VLSI Design 4e: Chapter 5 Copyright 2008 Wayne Wolf Memory element parameters n Setup time: time before clock during which data input must be stable. n Hold time: time after clock event for which data input must remain stable. clock data
Modern VLSI Design 4e: Chapter 5 Copyright 2008 Wayne Wolf Dynamic latch Stores charge on inverter gate capacitance:
Modern VLSI Design 4e: Chapter 5 Copyright 2008 Wayne Wolf Latch characteristics n Uses complementary transmission gate to ensure that storage node is always strongly driven. n Latch is transparent when transmission gate is closed. n Storage capacitance comes primarily from inverter gate capacitance.
Modern VLSI Design 4e: Chapter 5 Copyright 2008 Wayne Wolf Latch operation = 0: transmission gate is off, inverter output is determined by storage node. = 1: transmission gate is on, inverter output follows D input. n Setup and hold times determined by transmission gate—must ensure that value stored on transmission gate is solid.
Modern VLSI Design 4e: Chapter 5 Copyright 2008 Wayne Wolf Stored charge leakage n Stored charge leaks away due to reverse- bias leakage current. n Stored value is good for about 1 ms. n Value must be rewritten to be valid. n If not loaded every cycle, must ensure that latch is loaded often enough to keep data valid.
Modern VLSI Design 4e: Chapter 5 Copyright 2008 Wayne Wolf Stick diagram ’’ V DD V SS D Q’
Modern VLSI Design 4e: Chapter 5 Copyright 2008 Wayne Wolf Layout DQ’ V DD V SS ’’
Modern VLSI Design 4e: Chapter 5 Copyright 2008 Wayne Wolf Multiplexer dynamic latch
Modern VLSI Design 4e: Chapter 5 Copyright 2008 Wayne Wolf Non-dynamic latches n Must use feedback to restore value. n Some latches are static on one phase (pseudo-static)—load on one phase, activate feedback on other phase.
Modern VLSI Design 4e: Chapter 5 Copyright 2008 Wayne Wolf Recirculating latch Static on one phase:
Modern VLSI Design 4e: Chapter 5 Copyright 2008 Wayne Wolf Clocked inverter symbol circuit
Modern VLSI Design 4e: Chapter 5 Copyright 2008 Wayne Wolf Clocked inverter operation = 0: both clocked transistors are off, output is floating. = 1: both clocked inverters are onn, acts as an inverter to drive output.
Modern VLSI Design 4e: Chapter 5 Copyright 2008 Wayne Wolf Clocked inverter latch
Modern VLSI Design 4e: Chapter 5 Copyright 2008 Wayne Wolf Regenerative latch in out
Modern VLSI Design 4e: Chapter 5 Copyright 2008 Wayne Wolf Clocked inverter latch operation = 0: i1 is off, i2-i3 form feedback circuit. = 1: i2 is off, breaking feedback; i1 is on, driving i3 and output. Latch is transparent when = 1.
Modern VLSI Design 4e: Chapter 5 Copyright 2008 Wayne Wolf Flip-flops n Not transparent—use multiple storage elements to isolate output from input. n Major varieties: –master-slave; –edge-triggered.
Modern VLSI Design 4e: Chapter 5 Copyright 2008 Wayne Wolf Master-slave flip-flop DQ masterslave
Modern VLSI Design 4e: Chapter 5 Copyright 2008 Wayne Wolf Master-slave operation = 0: master latch is disabled; slave latch is enabled, but master latch output is stable, so output does not change. = 1: master latch is enabled, loading value from input; slave latch is disabled, maintaining old output value.
Modern VLSI Design 4e: Chapter 5 Copyright 2008 Wayne Wolf Sequential machines n Use memory elements to make primary output values depend on state + primary inputs. n Varieties: –Mealy—outputs function of present state, inputs; –Moore—outputs depend only on state.
Modern VLSI Design 4e: Chapter 5 Copyright 2008 Wayne Wolf Sequential machine definition n Machine computes next state N, primary outputs O from current state S, primary inputs I. n Next-state function: –N = (I,S). n Output function (Mealy): –O = (I,S).
Modern VLSI Design 4e: Chapter 5 Copyright 2008 Wayne Wolf FSM structure