Logisim-evolution:数字逻辑电路设计与仿真
Logisim-evolution 是目前唯一仍在活跃维护的数字逻辑电路设计与仿真工具。它的前身 Logisim 由 Carl Burch 于 2001 年创建,但自 2011 年后原始项目停更。2014 年瑞士高校团队 fork 出 Logisim-evolution 并持续开发至今,因此现在所说的“Logisim”实质上就是指 Logisim-evolution1)。
历史沿革
Logisim 由 Dr. Carl Burch(Hendrix College 计算机系副教授)在 2001 年左右创建。他本人将其描述为“一款用于设计和仿真逻辑电路的图形化工具”2),发音为 LODJ-uh-sim(而非 LOG-ism)。
| 时间 | 事件 |
|---|---|
| ~2001 | Carl Burch 开始开发 Logisim |
| 2011-03-21 | Logisim 2.7.1 — 最后一个官方版本 |
| 2013 | Burch 启动替代项目 Toves(后终止) |
| 2014-09 | Logisim-evolution 仓库创建 |
| 2014-10 | Burch 正式宣布 Logisim 开发终止 |
| 2016 | Logisim-evolution 首个稳定版发布 |
| 2024-08 | Logisim-evolution v3.9.0(Java 21) |
| 2026-02 | Logisim-evolution v4.1.0(最新版) |
Carl Burch 在 2014 年暂停开发时坦言:“Working on Logisim is no longer compatible with my paid responsibilities.” 他同时指出 Logisim 架构存在难以克服的缺陷,为此启动了替代项目 Toves,但后者也在早期阶段终止。Burch 此后加入 Google 担任软件工程师3)。
继承与创新
Logisim 原始版本自 2011 年后再无更新,瑞士三所高校联合创建了 Logisim-evolution 并持续维护至今4):
- BFH(伯尔尼应用科学大学)
- HEPIA(日内瓦景观、工程与建筑学院)
- HEIG-VD(沃州工程与管理学院)
| 指标 | 数据 |
|---|---|
| Stars | 7,278 |
| Forks | 966 |
| 许可证 | GPL v3.0 |
| 编程语言 | Java 21+ |
| 最新版本 | v4.1.0(2026-02-15) |
| 最后提交 | 2026-07-07(持续活跃) |
核心维护者包括 Theo Kluter(BFH,2,379 commits)、Marcin Orłowski(波兰,1,124 commits)等,社区中也有来自清华大学(Zhao Hanyuan)和北京工业大学(Liu Yuchen)的中国贡献者。
功能特性
原始 Logisim(2.7.1)已有功能:
- 图形化电路设计与仿真
- 组合逻辑分析(最小项之和、最大项之积)
- 卡诺图化简
- 子电路(层次化设计)
- 内置元件库:门电路、导线、复用器、算术运算、存储器、I/O
- Poke 工具交互式仿真
- 时钟信号仿真
Logisim-evolution 新增功能:
- VHDL/Verilog 组件:可以用硬件描述语言定义元件行为
- 时序图(Chronogram):直观展示信号随时间变化的波形
- FPGA 板集成:支持 BASYS3、TinyFPGA BX 等开发板,可直接将电路烧录到真实硬件
- TTL 74xx 系列库:包含大量常用数字 IC 模型
- TCL/TK 控制台:实现电路与用户的脚本化交互
- 测试向量:支持时序电路的自动化测试
- 自动保存:防止意外丢失工作
- 自定义快捷键
- 项目导入/导出为 ZIP
安装方式
Logisim-evolution v4.1.0 起,平台专用安装包已内置 Java 运行环境,无需预先安装 JDK/JRE。
| 平台 | 安装包 |
|---|---|
| Windows (Intel/AMD) | .msi 安装包 |
| Windows (ARM) | .msi 安装包(Surface Pro X 等) |
| macOS (Apple Silicon) | .dmg(M 系列 Mac) |
| macOS (Intel) | .dmg(Intel Mac,也可通过 Rosetta 运行) |
| Linux (Debian/Ubuntu) | .deb 包 |
| Linux (Fedora/RHEL) | .rpm 包 |
| 任何平台(需 Java 21) | 便携版 .jar:``java -jar logisim-evolution-all.jar`` |
包管理器安装:
# Snap snap install logisim-evolution # Flatpak flatpak install flathub com.github.reds.LogisimEvolution # macOS (Homebrew) brew install --cask logisim-evolution # Windows (winget) winget install logisim-evolution
所有安装包均可在 GitHub Releases 页面下载5)。
典型应用场景
计算机组成原理教学:Logisim-evolution 最经典的用途是在计算机体系结构课程中设计 CPU。学生可以从零开始搭建 ALU、寄存器堆、控制单元,最终构建一个完整的 MIPS 或 RISC-V 处理器。Logisim-evolution 的 VHDL/Verilog 支持和 FPGA 集成,使这些设计可以进一步烧录到真实开发板上运行。
数字逻辑实验:从基本门电路到复杂的时序电路(计数器、状态机),Logisim-evolution 提供了比实物实验板更便捷的调试体验。卡诺图化简和组合逻辑分析功能帮助初学者理解布尔代数。
FPGA 原型验证:借助 FPGA 板集成,可以在软件中完成设计验证后直接部署到硬件,大幅缩短了数字系统的开发迭代周期。
文件格式
Logisim-evolution 使用 ``.circ`` 格式保存电路文件,本质上是 XML 格式的文本文件,包含元件名称、放置坐标、连线信息等数据6)。这一格式使得版本控制(Git)和协作变得方便。
相关项目
除了 Logisim-evolution,数字逻辑仿真领域还有以下工具:
总结
Logisim-evolution 作为一款教学用数字逻辑仿真工具,继承了 Carl Burch 原始 Logisim 的简洁易用特点,同时大幅扩展了 HDL 支持、FPGA 集成等专业功能,使其既能满足本科教学需求,也能胜任数字系统原型验证工作。值得注意的是,现在市面上能下载到的“Logisim”实质上都已是 Logisim-evolution9)。