在微处理器系统总线上分配存取周期的方法和配置的制作方法

文档序号:6411774阅读:187来源:国知局
专利名称:在微处理器系统总线上分配存取周期的方法和配置的制作方法
技术领域
本发明涉及的是一种在微处理器系统总线上分配存取周期的方法,其中由与总线连接的系统单元借助一个分配设备在考虑当前确定的优先级下控制存取周期。
微处理器系统经常使用一个公用数据总线来交换信息。对总线存取的权限由一个分配设备(仲裁器)控制,该分配设备分析对连接在总线上的系统单元的询问,并根据一个预先确定的协议分配优先次序的存取。这一协议由电路技术实现,因为对微处理器的功能需求由于处理速度的限制不允许使用软件解决方案,同时硬件解决方案可以以很小的开销实现。在“ Intel80386EX用户手册”(第16.2.4节,第16页,1995年2月6日)的说明书中公开了两种分配优先级的方法。一种是给系统单元固定的优先级,另一种是动态地分配优先级,其中“最高优先级”在一个公用的移位寄存器中周期地循环。这里,“最高优先级”在对总线的每一存取周期之后由在移位寄存器中相继的系统单元控制,使得所有参加该仲裁方法的系统单元的优先级改变。这一种优先级分配协议导致对于总线同样的存取权限,也就是说,所有系统单元的等待时间在静态设备中同样长,直到它们被选中对总线存取。
前述优先级分配模式在一些特定的应用场合不适合。作为一个例子,有这样的微处理器系统,它由一个使用分立的程序存储器的微处理器控制,到达该微处理器的一个端口的数据经由一个公用的存储器而从另一个端口重新输出(路由器)。这些数据由多个连接在总线上的系统单元直接通过公用存储器交换。为检验的目的这种交换偶而由微处理器控制。为避免长时期等待,单个检验步必须具有高优先级。因为不知道在微处理器中运行的软件,所以不能对存储器-检验步的频度和持续时间评价。因此,给处理器固定分配最高优先级在不适当的场合会导致阻塞其它系统单元的数据交换。
因此本发明的一个基本任务是设计一种稀少地和频繁地对总线存取进行分配的方法,它可以几乎完全避免由进行数据交换的系统单元所引起的阻塞。该任务通过按照权利要求1的上位概念的特征的方法所表示的特征而解决。
本发明的方法的重要方案在于,总线存取由与公用总线连接的系统单元在考虑当前确定的优先级下控制。它意味着,对于每一个连接在总线上的系统单元例如借助于一个优先级计数器和一个优先级比较器来控制优先级。在起动微处理器系统时给所有系统单元分配不同的优先级。这里当在当前存取中总线分配给一个在前次存取周期内具有较高优先级的系统单元时,该优先级使用一个计数器在每次存取周期后升高。必须绝对地注意优先级的提高,这意味着,优先级的升高既可以由优先级计数器读数的升高也可以由其降低而引起。在优先级计数器读数降低时分配给最低优先级计数器读数的系统单元具有最高的优先级,反之亦然。当给在当前存取周期被分配的系统单元分配总线存取之后,优先级被复位,也就是说计数器将置为零或置为最大值-权利要求2。否则优先级保持不变,亦即计数器读数不变。分配给系统单元的优先级以预先规定的固定的整数值,特别是以原值+“输入”而改变时-权利要求2-更有优点。这样可以使用市售集成电路特别经济地实现。本发明的方法的最重要的优点在于,给相应于其它系统单元很少要求总线存取的系统单元分配一个较高的优先级,即它的优先级由于其它系统单元的每一次存取而升高。
一个分配设备的优化设计由另一个权利要求-权利要求3-得知。按照本发明的方法可以在一个分配设备中,也就是说在开始时所述的仲裁器中完全以电路技术实现。
下面根据关于分配设备ZTE的一个实施例的系统概要图和一个框图详细叙述本发明的方法,其中

图1表示实现本发明的方法的一个微处理器系统的系统单元的配置;图2表示实现本发明的方法的配置的构造。
图1以示例方式表示一个微处理器系统MPS的概括性构造,它包括一个公用总线MB,其上连接有用于信息交换的公用数据存储器MEM。此外,多个系统单元SE与总线连接,其中例如到达一个系统单元的一个端口SE1的数据通过公用存储器MEM中继,并在另一个系统单元的另一个端口SE2重新输出。微处理器系统MPS由一个微处理器CPU控制,它例如用Intel80386EX处理器实现。微处理器为检验目的偶而存取公用数据存储器MEM。每一个在公用总线上连接的系统单元SE1..4具有一个HOLD(保持)输出HA1..4,它们每一个又与分配设备ZTE的一个HOLD输入HE1..4连接,系统单元SE1..4还具有HODL-Acknowledge(保持-应答)输入HAE1..4,它们与分配设备ZTE的一个HOLD-Acknowledge输出HAA1..4相连。对总线M B的存取由分配设备ZTE按照一个规定的协议控制。系统单元SE1..4可以经由每一个HOLD输出HA1..4通过传送HOLD信号hld1..4提出对总线的存取要求。分配设备ZTE根据传送HOLD信号hld1..4的系统单元SE1..4的信号确定具有最高优先级的系统单元SE1..4,并通过传送一个HOLD-Acknowledge信号hlda1..4允许其对总线的存取。
图2以示例方式表示执行本发明的方法所需要的一个分配设备ZTE的系统部件。在这个分配设备ZTE中,在图1中表示的每一个系统单元SE1..4装备一个自己的优先级计数器PZ1..4和优先级比较器PV1..4。从系统单元SE1..4输出的HOLD信号hld1..4通过连接线与所有的优先级比较器PV1..4的每个HOLD输入端HI1..4连接。此外,在优先级计数器PZ1..4的每一个输出A上出现的二进制优先级计数器读数pr1..4通过相应的连线引向所有优先级比较器PV1..4的每一个优先级输入端PZ1..4。在图1和图2中表示的实施例中总共有四个系统单元SE1..4连接到公用总线上。因此对于为在该种场合下四个不同的优先级pr1..4而产生的二进制编码需要两位的二进制信息,以致在传输单个优先级计数器读数pr1..4时每次需要两条线。作为其它的输入信号,每一个优先级比较器PV1..4输出的HOLD-Acknowledge信号hlda1..4作为输入信号供给其他的优先级比较器PV1…4。为此,其它优先级比较器PV1..4的每一输出A与一个优先级比较器PV1..4的一个输入AHI1..4连接。另外,给每一个优先级比较器PV1..4通过一个时钟脉冲输入TE引入一个系统时钟脉冲clk。在优先级比较器PV1..4中分析从系统单元SE1..4输出的HOLD信号hld1..4以及附属的当前优先级计数器的读数pr1..4,并且作为分析结果建立一个HOLD-Acknowledge信号hlda1..4。当一个系统单元SE1..4只提供一个HOLD信号hld1..4,而不提供其它当前的HOLD-Acknowledge信号hlda1..4和属于它的优先级计数器PZ1..4具有最高的计数器读数时,为一个系统单元SE1..4建立一个HOLD-Acknowledge信号hlda1..4。从单个优先级比较器PV1..4出来的HOLD-Acknowledge信号hldd1…4通过每一个构成线驱动器LT1..4的控制输入T的连接返回。取决于该返回的HOLD-Acknowledge信号hlda1..4,每一个构成线驱动器LT1..4的三态运算放大器要么工作在通路状态,要么工作在截止状态。所有线驱动器LT1..4作为被观察的单元执行一个多路转换器MUX的功能,它的输入E中每一个通过一个连接线与单个优先级计数器PZ1..4连接。通过每次只有一个HOLD-Acknowledge信号是有效的,在多路转换器MUX中四个线驱动器LT1..4中的一个以有效方式接入。因此在单个优先级计数器PZ1..4的输出上出现的那个二进制优先级计数器读数pr1..4接通到多路转换器MUX的输出PRT,它所分配的系统单元SE1..4当前存取总线。从多路转换级MUX出来的被选取的优先级计数器读信号prt通过连接线引向所有优先级计数器PZ1..4的优先级输入PI。它们的时钟脉冲输入TE再次与系统时钟脉冲clk连接。
从优先级比较器PV1..4的输出A出来的HOLD-Acknowledge信号hlda1..4另外通过连接线引向一个或门电路OR的一个输入端上,其输出通过连接线与一个第一触发电路DFF1的输入连接。第一触发电路DFF1的输出Q1与第二触发电路DFF2的输入连接。两个触发电路都由系统时钟脉冲clk提供时钟信号。从第一触发电路DFF1的输出Q1输出的以及从第二触发电路DFF2的输出Q2输出的逆信号各自被引向一个与门电路AND的一个输入。两个触发电路DFF1、DFF2以及或门和与门电路OR、AND都被视为功能单元,执行一个斜率检波器FD的功能,它识别一个新的总线存取周期的开始(一个HOLD-Acknowledge信号hlda1..4的侧面)。该斜率检波器F D的输出信号zs通过连接线引向所有优先级计数器PZ1..4的一个输入ZS。如果通过一个HOLD-Acknowledge信号hlda1..4的激活识别出一个新的存取周期时,则在斜率检波器FD的输出上产生的信号zs在一个系统时钟脉冲的持续期间置HIGH(高)电位。它再次把单个优先级计数器PZ1..4的计数器读数pr1..4更新。
于是在每一优先级计数器PZ1..4之内比较出现在输出A上的优先级计数器读数pr1..4与在输入PI上出现的有效的优先级prt。如果内部优先级计数器读数pr1..4小于正对总线存取的系统单元SE1..4的优先级prt,则优先级计数器读数pr1..4升高一个预先规定的数值。然而如果内部优先级计数器读数pr1..4大于正在工作的优先级prt,则优先级计数器读数pr1..4保持不变。如果优先级计数器读数pr1..4和有效的优先级prt具有同样的数值,这意味着分配给优先级计数器PZ1..4的系统单元SE1..4正存取总线,则把优先级计数器读数向一个预先规定的数值,例如0复位。
图2中所示的优先级计数器PZ1..4和优先级比较器PV1..4以及斜率检波器FD电路例如用市售触发器和逻辑部件像与门、或门电路以及比较器实现。
权利要求
1.一种为微处理器系统(MPS)的总线分配存取周期的方法,其中存取周期由与该总线(MB)连接的系统单元(SE1..4)通过一个分配设备(ZTE)按照当前确定了的优先级(pr1..4)控制,其特征在于,在微处理器系统(MPS)起动时,给每一系统单元(SE1..4)分配不同的优先级(pr1..4);在每一存取周期中分配的优先级(pr1..4)低于当前存取周期的优先级(pr1..4)的系统单元(SE1..4)的优先级(pr1..4)升高;分配的优先级(pr1..4)高于当前存取周期的优先级(prt)的系统单元(SE1..4)的优先级(pr1..4)不变;分配给执行当前存取周期的系统单元(SE1..4)的优先级(pr1..4)向一个预先规定的数值复位;其中对请求存取周期的具有最高优先级(pr1…4)的系统单元(SE1..4)分配当前存取周期。
2.根据权利要求1的方法,其特征在于,分配给系统单元(SE1..4)的优先级(pr1..4)以一个预先规定的整数值改变或者向零或一个最大值复位。
3.给一个微处理器系统(MPS)的总线分配存取周期的分配设备(ZTE),其特征在于,该分配设备(ZTE)具有附属设备,它们这样配置在分配设备(ZTE)中装备为在微处理器系统(MPS)起动时分配不同优先级(pr1..4)的优先级计数器(PZ1..4);在该分配设备(ZTE)中,为优先级计数器(PZ1..4)后接线驱动器(LT1..4)和优先级比较器(PV1..4)并如此配置在每一存取周期中分配的优先级(pr1..4)低于当前存取周期的优先级(pr1..4)的系统单元(SE1..4)的优先级(pr1..4)升高;分配的优先级(pr1..4)高于当前存取周期的优先级(prt)的系统单元(SE1..4)的优先级(pr1..4)不变;分配给执行当前存取周期的系统单元(SE1..4)的优先级(pr1..4)向一个预先规定的数值复位;其中对请求存取周期的具有最高优先级(pr1…4)的系统单元(SE1..4)分配当前存取周期。
全文摘要
给系统单元(SE1…4)对微处理器系统(MPS)的公用总线的存取周期分配当前最高的优先级(pr1…4)。在当前存取期间,请求存取的其它系统单元(SE1…4)的优先级(pr1…4)升高一个预先规定的数值,而当前进行存取的系统单元(SE1…4)的优先级(pr1…4)向一个规定的数值复位。本发明的分配方法设计用于具有很少和频繁的存取周期的系统单元(SE1…4)。
文档编号G06F13/38GK1164068SQ9710239
公开日1997年11月5日 申请日期1997年1月31日 优先权日1997年1月31日
发明者R·辛布格, M·格雷 申请人:西门子公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1