【AD9361 数字接口CMOS LVDSSPI】C 并行数据 LVDS <续>

2023-10-31 10:20

本文主要是介绍【AD9361 数字接口CMOS LVDSSPI】C 并行数据 LVDS <续>,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

续【AD9361 数字接口CMOS &LVDS&SPI】C 并行数据之LVDS
不同于CMOS的传输方式,lvds只能工作在双端口全双工模式下。

一、 双端口全双工模式 (LVDS)代称 DFL

DUAL PORT FULL DUPLEX MODE

DFL 模式通过写入SPI寄存器实现。在此模式下,P0 和 P1 均作为 LVDS 信号使能,数据总线 (D[11:0]) 被拆分为单独的子总线 (Rx_D[5:0] 和 Tx_D[5:0])。每个子总线同时工作,允许BBP和AD9361之间实现发送和接收数据的全双工。

发送数据(Tx_D[5:0])、FB_CLK和Tx_FRAME由BBP驱动,因此FB_CLK、Tx_D[5:0]和Tx_FRAME之间的建立和保持时间允许AD9361使用FB_CLK捕获Tx_D[5:0]和Tx_FRAME。Tx_D[5:0] 总线上的数据样本由Tx_FRAME信号成帧,如时序图所示。传输数据样本以二进制补码格式传输,每个数据包中的第一个 6 bit包含 MSB,第二个 6 bit包含 LSB。最大值是0x7FF,第一个6bit是0x1F,第二个6bit是0x3F,最小值是0x800,第一个6bit是0x20,第二个6bit是0x00。Tx_D[5]是每个6bit中最高有效位,Tx_D[0]是最低有效位。

接收数据(Rx_D[5:0])、DATA_CLK和Rx_FRAME由AD9361驱动,因此DATA_CLK、Rx_D[5:0]和Rx_FRAME之间的建立和保持时间允许BBP使用DATA_CLK捕获Rx_D[5:0]和Rx_FRAME。
Rx_D[5:0] 总线上的数据样本由Rx_FRAME信号成帧,如时序图所示。接收数据样本以二进制补码格式传输,每个数据包中的第一个 6 bit包含 MSB,第二个 6 bit包含 LSB。最大值是0x7FF,第一个6bit是0x1F,第二个6bit是0x3F,最小值是0x800,第一个6bit是0x20,第二个6bit是0x00。Tx_D[5]是每个6bit中最高有效位,Tx_D[0]是最低有效位。
请注意,与CMOS模式一样,FB_CLK必须从DATA_CLK产生,以便保持相同的频率和占空比。两个时钟信号之间没有相位关系要求。

如前所述,I 和 Q 数据样本在每个数据总线上是时间交错的。对于 1R1T 系统,I 和 Q 采样数据以 4 路交错方式传输:
IMSB , QMSB, ILSB, QLSB, …

在这种情况下,Tx_FRAME和Rx_FRAME信号与数据切换重合。当启用 50% 占空比成帧时,I MSB 和 Q MSB 均处于高电平状态,I LSB 和 Q LSB 均处于低电平状态。然后,这些信号再次以I MSB切换为高电平,以指示新帧的开始。

对于 2R2T 系统,来自 RF 路径 1 和 2 的 I 和 Q 样本以 8 路交错方式传输:
I1MSB, Q1MSB, I1LSB, Q1LSB, I2MSB, Q2MSB, I2LSB, Q2LSB, …
在这种情况下,Tx_FRAME和Rx_FRAME信号与数据切换重合。每个都处于 I1MSB 的高电平状态,
Q1MSB、I1LSB、Q1LSB 和 I2MSB、Q2MSB、I 2LSB 和 Q2LSB 的低电平状态
启用 50% 占空比成帧时。然后,这些信号再次切换为高电平,并带有 IAMSB,以指示新帧的开始。
对于具有 2R1T 或 1R2T 配置的系统,时钟频率、总线传输速率和采样周期以及数据捕获时序与为 2R2T 系统配置的时钟频率相同。
但是,在仅使用单个通道的路径中,每个数据组中禁用通道的 I-Q 对未使用。AD9361忽略这些未使用的插槽。例如,对于使用 Tx 通道 1 的 2R1T 系统,发射突发将有四个未使用的时隙:
I 1MSB, Q 1MSB , I1LSB , Q1LSB,X,X,X,X,X , …
在这种情况下,Tx_FRAME和Rx_FRAME与数据切换一致,I1MSB、Q1MSB、I1LSB、Q1LSB为高电平,未使用时隙为低电平。然后,这些信号通过I1MSB再次切换为高电平,以指示新帧的开始。BBP 可能会用任意数据值填充未使用的 X 通道。这些值可以是常量值,也可以重复前面的数据采样值,以降低总线开关系数,从而降低功耗。

二、数据通路功能时序 (LVDS)

下图时序图说明了双端口FDD LVDS模式下总线信号之间的关系。时序图中的差分数据用实线和虚线绘制,以说明数据线的差分性质。正腿的实线与差分对的负腿的实线匹配,正腿对的虚线与负腿的虚线匹配。请注意,由于 2R1T 和 1R2T 系统遵循 2R2T 时序图,因此省略了它们。
在这里插入图片描述
在这里插入图片描述

注意:
LVDS 模式不支持以下位配置:

交换端口 — 在LVDS模式下,P0为Tx,P1为Rx。无法更改此配置。
单端口模式 — 两个端口均在LVDS模式下启用。
FDD全端口 — LVDS不支持。
FDD Alt Word Order - LVDS不支持。
FDD 交换位 — LVDS 不支持。

三、数据路径时序参数(LVDS)

DATA PATH TIMING PARAMETERS
下表列出了LVDS数据总线的时序约束。
在这里插入图片描述
在这里插入图片描述
参考源文件 :《UG-570 AD9361 Reference Manual 》
参考源文件 :《UG-671 AD9361 Register Map Reference Manual》

这篇关于【AD9361 数字接口CMOS LVDSSPI】C 并行数据 LVDS <续>的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/314666

相关文章

Python将大量遥感数据的值缩放指定倍数的方法(推荐)

《Python将大量遥感数据的值缩放指定倍数的方法(推荐)》本文介绍基于Python中的gdal模块,批量读取大量多波段遥感影像文件,分别对各波段数据加以数值处理,并将所得处理后数据保存为新的遥感影像... 本文介绍基于python中的gdal模块,批量读取大量多波段遥感影像文件,分别对各波段数据加以数值处

详解Java如何向http/https接口发出请求

《详解Java如何向http/https接口发出请求》这篇文章主要为大家详细介绍了Java如何实现向http/https接口发出请求,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 用Java发送web请求所用到的包都在java.net下,在具体使用时可以用如下代码,你可以把它封装成一

使用MongoDB进行数据存储的操作流程

《使用MongoDB进行数据存储的操作流程》在现代应用开发中,数据存储是一个至关重要的部分,随着数据量的增大和复杂性的增加,传统的关系型数据库有时难以应对高并发和大数据量的处理需求,MongoDB作为... 目录什么是MongoDB?MongoDB的优势使用MongoDB进行数据存储1. 安装MongoDB

Python MySQL如何通过Binlog获取变更记录恢复数据

《PythonMySQL如何通过Binlog获取变更记录恢复数据》本文介绍了如何使用Python和pymysqlreplication库通过MySQL的二进制日志(Binlog)获取数据库的变更记录... 目录python mysql通过Binlog获取变更记录恢复数据1.安装pymysqlreplicat

Linux使用dd命令来复制和转换数据的操作方法

《Linux使用dd命令来复制和转换数据的操作方法》Linux中的dd命令是一个功能强大的数据复制和转换实用程序,它以较低级别运行,通常用于创建可启动的USB驱动器、克隆磁盘和生成随机数据等任务,本文... 目录简介功能和能力语法常用选项示例用法基础用法创建可启动www.chinasem.cn的 USB 驱动

Oracle数据库使用 listagg去重删除重复数据的方法汇总

《Oracle数据库使用listagg去重删除重复数据的方法汇总》文章介绍了在Oracle数据库中使用LISTAGG和XMLAGG函数进行字符串聚合并去重的方法,包括去重聚合、使用XML解析和CLO... 目录案例表第一种:使用wm_concat() + distinct去重聚合第二种:使用listagg,

Java后端接口中提取请求头中的Cookie和Token的方法

《Java后端接口中提取请求头中的Cookie和Token的方法》在现代Web开发中,HTTP请求头(Header)是客户端与服务器之间传递信息的重要方式之一,本文将详细介绍如何在Java后端(以Sp... 目录引言1. 背景1.1 什么是 HTTP 请求头?1.2 为什么需要提取请求头?2. 使用 Spr

Python实现将实体类列表数据导出到Excel文件

《Python实现将实体类列表数据导出到Excel文件》在数据处理和报告生成中,将实体类的列表数据导出到Excel文件是一项常见任务,Python提供了多种库来实现这一目标,下面就来跟随小编一起学习一... 目录一、环境准备二、定义实体类三、创建实体类列表四、将实体类列表转换为DataFrame五、导出Da

Python实现数据清洗的18种方法

《Python实现数据清洗的18种方法》本文主要介绍了Python实现数据清洗的18种方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学... 目录1. 去除字符串两边空格2. 转换数据类型3. 大小写转换4. 移除列表中的重复元素5. 快速统

Python数据处理之导入导出Excel数据方式

《Python数据处理之导入导出Excel数据方式》Python是Excel数据处理的绝佳工具,通过Pandas和Openpyxl等库可以实现数据的导入、导出和自动化处理,从基础的数据读取和清洗到复杂... 目录python导入导出Excel数据开启数据之旅:为什么Python是Excel数据处理的最佳拍档