Home > Digital Logic > Digital Clock

Digital Clock

Theoretical Design and Concepts:

  1. Modular approach to solving the Digital clock design

A modular approach was used to break the design in a top-down fashion. The Digital Clock had three parts to it: Clock having Hour hand, Minute hand, and Second hand; Date having month and day; counter having seconds and seconds/100. The figure below shows the top-down approach used to modularize the design.

  1. The Counter / Stop Clock

The counter / stop clock / stopwatch was the simplest module of the Digital clock. The counter was designed using Four bit BCD decimal counter (7490 TTL chip). The design of the counter included five 7490 chips, five 7448 BCD converters, five seven segment displays, two switches (one to clear/reset the counter, and another to stop/continue the stop clock), and one AND gate. Table below indicates the behavior of the Four bit BCD decimal counter.

Count Output
D C B A
0 0 0 0 0
1 0 0 0 1
2 0 0 1 0
3 0 0 1 1
4 0 1 0 0
5 0 1 0 1
6 0 1 1 0
7 0 1 1 1
8 1 0 0 0
9 1 0 0 1

BCD Count Sequence table

Reset Inputs Output
R0(1) R0(2) R9(1) R9(2) D C B A
H H L X L L L L
H H X L L L L L
X X H H H L L H
X L X L COUNT
L X L X COUNT
L X X L COUNT
X L L X COUNT

Reset/Count Truth table

The 7490 chip counts only when exactly two inputs are low while the other two can assume any values. For this design R0 inputs were used as reset inputs while R9 inputs were grounded. The figure below is a logic diagram of 7490 as found in TTL datasheets.

Below is the LogicWorks figure of the counter/stop watch.

  1. The 24 hour clock

The 24 hour clock was designed using three pairs of Four bit BCD counters (7490) and Four bit divide-by-twelve counters (7492). The divide-by-twelve counters were used to provide the clock with the mod six operations. The circuit also made use of six BCD (7448) and six seven segment displays, including two OR and one AND gates. Circuit below shows how a pair of 7490 and 7492 chips was used to design a divide-by-sixty counter.

A pair of the above circuit was used to generate the minute and the hour hand. For the hour hand, extra logic had to be added to comply with the 24 hour format. The figure below shows the hour, minute, and seconds hands in HH:MM:SS format. Note that the clock is 24 hour clock and therefore goes from 00 to 23 for the hour hand.

24 hour clock

  1. The Gregorian calendar circuit

After completion of the counter and the 24 hour time modules the last module to be designed was the Gregorian calendar circuit giving the date and month. The date module was the hardest of all the designs, as the circuit needed to match with the Gregorian format. The circuit used similar BCD and divide-by-twelve counters with a little more extra logic to match the Gregorian calendar format. This module consisted of four seven segment displays where a pair represents either a month or date. The following logic was used in checking the state of the circuit with the Gregorian format and reacting appropriately.

M10 represents Tens of months while M1 represents Units of a month. Similarly, D10 represents tens of days while D1 represents units of days.

IF M10 == 0 AND M1 == 2 AND D10 == 2 AND D1 == 8 (representing the month February) OR IF M1 == 4 OR 6 OR 9 OR 11 (M1 == 1 && M10 == 1) AND D10 == 3 AND D1 == 0 (representing months with thirty days in a month)

THEN Trigger the month clock and reset the date counter.

  1. The Digital Clock

The final design was to combine the three individual modules into one large module. Care had to be taken while moving and connecting the modules of the circuit as one misconnection would result into a time consuming debugging or even redesign of the final module. Before connecting the three modules to create the final design, each module was thoroughly tested to get rid of any bugs overseen during the initial design phase. The merging of the final circuit was done in two phases. Phase one involved merging the 24 hour clock and the date module. The combined module was tested too. But owing to the limitation of the simulation speed of logic works thorough tests were not performed. The second phase involved the merging of the counter/stop clock with circuit from phase two. This was tested too.

 

Summary:

The experiment aided in learning how to use a top-down approach to break a problem into smaller modules that can be tackled easily as compared to the whole problem at once. It further enhanced and made use of relevant information and knowledge learnt from the lectures and labs throughout the semester. In addition, the project also augmented the knowledge and understanding of design of sequential circuit in everyday life.

The project, further involved extensive research in which choices and decisions had to be made in choosing the counters that would best fit the projects needs and the same time make it easier to both implement and design.

External links:

Digital Clock in VLSI

Advertisements
  1. mike c
    March 2, 2010 at 5:08 am

    hey there. i am doing a project with the 7447 and 7490 chips. we have to make a clock. our team is using the minutes and hours. no seconds. i am having problems getting the hours to reset to 1, for the 1’s hours and also reseting at 13 after twelve. please, if you can offer me any advice that would be great! i need to know what logic gates to use and how to use them, we are thinking nand gates or posibly nor. any help will pbobably be appreciated as you can immagine. thanks.

    • March 2, 2010 at 11:42 pm

      Hey, I have added few more schematics especially one for the 24 hour clock. I hope the schematic will be helpful. The logic I use to reset the 24 hour clock is when the time is 23:59:59 it should reset the hour, minute, and seconds hand and at the same time trigger the date. Let’s say Hour has two hands H0 and H1 (units and tens). Then the logic I used is (in binary):
      IF ( H1 == 10 (2 in decimal) && H0 == 11 (3 in decimal) && Minute hand triggers ) THEN reset. The seconds hands automatically trigger the minutes hand and the same with minutes hand triggering the hour hand. So the only logic I use is an AND gate with three inputs and an OR gate. I use the first two inputs of the AND gate to check for 3 in 23 and the other input to check for 2 in 23. Then the result is ORed with the trigger switch to reset everything to 00:00:00. For your case you would want to detect the time 12:59. I am assuming your minute hand already triggers the hour hand. So the conditions you would have to design the logic would be as follows:
      IF ( H1 == 01 (1 in decimal) && H0 == 10 (2 in decimal) && Minute hand triggers ) THEN ( reset H1 to 0 && set H0 to 01 ). I hope this helps.

  2. Lipi
    February 18, 2011 at 11:16 am

    OK!

  3. August 24, 2011 at 4:51 pm

    can’t simulate it on multisim.. :S is this the final schematics?

    • October 11, 2011 at 7:49 pm

      I used LogicWorks to simulate this. I have never used multisim though. I am sorry I am not able to help you. Let me know if you come up with a multisim one and I will add a link to it so that folks can have both versions.

      • Nahid
        April 6, 2017 at 2:56 pm

        Same here. Can you give me the multisim one now?

  4. leveltime
    December 21, 2011 at 11:02 am

    Hello guys, does anyone knows how to make 60 seconds stopwatch by logicworks??
    If you know, please help!!

    • veton
      March 1, 2012 at 4:15 pm

      I can make it in multisim. But cant find that increment button

  5. veton
    March 1, 2012 at 4:25 pm

    This is not right. The seconds and minutes are going till 80

  6. jhin montejo
    June 30, 2012 at 6:33 am

    hi..does anyone knows where i can find that MM74C926 or 28 IC?
    plz..help me..im working my thesis now and i cant make it because of that lacking piece.
    thank you..

    • Kiran
      July 28, 2014 at 12:55 pm

      could u find MM74C926 in multisim? plzz tell me coz m facing the same prblm

  7. Sawyer
    August 10, 2012 at 2:24 am

    for your 24 hour clock you have your units for hours truncated wrong! decode for 4 instead of 3 because when the timer hits 2300 it will reset back to 0000 instead of resetting when it hits 2400. very big issue! check the entire circuit again i had to re draw it to get it to work and its not counting to 80….for the 7492 the sixth stage the output is 1000 which IS the binary for 8 but you should decode that high signal back to the reset of the chip which should be barred together and use the same high signal on the output D to trigger the next chips clock stage.

  8. October 27, 2012 at 5:21 pm

    Wow, this post is good, my sister is analyzing these kinds of
    things, so I am going to inform her.

  9. January 5, 2014 at 6:39 pm

    Great post. I was checking continuously this blog and I am impressed!
    Very useful information specially the last part 🙂 I care for such information a lot.

    I was looking for this particular info for a long time.
    Thank you and good luck.

  10. Daniel
    April 28, 2014 at 2:33 pm

    what should be the clock frequency in counter stop ms/sec ?????

  11. Daniel
    April 28, 2014 at 2:37 pm

    can we make a clock of our own using 555timer for counter stop ms/sec ?????

  12. Liang Yun Ying
    November 17, 2014 at 6:42 am

    can i replace 7492 with 74LS926?

  13. Robert Kilbourne
    July 25, 2015 at 1:17 pm

    I built the 24 hour clock from your schematic but I had to make a change to it as the clock was resetting at the transition from 22:59:59 to 23:00:00. The three-input AND gate receives a ‘1’ from QB on the first ’92 (0010) and 1’s from QA and QB on the first ’90 (0011). That is 23:00 hours. I swapped the three-input AND for a two-input AND which I connected to QC on the ’92 (0100). It now resets on the transition from 23:59:59 to 24:00:00 (00:00:00). Other than that the clock works flawlessly, a great design and a way to have some fun with old-school TTL gates. I drive it off a 555 timer set to 1Hz.

    • July 25, 2015 at 7:30 pm

      Thank you for pointing out the bug. If you’d like I’d be happy to link to or add a picture of your schematic 🙂

  14. Akshay bhat
    November 1, 2015 at 6:47 am

    I just designed the above stopwatch circuit in multisim.Only thing I m not able to find is the 2 switches.Can u please help me with this?
    Thank you.

  15. Akshay bhat
    November 7, 2015 at 2:43 pm

    The above stopwatch circuit is counting 99 seconds.Can u please provide me the logicworks schematic of stopwatch counting 60 seconds,60 minutes & 24 hours.

  1. November 13, 2014 at 12:56 am
  2. November 20, 2016 at 12:35 am

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: