CN107656887A - 外设总线的控制装置及方法 - Google Patents
外设总线的控制装置及方法 Download PDFInfo
- Publication number
- CN107656887A CN107656887A CN201610589997.8A CN201610589997A CN107656887A CN 107656887 A CN107656887 A CN 107656887A CN 201610589997 A CN201610589997 A CN 201610589997A CN 107656887 A CN107656887 A CN 107656887A
- Authority
- CN
- China
- Prior art keywords
- bus
- peripheral hardware
- peripheral
- driving switch
- normal
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4004—Coupling between buses
- G06F13/4022—Coupling between buses using switching circuits, e.g. switching matrix, connection or expansion network
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/2205—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested
- G06F11/221—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested to test buses, lines or interfaces, e.g. stuck-at or open line faults
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Quality & Reliability (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明公开了一种外设总线的控制装置,外设连接有多路总线,所述外设总线的控制装置包括:检测模块,用于检测外设当前通信的第一总线是否出现异常;确定模块,用于在所述第一总线出现异常时,确定所述外设连接的除所述第一总线以外的其他总线中是否存在通信正常的第二总线;控制模块,用于在有通信正常的第二总线时,控制所述外设采用所述第二总线进行通信。本发明还公开了一种外设总线的控制方法。本发明提高了外设通信的可靠性。
Description
技术领域
本发明涉及外设总线控制技术领域,尤其涉及一种外设总线的控制装置及方法。
背景技术
随着科技的不断发展,手机、电视机等终端的功能越来越丰富,比如隔空操作、手势体感、手势拍照、指纹识别等等。这些功能的实现通常需要终端处理器挂载相应外设,并配合相应的软件算法来实现。外设与处理器之间通过一路总线连接,来进行交互通信。当总线出现异常时,外设就无法正常进行交互通信了。尤其是当外设较多时,因为处理器本身总线数目资源是固定有限的,多个外设会采用一路总线与处理器连接,这样若由于总线出现异常,就导致连接该总线的所有外设均无法正常与处理器进行交互通信。因此,现有方案中外设通信的可靠性较低。
发明内容
本发明的主要目的在于提出一种外设总线的控制装置及方法,旨在解决现有外设通信可靠性较低的技术问题。
为实现上述目的,本发明提供的一种外设总线的控制装置,所述外设连接有多路总线,所述外设总线的控制装置包括:
检测模块,用于检测外设当前通信的第一总线是否出现异常;
确定模块,用于在所述第一总线出现异常时,确定所述外设连接的除所述第一总线以外的其他总线中是否存在通信正常的第二总线;
控制模块,用于在有通信正常的第二总线时,控制所述外设采用所述第二总线进行通信。
优选地,所述控制模块包括:
判断单元,用于在有通信正常的第二总线时,判断所述第二总线是否为空闲总线;
控制单元,用于在所述第二总线为空闲总线时,控制所述外设采用所述第二总线进行通信。
优选地,每路总线上分别设置有对应的驱动开关,每个驱动开关均与驱动开关选择器连接;所述控制模块用于:
在有通信正常的第二总线时,发送所述第二总线对应的电平信号至所述驱动开关选择器,以供所述驱动开关选择器控制所述第二总线对应的驱动开关导通,所述第一总线对应的驱动开关断开。
优选地,所述外设总线的控制装置还包括:
处理模块,用于通过所述第二总线对所述外设进行鉴权操作;
所述控制模块,用于在鉴权成功时,控制所述外设采用所述第二总线进行通信。
优选地,所述处理模块用于:
通过所述第二总线获取所述外设的标识信息,以对对所述外设进行鉴权操作,其中,在获取到所述外设的标识信息时,确定鉴权成功。
此外,为实现上述目的,本发明还提出一种外设总线的控制方法,所述外设连接有多路总线,所述外设总线的控制方法包括以下步骤:
检测外设当前通信的第一总线是否出现异常;
在所述第一总线出现异常时,确定所述外设连接的除所述第一总线以外的其他总线中是否存在通信正常的第二总线;
在有通信正常的第二总线时,控制所述外设采用所述第二总线进行通信。
优选地,所述在有通信正常的第二总线时,控制所述外设采用所述第二总线进行通信的步骤包括:
在有通信正常的第二总线时,判断所述第二总线是否为空闲总线;
在所述第二总线为空闲总线时,控制所述外设采用所述第二总线进行通信。
优选地,每路总线上分别设置有对应的驱动开关,每个驱动开关均与驱动开关选择器连接;所述在有通信正常的第二总线时,控制所述外设采用所述第二总线进行通信的步骤包括:
在有通信正常的第二总线时,发送所述第二总线对应的电平信号至所述驱动开关选择器,以供所述驱动开关选择器控制所述第二总线对应的驱动开关导通,所述第一总线对应的驱动开关断开。
优选地,所述控制所述外设采用所述第二总线进行通信的步骤之前,还包括:
通过所述第二总线对所述外设进行鉴权操作;
在鉴权成功时,执行所述控制所述外设采用所述第二总线进行通信的步骤。
优选地,所述通过所述第二总线对所述外设进行鉴权操作的步骤包括:
通过所述第二总线获取所述外设的标识信息,以对对所述外设进行鉴权操作,其中,在获取到所述外设的标识信息时,确定鉴权成功。
本发明提出的外设总线的控制装置及方法,外设连接有多路总线,在外设进行通信的过程中,当检测模块检测到外设当前通信的第一总线出现异常时,确定模块确定外设连接的其他总线中是否有通信正常的第二总线,当有通信正常的第二总线时,控制模块控制外设采用第二总线继续正常进行通信,从而降低了外设通信异常的概率,提高了外设通信的可靠性。
附图说明
图1为本发明中外设通信系统的一个结构框架示意图;
图2为本发明外设总线的控制装置第一实施例的功能模块示意图;
图3为本发明外设总线的控制装置第二实施例中控制模块的细化功能模块示意图;
图4为本发明中外设通信系统的另一个结构框架示意图;
图5为本发明外设总线的控制方法第一实施例的流程示意图;
图6为本发明外设总线的控制方法第二实施例中在有通信正常的第二总线时,控制所述外设采用所述第二总线进行通信的细化流程示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明提供一种外设总线的控制装置,该外设总线的控制装置设置于智能手机、PAD(平板电脑)等终端的处理器中,或者外接于终端的处理器,在此不做限制。如图1所示,处理器与外设建立连接,组成外设通信系统,其中,外设连接有多路总线,在这些总线中有一路总线为外设当前通信的第一总线,处理器与外设之间通过该第一总线进行交互通信。比如,在图1中,处理器与外设之间连接有4路总线,其中,0号总线为外设当前通信的第一总线,也即处理器与外设之间当前通过该0号总线进行交互通信。
参照图2,图2为本发明外设总线的控制装置第一实施例的功能模块示意图。
在本实施例中,该外设总线的控制装置包括:
检测模块10,用于检测外设当前通信的第一总线是否出现异常;
本实施例中,在处理器与外设进行交互通信的过程中,检测模块10实时或定时地检测外设当前通信的第一总线是否出现异常,比如是否出现总线超时、外设无响应(NACK)、总线链路异常等各种异常状态,导致处理器与外设的交互通信无法正常进行。例如,如图1中所示,若外设当前通信的第一总线为0号总线时,检测模块10实时或定时地检测0号总线是否出现总线超时、外设无响应(NACK)、总线链路异常等各种异常。
进一步地,本实施例中,预先设置有一校验时间,当检测模块10在检测到外设当前通信的第一总线出现异常时,为了避免误检测,不立即判断总线不能正常进行交互通信了,在经过预设的校验时间后,检测模块10再次检测外设当前通信的第一总线是否异常。当检测结果依旧是外设当前通信的第一总线异常时,此时,确定外设当前通信的第一总线出现异常。检测模块10再次检测的检测结果为外设当前通信的第一总线正常时,确定外设当前通信的第一总线是正常的,外设可以通过第一总线正常进行交互通信,不需要进行总线切换。检测模块10继续实时或定时检测外设当前通信的第一总线是否出现异常。
当处理器连接有多个外设时,为了保证各个外设的正常交互通信,检测模块10监控各路总线的通信状态,比如检测模块10实时或定时轮询各路总线,分别检测各路总线是否出现异常。若在轮询检测中检测到多路总线出现异常,则根据预先设置的优先级原则,比如预先设置各种异常类型的优先级,将出现异常的多路总线中异常类型优先级最高的一路总线挑选出来,优先对该路总线进行总线切换。又如,优先设置各路总线的优先级,当检测到多路总线出现异常时,将异常的多路总线中优先级最高的总线挑选出来,优先对该路总线进行总线切换。
确定模块20,用于在所述第一总线出现异常时,确定所述外设连接的除所述第一总线以外的其他总线中是否存在通信正常的第二总线;
当检测模块10检测到外设当前通信的第一总线出现异常时,确定模块20查询与外设连接的其他总线的通信状态,确定其他总线中是否存在通信正常的第二总线。例如,如图1所示,若0号总线为外设当前通信的第一总线,1号总线、2号总线和3号总线为外设当前未使用的第二总线。当检测模块10检测到外设当前使用的0号总线出现异常时,确定模块20查询1号总线、2号总线和3号总线的通信状态,确定1号总线、2号总线和3号总线中是否有通信正常的总线。
优选地,确定模块20确定与外设连接的其他总线中是否存在通信正常的空闲总线。当确定模块20确定在其他总线中有一个第二总线为通信正常的空闲总线时,就不用再查询其他总线的通信状态了。例如,当确定模块20确定1号总线为通信正常的空闲总线时,则不需要继续查询2号总线和3号总线的通信状态了。
控制模块30,用于在有通信正常的第二总线时,控制所述外设采用所述第二总线进行通信。
当确定模块20确定有通信正常的第二总线时,控制模块30将外设当前通信的第一总线切换为第二总线,控制外设采用第二总线进行交互通信。例如,如图1所示,仍以上述列举的例子为例,若确定模块20确定在1号总线、2号总线和3号总线中3号总线为通信正常总线,则控制模块30将外设当前使用的0号总线切换为3号总线,控制外设通过3号总线进行交互通信。
比如,现有方案中,终端的TP触摸屏与传感器共一路总线,当该总线出现异常时,与TP触摸屏共总线的传感器的功能都无法正常实现了,这样就会出现界面无法旋转屏、通话无法亮屏和熄屏等问题。而采用本实施例的方案,在当前使用的总线出现异常时,将当前使用的异常总线切换至正常的其他总线,则TP触摸屏与其共总线的传感器的功能都可正常实现,从而避免了界面无法旋转屏、通话无法亮屏和熄屏等问题。
本实施例提出的方案,在外设进行交互通信的过程中,当检测模块10检测到外设当前通信的第一总线出现异常时,确定模块20确定外设连接的其他总线中是否有通信正常的第二总线,当有通信正常的第二总线时,控制模块30将外设当前通信的第一总线切换为第二总线,控制外设通过第二总线能继续正常进行交互通信,从而降低了外设通信异常的概率,提高了外设通信的可靠性。
进一步地,如图3所示,基于第一实施例提出本发明外设总线的控制装置第二实施例,在本实施例中,所述控制模块30包括:
判断单元31,用于在有通信正常的第二总线时,判断所述第二总线是否为空闲总线;
控制单元32,用于在所述第二总线为空闲总线时,控制所述外设采用所述第二总线进行通信。
在本实施例中,当检测模块10检测到外设当前通信的第一总线出现异常时,确定模块20确定外设当前通信的第一总线以外的其他总线中是否存在通信正常的第二总线。当确定有通信正常的第二总线时,判断单元31判断该第二总线是否为空闲总线,当第二总线为空闲总线时,控制单元32控制外设采用该第二总线进行通信。
优选地,本实施例中预先设置有一预设时长T,该预设时长T的具体数值可根据实际情况进行灵活设置,例如,设置预设时长T为100ms,其具体数值在此不做限制。当判断单元31判断第二总线处于空闲状态时,为了避免误判断,并不立即确定该第二总线为空闲总线,而是检测在预设时长T内该第二总线是否一直处于空闲状态。当检测在预设时长T内该第二总线一直处于空闲状态时,判断单元31才确定该第二总线为空闲总线。
进一步地,当判断单元31确定第二总线为空闲总线时,就不用再查询其他总线的通信状态了。例如,当判断单元31确定了3号总线为空闲总线时,则不需要继续查询1号总线和2号总线的通信状态了。
当检测在预设时长T内该第二总线未一直处于空闲状态,也即在预设时长T内检测到该第二总线有忙的状态时,判断单元31确定该第二总线不为空闲总线。此时,确定模块20继续查询其他总线的通信状态,检测其他的总线是否为通信正常的空闲总线。
可以理解的是,除了上述说明的方式,也可以通过其他方式来确定第二总线是否为空闲总线。例如,当检测到第二总线处于空闲状态时,在经过预设时长T后再检测该第二总线是否处于空闲状态,当再次检测到第二总线处于空闲状态时,此时,确定第二总线为空闲总线。
本实施例提出的方案,在有通信正常的第二总线时,判断单元31判断第二总线是否为空闲总线,在第二总线为空闲总线时,控制外设采用第二总线进行通信,从而提高了外设的通信效率。
进一步地,基于第一实施例或第二实施例提出本发明外设总线的控制装置第三实施例。在本实施例中,如图4所示,外设连接的每路总线上分别设置有对应的驱动开关,而外设总线的控制装置连接有驱动开关选择器,该驱动开关选择器还分别连接每路总线上设置的驱动开关。例如,以图1为例,处理器与外设之间连接有并联的0号总线、1号总线、2号总线和3号总线,0号总线上设置有对应的驱动开关0,1号总线上设置有对应的驱动开关1,2号总线上设置有对应的驱动开关2,3号总线上设置有对应的驱动开关3,而与外设总线的控制装置连接的驱动开关选择器还分别连接驱动开关0、驱动开关1、驱动开关2和驱动开关3。
当外设当前通信的第一总线处于正常通信状态时,第一总线上对应的驱动开关处于导通状态,其他总线上对应的驱动开关均处于断开状态。例如,当外设当前通信的第一总线为0号总线时,0号总线上设置的驱动开关0处于导通状态,而其他1号总线、2号总线和3号总线上设置的驱动开关1、驱动开关2和驱动开关3均处于断开状态。
本实施例中,所述控制模块30,用于在有通信正常的第二总线时,发送所述第二总线对应的电平信号至所述驱动开关选择器,以供所述驱动开关选择器控制所述第二总线对应的驱动开关导通,所述第一总线对应的驱动开关断开。
本实施例中,当确定模块20确定有通信正常的第二总线时,控制模块30发送对应的电平信号至驱动开关选择器。当驱动开关选择器接收到控制模块30发送的电平信号时,驱动开关选择器将接收到的电平信号转换为对应的使能控制信号,并根据该使能控制信号使能第二总线对应的驱动开关,控制第二总线对应的驱动开关导通,并控制第一总线对应的驱动开关断开,将外设当前通信的第一总线切换为第二总线。
例如,预先设置有外设连接的每路总线对应的电平信号。比如,仍以图1为例,外设连接有并联的0号总线、1号总线、2号总线和3号总线,预设0号总线对应的电平信号为00,1号总线对应的电平信号为01,2号总线对应的电平信号为10,3号总线对应的电平信号为11。当确定有通信正常的第二总线时,控制模块30发送该第二总线对应的电平信号至驱动开关选择器。例如,若3号总线为通信正常的总线时,控制模块30发送对应的11电平信号至驱动开关选择器;若1号总线为空闲总线时,控制模块30发送对应的01电平信号至驱动开关选择器。
当驱动开关选择器接收到控制模块30发送的电平信号时,驱动开关选择器将接收到的电平信号转换为对应的使能控制信号,并根据该使能控制信号使能第二总线对应的驱动开关,控制第二总线对应的驱动开关导通,并控制第一总线对应的驱动开关断开,将外设当前通信的第一总线切换为第二总线。
进一步地,本实施例中,所述外设总线的控制装置还包括:
处理模块,用于通过所述第二总线对所述外设进行鉴权操作;
所述控制模块30,用于在鉴权成功时,控制所述外设采用所述第二总线进行通信。
在将外设当前通信的第一总线切换为第二总线后,处理模块通过第二总线对外设重新进行鉴权操作。具体地,所述处理模块用于:
通过所述第二总线获取所述外设的标识信息,以对对所述外设进行鉴权操作,其中,在获取到所述外设的标识信息时,确定鉴权成功。
本实施例中,外设预先设置有唯一对应的标识信息,例如,预先设置有外设对应的ID码。当控制模块30将外设当前通信的第一总线切换为第二总线后,处理模块获取外设的标识信息。例如,处理模块读取外设的标识信息。本领域技术人员可以理解的是,处理模块还可以通过其他方式获取外设的标识信息,比如识别外设的标识信息,对于处理模块获取外设的标识信息的方式在此不做限制。当获取单元获取到外设的标识信息后,确定对外设的鉴权成功。否则,处理模块确定鉴权失败。当鉴权成功时,控制模块30控制外设采用第二总线进行通信。
进一步地,在控制模块30将外设当前通信的第一总线切换为第二总线之前,为了避免数据丢失,处理模块将外设的通信数据进行备份,例如,将数据寄存器、状态寄存器、驱动内部的控制逻辑等数据内容进行备份处理,从而避免在总线切换后不能正常进行交互通信的问题。
进一步地,当处理模块对外设重新鉴权成功后,处理模块将外设当前使用第二总线的通讯状态上报至检测模块10,以供检测模块10进行新一轮的对外设当前使用的总线的通信状态进行检测。
本实施例提出的方案,在将外设当前通信的第一总线切换为第二总线后,处理模块对外设重新进行鉴权,确认处理器与外设之间通过第二总线可以正常进行交互通信,进一步提高了外设通信的可靠性。
本发明进一步提供一种外设总线的控制方法。
本发明中,智能手机、PAD(平板电脑)等终端的处理器中设置有外设总线的控制装置,或者,终端的处理器外接该外设总线的控制装置,在此不做限制。如图1所示,处理器与外设建立连接,组成外设通信系统,其中,外设连接有多路总线,在这些总线中有一路总线为外设当前通信的第一总线,处理器与外设之间通过该第一总线进行交互通信。比如,在图1中,处理器与外设之间连接有4路总线,其中,0号总线为外设当前通信的第一总线,也即处理器与外设之间当前通过该0号总线进行交互通信。
参照图5,图5为本发明外设总线的控制方法第一实施例的流程示意图。在本实施例中,该外设总线的控制方法包括以下步骤:
步骤S10,检测外设当前通信的第一总线是否出现异常;
本实施例中,在处理器与外设进行交互通信的过程中,外设总线的控制装置实时或定时地检测外设当前通信的第一总线是否出现异常,比如是否出现总线超时、外设无响应(NACK)、总线链路异常等各种异常状态,导致处理器与外设的交互通信无法正常进行。例如,如图1中所示,若外设当前通信的第一总线为0号总线时,外设总线的控制装置实时或定时地检测0号总线是否出现总线超时、外设无响应(NACK)、总线链路异常等各种异常。
进一步地,本实施例中,预先设置有一校验时间,当外设总线的控制装置在检测到外设当前通信的第一总线出现异常时,为了避免误检测,不立即判断总线不能正常进行交互通信了,在经过预设的校验时间后,外设总线的控制装置再次检测外设当前通信的第一总线是否异常。当检测结果依旧是外设当前通信的第一总线异常时,此时,确定外设当前通信的第一总线出现异常。外设总线的控制装置再次检测的检测结果为外设当前通信的第一总线正常时,确定外设当前通信的第一总线是正常的,外设可以通过第一总线正常进行交互通信,不需要进行总线切换。外设总线的控制装置继续实时或定时检测外设当前通信的第一总线是否出现异常。
当处理器连接有多个外设时,为了保证各个外设的正常交互通信,外设总线的控制装置监控各路总线的通信状态,比如外设总线的控制装置实时或定时轮询各路总线,分别检测各路总线是否出现异常。若在轮询检测中检测到多路总线出现异常,则根据预先设置的优先级原则,比如预先设置各种异常类型的优先级,将出现异常的多路总线中异常类型优先级最高的一路总线挑选出来,优先对该路总线进行总线切换。又如,优先设置各路总线的优先级,当检测到多路总线出现异常时,将异常的多路总线中优先级最高的总线挑选出来,优先对该路总线进行总线切换。
步骤S20,在所述第一总线出现异常时,确定所述外设连接的除所述第一总线以外的其他总线中是否存在通信正常的第二总线;
当检测到外设当前通信的第一总线出现异常时,外设总线的控制装置查询与外设连接的其他总线的通信状态,确定其他总线中是否存在通信正常的第二总线。例如,如图1所示,若0号总线为外设当前通信的第一总线,1号总线、2号总线和3号总线为外设当前未使用的第二总线。当检测到外设当前使用的0号总线出现异常时,外设总线的控制装置查询1号总线、2号总线和3号总线的通信状态,确定1号总线、2号总线和3号总线中是否有通信正常的总线。
优选地,外设总线的控制装置确定与外设连接的其他总线中是否存在通信正常的空闲总线。当外设总线的控制装置确定在其他总线中有一个第二总线为通信正常的空闲总线时,就不用再查询其他总线的通信状态了。例如,当外设总线的控制装置确定1号总线为通信正常的空闲总线时,则不需要继续查询2号总线和3号总线的通信状态了。
步骤S30,在有通信正常的第二总线时,控制所述外设采用所述第二总线进行通信。
当外设总线的控制装置确定有通信正常的第二总线时,外设总线的控制装置将外设当前通信的第一总线切换为第二总线,控制外设采用第二总线进行交互通信。例如,如图1所示,仍以上述列举的例子为例,若确定在1号总线、2号总线和3号总线中3号总线为通信正常总线,则外设总线的控制装置将外设当前使用的0号总线切换为3号总线,控制外设通过3号总线进行交互通信。
比如,现有方案中,终端的TP触摸屏与传感器共一路总线,当该总线出现异常时,与TP触摸屏共总线的传感器的功能都无法正常实现了,这样就会出现界面无法旋转屏、通话无法亮屏和熄屏等问题。而采用本实施例的方案,在当前使用的总线出现异常时,将当前使用的异常总线切换至正常的其他总线,则TP触摸屏与其共总线的传感器的功能都可正常实现,从而避免了界面无法旋转屏、通话无法亮屏和熄屏等问题。
本实施例提出的方案,在外设进行交互通信的过程中,当外设总线的控制装置检测到外设当前通信的第一总线出现异常时,确定外设连接的其他总线中是否有通信正常的第二总线,当有通信正常的第二总线时,外设总线的控制装置将外设当前通信的第一总线切换为第二总线,控制外设通过第二总线能继续正常进行交互通信,从而降低了外设通信异常的概率,提高了外设通信的可靠性。
进一步地,如图5所示,基于第一实施例提出本发明外设总线的控制方法第二实施例,在本实施例中,所述步骤S30包括:
步骤S31,在有通信正常的第二总线时,判断所述第二总线是否为空闲总线;
步骤S32,在所述第二总线为空闲总线时,控制所述外设采用所述第二总线进行通信。
在本实施例中,当外设总线的控制装置检测到外设当前通信的第一总线出现异常时,确定外设当前通信的第一总线以外的其他总线中是否存在通信正常的第二总线。当确定有通信正常的第二总线时,判断该第二总线是否为空闲总线,当第二总线为空闲总线时,控制外设采用该第二总线进行通信。
优选地,本实施例中预先设置有一预设时长T,该预设时长T的具体数值可根据实际情况进行灵活设置,例如,设置预设时长T为100ms,其具体数值在此不做限制。当外设总线的控制装置查询到有第二总线处于空闲状态时,为了避免误判断,并不立即确定该第二总线为空闲总线,而是检测在预设时长T内该第二总线是否一直处于空闲状态。当外设总线的控制装置检测在预设时长T内该第二总线一直处于空闲状态时,才确定该第二总线为空闲总线。
进一步地,当外设总线的控制装置确定第二总线为空闲总线时,就不用再查询其他总线的通信状态了。例如,当外设总线的控制装置确定了3号总线为空闲总线时,则不需要继续查询1号总线和2号总线的通信状态了。
当检测在预设时长T内该第二总线未一直处于空闲状态,也即在预设时长T内检测到该第二总线有忙的状态时,外设总线的控制装置确定该第二总线不为空闲总线。此时,外设总线的控制装置继续查询其他总线的通信状态,检测其他的总线是否为通信正常的空闲总线。
可以理解的是,除了上述说明的方式,也可以通过其他方式来确定第二总线是否为空闲总线。例如,当查询到第二总线处于空闲状态时,在经过预设时长T后再检测该第二总线是否处于空闲状态,当再次检测到第二总线处于空闲状态时,此时,外设总线的控制装置确定第二总线为空闲总线。
本实施例提出的方案,在有通信正常的第二总线时,外设总线的控制装置判断第二总线是否为空闲总线,在第二总线为空闲总线时,控制外设采用第二总线进行通信,从而提高了外设的通信效率。
进一步地,基于第一实施例或第二实施例提出本发明外设总线的控制方法第三实施例。在本实施例中,如图4所示,外设连接的每路总线上分别设置有对应的驱动开关,而外设总线的控制装置连接有驱动开关选择器,该驱动开关选择器还分别连接每路总线上设置的驱动开关。例如,以图1为例,处理器与外设之间连接有并联的0号总线、1号总线、2号总线和3号总线,0号总线上设置有对应的驱动开关0,1号总线上设置有对应的驱动开关1,2号总线上设置有对应的驱动开关2,3号总线上设置有对应的驱动开关3,而与外设总线的控制装置连接的驱动开关选择器还分别连接驱动开关0、驱动开关1、驱动开关2和驱动开关3。
当外设当前通信的第一总线处于正常通信状态时,第一总线上对应的驱动开关处于导通状态,其他总线上对应的驱动开关均处于断开状态。例如,当外设当前通信的第一总线为0号总线时,0号总线上设置的驱动开关0处于导通状态,而其他1号总线、2号总线和3号总线上设置的驱动开关1、驱动开关2和驱动开关3均处于断开状态。
本实施例中,所述步骤S30包括:
在有通信正常的第二总线时,发送所述第二总线对应的电平信号至所述驱动开关选择器,以供所述驱动开关选择器控制所述第二总线对应的驱动开关导通,所述第一总线对应的驱动开关断开。
本实施例中,当确定有通信正常的第二总线时,外设总线的控制装置发送对应的电平信号至驱动开关选择器。当驱动开关选择器接收到外设总线的控制装置发送的电平信号时,驱动开关选择器将接收到的电平信号转换为对应的使能控制信号,并根据该使能控制信号使能第二总线对应的驱动开关,控制第二总线对应的驱动开关导通,并控制第一总线对应的驱动开关断开,将外设当前通信的第一总线切换为第二总线。
例如,预先设置有外设连接的每路总线对应的电平信号。例如,仍以图1为例,外设连接有并联的0号总线、1号总线、2号总线和3号总线,预设0号总线对应的电平信号为00,1号总线对应的电平信号为01,2号总线对应的电平信号为10,3号总线对应的电平信号为11。当确定有通信正常的第二总线时,外设总线的控制装置发送该第二总线对应的电平信号至驱动开关选择器。例如,若3号总线为空闲总线时,外设总线的控制装置发送对应的11电平信号至驱动开关选择器;若1号总线为正常总线时,外设总线的控制装置发送对应的01电平信号至驱动开关选择器。
当驱动开关选择器接收到外设总线的控制装置发送的电平信号时,驱动开关选择器将接收到的电平信号转换为对应的使能控制信号,并根据该使能控制信号使能第二总线对应的驱动开关,控制第二总线对应的驱动开关导通,并控制第一总线对应的驱动开关断开,将外设当前通信的第一总线切换为第二总线。
进一步地,本实施例中,所述步骤S30之前,还包括:
步骤a,通过所述第二总线对所述外设进行鉴权操作;
步骤b,在鉴权成功时,执行所述步骤S30。
当外设总线的控制装置将外设当前通信的第一总线切换为第二总线后,外设总线的控制装置通过第二总线对外设重新进行鉴权操作。具体地,所述步骤a包括:
通过所述第二总线获取所述外设的标识信息,以对对所述外设进行鉴权操作,其中,在获取到所述外设的标识信息时,确定鉴权成功。
本实施例中,外设预先设置有唯一对应的标识信息,例如,预先设置有外设对应的ID码。当外设总线的控制装置将外设当前通信的第一总线切换为第二总线后,外设总线的控制装置获取外设的标识信息。例如,外设总线的控制装置读取外设的标识信息。本领域技术人员可以理解的是,外设总线的控制装置还可以通过其他方式获取外设的标识信息,比如识别外设的标识信息,对于外设总线的控制装置获取外设的标识信息的方式在此不做限制。当外设总线的控制装置获取到外设的标识信息后,外设总线的控制装置确定对外设的鉴权成功。否则,外设总线的控制装置确定鉴权失败。当鉴权成功时,外设总线的控制装置控制外设采用第二总线进行通信。
进一步地,在外设总线的控制装置将外设当前通信的第一总线切换为第二总线之前,为了避免数据丢失,外设总线的控制装置将外设的通信数据进行备份,例如,将数据寄存器、状态寄存器、驱动内部的控制逻辑等数据内容进行备份处理,从而避免在总线切换后不能正常进行交互通信的问题。
进一步地,当外设总线的控制装置对外设重新鉴权成功后,外设总线的控制装置将外设当前使用第二总线的通讯状态上报,外设总线的控制装置进行新一轮的对外设当前使用的总线的通信状态进行检测。
本实施例提出的方案,外设总线的控制装置将外设当前通信的第一总线切换为第二总线后,对外设重新进行鉴权,确认处理器与外设之间通过第二总线可以正常进行交互通信,进一步提高了外设通信的可靠性。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种外设总线的控制装置,其特征在于,所述外设连接有多路总线,所述外设总线的控制装置包括:
检测模块,用于检测外设当前通信的第一总线是否出现异常;
确定模块,用于在所述第一总线出现异常时,确定所述外设连接的除所述第一总线以外的其他总线中是否存在通信正常的第二总线;
控制模块,用于在有通信正常的第二总线时,控制所述外设采用所述第二总线进行通信。
2.如权利要求1所述的外设总线的控制装置,其特征在于,所述控制模块包括:
判断单元,用于在有通信正常的第二总线时,判断所述第二总线是否为空闲总线;
控制单元,用于在所述第二总线为空闲总线时,控制所述外设采用所述第二总线进行通信。
3.如权利要求1所述的外设总线的控制装置,其特征在于,每路总线上分别设置有对应的驱动开关,每个驱动开关均与驱动开关选择器连接;所述控制模块用于:
在有通信正常的第二总线时,发送所述第二总线对应的电平信号至所述驱动开关选择器,以供所述驱动开关选择器控制所述第二总线对应的驱动开关导通,所述第一总线对应的驱动开关断开。
4.如权利要求1-3任一项所述的外设总线的控制装置,其特征在于,所述外设总线的控制装置还包括:
处理模块,用于通过所述第二总线对所述外设进行鉴权操作;
所述控制模块,用于在鉴权成功时,控制所述外设采用所述第二总线进行通信。
5.如权利要求4所述的外设总线的控制装置,其特征在于,所述处理模块用于:
通过所述第二总线获取所述外设的标识信息,以对对所述外设进行鉴权操作,其中,在获取到所述外设的标识信息时,确定鉴权成功。
6.一种外设总线的控制方法,其特征在于,所述外设连接有多路总线,所述外设总线的控制方法包括以下步骤:
检测外设当前通信的第一总线是否出现异常;
在所述第一总线出现异常时,确定所述外设连接的除所述第一总线以外的其他总线中是否存在通信正常的第二总线;
在有通信正常的第二总线时,控制所述外设采用所述第二总线进行通信。
7.如权利要求6所述的外设总线的控制方法,其特征在于,所述在有通信正常的第二总线时,控制所述外设采用所述第二总线进行通信的步骤包括:
在有通信正常的第二总线时,判断所述第二总线是否为空闲总线;
在所述第二总线为空闲总线时,控制所述外设采用所述第二总线进行通信。
8.如权利要求6所述的外设总线的控制方法,其特征在于,每路总线上分别设置有对应的驱动开关,每个驱动开关均与驱动开关选择器连接;所述在有通信正常的第二总线时,控制所述外设采用所述第二总线进行通信的步骤包括:
在有通信正常的第二总线时,发送所述第二总线对应的电平信号至所述驱动开关选择器,以供所述驱动开关选择器控制所述第二总线对应的驱动开关导通,所述第一总线对应的驱动开关断开。
9.如权利要求6-8任一项所述的外设总线的控制方法,其特征在于,所述控制所述外设采用所述第二总线进行通信的步骤之前,还包括:
通过所述第二总线对所述外设进行鉴权操作;
在鉴权成功时,执行所述控制所述外设采用所述第二总线进行通信的步骤。
10.如权利要求9所述的外设总线的控制方法,其特征在于,所述通过所述第二总线对所述外设进行鉴权操作的步骤包括:
通过所述第二总线获取所述外设的标识信息,以对对所述外设进行鉴权操作,其中,在获取到所述外设的标识信息时,确定鉴权成功。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610589997.8A CN107656887A (zh) | 2016-07-25 | 2016-07-25 | 外设总线的控制装置及方法 |
PCT/CN2017/070162 WO2018018853A1 (zh) | 2016-07-25 | 2017-01-04 | 外设总线的控制装置及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610589997.8A CN107656887A (zh) | 2016-07-25 | 2016-07-25 | 外设总线的控制装置及方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107656887A true CN107656887A (zh) | 2018-02-02 |
Family
ID=61015556
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610589997.8A Pending CN107656887A (zh) | 2016-07-25 | 2016-07-25 | 外设总线的控制装置及方法 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN107656887A (zh) |
WO (1) | WO2018018853A1 (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112217704A (zh) * | 2019-07-11 | 2021-01-12 | 恩智浦有限公司 | 收发器与微控制器间的通信 |
CN114281722A (zh) * | 2021-12-29 | 2022-04-05 | 合肥市芯海电子科技有限公司 | 一种双总线接口的嵌入式控制电路、芯片和电子设备 |
CN117331863A (zh) * | 2023-11-23 | 2024-01-02 | 苏州元脑智能科技有限公司 | 电源信息的通信方法、系统、电子设备及存储介质 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5911084A (en) * | 1994-10-07 | 1999-06-08 | Dell Usa, L.P. | System and method for accessing peripheral devices on a non-functional controller |
CN1545268A (zh) * | 2003-11-27 | 2004-11-10 | 中兴通讯股份有限公司 | 一种以太网接口节点备份的方法及系统 |
US20050083833A1 (en) * | 2003-10-16 | 2005-04-21 | Gettala Balachandar S. | System and method for providing communications in a network using a redundant switching architecture |
CN101135909A (zh) * | 2006-06-30 | 2008-03-05 | 株式会社日立制作所 | 诊断装置及方法、总线系统及其控制方法、线路诊断程序 |
CN102130760A (zh) * | 2010-12-10 | 2011-07-20 | 南京科远自动化集团股份有限公司 | 一种12路eBus冗余总线通信装置 |
CN202334558U (zh) * | 2011-11-08 | 2012-07-11 | 扬州恒春电子有限公司 | 总线冗余电路 |
CN103941633A (zh) * | 2014-04-29 | 2014-07-23 | 北京依雷特科技有限公司 | 可编程控制器冗余控制方法和系统 |
CN204517393U (zh) * | 2015-04-14 | 2015-07-29 | 上海臻和防雷电气技术有限责任公司 | 一种带有故障恢复功能的视频信号防雷器 |
CN105684366A (zh) * | 2013-10-28 | 2016-06-15 | 阿尔卡特朗讯 | 提供改进的故障恢复的数据传输系统 |
-
2016
- 2016-07-25 CN CN201610589997.8A patent/CN107656887A/zh active Pending
-
2017
- 2017-01-04 WO PCT/CN2017/070162 patent/WO2018018853A1/zh active Application Filing
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5911084A (en) * | 1994-10-07 | 1999-06-08 | Dell Usa, L.P. | System and method for accessing peripheral devices on a non-functional controller |
US20050083833A1 (en) * | 2003-10-16 | 2005-04-21 | Gettala Balachandar S. | System and method for providing communications in a network using a redundant switching architecture |
CN1545268A (zh) * | 2003-11-27 | 2004-11-10 | 中兴通讯股份有限公司 | 一种以太网接口节点备份的方法及系统 |
CN101135909A (zh) * | 2006-06-30 | 2008-03-05 | 株式会社日立制作所 | 诊断装置及方法、总线系统及其控制方法、线路诊断程序 |
CN102130760A (zh) * | 2010-12-10 | 2011-07-20 | 南京科远自动化集团股份有限公司 | 一种12路eBus冗余总线通信装置 |
CN202334558U (zh) * | 2011-11-08 | 2012-07-11 | 扬州恒春电子有限公司 | 总线冗余电路 |
CN105684366A (zh) * | 2013-10-28 | 2016-06-15 | 阿尔卡特朗讯 | 提供改进的故障恢复的数据传输系统 |
CN103941633A (zh) * | 2014-04-29 | 2014-07-23 | 北京依雷特科技有限公司 | 可编程控制器冗余控制方法和系统 |
CN204517393U (zh) * | 2015-04-14 | 2015-07-29 | 上海臻和防雷电气技术有限责任公司 | 一种带有故障恢复功能的视频信号防雷器 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112217704A (zh) * | 2019-07-11 | 2021-01-12 | 恩智浦有限公司 | 收发器与微控制器间的通信 |
CN114281722A (zh) * | 2021-12-29 | 2022-04-05 | 合肥市芯海电子科技有限公司 | 一种双总线接口的嵌入式控制电路、芯片和电子设备 |
WO2023124942A1 (zh) * | 2021-12-29 | 2023-07-06 | 合肥市芯海电子科技有限公司 | 一种双总线接口的嵌入式控制电路、芯片和电子设备 |
CN114281722B (zh) * | 2021-12-29 | 2024-04-05 | 合肥市芯海电子科技有限公司 | 一种双总线接口的嵌入式控制电路、芯片和电子设备 |
CN117331863A (zh) * | 2023-11-23 | 2024-01-02 | 苏州元脑智能科技有限公司 | 电源信息的通信方法、系统、电子设备及存储介质 |
CN117331863B (zh) * | 2023-11-23 | 2024-02-23 | 苏州元脑智能科技有限公司 | 电源信息的通信方法、系统、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
WO2018018853A1 (zh) | 2018-02-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101279440B1 (ko) | 복수 개의 인터페이스들을 지원하는 화상 형성 장치 및 그 장치에서의 네트워크 설정 방법 | |
CN102077588B (zh) | Cec通信装置、使用cec通信装置的影像声音装置及cec通信方法 | |
WO2015000278A1 (zh) | 一种车辆诊断方法及服务器 | |
CN107656887A (zh) | 外设总线的控制装置及方法 | |
CN106559288B (zh) | 一种基于icmp报文的快速故障检测方法 | |
CN110730424A (zh) | 定位方法、装置和系统 | |
US20090177780A1 (en) | Method and apparatus for data processing | |
CN112512017B (zh) | 对智能车载网联终端状态远程监控的信息处理方法及装置 | |
US20040106378A1 (en) | Circuit connection restoration method and program for restoring connection in short time | |
CN103139036B (zh) | 电子设备及其信息处理方法 | |
CN108306939B (zh) | 一种数据处理方法、装置及转发设备 | |
CN106937319B (zh) | 一种无线设备的天线故障自检方法 | |
EP1793626A1 (en) | System and method for implementing service switching | |
CN113300913A (zh) | 一种设备测试方法、装置、测试设备及存储介质 | |
CN108009069B (zh) | 基于功能安全的操作系统和com模块监控装置及方法 | |
US9787532B2 (en) | Module, system and method of switching modules | |
CN104185204B (zh) | 一种连接状态检测方法和装置 | |
CN105472100A (zh) | 桌面共享的方法及终端 | |
CN102136921A (zh) | 一种快速检测计算机宕机的方法及含有该方法的计算机系统 | |
CN109918016B (zh) | 多系统触摸显示设备的触控方法及触控装置 | |
CN102281528B (zh) | 移动终端的升级系统、方法及装置 | |
CN112804073A (zh) | 通过主端管理终端的方法及装置 | |
CN117792954A (zh) | 串行通讯检测方法、设备及存储介质 | |
JP2895878B2 (ja) | モデム装置 | |
JP2746245B2 (ja) | パケット回線試験方式 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20180202 |
|
WD01 | Invention patent application deemed withdrawn after publication |