AD9361 数据数字接口说明

2023-11-02 20:45

本文主要是介绍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/333201

相关文章

SpringBoot集成Milvus实现数据增删改查功能

《SpringBoot集成Milvus实现数据增删改查功能》milvus支持的语言比较多,支持python,Java,Go,node等开发语言,本文主要介绍如何使用Java语言,采用springboo... 目录1、Milvus基本概念2、添加maven依赖3、配置yml文件4、创建MilvusClient

SpringValidation数据校验之约束注解与分组校验方式

《SpringValidation数据校验之约束注解与分组校验方式》本文将深入探讨SpringValidation的核心功能,帮助开发者掌握约束注解的使用技巧和分组校验的高级应用,从而构建更加健壮和可... 目录引言一、Spring Validation基础架构1.1 jsR-380标准与Spring整合1

MySQL 中查询 VARCHAR 类型 JSON 数据的问题记录

《MySQL中查询VARCHAR类型JSON数据的问题记录》在数据库设计中,有时我们会将JSON数据存储在VARCHAR或TEXT类型字段中,本文将详细介绍如何在MySQL中有效查询存储为V... 目录一、问题背景二、mysql jsON 函数2.1 常用 JSON 函数三、查询示例3.1 基本查询3.2

SpringBatch数据写入实现

《SpringBatch数据写入实现》SpringBatch通过ItemWriter接口及其丰富的实现,提供了强大的数据写入能力,本文主要介绍了SpringBatch数据写入实现,具有一定的参考价值,... 目录python引言一、ItemWriter核心概念二、数据库写入实现三、文件写入实现四、多目标写入

使用Python将JSON,XML和YAML数据写入Excel文件

《使用Python将JSON,XML和YAML数据写入Excel文件》JSON、XML和YAML作为主流结构化数据格式,因其层次化表达能力和跨平台兼容性,已成为系统间数据交换的通用载体,本文将介绍如何... 目录如何使用python写入数据到Excel工作表用Python导入jsON数据到Excel工作表用

Mysql如何将数据按照年月分组的统计

《Mysql如何将数据按照年月分组的统计》:本文主要介绍Mysql如何将数据按照年月分组的统计方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录mysql将数据按照年月分组的统计要的效果方案总结Mysql将数据按照年月分组的统计要的效果方案① 使用 DA

鸿蒙中Axios数据请求的封装和配置方法

《鸿蒙中Axios数据请求的封装和配置方法》:本文主要介绍鸿蒙中Axios数据请求的封装和配置方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录1.配置权限 应用级权限和系统级权限2.配置网络请求的代码3.下载在Entry中 下载AxIOS4.封装Htt

Python获取中国节假日数据记录入JSON文件

《Python获取中国节假日数据记录入JSON文件》项目系统内置的日历应用为了提升用户体验,特别设置了在调休日期显示“休”的UI图标功能,那么问题是这些调休数据从哪里来呢?我尝试一种更为智能的方法:P... 目录节假日数据获取存入jsON文件节假日数据读取封装完整代码项目系统内置的日历应用为了提升用户体验,

go中空接口的具体使用

《go中空接口的具体使用》空接口是一种特殊的接口类型,它不包含任何方法,本文主要介绍了go中空接口的具体使用,具有一定的参考价值,感兴趣的可以了解一下... 目录接口-空接口1. 什么是空接口?2. 如何使用空接口?第一,第二,第三,3. 空接口几个要注意的坑坑1:坑2:坑3:接口-空接口1. 什么是空接

Java利用JSONPath操作JSON数据的技术指南

《Java利用JSONPath操作JSON数据的技术指南》JSONPath是一种强大的工具,用于查询和操作JSON数据,类似于SQL的语法,它为处理复杂的JSON数据结构提供了简单且高效... 目录1、简述2、什么是 jsONPath?3、Java 示例3.1 基本查询3.2 过滤查询3.3 递归搜索3.4