接口/总线/驱动
所谓SPI(Serial Peripheral Interface),即串行外设接口。它是一种高速、全双工的数据通信总线,并且在芯片的管脚只占有4根线,节省了芯片的管脚,同时极大的方便了PCB的布局。正是由于这种简单、易用的特性,如今越来越多的芯片集成了这种通信协议,比如我们经常使用的ADC芯片。
目前,市面上绝大多数的ADC(模数转换器)芯片都内嵌专用的SPI配置接口,通过配置其SPI接口可以对ADC内部的控制寄存器进行读、写操作,从而灵活的使用ADC芯片的各种功能。甚至对于某些ADC来说,如果不事先对其进行正确、有效的配置,则该ADC无法正常工作。
用于ADC配置的SPI接口分为4线模式(例如Analog Device 的AD9639)和3线模式(Analog Device 的AD9249)。对于4线模式来说,它有4根信号线,分别为:SDI(Serial Data In)、SDO(Serial Data Out)、SCLK(Serial Clock)以及CS(Chip Select)。3线模式与4线模式的不同之处在于SDI与SDO信号合并,称为SDIO。另外,某些ADC的三线模式较为简单,SDIO只用做输入端口SDI(例如德州仪器的ADS5281芯片),没有SDO的功能,实现起来较为简单。
4线模式:
1. SDI—串行数据从FPGA输出,进入ADC;
2. SDO—串行数据从ADC输出,进入FPGA;
3. SCLK—时钟信号从FPGA输出,进入ADC;
4. CS—ADC使能信号从FPGA输出,进入ADC;
3线模式:
1. SDIO—当进行读操作时,SDIO作为输出口SDO,串行数据从ADC输出,进入FPGA;当进行写操作时,SDIO作为输入口SDI,串行数据从FPGA输出,进入ADC;
2. SCLK—时钟信号从FPGA输出,进入ADC;
3. CS—ADC使能信号从FPGA输出,进入ADC;
3线模式和4线模式相比,表面上看只是少了1根信号线,实际上在读写操作时,涉及到了ADC端与FPGA端的SDIO接口的三态转换控制,这点需要大家特别注意。
全部0条评论
快来发表一下你的评论吧 !