处理程序中的指令的系统的制作方法

文档序号:6445633阅读:182来源:国知局
专利名称:处理程序中的指令的系统的制作方法
技术领域
本发明涉及一种处理系统,包括至少一个计算单元,所述的计算单元用于执行包括一个或一个以上的指令的至少一个块,所述的块与用所述的计算单元执行该块的至少一个时间点相关联,所述的时间点由预定时间确定。
本发明还涉及一种处理方法,包括用计算单元实施的至少一个执行步骤,计算单元用于执行包括一个或一个以上的指令的至少一个块,所述的块与用所述的计算单元执行该块的至少一个时间点相关联,所述的时间点由预定时间确定。
本发明还涉及程序,包括用于执行所述方法的步骤的程序代码指令。
本发明的一个应用是在一个系统中用于具有实时约束的应用,例如,用于处理视频数据的装置中。图像绘制处理器例如可以构成这种处理视频数据的装置。图像绘制处理器例如可以包括在解码器、电视机的机顶盒或电视机中。
EP-0840213涉及的发明的目的是确定执行指令的时间点,以引起用这些时间点确定的顺序执行指令。但是,该专利申请中,执行指令的时间点只考虑确定由计算单元执行所述指令的顺序,这就是说,实际在与预定步骤中确定的有所不同的时间点执行指令。因而有缺点,特别是系统在用于具有实时约束的应用的情况下,例如,专用于显示音频-视频图像的系统中,在荧屏上同步显示语音和图像很重要。如果在预定步骤中确定的时间点实际上不执行指令,就不能在荧屏上同步显示语音和图像。
欧洲专利申请EP-0959575公开了一种处理系统,其中,指令实际上是在要执行该指令的时间点执行,每个指令与要执行该指令的时间点有关,执行该指令的该时间点与参考时间相比,当要执行该指令的该时间点等于参考时间时,执行该指令。系统使用比较器或算术逻辑单元,它为每个指令比较执行该指令的时间点与参考时间。该系统要求比较要执行指令的时间点与参考时间用的比较程序,缺点是,该程序减慢了系统速度,因而增加了系统的功耗。
本发明提供包括至少一个计算单元的处理系统,所述计算单元用于执行包括一个或一个以上指令的至少一个块,所述的块与要由所述计算单元执行该块的至少一个时间点相关联,所述的时间点由预定时间确定,所述处理系统包括用于将所述时间点与执行时间进行比较的比较装置,执行时间链接到预定时间;和激活装置,它按照所述比较引起计算单元执行或不执行所述指令块;指令块与表示执行该指令块的至少一个时间点的至少一个标记相关联,所述标记存储在适合于比较给定的标记与执行时间的按内容可寻址的存储器中;给定的标记与执行时间匹配时,提供描述与所述给定标记对应的指令块的标记符。
按本发明,按内容可寻址的存储器,例如,相联存储器,包括比较装置和激活装置。按此方式,用硬件装置执行比较和激活操作比用软件装置执行比较和激活操作要快而且消耗的能量少。其原因是,为了比较执行时间与执行指令块的时间点,软件装置必须执行大量的操作。因此,为了使包括给定数量的指令的指令块被执行,这就有可能软件装置需要进行的操作量与给定指令数差不多,这在运行速度或能量消耗方面都不是理想的。
本发明的优选实施例中,指令块还与指示要执行的计算单元的至少一个标识符相关联,描述符发送到指令定序器,使对应于所述的描述符的指令块中的指令由对应所述标识符的计算单元执行。
本实施例的特别优点是,多个计算单元并行执行不同指令块。存储在例如指令块或指令定序器中的标识符起动指令定序器,以激励一个计算单元或多个计算单元,多个规定指令块中的多个指令发送到所激励的一个计算单元或多个计算单元。因此,指令定序器保证计算单元与其中存储有指令块的中心存储器之间的有效通信。
通过以下参考实施例所做的详细描述,本发明的这些和其他方案就变得更清楚。


附图中示出非限定示例图1是显示本发明的处理系统的特征的框图;图2是图1所示的处理系统的比较和激活装置的实施例;图3显示包括多个计算单元的按本发明的处理系统;图4a和4b显示图3所示的处理系统在图象绘制处理器中如何使用的例子。
图1中还显示出预定装置12。该装置用于确定执行指令块的计算单元和时间点。按本发明的系统可以包括预定装置12。这种情况下,特别是可以进行动态预定,即,在程序11运行过程中进行预定。预定装置12也可以附到按本发明的系统上。这种情况下,执行的预定是静止的,即在程序11运行前进行预定。这种情况下,预定装置12供给的信息是本发明的系统可访问的。这种信息特别与执行指令块的计算单元、时间点和预定装置用的预定时间12a相关。在用预定装置12进行的预定步骤中获得该信息,例如在编译程序11时可以进行预定步骤。
为了确定执行指令块的时间点和计算单元,预定装置12要考虑-利用诸如两个计算单元16和17的资源设置的约束,-要执行的指令块,例如,指令块B1和指令I6,-利用时间设置的约束,例如实时型约束。
预定装置12必须求解线性程序,以满足这些不同的约束。这类的解是本行业技术人员熟知的。例如欧洲专利申请EP-0 840 213公开了如何确定执行指令或指令块的时间点。
由预定时间12a确定执行指令块的时间点。假设运行程序11需要的时间长度是“T”,预定时间12a例如在时间点“0”开始并在时间点“T”结束。这种情况下,执行指令块的时间在“0”到“T”之间。
程序11运行时,用比较装置14比较执行指令块的时间点与执行时间13。这些时间点例如可以存储在存储器18中,存储器18可以是预定装置12的构成部分也可以不是预定装置12的构成部分。它们同样可以是存储在程序11的指令块中或程序11的某些其他部分中。这种情况下,比较装置14访问程序11,以比较例如用软件运行的暂时比较程序形成的执行时间13。
执行时间13可以是实时时间,对应的数量同样可以是时钟信号周期的总数,也可以不是时钟信号周期的总数。执行时间13链接到预定时间12a,上述例中,执行时间13例如可以与预定时间12a相同,它从时间点“0”开始到时间点“T”结束。时间点“0”表示程序11的运行开始。
因此,以公用时基为基础确定执行指令块的时间点,和使用激活装置15引起执行指令,可以在预定装置12确定的时间点实际执行指令块。当预定的准则在执行指令块的时间点与执行时间之间建立链接时,激活装置引起计算单元有效执行指令块。该预定的准则例如可以使所述的时间点与执行时间13之间匹配。
特别是当确定了执行指令块的多个时间点时,例如,当执行指令块的时间点规定在时间间隔中时,可以选择其他的准则。这种情况下,当执行时间13中达到的时间点在该时间间隔中时,激活装置15可以引起执行指令块。
当执行时间13与执行指令块的时间点之间有预定的差别时,激活装置15可以引起执行指令块。在比较器14的比较与计算单元执行指令块的开始之间实际上需要一定的延迟时间。执行时间13与执行指令块的时间点之间的预定差别允许该延迟时间。注意,也可以从执行指令块的时间点减去该延迟时间,如图2所示。为了确定作为预定时间12a的函数的执行时间13,也可以允许延迟时间,如图2所示。
预定装置确定的一个时间点满足预定的准则时,激活装置15访问合适的指令块,并发送所述的指令块到执行它的计算单元。激活装置同样发送一项信息给计算单元,告知必须下载该指令块中的指令,以执行所述指令。
图2显示出本发明的优选实施例。该实施例中,用包括标记部分22a和数据部分22b的按内容可寻址的存储器22构成比较器14和激活装置15。本实施例中,程序11包括5个指令块B1-B5,在时间点t1-t5用第一计算单元16执行这些指令块。
给用图1所示的预定装置12确定的执行指令块的时间点t1-t5做标记,也就是说,例如将它们编码到一定的位数。本实施例中,给对应时钟周期总数的时间点t1-t5做标记,以获得编码成16位的标记TAG1-TAG5。这些标记存储在按内容可寻址的存储器22的标记部分22a中。是按每个时钟周期递增的时钟周期总数的执行时间13也编码成16位。
按内容可寻址的存储器22的数据部分22b中存储描述符B1*-B5*,描述符B1*-B5*指示与规定标记对应的指令块。
按内容可寻址的存储器22操作如下。在每个时钟周期,执行时间13与全部标记TAG1-TAG5比较。当标记TAG1-TAG5中的一个与执行时间13之间匹配时,对应的描述符发送到第一计算单元16,然后,访问程序11,以下载对应描述符的指令块,以执行这些指令块。
假设在规定的时刻执行时间13与标记TAG1之间匹配、并且描述符发送到第一计算单元16及用计算单元16下载指令块B1需要时间周期Δt,那么,指令块B1将在时间点t1+Δt执行。这可能是个问题,因为,为了满足实时约束,就要求在预定装置12确定的确切的时间点执行指令块B1。
该问题的解决方案包括在预定装置12进行预定时或在做标记时允许该时间周期Δt。例如,从需要执行的指令块B1的时间点t1减去该周期Δt,给时间点(t1+Δt)做标记,并把做好的标记放入按内容可寻址的存储器22的标记部分22a中,因此,实际上可以在时间点11执行指令块B1。
另一解决方案包括,执行时间相对预定时间12a移动时间周期□t。当只是单个计算单元执行程序11时,该解决方案是有利的。在图2所示的示例中有这种情况。当要用一个以上的计算单元执行程序11时,只有当所有计算单元的延迟时间都相同并等于Δt时该问题的解决方案才是有利的。
预定时间12A从时间点“0”开始并在时间点“T”结束的情况下,执行时间13从时间点“Δt”开始并在时间点“T+Δt”结束,因此在时间点Δt开始执行程序11。
因此,在时间点“t1-Δt”描述符B1*发送到第一计算单元16,在预定装置12确定的时间点t1执行指指令块B1。
注意,图2所示示例中,时间周期Δt的允许变化因子与按内容可寻址的存储器22、第一计算单元16和程序11有关。
图3显示出本发明的优选实施例。该实施例中,指令块B1-B5可用第一计算单元16、第二计算单元17或第三计算单元31执行。指令定序器30允许管理代表本发明优选实施例的这类处理系统。
按本行业技术人员熟悉的方式用预定装置确定执行指令块的计算单元。例如这在欧洲专利申请EP-0 840213中已有描述。用识别符P1、P2和P3标识计算单元16、17和31。例如,这些识别符也可以是计算单元16、17和31的地址。指令定序器30包括存储器,其中,指令块描述符与至少一个识别符相关联。图3所示的示例中,指令块B1用第一计算单元16执行,指令块B2用第二计算单元17执行,指令块B3用第一计算单元16执行,指令块B4用第三计算单元31执行,指令块B5用第三计算单元31执行。
之后,描述符被发送到指令定序器30时,按与图2所示的相同方式,指令定序器30访问程序11,以下载对应该描述符的指令块,并发送该指令块到与该描述符相关联的指示符对应的计算单元。注意,指令定序器30同样可以发送信息项目到与所述的描述符相关联的指示符对应的计算单元。该信息项目指示所述计算单元必须执行与所述的描述符对应的指令块。之后,该计算单元承担访问程序11的任务,下载相关的指令块,以执行这些指令块。
例如,指令定序器30可以是状态机。当它接收描述符时,指令定序器30从空闲状态变成读状态。而在该读状态下,指令定序器30访问程序11,以读出对应描述符的指令定块中的指令。所有的指令读出后,指令定序器30变成写状态,以发送指令到与相关联的描述符相关的指示符对应的计算单元。其他解决方案也是值得重视的。指令定序器例如可以读指令块中的第一指令,发送该第一指令到计算单元,然后读第二指令,等等,直到相关指令块中的全部指令都发送到计算单元为止。
注意,计算单元的指示符可以存储在不是指令定序器30的点,例如,存储在按内容可寻址的存储器22的数据部分22b中,指令块中或外接到指令定序器30的存储器中。这些情况中的每种情况下,按上述的操作容易导出处理系统将操作的方式。
图4a和4b显示出按本发明的处理系统在图像绘制处理器中的使用的示例。
视频数据有各种显示格式。例如,美国数字电视标准ATSC,它规定了18种不同的电视广播格式,例如包括480线、每线720像素的图象标准格式,或包括1080线、每线1920像素的图象高清晰度格式。当按高清晰度格式广播视频数据时,它应转换成标准格式,以便能在其荧屏不兼容高清晰度格式的电视机上显示。图像绘制处理器特别允许进行这种转换。
图4a显示出图像绘制处理器进行的操作,以获得标准清晰度中规定像素的值X,X是位于高清晰度图象中规定像素上面的像素值X1和X2的和位于高清晰度图象中规定像素下面的像素值X3和X4的函数。像素的值可以是灰度级。该操作可以用下式确定量XX=c1X1+c2X2+c3X3+c4X4该式中,c1,c2,c3,和c4是滤波系数,它们可以存储在例如能被第二计算单元17访问的存储器中。
图4b显示出按本发明的处理系统,它允许指令被预定和执行,以执行本操作。第一指令块B1包括4个指令I41-I44,它们定义如下I41装入X1I42装入X2I43装入X3I44装入X4用这些指令I41-I44,在预定装置12确定的时间点t1把值X1-X4装入第一计算单元16。
第二指令块B2包括4个指令I45-I48,它们定义如下I45X1乘c1I46X2乘c2I47X3乘c3I48X4乘c4用在预定装置12确定的时间点t2第二计算单元17执行的这些指令I45-I48,获得量c1X1,c2X2,c3X3和c4X4。如果第二计算单元17能并行执行不同指令,那么,4个指令I45-I48例如可以同时执行。
第三指令块B3包括一条指令I49,它定义如下I49加c1X1,c2X2,c3X3和c4X4。
在用预定装置12确定的时间点用第二计算单元17执行该指令I49。
例如,时间点t1,t2和t3定义如下。假设在时间点T0必须获得量X,装入操作所需的时间周期是Δt1,相乘需要时间Δt2,相加需要时间Δt3,时间点t1、t2和t3由下式定义t1=T0-Δt1-Δt2-Δt3t2=T0-Δtt2-Δt3t3=T0-Δt3本实施例中,执行时间13相对预定时间12a移动时间周期Δt。时间周期Δt对应图2中定义的Δt。如果执行时间13是时钟信号,该时间周期Δt对应一个以上的时钟周期数。对应时钟周期数的时间点t1,t2和t3编码成16位,以产生标记TAG1,TAG2和TAG3。这些标记放到按内容可寻址的存储器22的标记部分22a中。执行时间13同样编码成16位。
程序在时间点Δt开始运行,当执行时间13与t1相等时,描述符B1*发送到指令定序器30。对于预定装置12,程序11在时间点“0”开始运行。因此,相对预定时间12a,在时间点t1-Δt,描述符B1*实际上发送到指令定序器30。按该方式,在预定装置12确定的时间点t1用第一计算单元16精确执行指令块B1。因此,用于指令块B2和B3的推论相同。
图4b所示的处理系统可以用在图像绘制处理器中,用于计算像素值,以使像素显示在荧屏上。这类的图像绘制处理器可以包括在例如解码器,电视机机顶盒,电视机,计算机中央处理单元还计算机监视器中。这类图像绘制处理器可以用在包括适合发送代表至少一个图象的信号的至少一个发送机的通信系统中,发送网络和适合接收所述信号的接收机中。
权利要求
1.一种处理系统,包括至少一个计算单元(16),所述的计算单元(16)用于执行包括一个或一个以上指令(11)的至少指令块(B1),所述的指令块与用所述计算单元执行该指令块的至少一个时间点(t1)相关联,所述的时间点由预定时间(12a)确定,所述的处理系统包括比较装置(14),用于比较所述的时间点和链接到所述预定时间的执行时间(13);和激活装置(15),用于按照所述比较使所述计算单元执行或不执行所述的指令块,指令块与至少一个标记(TAG1)相关联,所述至少一个标记(TAG1)表示要执行所述指令块的至少一个时间点,所述标记存储在按内容可寻址的存储器(22)中,所述存储器(22)适合比较规定标记与所述执行时间,并在所述规定的标记与所述执行时间匹配时提供描述对应所述规定的标记的指令块的描述符(B1*)。
2.按权利要求1的处理系统,其特征是,指令块还与指示要执行的计算单元的至少一个指示符(P1)相关联,所述指示符被发送到适合于引起对应于所述描述符的指令块中的指令由对应于所述指示符的计算单元执行。
3.一种处理方法,包括至少一个用计算单元进行的执行步骤,用于执行包括一个或一个以上的指令的至少一个指令块,所述至少一个指令块与用所述计算单元执行该指令块的至少一个时间点相关联,所述时间点由预定时间确定,所述处理方法的特征是包括以下步骤比较步骤,用于比较所述的时间点和链接到所述预定时间的执行时间;和激活步骤,用于按照所述比较步骤的结果使所述计算单元执行或不执行所述指令块,指令块与至少一个标记相关联,所述至少一个标记表示要执行所述指令块的至少一个时间点,所述标记存储在按内容可寻址的存储器中,所述按内容可寻址的存储器适合比较规定的标记与所述执行时间,当所述规定标记与所述执行时间之间匹配时,提供描述对应所述规定标记的指令块的描述符。
4.按权利要求3的方法,其特征是,指令块还与指示要执行的计算单元的至少一个指示符相关联,所述指示符发送到指令定序器,所述指令定序器适合于引起对应于所述描述符的指令块中的指令由对应于所述指示符的计算单元执行。
5.一种程序,包括程序码指令,当所述程序在微处理器上运行时,用于执行权利要求3中要求的方法包括的步骤。
6.一种图像绘制处理器,包括权利要求1或2要求的处理系统。
7.一种电视机的机顶盒,包括至少一个如权利要求6所述的图像绘制处理器。
8.一种装置,包括用于显示图象的至少一个屏幕,和权利要求6所述的图像绘制处理器。
9.一种通信系统,包括至少一个发射机,适合于发送表示至少一个图象的信号;发送网络;接收机,适合于接收所述的信号;和权利要求6所述的图像绘制处理器。
全文摘要
本发明涉及处理系统,用于由计算单元(16)处理程序指令(I1)。为了使实时型约速得到满足,确定要执行指令的时间点(t1),并在这些时间点实际执行指令。至此,处理系统包括比较这些时间点与执行时间(13)的比较装置(14),和按照比较结果引起计算单元执行或不执行该指令的激活装置(15)。指令块与至少一个标记相关联,标记表示要执行所述指令块的时间点。标记存储在按内容可寻址的存储器(22)中,按内容可寻址的存储器(22)比较规定的标记与执行时间,并在规定的标记与执行时间匹配时提供描述符,该描述符描述对应规定的标记的指令块。
文档编号G06F9/38GK1441348SQ03110539
公开日2003年9月10日 申请日期2003年2月22日 优先权日2002年2月26日
发明者M·A·G·杜兰顿, L·帕斯奎尔, V·里维雷, Q·赵 申请人:皇家菲利浦电子有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1