标志控制的请求代理仲裁的制作方法

文档序号:6460571阅读:136来源:国知局
专利名称:标志控制的请求代理仲裁的制作方法
技术领域
本发明涉及数字系统的仲裁,而具体地涉及控制多个请求代理对总线的访问。
控制多个代理对总线的公平访问的仲裁方案是已知的。例如,美国专利5485586提出排队对总线的访问请求及随后按受排队的请求所确定的次序授予访问。
虽然维护公平性是仲裁的重要职责,同时希望尽可能简单与迅速地进行仲裁。如果所采用的仲裁方案能保证在为某些高速应用规定的最小时段,如公平时限,中授予访问,也是有利的。这里所用的“公平时限”是指对实际请求访问总线的所有代理授予这种访问所需的时间。例如,IEEE 1394高性能串行总线标准要求在收到信息分组之后,如果要求转发该分组则必须在四个公平时限内完成。在按排队的请求的次序授予访问的系统中,这一要求不一定能满足,而是取决于请求排队的次序。换言之,访问的最小时段要求的满足可能是不可预测的。IEEE 1394标准对于计算机外围设备及消费品电子设备的高性能总线互联特别有用,尤其是对于在总线上传输高速数字音频与视频数据。
本发明的目的为以可预测的与迅速的方式实现仲裁。
本发明的另一目的为提供在规定的最小时段内对多个请求代理的各个保证总线访问的能力。
按照本发明,用下述方式服务请求访问总线的多个代理·提供用于从第一与第二对请求代理接收请求的通信路径;·提供第一对中哪一个请求代理最后考虑访问总线的指示;·提供第二对中哪一个请求代理最后考虑访问总线的指示;·提供哪一对请求代理最后考虑访问总线的指示;·按照下述优先级授予当前请求访问的请求代理访问·不是最后考虑访问的对中,不是最后考虑访问的请求代理;·不是最后考虑访问的对中,不是最后考虑访问的请求代理;·最后考虑访问的对中,不是最后考虑访问的请求代理;·最后考虑访问的对中,最后考虑访问的请求代理。
这一授予访问的方法自动适应实际作出请求的代理的数目。如将详细说明的,它还提供扩充仲裁到任何数目请求代理的能力。


图1为可利用本发明的示范数字系统的框图。
图2至5为展示示范请求情况中的仲裁的示意图。
图6为展示按照本发明的示范仲裁方法的流程图。
图7为展示本发明对不同数目的请求器代理的可应用性的示意图。
图1一般性示出能利用本发明的一种数字系统的示范实施例。该系统包含第一对请求代理t与r、第二对请求代理d与p、总线B、及用于控制请求代理对总线的访问的仲裁器10。若干示范被请求代理A1、A2、A3、…An连接在总线B上。在本实施例中,请求代理t、r、d、p通过请求代理控制器12间接连接在仲裁器10上以提供进行请求的路径。具体地,第一对请求代理t与r分别连接在第一对控制器端口121A与121B上,第二对请求代理d与p分别连接在第二对控制器端口122A与122B上,而控制器12连接在仲裁器10上。其它配置也是可能的,它们使仲裁器与请求控制器能协作控制请求代理对总线的访问。例如,可以设置与总线B隔离的第二总线,并可将请求代理、请求代理控制器与仲裁器全部连接在第二总线上直接互相通信。作为另一实例,仲裁器10可通过控制器12连接在请求代理t、r、d、p上,如图1中所示,并且还通过直接线路(未示出)连接在请求代理上。
请求代理t、r、d、p包括具有对连接在总线上的被请求代理的可控制的传递信息的能力的任何代理。典型代理实例包含诸如FIFO、DRAM及摄象机等设备。被请求代理包括能通过仲裁器与诸如FIFO及DRAM通信的任何代理。
请求代理控制器12管理从请求代理t、r、d、p到仲裁器10的信息流。例如,如果请示代理之一为FIFO,控制器将连续地实现指定FIFO中应对其写入或从其检索信息的单元的指针的更新。控制器12还监视从请求代理到总线的每一次传输的完成状态。控制器也可执行方便数字系统的独一无二的要求的功能。例如,如果总线B正在按照IEEE 1394标准操作,每当总线不能获得时,控制器可临时存储要在总线上传输的信息。
仲裁器10检测请求代理t、r、d、p对总线B的访问请求,设置指示最后考虑访问总线的请求代理对及各对中的代理的标志,以及在这些标志的基础上确定下一个给予哪一请求代理访问总线。授予访问是按照下述优先级作出的·在不是最后考虑访问的对中,不是最后考虑访问的请求代理;·在不是最后考虑访问的对中,最后考虑访问的请求代理;·在最后考虑访问的对中,不是最后考虑访问的请求代理;·在最后考虑访问的对中,最后考虑访问的请求代理。
图2、3、4与5展示在四种不同情况中授予对总线的访问次序,即·全部四个代理t、r、d、p都在请求访问(图2)。·只有代理r、d与p(一对中的两个及另一对中只有一个)正在请求访问(图3)。·只有代理r与d(每对一个)正在请求访问(图4)。·只有代理t与r(来自一对的两个,另一对没有)正在请求访问(图5)。其它所有可能情况类似于图3、4与5中所示的。这便是·图3能适应于表示其中r、d或p为不正在请求访问总线的唯一代理的情况。·图4能适应于表示只有代理t与p正在请求访问的情况。·图5能适应于表示只有代理d与p正在请求访问的情况。
注意图3、4与5中的虚线框指示其中它所表示的代理当前不在请求访问或没有这种代理当前连接在系统上的情况。在这两种情况中,都将这种代理作为不正在请求的存在的代理对待。
在图6A至6J中所提供的流程图中描述按照本发明的授予请求代理访问的方法的实施例。如图6A中所示,仲裁器10通过在A1上等待通电复位(POR)命令起动该方法。当在A2上检测到这一命令时,仲裁器通过置位与复位指示这些代理的最后受服务状态的预定标志在A2.1上初始化系统。这建立了代理访问总线的初始优先级。具体地,仲裁器置位提供来指示哪一对代理(tr或dp)最后受服务(即最好考虑访问总线B)的一个标志,在各对中置位提供来指示该对中哪一个代理最后受服务的一个标志,及复位另一对代理及两个中的另一代理的对应标志。在所述实例中,该仲裁器·置位标志dp,指示dp是最后受服务的一对代理;·复位标志tr,指示tr不是最后一对受服务的代理;·置位标志t与d,指示这些是分别在对tr与dp中最后受服务的代理;·复位标志t与p,指示这些不是分别在对tr与dp中最后受服务的代理。
初始化系统之后,仲裁器在A3上进入启动服务状态,然后在判定A4上检测是否所有代理d、p、t、r都正在请求访问总线B。如果否,进入判定B1(图6B)。如果是,仲裁器进入判定A5并检测dp是否最后受服务的对。如果判定A5为是,仲裁器进入判定A6并检测代理r是否是对tr中最后受服务的代理。
如果判定A6为是,仲裁器·授予代理t访问;·复位标志r与dp,指示代理r与对dp不是最后受服务的;·置位标志t与tr,指示代理t与对tr是最后受服务的;·置位标志t与tr,指示代理t与对tr是最后受服务的;·在A3.1上进入等待模式,直到在A3.2上检测到已完成了对代理t的服务为止(即代理t已完成其对总线B的传输);以及·当已完成了对代理t的服务时,返回到A3上的开始服务状态。如果判定A6为否,则仲裁器·授予代理r访问;·复位标志t与dp,指示代理t与对dp不是最后受服务的;·置位标志r与tr,指示代理r与对tr是最后受服务的;·在A3.1上进入等待模式,直到在判定A3.2上检测到已完成了对代理r的服务为止(即代理r已完成其对总线B的传输);以及·在完成了对代理r的服务时,返回到A3上的开始服务状态。
如果判定A5为否,仲裁器进入判定A5.1并检测代理d是否所服务的对dp的最后一个,如果判定A5.1为是,则仲裁器·授予代理p访问;·复位标志d与tr,指示代理d与对tr不是最后受服务;·置位标志p与dp,指示代理p与对dp是最后受服务的;·在A3.1上进入等待模式直到在判定A3.2上检测到已完成对代理p的服务为止(即代理p已完成了其对总线B的传输);以及·在已完成了对代理p的服务时,返回到A3上的开始服务状态。如果判定A4为否,则仲裁器·授予代理d访问;·复位标志p与tr,指示代理p与对tr不是最后受服务的;·置位标志d与dp,指示代理d与对dp是最后受服务的;·在A3.1上进入等待模式直到在判定A3.2上检测到已完成了对代理d的服务为止(即代理d已完成其对总线B的传输);以及·在已完成了对代理d的服务时,返回到A3上的开始服务状态。
每当判定A4为否时,仲裁器沿判定链的优先级下行·B1代理d、p、r是否都正在请求访问?(见图6B。)·C1代理d、p、t是否都正在请求访问?(见图6C。)·D1代理p、t、r是否都正在请求访问?(见图6D。)·E1代理d、t、r是否都正在请求访问?(见图6E。)·F1代理d、p是否都正在请求访问?(见图6F。)·G1代理t、r是否都正在请求访问?(见图6G。)·H1代理p、r是否都正在请求访问?(见图6H。)·I1代理p、t是否都正在请求访问?(见图6I。)·J1对tr或对dp是否都正在请求访问?(见图6J。)直到检测到请求为止。如果未检测到请求,仲裁器返回到开始服务状态A3。
图6B示出开始在判定B1上的子例程,在其中仲裁检测是否所有代理d、p、r都正在请求访问总线B。如果否,它进入判定C1(图6C)。然而如果是,仲裁器进入判定B2并检测dp是否是最后受服务的对。
如果评定B2为是,仲裁器·授予代理r访问;·复位标志t与dp,指示代理t与对dp不是最后受服务的;·置位标志r与tr,指示代理r与对tr是最后受服务的;·在A3.1上进入等待模式直到在判定A3.2上检测到已完成了对代理t的服务为止;以及·在已完成了对代理t的服务时,返回到A3上的开始服务状态。
如果判定B2为否,仲裁器进入判定B3并检测代理d是否对dp的最后受服务的。
如果判定B3为是,仲裁器· 授予代理p访问;· 复位标志d与tr,指示代理d与对tr不是最后受服务的;· 置位标志p与dp,指示代理p与对dp是最后受服务的;· 在A3.1上进入等待模式,直到在判定A3.2上检测到已完成了对代理p的服务为止;以及· 在已完成了对代理p的服务时,返回到A3上的开始服务状态。
如果判定B3为否,仲裁器· 授予代理d访问;· 复位标志p与tr,指示代理p与对tr不是最后受服务的;· 置位标志d与dp,指示代理d与对dp是最后受服务的;· 在A3.1上进入等待模式直到在判定A3.2上检测到已完成了对代理d的服务为止;以及· 在已完成了对代理d的服务时,返回到A3上的开始服务状态。
图6C示出在判定C1上开始的子例程,在其中仲裁器检测是否所有代理d、p、t都正在请求访问总线B。如果否,它进入判定D1(图6D)。然而如果是,仲裁器进入判定C2并检测dp是否最后受服务的对。
如果判定C2为是,仲裁器· 授予代理t访问;· 复位标志r与dp,指示代理r与对dp不是最后受服务的;· 置位标志t与tr,指示代理t与对tr是最后受服务的;· 在A3.1上进入等待模式直到在判定A3.2上检测到已完成了对代理t的服务为止;以及· 在完成了对代理t的服务时,返回到A3上的开始服务状态。
如果判定C2为否,仲裁器进入判定C3并检测代理d是否对dp的最后受服务的。
如果判定C3为是,仲裁器· 授予代理p访问;· 复位标志d与tr,指示代理d与对tr不是最后受服务的;· 置位标志p与dp,指示代理p与对dp是最后受服务的;· 在A3.1上进入等待模式直到在判定A3.2上检测到已完成对代理p的服务时为止;以及· 在已完成了对代理p的服务时,返回到A3上的开始服务状态。
如果判定C3为否,仲裁器· 授予代理d访问;· 复位标志p与tr,指示代理p与对tr不是最后受服务的;· 置位标志d与dp,指示代理d与对dp是最后受服务的;· 在A3.1上进入等待模式直到在判定A3.2上检测到已完成对代理d的服务为止;以及· 在已完成了对代理d的服务时,返回到A3上的开始服务状态。
图6D示出在判定D1上开始的子例程,在其中仲裁器检测是否所有代理p、t、r都正在请求访问总线B。如果否,它进入判定E1(图6E)。然而如果是,仲裁器进入判定D2并检测tr是否最后受服务的对。
如果判定D2为是,仲裁器· 授予代理p访问;· 复位标志d与tr,指示代理d与对tr不是最后受服务的;· 置位标志p与dp,指示代理p与对dp是最后受服务的;· 在A3.1上进入等待模式直到在判定A3.2上检测到已完成对代理p的服务为止;以及· 在已完成对代理p的服务时,返回到A3上的开始服务状态。
如果判定D2为否,仲裁器进入判定D3并检测代理r是否对tr的最后受服务的。
如果判定D3为是,仲裁器· 授予代理t访问;· 复位标志r与dp,指示代理r与对dp不是最后受服务的;· 置位标志t与tr,指示代理t与对tr是最后受服务的;· 在A3.1上进入等待模式直到在判定A3.2上检测到已完成了对代理t的服务为止;以及· 完成对代理t的服务时,返回到A3上的开始服务状态。
如果判定D3为否,仲裁器· 授予代理r访问;· 复位标志t与dp,指示代理t与对dp不是最后受服务的;· 置位标志r与tr,指示代理r与对tr是最后受服务的;· 在A3.1上进入等待模式直到在判定A3.2上检测到已完成对代理r的服务为止;以及· 在完成对代理r的服务时,返回到A3上的开始服务状态。
图6E示出在判定E1上开始的子例程,其中仲裁器检测是否所有代理d、t、r都正在请求访问总线B。如果否,它进入判定F1(图6F)。然而如果是,仲裁器进入判定E2并检测tr是否最后受服务的对。
如果判定E2为是,仲裁器· 授予代理d访问;· 复位标志p与tr,指示代理p与对tr不是最后受服务的;· 置位标志d与dp,指示代理d与对dp是最后受服务的;· 在A3.1上进入等待模式直到在判定A3.2上检测到已完成对代理d的服务为止;以及· 在完成对代理d的服务时,返回到A3上的开始服务状态。
如果判定E2为否,仲裁器进入判定E3并检测代理r是否对tr的最后受服务的。
如果判定E3为是,仲裁器· 授予代理t访问;· 复位标志r与dp,指示代理r与对dp不是最后受服务的;· 置位标志t与tr,指示代理t与对tr是最后受服务的;· 在A3.1上进入等待模式直到在判定A3.2上检测到已完成对代理t的服务时为止;以及· 在完成对代理t的服务时,返回到A3上的开始服务状态。
如果判定E3为否,仲裁器· 授予代理r访问;· 复位标志t与dp,指示代理t与对dp不是最后受服务的;· 置位标志r与tr,指示代理r与对tr是最后受服务的;· 在A3.1上进入等待模式直到在判定A3.2上检测到已完成对代理r的服务时为止;以及· 在已完成对代理r的服务时,返回到A3上的开始服务状态。
图6F示出在判定F1上开始的子例程,其中仲裁器检测是否代理d、p都正在请求访问总线B。如果否,它进入判定F3并检测是否代理t、r都正在请求访问总线B。如果否,它进入判定G1(图6G)。
如果判定F1为是,仲裁器进入判定F2并检测代理p是否对dp的最后受服务的。如果判定F2为是,它· 授予代理d访问;· 复位标志p与tr,指示代理p与对tr不是最后受服务的;· 置位标志d与dp,指示代理d与对dp是最后受服务的;· 在A3.1上进入等待模式直到在判定A3.2上检测到已完成对代理d的服务时为止;以及· 在已完成对代理d的服务时,返回到A3上的开始服务状态。
如果判定F2为否,它· 授予代理p访问;· 复位标志d与tr,指示代理d与对tr不是最后受服务的;· 置位标志p与dp,指示代理p与对dp是最后受服务的;· 在A3.1上进入等待模式直到在判定A3.2上检测到已完成对代理p的服务时为止;以及· 在已完成对代理p的服务时,返回到A3上的开始服务状态。
如果判定F3为是,仲裁器进入判定F4并检测代理r是否对tr的最后受服务的。
如果判定F4为是,它· 授予代理t访问;· 复位标志r与dp,指示代理r与对dp不是最后受服务的;· 置位标志r与dp,指示代理t与对tr是最后受服务的;· 在A3.1上进入等待模式直到在判定A3.2上检测到已完成对代理t的服务时为止;以及· 在已完成对代理t的服务时,返回到A3上的开始服务状态。
如果判定F4为否,仲裁器· 授予代理r访问;· 复位标志t与dp,指示代理t与对dp不是最后受服务的;· 置位标志r与tr,指示代理r与对tr是最后受服务的;· 在A3.1上进入等待模式直到在判定A3.2上检测到已完成对代理r的服务时为止;以及· 在已完成对代理r的服务时,返回到A3上的开始服务状态。
图6G示出在判定G1上开始的子例程,其中仲裁器检测代理t、r是否都正在请求访问总线B。如果否,它进入判定G3并检测是否代理d、t都正在请求访问总线B。
如果否,它进入判定H1(图6H)。· 如果判定G1为是,仲裁器进入判定G-2并检测代理r是否对tr的最后受服务的。如果判定G2为是,它· 授予代理t访问;· 复位标志r与dp,指示代理r与对dp不是最后受服务的;· 置位标志t与tr,指示代理t与对tr是最后受服务的;· 在A3.1上进入等待模式直到在判定A3.2上检测到已完成对代理t的服务时为止;以及· 在已完成对代理t的服务时,返回到A3上的开始服务状态。
如果判定G2为否,它· 授予代理r访问;· 复位标志t与dp,指示代理t与对dp不是最后受服务的;· 置位标志r与tr,指示代理r与对tr是最后受服务的;· 在A3.1上进入等待模式直到在判定A3.2上检测到已完成对代理r的服务时为止;以及· 在已完成对代理r的服务时,返回到A3上的开始服务状态。
如果判定G3为是,仲裁器进入判定G4并检测代理t是否对dt的最后受服务的。
如果判定G4为否,它· 授予代理t访问;· 复位标志r与dp,指示代理t与对dp不是最后受服务的;· 置位标志t与tr,指示代理t与对tr是最后受服务的;· 在A3.1上进入等待模式直到在判定A3.2上检测到已完成对代理t的服务时为止;以及· 在已完成对代理t的服务时,返回到A3上的开始服务状态。
如果判定G4为是,仲裁器· 授予代理d访问;·复位标志p与tr,指示代理p与对tr不是最后受服务的;·置位标志d与dp,指示代理d与对dp是最后受服务的;·在A3.1上进入等待模式直到在判定A3.2上检测到已完成对代理d的服务时为止;以及·在已完成对代理d的服务时,返回到A3上的开始服务状态。
图6H示出在判定H1上开始的子例程,其中仲裁器检测代理p、r是否都正在请求访问总线B。如果否,它进入判定H3并检测代理d、r是否都正在请求访问总线B。如果否,它进入判定I1(图6I)。
如果判定H1为是,仲裁器进入判定H2并检测代理r是否对pr的最后受服务的。
如果判定H2为否,它·授予代理r访问;·复位标志t与dp,指示代理t与对dp不是最后受服务的;·置位标志r与tr,指示代理r与对tr是最后受服务的;·在A3.1上进入等待模式,直到在判定A3.2上检测到已完成对代理r的服务时为止;以及·在已完成对代理r的服务时,返回到A3上的开始服务状态。
如果判定H2为是,它·授予代理p访问;·复位标志d与tr,指示代理d与对tr不是最后受服务的;·置位标志p与dp,指示代理p与对dp是最后受服务的;·在A3.1上进入等待模式直到在判定A3.2上检测到已完成对代理p的服务时为止;以及·在完成对代理p的服务时,返回到A3上的开始服务状态。·如果判定H3为是,仲裁器进入判定H4并检测代理r是否对dr的最后受服务的。如果判定H4为是,它·授予代理d访问;·复位标志p与tr,指示代理p与对tr不是最后受服务的;·置位标志d与dp,指示代理d与对dp是最后受服务的;·在A3.1上进入等待模式直到在判定A3.2上检测到已完成对代理d的服务时为止;以及·在已完成对代理d的服务时,返回到A3上的开始服务状态。
如果判定H4为否,仲裁器·授予代理r访问;·复位标志t与dp,指示代理t与对dp不是最后受服务的;·置位标志r与tr,指示代理r与对tr是最后受服务的;·在A3.1上进入等待模式直到在判定A3.2上检测到已完成对代理r的服务时为止;以及·在已完成对代理r的服务时,返回到A3上的开始服务状态。
图6I示出在判定I1上开始的子例程,其中仲裁器检测代理p、t是否都正在请示访问总线B。如果否,它进入判定J1(图6J)。然而如果是,仲裁器进入判定I2并检测代理t是否代理p、t的最后受服务的。如果判定I2为否,它·授予代理t访问;·复位标志r与dp,指示代理r与对dp不是最后受服务的;·置位标志t与tr,指示代理t与对tr是最后受服务的;·在A3.1上进入等待模式直到在判定A3.2上检测到已完成对代理t的服务时为止;以及·在已完成对代理t的服务时,返回到A3上的开始服务状态。
如果判定I2为是,它·授予代理p访问;·复位标志d与tr,指示代理d与对tr不是最后受服务的;·置位标志p与dp,指示代理p与对dp是最后受服务的;·在A3.1上进入等待模式直到在判定A3.2上检测到已完成对代理p的服务时为止;以及·已完成对代理p的服务时,返回到A3上的开始服务状态。
图6J示出在判定J1上开始的子例程,其中仲裁器检测是对tr或对dp正在请求访问总线B。如果否,仲裁器返回到A3上的开始服务状态。
如果判定J1为是,仲裁器进入判定J2并检测代理d是否正在请求访问。如果是,它·授予代理d访问;·复位标志p与tr,指示代理p与对tr不是最后受服务的;·置位标志d与dp,指示代理d与对dp是最后受服务的;·在A3.1上进入等待模式直到在判定A3.2上检测到已完成对代理d的服务时为止;以及·在已完成对代理d的服务时,返回到A3上的开始服务状态。
如果判定J2为否,仲裁器进入判定J3并检测代理r是否正请求访问。如果是,它·授予代理r访问;·复位标志t与dp,指示代理t与对dp不是最后受服务的;·置位标志r与tr,指示代理r与对tr是最后受服务的;·在A3.1上进入等待模式直到在判定A3.2上检测到已完成对代理r的服务时为止;以及·在已完成对代理r的服务时,返回到A3上的开始服务状态。
如果判定J3为否,仲裁器进入判定J4并检测代理t是否正在请求访问。如果是,它·授予代理t访问;·复位标志r与dp,指示代理r与对dp不是最后受服务的;·置位标志t与tr,指示代理t与对tr是最后受服务的;·在A3.1上进入等待模式直到在判定A3.2上检测到已完成对代理t的服务时为止;以及·在已完成对代理t的服务时,返回到A3上的开始服务状态。
如果判定J4为否,仲裁器进入判定J5并检测代理p是否正在请求访问。如果是,它·授予代理p访问;·复位标志d与tr,指示代理d与对tr不是最后受服务的;·置位标志p与dp,指示代理p与对dp是最后受服务的;·在A3.1上进入等待模式直到在判定A3.2上检测到已完成对代理p的服务时为止;以及·在已完成对代理p的服务时,返回到A3上的开始服务状态。
如果判定J5为否,仲裁器返回到A3上的开始服务状态。
图7示出如果能将采用按照本发明的方法的系统扩展到任何数目的请求代理。具体地,图7A、7B、7C与7D集体示出多达28个连接在图1中所示的控制器12上的请求代理的服务的优先级的实例。如图3至5中,各虚线框表示当前不请求访问的代理或并未实际连接在系统上的代理。
分配给各代理定义其服务优先级的分层符号。在这一特定实例中,有三个分层的级·第一级,具有请求代理t、r、d、p;·第二级,具有请求代理t1、t2、r1、r2、d1、d2、p1、p2;以及·第三级,具有请求代理t1.1、t1.2、t2.1、t2.2、r1.1、r1.2、r2.1、r2.2、d1.1、d1.2、d2.1、d2.2、p1.1、p1.2、p2.1、p2.2。
利用图6的流程图,按下述次序顺序服务这些代理的群·群t、r、d、p;·群t1、r1、d1、p1;·群t2、r2、d2、p2;·群t1.1、r1.1、d1.1、p1.1;·群t1.2、r1.2、d1.2、p1.2;·群t2.1、r2.1、d2.1、p2.1;·群t2.2、r2.2、d2.2、p2.2。为了按这一次序实现服务,可利用一组标志(如每一群一个)来跟踪哪一个群是最后受服务的。注意,可通过改变它们的分层符号简单地改变单个代理的服务优先级。
按照较佳实施例,可通过参照图2至5中对应于相当的请求情况的任何的一种确定授予图7的各群中的代理访问的次序。具体地·在第一级的单个群t、r、d、p中,所有这四个代理都正在请求。这对应于图2中所示情况,并且按流程图的图6A所确定的次序授予这些请求代理访问。然后服务于第二级的第一群。·在第二级的第一群t1、r1、d1、p1中,所有这四个代理都正在请求。这也对应于图2中所示的情况,并按流程图的图6A所确定的次序授予这些请求代理访问。然后服务于第二级的第二群。·在第二级的第二群t2、r2、d2、p2中,所有这四个代理也都正在请求。这又对应于图2中所示的情况,并且按流程图的图6A所确定的次序授予这些请求代理访问。然后服务于第三级的第一群。·在第三级的第一群t1.1、r1.1、d1.1、p1.1中,只有代理t1.1与d1.2正在请求。这实质上对应于图4中所示的情况,并且按流程图的图6G所确定的次序授予这些请求代理访问。然后服务于第三级的第二群。·在第三级的第二群t1.2、r1.2、d1.2、p1.2中,只有代理t1.2与p1.2正在请求。这实质上对应于图4中所示的情况,并且按流程图的图6I所确定的次序授予这些代理访问。然后服务于第三级的第三群。·在第三级的第三群t2.1、r2.1、d2.1、p2.1中,只有代理d2.1与p2.1正在请求。这逆对应于图5中所示的情况,并且按流程图的图6F所确定的次序授予这些代理访问。然后服务于第三级的第四群。·在第三级的第四群t2.2、r2.2、d2.2、p2.2中,只有代理t2.2与d2.2正在请求。这实质上对应于图4中所示的情况,并且按流程图的图6G所确定的次序授予这些代理访问。然后通过返回到第一级的单一群重复该服务进程。
权利要求
1.一种服务多个请求访问总线(B)的代理的方法,所述方法包括a.提供用于接收来自请求代理第一(tr)与第二(dp)对的请求的通信路径;b.提供第一对中哪一个请求代理(t、r)最后考虑访问总线的指示;c.提供第二对中哪一个请求代理(d、p)最后考虑访问总线的指示;d.提供哪一对请求代理最后考虑访问总线的指示;e.按照下述优先级授予当前请求访问的请求代理访问;ⅰ.在不最后考虑访问的对中,不最后考虑访问的请求代理;ⅱ.在不最后考虑访问的对中,最后考虑访问的请求代理;ⅲ .在最后考虑访问的对中,不最后考虑访问的请求代理;ⅳ.在最后考虑访问的对中,最后考虑访问的请求代理。
2.权利要求1中的方法,其中将请求代理中缺失的一个作为不请求访问的代理对待。
3.权利要求1中的方法,其中为多个请求代理的群提供通信路径,各所述群包括第一与第二对所述请求代理。
4.权利要求3中的方法,其中这些群是按预定的分层次序服务的。
5.一种服务多个请求访问总线(B)的代理的系统,所述系统包括a.用于接收来自请求代理第一(tr)与第二(dp)对的请求的通信路径;b.用于提供第一对中哪一个请求代理(t、r)最后考虑访问总线的指示的装置;c.用于提供第二对中哪一个请求代理(d、p)最后考虑访问总线的指示的装置;d.用于提供哪一对请求代理最后考虑访问总线的指示的装置;e.用于按照下述优先级授予当前请求访问的请求代理访问的装置ⅰ.在不最后考虑访问的对中,不最后考虑访问的请求代理;ⅱ.在不最后考虑访问的对中,最后考虑访问的请求代理;ⅲ.在最后考虑访问的对中,不最后考虑访问的请求代理;ⅳ.在最后考虑访问的对中,最后考虑访问的请求代理。
6.权利要求5中的系统,其中将请求代理中缺失的一个作为不请求访问的代理对待。
7.权利要求5中的系统,其中为多个请求代理的群提供通信路径,各所述群包括第一与第二对所述请求代理。
8.权利要求7的系统,其中这些群是按预定的分层次序服务的。
全文摘要
提供了服务多个请求访问总线的代理的方法与系统。这些代理是按各具有第一与第二对代理的群的分层次序布置的。在各群内,置位标志来指示哪一对是最后服务的及各对中哪一个代理是最后服务的。
文档编号G06F15/16GK1321274SQ00801766
公开日2001年11月7日 申请日期2000年6月16日 优先权日1999年6月22日
发明者A·辛格 申请人:皇家菲利浦电子有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1