ADS6445开发笔记(1)---- 芯片介绍
写这篇博客的时候,暂未调试ADS6445,只是想资料整理一下,方便自己理解、查看。中间可能会有一些理解错误的地方,欢迎大家批评指正。
目录
1. 芯片特性
2.应用范围
3. 芯片简介
4. 芯片功能框图
5. 芯片详细描述
5.1 推荐的操作条件
5.2器件编程模式
5.2.1 只用并行模式
5.2.2 只用串行模式
5.2.3 串行模式和并行模式都使用
5.3 寄存器描述
5.4 数据输出接口
5.4.1 1-Wire, 1× frame clock, 14× and 16× serialization with DDR bit clock
5.4.2 2-WIRE INTERFACE - 16× SERIALIZATION WITH DDR/SDR BIT CLOCK
5.4.3 2-WIRE INTERFACE - 14× SERIALIZATION SDR BIT CLOCK
5.4.4 2-WIRE INTERFACE - 14× SERIALIZATION DDR BIT CLOCK
5.5 测试模式
1. 芯片特性
- 最大采样率125MSPS,可支持125/105/80/65MSPS采样
- 14bit分辨率
- 3.5db 粗增益和可编程高达6db增益
- 可编程调整SFDR(无杂散动态范围)/SNR(信噪比)之间的平衡
- 串行LVDS输出
- 支持Sine, LVCMOS,LVPECL,LVSD时钟输入,振幅可以下降到400mVPP
2.应用范围
- 基站中频接收机
- 多样性接收机
- 医学成像
- 测试设备
3. 芯片简介
ADS6445/ADS6444/ADS6443/ADS6442(ADS644X)系列是4通道14位125/105/80/65MSPS AD转换器。LVDS串行输出减少了接口数量。器件包括3.5db粗增益调节选项,还有步长为1db的可编程0-6db细增益,用于提高SFDR性能,但是信噪比下降很小。
每个ADC输出都有2线的LVDS,使其想比较1线接口,串行数据速率减半。当数据速率较低的时候,也可以采用单线接口传输。输出可以高位在前也可以低位在前,可以输出二进制补码,也可以直接二进制输出。
4. 芯片功能框图
更正: 并行配置接口,不是配置部分寄存器,而是可以独立使用,配置所有的寄存器。
5. 芯片详细描述
5.1 推荐的操作条件
5.2器件编程模式
器件支持独立的并行或者串行编程配置模式,还支持并行和串行共用的编程模式。
5.2.1 只用并行模式
保持RESET拉高(to LVDD)切换为并行模式。CFG1, CFG2, CFG3,CFG4, PDN, SEN, SCLK, and SDATA 都用做并行接口控制。具体对应的控制内容看手册中table3 ,table 5 - table8.
5.2.2 只用串行模式
串行模式首先必须复位寄存器,通过产生一个reset引脚上的高脉冲(复位时候拉高,然后再拉低),或者置位复位寄存器。复位结束后,reset引脚必须是拉低的。并行接口总线在这里没有应用,必须拉低,不能悬空。同时,设置寄存器OVRD -地址0X0D寄存器的D10位,为不使能并行控制模式
5.2.3 串行模式和并行模式都使用
并行接口仍然需要用,这里不需要接地。串行模式在配置的时候,还是需要先复位。
5.3 寄存器描述
代码未经过验证,后期验证了会更新上传。寄存器详细描述看手册。
这里比较不太确定的就是增益的控制,可能实测了才知道具体设置多少合适。
输出模式,这里也是随便写的,根据实际要求,看是选择1线还是2线,输出SDR还是DDR,14bit还是16bit。都需要根据项目具体要求来定
assign confi_data[0] = 16'b00000_10000000000; //addr = hex00. power down . D10 = 1 ,复位内部寄存器,赋值为0assign confi_data[1] = 16'b00100_00000000000; //addr = hex04. input clock buffer gain control. D6-D2 当时钟输入是正弦波的情况下,根据输入时钟VPP 来选择gain
assign confi_data[2] = 16'b01010_00000000000; //addr = hex0A. patterns . D9 ---data format select 二进制补码 或二进制// D7-D5-- Capture test patterns
assign confi_data[3] = 16'b01011_00000000000; //addr = hex0B. custom pattern A
assign confi_data[4] = 16'b01100_00000000000; //addr = hex0C. D10-D8----fine gain control // D4-D0 upper 3 bits of custom pattern // 理解的是越大越好,也不知道对不对
assign confi_data[5] = 16'b01101_00000000011; //addr = hex0D. D10-- over ride bit // D7 --- byte /bit wise output (only when 2-wire is selected)。 0 -- byte 模式简单 ,1-- bit 模式// D6 --- MSB OR LSB .0 MSB // D5 --- Coarse gain control 粗增益控制// D4 --- 0 时钟下降沿锁存, 1 时钟上升沿锁存 (SDR模式下有效)// D2 --- 0 14X serialization , 1 16x serialization 。16模式,感觉没必要,增加额外开销传输0// D1 --- 0 DDR ,1 SDR// D0 --- 0 - 1 wire interface ,1- 2 wire interface
assign confi_data[6] = 16'b10000_00000000000; //addr = hex10. LVDS current ,internal termination
assign confi_data[7] = 16'b10001_00000000000; //addr = hex11. D10 -D9 00 Byte-wise or bit-wise output, 1x frame clock.11 Word-wise output enabled, 0.5x frame clock// D4 -D0 LVDS internal termination
5.4 数据输出接口
为方便ASIC或者FPGA处理数据 ADS644X,AD提供了多种输出模式:
• 1-Wire, 1× frame clock, 14× and 16× serialization with DDR bit clock
• 2-Wire, 1× frame clock, 16× serialization, with DDR and SDR bit clock, byte wise/bit wise/word wise
• 2-Wire, 1× frame clock, 14× serialization, with SDR bit clock, byte wise/bit wise/word wise
• 2-Wire, (0.5 x) frame clock, 14× serialization, with DDR bit clock, byte wise/bit wise/word wise
我现在用的ADS6445,最大采样125MSPS,所以,上图中的所有模式,我都可以配置使用。如果选择的是其他器件,则要根据器件最大采样率来进行取舍。在上述模式选择时,不仅要考虑时钟、串行数据速率(时钟或串行数据速率越高,时序约紧张);还需要考虑串行输出模式是否方便后期iserdese2的处理。
5.4.1 1-Wire, 1× frame clock, 14× and 16× serialization with DDR bit clock
该模式适合速率较低的时候,
5.4.2 2-WIRE INTERFACE - 16× SERIALIZATION WITH DDR/SDR BIT CLOCK
5.4.3 2-WIRE INTERFACE - 14× SERIALIZATION SDR BIT CLOCK
5.4.4 2-WIRE INTERFACE - 14× SERIALIZATION DDR BIT CLOCK
5.5 测试模式
测试模式用来判断输出的DCLK是否能正确采样数据,FCLK是否同步正确。其实 也就是LVDS 用iserdese2那部分是否正确。不过,看博客有人说,用测试模式出来的数据没有问题,采用正弦波输入的时候有问题。实际应用的时候,用了测试模式,还需要在输入端输入正弦波验证没问题以后再用实际数据测试。
ADS6445开发笔记(1)---- 芯片介绍相关推荐
- Qt之手写识别开发笔记:Zinnia介绍、编译、使用以及Demo
若该文为原创文章,未经允许不得转载 原博主博客地址:https://blog.csdn.net/qq21497936 原博主博客导航:https://blog.csdn.net/qq21497936/ ...
- 嵌入式开发平台Zynq芯片介绍
Zynq发展历史 Zynq是由全球最大的可编程逻辑平台供应商,Xilinx,在2011年末发布的具有崭新架构的芯片.熟悉FPGA技术领域的朋友应该了解Xilinx在可编程逻辑界的地位.但是,从Zynq ...
- PIC16F1823开发笔记(二)芯片研究以及第一个程序和汇编研究
1.综述: 总体来看,这款芯片功能齐全: ADC cps EEPROM DAC DSM USART SR latch timer(3) 2.存储 2048的RAM 3.寄存器详解 寄存器种类 寄存器 ...
- ADS6445开发笔记(2)---- LVDS 高速接口
目录 1. 数据接口时序图 2 采样时钟同步处理 2.1 delayctrl 原语 2.2 idelay2 原语 2.3 ISERDESE2 2.4 手动调节对齐 2.5 自动调节对齐 3. 帧同 ...
- Hi3516开发笔记(一):海思HI3516DV300芯片介绍,入手开发板以及Demo测试
若该文为原创文章,转载请注明原文出处 本文章博客地址:https://hpzwl.blog.csdn.net/article/details/121314575 长期持续项目技术分享,Shang业Di ...
- RK3568开发笔记(一):瑞芯微RK3568芯片介绍,入手开发板的核心板介绍
若该文为原创文章,转载请注明原文出处 本文章博客地址:https://hpzwl.blog.csdn.net/article/details/124900731 红胖子(红模仿)的博文大全:开发技术集 ...
- i.MX8芯片介绍(米尔电子iMX8系列核心板及开发板学习笔记)
众所周知,NXP公司推出iMX8芯片已有很长一段时间.iMX8系列家族也越来越多,目前有iMX8 .iMX8M.iMX8M Mini.i.MX8M Nano4款芯片应用处理器.近期对米尔电子iMX8系 ...
- ATECC508A芯片开发笔记(一):初识加密芯片
更多技术干货,欢迎扫码关注博主微信公众号:HowieXue,一起学习探讨软硬件技术知识经验,关注就有海量学习资料免费领哦: ---------- 目录 一.ATECC508A概述: 二.ATECC50 ...
- ATECC508A芯片开发笔记(九):加密读写508芯片数据的流程及相应设置
目录 ATECC508A芯片开发笔记(九):加密读写508芯片数据的流程及相应设置 1.Encrypted Read 1.1 Standard Encrypted Read Flow 1.2 Simp ...
最新文章
- Oracle学习:视图与索引
- ckeditor和ckfinder的使用
- Mybatis insert返回主键ID
- 61 SD配置-科目分配-分配税收确定的交货工厂
- mysql 传递数组_将数组传递给MySQL存储例程
- 02-橄榄球 VS 软件
- 一个函数搞定无限层级分类
- BRVAH官方使用指南
- Python matplot工具包之一的 mpl_toolkits绘制属于你的世界地图
- 审阅模式中word保存不了
- ubuntu20 从wine安装到微信3的使用(解决微信乱码、无法输入)
- centos 8.0 安装nginx
- 分部积分法解决二重积分问题
- [BZOJ2754]-[SCOI2012]喵星球上的点名-AC自动机+树状数组
- 如何成为一名优秀的程序员!
- 3dmark android 中文,貌似不靠谱,Android平台3DMark测试版初体验
- java实现第七届蓝桥杯七星填数
- Subtext v2.0 定制化开发之上传文件File Upload管理
- 微博的话题如何引导?
- 前端实现电子签名(web、移动端)通用组件
热门文章
- 色数(色深”、“灰阶”、“色数”三者的关系)
- 仿做QQ音乐官网——问题与解决办法
- java B2B2C 源码 多级分销Springboot多租户电子商城系统-springcloud项目redis分布式锁...
- 使用 Netlify Forms 将联系表单添加到 React 应用程序
- 云服务器CPU报警的原因
- ZigBee无线抄表系统集中器设计
- iOS--UI之导航控制器与标签控制器
- 红米5plus成功移植刷入ubuntu20.04
- babyos2(35) network(1) -- simple RTL8139 nic driver
- ThinkPHP集成支付宝担保支付