Academy
English한국어
Digital designFree · Beginner

Digital Logic Circuits

Learn how digital circuits select inputs, store state and move data through concepts and hands-on RTL examples.

Combinational & sequential logicSystemVerilogWaveform analysis
My learning

What you will learn

  • Understand combinational logic and input selection with a MUX
  • Explore clocks, reset and state changes with a counter
  • Follow data movement and previous state in a shift register
  • Run SystemVerilog examples and compare waveforms with your predictions

Before you begin

Read the concepts in your browser. For the labs, prepare a Digital Design Studio Desktop project and the permissions to run it. Source and input files are included.

Installation and first launch ↗

Curriculum

  1. Signals and selection
    • Bits, signals and portsConcept

      Identify inputs, outputs and the meaning of one-bit values.

    • Specify the selection with a truth tableConcept

      List every input combination and define its expected output.

    • The MUX and its observation registerConcept

      Distinguish a combinational output from a sampled output.

  2. Write and run the RTL
    • Describe a MUX with a conditional expressionConcept

      Connect the select signal and data inputs in RTL.

    • MUX simulation labLab

      Compare outputs using the provided source and input files.

  3. Interpret and check
    • Input changes and sampling instantsConcept

      Track y and sampled_y before and after a clock edge.

    • Test the cases that reveal mistakesConcept

      Choose cases that reveal reversed selection and sampling errors.

    • MUX knowledge checkCheck

      Check your understanding of selection and storage.

  4. Numbers and time
    • Bit width and binary valuesConcept

      Read the values and bit positions of a two-bit number.

    • Clock edges and stateConcept

      Separate input changes from register updates.

    • The counter and synchronous resetConcept

      Compute the next state from the previous state.

  5. Update state and run the lab
    • Compute the next value from the old valueConcept

      Read nonblocking assignments and reset priority in the code.

    • Counter simulation labLab

      Observe incrementing and wraparound after reset.

  6. Boundaries and debugging
    • What follows the maximum value?Concept

      Calculate addition beyond the register width.

    • Diagnose reset and counting errorsConcept

      Check the initial value, reset and first edge in order.

    • Counter knowledge checkCheck

      Check bit width and wraparound behavior.

  7. Bits and data flow
    • Vector direction and bit indicesConcept

      Read q[2:0] and identify the positions selected by a slice.

    • Read a serial input over timeConcept

      Organize a stream of one-bit inputs into a timeline.

    • State changes in a shift registerConcept

      Move the previous bits and insert the new input.

  8. Concatenation and the lab
    • Slices and concatenationConcept

      Trace how concatenated bits map into the new register.

    • Shift-register simulation labLab

      Trace the serial input alongside q.

  9. Latency and debugging
    • Follow a bit to the outputConcept

      Count the edges as one input bit moves through the stages.

    • Check direction, reset and input orderConcept

      Use a single-bit pattern to expose reversed connections.

    • Shift-register knowledge checkCheck

      Compute the next state using the pre-update value.

Your choice applies to this browser. Change it any time using the footer.