专利名称:一种总线通信方法、总线通信单元及系统的制作方法
技术领域:
本发明涉及通信领域,尤其涉及一种总线通信方法、总线通信单元及系统。
背景技术:
随着集成电路技术和网络技术的发展,对板间互联、母板与子卡(母板,如主板;子卡是相对于母板来说的,是母板的扩展,通过连接器与母板相连,比如插在电脑主板上的网卡和显卡都属于子卡)互联的带宽要求越来越高。高速串行总线应用也越来越广,像IOG以太网连接单元接口 XAUI总线、新一代数据包互联协议Interlaken总线等越来越多的应用于板间互联、母板与子卡互联。由于高速串行链路对信号完整性要求很高,随着高速串行链路数量增加,用于板间互联、母板与子卡互联的高速连接器为低速接口预留的引脚数量越来越少。但是有时中央处理器(CPU )总线接口作为配置功能的首选接口是必不可缺少的,这样就产生了矛盾。 解决上述矛盾的现有技术方案主要有下面几种1)增加连接器数量。此种方案适用于布局空间比较充裕的单板或子卡设计,对于一些布局非常紧张的单板或子卡这种方案不适用,而且随着单板、子卡设计复杂度的增加,增加连接器数量的方案受到了极大地限制。2)减少闻速串行链路数量,提闻闻速串行链路速率。随着闻速串行链路速率的提闻,对高速串行链路走线长度、连接器选择、PCB板材选择、过孔残桩处理等要求也越来越高,接收和发送器件也必须支持相应的高速串行链路速率,这些大幅度增加了单板、子卡的成本。3)采用PCIE总线替代CPU总线。此种方案的使用有一定局限性,要求所访问的器件支持PCIE总线接口,然而,目前绝大多数地器件采用的是CPU总线接口。4)使用IIC总线。因IIC总线速率低,此种方案的使用有一定局限性。5)并行总线串行化。将并行总线转化成串行总线,此种方案逻辑处理复杂,对PCB走线的要求高,并且为了保证带宽,还要求串行总线的速率较高。
发明内容
本发明提供一种总线通信方法、总线通信单元及系统,解决现有技术中两通信单元利用总线进行通信时,接口引脚不够用,为低速接口预留的引脚数量越来越少的问题。为解决上述技术问题,本发明采取以下技术方案。一种总线通信方法,包括将本端单元待传输的信息转换成I个或多个数据段,各数据段由N个比特组成,其中N > I ;所述待传输的信息包括地址信息、数据信息和控制信息,或者所述待传输的信息包括地址信息和控制信息;将各数据段通过位宽为N的数据总线传递至对端单元。在本发明一实施例中,总线通信方法还包括通过所述位宽为N的数据总线接收所述对端单元反馈的数据段形式的响应信息,并将所述数据段形式的响应信息转换成相应的数据信息。在本发明一实施例中,将本端单元待传输的信息转换成I个或多个数据段的方法具体为先将本端单元待传输的各种信息进行合并,对合并后的信息进行数据段转换;或者对本端单元待传输的各种信息分别进行数据段转换。在本发明一实施例中,对本端单元待传输的各种信息分别进行数据段转换的过程中将待传输的控制信息转换成I个数据段。在本发明一实施例中,所述控制信息包括片选信号、读信号和/或写信号。在本发明一实施例中,所述数据段为由8个比特组成的字节。在本发明一实施例中,将各数据段通过位宽为N的数据总线传递至对端单元之前,还包括将数据段组成一个或多个数据帧,将各数据帧中的各数据段通过位宽为N的数据总线传递至对端单元。
·
一种总线通信单元,包括数据段转换模块和接口模块,其中,所述数据段转换模块用于将待传输的信息转换成I个或多个数据段,各数据段由N个比特组成,其中N > I ;所述待传输的信息包括地址信息、数据信息和控制信息,或者所述待传输的信息包括地址信息和控制信息;所述接口模块用于将各数据段通过位宽为N的数据总线传递至对端单元。在本发明一实施例中,所述接口模块还用于通过所述位宽为N的数据总线接收所述对端单元反馈的数据段形式的响应信息;所述数据段转换模块还用于将所述数据段形式的响应信息转换成相应的数据信息。在本发明一实施例中,所述数据段转换模块包括合并模块和第一子转换模块;所述合并模块用于先将待传输的各种信息进行合并;所述第一子转换模块用于对合并后的信息进行数据段转换;或者所述数据段转换模块包括第二子转换模块,用于对待传输的各种信息分别进行数据段转换。在本发明一实施例中,所述总线通信单元还包括组帧模块,用于将数据段组成一个或多个数据帧;所述接口模块用于将各数据帧中的各数据段通过位宽为N的数据总线传递至对端单元。一种总线通信系统包括通过位宽为N的数据总线进行通信的本端单元和对端单元,其中,所述本端单元为上述任一项所述的总线通信单元;所述对端单元用于通过所述位宽为N的数据总线接收所述本端单元发送的数据段,并由接收的数据段还原出相应的地址信息、数据信息和控制信息。在本发明一实施例中,所述对端单元还用于根据还原出的数据信息生成响应信息;将所述响应信息转换成I个或多个数据段,各数据段由N个比特组成,其中N > I ;将各数据段通过所述位宽为N的数据总线反馈至所述本端单元。本发明的有益效果是本发明提供的总线通信方法、总线通信单元及系统,依靠位宽为N的数据总线,便可以将本端单元待传输的信息传递至对端单元,本端单元需要向对端单元写入数据时,本端单元待传输的信息包括地址信息、数据信息和控制信息,本端单元需要从对端单元读取数据时,本端单元待传输的信息包括地址信息和控制信息。相对于现有技术中,在两总线通信单元之间,使用相应位宽的地址总线传递地址信息、使用相应位宽的数据总线传递数据信息、使用相应位宽的控制总线传递控制信息的方案而言,可大大减少接口引脚。
图Ia为本发明一实施例提供的数据段与数据总线一一对应的示意图;图Ib为本发明另一实施例提供的数据段与数据总线一一对应的示意图;图Ic为本发明另一实施例提供的数据段与数据总线一一对应的示意图;图2为本发明一实施例提供的总线通信系统的示意图;图3为现有技术中总线通信系统的示意图;图4为本发明另一实施例提供的总线通信系统的示意图。
具体实施方式
本发明的主要构思是当本端单元需要向对端单元写入数据时,本端单元将待传输的地址信息(数据信息的地址信息)、数据信息(包括需要写入的信息)和控制信息(此种情况下,控制信息包括写信号,或者包括片选信号和写信号)转换成Ml个数据段,各数据段由N个比特组成,其中N彡LMl ^ I ;再将各数据段通过位宽为N的数据总线传递至对端单元,由于各个数据段由N个比特组成,所以位宽为N的数据总线一次传递一个数据段,通过Ml次便可以将该Ml个数据段传递至对端单元;对端单元接收到本端单元发送的Ml个数据段之后,按照相应的解析规则进行解析,还原出地址信息、数据信息和控制信息,根据控制信息中的写信号,将数据信息写入相应的器件。当本端单元需要从对端单元读取数据时,本端单元将待传输的地址信息和控制信息(此种情况下,控制信息包括读信号;或者包括片选信号和读信号)转换成M2个数据段,各数据段由N个比特组成,其中N彡I,M2彡I ;再将各数据段通过位宽为N的数据总线传递至对端单元,位宽为N的数据总线一次传递一个数据段,通过M2次便可以将该M2个数据段传递至对端单元;对端单元接收到本端单元发送的M2个数据段之后,按照相应的解析规则进行解析,还原出地址信息和控制信息,根据控制信息中的读信号,产生相应的响应信息(读结果),并按照与本端单元相同的转换规则将该响应信息转换成M3个数据段,各数据段同样由N个比特组成,M3 ^ 1,将各数据段通过该位宽为N的数据总线反馈至本端单元,位宽为N的数据总线一次传递一个数据段,通过M3次便可以将该M3个数据段传递至本端单元;本端单元通过该位宽为N的数据总线接收到数据段形式的响应信息后,按照相应地解析规则进行解析,还原出对端单元所反馈的响应信息。本端单元具体可以是主单板,相应地,对端单元可以是从单板,本端单元还可以是母卡,相应地,对端单元可以是子卡。本端单元或对端单元将各数据段通过位宽为N的数据总线进行传递时,位宽N与组成数据段的比特数N对应,数据段的每一个比特与位宽为N的数据总线各线路是一对一的对应关系。为了能够详尽的描述一一对应的关系,假设N=8,即数据段由8个比特组成,那么本端单元与对端单元之间用于传输数据段的数据总线的位宽也为8,用位O、位I、位2、位
3、位4、位5、位6、位7表示数据段8个比特,用L0、LI、L2、L3、L4、L5、L6、L7表示位宽为8的数据总线,数据段的各比特与数据总线线路可以按照高低位的顺序一一对应,如图Ia所示,位O与LO对应、位I与LI对应、位2与L2对应、位3与L3对应、位4与L4对应、位5与L5对应、位6与L6对应、位7与L7对应。数据段的各比特与数据总线线路可以按照高
低位交错的顺序--对应,如图Ib所示,与图Ia的对应顺序相反,位O与L7对应、位I与
L6对应、位2与L5对应、位3与L4对应、位4与L3对应、位5与L2对应、位6与LI对应、位7与LO对应。也可以是任意顺序的——对应,如图Ic所示,位O与LI对应、位I与L6对应、位2与L2对应、位3与L4对应、位4与L7对应、位5与L3对应、位6与L5对应、位7与路LO对应。为了保证对端单元正确采样数据,本端单元与对端单元之间还需要传递时钟信号(如板间时钟信号、卡间时钟信号),当需要传输时钟信号时,可以将时钟信号的采样数据也作为控制信息,与其他地址信息、数据信息、控制信息一并进行数据段转换后,通过位宽为N的数据总线发送,对端单元对解析出该采样数据之后,还原出时钟信号。从信号质量考虑,时钟信号也可以单独占用一位时钟信号线在本端单元与对端单元之间进行传递,若选择这种传递方式,则本端单元与对端单元之间除了需要位宽为N的数据总线之外,还需要一位时钟信号线,用于传递时钟信号。本端单元、对端单元还可以将转换成的数据段组成一个或多个数据帧;将各数据帧中的各数据段通过位宽为N的数据总线进行传递,此种情况下,本端单元与对端单元之间还需要传递帧信号,帧信号也可以作为控制信息,一并进行数据段转换后,通过位宽为N 的数据总线发送,也可以单独占用一位帧信号线进行传递,若选择后者,则本端单元与对端单元之间除了需要位宽为N的数据总线之外,还需要一位帧信号线,用于传递帧信号。进一步,片选信号可以隐含在该帧信号中,控制信息中仅需传递读信号和/或写信号。如图2所示,为本发明一实施例提供的总线通信系统的示意图,该总线通信系统包括本端单元I和对端单元2。本端单元I包括第一数据段转换模块11和第一接口模块12,相应的,对端单元2包括第二数据段转换模块21和第二接口模块22。第一接口模块12、第二接口模块22可以为用于板间互联、母板与子卡互联的连接器,此种情况下,第一接口模块12和第二接口模块22之间直接通过位宽为N的数据总线连接;或者第一接口模块12、第二接口模块22还可以为连接器接口,该连接器接口与用于板间互联、母板与子卡互联的连接器连接,通过连接器的引脚间接地连接位宽为N的数据总线。第一数据段转换模块11和第一接口模块12可以集成为一个总模块,第二数据段转换模块21和第二接口模块22可以集成为一个总模块。本实施例中,本端单元与对端单元之间的时钟信号(如板间时钟信号、卡间时钟信号)单独占用一位时钟信号线进行传递,因此,第一接口模块12、第二接口模块22之间除了需要位宽为N的数据总线之外,还需要一位时钟信号线,用于传递时钟信号。若本端单元I需要向对端单元2写入数据,则第一数据段转换模块11用于将本端单元I待传输的地址信息、数据信息(包括需要写入的信息)和控制信息(包括片选信号和写信号)转换成Ml个数据段,各数据段由N个比特组成,其中NS 1,Ml > I ;待传输的地址信息、数据信息和控制信息可以由第一数据段转换模块11生成,也可以由本端单元I内另设的一处理模块生成,该处理模块和/或第一数据段转换模块11可以集成在本端单元I内的CPU上。第一数据段转换模块11将本端单元I待传输的地址信息、数据信息和控制信息转换成Ml个数据段之后,将各数据段分别传输至第一接口模块12 ;第一接口模块12用于将各数据段通过位宽为N的数据总线传递至对端单元2的第二接口模块22。由于一个数据段由N个比特组成,所以位宽为N的数据总线一次传递一个数据段,通过Ml次将Ml个数据段传递至第二接口模块22。第二接口模块22每接收到一个数据段之后,传递给第二数据段转换模块21,第二数据段转换模块21待收集到该Ml个数据段之后,按照相应的解析规则进行解析,还原出地址信息、数据信息和控制信息,第二数据段转换模块21或对端单元2内另设的一处理模块根据控制信息中的写信号,将数据信息写入相应的器件。
若本端单元I需要从对端单元2读取数据,则第一数据段转换模块11用于将本端单元I待传输的地址信息和控制信息(包括片选信号和读信号)转换成M2个数据段,各数据段由N个比特组成,其中N彡I,M2彡I ;待传输的地址信息和控制信息可以由第一数据段转换模块11生成,也可以由本端单元I内另设的一处理模块生成,该处理模块和/或第一数据段转换模块11可以集成在本端单元I内的CPU上。第一数据段转换模块11将本端单元I待传输的地址信息和控 制信息转换成M2个数据段之后,将各数据段分别传输至第一接口模块12 ;第一接口模块12用于将各数据段通过位宽为N的数据总线传递至对端单元2的第二接口模块22。由于一个数据段由N个比特组成,所以位宽为N的数据总线一次传递一个数据段,通过M2次将M2个数据段传递至第二接口模块22。第二接口模块22每接收到一个数据段之后,传递给第二数据段转换模块21,第二数据段转换模块21待收集到该M2个数据段之后,按照相应的解析规则进行解析,还原出地址信息和控制信息,第二数据段转换模块21根据控制信息中的读信号产生响应信息,或者第二数据段转换模块21用于将该读信号传递至对端单元2内另设的一处理模块,由该处理模块根据该读信号产生响应信息,并将该响应信息反馈给第二数据段转换模块21。第二数据段转换模块21按照与第一数据段转换模块11相同的转换规则将该响应信息转换成M3个数据段,各数据段同样由N个比特组成,M3 ^ 1,将各数据段分别传输至第二接口模块22。第二接口模块22通过该位宽为N的数据总线反馈至本端单元I的第一接口模块12。第一接口模块12每接收到一个数据段之后,传递给第一数据段转换模块11。第一数据段转换模块11收到M3个数据段之后,按照相应的解析规则进行解析,还原出对端单元2所反馈的响应信息。对于本端单元I而言,待传输的信息包括地址信息、数据信息和控制信息,用于向对端单元2写入数据,或者待传输的信息包括地址信息和控制信息,用于从对端单元2读取数据,对于对端单元2而言,待传输的信息包括数据信息,即响应信息。本端单元I需要向对端单元2写入数据时,需要将待传输的地址信息、数据信息和控制信息转换成I个或多个数据段;需要从对端单元2读取数据时,需要将待传输的地址信息和控制信息转换成I个或多个数据段;对端单元2需要向本端单元I反馈响应信息时,需要将待传输的响应信息转换成I个或多个数据段。本端单元I和对端单元2数据段的转换规则可以相同,转换规则有多种,如先将待传输的各种信息进行合并,对合并后的信息进行数据段转换。以本端单元I为例,第一数据段转换模块11可以包括合并模块和第一子转换模块。若本端单元I需要向对端单元2写入数据时,合并模块用于将待传输的地址信息、数据信息和控制信息合并,第一子转换模块用于将合并后的信息转换成Ml个数据段。假设本端单元I待传输的地址信息为Al位的二进制比特数据、待传输的数据信息为Dl位的二进制比特数据,待传输的控制信息包括I位的片选信号、I位的写信号,合并模块将待传输的地址信息、数据信息和控制信息合并成A1+D1+1+1位的二进制比特数据,第一子转换模块用于将合并后的信息转换成Ml个数据段,Mi=CEILING (Al+Dl+l+l/N), CEILING O为去掉小数取上限整数,Ml彡I。若本端单元I需要从对端单元2读取数据时,合并模块用于将待传输的地址信息和控制信息合并,第一子转换模块用于将合并后的信息转换成M2个数据段。假设本端单元I待传输的地址信息为A2位的二进制比特数据、待传输的控制信息包括I位的片选信号、I位的读信号,合并模块将待传输的地址信息和控制信息合并成A2+1+1位的二进制比特数据,第一子转换模块用于将合并后的信息转换成M2个数据段,M2=CEILING(A2+1+1/N), CEILING O为去掉小数取上限整数,M2彡I。转换规则还可以是对待传输的各种信息分别进行数据段转换。以本端单元I为例,第一数据段转换模块11包括第二子转换模块,若本端单元I需要向对端单元2写入数据时,第二子转换模块用于分别对待传输的地址信息、数据信息和控制信息进行数据段转换。假设本端单元待传输的地址信息为Al位的二进制比特数据、待传输的数据信息为Dl位的二进制比特数据,待传输的控制信息包括I位的片选信号、I位的写信号;第二子转换模块将待传输的地址信息转换为Xl个数据段,xl=CEILING(Al/N), CEILING O为去掉小数取上限整数,Xl彡1,将待传输的数据信息转换为yl个数据段,yl=CEILING(Dl/N),yl彡1,将控制信息转换为I数据段,xl+yl+l=Ml。这样,第二子转换模块便将待传输的地址信息、数据信息和控制信息转换成了 Ml个数据段。第一接口模块12只需要通过 位宽为N的数据总线,一次传递一个数据段、经过Ml次传递,便可将该Ml个数据段传输至对端单元2。若本端单元I需要从对端单元2读取数据时,第二子转换模块用于分别对待传输的地址信息和控制信息进行数据段转换。假设本端单元待传输的地址信息为A2位的二进制比特数据、待传输的控制信息包括I位的片选信号、I位的读信号;第二子转换模块将待传输的地址信息转换为x2个数据段,x2=CEILING(A2/N),CEILING O为去掉小数取上限整数,x2彡1,将控制信息转换为I数据段,x2+l=M2。这样,第二子转换模块便将待传输的地址信息、数据信息和控制信息转换成了 M2个数据段。第一接口模块12只需要通过位宽为N的数据总线,一次传递一个数据段、经过M2次传递,便可将该M2个数据段传输至对端单元2。为了能够详细的描述转换规则的实现原理,假设本端单元I需要向对端单元2写入数据,待传输的地址信息为22位的二进制比特数据“10 0100 0101 0101 1010 1010”,待传输的数据信息为16的二进制比特数据“1010 1010 0101 0101”,待传输的控制信息包括I位的片选信号和I位的写信号,第一接口模块12和第二接口模块22之间的数据总线的位宽为8,即N=8。那么,第二子转换模块可以将该22位的地址信息“10 0100 0101 0101 10101010”转换为3个字节(CEILING(22/8)=3),如分别转换为以下三个字节:“0010 0100”、“010 10101”、“1010 1010”,每个字节由8个比特组成,其中“1010 1010”对应地址信息的低字节,“0010 0100”对应地址信息的高字节,由于地址信息是22位,需要在其高字节“100100”的左边填充两位0,变为“0010 0100”。每个字节占用一次位宽为8的数据总线,22位的地址信息“10 0100 0101 0101 1010 1010”需要位宽为8的数据总线传递3次;将待传输的该16位的数据信息“1010 1010 0101 0101”转换为2个字节(CEILING(16/8)=2),如分别为“1010 1010”、“0101 0101”,每个字节由8个比特组成,其中“0101 0101”对应数据信息的低字节,“1010 1010”应数据信息的高字节。每个字节占用一次位宽为8的数据总线,16位的数据信息“1010 1010 0101 0101”需要位宽为8位的数据总线传递2次;将控制信息转换为I个字节,控制信息需要位宽为8位的数据总线传递I次。位宽为8位的数据总线总共需要传递的次数M=3+2+l=6。地址信息、控制信息、地址信息转换成数据段后,发送顺序没有先后之分。优选的,本端单元I对对端单元2进行读操作时,本端单元I可以先发送控制信息和地址信息所对应的数据段,然后再发送数据信息对应的数据段,地址信息和控制信息所对应的数据段的发送顺序没有先后之分,可以是控制信息对应的数据段在前发送,地址信息对应的数据段在后发送,也可以是地址信息对应的数据段在前发送,控制信息对应的数据段在后发送。本端单元I对对端单元2进行写操作时,地址信息、控制信息和数据信息所对应的数据段可以按照任意顺序发送。在另一实施例中,本端单元I还可以包括组帧模块,用于将第一数据段转换模块11转换成的数据段组成一个或多个数据帧;第一接口模块12用于将各数据帧中的各数据段通过位宽为N的数据总线传递至对端单元2。此种情况下,本端单元I与对端单元2之间还需要传递帧信号,帧信号也可以作为控制信息,一并进行数据段转换后,通过位宽为N的数据总线发送,也可以单独占用一位帧信号线进行传递,若选择后者,则本端单元I与对端单元2之间除了需要位宽为N的数据总线、位宽为I的时钟信号线之外,还需要一位帧信号线,用于传递帧信号。进一步,片选信号可以隐含在该帧信号中,那么控制信息中仅需传递读信号或写信号。相应地,对端单元2也可以包括组帧模块,用于将第二数据段转换模块21转换成的数据段组成一个或多个数据帧;第二接口模块22用于将各数据帧中的各数据 段通过位宽为N的数据总线传递至本端单元I。第一数据段转换模块、第二数据段转换模块可以通过可逻辑编程器件来实现,如厂家 XILINX 的 XC3S400AN-4FGG400C、厂家 Altera EP2AGZ350HF40C3N,只要对该可逻辑编程器件进行相应规则的编程,便可实现第一数据段转换模块、第二数据段转换模块的功能。如图3所示,为现有技术中总线通信系统的示意图,总线通信系统包括第一单板31和第二单板32,通过连接器互联,CPU设置在第一单板31上,第一单板31上还包括第一可逻辑编程器件311,第一可逻辑编程器件311外接连接器33的第一连接部件331 ;第二单板32上包括第二可逻辑编程器件321和多个支持CPU总线接口的器件(器件I、器件2至器件n),第二可逻辑编程器件321外接连接器33的第二连接部件332,第一连接部件331与第二连接部件332为连接器33的配套部件。第一单板31为第二单板32提供4M的地址空间,CPU用于产生时钟信号、多路片选信号、读信号、写信号、地址数据复用信号等,第一可逻辑编程器件311用于将CPU产生的各信号进行隔离与处理,产生简化的、易操作的CPU接口,同时可以配置CPU,辅助CPU读取启动信息,对单板其他CPU接口器件进行访问管理等。经第一可逻辑编程器件311处理后,得到I位的板间时钟信号、I位的片选信号、I位的读信号、I位的写信号、22位的地址信息、16位的数据信息,按照传统的总线通信方式,这些信号至少需要占用连接器33的42根引脚,其中I根引脚用来接入位宽为I的板间时钟信号线,用来传输I位的板间时钟信号,I根引脚用来接入位宽为I的片选信号线,用来传输I位的片选信号,I根引脚用来接入位宽为I的读信号线,用来传输I位的读信号,I根引脚用来接入位宽为I的写信号线,用来传输I位的写信号,22根引脚用来接入位宽为22的地址总线,用来传输22位的地址信息,16根引脚用来接入位宽为16的数据总线,用来传输16位的数据信息。若采用本发明的总线通信方式,则其总线引脚数量将大大减少,相应的占用连接器的引脚数量也大大减少,如图4所示,第一单板41上包括CPU,还包括第一可逻辑编程器件411,第一可逻辑编程器件411可以实现第一数据段转换模块、组帧模块和第一接口模块的功能,第一可逻辑编程器件411可以直接外接连接器43的第一连接部件431,也可以通过信号驱动器件外接该连接器43的第一连接部件431,第二单板42上包括第二可逻辑编程器件421和支持CPU总线接口的多个器件(器件I、器件2至器件n),第二可逻辑编程器件421可以实现第二数据段转换模块、组帧模块和第二接口模块的功能,第二可逻辑编程器件421可以直接外接连接器43的第二连接部件432,也可以通过信号驱动器件外接该连接器43的第二连接部件432,第一连接部件431与第二连接部件432为连接器43的配套部件。第一单板41为第二单板42提供4M的地址空间,按照本发明的总线通信规则,第一单板I实现对第二单板2的读写操作,只需要占用连接器43的10根引脚,其中I根引脚用来接入位宽为I的板间时钟信号线,用来传输I位的板间时钟信号,其中I根引脚用来接入位宽为I的板间帧信号线,用来传输I位的板间帧信号,8根引脚用来接入位宽为8的数据总线,用来传输由8个比特组成的字节。如果进一步,将位宽为8的数据总线替换成位宽为4的数据总线,则占用连接器的引脚的数量可降为6,这样极大降低了占用连接器引脚的数量。下面具体描述读写操作过程,所有过程都以时钟信号为基准,它包括第一单板41内时钟信号和板间时钟信号,第一单板41内时钟用于第一单板41内部逻辑运行。板间时钟由第一单板41产生,用于第二单板42内部逻辑运行。第一单板41内时钟和板间时钟可 以是同频率,也可以是不同频率,但是一定要保证板间时钟频率大于或等于第一单板41内时钟频率,否则可能会极大影响总线性能。在本发明示例中,板间时钟是第一单板41内时钟的180度相移输出。读操作。第一单板41的CPU发起读操作,第一单板41的第一可逻辑编程器件411在第I个时钟上升沿检测到有效的片选信号;在第2个时钟上升沿检测到有效的读信号,这时表示CPU发起的一个读操作已经开始;在第3个时钟上升沿,第一可逻辑编程器件411将帧信号由高电平变为低电平,同时将控制信息转换成的一个控制字节C (“0000 0000”)通过板间位宽为8位的数据总线发出,控制字节的位O为“0”,代表本次操作为读操作;在第4个时钟上升沿,第一可逻辑编程器件411将帧信号由低电平变为高电平,并将地址信息转换成的3个字节(A'、A"、A",)中的高位字节A",通过板间8位数据总线发出;在第5个时钟上升沿,第一可逻辑编程器件411将字节A"通过板间8位数据总线发出;在第6个时钟上升沿,第一可逻辑编程器件411将地址字节k'通过板间8位数据总线发出(字节k'、A"、A",的发送顺序无要求,先发高字节仅是示例);接下来的第7个时钟至第16个时钟内,第一可逻辑编程器件411处于等待状态,等待第二单板42返回响应信息;在第17个时钟下降沿,第一可逻辑编程器件411从板间8位数据总线获取第二单板42返回的数据字节D"(第二单板42将响应信息转换成字节D"和D')并暂存起来;在第18个时钟下降沿,第一可逻辑编程器件411从板间8位数据总线获取数据字节D'并暂存起来;在第19个时钟上升沿,A单板可编程逻辑器件将暂存的D"和D'还原成16位数据信息;从第20个时钟至第23时钟时间内,第一可逻辑编程器件411将还原的16位数据信息提供给CPU采样,并等待CPU完成数据采样;在第23个时钟上升沿,中央处理器CPU完成数据采样,将片选信号和读信号置于无效状态,读操作完成。第二单板42的第二可逻辑编程器件421以板间时钟为基准,以检测到板间帧信号为低电平作为第I个时钟,在第I个时钟上升沿第二可逻辑编程器件421暂存帧信号和板间8位数据,获得控制字节C ;在第2个时钟上升沿,第二可逻辑编程器件421根据控制字节C判断是读操作还是写操作,检测到位O是“O”表示本次操作为读操作;在第3个时钟上升沿,第二可逻辑编程器件421锁存地址字节A"';在第4个时钟上升沿,第二可逻辑编程器件421锁存地址字节A";在第5个时钟上升沿,第二可逻辑编程器件421锁存地址字节A',并结合字节A" '、A"和A',还原出22位地址信息,同时将板内片选信号置为低电平;在第6个时钟上升沿,第二可逻辑编程器件421将板内读信号置为低电平;从第7个时钟至第13个时钟时间内,第二可逻辑编程器件421开始等待22位地址所对应器件返回读数据;在第14个时钟上升沿,第二可逻辑编程器件421已获取稳定的读数据,并将16位读数据的高8位形成数据字节D"通过板间8位数据总线发送出去。同时将板内片选信号和读信号置为高电平。本实施例中,第二单板42片选信号按照9个时钟周期处理,如果在该片选范围内,第二单板42内的器件无法完成访问操作,也可以考虑采用间接寻址方式实现;在第15个时钟上升沿,第二可逻辑编程器件421将16位读数据的低8位形成数据字节D'通过板间8位数据总线发送出去(字节D"、D"的发送顺序无要求,先发高字节仅是示例);第16个时钟,板间8位数据总线数据保持;第17个时钟,释放板间8位数据总线,读操作完成。写操作。第一单板41的CPU发起写操作,第一可逻辑编程器件411在第I个时钟上升沿检测到有效的片选信号;在第2个时钟上升沿检测到有效的写信号,这时表示CPU发起的一个写操作已经开始;在第3个时钟上升沿,第一可逻辑编程器件411将帧信号由高电平变为低电平,同时将控制信息转换成的一个控制字节C (“0000 0001”)通过板间8位数据总线发出,控制字节的位O为“I”代表本次操作为写操作;在第4个时钟上升沿,第一可逻辑编程器件411将帧信号由低电平变为高电平,并将地址信息转换成的3个字节(A'、A"、A"')中的高位字节A "'通过板间8位数据总线发出(字节A'、A"、A "'的发送顺序无要求,先发高字节仅是示例);在第5个时钟上升沿,第一可逻辑编程器件411将字节A"通过板间8位数据总线发出;在第6个时钟上升沿,第一可逻辑编程器件411将字节k'通过板间8位数据总线发出;在第7个时钟上升沿,第一可逻辑编程器件411将数据信息转换成的2个字节(D"、D')中的高位字节D"通过板间8位数据总线发出;在第8个时钟上升沿,第一可逻辑编程器件411将数据字节D'通过板间8位数据总线发出(字节D"、 D"的发送顺序无要求,先发高字节仅是示例);接下来的第9个时钟至第21个时钟内,第一可逻辑编程器件411处于等待状态,等待第二单板42写操作完成;在第22个时钟上升沿,CPU将写信号置于无效状态;在第23个时钟上升沿,CPU将片选信号置于无效状态,写操作完成。第二单板42的第二可逻辑编程器件421以板间时钟为基准,以检测到板间帧信号为低电平作为第I个时钟,在第I个时钟上升沿第二可逻辑编程器件421暂存帧信号和板间8位数据,获得控制字节C ;在第2个时钟上升沿,第二可逻辑编程器件421根据控制字节C判断是读操作还是写操作,检测到位O是“I”表示本次操作为写操作;在第3个时钟上升沿,第二可逻辑编程器件421锁存地址字节A "';在第4个时钟上升沿,第二可逻辑编程器件421锁存地址字节A";在第5个时钟上升沿,第二可逻辑编程器件421锁存地址字节A',并结合字节A " '、A"和A'还原出22位地址信息;在第6个时钟上升沿,第二可逻辑编程器件421锁存数据字节D";在第7个时钟上升沿,第二可逻辑编程器件421锁存数据字节D',并结合字节D"和D',还原出16位数据信息同时将板内片选信号置为低电平;在第8个时钟上升沿,第二可逻辑编程器件421将板内写信号置为低电平;从第9个时钟至第15个时钟时间内,第二可逻辑编程器件421开始等待22位地址所对应器件写数据操作;在第16个时钟上升沿,第二可逻辑编程器件421将板内写信号置为高电平;在第17个时钟上升沿,第二可逻辑编程器件421将板内片选信号置为高电平,写操作完成。本实施中,第二单板42片选信号按照9个时钟周期处理,如果在该片选范围内,第二单板42内的器件无法完成访问操作,也可以考虑采用间接寻址方式实现。本实施例,通过I位板间时钟信号、I位板间帧信号和8位数据总线,便可以完成第一单板41对第二单板42的读写操作,相对于现有技术中,使用相应位宽的地址总线传递地址信息、使用相应位宽的数据总线传递数据信息、使用相应位宽的控制总线传递控制信息的方案而言,可大大减少接口引脚。以上内容是结合具体的实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护 范围。
权利要求
1.一种总线通信方法,其特征在于,包括 将本端单元待传输的信息转换成I个或多个数据段,各数据段由N个比特组成,其中N ≥ I ;所述待传输的信息包括地址信息、数据信息和控制信息,或者所述待传输的信息包括地址信息和控制信息; 将各数据段通过位宽为N的数据总线传递至对端单元。
2.如权利要求I所述的总线通信方法,其特征在于,还包括通过所述位宽为N的数据总线接收所述对端单元反馈的数据段形式的响应信息,并将所述数据段形式的响应信息转换成相应的数据信息。
3.如权利要求I所述的总线通信方法,其特征在于,将本端单元待传输的信息转换成I个或多个数据段的方法具体为先将本端单元待传输的各种信息进行合并,对合并后的信息进行数据段转换;或者对本端单元待传输的各种信息分别进行数据段转换。
4.如权利要求3所述的总线通信方法,其特征在于,对本端单元待传输的各种信息分别进行数据段转换的过程中将待传输的控制信息转换成I个数据段。
5.如权利要求I所述的总线通信方法,其特征在于,所述控制信息包括片选信号、读信号和/或写信号。
6.如权利要求I至5任一项所述的总线通信方法,其特征在于,所述数据段为由8个比特组成的字节。
7.如权利要求I至5任一项所述的总线通信方法,将各数据段通过位宽为N的数据总线传递至对端单元之前,还包括将数据段组成一个或多个数据帧,将各数据帧中的各数据段通过位宽为N的数据总线传递至对端单元。
8.—种总线通信单元,其特征在于,包括数据段转换模块和接口模块,其中, 所述数据段转换模块用于将待传输的信息转换成I个或多个数据段,各数据段由N个比特组成,其中N > I ;所述待传输的信息包括地址信息、数据信息和控制信息,或者所述待传输的信息包括地址信息和控制信息; 所述接口模块用于将各数据段通过位宽为N的数据总线传递至对端单元。
9.如权利要求8所述的总线通信单元,其特征在于,所述接口模块还用于通过所述位宽为N的数据总线接收所述对端单元反馈的数据段形式的响应信息;所述数据段转换模块还用于将所述数据段形式的响应信息转换成相应的数据信息。
10.如权利要求8所述的总线通信单元,其特征在于,所述数据段转换模块包括合并模块和第一子转换模块;所述合并模块用于先将待传输的各种信息进行合并;所述第一子转换模块用于对合并后的信息进行数据段转换;或者所述数据段转换模块包括第二子转换模块,用于对待传输的各种信息分别进行数据段转换。
11.如权利要求8-10任一项所述的总线通信单元,其特征在于,所述总线通信单元还包括组帧模块,用于将数据段组成一个或多个数据帧;所述接口模块用于将各数据帧中的各数据段通过位宽为N的数据总线传递至对端单元。
12.—种总线通信系统,其特征在于,包括通过位宽为N的数据总线进行通信的本端单元和对端单元,其中,所述本端单元为权利要求8-11任一项所述的总线通信单元;所述对端单元用于通过所述位宽为N的数据总线接收所述本端单元发送的数据段,并由接收的数据段还原出相应的地址信息、数据信息和控制信息。
13.如权利要求12所述的总线通信系统,其特征在于,所述对端单元还用于根据还原出的数据信息生成响应信息;将所述响应信息转换成I个或多个数据段,各数据段由N个比特组成,其中N > I ;将各数据段通过所述位宽为N的数据总线反馈至所述本端单元。
全文摘要
本发明公开一种总线通信方法、总线通信单元及系统,总线通信方法包括将本端单元待传输的信息转换成1个或多个数据段,各数据段由N个比特组成,其中N≥1;所述待传输的信息包括地址信息、数据信息和控制信息,或者所述待传输的信息包括地址信息和控制信息;将各数据段通过位宽为N的数据总线传递至对端单元。本发明通过以上技术方案,解决现有技术中两通信单元利用总线进行通信时,接口引脚不够用,为低速接口预留的引脚数量越来越少的问题。
文档编号H04L12/40GK102780598SQ20121025246
公开日2012年11月14日 申请日期2012年7月20日 优先权日2012年7月20日
发明者刘如民, 卢贤军, 宋海华, 杜小祥 申请人:中兴通讯股份有限公司