CN1253806C - 仲裁电路和数据处理系统 - Google Patents

仲裁电路和数据处理系统 Download PDF

Info

Publication number
CN1253806C
CN1253806C CN03154808.3A CN03154808A CN1253806C CN 1253806 C CN1253806 C CN 1253806C CN 03154808 A CN03154808 A CN 03154808A CN 1253806 C CN1253806 C CN 1253806C
Authority
CN
China
Prior art keywords
priority
circuit
processor
data
bus master
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.)
Expired - Fee Related
Application number
CN03154808.3A
Other languages
English (en)
Other versions
CN1508709A (zh
Inventor
高田由香里
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Renesas Electronics Corp
Original Assignee
Renesas Technology Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Renesas Technology Corp filed Critical Renesas Technology Corp
Publication of CN1508709A publication Critical patent/CN1508709A/zh
Application granted granted Critical
Publication of CN1253806C publication Critical patent/CN1253806C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/36Handling requests for interconnection or transfer for access to common bus or bus system
    • G06F13/362Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control
    • G06F13/364Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control using independent requests or grants, e.g. using separated request and grant lines

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Bus Control (AREA)
  • Memory System (AREA)

Abstract

一种确保公平总线访问的仲裁电路和数据处理系统被提供。仲裁电路(1)具有优先权检查块(21)和循环法块(22)。优先权检查块(21)检查从处理器提供的优先权信息条,指定正呈现有最高优先权的优先权信息的处理器,即有最高优先权水平的处理器,并将检查结果(CHK)输出给循环法块(22)。保持先前仲裁过程的结果的循环法块(22)在优先权检查结果(CHK)和从先前结果产生的循环法顺序的基础上产生并输出处理器选择信号(SE)。

Description

仲裁电路和数据处理系统
技术领域
本发明涉及仲裁电路,其用于在具有通过共享总线连接的多个总线主控器的数据处理系统中在总线访问请求中进行仲裁,更具体而言,涉及一种在多个处理器通过共享总线连接的多处理器中使用的仲裁电路。
背景技术
当多个I/O模块共享公用总线时,一种被称为“循环法(roundrobin)”的方法被用于仲裁从I/O模块进行的总线访问。
循环法控制将最低访问优先权指定给被许可总线访问的I/O模块以使I/O模块具有用于总线访问的相等机会。
对于使用循环法控制的常规技术,日本专利申请公开No.10-91577(1998)的3到11列、图1到3(专利文档1)公开了组合优先权控制和循环法控制的方案,其中依照I/O模块的重要性水平来允许访问。
日本专利申请公开No.4-328665(1992)4到6页、图1到3(专利文档2)亦公开了优先权控制和循环法控制的组合,其中每个处理器都被提供了两种优先权,并且依照这两种优先权的组合来确定最高优先权处理器。
此外,日本专利申请公开No.1-197865(1989)3到5页、图1到6(专利文档3)公开了一种技术,在其中当从有低优先权的模块进行的总线访问被拒绝时,如果该模块有预定的时间段或更长时间没有被给予访问,则该时间被测量以优先许可该模块的总线访问。
普通的循环法控制方案按顺序接受来自I/O模块的任何请求,而不考虑请求的内容,亦不在用于系统运行的重要请求和可被废弃的请求如指令预取请求(数据的预读取)之间进行区分。另一方面,专利文档1到3公开了结合亦考虑优先权的控制方案的实例。然而,这些技术可能不能提供公平的总线访问,因为有低优先权的I/O模块可能维持不被给予总线访问的任何机会。
发明内容
本发明的目的是提供一种可确保公平总线访问的仲裁电路和数据处理系统。
本发明的第一方面想要的是一种仲裁电路,用于仲裁从通过共享总线连接的多个总线主控器提出的总线访问请求。该仲裁电路包括优先权检查块和循环法块。优先权检查块接收分别从多个总线主控器输出的多条优先权信息,并且比较优先权信息条并指定有最高优先权的主控器以输出检查结果。循环法块包括:循环法控制单元,用于通过循环法控制来确定来自多个总线主控器的总线访问请求的优先权顺序;循环法屏蔽单元,用于用屏蔽数据来屏蔽检查结果的数据以输出经屏蔽的检查结果,所述屏蔽数据是在优先权顺序的基础上产生的,并且剩下至少关于最高优先权主控器的数据不被屏蔽;以及最终选择单元,用于选择总线主控器,它的访问请求应在经屏蔽的检查结果和检查结果的基础上被接受。
以上所示的仲裁电路包括优先权检查块和循环法块,由此组合了优先权仲裁和循环法仲裁。这样,在优先向提出高优先权总线访问请求的总线主控器给予总线访问权利的同时,仲裁电路用在循环法顺序的基础上产生的屏蔽数据来屏蔽检查结果数据以使至少关于最高优先权总线主控器的数据被保持未屏蔽,并且提供经屏蔽的检查结果。由此使一些优先权信息无效并减小或消除该优先权信息的影响,并且提供了确保总线访问公平性的仲裁。
本发明的第二方面想要的是一种数据处理系统,其具有接收分别从通过共享总线连接的多个总线主控器输出的多条优先权信息以仲裁总线访问请求的仲裁电路。在该数据处理系统中,多个总线主控器每个都包括用于产生优先权信息的优先权产生电路,并且当来自对应总线主控器的总线访问请求不被接受时,每个优先权产生电路都提高优先权信息的水平。
依照该数据处理系统,当来自总线主控器的总线访问请求未被接受时,那个总线主控器中的优先权产生电路提高优先权信息的水平。被拒绝的总线主控器的优先权由此被提高以使来自有低优先权的总线主控器的请求将不维持不被接受。这允许了更公平的仲裁并确保了更公平的总线访问。
本发明的第三方面想要的是一种数据处理系统,其具有接收分别从通过共享总线连接的多个总线主控器输出的多条优先权信息以仲裁总线访问请求的仲裁电路。在该数据处理系统中,多个总线主控器每个都包括用于产生优先权信息的优先权产生电路,并且当总线主控器的工作频率已被改变时,对应的优先权产生电路输出分别对应于多个工作频率的优先权信息条之一。
依照该数据处理系统,当总线主控器的工作频率已被改变时,优先权产生电路输出优先权预定信息条的对应的一个。与该总线主控器的工作频率一致的最适合的优先权信息可由此被获得。
本发明的第四方面想要的是一种数据处理系统,其具有接收分别从通过共享总线连接的多个总线主控器输出的多条优先权信息以仲裁总线访问请求的仲裁电路。在该数据处理系统中,多个总线主控器每个都包括用于产生优先权信息的优先权产生电路,并且当总线主控器的状况已被改变时,对应的优先权产生电路输出优先权预定信息条之一。
依照该数据处理系统,当总线主控器的状况已被改变时,优先权产生电路输出分别对应于多个状况的优先权信息条中对应的一条优先权信息。与该总线主控器的状况一致的最适合的优先权信息可由此被获得。
当结合所附的附图时,从对本发明的以下详述来看,本发明的这些和其它目的、特点、方面和优点将变得更为明显。
附图说明
图1是示出依照本发明的数据处理系统的总配置的方块图;
图2是示出处理器中配置的方块图;
图3是示出处理器中配置的方块图;
图4是示出本发明仲裁电路的配置的方块图;
图5是示出本发明仲裁电路中优先权检查块的配置的图;
图6是示出本发明仲裁电路中循环法块的配置的图;
图7是被用于描述本发明仲裁电路的工作的时序图;
图8是示出本发明数据处理系统中的优先权产生电路的配置的方块图;
图9是被用于描述本发明数据处理系统中的优先权产生电路的工作的时序图;
图10是示出本发明数据处理系统中的优先权产生电路的修改的配置的方块图;
图11是示出本发明数据处理系统中的优先权产生电路的修改的配置的方块图;以及
图12是示出本发明数据处理系统中的优先权产生电路的修改的配置的方块图。
具体实施方式
<整个系统的配置>
计算机系统包括通过共享总线互连的多个总线主控器,包括用作总线主控器的CPU。具体而言,最近开发的多处理器具有通过共享总线连接的多个处理器或多个总线主控器。在具有多个总线主控器的这种系统中,用于仲裁总线访问请求的仲裁电路扮演了重要角色。
首先,参考图1,描述应用本发明的仲裁电路的示例数据处理系统的总体配置。
图1中所示的数据处理系统具有作为总线主控器的四个处理器P0、P1、P2和P3,其中每个处理器通过共享的单个总线SB连接于被访问的部件TG(以下被称为目标),如存储器。
处理器P0到P3分别输出请求RQ0、RQ1、RQ2和RQ3,并且总线访问请求RQ0到RQ3被发送给仲裁电路1。
处理器P0到P3亦提供优先权信息PR0、PR1、PR2和PR3的输出,其亦被发送给仲裁电路1。当来自处理器的总线访问请求被阻塞时,仲裁电路1依照组合基于循环法控制的优先权顺序和基于来自处理器的优先权信息PR0到PR3的优先权顺序的方案来执行仲裁过程。仲裁电路然后输出处理器选择信号SE以允许处理器使用总线。
然后来自被允许使用总线的处理器的请求作为目标访问请求TAC从仲裁电路1被发送到目标TG,然后它在目标中被处理。处理结果被发送回处理器。
本发明被应用于仲裁电路1以确保公平的总线访问。
<A.第一优选实施例>
上述仲裁电路1的配置和工作现在被描述为本发明的第一优选实施例。
<A-1.设备的配置>
<A-1-1.处理器的配置>
首先,参考图2来描述图1中所示的处理器P0到P3的示例配置。处理器P0到P3具有相同的配置,并且为了举例,图2示出处理器P0。
如图2中所示,处理器P0包括CPU(中央处理单元)11、MMU(存储器管理单元)12、指令高速缓冲存储器13和数据高速缓冲存储器14。选择器15选择来自指令高速缓冲存储器13和数据高速缓冲存储器14的请求RQA和RQB之一并将所选的一个输出为请求RQ0。
处理器P0亦包括优先权产生电路16。优先权产生电路16产生优先权值,与总线访问请求一起它被输出为优先权信息PR0。优先权产生电路16在例如预定软件的基础上依照处理器的优先权水平产生适当的优先权值。
尽管图2的处理器P0具有单个的优先权产生电路16,指令高速缓冲存储器13和数据高速缓冲存储器14可被提供有如在图3的处理器POX中所示的相应优先权产生电路16。
也就是说,优先权信息条PRA和PRB可分别被提供以与来自指令高速缓冲存储器13的请求(例如取指令)RQA和来自数据高速缓冲存储器14的请求(例如数据访问)RQB一致。在此情况下,当选择请求之一时,选择器151比较优先权信息条PRA和PRB并选择具有较高优先权的请求以输出请求RQ0和优先权信息PR0。
<A-1-2.仲裁电路的配置>
接下来,参考图4到6来描述仲裁电路1的配置。
图4是示出仲裁电路1的配置的方块图。如图4中所示,仲裁电路1包括优先权检查块21和循环法块22。
优先权检查块21检查从处理器提供的优先权信息条以了解哪个处理器正输出最高优先权的信息,即了解哪个是最高优先权的处理器,并将检查的结果(CHK)输出给循环法块22。
保持先前仲裁过程的结果的循环法块22在优先权检查结果CHK和从先前结果产生的循环法顺序的基础上产生并输出处理器选择信号SE。
<A-1-2-1.优先权检查块>
接下来,参考图5来描述优先权检查块21的配置。
如图5中所示,优先权检查块21以比赛的形式来比较优先权水平以输出最终的检查结果。优先权检查块21包括第一级检查电路211和212以及接收并比较来自第一级检查电路211和212的输出的最后级检查电路213。
第一级检查电路211接收4位的优先权信息PR0和4位的优先权信息PR1并将优先权检查的结果输出为2位的选择位SB1和4位的输出优先权OP1。第一级检查电路212接收4位的优先权信息PR2和4位的优先权信息PR3并将比较的结果输出为2位的选择位SB2和4位的输出优先权OP2。
选择位SB1和SB2以及输出优先权OP1和OP2被给予下一级,即最后级检查电路213。最后级检查电路213比较它们以输出4位的优先权检查结果CHK。
图5的优先权检查块21的电路配置可通过简单地增加或减少检查电路的数量而适合于各种数量的处理器。例如,当处理器的数量被加倍时,即当八个处理器被提供时,则可通过添加两个第一级检查电路并在第一级检查电路和最后级检查电路之间提供用于检查来自第一级检查电路的输出的新检查电路来改变电路配置。
在此情况下,尽管处理器的数量被加倍,检查电路的级数仅被增加一。这样,优先权检查块中的延迟时间不与处理器的数量成比例增加。
优先权检查块21的工作被更具体地描述。假定来自处理器P0的优先权信息被取为Priority(0)(在以下,优先权信息被称为优先权值,这是因为它是由数字表示的),并且来自处理器P1的优先权值被取为Priority(1)。当定义较小的优先权值表示较高的优先权水平时,则第一级检查电路211如表1中所示提供输出。第一级检查电路212以相同的方式提供处理器P2和P3之间的比较的结果。
表1
 请求0  请求1   优先权值比较   选择位   输出优先权
 0  0   无关   2b00
 1  0   无关   2b10   Priority(0)
 0  1   无关   2b01   Priority(1)
 1  1   Priority(0)>Priority(1)   2b01   Priority(1)
 1  1   Priority(0)=Priority(1)   2b11   Priority(0)或(1)
 1  1   Priority(0)<Priority(1)   2b10   Priority(0)
现在参考表1来描述第一级检查电路211的工作。每个都由一个位形成的请求0和请求1分别表示处理器P0和P1是否正提出总线访问请求,其中“0”表示总线访问请求的不存在而“1”表示总线访问请求的存在。
在优先权值比较的列中,“无关”意味着当没有处理器正发出总线访问请求时以及当仅一个处理器正发出总线访问请求时,不需要第一级检查电路比较优先权值。
也就是说,当没有处理器正发出总线访问请求时,比较是没有意义的。当仅一个处理器正发出总线访问请求时,发出总线访问请求的处理器可被无条件地选择。
当两个处理器都在发出相应的总线访问请求时,则必须比较优先权值。
现在,比较结果包括三种型式:Priority(0)大于Priority(1);Priority(0)等于Priority(1);以及Priority(0)小于Priority(1)。
然后在优先权值比较的结果的基础上确定2位的选择位。
也就是说,当一个处理器正发出请求时,被指定给那个处理器的位被设置为1,而用于另一个处理器的位被设置为0。当两个处理器都在发出请求时,选择位依赖于优先权值比较的结果。
具体而言,当没有处理器正发出总线访问请求时,“00”被输出为选择位。表1中的表示“2b00”表明信号是2位的。
当仅处理器P0正发出总线访问请求时,“10”被输出为选择位;当仅处理器P1正发出总线访问请求时,“01”被输出为选择位。
当两个处理器都在发出相应的总线访问请求并且Priority(0)大于Priority(1),即处理器P1具有比处理器P0高的优先权水平时,则“01”被输出为选择位。当Priority(0)和Priority(1)相等时,则“11”被输出为选择位。当Priority(0)小于Priority(1)时,则“10”被输出为选择位。
尽管所选处理器的优先权值与选择位一起被输出为4位的输出优先权,当选择位是“00”时,输出优先权可以取任何值。当仅一个处理器正发出请求时,那个处理器的优先权值被提供为输出。当两个处理器都在发出请求时,在优先权值比较的基础上,第一级检查电路输出有较高优先权水平的处理器即这里的具有较小优先权值的处理器的优先权值;当两个优先权值相等时,它们的任何一个可被输出。
最后级检查电路213从第一级检查电路211和212接收选择位SB1和SB2并输出与在四个处理器中优先权水平比较的最终结果一致的优先权检查结果CHK。
现在,当来自第一级检查电路211和212的输出优先权被分别取为Priority(01)和Priority(23)而从第一级检查电路211和212输出的选择位被分别取为Selb(01)和Selb(23)时,则最后级检查电路213如以下的表2中所示提供其输出。
表2
  Selb(01)   Selb(23)   优先权值比较   最终检查结果
  2b00   2b00   无关   4b0000
  2b00   非2b00   无关   {2b00,Selb(23)}
  非2b00   2b00   无关   {Selb(01),2b00}
  非2b00   非2b00   Priority(01)>Priority(23)   {2b00,Selb(23)}
  非2b00   非2b00   Priority(01)=Priority(23)   {Selb(01),Selb(23)}
  非2b00   非2b00   Priority(01)<Priority(23)   {Selb(01),2b00}
现在,参考表2来描述最后级检查电路213的工作。首先,最后级检查电路213比较从第一级检查电路211和212输出的选择位,而不是第一级检查电路211和212处的总线访问请求。
当选择位Selb(01)和Selb(23)均为“00”时,则不需要优先权值比较过程并且最后级检查电路213将“0000”输出为最终检查结果。表2中的表示“4b0000”表明信号是4位的。
当仅一组选择位Selb(01)和Selb(23)为“00”时,亦不需要优先权值比较过程,在此情况下,最后级检查电路213将4位的值输出为最终检查结果,在该值中选择位Selb(01)和Selb(23)的值以该顺序被安排。
例如,仅选择位Selb(01)为“00”时,则它输出“2b00,Selb(23)”。表示“2b00,Selb(23)”表明高位的两个位为“00”而低位的2个位为“Selb(23)”的4位值。
当没有一个选择位Selb(01)和Selb(23)为“00”时,比较过程是必要的,在此情况下,相应的优先权值被比较。
比较的结果包括三种型式:Priority(01)大于Priority(23);Priority(01)等于Priority(23);以及Priority(01)小于Priority(23)。
然后在优先权值比较的基础上,最终检查结果被输出为4位的值,其中选择位Selb(01)和Selb(23)的值以该顺序被安排。在此情况下,较高优先权的选择位,即具有较小优先权值的选择位被完整无缺地输出,但具有较大优先权值的选择位被输出为“00”。
更具体而言,当Priority(01)大于Priority(23)时,最终检查结果为“2b00,Selb(23)”;当Priority(01)小于Priority(23)时,则最终检查结果为“Selb(01),2b00”。
当Priority(01)和Priority(23)相等时,两组选择位均被输出为“Selb(01),Selb(23)”。
<A-1-2-2.循环法块>
接下来,参考图6来描述循环法块22的配置。
如图6中所示,循环法块22包括循环法控制单元221、循环法屏蔽单元222和最终选择单元223。
循环法控制单元221包括最高优先权处理器编号产生电路2211和循环法顺序保持寄存器2212。在先前仲裁过程结果的基础上,最高优先权处理器编号产生电路2211产生包括新的最高优先权处理器编号PN的循环法顺序RR,其被保持在循环法顺序保持寄存器2212中。循环法顺序保持寄存器2212根据仲裁过程的时序来输出最高优先权处理器编号PN。
最高优先权处理器编号产生电路2211工作以使最低访问优先权被指定给在先前仲裁过程中获得总线访问的处理器。
循环法屏蔽单元222包括屏蔽产生电路2221和屏蔽电路2222。屏蔽产生电路2221接收从循环法控制单元221输出的最高优先权处理器编号PN并产生用于屏蔽给定数据的屏蔽数据MD。屏蔽电路2222接收来自屏蔽产生电路2221的屏蔽数据MD和从优先权检查块21输出的优先权检查结果CHK并执行AND操作以屏蔽优先权检查结果,从而输出4位的经屏蔽的检查结果MCH。
屏蔽数据MD是4位的数据,其最高位的位被指定给处理器P0而其余三个位以P1、P2和P3的顺序被指定给处理器P1、P2和P3。屏蔽数据MD被产生以使被指定给最高优先权处理器编号的位和随后的位均被设置为“1”从而不屏蔽关于最高优先权处理器和被指定给随后位的处理器的优先权数据,并且使在被指定给最高优先权处理器编号之前的位均被设置为“0”从而屏蔽关于被指定给在最高优先权处理器位之前的位的处理器的优先权数据。
以下的表3示出最高优先权处理器编号的清单和对应的屏蔽数据MD。
表3
  最高优先权处理器编号   屏蔽数据
  处理器P0   4b1111
  处理器P1   4b0111
  处理器P2   4b0011
  处理器P3   4b0001
如表3中所示,当最高优先权处理器是处理器P0时,包括最高位的位的所有位被设置为“1”(即关于所有处理器的优先权数据被保持未屏蔽),这是由于最高位的位对应于处理器P0。在此情况下,屏蔽数据MD被提供为“1111”。类似地,当最高优先权处理器是处理器P1时,屏蔽数据MD被提供为“0111”(即仅关于处理器P0的优先权数据被屏蔽)。当最高优先权处理器是处理器P2时,则屏蔽数据MD被提供为“0011”(即仅关于处理器P0和P1的优先权数据被屏蔽),并且当最高优先权处理器是处理器P3时,则屏蔽数据MD被提供为“0001”(即关于处理器P0到P2的优先权数据被屏蔽)。
假定循环法控制单元221表明最高优先权处理器是处理器P2,并且优先权检查块21已确定处理器P0和P3正呈现相同的最高优先权值。则屏蔽电路2222将“0011”接收为屏蔽数据MD并将“1001”接收为优先权检查结果CHK。
然后屏蔽电路2222进行AND操作以将“0001”提供为经屏蔽的检查结果MCH。
从屏蔽电路2222输出的经屏蔽的检查结果MCH和从优先权检查块21输出的优先权检查结果CHK被提供给最终选择单元223。
经屏蔽的检查结果MCH作为输入的高位的4位被提供给最终选择单元223,而优先权检查结果CHK作为输入的低位的4位被提供。
最终选择单元223例如由优先权编码器形成。它从最高位位置搜索输入数据以寻找“1”首先出现的位置。从该位置,最终选择单元223获得请求应被接受的处理器的编号。
也就是说,4位的经屏蔽的检查结果MCR和4位的优先权检查结果以该顺序被安排,同时最高位的位被指定给处理器P0,而随后的位依次被指定给处理器P1、P2和P3,并且同时第五位被再次指定给处理器P0,而随后的位被指定给处理器P1、P2和P3。则被指定给“1”首先出现的位位置的编号的处理器对应于请求应被接受即处理器被许可总线访问的处理器。
例如,当处理器P1具有最高优先权时,优先权检查结果CHK是“0100”,并且循环法顺序是P2、P3、P0、P1,然后屏蔽数据MD是“0011”(第三位被指定给处理器P2,而随后的位均被设置为“1”)。然后屏蔽电路2222对屏蔽数据MD和优先权检查结果CHK执行AND以获得“0000”作为经屏蔽的检查结果MCH。
因此,至最终选择单元223的输入是0000_0100(高位的4位对应于经屏蔽的检查结果,而低位的4位对应于优先权检查结果CHK)。
对于在最终选择单元223中被编码的结果,第一个“1”在第六位的位置被检测到,并且处理器P1被确定为请求被接受的处理器。
当仲裁电路1已接受请求时,它将目标访问请求TAC输出给目标TG。用处理器选择信号SE选择的处理器将请求的内容输出到共享总线SB上。在目标访问请求TAC正被确立(assert)的同时,目标TG接收在共享总线SB上载运的数据,并且它处理该数据并通过共享总线SB将结果发送给所述处理器。
<A-2.设备的操作>
图7是示出上述仲裁操作的总体的时序图。现在参考图4到6来描述讲授如何阅读时序图的一些典型的实例。
图7中的请求RQ0到RQ3表示当信号脉冲为高时正在提出总线访问请求。最高级处理器编号表示在为简单起见用数字0到3表示的处理器P0到P3中被列为最高的处理器的编号。当最高级被指定给处理器P0时,处理器P1、P2和P3以该顺序被排列,而当最高级被指定给处理器P3时,处理器P0、P1和P2以该顺序被排列。这样,排列是依照所谓的循环法控制来进行的,并因此被称为循环法顺序。
尽管用于优先权信息PR0、PR1、PR2和PR3的优先权值可以取从0到15的16个值,在此假定处理器使用值1到4。
被接受的处理器的编号表示作为通过仲裁电路1仲裁的最终结果,总线访问请求应被接受的处理器的编号,为简单起见,该处理器用数字0到3来表示。
在图7所示的周期T1中,仅处理器P0和P2正在提出总线访问请求,并且循环法顺序是0、1、2、3,因此图6的屏蔽产生电路输出屏蔽数据“1111”。
处理器P0具有优先权值2(Priority(0)=2),而处理器P2具有优先权值4(Priority(2)=4)。
在此情况下,作为处理器P0和P1之间的比较的结果,图5的优先权检查块21中的第一级检查电路211提供“10”作为选择位Selb(01),而作为处理器P2和P3之间的比较的结果,第一级检查电路212提供“10”作为选择位Selb(23)。
同样,第一级检查电路211输出“2”作为输出优先权(Priority(01)=2),并且第一级检查电路212输出“4”作为输出优先权(Priority(23)=4)。
因此,最后级检查电路213提供“1000”作为优先权检查结果,并且循环法屏蔽单元2222对屏蔽数据“1111”和优先权检查结果“1000”进行AND以提供经屏蔽的检查结果“1000”。
然后来自图6的屏蔽电路2222的经屏蔽的检查结果“1000”和来自优先权检查块21的优先权检查结果“1000”被分别提供给最终选择单元223作为8位的数据(1000-1000)中高位的4位和低位的4位。
然后,由最终选择单元223编码的结果确定来自处理器P0的请求应被接受。
在周期T2中,处理器P0、P2和P3正在提出总线访问请求。对于循环法顺序,由于从处理器P0进行的总线访问在周期T1中被接受,图6的最高优先权处理器编号产生电路2211在循环法控制的基础上设置循环法顺序为1、2、3、0,因此屏蔽产生电路2221输出屏蔽数据“0111”。
处理器P0的优先权值是4(Priority(0)=4),处理器P2的优先权值是4(Priority(2)=4),并且处理器P3的优先权值是4(Priority(3)=4)。当多个主控器由此具有相同的优先权并且没有有较高优先权的主控器时,可以说有具有最高优先权的多个主控器。
在此情况下,从处理器P0和P1之间的比较,优先权检查块21中的第一级检查电路211提供“10”作为选择位Selb(01),而从处理器P2和P3之间的比较,第一级检查电路212提供“11”作为选择位Selb(23),这是因为处理器P2和P3的优先权值相等。
第一级检查电路211亦提供输出优先权4(Priority(01)=4),并且第一级检查电路212提供输出优先权4(Priority(23)=4)。
因此,最后级检查电路213提供“1011”作为优先权检查结果,并且循环法屏蔽单元2222对屏蔽数据“0111”和优先权检查结果“1011”进行AND以提供经屏蔽的检查结果“0011”。
然后来自屏蔽电路2222的经屏蔽的检查结果“0011”和来自优先权检查块21的优先权检查结果“1011”被分别提供给最终选择单元223作为8位的数据(0011-1011)中高位的4位和低位的4位。
然后,最终选择单元223编码该数据并确定来自处理器P2的请求应被接受。
在周期T6中,仅处理器P1和P2正在提出总线访问请求,并且循环法顺序是3、0、1、2,因此图6的屏蔽产生电路2221输出屏蔽数据“0001”。
处理器P1的优先权值是4(Priority(1)=4),并且处理器P2的优先权值是4(Priority(2)=4)。
然后,从处理器P0和P1之间的比较,图5的优先权检查块21中的第一级检查电路211提供“01”作为选择位Selb(01),而从处理器P2和P3之间的比较,第一级检查电路212提供“10”作为选择位Selb(23)。
第一级检查电路211亦提供输出优先权4(Priority(01)=4),并且第一级检查电路212提供输出优先权4(Priority(23)=4)。
因此,最后级检查电路213提供“0110”作为优先权检查结果,并且循环法屏蔽单元2222对屏蔽数据“0001”和优先权检查结果“0110”进行AND以提供“0000”作为经屏蔽的检查结果。
然后来自图6的屏蔽电路2222的经屏蔽的检查结果“0000”和来自优先权检查块21的优先权检查结果“0110”被分别提供给最终选择单元223作为8位的数据(0000_0110)中高位的4位和低位的4位。
然后,最终选择单元223编码该数据并确定来自处理器P1的请求应被接受。
<A-3.效果>
如至此所描述的,本发明第一优选实施例的仲裁电路组合了优先权仲裁和循环法仲裁。这样,在优先将总线访问权利给予提出高优先权总线访问请求的处理器的同时,仲裁电路在循环法顺序的基础上产生屏蔽数据以使至少关于有最高优先权的处理器的数据不被屏蔽,然后该屏蔽数据被用于屏蔽从优先权值检查得到的数据。一些有最高优先权的处理器通过循环法仲裁而屏蔽,该仲裁以较小的电路规模来提供确保公平总线访问的仲裁。
<B.第二优选实施例>
第一优选实施例已描述了图1的仲裁电路的配置和操作以及确保公平总线访问的效果。本发明的第二优选实施例描述可确保更公平的总线访问的配置。
<B-1.设备的配置>
在图2或图3中,处理器P0到P3的每个都包括其自己的优先权产生电路16,其中在优先权产生电路16中产生的优先权值与总线访问请求一起被输出为优先权信息。现在,图8示出优先权产生电路16A的配置;除了优先权产生电路16的功能以外,优先权产生电路16A进一步被提供了当总线访问请求未被接受时提高优先权值等级的功能。
如图8中所示,优先权产生电路16A包括优先权设置寄存器161、选择器162和优先权输出寄存器163。优先权设置寄存器161在预定软件的基础上产生对应于处理器优先权水平的优先权值。选择器162获得由优先权设置寄存器161产生的优先权值和稍后描述的新优先权值并选择其一。优先权输出寄存器163一次保持(once hold)由选择器162选择的优先权值并依照给定时序对外输出该优先权值。尽管图2中所示的优先权产生电路16由该优先权设置寄存器161和优先权输出寄存器163组成,优先权产生电路16A被进一步提供了以下所示的部件。
也就是说,优先权产生电路16A进一步包括优先权提高电路(priority up circuit)165和限制屏蔽电路164。当有被提供为输出的优先权值的处理器的请求未被接受时,优先权提高电路165获得该信息并从当前优先权值减去给定值例如一,从而设置新的优先权值,而限制屏蔽电路164限制由优先权提高电路165设置的优先权值。
新优先权值通过限制屏蔽电路164发送给选择器162,而选择器162选择新的优先权值并将其给予优先权输出寄存器163。当来自处理器的请求被接受并且新的、下一个请求被发出时,来自优先权设置寄存器161的值被选择并给予优先权输出寄存器163。
用于设置优先权值变化的量的优先权改变量设置寄存器167被附着于优先权提高电路165。优先权改变量设置寄存器167设置从当前优先权值被减去的值。尽管在以上描述中该值被假定为“1”,该值可被变化为另一个值,例如2或3。当优先权改变量设置寄存器167被设置为“0”时,则优先权不被提高,并且优先权产生电路16A以与第一优选实施例的优先权产生电路16相同的方式工作。
在这里至此已假定较小的优先权值表示较高的优先权水平。然而,当较大的优先权值表示较高的优先权水平时,优先权提高电路165将给定值加给当前优先权值,并且优先权改变量设置寄存器167将该值设置为要被加给的值。
此外,界限设置寄存器166被连接于限制屏蔽电路164;限制屏蔽电路164处的界限值由界限设置寄存器166来设置。例如,每次来自另一个处理器的总线访问请求被接受时,优先权提高电路165从优先权输出寄存器163的值减少一。然而,当该值变为由界限设置寄存器166设置的界限值以下的值时,则至选择器162的值被变化为界限值。
在图2的处理器中,CPU 11设置界限设置寄存器166以限定该处理器可以取的最高优先权水平。
例如,假定优先权设置寄存器已设置初始优先权值为5,并且界限设置寄存器166设置最小界限值为2。然后,尽管在开始优先权值是5,但每次总线访问请求被拒绝时,优先权值被减小为4、3。然而,由于最小界限值是2,优先权值不被减小到2以下,即优先权不再被提高。
例如,当用于处理器P0的最小界限值被设置为0而用于其它处理器的最小界限值被设置为2时,则来自处理器P0的总线访问请求优先于其它处理器,这是因为来自其余处理器的优先权值仅可达到2。
<B-2.设备的操作>
图9是示出通过图1所示的仲裁电路1进行的整个仲裁操作的时序图,所述操作包括如以上所述逐步增加优先权水平的操作。
图9基本上与图7相同,并且数据的相同状况和名称在此不再描述。还有,仲裁的特定内容与在第一优选实施例中描述的那些相同,因此各种检查结果不再被示出。
在图9的周期T1中,仅处理器P0和P2正在提出总线访问请求并且循环法顺序是0、1、2、3。来自处理器P0的优先权值是2(Priority(0)=2)并且来自处理器P2的优先权值是5(Priority(2)=5)。
在此情况下,通过仲裁电路1进行的仲裁确定处理器P0应被接受。
在周期T2中,处理器P0、P2和P3正在提出总线访问请求并且循环法顺序是1、2、3、0。来自处理器P0的优先权值是4(Priority(0)=4)并且来自处理器P3的优先权值是4(Priority(3)=4),而来自总线访问请求上次被拒绝的处理器P2的优先权值已被提高到4(Priority(2)=4)。
在此情况下,通过仲裁电路1进行的仲裁确定处理器P2应被接受。
在周期T3中,处理器P0、P1和P3正在提出总线访问请求并且循环法顺序是3、0、1、2。来自处理器P1的优先权值是3(Priority(1)=3),而来自总线访问请求上次被拒绝的处理器P0和P3的优先权值已被提高到3(Priority(0)=3且Priority(3)=3)。
在此情况下,通过仲裁电路1进行的仲裁确定处理器P3应被接受。
在周期T4中,仅处理器P0和P1正在提出总线访问请求并且循环法顺序是0、1、2、3。来自总线访问请求上次被拒绝的处理器P0和P1的优先权值已被提高到2(Priority(0)=2且Priority(1)=2)。
在此情况下,通过仲裁电路1进行的仲裁确定处理器P0应被接受。
<B-3.效果>
如至此所描述的,被包括在处理器P0到P3中的优先权产生电路16A具有当总线访问请求已被拒绝时逐步提高优先权值的水平的功能。被拒绝的处理器的优先权由此被提高,因此来自有较低优先权水平的处理器的请求将不维持不被接受。这使能了更公平的仲裁并确保了更公平的总线访问。
<B-4.修改>
第二优选实施例已被示出了以下配置:在其中处理器P0到P3中的优先权产生电路16A具有当总线访问未被接受时逐步提高优先权值的水平的功能。用于变化优先权值的配置可如以下第一到第三修改中所示被构建。
<B-4-1.第一修改>
图10示出优先权产生电路16B的配置。图10的优先权产生电路包括:多个优先权设置寄存器161B;选择器162B,用于选择从多个优先权设置寄存器161B输出的优先权值之一;以及优先权输出寄存器163,用于一次保持由选择器162B选择的优先权值并依照给定时序对外输出该值。
不同的优先权值被设置于各个优先权设置寄存器161B中以处理处理器工作频率的变化。
也就是说,通过改变被施加给处理器的时钟信号的频率可改变限定处理器工作频率的用于CPU的工作频率。例如,通过将基准时钟乘以2、3、4或通过将基准时钟除以2、3、4可逐步改变它。
这样,对应于各种工作频率的优先权值事先被分别设置于多个优先权设置寄存器161B中。当处理器的工作频率已被改变时,选择器162B在被施加给该处理器的时钟信号的频率的基础上执行选择操作,由此提供对应的优先权值。这样,可依照工作频率输出正确的优先权值。
例如,当处理器的工作频率被设置为低时,处理器缓慢地工作。当不需要处理器的高速处理时,这样的设置是例如为了减小功耗而进行的。在此情况下,来自所述处理器的总线访问请求的优先权水平不必很高,因此优先权值可被设置为大。
另一方面,当处理器的工作频率被设置为高时,理想的是将高优先权水平指定给来自该处理器的总线访问请求。因此,较小的优先权值是理想的。
应用优先权产生电路16B提供了与处理器工作频率一致的较适当的优先权值。
也就是说,当高优先权被指定给工作速度被设置为低的处理器时,则在那个处理器和以高速工作的其它处理器之间产生了无意义的争用,并且从需要高速工作的处理器进行的总线访问可被阻止。以上所示的配置解决了该问题。
<B-4-2.第二修改>
图11示出优先权产生电路16C的配置。图11的优先权产生电路16C被配置以使可依照处理器的工作频率值来增加/减小优先权值。
也就是说,优先权产生电路16C包括:优先权设置寄存器161,用于在预定软件的基础上产生对应于处理器优先权水平的优先权值;加/减电路1621,用于将给定值加给从优先权设置寄存器161输出的优先权值或从该优先权值减去以提供优先权输出值;以及优先权输出寄存器1626,用于一次保持来自加/减电路1621的优先权输出值并依照给定时序对外输出该值。
被加/被减值产生电路1622被附着于加/减电路1621;被加/被减值产生电路1622依照被施加给处理器的时钟信号的频率来设置待加给优先权值或从优先权值减去的值。加/减电路1621将从优先权设置寄存器161输出的优先权值增加/减小由被加/被减值产生电路1622设置的被加/被减值。
例如,当处理器的工作频率被设置得比预定缺省值快时,加/减电路1621对从优先权设置寄存器161输出的优先权值减量以提高优先权。另一方面,当处理器的工作频率被设置得比预定缺省值慢时,则加/减电路1621对从优先权设置寄存器161输出的优先权值增量以降低优先权。随着处理器工作频率进一步偏离缺省值,被加/被减值产生电路1622可提供更大的增加/减小。
被加/被减量设置寄存器1620被附着于被加/被减值产生电路1622;被加/被减量设置寄存器1620事先保持优先权值被增加/减小的量。
此外,限制屏蔽电路1623被插入加/减电路1621和优先权输出寄存器1626之间。当来自加/减电路1621的优先权输出值被增加到限制屏蔽电路1623处的界限值即由界限设置寄存器1624设置的界限值以上或被减小到该界限值以下(在此情况下为最小和最大界限值)时,则优先权输出值被改变为最小或最大界限值。
例如,假定通过将基准时钟乘以2、3、4来增加时钟频率或通过将基准时钟除以2、3、4来减小时钟频率。在此情况下,当缺省值对应于基准时钟,并且优先权设置寄存器161设置4,被加/被减量设置寄存器1620设置2,并且界限设置寄存器1620设置最小界限值0和最大界限值15,则优先权产生电路16C如表4中所示提供优先权输出值。
表4
  频率设置   优先权值变化   输出优先权值
  乘以4   优先权设置寄存器值-8   0
  乘以3   优先权设置寄存器值-4   0
  乘以2   优先权设置寄存器值-2   2
  基准(缺省)   优先权设置寄存器值   4
  除以2   优先权设置寄存器值+2   6
  除以3   优先权设置寄存器值+4   8
 除以4   优先权设置寄存器值+8   12
在表4中,当时钟频率被设置为基准时钟的两倍、三倍和四倍时,则2、4和8分别从当时钟频率等于基准值(即4)时优先权设置寄存器161设置的值被减去。然而,即使当时钟频率是基准时钟的四倍时,优先权输出值亦为0,这是因为最小界限值是0。
当时钟频率被设置为基准时钟除以2、3、4时,则2、4和8分别被加给当时钟频率等于基准值(即4)时优先权设置寄存器161设置的值。当基准时钟被除以4时,优先权输出值是12,这是因为最大界限值是15。
随着处理器工作频率被进一步偏离缺省值,被加/被减值产生电路1622提供更大的增加/减小。
如以上所示,优先权值与处理器工作频率的变化一致地动态变化,因此可获得与处理器工作频率一致的较适合的优先权值。
<B-4-4.第三修改>
图12示出优先权产生电路16D的配置。图12的优先权产生电路16D包括:多个优先权设置寄存器161B;选择器162C,用于选择从多个优先权设置寄存器161B输出的优先权值之一;以及优先权输出寄存器163,用于一次保持由选择器162C选择的优先权值并依照给定时序对外输出该值。
所述多个优先权设置寄存器161B保持不同的优先权值以处理CPU11(图2)的不同状况。
待处理的CPU 11的状况包括:CPU 11已检测到分支指令并且正提出从分支目的地取指令的请求的状况;CPU的指令队列空闲的状况;以及CPU 11的存储缓冲器已满且待存储的接下来的数据正在等待的状况。
当CPU 11正向分支目的地提出取指令请求时,来自目的地的指令即来自图1的目标TG的指令应被尽可能快地获得,在此情况下需要较高的优先权。当指令队列空闲时,CPU 11正等待来自目标TG的接下来的指令,在此情况下也需要较高的优先权。当存储缓冲器已满且待存储的接下来的数据正在等待时,流水线处理不能继续进行,直到存储处理被完成,因此需要较高的优先权。
因此,考虑CPU 11的上述状况,优先权值被事先与各个状况一致地设置于多个优先权设置寄存器161B中。选择器162C被连接于CPU 11以使它可获得关于CPU 11的状况的信息。这样,当CPU的状况已改变时,则选择器162C在CPU 11的新状况的基础上执行选择操作以使对应于新状况的优先权值被输出。由此可依照CPU 11的状况将较适合的优先权值提供为输出。
采用优先权产生电路16D提供了与CPU 11的状况一致的较适合的优先权值。
除了以上所示的三个状况,待处理的CPU 11的状况另外包括CPU11读取立即被使用的数据的状况。在此情况下,亦需要较高的优先权,并且对应于该状况的优先权值亦被设置于优先权设置寄存器161B中。
尽管以上描述已示出了依照CPU 11的状况选择较适合的优先权值的配置,亦可依照处理器中的高速缓冲存储器的状况来设置优先权值。
例如,数据高速缓冲存储器14(图3)可处于被称为“直写”的状况。直写状况是这样一种操作:当CPU 11在高速缓冲存储器14中写数据时,在高速缓冲存储器14中被重写的内容总是亦被写到主存储器(未示出)中以保持数据匹配。该操作包括两个步骤;CPU 11将数据写到高速缓冲存储器14中然后高速缓冲存储器14将数据写到主存储器中。
在直写中,当总线未被占用时,高速缓冲存储器14可将数据写到主存储器(即图1的目标TG)中,在此情况下不需要将优先权设置为很高。然而,当它未能完整地写数据时,即当直写操作失败时,则该数据必须被再次写入。因此,当在写回过程中再次写数据时需要高优先权。对应于该状况的优先权值亦被设置于优先权设置寄存器161B中以使所述数据可被优先地再次写入。
以上描述假定仲裁电路1执行仲裁操作。然而,上述优先权产生电路16A到16D可被应用以确保亦对具有仅执行循环法控制的常规仲裁电路的数据处理系统的公平总线访问。亦有可能通过组合优先权产生电路16A到16D来配置优先权产生电路。
尽管已详细描述了本发明,以上描述在各方面是说明性的而非局限性的。应理解可在本发明的范围内设计诸多其它修改和变化。

Claims (15)

1.一种仲裁电路,用于仲裁从通过共享总线连接的多个总线主控器提出的总线访问请求,包括:
接收分别从所述多个总线主控器输出的多条优先权信息的优先权检查块,用于比较所述优先权信息条并指定有最高优先权的主控器以输出检查结果;以及
接收所述检查结果的循环法块,
所述循环法块包括,
循环法控制单元,用于通过循环法算法、根据上次的仲裁结果来确定来自所述多个总线主控器的总线访问请求的优先权顺序,
循环法屏蔽单元,用于用屏蔽数据来屏蔽所述检查结果的数据以输出经屏蔽的检查结果,根据所述优先权顺序产生所述屏蔽数据以使得至少关于具有最高优先权的总线主控器的数据不被屏蔽,以及
最终选择单元,用于选择应在所述经屏蔽的检查结果和所述检查结果的基础上接受其总线访问请求的那个的总线主控器。
2.依照权利要求1的仲裁电路,其中所述优先权检查块包括:
多个第一级检查电路,每个都将两条所述优先权信息作为一组接收,用于比较所述两条优先权信息并输出较高优先权信息作为输出优先权;以及
至少一个下一级检查电路,其将来自所述第一级检查电路的所述多个输出优先权中的两个作为一组接收,用于比较所述两个输出优先权并指定有最高优先权的主控器。
3.依照权利要求1的仲裁电路,
其中所述检查结果和所述屏蔽数据分别为多位数据,其中多位数据的每个位被分别指定给所述多个总线主控器中的每一个,
所述屏蔽数据屏蔽比被指定给有最高优先权顺序的主控器的一个位高位的一个位或多个位,并且
所述循环法屏蔽单元用所述检查结果的数据和所述屏蔽数据执行逻辑运算以获得所述经屏蔽的检查结果。
4.依照权利要求3的仲裁电路,
其中所述经屏蔽的检查结果的数据和所述检查结果的数据作为连续的数据被给予所述最终选择单元,在其中所述经屏蔽的检查结果的数据形成高位部分而所述检查结果的数据形成低位部分,并且
所述最终选择单元从所述连续数据的最高位位置搜索该数据以寻找给定逻辑值首先出现的位位置,并确定被指定给那个位位置的总线主控器是其请求应被接受的总线主控器。
5.一种数据处理系统,其具有权利要求1所述的仲裁电路,该仲裁电路,
其中所述多个总线主控器每个都包括用于产生优先权信息的优先权产生电路,并且
当来自对应总线主控器的总线访问请求未被接受时,每个所述优先权产生电路都提高所述优先权信息的水平。
6.依照权利要求5的数据处理系统,其中每个所述优先权产生电路都包括优先权提高电路,用于当利用所输出的优先权信息条,总线访问请求不被接受时,将给定值加给所述所输出的优先权信息条或从该信息条减去以设置新的优先权信息条。
7.依照权利要求6的数据处理系统,其中每个所述优先权产生电路进一步包括用于设置所述给定值的优先权改变量设置寄存器。
8.依照权利要求6的数据处理系统,其中每个所述优先权产生电路进一步包括限制电路,用于限制所述优先权信息的优先权提高。
9.一种数据处理系统,其具有权利要求1所述的仲裁电路,
其中所述多个总线主控器每个都包括用于产生优先权信息的优先权产生电路,并且
所述优先权产生电路输出分别对应于多个工作频率的优先权信息条之一。
10.依照权利要求9的数据处理系统,其中每个所述优先权产生电路包括多个优先权设置寄存器,在其中对应于所述多个工作频率的优先权信息条被事先设置,并且
所述优先权产生电路选择在所述多个优先权设置寄存器中设置的值之一并将所选值输出为所述优先权信息。
11.依照权利要求9的数据处理系统,其中所述优先权产生电路包括加/减电路,用于将给定值加给基准优先权信息或从该优先权信息减去以设置新的优先权信息条。
12.依照权利要求11的数据处理系统,其中所述优先权产生电路进一步包括限制电路,用于限制所述新优先权信息的最大值和最小值。
13.一种数据处理系统,其具有权利要求1所述的仲裁电路,
其中所述多个总线主控器每个都包括用于产生优先权信息的优先权产生电路,并且
当对应的总线主控器的状况被改变时,所述优先权产生电路输出分别对应于多个状况的优先权信息条之一。
14.依照权利要求13的数据处理系统,其中每个所述优先权产生电路包括多个优先权设置寄存器,在其中对应于所述多个状况的优先权信息条被事先设置,并且
当所述总线主控器的状况被改变时,所述优先权产生电路选择在所述多个优先权设置寄存器中设置的值之一并将所选值输出为所述优先权信息。
15.依照权利要求13的数据处理系统,其中所述多个状况包括:
所述总线主控器中的中央处理单元已检测到分支指令并正提出从分支目的地取指令的请求的状况;
用于所述中央处理单元的指令队列空闲的状况;以及
所述中央处理单元中的存储缓冲器已满且待存储的数据正在等待的状况。
CN03154808.3A 2002-11-25 2003-08-19 仲裁电路和数据处理系统 Expired - Fee Related CN1253806C (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP340732/02 2002-11-25
JP2002340732A JP4266619B2 (ja) 2002-11-25 2002-11-25 調停回路
JP340732/2002 2002-11-25

Publications (2)

Publication Number Publication Date
CN1508709A CN1508709A (zh) 2004-06-30
CN1253806C true CN1253806C (zh) 2006-04-26

Family

ID=32500716

Family Applications (1)

Application Number Title Priority Date Filing Date
CN03154808.3A Expired - Fee Related CN1253806C (zh) 2002-11-25 2003-08-19 仲裁电路和数据处理系统

Country Status (3)

Country Link
US (1) US7051133B2 (zh)
JP (1) JP4266619B2 (zh)
CN (1) CN1253806C (zh)

Families Citing this family (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005092780A (ja) * 2003-09-19 2005-04-07 Matsushita Electric Ind Co Ltd リアルタイムプロセッサシステム及び制御方法
FR2860896A1 (fr) * 2003-10-14 2005-04-15 St Microelectronics Sa Procede d'arbitrage de l'acces a une ressource partagee
US20050144401A1 (en) * 2003-12-30 2005-06-30 Pantalone Brett A. Multiprocessor mobile terminal with shared memory arbitration
US7979615B1 (en) * 2004-03-08 2011-07-12 Pmc-Sierra Us, Inc. Apparatus for masked arbitration between masters and requestors and method for operating the same
DE102004013635B4 (de) * 2004-03-19 2006-04-20 Infineon Technologies Ag Verfahren zur Vergabe von Buszugriffsrechten in Multimaster-Bussystemen, sowie Multimaster-Bussystem zur Durchführung des Verfahrens
US7380038B2 (en) * 2005-02-04 2008-05-27 Microsoft Corporation Priority registers for biasing access to shared resources
US7779287B2 (en) * 2005-08-22 2010-08-17 Intel Corporation Reducing power consumption in multiprocessor systems
US7890686B2 (en) * 2005-10-17 2011-02-15 Src Computers, Inc. Dynamic priority conflict resolution in a multi-processor computer system having shared resources
JP4789688B2 (ja) 2006-04-18 2011-10-12 ヤマハ発動機株式会社 クラッチ用アクチュエータ、エンジンユニットおよび鞍乗型車両
DE102006009034B3 (de) * 2006-02-27 2007-08-02 Infineon Technologies Ag Verfahren zum Betreiben eines Bussystems sowie Halbleiter-Bauelement, insbesondere Mikroprozessor- bzw. Mikrocontroller
JP4835259B2 (ja) * 2006-05-23 2011-12-14 富士ゼロックス株式会社 データ転送制御装置
JP2009059022A (ja) * 2007-08-30 2009-03-19 Mitsubishi Electric Corp 蓄積共有システム用の装置
US9081901B2 (en) * 2007-10-31 2015-07-14 Raytheon Company Means of control for reconfigurable computers
JP2010286983A (ja) * 2009-06-10 2010-12-24 Renesas Electronics Corp バス調停回路及びバス調停方法
JP5591022B2 (ja) * 2010-08-16 2014-09-17 オリンパス株式会社 バス帯域モニタ装置およびバス帯域モニタ方法
US8904115B2 (en) * 2010-09-28 2014-12-02 Texas Instruments Incorporated Cache with multiple access pipelines
JP5625766B2 (ja) * 2010-11-08 2014-11-19 ソニー株式会社 アービトレーション回路、および、その制御方法
US9208109B2 (en) * 2011-06-01 2015-12-08 Altera Corporation Memory controllers with dynamic port priority assignment capabilities
US8918558B2 (en) * 2011-09-28 2014-12-23 International Business Machines Corporation Round robin priority selector
US8892801B2 (en) * 2012-05-23 2014-11-18 Arm Limited Arbitration circuity and method for arbitrating between a plurality of requests for access to a shared resource
JP2014016730A (ja) * 2012-07-06 2014-01-30 Canon Inc バス調停装置、バス調停方法、及びコンピュータプログラム
JP5571826B1 (ja) 2013-06-24 2014-08-13 日本電信電話株式会社 パケット転送処理装置および方法
US11768689B2 (en) 2013-08-08 2023-09-26 Movidius Limited Apparatus, systems, and methods for low power computational imaging
US9934043B2 (en) * 2013-08-08 2018-04-03 Linear Algebra Technologies Limited Apparatus, systems, and methods for providing computational imaging pipeline
CN104199790B (zh) * 2014-08-21 2017-10-24 北京奇艺世纪科技有限公司 数据处理方法及装置
JP6586759B2 (ja) 2015-04-01 2019-10-09 富士通株式会社 設計装置、プログラム、及びfpga設計方法
JP6536441B2 (ja) * 2016-03-16 2019-07-03 株式会社デンソー 制御装置
CN106776423B (zh) * 2016-11-25 2019-08-20 天津大学 采用优先级自动切换仲裁单元的异步仲裁树电路
CN112963251A (zh) * 2020-12-18 2021-06-15 南岳电控(衡阳)工业技术股份有限公司 一种发动机转矩与转速的协调控制方法

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0197865A (ja) 1987-10-09 1989-04-17 Seiko Instr & Electron Ltd 自動ピペッタ
JPH01200439A (ja) * 1988-02-05 1989-08-11 Nec Corp 未受付要求優先回路
US5274822A (en) * 1990-07-02 1993-12-28 Ncr Corporation Fast centralized arbitrator
JP2625589B2 (ja) 1991-04-22 1997-07-02 インターナショナル・ビジネス・マシーンズ・コーポレイション マルチプロセッサ・システム
US5463624A (en) * 1994-04-15 1995-10-31 Dsc Communications Corporation Bus arbitration method for telecommunications switching
US5784590A (en) * 1994-06-29 1998-07-21 Exponential Technology, Inc. Slave cache having sub-line valid bits updated by a master cache
US5913045A (en) * 1995-12-20 1999-06-15 Intel Corporation Programmable PCI interrupt routing mechanism
EP0782081B1 (en) * 1995-12-29 2002-03-20 Bull S.A. An arbitration unit with circular or "round-robin" priority, particularly for multiprocessor systems with synchronous symmetrical processors
JPH1091577A (ja) 1996-09-17 1998-04-10 Toshiba Corp バスアクセス権制御方式
US5862353A (en) * 1997-03-25 1999-01-19 International Business Machines Corporation Systems and methods for dynamically controlling a bus
US5884051A (en) * 1997-06-13 1999-03-16 International Business Machines Corporation System, methods and computer program products for flexibly controlling bus access based on fixed and dynamic priorities
US6393506B1 (en) * 1999-06-15 2002-05-21 National Semiconductor Corporation Virtual channel bus and system architecture
DE60024421T2 (de) * 2000-06-16 2006-08-03 Stmicroelectronics S.R.L., Agrate Brianza Arbitrierungsverfahren mit variablen Prioritäten, zum Beispiel für Verbindungsbusse, und entsprechendes System
EP1170669B1 (en) * 2000-07-05 2006-03-29 STMicroelectronics S.r.l. Arbitration method and circuit architecture therefor
US6647449B1 (en) * 2000-10-05 2003-11-11 Hewlett-Packard Development Company, L.P. System, method and circuit for performing round robin arbitration
US6880028B2 (en) * 2002-03-18 2005-04-12 Sun Microsystems, Inc Dynamic request priority arbitration

Also Published As

Publication number Publication date
JP4266619B2 (ja) 2009-05-20
CN1508709A (zh) 2004-06-30
US20040117527A1 (en) 2004-06-17
JP2004178056A (ja) 2004-06-24
US7051133B2 (en) 2006-05-23

Similar Documents

Publication Publication Date Title
CN1253806C (zh) 仲裁电路和数据处理系统
CN1284095C (zh) 多处理器系统中的任务分配方法和多处理器系统
CN1147785C (zh) 执行多个指令流的多程序流程同时处理器
CN1704911A (zh) 高速缓冲存储器、系统和数据存储方法
CN1684058A (zh) 处理器
CN1918546A (zh) 程序转换装置及程序转换方法
CN1758213A (zh) 带有共享内容的异构型并行多线程处理器(hpmt)
CN1387640A (zh) 处理器结构的转移指令
CN1967506A (zh) 高速缓存存储器处理器中的合并入口
CN100346285C (zh) 处理器芯片与存储控制系统及方法
CN1493988A (zh) 半导体集成电路和存储器测试方法
CN1181550A (zh) 微处理机及多处理机系统
CN1115631C (zh) 具有risc结构的八位微控制器
CN101065725A (zh) 命令供给装置
CN1490726A (zh) 信息处理装置以及电子设备
CN1297905C (zh) 高速缓存控制器、高速缓存控制方法以及计算机系统
CN1286005C (zh) 微处理器
CN1940860A (zh) 多微控制器系统任务调用方法
CN1744093A (zh) 数据流图处理方法及具备可重构电路的处理装置
CN1276355C (zh) 运行日志取得方法
CN1734415A (zh) 分枝预测装置及分枝预测方法
CN1538310A (zh) 数据传送控制装置
CN1232216A (zh) 能够通过有效地使用数据线提高生产能力的信息处理方法和信息处理装置
CN101031884A (zh) 处理器
CN1956005A (zh) 数据存取装置和方法

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
ASS Succession or assignment of patent right

Owner name: RENESAS ELECTRONICS CO., LTD.

Free format text: FORMER OWNER: RENESAS TECHNOLOGY CORP.

Effective date: 20100925

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20100925

Address after: Kawasaki, Kanagawa, Japan

Patentee after: Renesas Electronics Corporation

Address before: Tokyo, Japan, Japan

Patentee before: Renesas Technology Corp.

CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20060426

Termination date: 20140819

EXPY Termination of patent right or utility model