Stopping a binary counter

Thread Starter

synch

Joined Sep 17, 2009
3
I am currently designing a binary up counter (4 bits) using a synchronous circuit, but I have little to no idea how to stop the count at 8 (binary 0100). Any help would be much appreciated, thank you!
 

JDT

Joined Feb 12, 2009
657
Simple way would be to gate the clock with the fourth output.
(Actually decimal 8 = binary 1000) So then when the output goes high, the clock stops.

To stop at other values, an extra and gate will be required. For example, to stop at 7 = 0111 you will have to AND gate the first three outputs.

When the counter is reset to zero, the clock will automatically be enabled again.

John
 

Papabravo

Joined Feb 24, 2006
21,225
Gating the clock means that this counter has an additional delay with respect to the remainder of the clocked circuits in the system. This may be OK, or not.

The ASIC way is to have 2:1 multiplexers on each input. The select line is derived from the counter output. When the count reaches 8 the muxes route the current output back to the input. The clock continues on it's merry way and the counter holds the present value.
 

jit26

Joined Sep 12, 2009
11
It depends what you want to do with this output. It probably want stop counting it will reset the the op at 8(1000) but to start counting again you have to disable the reset. Other way is to Give op to the Count enable pin.

What is your application? I had the same problem I had to count down any value to zero and mak op high.
 

Thread Starter

synch

Joined Sep 17, 2009
3
thanks guys, you've been a lot of help!:) i can get it to count up to 8 now but it resets once it gets to 8 and starts the count again. i was wondering if there was a way to make it stop at 8.
 

Thread Starter

synch

Joined Sep 17, 2009
3
oh yes, my application. This binary counter circuit is a small part of a project. It should count up to 8 then stop and restart the count when the reset button is pressed.
 

beenthere

Joined Apr 20, 2004
15,819
Use a gate (AND or NAND depending on clock polarity) with bit 3 so the clock to the counter is disabled as soon as the count of 8 is reached.
 

jit26

Joined Sep 12, 2009
11
Simply design the circuit using d flip flop and gates. Use sequences like

000 001 010 011 100 101 etc so your next

and use one output which will be high whenever you want to make it high.
I did it which will count any input to 000 and than op goes low and stop counting.
Try your own logic and if does not work i will give you solution..
 

jit26

Joined Sep 12, 2009
11
oh yes, my application. This binary counter circuit is a small part of a project. It should count up to 8 then stop and restart the count when the reset button is pressed.
more help

present seq next seq op
000 001 0
001 010 0
010 011 0
011 100 0
100 101 0
101 110 0 and so on

last
111 111 1

so it will stay on same state you have to make yourown counter.. Connect reset button to all flip flop..
 
Top