组合筑基
门接起来就能算一切——这句话,延迟之魔说对了一半。
算器之胚
筑基试炼的门是冷的。门楣上"组合"二字由无数细如发丝的蓝光勾出,像一张还没接通的电路图。
你攥着上一章炼成的逻辑门——与、或、非,几颗温热的小石子。你觉得它们已经够了。
「把门接起来,就能算。加法、比较、抉择——人能算的,它们都能算。打个赌吧——你造一个 32 位的加法器,又对、又快。我替你记账,每一级延迟都记。」
反直觉下注 · 哪件里没有组合逻辑电路?
先下注,指认一件。猜错,延迟账本记一笔。👆 点击下方按钮下注
组合逻辑图谱 · 五器归一
每件东西底层都是组合逻辑——输入进、门算、输出出、不留痕。没有例外。
辨图台 · 从电路到真相
石径尽头是一面悬空的电路图,门与门之间蓝线纠缠,像一张没有标签的网。
「读它。别猜——推。从输入走到输出,每经过一个门,写下它做了什么。」
「一眼就能看出来吧?干嘛费劲。猜嘛。」
电路分析 · 探针逐门推导
先猜功能(四选一),再拖探针逐门推导,填真值表。
探针推导 · 沿电路从输入走到输出
铸器炉 · 从需求到电路
铸器炉的火是冷的,蓝焰静静烧着。老祖丢过一片玉简:「三盏灯,任两盏亮则报警。造出来。」
「化简嘛,差不多就行。多几个门又不会怎样——又不会怎样。」
电路综合 · 真值表 → 卡诺图 → 门级电路
填三人(A,B,C)投票真值表,卡诺图圈组化简,投炉铸造。
卡诺图化简
信使殿 · 编码与译码
信使殿立着两面墙。左墙八个信筒,右墙八盏灯。
「八个信筒只有一个会被投信,你要用三根线告诉别人是哪一个。反过来,给你三根线,你要点亮八盏灯里的一盏。」
「要是两个信筒同时来信呢?」
编码器 / 优先编码器 / 译码器级联
译码器级联 · 用使能端拼 4-16 译码器
选路坊 · 一入多出
选路坊中央悬着一个带旋钮的匣子,八条进线、一条出线。
「旋钮指谁,谁通过。」又递来一张真值表:「别转数据了——把这张表喂给它。」
MUX 数据选择 + 函数实现 + Demux 路由
函数实现 · 把真值表喂给 MUX
半加台 · 一位之加
半加台上只有两个开关:A 和 B。一盏和灯,一盏进位灯。
「0+0、0+1、1+0、1+1。造出来。」
「那再加上低位来的进位呢?」
半加器 / 全加器 / 4 级串接
4 级串接 · 进位之链首亮
涟漪深渊 · 进位的诅咒
你把 32 个全加器一字排开,进位线首尾相接。你输入 111...1 + 000...1。
最低位的进位亮了。然后是下一位。再下一位。蓝光一格一格向高位爬,像一声叹息穿过 32 道门。你等了很久。最高位才亮。
「你算对了。可你算晚了。」
RCA 延迟追踪 · 32 位最坏情况
先行之光 · 超前进位
老祖丢来两个新变量:P=A⊕B(进位传播)、G=A·B(进位生成)。
「C_{i+1}=G_i ∨ P_i·C_i。展开它——别等,算出来。」
「那 C31 呢?」
CLA 推导 · 4 位先行 → 32 位扇入爆炸
分层方案 · 面积换速度
比较之衡 · 三态之门
比较之衡上摆着两个 8 位数。老祖:「谁大?」你从最高位比起——高位定了就不必看低位。蓝光一路短路下去,很快。
「比 8 位是快。比 32 位呢?还是得一级级下去吧。」
「这条线,八个人都要说话。同时说,会烧。怎么办?」
比较器级联 + 三态门总线驱动
总线冲突 → 三态门救赎
延迟之魔 · 排除法收网
ALU 刚一接通,灯全灭了。进位之链从盒子里挣脱,凝成一条横贯屏幕的赤色巨蛇——延迟之魔的真身。
「我是延迟之魔。我不住在"慢"里——慢救不了我。我住在你"以为逻辑对就万事大吉"的地方。三问。答错一题,链就长一节。」
「你的刻痕,够用了。」
渊账累计 0 笔 · 三问全对后清零
模块之门 · 组合筑基
魔散尽时,你脚下的电路图亮成一张完整的网。那 32 位 ALU 不再是一堆门——它缩成一个方块:两根输入、一根操作码、一根输出,旁边标着一个数:t_pd。
「你入门了。不是因为你算对了——算对的会忘。是因为你量过了每一级延迟,然后学会了把它们打包成一个带参数的盒子。但——你的 ALU 算完就忘。它记得上一秒算过什么吗?」
知识图谱点亮 · 十五碎片排认知链
点击下方碎片,按因果顺序点亮认知链。