自制6GHz脉冲压缩雷达
介绍了如何利用快速数字信号处理廉价构建现代脉冲雷达的经验,在设计中使用了KiCad绘制PCB,使用ngspice做系统仿真。
标签
SDR
软件无线电
数字信号处理
脉冲雷达
adking
更新2024-04-06
2541

原文出处:Homemade 6 GHz pulse compression radar


之前制作过几款FMCW雷达,效果很好。 FMCW(调频连续波)雷达制造起来非常简单且便宜。它使用单独的发射和接收天线,从而避免了在接收和发射之间切换的需要。它将接收信号与发送信号混合,从而产生低输出频率,从而可以使用低速模数转换器(ADC)。然而,大型、严肃的雷达通常不是 FMCW 雷达,而是脉冲雷达。在发射和接收模式之间切换一根天线使他们可以仅使用一根天线。当天线直径以米为单位测量时,需要多少天线就非常重要。脉冲雷达可以使用较大的发射功率,而不必担心接收器饱和,而这是 FMCW 雷达的一个大问题。脉冲雷达也更适合测量快速移动目标的速度,因为它可以更频繁地发射脉冲,从而导致它可以测量更大的最大最大明确多普勒频移。

FMCW 和脉冲雷达架构

由于这些原因,FMCW 雷达通常用于短距离应用,例如汽车雷达和飞机高度计,而脉冲雷达主要用于长距离应用,例如气象雷达、飞机探测以及飞机或卫星的合成孔径雷达成像。

脉冲雷达的设计比 FMCW 雷达困难得多。为了共享一根天线,需要在发射和接收之间非常快速地切换。雷达脉冲以光速传播,例如,如果从发射切换到接收需要 1 微秒,则在切换时间内将错过 150 米距离内目标的所有反射。共用一根天线导致雷达的最小探测距离可达数百米,这使得它不适合短距离操作。

另一个困难是脉冲雷达需要更快的 ADC 来捕获接收到的脉冲。 FMCW 雷达混合发送和接收的波形,从而在混合器输出处为每个目标产生低频正弦波,对于短距离操作,可以使用 1 MHz 甚至更低的 ADC 采样频率,同时使用数百 MHz 的 RF带宽。脉冲雷达需要更快的 ADC,通常足够快以对发射脉冲的整个 RF 带宽进行采样。雷达的距离分辨率由 RF 带宽决定,为了获得有用的距离分辨率,ADC 采样率应为数百 MHz 甚至超过 1 GHz。这种快速 ADC 非常昂贵,并且需要昂贵的数字电子设备来处理所有数据。

本文介绍了我利用快速数字信号处理廉价构建现代脉冲雷达的经验。


脉冲压缩雷达

脉冲雷达有很多种,我想做的是一种支持任意波形的脉冲压缩雷达。对于许多实际应用来说,仅生成线性频率扫描可能更简单且足够,但它不会那么有趣。

对任意波形的要​​求意味着需要有一个具有足够大采样率的数模转换器(DAC)来生成传输波形。接收器还需要具有足够大采样率的 ADC 来对整个 RF 带宽进行采样。

雷达射频侧框图

上图是雷达的框图。该架构与软件定义无线电 (SDR) 非常相似,也可以用作无线电。该雷达有两根时分复用接收天线,其中一根共用发射机。我添加第二个接收器通道主要是因为它非常便宜,只需要额外的开关、LNA 和 SMA 连接器。第二个接收器通道使得雷达也可以在 FMCW 模式下使用。

在适当的雷达系统中,一些过滤对于发射器和接收器都是有用的,但为了省钱我把它留在这里了。

超外差和零中频(直接变频)发射机。中频超外差混频以数字方式完成。

TX和RX是零中频架构。从性能的角度来看,这并不理想,但它是最便宜的选择。所有混频器的输出不仅包含所需的频移信号,还包含本振 (LO) 泄漏信号和镜像信号,这些信号与所需信号相同,但在 LO 频率的另一侧混合。如果 DAC 以偏移频率生成信号,则可以使用带通滤波器在混频器输出处滤除不需要的频率,但对于零中频发射机,这些不需要的频率会与信号重叠,从而无法使用固定频率滤除它们。筛选。

类似地,这些相同的非理想性也存在于接收器处。这些非理想性会导致接收波形失真,从而导致每个目标的距离旁瓣增加。

虽然超外差架构可以提供更好的性能,但实现它需要更多的硬件,我的目标是以最少的预算制作一个工作系统。通过零中频架构,许多非理想性都可以得到充分的数字补偿。对 DAC 输出信号进行预失真可以补偿混频器的非理想性,从而产生干净的输出信号。如果能够以足够的精度表征接收器输出信号,则也可以类似地进行数字修改,以消除许多非理想性。

时域和瞬时频率中的复杂线性扫频信号

DAC 输出复杂的 IQ 信号,该信号由 IQ 混频器调制到 LO 频率并由天线发送,然后发送/接收开关切换到接收状态,反射信号由接收器采样。每个目标反射一些发射信号,反射信号是来自每个目标的信号之和。

复杂 IQ 格式允许表示基带的正频率和负频率。在发射机 IQ 调制器处,I 和 Q 信号与 LO 和 90 度相移 LO 混合并求和。结果是正基带频率移至 LO 频率以上,而基带负频率移至 LO 频率以下。

接收信号的脉冲压缩。通过与参考信号相关,来自脉冲的功率被集中

为了获得目标位置,需要根据传输信号计算卷积。当有目标时,接收和发送的信号相关,卷积结果很大,当没有信号时,没有相关,卷积结果很小。实际上,使用快速傅里叶变换(FFT)来计算卷积,因为这实际上比在时域中计算卷积更快。

在上图中,可以在结果中的两个目标周围看到旁瓣。这是由于波形未对齐时卷积输出不完全为零造成的。将参考脉冲乘以窗函数可用于控制卷积输出的旁瓣。加窗函数也可以应用于发射脉冲以进一步减少旁瓣。加窗的缺点是它会加宽主瓣并导致距离分辨率稍差。可以通过使用的加窗函数来控制用多少旁瓣来换取分辨率。

距离多普勒处理。图中仅绘制了脉冲的幅度。信号的相位对于多普勒 FFT 很重要。

除了到目标的距离之外,雷达还可以根据在许多测量过程中接收信号的相位变化来测量目标的速度。通过发送脉冲串并在脉冲数量维度上计算 FFT,在生成的距离多普勒图中将目标在速度和距离上分开。

速度也可以通过距离的变化来测量,但使用接收信号的相移的优点在于,可以通过与距离相同的测量来获得速度,可以分离相同范围内但速度不同的多个物体,并且测量精度要好得多。检测相同范围内不同速度的多个物体对于将移动物体与静止物体(例如地面、树木和建筑物)分离非常重要,这些物体可能具有较大的反射信号,否则会掩盖小的移动物体。

使用多个天线也可以测量目标的角度,但在这种情况下,如果使用一根天线,则没有角度信息。

模数转换器和数模转换器

Digikey 的 2 通道 LVDS 接口 ADC(>10 位)、采样率与价格

ADC 采样率是系统最重要的参数之一,因为它决定了系统可以接收的最大射频带宽。 ADC 采样率应尽可能快。一般来说,使射频侧和DAC具有比ADC更大的带宽要容易得多,而限制系统的是ADC带宽。

ADC 的要求是至少有两个通道,这是 IQ 采样和 LVDS 输出接口所必需的。也可以使用两个单通道 ADC,但从 PCB 面积和布线角度来看,这是不利的。最快的 ADC 通常具有 JESD204B 数字接口,但问题是它需要带有高速串行收发器的高端 FPGA,而这些对于我的预算来说通常太贵了。 LVDS 是可连接到常规 FPGA I/O 引脚的最高速度接口。

上图中都是带有 LVDS 接口且至少 10 位的 2 通道 ADC。性价比最佳的采样率是 ADS4229,采样率为 250 MHz,单件价格为 58 欧元/件。甚至更高的 ADC 采样率也是非常理想的,但任何高于此的采样率都会变得更加昂贵。有一个具有 500 MHz 采样率的双通道 8 位 ADC,售价为 73 欧元/件,但它的 SNR 比 12 位 ADC 低 20 dB,并且采样率加倍只会返回 3 dB SNR。低位 ADC 会降低接收器的动态范围,使其更容易饱和,并且在 ADC 之前需要更多增益,因此尽管采样率较高,但我还是决定不使用它。

合适的DAC比较容易找到,我选择使用 DAC3174两通道14位500 MHz DAC,售价33欧元/片。虽然系统带宽受到 ADC 的限制,但 DAC 上拥有足够的带宽非常有用,可以使滤波变得更容易。

ADC滤波器

ADC 之前需要抗混叠滤波器,将信号频率限制在采样率(奈奎斯特速率)的一半以下,以避免混叠。为了获得最大的可用带宽,抗混叠低通滤波器的截止频率应尽可能接近奈奎斯特速率,但这使得滤波器的实现变得困难,因为它需要具有非常尖锐的截止。

滤波器在通带上还应具有相等的幅度和群延迟。幅度要求很容易理解,我们不希望不同的频率衰减不同的量。群延迟测量滤波器延迟了多少不同频率。如果对于不同频率而言群延迟差异太大,则接收到的脉冲会因滤波器而失真,从而降低其与参考脉冲的相关性。实际上,这表现为更高的旁瓣。

ADC 低通模拟设置

IQ 解调器的源阻抗为 50 欧姆差分。 ADC 输入也是差分的,其阻抗随频率变化,在较低频率下具有高阻抗,但在较高频率下输入电容很大。 ADC 数据表提供了我添加到仿真设置中的 ADC 输入模型。它建议在输入端添加一个电阻器来设置输入阻抗,串联电阻器以限制由于键合线而产生的振铃,并在输入端添加额外的电阻器和电容器以过滤采样毛刺。虽然在 ADC 输入端添加一个 50 欧姆电阻器对于滤波器设计来说是有好处的,但它会过多地衰减信号,因为接收器中已经没有足够的增益,并且 IQ 解调器线性度会随着低输出阻抗而降低。我添加了 200 欧姆电阻来最小化信号衰减。这使得滤波器设计具有挑战性,因为高负载阻抗需要使用小电容器和大电感器。较高的阻抗还会增加采样毛刺的影响,这种毛刺是由 ADC 输入采样电容器对输入信号快速采样而引起的。添加 IF 放大器将使滤波器设计变得更加容易。

100 nF 系列电容器可对 IQ 解调器和 ADC 的直流电平进行去耦。虽然最好有直流耦合信号,但 IQ 解调器和 ADC 的直流电平不同,任何显着不同的直流电平都会限制最大交流信号范围。

ADC 低通滤波器的模拟频率响应。奈奎斯特频率用垂直线标记。

滤波器的截止频率设置为 100 MHz,在 125 MHz 的奈奎斯特频率处应有 -20 dB 的衰减。高达约 60 MHz 时,幅度和群延迟都非常好,高于此值可能会更好,但在这些限制下很难改进。通带幅度存在一些变化,如果阻抗为 50 欧姆,该变化会更小。群延迟在中频下相对较好,在非常低的频率下,交流耦合电容器导致延迟急剧上升,并且在截止频率附近存在延迟峰值。如果滤波器响应出现问题,可以进行数字补偿。

DAC 抗混叠滤波器

DAC 低通滤波器的模拟频率响应。奈奎斯特频率用垂直线标记

数模转换器也是一个采样系统,它在输出端有不需要的混叠,需要滤除。 DAC 的采样率为 500 MHz,与所需的 100 MHz 信号带宽相比,使得滤波器设计变得更加容易。对于 0 至 100 MHz 信号,混叠频率范围为 400 至 500 MHz。

该滤波器设计为在 100 MHz 以下具有平坦幅度和群延迟,并且在模拟器中看起来都非常好。截止频率略高于 100 MHz,因此群延迟峰值高于 100 MHz。与 ADC 相比,混叠的频率距离更远,并且比信号衰减至少 65 dB。这种衰减量足以让 DAC 混叠不会引起任何问题,但这确实意味着它们在 RF 输出处可见。如果信号功率为30dBm,则图像信号约为-35dBm。对于合适的雷达,衰减可能应该更高,以避免在分配的频段以外的区域辐射功率。

FPGA

Xilinx Zynq FPGA 框图,该芯片具有两核ARM CPU和可编程逻辑,它们之间具有快速互连

对于此应用来说,仅使用微控制器是不可能的。脉冲生成的精确定时以及管理 ADC 和 DAC 数据需要 FPGA。脉冲生成的准确定时对于正常运行至关重要。发射和接收之间的切换需要快速准确地完成,脉冲触发或接收器中的任何定时错误都将作为大距离误差而被视为可见。

FPGA 的定价非常奇怪。看看 Digikey 或其他经销商,许多合适的零件的价格从数百美元起,更好的零件可能要花费数千美元。然而,在中国只需花费几分之一的价格就能找到完全相同的零件。由于某种原因,Zynq 7020 是中国最便宜的 Zynq FPGA 之一,售价为 17 美元,而 Digikey 的完全相同的部件售价为 173 美元。

Zynq 7020 在同一封装中具有双核 ARM-A9 CPU 和典型 FPGA 可编程逻辑。还有一个 CPU 内核很有用,因为它可以处理与 PC 的通信。它还可以运行Linux,如果我想使用它,我添加了Linux文件系统的SD卡,但最初软件是在没有任何操作系统的情况下运行的。

数字化设计

数字接口框图

由于快速 ADC 和 DAC 会传输大量数据,因此必须考虑系统是否能够跟上。在上面的框图中,绘制了重要模块之间的数字接口。 FPGA SoC由两部分组成:处理系统(PS),即双核ARM A9 CPU,以及可编程逻辑(PL),即可编程FPGA结构。它们通过 4 条 64 位AXI总线相互连接。它们的时钟频率是可配置的,在本例中,它设置为 130 MHz,接近其可以工作的上限。一条 AXI 总线保留用于 ADC 直接内存访问 (DMA),另一条用于 DAC DMA,还有第三条速度较低的 AXI 总线(图中未绘制)用于配置可编程逻辑中的寄存器。

需要快速连接到 PC 才能快速传输捕获的 ADC 样本。最初,数字处理将在 PC 上完成,但对于某些应用来说也应该可以在 FPGA 上完成。如果与 PC 的接口比 ADC 数据生成速率慢得多,则会限制雷达的触发频率。对于目标跟踪,这意味着目标位置的更新速率较慢。

1 Gbps 以太网是最快的 PC 接口,可以轻松连接到该 FPGA 芯片。 USB 3 是另一种可能的选择,提供 5 Gbps 的速度,可轻松连接到 PC,但需要外部 USB 3 收发器芯片并付出更多努力才能使其工作。

该系统有一个 DDR3 DRAM 芯片,连接到 FPGA 的 PS 侧。虽然内存芯片的时钟速度可以更快,但 FPGA 内存控制器将内存接口速度限制为 1066 MHz。内存总线宽度为 16 位。内存控制器最多支持 32 位,但需要添加第二个 DDR3 芯片,并且该系统不需要更高的带宽。

ADC 样本由 PL 侧接收,PL 侧有一个小型 FIFO 缓冲区,DMA 控制器通过 PL 侧将它们传输到 DRAM。 DAC 也有自己的 DMA 通道,但 DMA 仅使用一条 AXI 总线,将其限制为 8.3 Gbps,这低于 DAC 的需求。还需要注意的是,DDR3 带宽小于 DAC 和 ADC 带宽之和,因此不可能在存储 ADC 样本的同时从 DRAM 传输 DAC 样本。因此,PL 侧有一个 1 MB 的小存储器,用于存储 DAC 样本。脉冲样本通过以太网从 PC 传输到 DRAM,然后 DMA 将它们传输到 PL 上的小存储器,并在每个脉冲中将它们传输到 DAC。

小型 DAC 存储器将脉冲长度限制为 130 µs,但这对于脉冲雷达来说已经足够了。 130 µs 脉冲对应于 20 km 的最小检测距离,典型脉冲长度约为 1 µs。脉冲也可以在 PL 上生成,从而无需内存,但查找表实现可以更轻松地更改脉冲参数(例如加窗函数、预失真)以及测试不同类型的脉冲波形。

射频设计

RF 部件仅占 PCB 面积的一小部分。这也是项目所需的少量工作,尽管它看起来应该是重要的部分。

数字部分搞定后,是时候看看射频方面了。设计射频部件相对简单。与我之前的雷达类似,工作频率约为 6 GHz。由于许多消费类应用,这是许多现成的廉价组件的最高频率。

RF部分包括:IQ调制器、IQ解调器、用于生成LO频率的PLL、功率放大器、低噪声放大器和开关。

IQ 调制器应具有低 LO 泄漏、高镜像抑制、足够的输出功率来驱动 PA 而无需另一个放大器,以及与 DAC 输出电压范围兼容的基带电压电平。可能的商业芯片替代品并不多,而且大多数在性能上都非常相似。这同样也适用于 IQ 解调器。

选择功率放大器更加困难。虽然大型、昂贵的雷达通常以千瓦甚至兆瓦为单位测量发射功率,但在这种情况下这是不现实的。我希望拥有至少 1 W 的峰值 RF 功率,但令人惊讶的是,尽管 WLAN 应用需要功率放大器,但 6 GHz 频段的选择却很少。我找到的最合适的放大器是Skyworks SE5004L,它具有 2 W 典型输出、1 dB 压缩点和 32 dB 的高增益,但其文档严重缺乏。没有任何增益与频率的关系图,并且需要一些外部组件,但数据表中没有它们的任何值。外部组件的解决方案可以在 SE5004L-EK1 评估套件文档中找到,其中包含该芯片的评估板原理图。尽管在一些中国经销商处有售,但目前普通经销商处也缺货。最后我决定使用它,因为没有很多其他具有足够输出功率的廉价替代品。

T/R 开关的开关速度非常重要,它应该具有足够高的功率处理能力,以处理 1 W 功率放大器输出,而不会使信号放大或失真。特别是快速开关速度是一项排除许多选择的要求。我最终选择了 具有 55 ns 开关速度和 37 dBm 1 dB 压缩点的MASW-007588开关。虽然 55 纳秒很快,但光在这段时间内传播了 16.5 米。有专门为此类应用设计的更好的开关,但它们对于我的预算来说太贵了。

另一种选择是使用循环器而不是开关。这对于较高功率雷达来说很常见,因为循环器可以处理数百瓦的功率,并且没有开关速度。有一些用于此频率的环行器,但它们的一个大问题是它们非常大并且比简单的开关贵得多。

接收器应具有足够的放大率,使 RF 本底噪声高于 ADC 量化本底噪声。 ADC 输入处的 RF 本底噪声频谱可计算为:k时间�时间, 在哪里k是玻尔兹曼常数并且时间时间是开尔文温度。这导致室温下的功率密度约为 -174 dBm/Hz。

LNA放大热噪声并添加一些噪声,该噪声由LNA的噪声系数决定。开关和PCB线路有一定损耗。 IQ 解调器的电压转换增益可用于计算 ADC 输入处的输出电压密度。

ADC 本底噪声可以根据 SNR 规格计算得出,本例中为 69.4 dBF(相对于满量程的分贝)、采样率为 250 MHz、最大输入电压为 2 V 峰峰值 (0.707 Vrms)。每个样本的噪声比 0.707 Vrms 最大输入电压低 69.4 dB,并且一秒内有 2.5 亿个样本,相当于 1 赫兹的带宽。这使得 ADC 本底噪声密度为 -156 dBV/Hz。

考虑从 LNA 开始的整个信号链后,计算 ADC 输入处的 RF 本底噪声,得出约 -155 dBV/Hz 的本底噪声。这还远远不够。 RF 本底噪声应远高于 ADC 本底噪声,通常约为 10 dB,以便 ADC 量化噪声不会增加整个接收器的噪声。 ADC 驱动放大器可以轻松获得足够的增益,但具有足够高带宽的低频放大器却非常昂贵。最后,我决定将本底噪声提高几分贝。

最大检测范围

雷达的最大探测距离可按下式计算:

发射器发射长度为ts平均功率为Pt,由具有增益的发射器天线辐射G。功率密度(W/m2) 距离r可以使用Friis 方程写为PtG / (4 πr2。该功率由雷达截面积为 σ,其中一些被反射回雷达。接收功率取决于接收天线的有效面积:Pr=PtGAe/ ((4πr22Ae可以用天线增益写为Ae2G / 4π​, 在哪里λ是射频信号的波长。接收器输入处的接收功率方程可写为:

Pr=PtG2λ2σ/((4π​)3r4

这是一个脉冲的接收功率。为了增加接收功率,可以对多个接收脉冲进行相干求和。重要的是求和是相干的,以便接收到的脉冲的相位对齐。实际上,不使用求和,而是使用 FFT,以便可以对来自移动目标的功率进行相干求和并彼此分离。


为了获得最大检测范围,我们需要找到最小可检测接收功率。检测性能受到接收器噪声的限制。接收器的热噪声密度 (W/Hz) 为kT, 在哪里k玻尔兹曼常数并且 时间时间是以开尔文为单位的接收器温度。接收器放大该热噪声并将其自身的噪声添加到其中。噪声系数F,接收器的本底噪声是在没有任何附加噪声的情况下输出的本底噪声与理论热本底噪声相比高出多少。这可以根据接收器增益、RF 放大器的噪声系数和 ADC 的本底噪声来计算。


为了获得本底噪声,我们需要乘以热噪声密度k​T由接收机噪声系数F和接收器的噪声带宽B。正确使用的噪声带宽是经过所有信号处理后噪声无法与信号分离的最小带宽。例如,通过对输入信号进行傅立叶变换,我们可以丢弃超出信号所在频率范围的所有频率点,并且这些丢弃频率处的噪声不会影响接收器的检测能力。脉冲压缩理想地收集带宽内的所有脉冲功率1 /ts用于线性频率扫描。然而,实际上,FFT 窗口函数以及参考脉冲和接收脉冲之间的任何不匹配都会稍微降低这一点。

最小可检测信号应比本底噪声高一些。检测的阈值可以自由选择,但需要权衡:如果我们接受仅高于本底噪声的检测,有时其中一些可能是由于噪声恰好高于检测阈值而导致的错误检测。误报的概率取决于用于估计检测信噪比的方法。对于理想检测器,可以根据正态分布噪声高于检测阈值的概率来计算误报概率。常见的阈值通常在 13 至 15 dB 左右。


在最大检测距离处,接收功率等于最小可检测信号:

nPtG2λ2σ/((4π​)3r4=kTFS/ts


,在哪里n是脉冲数,并且S是与本底噪声相比的检测阈值。解决r给出最大检测范围:

多变的解释价值
Pt发射功率30分贝
G天线增益14分贝
λ波长5.2厘米
σ目标雷达截面1平方米
T接收器温度290K
ts脉冲长度1微秒
n突发脉冲数1024
F接收机噪声系数5分贝
S检测阈值15分贝

上表是雷达系统参数的估计。将这些值代入方程即可得出目标的最大检测距离为1m2雷达截面1200米。这可能有点乐观,因为天线电缆中存在损耗、天线效率损耗、失配损耗和大气衰减。但最大探测距离仍应在1公里左右。在此最大距离处,来自目标的平均接收功率等于最小检测阈值。因此,平均而言,该距离处的目标有 50% 的时间被检测到。由于正态分布的噪声,有可能检测不到较短距离的目标,而可以检测到较远距离的目标。然而,由于接收功率的第四次幂依赖性,检测概率在较远的距离处迅速下降。

PCB设计

简化的 PCB 框图。 PLL 生成 6 GHz RF 本地振荡器,时钟发生器为 ADC、DAC 和 FPGA 生成时钟。

该系统的实际实施需要设计集成所有组件的印刷电路板(PCB)。该系统具有射频和高速数字电路,需要仔细的 PCB 布线以确保它们正常工作。

PCB有六层,我不认为FPGA可以用更少的层进行布线。该材料是标准 FR-4,这对于射频布线来说并不理想,因为它的损耗很大,但在这种情况下这不是一个大问题,因为射频走线长度非常短。

DDR3路由

DDR3 路由实现。来源:UG933

连接到 FPGA PS 端的 DDR3 DRAM 内存以 533 MHz 时钟频率运行,每个时钟周期进行两次传输。该内存采用DDR3L标准,这是DDR3标准的低压版本,工作电压为1.35V,而不是普通DDR3的1.5V供电电压。虽然按照现代标准这并不是很快,但仍然需要注意路由。内存走线应长度匹配,具有正确的特性阻抗,并正确端接以最大限度地减少反射。

DDR3 走线的标称特性阻抗为 40 欧姆。共享地址总线飞越路由到所有内存芯片,并通过一个 40 欧姆电阻终止 VTT 电源,该电压为内存电源电压的一半。每个存储芯片都有自己的数据走线和片上终端。路由到所有存储芯片的控制线也很少。 PCB 上只有一颗存储芯片,布线更加简单。

存储器总线可以在制造之前使用电路模拟器进行模拟。专业程序有方法对 PCB 进行有限元仿真,但这对于开源软件来说相当困难。 FPGA 和存储芯片驱动器和接收器电气模型以IBIS 文件形式提供 。我使用KiCad来设计 PCB,它应该包含 IBIS 支持,但不清楚如何使用它。我最终使用 SPISim_IBIS Web 应用程序将 IBIS 模型转换为 SPICE 网表并使用ngspice对其进行模拟。

单条走线的 DDR3 内存布线模拟

我感兴趣的是模拟在这种只有一个存储芯片并且安装在靠近 FPGA 的情况下是否可以省略地址总线终端电阻。我至少在一块 FPGA 开发板上看到过这种做法,如果可以省去终端电阻,将会节省一些 PCB 空间。

具有 40 欧姆线路和终端的 DDR3 数据总线。

通常,眼图用于分析内存总线的时序裕度。然而,用 ngspice 来模拟它并不容易,所以我只是添加了一个脉冲源并进行了瞬态模拟,绘制了存储芯片输入端的电压。凭借 120 ps 线路延迟、40 欧姆线路阻抗和终端电阻,存储芯片输入电压看起来不错。根据存储芯片数据表,高阈值和低阈值分别为 0.81 和 0.54 V,信号在模拟器中看起来非常好。

没有终端电阻的 DDR3 数据总线。

如果没有终端电阻,从阈值电平的角度来看,电压看起来不错。然而,存在明显的下冲和过冲。电源电压为0V和1.35V,存储芯片输入电压过冲约0.7V,足以对存储芯片的ESD(静电放电)保护二极管进行正向偏置。这在实践中可能没问题,但内存芯片数据表表明过冲应限制在最大 0.4 V。因此,我添加了地址线终端电阻。

具有 60 欧姆线路和 50 欧姆终端电阻的 DDR3 数据总线。

虽然移除终端电阻违反了数据表的保证,但在这种情况下可以使用 60 欧姆线路阻抗和 50 欧姆终端电阻,信号完整性的差异最小。使用较高线路阻抗的好处是,它可以使 PCB 上的线路更窄,从而实现更密集的布局。 40 欧姆走线的宽度为 0.24 毫米,而 60 欧姆走线的宽度为 0.10 毫米。使用较窄的走线还允许不同走线之间有更大的距离,从而减少走线之间的串扰。 50 欧姆终端电阻足够接近走线阻抗,并且由于 PCB 上的其他位置也需要 50 欧姆电阻,因此使用 50 欧姆电阻可以从物料清单中删除一个电阻值,从而使组装稍微便宜一些。

DDR3 路由。右边是FPGA,左边是DDR3芯片和终端电阻。左上是顶层,右下是水平推进的底层。

上图是所有 PCB 层上的最终 DDR3 布线。第2层和第5层是地,第4层是电源电压,其他层保留用于信号。 PCB 顶部、中间和底部走线的正确阻抗需要两个接地。如果只有一个接地层,无论是顶层还是底层,信号到地的距离都会太大。数据总线迹线在字节边界内交换,以使路由更容易。走线的长度与波浪线相匹配,并且一些走线是在接地层和电源层上手动绘制的,以减少由于过孔而导致的平面槽的尺寸。根据 Zynq PCB 设计指南,走线匹配要求为 ±10 ps,走线长度约为 ±2mm。然而,考虑到更快的存储芯片并且只有一个存储芯片,实际的余量应该更大。 FPGA封装内部也存在一些延迟差异,在长度匹配时应考虑这一差异。

传输线终端

T/R 开关需要尽可能快地切换,以尽量减少发送和接收之间的死区时间,这同样适用于 IQ 调制器使能引脚。 FPGA I/O 引脚驱动强度可以控制,在最高驱动强度下,模拟器中开关输入的上升时间约为 400 ps。然而,FPGA 和开关输入之间的几厘米 PCB 走线充当传输线,这在这些频率下具有显着影响。

开关输入引脚不匹配50欧姆,典型的CMOS输入具有高输入阻抗。这会导致反射,从而严重扭曲开关波形。

通过电容器和电阻器终止开关输入

为了最大限度地减少反射,传输线应端接至传输线的特性阻抗,在本例中为 50 欧姆。在开关输入引脚附近放置一个 50 欧姆的接地电阻是可行的,但它会吸收直流电流并导致直流电压下降。终止电源电压也有类似的问题,只是现在电压无法达到 0 V。

用 50 欧姆电阻与小电容器串联的端接解决了直流电平问题。应调整电容器值,以便吸收高频反射而不会对低频产生太大影响。

模拟有和没有终止的开关电压。

以上是开关输入处的模拟电压。传输线长度为 300 ps,终端电容器设置为 12 pF。如果没有终止,就会出现明显的过冲和下冲,并且存在电压降至阈值电压以下从而减慢开关速度的风险。通过终止,波形更加清晰。

电源

模拟电子元件对电源电压噪声很敏感。这对于输入信号处于热噪声本底水平的射频接收器尤其重要。

开关稳压器具有良好的效率,通常约为 90%,但其输出的开关噪声明显高于热噪声本底。如果这种噪声没有被正确过滤,它将耦合到接收和发送的波形中,并对接收器造成干扰。由于历史原因,线性稳压器通常称为低压差稳压器 (LDO),其功能相当于可变电阻器,消耗足够的功率以确保输出电压处于正确的水平。输出噪声低得多,但如果压降太大,效率会很糟糕。

TPS7A7001 LDO 的电源抑制率 (PSRR)。

为了兼具高效率和低噪声,通常采用开关稳压器,后接 LDO 来过滤开关噪声。然而,在这种情况下,这还不够过滤。 LDO 可以很好地过滤非常低的频率,但其过滤能力在较高频率下会下降。以上是我正在使用的 LDO 的电源抑制比 (PSRR)。例如,对于 1 mV 幅度,LDO 输入处的 2.5 MHz 信号衰减约 15 dB,从而在输出处产生约 200 µV 幅度信号。

只需对噪声耦合进行很少的假设即可获得最小电源滤波的要求。最小信号电平位于接收器 LNA 的输入端。室温下的热本底噪声为 -174 dBm/Hz。测量时间为 10 ms,带宽为 100 Hz。这导致 LNA 输入处的最大功率为 -154 dBm。在 50 欧姆阻抗下,这对应于 5 nV RMS 电压。如果LNA电源电压受到噪声调制,则会影响放大器的增益,并且电源电压噪声会混入RF信号中。实际上,允许的噪声幅度可以更大,因为 LNA 通常对输出 RF 频率的低频电源电压噪声存在一些电源抑制,但数据表中通常没有指定。在最坏情况下开关噪声幅度为 10 mV 时,需要 120 dB 的衰减才能达到本底噪声。可以假设 LDO 滤波大约 10 dB,并且我们可以假设 RF 组件还有 10 dB 电源抑制,这将电源滤波要求设置为 100 dB。

两级铁氧体磁珠滤波器原理图。电容器寄生效应单独绘制。

所需的电源滤波器可以采用铁氧体磁珠来设计。它们是高频有损耗的电感器。铁氧体磁珠后面需要一个电容器来完成低通滤波器。电容器的串联电阻和电感在这些频率下至关重要,假设是 SMD 陶瓷电容器,它们包含在原理图中。

铁氧体磁珠滤波器频率响应

上述滤波器在 1 MHz 时实现 100 dB 衰减。开关频率为 2.5 MHz,该滤波器在该频率下工作良好。然而,它在 30 kHz 处有谐振,这会增加该频率下输出的噪声。这是由于铁氧体磁珠在低频下表现得像低损耗电感器,由于缺乏会抑制谐振的电阻,铁氧体磁珠会与电容器谐振。可以通过两种方式来解决:增加与电容器串联的电阻或增加电容。也可以与铁氧体磁珠串联添加电阻,但这只有在直流电流很小的情况下才有可能。

使用 20 µF 第一个电容器和 200 µF 第二个电容器时的铁氧体磁珠滤波器频率响应

使用较大的电容器,谐振会小得多,并且衰减会略有增加。

对 1 A 电流阶跃的时域响应。一颗具有 200 µF 电容的铁氧体磁珠。响应欠阻尼,增加电容器 ESR 会减少振荡。

铁氧体磁珠滤波器的一个重要限制是其时域响应。如果输出电流快速变化,铁氧体磁珠的电感会试图保持通过它的电流恒定,这意味着输出电容器需要提供高频电流。如果输出电容小,则无法提供电流,输出电压下降。如果没有足够的电阻与铁氧体磁珠串联或与电容器串联,则输出电压在稳定之前会振荡。特别是具有高电流消耗的功率放大器需要大量的电容,以确保电源电压在开启时不会下降。

通过将铁氧体磁珠放置在 LDO 之前,可以改善时域响应。这样,LDO 就能够在输入电压下降时保持输出电压恒定,但需要确保铁氧体磁珠之后的电压不会下降得太低,以便 LDO 保持稳定。我在 LDO 之前放置了一个铁氧体磁珠,在每个模拟组件之前放置了第二个铁氧体磁珠。第一个铁氧体磁珠过滤开关噪声,第二个铁氧体磁珠为每个 IC 增加额外的过滤。除了滤除开关噪声外,每个 IC 的第二个铁氧体磁珠还可以改善组件之间的隔离,这是发送器和接收器之间所需要的。在每个组件附近放置一个铁氧体磁珠还可以缩短走线的长度,走线可以用作天线来拾取辐射噪声。

PCB 总共有九种不同的电源电压。 FPGA 和数字电子产品有六种电源:1.0 V 用于 FPGA 内核电源,1.8 V、2.5 V 和 3.3 V 用于各种数字芯片,1.35 V 和 0.675 V 用于 DDR3 RAM。这些电源轨上的噪声对于系统性能来说并不是太重要。模拟电子器件具有低噪声 1.8 V、3.3 V 和 5.0 V 电源轨,并带有线性稳压器和铁氧体磁珠滤波。

ADC和DAC走线

ADC 数据走线至 FPGA。右侧是ADC封装,左侧是看不见的FPGA。

ADC 通过 12 位宽 LVDS 总线连接到 FPGA。 ADC 还生成与数据中心对齐的时钟信号。 ADC的采样率为250 MHz,有两个通道,一个通道的数据在时钟的上升沿,另一个通道的数据在时钟的下降沿。此数据速率对于 FPGA 来说太快,无法静态捕获,需要使用可调节延迟线以编程方式校正信号延迟的动态捕获。这些延迟线也使得 PCB 布线的长度匹配要求变得相当宽松。

DAC 还具有 LVDS 接口,但其工作频率为 500 MHz,具有 14 位。该 FPGA 没有可调节的输出延迟线,因此线长度必须匹配,以确保 DAC 可以捕获数据。 DAC 数据表提供了接口的设置和保持时间,将这些值插入 FPGA 合成器工具表明可以通过 ±25 ps 迹线延迟来满足时序,这相当于数据迹线长度与时钟轨迹。更高的延迟也可能有效,但最好尽可能匹配接口,特别是因为它无法在 ADC 接口等软件中进行调整。

在 FPGA 方面,使用该 FPGA 部件将带有 LVDS 的存储体的电源电压设置为 2.5 V 非常重要。对于接收器来说,只有这个电压才能在内部 100 欧姆终端上正常工作。在每条数据线上使用内部 100 欧姆终端而不是外部 100 欧姆电阻,可以使布线更容易并节省 PCB 空间。 DAC LVDS 发送器还需要 2.5V 电源电压来实现共模和差分电压,以与 DAC 的预期兼容。

1 Gbps 以太网

以太网芯片连接示意图。该芯片需要多个配置电阻

以太网接口需要一个位于以太网连接器和 FPGA 之间的外部 PHY 芯片。我能找到的最便宜的是 Realtek RTL8211F,它在中国的单件售价为 1 美元。虽然许多 FPGA 开发板上都可以找到该芯片的 RTL8211E 版本,但 F 版本则更为罕见。该芯片面临的挑战是,官方数据表仅在 NDA 下提供。然而,它可以从带有“机密”和“不得公开发布”标签的中国经销商处购买。但是,数据表并不清楚如何连接它,并且其中没有任何示例原理图。在谷歌上搜索这个芯片时,我确实找到了一些使用它的电路板原理图,这给了我一些信心,我可以正确连接它。如果您也想使用它,请参阅上面的示意图,了解如何为 FPGA 连接。

关于 Zynq FPGA 的重要注意事项是,当使用 3.3 V 电源电压时,以太网接口不符合 RGMII 接口(FPGA 到以太网芯片接口)规范。因此,我必须将 FPGA PS 侧电源电压设置为 1.8 V,这需要为由相同电压供电的 SD 卡和 UART 添加电平转换器。

JTAG 和调试 UART

通过JTAG连接对FPGA进行编程和调试。开发板上通常有一个连接器,外部 JTAG 调试器用于连接到开发板。官方的 JTAG 调试器相当昂贵,标价为 270 美元,我不想花钱买一个。

FTDI 制造 FT2232H 芯片,可以从 USB 转换为 JTAG 和 UART。这可以用来更便宜地实现JTAG接口。以前有一个缺点,即不受 Xilinx 官方工具支持,这使得调试设计变得更加困难,但现在 如果使用 Xilinx 提供的工具对 EEPROM 存储器进行编程,则官方支持它。

FT2232H 还具有 UART 输出,可用于调试 ARM 处理器代码。在处理器代码中调用 printf 将字符打印到调试 UART。

时钟发生器

时钟信号的简化框图

整个系统的准确计时非常重要。由于 ADC 的运行频率为 250 MHz,DAC 的运行频率为 500 MHz,而 FPGA 需要更低的时钟频率,因此多个时钟信号是不可避免的。 FPGA确实有几个可用于生成时钟的锁相环,但其输出的精度不够好。对于 100 MHz 时钟,工具预测峰峰值抖动为 130 ps,而时钟发生器芯片的峰峰值抖动约为 4 ps。 ADC 和 DAC 需要非常干净的时钟和最小的抖动,采样时钟上的任何定时错误都会降低信噪比

雷达信号生成或处理涉及的所有内容都应在同步时钟信号上运行。例如,如果 ADC 和 DAC 以完全不相关的时钟运行,则脉冲将不会保持相位同步,因为时钟会略有漂移。相位漂移会使多个脉冲的相干求和变得不可能,并严重损害雷达的性能。

PCB 上有两个不相关的时钟。 FPGA 的 PS 侧拥有自己的 33 MHz 晶体,并从中生成 DDR3、CPU 和外设的时钟。 133 MHz 总线时钟也由此产生,该时钟被传递到 FPGA 的可编程逻辑端。 PL 侧使用外部时钟发生器芯片 CDCM6208,从单个25 MHz 晶振生成多个250 MHz 和500 MHz 时钟。这些时钟彼此相位同步。 PS端自己的独立时钟是上电时时钟发生器尚未编程。 PS端有自己独立的时钟,这是对时钟发生器进行编程所需要的。 PS 和 PL 的独立时钟域不会导致正确的时钟域交叉问题。

ADC 向 FPGA 输出带有数据的 250 MHz 时钟,该时钟在内部除以 2 并用于为脉冲时序逻辑提供时钟。这使得 FPGA 逻辑也与时钟发生器同步。需要分频是因为 250 MHz 时钟对于 FPGA 逻辑来说太快。时钟分频使得每个 125 MHz 时钟周期都会从两个通道接收两个 ADC 样本,总共 48 位数据。有一个用于时钟域交叉到 PS 侧 133 MHz 的 FIFO,DMA 通过 64 位 AXI 总线将样本传输到 DDR3 内存。使用 133 MHz 是因为它需要比 125 MHz 输入时钟更快,并且该时钟需要由 PS 生成,因此它不能是 PL 125 MHz 时钟。

FPGA 需要将 500 MHz 时钟和数据一起输出到 DAC,为此,将 500 MHz 信号路由到 FPGA。 FPGA有内部时钟发生器,但它们不用于此目的,因为它们的抖动太高。 500 MHz 的频率太高,无法在 FPGA 的全局时钟网络上路由,但可以在仅路由到 I/O 缓冲区的 I/O 时钟网络上路由。这意味着没有逻辑可以以 500 MHz 为时钟,但该芯片具有可以从每个引脚的 I/O 时钟提供时钟的Serdes,它可以在 250 MHz 时钟的上升沿获取 4 位,并在两个上升沿输出它们和 500 MHz I/O 时钟的下降沿。

加工

从 PCB 制造商收到的半组装PCB

我从一家中国制造商那里订购了 PCB,包括组装。他们给我寄来了两块组装好的零件和三块空的印刷电路板。一些不常见的组件无法组装,我必须单独订购并自己焊接。其中包括所有最昂贵的组件,例如 ADC、DAC 和 PLL。幸运的是,FPGA 可以组装,这样我就省去了自己焊接大型 484 引脚 BGA 封装的麻烦。

PCB 的质量看起来不错,特别是考虑到价格,这只是我在当地花费的一小部分。然而,由于其中一块的焊接问题,两块组装好的 PCB 中只有一块可以开箱使用。

价格可疑的 15 美元 FPGA 也同样可疑地覆盖了日期和批次代码(上图中 FPGA 芯片上的白色矩形)。我有一块同系列芯片的开发板,标记完好,所以绝对不应该是这样的。它最终确实起作用了,但我想知道这些芯片的来源是什么。

PCB 已完全组装

我使用焊膏和热风工具自己焊接了其余的组件。如果没有热风工具,很难在已安装的电路板上焊接 QFN 封装。

PCB 背面

双面组装会产生额外成本,因此所有组件仅放置在顶部。底部有一些地方可以放置额外的去耦电容器,以防万一,但这些并不是必需的。

JTAG编程器

Vivado 硬件管理器。 ARM 处理器、Zynq 7020 FPGA 连接到连接到本地主机的 FTDI 芯片。

打开开发板的第一步是对 FT2232H 芯片进行编程,该芯片具有 JTAG 编程器和串口功能。 Xilinx 有 program_ftdi 工具,可以对其EEPROM 进行编程,以便Xilinx 工具识别它。我首先遇到的问题是该工具无法识别设备。尽管我可以在 Linux 系统日志中看到它,但它找不到 ftdi 设备。安装一些 ftdi 库并确保官方 ftdi 工具能够读取 EEPROM 后,我能够使用 program_ftdi 工具成功对 EEPROM 进行编程。

检查 Xilinx Vivado 硬件管理器,现在可以找到 Zynq 7020 FPGA。 FPGA 的编程和调试现在可以使用 Xilinx 工具进行。

FPGA编程

FPGA可编程逻辑框图

FPGA 软件由 ADC 和 DAC LVDS 接口、在正确时间启用和禁用开关、PA、LNA 和其他组件的脉冲时序、使 PS 配置可编程逻辑的 AXI 寄存器、用于 ADC 和 DAC 采样的两个 DMA 通道、以及用于 ADC、DAC、PLL 和时钟发生器的 SPI 接口。

大部分信号处理在PC上完成,FPGA主要传递数据。然而,最好对 FPGA 上接收的样本进行数字滤波和抽取。当传输的脉冲带宽不是很大时,例如当它不以零频率为中心时,可以进行数字混合、过滤样本并降低采样率。这将能够减少需要发送到 PC 的数据量并提高雷达的帧速率。

LVDS 接收器。来源:xapp1017

LVDS 接收器基于 Xilinx 应用笔记 xapp1017。它将两条延迟线和触发器连接到每个 LVDS 通道,并设置延迟差,以便它们以 1/2 位延迟对信号进行采样。状态机更改延迟,以便主触发器在数据眼的中心进行采样。动态调整的延迟能够补偿 PCB 布线和 FPGA 内部延迟差异。

雷达脉冲定时电路部分VHDL代码

脉冲定时电路只是一个计数器,对每个可能的事件进行相等比较,可以使用 AXI 寄存器进行编程。定时电路从 FPGA 的 PS 端触发,启动计数器,以精确正确的时钟周期触发 FPGA 上的每个子系统和每个外部芯片。它还具有循环功能,可以以精确的重复间隔多次触发脉冲,以支持发送脉冲串。

准确的突发定时对于准确的目标速度测量至关重要。 ADC 和 DAC 之间的任何计时误差都会导致测量距离的误差。 ADC 或 DAC 触发中的单个 125 MHz 时钟周期定时误差会转化为测量距离中的 1.2 m 误差。

接收器噪声

测试没有天线的雷达

对于台式测试,我在天线连接器处放置了匹配的负载,禁用发射器并记录 ADC 输出。理想情况下,记录的信号将是噪声,任何可见的信号都是不需要的干扰。

无信号的 ADC 输出频谱,5.80 GHz LO

录音长度为 33 毫秒,即 800 万个样本。本底噪声平均值为 -139 dBF,大约是应有的值。然而,有几个可见的干扰信号,最大的是 25 MHz 的倍数。它们的幅度约为 -100 dBF,对应于 ADC 输入处的约 15 µV RMS,因此它们不是很大。 ADC 的直流偏移在零频率处也可见为非常大的峰值。

干扰源是 PLL 引起的分数杂散。它们可以通过更改 PLL 输出频率、PLL 设置和 LO 输入参考频率来更改。

无信号的 ADC 输出频谱,5.75 GHz LO

当 PLL 输出频率是 PLL 参考时钟的整数倍时,杂散会最小化。 PLL 参考时钟为 250 MHz,但这对于运行 PLL 相位检测器来说太高,并且由 PLL 参考输入分频器除以二。使用 125 MHz PLL 参考时钟,将输出频率设置为 5.75 GHz,使其成为整数倍,并且几乎完全消除了杂散。 5.875 是另一个接近倍数,也适用于 RF 电子侧。 -125 MHz 处仍然存在杂散,但这是预期的,因为它是相位检测器频率。

ADC 输出频谱低频

由于 ADC 的 1/f 噪声,ADC 的本底噪声在低频时较高。 DC/DC 转换器的开关频率为 2.5 MHz,在输出频谱图中不可见,这意味着电源滤波按设计工作。

发射功率

我使用的功率放大器有一个集成的功率检测器。我将 DAC 输出电压设置为最大幅度的 85%,这大约是它可以达到的最大幅度,同时为 LO 泄漏消除数字预失真留出一些 DC 偏移空间。这应该会导致 IQ 调制器产生大约 +3 dBm 的输出功率,并且具有 32 dB 功率放大器增益,应该足以驱动 PA 进入压缩状态。

在示波器上测量的 PA 功率检测器电压

在示波器上测量时,功率检测器引脚波形看起来正确。它有一系列 2 µs 长的脉冲,即脉冲宽度。峰值电压为 1.72 V,不发射时约为 0.32 V。

功率检测器引脚电压与数据表中的输出功率

数据表有不同频率下预期功率检测器引脚电压与输出功率的关系图,但该图没有我测量的那么高。可疑的线性外推给出了大约 33 dBm 的输出功率,即 2 瓦。 PA 的 -1 dB 压缩点指定为 34 dBm(典型值),并且看起来正如预期的那样处于压缩状态。

校准

发射波形

通过天线连接器处的匹配负载,我通过 T/R 开关记录了泄漏的发射机信号。传输波形是 100 MHz 带宽、1 µs 长的线性频率扫描,最大 DAC 幅度为 0.1。

基带扫频信号可写为:

,在哪里B是带宽,ts是扫描长度,t是时间,并且j=√-1

接收到的频率扫描未经任何校正。 128 个重叠波形。

接收器设置为记录传输信号之前 1 µs 和之后 2 µs。 128 个波形以非常好的重复性进行传输,所有波形都绘制在图表上。理想情况下,接收信号将是发射信号的衰减、延迟和相移副本,但发射波形和接收波形之间存在明显差异。

从时域数据可识别的非理想性是:

  • 脉冲前的非零直流电平。这是由 ADC 的 DC 偏移引起的。
  • 由发射器打开引起的 1 µs 之前的尖峰。
  • 脉冲具有由发射机的 LO 泄漏引起的 DC 偏移,I 信号的 DC 电平高于 Q 信号。
  • 基带频率越高,衰减越多,导致脉冲包络边缘略有下降。
  • 脉冲后的非零直流电平。由 ADC 直流偏移和 ADC 滤波器高通行为引起。

压缩泄漏信号

上图是未校准脉冲的脉冲压缩输出图,其中 -50 dB泰勒窗应用于归一化至峰值电平的参考脉冲。旁瓣电平为-21 dBc,远高于理想电平。

最大的误差是由发射机的 LO 泄漏引起的。发射器的 LO 泄漏在接收器处混合为 DC,因为它们共享相同的 LO 信号。由于平衡线性频率扫描的 DC 电平非零,因此只要存在导致 0.5 µs 至 1.5 µs 平坦相关输出的非零 LO 泄漏,与参考扫描的卷积就会给出非零结果。

为了提高旁瓣电平,需要补偿本振泄漏。这可以通过调整发射机波形来实现,使其具有反相的 LO 信号,从而消除泄漏信号。然而,在 LO 泄漏补偿之前,应补偿 ADC DC 偏移,因为接收的数据用于测量 LO 泄漏,而 ADC 的 DC 偏移会对其产生干扰。

ADC 的直流偏移可通过仅在发送器禁用的情况下触发接收器来补偿。 ADC 上的唯一信号是热噪声和直流偏移。可以测量直流电平并从所有后续测量中减去。

通过 ADC 直流偏移补偿,可以通过触发扫描并从 DAC 只输出零来测量 LO 泄漏。理想情况下不应传输任何内容,但由于 LO 泄漏,会以 LO 频率传输信号,并在接收器处混频为 DC。调整传输信号的直流电平,使 ADC 输入为零,从而实现零 LO 泄漏。

LO 泄漏补偿后的压缩泄漏信号

通过 LO 泄漏补偿,脉冲响应看起来更好。旁瓣电平为 -36 dB,比理想的 -42 dB 高出几 dB。扫描后还有一条非常长的 -60 dB 直线,这是由 IQ 解调器和 ADC 之间的 AC 耦合电容器的高通行为引起的。

具有 LO 补偿的时域泄漏信号。 I 通道上脉冲后的直流电平略高于零。

长平坦部分的原因是扫描后存在非零直流电平。基带频率扫描具有非零直流分量,当它通过高通滤波器时,会改变输出直流电平。扫频结果与常数的卷积结果产生非零输出。

通过降低高通滤波器截止频率可以减少这个问题。交流耦合电容仅为 100 nF,使高通截止频率约为 10 kHz。由高通引起的直流偏移也可以 进行数字补偿

此处,振幅随着频率增加而减小是非常明显的。DAC sinc 响应 经过数字补偿,因此这不是幅度下降的原因。 ADC 滤波器的幅度应该非常平坦,但在制造过程中我必须更换与我最初选择使用的电感器不同的电感器。替代电感器具有更高的串联电阻,并且幅度不那么平坦。我确实有正确的电感器,但我还没有更换它们。

50 MHz 频率扫描,25 MHz 偏移

直流偏移问题的其他解决方案是调制频率扫描,使扫描不包括零频率,本质上是使用非零中频。上图是接收到的具有 25 MHz 偏移的 50 MHz 扫描的时域图。频率扫描范围为 0 Hz 至 50 MHz,而之前为 -50 MHz 至 +50 MHz。

带偏移的压缩扫描

计算偏移扫描的脉冲压缩可以得到更清晰的结果。由高通滤波器引起的直流偏移问题被完全消除。旁瓣电平仍比理想值高 2 dB,但这已经是非常漂亮的脉冲响应了。理想的旁瓣高于 100 MHz 扫描,因为时间带宽积较低,并且主瓣也因带宽较低而变宽。调制扫描的缺点是扫描的最大可用带宽是零中心扫描可用带宽的一半。

使用 α=0.1 的 Tukey 窗传输信号

可以通过发射脉冲加窗来减少由脉冲的低时间带宽积引起的旁瓣。窗函数降低了发射波形的有效带宽,因此增加了主瓣宽度并降低了距离分辨率。发射器侧开窗也会降低每个脉冲的平均能量,因为波形在脉冲开始和结束时逐渐变细,从而降低了信噪比。Tukey 窗是发送端的一种很好的窗函数。它只是使波形的开头和结尾稍微变细,中间处于最大幅度。 Tukey 窗有一个参数 α,可用于控制加窗的程度,α=0 等于不加窗。当 α=0.1 时,脉冲能量和接收器 SNR 降低 0.8 dB。

脉冲压缩 50 MHz 带宽脉冲,偏移频率为 25 MHz,α=0.1 TX Tukey 窗口和 -50 dB RX Taylor 窗口。

与没有 TX 窗口的相同脉冲相比,向发射机添加 Tukey 窗口大大降低了远处的旁瓣。在 500 ns 偏移处,旁瓣电平降低了约 20 dB。测得的旁瓣电平略高于理想水平。

接收器和发送器 IQ 不平衡尚未校准,并且 ADC 和 DAC 滤波器存在一些与频率相关的失真。不过,目前的水平已经足够好了。

TX 噪声泄漏

如果在接收期间未禁用 PA,则 PA 输出的噪声会泄漏到接收器中,从而增加接收器本底噪声

当切换到接收时,T/R 开关从发射器切换到接收器。如果 PA 由于其高增益而保持启用状态,则它具有足够高的输出噪声,即使存在开关隔离的衰减,它仍然大于 LNA 的热噪声本底。

T/R 开关可以在大约 50 纳秒内切换,但启用和禁用 PA 的速度要慢得多,大约需要 10 µs。不幸的是,如此长的 PA 切换时间意味着当使用单个天线时,由于泄漏的 PA 噪声,接收器噪声会更高。

如果 PA 的输入是 50 欧姆电阻器的热噪声 (-174 dBm/Hz),则它会被 PA 增益 32 dB 放大,并且也会添加自己的噪声。通常放大器噪声系数会在数据表中报告,但此 PA 没有列出。 PA 噪声系数可能相当高,5 - 10 dB 不会太不寻常,因为它们通常没有优化为特别低的噪声。根据这些数字,PA 输出处的本底噪声约为 -135 dBm/Hz。 T/R 开关的隔离度有限,数据表中未报告这些端口之间泄漏的准确值,但报告的天线端口典型隔离度为 26 dB,输入端口之间的隔离度通常好一点。这意味着 LNA 输入处的 PA 噪声约为 -165 dBm/Hz,大于 -174 dBm/Hz 的热本底噪声,并且如果未关闭,PA 噪声会限制接收器性能。

接收器的噪声系数约为 5 dB,因此连接到 T/R 开关的接收器测得的本底噪声应高出约 5 dB,而不是使用无噪声接收器计算出的 10 dB。实际测量 PA 打开时的 ADC 本底噪声,当接收器连接到 T/R 开关时,本底噪声比连接到其他端口时高 2.1 dB。考虑到所有值都存在很大的不确定性,它与理论非常吻合。

当使用两个天线时,第二个接收器开关可以切换到 RX2,并且可以关闭 RX1 上的 LNA,从而充分改善隔离度,使 PA 泄漏不会影响接收器噪声。

目标检测

使用 CFAR 从距离多普勒图中检测目标。距离多普勒图(左)、CFAR 输出(中)、滤除旁瓣(右)。 x 轴为范围,y 轴为多普勒速度。

为了从 ADC 样本获取目标检测,需要更多软件。一般来说,发射的信号是脉冲串,第一步是对每个接收到的脉冲进行脉冲压缩。脉冲压缩后,下一步是对脉冲数量维度进行 FFT。这根据目标的速度将不同脉冲的功率相加。这称为距离多普勒处理,其输出是一个二维图像,其中一个轴为距离,另一轴为多普勒速度。每个像素的幅度对应于在该距离和速度下接收到的功率量。

距离多普勒处理后,输出是每个距离多普勒接收功率的二维阵列。为了进行目标检测,我们需要识别存在目标的容器。我们还希望将感兴趣的目标(例如移动车辆)与不感兴趣的目标(杂波)(例如旁瓣、树木、地面和其他静止目标)分开。

距离多普勒图中的目标可以通过幅度来识别。如果一个 bin 的幅度足够高,高于本底噪声,那么它可能对应于真实目标,而不仅仅是噪声。需要选择检测阈值(目标需要高于本底噪声多少)来平衡误报率和漏检率。一般来说,本底噪声功率在距离多普勒图中不是恒定的。它可以作为时间的函数而变化,可能存在来自其他附近目标的旁瓣和杂波,例如地面反射,也可以被视为噪声,因为我们不想将每一块地面检测为目标。它不是设置固定的本底噪声,而是通过对附近的箱进行平均来估计。对于雷达图中的每个像素,通过平均附近的箱来计算本底噪声,如果正在测试的箱的幅度大于阈值乘以计算的本底噪声,则我们在该位置标记检测到的目标。这称为CFAR(恒定误报率)算法。

对于高振幅目标,旁瓣将会出现错误检测。检测到目标后,我们检查它们是否对应于较大目标的旁瓣并取消标记。这只需检查同一行或列中是否存在更大的目标即可完成。目标还需要具有比相邻仓更大的幅度,这导致仅检测到每个压缩脉冲的峰值位置。

现在,我们有了一份以雷达分辨率精度检测到的目标的范围和速度列表。通过对峰值位置进行插值可以提高距离和速度测量精度。

目标追踪

用于雷达目标跟踪的卡尔曼滤波器。卡尔曼滤波器根据先前的测量(包括不确定性)预测目标的下一个位置。

在检测管道之后,我们有一个检测列表,其中一些可能是错误检测。为了能够及时跟踪物体,检测需要与目标相关联。卡尔曼滤波器用于跟踪每个目标的位置和速度(包括不确定性),并且它提供了一种通过考虑检测来自该目标的概率将每个检测分配给特定目标的方法。

跟踪使用Stonesoup Python 库,这是一个用于一般对象跟踪的库。具体来说,雷达跟踪很大程度上基于StoneSoup 教程。 StoneSoup教程很好地解释了跟踪,所以这里不再重复太多。

该示例最大的变化是该示例用于在 2D 中跟踪对象,测量提供其 2D 位置而不是速度。雷达测量每个目标的距离和速度,但没有角度信息,因此只能进行一维跟踪。

目标的转变模型设置为恒定加速度。卡尔曼滤波器根据测量结果估计加速度,并假设加速度恒定,对目标位置进行下一次预测。

雷达测量

喇叭天线。生锈不利于效率

我通过将雷达放置在路边并测量经过的交通来测试雷达。脉冲长度为 2 µs,带宽为 150 MHz,脉冲数量为 1024,RX 长度为 5 µs,下一个脉冲之前有 7 µs 延迟。我使用了两个带有独立 TX 和 RX 天线的天线。天线是我自己做的喇叭天线

150 MHz 带宽对应于 1 米距离分辨率。需要注意的是,分辨率并不等于准确度。分辨率是测量中两个点目标可以分开的距离。可以比分辨率更好地测量一个目标,其精度取决于信噪比。

脉冲之间的 12 µs 时间等于 83 kHz 脉冲重复频率。脉冲间隔决定最大明确目标速度。速度测量基于测量脉冲之间的相位变化,如果目标以足够高的速度移动,以至于在脉冲之间移动多个波长,则雷达无法知道该倍数是多少,从而导致测量的速度不明确。

如果目标在脉冲之间移动半波长,则会导致全波长距离变化,因为雷达脉冲从雷达到目标并返回。在此速度下,每次测量时相位都会增加一个全波长,这看起来与目标静止时相同。如果我们没有目标移动方向的信息,我们还需要考虑每次测量相位增加 90 度的信号看起来与每次测量相位减少 270 度的信号相同。对于负速度和正速度,明确的速度测量范围必须除以二,从而得到速度测量范围:

vmax=λ/(4td)

,在哪里λ是射频波长并且td是脉冲重复间隔。

采用 5.8 GHz 射频频率和 12 µs 脉冲重复间隔,明确的速度测量范围为 -1077 m/s 至 +1077 m/s。这是音速的三倍多,测量汽车时不会出现任何速度模糊的问题。

多普勒速度分辨率是明确的速度测量范围除以脉冲数,在本例中为 2155 m/s / 1024 = 2.1 m/s。这是将同一范围内的两个目标检测为两个单独目标所需的最小速度差。与距离精度一样,单个目标的速度测量精度优于速度分辨率,并且随着信噪比的提高而提高。

(视频无法播放)

上面是与雷达距离多普勒地图同步的手机视频。 CFAR 检测在距离多普勒图上绘制为红色加号,并按右上角 SNR 递减的顺序列出。在雷达图像上,Y 轴是多普勒速度(以米/秒为单位),朝向雷达的值为负值,X 轴是以米为单位的距离。零多普勒速度处的大线是来自静止目标的反射。

在右上角的列表中,“frame”是雷达测量文件中扫描突发的数量,“t”是从第一帧开始的时间,“Detections”是CFAR检测的数量。速度小于 0.1 m/s 的检测将被过滤掉,以避免将每个静止物体标记为检测。

将摄像机镜头与雷达测量结果进行比较,可以轻松地将雷达检测与摄像机镜头中的汽车相关联以了解近距离目标。由于前景上的汽车阻挡了较远物体的视野,因此存在一些阴影,但雷达能够很好地检测到摄像机镜头中不太可见的物体。雷达可检测到的汽车最远约 400 m,但受视线限制。除此之外,道路转弯,视线被遮挡。

直流偏移的影响也很明显,因为在范围方向上有非常大的旁瓣。这些旁瓣降低了检测较大物体附近较小物体的能力。尤其是在最后,最远的汽车并不总是能被恒虚警检测到,因为它的幅度不够大于与其重叠的旁瓣。

(视频无法播放)

上面是相同的测量,但现在使用卡尔曼跟踪器。跟踪器将 CFAR 检测分配给具有唯一 ID 的目标。它能够跟踪多个目标,但阴影和旁瓣会导致它无法从更远的被阻挡目标获得足够的检测,从而失去对它们的跟踪。它们位置的不确定性增加如此之大以至于达到了轨道删除阈值。当它们再次可见时,将为它们分配一个新的 ID。可以改进跟踪软件以减少这个问题,但这只是雷达的测试,我不想花太多时间为此应用程序调整它。

收到信号。 1024 个重叠脉冲。幅度被归一化为满量程

上图是绘制在同一张图表上的一次测量的所有 1024 个脉冲的接收信号。它们重叠得很好。在测量运动物体时,相位有一个微小的变化,足以将运动物体与静止物体分开。开始时存在来自泄漏和附近物体的较大返回,并且对应于较远目标的较长时间延迟所接收到的信号要弱得多。

低中频脉冲

当使用以直流工作为中心的大带宽扫描时,由高通滤波器引起的旁瓣在结果中可见。对于第二次测试,我将 RF 带宽设置为 75 MHz,调制频率为 38 MHz,以便频率从 0.5 MHz 扫描到 75.5 MHz。其他参数保持不变。

这次,正如预期的那样,由直流偏移引起的非常宽的旁瓣不可见。距离分辨率只有以前的一半,但它并没有真正对汽车跟踪造成任何问题。它们足够大,即使具有 2 米的范围分辨率,将它们分开也不存在任何问题。

帧速率大约只有以前的一半。数据量应该是一样的,不太清楚为什么这次慢了这么多?

开始时,可​​以看到经过的汽车的第二次反射,距离和速度都是两倍。雷达信号从汽车反射到我旁边的标志,再回到汽车,然后被雷达接收。它的振幅和扩散程度要弱得多,导致 CFAR 无法将其检测为目标。

在此测量中,有一名骑自行车的人朝雷达驶来,但雷达未将其检测为目标。其原因是骑车人的速度不够大,无法将其与静止目标分开。计算 CFAR 目标检测时,所有附近的静止目标都包含在低速目标的本底噪声计算中。大本底噪声导致骑自行车者的小雷达横截面不足以高于要检测的本底噪声。

对于此应用,较高的射频频率将是有益的。将射频频率加倍将使多普勒速度箱间隔加倍,并将最大明确多普勒速度减少两倍。常见的警用雷达测速枪的工作频率约为 10 至 35 GHz,尽管如今在 可见光附近工作的激光雷达开始在交通监控中变得更加常见。

通过 CFAR 与距离计算得出的检测到的物体的 SNR。

雷达探测的信噪比在此范围内相当好。 450m 距离处的最大 SNR 约为 35 dB,而在更远的 550 m 处则没有检测到。这是因为视线的原因,450 m 之外没有清晰的路径。雷达信噪比应按距离的四次方下降,相当于距离加倍时下降 12 dB。如果视线清晰,雷达应该能够检测更远距离的交通。

从该测量结果来看,并不清楚雷达链路预算是否与设计一样好,因为目标的雷达横截面未知。即使是典型的汽车横截面也会根据型号和视角的不同而有很大差异。雷达链路预算可以通过测量具有已知雷达横截面的目标(通常是角反射器)来验证。但是,我没有角反射器。用几块三角形的 PCB 制作一个并不会太困难,只是需要一些努力。

全范围多普勒图

未缩放的距离多普勒图显示了视频视图在多普勒轴上的大小。最大明确速度超过 1000 m/s。在距离方向上,负距离对应于在发射脉冲开始之前到达的脉冲。除了来自正距离目标的旁瓣之外,那里不应该有任何信号。由于脉冲压缩中的零填充,本底噪声在范围方向的边缘处下降。

单天线

之前的测量是使用两个天线进行的,一个发射,另一个接收。在下一次测量中,我只有一根天线在发射和接收模式之间切换。脉冲设置为与低 IF 测量相同的参数,但脉冲长度除外,脉冲长度从 2 µs 减少到 1 µs,以改善对近距离物体的检测。

对于一根天线,接收器最早只能在传输结束后打开。光速下的 1 µs 等于 300 米,但雷达信号需要往返于目标,因此接收完整脉冲的最小距离为 150 米。然而,虽然不可能从较短的距离接收完整脉冲,但可以接收部分脉冲。仅使用部分脉冲的脉冲压缩会降低距离分辨率和信噪比,但它应该允许在更短的距离处检测目标。

可以检测到 150 m 以下的目标,但距离分辨率很快就会恶化到无法使用的水平。在这些设置下,雷达可以检测目标的最小范围约为 40 m。在此图中,标记绘制在跟踪器预测位置上,而不是像以前那样绘制在 CFAR 检测上。

本次测量对跟踪器参数进行了一些调整,跟踪性能比之前的测量更好。

结论

雷达原理图已提供。它也可用作软件定义无线电,并进行一些修改或为需要 FPGA 的其他应用提供参考。固件和软件目前不可用,因为我不确定是否应该公开它们。

PCB 制造和两块 PCB 组装的成本为 330 美元,另外我自己焊接的 Digikey 组件的成本为 225 欧元(240 美元)。这包括 24% 的增值税和运费。在相同的价格范围内没有任何类似的商用脉冲压缩雷达,甚至具有类似射频带宽的软件定义无线电也贵得多。

设计的雷达与现代大型雷达基本相似。它利用数字信号处理,支持任意波形,并且由于高脉冲重复频率而具有非常大的最大明确目标多普勒速度。由于输出功率低和天线小,仅最大范围比大型雷达短。

软硬件
元器件
MT41K256M16TW-107 IT:P
32兆 x 16位 x 8存储体,4GBIT DDR3L SDRAM
TXS02612RTWR
具有电压电平转换功能的 SDIO 端口扩展器
TPS51206DSQR
具有用于 DDR2/3/3L/4 的 VTTREF 缓冲基准的 2A 峰值灌电流/拉电流 DDR 终端稳压器
SN74LVC1T45DBVRG4
具有可配置电压电平转换和三态输出的 Single-Bit 双电源总线收发器
CDCM6208V1RGZR
2:8 超低功耗、低抖动时钟发生器
LMX2572RHAT
6.4GHz 低功耗宽带射频合成器
TPS3828-33DBVR
带看门狗计时器的电压监控器
TPS7A7001DDAR
具有使能功能的 2A、可调节超低压降稳压器
TLV62130ARGTT
采用 3x3 QFN 封装、具有 DCS-Control 的 3-17V 3A 降压转换器
SE5004L-R
应用领域:802.11a/n 频率范围:5.15GHz~5.85GHz 增益:32dB
93LC56BT-I/SN
2Kb 三线制Microwire串行EEPROM,采用16位结构
ADL5375-05ACPZ-R7
400 MHz 至6 GHz 宽带正交调制器
RTL8211F-CG
集成式10/100/1000兆以太网精密收发器
AP2126
300毫安高速、超低噪声CMOS低压差线性稳压器
ADL5380ACPZ-R7
400 MHz 至6000 MHz 正交解调器
DAC3174IRGCR
双通道、14 位、500MSPS 数模转换器 (DAC)
ADS4229IRGCR
双通道、12 位、250MSPS 模数转换器 (ADC)
附件下载
pulsed_schematic.pdf
用KiCad绘制的原理图
团队介绍
Henrik Forstén,a Finnish electrical engineer working as a researcher at VTT
评论
0 / 100
查看更多
目录
硬禾服务号
关注最新动态
0512-67862536
info@eetree.cn
江苏省苏州市苏州工业园区新平街388号腾飞创新园A2幢815室
苏州硬禾信息科技有限公司
Copyright © 2024 苏州硬禾信息科技有限公司 All Rights Reserved 苏ICP备19040198号