首页> 中国专利> 通信速度矫正及通信协议的选取装置和方法

通信速度矫正及通信协议的选取装置和方法

摘要

本申请实施例涉及一种通信速度矫正及通信协议的选取装置,所述装置包括:获取模块,用于获取服务器发送给设备的信号;通信频道选取模块,用于根据所述信号的通信协议,选取与所述通信协议和所述设备的协议均匹配的协议匹配模块作为总线的输出;所述协议匹配模块,用于提取所述信号的第一速度信息,比较所述第一速度信息与所述设备存储的第二速度信息;所述通信速度调整模块,用于当所述第一速度信息与所述第二速度信息不同时,调整所述信号的第一速度。

著录项

  • 公开/公告号CN107066410A

    专利类型发明专利

  • 公开/公告日2017-08-18

    原文格式PDF

  • 申请/专利权人 深圳市金印达科技有限公司;

    申请/专利号CN201710219384.X

  • 发明设计人 刘兴炎;刘兴亮;

    申请日2017-04-06

  • 分类号G06F13/38(20060101);G06F13/40(20060101);H04L29/06(20060101);H04L1/00(20060101);

  • 代理机构11489 北京中政联科专利代理事务所(普通合伙);

  • 代理人陈超

  • 地址 518109 广东省深圳市龙华新区龙华街道油松东环二路西侧黄贝岭靖轩工业园厂房7栋二层

  • 入库时间 2023-06-19 03:05:08

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2020-04-28

    授权

    授权

  • 2017-09-12

    实质审查的生效 IPC(主分类):G06F13/38 申请日:20170406

    实质审查的生效

  • 2017-08-18

    公开

    公开

说明书

技术领域

本发明涉及通信技术领域,具体涉及通信速度矫正及通信协议的选取装置和方法。

背景技术

现有技术中,配件一般会有和不同的主机配对,或者主机在升级时采用了不同的通信协议,需要配件最好能最大程度上自适应各种协议,可以反复使用配件。但由于协议可能很多,主机也不会不停的与配件连接握手,可能也有时间限制,寻找时间长了,主机会放弃与配件的连接握手。

电脑周边配件在和主机通信的过程中,主机发送信号给配件,由于环境的变化,如电压和温度的变化,会引起通信速度的变化,在异步通信,如异步收发传输器UART,1wrie等等,从主机到配件的通信过程中,信号传输的误差不断的累加,最后造成通信错误。

因此,需要多协议匹配模块并行处理,以及实时调整通信速度的方法来解决上述技术问题。

发明内容

本发明实施例提供了一种通信速度矫正及通信协议的选取装置,多协议匹配模块并行处理,以及实时调整通信速度提高通信协议匹配速度,避免由于通信速度的变化引起的通信错误。

在第一方面,本发明实施例提供了一种通信速度矫正及通信协议的选取装置,所述装置包括:获取模块,用于获取服务器发送给设备的信号;通信频道选取模块,用于根据所述信号的通信协议,选取与所述通信协议和所述设备的协议均匹配的协议匹配模块作为总线的输出;所述通信频道选取模块包括多个不同协议的协议匹配模块;所述协议匹配模块,用于提取所述信号的第一速度信息,比较所述第一速度信息与所述设备存储的第二速度信息或正在使用的第三速度信息;所述通信速度调整模块,用于当所述第一速度信息与所述第二速度信息或第三速度信息不同时,调整所述信号的第一速度。

可选地,所述通信频道选取模块为CPU的数据总线结构,通信频道选取模块中的所有协议匹配模块监控所述通信协议,且并行与所述通信协议和所述设备的协议匹配;选取最先与所述通信协议和所述设备的协议均匹配的一个协议的模块作为总线的输出。

可选地,所述协议匹配模块具体用于:作为总线的输出的与所述通信协议和所述设备的协议均匹配的所述协议匹配模块控制通信接口模块;所述通信接口模块包括模拟信号转数字信号的转换器ADC,数字信号转模拟信号的转换器DAC和电压比较器以及可编程的数字IO电路;所述通信接口模块支持模拟通信协议和数字通信协议,以及通过电压变化或电流变化传输所述信号。

可选地,所述协议匹配模块具体包括通信速度提取模块、通信协议监控模块和通信参数模块;所述通信速度提取模块,用于提取所述信号的所述第一速度信息,计算所述第一速度信息;当所述第一速度信息和所述设备参数设置的所述第二速度信息或正在使用的设备的第三速度信息不一致时,发送指令给所述通信速度调整模块;所述通信协议监控模块,用于当监控到所述通信协议与所述协议匹配模块的协议匹配时,发送申请信息给所述通信频道选取模块以便作为总线的输出;所述通信参数模块,用于用户更改所述设备的协议的参数。

在第二方面,本发明实施例提供了一种通信速度矫正及通信协议的选取方法,所述方法包括:获取服务器发送给设备的信号;根据所述信号的通信协议,选取与所述通信协议和所述设备的协议均匹配的协议匹配模块作为总线的输出;所述通信频道选取模块包括多个不同协议的协议匹配模块;提取所述信号的第一速度信息,比较所述第一速度信息与所述设备存储的第二速度信息;当所述第一速度信息与所述第二速度信息不同时,调整所述信号的第一速度。

可选地,所述根据所述信号的通信协议,选取与所述通信协议和所述设备的协议均匹配的协议匹配模块作为总线的输出包括:所有协议匹配模块监控所述通信协议,且并行与所述通信协议和所述设备的协议匹配;选取最先与所述通信协议和所述设备的协议均匹配的一个协议的模块作为总线的输出。

可选地,所述根据所述信号的通信协议,选取与所述通信协议和所述设备的协议均匹配的协议匹配模块作为总线的输出具体包括:作为总线的输出的与所述通信协议和所述设备的协议均匹配的所述协议匹配模块控制通信接口模块;所述通信接口模块包括模拟信号转数字信号的转换器ADC,数字信号转模拟信号的转换器DAC和电压比较器以及可编程的数字IO电路;所述通信接口模块支持模拟通信协议和数字通信协议,以及通过电压变化或电流变化传输所述信号。

可选地,所述提取所述信号的第一速度信息,比较所述第一速度信息与所述设备存储的第二速度信息包括:提取所述信号的所述第一速度信息,计算所述第一速度信息;当所述第一速度信息和所述设备参数设置的所述第二速度信息或第三速度信息不一致时,发送指令给所述通信速度调整模块;当监控到所述通信协议与所述协议匹配模块的协议匹配时,发送申请信息给所述通信频道选取模块以便作为总线的输出。

本申请中多个协议匹配模块并行的竞争数据总线的方法,大大提高服务器与设备之间通信协议的匹配速度。当从通信信号里提取的信号计算出速度有变化时,通知通信速度调整模块调整通信速度,实时自动调整通信速度,让通信不出错,提高了信号通信的速度和正确性,降低了数据总线的成本。

附图说明

图1为本申请实施例提供的通信速度矫正及通信协议的选取方法的示意图;

图2为本申请实施例提供的通信速度矫正及通信协议的选取装置的示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

为使本发明的目的、技术方案和优点更加清楚,下面结合附图对本发明具体实施例作进一步的详细描述,实施例并不构成对本发明实施例的限定。

本申请实施例提供的通信速度矫正及通信协议的选取装置,适用于处理服务器与设备之间的通信,但并不以此作为限制。

具体地,例如电脑周边配件在和主机通信的过程中,主机发送信号给配件,由于环境的变化,如电压和温度的变化,会引起通信速度的变化,在异步通信,如异步收发传输器UART,1wrie等等,从主机到配件的通信过程中,信号传输的误差不断的累加,最后造成通信错误。所以,本申请会不断的对信号进行监控,从信号中提取速度信息,判断速度信息是否有变化,如果有变化就马上调整该信号的速度,保证通信不出错。

另外,配件一般会有和不同的主机配对,或者主机在升级时采用了不同的通信协议,需要配件最好能最大程度上自适应各种协议,可以反复使用配件。但由于协议可能很多,主机也不会不停的与配件连接握手,可能也有时间限制,寻找时间长了,主机会放弃与配件的连接握手。所以,本发明采用了多协议匹配模块并行处理的办法,在最短时间内自动匹配成功。

为了更好地理解本申请的优点,下面通过附图和详细的描述来介绍本申请的实施例。

图1示出了通信速度矫正及通信协议的选取的方法流程图,具体包括如下步骤:

步骤101,获取服务器发送给设备的信号。

服务器可以是电脑的主机,设备可以是存储媒介配件,该信号包括协议,协议包括第一速度信息。

设备也预先存储有协议,协议包括第二速度信息。

步骤102,根据所述信号的通信协议,选取与所述通信协议和所述设备的协议均匹配的协议匹配模块作为总线的输出;所述通信频道选取模块包括多个不同协议的协议匹配模块。

具体地,通信频道选取模块选取与所述通信协议和所述设备的协议均匹配的模块作为总线的输出。由于主机会发过来不同的几个协议,通信频道选取模块包括多个通信协议的协议模块,每个协议模块能处理一种通信协议,这些协议均是每个提取模块预先编程存储的,通信协议模式可用软件或硬件预先设定。每个提取模块同时匹配信号的通信协议和所述设备的协议,如果匹配成功,则通知其他提取模块停止匹配,即其他模块停止申请数据总线,让匹配成功的模块作为总线的输出,并按照该协议进行服务器与设备之间的通信。

没有匹配的其他模块也不停的监控通信协议,要是通信协议和自己模块匹配,会再次竞争总线,这样支持热拔插。

相对于现有技术中,服务器在很多协议中一个一个的寻找适合配件的协议的方法,速度很慢,也不可能寻找太多的协议。所以,本申请中多个协议模块同时寻找与通信协议匹配,并行的竞争数据总线的方法,大大提高服务器与设备之间通信协议的匹配速度。

可选地,通信频道选取模块为CPU的数据总线结构,通信频道选取模块中的所有协议模块监控所述通信信号,且并行与所述通信协议和所述设备的协议匹配;选取最先与所述通信协议和所述设备的协议均匹配的一个协议的模块作为总线的输出。

通信频道选取模块,采用了CPU的数据总线结构,总线结构的采用减少了系统的成本,但也可以采用传统的多选一的结构,所以不限于总线结构。通信频道选取模块是总线仲裁,让匹配的协议模块竞争赢得总线的输出,控制通信接口模块。所有协议匹配模块都在监控通信信号,不与自己协议匹配就不申请总线,一旦匹配就申请总线,一旦由匹配到不匹配(主机更换造成的),则申请断开总线,本模块会采用先到先得的仲裁方法,最终只有一个协议模块会匹配。

每种协议均不一样,如协议中的速度,命令的字符长度,如I2C通信可以有不同的字节,储存媒介里存了这些参数,以便为系统提供灵活性的匹配。协议一般是固定的,可以放在硬件或单次可编程媒介里,节省成本,参数可放在多次可编程媒介里,提供设备在出厂后,客户能灵活性的编写。

可选地,作为总线的输出的与所述通信协议和所述设备的协议均匹配的协议的模块控制通信接口模块;所述通信接口模块包括模拟信号转数字信号的转换器ADC,数字信号转模拟信号的转换器DAC和电压比较器以及可编程的数字IO电路;所述通信接口模块支持模拟通信协议和数字通信协议,以及通过电压变化传输信号。

通信接口模块负责电气连接,传统的接口模块一般是数字可控制IO口。本申请中的接口模块,保护了传统的数字可控制IO口,如可设置为输出或输入或高阻,上拉电阻和下拉电阻,本发明还加入了,开源open source,开漏open drain配置,来适应如I2C这样的需求,上拉电阻的阻值配置,如USB接口需要的电阻值准确的要求,更重要的是还加入了模拟信号转数字信号的转换器ADC,数字信号转模拟信号的转换器DAC和电压比较器,这样可以适应一些模拟通信协议,苹果和惠普的主机对它们的一些配件有加密通信,都采用了模拟通信,如用电压变化来传,这时需要ADC和DAC。ADC,DAC和电压比较器都受通信接口模块控制。

步骤103,提取所述信号的第一速度信息,比较所述第一速度信息与设备存储的第二速度信息或正在使用的第三速度信息。

具体地,协议匹配模块包括通信速度提取模块、通信协议监控模块和通信参数模块;通信速度提取模块,用于提取信号的第一速度信息,计算第一速度信息;当第一速度信息和设备参数设置的第二速度信息或正在使用的设备的第三速度信息不一致时,发送指令给通信速度调整模块;通信协议监控模块,用于当监控到信号的通信协议与所述协议匹配模块的协议匹配时,发送申请信息给通信频道选取模块作为总线的输出。

通信速度提取模块是从通信信号里提取速度信息,计算信号通信速度,当速度和参数设置或正在使用的速度不一样,速度调整模块来调整通信信号的速度。提取和计算通信速度方法有,电压计算,时间计算,时钟计算,数据上升沿下降沿的计算,多点采样,不同时间做响应。

例如,计算信号速度信息可以是:(a)不停的计算信号两个上升沿或下降沿的时间,来计算每一位字节的时间,如1wire通信,每两个上升沿的时间应该不变,但变了就应该调整速度;(b)在模拟通信中,有一些载波,载波通常是固定频率,通过电压提取出这些载波,然后计算速度;(c)有一些协议的速度信息并不容易提取,如异步收发传输器UART,本发明采用多点采样,再和通信内容里的如CRC等的验证信息比较,找出正确的采样点,这样可以计算正确的速度;(d)当从机设备响应主机信息有错时,主机通过发送给从机错误信息,要求再响应,可以采用不同时间点响应,或不同采样点的产生的响应信息响应,直到通信正常;(e)有些通信带有时钟,如I2C总线,串行外围设备接口SPI,USB,通过计算每个时钟周期来计算速度;(f)一些通信协议在通信过程中,有一些固定时间长度,如在两条命令中,停顿一个固定长的时间,通过计算这个时间长度,来计算信号速度。

通信协议监控模块,主要判断是哪种通信协议,如果与自己设置好的协议匹配,就申请总线来控制通信接口模块。现有技术中通过一个模块一个一个的比较,和预先存储好协议匹配,耗时间,主机要在固定时间内得到正确的响应,超时了就会通信出错,这样限制了能寻找的协议个数。本发明用多个协议匹配模块并行比较,每个模块只比较一种协议,这样和单协议的时间基本一样,节省时间,在增加通信协议比较个数时,也不会增加匹配时间。

通信协议监控模块会监控通信的(a)电气特性,如电压,电压震荡幅度,电流,上拉电阻等;(b)通信的内容,如命令头,命令格式,命令标志等;(c)通信协议特性,如信号个数,信号行为(时钟,时钟频率,信号个数,信号特性);(d)通信时间特性,如命令之间的时间;(e)命令的序列等等来判断预先设定要配置的协议比较,看是否匹配。一旦匹配,就申请总线来控制通信模块。本模块会按照预先设置的通信协议,产生通信标准要求的时序,数据,时钟等,控制通信接口模块,和主机信进行通信。

设备可以是存储媒介配件,设备里预先存储有速度信息和协议。

由于环境的变化,如电压会引起主机频率的变化,或者主机和配件中有热拔插,造成通信协议一样但通信频率变化,主机与配件之间会出现通信出错。现有技术中是预先在主机和配件中设置好通信速度,但速度变化就会通信错误。当速度变化时,需要重新设置。本发明利用计算频率来自动调整通信速度,让通信不出错,当通信速度提取模块从通信信号里提取的信号计算出速度有变化时,就通知通信速度调整模块调整速度,通信速度调整模块只受赢的总线的通信提取模块的控制。调整速度包括但不限制于:震荡频率,每位数据的时间长短,等待时间的长短。

步骤104,当所述第一速度信息与所述第二速度信息或第三速度信息不同时,调整所述信号的第一速度。

在服务器与设备通信过程中,作为总线输出的匹配模块不会停止速度提取,要是主机发送的信号的速度变化,匹配模块会对信号的速度做调整,保证服务器与设备通信不会出错,起到了自动矫正速度的作用。例如,温度变化,可能引起主机频率的变化,通信速度也有一定变化,要是异步通信,信号传输可能就出错。如果是1wire通信,主要是靠时间长短来传数据信号,本申请不停的根据两个相同的沿来计算每一位的时间,及时调整每一位0和1的判断。

进一步参考图2,作为对上述各图所示方法的实现,与上述提供的通信速度矫正及通信协议的选取方法相对应,本申请实施例还提供了一种装置。

所述装置包括:获取模块201,用于获取服务器发送给设备的信号;通信频道选取模块202,用于根据所述信号的通信协议,选取与所述通信协议和所述设备的协议均匹配的协议匹配模块作为总线的输出;所述协议匹配模块203,用于提取所述信号的第一速度信息,比较所述第一速度信息与所述设备存储的第二速度信息或正在使用的第三速度信息;所述通信速度调整模块204,用于当所述第一速度信息与所述第二速度信息或第三速度信息不同时,调整所述信号的第一速度。

可选地,所述通信频道选取模块为CPU的数据总线结构,通信频道选取模块中的所有协议匹配模块监控所述通信协议,且并行与所述通信协议和所述设备的协议匹配;选取最先与所述通信协议和所述设备的协议均匹配的一个协议的模块作为总线的输出。

可选地,所述协议匹配模块具体用于:作为总线的输出的与所述通信协议和所述设备的协议均匹配的所述协议匹配模块控制通信接口模块;所述通信接口模块包括模拟信号转数字信号的转换器ADC,数字信号转模拟信号的转换器DAC和电压比较器以及可编程的数字IO电路;所述通信接口模块支持模拟通信协议和数字通信协议,以及通过电压变化或电流变化传输所述信号。

可选地,所述协议匹配模块具体包括通信速度提取模块、通信协议监控模块和通信参数模块;所述通信速度提取模块,用于提取所述信号的所述第一速度信息,计算所述第一速度信息;当所述第一速度信息和所述设备参数设置的所述第二速度信息或正在使用的设备的第三速度信息不一致时,发送指令给所述通信速度调整模块;所述通信协议监控模块,用于当监控到所述通信协议与所述协议匹配模块的协议匹配时,发送申请信息给所述通信频道选取模块以便作为总线的输出;所述通信参数模块,用于用户更改所述设备的协议的参数。

上述模块提供了通信的一些参数,如速度,密码,命令长度,命令的标志,电压幅度,IO需要的类型,如有没有上拉或下拉电阻,是否开源或开漏,命令的时间,命令顺序,通信需要的驱动电流等等。这个可多次编程的存储媒介设备,允许客户在出厂后重新编程来适合他们的使用。也可以在需要人为干预来配合主机通信特性改变时,可以改变这些参数,由于通信参数提供了一定范围,寻找匹配的速度也会提高。

本发明中的装置包括有多个协议匹配模块,多个协议匹配模块是并行运行的,当主机更换通信协议,或者更换主机,本发明不需要重新上电也能切换。支持热拔插;加强通信加密功能,例如一些主机有加密内容的配件,主机与配件通信需要密码和特殊通信来实现加密,但使用单一加密通信,容易被破解,但使用本发明的系统,可以定时更换密码和协议,即使被破解一套加密通信,也不能读取保密内容,因为在一定时间后,这套加密协议/密码不再有效。主机在通信过程中可以更改参数,在后边的通信中采用这些更改过的参数,如更改密码,命令顺序,或命令时间等等,可以大大提高通信的安全性。

专业人员应该还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明实施例的范围。

结合本文中所公开的实施例描述的方法或算法的步骤可以用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。

以上所述的具体实施方式,对本发明实施例的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明实施例的具体实施方式而已,并不用于限定本发明实施例的保护范围,凡在本发明实施例的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明实施例的保护范围之内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号