从二极管到集成电路,芯片背后的硬件知识你都知道吗?

面包板社区 2019-07-18 17:00


一、前言


我们都知道芯片,也知道芯片技术在21世纪是最重要的技术之一,但很少有人能知道芯片技术的一些细节,如芯片是如何构造的、为什么它可以运行程序、芯片又是如何被设计制造出来的等等。本文就尝试从最底层的二极管开始,逐一讲讲二极管、mos管、逻辑门电路、集成电路、大规模集成电路是如何逐步构造成我们所熟知的“芯片”。


二、从二极管到逻辑门电路


二极管


二极管是大家熟知的基本器件之一,可以说二极管的发明和大规模使用是现代工业腾飞最重要的基础之一。二极管的特性就是电流单向导通,如下图所示,一般情况下电流只能从A到B而不能从B到A,且这种单向导通还有个特点就是施加的电压必须大于某个数值,如硅二极管为0.5V才能导通,且导通后继续增加电压会导致电流大幅增加(相当于电阻下降)。

在逻辑上可以这样理解:施加在二极管上的电压小于0.5V时它是不通电的(表现为极高的电阻),当电压等于0.5V时二极管突然就导通了(表现为极低的电阻)。所以我们总结一下二极管的特性:


1、只能单向导通

2、施加电压低于0.5V时完全不导通

3、施加电压等于0.5V时突然完全导通


事实上,科学家们正是利用上述的简单特性构建了庞大复杂的电子世界。


三极管


在二极管的基础上,科学家们进一步研究出了三极管。三极管的特点就是增加了一极,不由施加在两端的电压大小决定是否导通,加入了第三极,使用三极间压差来决定是否导通。如下图所示,工作时b、c、e极都施加了一定的电压,这里不探究具体电压差是如何导致c、e间导通的,简单来说就是通过各极间压差实现c、e间先是逐渐导通(表现为压差增大电流增大),而后变为完全导通(表现为压差增大而电流不变)。且这种特性也是挑方向的,只能是c到e的导通而不能是e到c的导通(即施加反向电压再高也不会反向导通)。



逻辑上我们可以做如下总结:


1、只能c到e导通(反向施加电压无法反向导通)

2、压差低于某值A时完全不导通(无电流)

3、压差高于某值A时逐渐导通(电流随压差增大)

4、压差高于另一值B时完全导通(电流不随压差变化)


逻辑门电路


了解了基本器件后,我们再来说说数学。在数学上我们有三个基本逻辑:与、或、非。


与(&):0&0=0、1&0=0、0&1=0、1&1=1

或(|):0|0=0、1|0=1、0|1=1、1|1=1

非(!):!0=1、!1=0


科学家们使用二极管、三极管、电阻、电容在电路上实现了上述的三个基本逻辑,具体表现为:


1)与门:A、B两端同时输入5V则L端输出5V,否则L端输出0V

  


2)或门:A、B任意一端输入5V则L端输出为5V,A、B端同时为0V时L端输出为0V

  


3)非们:A端输入5V则L端输出0V,A端输入0V则L端输出5V

  


这里我们就不探究逻辑门的具体原理了,大家只要知道二极管、三极管的物理特性使得这种逻辑电路运行的非常稳定,以非门为例,当A端输入小于5V时L端输出稳定为5V,当A端等于5V时L端会立即输出为0V(这里忽略了很多电路细节和器件特性)。为便于使用,科学家们使用符号将这三个逻辑门进行了抽象:



为便于使用,我们将其进一步抽象,如下图所示:



从数学上来说,所有复杂的逻辑式最终都可以分解为最基本的三个逻辑组合,我们先温习一下高中的代数课:



那在电路上,是不是就可以使用与、或、非这三个基本的逻辑门电路来分解?


三、从逻辑运算到电路运算


以加法为例


下图是二进制加法的真值表,S是A+B,C是进位。



科学家们使用逻辑式来总结了这个真值表,从真值表到逻辑式的转化是高中代数的基本内容。



我们发现,S和C的输出可以由A与B的逻辑运算得到(一个异或门、一个与门)。那么,如果我们使用逻辑电路来实现逻辑运算,是不是就可以用电路来实现加法?


第一步,我们先用逻辑符号来绘制上述的公式:



第二步,将逻辑符号转为电路(没找到半加器电路,这个是全加器):

第三步,焊接物理电路


逻辑叠加


通过加法的例子我们实现了从逻辑到电路的转变,根据这个原理我们可以简单的实现:


1)减法器


  


2)乘法器


  


3)除法器


  


4)8位加法器


实际上我们发现所有的运算都是逻辑的叠加,逻辑最终可以转化为电路,所以我们可以得出结论:所有的运算最终都可以使用电路实现。


四、从电子电路到集成电路


庞大的电子计算机


看了前面的内容,我们知道了所有逻辑运算都可以使用电路实现,那么加法器、减法器、乘法器、除法器都是可以实现的,事实上一开始的“计算机”就是用于做这些加减乘除运算。使用逻辑门的好处显而易见,所有逻辑叠加问题都可以用电路的“叠加”来解决,无论是10位的加法、100位的减法、还是1000位的乘法,理论上来说只要二极管、三极管、电容电阻足够我们都可以实现。但是随着计算需求越来越大,计算器的体积变得越来越大,“耗电”成了一个大问题。下图是第一台通用计算机ENIAC,它可以每秒5000次加法或400次乘法运算,但是它使用了17,468根真空管(电子管)7,200根晶体二极管,1,500 个中转,70,000个电阻器,10,000个电容器,1500个继电器,6000多个开关。抛开成本因素,光耗电量就是一个天文数字。



MOS管与集成电路


体积庞大、造价高昂、耗电量成为制约计算机的核心问题所在,如果有办法缩小元器件的体积,体积、造价、耗电的问题都迎刃而解了。在这个需求的基础上集成电路诞生了,它不是使用电路将各种元器件连接起来,而是将各种元器件、线路直接“做”到了硅片上。


下图是一个典型的PNP三极管示意图,本质上P与N的材质是一样的(硅),只是掺杂了不同的杂质改变了其电特性(二极管、三极管就是这么制造的)。所以有没有办法在一片硅上面按需求“做”出P结、N结,而后用“线路”将各P结和N结连接成电路,只要前期规划做好,数量庞大的三极管、二极管、线路就可以集成到一个硅片上了。



mos管是金属(metal)、氧化物(oxide)、半导体(semiconductor)场效应晶体管,名字复杂其实本质就是由金属、氧化物、半导体组成的元器件。前面说到要将三极管、二极管、线路集成到硅片上,其中MOS管中的“半导体”就是P结或N结,用来组成三极管或二极管。“金属”就是连接各结的线路,“氧化物”就是各结间用以绝缘的隔离层。简单点说,集成电路就是在硅片上制造了很多的半导体(PN结)、金属(线路)、氧化物(绝缘层),这些半导体、金属、氧化物组成的器件我们称之为MOS管,无数MOS管按逻辑电路进行组合就是所谓的集成电路了。


集成电路工艺


现在我们找到了办法将器件缩小,下一步就是如何实现PN结、金属线路、氧化物。下图是一个典型的PNP晶体管剖面示意图



在工艺上要做成这样需要很多步骤,大概有:


1)切割:将工厂生产的硅锭切割成片



2)影印:在硅片上涂一层光阻物质(想象成防护膜),然后按设计要求溶解部分光阻物质(让部分区域露出来)。工艺上是在紫外灯上面加一层有很多孔的遮罩,被紫外灯照射的光阻物质就溶解了,没有照射的地方还有保护。如下图所示,通过影印将部分光阻清除,露出部分硅片。



3)刻蚀:露出该露的、遮住该遮的部分后,就使用刻蚀技术将没被遮住的区域“蚀”出一个沟,如下图所示。



4)掺杂:有了沟之后就使用原子轰击这个“沟”使其掺入杂质形成P型衬底



5)沉积:接着在P型衬底上沉积一层N型硅



就这样反复影印、刻蚀、掺杂、沉积就得到了我们需要的MOS管。


五、从集成电路到CPU


我们将一块晶圆上制作了大量MOS管的叫集成电路,MOS管特别多的叫大规模集成电路,MOS管超级超级多的叫超大规模集成电路,其实就是工艺进步了。一块芯片上集成的电子器件越多、电路越复杂能实现的功能也就越多,所以我们不能只满足于做加减乘除这样简单的运算。但当时的科学家并没有“未来”的视野,他们当时急需的问题不是发明CPU,而是解决数据如何存储的问题。如果数据可以存储在电路里,那就可以实现很多复杂的操作,比如简单的编程。


D触发器


为了将数据“锁”在电路里,科学家们使用逻辑门组成了D触发器。其中CP是时钟控制信号(这里将其当做一个控制信号即可),当CP值为1时D输入一个信号则Q输出同样的信号,当CP值不为1时D输入任何信号则Q输出不变,如此就实现了将D信号“锁”在了Q。


寄存器


数个D触发器的组合就实现了一个寄存器,如下图所示就是一个4位寄存器,可以存储一个4位的数据,如“0101”:



根据寄存器的工作内容又细分了:指令寄存器、程序计数器、地址寄存器、通用寄存器等等。


运算器


将数个寄存器与前面所说的加、减、乘、除计算电路结合起来就是运算器了,运算器的作用就是对寄存器(一个或多个)中的内容进行算数计算,而后将结果存入寄存器。



控制器


上图可以看到,运算器内有数个寄存器,那何时执行计算任务、计算那几个寄存器的数据、最终存储到哪里呢,这些都由控制器来完成。控制器由指令寄存器、指令译码器、程序计数器、堆栈指针、数据指针组成,它从指令寄存器中获取指令而后根据指令从外部存储中获取数据、控制运算器执行运算、获取下一步指令等等。这一且都是通过“时钟控制信号”和复杂的逻辑运算实现的。


对于时钟控制信号,可以理解为一个节拍器,时钟源向CPU发送有节奏的高低电平信号,让控制器内部逻辑电路被激活,该逻辑电路又根据指令寄存器的内容生成各种控制信号指挥运算器读取数据、执行运算、读取下一步指令、存储计算结果等等。下图就是一个完整的控制器与运算器的示意。



存储器


存储器又叫高速缓冲存储器,它的作用就是存储即将交付CPU处理的数据并保存CPU处理的结果。实际上各种控制信号、数据都是放置于存储器中,控制器从这里获取下一步的数据和指令。


CPU


存储器、控制器、运算器的结合就是一个基本的CPU了,等等?似乎CPU没有什么特殊的功能啊,那它是如何执行这么多复杂工作的呢?实际上CPU的原理就是这么简单。当我们写好代码后,编译器就将这些代码翻译成CPU可以识别的数据格式,而后按顺序放入存储器中即可,控制器会根据预设的程序按节奏从存储器中获取指令和数据,控制运算器处理这些数据,最终实现代码功能。


六、CPU运作示例


为便于理解其工作原理,我们做一个简单的示例。比如我们写了一段代码:


A=1;

B=2;

C=A+B;

输出C到屏幕


编译器编译时可能会做如下翻译:


1)将0001放入寄存器A、将0010放入寄存器B

2)执行寄存器A+寄存器B,结果放入寄存器C

3)读取屏幕显示器的存储地址,放入寄存器E

4)根据寄存器E的数据(屏幕显示器地址),将寄存器C的数据(运算结果)写入该存储地址


至此CPU就实现了一个简单的计算和屏幕显示。当然具体操作过程可能会比这个复杂无数倍。但是CPU的核心功能就是简单的算数运算,以及各种数据的读写。而编译器的工作就是将复杂的代码翻译成简单的算数运算和数据存储、数据移动。


七、总结


CPU/集成电路/芯片当然不是这篇短文能讲述清楚的,篇幅所限我们主要精力放在了逻辑电路部分,如果想要了解更多关于CPU的知识我建议大家可以看《CPU自制入门》和《自己动手写CPU》这两本书,书上前几章对CPU的介绍还是非常有意思的。


作者: 毛大闲, 来源:面包板社区

链接: https://www.mianbaoban.cn/blog/uid-me-3887969.html

版权声明:本文为博主原创,未经本人允许,禁止转载!




↓↓ 点击图片参与活动 ↓↓


------------------------

与工程师一起改变世

面包板社区 面包板社区——中国第一电子人社交平台 面包板社区是Aspencore旗下媒体,整合了电子工程专辑、电子技术设计、国际电子商情丰富资源。社区包括论坛、博客、问答,拥有超过250万注册用户,加入面包板社区,从菜鸟变大神,打造您的电子人脉社交圈!
评论
  • 高速先生成员--黄刚这不马上就要过年了嘛,高速先生就不打算给大家上难度了,整一篇简单但很实用的文章给大伙瞧瞧好了。相信这个标题一出来,尤其对于PCB设计工程师来说,心就立马凉了半截。他们辛辛苦苦进行PCB的过孔设计,高速先生居然说设计多大的过孔他们不关心!另外估计这时候就跳出很多“挑刺”的粉丝了哈,因为翻看很多以往的文章,高速先生都表达了过孔孔径对高速性能的影响是很大的哦!咋滴,今天居然说孔径不关心了?别,别急哈,听高速先生在这篇文章中娓娓道来。首先还是要对各位设计工程师的设计表示肯定,毕竟像我
    一博科技 2025-01-21 16:17 159浏览
  • 现在为止,我们已经完成了Purple Pi OH主板的串口调试和部分配件的连接,接下来,让我们趁热打铁,完成剩余配件的连接!注:配件连接前请断开主板所有供电,避免敏感电路损坏!1.1 耳机接口主板有一路OTMP 标准四节耳机座J6,具备进行音频输出及录音功能,接入耳机后声音将优先从耳机输出,如下图所示:1.21.2 相机接口MIPI CSI 接口如上图所示,支持OV5648 和OV8858 摄像头模组。接入摄像头模组后,使用系统相机软件打开相机拍照和录像,如下图所示:1.3 以太网接口主板有一路
    Industio_触觉智能 2025-01-20 11:04 194浏览
  •  万万没想到!科幻电影中的人形机器人,正在一步步走进我们人类的日常生活中来了。1月17日,乐聚将第100台全尺寸人形机器人交付北汽越野车,再次吹响了人形机器人疯狂进厂打工的号角。无独有尔,银河通用机器人作为一家成立不到两年时间的创业公司,在短短一年多时间内推出革命性的第一代产品Galbot G1,这是一款轮式、双臂、身体可折叠的人形机器人,得到了美团战投、经纬创投、IDG资本等众多投资方的认可。作为一家成立仅仅只有两年多时间的企业,智元机器人也把机器人从梦想带进了现实。2024年8月1
    刘旷 2025-01-21 11:15 666浏览
  • 故障现象 一辆2007款日产天籁车,搭载VQ23发动机(气缸编号如图1所示,点火顺序为1-2-3-4-5-6),累计行驶里程约为21万km。车主反映,该车起步加速时偶尔抖动,且行驶中加速无力。 图1 VQ23发动机的气缸编号 故障诊断接车后试车,发动机怠速运转平稳,但只要换挡起步,稍微踩下一点加速踏板,就能感觉到车身明显抖动。用故障检测仪检测,发动机控制模块(ECM)无故障代码存储,且无失火数据流。用虹科Pico汽车示波器测量气缸1点火信号(COP点火信号)和曲轴位置传感器信
    虹科Pico汽车示波器 2025-01-23 10:46 74浏览
  • 飞凌嵌入式基于瑞芯微RK3562系列处理器打造的FET3562J-C全国产核心板,是一款专为工业自动化及消费类电子设备设计的产品,凭借其强大的功能和灵活性,自上市以来得到了各行业客户的广泛关注。本文将详细介绍如何启动并测试RK3562J处理器的MCU,通过实际操作步骤,帮助各位工程师朋友更好地了解这款芯片。1、RK3562J处理器概述RK3562J处理器采用了4*Cortex-A53@1.8GHz+Cortex-M0@200MHz架构。其中,4个Cortex-A53核心作为主要核心,负责处理复杂
    飞凌嵌入式 2025-01-24 11:21 18浏览
  • 嘿,咱来聊聊RISC-V MCU技术哈。 这RISC-V MCU技术呢,简单来说就是基于一个叫RISC-V的指令集架构做出的微控制器技术。RISC-V这个啊,2010年的时候,是加州大学伯克利分校的研究团队弄出来的,目的就是想搞个新的、开放的指令集架构,能跟上现代计算的需要。到了2015年,专门成立了个RISC-V基金会,让这个架构更标准,也更好地推广开了。这几年啊,这个RISC-V的生态系统发展得可快了,好多公司和机构都加入了RISC-V International,还推出了不少RISC-V
    丙丁先生 2025-01-21 12:10 617浏览
  • 2024年是很平淡的一年,能保住饭碗就是万幸了,公司业绩不好,跳槽又不敢跳,还有一个原因就是老板对我们这些员工还是很好的,碍于人情也不能在公司困难时去雪上加霜。在工作其间遇到的大问题没有,小问题还是有不少,这里就举一两个来说一下。第一个就是,先看下下面的这个封装,你能猜出它的引脚间距是多少吗?这种排线座比较常规的是0.6mm间距(即排线是0.3mm间距)的,而这个规格也是我们用得最多的,所以我们按惯性思维来看的话,就会认为这个座子就是0.6mm间距的,这样往往就不会去细看规格书了,所以这次的运气
    wuliangu 2025-01-21 00:15 324浏览
  •     IPC-2581是基于ODB++标准、结合PCB行业特点而指定的PCB加工文件规范。    IPC-2581旨在替代CAM350格式,成为PCB加工行业的新的工业规范。    有一些免费软件,可以查看(不可修改)IPC-2581数据文件。这些软件典型用途是工艺校核。    1. Vu2581        出品:Downstream     
    电子知识打边炉 2025-01-22 11:12 134浏览
  • 数字隔离芯片是一种实现电气隔离功能的集成电路,在工业自动化、汽车电子、光伏储能与电力通信等领域的电气系统中发挥着至关重要的作用。其不仅可令高、低压系统之间相互独立,提高低压系统的抗干扰能力,同时还可确保高、低压系统之间的安全交互,使系统稳定工作,并避免操作者遭受来自高压系统的电击伤害。典型数字隔离芯片的简化原理图值得一提的是,数字隔离芯片历经多年发展,其应用范围已十分广泛,凡涉及到在高、低压系统之间进行信号传输的场景中基本都需要应用到此种芯片。那么,电气工程师在进行电路设计时到底该如何评估选择一
    华普微HOPERF 2025-01-20 16:50 123浏览
  • 临近春节,各方社交及应酬也变得多起来了,甚至一月份就排满了各式约见。有的是关系好的专业朋友的周末“恳谈会”,基本是关于2025年经济预判的话题,以及如何稳定工作等话题;但更多的预约是来自几个客户老板及副总裁们的见面,他们为今年的经济预判与企业发展焦虑而来。在聊天过程中,我发现今年的聊天有个很有意思的“点”,挺多人尤其关心我到底是怎么成长成现在的多领域风格的,还能掌握一些经济趋势的分析能力,到底学过哪些专业、在企业管过哪些具体事情?单单就这个一个月内,我就重复了数次“为什么”,再辅以我上次写的:《
    牛言喵语 2025-01-22 17:10 178浏览
我要评论
0
点击右上角,分享到朋友圈 我知道啦
请使用浏览器分享功能 我知道啦