8-Bit Register

Build an 8-bit register using D flip-flops—the fundamental storage element in CPUs for holding data, addresses, and instructions.

Overview

A register is a small, fast storage element that holds binary data. The 8-bit register stores one byte (8 bits) and is the workhorse of any CPU—holding operands, results, addresses, and status flags. The 74HC374 contains eight D flip-flops that capture data on the rising edge of the clock, holding it until the next clock pulse.

Components Needed

  • 1x SN74HC374 IC (Octal D Flip-Flop)
  • 8x LED
  • 8x Switch
  • 1x Push button
  • severalx Wires

Instructions

  1. Study the 74HC374 Pinout

    The 74HC374 has 8 D inputs (D0-D7), 8 Q outputs (Q0-Q7), a clock input (CLK), and an output enable (OE, active low). Data is captured on the rising clock edge.

  2. Wire Power and Control

    Connect VCC and GND. Ground the OE pin to enable outputs. Connect a push button (with debouncing) to the clock input.

  3. Connect Data and Display

    Wire 8 switches to the D inputs (or use two 4-bit switch tools). Connect 8 LEDs to the Q outputs to display the stored value.

  4. Test Load and Hold

    Set a pattern on the switches and press the clock button. The LEDs should capture that pattern. Change the switches—the LEDs should NOT change until you clock again. This demonstrates the register holding data.

Challenges

  • Add a tri-state buffer to disconnect the register from a shared bus
  • Build a register file with two registers and MUX selection
  • Create a shift register by chaining flip-flop outputs to inputs