客观世界中存在着各种各样的物理量,用于量度物体属性或描述物体运动状态及其变化过程。根据各物理量变化规律的特点可将它们划分为两大类。
(1)有些物理量的变化在时间和数值上都是连续的,这一类物理量叫作模拟量,如电压、频率、压力、温度等。时间上的“连续”是指在一个指定的时间范围里,物理量的数值个数有无穷多个。而数值上的“连续”是指物理量的数值本身的数目有无穷多个。我们把在时间上和数值上都是连续的物理量称为模拟物理量,表示模拟量的信号叫作模拟信号,如图1-1(a)所示,而处理模拟信号的电子电路被称为模拟电路。
(2)有些物理量的变化在时间上和数量上都是离散的,例如产品的数量、学生的成绩、开关的状态等,它们的值都是离散值。时间上的“离散”是指在一个指定的时间范围里,物理量的数值的个数是有限的。而数值上的“离散”是指物理量的数值本身的数目是有限的。我们把在时间上和数值上都是离散的物理量称为数字量,表示数字量的信号称为数字信号,如图1-1(b)所示,直接对数字量进行处理的电子电路被称为数字电路。
由于数字电路中存储、处理和传输的信号都是数字信号,因而对于模拟信号而言,需要将其转换为数字信号,才能在数字电路中进行存储、处理和传输。图1-1显示出了这种转换的方法。图1-1中,经过了采样、量化和编码后,模拟信号转换成了数字信号。所谓采样,是指以相等的时间间隔,将时间上连续的模拟信号截取成时间上离散的数字信号,也就是在时间上将模拟信号离散化。量化是指将采样得到的瞬间幅度值离散化,也就是用有限个幅度值近似表示原来连续变化的幅度值,即把模拟信号的连续幅度值变为有限数量的有一定间隔的离散值。例如,用离散值-5 V,-4 V,…,4 V,5 V表示电压的幅度值,当采样得到的幅度值是1.23V时,量化后的值取1V;当采样得到的幅度值是-2.68 V时,量化后的值取-3 V。编码则是按照一定的规律,把量化后的值用二进制数字表示。例如,1 V用二进制数0001表示,-3 V用二进制数1101表示。
图1-1 模拟信号与数字信号
数字系统是一个能对数字信号进行处理和传输的实体,由各种能实现特定功能的数字逻辑电路相互连接组合而成。在数字系统中,表示信息所使用的信号都是离散型的。
早期机械式的数字系统,如查尔斯·巴贝奇(Charles Babbage)设计的分析机(现代电子计算机的前身),使用蒸汽作动力,用10个齿轮分别表示0~9十个数字,是一个具有10个离散值变量的数字系统。
现在,大部分数字系统使用二进制处理信息,主要有以下几点原因。
(1)电路容易实现。二进制只有两个数码,在电路中用高、低电平分别表示“1”和“0”两种状态,区分两种电压值要比区分10种电压值容易得多。
(2)物理上容易实现存储。二进制数值在物理上最容易实现存储,如通过磁极的取向、表面的凹凸等来记录“0”“1”信息。
(3)便于运算。与十进制数相比,二进制数的运算规则要简单得多(例如二进制乘法只有4条规则)。这不仅可使运算器的硬件结构大大简化,而且有利于运算速度的提高。
(4)便于逻辑判断。二进制中的0和1两个数码,正好与逻辑命题中的“真(True)”“假(False)”相对应,为逻辑运算提供了便利。
目前,在计算机、数字通信及其他数字设备中,都是用两个电平状态来表示数字信号的。采用的两个状态符号就是0和1(在二进制中,它们表示两个数字信号),它们是构成数字信息的基本元素。也就是说,不论数字系统处理的信息是表示一个数,或者是表示某个控制命令,也都不过是0和1的某种形式的组合。
对于0和1来说,既可以用电位的高低来表示,也可以用脉冲信号的有无来表示。例如在图1-2中,为表示1101110010这样的数字信号,用电位的高低来表示的信号波形如图1-2(a)所示,以高电平表示1,低电平表示0;若以脉冲信号有无表示,信号波形如图1-2(b)所示,以有脉冲表示1,无脉冲表示0。目前的数字系统中,常用前一种方式表示数字信号。
图1-2 数字信号的表示
在数字系统中,常用自然二进制对信号进行编码,即高电平表示数据“1”,低电平表示数据“0”。但这种类型的数字信号不适于在信道中直接传输,原因在于:①这种类型的数字信号往往存在直流分量和低频分量,而具有电容耦合电路的设备或频带低端受限的信道会过滤掉这些分量;②当出现连续的“0”或“1”数据时,数字信号会出现长时间的低电平或高电平,接收端无法获取定时信息(即同步信息);③接收端无法判断是否包含错码。因此,数字信号在传输时需要选择其他的编码方式,常用的有以下四种。
1. 不归零编码
不归零编码(Non Return Zero,NRZ)的编码规则是:“1”和“0”都分别由不同的电平状态来表现,用正电平表示“1”,用负电平表示“0”,除此之外,没有中性状态及其他状态。图1-3所示为不归零编码示意图。不归零编码发送能量大,直流分量小,抗干扰能力比较强,但使用这种编码需要另外传输同步信号。
图1-3 NRZ编码示意图
2. 翻转不归零编码
翻转不归零编码(NRZ-Inverted,NRZI)的编码规则是:如果输入为0,则输出保持它的前一个值;如果输入为1,则输出为前一个输出值的相反值。因此,只要输入为0,输出就会保持不变;如果输入为1,输出就会发生翻转。图1-4所示为NRZI编码示意图。使用这种编码也同样需要另外传输同步信号。
图1-4 NRZ-Inverted编码示意图
3. 归零编码
归零编码(Return to Zero,RZ)的编码规则是:高电平表示“1”,低电平表示“0”,但整个码元分两部分,前半部分用高低电平表示数据,后半部分则归零位。显然,信号“0”在整个位的时间内以低电平发送;信号“1”在前半个位时间内以高电平发送,在剩余位时间内以低电平发送。图1-5所示为归零编码示意图。归零编码自带了同步信号,但当出现长串“0”时,将丢失同步信号。
图1-5 归零编码示意图
4. 曼彻斯特编码
曼彻斯特编码(Manchester Encoding)也叫作相位编码(Phase Encoding),是一种用电平跳变来表示1或0的编码,这种编码带同步信号,即时钟同步信号就隐藏在数据波形中。在曼彻斯特编码中,每一位的中间有一电平的跳变,位中间的跳变既作时钟信号,又作数据信号;从高到低跳变表示“0”,从低到高跳变表示“1”。
还有一种是差分曼彻斯特编码,每位中间的跳变仅提供同步信号,而用每位开始时有无跳变表示“0”或“1”,如果有跳变则表示“0”,如果无跳变则表示“1”。
两种曼彻斯特编码将时钟同步信号和数据包含在数据流中,在传输代码信息的同时,也将时钟同步信号一起传输到对方,每位编码中有一跳变,不存在直流分量,因此具有自同步能力和良好的抗干扰性能。但每一个码元都被调成两个电平,所以数据传输速率只有调制速率的1/2。图1-6所示为两种曼彻斯特编码示意图。
图1-6 两种曼彻斯特编码示意图