江西网站建设价格广东网站设计招工.
2026/5/14 2:06:43 网站建设 项目流程
江西网站建设价格,广东网站设计招工.,中企动力网站后台,在外国做玄幻小说网站AD9361是一款高度集成的射频(RF)收发器,能够针对各种应用进行配置。这些设备集成了在单个设备中提供所有收发器功能所需的所有RF,混合信号和数字模块。可编程性使该宽带收发器适用于多种通信标准,包括频分双工(FDD)和时分双工(TDD)系统。这种可编程性还允许使用单个12位并行数据…AD9361是一款高度集成的射频(RF)收发器,能够针对各种应用进行配置。这些设备集成了在单个设备中提供所有收发器功能所需的所有RF,混合信号和数字模块。可编程性使该宽带收发器适用于多种通信标准,包括频分双工(FDD)和时分双工(TDD)系统。这种可编程性还允许使用单个12位并行数据端口,两个12位并行数据端口或12位低压差分信号(LVDS)接口将设备连接到各种基带处理器(BBP)。AD9361接收器LO(本振)工作频率范围为70 MHz至6.0 GHz发射器LO 工作频率范围为47 MHz至6.0 GHz。每个通道搭载两个高动态范围模数转换器(ADC)先将收到的 I 信号和 Q 信号进行数字化处理然后将其传过可配置抽取滤波器和128抽头有限脉冲响应(FIR)滤波器结果以相应的采样率生成12位输出信号。使用AD9361首先将其外部一些控制的引脚置位到相应的电平信号然后对其进行初始化既寄存器的配置配置完成后就可以启动收发信号了。AD9361提供了spi接口用于读写内部配置寄存器,初始化就是通过spi总线进行。AD9361的输入以及输出的数据以及时钟都是差分信号对于输入数据需要差分转单端输出数据需要单端转差分。AD9361架构RX1/2通道分为ABC三种输入A是最优选择BC在3G以下频段使用TX1/2只能选择A输出1R1T、FDD模式下需要两个时钟才能完成的接收完一个12位的数据在RX_FRAME_x为高时接收到的是 I 路与 Q 路的高6位为低时接收到的低6位且DATA_CLK_x的下降沿接收的是 I 路上升沿接收Q路2R2T、FDD模式下需要四个时钟才能完成的接收完一个12位的数据,在RX_FRAME_x为高时,接收到一个通道的数据但是先接到的前两个是高6位后两个是低六位DATA_CLK_x的下降沿接收的是I路上升沿接收Q路TX的波形与此类似在发送时需要将数据按照波形图进行拼接不然会导致发送错误。时序图1T1R两个时钟周期输出一路的 I Q 数据假如时钟频率为20Mdata_clk其系统采样频率为10M。因为DDR 双沿采样即两个时钟出一个采样点所以最终时钟频率为10M采样率是系统时钟的 1/22T2R4个时钟周期输出 2 路的 I Q 数据假如时钟频率为20Mdata_clk其系统采样频率为5M。对于2T2R最终时钟频率为20M/45M采样率是系统时钟的 1/4BBP基带处理单元FPGAFPGA 接收AD9361数据和给AD9361发送数据接口模块设计思想:AD9361使用的是LVDS DDR通信模式FPGA侧首先使用 IDDR 和 ODDR 的原语进行转换成单沿采样数据(RX)单沿输出数据转换成双沿数据(TX)。RX端使用 Idelay 原语进行动态调整接收数据与时钟延迟。TX端使用 ODDR 简单进行180度的相位翻转因为在AD9361官方配置程序中 tx_fb_clock_delay 设置7 也就是近似160度相位这里两个180160度相位累加就是变成了340度相移。AD9361接口模块设计框图AD9361 的数据接口与时钟接口均采用差分设计数据通道分为正交的 I 路同相通道与 Q 路正交通道二者构成核心数据传输路径。该芯片的接收Rx与发送Tx链路各配备 6 对数据接口单次传输的数据位宽固定为 6 位。​在1R1T1 收 1 发、频分双工FDD模式下接收链路的工作机制如下接收数据需占用两个完整的时钟周期DATA_CLK通过 RX_FRAME_x 信号实现数据位分段控制 —— 当该信号为高电平时接收高 6 位数据为低电平时接收低 6 位数据完成 12 位数据的完整采集。时钟同步方面DATA_CLK_x 时钟的下降沿专门用于采集 I 路数据上升沿则采集 Q 路数据为确保采集到数据最稳定的中间时刻系统还需要针对数据信号设计专门的延时处理机制。​发送链路的工作逻辑与接收链路类似在 1R1T、FDD 模式下需生成对应的 TX_FRAME_x 控制信号发送高 6 位数据时TX_FRAME_x 信号为高电平发送低 6 位数据时TX_FRAME_x 信号为低电平以此实现发送数据的分段传输。​需要注意的是上述 1R1T 模式与 2R2T2 收 2 发模式的切换由接口对接模块的 adc_r1_mode 与 dac_r1_mode 信号联合控制当两个信号均为 0 时模块工作在 2R2T 模式当两个信号均为 1 时模块切换至 1R1T 模式。该控制仅针对 AD9361 的接口对接模块若需直接控制 AD9361 芯片本身的工作模式还需通过 SPI 接口对芯片内部的配置寄存器进行相应配置。​ADC侧对于rx_clk_in_p/n因为输入的数据信号为差分所以需要进行差分转单端再经过全局时钟网络缓冲输出需要使用到的原语IBUFDS、BUFGCE1enable FPGA芯片型号不同原语会不同BUFGCE 是 Xilinx FPGA 中一种带有时钟使能Clock Enable信号的全局时钟缓冲器。它的核心作用是在不使用时安全地关闭时钟信号以达到动态降低功耗和避免时钟域混乱的目的。对于rx_frame_in_p/n输入信号经过差分转单端后进行 IDELAY再给到 IDDR需要搭配 IDELAYCTRL 才能完成IDELAYE2 是一个可编程的输入延迟单元主要用于对输入信号进行精确的延迟调整以 Tap 为单位常用于解决数据与时钟之间的时序对齐问题。延迟精度每个 Tap 的延迟约为 78ps7系列或更小后续系列延迟范围最多 31 个 Tap约 2.4ns工作模式FIXED固定延迟模式配置时设定VARIABLE可变延迟模式运行时动态调整LOADABLE可加载延迟模式可重新加载延迟值源同步接口对齐IDDR 是一个专用的输入双数据速率寄存器用于将外部 DDR双数据速率信号转换为 FPGA 内部可处理的 SDR单数据速率信号。DDR 转 SDR在时钟的上升沿和下降沿都传输数据的外部接口中IDDR 在时钟上升沿捕获两个数据并输出两个 SDR 数据流。时钟域对齐确保上升沿和下降沿的数据在同一个时钟域中被处理。IBUF接收来自引脚的电平信号转换为 FPGA 内部电平IDELAYE2调整数据信号的延迟使其与采样时钟对齐IDDR将 DDR 数据分解为两个 SDR 数据流Q1上升沿数据Q2下降沿数据IDELAYCTRL 是 Xilinx FPGA 中一个关键的延迟校准控制器提供一个稳定的参考时钟通常 200MHz 或 300MHz它为 IDELAYE2 和 ODELAYE2 提供精确的延迟校准确保延迟抽头Tap的延迟值在各种工艺、电压和温度PVT条件下保持一致。对于 7 系列 FPGA每个 Tap 延迟 1 / (32 × REFCLK_FREQ)如果 REFCLK 200 MHz每个 Tap 延迟 1 / (32 × 200,000,000) 156.25 ps如果 REFCLK 300 MHz每个 Tap 延迟 1 / (32 × 300,000,000) 104.17 ps对于rx_data_in_p/n数据为6比特需要重复6次转换即可完成单通道 RX 数据解析时序因为是 IDDR 采样在 Data_clk 第一个时钟周期采集到的Rx_frame 为11下一个时钟周期采集到值为00data_clk上升沿采集的为 p下降沿采集的为n对于 rx_data 信号与Rx_frame 类似参照下图时序取对应的 Q 或者 I 进行拼接即可构建一个移位寄存器24位包含了1个完整的12位Q 和1个完整的12位 I 的数据在一个完整的 rx_frame 周期下取出完整的12位 Q 和 I 数据双通道 RX 数据解析时序对于2R2T每隔 4个时钟周期DATA_CLK输出两个采样点I1,Q1, I2,Q2数据会在每4拍的 Data_clk上升沿和下降沿都会算1拍进行一次输出移位寄存器位宽为 24位每4拍后得到一个 I 和 Q 的采样值各占12位数据的取值参考下图时序依据寄存器配置参数选择单通道或者双通道DAC侧对于1T1R每 2 个时钟周期CLK 输出一个数据dac_data对于2T2R每 4 个时钟周期CLK 输出一个数据dac_data实现逻辑对于1T1R每2拍输出一个数据计数器0~1对于2T2R每4拍输出一个数据计数器0~3根据 1T1R2T2R的模式选择和计数器兼容1T1R2T2R的值进行判断对数据tx_data 和 tx_frame 1T1R 102T2R1100进行赋值得到的数据和 tx_frame 以及 data_clk 都需要经过ODDR 单沿转双沿再经过一个OBUFDS 输出出去数据为多比特需要利用for循环进行单比特发送ODDR 是一个专用的输出双数据速率寄存器用于将 FPGA 内部的两个单数据速率SDR数据流合并为一个双数据速率DDR信号通过单个引脚输出。SDR 转 DDR将内部两个单时钟沿的数据合并在时钟的上升沿和下降沿都输出数据使数据吞吐量翻倍。OBUFDS 是一个差分输出缓冲器用于将内部单端信号转换为差分信号通过一对差分引脚P 和 N输出。单端转差分将 FPGA 内部单端信号转换为标准差分信号。仿真测试回环测试tx 给到 rx数据延时不能使用 assign # 如果使用此种方法延时的时间里数据发生了变化是不会被传递的延时时刻数据保持延时结束后数据才会更新所以在延时的时间段内数据是不会变化的从而会导致数据丢失使用assign 进行数据延时会导致数据丢失因为 assign 语句是不能用于模拟数据的路径延时IDELAYE2

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询