这个问题的答案其实是整个通信、信号处理和信息论学科。因为知识实在是太多,我只能尽量用简单的语言讲一下大概。
我们都知道,信号能够承载信息,这里的信号包括但不限于正弦波信号,也不限于高频。香农告诉我们,信息量来自于事物的不确定性,当一个事件从随机变成确定,或者存在分布律变化,就带来了信息。但是日常生活中,一般意义上的随机事件集合,是无法确认集合大小的,因此无法确认分布律和信息量。比如我面前有一本书,但是你无法用一个集合来概括我可能的行为,我要拿起它,还是摔掉它,还是展开来读它,还是XXX?
万幸的是,我们始终可以通过编码和建模的形式来尽量保证我们能够识别的信息可以被放进设计好的编码空间。这些空间就就是文字、和现代信息传输里的计算机图像、计算机音频等。比如我们可以用文字描述今天是下雨还是不下雨 (真实世界随机事件集合到文字字符集合),并把文字存入计算机(文字集合到二进制集合)。
上述过程,统称为信源编码。
信源编码
信源编码是从信息源的符号(随机事件)到码符号集(通常是bit)的映射,使得信源符号可以从二进制位元(无损信源编码)或有一些失真(有损信源编码)中准确恢复。
编码其实不仅仅局限于狭义上的从文字/图像到计算机的编码,它一直贯穿于我们整个文明的发展过程中。当我们发明文字,这就是一种编码。我们数千年才将心智中最根深蒂固难以去除的部分总结为符号系统,从此信息可以跨越时空传输。
随着计算机和通信理论的发展,我们实现了一套可以从现实世界到文字再到0/1的编码系统,从此信息的传输/储存问题就被简化为简单的0/1问题。现代之所以采用0/1这种编码方式,其实内含了来自信息论的随机性最小化假设。即无论如何,始终需要2个或以上状态来表达事件的随机性。
形象上很容易理解,如果世界都是1,没有0,那万事万物都是同样状态,这样的一个确定性系统不需要任何信息被理解,因为我们都懂。如果加入了0,就可以从0/1的状态变化来表达更加复杂的随机事件。(前提是编码表已知,比如从二进制到汉字的GBK编码, 比如从汉字字符到真实世界的汉语)
而从复杂事件到0/1系统就是香农一直在信息论中强调的,我们怎么用更简洁更高效的方式完成编码。
调制解调
当我们可以用0/1来表示万事万物的变化,我们也找到了一些能够反映事物变化的物体指标,就是信号。剩下的就是怎么在信号中定义"1"和“0”,让发送端和接收端都识别。
通信史上的狼烟其实是一个很好的例子,当狼烟燃起,异族来犯。当狼烟未燃,边境平安,这是一种定义。而在现代信号系统中,有很多不同的定义方式,这就是对信号的调制和解调,比如最简单的调制方式就是在幅度上采用高低电平来表示0/1。
但是这种简单的调制方式效率实在低下。回头想想,其实这种变化存在在信号的哪个属性并不重要。实际上我们在意的只是怎么可以明确区分0/1,这种区分可以在时/频/码域分别或同时完成。于是就有了正交频分复用(OFDM),码分多址(CDMA)等等一系列高效调制方式。
为了在信号的调制和解调的过程中,保证信息传输的高效,可靠和安全。我们也可以不局限于0/1,变成同时传输0/1/2/3,这样字符集扩充,一个符号代表的随机性(信息量)也就变大了。
具体到OFDM中,就是怎么能够在星座空间中塞入更多星座点(这样一次可以传输很多位的0 1),同时保证存在干扰的时,能误码率尽量小的识别每一个符号。
至此,就是信息(随机事件)被放在信号上传输的过程。
具体实现
如果考虑有0/1的数字流,和标准正弦波,最简单的调制解调方式(幅度调制,数字通信里叫幅移键控, ASK),一个简单的乘法器就可以做到。
(需要吐槽八百年前一直延续到现在还在教科书里,实际上现在几乎没用的模拟电路,这里只考虑数字)。
![]()
ASK,来自wiki脉冲生成器把0/1字符转换为高低电平脉冲流,并通过通/断控制重复脉冲序列,然后通过乘法器加载到正弦载波,这样很简单的就完成了信息到正弦波信号的加载。
当然实际情况下还要考虑很多干扰比如载波干扰,码间干扰,噪声,比如量化噪声,信道噪声等等,上个例子只是在说最简单的情况。
完。
|