FMCW 雷达芯片关键技术学习

news2024/11/17 20:18:43

CLOCK GENERATION

借助外部晶体产生的 50 MHz 时钟,时钟生成模块为 RF 子系统生成 76 至 81 GHz 时钟信号。时钟生成模块包含内置振荡器电路、参考 PLLFMCW PLL X4 乘法器。内置振荡器电路与外部晶体一起为参考 PLL 生成 50 MHz 时钟。参考 PLL FMCW PLL 400 MHz/800 MHz ADC 生成 400 MHz/450 MHz 时钟、为 CPU 生成 300 MHz 时钟、为辅助 ADC (Aux ADC) 生成 5 MHz 时钟(用于安全监控)以及为温度传感器 (TS) 生成 5 MHz 时钟。FMCW PLL 与 X4 乘法器一起为无线电子系统生成高精度的 FMCW 或固定频率时钟信号。时钟生成模块还包含一个内置电路,用于检测晶体的存在和生成信号的质量。

图 2.1 显示了时钟生成模块的架构。

FMCW WAVEFORM SYNTHESIS

overview

FMCW 波形发生器基于小数 N 锁相环 (PLL),采用频率合成器-N 结构和 delta-sigma 调制器。通常的做法是频率合成器-N 采用模拟电路实现,而 delta-sigma 调制器采用数字电路实现。delta-sigma 调制器的输出包含有关 FMCW 波形的频率扫描带宽和持续时间的必要信息。然后,输出被传递到频率合成器-N。经过频率合成器-N 合成后,生成 FMCW 波形,如图 3.1 所示。频率合成器-N 通常由鉴频鉴相器 (PFD)、电荷泵 (CP)、环路滤波器 (LPF)、压控振荡器 (VCO) 和多模分频器 (MMD) 组成

Feature

Calterah Alps 雷达芯片中的 FMCW 波形发生器嵌入了以下功能,以实现更好的雷达测距和抗干扰。所有这些功能都可以单独编程和启用。

• 虚拟阵列模式 (VAM)

VAM 根据用户的配置控制每个 TX 通道的开/关状态和相位状态。

• 跳频模式 (FH)

FH 使用户能够在同一帧中为两个相邻的啁啾获得不同的载波频率和带宽。

• 相位扰频模式 (PS)

PS 提供了在每次旋转时将 TX 中的相位旋转 180 度的能力。

• 啁啾移位模式 (CS)

CS 将啁啾内的上坡和下坡都移位特定时间,而一个啁啾的总持续时间保持不变。

• 带啁啾延迟的抗速度模糊 (Anti-VELAMB CD)

Anti-VELAMB CD 将某些啁啾的持续时间延长特定时间,用于解决速度模糊问题。

• 自动增益控制 (AGC)

AGC 在每个帧的开头添加 3 个啁啾,同时将无线电部分 RXBB 的增益控制从无线电寄存器移交给 CPU。

• 帧交织

FMCW 波形发生器支持不同的帧类型。交织不同类型的帧可以同时实现不同的应用

Functional Description

irtual Array Mode (VAM)

VAM supports time division modulation (TDM) and binary phase modulation (BPM).

TDM 是通过每隔固定时间自动打开或关闭 TX 通道来实现的。每个 TX 都可以单独自动控制,如图 4.3 所示,其中 1 代表开启,0 代表关闭。

BPM 是通过将相位旋转𝑝𝑖相位来实现的,如图 4.4 所示,其中 1 代表不进行相位旋转,-1 代表旋转𝑝𝑖相位。

Frequency Hopping Mode (FH)

在 FH 中,两个相邻的 chirp 会从一种 chirp 类型平滑地切换到另一种 chirp 类型,或者保持相同的 chirp 类型。

chirp 类型由 32 位 XOR 链的输出控制。如果输出为 0,则 chirp 类型为 0 型。如果输出为 1,则 chirp 类型为 1 型,如图 4.5 所示。

低侧起始频率 (𝑓𝐿)、高侧终止频率 (𝑓𝐻)、上升时间 (𝑇𝑢) 和啁啾时间 (𝑇𝑐) 是完全可编程的,但为了更好地使用,这些参数应满足以下所有要求:

1. 𝑓𝐻1 𝑓𝐿1 = 𝑓𝐻2 𝑓𝐿2

2. 𝑇𝑐 is constant within the same frame.

3. 𝑇𝑢 is constant within the same frame.

Phase Scramble Mode (PS)

VAM 不仅控制每个 TX 通道的状态,还控制每个通道的相位旋转器,而 PS 仅控制相位旋转器,所有相位旋转器的状态都基于一个 XOR 链。XOR 链的结构与跳频模式完全相同.

Chirp Shifting Mode (CS)

另一个 32 位 XOR 链控制是否在线性调频脉冲内移动上升斜坡和下降斜坡。XOR 链的结构也与跳频模式和相位扰动模式相同。

Anti Velocity Ambiguity with Chirp Delay (Anti-VELAMB CD)

当 VAM 和 Anti-VELAMB CD 都启用时,𝑃𝐶𝐷 会随 VAM 的周期一起更新。在这种情况下:

• 一个扩展啁啾总是会跟随一个或多个连续的正常啁啾。

• 𝑃𝐶𝐷 的最大值为 5。

• 扩展啁啾总是在一个周期的开始。

• Anti-VELAMB CD 周期内的前两个啁啾总是具有相同的 TX 控制组,即

VAM 中的组 0,如图 4.27 所示(其中 𝑃 表示 VAM 的周期)。

– 如果 P = 1,则一个 TX 通道的控制组序列如图 4.27 所示。

Anti-VELAMB CD 下,若 VAM 使能,则 TX 状态由 VAM 控制;若 VAM 关闭,则 TX 状态由无线电寄存器控制,如图 4.28 所示。

– 如果 P = 2,则一个 TX 通道的控制组序列如图 4.29 所示

– 如果 P = 3,则一个 TX 通道的控制组序列如图 4.30 所示。

– 如果 P = 4,则一个 TX 和线性调频脉冲的控制序列如图 4.31 所示

Auto Gain Control (AGC)

在 AGC 模式下,内部逻辑会将 RXBB 的增益控制从无线电寄存器切换到 CPU,如图 4.32 所示。

在现场,有许多奇怪的情况,例如大型反射器靠近雷达模块,来自其他设备或其他雷达系统的干扰。一种常见的影响是雷达 RX 通道饱和。如果 RX 通道饱和,雷达系统基本上是“盲区”。因此,基带无法正常工作。特别是,如果饱和是由干扰引起的,任何干扰避免机制都将不起作用。自动增益控制 (AGC) 旨在应对这些类型的情况。

• 基本 AGC

– 支持涵盖 LNA/TIA/VGA1/VGA2 的可编程增益表

– 不同 RX RF 链之间的独立 AGC

• AGC 对齐

• ADC 补偿

• AGC IRQ:AGC IRQ 用于将 ADC 数据的状态通知给错误管理单元 (EMU)。

Basic AGC

通常,当启用 AGC 模式时,将在正常啁啾声之前添加三个额外的啁啾声以实现 AGC 目的

对于每个 RX RF 链,有三个饱和检测器,用于监控 TIA、VGA1 和 VGA2 的输出。所有检测器都有电平输出。高电平输出表示输出信号超过上限。低电平输出表示输出信号未达到下限。参见图 10.2。在前两个 chirp 期间,基带根据这些饱和检测器的输出调整 RX 增益。在第三个 chirp 期间,基带根据 ADC 输出计算“最佳”RX 增益。参见图 10.1。

如图 10.3 所示,在帧的开始处,RX 链的每个阶段都设置为默认值,称为初始化增益(可编程)。在第一个 chirp 期间,基带对每个 RX 链的所有 3 个检测器进行采样。为了防止故障,只有当高电平的样本总数超过某些阈值 AGC_SAT_THR_TIAAGC_SAT_THR_VGA1 AGC_SAT_THR_VGA2(可编程)时,基带才会声称饱和。在第一个 chirp 结束时,基带为每个 RX 链提供 3 位饱和状态。在此基础上,基带为下一个 chirp 选择增益设置。增益是根据表 10.1 中所示的查找表 (LUT) 选择的。

在第二个啁啾期间,基带再次观察每个 RX 链的三个检测器,以确定第二个啁啾的 RX 增益。这一次,LUT 更大,因为它基于第一个啁啾和第二个啁啾的饱和状态。请参阅表 10.2 中的摘要。

前两个啁啾的目的是定位 RX RF 链,使 RX 不会饱和。因此,第一和第二个啁啾的 LUT 编程应该反映这种意图。例如,如果一个检测器报告饱和,则相应的 RF 块应降低其增益。在第三个啁啾期间,AGC 算法不仅观察饱和检测器,还计算 ADC 输出功率。如果在第三个啁啾期间,RX 链仍然饱和,AGC 算法直接进入最小增益。如果在第三个啁啾期间没有发生饱和,则估计 ADC 功率以使用第三个 LUT 找到“最佳”增益。

如图 10.4 所示,AGC 算法根据 AGC_DAT_MAX_SEL(可编程)估计 ADC 的最大功率并将其转换为 dB。我们使用天线参考输入功率来查找编程表。因此,最终增益表应编程如下:

1. 第一个条目对应于最小输入功率,可通过目标 ADC 级别减去最大 RX 增益获得。

2. 最后一个条目对应于最大输入功率,可通过目标 ADC 级别减去最小 RX 增益获得。

3. 每个条目都是增益设置而不是功率。扫描所有可能的输入功率,每次增加 1 dB。给定输入功率,确定达到目标 ADC 输出水平的总 RX 增益。为了满足总增益预算,在为每个 RF 块分配增益时,建议从 LNA 开始,然后是 TIA、VGA1 和 VGA2,并分配尽可能大的增益。确保每个 RF 块的输出功率不会触发饱和检测器。

AGC Alignment

当基本 AGC 功能工作时,每个 RX RF 链独立控制最终增益设置。通常,不同的 RX 通道可以设置不同的 LNA/TIA/VGA1/VGA2 增益,这可以解决目标的距离和速度信息,但不利于解决角度信息。原因是 RX 通道的增益差异会导致 RX 通道的额外相位差,这对 DoA 估计是有害的AGC 对齐功能可确保所有 RX RF 链都设置为相同的最终增益设置,这与对齐前所有通道的最大入口索引有关,这意味着所有通道的增益最低。

ADC Compensation

如前所述,AGC 算法将当前 ADC 的最大功率与天线输入功率进行比较,并通过计算达到目标 ADC 输出水平所需的总 RX 增益来确定最终增益设置。通常,输入功率越小,所需的增益越大。但是当输入功率小于最小输入功率时,即使分配了最大增益设置(最终增益表的第一个条目),目标 ADC 输出水平和实际 ADC 输出水平之间仍然存在误差。这种情况可能很少见,但确实存在。为了应对这种情况,提供了 ADC 补偿功能。ADC 补偿算法估计目标 ADC 输出水平和实际 ADC 输出水平之间的误差,并根据 ADC 补偿水平(可编程)将其转换为移位器。当启用 ADC 补偿功能时,ADC 数据将通过左移移位器进行补偿,如图 10.5 所示。需要注意的是,如果误差增益为负,则移位器将为零。

此外,如果同时启用 ADC 对齐功能,则不同 RX 通道的 ADC 数据将通过左移最小的相同移位器进行补偿

AGC IRQ

AGC IRQ 指示 ADC 数据是否在合理范围内,既不能太大(接近饱和),也不能太小(接近本底噪声)。AGC 状态有 12 IRQ,对应 4 个通道,每个通道有 3 IRQ。请参阅与 IRQ 相关的 AGC 寄存器。这 12 个 IRQ 将执行或运算,然后变为一个连接到 EMU 的信号。换句话说,只要这 12 个 IRQ 中的一个被引发,或运算后的信号将被引发并发送到 EMU。AGC IRQ 不在 CPU IRQ 列表中,但 CPU 也可以通过读取寄存器 FDB_AGC_IRQ_STATUS 来检查 AGC IRQ 的状态,该寄存器有 12 个位与 12 个 IRQ 对应。

LOCAL OSCILLATOR (LO)

本地振荡器 (LO) 模块由驱动放大器和倍频器组成。此外,CAL77S244-AE

支持多路复用输出和多路复用输入功能,适用于多芯片级联应用。

TRANSMITTER

在 CAL77S224-AE 中,发射器模块由 2 个并行发射器链组成。在 CAL77S244-AE 和CAL77S244-AB/IB 中,发射器模块由 4 个并行发射器链组成。

Alps 中的每个发射器链都具有独立的二进制相位和幅度控制。发射器通道可以同时操作。该设备支持用于 MIMO 雷达和干扰缓解的二进制相位调制

CAL77S224-AE 和 CAL77S244-AE 中的每个发射链都可以在 PCB 上的天线端口提供 12 dBm。

图 5.1 说明了 CAL77S224-AE 和 CAL77S244-AE 的发射器模块。

图 5.2 示出了 Alps AiP 芯片 CAL77S244-AB/IB 的发射器模块。

RECEIVER

接收器模块由 4 个并行通道组成。每个接收器通道由以下组件组成:

• 低噪声放大器 (LNA)

• 无源混频器

• 跨阻放大器 (TIA)

• 两个 IF 高通滤波器

• 两个可变增益放大器

• Sigma-Delta 调制器

• 抽取滤波器

所有 4 个接收器通道可同时运行。还提供单独的断电选项。HP1 具有 100 kHz 正常截止频率,可配置为 12 kHz。HP2 具有 500 kHz 正常截止频率。TIA、VGA1 和 VGA2 配有集成饱和检测器。另一个饱和检测器位于 Sigma-Delta 调制器内。

参考:《Calterah Alps Radar Baseband User Guide

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2200703.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

腾讯云SDK项目管理

音视频终端 SDK(腾讯云视立方)控制台提供项目管理功能,您可参照以下步骤为您的应用快速添加音视频通话能力和多人音视频互动能力。 若需正式开发并上线音视频应用,请在完成创建后,参照 集成指南 进行开发包下载、集成…

fastadmin 列表页表格实现动态列

记录:fastadmin 列表页表格实现动态列 后端代码 /*** 商品库存余额表*/public function kucunbalance(){$houseList (new House)->where([shop_id>SHOP_ID])->order(id desc)->field(name,id)->select();//设置过滤方法$this->request->filte…

Java速成之反射,轻松搞定反射

Hello,大家好,我是Feri,一枚十多年的程序员,同时也是一名在读研究生,关注我,且看一个平凡的程序员如何在自我成长,只为各位小伙伴提供编程相关干货知识,希望在自我蜕变的路上&#x…

记录一次搭建Nacos集群的问题

Java环境:jdk1.8.0_231 Nacos版本:nacos-server-2.2.0.zip 虽然官方推荐的是3个节点,我们还是使用的是2个节点,首先解压创建nacos_config库,导入nacos/conf目录下的mysql-schema.sql SQL文件,如下表&…

ubuntu双系统分区划分

EFI系统分区(Windows):自Windows 8起,UEFI模式下的BIOS使用该分区。简单来说,它用于存储已安装系统的EFI引导程序。此分区在资源管理器中无法查看,因为它没有驱动器号,但它必须存在,…

【ISAC】通感算一体化

北京邮电大学冯志勇:面向智能交通的通感算一体化网络技术 香港中文大学(深圳)许杰:面向通感算融合的无线资源优化 三者逻辑 感知增强: 多个视角的通信,感知其他视角看不到的通信增强:以前做信道估计都是盲的…

ctfshow-web 萌新题

给她 spring漏洞 pyload: 1.dirsearch扫描&#xff0c;发现git 2. GitHack工具得到.git文件 <?php $passsprintf("and pass%s",addslashes($_GET[pass])); $sqlsprintf("select * from user where name%s $pass",addslashes($_GET[name])); ?>…

01 Solidity--

第一个 Solidity 程序 Solidity 是一种用于编写以太坊虚拟机&#xff08;EVM&#xff09;智能合约的编程语言。 掌握 Solidity 是参与链上项目的必备技能 在 Remix 中&#xff0c;左侧菜单有三个按钮&#xff0c;分别对应文件&#xff08;编写代码&#xff09;、编译&#x…

CUDA编程基础概念

1. CPU和GPU 其中绿色的是计算单元&#xff0c;橙红色的是存储单元&#xff0c;橙黄色的是控制单元。 2. 什么样的任务适合GPU&#xff1f; 计算密集型的程序。易于并行的程序。GPU其实是一种SIMD(Single Instruction Multiple Data)架构。 3. 内存模型以及硬件 Device对应…

QD1-P9 HTML常用标签:超链接(1)

本节学习&#xff1a;HTML 超链接标签&#xff0c;也就是 a 标签。 在前端开发中&#xff0c;<a>​ 标签是超链接&#xff08;anchor&#xff09;标签&#xff0c;用于创建指向其他网页、文件、位置等的链接。 本节视频 www.bilibili.com/video/BV1n64y1U7oj?p9 简单示…

【模板进阶】std::function

一、 s t d : : f u n c t i o n std::function std::function的介绍 s t d : : f u n c t i o n std::function std::function是 C 11 C11 C11引入的一个可调用对象包装器&#xff0c;它可以通过指定模板参数&#xff0c;统一来处理各自可调用对象。 二、实现类似 s t d : …

食家巷小程序:品味平凉美食,领略甘肃风情

甘肃平凉犹如一颗璀璨的明珠&#xff0c;散发着独特的魅力。这里不仅有壮丽的自然风光&#xff0c;更有令人垂涎欲滴的美食。而食家巷小程序&#xff0c;就如同一个神奇的美食宝库&#xff0c;将平凉的美味呈现在你的指尖。 &#x1f4a5;平凉&#xff0c;美食的天堂。 平凉红…

erlang学习:Linux命令学习11

crontab命令 crontab命令是用于管理定时任务的命令行工具。它提供了多种选项和参数&#xff0c;可以用来创建、编辑、查看和删除用户的定时任务。 常用命令 以下是一些常用的crontab命令&#xff1a; crontab -e&#xff1a;编辑当前用户的定时任务列表。该命令会在默认编辑…

高产胜母猪,带你上线我的新项目!

大家好&#xff0c;我是程序员鱼皮。9月&#xff0c;我处于极度爆肝状态&#xff0c;成功完结了最新带大家做的项目 面试刷题平台 。 当我们做完一个项目后&#xff0c;一定要记得把项目上线&#xff0c;这样才算是完成了学习的 “闭环”&#xff0c;写到简历上也才有竞争力。 …

鲁班到家上门安装维修系统源码开发之结构功能解析

随着物联网和智能家居的普及&#xff0c;消费者对便捷、高效的生活方式需求日益增加。鲁班到家作为一款专注于家居安装维修服务的平台&#xff0c;凭借其多渠道预约、智能派单、在线支付与费用明细透明等优势&#xff0c;在市场上赢得了广泛认可。本文将详细解析鲁班到家上门安…

flash-attention代码逻辑

setup.py&#xff1a;python项目中&#xff0c;setup.py用于管理项目的构建、打包和分发过程。这个文件通常包含项目的元数据以及如何构建和安装模块的指令 三个相关命令 构建扩展模块&#xff1a;python setup.py build_ext清理构建文件&#xff1a;python setup.py clean安装…

扩展欧几里得算法 C++

题一 扩展欧几里得算法 解题思路 原链接&#xff1a;https://www.acwing.com/solution/content/1393/&#xff08;下同&#xff09; 代码实现 #include<iostream>using namespace std;void exgcd(int a, int b, int &x, int &y) {if(b 0){x 1, y 0;return ;…

Linux学习/复习5进程间通信

ctrl s 保存到云服务器 ctrl ~ 调用调试

vim插件ctags

ctags简介 ctags&#xff08;Generate tag files for source code&#xff09;是一个用来生成代码标签文件的工具。它可以为多种编程语言的源代码生成标签文件&#xff0c;这些标签文件包含了源代码中的各种元素的信息&#xff0c;如函数名、变量名、类名等。Vim 可以利用这些…

vue中css作用域及深度作用选择器的用法

Vue中有作用域的CSS 当< style>标签有scoped属性时&#xff0c;它的css只作用于当前组建中的元素。vue2和vue3均有此用法&#xff1b; 当使用scoped后&#xff0c;父组件的样式将不会渗透到子组件中。不过一个子组件的根节点会同时受父组件有作用域的css和子组件有作用…