第 1 章 数字信号、抽象层次与学习地图
如果“节点、输入、输出、真值表、上升沿”这些词还不熟,先读第 0 章:零基础起步。本章从第 0 章的逻辑 0/1 继续追问它们怎样由真实电压承载。
1. 本章要解决的问题
芯片内部真正存在的是连续变化的电压、电流和电荷,工程师却习惯用 0 和 1 描述它们。这个转换不是文字游戏,而是数字电路能够可靠工作的基础。
本章回答三个问题:
- 连续的物理量怎样承载离散的逻辑值?
- 为什么一个受到小幅噪声扰动的信号,经过逻辑门后仍能恢复成可靠电平?
- 面对一块数字芯片,我们应该在器件、电路、逻辑还是系统层面思考?
本章只需要你已有的电压、电流和 MOSFET 基本知识。二进制运算、布尔代数和逻辑门都从零开始建立。
2. 前置知识快速检查
先尝试口头回答下面四个问题。它们不计分,只用于确认起点。
- 电压描述哪两个节点之间的电势差?
- 电容两端电压变化时,为什么需要转移电荷?
- MOSFET 的栅端电压能否影响源漏之间的导电能力?
- 一个物理电压受到噪声后,是瞬间跳变,还是仍然连续变化?
如果第 1~3 题已经陌生,可以先记住本章够用的三句话:电压总是相对于参考节点测量;改变电容电压需要充入或移走电荷;MOSFET 的栅电压能够控制源漏通道的导电能力。第 4 题的答案是连续变化。数字电路中的“跳变”是对快速连续变化的简化描述。
3. 学习目标
学完本章后,你应当能够:
- 区分物理信号、逻辑状态和数据含义;
- 解释逻辑 0 和逻辑 1 为什么对应电压范围,而不是两个绝对电压点;
- 根据接收端阈值判断一个输入电压能否被可靠识别;
- 说明逻辑电平恢复和噪声容限的直观意义;
- 识别器件层、电路层、门级、RTL、系统层和物理实现层;
- 为一个问题选择合适的抽象层次;
- 概述数字 IC 从功能需求到制造测试的主要步骤。
4. 电压是连续的,逻辑值是离散的
4.1 从一个实际输入开始
假设一块芯片使用 1.2 V 电源。某个输入引脚此刻测得 1.08
V。物理上,这只是相对于 GND 的一个电压;电路把它解释为逻辑
1。若它随后受到 40 mV 的负向干扰,变成 1.04 V,逻辑解释通常仍然是
1。
这里出现了两个层次:
- 物理信号是随时间连续变化的电压、电流或电荷;
- 逻辑状态是电路赋予物理信号的离散含义,例如逻辑 0 或逻辑 1。
数字电路并没有消除连续物理量。它规定了一套判定规则,让一段电压范围代表 0,另一段电压范围代表 1。只要扰动没有把信号推过判定边界,逻辑含义就不变。
观察图 1-1 时,先看横轴上的三个区域,再比较两个蓝色电压点。它们的数值不同,但都属于可靠高电平区。
图 1-1 连续电压被接收电路划分为逻辑 0、不保证区和逻辑 1(示意)
图中 V_IL(max)
是接收端仍保证识别为低电平的最高输入电压,V_IH(min)
是接收端开始保证识别为高电平的最低输入电压。于是:
- \(V_{in}\le V_{IL(max)}\):接收端保证按逻辑 0 处理;
- \(V_{in}\ge V_{IH(min)}\):接收端保证按逻辑 1 处理;
- 两个阈值之间:逻辑结果不保证,设计时应避免长期停留。
“不保证”不等于电压不存在,也不等于输出必然随机。它表示制造商或设计模型不承诺接收端会把它判成哪一类。在这个区域内,工艺、温度、电源、电路增益和噪声都可能改变结果。
立即检查:若
V_IL(max)=0.3 V、V_IH(min)=0.8 V,那么 0.20 V、0.55 V 和 0.95 V 分别属于哪个区域?答案依次是可靠低电平、不保证区和可靠高电平。
4.2 逻辑 1 不等于一个固定电压
逻辑 1 是一种类别,不是一个固定数值。1.2 V 供电的电路可能用接近 1.2 V 的电压表示逻辑 1;较低的 1.0 V 只要满足输入高电平要求,也可以被解释为逻辑 1。不同电源和不同接口标准还会采用不同范围。
同理,逻辑 0 通常接近 GND,但不要求严格等于 0
V。互连压降、漏电、耦合噪声和驱动能力都会使实际电压偏离理想端点。
这一区分十分重要:
物理层:某节点为 1.04 V
逻辑层:该节点表示逻辑 1
数据层:这个 1 可能是数字的一位、控制命令或状态标志
三个描述可以同时正确,但回答的问题不同。
5. 同一组比特可以表达不同含义
一组物理导线上的高低电平可以写成
1010。仅看这四位,不能判断它代表什么:
- 作为无符号二进制整数,它代表十进制 10;
- 作为某个寄存器的控制字段,它可能表示“启动通道 1 和通道 3”;
- 作为状态编码,它可能对应控制器的某个运行状态;
- 作为图像数据的一部分,它只是一个像素字段的局部比特。
比特(bit)是二进制信息单位,每一位取 0 或 1。比特的物理载体是电路节点,逻辑值由电平规则解释,数据含义由系统约定赋予。
可以把这三层关系记成:
电压回答“电路节点现在是什么物理状态”,逻辑值回答“它属于 0 还是 1”,数据格式回答“这一串 0 和 1 表示什么”。
6. 从 MOSFET 到最简单的逻辑门
你已经知道 MOSFET 的栅电压会改变通道导电能力。数字电路先把这种连续变化简化成两个主要状态:导通和关断。这个“开关模型”保留了输入能否建立输出通路的信息,暂时忽略精确漏电流、有限导通电阻和寄生电容。
CMOS 反相器由一只 PMOS 和一只 NMOS
组成。两只管的栅极共同接输入,漏极共同接输出。PMOS
位于上方,负责在合适条件下把输出拉向 V_DD;NMOS
位于下方,负责把输出拉向 GND。
观察图 1-2 的左右两个状态,重点看绿色实线表示的有效通路。
图 1-2 CMOS 反相器在低输入和高输入下形成相反的输出电平
- 输入为逻辑 0:PMOS 导通,NMOS 关断,输出被上拉到高电平;
- 输入为逻辑 1:PMOS 关断,NMOS 导通,输出被下拉到低电平。
因此输出逻辑值与输入相反,称为反相器(inverter)或 NOT 门。
这里使用的是第一层近似。真实 MOSFET 的导通不是零电阻,关断也不是绝对零电流,输出节点还带有电容。第 2 章会建立更可靠的数字开关模型,第 3 章再分析输入从低到高连续变化时两只管怎样共同决定输出。
7. 数字电路为什么能恢复电平
假设前一级本来希望输出 1.2 V,却因为小幅噪声只得到 1.05
V。只要后一级仍把 1.05 V 判为逻辑
1,后一级反相器就会将自己的输出主动拉向
GND。再经过一级反相器,输出又会被主动拉向
V_DD。小幅的幅值偏差没有逐级照搬,而是在逻辑门的主动驱动中被压回正常范围。
这种作用称为逻辑电平恢复。它依赖三个条件:
- 前级输出落在后级保证识别的输入范围内;
- 逻辑门在转换区具有足够的电压增益,能把输入差异放大成接近电源端点的输出;
- 信号变化留有足够时间,输出节点能够完成充电或放电。
图 1-3 展示了“有偏差的输入—重新判定—主动驱动”的过程。绿色箭头表示电平恢复,橙色区域表示超过接口容许范围后无法保证结果。
图 1-3 小扰动可被后级逻辑门恢复,越过判定边界的扰动可能改变逻辑结果
工程上用噪声容限(noise margin)衡量驱动端保证输出与接收端判定阈值之间的电压余量。正式公式和电压传输特性将在第 3 章给出。本章先抓住本质:噪声容限是信号在仍保持原逻辑含义时能够承受的电压扰动空间。
数字抽象也有边界。噪声过大、电源过低、输出负载过重或信号变化太快,都可能让接收端看到不合法电平或来不及稳定。数字设计不是忽略模拟效应,而是在明确条件下把它们封装成电平、延迟、功耗和时序约束。
8. 六个抽象层次
一块现代数字芯片可能包含数十亿只晶体管。若设计每个功能时都同时追踪载流子、电流、逻辑关系和软件需求,复杂度会失控。工程师通过抽象层次把问题分开处理。
观察图 1-4 时,从下向上看“由什么实现”,再从上向下看“要实现什么”。
图 1-4 数字 IC 的六个常用抽象层次及相邻层之间的关系
8.1 器件层
对象是 MOSFET、PN 结、电容和互连。这里研究阈值电压、载流子输运、漏电和寄生效应。你的半导体物理与工艺知识主要位于这一层。
8.2 电路层
对象是反相器、NAND 门、锁存器等晶体管网络。这里关心节点电压、充放电路径、延迟、功耗和噪声容限。
8.3 门级
对象是 NOT、AND、OR、多路选择器和触发器等逻辑单元。晶体管内部细节被单元的逻辑功能和时序特性取代。这里常用真值表和逻辑表达式。
8.4 寄存器传输级
寄存器传输级(register-transfer level, RTL)描述寄存器在时钟边沿保存什么,以及寄存器之间的数据如何经过组合逻辑传输。Verilog/SystemVerilog 常用于表达这一层。
8.5 系统层
对象是数据通路、控制器、存储器、处理模块和接口。这里关注模块如何协作完成交通灯控制、运算或数据处理任务。
8.6 物理实现层
对象是标准单元实例、时钟树、互连和版图。这里检查逻辑功能能否在选定工艺、电压、温度和芯片面积下满足速度、功耗与可靠性要求。
抽象不是割裂。一次时序失败可能从系统要求开始,沿 RTL 路径定位到某串门,再落到单元驱动能力和互连电容。选对起点后,才逐层深入需要的细节。
9. 组合逻辑与时序逻辑的第一次见面
数字系统中的电路可以先分成两大类。
组合逻辑的输出只由当前输入决定。例如门禁系统同时检查“卡片有效”和“密码正确”,两个条件此刻都满足就开门。输入相同,理想逻辑输出就相同。
时序逻辑还要考虑过去保存的状态。例如交通灯下一步显示什么,不只取决于车辆请求,还取决于当前是主路绿灯、主路黄灯还是支路绿灯。电路需要存储“现在处于哪个阶段”。
本章只建立区分。第 6~10 章系统学习组合逻辑,第 11~16 章学习存储元件和时序系统。
10. 数字 IC 怎样从需求变成芯片
图 1-5 展示一条简化但完整的设计链。阅读时注意每一步产生的成果,以及后一步如何检查前一步。
图 1-5 从功能需求到制造测试的数字 IC 设计链条
- 需求与架构:确定芯片做什么、速度多快、允许多少功耗,并划分模块。
- RTL 设计:用寄存器、组合逻辑和时钟行为表达硬件结构。
- 功能验证:通过测试和检查确认 RTL 实现了规格。
- 逻辑综合:将 RTL 映射为工艺库中的逻辑门和触发器,形成门级网表。
- 物理实现:放置标准单元,构建时钟树,连接信号并提取互连寄生参数。
- 签核:检查时序、功耗、版图规则和版图与电路的一致性。
- 制造、封装与测试:把版图转换为掩模和晶圆结构,封装后筛查制造缺陷并验证功能。
流程中存在反馈。例如布局后的长互连使延迟超标,设计可能返回综合或 RTL 阶段调整。工艺知识贯穿其中:器件速度和漏电决定单元特性,设计规则限制版图,工艺波动进入时序与功耗分析。
11. 完整例题
例题 1:判断输入电平
某 1.2 V 数字接口规定:接收端的 \(V_{IL(max)}=0.30\ \text{V}\),\(V_{IH(min)}=0.80\ \text{V}\)。依次输入 0.18 V、0.30 V、0.52 V、0.80 V 和 1.06 V,判断接收端是否保证识别。
分析路线:只比较输入电压与两个接收阈值,不按“更接近 0 V 还是 1.2 V”猜测。
| 输入电压 | 与阈值的关系 | 保证的逻辑解释 |
|---|---|---|
| 0.18 V | 小于 0.30 V | 逻辑 0 |
| 0.30 V | 等于 \(V_{IL(max)}\) | 逻辑 0 |
| 0.52 V | 位于 0.30~0.80 V | 不保证 |
| 0.80 V | 等于 \(V_{IH(min)}\) | 逻辑 1 |
| 1.06 V | 大于 0.80 V | 逻辑 1 |
结果检查:所有电压都位于 0~1.2 V,但只有落入规定低、高区间的电压才有保证的逻辑解释。合法物理范围和合法逻辑电平不是同一概念。
变式:若噪声把 0.80 V 拉低 50 mV,输入变为 0.75 V,就进入不保证区。处在阈值边界的信号没有抗负向扰动余量。
例题 2:为问题选择抽象层次
下面五个问题分别应优先从哪个层次开始分析?
- 温度升高后某 NMOS 的漏电明显增大。
- 一个 NAND 门的逻辑输出与真值表不符。
- 状态机比规格提前一个周期发出完成信号。
- 综合后的最长路径不能满足目标时钟周期。
- 布线后某区域拥塞严重。
解答:
- 从器件层开始,因为问题直接涉及温度与漏电机制。
- 从门级开始检查逻辑连接和输入组合;若门本身异常,再下钻到电路层。
- 从 RTL/系统层开始检查状态转移和周期定义。
- 从门级与物理时序路径开始,检查逻辑深度、单元延迟和互连;必要时返回 RTL 改结构。
- 从物理实现层开始,检查单元密度、宏单元位置和布线资源。
结果检查:选择抽象层次不是永久停留在该层,而是找到最有效的调查入口。
变式:若第 4 项在 RTL 仿真中功能完全正确,仍不能排除时序失败。功能正确回答“算得对不对”,时序分析回答“能否在规定时间内算完”。
例题 3:追踪一个交通灯控制比特
系统要求支路进入绿灯时,输出
side_green=1。这一事实可以逐层描述:
- 系统层:当前交通状态允许支路通行。
- RTL 层:状态寄存器处于
SIDE_GREEN,译码逻辑令side_green为 1。 - 门级:若干逻辑门根据状态位产生高逻辑输出。
- 电路层:输出级上拉路径导通、下拉路径关断,负载节点被充电。
- 器件层:PMOS/NMOS 的栅压改变通道导电能力,电荷流入输出电容。
- 物理实现层:标准单元和金属互连把这一电平送到目标端口。
同一个“1”在不同层次有不同描述,但这些描述必须彼此一致。若 RTL 说输出为 1,而物理路径来不及充到接收端认可的高电平,芯片仍会失败。
12. 常见误区与反例
误区 1:逻辑 1 就是
V_DD
反例:在前面的接口中,1.06 V 和 0.80 V 都被保证识别为逻辑 1,而它们都不等于 1.2 V。
误区 2:不保证区等于固定的“半高半低”状态
不保证区表示规格不承诺判定结果。不同芯片、温度或噪声条件可能给出不同结果,不能把它当作第三个稳定逻辑值使用。
误区 3:数字电路不需要考虑模拟现象
电平、延迟和功耗都来自连续电压、电流与电荷。数字抽象把模拟细节整理为可管理的边界条件,并没有让这些物理现象消失。
误区 4:RTL 是按行运行的软件
RTL 描述的是同时存在的硬件连接和受时钟控制的状态更新。程序文本有先后顺序,硬件模块通常并行工作。第 19 章会专门建立这种思维。
误区 5:功能正确就能按任意速度运行
输出节点充放电需要时间,逻辑路径也有传播延迟。时钟太快时,正确结果可能尚未到达就被下一级采样。
13. 工程中的实际意义
抽象层次让大规模设计成为可能:单元库开发者把晶体管网络表征为逻辑功能、延迟和功耗模型;RTL 设计者使用这些模型构建系统;物理设计工具再把逻辑结构映射到实际版图。每一层都向上一层提供可用接口,同时保留返回下层排查问题的路径。
对具有器件和工艺背景的学习者而言,关键转变是把熟悉的物理参数连接到数字指标:阈值电压影响开关行为,迁移率和尺寸影响驱动能力,寄生电容影响延迟与动态功耗,漏电形成静态功耗,工艺波动影响电平和时序裕量。后续章节会逐步建立这些连接。
14. 本章知识链
连续电压/电流
↓ 接收端按阈值解释
逻辑 0 与逻辑 1
↓ 按格式组合
比特与数据
↓ 用逻辑门处理并用存储元件保存
组合逻辑与时序逻辑
↓ 用不同抽象层次控制复杂度
RTL、系统与物理实现
↓ 经过验证、综合、布局布线和签核
可制造、可测试的数字芯片
15. 本章小结
- 数字信号的物理载体连续变化,0 和 1 是电路依据电平范围作出的离散解释。
- 逻辑值、物理电压和数据含义属于不同层次,不能混为一谈。
- 不保证区表示接收端规格不承诺判定结果,设计应让稳定信号远离该区域。
- 逻辑门通过主动上拉或下拉恢复合法电平,小扰动不必逐级累积。
- 数字抽象成立依赖电平、噪声、负载和时间等条件。
- 器件、电路、门级、RTL、系统和物理实现层描述同一芯片的不同侧面。
- 数字 IC 设计从需求出发,经 RTL、验证、综合、物理实现和签核后进入制造测试。
16. 练习
16.1 基础题
- 用一句话分别定义物理信号、逻辑状态和数据含义。
- 为什么逻辑 0 不要求节点电压严格等于 0 V?
- 某输入的
V_IL(max)=0.25 V、V_IH(min)=0.70 V。判断 0.10 V、0.40 V、0.74 V 的逻辑区域。 - 写出 CMOS 反相器在输入为逻辑 0 和逻辑 1 时的主要导通路径。
- 组合逻辑与时序逻辑的核心区别是什么?
16.2 分析题
- 某信号通常为 0.95 V,接收端保证高电平阈值为 0.80 V。它能承受多大的负向电压扰动而仍不低于保证高电平阈值?
- 一位工程师说:“功能仿真输出正确,所以版图后的芯片一定正确。”指出这句话遗漏的两个检查维度。
- 将下列对象匹配到最合适的抽象层次:状态寄存器、阈值电压、NAND 真值表、布线电容、交通灯工作模式、反相器输出波形。
- 为什么逻辑电平恢复需要逻辑门主动连接电源或地,而不能只依靠给输入电压贴上 0/1 标签?
16.3 综合题
- 用 150~250 字解释:由非理想 MOSFET 构成的数字系统为什么仍能可靠处理二进制信息?回答中必须包含电平范围、阈值、恢复作用、噪声边界和时间条件。
展开查看练习答案
基础题答案
- 物理信号是随时间变化的电压、电流或电荷;逻辑状态是电路对物理信号作出的离散解释;数据含义是系统赋予一组逻辑位的编码意义。
- 接收端按照电压范围判定逻辑值。实际节点会受到压降、漏电和噪声影响,只要仍处于保证低电平范围,就能表示逻辑 0。
- 0.10 V 属于可靠低电平区;0.40 V 属于不保证区;0.74 V 属于可靠高电平区。
- 输入为 0 时,PMOS 导通并把输出上拉至
V_DD,NMOS 关断;输入为 1 时,NMOS 导通并把输出下拉至GND,PMOS 关断。 - 组合逻辑的理想输出只取决于当前输入;时序逻辑还取决于内部保存的历史状态。
分析题答案
- 允许的负向扰动为 \(0.95-0.80=0.15\ \text{V}\)。若要求“仍高于”而不是“仍不低于”阈值,实际设计还需保留正的额外裕量。
- 至少遗漏了时序和物理可实现性检查。版图寄生参数可能使路径延迟超标;电源完整性、布线规则或信号完整性也可能使实际电平和波形不满足要求。
- 状态寄存器—RTL 层;阈值电压—器件层;NAND 真值表—门级;布线电容—物理实现层;交通灯工作模式—系统层;反相器输出波形—电路层。
- 标签不会改变电荷状态。后级门需要通过导通的晶体管网络给负载电容充电或放电,才能把受扰动的输入解释转化为接近电源或地的输出电平。
综合题参考答案
数字系统把连续电压划分为可靠低电平、不保证区和可靠高电平。接收电路用输入阈值解释 0 和 1,因此同一逻辑值可以对应一段电压范围。逻辑门中的晶体管网络会主动给输出节点充电或放电,把仍在合法范围内但带有小幅偏差的输入转换为接近电源端点的输出,这形成电平恢复。驱动端保证输出与接收端阈值之间的余量构成噪声边界。只要噪声没有越过边界、负载没有超过驱动能力,并且信号在采样前有足够时间稳定,非理想 MOSFET 构成的电路就能可靠承载二进制信息。
17. 自测清单
在进入下一章前,请确认自己能够不看正文完成以下任务:
18. 下一章衔接
本章暂时把 MOSFET 看成受栅压控制的开关。这个模型为什么对数字分析有用?NMOS 与 PMOS 传输高、低电平时有什么差异?所谓“导通”又为什么不等于零电阻?第 2 章将把已有的器件知识转化为可用于分析数字电路的开关模型。