第四章 门和电路
4.1计算机和电学
任何电信号都有电平。
一般来说,0~2伏的电压是低电平,由二进制数字0表示,2 ~ 5伏范围内的电压是高电平,由二进制数字1表示。计算机中的信号被限制在这两个范围之内。
门是对电信号执行基本运算的设备。一个门接受一个或多个输入信号,生成一个输出信号。门的类型很多,每种类型的门执行一个特定的逻辑函数。
电路是由门组合而成的,可以执行更加复杂的任务。例如,电路可以用来执行算术运算和存储值。在电路中,一个门的输出值通常会作为另一个门或多个门的输入值。电路中的电流由经过精心设计的相互关联的门逻辑控制。
描述门和电路的表示法有三种:
- 布尔表达式
- 逻辑框图
- 真值表
门(gate):对电信号执行基本运算的设备,接受一个或多个输入信号,生成一个输出信号。 电路(circuit):相互关联的门的组合,用于实现特定的逻辑函数。
英国数学家George Boole发明了一种代数运算,其中变量和函数的值只是0或1。这种代数为布尔(Boolean)代数,它的表达式是演示电路活动的极好方式。布尔代数特有的运算和属性使我们能够用数学符号定义和操作电路逻辑。
逻辑框图是电路的图形化表示。每种类型的门由一个特定的图形符号表示。通过用不同方法把这些门连接在一起,就可以真实地表示出整个电路逻辑。
真值表列出了一种门可能遇到的所有输入组合和相应的输出,从而定义了这种门的功能。
布尔代数(Boolean algebra):表示二值逻辑函数的数学表示法。 逻辑框图(logic diagram): 电路的图形化表示,每种类型的门由自己专用的符号。 真值表(truth table): 列出了所有可能的输入值和相关的输出值的表。
4.2 门
计算机中的门有时又叫逻辑门,因为每个门都执行一种逻辑函数。每个门接收一个或多个输入值,生成一个输出值。门的类型和输入值决定了输出值。
- 非(NOT)门
- 与(AND)门
- 或(OR)门
- 异或(XOR)门
- 与非(NAND)门
- 或非(NOR)门
4.2.1 非门
非门接受一个输入值,生成一个输出值。在这些表示法中,变量A表示输入信号,可以是0或1。变量X表示输出信号,其值可以是0或1,由A的值决定。
此处放图4-1
根据定义,如果非门输入的值是0,那么输出值是1;如果输入值是1,则输出值是0。非门有时又叫作==逆变器==,因为它对输入值求逆。
在布尔表达式中,非操作由求反的值之后的“`”标记表示。有时,也用求反的值上面的横杠表示这个运算。
非门的逻辑框图符号是一个末端具有小圆圈(叫作==求逆泡==)的三角形。输入和输出由流入和流出门的连接线表示。有时,这些连接线上面有标记,但是并非总有标记。
图4-1中的真值表列出了非门所有可能的输入值和对应的输出值。由于非门只有一个输入信号,而且这个信号只能是0或1,所以在真值表中A这一列只有两种可能。X列显示的是非门的输出,即输入值的逆。注意,在这三种表示法中,只有真值表真正定义了非门在各种情况下的行为。
这三种表示法只是同一事物的不同表示。
4.2.2 与门
图4-2展示了与门。与门接受的输入信号是两个。这两个输入信号的值决定了输出信号。如果与门的两个输入信号都是1,那么输出是1;否则,输出是0。
此处放图4-2
在布尔代数中,与操作由点(·)表示,有时也表示为星号(*)。该运算符通常可以省略。例如,A·B通常被写作AB。
因为由两个输入,每个输入由两种可能的值,所以与门的输入可能由四种0和1的组合。因此,在布尔表达式中,用与运算符可能出现四种情况:
0·0=0
0·1=0
1·0=0
1·1=1
同样,列出与门行为的真值表中有四行,展示了四种可能的组合。真值表的输出列与布尔表达式的结果一致。
4.2.3 或门
图4-3展示了或门。或门也有两个输入。如果两个输入都是0,那么输出是0;否则输出是1。
在布尔代数中,或操作由加号(+)表示。或门有两个输入,每个输入有两种可能的值,故在真值表中有四行。
此处放图4-3
4.2.4 异或门
图4-4展示了异或门。如果异或门两个输入相同,则输出为0;否则输出为1。==异或门与或门之间的区别==,只有一种输入情况使它们的结果不同:当两个输入信号都是1时,或门生成1,而异或门生成0。
此处放图4-4
正规的或门又叫做==同或门==,因为无论一个还是两个输入信号是1,它都生成1。而只有当两个输入信号不同时,异或门才生成1.异或门的俗语是“当我说或时,指的是这一个,或者另一个,而不是指它们两个。”
4.2.5 与非门和或非门
与非门和或非门都接受两个输入值。与非门和或非门分别是与门和或门的对立门。也就是如果让与门的结果经过一个逆变器(非门),得到的输出和与非门的输出一样。
此处放图4-5、4-6
布尔代数中通常没有表示与非门和或非门的专用符号,而是根据它们的定义来表示这些概念。
与非门和或非门的逻辑框图符号和与门及或门的相似,只是多了一个求逆泡。
4.2.6 门处理回顾
- 非门将对它的唯一输入值求逆。
- 如果两个输入值都是1,与门将生成1.
- 如果一个输入值是1,或者两个输入值都是1,或门将生成1.
- 如果只有一个输入值是1,而不是两个,异或门将生成1.
- 与非门生成的结果和与门生成的相反。
- 或非门生成的结果和或门生成的相反。
4.2.7 具有更多输入的门
门可以被设计为接受三个或更多个输入值。
放图4-7
4.3 门的构造
晶体管
门使用==晶体管==建立输入值和输出值之间的映射。晶体管的角色有两种,一种是传导电流的电线,另一种是阻止电流的电阻器,输入信号的电平决定了晶体管的角色。虽然晶体管没有可移动的部分,但是却可以作为开关。晶体管是由==半导体==材料制成的。通常使用硅来制造晶体管。
晶体管:作为导线或电阻器的设备,由输入信号的电平决定它的作用。 半导体:既不是良导体也不是绝缘体的材料,如硅。
4.4 电路
组合电路(combinational circuit):输出仅由输入值决定的电路。 时序电路(sequential circuit):输出是输入值和电路当前状态的函数的电路。
4.4.1 组合电路
电路等价:(circuit equivalence):对应每个输入值组合,两个电路都生成完全相同的输出。
性质 | 与 | 或 |
---|---|---|
交换律 | AB=BA | A+B=B+A |
结合律 | (AB) C=A(BC) | (A+B)+C=A+(B+C) |
分配律 | A(B+C)=(AB)+(AC) | A+(BC)=(A+B)(A+C) |
恒等 | A1=A | A+0=A |
补 | A(A')=0 | A+(A')=1 |
德·摩根定律 | (AB')=A'OR B' | (A+B)'=A'B' |
德·摩根定律:对两个变量的与操作的结果进行非操作,等于对每个变量进行非操作后再对它们进行或操作;对两个变量的或操作的结果进行非操作,等于对每个变量进行非操作后再对它们进行与操作。
4.4.2 加法器
加法器(adder):对二进制值执行加法运算的电路。 半加器(half adder):计算两个数位的和并生成正确进位的电路。 全加器(full adder):计算两个数位的和,并考虑进位输入的电路。
4.4.3 多路复用器
多路复用器(multiplexer):使用一些输入控制信号决定用哪条输入数据线发送输出信号的电路。 多路分配器:是执行相反操作的电路。也就是说,它只有一个输入,根据n条控制线的值,这个输入值信号将被发送到2^n个输出。
4.5 存储器电路
数字电路的另一个重要作用是可以用来存储信息。这些电路构成了时序电路,因为这种电路的输出信号也被用作电路的输入信号。
4.6 集成电路
集成电路(integrated circuit):又称芯片(chip),是嵌入了多个门的硅片。
缩写 | 名称 | 门数量 |
---|---|---|
SSI | 小规模集成 | 1~10 |
MSI | 中规模集成 | 10~100 |
LSI | 大规模集成 | 100~100000 |
VLSI | 超大规模集成 | 多于100000 |
4.7 CPU芯片
CPU是一种具有输入线和输出线的高级电路,是计算机中最重要的集成电路。
小结
由于我们讨论的是使用二进制信息的数字计算机,所以只关注两个电平范围,它们分别表示为二进制数字1或0。电流由称为门的电子设备操纵,门负责执行基本的逻辑运算,如非运算、与运算和或运算。门是由一个或多个晶体管创建的,晶体管的发明使计算学发生了翻天覆地的变化。
把一个门的输出作为另一个门的输入可以把门组合成电路。仔细设计这些电路,可以创建出能执行更复杂任务(如求和、多路复用和存储数据)的设备。门的集合(或者说完整的电路)常常被嵌入一个集成电路(或芯片)中,这引出了中央处理器的而概念。
第五章 计算部件
5.1 独立的计算机部件
5.2 存储程序的概念
1944年至1945年实现数据和操作数据的指令的逻辑一致性,而且它们能存储在一起,这是计算机历史上的一个主要定义点。这个原理就是著名的冯·诺伊曼体系结构,基于这个原理的计算机设计仍是当前计算机的基础。
5.2.1 冯·诺伊曼体系结构
冯·诺伊曼体系结构的另一个主要特征是处理信息的部件独立于存储信息的部件。这一特征导致了下列5个冯·诺伊曼体系结构的部件:
- 存放数据和指令的内存单元
- 对数据执行算术和逻辑运算的算术逻辑单元
- 把数据从外部世界转移到计算机中的输入单元
- 把结果从计算机内部转移到外部世界的输出单元
- 担当舞台监督,确保其他部件都参与了表演的控制单元
==内存==
内存是存储单元的集合,每个存储单元有一个唯一的存储地址。 可编址性(addressability):内存中每个可编址位置存储的位数。
==算术逻辑单元==
算术逻辑单元(Arithmetic/Logic Unit,ALU):执行算术运算(加法、减法、乘法和除法)和逻辑运算(两个值的比较)的计算机部件。 寄存器(register):CPU中的一小块存储区域,用于存储中间值或者特殊数据。
==输入/输出单元==
输入单元(input unit):接受要存储在内存中的数据的设备, 现代的输入设备包括键盘、鼠标和超级市场使用的扫描设备。 输出单元(output unit):一种设备,用于把存储在内存中的数据打印或显示出来,或者把存储在内存或其它设备中的信息制成一个永久副本,是使外界使用存储在计算机上的结果的设备。 最常用的输出设备是打印机和显示器。
==控制单元==
控制单元(control unit):控制其他部件的动作,从而执行其他指令的寄存器。 指令寄存器(Instruction Register,IR):存放当前正在执行的指令的寄存器。 程序计数器(Program Counter,PC):存放下一条要执行的指令的地址的寄存器。 中央处理器(CPU):算术逻辑单元和控制单元的组合,是计算机用于解释和执行指令的“大脑”。
总线宽度(bus width):可以在总线上并行传输的位数。 缓存(cache memory):一种用于存储常用数据的小型高速存储器。 流水线(pipelining):一种将指令分解为可以重叠执行的小步骤的技术。 主板(motherboard):个人计算机的主电路板。
5.2.2 读取-执行周期
步骤:
- 读取下一条指令
- 译解指令
- 如果需要,获取数据
- 执行指令
5.2.3 RAM和ROM
RAM(随机存取存储器)是一种每个存储单元(通常是1字节)都能被直接访问的内存。
注:访问每个存储单元的本质是改写这个存储单元的内容。
ROM(只读存储器)中的内容不能更改,是永久的,存储操作不能改变他们。
注:把位组合放在ROM中称为烧入。只有在制造ROM或装配计算机时才能烧入位组合。
5.2.4 二级存储设备
举例:
磁带
缺点:如果要访问磁盘中间的数据,则必须访问这个数据之前的所有数据并丢弃它们。
磁盘
磁盘驱动器是CD播放器和磁带录音机的混合物。
磁道(track):磁盘表面的同心圆。 扇区(sector):磁道的一个区。 块(block):存储在扇区中的信息。
寻道时间(seek time):读写头定位到指定的磁道所花费的时间。 等待时间(latency):把指定的扇区定位到读写头之下所花费的时间。 存取时间(access time):开始读取一个数据块之前花费的时间,即寻道时间和等待时间之和。 传送速率(transfer rate):数据从磁盘传输到内存的速率。 柱面(cylinder):所有磁盘表面的同心磁道的集合。
CD和DVD
内存
闪存是一种可写入可擦除的非易失性计算机存储器。
闪存被用于制作固态硬盘(SSD),固态硬盘能够直接取代普通硬盘。
5.2.5 触摸屏
它显示文本和图形的方式与常规的显示器相同,此外它还能探测到用户在屏幕上用手指或书写笔的触摸,并作出响应。
触摸屏并非只能检测到触摸,它还能知道触摸屏幕的位置。
实现触摸屏的技术:
电阻式触摸屏
电容式触摸屏
红外触摸屏
表面声波(SAW)触摸屏
注意,可以用戴手套的手指触摸电阻式触摸屏、红外触摸屏和声表面波触摸屏,但不能用到电容式触摸屏上,因为它依靠的是流向触摸点的电流。
5.3 嵌入式系统
5.4 并行体系结构
5.4.1 并行计算
形式:比特级、指令级、数据级和任务级
比特级的并行是基于增加计算机的字长。
指令级的并行是基于程序中的某些指令能够同时独立的进行。
数据级并行基于同一组指令集同时对不同的数据集执行。这种并行称为SIMD(单指令多数据),它依赖于一个控制单元来指导在不同的操作数集合上执行相同的操作。
同步处理(synchronous processing):多处理器将同一个程序应用于多个数据集。 任务级的并行是基于不同的处理器能在相同或不同的数据集上执行不同的操作。
共享内存并行处理器(shared memory parallel processor):多个处理器共享整体内存的情况。
5.4.2 并行硬件分类
并行硬件的类别反映了并行计算的不同类型。多核处理器有多个独立的核心,它们通常是中央处理(CPU)。超标量处理器能向执行单元发出多条指令,而多核心处理器能向不同的执行单元发出不同的指令。也就是说,每个独立的核心能够包含多个执行单元。
对称多处理器(SMP)包含多个相同的核心。它们共享内存,并且通过一个总线相连。一个对称多处理器的核心数量通常限制在32个以内。分布式计算机包含多个内存单元,它们通过网络相连。集群是由一组独立的机器通过已有的网络相连而形成的计算机。这种设备通常包含超过1000个处理器。
小结
构成计算机的部件涉及多种设备,它们各有特征,包括速度、大小和效率。而且,它们在计算机的整体处理中各自扮演着必不可少的角色。
计算的世界充斥着各种术语和缩写
处理器的速度以GHz(千兆赫)为单位,内存的容量以MB(兆字节)为单位,外部存储设备的容量以GB(千兆字节)为单位,显示器则以像素衡量。
冯·诺伊曼体系结构是当今大多数计算机的底层体系结构。它由内存、算术逻辑单元、输入设备、输出设备和控制单元组成。
在控制单元,的指挥下的读取-执行周期是这个处理过程的核心。在这个周期中,将从内存读取指令、译解指令和执行指令。
RAM和ROM是两种计算机内存的缩写,RAM表示随机存取存储器,ROM表示只读存储器。
二级存储设备对计算机系统来说至关重要
磁带、磁盘和闪存是三种常用的二级存储介质。
触摸屏是一种外围设备,同时具备输入和输出功能,适用于餐厅和信息亭这种特定环境。