计算机装置及其中断任务分配方法

文档序号:6367910阅读:209来源:国知局
专利名称:计算机装置及其中断任务分配方法
技术领域
本发明涉及计算机装置领域,特别是涉及具有多个中央处理器的计算机装置及其中断任务分配方法。
背景技术
图I用以说明现有的具有多个中央处理器(central processing unit, CPU)的计算机装置的中断任务(interrupt task)分配方法。请参照图1,此计算机装置100具有五个中央处理器(如标不102 110所不)、一个系统总线120与一个芯片组130,且每一中央处理器皆通过系统总线120电性连接芯片组130。此外,此计算机装置100适于外接多个硬件设备(如外接硬件设备152 160所示),而每一外接硬件设备皆电性连接芯片组130。
每隔一预定时间,每一中央处理器都会将其内部的一任务优先顺序寄存器(task priority register, TPR)所寄存的优先权值(task priority)传送给芯片组130,以便告知芯片组130目前所执行的任务的优先顺序。而芯片组130则会根据所接收到的优先权值来判断每一中央处理器目前的工作负荷量。因此,当某一外接硬件设备(其可为外接硬件设备152 160的其中任一)发出一中断任务请求(interrupt request)给芯片组130时, 芯片组130就可从这些中央处理器中挑出一个目前的工作负荷量为最轻的中央处理器(即优先权值为最低的中央处理器)来执行对应于上述中断任务请求的中断任务。然而,由于每一中央处理器在执行一项任务之前都会先将数据读取至各自的闪速存储器(cache),而“工作负荷量为最轻的中央处理器”却又会随着时间的推移而不断变换, 因而可能会造成来自相同的外接硬件设备再次发出相同的中断任务请求时,相同的数据需再次被读取至另一中央处理器(工作负荷量为最轻的中央处理器)的闪速存储器。如此一来,将会降低计算机装置100的整体效能。

发明内容
本发明的目的是提供一种计算机装置,其具有多个中央处理器,且其闪速存储器中的数据的变换频率较低,使得计算机装置的整体效能得以提高。本发明的另一目的就是在提供一种中断任务分配方法,其适用于具有多个中央处理器的计算机装置。本发明提出一种计算机装置。所述的计算机装置包括有多个中央处理器与一个芯片组,而其中芯片组电性连接每一中央处理器。所述的芯片组用以接收来自一外接硬件设备的一中断任务请求,并判断此中断任务请求所对应的任务种类是否曾有任何中央处理器执行过。当判断为是时,此芯片组便将上述的中断任务请求分配给执行过上述任务种类的中央处理器来执行对应的中断任务。本发明还提出一种具有多个中央处理器的计算机装置的中断任务分配方法。所述方法包括有下列步骤判断来自一外接硬件设备的一中断任务请求所对应的任务种类是否曾有任何中央处理器执行过;以及当判断为是时,便将此中断任务请求分配给执行过上述任务种类的中央处理器来执行对应的中断任务。本发明解决前述问题的方式,是使芯片组将中断任务请求分配给执行过相同任务种类的中央处理器来执行对应的中断任务,因此闪速存储器中的数据的变换频率得以降低,进而使得计算机装置的整体效能得以提升。为使本发明的上述和其他目的、特征和优点能更明显易懂,下文特举较佳实施例, 并结合附图详细说明如下。


图I用以说明现有的具有多个中央处理器的计算机装置的中断任务分配方法。图2用以说明依据本发明一实施例的计算机装置及其中断任务分配方法。图3为图2所示芯片组的其中一种可能操作方式的流程图。图4用以说明依据本发明另一实施例的计算机装置及其中断任务分配方法。图5为图4所示芯片组的其中一种可能操作方式的流程图。图6绘示中央处理器的另一种电性连接方式。图7绘示中央处理器的再一种电性连接方式。图8为依照本发明一实施例的具有多个中央处理器的计算机装置的中断任务分配方法。附图符号说明100、200、400、600、700 :计算机装置102 110、202 210、602 610、702 708 :中央处理器120、220、620、720 :系统总线130、230、430、630、730 :芯片组152 160、252 260 :外接硬件设备232 :执行状态记录表234 :权重表236 :任务分派记录表434 :优先权值记录表S302 S314、S502 S512、S802、S804 :步骤
具体实施例方式图2用以说明依据本发明一实施例的计算机装置及其中断任务分配方法。请参照图2,此计算机装置200具有多个中央处理器(在此例为五个,如标示202 210所示)、一个系统总线220与一个芯片组230,且每一中央处理器皆通过系统总线220电性连接芯片组 230。此外,此计算机装置200适于外接多个硬件设备(如外接硬件设备252 260所示), 而每一外接硬件设备皆电性连接芯片组230。上述的芯片组230用以接收来自一外接硬件设备(其可为外接硬件设备252 260的其中任一)的一中断任务请求,并判断此中断任务请求所对应的任务种类是否曾有任何中央处理器执行过。在一实施例中,上述的任务种类例如是中断向量(Interrupt Vector)。当判断为是时,芯片组230便将此中断任务请求分配给执行过上述任务种类的中央处理器来执行对应的中断任务;而当判断为否时,芯片组230便从这五个中央处理器中选择其中之一来执行此中断任务请求所对应的中断任务。由于芯片组230会将接收到的中断任务请求分配给执行过相同任务种类的中央处理器来执行对应的中断任务,因此可以减少相同数据读取至不同闪速存储器(未绘示) 的次数,即闪速存储器中的数据变换频率得以降低,进而使得计算机装置200的整体效能得以提升。以下将说明芯片组230的可能设计方式。以此例而言,芯片组230可以是储存有一执行状态记录表232。此执行状态纪录表232用以记录每一任务种类是否曾有任何中央处理器执行过,以便芯片组230进行记录内容的读取与更新。在一实施例中,上述的任务种类例如是中断向量。此外,此芯片组230亦可储存有一权重表234。此权重表234用以记录每一中央处理器所处理过的任务种类的权重加总值,以便芯片组230进行记录内容的读取与更新。当芯片组230判断上述中断任务请求所对应的任务种类未曾有任何中央处理器执行过时,芯片组230便可选择权重表234中权重加总值最小者所对应的中央处理器来执行此中断任务请求所对应的中断任务,并依据此中断任务请求所对应的权重来修改(即增加)选定的中央处理器所对应的权重加总值。另外,此芯片组230也可是储存有一任务分派记录表236。此任务分派记录表236 用以记录每一中断任务请求所对应的任务种类是由那一个中央处理器执行过,以便芯片组 230进行记录内容的读取与更新。当芯片组230判断上述中断任务请求所对应的任务种类曾有中央处理器执行过时,芯片组230便从任务分派记录表236中找出执行过上述任务种类的中央处理器,以便将此中断任务请求分配给找出的中央处理器来执行对应的中断任务。上述的芯片组230可以是储存有上述的执行状态记录表232、权重表234与任务分派记录表236这三者,也可以是储存有上述三种表格至少其中之一,而其他表格则储存在与芯片组230相互电性连接的存储装置(未绘示)中,以让芯片组230可以进行记录内容的读取与更新。假设芯片组230储存有上述的执行状态记录表232、权重表234与任务分派记录表 236这三种表格,那么芯片组230的操作方式可以是采用图3所示的方式来实现。图3为图 2所示芯片组的其中一种可能操作方式的流程图。请参照图3,在芯片组230接收到一中断任务请求后(如步骤S302所示),芯片组230便可先依据执行状态记录表232的记录内容来判断此中断任务请求所对应的任务种类是否曾有任何中央处理器执行过(如步骤S304 所示)。当判断为是时,芯片组230便可将此中断任务请求分配给执行过上述任务种类的中央处理器(如步骤S306所示),以便让分配到的中央处理器来执行对应的中断任务。反之,当判断为否时,芯片组230便可依据权重表234的记录内容来选择权重表234中权重加总值最小者所对应的中央处理器,以指定选定的中央处理器来执行此中断任务请求所对应的中断任务(如步骤S308所示)。 在执行完步骤S308之后,芯片组230便可去更新执行状态记录表232、权重表234 与任务分派记录表236这三种表格的记录内容。举例来说,芯片组230可以是先依据上述中断任务请求所对应的权重,来修改权重表234中关于选定的中央处理器所对应的权重加总值(如步骤S310所示),然后再依据选定的中央处理器来修改执行状态记录表232所记录的内容(如步骤S312所示),最后再依据选定的中央处理器来修改任务分派记录表236所记录的内容(如步骤S314所示)。当然,芯片组230也可以是以其他的顺序来执行S310 S314这三个步骤。图4用以说明依据本发明另一实施例的计算机装置及其中断任务分配方法。在图 4中,标示与图2中的标示相同者表示为相同物件。请同时参照图4与图2,经比较二图之后可以发现,图4所示的计算机装置400的芯片组430并未储存有第一实施例所述的权重表234,而是改为储存一优先权值记录表434。此优先权值记录表434用 以记录每一中央处理器目前所执行的任务的优先权值,以便芯片组230进行记录内容的读取与更新。这些优先权值的取得方式已于现有技术中描述,在此便不再赘述。由于此优先权值记录表434记录有每一中央处理器目前所执行的任务的优先权值,因此当芯片组430判断一中断任务请求所对应的任务种类未曾有任何中央处理器执行过时,芯片组430便可选择优先权值记录表434中优先权值最小者所对应的中央处理器来执行此中断任务请求所对应的中断任务。反之,当芯片组430判断上述中断任务请求所对应的任务种类曾有中央处理器执行过时,芯片组430便将此中断任务请求分配给执行过上述任务种类的中央处理器来执行对应的中断任务,以减少相同数据读取至不同闪速存储器的次数,即闪速存储器中的数据变换频率得以降低,进而使得计算机装置400的整体效能得以提升。在一实施例中,上述的任务种类例如是中断向量。上述的芯片组430可以是储存有上述的执行状态记录表232、优先权值记录表434 与任务分派记录表236这三者,也可以是储存有上述三种表格至少其中之一,而其他表格则储存在与芯片组430相互电性连接的存储装置(未绘示)中,以让芯片组430可以进行记录内容的读取与更新。假设芯片组430储存有上述的执行状态记录表232、优先权值记录表434与任务分派记录表236这三种表格,那么芯片组430的操作方式可以是采用图5所示的方式来实现。 图5为图4所示芯片组的其中一种可能操作方式的流程图。请参照图5,在芯片组430接收到一中断任务请求后(如步骤S502所示),芯片组430便可先依据执行状态记录表232的记录内容来判断此中断任务请求所对应的任务种类是否曾有任何中央处理器执行过(如步骤S504所示)。当判断为是时,芯片组530便可将此中断任务请求分配给执行过上述任务种类的中央处理器(如步骤S506所示),以便让分配到的中央处理器来执行对应的中断任务。反之,当判断为否时,芯片组530便可依据优先权值记录表434的记录内容来选择优先权值记录表434中优先权值最小者所对应的中央处理器,以指定选定的中央处理器来执行此中断任务请求所对应的中断任务(如步骤S508所示)。在执行完步骤S508之后,芯片组430便可去更新执行状态记录表232与任务分派记录表236这二种表格的记录内容。举例来说,芯片组430可以是先依据选定的中央处理器来修改执行状态记录表232所记录的内容(如步骤S510所示),然后再依据选定的中央处理器来修改任务分派记录表236所记录的内容(如步骤S512所示)。当然,芯片组430 也可以是以相反的顺序来执行S510与S512这二个步骤。
藉由上述第一实施例与第二实施例的教示,本领域的技术人员可知道即使各中央处理器之间是采用其他的电性连接方式,亦可实现本发明,以图6与图7来举例说明。图6绘示中央处理器的另一种电性连接方式。如图6所示,此计算机装置600具有多个中央处理器(在此例为五个,如标不602 610所不)、一个系统总线620与一个芯片组630。在这些中央处理器中,中央处理器602、604、608与610皆通过中央处理器606来电性连接系统总线620。至于芯片组630,其可采用第一实施例与第二实施例所述的芯片组。图7绘示中央处理器的再一种电性连接方式。如图7所示,此计算机装置700具有多个中央处理器(在此例为四个,如标示702 708所示)、一个系统总线720与一个芯片组730。在这些中央处理 器中,中央处理器704 708皆通过中央处理器702来电性连接系统总线720,且每一中央处理器都会电性连接另外二个中央处理器。至于芯片组730,其亦可采用第一实施例与第二实施例所述的芯片组。值得一提的是,在上述各实施例中,每一中央处理器皆可为一实体的中央处理器, 或是为一实体的中央处理器的其中一逻辑分割部份。而藉由上述各实施例的教示,本领域的技术人员可归纳出本发明的计算机装置的一些基本操作方式,一如图8所示。图8为依照本发明一实施例的具有多个中央处理器的计算机装置的中断任务分配方法。请参照图8,此方法的步骤包括有判断来自一外接硬件设备的一中断任务请求所对应的任务种类是否曾有任何中央处理器执行过(如步骤S802 所示);以及当判断为是时,便将上述中断任务请求分配给执行过上述任务种类的中央处理器来执行对应的中断任务(如步骤S804所示)。在一实施例中,上述的任务种类例如是中断向量。综上所述,本发明解决前述问题的方式,乃是使芯片组将中断任务请求分配给执行过相同任务种类的中央处理器来执行对应的中断任务,因此可以减少相同数据读取至不同闪速存储器的次数,即闪速存储器中的数据变换频率得以降低,进而使得计算机装置的整体效能得以提升。虽然本发明已以较佳实施例揭示如上,然其并非用以限定本发明,本领域技术人员,在不脱离本发明的精神和范围的前提下,可作若干的更动与润饰,因此本发明的保护范围是以本发明的权利要求为准。
权利要求
1.一种计算机装置,包括多个中央处理器;以及一芯片组,电性连接这些中央处理器,该芯片组用以接收来自一外接硬件设备的一中断任务请求,并判断该中断任务请求所对应的任务种类是否曾有任何中央处理器执行过, 当判断为是时,该芯片组便将该中断任务请求分配给执行过上述任务种类的中央处理器来执行对应的中断任务。
2.如权利要求I所述的计算机装置,其中当判断为否时,该芯片组从这些中央处理器中选择其中之一来执行该中断任务请求所对应的中断任务。
3.如权利要求I所述的计算机装置,其中该芯片组还储存有一权重表,该权重表 用以记录每一中央处理器所处理过的任务种类的权重加总值,当该芯片组判断该中断任务请求所对应的任务种类未曾有任何中央处理器执行过时,该芯片组选择该权重表中权重加总值最小者所对应的中央处理器来执行该中断任务请求所对应的中断任务,并依据该中断任务请求所对应的权重来修改选定的中央处理器所对应的权重加总值。
4.如权利要求I所述的计算机装置,其中该芯片组还储存有一优先权值记录表,该优先权值记录表用以记录每一中央处理器目前所执行的任务的优先权值,当该芯片组判断该中断任务请求所对应的任务种类未曾有任何中央处理器执行过时,该芯片组选择该优先权值记录表中优先权值最小者所对应的中央处理器来执行该中断任务请求所对应的中断任务。
5.如权利要求I所述的计算机装置,其中该芯片组还储存有一执行状态记录表,该执行状态纪录表用以记录每一任务种类是否曾有任何中央处理器执行过。
6.如权利要求I所述的计算机装置,其中该芯片组还储存有一任务分派记录表,该任务分派记录表用以记录每一中断任务请求所对应的任务种类是由那一个中央处理器执行过,当该芯片组判断该中断任务请求所对应的任务种类曾有中央处理器执行过时,该芯片组从该任务分派记录表中找出执行过上述任务种类的中央处理器,以将该中断任务请求分配给找出的中央处理器来执行对应的中断任务。
7.如权利要求I所述的计算机装置,其中所对应的该任务种类包括中断向量。
8.一种具有多个中央处理器的计算机装置的中断任务分配方法,包括判断来自一外接硬件设备的一中断任务请求所对应的任务种类是否曾有任何中央处理器执行过;以及当判断为是时,将该中断任务请求分配给执行过上述任务种类的中央处理器来执行对应的中断任务。
9.如权利要求8所述的中断任务分配方法,其中当判断为否时,从这些中央处理器中选择其中之一来执行该中断任务请求所对应的中断任务。
10.如权利要求8所述的中断任务分配方法,其中还在该计算机装置的一芯片组中储存一权重表,该权重表用以记录每一中央处理器所处理过的任务种类的权重加总值,当该中断任务请求所对应的任务种类未曾有任何中央处理器执行过时,该芯片组选择该权重表中权重加总值最小者所对应的中央处理器来执行该中断任务请求所对应的中断任务,并依据该中断任务请求所对应的权重来修改选定的中央处理器所对应的权重加总值。
11.如权利要求8所述的中断任务分配方法,其中还在该计算机装置的一芯片组中储存一优先权值记录表,该优先权值记录表用以记录每一中央处理器目前所执行的任务的优先权值,当该中断任务请求所对应的任务种类未曾有任何中央处理器执行过时,该芯片组选择该优先权值记录表中优先权值最小者所对应的中央处理器来执行该中断任务请求所对应的中断任务。
12.如权利要求8所述的中断任务分配方法,其中还在该计算机装置的一芯片组中储存一执行状态记录表,该执行状态纪录表用以记录每一任务种类是否曾有任何中央处理器执行过。
13.如权利要求8所述的中断任务分配方法,其中还在该计算机装置的一芯片组中储存一任务分派记录表,该任务分派记录表用以记录每一中断任务请求所对应的任务种类是由那一个中央处理器执行过,当该中断任务请求所对应的任务种类曾有中央处理器执行过时,该芯片组从该任务分派记录表中找出执行过上述任务种类的中央处理器,以将该中断任务请求分配给找出的中央处理器来执行对应的中断任务。
14.如权利要求8所述的中断任务分配方法,其中所对应的该任务种类包括中断向量。
全文摘要
一种计算机装置及其中断任务分配方法。所述的计算机装置包括有多个中央处理器与一个芯片组,而其中芯片组电性连接每一中央处理器。所述的芯片组用以接收来自一外接硬件设备的一中断任务请求,并判断此中断任务请求所对应的任务种类是否曾有任何中央处理器执行过。当判断为是时,此芯片组便将上述的中断任务请求分配给执行过上述任务种类的中央处理器来执行对应的中断任务。
文档编号G06F9/50GK102622274SQ20121010515
公开日2012年8月1日 申请日期2012年4月11日 优先权日2011年10月20日
发明者何宽瑞, 江文彬, 王奕翔 申请人:威盛电子股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1