PREVIEW

DigiSim 博客 - 数字逻辑教程与电路设计深度指南

探索关于数字逻辑电路、组件设计及电子工程教育的深度教程、指南与行业文章。

AND 逻辑门的 3D 可视化,内部电路发出光芒。
digital-logic-101

数字逻辑 101:从 AND、OR、NOT 门入门

TL;DR: AND、OR 和 NOT 是三个最基础的逻辑门。AND 仅在所有输入都为 1 时输出 1;OR 在任一输入为 1 时输出 1;NOT 把单一输入取反。把它们组合起来就能得到 NAND——一种通用门,所有其他数字电路都可以由它构建。 学习数字逻辑最快的方法就是动手搭电路。看真值表当然有用,但拨动开关、观察输出变化才是直觉形成的地方。本教程将带你在 digisim.io 上一步步构建三个最基础的逻辑门——NOT、AND 和 OR。每个章节结束时,你都会拥有一个亲手搭出来的可工作电路。 无需任何先决知识,也不必安装任何软件。打开浏览器访问 digisim.io,跟着做即可。 开始之前:开关到灯泡的最简电路 每个数字电路都有输入和输出。在 digisim.io 中,基础输入是 INPUTSWITCH(点击在 0 和 1...

4 min read
数字逻辑门(AND、OR、NOT)与真值表、信号流,展示布尔代数原理。
boolean-algebra

布尔代数:数字电路设计的基石

TL;DR: 布尔代数是用 AND、OR 和 NOT 操作 TRUE/FALSE 值的形式系统。它的定律——恒等律、吸收律、分配律、互补律和德摩根定理——让你可以把一个布尔表达式变换成等价的更简形式,而这种简化在硅片上直接对应更少的门和更小的传输延迟。 19 世纪中叶,乔治·布尔(George Boole)将"思想的代数"形式化,如今它已是每一颗数字芯片的运行数学。无论是微处理器、存储单元还是图形流水线,最终都会归约到他所定义的 AND、OR、NOT 三个操作。 对于工程师或计算机科学家,掌握布尔定律绝非纸上谈兵。化简一个布尔表达式意味着删除门、消除连线、从传输延迟中抠出皮秒。如果你能把数学化简下来,你就能把硅片化简下来。 三个原语操作:AND、OR、NOT 无论数字逻辑多复杂,都建立在三个原语操作之上。理解它们就等于掌握数字设计的字母表。在 digisim.io 中,它们由分立元件表示,你可以把它们任意连接,搭出任意复杂的逻辑。 1. AND 操作 只有当所有输入都为 TRUE 时,输出才是 TRUE (1)。把它当成一种严格要求:在重型机械的安全系统里,可能要求"启动按钮"被按下且"安全防护"已合上,电机才能运转。在电路上,AND 门相当于串联连接——必须每个开关都闭合,电流才能流通。 - 布尔表达式: -...

5 min read
带时钟信号和数据输入的 D 触发器示意图,展示边沿触发捕获过程。
d-flip-flop

D 触发器:数字设计中的边沿触发存储器

TL;DR: D 触发器在有效时钟边沿到来的瞬间,把数据(D)输入上的当前值捕获下来,并保持到下一个有效边沿。其特征方程为 。与 D 锁存器 不同——后者在使能为高时是"透明"的——D 触发器的捕获窗口实际上为零宽,这正是它成为现代同步数字设计基石的原因。 组合门—— AND、 OR、 NOT ——能进行计算,但不能记忆。要保留状态,你需要一个存储元件。简单的 D 锁存器 提供了存储,却有一个致命缺陷:透明性。当 D 锁存器的使能保持为高时,它就像一扇敞开的窗户——任何输入毛刺都会直接穿到输出端。 要构建健壮、可预测的系统,我们需要的不是一扇窗,而是一台相机——能在某一精确瞬间为数据拍下一张完美的快照。这就是 DFLIPFLOP,现代同步设计的基石。 DFLIPFLOP:定义 DFLIPFLOP 是一个同步的 1 位存储元件。"D" 代表"Data(数据)",因为它的核心功能就是捕获数据线上的值。和它的表亲 DLATCH(电平敏感)不同,DFLIPFLOP 严格按照时钟信号的跳变(transition)来动作。 在 digisim.io...

2 min read
二输入 NAND 逻辑门示意图及其真值表。
nand-gate

NAND 门:所有数字逻辑的唯一构建块

TL;DR: NAND 门只在所有输入同时为 1 时输出 0,否则输出 1 ()。它是函数完备的——任何布尔函数都可仅用 NAND 门实现。在 CMOS 硅工艺中,NAND 比 NOR 用更少的晶体管,且开关更快,这就是它在现代标准单元库中占据主导地位、并使"NAND Flash"得名的原因。 任何电子分销商都能买到的 74HC00 IC,在 14 引脚 DIP 封装里集成了四个 NAND 门,售价仅几美分。然而这颗不起眼的小芯片——以及现代每颗处理器中蚀刻进硅片的数十亿个 NAND 门——代表了工程史上被制造最多的逻辑结构。 本文聚焦 NAND 门作为一种实际、物理元件的方方面面:它在...

3 min read
卡诺图与化简后的数字电路并排展示,演示逻辑化简过程。
karnaugh-maps

卡诺图:可视化的布尔化简

TL;DR: 卡诺图(K-map)把真值表排成一张格雷码编码的二维网格,相邻单元只差一个变量。把网格上相邻的 1 圈成 2 的幂次大小的矩形组,直接得到最小积之和(SOP)表达式——根本不需要做代数推演。卡诺图对最多 4 个变量的函数能可靠地最小化;对 5–6 变量,可使用 Quine–McCluskey 算法;再多就要靠 ESPRESSO 之类的算法化综合工具。 基于布尔定律的代数化简 当然有效,但它依赖于在合适的时机看出合适的因式分解。一旦错过一次机会,就可能得到次优结果。当表达式涉及四个或更多变量时,可能的变形数量会爆炸式增长。 卡诺图(K-map)通过把代数化简变成可视化的图形识别来解决这个问题。它由贝尔实验室物理学家 Maurice Karnaugh 于 1953 年提出,把真值表排成一张二维网格,相邻单元恰好只差一个变量。在网格上把相邻的 1 圈成组,就直接得到最小积之和表达式——不需要任何代数操作。 可视化的真值表:什么是 K-map? 本质上,卡诺图就是真值表的另一种伪装。真值表把输入与输出按线性、垂直方式列出;K-map 把它们重新排成一张二维网格。这并不只是为了好看。K-map 的精妙之处在于它对单元格的特定排列方式。 在标准真值表中,行按二进制递增(00、01、10、11)。在...