【技术实现步骤摘要】
【国外来华专利技术】
本专利技术属于数字处理器的领域(例如,微处理器、数字信号处理器、微控制器等等),特别是有关于,涉及在单个处理器中管理多个线程的执行的装置与方法。
技术介绍
在数字计算的领域,计算能力的发展历史显示了在各方面都有持续的进步。持续的进步一直在发生,例如处理器的装置密度与线路互连的技术,可用于改善运算速度、容错能力、使用更高速的时脉信号或者更多其它改进。另一个可改善整体计算能力的研究领域为并行处理,其不仅包括使用多个分开的处理器执行并行操作。并行处理的概念包括将任务分散至多个分开的处理器,但是也包括多个程序同时在一个处理器上执行的方案。此方案一般被称为多线程。接下来将介绍多线程的概念随着处理器操作频率逐渐加快,要隐藏在计算机系统的操作中固有的延迟(latency)也变的越来越困难。一个高级处理器在一个特定应用中其高速数据缓存中丢失了百分之一的指令,如果它对于片外RAM有50个周期的延迟的话,则可能导致大概百分之五十的时间停顿。如果当该处理器因为丢失的高速缓存指令而停顿时,属于另一个不同应用程序的指令可以被执行的话,该处理器的性能可以因此而改善,并且一部份或者全部的跟内存有关的延迟也可有效的被消除。举例来说,图1A显示了因为高速缓存丢失而停顿的单个指令流101。支持该指令运作的机器仅可在一个时间内执行单个线程或任务。相反的,图1B显示了在指令流101停顿时指令流102可被执行。在这种情况当中,该支持机器可以同时支持两个线程,也因此更有效的使用该机器所拥有的资源。更一般的说,各个单独的计算机指令都具有特定的语法,使得不同种类的指令需要不同的资源去执行期望的运算。整 ...
【技术保护点】
在一个能够支持和执行多程序线程的处理器中,一种处理的机制,包括: 一个参数,用于调度一个程序线程;以及 一个指令,置于该程序线程中,并且能够存取该参数; 其中,当该参数等于第一数值时,该指令根据一个或多个编码于该参数中的条件,重新调度该程序线程。
【技术特征摘要】
【国外来华专利技术】US 2003-8-28 60/499,180;US 2003-9-12 60/502,359;US1.在一个能够支持和执行多程序线程的处理器中,一种处理的机制,包括一个参数,用于调度一个程序线程;以及一个指令,置于该程序线程中,并且能够存取该参数;其中,当该参数等于第一数值时,该指令根据一个或多个编码于该参数中的条件,重新调度该程序线程。2.如权利要求1所述的机制,其中该参数保存在一个数据储存装置中。3.如权利要求1所述的机制,其中当该参数等于第二数值,且该第二数值不等于该第一数值时,该指令释放该程序线程。4.如权利要求3所述的机制,其中该第二数值为零。5.如权利要求1所述的机制,其中当该参数等于第二数值,且该第二数值不等于该第一数值时,该指令无条件地重新调度该程序线程。6.如权利要求5所述的机制,其中该第二数值为一奇数。7.如权利要求5所述的机制,其中该第二数值为负1。8.如权利要求1所述的机制,其中该一个或多个条件中的一个条件与将执行机会让与其它线程直到该一个条件被满足为止的该程序线程相关。9.如权利要求8所述的机制,其中该一个条件被编码于该参数中的位向量或位字段之一中。10.如权利要求5所述的机制,其中,在该程序线程被重新调度的情形下,该程序线程的执行会在该线程中该指令之后的位置继续。11.如权利要求3所述的机制,其中当该参数等于第三数值,且该第三数值不等于该第一数值与该第二数值时,该指令无条件地重新调度该程序线程。12.如权利要求1所述的机制,其中该一个或多个条件中的一个条件为一个硬件中断。13.如权利要求1所述的机制,其中该一个或多个条件中的一个条件为一个软件中断。14.如权利要求1所述的机制,其中,在该程序线程被重新调度的情形下,该程序线程的执行会在该线程中该指令之后的位置继续。15.在一个能够支持与执行多程序线程的处理器中,一种由一个线程重新调度执行或释放该线程本身的方法,包括(a)发出一个指令,该指令存取一个数据存储装置中的一部分记录,该部份记录编码了与决定该线程是否被重新调度的一个或多个条件相关的一个或多个参数;以及(b)根据在该部分记录中的该一个或多个参数来依照该条件重新调度该线程或释放该线程。16.如权利要求15所述的方法,其中该记录被置于一个通用寄存器(GPR)中。17.如权利要求15所述的方法,其中这些参数中的一个参数与被释放的而不是被重新调度的线程相关。18.如权利要求17所述的方法,其中与该被释放的线程相关的该一个参数为一零值。19.如权利要求15所述的方法,其中这些参数中的一个参数与被重新排队等待调度的线程相关。20.如权利要求19所述的方法,其中该一个参数为一任意奇数值。21.如权利要求19所述的方法,其中该一个参数为负1的二进制补码值。22.如权利要求15所述的方法,其中这些参数中的一个参数与将执行机会让与其它线程直到一个特定条件被满足为止的该线程相关。23.如权利要求22所述的方法,其中该一个参数被编码于该记录中的位向量或者一个或多个值字段之一中。24.如权利要求15所述的方法,其中,在该线程发出该指令并被重新调度的情形下,当该一个或多个条件被满足时,该线程的执行会在该线程指令流中该线程所发出的该指令之后的位置继续。25.如权利要求15所述的方法,其中这些参数中的一个参数与被释放的而不是被重新调度的线程相关,并且这些参数中的另一个参数与被重新排队等待调度的线程相关。26.如权利要求15所述的方法,其中这些参数中的一个参数与被释放的而不是被重新调度的线程相关,并且这些参数中的另一个参数与将执行机会让与其它线程直到一个特定条件被满足相关。27.如权利要求15所述的方法,其中这些参数中的一个参数与被重新排队等待重新调度的线程相关,并且这些参数中的另一个参数与将执行机会让与其它线程直到一个特定条件被满足相关。28.如权利要求15所述的方法,其中这些参数中的一个参数与被释放的而不是被重新调度的线程相关,这些参数中的另一个参数与被重新排队等待调度的线程相关,并且这些参数中的再另一个参数与将执行机会让与其它线程直到一个特定条件被满足相关。29.一种支持与执行多个软件实体的数字处理器,包括一个数据储存装置中的一部分记录,该部分记录编码了与一个或多个条件相关的一个或多个参数,该一个或多个条件决定了当一个线程将执行机会让与其它线程时该线程是否被重新调度。30.如权利要求29所述的数字处理器,其中该部分记录被置于一个通用寄存器(GPR)中。31.如权利要求29所述的数字处理器,其中这些参数中的一个参数与被释放的而不是被重新调度的线程相关。32.如权利要求31所述的数字处理器,其中与该被释放的线程相关的该一个参数为一零值。33.如权利要求29所述的数字处理器,其中这些参数中的一个参数与被重新排队等待调度的线程相关。34.如权利要求33所述的数字处理器,其中该一个参数的值为一任意奇数值。35.如权利要求33所述的数字处理器,其中该一个参数的值为负1的二进制补码值。36.如权利要求29所述的数字处理器,其中这些参数中的一个参数与将执行机会让与其它线程直到一个特定条件被满足的线程相关。37.如权利要求36所述的数字处理器,其中该一个参数被编码于该记录中的位向量或是一个或多个值字段之一中。38.如权利要求29所述的数字处理器,其中这些参数中的一个参数与被释放的而不是被重新调度的线程相关,并且这些参数中的另一个参数与一个被重新排队等待调度的线程相关。39.如权利要求29所述的数字处理器,其中这些参数中的一个参数与被释放的而不是被重新调度的线程相关,并且这些参数中的另一个参数与将执行机会让与其它线程直到一个特定条件被满足相关。40.如权利要求29所述的数字处理器,其中这些参数中的一个参数与被重新排队等待重新调度的线程相关,并且这些参数中的另一个参数与将执行机会让与其它线程直到一个特定条件被满足相关。41.如权利要求29所述的数字处理器,其中这些参数中的一个参数与被释放的而不是被重新调度的线程相关,这些参数中的另一个参数与被重新排队等待调度的线程相关,并且这些参数中的再另一个参数与将执行机会让与其它线程直到一个特定条件被满足相关。42.一种能够支持与执行多个程序线程的处理系统,包括一个数字处理器;一个数据储存装置中的一部分记录,该部分记录编码了与一个或多个条件相关的一个或多个参数,该一个或多个条件决定了一个线程是否被重新调度;以及一个指令集,包含用于重新调度和释放该线程的一个指令;其中当该线程发出该指令时,该指令存取该记录中的该一个或多个参数,并且该系统根据该部分记录中的该一个或多个参数来依照该一个或多个条件重新调度或释放该发出指令的线程。43.如权利要求42所述的处理系统,其中该部分记录被置于一个通用寄存器(GPR)中。44...
【专利技术属性】
技术研发人员:凯文基塞尔,
申请(专利权)人:美普思科技有限公司,
类型:发明
国别省市:US[美国]
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。