CN102624511B - 通道建立方法、交换器和通信系统 - Google Patents
通道建立方法、交换器和通信系统 Download PDFInfo
- Publication number
- CN102624511B CN102624511B CN201210054966.4A CN201210054966A CN102624511B CN 102624511 B CN102624511 B CN 102624511B CN 201210054966 A CN201210054966 A CN 201210054966A CN 102624511 B CN102624511 B CN 102624511B
- Authority
- CN
- China
- Prior art keywords
- node
- interchanger
- destination node
- source node
- state
- 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.)
- Active
Links
Landscapes
- Computer And Data Communications (AREA)
Abstract
本发明提供一种通道建立方法、交换器和通信系统,所述通道建立方法包括:交换器接收源节点发送的通信建立请求,所述通信建立请求包括目的节点的标识;所述交换器根据所述目的节点的标识查询所述交换器保存的通道状态表,确定连接所述目的节点的接口处于空闲状态;所述交换器向所述源节点和所述目的节点发送激活信号,使所述源节点和所述目的节点进入激活状态,以建立所述源节点、所述交换器和所述目的节点之间的通道。本发明中,通过该通道,源节点和目的节点在任何时刻均可以进行数据的发送和接收,从而可以实现在进行异步串行通信时,每个节点均可以采用全双工通信方式进行通信,并且每个节点均可以主动发起数据传输。
Description
技术领域
本发明涉及通信技术,尤其涉及一种通道建立方法、交换器和通信系统。
背景技术
在通信领域,两个主机的处理器(或称为通信节点,简称节点)之间的通信通常采用通用异步串行收发器(Universal AsynchronousReceiver/Transmitter;以下简称:UART)进行通信。异步串行收发器之间采用异步串行通信总线互联,最简单的异步串行通信总线由发送信号线(通常用TX表示)和接收信号线(通常用RX表示)两条信号线组成。通用异步串行收发器采用的通信协议是异步串行通信协议,这组通信协议约定了通信双方的传输速率、数据传输的起始和终止状态的表示。由于异步串行通信具有总线信号简单,通信协议简单的特性,因此大量用于处理器和处理器之间的通信,几乎所有高端到低端的处理中都带有若干个UART控制器。但这种由收发器、总线、协议定义的通信方式是一种点到点的通信方式,即异步串行通信总线只能连接两个节点。然而,现代通信系统通常是多处理器系统,并且系统中的处理器两两之间经常需要传递信息。为了达到这个目的,处理器需要设计多个片上UART控制器。例如,一个通信系统中有16个处理器,则每个处理器需要有15个UART控制器和其他处理器互联,这样会大大增加处理器芯片的面积。
为了解决异步串行通信在多节点互联通信的需求,现有技术采用RS485串行通信标准。RS485串行通信标准采用总线式拓扑结构,在同一根总线上可以挂接多个节点(一般最多32个节点)。RS485串行通信标准采用半双工主从通信方式,所谓半双工操作是指通信双方收发不能同时进行,任何时间点内只能有一个节点发送,另一个节点接收,而主从方式是指总线上只有一个设备可以主动发起总线的传输,其他的设备只能被动响应。
但是,上述主从通信方式无法适应现代通信系统的要求,现代通信系统是多处理器系统,每个处理器都希望可以主动发起数据传输;并且,现有技术采用半双工通信方式,任何时间点内只能有一个节点发送,另一个节点接收,通信效率较低。
发明内容
本发明提供一种通道建立方法、交换器和通信系统,以实现在进行异步串行通信时,每个节点均可以采用全双工通信方式,主动发起数据传输。
本发明一方面提供一种通道建立方法,包括:
交换器接收源节点发送的通信建立请求,所述通信建立请求包括目的节点的标识;
所述交换器根据所述目的节点的标识查询所述交换器保存的通道状态表,确定连接所述目的节点的接口处于空闲状态;
所述交换器向所述源节点和所述目的节点发送激活信号,使所述源节点和所述目的节点进入激活状态,以建立所述源节点、所述交换器和所述目的节点之间的通道。
本发明另一方面提供一种交换器,包括:
接收模块,用于接收源节点发送的通信建立请求,所述通信建立请求包括目的节点的标识;
确定模块,用于根据所述接收模块接收的所述目的节点的标识查询所述交换器保存的通道状态表,确定连接所述目的节点的接口处于空闲状态;
发送模块,用于向所述源节点和所述目的节点发送激活信号,使所述源节点和所述目的节点进入激活状态,以建立所述源节点、所述交换器和所述目的节点之间的通道。
本发明又一方面提供一种通信系统,包括至少两个节点和如上所述的交换器。
本发明一方面的技术效果是:交换器接收到源节点发送的包括目的节点的标识的通信建立请求之后,根据该目的节点的标识查询交换器保存的通道状态表,确定连接该目的节点的接口处于空闲状态;然后交换器向源节点和目的节点发送激活信号,使源节点和目的节点进入激活状态,以建立源节点、交换器和目的节点之间的通道;这样,通过该通道,源节点和目的节点在任何时刻均可以进行数据的发送和接收,从而可以实现在进行异步串行通信时,每个节点均可以采用全双工通信方式进行通信,并且每个节点均可以主动发起数据传输。
本发明另一方面的技术效果是:接收模块接收到源节点发送的包括目的节点的标识的通信建立请求之后,确定模块根据上述接收模块接收的目的节点的标识查询该交换器保存的通道状态表,确定连接该目的节点的接口处于空闲状态;然后发送模块向上述源节点和上述目的节点发送激活信号,使源节点和目的节点进入激活状态,以建立源节点、交换器和目的节点之间的通道;这样,通过该通道,源节点和目的节点在任何时刻均可以进行数据的发送和接收,从而可以实现在进行异步串行通信时,每个节点均可以采用全双工通信方式进行通信,并且每个节点均可以主动发起数据传输。
附图说明
图1为本发明通道建立方法一个实施例的流程图;
图2为本发明应用场景一个实施例的示意图;
图3为本发明节点的状态逻辑转换图一个实施例的示意图;
图4为本发明通道建立方法另一个实施例的流程图;
图5为本发明交换器一个实施例的结构示意图;
图6为本发明交换器另一个实施例的结构示意图;
图7为本发明交换器再一个实施例的结构示意图;
图8为本发明数据接收状态逻辑的状态转换一个实施例的示意图;
图9为本发明交换调度器一个实施例的结构示意图;
图10为本发明事件处理逻辑的状态转换一个实施例的示意图。
具体实施方式
图1为本发明通道建立方法一个实施例的流程图,如图1所示,该通道建立方法可以包括:
步骤101,交换器接收源节点发送的通信建立请求,该通信建立请求包括目的节点的标识。
本实施例中,该目的节点的标识可以为该目的节点的编号或其他可以唯一表示该目的节点的标识,本实施例对该目的节点的标识的具体形式不作限定。
步骤102,交换器根据该目的节点的标识查询交换器保存的通道状态表,确定连接上述目的节点的接口处于空闲状态。
进一步地,交换器根据该目的节点的标识查询交换器保存的通道状态表之后,当确定连接上述目的节点的接口处于非空闲状态,例如激活状态或通信建立请求状态时,该交换器向源节点发送指示信息,该指示信息用于指示连接上述目的节点的接口处于非空闲状态,以使源节点回到空闲状态。
步骤103,交换器向源节点和目的节点发送激活信号,使源节点和目的节点进入激活状态,以建立源节点、交换器和目的节点之间的通道。
本实施例中,进一步地,步骤102之后,交换器还可以将通道状态表中与连接上述目的节点的接口对应的状态置为激活状态,将通道状态表中与连接上述源节点的接口对应的状态置为激活状态,以及将通道状态表中上述通道对应的状态置为激活状态。
本实施例中,进一步地,步骤103之后,交换器可以将源节点发送的数据发送给目的节点;和/或,将目的节点发送的数据发送给源节点。也就是说,建立源节点、交换器和目的节点之间的通道之后,源节点和目的节点可以通过该通道进行数据传输,并且在任何时刻源节点和目的节点均可以进行数据的发送和接收。
本实施例中,上述通信建立请求还可以包括请求标识;则上述交换器还可以接收源节点或目的节点发送的数据发送指示,该数据发送指示是源节点或目的节点在待发送的数据与上述请求标识相同时发送给上述交换器的,以指示在上述数据发送指示之后发送的内容为源节点或目的节点的待发送数据。其中,该请求标识表示请求与上述目的节点进行通信;也就是说,在具体实现时,该通信建立请求的形式可以为“请求标识+目的节点的标识”,假设请求标识为0x55,目的节点的标识为节点2,则在交换器接收到“0x55+节点2”之后,该交换器可以获知源节点请求与节点2进行通信。
本实施例中,交换器可以将接收到的通信建立请求保存在上述交换器的事件缓存队列中;在建立源节点、交换器和目的节点之间的通道之后,交换器将上述通信建立请求从事件缓存队列中删除。
进一步地,步骤103之后,交换器接收到源节点或目的节点发送的通信终止请求之后,该交换器向上述源节点和上述目的节点发送通道拆除指示,使上述源节点和上述目的节点回到空闲状态。同时,交换器接收到源节点或目的节点发送的通信终止请求之后,该交换器可以将上述通道状态表中与连接目的节点的接口对应的状态置为空闲状态,将通道状态表中与连接源节点的接口对应的状态置为空闲状态,以及将上述通道状态表中上述通道对应的状态置为空闲状态。
同样,交换器可以将接收到的通信终止请求保存在该交换器的事件缓存队列中;交换器向上述源节点和所述目的节点发送通道拆除指示之后,该交换器将上述通信终止请求从事件缓存队列中删除。
上述实施例中,交换器接收到源节点发送的包括目的节点的标识的通信建立请求之后,根据该目的节点的标识查询交换器保存的通道状态表,确定连接该目的节点的接口处于空闲状态;然后交换器向源节点和目的节点发送激活信号,使源节点和目的节点进入激活状态,以建立源节点、交换器和目的节点之间的通道;这样,通过该通道,源节点和目的节点在任何时刻均可以进行数据的发送和接收,从而可以实现在进行异步串行通信时,每个节点均可以采用全双工通信方式进行通信,并且每个节点均可以主动发起数据传输。
本发明图1所示实施例提供的方法可以应用在本发明图2所示的应用场景中,图2为本发明应用场景一个实施例的示意图,如图2所示,节点1~节点8(这里的节点数目只是举例说明,节点数目可以根据实际需要扩展)通过各自的异步串行通信总线与交换器互联。节点1~节点8之间的任意两个节点之间的通信通过交换器转发。交换器通过本发明图1所示实施例提供的方法可以实现多组节点之间的同时通信,并且每个节点均可以主动发起数据传输,还可实现串行通信速率的自行匹配、组播通信和广播通信等功能。
本发明提供的通道建立方法可以协调多节点异步串行通信的有序完成。本发明中各节点的状态逻辑转换如图3所示,图3为本发明节点的状态逻辑转换图一个实施例的示意图。当节点没有数据通信时,处于空闲状态;若节点有通信需求,则向交换器发出通信建立请求(例如:0x55),节点进入通信建立请求状态;如果节点在空闲状态下接收到交换器发送的激活信号(例如:0x55),则进入激活状态;当节点处于通信建立请求状态时,如果节点接收到交换器发送的指示信息(例如:0xAA),该指示信息用于指示节点回到空闲状态,则接收到上述指示信息之后,该节点回到空闲状态;当节点处于通信建立请求状态时,如果节点接收到交换器回应的激活信号(例如:0x55),则该节点进入激活状态;当节点处于激活状态时,可以进行数据传输。当节点完成数据传输后,节点可以向交换器发送通信终止请求(例如:0x55),以请求拆除通信回到空闲状态,并在接收到交换器发送的通道拆除指示(例如:0x55)后回到空闲状态。也就是说,当节点处于空闲状态或通信建立请求状态时,如果该节点接收到交换器发送的0x55,则该节点进入激活状态,在节点完成数据传输后,节点向交换器发送0x55,以告知交换器数据传输已完毕,请求拆除通信回到空闲状态;在节点向交换器发送0x55之后,如果该节点接收到交换器发送的0x55,则该节点可以获知交换器指示其回到空闲状态,于是该节点回到空闲状态。
需要说明的是,在数据传输过程中,如果节点待发送的数据为0x55,即节点待发送的数据(0x55)与请求标识(0x55)相同,则该节点需要先发送数据发送指示,再发送待发送的数据(0x55),该数据发送指示用于指示在该数据发送指示之后发送的内容为节点的待发送数据。举例来说,该数据发送指示可以为0x01,当然本发明并不仅限于此,该数据发送指示也可以为其他字符、字节和/或数字等,本发明对该数据发送指示的形式不作限定,只要该数据发送指示可以指示在该数据发送指示之后发送的内容为节点的待发送数据即可。
同样,在数据传输过程中,如果节点待发送的数据为0xAA,也需要先发送数据发送指示(例如:0x01),再发送上述待发送的数据(0xAA)。
图4为本发明通道建立方法另一个实施例的流程图,本实施例以图2中节点1和节点2之间的通道建立过程为例进行说明。
如图4所示,该通道建立方法可以包括:
步骤401,交换器接收节点1发送的通信建立请求。
本实施例中,该通信建立请求包括请求标识(例如:0x55)和节点2的标识,表示节点1请求与节点2进行通信。其中,节点2的标识可以为节点2的编号或其他可以唯一表示节点2的标识,本实施例对节点2的标识的具体形式不作限定。
步骤402,交换器根据节点2的标识查询该交换器保存的通道状态表,确定连接节点2的接口是否处于空闲状态。如果是,则执行步骤403;如果连接节点2的接口处于非空闲状态,则执行步骤407。
其中,上述非空闲状态可以为激活状态或通信建立请求状态。
步骤403,交换器向节点1和节点2发送激活信号,使节点1和节点2进入激活状态。
本实施例中,节点1和节点2均处于激活状态时,节点1、交换器和节点2之间的通道建立完成,交换器可以将通道状态表中与连接节点1的接口对应的状态置为激活状态,将通道状态表中与连接节点2的接口对应的状态置为激活状态,以及将通道状态表中上述通道对应的状态置为激活状态。
步骤404,节点1和节点2通过上述通道进行通信。
具体地,节点1和节点2可以通过上述通道按照正常的异步通信协议进行通信。
步骤405,交换器接收节点1或节点2发送的通信终止请求。
本实施例中,当通信双方中的任意一方决定终止通信时,可以向交换器发送通信终止请求,例如:0x55。
步骤406,交换器向节点1和节点2发送通道拆除指示,使节点1和节点2回到空闲状态。
本实施例中,接收到通信终止请求,例如:0x55之后,交换器向节点1和节点2发送通道拆除指示,例如:0x55,使节点1和节点2回到空闲状态。
另外,在接收到上述通信终止请求之后,交换器会将上述通道状态表中与连接节点1的接口对应的状态置为空闲状态,将通道状态表中与连接节点2的接口对应的状态置为空闲状态,以及将上述通道状态表中上述通道对应的状态置为空闲状态。
同样,在节点1与节点2进行通信的过程中,如果节点1和/或节点2待发送的数据为0x55,即待发送的数据(0x55)与请求标识(0x55)相同,则需要先发送数据发送指示,再发送待发送的数据(0x55),该数据发送指示用于指示在该数据发送指示之后发送的内容为待发送的数据。举例来说,该数据发送指示可以为0x01,当然本发明并不仅限于此,该数据发送指示也可以为其他字符、字节和/或数字等,本发明对该数据发送指示的形式不作限定,只要该数据发送指示可以指示在该数据发送指示之后发送的内容为待发送的数据即可。
同样,在数据传输过程中,如果节点1和/或节点2待发送的数据为0xAA,也需要先发送数据发送指示(例如:0x01),再发送上述待发送的数据(0xAA)。
步骤407,交换器向节点1发送指示信息,该指示信息用于指示连接节点2的接口处于非空闲状态,以使节点1回到空闲状态。
本实施例中,如果交换器确定连接节点2的接口处于非空闲状态,例如激活状态或通信建立请求状态,则该交换器向节点1发送指示信息(例如:0xAA),该指示信息用于指示连接节点2的接口处于非空闲状态,以使节点1回到空闲状态。节点1等待一段随机的时间后重新发起请求,直到请求成功。
上述实施例可以实现在进行异步串行通信时,每个节点均可以采用全双工通信方式进行通信,并且每个节点均可以主动发起数据传输。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
图5为本发明交换器一个实施例的结构示意图,本实施例中的交换器可以实现本发明图1所示实施例的流程。如图5所示,该交换器可以包括:接收模块51、确定模块52和发送模块53;
其中,接收模块51,用于接收源节点发送的通信建立请求,该通信建立请求包括目的节点的标识;
确定模块52,用于根据接收模块51接收的上述目的节点的标识查询该交换器保存的通道状态表,确定连接上述目的节点的接口处于空闲状态;
发送模块53,用于向源节点和目的节点发送激活信号,使源节点和目的节点进入激活状态,以建立源节点、交换器和目的节点之间的通道。
进一步地,发送模块53还可以当确定模块52确定连接上述目的节点的接口处于非空闲状态时,向源节点发送指示信息,该指示信息用于指示连接上述目的节点的接口处于非空闲状态,以使源节点回到空闲状态。
上述实施例中,接收模块51接收到源节点发送的包括目的节点的标识的通信建立请求之后,确定模块52根据上述接收模块接收的目的节点的标识查询该交换器保存的通道状态表,确定连接该目的节点的接口处于空闲状态;然后发送模块53向上述源节点和上述目的节点发送激活信号,使源节点和目的节点进入激活状态,以建立源节点、交换器和目的节点之间的通道;这样,通过该通道,源节点和目的节点在任何时刻均可以进行数据的发送和接收,从而可以实现在进行异步串行通信时,每个节点均可以采用全双工通信方式进行通信,并且每个节点均可以主动发起数据传输。
图6为本发明交换器另一个实施例的结构示意图,与图5所示的交换器相比,不同之处在于,图6所示的交换器还可以包括:
状态设置模块54,用于在确定模块52确定连接所述目的节点的接口处于空闲状态之后,将通道状态表中与连接目的节点的接口对应的状态置为激活状态,将上述通道状态表中与连接源节点的接口对应的状态置为激活状态,以及将上述通道状态表中上述通道对应的状态置为激活状态。
进一步地,接收模块51,还用于接收源节点发送的数据,和/或接收目的节点发送的数据;发送模块53,还用于将源节点发送的数据发送给目的节点,和/或将目的节点发送的数据发送给源节点。
进一步地,接收模块51,还用于接收源节点或目的节点发送的数据发送指示,该数据发送指示是源节点或目的节点在待发送的数据与上述通信建立请求包括的请求标识相同时发送给上述交换器的,以指示在该数据发送指示之后发送的内容为上述源节点或上述目的节点的待发送数据;其中,该请求标识表示请求与上述目的节点进行通信。也就是说,在具体实现时,该通信建立请求的形式可以为“请求标识+目的节点的标识”,假设请求标识为0x55,目的节点的标识为节点2,则在交换器接收到“0x55+节点2”之后,该交换器可以获知源节点请求与节点2进行通信。
进一步地,该通道建立交换器还可以包括:保存模块55和删除模块56;
保存模块55,用于将接收模块51接收到的通信建立请求保存在上述交换器的事件缓存队列中;
删除模块56,用于在建立源节点、交换器和目的节点之间的通道之后,将上述通信建立请求从事件缓存队列中删除。
本实施例中,进一步地,接收模块51,还用于接收源节点或目的节点发送的通信终止请求;发送模块53,还用于向源节点和目的节点发送通道拆除指示,使源节点和目的节点回到空闲状态。
这时,状态设置模块54,还用于在接收模块51接收到通信终止请求之后,将通道状态表中与连接上述目的节点的接口对应的状态置为空闲状态,将上述通道状态表中与连接源节点的接口对应的状态置为空闲状态,以及将通道状态表中上述通道对应的状态置为空闲状态。
保存模块55,还用于将接收模块51接收到的通信终止请求保存在上述交换器的事件缓存队列中;
删除模块56,还用于在发送模块53向上述源节点和上述目的节点发送通道拆除指示之后,将上述通信终止请求从事件缓存队列中删除。
上述交换器可以实现在进行异步串行通信时,每个节点均可以采用全双工通信方式进行通信,并且每个节点均可以主动发起数据传输。
本发明图5或图6所示实施例提供的交换器,可以作为路由器或交换机等交换设备,或者作为路由器或交换机等交换设备的一部分实现本发明提供的方法。
图7为本发明交换器再一个实施例的结构示意图,如图7所示,该交换器可以包括:至少两个异步串行通信接口模块71和交换调度器72。
其中,上述至少两个异步串行通信接口模块71包括接收器711和发送器712;本实施例中,接收器711可以实现本发明图5和图6所示实施例中接收模块51的功能,发送器712可以实现本发明图5和图6所示实施例中发送模块53的功能。
在具体实现时,接收器711可以由硬件接收单元、数据帧缓存、数据接收状态逻辑和虚拟出口缓存组成;发送器712可以由数据帧缓存和硬件发送单元组成。
本实施例中,接收器711的数据接收状态逻辑的状态转换可以如图8所示,图8为本发明数据接收状态逻辑的状态转换一个实施例的示意图。在没有数据通信时数据接收状态逻辑处于空闲状态,当接收到节点发出的通信建立请求,例如:0x55时,进入通信建立请求状态;当接收到交换调度器72发出的激活(Active)信号时,进入激活状态。当处于通信建立请求状态时,若收到交换调度器72发送的确认(Acknowledge;以下简称:ACK)信号,则进入激活状态,若接收到交换调度器72发送的(Negative Acknowledge;以下简称:NAK)信号,则进入空闲状态。当处于激活状态时,可以进行数据传输;当处于激活状态时,如果接收到节点发送的通信终止请求,例如:0x55或者交换调度器72发送的IDLE信号后,回到空闲状态。
图9为本发明交换调度器一个实施例的结构示意图,如图9所示,上述交换调度器72可以包括:事件缓存器91、事件处理逻辑92、通道状态表93和数据转发逻辑94。
事件缓存器91是一个先入先出(First Input First Output;以下简称:FIFO)类型的存储器,可以由各个异步串行通信接口模块71的接收器711或者事件处理逻辑92写入,每次写入一个事件。所有事件在事件缓存器91中排队等待处理,事件处理逻辑92从缓存队列中取出最前面的事件消息,进行处理。其中,事件处理逻辑92的状态转换可以如图10所示,图10为本发明事件处理逻辑的状态转换一个实施例的示意图。
本实施例中,事件消息只有两种:通信建立请求事件和通信终止请求事件。如图10所示,如果处理的是通信建立请求事件,则事件处理逻辑92需要判断请求的通道是否处于空闲状态,如果是,则建立通道,在通道状态表93中将该通道的状态设为激活状态,并将上述通信建立请求事件从缓存队列中删除,同时置通道两端的两个接口为激活状态。如果不是,则回应请求的节点一个指示信息(例如:0xAA)使其回到空闲状态以便重新请求,并向连接上述请求的节点的异步串行通信接口模块71发送NAK信号,使其也回到空闲状态。如果处理的是通信终止请求事件,则事件处理逻辑92拆除通道,将通道状态表93中该通道的状态设为空闲状态,删除上述通信终止请求事件,并将通道两端的两个异步串行通信接口模块71置为空闲状态。
本实施例中,上述事件处理逻辑92可以实现本发明图5和图6所示实施例中确定模块52,以及图6所示实施例中状态设置模块54、保存模块55和删除模块56的功能。
数据转发逻辑94根据通道状态表93中的通道状态,采取分时复用的方式,以轮询的方法将激活的各通道的接收器711的数据搬移到发送器712,实现通信。
上述交换器可以实现在进行异步串行通信时,每个节点均可以采用全双工通信方式进行通信,并且每个节点均可以主动发起数据传输。
本发明还提供一种通信系统,该通信系统可以包括至少两个节点和交换器,该交换器可以通过本发明图5、图6或图7所示的交换器实现。举例来说,该通信系统的结构示意图可以如图2所示,在此不再赘述。
本发明提供的通道建立方法、交换器和通信系统同样可应用于其他点到点的通信方式,本发明可以使异步串行通信使用于多节点全双工通信,可以保证每个节点可以在任何时刻发起通信,并可以保证多组节点的异步通信同时进行。另外,本发明还可以实现异步串行通信各节点之间的速率匹配,使各节点可以在不同通信速率下实现通信,还可实现异步串行通信的组播和广播功能。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (17)
1.一种通道建立方法,其特征在于,用于异步串行通信,包括:
交换器接收源节点发送的通信建立请求,所述通信建立请求包括目的节点的标识;
所述交换器根据所述目的节点的标识查询所述交换器保存的通道状态表,确定连接所述目的节点的接口处于空闲状态;
所述交换器向所述源节点和所述目的节点发送激活信号,使所述源节点和所述目的节点进入激活状态,以建立所述源节点、所述交换器和所述目的节点之间的通道。
2.根据权利要求1所述的方法,其特征在于,所述交换器根据所述目的节点的标识查询所述交换器保存的通道状态表之后,还包括:
当确定连接所述目的节点的接口处于非空闲状态时,所述交换器向所述源节点发送指示信息,所述指示信息用于指示连接所述目的节点的接口处于非空闲状态,以使所述源节点回到空闲状态。
3.根据权利要求1或2所述的方法,其特征在于,所述确定连接所述目的节点的接口处于空闲状态之后,还包括:
所述交换器将所述通道状态表中与所述连接所述目的节点的接口对应的状态置为激活状态,将所述通道状态表中与连接所述源节点的接口对应的状态置为激活状态,以及将所述通道状态表中所述通道对应的状态置为激活状态。
4.根据权利要求1或2所述的方法,其特征在于,所述通信建立请求还包括请求标识,所述请求标识表示请求与所述目的节点进行通信;
所述方法还包括:
所述交换器接收所述源节点或所述目的节点发送的数据发送指示,所述数据发送指示是所述源节点或所述目的节点在待发送的数据与所述请求标识相同时发送给所述交换器的,以指示在所述数据发送指示之后发送的内容为所述源节点或所述目的节点的待发送数据。
5.根据权利要求1或2所述的方法,其特征在于,还包括:
所述交换器将接收到的所述通信建立请求保存在所述交换器的事件缓存队列中;
在建立所述源节点、所述交换器和所述目的节点之间的通道之后,所述交换器将所述通信建立请求从所述事件缓存队列中删除。
6.根据权利要求1或2所述的方法,其特征在于,所述建立所述源节点、所述交换器和所述目的节点之间的通道之后,还包括:
所述交换器接收所述源节点或所述目的节点发送的通信终止请求;
所述交换器向所述源节点和所述目的节点发送通道拆除指示,使所述源节点和所述目的节点回到空闲状态。
7.根据权利要求6所述的方法,其特征在于,所述交换器接收所述源节点或所述目的节点发送的通信终止请求之后,还包括:
所述交换器将所述通道状态表中与所述连接所述目的节点的接口对应的状态置为空闲状态,将所述通道状态表中与连接所述源节点的接口对应的状态置为空闲状态,以及将所述通道状态表中所述通道对应的状态置为空闲状态。
8.根据权利要求6所述的方法,其特征在于,还包括:
所述交换器将接收到的所述通信终止请求保存在所述交换器的事件缓存队列中;
所述交换器向所述源节点和所述目的节点发送通道拆除指示之后,所述交换器将所述通信终止请求从所述事件缓存队列中删除。
9.一种交换器,其特征在于,用于异步串行通信,包括:
接收模块,用于接收源节点发送的通信建立请求,所述通信建立请求包括目的节点的标识;
确定模块,用于根据所述接收模块接收的所述目的节点的标识查询所述交换器保存的通道状态表,确定连接所述目的节点的接口处于空闲状态;
发送模块,用于向所述源节点和所述目的节点发送激活信号,使所述源节点和所述目的节点进入激活状态,以建立所述源节点、所述交换器和所述目的节点之间的通道。
10.根据权利要求9所述的交换器,其特征在于,
所述发送模块,还用于当所述确定模块确定连接所述目的节点的接口处于非空闲状态时,向所述源节点发送指示信息,所述指示信息用于指示连接所述目的节点的接口处于非空闲状态,以使所述源节点回到空闲状态。
11.根据权利要求9或10所述的交换器,其特征在于,还包括:
状态设置模块,用于在所述确定模块确定连接所述目的节点的接口处于空闲状态之后,将所述通道状态表中与所述连接所述目的节点的接口对应的状态置为激活状态,将所述通道状态表中与连接所述源节点的接口对应的状态置为激活状态,以及将所述通道状态表中所述通道对应的状态置为激活状态。
12.根据权利要求9或10所述的交换器,其特征在于,
所述接收模块,还用于接收所述源节点或所述目的节点发送的数据发送指示,所述数据发送指示是所述源节点或所述目的节点在待发送的数据与所述通信建立请求包括的请求标识相同时发送给所述交换器的,以指示在所述数据发送指示之后发送的内容为所述源节点或所述目的节点的待发送数据;所述请求标识表示请求与所述目的节点进行通信。
13.根据权利要求9或10所述的交换器,其特征在于,还包括:
保存模块,用于将所述接收模块接收到的所述通信建立请求保存在所述交换器的事件缓存队列中;
删除模块,用于在建立所述源节点、所述交换器和所述目的节点之间的通道之后,将所述通信建立请求从所述事件缓存队列中删除。
14.根据权利要求9或10所述的交换器,其特征在于,
所述接收模块,还用于接收所述源节点或所述目的节点发送的通信终止请求;
所述发送模块,还用于向所述源节点和所述目的节点发送通道拆除指示,使所述源节点和所述目的节点回到空闲状态。
15.根据权利要求11所述的交换器,其特征在于,
所述状态设置模块,还用于在所述接收模块接收到通信终止请求之后,将所述通道状态表中与所述连接所述目的节点的接口对应的状态置为空闲状态,将所述通道状态表中与连接所述源节点的接口对应的状态置为空闲状态,以及将所述通道状态表中所述通道对应的状态置为空闲状态。
16.根据权利要求13所述的交换器,其特征在于,
所述保存模块,还用于将所述接收模块接收到的通信终止请求保存在所述交换器的事件缓存队列中;
所述删除模块,还用于在所述发送模块向所述源节点和所述目的节点发送通道拆除指示之后,将所述通信终止请求从所述事件缓存队列中删除。
17.一种通信系统,其特征在于,用于异步串行通信,包括至少两个节点和如权利要求9-16任意一项所述的交换器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210054966.4A CN102624511B (zh) | 2012-03-05 | 2012-03-05 | 通道建立方法、交换器和通信系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210054966.4A CN102624511B (zh) | 2012-03-05 | 2012-03-05 | 通道建立方法、交换器和通信系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102624511A CN102624511A (zh) | 2012-08-01 |
CN102624511B true CN102624511B (zh) | 2015-01-21 |
Family
ID=46564204
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210054966.4A Active CN102624511B (zh) | 2012-03-05 | 2012-03-05 | 通道建立方法、交换器和通信系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102624511B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109698843A (zh) * | 2017-10-20 | 2019-04-30 | 中兴通讯股份有限公司 | 一种实现数据传输的方法及装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1122079A (zh) * | 1994-07-05 | 1996-05-08 | 摩托罗拉公司 | 在通信网中用于自适应路由选择的方法和装置 |
CN1245605A (zh) * | 1996-12-09 | 2000-02-23 | 艾利森公司 | 在一个单独信道上的异步全双工通信 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5923705A (en) * | 1996-07-18 | 1999-07-13 | Qualcomm Incorporated | UART based autobauding without data loss |
-
2012
- 2012-03-05 CN CN201210054966.4A patent/CN102624511B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1122079A (zh) * | 1994-07-05 | 1996-05-08 | 摩托罗拉公司 | 在通信网中用于自适应路由选择的方法和装置 |
CN1245605A (zh) * | 1996-12-09 | 2000-02-23 | 艾利森公司 | 在一个单独信道上的异步全双工通信 |
Non-Patent Citations (2)
Title |
---|
全双工RS485总线发送机制的研究;李乐等;《中国仪器仪表》;20080225(第2期);全文 * |
基于有限状态机实现全双工可编程UART;曹会华等;《计算机技术与发展》;20070210;第17卷(第2期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN102624511A (zh) | 2012-08-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5931915A (en) | Method for processing early arrival messages within a multinode asynchronous data communications system | |
CN102480426B (zh) | 基于pcie交换总线的通信方法及一种pcie交换系统 | |
CN106533872B (zh) | 用于提高fc-ae-1553总线传输效率的系统 | |
CN103248526A (zh) | 实现带外监控管理的通信设备、方法及主从切换方法 | |
CN105808364B (zh) | 融合PC系统和android系统的双系统通信方法和系统 | |
CN103885910B (zh) | 多设备在主模式下进行iic通信的方法 | |
CN103650401A (zh) | 一种移动终端内部通信方法 | |
JPH04239950A (ja) | 接続保留制御方式 | |
WO2012013080A1 (zh) | 一种数据透明传输的方法及系统 | |
CN102624511B (zh) | 通道建立方法、交换器和通信系统 | |
US5878226A (en) | System for processing early arrival messages within a multinode asynchronous data communications system | |
JPS5992651A (ja) | ポ−リング方式 | |
CN1964286B (zh) | 具有双cpu的主控设备 | |
CN107222379A (zh) | 一种串口通信的方法和装置 | |
CN113965432B (zh) | 一种双通道can总线通信的控制系统 | |
CN116126756A (zh) | 一种基于fmql的srio实现装置及方法 | |
US6064647A (en) | Method and system for sending frames around a head of line blocked frame in a connection fabric environment | |
CN100411380C (zh) | 一种网络数据交换中同步与异步间的转换方法 | |
JPH054040Y2 (zh) | ||
US9647976B2 (en) | Method and device for implementing end-to-end hardware message passing | |
JPS61200733A (ja) | フロ−制御方式 | |
JPS63155249A (ja) | 装置間通信方式 | |
JPS5811146B2 (ja) | ポ−リングエミュレ−タを用いた通信方式 | |
JPS62296640A (ja) | 装置間通信制御方式 | |
JPS61214829A (ja) | 系間通信制御方式 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CP01 | Change in the name or title of a patent holder |
Address after: Cangshan District of Fuzhou City, Fujian province 350002 Jinshan Road No. 618 Garden State Industrial Park 19 floor Patentee after: RUIJIE NETWORKS Co.,Ltd. Address before: Cangshan District of Fuzhou City, Fujian province 350002 Jinshan Road No. 618 Garden State Industrial Park 19 floor Patentee before: Beijing Star-Net Ruijie Networks Co.,Ltd. |
|
CP01 | Change in the name or title of a patent holder |