AD9361 数据数字接口说明

2023-11-03 00:04

本文主要是介绍AD9361 数据数字接口说明,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、简要

           AD9361和BBP之间的数据接口以两种模式之一工作:标准CMOS兼容模式或低压差分信号(LVDS)兼容模式。本篇文章将简要介绍一下CMOS和LVDS工作模式下的数据具体的传输样式。

二、CMOS 工作模式

        P0_D[11:0] and P1_D[11:0]: 端口0(P0)和端口1(P1)都有一个12位并行数据总线(D[11:0]),可在BBP和AD9361之间传输数据。每个总线在大小和功能上都与另一个总线相同,所以D[11:0]被用来指P0或P1。这些总线可以配置为仅传输、仅接收或双向传输。

        DATA_CLK:  DATA_CLK信号作为Rx数据路径的主时钟提供给BBP。在CMOS模式下,它在内部生成并输出到DATA_CLK_P引脚上(DATA_CLK_N保持未连接)。根据数据总线配置,对P0、P1或两个端口都使用相同的时钟。BBP使用这个主时钟作为接口数据传输和基带数据处理的定时参考。DATA_CLK在接收操作期间提供具有双边缘捕获(DDR)或单上升边缘捕获(SDR)数据传输的源同步定时。

        FB_CLK:FB_CLK是DATA_CLK的一个反馈(环回)版本,从BBP在CMOS模式下驱动到FB_CLK_P引脚(FB_CLK_N保持不连接)。FB_CLK允许对突发控制信号(TX_FRAME、启用和TXNRX)进行上升边缘捕获的源同步定时。FB_CLK还为Tx突发(P0和P1)期间的D[11:0]数据信号提供具有双边缘捕获(DDR)或单上升边捕获(SDR)的源同步定时。请注意,FB_CLK必须是DATA_CLK的反馈版本(完全相同的频率和占空比),但在两个时钟信号之间没有相位关系的要求。

        RX_FRAME: RX_FRAME由AD9361驱动,以识别Rx数据路径(P0和P1)的有效数据。在CMOS模式下,该信号从RX_FRAME_P引脚输出(RX_FRAME_N接地)。

        TX_FRAME:  TX_FRAME由BBP驱动,以识别Tx数据路径(P0和P1)的有效数据。在CMOS模式下,该信号被输入到TX_FRAME_P引脚(TX_FRAME_N接地)。

1、 单端半双工

        单端口半双工模式用于需要TDD操作和数据速率低于61.44 MHz的应用程序。在这种模式下,总线以双向半双工的方式使用,以便可以在同一线路上接收或传输数据。这种模式可用于所有接收机-发射机配置(1R1T、2R1T、1R2T和2R2T),通常在PCB空间有限或BBP只有一个可用的数据总线端口时使用。在此配置中,总线可以作为单数据速率(SDR)或双数据速率(DDR)进行操作。

         数据样本以二进制补码存放。I和Q数据样本在数据总线上时间交错传输。对于每个方向上的单个RF路径(一个1R1T系统),I和Q样品以双向交错的方式进行:

                          I,Q,I,Q,...

        对于使用两个Rx/Tx通道的系统,来自RF通道1和2的I和Q样本以4路交错:

                         I1、Q1、I2、Q2、I1、Q1、I2、Q2、…

        对于具有2R1T或1R2T配置的系统,时钟频率、采样周期和数据捕获时间与2R2T系统配置的相同。但是,在只使用一个通道的路径中,每个数据组中的禁用通道的I-Q对都未使用。这些未使用的插槽会被AD9361所忽略。例如,在一个只使用Tx信道1的2R1T系统中,发射突发将有两个未使用的插槽,如下:

                        I、Q、X、X、I、Q、X、X、..

未使用的X插槽可以由BBP填充任意的数据值。这些值可以是固定的常数值,或者可以重复前面的数据样本值,以减少母线切换因子,因此,功耗。

2、 单端全双工

        单端口全双工模式用于需要FDD操作和数据速率低于30.72 MHz的应用程序。在这种模式下,总线被分成两半,6位专用于Rx数据,6位专用于Tx数据。这种模式可用于所有的接收机-发射机配置。在此配置中,总线可以作为SDR或DDR进行操作。在本例中,只启用了P0,并且数据总线被分割成单独的子总线。每个子总线同时工作,允许在BBP和AD9361之间进行全双工传输和接收数据。因为在全双工模式下,总线必须完成两倍数量的数据传输,所以数据总线必须以TDD模式的两倍速度运行,以实现相同的传输和接收数据速率(因为每个数据都在全双工模式中并发运行)。

         在这种模式下,I和Q数据样本在数据总线上进行时间交错。对于每个方向的单个RF路径(1R1T系统),数据以4路交错携带,如下:

                         IMSB、QMSB、ILSB、QLSB、...

        对于具有两个活动Rx/Tx通道的系统,RF通道1和2通道的I和Q样本以8路交错携带,如下:

                         I1 MSB、Q1 MSB、I1 LSB、Q1 LSB、I2 MSB、Q2 MSB、Q2 LSB、Q2 LSB、…

        对于具有2R1T或1R2T配置的系统,时钟频率、采样周期和数据采集时间与2R2T系统配置的相同。但是,在只使用一个通道的路径中,每个数据组中被禁用通道的I-Q对都未使用。这些未使用的插槽会被AD9361所忽略。例如,对于使用发射信道1的2R1T系统,发射突发有四个未使用的槽:

                         I1 MSB、Q1 MSB、I1 LSB、Q1 LSB、X、X、X、X、..

        未使用的X插槽可以通过BBP用任意的数据值来填充。这些值可以是常量值,或者可以重复前面的数据样本值,以降低总线切换因子,从而降低功耗。

3、 双端半双工

        双端口半双工模式用于需要TDD操作和数据速率高达122.88 MHz的应用程序。在这种模式下,使用两个数据端口,P0分配给I数据,P1分配给Q数据。端口在这种模式下双向操作,数据方向是由哪个信道是活动的:传输或接收。在此配置中,每个总线都可以作为SDR或DDR进行操作。这种模式可用于所有的接收机-发射机配置。

         对于每个方向上的单个RF路径(即1R1T系统),I和Q样本用P0_D[11:0]上的I数据和P1_D[11:0]上的Q数据分离如下:

                P0:I,I,I,I,…

                P1:Q,Q,Q,…

        对于有两个主动Rx通道的系统,RF路径1和RF路径2的I和Q样本与P1上的I样本双向交错,P0和Q样本中有I样本。

                P0: I1、I2、I1、I2、…

                P1:Q1、Q2、Q1、Q2、…

        对于具有2R1T或1R2T配置的系统,时钟频率、采样周期和数据捕获时间与为2R2T系统配置的相同。但是,在只使用一个通道的路径中,每个数据组中被禁用通道的I-Q对都未使用。例如,对于只使用Tx通道1的2R1T系统,Tx burst将有两个未使用的插槽,如下:

                P0: I1,X,I1,X,…

                P1:Q1,X,Q1,X,...

        未使用的X插槽可以通过BBP用任意的数据值来填充。

4、 双端全双工

        双端口全双工模式(全端口)用于需要FDD操作和数据速率低于61.44 MHz的应用程序。在此模式下,使用两个数据端口,P0用于接收数据,P1用于传输数据。每个总线同时运行,允许在BBP和AD9361之间进行Tx和Rx数据的全双工传输。对于这种模式,每个数据总线必须以双端口TDD模式的两倍速度运行,以实现相同的Tx和Rx数据速率(因为每个数据总线都在全双工模式中并发运行)。在此配置中,每个总线都可以作为SDR或DDR进行操作。这种模式可用于所有的接收机-发射机配置。

        对于每个方向的单个射频路径,数据携带如下:

                 Px: I、Q、I、Q、I、Q、Q、…

        对于具有两个Rx/Tx通道的系统,来自射频通道1和2的I和Q样本携带如下:

                 Px: I1、Q1、I2、Q2,…

        对于具有2R1T或1R2T配置的系统,时钟频率、采样周期和数据捕获时间与2R2T系统配置时相同。但是,在只使用一个通道的路径中,每个数据组中的禁用通道的I-Q对都未使用。这些未使用的插槽会被AD9361所忽略。例如,对于使用Tx通道1的2R1T系统,Tx突发将有两个未使用的插槽,如下:

                Px: I1,Q1,X,X,..

        未使用的X插槽可以由BBP填充任意的数据值。这些值可以是常量值,也可以重复前面的数据样本值,以降低总线切换因子,从而降低功耗。

三、 LVDS 工作模式

        以下信息描述了AD9361在低电压差分信号(LVDS)模式下数据路径的操作。AD9361数据路径接口使用并行数据总线(P0和P1)在AD9361和BBP之间传输数据样本。在LVDS模式下,两个总线都与差分LVDS信令一起使用。AD9361 LVDS接口有助于连接到具有LVDS功能的自定义asic和fpga。当系统在有噪声的环境中需要更好的交换性能和比标准CMOS接口更高的数据速率时,通常会使用LVDS接口。

          双端全双工LVDS:

        通过写入SPI寄存器来启用双总线全双工LVDS模式。在这种模式下,P0和P1都被启用为LVDS信号,并且数据总线(D[11:0])被分割成单独的子总线(Rx_D[5:0]和Tx_D[5:0])。每个子总线同时运行,允许在BBP和AD9361之间进行全双工传输和接收数据。

        I和Q数据样本在每个数据总线上进行时间交错的数据传输。对于1R1T系统,I和Q样本以4路交错携带:

                 IMSB,QMSB,ILSB,QLSB,…

        在这种情况下,Tx_FRAME和Rx_FRAME信号与数据切换一致。当启用50%占空比框架时,IMSB和QMSB分别处于高状态,ILSB和QLSB都处于低状态。然后,这些信号再次用IMSB调高,以指示新帧的开始。对于2R2T系统,射频路径1和2的I和Q样本以8路交错:

         I1 MSB、Q1 MSB、I1 LSB、Q1 LSB、I2 MSB、Q2 MSB、I2 LSB、LSB、Q2 LSB、…

        在这种情况下,Tx_FRAME和Rx_FRAME信号与数据交换一致。当启用50%占空比框架时,I1MSB、Q1MSB、I1LSB、Q1LSB均处于高状态,I2MSB、Q2MSB、I2LSB和Q2LSB均处于低状态。然后,这些信号再次用IAMSB调高,以指示新帧的开始。

        对于具有2R1T或1R2T配置的系统,时钟频率、总线传输速率和采样周期以及数据捕获定时与为2R2T系统配置的系统相同。但是,在只使用一个通道的路径中,每个数据组中的禁用通道的I-Q对都未使用。这些未使用的插槽会被AD9361所忽略。例如,对于使用Tx通道1的2R1T系统,发射突发将有四个未使用的插槽:

                 I1 MSB,Q1 MSB,I1 LSB,Q1 LSB,X,X,X,X,…

        在这种情况下,Tx_FRAME和Rx_FRAME与数据交换一致,I1 MSB,Q1 MSB,I1 LSB,Q1 LSB,未使用插槽低。这些信号然后用I1MSB再次切换到较高的位置,以指示新帧的开始。未使用的X插槽可以由BBP填充任意的数据值。这些值可以是常量值,也可以重复前面的数据样本值,以降低总线切换因子,从而降低功耗。

四、 参考链接

AD9361 数据手册和产品信息 | 亚德诺(ADI)半导体

这篇关于AD9361 数据数字接口说明的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!


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

相关文章

zookeeper端口说明及介绍

《zookeeper端口说明及介绍》:本文主要介绍zookeeper端口说明,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、zookeeper有三个端口(可以修改)aVNMqvZ二、3个端口的作用三、部署时注意总China编程结一、zookeeper有三个端口(可以

SQL中如何添加数据(常见方法及示例)

《SQL中如何添加数据(常见方法及示例)》SQL全称为StructuredQueryLanguage,是一种用于管理关系数据库的标准编程语言,下面给大家介绍SQL中如何添加数据,感兴趣的朋友一起看看吧... 目录在mysql中,有多种方法可以添加数据。以下是一些常见的方法及其示例。1. 使用INSERT I

Python使用vllm处理多模态数据的预处理技巧

《Python使用vllm处理多模态数据的预处理技巧》本文深入探讨了在Python环境下使用vLLM处理多模态数据的预处理技巧,我们将从基础概念出发,详细讲解文本、图像、音频等多模态数据的预处理方法,... 目录1. 背景介绍1.1 目的和范围1.2 预期读者1.3 文档结构概述1.4 术语表1.4.1 核

Go语言中make和new的区别及说明

《Go语言中make和new的区别及说明》:本文主要介绍Go语言中make和new的区别及说明,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1 概述2 new 函数2.1 功能2.2 语法2.3 初始化案例3 make 函数3.1 功能3.2 语法3.3 初始化

MySQL 删除数据详解(最新整理)

《MySQL删除数据详解(最新整理)》:本文主要介绍MySQL删除数据的相关知识,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录一、前言二、mysql 中的三种删除方式1.DELETE语句✅ 基本语法: 示例:2.TRUNCATE语句✅ 基本语

java中新生代和老生代的关系说明

《java中新生代和老生代的关系说明》:本文主要介绍java中新生代和老生代的关系说明,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、内存区域划分新生代老年代二、对象生命周期与晋升流程三、新生代与老年代的协作机制1. 跨代引用处理2. 动态年龄判定3. 空间分

MyBatisPlus如何优化千万级数据的CRUD

《MyBatisPlus如何优化千万级数据的CRUD》最近负责的一个项目,数据库表量级破千万,每次执行CRUD都像走钢丝,稍有不慎就引起数据库报警,本文就结合这个项目的实战经验,聊聊MyBatisPl... 目录背景一、MyBATis Plus 简介二、千万级数据的挑战三、优化 CRUD 的关键策略1. 查

python实现对数据公钥加密与私钥解密

《python实现对数据公钥加密与私钥解密》这篇文章主要为大家详细介绍了如何使用python实现对数据公钥加密与私钥解密,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录公钥私钥的生成使用公钥加密使用私钥解密公钥私钥的生成这一部分,使用python生成公钥与私钥,然后保存在两个文

MySQL之InnoDB存储引擎中的索引用法及说明

《MySQL之InnoDB存储引擎中的索引用法及说明》:本文主要介绍MySQL之InnoDB存储引擎中的索引用法及说明,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录1、背景2、准备3、正篇【1】存储用户记录的数据页【2】存储目录项记录的数据页【3】聚簇索引【4】二

mysql中的数据目录用法及说明

《mysql中的数据目录用法及说明》:本文主要介绍mysql中的数据目录用法及说明,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1、背景2、版本3、数据目录4、总结1、背景安装mysql之后,在安装目录下会有一个data目录,我们创建的数据库、创建的表、插入的