Skip to content
BetterDL

Power-on reset

Also called: POR, power-up reset, reset at power-up, power-on initialization

Forcing every flip-flop in a circuit into a known starting value when power is applied, usually through asynchronous clear and preset inputs.

When power is first applied, each flip flop settles into 0 or 1 more or less at random. A power-on reset puts the circuit into a known starting state before it begins to work.

How it is done: a reset signal is held active for a short time after power-up, and it drives the asynchronous clear (and sometimes asynchronous preset) inputs of the flip-flops. Asynchronous inputs are the right tool because they work even before the clock oscillator has started and stabilized.

Why it matters:

  • A CPU's program counter must start at the first instruction.
  • A counter should start from 0, not from a random value.
  • A ring counter must start with exactly one 1. If it powers up as 0000, it stays there forever, and if it powers up with two 1s it circulates the wrong pattern.
  • A state machine must start in its initial state.

The reset is usually active-low and released cleanly, often through a synchronizer, so that every flip-flop leaves reset on the same clock edge.

Pressing the reset button on a microcontroller board triggers the same process without cycling the power.

Worked examples

Example

Initializing a 4-bit ring counter

A ring counter must start at 1000. Each flip-flop has asynchronous preset and clear. How should the power-on reset be wired?

  1. 1.

    Q3 must start at 1: connect the reset line to Q3's preset.

  2. 2.

    Q2, Q1 and Q0 must start at 0: connect the reset line to their clears.

  3. 3.

    While reset is held, the register shows 1000, no clock needed.

  4. 4.

    When reset is released, the first edge moves it to 0100, and the ring runs correctly.

Example

What goes wrong without it

A 4-bit ring counter (shift right, SI = Q0) has no reset and happens to power up holding 0110. Trace it.

  1. 1.

    Edge 1: old Q0 = 0 enters Q3: 0011.

  2. 2.

    Edge 2: old Q0 = 1: 1001.

  3. 3.

    Edge 3: old Q0 = 1: 1100. Edge 4: 0110 again.

  4. 4.

    It cycles through four states with two 1s each, so no output is ever one-hot. Every step signal it drives is wrong.

Common mistakes

  • Assuming flip-flops power up as 0. Without a reset, their starting values are unknown.

  • Relying on a synchronous reset while the clock is not running.

Practice Power-on reset

Interactive questions with instant feedback and a worked solution for every wrong answer.

Latches and Flip-Flops lesson full course

Learn it step by step

Power-on reset is taught in Latches and Flip-Flops, Registers and Counters.