【AD9361 数字接口CMOS LVDSSPI】C 并行数据 LVDS
接上一部分,AD9361 数字接口CMOS &LVDS&SPI
目录
- 一、LVDS模式数据路径和时钟信号
- LVDS模式数据通路信号
- [1] DATA_CLK
- [2] FB_CLK
- [3] Rx_FRAME
- [4] Rx_D[5:0]
- [5] Tx_FRAME
- [6]Tx_D[5:0]
- [7] ENABLE
- [8] TXNRX系列
- 二、LVDS最大时钟速率和信号带宽
一、LVDS模式数据路径和时钟信号
LVDS MODE DATA PATH AND CLOCK SIGNALS
以下介绍AD9361数据路径在低压差分信号(LVDS)模式(ANSI-644)下的工作情况。AD9361数据通路接口使用并行数据总线(P0和P1)在AD9361和BBP之间传输采样数据。总线传输使用简单的硬件握手信号进行控制。在LVDS模式下,两条总线均遵循差分LVDS信号。
AD9361使用 LVDS接口方便的连接到具有LVDS接口的ASIC或FPGA。LVDS接口通常用于系统在嘈杂环境中需要卓越的开关性能以及比标准CMOS接口更高的数据速率的情况。使用LVDS模式时,建议将所有走线长度保持在不超过30厘米,并使差分走线紧密相连且长度相等。

LVDS模式数据通路信号
LVDS MODE DATA PATH SIGNALS
数据接口由以下信号组成。
[1] DATA_CLK
DATA_CLK是在AD9361中产生的差分LVDS信号,并作为Rx数据路径的主时钟提供给BBP。BBP使用此主时钟作为接口数据传输和采样数据基带处理的时序参考。DATA_CLK在接收操作期间为 Rx_D[5:0] 信号提供源同步时序和 DDR 操作。
SDR 在 LVDS 模式下不可用。
DATA_CLK频率取决于系统架构(射频通道数、过采样程度和带宽模式)。该频率通过SPI写入AD9361来设置。
AD9361可以在接口空闲期间停止DATA_CLK(响应来自BBP的SPI事务),以降低功耗。如果禁用DATA_CLK,则与非切换状态的转换必须符合电气层对干净信号转换的要求,并且AD9361必须始终驱动有效电平。
[2] FB_CLK
FB_CLK是由BBP驱动的差分LVDS信号,是DATA_CLK的反馈(回环)版本。 FB_CLK在Tx突发期间为Tx_D[5:0]信号提供源同步时序和双边沿捕获。
FB_CLK可在接口空闲期间由BBP停止,以降低功耗。如果是这样,则与非切换状态之间的转换必须遵守干净信号转换的电气层要求,并且必须始终由BBP驱动有效电平。
[3] Rx_FRAME
Rx_FRAME是由AD9361驱动并提供给BBP的差分LVDS信号,用于对AD9361提供的采样数据进行成帧。上升沿表示帧的开始。Rx_FRAME可以设置为突发开始时的单个高电平转换,并在整个突发过程中保持高电平,也可以设置为在每帧开始时具有上升沿的脉冲序列(50% 占空比)。
[4] Rx_D[5:0]
Rx_D[5:0] 是由 6 个差分对组成的差分 LVDS 数据总线。它通过接收到的数据从AD9361驱动至BBP。数据在该总线上以成对的数据字传输,以创建 12 位数据总线。
[5] Tx_FRAME
Tx_FRAME是由BBP驱动的差分LVDS信号,并提供给AD9361,以对BBP提供的采样数据进行成帧。上升沿表示帧的开始。Tx_FRAME可以接受突发开始时的单个高电平转换,该跳变在整个突发期间保持高电平,或者接受在每帧开始时具有上升沿的脉冲序列(50% 占空比)。
AD9361发送零数据(全部为零),直到第一个Tx_FRAME指示有效数据。当 Tx 路径在 FDD 独立模式下完成传输操作并且数据路径不会自动刷新时,这是一个有用的功能。在这种情况下,可以将TX_FRAME引脚保持低电平以完成数据刷新操作。有关详细信息,请参阅“启用状态机指南”部分。
请注意,Rx_FRAME 和 Tx_FRAME 都是接口正常运行所需的信号。
[6]Tx_D[5:0]
Tx_D[5:0]是由六个差分对组成的差分LVDS数据总线。它从BBP驱动至AD9361,数据通过发送器输出。数据在该总线上以成对的数据字传输,以创建 12 位数据总线。
[7] ENABLE
ENABLE从BBP驱动至AD9361,以在TDD模式下提供数据传输突发控制(以及TXNRX)。ENABLE 由 BBP 断言至少一个DATA_CLK周期,以指示每个突发的开始。随后,在至少一个DATA_CLK周期内第二次置位,以指示每次突发的结束。
AD9361在内部跟踪ENABLE脉冲序列,以便将每个脉冲正确解释为每个突发的开始或结束。ENABLE信号也可以配置为电平模式,在这种模式下,信号的状态(非脉冲)决定了ENSM何时在状态之间移动。在LVDS模式下,数据端口始终处于活动状态。在TDD模式下,BBP和AD9361都会忽略非活动方向的数据。开始和结束延迟(AD9361采样的ENABLE脉冲与总线上存在第一个和最后一个有效数据采样之间的延迟)因数据路径配置而异。Rx_FRAME和Tx_FRAME信号分别用于确定BBP和AD9361的有效数据。FB_CLK信号用于对该输入进行采样。
在FDD模式下,ENABLE信号用作单个控制输入,以确定ENSM的状态。还有另一种FDD模式,在这种模式下,ENABLE信号可以重新定义为RxON,这是ENSM的直接硬件控制输入,用于控制Rx功能。在这种模式下(称为FDD独立控制模式),BBP独立控制Rx功能,可以节省功耗。
[8] TXNRX系列
TXNRX从BBP驱动至AD9361,并在ENSM处于TDD模式时提供数据传输突发控制(以及ENABLE)。当AD9361对ENABLE进行高电平采样以启动突发时,也会对TXNRX上的电平进行采样以确定数据方向。在 TDD 模式下,TXNRX 采样高电平表示发送突发,TXNRX 采样低电平表示接收突发。
TXNRX信号电平必须在整个数据传输突发期间保持(有效的逻辑电平)。TXNRX信号可以在对ENABLE起始脉冲进行采样之前建立任意数量的周期(≥ 0),也可以在对ENABLE结束脉冲进行采样后更改任意数量的周期(≥ 0)。需要注意的是,TXNRX信号只有在ENSM处于ALERT状态时才应改变状态,因为TXNRX上升沿和下降沿直接在TDD模式下对相应的频率合成器进行上电和断电。
在正常FDD模式下,TXNRX信号被忽略,但必须保持在有效的逻辑电平。还有另一种FDD模式,在这种模式下,TXNRX信号可以重新定义为TxON,这是ENSM的直接硬件控制输入,用于控制Tx功能。在这种模式下(称为FDD独立控制模式),BBP独立控制Tx功能,从而节省功耗。
二、LVDS最大时钟速率和信号带宽
LVDS MAXIMUM CLOCK RATES AND SIGNAL BANDWIDTHS
下表列出的数据比较了LVDS数据总线配置在不同允许工作模式下的最大数据时钟速率和信号带宽。列出了两种情况下的最大射频带宽:使用避免混叠的最小采样率进行采样,以及使用 2× 过采样进行采样。每种模式的详细信息将在后续中给出。在LVDS模式下,最大DATA_CLK速率提高到245.76 MHz。该时钟和56 MHz最大模拟滤波器带宽限制了RF信道信号带宽。请注意,TDD 和 FDD 模式的数据总线时序是相同的,因为每条路径(发送和接收)都有一条专用总线。

参考源文件 :《UG-570 AD9361 Reference Manual 》
参考源文件 :《UG-671 AD9361 Register Map Reference Manual》
相关文章:
【AD9361 数字接口CMOS LVDSSPI】C 并行数据 LVDS
接上一部分,AD9361 数字接口CMOS &LVDS&SPI 目录 一、LVDS模式数据路径和时钟信号LVDS模式数据通路信号[1] DATA_CLK[2] FB_CLK[3] Rx_FRAME[4] Rx_D[5:0][5] Tx_FRAME[6]Tx_D[5:0][7] ENABLE[8] TXNRX系列 二、LVDS最大时钟速率和信…...
开关电源测试方案分享:电源纹波及噪声测试方法、测试标准
纹波及噪声影响着设备的性能和稳定性,是开关电源测试的重要环节。通过电源纹波噪声测试,检测电源纹波情况,从而提升开关电源的性能。纳米软件开关电源自动化测试软件助力纹波和噪声测试,提升测试效能。 开关电源纹波及噪声测试方法…...
git的使用——如何创建.gitignore文件,排除target、.idea文件夹的提交
前言 git作为开发人员必备的技能,需要熟练掌握,本篇博客记录一些git使用的场景,结合具体问题进行git使用的记录。以gitee的使用为例。 本篇博客介绍如何创建.gitignore文件,排除一些文件夹的提交,比如排除target、.i…...
react-antd组件 input输入框: 实现按回车搜索
目录 法1: 法2: 法1: 在Input组件上绑定onKeyUp方法 import { Input, message } from antd;class App extends React.Component{handeleSousuo () > {this.props.form.validateFields((error, values) > {if(!error){axios.post().t…...
python_PyQt5日周月K线纵向对齐显示_1_数据处理
目录 写在前面: 图形结果显示: 数据设计: 代码: 从日数据中计算周数据、月数据 生成图形显示需要的数据格式 写在前面: “PyQt5日周月K线纵向对齐显示”,将分三篇博文描述 1 数据处理。将数据处理成…...
leetcode经典面试150题---4.删除有序数组中的重复项II
目录 题目描述 前置知识 代码 方法一 双指针 思路 图解 实现 复杂度 题目描述 给你一个有序数组 nums ,请你 原地 删除重复出现的元素,使得出现次数超过两次的元素只出现两次 ,返回删除后数组的新长度。 不要使用额外的数组空间&…...
Transformer英语-法语机器翻译实例
依照Transformer结构来实例化编码器-解码器模型。在这里,指定Transformer编码器和解码器都是2层,都使用4头注意力。为了进行序列到序列的学习,我们在英语-法语机器翻译数据集上训练Transformer模型,如图11.2所示。 da…...
21.12 Python 实现网站服务器
Web服务器本质上是一个提供Web服务的应用程序,运行在服务器上,用于处理HTTP请求和响应。它接收来自客户端(通常是浏览器)的HTTP请求,根据请求的URL、参数等信息生成HTTP响应,并将响应返回给客户端ÿ…...
Leetcode.274 H 指数
题目链接 Leetcode.274 H 指数 mid 题目描述 给你一个整数数组 c i t a t i o n s citations citations ,其中 c i t a t i o n s [ i ] citations[i] citations[i] 表示研究者的第 i i i 篇论文被引用的次数。计算并返回该研究者的 h h h 指数。 根据维基百科…...
订单BOM放哪儿?(我的APS项目二)
供应商的小伙伴带来了一个全新的架构,在服务器提供的服务中,有一个对象模型服务,就是数据内存对象;这个方式确实是我在其它架构中没有见到过的。可惜,最初的版本,我们的订单BOM被设计到放在内存对象中。我对…...
从0到1之微信小程序快速入门(03)
目录 什么是生命周期函数 WXS脚本 编辑 与 JavaScript 不同 纯数据字段 组件生命周期 定义生命周期方法 代码示例 组件所在页面的生命周期 代码示例 插槽 什么是插槽 启用多插槽 编辑 定义多插槽 组件通信 组件间通信 监听事件 触发事件 获取组件实例 自…...
【面试高高手】—— docker面试题
文章目录 1. 什么是Docker?它有什么作用?2.Docker容器和虚拟机之间有什么区别?3.如何创建一个Docker容器?4.Docker镜像和容器的区别是什么?5.什么是Dockerfile?能够详细说明下吗?6.什么是Docker Compose&a…...
mac电脑怎么永久性彻底删除文件?
Mac老用户都知道在我们查看Mac内存时都会发现有一条“其他文件”占比非常高,它是Mac储存空间中的“其他”数据包含不可移除的移动资源,如,Siri 语音、字体、词典、钥匙串和 CloudKit 数据库、系统无法删除缓存的文件等。这些“其他文件”无用…...
MySQL(2):环境搭建
1.软件下载 软装去官网下载(社区版):https://downloads.mysql.com/archives/installer/(历史版本可选) 选择下面的,一步到位 2.软件安装 双击 .msi 文件 选完 Custom 自定义后点 next 按 1,…...
Android平台GB28181执法记录仪技术方案
技术背景 我们在做Android平台GB28181设备接入模块的时候,对接过好多开发者,他们都是用于执法记录仪场景,执法记录仪是一种便携式设备,用于记录执法人员的行动和接触情况,通过实时回传音视频数据和实时位置信息给指挥…...
【已解决】VSCode运行C#控制台乱码显示
问题描述 如上图所示,最近在学习C#突然发现我在运行Hello World的时候出现这样的乱码情况。 分析原因 主要是因为VS Code 是UTF-8的编码格式,而我们的PC是Unicode编码,所以我们需要对其进行一个统一即可解决问题。那么知道这个的问题那就开…...
MySQL扩展语句和约束条件
MySQL扩展语句 create TABLE if not exists ky32 (id int(4) zerofill primary key auto_inc rement, #表示该字段可以自增长,默认从1开始每条记录会自动递增1name varchar(10) not null,cradid int(10) not null unique key,hobby varchar (50))&#x…...
Java排序学习
int[] 数组排序 升序排序: Arrays.sort(num);降序排序: num IntStream.of(num) // 变为 IntStream.boxed() // 变为 Stream<Integer>.sorted(Comparator.reverseOrder()) // 按自然序相反排序.mapToInt(Integer::intValue) …...
《2023中国社交媒体平台指南》丨附下载_三叠云
✦ ✦✦ ✦✦ ✦✦ ✦ KAWO发布的《2023中国社交媒体平台指南》,对中国社交媒发展情况、八大社交媒体平台做出详细分析,为营销人员提供了布局社交媒体的实操性指南。 社交媒体八大趋势: 1.社交媒体搜索引擎化 除了社交媒体上发表的内容会被…...
【unity小技巧】unity排序问题的探究
文章目录 前言一、排序图层二、sorting Group的使用三、树木排序设计方法一 代码控制方法二 拆分图片方法三 透视排序1. 普通物品排序2. TileMap瓦片排序设计 完结 前言 unity的排序问题其实之前分享的项目多多少少都有提到一点,但是没有单独拿出来说,所…...
synchronized 学习
学习源: https://www.bilibili.com/video/BV1aJ411V763?spm_id_from333.788.videopod.episodes&vd_source32e1c41a9370911ab06d12fbc36c4ebc 1.应用场景 不超卖,也要考虑性能问题(场景) 2.常见面试问题: sync出…...
遍历 Map 类型集合的方法汇总
1 方法一 先用方法 keySet() 获取集合中的所有键。再通过 gey(key) 方法用对应键获取值 import java.util.HashMap; import java.util.Set;public class Test {public static void main(String[] args) {HashMap hashMap new HashMap();hashMap.put("语文",99);has…...
深入理解JavaScript设计模式之单例模式
目录 什么是单例模式为什么需要单例模式常见应用场景包括 单例模式实现透明单例模式实现不透明单例模式用代理实现单例模式javaScript中的单例模式使用命名空间使用闭包封装私有变量 惰性单例通用的惰性单例 结语 什么是单例模式 单例模式(Singleton Pattern&#…...
【磁盘】每天掌握一个Linux命令 - iostat
目录 【磁盘】每天掌握一个Linux命令 - iostat工具概述安装方式核心功能基础用法进阶操作实战案例面试题场景生产场景 注意事项 【磁盘】每天掌握一个Linux命令 - iostat 工具概述 iostat(I/O Statistics)是Linux系统下用于监视系统输入输出设备和CPU使…...
2025 后端自学UNIAPP【项目实战:旅游项目】6、我的收藏页面
代码框架视图 1、先添加一个获取收藏景点的列表请求 【在文件my_api.js文件中添加】 // 引入公共的请求封装 import http from ./my_http.js// 登录接口(适配服务端返回 Token) export const login async (code, avatar) > {const res await http…...
PL0语法,分析器实现!
简介 PL/0 是一种简单的编程语言,通常用于教学编译原理。它的语法结构清晰,功能包括常量定义、变量声明、过程(子程序)定义以及基本的控制结构(如条件语句和循环语句)。 PL/0 语法规范 PL/0 是一种教学用的小型编程语言,由 Niklaus Wirth 设计,用于展示编译原理的核…...
今日科技热点速览
🔥 今日科技热点速览 🎮 任天堂Switch 2 正式发售 任天堂新一代游戏主机 Switch 2 今日正式上线发售,主打更强图形性能与沉浸式体验,支持多模态交互,受到全球玩家热捧 。 🤖 人工智能持续突破 DeepSeek-R1&…...
深入浅出深度学习基础:从感知机到全连接神经网络的核心原理与应用
文章目录 前言一、感知机 (Perceptron)1.1 基础介绍1.1.1 感知机是什么?1.1.2 感知机的工作原理 1.2 感知机的简单应用:基本逻辑门1.2.1 逻辑与 (Logic AND)1.2.2 逻辑或 (Logic OR)1.2.3 逻辑与非 (Logic NAND) 1.3 感知机的实现1.3.1 简单实现 (基于阈…...
【SSH疑难排查】轻松解决新版OpenSSH连接旧服务器的“no matching...“系列算法协商失败问题
【SSH疑难排查】轻松解决新版OpenSSH连接旧服务器的"no matching..."系列算法协商失败问题 摘要: 近期,在使用较新版本的OpenSSH客户端连接老旧SSH服务器时,会遇到 "no matching key exchange method found", "n…...
BLEU评分:机器翻译质量评估的黄金标准
BLEU评分:机器翻译质量评估的黄金标准 1. 引言 在自然语言处理(NLP)领域,衡量一个机器翻译模型的性能至关重要。BLEU (Bilingual Evaluation Understudy) 作为一种自动化评估指标,自2002年由IBM的Kishore Papineni等人提出以来,…...
