A pulse generator is either an electronic circuit or a piece of electronic test equipment used to generate rectangular pulses. Pulse generators are used primarily for working with digital circuits; related function generators are used primarily for analog circuits. Bench pulse generators Simple bench pulse generators usually allow control of the pulse repetition rate (frequency), pulse width, delay with respect to an internal or external trigger and the high- and low-voltage levels of the pulses. More sophisticated pulse generators may allow control over the rise time and fall time of the pulses. Pulse generators are available for generating output pulses having widths (duration) ranging from minutes to under 1 picosecond. Pulse generators are generally voltage sources, with true current pulse generators being available only from a few suppliers. Pulse generators may use digital techniques, analog techniques, or a combination of both techniques to form the output pulses. For example, the pulse repetition rate and duration may be digitally controlled but the pulse amplitude and rise and fall times may be determined by analog circuitry in the output stage of the pulse generator. With correct adjustment, pulse generators can also produce a 50% duty cycle square wave. Pulse generators are generally single-channel, providing one frequency, delay, width and output. Optical pulse generators Light pulse generators are the optical equivalent to electrical pulse generators with rep rate, delay, width and amplitude control. The output in this case is light, typically from a LED or laser diode. Multiple-channels A new family of pulse generators can produce multiple channels of independent widths and delays and independent outputs and polarities. Often called digital delay/pulse generators, the newest designs even offer differing repetition rates with each channel. These digital delay generators are useful in synchronizing, delaying, gating and triggering multiple devices, usually with respect to one event. One is also able to multiplex the timing of several channels onto one channel in order to trigger or even gate the same device multiple times. A new class of pulse generator offers both multiple input trigger connections and multiple output connections. Multiple input triggers allow experimenters to synchronize both trigger events and data acquisition events using the same timing controller. In general, generators for pulses with widths over a few microseconds employ digital counters for timing these pulses, while widths between approximately 1 nanosecond and several microseconds are typically generated by analog techniques such as RC (resistor-capacitor) networks