【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》

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

框架安全-CVE 复现SpringStrutsLaravelThinkPHP漏洞复现

目录 服务攻防-框架安全&CVE 复现&Spring&Struts&Laravel&ThinkPHP概述PHP-开发框架安全-Thinkphp&Laravel漏洞复现Thinkphp-3.X RCEThinkphp-5.X RCELaravel框架安全问题- CVE-2021-3129 RCE JAVAWEB-开发框架安全-Spring&Struts2Struts2框架安全…

windows下使用FFmpeg开源库进行视频编解码完整步聚

最终解码效果: 1.UI设计 2.在控件属性窗口中输入默认值 3.复制已编译FFmpeg库到工程同级目录下 4.在工程引用FFmpeg库及头文件 5.链接指定FFmpeg库 6.使用FFmpeg库 引用头文件 extern "C" { #include "libswscale/swscale.h" #include "libavdevic…

文章分类管理接口

目录 前言 新建表 获取文章分类列表接口 初始化路由模块 将路由对象导出并使用 初始化路由对象处理函数 修改路由代码 导入数据库 定义sql语句 调用db.query() 完整的获取文章分类列表处理函数 新增文章分类接口 定义路由和处理函数 验证表单数据 查询分类名称与…

CSS基础入门04

目录 1.内边距 1.1基础写法 1.2复合写法 2.外边距 2.1基础写法 2.2复合写法 2.3块级元素水平居中 3.去除浏览器默认样式 4.弹性布局 4.1初体验 5.flex 布局基本概念 6.常用属性 6.1justify-content 6.2align-items 1.内边距 padding 设置内容和边框之间的距离. …

3D RPG Course | Core 学习日记一:初识URP

前言 最近开始学习Unity中文课堂M_Studio(麦大)的3D RPG Course,学习一下3D RPG游戏核心功能的实现,第一课我们学习到的是地图场景的编辑,其中涉及到了URP渲染。 我们首先进入Unity资源商店把地图素材和人物素材导入好…

前端将图片储存table表格中,页面回显

<el-table :data"tableData" v-loading"loading" style"width: 100%" height"calc(100vh - 270px)" :size"tableSize"row-dblclick"enterClick"><el-table-column prop"name" label"文档…

个人服务器怎么搭建?个人服务器搭建方法

​  个人服务器是指一台由个人拥有和管理的服务器&#xff0c;用于存储和提供个人网站、应用程序或其他在线服务。搭建个人服务器可以让我们更好地掌控自己的数据和网络资源。下面介绍一种常见的个人服务器搭建方法。 第一步&#xff1a;选择合适的硬件 我们需要选择一台适合…

Java毕业设计 SpringBoot 新能源充电桩管理系统

Java毕业设计 SpringBoot 新能源充电桩管理系统 SpringBoot 新能源充电桩管理系统 功能介绍 管理员 登录 验证码 注册 系统用户管理 普通用户管理 通知公告管理 留言管理 充电站管理 充电桩管理 充电桩预约 充电管理 订单管理 修改密码 普通用户 登录 修改个人资料 通知公告…

Flink Hive Catalog操作案例

在此对Flink读写Hive表操作进行逐步记录&#xff0c;需要指出的是&#xff0c;其中操作Hive分区表和非分区表的DDL有所不同&#xff0c;以下分别记录。 基础环境 Hive-3.1.3 Flink-1.17.1 基本操作与准备 1、上传依赖jar包到flink/lib目录下 cp flink-sql-connector-hive-…

Java工具库——commons-lang3的50个常用方法

未来的你&#xff0c;我亲爱的女孩&#xff0c;愿此刻无忧无虑&#xff0c;开心&#xff0c;快乐… 工具库介绍 Apache Commons Lang 3&#xff08;通常简称为Commons Lang 3&#xff09;是Apache Commons项目中的一个Java工具库&#xff0c;它提供了一系列实用的工具类和方法…

Linux|安装Nomachine

参考&#xff1a;2022 Nomachine 最简安装与使用指南&#xff08;https://blog.csdn.net/qq_51116518/article/details/127450253&#xff09; 解压 先将目录调整到压缩包所在目录&#xff0c;输入sudo tar zxvf nomachine_7.6.2_3_aarch64.tar.gz 添加权限 sudo chmod -R…

GZ035 5G组网与运维赛题第6套

2023年全国职业院校技能大赛 GZ035 5G组网与运维赛项&#xff08;高职组&#xff09; 赛题第6套 一、竞赛须知 1.竞赛内容分布 竞赛模块1--5G公共网络规划部署与开通&#xff08;35分&#xff09; 子任务1&#xff1a;5G公共网络部署与调试&#xff08;15分&#xff09; …

RK3568-clock

pll锁相环 总线 gating rk3568.dtsi pmucru: clock-controller@fdd00000 {compatible = "rockchip,rk3568-pmucru";reg = <0x0 0xfdd00000 0x0 0x1000>;rockchip,grf = <&grf>;rockchip,pmugrf = <&pmugrf>;#clock-cells = <1>;#re…

SQL BETWEEN运算符

SQL BETWEEN 运算符 BETWEEN运算符用于选取介于两个值之间的数据范围内的值。 BETWEEN运算符选择给定范围内的值。值可以是数字&#xff0c;文本或日期。 BETWEEN运算符是包含性的&#xff1a;包括开始和结束值&#xff0c;且开始值需小于结束值。 SQL BETWEEN 语法 SELECT …

使用 SQL 的方式查询消息队列数据以及踩坑指南

背景 为了让业务团队可以更好的跟踪自己消息的生产和消费状态&#xff0c;需要一个类似于表格视图的消息列表&#xff0c;用户可以直观的看到发送的消息&#xff1b;同时点击详情后也能查到消息的整个轨迹。 消息列表 点击详情后查看轨迹 原理介绍 由于 Pulsar 并没有关系型数…

Angular-03:组件模板

各种学习后的知识点整理归纳&#xff0c;非原创&#xff01; 组件模板 ① 数据绑定② 属性绑定③ 类名绑定④ 样式绑定⑤ 事件绑定⑥ 获取原生DOM对象6.1 在组件模板中获取6.2 在组件类中获取 ⑦ 双向数据绑定⑧ 内容投影8.1 select选择器8.2 单槽投影8.3 多槽投影 ⑨ 安全操作…

Vue图片路径问题(动态引入)

vue项目中我们经常会遇到动态路径的图片无法显示的问题&#xff0c;以下是静态路径和动态路径的常见使用方法。 1.静态路径 在日常的开发中&#xff0c;图片的静态路径通过相对路径和绝对路径的方式引入。 相对路径&#xff1a;以.开头的&#xff0c;例如./、../之类的。就是…

LangChain+LLM实战---Langchain-Chatchat概述

LangChain介绍 LangChain是个开源的框架&#xff0c;它可以让AI开发人员把像GPT-4这样的大型语言模型(LLM)和外部数据结合起来。可以简单认为LangChain是LLM领域的Spring&#xff0c;以及开源版的ChatGPT插件系统。 LangChain的强大之处不仅能通过API调用语言模型&#xff0c;…

Panda3d 介绍

Panda3d 介绍 文章目录 Panda3d 介绍Panda3d 的安装Panda3d 的坐标系统介绍Panda3d 的运行Panda3d 加载一个熊猫父节点和子节点之间的关系 验证Panda3d 的坐标系统X 轴的平移Y 轴的平移Z 轴的平移X 轴的旋转Y 轴的旋转Z 轴的旋转 Panda3D是一个3D引擎:一个用于3D渲染和游戏开发…

为什么看了那么多测试技术帖,感觉自己还是菜?

作为测试新手&#xff0c;最爱莫过于看各大牛发的技术贴&#xff0c;这篇很牛叉&#xff0c;那篇也很有道理&#xff0c;似乎自己看着看着也会成为高手。然而几年后&#xff0c;发现自己对专业知识的理解乱的很&#xff0c;里面更有很多自相矛盾的地方&#xff0c;这到底是哪里…