处理存储器数据的系统和方法及包括该系统的通讯系统的制作方法

文档序号:6409762阅读:153来源:国知局
专利名称:处理存储器数据的系统和方法及包括该系统的通讯系统的制作方法
技术领域
本发明涉及一种分别用来处理存储器数据的系统和方法。本发明还涉及包括这种用于处理存储器数据的系统的通讯系统。
在数据处理系统中,存储数据变量的存储器通讯经常消耗大量的计算能力,该能力在数据通讯单元中用于变量储存单元和数据处理单元之间的通讯。
通常,一些变量共享字存储区。变量共享字存储区从存储堆栈的观点看是高效的。作为许多共享方式之一,这种共享可导致存储器访问次数的下降。然而,尽管如此,可用资源有时并没有被高效地使用。
例如,在需要大量存储器的实时处理数据的大系统中,具有一种存储组织结构以便能够提供高效的存储和通讯能力是十分重要。
现有技术陈述人们提出了许多不同的方法来解决如何提出许多不同的方法怎样以高效的方式使用计算资源,该资源用于存储和在变量储存单元和处理数据的那个或那些单元之间的通讯。一个问题是从内部观点上看,与数据处理单元相比较,存储器的速度相对较低。利用已知的对该类问题的解决方法,可以实现存储器访问的高效使用。
在US-A-4 354 231中,缓存技术得到使用。缓存技术的基础是把经常访问的存储器数据储存在快速存储器中,即所谓的缓存存储器,它由各种不同的算法控制。因此指向低速存储器的存储操作经常由具有相当短的访问时间的缓存存储器执行。根据US-A-4 354 231,为了缩短等待时间,地址合成在执行相关程序指令之前的恰当时间被初始化。根据用于缩短指令执行时间的上述美国专利文件的装置包括缓冲存储器,其中从程序存储器读取的指令顺序地暂存在执行缓冲器中。执行缓冲器具有各种类型的指令,第一类指令涉及数据存储器的写或读,第二类指令把地址参数放置在寄存储器中。第一和第二级触发的含义是它们用来对从寄存器存储器到地址处理装置的地址参数进行初始化-传输,该地址处理装置用于修正地址,当信号出现在寄存装置中时,指令被顺序地执行,指令是上述的第一类指令,或者是用于在传输生效之后,从寄存装置中除去信号,同时第二级触发的含义是它们与地址处理装置相连,并分别对从基准存储器读出到地址处理装置的基地址产生响应,该地址处理装置用于绝对地址合成的初始化,当上面存储的指令都不是第二类指令时,即把地址参数放置在寄存器存储器等当中的那一类指令。这样通过有效地使用时间,可以节约一定的时间。然而除了节约时间之外,这一作用甚至可能很小,系统的存储数据以这种方式定址,缓存技术的应用并没有真正地给出预期的结果,并在实际中可能降低效率。
此外,缓存技术对于随机出现的数据访问效率不高。
EP-A-0 439 025公开了一种具有延迟缓存装入的数据处理机,它包括一个指令预取单元,一个存储器,一个处理器总线和一个功能单元,其中后者变换逻辑地址并在缓存存储器中储存前一存储器访问和输入存储器请求。此外,还进行地址比较,如果存在一致性,前一请求的存储器数据被重复使用。
然而,根据EP-A-0 439 025的系统预先假定有时并不方便的预缓冲或预取。此外,其先决条件是数据的到达是有规律的,即数据不是离散的。此外,还需要一个中间缓存器。结果,系统很复杂,不适用于随机发生的数据等。这些都是严重的缺陷。
其它已知的方法是基于交叉存取结构,通过该类方法,可以获得高效率的访问并提供高性能。存储器是以存储器组的形式构成的,实际上该存储器起到快速存储器的作用。在连续存储器访问指向不同的存储器组的条件下,交叉存取技术在一定的条件下可以提供相对较好的结果。
然而,在许多情况下,希望进一步降低存储器的访问次数。此外,只有在连续存储器访问指向不同的存储器组的条件下,交叉存取技术才是高效的。对于只对一个和相同存储器字寻址的连续存储器访问,用已知的技术不能提高效率。
发明简述本发明的目的是提供了分别用来处理存储器数据的一种系统和一种方法,其中能够以尽可能高的效率使用数据处理能力。本发明所特有的目的是提供具有这样存储器结构的系统,该系统可以在存储单元和数据处理单元之间实现高效率的存储及高效的通讯。本发明所特有的目的是提供一种系统和方法,其中能够以尽可能高的效率使用存储器访问。此外本发明的目的是分别提供一种系统和一种方法,其中存储器访问的次数可以被降低。此外,本发明所特有的目的是提供一种系统和一种方法,它们通过处理索引变量和/或者局部变量和子-数据变量来降低访问的次数。
本发明所特有的目的是分别提供一种系统和一种方法,通过它们可以大幅度的提高能力,特别是不依赖于所使用的存储器结构。更加独特的是,本发明的目的是提供使用交叉存取技术的系统和特有的数据(预)缓冲技术,从能力的观点讲这种方法是高效率的。
本发明的进一步目的是提供一种系统,其中变化格式尺寸的索引寻址的变量和存储器访问次数相对于实际的存储器访问次数减少。
此外,本发明所特有的目的是分别提供具有多个并行请求源的一种系统和一种方法,在其中提供了存储器访问的高效使用。
本发明的进一步目的是提供一个通讯系统,它包括一个参照上面的处理存储器数据的系统,该系统高效率地使用能力资源并以最佳方式使用存储器访问。
一个特有的目的是提供一种系统(和一种方法),当变量分散在存储器中,并且数据可能是随机到达的时候,可以使用该系统。更加独特的是在普通的缓存技术由于不规则性而不能使用的条件下,提供这样一种系统。
进一步讲本发明所特有的目的是提供一种系统,当变量不规则地返回及变量分布在一个基本上不受限制的地址区域时,该系统可以被使用并且是高效率的。
这些及其它目的可以分别通过一种系统和一种方法实现,其中直接或间接的连续请求指向变量的相同物理字地址,存储器只有在对实际字地址的第一次存储器访问时被激活,因此,存储器数据或其读数据被多次使用.这样,通过具有与一个前面的-特别是前一个的-访问相同的字地址的存储器访问,使用存储器数据,特别是使用前面访问中的读出数据可以实现这些目的。这样节省了存储器访问。根据优选实施方案,变量是索引变量,局部变量或子-变量。
根据独特的优选实施方案,存储器系统采用交叉存取技术和特有的优选数据(预)缓存或预取。特有的缓冲的含义是地址合成和从存储器中读取变量的存储器请求提前发生,并且数据在按照程序步骤被请求之前,被传送至数据处理单元,这极大地增加了能力资源,特别是数据不需要任何中间缓存而被直接送至操作寄存器。
根据本发明的优选实施方案,在读出存储器字时,每一个变量是独立的,当与逻辑地址有关的物理存储器地址用已知的形式表示为变量时,在每次请求时,可以获得地址信息部分。
根据本发明所特有的实施方案,本发明用于减少存储器中指向相同字地址的连续读取访问。
更加独特的是根据优选实施方案,对具有相同物理字地址的变量的连续写访问被减少。
根据优选实施方案,对于具有相同物理字地址的变量的连续写请求,第一次访问的读数据的处理方法基本上与相应于读取写操作的存储器访问的传统读访问相同,然而,包括在存储器中写入的写操作的第二次存储访问是这样的,连续写请求接收前一次访问的写数据作为自己的读数据.根据一个实施方案,用于写的存储器激活为每一个变量执行。根据另一个实施方案,当全部变量字被处理时用于写的存储激活执行。
根据优选实施方案,不同格式的索引寻址变量用在数据处理系统中。在一个特别的实施方案中,存在多个并行请求源。系统因而能被并行地用于多个并行处理单元。这将间接地导致能力的增加,因为当公共存储器被请求时,各种并行请求源或数据处理单元遇到极少的访问障碍。
除了在优选实施方案中提及的其它优点之外,本发明的一个优点是不必升级多种装置。
附图简述参照附图,发明在下面以非限定的方式被进一步描述。


图1表示一个根据本发明的系统的例子。
发明详述图1示例了数据处理系统10,该系统至少包括一个数据处理单元IPU 20。在所示实施方案中,仅有一个数据处理单元,但是可能有两个或多个单元。数据处理单元IPU包括内部处理寄存器和进行数据处理的算术和逻辑单元ALU。数据处理单元IPU还包括一个程序存储器管理器PSH,一个程序存储器PS,和一个寄存存储器RM.数据处理系统10包括公共数据存储器DS。根据优选实施方案,在数据处理单元IPU和存储器DS间的不同步协作由一个同步位控制。储存变量的公共数据存储器DS,根据优选实施方案,通过使用所谓的交叉存取技术以存储器组形式构成。中央控制总线和访问管理器(中央处理器总线)CPB传送存储器请求。中央处理器总线CPB控制并保持关于哪个数据存储器DS的存储器组空闲和被占用的信息。进一步讲,中央处理器总线在激活各种存储器操作时,知道指令序列。数据处理系统还包括自动处理变量的功能单元30。在功能单元30中,参照表和地址合成电路用于将逻辑地址转换为物理地址。功能单元30还包括逻辑电路,缓冲寄存器等.一个缓冲寄存器1用于存储物理存储器地址,该地址是在参考表和地址合成电路的辅助下被合成。对于与存储器字地址B1、B2、B3有关的每一次请求的变量信息,存储了变量地址A1、A2、A3以及寄存器字中的格式。根据S、L、L,其中S指示写和L指示读,还存储了请求变量的操作类型信息,即标准的读或写类型。此外,一个状态位被存储在缓冲器1中。根据优选实施方案,缓冲寄存器1包括一个所谓的FIFO-存储器(先进-先出)。然后,最后一次的合成地址被存储在标为A4的中间缓冲器2中。通过包括一个比较电路JMF的比较装置,新的,即在中间缓存器中最后一次的合成地址A4与缓冲寄存器1中前一地址A3进行比较。如果地址相同(A3=A4),可能是0或1的标记位被设置。
系统10还优选地包括一个仍然可以是FIFO-型的第二缓冲寄存器3。它用作读出变量的寄存器,并为数据处理单元IPU起到操作寄存器的功能。对于扩展的并行操作,系统可以优选地包括一个第二中间寄存器3A,该寄存器用来在读存储器字中准备例如与变量的移位和屏蔽有关的变量。
还配置一个第三缓冲寄存器4,它也可以是FIFO-型寄存器,用于存储将要存储在数据存储器DS中的变量。根据特定实施方案,还可以配置另一个第三中间寄存器4A,在其它方案中,它可以用来进一步提高特定操作的效率等。
根据优选实施方案,系统的操作如下。在数据处理单元IPU中,程序存储管理器PSH优选地在(预)缓存之前,通过给出其逻辑地址而激活每个程序步骤的变量请求。这是通过偏移量a、独立的数字、索引和操作类型,特别是读或写(L或S)给出的。然后通过控制逻辑电路来激活地址合成操作。这样通过使用包含转换所需信息的参考表,把变量的逻辑地址转换为相应的物理地址。在用这种方式合成的变量被放置在缓冲寄存器1中用于处理之前,存储器字地址部分与缓冲寄存器1中的前一变量的存储器地址进行比较。这种比较是在包括比较电路的比较装置JMF中进行的。如果最新合成变量地址A4等于缓冲寄存器中的前一变量地址A3,指示出新数据变量与前变量为同一存储字的标志位被设置.当处理一个经中央处理器总线指向存储器的缓存请求时,特征位把请求重新定向。这导致一个存储器访问或,如果两个连续存储地址相同,这导致重复使用前一存储器访问的读数据。当重复使用前一存储器访问的读数据时,读数据已经存储在数据处理单元IPU的输入数据缓冲器中.如果在功能单元30中存在一个中间寄存器3A,则数据从该中间寄存器被传送到向数据处理单元IPU的输入数据缓冲器3。
下面简要地讨论与连续写请求有关的例子。
一个写操作包括两次存储器访问,一次是读出,另一次是写入。在对具有相同物理字地址的数据变量进行连续写请求的情况下,读的含义是第一次请求的读数据被按照与读请求相应的方式进行处理,然而后续的写请求从前一次访问中接收数据,作为自己的读数据.这意味着在IPU的数据缓冲器中,前一变量的写数据传递给数据处理单元IPU的输入数据缓冲器3。如果中间寄存器3A;4A被使用,根据一个实施方案,数据从中间寄存器传送到单元IPU的输入数据缓冲器3进行处理。随后标志位及实际操作类型,即读或写,控制存储器的激活,以及内部数据在缓冲器之间的传输和在缓冲寄存器1内部的传输。变量处理所需的的缓冲寄存器1的部分被传递给数据处理单元IPU的缓冲器。
当然,发明不局限于在此示出的实施方案,如上所述,大量数据处理单元可以并行工作,同时还有许多其他的选择。此外,变量请求不必是直接连续的,而是根据其它方案,可以在其间以预定的方式,有一个或多个变量请求。
权利要求
1.以存储数据变量的形式处理存储器数据的系统(10)包括至少一个数据处理单元(IPU),一个存储数据变量的公共数据存储器(DS),一个中央处理器总线(CPB)和一个自动处理变量的功能单元(30),每个数据变量都具有间接逻辑地址,其特征在于,功能单元包括用于变换变量的逻辑地址或基地址为物理地址或绝对地址的装置,分别用于存储物理存储器地址和顺序地暂存输入存储器请求字地址的第一和第二存储装置(1,2),比较(JMF)请求存储器字的物理字地址和前一存储器字请求的物理字地址的装置,结果,用同一存储器字的直接或间接连续请求,前一请求存储器地址的存储器数据在下一次请求中也被使用。
2.根据权利要求1的系统,其特征在于,数据存储器(DS)包括利用交叉存取技术的存储器组。
3.根据权利要求1或2的系统,其特征在于,存储器系统使用数据(预)缓存。
4.根据权利要求3的系统,其特征在于,通过(预)缓存地址合成,从数据存储器(DS)读出变量的存储器请求被提前执行并传送到数据处理单元(30),即在数据被数据处理单元(20)请求之前。
5.根据权利要求1-4中任一权利要求的系统,其特征在于,用于把变量的逻辑地址或基地址转换为物理地址或绝对地址的装置包括参考表和地址合成电路.
6.根据权利要求5的系统,其特征在于,功能单元(30)的第一存储器装置包含一个包括物理存储器字地址的第一缓冲寄存器(1)。
7.根据权利要求6的系统,其特征在于,在第一缓冲寄存器(1)中,为每个请求变量储存了存储器字地址(B1、B2、B3),变量地址(A1,A2,A3)和在存储器字中的格式。
8.根据权利要求6的系统,其特征在于,在第一缓冲寄存器(1)中,还储存了关于操作类型(S,L)的进一步信息和以标记位形式存在的信息部分。
9.根据权利要求8的系统,其特征在于,第一缓冲寄存器(1)具有FIFO(先进/先出)-寄存器的功能。
10.根据权利要求1-9的系统,其特征在于,第二存储器装置包括一个容纳最后一次存储器请求的物理地址的中间寄存器(2)。
11.根据前面任一权利要求的系统,其特征在于,比较装置(JMF)包括把最后一次请求(A4)的物理地址和前一请求的物理地址进行比较的比较电路,并且,如果物理地址相同,通过设置标记位或类似的方法提供与此有关的信息。
12.根据前面任一权利要求的系统,其特征在于,该系统包括多个可以在系统内并行工作的数据处理单元(IPU)。
13.根据前面任一权利要求的系统,其特征在于,系统10还包括,例如,以第二缓冲寄存器(3)的形式存在的第三存储器装置,用于存储关于读出变量的信息。
14.根据权利要求12和13的系统,其特征在于,功能单元还包括第二中间寄存器(3A),用来为至少两个并行数据处理单元(IPU)准备变量。
15.根据权利要求13和14的系统,其特征在于,第二缓冲寄存器(3)包括一个FIFO-存储器。
16.根据权利要求10-15中任一权利要求的系统,其特征在于,还以第三缓冲寄存器(4)的形式为数据变量提供了第四存储装置,该数据变量被存储在公共数据存储器(DS)中。
17.根据权利要求16的系统,其特征在于,该系统包括数据的第三中间寄存器(4A)。
18.根据前面权利要求的系统,其特征在于,对于与存储器中的相同字地址相关的连续读请求,第一次接收的存储器访问的读数据被使用。
19.根据权利要求17的系统,其特征在于,第一次存储器访问的读数据被多次使用。
20.根据前面权利要求的系统,其特征在于,写请求包括读出存储器访问和写入存储器访问,其中对于数据变量的连续写请求,第一次访问之后的写请求使用第一次访问的写数据作为后续访问的读数据。
21.通过系统(10)处理存储数据的方法,该系统包括至少一个数据处理单元(20)、一个功能单元(30)和一个公共数据存储器(DS),包括下列步骤-由程序存储管理器(PSH)在数据处理单元(IPU)中通过给出其逻辑地址而提前激活变量请求,-把逻辑地址转换为物理地址,-在比较装置(JMF)中,比较最后一次合成变量地址(A4)的存储器地址和前一变量地址(A3),-如果存储器地址相同(A3=A4),它被指示出来,并且前一存储器访问的读数据在该次访问中被使用。
22.包括至少一个用于处理包含变量的存储数据的系统(10)的通讯系统,该系统包括至少一个数据处理单元(IPU)(20),至少一个用于处理数据变量的功能单元(30),至少一个公共数据存储器(DS)和至少一个访问单元,其特征在于,功能单元包括把数据变量的逻辑地址转换为物理地址的装置,用于存储物理存储字地址的第一存储装置(1),用于暂存输入存储请求字地址的第二存储装置(2),用于比较请求存储字地址(A4)和前一存储字地址(A3)的比较装置(JMF),其中如果存储字地址与直接或间接的前一请求存储字地址相同,前一存储访问的存储数据被使用。
全文摘要
本发明涉及一个以存储变量形式处理存储器数据的系统。系统至少包括一个数据执行单元(IPU)、一个公共数据存储器(DS)、一个中央处理器总线和一个自动处理变量的功能单元(30)。每变量具有逻辑地址或基地址,功能单元(30)包括把逻辑地址变换为物理地址的装置。功能单元还包括存储合成物理存储器地址的第一存储器装置(1)和依次暂存前一合成地址的第二存储器装置。在功能单元(30)中,比较装置(JMF)用于比较输入存储请求地址和前一请求存储地址(A4)的物理字地址。当地址相同时(A3=A4),第一请求存储地址的存储器数据被重复使用。
文档编号G06F12/08GK1168729SQ95196650
公开日1997年12月24日 申请日期1995年10月17日 优先权日1994年10月17日
发明者O·艾夫森, K·威尔德林 申请人:艾利森电话股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1