Redstone circuits/Clock

Introduction
Clock generators are devices where the output is toggling on/off constantly. The customary name x-clock is derived from half of the period length, which is also usually the pulse width. For example, a classic 5-clock will produce the sequence  on the output.

Using only redstone torches and wire, it is possible to create clocks as short as a 4-clock, sometimes by exploiting glitches. Using repeaters or pistons allows easy construction of any clock down to 1-clocks, and other devices can also be pressed into service. There are also special circuits called "rapid pulsers", which produce rapid pulses like a 1 tick clock, but inconsistently due to torches burning out. Indeed, torch based rapid pulsers can be too fast for repeaters. Even with repeaters in use, 1-clock signals are difficult to handle in other circuits, as many components and circuits will not respond in timely fashion.

Creating long clocks (more than a few ticks) can be more difficult, as adding repeaters will eventually get unwieldy. There are a number of approaches here:
 * Factorial stacking of clocks: Precise clocks with different periods may be connected to an AND gate in order to generate larger periods with the least resources possible. One way to make a 60-second (600 ticks) would be to use 150 repeaters. Or you could connect two clocks with the periods of 24 and 25 ticks (that's 13 repeaters) to an AND gate.  Note that if the input clocks' ON state is longer than 1 tick, you'll need to filter them with an Edge Detector or Long Pulse Detector, to prevent overlapping on imperfect syncs.
 * Devices can make use of item entities: items flowing on a stream, falling through cobwebs, or just waiting to despawn. Dispensers and hoppers can be quite useful here, but there's still an issue with supplying the dispensers.  Boats can be used similarly.
 * minecarts can be shuttled around a track, with surprisingly good precision. (Stray mobs and players notwithstanding....)
 * Pseudoclocks can even be based on plant growth. For these, timing will not be exact, but they can still be useful for getting occasional signals over long periods.

Even clocks without an explicit toggle can often have one retrofitted, by wiring a lever or other switch to the controlling block of an inverter, or even to a redstone loop. (Forcing the loop high will generally stop the clock; whether the output will be stopped high or low depends on the clock.) Another option is to use a lever-controlled piston to open or close one of those loops, using either a solid block to transmit power, or (as of 1.5) a redstone block to supply it.

Hopper Toggle-Clock
To create a switchable 4-clock (more or less), you can set up 2 hoppers facing each, drop an item in one hopper, and use a redstone comparator as the output. Four hoppers in a circular pattern will give a period of 16, but this is not properly an 8-clock, because the output will be "on" 4 only ticks out of 16. A switch can power the side of the comparator, to cut off output, or one of the hoppers, to stop the transfer itself. Note that in the schematic, the switch as positioned will power the hopper only; it would need redstone dust to power the comparator.

Minecart Clocks
Minecart clocks are simple, easy to build and modify, but are somewhat unreliable. A minecart clock are made by creating a small track rails with one or more powered and detector rails, arranged so that a minecart can run forever either around the track (A), or back and forth from end to end (B, C). (These need not be sloped -- properly placed powered rails will let a minecart "bounce" off solid blocks -- but you get some extra time as the cart slows down.) A larger vertical track (design C), taken from this video is claimed to produce an exceptionally stable clock. Note that the minecart never quite hits the top of the track.

When running an empty minecart on the loop or back-and-forth, the cart generates redstone signals as it passes over the detector rail(s). Minecart Clocks can be extended or shortened easily by adding and removing track, to adjust the delay between signals. On the flip side, the they are easily disrupted by wandering players or mobs, and a long clock can take a fair bit of space. Also, the exact period is generally not apparent from the design. The need for gold in the booster rails can also be a problem for some players.

Cactus Clock
These clocks utilize growth of a cactus to generate pulses, generating a five-minute long pulse roughly every 25 minutes (i.e. it turns on every half hour or so). Though the pulses are irregular, making it unsuitable for clocks or computers, the long span makes this clock type highly suitable for sugar cane farms, melon farms, and pumpkin farms.

Cactus clocks are built by building a small automatic cactus farm (basically a cactus with a block poised next to it at the second or third level), with the drop going to a wooden pressure plate. The signal will stay on until the item despawns, which takes 5 mins.

To approximately halve the time-span, hook up two of these clocks to an OR gate. To multiply the time-span, hook the output of this clock to a suitable counter. Hooking two of these clocks to an AND gate gets a much longer, but rather unpredictable, clock.

Boat Clock
A Boat clock is a clock which toggles on and off in about 9 seconds with minimal lag. This uses a boat in between a piston and pressure plate below and a cobweb above. When a boat falls onto the pressure plate, it activates the adjacent piston (a boat is long enough to be "over" both plate and piston), pushing the boat upwards back into the cobweb it fell from.

Redstone Comparator Clock
A Comparator Clock is a clock that toggles on and off every tick. It uses a comparator in subtraction mode, with the output feeding to input B. Build one by powering input A for a comparator in subtraction mode, and then placing three redstone to connect the output to the side of the comparator (Input B). It will output a 1-clock from any of the three redstone.

红石电路/时钟