explaingit

hneemann/digital

5,709JavaAudience · generalComplexity · 2/5Setup · easy

TLDR

Digital is a desktop app for drawing and simulating digital logic circuits, from basic AND and OR gates to complete processors, aimed at students and educators learning how computers work at the hardware level.

Mindmap

mindmap
  root((Digital))
    What it does
      Logic simulation
      Circuit drawing
      Signal tracing
    Key features
      Truth table synthesis
      FPGA export
      FSM editor
    Tech stack
      Java
      VHDL export
      Verilog export
    Audience
      Students
      Educators
      Hobbyists
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Things people build with this

USE CASE 1

Draw and simulate a logic circuit with gates and flip-flops to see how signals flow through it in real time.

USE CASE 2

Enter a truth table and let Digital automatically synthesize the equivalent logic circuit.

USE CASE 3

Export a circuit design to VHDL or Verilog and load it onto an FPGA board for physical hardware testing.

USE CASE 4

Use the built-in finite state machine editor to design a controller, then convert it directly into a working simulation.

Tech stack

Java

Getting it running

Difficulty · easy Time to first run · 5min

Requires Java installed, download the zip, unpack, and launch the JAR, no installer needed.

In plain English

Digital is a desktop application for drawing and simulating digital logic circuits. It is aimed at students and educators learning how computers work at the level of logic gates: AND, OR, NOT, flip-flops, and similar building blocks. You draw a circuit visually, then run it and watch signals flow through it in real time. The application requires Java to run but needs no installer: you download a zip file, unpack it, and launch the included JAR file. It runs on Windows, macOS, and Linux. The README lists a long set of features, including signal measurement graphs that show how values change over time, a single-step mode for tracing through a circuit one gate at a time, automatic analysis and synthesis of logic circuits from truth tables, and a built-in editor for finite state machines that can be converted directly into working circuits. Digital also ships with a library of 74xx series chips, which are a family of real-world integrated circuit parts commonly used in electronics courses. Circuits can be exported to VHDL or Verilog, which are hardware description languages used to program actual programmable logic chips. The tool has direct support for two specific hobbyist FPGA boards, so a circuit designed in Digital can be loaded onto physical hardware. It can also export JEDEC files for older programmable logic chips that are still used in beginner exercises. The project was created as a response to Logisim, an older educational logic simulator whose original developer stopped working on it in 2014. The author cites architectural limitations in Logisim as the reason for starting fresh rather than contributing to one of the existing forks. Several examples are bundled with the application, ranging from basic flip-flops to a complete simple processor, all with included test cases. Documentation is available in English, German, Spanish, Portuguese, French, Italian, and simplified Chinese. The README notes that the documentation is still incomplete but includes a getting-started chapter covering basic usage.

Copy-paste prompts

Prompt 1
I'm using the Digital logic simulator. Show me how to build a 4-bit adder from scratch using basic logic gates and verify it with a test case.
Prompt 2
In Digital, how do I enter a truth table for a 3-input function and use the automatic synthesis feature to generate the circuit?
Prompt 3
I want to export my Digital circuit design to VHDL. Walk me through the export steps and how to load it onto a supported FPGA board.
Prompt 4
How do I use Digital's finite state machine editor to design a traffic light controller and then convert it into a runnable circuit simulation?
Open on GitHub → Explain another repo

← hneemann on gitmyhub — every repo by this author, as a profile.

Verify against the repo before relying on details.