Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.
There are circuits where we don't use clocks at all. See Asynchronous circuits. The main aim for using clock is that it defines when to start the next step. If you don't use clock you don't know which step will perform first and how it would perform.
For example:
a=0;
c=0;
c= a+5;
c= a*5;
Now if you do all operations at once (i.e. without using a clock) there is a possibility that c=a*5 might get executed first and then c=a+5 will be
executed which gives you the wrong answer(they are basically flipflops which stores the values). There is another possibility too. What if c=0 is executed at last. The value of 'c' gets changed completely. Hence basically microcontrollers and microprocessors need clock. But there are circuits where we don't clock as in asychronous circuits. These asynchronous circuits are very complex and difficult to design.
Consider this case. You have a chariot or a stage coach or something with multiple horses. Lets say one horse moves a bit slower than the other. If you don't control the horses and let them run at whatever speed they want, you won't be travelling straight. The same is applicable here. Many digital systems consist of many blocks put together, so, We need a clock to keep them both running at speeds that both can handle.
Asychronous systems use hand shake signals to do the same task. After device-1 has completed, it sends a signal to device-2 that it has completed its work. Then device-2 takes the data from device-1 to do further processing.
This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
By continuing to use this site, you are consenting to our use of cookies.