December 2018

自底向上浅谈可编程数字电路实现原理

文章为原创,转载请注明出处、作者,并贴上超链接

作者:肆水流年

文章有错误和值得改进的地方欢迎批评指正。

前言:电子专业学了挺多东西的,而且很杂,想着吧学了那么久,虽然考试分数不太怎样,但至少还是要有收获,有点自己系统的理解的,便出此文。一方面作为备忘,另一方面也希望能对那些想了解计算机为何能编程,以及底层深究到每个元器件究竟是怎么工作的人有点帮助,再者也帮助痛苦挣扎在模电、数电等学科的工科dog们。

此文涉及知识:模拟电路、数字电路以及微机原理。

将解决的问题:

  • 二极管、三极管在原子层面等的工作原理
  • 放大器的原理
  • 电容过滤直流的原理
  • 各种门电路的原理分析
  • 基本数字电路的分析
  • 可编程数字电路的实现
  • 。。。。。。

我们将从最基础开始,一步步向上延伸,得到我们想要了解的东西。并且尽量避免各种繁杂公式,从原理上定性分析,建立一套对一些基本电路的感性认识,即看到一个电路我们就能知道各种电流流向,一些部分电流的变化将对其他部分产生怎样的影响,是由什么原因引起的等等,在大脑中都应该有自己的一套图像,这在后期看到复杂电路时,因为对各种本质已经了然于胸,并在大脑中已有图像对应,能极大提高读懂电路图的效率。

首先我们要知道现在的数字电路普遍采用的是二进制,即0和1两种状态,为什么呢,因为数字电路就是由一个个的逻辑电路和触发器以及由它们构成的各种组合逻辑电路和时序逻辑电路组成的,而逻辑电路是采用三极管为基础作为数字开关搭建而成,其中的三极管就是一个基本的元器件,在给它一定的电压之后,其输出包含两种状态,高电平(即高于某一水平的电压)和低电平(即低于某一水平的电压),如在51单片机中,5v即为高电平,0v即为低电平,简化理解的话,就想成高电压和低电压就行。

进而,用三极管组成的逻辑电路中,因为三极管的输出电压只在高和低之间变化,最后输出也必定是高或者低了,即我们平时听到的输出为0或1,这里的0和1即是所谓的低电平和高电平了,恰好两种状态,如果用进制表示,那便是二进制了。

所以由这些逻辑电路组成的数字电路为什么是二进制,就是这个原因了,这是由电路组成决定的,而不是我们选定了二进制,是硬件电路对应着二进制。

以上看不懂没关系,下面将会从底层元器件到最后的数字电路一点一点的进行讲解,并尽量避免专业名词,我觉得专业名词越多越容易读晕,毕竟那些如果第一次看是很难直观感受到的,但会利用高中的一些物理化学知识进行阐述,尽力给大家一个感性的认识。

好那么我们现在开始慢慢了解三极管是怎么工作的,为什么就能拿来作为数字开关的组成部分呢?

一.  二极管

先不要着急,在真正进行三极管工作原理之前,有必要先了解一下基础知识,即二极管是怎么工作的,三极管就是在此基础原理上发展而来的。

我们知道二极管是由半导体材料制作而成,如硅和锗等。以下就硅进行此段的讨论。

硅是第14列的元素,核外电子排列如下:

其最外层有4个电子,称为价电子,不易得或失电子,故原子呈电中性。半导体具有晶体结构,原子有序排列,临近的原子间以共价键方式连接,即硅最外层的4个电子分别与周围四个硅原子最外层的一个价电子相互束缚,形成共用电子对,达到8电子稳定结构,如下图:

硅的二维晶格结构图

在室温下,被束缚的价电子会获得足够的随机热振动能量挣脱共价键的束缚,成为自由电子在内部乱漂。

不过这样产生的电子浓度实在太低了,只有大约3.45*10¹²个原子中才能有一个价电子脱离束缚成为自由电子,导电能力可见一斑。

不过我们可以通过在纯净的半导体中添加+3价或+5价的原子来解决导电能力不足的问题,而这种方法叫做掺杂。

以下就“为什么添加特定的原子能显著提高半导体导电能力”讨论一番,不过是我自己的理解,不一定正确,至少在我看来能帮助自己很好的理解和解释,欢迎各位大佬纠错。

进入正题,前面我们说到加+3价的原子就能提高导电性,为什么呢?

因为,如果我们在硅晶体内掺杂入一些3价元素,如硼(在元素周期表第13列)等,那么由于硼是3价元素易得到一个电子(得到电子之后带负电),与周围的硅结合时,这时候硅的一个电子就会被硼捕获,硅最外层的电子就空出了一个位置(叫空穴),只要掺杂入一定量的硼,就会产生相应的空位,当给这个半导体以电压时,便会产生电场,电路里的电子进入这些空位时,在电场的作用下向前运动,进入下一个空穴,就这样不断传递,形成电流。

如果是加入+5价的原子呢?

类比前面的,+5价原子易失去一个电子,带正电,当与周围的Si结合形成8电子稳定结构的时候,会多出一个电子,称为自由电子,当有足够的+5价原子掺杂进半导体时,就会有足够的自由电子,当在半导体两端通电后便会产生电场,推动电子往一个方向移动形成电流。

如果没有掺杂,对于一个纯净的半导体来说,因为硅与周围的其他硅原子的价电子恰好形成8电子稳定结构,不多不少,不产生电子和空位(排除热能激发),所以电子无法通过空位向前传递而导电,也没有办法使通电后来到半导体某端的电子在电场推动下继续前进。产生的电场也无法使电子挣脱束缚而导电。

聊到这里,我们可以进行二极管的讲解了。

二极管就是两个类型不同的半导体组合在一起形成的,其中一半掺杂的是3价原子,另一半掺杂的是5价原子。

前面有说到掺杂3价原子的半导体会有多出的空位,而掺杂5价原子的半导体会有多余的电子游离,如果把他们拼在一起,那么在两种类型半导体的边界处,其中一种半导体中多出的电子就会扩散到另一个半导体中多出的空位处。

注:上图黑色的是电子,白色小圆圈是空位(空穴),P是掺杂3价原子的半导体,N是掺杂5价原子的半导体

边界处一方的电子跑到另一边,而另一方的空位被刚刚的电子占据掉,这就导致电子跑走的那部分半导体在拼接的边界处带正电,而空位被电子填补的那一方半导体的拼接边界处带负电,从而在两半导体拼接的边界处形成一个电场(图中的空间电荷区),阻碍电子从一边扩散到另一边。

电子一边扩散,一边又被内电场阻碍,这两者最后会到达一个动态平衡。

电场方向是从带正电指向带负电的。

如果我们在上图半导体两边加一个电源,而且电源正级加在右边,左边为负级,那么电源形成的电场便和空间电荷区的电场方向一致,将进一步抑制电子从右边扩散到左边(同性相斥,异性相吸),电子将会被左边带负电的离子排斥,或者说被右边带正电的离子吸引,从而无法扩散过去形成电流。

反之,如果我们在上图半导体的左边加的是电源的正级,右边为电源的负级,电源形成的电场方向与内电场方向相反,只要这个电源形成的电场足够抵消半导体内部的那个电场,那么,从电源负级来的电子就能不断补充到半导体右边,进而填充到半导体左边的空位(空穴)处,再返回电源正级。

通过以上分析,我们可以知道,为什么二极管能够单向导电了。

顺便贴两个链接,不过感觉都没有很好的解答我疑惑的关键点,便不在这里详细阐述。

Doping: Connectivity of Semiconductors

Electrons and “holes’’

接下来,我们由二极管迈向三极管。

二. 三极管

1. 双极结型三极管(BJT)

–Bipolar  Junction Transistor

(1)半导体三极管工作原理

有了二极管的知识,三极管解释起来就容易多了。

因为三极管就相当于两个二极管的组合,下面的就是三极管了。

BC段组成一个二极管,BE段也可以看成一个二极管。

所以我们可以用二极管那里谈到的知识解决三极管的问题。

左边是实际元器件模拟图,右边是元器件的代表符号

我们来详细解释一下左上图。其中有3个方块,分别是n, p, n。

n对应的就是掺杂3价原子的半导体,叫n型半导体,p对应的就是掺杂5价原子的半导体,叫p型半导体。

为什么这么起名呢?

首先我们要知道,p代表positive(正数,正电),因为掺杂3价原子后,该原子在与硅原子结合时会得到硅的一个电子,而硅空出一个空穴(相当于带正电)参与导电。n代表negative(负号,负电),与5价原子多出的一个自由电子(带负电)参与导电对应。即P或N对应半导体中参与导电的类型,空穴或电子。

C,B,E又是什么意思呢?C是Collector(集电极),B是base(基极),E是Emitter(发射极)。为什么这么起名我猜测是因为电子从发射极发射,最后集结在集电极。

当然还有下面这种组合情况,可类比上面,不再细讲。

那么问题来了,如何才能使下面这个三极管工作起来呢?

左边是实际元器件模拟图,右边是元器件的代表符号

看下图:

我们在BE两端加一个电源 E_BE,则由二极管的讨论我们知道只要电压合适,这将抵消BE之间的内部电场,从而电子可以从电源E_BE负级出发,到达E端,再进入B端,再返回E_BE正级。

而在BC两端,我们加的电源形成的电场方向是与BC端内部电场相同的,这将进一步加大BC的内电场,当来自E端的电子来到B端时,会被这个电场吸引过去,到达E_BC的正级。

一般来说,三极管的基极(B端部分)是很薄的,掺杂浓度也不会特别高,这就导致实际上从E_BE负级来的电子经过E到达B时几乎都是被BC的内电场吸引过去或者扩散过去,经过B端回到E_BE的电流是很小的(此名为基极电流)。

图片是一样的,为了便于对比文字,复制多一张

如果我们改变加在BE两端的电压E_BE的大小,那么经过E端的电子也会随即增加或减小,并在到达B端后几乎都会被BC两端的内电场吸引过去回到上面电源的正级,这里有一个关系,就是BE两端电压控制了最后到达C端的电子,BE连端电压大,则到达C端的电子多,电流就大,而BE两端电压大了后也会影响流回电源E_BE正级的电子数量,对应的就是B端的电流大小。间接的我们可以得到一个关系,即B端的电流大小跟C端的电流大小是正相关的,而我们讲到B端的电流是很小的,而C端电流相对B端是很大的,二者又是正相关关系,即你大,我也大,你小我也小。换种方法说,如果我们改变B端的电流大小,如增大B端电流,那么在C端也会有一个大概按比例放大后的电流输出(其实改变B端电流跟改变BE端电压是一样的,因为电压和电流本来就是正相关的)。缩小同理

这就是我们常说的三极管的放大作用了,其实它放大的是一种变化。

图片是一样的,为了便于对比文字,复制多一张

从这可以看出,如果BE两端的电压E_BE保持一个定值,那么从E_BE负级能够提供到E端的电子也是一定的,这时逐步增加BC两端的电压,其吸引B端电子的能力也逐渐增加,C端的电流也会逐渐增加,直到这个电压几乎能够将来自E端的电子全部吸引过来,这个时候无论再如何增加BC两端的电压也没办法增加C端的电流了,因为E端提供的电子就那么多了。

我们再看一下电流源的概念:

电流源,即理想电流源,是从实际电源抽象出来的一种模型,其端钮总能向外提供一定的电流而不论其两端的电压为多少,电流源具有两个基本的性质:第一,它提供的电流是定值I或是一定的时间函数I(t)与两端的电压无关。第二,电流源自身电流是确定的,而它两端的电压是任意的。

而根据刚刚谈到的三极管的特性,只要BE两端电压一定,流经C端的电流便不随BC两端的电压而改变,根据这一特性我们便可以制作出基本的电流源。

相关链接:镜像电流源 有兴趣可以去了解一下,不感兴趣跳过即可。

三极管的工作原理搞懂了,我们更进一步来分析一下基本的放大电路原理。

(2)半导体三极管组成的放大电路基本原理

下图为基本共射极放大电路(E端,Emitter)。

什么意思呢?

就是指:射极作为公共的输入输出端口的放大电路。

图注:最底端那个符号是接地的意思,可以不用理会。

因为V_s是交流信号(产生正弦波型的电流或电压,简单说就是数学函数y=sin(x)图像的信号).它是作为输入信号而存在的。

而i_c是作为输出而存在,或者把电阻R_c两端的电压作为输出也行,因为i_c变大,根据欧母定律:U = i_c * R_c,R_c两端的电压也会按比列增加。看具体是要哪个作为输出吧,不过这不是重点,不用关注。

以上,输入信号V_s和输出信号i_c的共同端口是E端(射极),所以这是共射极放大电路。

同理还有共集电极(C端),共发基极(E端)的接法,这里不再详细阐述。

那么怎么分析这个电路呢?

初看,相对于初、高中见过的电路好像这个有点复杂,其实,如果前面讲到的知识都已经懂了,再拆分这个电路会变得很简单。别慌,慢慢来。

首先我们已经知道,要让三极管能够工作,必须让BE端能流经电子,也就是需要一个电压在外部提供电场,抵消掉BE端原有的内电场,让电子能够顺利通过E端到达B端。那么起到这个作用就是V_BB了。

除此之外,C端需要将刚刚已经到达B端的电子拉过来,所以便加了一个电源V_cc,其在B端到C端这部分半导体内部产生的电场方向,与B到C端半导体原有的内电场方向是相同的,这将加大其电场强度,而这个电场方向是垂直向下的,也就是它会吸引电子从B端到达C端(电场方向从正级指向负级,在此题中是从上到下,而电子带负电,异性相吸,所以电子将被电场吸引向上运动)。

当然V_cc还被当作放大电流所需的来源。因为电流不能无端放大,肯定要有一个能量来源。

其中R_c的作用相当于一个负载,如家用电器在电路中作为负载一样的存在。

R_b起到限制电流大小的作用,万一V_s增大后与V_BB叠加的电压超过了BE段半导体可承受的电压或电流值,容易烧毁,加个电阻可以防止这个问题。

这样下来,每一部分的作用都很清晰了。

V_s的电压改变,导致BE段的二极管导通的电子发生显著改变,而这些电子最终又是基本被BC段二极管吸引到了C端,从而使i_c(U_Rc)发生显著改变,当然i_B也会发生微小的改变,在V_s较小的时候,可以近似的认为i_B和i_c呈线性关系(正比例),从而电压V_s和Rc两端电压U_Rc呈线性关系,所以就起到了电压的放大作用,即V_s经过三极管后放大为U_Rc,也可以说电流i_B经过三极管后被放大为i_c。

如图为电压放大:

当然,凡事不可能完美,这里也存在一些其他可能出现的问题。

  1. 如果V_s叠加V_BB后仍然过小,不能导通BE段二极管,i_B将变为0,i_c也将趋近于0,为什么不是零呢?我觉得应该是温度导致BE段二极管内还有部分电子被激发可以穿越过电场到达C端。呃,这么说i_B也只是趋近0?不管,不是关键点,有咩有大佬有更专业的解释?
  2. 如果V_s叠加V_BB后过大,则i_c达到一定程度,导致Rc分压过大,加在CB或者说CE两端的电压就将减小(因为Vcc提供的电压是分给Rc和CE段的,而Vcc一定,一个电压大了,另一个必然小了),使得CB段二极管的内部电场不能在单位时间内将来自E端的电子全部吸引过来,就算E端电子再多,i_c也不会再变大,因为已经达到吸引电子的极限了。

以上2种情况都会导致输出的电压或电流跟输入的电压、电流失去线性关系,输出波形形状会跟输入的有很大出入,这就是所谓的信号失真了。1对应截止失真;2对应饱和失真,因为电流饱和了嘛。

这个电路虽然已经实现了放大功能,但是也只是原理图,不能在实际中应用,存在问题:交流信号没有接地,很容易受到干扰。

为了解决这个问题,我们可以去掉电源V_BB,改用一个电阻Rb1分压,给BE段二极管一个电压差,因为加上电源V_BB本质上也是给BE段二极管提供电压差,从而产生电场抵消内部电场导通二极管。如下图左:

注意:Vcc是指电源正级,图下方的类似垂直的符号代表接地,其实就是电源负级,二者可以用一个电源符号等效连接起来

我们可以看到V_s直接接地了,这样可以减少干扰。但为了让V_s不受来自流经Rb1的电流i1的影响,加了一个电容Cb1,它的作用是通交流,隔直流。这样可以阻隔直流的经过而又不影响加在BC两端的交流信号V_s。

Rb2和Rb1一样,是用来分压代替电源的。因为电流从Vcc出发,从上到下流经Rb1,产生了一个电压下降(压降),然后又从B端向下流经Rb2,又产生一个电压下降,也相当于一个电源,使得电路可以提供一个合适的电压差在BE段二极管内产生电场,用来抵消原有内电场,使BE段导通。一句话总结就是:Rb1和Rb2共同作用,使电路在B端获得一个合适的电位,使三极管BE段导通。

同理Rc是使三极管在C端(集电极)获得一个合适的电压,增强CB段内二极管的管内电场,吸引BE段导通后“发射”过来的电子。

注意:Vcc是指电源正级,图下方的类似垂直的符号代表接地,其实就是电源负级,二者可以用一个电源符号等效连接起来

Rsi的话,看上去应该是表示Vs的内部电阻,这个不是关键点,也略过。

Cb2也是隔直流,通交流,所以i_c的变化在通过Cb2后会只剩下交流分量,最后到达负载R_L,并输出为电压Vo。

如上图,左边的图是电流还没有经过电容Cb2时的电压(位),经过Cb2后变为右边的波形,即为输出电压Vo。波形是完全一样的,只是少了一个直流分量。

通俗解释一下什么是直流分量,什么是交流分量。

一般sin或cos这样的函数表示的电流就是纯交流信号,对应的就是上图右边的图形,如果在此基础上加个常数,整个函数图形会上移。

上图左边的图形可以用函数表示为 V = sin (t) + V_b

对于信号V, 加的这个常数是V_b,这个V_b就是直流分量,而sin(t)对于V来说就是交流分量了。

所以对于上图左边的图形对应的信号,可以看作一个交流信号叠加一个直流信号而产生。

那为什么电容能够阻隔直流,通交流呢?

如果只是直流而且电流大小不变时,电容只有一边有电荷积累,将会达到稳定状态,不会放电,这个时候除了充电的那一瞬间不会产生电流。

而如果含有变化的电流,在电流上升,或说电压上升时,电容充电,积累电荷,而当电压或说电流减小时,电容放电,充电和放电的方向是相反的,给我们一种交流穿过了电容的感觉,其实并没有。

所以为什么Cb2可以过滤掉直流分量?

是因为在信号在直流的基础上有上下波动,每一点波动都会使电容进入充放电装态而使电子能够流经负载R_L形成电流。

所以Cb2相当于捕捉了变化的部分,而抛掉了不变的部分,从而过滤掉了直流。

注意:Vcc是指电源正级,图下方的类似垂直的符号代表接地,其实就是电源负级,二者可以用一个电源符号等效连接起来

剩下一个电阻Re,这个电阻有个很重要的作用,就是减小温度对三极管放大作用的影响。

首先,因为B点到地经过了一个电阻Rb2,而Rb2固定不变,所以B点电位或到地的电压是不变的,当温度升高时i_B变大,根据欧姆定律,Re两端的电压也会变大,B点电压不变,E点电压升高,U_B – U_E 值变小,最后导致加在BE段二极管的电压减小,i_B随之减小,当温度降低导致i_B变小可同理推导。这种反馈作用会使i_B稳定在很小的范围内。从而增加了三极管放大功能的稳定性

2. 金属-氧化物-半导体场效应三极管(MOSFET)

–Metal-Oxide-Semiconductor Field Effect Transistor

简称MOS管,其中一个类型如下:

图(a)是立体结构图,(b)是纵剖面图,(c)是代表符号

其中图(b)中:

  • P型衬底是指前面提到的掺杂3价原子的硅半导体。
  • 耗尽层是前面提到的二极管中的空间电荷区。
  • 源极和漏极的N+是指高掺杂浓度的N型半导体,即掺杂3价原子
  • 铝是导电作用
  • 二氧化硅起绝缘作用,后面会提到

可是不是已经有了前面提到的半导体三极管了吗?

为什么会再发明出这个MOS管?

因为半导体三极管是用基极(B端)电流影响或说控制集电极(C端)电流的,虽然基极电流很小,但终归是有能耗的,在电路中会以发热的形式消耗能量。

我们就想,能否消除这部分电流,使这部分的耗能消失?

于是便发展出了用电场控制电流的MOS管,全称是金属-氧化物-场效应三极管

  • 金属是指Al,作为导电材料。
  • 氧化物是指二氧化硅,绝缘
  • 场效应是指电场引起的一些电子移动

看下图,g连在Al上,Al下是绝缘的二氧化硅,P型衬底和g间连有一个电源,该电源在g下的二氧化硅和衬底间形成一个方向垂直向下的电场,而P型衬底是指前面提到的掺杂3价原子的硅半导体,P代表Positive,意味着P型衬底间有较多的空位(相当于带正电Positive),在电场的作用下,电子便会被吸引到g的下方的空穴(空位)中,又由于g下二氧化硅的绝缘作用,g和衬底间不会产生电流,也就不会有这方面的能耗了。

在电场作用下,电子将逐渐聚集在g的下方并形成一个通道(图中N型感生沟道),并连接左右两边的高浓度掺杂的N+型半导体(掺杂5价原子的半导体)。

s和d分别通过Al片连接这两个N型半导体(掺杂5价原子的半导体)

在两个半导体s和d间加一个下图所示的电源V_DD,电子将会从V_DD的负级出发,流过左边的半导体,再经过中间电场作用下形成的电子沟道,到达右端的半导体回到V_DD的正级。

通过改变g和衬底间的电压大小,便可以控制电场强度的大小,进而调节吸引电子的能力,从而改变沟道的厚度,而沟道的厚度又决定了从s端能够流过多少电子到达d端,要注意电子方向跟电流方向是相反的,所以电子是从负级到正级,而电流刚好反过来,所以在上图中的话,流经沟道的电子多少,反映在电流上就是i_D的大小。

所以我么可以得出一个结论,通过改变电源电压V_GG的大小,我们就可以改变电流i_D的大小。如果在V_GG那里串联一个幅度比较小的交流信号,那么g和衬底间的电压会随着交流信号的变大而变大,减小而减小,从而改变了沟道宽度,沟道宽度一改变,能经过的电子会发生显著改变,电流i_D的大小也将显著变大或变小。这就相当于一个信号放大的效果了。

这就是此类型三极管的放大作用原理。

但这里其实还有一个问题,由于加了一个电源V_DD,所以在g下方的沟道中,从左到右相当于是从V_DD电源的负级到其正级,电压是逐渐上升的,他会影响到加在g和衬底间电压形成的电场大小。

越靠近d端,越接近电源V_DD正极,电压也就越高,与V_GG加在g上的电压相抵消的也就越多,电场强度就越低,吸引电子的能力就越弱,形成的沟道也就越薄,所以画出沟道图形的话就会像下图(a)一样,呈一个楔型。

如果继续增大s,d间的电压,当到达一个临界点,靠近d端的电子沟道将几乎消失(夹断),不过相对与沟道长度,夹断区的长度是很小的,在V_DD形成的电场强度下,足以将电子拉过这个夹断区回到电源V_DD正极。沟道已经形成夹断区后,无论V_DD再如何增大,夹断通道就那么大,能经过的电子也不会再增加,电流也就基本不变了。

上述描述的现象有没有跟前面的半导体三极管有点相似?

对,就是其中一个电压无论如何变化,电流都不会变了,这个特性可以做成电流源,这也是电流源的基本原理。当然,前提是我们要将V_GG控制在一个定值上,再让V_DD超过一个临界值,让沟道产生夹断区才可以。

最后,由于关于放大电路的原理已经在前面的半导体三极管中描述过了,类比即可,所以在此不再赘述。我们直接进入数字电路部分。

三:基本门电路原理

待更新……

Continue reading...