当前位置: 首页 > 专利查询>山东大学专利>正文

一种高速可配置扩展SPI总线及其工作方法技术

技术编号:2836866 阅读:287 留言:0更新日期:2012-04-11 18:40
本发明专利技术公开了一种高速可配置扩展SPI总线及其工作方法。其结构为:它有至少一个主模块及至少一个从模块,以及SPI总线中的SCLK时钟输出信号线、MOSI数据线、MISO数据线、SS选通信号线以及配置信号线SCFG,主模块内设有可变长总线发送/接收器FPGA/CPLD,从模块内设有总线接收/发送器FPGA/CPLD,它们组成总线配置收发器;主模块可变长总线发送/接收器FPGA/CPLD通过串行级联配置信号线SCFG与其中一个从模块的总线接收/发送器FPGA/CPLD连接,该从模块总线接收/发送器FPGA/CPLD则通过配置信号线SCFG与其它从模块总线接收/发送器FPGA/CPLD相互串联;同时主模块的SPI总线还通过屏蔽双绞线与其他从模块连接,并对SPI总线信号进行差分处理。可对任何子模块的扩展和改变进行在线识别和配置,并协调各模块同步动作。

【技术实现步骤摘要】

本专利技术专利涉及一种工业控制技术,尤其涉及一种高速可配置扩展SPI总线及其工作方法。
技术介绍
在工业自动控制中,自动生产系统需要进行大量的数字信号和模拟信号的采集和操作。现场总线作为一种通信方法,可实现信号的分布控制,其应用越来越广泛。现有总线技术大多通信速率不高,且柔性较差,不容易实现总线上各模块的同步控制。 SPI总线技术是一种用于IC之间传输的串行接口技术,可实现数据的全双工同步传输。其物理实现如图4-1所示。其中SCLK(Serial Clock)为主模块的时钟输出MOSI(MasterOutput,Slave Input)为主模块输出给从模块的时钟信号线。MISO(Master Input,Slave Output)为从模块给主模块的数据信号线。SS(Slave Select)为主模块给从模块的选通信号线。SPI只适合芯片与芯片之间的短距离高速通信,总线的传输速率可达几十Mbps以上,但无法满足工业现场的长距离传输和多从模块的可扩展配置需要。
技术实现思路
本专利技术的目的就是为了解决目前现场总线结构通信速率不高,柔性差,不容易实现总线上各模块的同步控制等问题,提供一种具有结构合理,使用方便,在SPI总线技术基础上改进和通信协议的研发,实现了主从模块之间的高速长距离传输和子模块的同步控制,可对任何子模块的扩展和改变进行在线识别和配置,并协调各模块同步动作等优点的高速可配置扩展SPI总线及其配置方法。 为实现上述目的,本专利技术采用如下技术方案 一种高速可配置扩展SPI总线,它有至少一个主模块及至少一个从模块,以及SPI总线中的SCLK时钟输出信号线、MOSI数据线、MISO数据线、SS选通信号线以及配置信号线SCFG,所述主模块内设有可变长总线发送/接收器FPGA/CPLD,从模块内设有总线接收/发送器FPGA/CPLD,它们共同组成总线配置收发器;主模块可变长总线发送/接收器FPGA/CPLD通过串行级联配置信号线SCFG与其中一个从模块的总线接收/发送器FPGA/CPLD连接,该从模块总线接收/发送器FPGA/CPLD则通过配置信号线SCFG与其它从模块总线接收/发送器FPGA/CPLD相互串联,通过通信协议和可编程逻辑设计进行数据报文的可变长度传输和从模块的柔性在线配置;同时主模块的SPI总线还通过屏蔽双绞线与其他从模块连接,并对SPI总线信号进行差分处理,实现数据包的高速长距离的一主多从通讯。 所述可变长总线发送/接收器FPGA/CPLD包括报文长度寄存器、发送计数器,发送计数器接收发送使能信号和计数时钟信号,报文长度寄存器、发送计数器输出端接比较器,比较器输出端接SCLK时钟输出信号线,计数时钟信号还分两路,一路接SCLK时钟输出信号线,另一路接串行发送器输入端,其输出端接MOSI数据线。 所述总线接收/发送器FPGA/CPLD包括控制信息接收器和数据信息接收器;主板和每个子板各有至少一个控制信息接收器和一个数据信息接收器。 一种高速可配置扩展SPI总线的工作方法,它的方法为, 1)系统上电自检; 2)主模块对从模块的自动识别和配置,以实现一主多从模式的传输,过程为主模块通过通信协议发出的配置信号高电平使与之连接的第一从模块接收器的CFG_EN信号置高,该从模块进行配制,接收主模块配置数据包并返回自己的信息;第一从模块配置结束后,禁止自身配置模块工作,同时将CFG_OE信号置高,此时与之串联的下一从模块中的CFG_EN被置高,该从模块的配置操作被触发,依次触发下去;直至最后无配置信息返回时,配置结束,从而实现软件在线配置,以满足不同长度的数据包传输及子模块的在线扩展和配置; 3)进入正常操作模式;总线地址分广播地址和普通地址,若为广播地址,所有子模块同步接收到主模块命令;若为普通地址,子模块只接收与自身地址匹配的数据包,在接收的同时将相应数据发送至主模块;配合报文协议,实现位置控制,I/O控制及设置的其它功能。 所述步骤2)中通信协议包括主至从通信报文M2S和从至主通信报文S2M;它们又各由配置报文C报文和数据报文D报文组成,由报文的最高位MSB标识。 所述主至从通信报文M2S的配置报文C即M2S C报文格式为标记为标识位C/D,若标记为1为命令报文,0位数据报文;4bits的主模块地址位BA、3bits的后面紧跟的报文数据长度DL;数据信息DATA,其长度由数据报文长度DL确定;校验位VR; 从至主通信数据报文S2M的配置报文C即S2M C报文格式为,子板相关描述信息DATA;校验位VR; 主至从通信数据报文M2S的数据报文D即M2S D报文格式为,标识位C/D,若标记为1则为命令报文,0为数据报文;4bits的报文传送地址BS;4bits的板内子模块地址MS;数据生效控制位DC;数据信息位DATA,其长度由配置时的DL确定;校验位VR; 从至主通信数据报文S2M的数据报文D即S2M D报文格式为,标识位C/D,若标记为1则为命令报文,0为数据报文;数据类型位DC,0表示数据为即时数据,1表示缓冲区中锁存的同步数据;数据信息DATA,长度由配置时的DL确定;校验位VR。 所述步骤2)中在主模块对从模块配置时,从模块监测到配置信号高电平后,提取M2SC报文BA,DL位,按BA,DL位的信息将S2M C报文发送给主模块,S2M C报文的发送与M2S C报文接收同步;与此同时提取M2S中相关信息配置报文发送长度,记录自身地址;配置过程中子模块通过计数器将SCLK计数控制,通过控制信息接收器实现信息提取至相应的寄存器中。 所述步骤3)正常操作模式中位置控制为,主模块发送数据时将M2S D报文标识位DC置1,采用普通地址发送,使各模块接收到数据后暂时存放在缓冲区中,然后通过DC置1的广播报文将各子模块中缓冲的数据同步输出实现各轴同步控制;而在同步输出数据的同时,各子模块会同步锁存外设采样数据,然后在下个周期给各子模块发送命令数据时由主模块依次读出; I/O控制为若各I/O点无同步要求,可使M2S D报文置0,使传至子模块的数据立即生效并采样外设的即时数据传至主模块;若有同步要求,可参考位控功能的方法实现各模块之间的同步输出和采样。 所述步骤3)中,对于普通地址,控制信息接收器将数据首先接收板地址;当地址接收完毕时,判断若非本板地址,将本板发送输出端置高阻禁止本板此次通信的数据发送以防止MISO数据线的多驱动;若为本板地址,继续接收模块地址和DC位;接收完DC位后将模块地址对应的数据信息接收器打开接收数据;数据信息接收器接收数据并将其存在接收缓冲区;待数据接收完成后,若DC位为高,则使用总线上SS信号将数据从缓冲中发出,若为低,等待广播命令与其他板同步发出; 对于广播地址,控制信息接收器将数据首先接收地址;若为广播地址,并且DC位为0时,使能所有模块数据信息接收器接收公共广播数据;若DC接收位为1,保持所有数据信息接收器禁止,待数据传输完成后利用SS信号将所有模块接收缓冲区中的数据发出。 本专利技术主要包括主模块,从模块以及SPI通信总线中的SS,SCFG,MOSI,MISO,SCLK信号线构成,在SPI(Serial Periphera本文档来自技高网...

【技术保护点】
一种高速可配置扩展SPI总线,它有至少一个主模块及至少一个从模块,以及SPI总线中的SCLK时钟输出信号线、MOSI数据线、MISO数据线、SS选通信号线以及配置信号线SCFG,其特征是:所述主模块内设有可变长总线发送/接收器器FPGA/CPLD,从模块内设有总线接收/发送器FPGA/CPLD,它们共同组成总线配置收发器;主模块可变长总线发送/接收器FPGA/CPLD通过串行级联配置信号线SCFG与其中一个从模块的总线接收/发送器FPGA/CPLD连接,该从模块总线接收/发送器FPGA/CPLD则通过配置信号线SCFG与其它从模块总线接收/发送器FPGA/CPLD相互串联,通过通信协议和可编程逻辑设计进行数据报文的可变长度传输和从模块的柔性在线配置;同时主模块的SPI总线还通过屏蔽双绞线与其他从模块连接,并对SPI总线信号进行差分处理,实现数据包的高速长距离的一主多从通讯。

【技术特征摘要】
1、一种高速可配置扩展SPI总线,它有至少一个主模块及至少一个从模块,以及SPI总线中的SCLK时钟输出信号线、MOSI数据线、MISO数据线、SS选通信号线以及配置信号线SCFG,其特征是所述主模块内设有可变长总线发送/接收器器FPGA/CPLD,从模块内设有总线接收/发送器FPGA/CPLD,它们共同组成总线配置收发器;主模块可变长总线发送/接收器FPGA/CPLD通过串行级联配置信号线SCFG与其中一个从模块的总线接收/发送器FPGA/CPLD连接,该从模块总线接收/发送器FPGA/CPLD则通过配置信号线SCFG与其它从模块总线接收/发送器FPGA/CPLD相互串联,通过通信协议和可编程逻辑设计进行数据报文的可变长度传输和从模块的柔性在线配置;同时主模块的SPI总线还通过屏蔽双绞线与其他从模块连接,并对SPI总线信号进行差分处理,实现数据包的高速长距离的一主多从通讯。2、根据权利要求1所述的高速可配置扩展SPI总线,其特征是所述可变长总线发送/接收器FPGA/CPLD包括报文长度寄存器、发送计数器,发送计数器接收发送使能信号和计数时钟信号,报文长度寄存器、发送计数器输出端接比较器,比较器输出端接SCLK时钟输出信号线,计数时钟信号还分两路,一路接SCLK时钟输出信号线,另一路接串行发送器输入端,其输出端接MOSI数据线。3、根据权利要求1所述的高速可配置扩展SPI总线,其特征是所述总线接收/发送器FPGA/CPLD包括控制信息接收器和数据信息接收器;主板和每个子板各有至少一个控制信息接收器和一个数据信息接收器。4、一种权利要求1所述高速可配置扩展SPI总线的工作方法,其特征是它的方法为,1)系统上电自检;2)主模块对从模块的自动识别和配置,以实现一主多从模式的传输,过程为主模块通过通信协议发出的配置信号高电平使与之连接的第一从模块接收器的CFG_EN信号置高,该从模块进行配制,接收主模块配置数据包并返回自己的信息;第一从模块配置结束后,禁止自身配置模块工作,同时将CFG_OE信号置高,此时与之串联的下一从模块中的CFG_EN被置高,该从模块的配置操作被触发,依次触发下去;直至最后无配置信息返回时,配置结束,从而实现软件在线配置,以满足不同长度的数据包传输及子模块的在线扩展和配置;3)进入正常操作模式;总线地址分广播地址和普通地址,若为广播地址,所有子模块同步接收到主模块命令;若为普通地址,子模块只接收与自身地址匹配的数据包,在接收的同时将相应数据发送至主模块;配合报文协议,实现位置控制,I/O控制及设置的其它功能。5、根据权利要求4所述的高速可配置扩展SPI总线的配置方法,其特征是所述步骤2)中通信协议包括主至从通信报文M2S和从至主通信报文S2M;它们又各由配置报文C报文和数据报文D报文组成,由报文的最高位MSB标识。6、根据权利要求5所述的高速可配置扩展SPI总线的配置方法,其特征是所述主至从通信报文M2S的配置报文C即M2S C报文...

【专利技术属性】
技术研发人员:胡天亮张承瑞武洪恩李鹏
申请(专利权)人:山东大学
类型:发明
国别省市:88[]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1
相关领域技术
  • 暂无相关专利