Synchronous Counter Synchronous (Parallel) Counters

Synchronous Counter Synchronous (Parallel) Counters

Synchronous Counter Synchronous (Parallel) Counters . Synchronous (parallel) counters: the flip-flops are clocked at the same time by a common clock pulse. We can design these counters using the sequential logic design process (covered in Lecture #12). Example: 2-bit synchronous binary counter (using T flip-flops, or JK flip-flops with identical J,K inputs). Present Next Flip-flop state state inputs 00 01 + + A1 A0 A1 A0 TA1 TA0 0 0 0 1 0 1 11 10 0 1 1 0 1 1 1 0 1 1 0 1 1 1 0 0 1 1 Synchronous (Parallel) Counters . Example: 2-bit synchronous binary counter (using T flip-flops, or JK flip-flops with identical J,K inputs). Present Next Flip-flop state state inputs + + A1 A0 A1 A0 TA1 TA0 TA1 = A0 0 0 0 1 0 1 0 1 1 0 1 1 TA0 = 1 1 0 1 1 0 1 1 1 0 0 1 1 1 A0 A1 J Q J Q C C Q' Q' K K CLK Synchronous (Parallel) Counters 3 Synchronous (Parallel) Counters . Example: 3-bit synchronous binary counter (using T flip-flops, or JK flip-flops with identical J, K inputs). Present Next Flip-flop state state inputs + + + A2 A1 A0 A2 A1 A0 TA2 TA1 TA0 0 0 0 0 0 1 0 0 1 0 0 1 0 1 0 0 1 1 0 1 0 0 1 1 0 0 1 0 1 1 1 0 0 1 1 1 1 0 0 1 0 1 0 0 1 1 0 1 1 1 0 0 1 1 1 1 0 1 1 1 0 0 1 1 1 1 0 0 0 1 1 1 A1 A1 A1 1 1 1 1 1 1 1 A2 1 A2 1 1 A2 1 1 1 1 A0 A0 A0 TA2 = A1.A0 TA1 = A0 TA0 = 1 CS1104-13 Synchronous (Parallel) Counters 4 Synchronous (Parallel) Counters . Example: 3-bit synchronous binary counter (cont’d). TA2 = A1.A0 TA1 = A0 TA0 = 1 A2 A1 A0 Q Q Q J K J K J K CP 1 Synchronous (Parallel) Counters 5 Synchronous (Parallel) Counters . Note that in a binary counter, the nth bit (shown underlined) is always complemented whenever 011…11 100…00 or 111…11 000…00 . Hence, Xn is complemented whenever Xn-1Xn-2 ... X1X0 = 11…11. As a result, if T flip-flops are used, then TXn = Xn-1 . Xn-2 . ... X1 . X0 Synchronous (Parallel) Counters 6 Synchronous (Parallel) Counters . Example: 4-bit synchronous binary counter. TA3 = A2 . A1 . A0 TA2 = A1 . A0 TA1 = A0 TA0 = 1 A1.A0 1 A2.A1.A0 A0 A1 A2 A3 J Q J Q J Q J Q C C C C Q' Q' Q' Q' K K K K CLK Synchronous (Parallel) Counters 7 Synchronous (Parallel) Counters . Example: Synchronous decade/BCD counter. Clock pulse Q3 Q2 Q1 Q0 Initially 0 0 0 0 1 0 0 0 1 T0 = 1 2 0 0 1 0 3 0 0 1 1 T1 = Q3'.Q0 4 0 1 0 0 5 0 1 0 1 T2 = Q1.Q0 6 0 1 1 0 7 0 1 1 1 T3 = Q2.Q1.Q0 + Q3.Q0 8 1 0 0 0 9 1 0 0 1 10 (recycle) 0 0 0 0 Synchronous (Parallel) Counters 8 Synchronous (Parallel) Counters . Example: Synchronous decade/BCD counter (cont’d). T0 = 1 T1 = Q3'.Q0 T2 = Q1.Q0 T3 = Q2.Q1.Q0 + Q3.Q0 Q0 Q Q Q 1 T Q T Q 1 T Q 2 T Q 3 C C C C Q' Q' Q' Q' CLK Synchronous (Parallel) Counters 9 Up/Down Synchronous Counters . Up/down synchronous counter: a bidirectional counter that is capable of counting either up or down. An input (control) line Up/Down (or simply Up) specifies the direction of counting. Up/Down = 1 Count upward Up/Down = 0 Count downward Up/Down Synchronous Counters 10 Up/Down Synchronous Counters . Example: A 3-bit up/down synchronous binary counter. Clock pulse Up Q2 Q1 Q0 Down 0 0 0 0 1 0 0 1 2 0 1 0 3 0 1 1 4 1 0 0 5 1 0 1 6 1 1 0 7 1 1 1 TQ0 = 1 Up counter Down counter TQ = 1 TQ = 1 TQ1 = (Q0.Up) + (Q0'.Up' ) 0 0 TQ1 = Q0 TQ1 = Q0’ TQ2 = ( Q0.Q1.Up ) + (Q0'. Q1'. Up' ) TQ2 = Q0.Q1 TQ2 = Q0’.Q1’ CS1104-13 Up/Down Synchronous Counters 11 Up/Down Synchronous Counters . Example: A 3-bit up/down synchronous binary counter (cont’d). TQ0 = 1 TQ1 = (Q0.Up) + (Q0'.Up' ) TQ2 = ( Q0.Q1.Up ) + (Q0'. Q1'. Up' ) Q0 Q1 Q 1 T Q T Q T Q 2 Up C C C Q' Q' Q' CLK CS1104-13 Up/Down Synchronous Counters 12 Designing Synchronous Counters . Covered in Lecture #12. 000 100 001 . Example: A 3-bit Gray 101 011 code counter (using JK 111 010 flip-flops). 110 Present Next Flip-flop state state inputs + + + Q2 Q1 Q0 Q2 Q1 Q0 JQ2 KQ2 JQ1 KQ1 JQ0 KQ0 0 0 0 0 0 1 0 X 0 X 1 X 0 0 1 0 1 1 0 X 1 X X 0 0 1 0 1 1 0 1 X X 0 0 X 0 1 1 0 1 0 0 X X 0 X 1 1 0 0 0 0 0 X 1 0 X 0 X 1 0 1 1 0 0 X 0 0 X X 1 1 1 0 1 1 1 X 0 X 0 1 X 1 1 1 1 0 1 X 0 X 1 X 0 CS1104-13 Designing Synchronous Counters 13 Designing Synchronous Counters . 3-bit Gray code counter: flip-flop inputs. Q1Q0 Q1Q0 Q1Q0 Q2 00 01 11 10 Q2 00 01 11 10 Q2 00 01 11 10 0 0 0 1 1 X X 1 X X 1 X X X X 1 X X 1 X X 1 JQ = Q '.Q JQ = Q .Q + Q '.Q ' JQ2 = Q1.Q0' 1 2 0 0 2 1 2 1 = (Q2 Q1)' Q1Q0 Q1Q0 Q1Q0 Q2 00 01 11 10 Q2 00 01 11 10 Q2 00 01 11 10 0 X X X X 0 X X 0 X 1 X 1 1 1 X X 1 1 X 1 X KQ2 = Q1'.Q0' KQ1 = Q2.Q0 KQ0 = Q2.Q1' + Q2'.Q1 = Q2 Q1 CS1104-13 Designing Synchronous Counters 14 Designing Synchronous Counters . 3-bit Gray code counter: logic diagram. JQ2 = Q1.Q0' JQ1 = Q2'.Q0 JQ0 = (Q2 Q1)' KQ2 = Q1'.Q0' KQ1 = Q2.Q0 KQ0 = Q2 Q1 Q0 Q1 Q2 J Q J Q J Q C C C Q1 Q2 K Q' K Q' ' K Q' ' Q0 ' CLK CS1104-13 Designing Synchronous Counters 15 Decoding A Counter . Decoding a counter involves determining which state in the sequence the counter is in. Differentiate between active-HIGH and active-LOW decoding. Active-HIGH decoding: output HIGH if the counter is in the state concerned. Active-LOW decoding: output LOW if the counter is in the state concerned. CS1104-13 Decoding A Counter 16 Decoding A Counter . Example: MOD-8 ripple counter (active- HIGH decoding). 0 1 2 3 4 5 6 7 8 9 10 Clock A' HIGH only on B' C' count of ABC = 000 A' HIGH only on B' count of ABC = 001 C A' HIGH only on B count of ABC = 010 C' . A HIGH only on B count of ABC = 111 C CS1104-13 Decoding A Counter 17 Decoding A Counter . Example: To detect that a MOD-8 counter A' is in state 0 (000) or state 1 (001). B' 0 1 2 3 4 5 6 7 8 9 10 C' Clock A' B' C A' HIGH only on B' count of ABC = 000 or ABC = 001 . Example: To detect that a MOD-8 counter is in the odd states (states 1, 3, 5 or 7), simply use C. 0 1 2 3 4 5 6 7 8 9 10 Clock HIGH only on count C of odd states CS1104-13 Decoding A Counter 18 Counters with Parallel Load . Counters could be augmented with parallel load capability for the following purposes: To start at a different state To count a different sequence As more sophisticated register with increment/decrement functionality. CS1104-13 Counters with Parallel Load 19 Counters with Parallel Load . Different ways of getting a MOD-6 counter: A4 A3 A2 A1 A4 A3 A2 A1 Load Count = 1 Clear Count = 1 Clear = 1 Load = 0 I4 I3 I2 I1 CP I4 I3 I2 I1 CP Inputs = 0 Inputs have no effect (a) Binary states 0,1,2,3,4,5. (b) Binary states 0,1,2,3,4,5. A4 A3 A2 A1 A4 A3 A2 A1 Carry-out Count = 1 Count = 1 Load Clear = 1 Clear = 1 Load I4 I3 I2 I1 CP I4 I3 I2 I1 CP 1 0 1 0 0 0 1 1 (c) Binary states 10,11,12,13,14,15. (d) Binary states 3,4,5,6,7,8. CS1104-13 Counters with Parallel Load 20 Counters with Parallel Load . 4-bit counter with parallel Clear CP Load Count Function 0 load.X X X Clear to 0 1 X 0 0 No change 1 1 X Load inputs 1 0 1 Next state CS1104-13 Counters with Parallel Load 21 Introduction: Registers . An n-bit register has a group of n flip-flops and some logic gates and is capable of storing n bits of information.

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    58 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us