This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] AFE7903:抖动导致的噪声整形

Guru**** 1826200 points
Other Parts Discussed in Thread: AFE7900EVM, LMK05318, LMK5B12204, AFE7903
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/rf-microwave-group/rf-microwave/f/rf-microwave-forum/1305247/afe7903-noise-shaping-due-to-dithering

器件型号:AFE7903
主题中讨论的其他器件:AFE7900EVMLMK05318LMK5B12204

我们正在努力应对有关 CW 信号的意外噪声波形。 只有当我们使用相同的 TRx 对信号进行采样、对其进行处理并使用相同的 TRx 将其发送出去时、才会出现这种情况。 该情况随着 TRX 中的环回而发生、如果环回在 FPGA 中完成、也会发生。 只有噪声肩的形状会发生变化。 如果我们采集信号或使用合成信号发送信号、我们就看不到这样的噪声。 下面是一个示例

这种噪声整形通常与抖动有关。 我们使用了"AFE79xx 编程用户指南"中提到的 DITHER 寄存器。

 JESD 子芯片寄存器映射的寄存器 A0h 中的位 TX_CLK_DIFJINED_MODE_EN 具有某种影响。 如果我们回读它、它设置为0x03、这意味着禁用时钟并启用抖动。 再次向该寄存器写入0x03会肩膀失去作用。 这很奇怪。 写入1、2或3有时会改变一些东西、产生杂散、减少噪声、完全破坏信号或工作完美而平稳。 因此、我认为不需要手动写入该寄存器。

你能解释一下该怎么办?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Christian:

    您能否提供图片的频率范围、以了解噪声延伸到哪一侧?

    根据它与输出信号的接近程度、我们可以将此噪声归因于时钟的相位噪声。 我进行了快速测试、将两个 AFE7900EVM 设置为环回模式以显示此情况。 一个是正常 EVM、它为 AFE 提供从 LMK 到 AFE PLL 的 Fref 时钟、并且我看到以下噪声形状(我正在频谱分析仪中使用"Max Hold"):

    第二个 EVM 从信号发生器获取外部时钟、为 AFE 提供 DAC 时钟、并且可以获得以下结果:

    可以看到、这种情况下的时钟源主要是 DAC 输出周围的相位噪声。

    有关修改 EVM 以使用外部时钟的指导、请参阅 External_Clocking_Guide 安全文件夹中的 AFE79xx_EVM_EVM.pptx 指南。

    此致!

    Camilo

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你好、Camilo

    您的第一张图片看起来与我们的"非回送"单(蓝色)完全相同我们也有5 MHz 跨度。 相位噪声主要由我们的时钟源决定。 如果我们使用本地环回、绿色图形的形状会发生。  

    可能与频率设置有关。 我将尝试在 EVM 上重现此错误。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Christian:

    好的、请尝试使用具有干净外部时钟源的 EVM、以查看信号周围的噪声是否有所改善。

    此外、对于我的测量、我使用了 AFE 内部环回模式。 只是为了确保我跟随。 根据您的说法、在使用 AFE 内部环回模式时会看到绿色噪声形状? 如果是、您是否看到 RX 射频输入的噪声波形?

    此致!

    Camilo

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你好、Camilo

    我在使我们的配置在 EVM 上运行时遇到问题。 我现在能够重现此示例。 您将在私人消息中获得该文件。

    我找到了一张图片、展示了我们自己的硬件以及第三个信号。 橙色信号带有生成的音调。 其中绿色的环回在 FPGA 中、蓝色的环回在 TRX 内部。  

    环回信号显示出较低的噪声、因为在某些频率偏移下会生成音调。 这与振荡器的相位噪声无关。

    下图是使用 TRX 环回的 EVM 以及我将向您发送的配置。

    也会出现相同的噪声。 您可能需要一个非常好的频谱分析仪才能看到它。 我们使用 R&S 提供的 FSW FSV 不够好。

    也许您可以修改我们的配置、以使用采集板来生成音调。 但我无法让它在我们的 TSW14J56上运行。

    我还会尝试使用外部时钟运行它、但我相信这不会改变任何情况。 在我们自己的硬件上拍摄的图片是使用非常糟糕的时钟拍摄的。 改善相位噪声会改变电平、但不会改变噪声肩的形状。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Christian:

    我在 AFE7900EVM 上使用了您的配置、该 EVM 使用来自 LMK 的时钟并使用内部环回让输出低于该时钟。 因为您可以看到肩膀存在。

     

    然后、我将您的配置修改为使用外部时钟、并在修改为使用 EXT 时钟的 AFE7900EVM 上对其进行了测试。 您可以看到、由于时钟相位噪声改善、信号绕肩处的噪声已消失。

     

    我将通过私人消息为您提供外部时钟的更新配置。 如果可以在 EVM 中进行修改、我会建议使用干净的外部时钟进行测试来证实。

    此致!

    Camilo

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你好、Camilo

    我知道、提升振荡器的质量将大体上减少相位噪声并将噪声移动至一个无关紧要的水平。 但对我们来说、这样做并不实际、因为硬件已经存在。 另外、如果我们使用一个 TRX 的 ADC 和另一个 TRX 的 DAC、那么时钟对我们来说也足够好了。 这就是我们选择这种廉价硬件解决方案的原因。 但现在 我们需要处理信号并对 ADC 和 DAC 使用相同的 TRX。 现在我们看到这些肩膀。 我们现在有一个问题。 我们要么需要重新设计我们的硬件、要么需要在 TRX 内找到一个解决方案。

    我确信这与抖动有关。 有很多寄存器可以操作、但没有文档。 更改 X_CLK_DIJITASED_MODE_EN 会产生积极的影响、但通常会 导致无法使用的 TRX 或信号损坏。 你有一个想法如何玩抖动?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Christian:

    AFE 中的抖动是数字时钟的一项设置。 相位噪声仅取决于模拟。

    我注意到在你的脚本中、你的自由是122.88MHz。 您是否可以将 Fref 频率更改为491.52MHz? 通过将 Fref 更改为491.52MHz、您应该会看到相位噪声得到改善。

    另外、您要将什么用作 AFE 的时钟源?

    此致!

    Camilo

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你好、Camilo

    我们已尝试过491.52 MHz 并将会使用它。 但这只会略微降低噪声水平、但不会减小形状。

    我们使用 AD9542作为时钟源。 现在、您的 LMK5B12204或 LMK05318将具有更好的相位噪声。 但 我们希望避免重新设计、因为这些 PLL 非常复杂、切换到另一 PLL 需要一些时间。

    如果您看看我的图、您能解释一下噪声的不同形状吗? 如果这种肩膀噪声成形不会出现、我们将实现必要的性能。

    此致、

    Christian

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Christian:

    在环回模式下、有几个因素可能会影响 DAC 中的相位噪声、例如时钟和 RX 通道的输入信号。

    您能否将输入到 RX 通道的射频源连接起来并在频谱分析仪中提供您看到的结果? 这是为了查看您的射频源中是否存在这些肩部。

    使用 AFE 内部环回时、您是否在不同的信号源下看到相同的噪声形状?

    此致!

    Camilo

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你好、Camilo

    输入信号正常。 没有这种噪音。

    是的、它会以任何类型的信号出现。 我们使用调制宽带信号和不同的发生器对其进行了测量。 如果您使用我发送给您的配置、您也可以在您的站点上看到此信息。 但您需要更好的分析仪、这可能会成为问题。

    我想使用您的其中一个 FPGA 采集卡采集信号。 因此、我能够通过中性硬件查看 ADC 的信号质量。 我们可以将多个 tsw14j56放在周围。 但在实际的软件中、我无法再让它运行。 之前版本一样、它可以正常工作。 但所有相关脚本都以某种方式损坏或缺失。 您是否了解如何使其运行?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你好、Camilo

    我做了很多测量并得出了一些结论。

    我们无法使用 AD9542 PLL 实现必要的性能。 我们需要取得更好的成绩。

    LMK5B12204符合我们对时钟架构的需求、并且具有好得多的相位噪声。 但现在 AFE 是限制因素。 下图显示了数据表中的相位噪声。

    100kHz 至200kHz 附近的噪声增加是一个问题。 再加上环回情况下的噪声整形、性能无法使用。 我们必须消除对这个噪声峰值所做的噪声整形和/或改进。 我知道、使用频率达1GHz 的外部时钟会显著改善。 但这需要第二个 PLL 以及重新设计电路板。 我现在有两个问题:

    1.是否可以减少或消除噪音?

    2.如何提高 PLL 的性能?

    我已使用 TRX PLL、并通过增大电荷泵电流实现了更好的性能。 这通过 Latte 中的以下命令来完成:

    AFE.regs.writeReg (0x0015、0x40)

    AFE.regs.writeReg (0x0170、0x01)

    AFE.regs.writeReg (0x0015、0x01)

    AFE.regs.writeReg (0x0040、0x60)

    调优 CTL_CP_BIAS (寄存器0x41)或 CTL_LPF_R (寄存器0x43)也会产生影响。

    但我更喜欢一种更安全的调优方法。 PLLatinum 中是否有 PLL 的仿真? 是否允许修改寄存器?或者首选的方式是什么?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Christian:

    我会联系我们的设计团队、提出您的问题。 此外、只有几个评论/问题:

    只是为了确保清楚、您需要实现什么性能?

    您是否能够使用相位噪声分析仪? 如果是、您能否提供射频输入到 AFE 的 RX 通道和输出从 TX 通道的相位噪声图?

    我问过射频源的性能、因为从您展示的图中可以看到、使用 RX 捕获信号时只能看到高肩膀。 因为使用 FPGA 的数字音调时没有看到高肩。 我的理解是否正确?

    此致!

    Camilo

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你好、Camilo

    我们需要在 100kHz 至250kHz 范围内实现-75dBc 的噪声水平、 在250kHz 至500kHz 范围内实现-80dBc 的噪声水平(在30kHz 范围内测量)。 或者由于30kHz、相位噪声降低了44dB、从而导致-119/-124。 均在400 MHz 附近测量。 转换为数据表中的相位噪声图、结果为 ~112 @ 250kHz @ 1910 MHz。

    通常我们使用足够干净的 SMBV100A。

    我还使用了好得多的 SMA100A 完成了所有测量。 但这不会改变任何值。 信号不是问题。

    以下是信号重复时的相位噪声。 您看到噪声位于250kHz 和800kHz 左右。

    我非常想向大家展示生成的音调的性能。 但是、随着我切换到 EVM、我将无法再执行该操作。

    是的、您回答正确。 她的语气中带着些许嘲笑的意味。 我很确定现在有一个较小的肩膀具有改进的时钟、但不会像重复模式那样高。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你好、Camilo

    我已经在你的库中挖了点沟、并找到了一些有用的 python 函数。

    AFE.TOP.adjustPllLoopBw(0..15)

    这会以比直接写入寄存器好得多的方式调整电荷泵电流。 但对于 AFE7903、Python 代码本身是错误的。 所以我必须修补它。 以下是 mTopLib.py 提供的修复功能

    	def adjustPllLoopBw(self,factor):
    		""" higher the factor, higher is the loop bandwidth """
    		if self.systemParams.chipId==0x79 and self.systemParams.chipVersion==0x20:
    			factor_list=[0.8, 1.0, 1.2, 1.4, 1.6, 2.0, 2.4, 2.8, 3.2, 4.0, 4.8, 5.6, 6.4, 8.0, 9.6, 11.2]
    			cp_current_factor=[1,2,4,8]
    			cp_current_factor_index=[1,0,2,3]
    		else:
    			factor_list=[0.8, 1.0, 1.2, 1.4, 1.6, 2.0, 2.4, 2.8, 3.2, 4.0, 4.8, 5.0, 5.6, 6.0, 6.4, 7.0, 7.2, 8.0, 8.4, 9.6, 11.2, 12.0, 14.4, 16.8]
    			cp_current_factor=[1,2,4,5,6,8,12]
    			cp_current_factor_index=[1,0,2,5,4,3,7]
    		cp_scaling=[1,0.8,1.4,1.2]
    
    		if not 0<=factor<len(factor_list):
    			error("Incorrected Value Given.")
    			return
    		val=factor_list[factor]
    		found = False
    		for j in cp_scaling:
    			for i in cp_current_factor:
    				if round(i*j,2)==val:
    					found=True
    					break
    			if found==True:
    				break
    		self.requestPllSpiAccess(1)
    		self.regs.PLL.PLL.REGGROUP_0.Property_20h_7_5=cp_current_factor_index[cp_current_factor.index(i)]
    		self.regs.PLL.PLL.REGGROUP_0.Property_8h_19_18=cp_scaling.index(j)
    		self.requestPllSpiAccess(0)
    		#adjustPllLoopBw

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、 Christian:

    我将就此问题与我们的软件团队进行联系。

    您还说过、您能够通过更改 PLL 环路带宽来获得更好的性能。 即使这样、您是否无法达到所需的性能?

    此致!

    Camilo

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你好、Camilo

    是的、我做到了。 我能够使噪声低于限值~5dB。 希望已经足够了。 根据您的数据表、 容差、 尤其是温度可能会接近我们的限值。 我认为、由于数据延迟、噪声形状也会发生变化。 如果我们通过 FPGA 执行环回、我们会看到这个情况。 这不是很酷的效果、并且会多消耗几 dB。

    总之、5dB 是好的、但可能并非所有情况下都足够。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Christian:

    我是从软件团队那里得到的反馈。 除了调节 PLL 环路带宽、AFE 中还没有其他设置可以进一步改善 PLL 相位噪声。

    此致!

    Camilo

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你好、Camilo

    感谢您的回答。 我们将使用不同的外部 PLL 并调整 TRX PLL。 最后一个问题。 是否有任何有关如何调优 TRX PLL 的建议? 我不喜欢随机玩环路滤波器、也不知道它是否稳定。 如果 AFE 系列出现在 PLLatinum 软件中、那会很棒。 也许您回收了用于 AFE 的现有 PLL 设计之一、并可以在 PLLatinum 中对该器件进行一些仿真。

    此致!

    Christian

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Christian:

    默认设置保证是稳定的。 我们仅提供函数、以便您可以检查是否可以获得所需的相位噪声性能。 我们的建议是采用默认设置。

    我们没有可用于 PLLatinum 的模型。

    此致!

    Camilo

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你好、Camilo

    好的、我明白了。

    感谢您对此主题的帮助。

    此致!

    Christian

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Christian:

    没问题。

    此致!

    Camilo

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Christian:

    我知道这个问题可能仍然存在、因此我已经解锁了该线程。 您能否想介绍一下当前问题以及我可以提供哪些支持?

    谢谢!

    Aman

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你(们)好

    我总结一下:

    如果在环回模式下使用收发器(TRX 或 FPGA)、该收发器会进行噪声整形。 根据设置、这会将我们的噪声容限降低8dB。

    无法消除这种噪声整形。

    凭借近乎完美的外部 PLL (TI LMK5B12204:-)由于内部 PLL、我们仍处于极限状态。 目前无法切换到没有内部 PLL 的设计。

    因此、我们需要稍微改进内部 PLL。 在那里,我们正在挣扎,因为这不是我们打算做的。

    *没有  PLLatinum 的仿真来验证设置

    * Buggy adjustPllLoopBw python 函数

    实际上、我们被迫直接修改某些寄存器、这不能令人满意 。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Christian:

    感谢您的总结、这对我很有帮助! 我正在按优先级顺序解决各种问题、但我会检查我们是否有任何额外的资源来调整内部 PLL。

    谢谢!

    Aman