计算机中的晶体管:驱动数字世界的微小开关
Source: Dev.to
抱歉,我无法直接访问外部链接获取文章内容。请您把需要翻译的文本粘贴到这里,我会帮您翻译成简体中文,并保持原有的格式、Markdown 语法以及代码块和 URL 不变。
什么是晶体管?
A 晶体管 是一种微小的电子元件,能够 控制电流的流动。在计算机中,晶体管主要充当 开关 和 放大器。
简而言之,晶体管可以:
- 让电流流通(开)
- 阻止电流流通(关)
这种 开/关 行为直接映射到 二进制逻辑:
- 开 →
1 - 关 →
0
计算机中的每一次计算、比较和指令,最终都归结为数十亿个如此微小的 开/关 决策,以极快的速度进行。
为什么晶体管取代了真空管
在晶体管出现之前,计算机使用 真空管 来控制电信号。真空管可以工作,但存在严重问题:
- 体积大且笨重
- 耗电量大
- 产生过多热量
- 容易频繁故障
1947 年在贝尔实验室发明的晶体管改变了一切。与真空管相比,晶体管具有:
- 更小巧
- 更可靠
- 更快
- 能源效率高
- 大规模生产成本更低
这一突破使得现代计算机、笔记本电脑和智能手机成为可能。
晶体管的工作原理(概念层面)
虽然晶体管背后的物理原理可能相当复杂,但核心概念很简单。
晶体管有 三个端子:
- 输入(控制)
- 输出
- 公共参考(地或电源)
在输入端施加的微小电信号可以控制输出端更大的电流流动。
在数字计算机中,这种行为被用作 二进制开关:
- 若存在控制信号 → 电流流动
- 若不存在控制信号 → 电流停止
通过组合大量晶体管,我们可以构建逻辑决策系统。
晶体管作为逻辑门
单个晶体管是有用的,但真正的威力在于晶体管的组合。
一组晶体管形成逻辑门,例如:
- 与(AND)
- 或(OR)
- 非(NOT)
- 与非(NAND)
- 或非(NOR)
- 异或(XOR)
这些逻辑门是以下部件的构建块:
- 加法器(Adders)
- 乘法器(Multipliers)
- 寄存器(Registers)
- 存储单元(Memory cells)
- 控制单元(Control units)
每条 CPU 指令——无论是 if 语句、循环还是函数调用——都是通过由晶体管构成的逻辑门网络来执行的。
CPU内部的晶体管
现代处理器在单个芯片上集成了 数十亿个晶体管。
- 早期的 CPU 只有几千个晶体管
- 现代的 CPU 和 GPU 拥有 数百亿个
在 CPU 内部,晶体管用于构建:
- 算术逻辑单元(ALU)
- 寄存器
- 缓存存储器
- 指令解码器
- 控制逻辑
每个时钟周期,海量的晶体管会以精确的模式开关,以执行指令。
晶体管与存储
晶体管不仅用于计算;它们也是 存储 的关键。
SRAM(缓存存储)
- 每位使用多个晶体管
- 极其快速
- 用于 CPU 缓存
DRAM(主存)
- 使用更少的晶体管加电容器
- 比 SRAM 慢
- 用作系统 RAM
Flash Memory(SSD,USB)
- 使用能够在断电后保持数据的晶体管
- 非易失性存储
没有晶体管,这些存储技术都不存在。
摩尔定律与晶体管缩放
数十年来,芯片上的晶体管数量大约 每两年翻一番,这一定律被称为 摩尔定律。
这带来了:
- 更快的计算机
- 更低的功耗
- 更小的设备
- 更低的每次计算成本
尽管物理极限正在放慢这一趋势,晶体管创新仍在通过以下方式持续发展:
- 更小的制造工艺
- 3D 芯片设计
- 专用处理器
为什么晶体管对程序员很重要
即使你编写的是高级代码,晶体管仍然很重要。
了解晶体管可以帮助你:
- 了解性能限制
- 理解低层优化为何有效
- 更有效地学习计算机体系结构
- 编写更好的系统层代码
- 推理内存、缓存和并发
在最低层面上,你编写的每个程序都会转化为晶体管开关的模式。
Conclusion
晶体管是数字时代的无形引擎。它们将电能转化为逻辑,逻辑转化为计算,计算则产生从简易计算器到先进人工智能的各种应用。
每个应用、网站、游戏和操作系统最终都依赖于数十亿个微小晶体管以惊人的速度开关(ON 和 OFF)。理解这一基础可以更深入地洞悉计算机的真实工作原理。
软件可以塑造我们的想法,但 晶体管让这些想法变为现实。