当前位置: 首页 > 专利查询>西门子公司专利>正文

多任务实时处理的设备和方法技术

技术编号:2890904 阅读:304 留言:0更新日期:2012-04-11 18:40
实时数据处理设备中处理多任务的一种设备和方法,其中每一任务按照其紧迫性动态分配一个优先级。为此为每一要处理的任务建立一个带一定数目的t和i位的初始化单元(IC),并把该初始化单元登入一个争用部件(PCU)的一个空单元(CC)中。比较争用部件(PCU)的所有单元(CC)的t位中包含的时间流程信息,查明包含最小时间流程信息的那个任务。如果与先前查明的任务不一致,则给处理器发送一个中断信号(IRINW),开始处理新查明的任务。(*该技术在2016年保护过期,可自由使用*)

【技术实现步骤摘要】
【国外来华专利技术】
本专利技术涉及的是实时数据处理设备的处理器中多任务处理的设备和方法,其中每一任务按照一个动态分配的优先级单独地、并且在一个预先规定的时间段内由该处理器处理。在上述具有动态优先级分配技术的实时系统中,一个任务或中断的优先级按照相对的紧迫性分配,并且涉及那一时刻,在该时刻有一个任务供处理,或请求一个中断。在许多迄今为止应用的系统中,为任务和中断请求存在一个静态的优先级分配,它不随时间的推移而改变。为了在一个这样的有n个独立的周期性任务的系统中实现所有任务的及时处理,处理器的负荷不得超过理论值n(21/n-1)。在n大时,这个值迅速趋向于1n2=0.69。也就是说,在一个这样的系统中,处理器的负荷最大只可达到70%,该处理器最低需要30%的空闲时间才能及时处理所有的任务。为改善处理器的负荷,进而改善整个数据处理设备的性能,已经尝试过实现动态优先级分配。这种动态优先级分配的理论基础发表在计算机协会杂志第20卷1973年1月号第46-61页题目为“在硬实时环境中多道程序的调度算法”的文章中。根据这种理论,处理器的负荷可以达到100%。文中说明一种优先级的分配算法,该法以最早截止期优先(第一)(EDF)表示。从所有要处理的排队等待的任务中根据EDF那个任务得到最高优先级,据此优先级对其处理的时间段最早结束。在所述发表的文章中此外还进行了静态优先级分配系统和动态优先级分配系统之间理论性能的比较,以及进一步这些系统与混合优先级分配系统的比较。虽然按照EDF的动态优先级分配可以达到100%的处理器负荷,但是系统性能并不能改善,因为此时处理器必须另外处理优先级分配的算法。实践表明,优先级分配的算法在一些场合下产生高达80%处理器操作时间,以至只有20%的处理器时间用于实际的任务处理。可以用一个专门负责处理优先级分配算法的另外的处理器来避免由于优先级分配算法而导致的处理器负荷的减少。这样的解决方案可以从IEEE计算机学报,7/88,第177页及以后有关页上发表的时间驱动调度处理器的实现和评估”中获知。使用这样的系统,可以达到98%的处理任务的处理器时间。然而这种技术解决方案有下述缺点硬件开销增加太多,因而对许多应用来说这种系统昂贵。因此本专利技术的一个任务是提供一种方法和设备,利用这种方法和设备在应用一按照EDF的动态优先级分配时在与已知的系统相比不增加另外的处理器的设备上。处理器负荷可大大提高,另外这样的解决方案还应该在不过多增加开支的情况下能够实现。根据本专利技术,通过由一个数据处理设备的处理器使用一种多任务处理方法而解决了上述任务,其中每一任务按照一个动态分配的优先级独立地、并且在一个预先规定的时间段内由该处理器处理,该方法包括下述步骤-对要处理的任务建立一个初始化单元,该初始化单元带有包含时间流程信息的一定数目的t位和包含变址信息的一定数目的i位,并且把该建立起来的初始化单元装入争用部件的一个空单元,每一个要由处理器处理的任务都在争用部件中分配一个这样的单元。-比较争用部件所有单元在t位中包含的时间信息,以查明包含最小时间流程信息的那项任务,如果该任务和正由处理器处理的先前查明的任务不一致的话,给处理器发送一个中断信号,以便开始处理最新查明的任务。同样,所提出的任务通过使用由一个处理器按照动态分配的优先级在一个预先规定的时间段内处理多任务的设备而解决,在该设备中,装备若干个为要处理的一外部任务建立初始化单元的部件,该初始化单元至少包含一定数目的t位,它们包含时间流程信息,和包含一定数目的i位,它们包含变址信息,在该设备中,还有为在争用部件(PCU)中登入每一待处理的任务的初始化单元的另外的部件,为此其中装备了多个争用单元,另外还有比较在争用部件的所有单元的t位中包含的时间信息的部件,以查明包含最早到期的时间信息的那个任务,以及给处理器发送中断信号的部件,如果在该查明的任务与前此查明的正由处理器处理的任务不一致时,则开始新查明的任务的处理。在t位中包含的时间流程信息通常规定,在多长的时间内该任务必需完成,而在i位中包含的变址信息指向该数据处理设备的任务控制块。通过这种方法及设备,可以极大改善处理器的负荷,因为处理器不必处理任何为分配优先级而需要开销的代码。因此处理器可以加载任务到其100%的理论极限。争用部件的硬件开销与一个附加的处理器相比十分小。争用部件例如可以是一个简单的静态RAM存储块,或者是一个简单的二进制计数器,其中存储争用单元。在本方法及本设备的一个实施形式中,初始化单元以有利的方式由进程初始化部件建立,其中,对每一允许的外部事件-它触发一个由处理器处理的任务-包含一个带预编码或者通过处理器初始化的t和i位的初始化单元。在本专利技术的框架内另外还设计,对一个待处理的内部任务,例如一子任务,由处理器建立争用单元的t和i位并登入争用部件中。本专利技术框架内的另外的优点是争用部件的每一单元的r位指示该单元是否被占用。在把一个单元登入争用部件之前总要检验该r位,以确认打算用的单元未由登入其它任务而被占用。当所属任务结束,该r位被重新释放,指示它为一个空单元。另外被证明为优点的是争用部件的每一单元另外包含f位,它们设计用于任务间通信,例如信号机,事件标志或者信息箱,通过它们可以暂时抑制一个争用单元参与比较在t位中包含的时间流程信息。当一个任务必需等待一个规定的前提条件时,则在该任务的争用单元中置一f位,以便将其从对在t位中包含的时间流程信息的比较中暂时排除。当继续处理该任务的前提条件满足时,分配的争用单元的该f位重新复位,使得此后该单元又能参与对t位的比较。由此可以以简单的方式表示一个争用单元的激活和非激活的状态。根据本专利技术的方法的一个特别有利的实施例可以通过下述事实得到,在一个初始化单元的t位中包含的相对时间信息,在把该单元往争用部件登入之前要加上一个向上计数的计数器的值,以产生一个绝对时间信息,其通过争用单元的t位体现。因为在争用单元中只还存储了绝对时间信息,因此只还必须互相比较这些登录项,以确定哪个任务包含最小时间流程信息。仅在至少争用单元之一的r和f位的状态发生改变时才以有利的方式比较激活的争用单元的时间流程信息。这就是说,仅在一个争用单元往争用部件中新登入时或从其中清除时或者一个争用单元参与时间流程信息的比较被抑制或重新允许时这种比较才能执行。然而,不依赖争用单元的r和f位的状态,另外周期地比较所有被占用的争用单元(激活的和未激活的单元)的时间流程信息,只要被查明的最小时间流程信息值小于计数器的时间流程信息值时,就显示过载。这种过载保险用于,在超过100%的处理器满负荷的情况下激活也能在这种场合下使数据处理继续可靠地运行的子例程。同样,可以通过该中断子例程处理死循环。在本专利技术的框架内以下面的方式区分相对和绝对时间流程信息。相对时间信息规定一个时间段,例如15毫秒,在该时间段内该任务的处理最晚必须结束。一个这样的相对时间流程信息在下面叙述的优选实施例中首先包含在初始化单元的t位中。为简单起见,相对时间流程信息也可以间接地通过一个二进制值,例如一个二进制计数器的一定数目的脉冲周期表示,其用作时间参量。与此相对,一个绝对时间流程信息规定一个时刻,例如10点15分45秒1毫秒,最迟到该时刻该任务的处理必须结束本文档来自技高网...

【技术保护点】
一种由实时数据处理设备的处理器处理多任务的方法,其中每一任务按照一个动态分配的优先级独立地、并且在一个预先规定的时间段内由一处理器处理,该方法包括下述步骤:-对一个要处理的任务建立一个初始化单元(IC),它带有一定数目的t位和一定数目的i位,t位中包含时间流程信息,i位中包含变址信息,并且把该建立起来的初始化单元登入一个争用部件(PCU)的一个空单元(CC)中,在该争用部件(PCU)中为每一个由处理器(CPU)处理的任务分配一个这样的单元(CC),-比较该争用部件(PCU)的所有单元(CC)的t位包含的时间信息,以查明包含最小时间流程信息的那个任务,和必要的话给处理器(CPU)发送一个中断信号(IRINW),以便在查明的任务与正由处理器(CPU)处理的先前查明的任务不一致时开始处理新查明的任务。2.根据权利要求1的方法,其特征在于,该时间流程信息规定,在该时间段内该任务的处理要完成,而变址信息指向数据处理设备的任务控制块。

【技术特征摘要】
【国外来华专利技术】...

【专利技术属性】
技术研发人员:XY何
申请(专利权)人:西门子公司
类型:发明
国别省市:DE[德国]

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

1