FPGA通过SPI对ADC配置简介(三)3线SPI配置时序分析

ad9249的spi控制模块包含4根信号线,即csb1、csb2、sdio以及sclk。但csb1、csb2可以一起由csb来控制,实际上就是3线spi。由于3线spi数据的读、写操作在同一根信号线sdio上实现,因此其配置方式与4线的配置稍微有些不一样。下面我们将详细介绍读写操作:
csb:spi控制读写使能信号;
sdio:spi的数据、地址读写端口;
sclk:fpga提供给adc的spi接口时钟;
如下图1所示为该adc的spi读、写配置时序图。其中csb和sclk的操作和上篇介绍的4线spi配置相同,图上的时序参数在其datasheet上也有明确的说明,这里就不介绍了。
3线spi与4线spi配置的主要不同之处在传输的数据格式以及i/o转换上。其读写数据格式由控制命令+地址+数据组成,而上篇提到的4线配置只有地址+数据。
图1:spi读、写时序图
其中r/~w为高电平时,表示读操作,低电平表示写操作。w1,w0表示要读写的数据字节数,一般都设为0,代表每次读写一个寄存器地址的数据。a12~a0表示13bit的寄存器地址。d7~d0表示要读写的8bit寄存器数据。
因此我们在spi写操作时,只需写入1bit 1 + 2bit 0 +13bit地址+ 8bit数据 即可。其配置的方法和上篇的4线spi写操作相同。但当我们在执行spi读操作时,就需要注意了:
首先需写入1bit 0 + 2bit 0 +13bit 地址,当最后1bit的地址a0在sclk的上升沿写入sdio后,sdio会由输入口变为输出口,然后在接下来的8个sclk下降沿,sdio会输出寄存器的8bit数据。因此,在adc的sdio由输入变为输出口时,fpga端的sdio必须同步由输出口变为输入口,并在sclk上升沿接收这8bit数据最稳定,fpga端口的这种i/o转换可以通过其内置的三态门来实现。
如图2所示为sdio由输入口变为输出口的时序控制图,ten_sdio为转换时间,其最小时间为10ns,参考零点为sclk下降沿。
图2:sdio输入转换为输出的时序图
如图3所示为sdio由输出口变为输入口的时序控制图,tdis_sdio为转换时间,其最小时间也为10ns,参考零点为sclk上升沿。
图3:sdio输出转换为输入的时序图
3线spi的读写时序分析就介绍到这里了,同样强调几个关键点:
关键点1:csb在读写操作时,必须拉低。读写完成之后,必须拉高。
关键点2:sdio作为输入口时,数据每次必须在sclk的上升沿写入spi。
关键点3:sdio作为输出口时,寄存器数据每次在sclk的下降沿输出spi,fpga端在sclk的上升沿处捕获数据最稳定。
关键点4:一定要满足datasheet给出的spi的时序参数,并在代码实现时要留有适当的时序裕量。
关键点5:注意fpga端的sdio口的三态控制逻辑,以便正确读写adc寄存器。
本篇以analog device(adi)的多通道高速adc芯片ad9249为例,简要介绍了adc的3线spi配置时序,希望我们能一起学习、一起进步!下篇将具体介绍如何用verilog实现fpga通过spi对adc进行配置。


中波红外碲镉汞室温探测器激光辐照饱和特性的仿真
芯片封装形式汇总_介绍各种芯片封装形式的特点和优点
如何在两部SDR接收器之间远程遥控切换天线和音频?
双口RAM概述及Vivado RAM IP核应用
Git进行Vivado工程管理的教程分享
FPGA通过SPI对ADC配置简介(三)3线SPI配置时序分析
机智云D3 Engine服务,“拖拉拽”轻松完成数据处理开发
智能化浪潮下的光电传感器
荣耀V40系列将用上联发科的旗舰芯片
双电源互投开关的维修方法
第十五讲 组合逻辑电路的分析方法和设计方法
VH6501基本使用介绍
如何通过SIG进行开源贡献
iphone8什么时候上市?iphone8最新消息:华为的概念机比iphone8更值得期待
未来的人工智能可以显着的提高经济生产率
智慧校园人脸识别通行解决方案介绍
RFID技术在制造工业中的应用优势及其特点
VIVO在屏幕指纹触控技术上处于领先地位
2020高交会亮点不容错过 5G商用 人工智能芯片 火爆的裸眼3D
观致5suv最新消息:观致5“最安全国产SUV”车型,中国的品牌外国的设计师