接下来的描述与参考标记相关。在所有的附图中同样的部件具有 相同的字母表示。几个类似的部件可以出现在一张图中。在这种情况 下,为了区分类似的部件将在字母上加上数字或者下标。为了方便, 字母或者数字可以被省略。这适用于
说明书和
权利要求的描述。
附图1表明了数据处理设备。该设备包括一个公共存储器SDRAM, 一个存储接口INT以及三个数据处理单元B1,B2,B3。在后面的描述中 将被称为“单元”。每一个单元B都通过专用读总线BBR和专用写总 线BBW与存储接口INT相连。每一个专用读总线BBR和每一个专用写 总线BBW都被专用于特定的单元B。存储接口INT通过公共总线BM连 接到公共存储器SDRAM。单元B,专用读总线BBR,专用写总线BBW以 及存储接口INT构成了一个单片集成
电路的部分,而公共存储器SDRAM 是一个外部电路。
数据处理设备通常按照下面的方式操作。作为一个一般规则,单 元B应请求接收将被处理的并存储在SDRAM中的数据。在处理了这些 数据以后,单元B通过存储接口INT将处理过的数据发送给公共存储 器SDRAM。存储接口INT调整各个单元B对公共存储器SDRAM的访问。
存储接口INT具有两个基本的功能。第一,相对于对公共存储器 SDRAM的访问而言,它执行在各个单元B之间的仲裁。一次只能有一 个单元B能够访问公共存储器SDRAM,在写状态或者在读状态。这意 味着一个单元B只能以触发方式访问存储器。第二,在读的情况下, 存储接口INT将来自于公共存储器SDRAM并且去往
指定的单元B的数 据脉冲转换成基本稳定的数据流。该数据流就是这样通过专用读总线 BBR传送到单元B。在写的情况下,存储接口INT将来自于特定单元B 的基本稳定的数据转换成将要写入在公共存储器SDRAM中的数据脉 冲。
附图2表明在一个简单的优先权访问方案中的存储接口INT的操 作,其中单元B1具有优于B2的优先权,单元B2具有优于B3的优先 权。该方案与艺术(art)状态的操作相应。T(BM)表示在公共存储器 SDRAM与存储器接口INT之间的公共总线BM上的数据传输。 T(BBR1),T(BBR2)和T(BBR3)分别表示在存储器接口INT与单元 B1,B2,B3之间的专用读总线BBR1,BBR2和BBR3上的数据传输。 T(BBW1),T(BBW2)以及T(BBW3)分别表示在存储器接口INT与单元 B1,B2,B3之间的专用写总线上的数据传输。
数据传输T(BM)是由数据脉冲DB构成的。每一个数据脉冲DB与 在写状态或者在读状态下的单元B对公共存储器SDRAM的访问相应。 跟在DB之后的括号内的参考符号表明脉冲中的数据属于哪一个单元 B,此外还有访问的类型:写(W)或者读(R)。例如DB1(B1/R)表明数据 脉冲涉及B1以读的方式对公共存储器SDRAM的访问。
附图2表明存储接口INT对来自于公共存储器SDRAM并属于特定 单元B的数据脉冲进行平滑。相反的,该图也表明了存储器接口INT 对来自于单元B的数据进行时间集中,以便将这些数据以脉冲的形式 (
数据压缩)写入到公共存储器SDRAM。通过专用读总线BBR和专用 写总线BBW的数据传送具有相对较低的速率。因此这使得专用读总线 BBR和专用写总线BBW具有相对较小的带宽,这样就使得这些总线具 有相对较小的宽度。对此需要注意的是,总线的尺寸不需要与包含在 在这种总线中传送的数据的比特数目相应。例如,本身包含16比特位 的数据项能够被分成4比特的字。这样,就能够通过具有4比特尺寸 的总线以4字的序列的形式传送该数据。
附图3表明一个单元B。该单元B包括一个处理器P和一个通用 寻址电路AGA。处理器P做出逻辑请求LRQ。假设单元B处理视频数据, 以及逻辑请求例如是对当前图像的特定行的
像素的请求。通用寻址电 路AGA将逻辑请求LRQ转换成物理请求PRQ。物理请求PRQ定义了在 公共存储器SDRAM中的物理地址,请求数据被存储在该地址上。物理 请求PRQ具有下面的形式:起始地址,当数据被寻找的时候,从该地 址开始将被寻找的地址的数目以及可能将被应用的方案。该方案可以 被定义成下面的形式:将被读取的连续地址的数目,将被跳过的地址 的数目以及“读和跳”循环的数目。AGA能够被编程从而使得翻译参 数定义了从逻辑请求LRQ到物理请求PRQ的翻译。这实现了在公共存 储器SDRAM上的数据存储的灵活性。
附图4表明存储器接口INT。存储器接口INT包括一个仲裁器ARB, 一个访问接口SIF,一个缓冲设备BUF以及宏命令寻址电路AGB。对于 每一个单元B都有一个宏命令寻址电路AGB。
存储器接口INT的内部功能通常是这样的。每一个宏命令寻址电 路AGB将来自于其相关单元B的物理请求划分为宏命令。一个宏命令 表示一个对存储器的特定行的访问请求。在宏命令被提交给仲裁器AGB 之前,宏命令寻址单元AGB检查在缓冲设备BUF中是否有足够的空间。 为此,首先将宏命令提交给缓冲设备BUF。如果缓冲设备BUF确定具 有空间能够存储由宏命令确定的数据的数目,宏命令寻址电路AGB将 宏命令提供给仲裁器ARB。仲裁器ARB收集来自于每个宏命令寻址电 路AGB的宏命令并且选择一个宏命令用于发送到访问接口SIF。这种 选择是根据下面将要描述的仲裁方案进行的。访问接口SIF以它们的 接收顺序处理来自于仲裁器ARB的宏命令。这样访问接口SIF就能够 访问公共存储器SDRAM,访问是由当前正被处理的宏命令定义的。
宏命令使得访问X组地址成为可能,每个组都包括Y个地址,各 地址组由Z个字所分隔,X,Y和Z都是整数。因此宏命令包括下列信 息:
-将被访问的第一地址;
-在一组地址中从第一地址开始将要访问的地址的数目(Y-1);
-在两个连续的地址组中将被跳过的地址的数目(Z);
-除了第一组之外将要访问的地址组的数目(X-1);
-访问的类型:读或者写。
一个比特级的宏命令的例子如下。假设存储在公共存储器SDRAM 中的数据是32比特的宽度并且公共存储器SDRAM具有256M比特的最 大尺寸。这意味着地址以23位比特表示。也可以假设,访问被限制在 16个地址的最大尺寸。从延迟的观点来看,这样的限制是可以的。因 此X-1和Y-1等于15,为最大值,它们能够被编码成4个比特。最后 根据公共存储器SDRAM的结构,一行最多包含512个地址。这样,能 够被跳过的地址的数目不能够超过511,因此其可以用9个比特来编 码。这样宏命令就具有23+2*4+9+1=41个比特。地址可以被编码在比 特40-18,访问类型在比特17,将要读的字的数目(Y-1)在比特16- 13,跳过的字的数目(Z)在比特12到14,以及字组的数目(X-1) 在比特3-0。
用于读和写的缓冲设备以及存储器接口的缓冲设备的存储器接口 的访问接口的例子是已知的并且在先前引用的专利文献中有所记载。
附图5表明了由特定的单元B以读状态访问公共存储器SDRAM的 处理过程。
水平方向表示时间。该图的垂直方向表示涉及的各个功能 元件。该图包括箭头。这些箭头表示用于访问接口存储器SDRAM的过 程的各个步骤S。
S1=有关单元B的处理器P向通用寻址电路AGA提交逻辑请求 LQR。该逻辑请求LQR指令数据的子集,例如在一组将被处理的数据, 例如一幅图像中的一行的
亮度像素。
S2=通用寻址电路AGA将逻辑请求LQR转换成物理请求PQR。
S3=通用寻址电路AGA向宏命令寻址电路AGB提交物理请求PQR。
S4=宏命令寻址电路AGB将物理请求PQR转换成宏命令。
S5=宏命令寻址电路AGB将从物理请求PQR中导出的第一个宏命令 提交给缓冲存储器BUF。
S6=缓冲设备BUF检查是否具有空间用于存储宏命令所指令的数据 的数目。
S7=缓冲设备BUF向宏命令寻址电路AGB确定具有空间(“确认”)。
S8=表示特定数量的延迟。
S9=宏命令地址电路AGB向仲裁器ARB提交宏命令。
S10=仲裁器ARB按照适用于任何由任何单元对公共存储器SDRAM 的任何访问的仲裁方案来处理请求存储公共存储器SDRAM的宏命令。 本发明涉及仲裁
框图的结构。
S11=仲裁器ARB将宏命令提交给访问接口SIF。
S11a=仲裁器ARB向缓冲设备BUF发送表示已经将宏命令提交给存 储接口SIF的应答(“确认”)。
S12=宏命令在存储接口SIF中排队,存储接口SIF先处理一前接 收到的宏命令。
S13=存储接口SIF根据宏命令为公共存储器SDRAM产生控制信 号。这些
控制信号造成了由宏命令指定的地址的数据被连续的读出。
S14=从公共存储器SDRAM连续读出的数据被传送到缓冲设备BUF。
S15=数据被暂时存储在缓冲设备BUF中。
S16=缓冲设备BUF以基本稳定的方式将数据传送到处理器。
对于步骤S1中提出的逻辑请求之后的每个宏命令,重复步骤S5- S15。
下面的步骤在图5中没有表示。在步骤S1之后,通用寻址电路AGA 向处理器P发送一个确认信号(“确认”)S。该信号表明逻辑请求LQR 已经被接收并且将被处理。响应于该确认信号,处理器P做出了一个 新的逻辑请求并且保持它,直到一个新的顺序开始。当宏命令地址电 路AGB应逻辑请求LQR提交最后一个宏命令的时候,逻辑请求LRQ的 处理就完成了。在这种情况下,宏命令寻址电路AGB向通用寻址电路 AGA发送一个确认信号(“确认”)向后者表明对逻辑请求LRQ的处 理已经完成。据此,通用寻址电路AGA将以与步骤1中的逻辑请求LRQ 的处理相似的方式开始处理信号的逻辑请求LRQ。换句话说,重复自 身的过程。在写状态,除了步骤S13与S14之外,访问处理的过程是 相似的,其中数据被写入而不是被读出,此外,宏命令是写状态类型 的访问,而不是读状态类型的访问。
在介绍段落中描述的功能系统中,能够分辨访问公共源的几种不 同类型的功能部件。
主要存在两种功能部件。第一,当它们读或者存储数据的时候对 延迟(两个访问之间的等待)敏感的部件;这些部件当它们没有访问 的时候停止(这是具有CPU的情况)。这些部件能够通常在读状态获 得访问,并且通过专用读总线BBR和专用写总线BBW连接到存储器接 口。第二,能够预先知道哪些数据是必需的并且这些数据位于什么位 置的功能部件,这些功能部件能够由包含用于使这些功能部件对延迟 不敏感的
缓冲器的单元来执行。在这些对延迟不敏感并且符合特定的 带宽获得对公共源的访问的后面的功能部件中,存在两种功能部件。 首先,临界功能部件,它通常在写状态或者在读状态获得访问,并且 通常由一个单一的专用总线,或者在读状态BBR或者在写状态BBW下 连接到公共源,其不能长时间的等待数据。这是在具有例如显示功能 部件的情况下,其在存储器中读取像素并且将它们提交给功能系统的 输出端。如果数据没有按时的被访问,像素就不能被显示,系统就出 现了一个重要错误。接下来,非临界功能部件,通常其从写状态存储 器到读状态存储器利用两者之间的数据处理来操作。通常,这些功能 部件通过一个专用读总线BBR和一个专用写总线BBW被连接到存储器 接口INT。这些功能部件涉及例如解码器,其中解码器能够每40ms解 码一幅图像。这样的功能部件的结构在附图3中以点划线表示。实际 上,非临界处理器利用了一种内部传送管道IPL,数据在其中被处理。 这些处理当它们的管道永久的充满并且不包含任何其中没有数据的“泡 沫”的时候能够有效的获得。
容易理解,这些不同类型的单元需要不同的频率和规则来访问公 共源。已经存在用于仲裁对延迟敏感的单元以及临界单元的访问的访 问方案。这样的访问方案例如在公开号为EP1081603A1的欧洲专利申 请中已经提到。在后面的申请中提到的访问方案能够容易的与本发明 相结合,在那个申请中的方案用于具有较高的优先权的功能部件,在 本发明中的方案用于具有稍低优先权的功能部件。本发明适于所有优 先权类型的访问方案。这样的访问方案将对延迟敏感的功能部件以及 临界功能部件以优先权的顺序被放置在最高的优先权级别上。可能的, 如前所述,优先权功能部件的访问是根据专利申请EP1081603-A1中的 方案进行调整的。然后是非临界功能部件,位于最低的优先权上。本 发明的目的是调整存储器的使用从而避免在没有功能部件访问公共源 的过程中出现锁定或者“
泡沫”,因此避免在此过程中对公共源的访 问可能性被最坏的使用。这种情况尤其在具有最低优先权的功能部件 中容易遇到,因为没有一个具有较低优先权的功能部件能够利用空闲 存储器的访问。这样,本发明尤其涉及非临界单元的功能被优化设置 的情况。
例如,对于一个具有三个非临界处理器B1,B2,B3的简单的优先 权访问方案,这三个非临界处理分享三个最低级的优先权级别,那么 将会发生下面的情况:
B1首先结束了自己的工作,然后是B2,最后B3能够利用存储器 访问,但是B3不能单独的使用所有提供给它的存储器。为了避免这种 情况,B3必须能够使用整个的剩余带宽,或者三个处理器必须或多或 少的平行工作,这样就能够在同时完成它们的工作从而能够最大程度 的在时间上分配它们的访问。在这种情况下,三个处理器B1,B2,B3必 须能够利用整个的剩余带宽。这是因为由于限制条件的减少,一个组 合的非临界功能部件能够利用剩余带宽的系统比只有B3能够利用剩余 带宽的系统要便宜。这就是本发明要通过使写状态和读状态处理器具 有不同的行为而要解决的情况的类型。
本发明使用了一个仲裁器ARB来管理上述描述的不同的处理器P 对SDRAM的访问。仲裁器从所有的处理器P中选择访问请求并从中选 择其中的一个。所选的请求使作出该请求的处理器向SDRAM写入或者 从中读出32比特的16字。当对SDRAM的访问以后,仲裁器选择另一 个请求,等。
附图6和7表明了根据本发明用于管理不同的处理器对公共源的 访问的仲裁器的两个实施例。根据本发明,功能系统包括一个用于实 现访问方案的接口,该访问方案包括至少一个按照优先权顺序对仲裁 器所定义的状态,根据这种状态,功能部件能够访问公共源,该状态 的特征在于,对于由至少两个功能部件构成的至少一组功能部件,在 读状态的访问可能性与在写状态的访问可能性具有不同的优先权级 别,在读状态的访问可能性比在写状态的访问可能性具有连续的较高 的优先权级别。
本发明保证了功能部件在写状态和读状态具有不同的行为。这使 得通过特别使用数据处理的持续时间来调整功能部件的操作以及分配 访问成为可能。数据处理的持续时间是在写状态下的访问与读状态下 的访问之间的持续时间,在这一过程中,读取了数据的功能部件对其 进行处理。根据本发明,在读状态的优先级高于写状态,每个功能部 件为了向公共源写入处理数据,在输出处理数据之前,接收将被处理 的数据。这样本发明就能够尽可能的使将被处理的数据持续平行的进 行,并能够使它们更为的平稳的使用它们的访问,这是由于处理数据 的输出被限制,并且在写状态调整对公共源的访问。本发明对于控制 非临界功能部件对公共源的访问尤为有效。
图6表示本发明的第一实施例,使用了一个包括了具有1到M+5 的M+5个输入端的固定优先权选择器FPS的仲裁器,M大于等于2。处 理器P1-PN-1对SDRAM的访问请求根据传统的优先权顺序,也可以根 据在先前引用的专利文献中涉及的最优化管理方法来执行。在两个处 理器P之间的-符号表示参考符号被包含在这两个处理器的参考符号之 间的所有处理器。这些处理器P1-PN-1最好是延迟敏感处理器或者临 界处理器。仲裁阶段是通过同时测试在每个优先权级别上的请求,并 且选择其中具有最高优先权级别的请求来进行的。这样,作为优先权, 仲裁器从所有的处理器中选择了一个处理器P1-PN-1。如果这些处理 器中没有一个做出请求,就是说没有向仲裁器提交任何宏命令,那么 就移交给非临界处理器;根据本发明,这里有三个非临界处理器, PN,PN+1,PN+2,在读状态向具有访问类型的宏命令提交优先权。这三 个处理器构成了至少有两个功能部件的一组。接下来,移交给在写状 态做出请求的非临界处理器。在图6中通过在非临界处理器PN, PN+1,PN+2的后面加上字母R和W表示。组合PN-R,PN-W定义了两个 功能部件的子集。这样将清楚地看到,在写状态和读状态的访问可能 性具有不同的优先权级别。三个处理器PN,PN+1,PN+2在写状态的优先 权级别被插入到在这三个处理器的读状态的优先权级别之后的传统的 优先级别顺序当中。这是本发明的本质特征。由于读状态的宏命令仅 能够在管道中具有空间的时候由处理器产生,因此本发明不会在所述 的处理中造成锁定。接下来所选的请求被传送到SIF。这里应当能够 理解在图2中所描述的对存储器进行访问的方案是如何变化的。首先, 处理器将逐一的在读状态进行访问,然后逐一的在写状态进行访问。 但是本实施例仍然会造锁定塞并且不可能避免存储器访问被使用不当 的所有情况。这是因为在后面的实施例中使用的优先权的严格的顺序 可能会导致锁定从而阻碍第三处理器在写状态的访问。这样,这个实 施例就不能使由至少两个功能部件构成的一组处理器同时完成它们的 工作。
在附图7中示出了一个优选实施例,在该实施例中使用了一个包 括具有从1到M+3的M+3个固定优先权选择器FPS的仲裁器,M大于 等于2,以及一个处理选择器MPS。处理器P1-PN-1对SDRAM的访问请 求根据传统的优先权顺序,也可以根据在先前引用的专利文献中涉及 的最优化管理方法来执行。这些处理器P1-PN-1最好是延迟敏感处理 器或者临界处理器。仲裁阶段是通过同时测试在每个优先权级别上的 请求,并且选择其中具有最高优先权级别的请求来进行的。这是由于 请求被同时提交给固定优先权选择器FPS的输入端(当它们存在的时 候)。这样,作为优先权,仲裁器从所有的处理器中选择了一个处理 器P1-PN-1。如果这些处理器中没有一个做出请求,就是说没有向仲 裁器提交任何宏命令,那么就移交给非临界处理器;根据本发明,这 里有三个非临界处理器,PN,PN+1,PN+2,定义了至少由两个功能部件 构成的一个组,在读状态向具有访问类型的宏命令提交优先权。接下 来,移交给在写状态做出请求的非临界处理器。在图7中通过在非临 界处理器PN,PN+1,PN+2的后面加上字母R和W表示。组合PN-R,PN- W定义了两个功能部件的子集。在图7所示的实施例中,只有一个优 先权级别M+3被分配给了写状态的三个非临界处理器。换句话说,功 能部件PN-W的子集彼此共享同一个优先权级别M+3。这一优先权级别 被提供给在处理选择器MPS中所选择的处理器,其中MPS接收处理器 PN-PN+2在写状态对SDRAM的访问请求。它从这些处理器中选择了一 个处理器P。这种选择是根据在下文中将要详细描述的方案而进行的。 如果所选的处理器P已经在写状态做出了请求,该请求将被传送到固 定优先权选择器FPS的输入端M+3。否则,则没有请求向仲裁器传送 到输入端。因此,如果没有任何具有较高优先权级别的处理器做出请 求,三个非临界处理器在读状态没有做出任何请求并且处理选择器MPS 所选择的处理器P做出了请求,那么该请求就被选择。如果没有这样 的请求,访问可能性就不被使用。在仲裁器为优先权级别M+3提供访 问可能性的所有情况中,无论是否访问,在处理选择器MPS中的处理 选择都会改变,以便从子集PN_W-PN+2_W中选择另外的一个处理器。 这里有几个状态(I)被浏览,状态(I)是由向仲裁器所提供的优先权顺 序所定义的,其中至少一个优先权级别构成了一个属于一个功能部件 的子集中的一个功能部件的访问可能性,这里在几个状态(I)中, PN_W-PN+2_W共享同一优先权级别,M+3。这是由于每个仲裁器都可以 向相应的优先权顺序附加一个状态I,这里包括P1到PN-1,PN_R到 PN+2_R以及在PN_W到PN+2_W中处理器的选择。在浏览几个状态(I) 的过程中,每一个处理器PN_W到PN+2_W被依次选择,状态(I)的数 字被浏览,从而使得在写状态下处理器的整个“旅行”依赖于提供给 优先权级别M+3的访问频率。这是由于提供给级别M+3的频率决定了 在选择器MPS中选择改变的频率。这种共享的优先权级别已经被证明 对于在读状态集合处理器的访问可能性具有较小的优势。
这一优选实施例能够在少于先前的实施例的优先权级别上执行仲 裁,因此更为快速和简便。此外,本实施例使功能部件能够在写状态 平行操作而不造成任何锁定,从而优化了对公共源的访问的使用。这 是由于,根据后面的优选实施例,非临界功能部件同时完成它们的工 作。
下面将参照附图8a和8b详细描述处理选择器的操作。
在优选实施例中,同一优先权级别M+3构成了在共享写状态下的 访问可能性,这是通过在功能部件PN_W到PN+2_W的子集中在写状态 下的访问可能性之间,对几个状态I,进行浏览而实现的。附图8a表 明了处理选择器MPS的操作可能性。对于状态I在优先权级别M+3被 询问的地方,在每一仲裁中都考虑一个寄存器REG,询问是在处理选 择器MPS中进行的,而且包括处理器PN-PN+2的至少由两个功能部件 构成的一组功能具有相同的优先权级别M+3。每个寄存器的值都与一 个功能部件相应,这里是PN_W,PN+1_W或PN+2_W。寄存器能够以一, 二,三或者更多的比特实现,根据期望平行看到功能部件的方法的数 目和/或期望看到给定的处理器出现在寄存器的值的整个“旅行”中的 数目。这样附图8a以圆的形式描述了5个寄存器的值1-5。根据本发 明,在写状态只有一个非临界处理器在每个状态进行考虑,在写状态 能够具有同一非临界处理器的几个连续的状态将在仲裁器中被考虑。 这是因为寄存器并不是在每一个变化状态下增加而是仅在涉及的优先 权级别具有访问可能性的时候增加。这些值周期性的逐个被浏览。每 一个值表示做选择的一个处理器。在写状态在每个处理器之间的访问 的相对分配使能够通过寄存器的结构来控制的。这是因为,通过假设 三个处理器PN_W,PN+1_W,PN+2_W彼此共享同一优先权级别M+3,它们 的写总线的带宽分别是40Mbyte/s,20Mbyte/s和40Mbyte/s,那么 通常将2/5的带宽分配给处理器PN_W和PN+2_W,1/5分配给PN+1_W。 这种分配如图8A所示,PN_W为2,PN+2_W为2,以及PN+1_W为1。 这种分配的其它的优点在于,当其中的一个处理器不需要访问的时候 (例如PN+1),非临界处理器的可用的带宽将自然的在PN_W和PN+2_W 之间平均分配。如果PN不需要访问,带宽将三分之一分配给PN+1,三 分之二分配给PN+2。这是基于即使在MPS中选择的处理器不进行访问, 寄存器的值也会增加的事实。因此这里寄存器最后使用3比特。在附 图8a中通过圆周来浏览所需的状态(I)的数目依赖于在写状态下非 临界功能部件的访问频率,就是说,在该实施例中优先权级别M+3被 询问的频率。
附图8b更为精确的显示了在选择器MPS中是如何进行选择的,以 及在附图8a中从一个状态到另一个状态的运动是如何进行的。在该图 中,认为处理器P1到PN-1的访问是以简单的优先权顺序进行管理的, 其中选择了最高级别的优先权。步骤SA1是从状态I跳到状态I+1之 后进行的第一个步骤。这样在第一步骤SA1中,在当前状态I下,对 于仲裁器而言,固定的优先权选择器FPS选择了优先权级别PRIOR(I)。 如果优先权级别1到M+3之间存在至少一个请求,就选择与最小数字 相应的优先权级别,否则级别M+3就是一个错误的选择。在步骤SA2, 优先权级别与M+3相比较。如果优先权级别不是M+3,在步骤SA5中, 对存储器的访问就被提供给宏命令MC,然后在步骤SA6中就进入下一 个状态I+1进行一个新的仲裁,其重复图8b所述的过程。如果优先权 级别等于M+3,在步骤SA3中就查询当前状态I下寄存器REG(I)的值, 并且察看与存储器的值相应的处理器是否提交了宏命令MC。如果处理 器已经提交了一个宏命令MC,在步骤SA5中访问就被提供给与优先权 级别PRIOR(I)相应的宏命令MC并且在步骤SA4中,寄存器增加为J+1 以5为模,这样在下一状态,访问就被提供给另一个处理器,并且在 步骤SA6,系统进行下一个状态I+1。
利用在优选实施例中提出的仲裁器,能够最大限度的使用公共源, 如果所有的处理器(延迟敏感,临界,非临界)利用的带宽小于可用 的带宽,并且所有的非临界处理器的峰值带宽(瞬时带宽)大于可用 的带宽。
在优选实施例中,本发明的优点在于:不会浪费访问可能性,非 临界处理器通常预备利用空闲的访问可能性,所有的非临界处理器能 够同时完成它们的工作,并且非临界功能部件的管道是充满的。
附图9示出了如在本发明的“发明概述”部分中所描述的本发明 的基本特征结构。一个功能系统包括一组将要访问公共源(RSRC)的 功能部件F,F’,。该系统包括至少一个由仲裁器的优先权顺序定义的 状态(I),根据该状态功能部件(F,F’)能够访问公共源(RSRC)。状态 (I)的特征在于,对于至少有两个功能部件构成的至少一组功能部件, 在读状态F_R的访问能与在写状态F_W的访问可能性具有不同的优先 权级别,在写状态的访问可能性比在写状态的访问可能性具有连续的 较高的优先权级别。
上面参照图1到图8所描述的数据处理设备是图9所示的基本特 征结构的实现的一个例子。图9中所示的公共源RSRC在图1中以公共 存储器的形式表示。图9中所示的功能部件F,F’在图1中以单元B的 形式表示。图1中所示的存储器接口INT执行图8a和8b所示的访问 方法。这种访问方案的特征在于图8a中所示的浏览寄存器的值的多个 可变的状态。使用宏命令的访问可能性的限度是16个存储器地址。每 个状态通过被执行的仲裁来定义优先权的顺序,根据这种仲裁,单元 B能够访问公共存储器SDRAM。优先权的顺序可以在所有的状态(I) 中是相同的,如图6所示,或者如图7所示,能够根据访问可能性被 提供给最低的优先权级别的情况进行
修改。
本发明能够被应用于包含有一个MPEG解码器的集成电路和其它用 于处理和显示图像的电路中。在这样的一个集成电路中进行了多个处 理,一个处理等效于一个功能部件。存在多个处理器P将去访问SDRAM 类型的公共存储器,下文中将SDRAM类型的公共存储器成为SDRAM:
P1:DISP(显示)
P2:OCD(屏上显示)
P3:BCKGND(背景)
P4:CCIR656
P5:VMIX(视频混合器)
P6:AUDIOFIFO(音频FIFO读和写)
P7:AUDIOBUF(音频缓冲器读和写)
P8:VFW(视频FIFO写)
P9:VFR(视频FIFO读)
P10:MC(
运动补偿)
P11:DMU
P12:INTERP
处理过程P1(DISP)涉及被解码的图像的显示。处理过程P2(OSD) 涉及在显示的解码的图像上
叠加的图像数据的显示。处理过程 P3(BCKGND)涉及作为屏幕背景或透过解码和处理过的图像显示的固定 图像。处理过程P4(CCIR656)涉及能够接收已经解码的图像并将其 存储在存储器中的集成电路的一个输入端。这些图像能够通过处理过 程P1(DISP)取代来自于MPEG解码器的图像来显示。处理过程P5(VMIX) 涉及来自于处理过程P1(DISP),P2(OSD)和P3(BCKGND)的三个数据流的 混合。处理过程P8(VFW),P9(VFR)和P6(AUDIOFIFO)涉及通过解扰/解 复用设备对从MPEG数据流中
抽取编码的视频和音频数据进行读和写。 处理过程P7(AUDIOFIFO)涉及音频处理器的中间产生数据的读和写。 处理过程P(10)涉及构成在MPEG视频解码器中的一个步骤的运动补 偿。处理过程P11(DMU)涉及一种
加速设备,其对SDRAM中的数据进 行比较复杂的操作,诸如移动一个或者多个数据块或者滤波操作。处 理过程P12(INTERP)涉及MPEG解码器的最后一个部分,其提供将要被 写入到SDRAM中的解码图像,以便显示它们或者将它们作为参考图像, 或者既显示它们又作为参考图像。处理过程P8到P12不是临界的,因 此它们对公共源的访问能够根据本发明来管理。如果前面的处理过程 P1到P7是按照访问方案中的传统的优先前权顺序的话,那么M=8,处 理过程P8到P12在写状态的访问的优先权级别是8-12,然后处理过 程P8到P12在写状态下的访问被如图8a所示以一个圆的形式组成小 组,其优先权级别为13。
上面参照附图的描述是为了解释本发明,并不对其进行限制。很 清楚在随后附加的权利要求的范围内存在着多种变换。根据这一点, 提出了一些解释。
本发明可以应用于任何功能系统。附图1只是示出了根据本发明 应用于一个数据处理设备中的一个实施例。其也可以应用于例如一个 包括一个中央
服务器和多个终端的通信系统当中。本发明能够被用来 以有效的方式来管理终端对中央服务器的访问。
实现功能部件存在许多方法,可以利用物理器件(
硬件项)或者
软件或者二者的结合来实现。在这点上,附图只是高度的示意,每个 附图仅表示一个实施例。因此,尽管附图以分离单元的形式表明了各 个功能部件,这并不排除以一个单个的物理器件或者软件项来实现若 干个功能部件。无法排除一个功能部件能够通过一组物理器件或者软 件项来实现的事实。
例如在图4中所示的存储器接口包括多个单元,其组合起来控制 对公共源的访问,以及控制包含在存储器接口中的存储器。原则上通 过合适编程的计算机电路是能够实现这些单元的。一套包含在一个可 编程存储器中的指令能够令计算机电路执行上面参照附图1-8描述的 各种操作。这套指令能够通过对诸如包含该套指令的盘这样的数据载 体进行读取而被下载到可编程存储器中。读取可以通过诸如互联网的 通信网络来执行。在这种情况下,服务提供商将感兴趣的人得到这套 指令。
权利要求的括号中的参考符号不应当被限制性的解释。动词“包 括”不排除列举在权利要求中的其它的元件或者步骤的出现。元件或 者步骤前面的不定冠词也不排除多个这样的元件或者步骤的出现。