总线主控保留和仲裁电路及其使用方法

文档序号:6416167阅读:204来源:国知局
专利名称:总线主控保留和仲裁电路及其使用方法
技术领域
本发明涉及一种总线主控仲裁电路,特别涉及一种能够有效地保留和仲裁总线使用请求的总线主控保留和仲裁电路及其使用方法。
图1显示了一个常规的总线主控仲裁电路。如图所示,常规的总线主控仲裁电路带有一个循环电路10和一个总线选择逻辑11,循环电路10以定期间隔输出周期性的总线选择号BS0-BSn,总线选择逻辑11根据来自循环电路10的总线选择号BS0-BSn输出关于多个总线请求信号BR0-BRn的总线选择信号BA0-BAn。
在这种总线主控仲裁电路中,循环电路10以定期间隔向总线选择逻辑11提供周期性的总线选择号BS0-BSn。从请求使用总线的外部芯片接收总线请求信号BR0-BRn的总线选择逻辑11将芯片编号与循环电路10提供的总线选择号BS0-BSn进行比较。当比较的信号相同时,总线选择逻辑11输出总线选择信号BA0-BAn,将总线主控权给予相应的芯片、一第一芯片,并输出一个停止信号来中止循环电路10的驱动。因此,被授权主控总线的芯片根据总线选择信号BA0-BAn发送和接收数据,并且循环电路10的驱动由停止信号中止,直到该芯片完成对总线的使用。进一步地,当第一芯片完成对总线的使用时,总线选择逻辑11禁止停止信号,以便恢复循环电路10的操作。
接着,常规的总线主控仲裁电路通过重复地执行上述过程在已经发出总线使用请求的芯片之间进行仲裁。
为了更详细地说明常规的总线主控仲裁电路的操作,如图2所示,循环电路10判定是否接收到来自总线选择逻辑11的停止信号(S10)。如果接收到,循环电路10的操作被中止(S11),而如果未提供停止信号,则循环电路10以定期间隔向总线选择逻辑11输出周期性的总线选择号BS0-BSn。
如图3所示,总线选择逻辑11检查是否有芯片作出了总线使用请求(S20)。当来自第一外部芯片的总线请求信号BR0在时间t1被允许时,如图4A所示,逻辑11将第一芯片的芯片编号与来自循环电路10的总线选择号进行比较(S21)。在第一芯片编号与总线选择号BS0相同的时候,即总线选择号BS0从循环电路10提供出的时候,总线选择逻辑11输出总线选择信号BA0,用以允许第一芯片主控总线,并且向循环电路10输出停止信号。因此,第一芯片使用总线发送/接收数据,循环电路10的驱动根据停止信号被中止,直到第一芯片结束使用总线。
然而,如果第一芯片的芯片编号与总线选择信号BS0不同,则总线选择逻辑11重复执行上述步骤(S20,S21)。
接着,当第一芯片在时间t2完成其对总线的使用时,总线选择逻辑11禁止停止信号,从而再次驱动循环电路10(S25),然后检查是否有另外的芯片作出了芯片使用请求(S20)。作为检查结果,因为来自一个请求使用总线的外部第三芯片的总线请求信号BR2在时间t3被允许,如图4C所示,所以总线选择逻辑11如上所述在第三芯片的芯片编号与来自循环电路10的总线选择号BS2相同的时候向第三芯片输出一个总线选择信号BA2,并向循环电路10输出停止信号。因此,第三芯片使用总线,从而发送/接收数据,并且循环电路10的操作根据停止信号被中止,直到第三芯片结束使用总线。然后,当停止信号被禁止时,循环信号10被再次驱动。
接着,常规的总线主控仲裁电路通过重复地执行上述过程在发出总线使用请求的芯片之间进行仲裁。
然而,在这种操作中,多个外部芯片不定期地输出总线请求信号BR0-BRn,总线选择逻辑11将主控总线权给予首先请求使用总线的芯片,然后在第一请求芯片结束使用总线时接收从另一个芯片输入的总线使用请求,并将总线主控权给予该另一个芯片。
当接收到多个总线请求信号时,出现了一个问题,即常规的总线主控仲裁电路不能将总线主控权给予一特定芯片。例如,总线选择逻辑11将主控总线权给予首先请求使用总线的芯片,并在第一请求芯片结束使用总线时将总线主控权给予另一个芯片。然而,如图4A至4C所示,当第一请求芯片在时间t2结束使用总线时,循环电路10被再次驱动,并且在将“1”加到前一个总线选择号BS0之后,循环电路10顺序地输出从BS1开始的总线选择号BS1,BS2,...,BSn。进一步地,如果在时间t3从第三芯片输入总线选择请求信号BR2,当循环电路10向总线选择逻辑11提供相应于总线选择请求信号BR2的总线选择号BS2时,总线选择逻辑11输出将总线主控权给予第三芯片的总线选择信号BA2。
这是因为在一特定芯片结束使用总线时总线选择逻辑11将总线主控权给予另一个芯片。
接着,在第三芯片结束使用总线时,如果未输入总线请求信号BR5,而是输入了另一个总线请求信号BR,则总线选择逻辑11将总线主控权给予提供了总线请求信号BR的芯片。因此,当重复执行这种操作时,输出总线请求信号BR5的第六芯片最后不能接收到总线主控权。结果,未被给予总线主控权的芯片会引起功能错误,更严重地甚至丢失数据。
因此,本发明针对一个消除了现有技术的问题和缺陷的总线主控保留和仲裁电路及其使用方法。
本发明的一个目的是提供一种有效地保留和仲裁不定期提供的总线请求信号的总线主控保留和仲裁电路及其使用方法。
进一步地,本发明的另一个目的是提供一种通过根据保留信号数在正常和保留模式之间切换总线选择逻辑的模式来获得系统可靠性的总线主控保留和仲裁电路及其使用方法。
如同所实施及概括说明的,为了实现本发明的这些和其他优点以及目的,提供了一种总线主控保留和仲裁电路,包括一个第一输出缓冲器,用于缓冲多个总线请求信号;一个循环电路,用于输出周期性的总线选择号;一个总线保留信号发生电路,用于通过检测总线请求信号来输出总线保留信号并输出表示保留信号存储状态的/2S信号;以及一个总线选择逻辑,用于根据第一输出缓冲器或总线保留信号发生电路的输出来输出总线选择信号,根据/2S信号切换该总线选择逻辑的操作模式。
另外,为了实现上述目的,提供了一种总线主控保留和仲裁方法,包括如下步骤检查/2S信号是否被允许;当/2S信号被禁止时根据来自一个FIFO的总线请求信号执行一个正常操作模式以输出总线选择信号;当/2S信号被允许时根据来自一个FIFO的总线保留信号执行一个保留操作模式以输出总线选择信号;以及每次当总线使用结束时重复上述步骤。
这里包括的附图提供了对本发明的进一步的理解,构成了本说明书的一部分,附图显示了本发明的实施例,与说明书一起用于解释本发明的原理。
在图中图1是一个常规的总线主控仲裁电路的方框图;图2是显示图1中的循环电路的操作的流程图;图3是显示图1中的总线选择逻辑的操作的流程图4A至4C输入图1中的总线请求信号的波形图;图5是依据本发明的总线主控保留和仲裁电路的方框图;图6是图5的总线保留信号发生单元的详细方框图;图7是图5的时钟信号发生单元的详细方框图;以及图8是显示图5的总线主控保留和仲裁电路的操作的流程图。
现在参考附图详细说明本发明的优选实施例。
图5显示了依据本发明的总线主控保留和仲裁电路。如图所示,总线主控保留和仲裁电路带有第一输出缓冲器100、循环电路101、总线选择逻辑102、总线保留信号发生单元103、时钟信号发生单元104、先进先出(FIFO)105和第二输出缓冲器106。
更特别地,第一输出缓冲器100向总线选择逻辑102输出从外部芯片提供的总线请求信号BR0-BRn,当一个双存储(two-store)(/2S)信号或停止信号被允许时,循环电路101停止操作,而当/2S信号或停止信号被禁止时,循环电路101以定期间隔输出周期性的总线选择号BS0-BSn。
当/2S信号被允许时,即意味着/2S信号处于低电平,总线选择逻辑102根据从第二输出缓冲器106提供的总线保留信号BRr0-BRrn输出总线选择信号BA0-BAn(保留模式),而当/2S信号被禁止时,总线选择逻辑102根据从第一输出缓冲器100提供的总线请求信号BR0-BRn输出总线选择信号BA0-BAn(正常模式)。应该注意的是,在正常模式中当一特定芯片开始使用总线时,总线选择逻辑102将停止信号加到循环电路101上。
通过检测总线请求信号BR0-BRn来输出总线保留信号BRr0-BRrn的总线保留信号发生单元103由多个总线保留信号发生器103-1至103-n组成,如图6所示。这里,每个总线保留信号发生器包括一个D触发器20,根据系统时钟信号SCLK对一个总线请求信号BRx(x=0,1,...,n)进行采样;一个异或门21,接收来自D触发器20的输出信号和总线请求信号BRx;一个非门22,使总线请求信号BRx反相;以及一个与门23,对分别来自非门22和异或门21的输出进行AND操作,从而输出总线保留信号BRrx。
为FIFO105产生各种时钟信号的时钟信号发生单元104接收总线选择信号BA0-BAn、总线保留信号BRrx和/2S信号,从而输出一个输入时钟信号ICLK、一个输出时钟信号OCLK和一个No BAx(NBA)信号。如图7所示,时钟信号发生单元104包括一个或门30,对NBA、/2S和系统时钟信号进行OR操作,从而输出输出时钟信号OCLK;一个OR门31,对总线保留信号BRr0-BRrn和一个非空(/NE)信号进行OR操作;一个与门32,对或门31的输出和/NE信号进行AND操作,从而输出输入时钟信号ICLK;以及一个与非门33,对多个总线选择信号BA0-BAn进行NAND操作,从而输出NBA信号,当总线选择信号BA0-BAn都被禁止(高电平)时NBA信号被允许(低电平)。
FIFO105根据来自时钟信号发生单元104的输入和输出时钟信号ICLK、OCLK存储并输出总线保留信号BRr0-BRm。另外,FIFO105带有一个对总线保留信号BRx进行计数的计数器。这里,当存储的总线保留信号BRx为两个或更多时,FIFO105输出处于低电平的/2S信号,从而允许其他电路工作在总线请求保留模式。此外,FIFO105在最后一个存储区域存储第一个输入的总线保留信号BRr,从第二个输入的总线保留信号BRr起在其中运用先进先出模式。在输出了所有存储的总线保留信号BRx之后,FIFO105删除第一个输入的总线保留信号BRr。同样,当存满存储的总线保留信号BRx时,FIFO105向时钟信号发生单元104输出/NE信号,从而禁止输入时钟信号ICLK。
当/2S信号被禁止时,第二输出缓冲器106停止操作。而当/2S信号被允许时,第二输出缓冲器106向总线选择逻辑102输出从FIFO105输出的总线保留信号BRr0-BRrn。
现在参考


依据本发明的总线主控保留和仲裁电路的操作。
总线保留信号发生单元103接收来自多个外部芯片的总线请求信号BR0-BRn,并通过图6中显示的保留信号发生器103-1至103-n输出短脉冲类型的总线保留信号BRr0-BRrn。这里,由于/NE信号为高电平,时钟信号发生单元104的与门32输出也是短脉冲类型的输入时钟信号ICLK,与非门33输出低电平NBA信号,因为当前没有总线选择信号BA0-BAn从总线选择逻辑102提供出。因此,FIFO105根据时钟信号发生单元104提供的输入时钟信号ICLK顺序地在其中存储总线保留信号BRr0-BRrn,在FIFO105中提供的计数器(未显示)对存储的总线保留信号的数目进行计数。在这里应该注意的是,总线保留信号从第二个输入的总线保留信号起被顺序地存储在FIFO105的存储区域中,第一个输入的总线保留信号被存储在其存储区域的最后一个部分。
在这里,为了方便说明,如图4A至4C所示,将顺序输入的总线请求信号BR0、BR5、BR3、BR2作为例子进行说明。
首先,当第一外部芯片在时间t1提供出总线请求信号BR0时,总线保留信号发生单元103检测总线请求信号BR0,因此输出短脉冲类型的10000...模式的总线保留信号BRr0,FIFO105根据输入时钟信号ICLK在存储区域的最后一部分存储总线保留信号BRr0。由于当前的NBA信号处于低电平并且总线保留信号的个数为1,FIFO105输出处于高电平的/2S信号。结果,第二输出缓冲器106根据通过或门OR1提供的处于高电平的/2S信号停止操作,第一输出缓冲器100和循环电路101根据由非门IN1反相的/2S信号开始驱动。
因此,与在现有技术中一样,被提供到一个循环切换引脚SW的低电平/2S信号使总线选择逻辑102执行正常的操作模式。也就是说,总线选择逻辑102从第一输出缓冲器100接收总线请求信号BR0,并且当第一芯片编号对应于来自循环电路101的总线选择信号BS0时,输出用于将总线主控权给予第一芯片的总线选择信号BA0,还将停止信号输出到循环电路101。因此,第一芯片使用总线发送/接收数据,循环电路101的驱动根据停止信号被中止,直到第一芯片结束使用总线。
然而,当总线请求信号BR5、BR3分别从第六和第四芯片产生、而第一芯片正使用总线时,总线请求信号BR5、BR3分别被读出为0000010...、0001000...,并如上所述被顺序地存储在总线保留信号发生单元103中。在这里,在FIFO105中提供的计数器对总线保留信号BRr5、BRr3进行计数,从而以低电平输出/2S信号。在这里,当输入的总线保留信号BRrx超过FIFO105的存储容量时,FIFO105向时钟信号发生单元104输出/NE信号,以便总线保留信号发生单元103不再向FIFO105输出总线保留信号BRrx。然后,当第一芯片结束使用总线时,时钟信号发生单元104向FIFO105提供低电平的NBA信号,FIFO105然后根据输出时钟信号OCLK输出第二个输入的总线保留信号BRr5。
因此,第一输出缓冲器100和循环电路101的驱动根据处于低电平的/2S信号被中止,第二输出缓冲器106开始驱动,总线选择逻辑102根据提供到其循环切换引脚SW的处于高电平的/2S信号处理保留操作模式。即,根据通过第二输出缓冲器106提供的保留信号BRr5,总线选择逻辑102输出将总线主控权给予第六芯片的总线选择信号BA5。然后,当第六芯片结束使用总线,因此时钟信号发生单元104提供处于低电平的NBA信号时,FIFO105通过第二输出缓冲器106向总线选择逻辑102输出下一个总线保留信号BRr3。因此,总线选择逻辑102根据保留信号BRr3输出总线选择信号BA3,使第四芯片获得总线主控权。
然而,由于来自第一芯片的总线保留信号BRr0是当前保留在FIFO105中的唯一的总线保留信号,所以FIFO105输出处于高电平的/2S信号,然后删除存储在存储区域的最后一部分中的总线保留信号BRr0,并将计数器复位,以便能够在其中存储另一个新的总线保留信号。于是,从FIFO105提供的处于高电平的/2S信号中止第二输出缓冲器106的操作,而第一输出缓冲器100和循环电路101恢复其操作。并且,总线选择逻辑102根据提供到其循环切换引脚SW的/2S信号返回正常操作模式。此外,当第四芯片在时间t2结束使用总线并且在时间t3从第三芯片提供出总线请求信号BR5时,总线选择逻辑102与现有技术中一样执行正常操作模式。
如上所述,当提供了多个总线请求信号BR0-BRn时,本发明的总线主控保留/仲裁电路保留并顺序地处理总线请求信号BR0-BRn。这种操作解决了现有技术中不能将总线主控权给予一特定芯片的问题。也就是说,如图8所示,总线选择逻辑102首先检查提供到其循环切换引脚SW的/2S信号是否是高电平(S30)。如果/2S信号是高电平,总线选择逻辑102执行保留操作模式(S31),而如果/2S是低电平,则总线选择逻辑102与现有技术中一样执行正常操作模式(S32)。接着,当完成相应芯片的总线使用时,重复执行上述步骤(S30-S32)(S33)。
依据本发明的总线主控保留和仲裁电路通过执行对不定期提供的总线请求信号的顺序的总线保留和仲裁操作,解决了不能将总线主控权给予特定芯片的问题。
此外,由于依据本发明的总线主控保留和仲裁电路根据保留信号的数目在正常和保留模式之间切换总线选择逻辑的模式,可以更有效地保留和仲裁总线使用请求,最终可以获得系统的可靠性。
对于本领域普通技术人员来说显而易见的是,在不偏离本发明的精神或范围的情况下,在本发明的总线主控保留和仲裁电路及使用该电路的方法中可以进行各种修改和变化。因此,本发明覆盖了落入附带的权利要求及其等同范围内的该发明的修改和变化。
权利要求
1.一种总线主控保留和仲裁电路,包括一个第一输出缓冲器,用于缓冲多个总线请求信号;一个循环电路,用于输出周期性的总线选择号;一个总线保留信号发生电路,用于通过检测总线请求信号来输出总线保留信号并输出表示保留信号存储状态的第一信号;以及一个总线选择逻辑,用于根据第一输出缓冲器或总线保留信号发生电路的输出来输出总线选择信号,根据第一信号切换该总线选择逻辑的操作模式。
2.如权利要求1所述的总线主控保留和仲裁电路,其特征在于当至少两个总线保留信号存储在总线保留信号发生电路中时,第一信号被允许,于是第一输出缓冲器和循环电路停止运行。
3.如权利要求1所述的总线主控保留和仲裁电路,其特征在于当第一信号被禁止时,总线选择逻辑工作在正常模式,当第一信号被允许时,总线选择逻辑工作在保留模式。
4.如权利要求3所述的总线主控保留和仲裁电路,其特征在于在正常模式中,总线选择逻辑根据来自第一输出缓冲器的总线请求信号和来自循环电路的总线选择号输出总线选择信号,在保留模式中,总线选择逻辑根据来自总线保留信号发生电路的输出输出总线选择信号。
5.如权利要求1所述的总线主控保留和仲裁电路,其特征在于所述总线保留信号发生电路在输出最后输入的总线请求信号之后,不输出而是删除第一个输入的总线请求信号。
6.如权利要求1所述的总线主控保留和仲裁电路,其特征在于所述总线保留信号发生电路包括一个总线保留信号发生单元,用于检测多个总线请求信号;一个时钟信号发生单元,用于输出输入时钟信号和输出时钟信号和一第二信号;一个FIFO,用于根据来自时钟信号发生单元的时钟信号存储总线保留信号;以及一个第二输出缓冲器,用于向总线选择逻辑输出FIFO提供的总线保留信号。
7.如权利要求6所述的总线主控保留和仲裁电路,其特征在于FIFO包括一个对总线保留信号的数目进行计数的计数器,并且当其中存储着至少两个总线保留信号时允许所述第一信号。
8.如权利要求6所述的总线主控保留和仲裁电路,其特征在于所述第二信号由对总线选择信号进行OR操作产生,如果总线保留信号超过FIFO的存储容量,FIFO向时钟信号发生单元输出一个容量超过信号。
9.如权利要求7所述的总线主控保留和仲裁电路,其特征在于所述FIFO输出最后输入的保留信号,然后禁止第一信号,并删除第一个输入的保留信号,然后将计数器复位。
10.如权利要求6所述的总线主控保留和仲裁电路,其特征在于所述总线保留信号发生单元包括多个总线保留信号发生器,每个总线保留信号发生器包括一个D触发器,根据系统时钟信号对总线请求信号进行采样;一个异或门,接收来自D触发器的输出信号和总线请求信号;一个非门,使总线请求信号反相;以及一个与门,通过对来自非门和异或门的输出进行AND操作来输出总线保留信号。
11.如权利要求6所述的总线主控保留和仲裁电路,其特征在于所述时钟信号发生单元包括一个第一或门,对多个总线保留信号进行OR操作;一个与门,对第一或门的输出和来自FIFO的容量超过信号进行AND操作,从而输入输入时钟信号;一个与非门,对多个总线选择信号进行NAND操作,从而输出第二信号;以及一个第二或门,对第一、第二信号和系统时钟信号进行OR操作,从而产生输出时钟信号。
12.如权利要求11所述的总线主控保留和仲裁电路,其特征在于当至少两个总线保留信号存储在FIFO中时,所述第一信号被允许。
13.一种总线主控保留和仲裁电路,包括一个第一输出缓冲器,用于缓冲多个总线请求信号;一个总线保留信号发生单元,用于检测总线请求信号;一个时钟信号发生单元,用于产生输入和输出时钟信号;一个FIFO,根据来自时钟信号发生单元的时钟信号存储总线保留信号,并输出一个表示保留信号存储状态的第一信号;一个第二输出缓冲器,用于缓冲来自FIFO的总线保留信号;一个循环电路,用于输出周期性的总线选择号;以及一个总线选择逻辑,根据所述第一信号切换到正常模式或保留模式,并根据第一输出缓冲器或总线保留信号发生单元的输出来输出总线选择信号。
14.如权利要求13所述的总线主控保留和仲裁电路,其特征在于当至少两个总线保留信号存储在总线保留信号发生电路中时,所述第一信号被允许,于是第一输出缓冲器和循环电路停止运行。
15.如权利要求13所述的总线主控保留和仲裁电路,其特征在于在正常模式中,总线选择逻辑根据来自第一输出缓冲器的总线请求信号和来自循环电路的总线选择号输出总线选择信号,在保留模式中,总线选择逻辑根据来自总线保留信号发生电路的输出输出总线选择信号。
16.如权利要求13所述的总线主控保留和仲裁电路,其特征在于所述FIFO从第二个输入的总线保留信号起顺序地输出总线保留信号,然后在输出最后一个输入的总线保留信号之后,删除第一个输入的总线保留信号。
17.如权利要求13所述的总线主控保留和仲裁电路,其特征在于所述FIFO在输出最后一个输入的总线保留信号之后,禁止所述第一信号,并对一计数器复位。
18.一种总线主控保留和仲裁方法,包括第一步骤,检查一第一信号是否被允许;第二步骤,当第一信号被禁止时,根据来自一个FIFO的总线请求信号执行一个正常操作模式以输出总线选择信号;第三步骤,当第一信号被允许时,根据来自一个FIFO的总线保留信号执行一个保留操作模式以输出总线选择信号;以及第四步骤,每次当总线使用结束时重复第一到第三步骤。
19.如权利要求18所述的总线主控保留和仲裁方法,其中当至少两个总线保留信号被保存在FIFO中时,所述第一信号被允许,并且FIFO将第一个输入的总线保留信号保存在最后一个存储区域,并从第二个输入的总线保留信号起顺序地输出总线保留信号。
20.如权利要求18所述的总线主控保留和仲裁方法,其中FIFO在输出最后一个输入的总线保留信号之后,禁止所述第一信号,并删除第一个输入的总线保留信号。
全文摘要
一种总线主控保留和仲裁电路,包括:一个第一输出缓冲器,用于缓冲多个总线请求信号;一个循环电路,用于输出周期性的总线选择号;一个总线保留信号发生电路,用于通过检测总线请求信号来输出总线保留信号并输出表示保留信号存储状态的第一信号;以及一个总线选择逻辑,用于根据第一输出缓冲器或总线保留信号发生电路的输出来输出总线选择信号,根据第一信号切换该总线选择逻辑的操作模式。
文档编号G06F13/38GK1248745SQ9910048
公开日2000年3月29日 申请日期1999年1月29日 优先权日1998年9月18日
发明者金永浩 申请人:Lg情报通信株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1