处理系统以及用以处理该处理系统中指令的相关方法技术方案

技术编号:2827083 阅读:199 留言:0更新日期:2012-04-11 18:40
本发明专利技术的较佳实施例揭露了一种一处理系统中的预定指令的处理方法,此处理系统具有多数处理单元,此方法包含:提供一全局(global)程序计数器,并设定该全局程序计数器的计数值,以作为被执行的所述预定指令的指令;指定一本地程序计数器给每一处理单元,并根据该处理单元所执行的一现今指令设定该本地(local)程序计数器的一计数值;以及根据存储在该处理单元的该本地程序计数器以及该全局程序计数器的计数值使能至少一处理单元以执行所述预定指令的一特定指令。

【技术实现步骤摘要】

本专利技术涉及一种处理包含多个处理单元的处理系统的预定指令的方法, 特别有特别涉及一种处理系统,其具有提供每一处理单元的本地程序计数器 的多个处理单元。且本专利技术有关于处理此处理系统中的预定指令的相关方法。
技术介绍
一般而言,单指令多数据(Single Instruction Multiple Data, SIMD)处理系统的指令执行流程控制(flow control,或称为分支控制branchcontrol)都相当的困难,因为对于同一个分支指令处理的多个不同数据,可能会造成不同的分支结果,但是受限于此处理系统仅能够在同一时间内执行 单一指令于多个数据的特性,所以需要一些特殊技巧来解决在此处理系统架构下,执行不同指令流程的问题。坎套式流程控制更恶化了此种问题。有一 些现有方法可以解决部份问题,但却浪费了硬件资源来解决前述的坎套式流 程控制问题。通常在绘图处理的领域中,都利用SIMD的平行处理架构特性来处理需要 做类似运算的多笔数据。然而,SIMD通常相当的受限。举例来说,较常见的 问题是平行处理系统的多数SIMD处理单元虽然可以同时处理多笔不同的数 据,但每一个处理单元都必须执行同一个程序计数器(program counter)所 指定的指令。事实上,传统的SIMD处理单元仅有一个程序计数器。因此,需要有新颖的方法和装置解决上述问题。
技术实现思路
因此,本专利技术的目的之一是提供一具有多数处理单元的一处理系统以解 决前述问题,其中,处理单元具有本地程序计数器。本专利技术更提供与此处理 系统相关的方法,用以处理在处理系统中的预定指令。本专利技术的较佳实施例揭露了一种一处理系统中的预定指令的处理方法, 此处理系统具有多数处理单元,此方法包含提供一全局(global)程序计数器,并设定该全局程序计数器的计数值,以作为被执行的所述预定指令的指令;指定一本地程序计数器给每一处理单 元,并根据该处理单元所执行的一现今指令设定该本地(local)程序计数器的 一计数值;以及根据存储在该处理单元的该本地程序计数器以及该全局程序 计数器的计数值使能至少一处理单元以执行所述预定指令的一特定指令。本专利技术的较佳实施例揭露了 一种用以处理预定指令的处理系统。此处理 系统包含 一指令緩冲器,用以接收并緩冲该预定指令; 一全局程序计数器, 耦接至该指令緩沖器,用以存储一计数值,且该计数值是作为被执行的该预 定指令的指令;多数处理单元,其中的每一个包含 一执行单元,用以执行 指令; 一本地(local)程序计数器,用以根据该执行单元所执行的一现今指 令设定一计数值;以及一流程控制单元,耦接至该全局程序计数器以及每一 处理单元,用以根据存储在该处理单元的该本地程序计数器以及该全局程序 计数器的计数值使能至少一处理单元以执行所述预定指令的一特定指令。附图说明图1示出了根据本专利技术的一实施例的用以处理预定指令的处理系统的方块图。图2示出了根据本专利技术的实施例的用以处理预定指令的方法。附图符号说明100处理系统105多凄t处理单元106执行单元107本地程序计数器108写回单元109緩存器文件110指令緩沖器120全局程序计数器130指令取得/解码单元140流程控制单元具体实施方式在i兑明书及后续的申^青专利范围当中j吏用了某些词汇来指称特定的组 件。所属领域中具有通常知识者应可理解,硬件制造商可能会用不同的名词 来称呼同一个组件。本说明书及后续的申请专利范围并不以名称的差异来作 为区分組件的方式,而是以组件在功能上的差异来作为区分的准则。在通篇 说明书及后续的请求项当中所提及的「包含」是一开放式的用语,故应解释成r包含但不限定于」。以外,「耦接」 一词在此是包含任何直接及间接的电 气连接手段。因此,若文中描述一第一装置耦接于一第二装置,则代表该第 —装置可直接电气连接于该第二装置,或通过其它装置或连接手段间接地电 气连接至该第二装置。请参照图1,图1示出了根据本专利技术的一实施例的用以处理预定指令的 处理系统100的方块图。在图1中,小箭头符号代表一控制路径,其代表何 种动作欲被执行以及欲被写入至特定緩存器的执行结果。而大箭头符号代表 一数据路径,而数据路径包含了指令以及数据。处理系统100包含一指令緩 冲器110。指令緩冲器110用以接收并缓沖欲被处理的预定指令。全局程序 计数器120耦接至指令緩冲器110,用以存储一计数值以作为被执行的该预 定指令的指令。处理系统100亦包含多数处理单元105,其中的每一个都具 有一执行单元106以及一本地程序计数器l(H。执行单元106用以执行存储 在指令緩冲器110中的预定指令。本地程序计数器107用以根据执行单元106 所执行的一现今指令i殳定一计数值。此外,处理系统100包含一流程控制单元0。流程控制单元14G耦接 至全局程序计数器120以及每一多数处理单元105。流程控制单元用以 根据存储在处理单元105中的本地程序计数器107以及全局程序计数器120 的计数值使能至少一处理单元105以执行预定指令的一特定指令。处理系统100的流程控制单元140在存储在特定处理单元中105的特定 本地程序计数器107具有和全局程序计数器120相等的计数值时,使能一特 定处理单元105以执行被全局程序计数器120所指向(point to)的特定指令。此外,特定处理单元105中的特定本地程序计数器107在处理单元IOS 的特定处理单元105未被流程控制单元14G使能以执行特定指令时,维持存 储在特定本地程序计数器1Q7的一特定计数值。若特定指令不为一流程控制指令,处理系统100的流程控制单元140控制特定本地程序计数器107以增加存储在特定本地程序计数器107中的特定 计数值。若特定指令是一流程控制指令,特定处理单元1Q5的执行单元1Q6计算 流程控制指令,且流程控制单元14G根据4丸行单元106的计算结果更新存储 在特定本地程序计数器107中的特定计数值。流程控制单元106在流程控制指令(或分支指令)未被判断成分支动作 要才丸行(branch not taken)时,增加存^诸在特定本地程序计数器107中的 特定计数值,以及流程控制单元106在流程控制指令(或分支指令)被判断成 分支动作要执行时(branch taken),指派对应于另 一指令的一预定目标地址 给存储在特定本地程序计数器107中的特定计数值。在本专利技术的另一实施例中,每一处理单元105包含一呼叫状态位(call status bit),用以表示处理单元105何时执行一呼叫块(call block)或一 坎套呼叫块(nested call block)的指令。此特性相当的重要,因为若本地 程序计数器107具有最小的本地程序计数值,将使得相对应的处理单元IO5 执行指令。每一处理单元105可具有一呼叫状态位,当处理单元105执行进 入一呼叫块或一坎套呼叫块的一呼叫指令(Call )时,呼叫状态位被设定。 而当处理单元105执行存在于非坎套呼叫块或位于最高层坎套呼叫块的一回 复指令(Return)时,呼叫状态位被清除。在此例中,具有设定的呼叫状态 位的处理单元105首先被视为一群组,且在此群组中,若处理单元105具有 最小的本地程序计数值,将使得相对应的处理单本文档来自技高网...

【技术保护点】
一种处理系统中的预定指令的处理方法,该处理系统具有多数处理单元,该处理方法包含:(a)提供一全局程序计数器,并设定该全局程序计数器的计数值,以作为被执行的所述预定指令的指令;(b)指定一本地程序计数器给每一处理单元,并根据该处理单元所执行的一现今指令设定该本地程序计数器的一计数值;以及(c)根据存储在该处理单元的本地程序计数器以及该全局程序计数器的计数值,来使能至少一处理单元以执行所述预定指令中的一特定指令。

【技术特征摘要】
1. 一种处理系统中的预定指令的处理方法,该处理系统具有多数处理单元,该处理方法包含(a)提供一全局程序计数器,并设定该全局程序计数器的计数值,以作为被执行的所述预定指令的指令;(b)指定一本地程序计数器给每一处理单元,并根据该处理单元所执行的一现今指令设定该本地程序计数器的一计数值;以及(c)根据存储在该处理单元的本地程序计数器以及该全局程序计数器的计数值,来使能至少一处理单元以执行所述预定指令中的一特定指令。2. —种用以处理预定指令的处理系统,该处理系统包含 一指令緩沖器,用以接收并緩冲该预定指令;一全局程序计数器,耦接至该指令緩沖器,用以存储一计数值,且该计 数值是作为被执行的该预定指令的指令; 多数处理单元,其中的每一个包含 一执行单元,用以执行指令;以及一本地程序计数器,用以根据该执行单元所执行的一现今指令设定 一计数值;以及一流程控制单元,耦接至该全局程序计数器以及每一处理单元,用以根 据存储在该处理单元的该本地程序计数器以及该全局程序计数器的计数值使 能至少一处理单元以执行所述预定指令的一特定指令。3. 如权利要求2所述的处理系统,其中,该流程控制单元在存储在该特 定处理单元中的该本地程序计数器具有和该全局程序计数器相等的计数值 时,使能一特定处理单元以执行被全局程序计数器所指向的特定指令。4. 如权利要求3所述的处理系统,其中,该特定指令是流程控制指令以 外的其它指令,且该流程控制单元控制该特定本地程序计数器以增加存储在 该特定本地程序计数器中的该特定计数值。5. 如权利要求3所述的处理系统,其中,该特定指令是一流程控制指令, 且该特定处理单元的该执行单元执行该流程控制指令以产生 一计算结杲,且 该流程控制单元根据该计算结果更新存储在该特定本地程序计数器中的该特 定计数值。6. 如权利要求5所述的处理系统,其中,该流程控制单元在该计算结果 使得该流程控制或分支指令指定的分支动作不执行时,增加存储在该特定本 地程序计数器中的该特定计数值,以及该流程控制单元在该计算结果使得该 流程控制或分支指令指定的分支动作要执行时,指派对应于另一指令的一预 定目标地址给存储在该特定本地程序计数器中的该特定计数值。7. 如权利要求2所述的处理系统,其中, 一特定处理单元中的一特定本 地程序计数器在所述处理单元的该特定处理单元未被使能以执行该特定指令 时,维持存储在所述特定本地程序计数器的 一特定计数值。8. —种一处理系统中的预定指令的处理方法,该处理系统具有多数处理 单元,该方法包含(a) 比较存储在多数本地程序计数器中的多数计数值以产生一比较结 果,其中所述计数值分别被指派给该处理单元;(b) 根据该比较结果提供该预定指令的一指令;以及(c) 根据该比较结果使能所述处理单元中的一特定处理单元以执行该指令。9. 一种用以处理预定指令的处理系统,包含多数本地程序计数器,耦接于多数处理单元,其中,所述本地程序计数 器分别存储多数计数值;一流程控制单元,耦^妄于所述...

【专利技术属性】
技术研发人员:阎学斌
申请(专利权)人:矽统科技股份有限公司
类型:发明
国别省市:71[]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1