我正在构建没有载波频率的光学OOK(开关键环)系统。 [但是我在符号之间有一个保护时间,因此连续的“ 1”消息将导致脉冲序列而不是DC,请参见图)。本质上,信号的存在指示一个,信号的缺失指示零。我有一个精确的时钟,可以将接收器与发送器同步。该系统以低SNR运行,我希望使用DSP技术来提高SNR。

我有几个问题:

我在硬件中进行选择性采样,换句话说,我不是连续采样通道,而是仅在看到信号最大(即,这是一个光脉冲,我对ADC计时,以便ADC在脉冲结束时对整个模拟链都稳定的位置进行采样)。见图片。


自然地,该图没有显示噪音,但它在那里。特别是低信号系统,主要噪声源是散粒噪声,约翰逊噪声和放大器内部噪声。 (光学系统,因此除Sun外没有其他干扰源)。我对噪声的观察表明,它在所有频率上都是相似的。 (至少我在Scope中看到了)

我现在在软件中使用简单的阈值比较来确定数据是一还是零。有没有更好的办法?我曾考虑过一些选择,但我希望收到专家的来信。

到目前为止,我已经考虑了以下选项:


进行连续ADC并尝试在上升时间进行积分:不完全
确保收益(我不知道还有其他好处)。
软件中匹配的滤波器:并不真正理解数学,而是根据我所读的内容,
在保护时间内进行采样,并从信号ADC值中减去该值
(这可能会提供更多详细信息,但也不能确定,
保护时间就是噪声的测量)
将硬件更改为同步解码器,成本高,耗时且
可能无法很好地工作,因为我的数据速率很快,而要获得
同步解调器则意味着电路板很昂贵,因为我必须
建造一个多-MHz载波频率系统。


评论

您的采样器如何知道何时发生脉冲?发射器和接收器之间是否还有其他形式的时间同步?

@JasonR是的。在正文中提到过。

抱歉,我在初读时错过了它。噪声如何表征?是白色的吗?高斯?到底是噪声还是来自其他来源的干扰?需要注意的是,我认为您列出的前两个选项是等效的,它们可能与您的问题有关,但是我想首先了解有关系统条件的更多信息。

@JasonR感谢您的反馈,我更新了有关噪音的问题。

我会在匹配的过滤器上下大注。

#1 楼

由于您指出背景噪声的功率谱是平坦的,因此我假设它是白色的。当前方法的一个主要缺点是您要舍弃大量信号功率。即使您的图表通过指数上升阶跃响应显示了前端带宽限制的影响,在舍入脉冲的末尾附近的单个ADC样本也提供了接收器输入的快照,该快照在时间上相当局限。您可以通过以更高的速率进行采样并以更高的采样率应用匹配的滤波器来利用更多的信号功率。

理论:

您可以查看一下作为检测理论中一个相对简单的问题。在每个符号间隔中,接​​收方需要在两个假设之间做出决定:

$$
\ begin {eqnarray *}
H_0&:&信号\不存在\\
H_1&:&信号\存在\存在
\ end {eqnarray *}
$$

这类问题通常使用贝叶斯决策规则来解决,该规则尝试根据某些特定的风险度量做出最佳决策。这提供了一个框架,在该框架中,可以基于一组灵活的标准来最佳地做出检测决策。例如,如果您的系统因未能检测到实际上存在的信号而遭受巨额罚款(即,当$ H_1 $为true时您选择了$ H_0 $),那么您可以根据需要将其内置到决策规则中。

对于像您这样的检测问题,您试图在接收器输出中在零与一之间做出选择,通常会认为惩罚是相等的(发送一个为零时输出为零,反之亦然,“均等地损害”) )。在这种情况下,贝叶斯方法简化为最大似然估计量(也在此处进行描述):根据接收者的观察,您选择最有可能的假设。也就是说,如果您的接收方观察到的数量为$ x $,则它将基于具有最大似然函数值的假设生成决策。对于二元决策情况,可以使用似然比:

$$
\ Lambda(x)= \ frac {P(x \ | \ H_0 \是\ true)} {P(x \ | \ H_1 \ is \ true)} = \ frac {P(x \ | \ signal \ is \ not \ present)} {P(x \ | \ signal \ is \ present)}
$$$

使用上述模型,对于每个观测通道$ x $,如果似然比,则最佳接收器将确定信号不存在(因此输出零)。 $ \ Lambda(x)$大于1(因此根据观察,信号极有可能不存在),反之亦然。

剩下的是信号的模型兴趣和可能影响其决策的接收器检测统计量$ x $中的任何其他组件。对于这样的数字通信,可以将其建模如下:

$$
\ begin {eqnarray *}
H_0&:&x = N \\
H_1&:&x = s + N
\ end {eqnarray *}
$$

其中$ n $是从某种分布中获取的随机变量(通常假定为零均值高斯),而$ s $是观测的确定性分量,这是由于您要寻找的信号所致。因此,接收者可观察的$ x $的分布根据假设$ H_0 $或$ H_1 $是否成立而变化。为了评估似然比,您需要一个模型说明那些分布。对于上面提到的高斯情况,数学看起来像这样:

$$
\ Lambda(x)= \ frac {P(x \ | \ H_0 \是\ true)} {P(x \ | \ H_1 \ is \ true)} = \ frac {P(x \ | \ x = N)} {P(x \ | \ x = s + N)}
$$

\ Lambda(x)= \ frac {P(x \ | \ H_0 \是\ true)} {P(x \ | \ H_1 \ is \ true)} = \ frac {e ^ {\ frac { -x ^ 2} {2 \ sigma ^ 2}}} {e ^ {\ frac {-(x-s)^ 2} {2 \ sigma ^ 2}}}
$$

其中$ \ sigma ^ 2 $是高斯噪声项的方差。注意,加性信号分量仅具有使所得高斯分布$ x $的平均值移位的功能。对数似然比可用于消除指数:

$$
\ ln(\ Lambda(x))= \ ln \ left(\ frac {e ^ {\ frac {-x ^ 2} {2 \ sigma ^ 2}}}} {e ^ {\ frac {- (x-s)^ 2} {2 \ sigma ^ 2}}} \ right)= \ left(\ frac {-x ^ 2} {2 \ sigma ^ 2} \ right)-\ left(\ frac {- (x-s)^ 2} {2 \ sigma ^ 2} \ right)
$$

回想一下,如果似然比大于1,则我们的决策规则选择了$ H_0 $。等效的对数可能性决策规则是,如果对数可能性大于零,则选择$ H_0 $。一些代数表明决策规则简化为:

$$
\ begin {eqnarray *}
x <\ frac {s} {2} \ rightarrow选择\ H_0 \\
x> \ frac {s} {2} \ rightarrow选择\ H_1
\ end {eqnarray *}
$$

请注意,如果$ x = \ frac {s} {2} $,则两个假设的可能性均等,您只需要选择一个即可。但是,对于连续值的信号,这并不是实际的问题。因此,给定已知信号幅度$ s $,我们可以通过设置阈值$ T = \ frac {s} {2} $来在高斯噪声的背景下最佳地检测到它的存在。如果观测值$ x $大于$ T $,则声明存在信号并发出一个信号,反之亦然。

实践:

有一些这些简单的玩具理论示例中涉及的实际问题。一:将您描述的场景映射到一个看似简单的看似模型中似乎并不简单。其次,很难知道要查找的信号的幅度$ s $,因此阈值选择需要一些思考。

正如我之前提到的,通常假定噪声是高斯,因为正态分布非常容易使用:一堆独立的高斯的总和仍然是高斯,它们的均值和方差也相加。同样,分布的一阶和二阶统计量足以完全表征它们(给定高斯分布的均值和方差,您可以编写其pdf)。因此,希望至少对于您的应用程序来说是一个不错的近似值。

给定上述模型,有两种方法可以提高检测器的性能:您可以增加$ s $(即增加信号功率) ),使其更能抵御噪音。您可以减少$ N $(即减少噪声量),减少使$ s $存在不清楚的干扰量。或者,等效地,您可以考虑信噪比。要了解其重要性,让我们回到理论上来。根据我们的决策规则,发生错误的几率是多少?

$$
\ begin {eqnarray *}
P_e&=&P(选择\ H_0 \ | \ H_1 \ true)P(H_1 \ true)+ P(选择\ H_1 \ | \ H_0 \ true)P(H_0 \ true)\\
&=&\ frac {1} {2} P(x <\ frac {s} {2} \ | \ x = s + N)+ \ frac {1} {2} P(x> \ frac {s} {2} \ | \ x = N)\\
&=&\ frac {1} {2} F_ {x \ | \ x = s + N} \ left(\ frac {s} {2} \ right)+ \ frac {1} {2} \ left(1-F_ {x \ | \ x = N} \ left(\ frac {s} {2} \ right)\ right)
\ end {eqnarray *}
$$

其中$ F_ {x \ | \ x = s + N}(z)$是观测值$ x $分布的累积分布函数,假定$ x = s + N $(其他函数也是如此)。用cdf代替高斯分布,我们得到:

$$
\ begin {eqnarray *}
P_e&=&\ frac {1} {2} \ left(1-Q \ left(\ frac {\ frac {s} {2}-s} {\ sigma} \ right)\ right)+ \ frac {1} {2} Q \ left(\ frac {\ frac {s} {2}} {\ sigma} \ right)\\
&=&\ frac {1} {2} + \ frac {1} {2} \ left(-Q \ left(\ frac {\ frac {s} {2}-s} {\ sigma} \ right)+ Q \ left(\ frac {\ frac {s} {2}} {\ sigma} \ right)\ right)\\
&=&\ frac {1} {2} + \ frac {1} {2} \ left(-Q \ left(\ frac {-s} {2 \ sigma} \ right)+ Q \ left (\ frac {s} {2 \ sigma} \ right)\ right)\\
&=&\ frac {1} {2} + \ frac {1} {2} \ left(-Q \ left(\ frac {-SNR} {2} \ right)+ Q \ left(\ frac {SNR} {2} \ right)\ right)\\
&=&Q \ left(\ frac {SNR} {2} \ right)
\ end {eqnarray *}
$$

其中$ Q(x)$是Q函数:

$$
Q(x)= \ frac {1} {\ sqrt {2 \ pi}} \ int_ {x} ^ {\ infty} e ^ {\ frac {-z ^ 2} {2}} dz
$$

(即标准正态分布的pdf的尾部积分,或$ 1 $减去分布的cdf),而$ SNR $是信噪比$ \ frac { s} {\ sigma} $。上面的函数是$ SNR $的严格递减函数;当您增加信号幅度$ s $与噪声标准偏差$ \ sigma $的比率时,产生位决策错误的可能性就会降低。因此,应该采取一切措施来增加此比率。

还记得我们关于噪声是白噪声和高斯噪声的假设吗?现在可以为我们提供帮助。如果噪声是白噪声和高斯噪声,则每个观测值中包含的噪声分量将相互独立。独立随机变量的一个重要属性是,将它们加在一起时,它们的均值和方差即为和。因此,让我们考虑另一种简单的情况,在这种情况下,不是每个符号间隔取一个样本,而是取两个样本,然后将它们加在一起。为了简单起见,我假设脉冲形状是矩形(不是指数上升),所以每个观测值$ x_1 $和$ x_2 $中的信号分量$ s $是相同的。单个观测值$ x_1 $与两个独立观测值之和之间的信噪比有何不同?

$$
SNR_1 = \ frac {s} {\ sigma}
$$

SNR_2 = \ frac {2s} {\ sqrt {2 \ sigma}} = \ sqrt {2} SNR_1
$$

因此,组合观测中的信噪比大于仅使用单个样本(在两个信号分量均等且方差白高斯噪声相等的情况下)我们抽取的样本)。这是一项基本观察,指出了每个符号间隔获取多个样本并将它们集成在一起的潜在好处(对于矩形脉冲,这是一个匹配的滤波器)。通常,您希望使用样本覆盖整个符号间隔,以便接收器“摄取”每个符号的发射能量,从而使组合输出中的SNR最大化。在评估数字通信系统性能时,经常将符号能量与背景噪声方差$ \ frac {E_s} {N_0} $的比率用作品质因数。

更严格地说,可以证明匹配滤波器的脉冲响应形状与接收器的脉冲形状相同(即“匹配”,唯一的例外是脉冲响应在时间上反向)。可见(因此它对具有较大信号分量的样本的权重更大)。该形状是发射脉冲形状以及通道或接收器前端引起的任何影响(例如,带宽限制或多径)的函数。

要在实践中实现这种安排,您需要将ADC采集的样本流与时间反转的预期脉冲形状进行卷积。这具有为所有可能的时间偏移计算脉冲形状与接收信号之间的互相关的效果。您可以通过精确的时间同步来帮助实现,因此您将确切地知道哪些匹配的滤波器输出样本对应于正确的采样时刻。当时的滤波器输出在上面的理论模型中用作检测统计量$ x $。

我之前提到阈值选择,这可能是一个复杂的话题,并且有很多不同的方法可以您可以根据系统的结构选择一个。为开关键系统选择阈值会因信号幅度可能未知而变得复杂。其他信号星座,例如对立信号(例如二进制相移键控或BPSK)具有更明显的阈值选择(对于BPSK,对于相同可能性的数据,最佳阈值为零)。

OOK阈值选择器的一种简单实现可能会计算许多观测值的平均值。假设零和一的可能性相等,则所得随机变量的期望值为信号幅度的一半,这是您要寻找的阈值。在滑动窗口上执行此操作可以使您在某种程度上适应变化的背景条件。

注意,这仅是对检测理论中数字通信中固有问题的高级介绍。这可能是一个非常复杂的话题,涉及很多统计数据。我试图使它易于理解,同时又忠于基础理论。要获得更好的解释,请获取一本好书,例如Sklar的书。

评论


$ \ begingroup $
感谢您的详细回答,我从中学到了很多。我想问一些澄清。我在持续时间内得到了不止一个样本。在这种情况下,匹配的过滤器是什么样子?说,我有三个样本x1,x2,x3(x3在尾端,x1在开始)。根据我的读物,我必须将其与相同但对称的形状信号进行卷积。您能否解释一下这一部分? [我想我知道答案,但只是要确保]第二部分,我知道在进行测量时输入信号的动态范围是多少。我可以使用该范围进行阈值设置吗?
$ \ endgroup $
–坦白
2012年2月1日的1:35

$ \ begingroup $
匹配滤波器是一种在接收器看到的信号与预期脉冲形状之间实现滑动互相关的方法。问题中显示的图表说明了ADC看到的脉冲呈指数上升趋势。如果那确实是您所看到的接收器模型,那么适当的匹配滤波器将具有相同的形状,只是时间上会反转(时间反转会将卷积运算变为相关)。如果接收器前端没有明显地使脉冲失真,则可以使用“理想”矩形匹配滤波器,该滤波器更易于实现。
$ \ endgroup $
–Jason R
2012年2月1日下午4:54

$ \ begingroup $
关于第二个问题:是的,如果您先验地知道信号分量的期望幅度,则可以使用它来选择阈值。使用系统的统计模型(基于存在的噪声类型),您可以根据信噪比(与信号幅度成正比)来计算误码率。如果接收器的热噪声是主要噪声源,那么通常假设是高斯白噪声。
$ \ endgroup $
–Jason R
2012年2月1日4:57



$ \ begingroup $
我的接收器有一个BPF,可以切断高频信号。 BPF消除了脉冲的初始尖峰,实际上它变得更加指数化。我可以禁用BPF,但这会引入当前不在链中的HF噪声。听起来我有一个权衡,我如何量化哪种方法更好。 (即删除BPF并使用匹配的滤波器进行脉冲,请勿删除BPF并使用匹配的滤波器进行指数上升)
$ \ endgroup $
–坦白
2012年2月1日下午6:21

$ \ begingroup $
我向您授予了赏金,非常感谢。
$ \ endgroup $
–坦白
2012年2月6日上午9:13

#2 楼

一种可能的技术可能是尝试使用周期性训练序列来收集统计信息,不仅可以区分1和0,还可以针对任何给定阈值计算可靠性指标,还可以分析各种比特序列如何影响自适应比特决策阈值。

评论


$ \ begingroup $
有趣的想法但不适合。我需要快速做出决定,即使我使用以前的数据,该领域的差异也会很大。
$ \ endgroup $
–坦白
2012年1月31日23:49