Post

《跟着题库认识业余无线电》系列文章第十五篇:走进0和1的世界——数字电路与模数转换

本文基于C类题库数字电路相关试题,从与门、或门、异或门等逻辑门的真值表讲起,介绍D触发器的记忆与分频,再讲模数转换(ADC)的采样与量化,最后聊聊数字滤波器与SDR软件无线电,带你走进0和1的思考世界。

跟着题库学无线电 阅读 1 点赞 0 评论 0

上一篇,我们给电台做完了全套“体检”:dB 怎么算、万用表怎么读、蓄电池怎么伺候、雷雨天怎么保命。那一篇里出现的仪表,表盘上大多是“模拟的指针”;可你低头看看现在的电台——屏幕上一行行数字、频谱图、瀑布图,早就是另一个世界了。这个世界里没有 3.7 伏、7.05 兆赫这种“连续的数值”,只有 0 和 1,开和关,有和没有。

这一篇,我们就推开数字世界的大门:从最基础的四则“逻辑运算”讲起,看看芯片是怎么用一串 0 和 1 做加减乘除之外的“思考”;再认识会“记住事情”的触发器;然后聊聊把声音变成数字、再把数字变回声音的模数转换;最后看看现在大红大紫的 SDR 软件无线电,凭什么能“一台机器通吃全部模式”。

一、逻辑门:0 和 1 的“四则运算”

数字电路里没有“大概”“差不多”,每个信号要么是 0(低电平),要么是 1(高电平)。把两个这样的信号“算”出一个结果,靠的就是逻辑门。最简单的一种叫与门(AND)。具有两个输入端的与门(AND)是最简单的数字逻辑电路之一。如果这两个输入的组合分别为 00、01、10、11,则对应的输出为:

【MC1-1276】具有两个输入端的与门(AND)是最简单的数字逻辑电路之一。如果这两个输入的组合分别为 00、01、10、11,则对应的输出为: 正确答案:A(0、0、0、1)

与门的规矩就一条:两个输入都是 1,输出才是 1;只要有一个是 0,输出就是 0。“00”输出 0,“01”和“10”还是 0,只有“11”输出 1——所以答案是 0、0、0、1。想记它的中文名也容易:与,就是“和”的意思,两个都得是,才成立。那“或门”呢?具有两个输入端的或门(OR)是最简单的数字逻辑电路之一。如果这两个输入的组合分别为 00、01、10、11,则对应的输出为:

【MC1-1277】具有两个输入端的或门(OR)是最简单的数字逻辑电路之一。如果这两个输入的组合分别为 00、01、10、11,则对应的输出为: 正确答案:A(0、1、1、1)

或门的规矩刚好反过来:只要有一个输入是 1,输出就是 1。所以 00 输出 0,01、10、11 全都输出 1——0、1、1、1。或,就是“或者”,有一个就行。这两个门记住一个,另一个就忘不了:与门“挑食”,两个都得对;或门“随和”,一个就够。

接下来这位有点调皮。具有两个输入端的异或门(XOR)是最简单的数字逻辑电路之一。如果这两个输入的组合分别为 00、01、10、11,则对应的输出为:

【MC1-1278】具有两个输入端的异或门(XOR)是最简单的数字逻辑电路之一。如果这两个输入的组合分别为 00、01、10、11,则对应的输出为: 正确答案:A(0、1、1、0)

异或门的规矩是:两个输入不一样,输出才是 1;一样就输出 0。00 一样,输出 0;01、10 不一样,输出 1;11 又一样了,输出 0——0、1、1、0。“异”就是“不同”,不同才出 1,这就是异或。它特别有用:加法器里的“本位和”、校验码、加密算法,到处都有它的影子。

还有三个“加了非”的变体。与非门(NAND),就是在与门后面接一个“非”(取反)。具有两个输入端的与非门(NAND)是最简单的数字逻辑电路之一。如果这两个输入的组合分别为 00、01、10、11,则对应的输出为:

【MC1-1279】具有两个输入端的与非门(NAND)是最简单的数字逻辑电路之一。如果这两个输入的组合分别为 00、01、10、11,则对应的输出为: 正确答案:A(1、1、1、0)

与门的输出是 0、0、0、1,取反之后变成 1、1、1、0——这就是与非门:只有两个都是 1 时才输出 0,其余全输出 1。或非门(NOR)同理,是或门取反。具有两个输入端的或非门(NOR)是最简单的数字逻辑电路之一。如果这两个输入的组合分别为 00、01、10、11,则对应的输出为:

【MC1-1280】具有两个输入端的或非门(NOR)是最简单的数字逻辑电路之一。如果这两个输入的组合分别为 00、01、10、11,则对应的输出为: 正确答案:A(1、0、0、0)

或门输出 0、1、1、1,取反就是 1、0、0、0——只有两个都是 0 时,或非门才输出 1。最后这个叫异或非门(NXOR),也叫“同或”——异或的取反。具有两个输入端的异或非门(NXOR)是最简单的数字逻辑电路之一。如果这两个输入的组合分别为 00、01、10、11,则对应的输出为:

【MC1-1281】具有两个输入端的异或非门(NXOR)是最简单的数字逻辑电路之一。如果这两个输入的组合分别为 00、01、10、11,则对应的输出为: 正确答案:A(1、0、0、1)

异或输出 0、1、1、0,取反就是 1、0、0、1——两个输入一样(都是 0 或都是 1)时输出 1,所以叫“同或”。六个门排排坐:与、或、异或,加上各自的“非”版本。考试最爱考的就是这几张真值表,把“00 01 10 11”四行背下来,全系列题目就稳了。

二、触发器:会“记住”的电路

逻辑门只会“当下算账”,输入一变,输出立刻跟着变,记不住任何东西。可电台里的频率、菜单、设置,都需要“记住”。能记住的电路,叫时序逻辑电路,最典型的就是触发器。D 触发器是一种时序逻辑电路,具有数据输入端 D、时钟输入端 CK 和数据输出端 Q。假设 D 触发器由 CK 的上升沿触发,则其工作情况为:

【MC1-1282】D 触发器是一种时序逻辑电路,具有数据输入端 D、时钟输入端 CK 和数据输出端 Q。假设 D 触发器由 CK 的上升沿触发,则其工作情况为: 正确答案:A(每次 CK 上升沿到来时,Q 端都变得与 D 端一致)

D 触发器的工作方式,像极了“拍立得”:平时不管 D 端怎么变,Q 端都“无动于衷”;只有时钟 CK 的上升沿(从 0 变 1 的那一瞬间)到来时,“咔嚓”一下,把 D 端当时的电平拍进 Q 端。上升沿一过,D 再变,Q 也不动了——它把那一刻“记住了”。

触发器能记住,就能“数数”。若将 D 触发器的 Q 端反相之后连到 D 端,则在每次 CK 上升沿到来时会发生什么?

【MC1-1283】D 触发器是一种时序逻辑电路,具有数据输入端 D、时钟输入端 CK 和数据输出端 Q。若将 D 触发器的 Q 端反相之后连到 D 端,则在每次 CK 上升沿到来时会发生什么? 正确答案:A(2 分频;若 CK 的频率为 f,则 Q 端输出信号的频率为 f/2)

把 Q 反相后接回 D,每次上升沿 Q 都会“翻个面”:本来是 0,下一个沿变成 1,再下一个沿又变回 0——如此往复。原来 CK 每来两个上升沿,Q 才完整地高低变化一次,频率正好减半:这就是 2 分频,也是计数器的最基本单元。电台里的频率合成器、SDR 里的时钟分频,全都靠这一手。

三、模数转换:把声音“翻译”成数字

模拟世界是连续的,说话的声音、天线的信号,都是一条平滑的曲线;数字世界只有 0 和 1。要把模拟信号变成数字信号,得靠模数转换器(ADC),它干两件事:采样和量化。实现数字信号处理(DSP)的第一步是将模拟信号转换为数字信号。为确保模拟信号的各频率成分不会在采集的样本中发生混叠,模数转换器(ADC)的采样率必须高于:

【MC1-1285】实现数字信号处理(DSP)的第一步是将模拟信号转换为数字信号。为确保模拟信号的各频率成分不会在采集的样本中发生混叠,模数转换器(ADC)的采样率必须高于: 正确答案:A(输入信号中的最高频率分量的 2 倍)

采样,就是每隔一小段时间把信号的“高度”量一下、记一个点。多久量一次才够?奈奎斯特定理说了:采样率必须大于信号最高频率分量的 2 倍,否则高频成分会“混叠”成假信号,再也还原不回来。这就像拍电影,一秒钟拍的帧数不够,轮子的辐条会看起来倒着转——混叠就是数字世界里的“车轮倒转”。而 ADC 的量化精度取决于:

【MC1-1286】实现数字信号处理 (DSP) 的第一步是将模拟信号转换为数字信号。所用模数转换器(ADC)的量化精度取决于: 正确答案:A(输入信号的波形复杂程度)

采样管“多久记一个点”,量化管“每个点记得多细”——这两件事得分开想,别混成一锅。这题官方答案是 A,有人会嘀咕“量化精度不是看 ADC 位数吗”,只能说这道题考的就是别把采样和量化搞混:采样率管时间轴上的疏密,量化管幅度上的粗细,各管各的。下面这道题把两个概念揉在一起,最能检验真懂假懂。将频率为 f 且最大电压为 U 的模拟信号转换为数字信号。如果数字信号需要反映相当于0.1%U 的信号幅度细节和相当于 f 的 8 次谐波的时间细节,则模数转换器应满足要求:

【MC1-1288】将频率为 f 且最大电压为 U 的模拟信号转换为数字信号。如果数字信号需要反映相当于0.1%U 的信号幅度细节和相当于 f 的 8 次谐波的时间细节,则模数转换器应满足要求: 正确答案:A(采样率大于 16f,量化精度不低于 10 位)

这道题要分两步。先看时间细节:要反映到 f 的 8 次谐波,也就是最高频率到了 8f,按“采样率大于最高频率的 2 倍”,就得大于 16f。再看幅度细节:要分辨 0.1%U,也就是把满量程分成至少 1000 份,2 的 10 次方是 1024,刚好超过 1000,所以量化精度不低于 10 位。采样率管“密”,量化精度管“细”,两件事分开算,答案自然就出来了。

四、数字滤波器与 SDR:软件里的电台

信号变成数字之后,好处才真正开始。就拿滤波来说,模拟滤波器要一堆电容电感,焊上去就改不了;数字滤波器呢?既然模拟滤波器早已支持业余无线电通信成功运作,我们为什么还要研发使用数字滤波器?

【MC1-1291】既然模拟滤波器早已支持业余无线电通信成功运作,我们为什么还要研发使用数字滤波器? 正确答案:A(数字滤波器最灵活,可以定制出各种通带形状并保持最优性能)

数字滤波器本质是一段程序:把采样回来的数字流按算法算一遍,就能滤出想要的频率成分。想要窄带、想要陡峭、想要任意形状的响应,改几行参数就行,而且永远不会像电容电感那样老化漂移。这就是为什么现在的高端电台里,“滤波”两个字越来越多地发生在 DSP 芯片里。

再往上,就是 SDR——软件无线电,整个电台的“大脑”都搬进了计算机。SDR 里有个绕不开的概念叫 I/Q 信号:把射频信号拆成两路正交的分量送进电脑。在 SDR 系统中,对 I/Q 信号进行混频可使用算法:

【MC1-1292】在 SDR 系统中,对 I/Q 信号进行混频可使用算法: 正确答案:A(复数乘法)

I/Q 两路信号,数学上可以看成一个复数:I 是实部,Q 是虚部。混频(变频)在数学上就是一次复数乘法——把本振和信号两个复数乘起来,频谱就“搬了家”。这也是 SDR 相比传统超外差电台最优雅的地方:一堆硬件干的活,变成了几行乘加运算。解调也类似。在 SDR 系统中,解调 AM 复信号可使用算法:

【MC1-1293】在 SDR 系统中,解调 AM 复信号可使用算法: 正确答案:A(求复数的模值)

AM 信号的信息藏在幅度里,而一个复数的“模”(到原点的距离)恰好就是它的幅度——所以解调 AM,对 I/Q 复信号求个模值就行。频率调制呢?求的是辐角的变化率。你看,调制解调在 SDR 里全变成了数学题:加法、乘法、求模、求角。数字世界就是这么“不讲武德”地简化了无线电。

结语

这一篇,我们从最简单的与门、或门一路走进数字电路:六张真值表是“逻辑四则运算”,触发器让电路学会了“记忆”和“分频”,ADC 用“采样管密、量化管细”把声音翻译成 0 和 1,数字滤波器和 SDR 又告诉我们——信号一旦变成数字,剩下的活儿程序都能干。现在再看电台屏幕上那条频谱瀑布,你应该能想象到,屏幕背后是一大堆逻辑门和乘法器在飞快地算。

不过,数字电路解决的是“怎么处理信号”,还有一个问题它管不着:电波里传输的信息,到底是靠什么“装”上去的?同样是说话,为什么 7 兆用下边带、2 米用调频、远距离弱信号又得换单边带?电台说明书上那些 A1A、J3E、F3E 又是什么意思?下一篇,我们就来聊聊调制方式与发射类别——给电波“上户口”,看看信息是怎么乘上电波这趟车的。跟着题库,我们下一站见。

继续阅读

全部归档