数据处理系统及数据处理方法

文档序号:6574227阅读:281来源:国知局
专利名称:数据处理系统及数据处理方法
技术领域
本发明涉及一种数据处理系统,且特别有关于一种具有多条总线的数据处理系统及数据处理方法。
背景技术
随着技术的发展,磁盘阵列(Disk Array)已广泛应用于计算机系统中,以增加磁盘的存取速度以及防止数据因磁盘的故障而遗失。磁盘阵列是把多个磁盘组成一个数组,当作单一磁盘来进行使用。磁盘阵列中的数据通常是以分段(Striping)的方式储存在不同的磁盘之中。当存取数据时,数组之中的相关磁盘可以一起动作,大幅降低数据的存取时间。
磁盘阵列所利用的不同的技术可以称为独立磁盘多重数组等级(RAID Level),如RAID0至RAID5。在RAID0架构中,由于数据以分段方式储存于不同磁盘之中且磁盘阵列中的每一个磁盘都可以独立动作,因此在不同磁盘上可以同时进行读写,从而提高数据存取的效率。另外,在某些独立磁盘多重数组等级中,如RAID5架构中,除了数据可以利用分段的方式来储存在不同的磁盘之中,还需要对相应数据进行处理以获得相应的同位信息,并储存到磁盘阵列中某一特定的存储区域中。当储存一数据分段的磁盘发生故障时,可以透过其它数据分段与此同位信息来恢复故障磁盘中的数据分段。
在现有的应用RAID5架构的精简指令集运算(RISC)系统中,一般是通过软件来对数据块进行各种运算处理,例如异或运算处理,这无疑增加了RISC系统的中央处理单元的负担,影响整个系统的效能。另一方面,大多数适用于RISC系统的总线,例如先进高性能总线,具有相对较小的带宽而无法以较快的速度传输大量的数据。

发明内容
本发明的目的在于提供一种数据处理系统及数据处理方法,其具有较大的数据传输带宽以及良好的数据处理性能。
本发明所述的数据处理系统,包括至少一写入总线;至少一读取总线;一处理单元,产生一配置数据;一存取控制器;以及一数据加速单元,与该写入总线及该读取总线耦接,用以依据该配置数据驱使该读取总线至一储存装置读取至少一数据块,处理该数据块,并将一处理后的结果借该写入总线传输至该储存装置。
本发明所述的数据处理的方法,适用于一具有若干总线的数据处理系统,包括驱使一第一读取总线与一第二读取总线至一储存装置并行读取多个数据块;处理该多个数据块以得到一处理后的结果;以及将该处理后的结果通过一写入总线写入一储存装置。
本发明的数据处理系统通过读取总线到存储装置读取数据,通过写入总线将数据写入存储装置,从而达到增大数据传输带宽的目的,以适用于数据吞吐量大的系统平台。


图1为依据本发明一实施例的数据处理系统的示意图。
图2为依据本发明一实施例的数据处理方法的流程图。
图3为依据本发明另一实施例的数据处理系统的示意图。
图4为依据本发明另一实施例的数据处理方法的流程图。
具体实施例方式
通过下面结合示例性地示出一例的附图进行的描述,本发明的上述和其它目的和特点将会变得更加清楚。
本发明提供一种数据处理系统,其适用于精简指令集运算(RISC)系统平台,且提供有一数据加速单元,用于读取数据块并对数据块进行相应的处理,从而使得处理单元不需要参与数据块的处理。
在本发明中,数据处理系统包括若干条总线,且透过这些总线对储存装置进行读写操作。其中,数据处理系统对于储存装置的读取与写入操作是相互独立的。换言之,读取操作是透过至少一条读取总线进行的,而写入操作是透过至少一条独立于读取总线的写入总线进行的。
图1所示为依据本发明一实施例的数据处理系统。在此实施例中,数据处理系统包括两条总线,分别用于数据的读取操作与写入操作。
依据本发明一实施例的数据处理系统200包括一第一总线210与一第二总线220、一中央处理单元230、一数据加速单元240、一存取控制器250以及至少一储存装置260,如SDRAM、DDR、DDRII。在本实施例中,第一总线210与第二总线220可以是适用于RISC平台的先进高性能总线,但不限定于此。中央处理单元230决定数据传输所需的配置数据。于本实施例中,配置数据可以为一存储于储存装置260的描述符列表的基址(descriptor baseaddress),透过该描述符基址信息可以获得若干已经存储在储存装置260内的描述符。每一描述符包括,但不限于,至少一数据块在储存装置260中的源地址(source memory block address)、将数据块处理后所得到的结果欲储存至储存装置260中的地址(即目标地址,destination address)、对相应的数据块进行何种处理以及下一描述符的地址。
数据加速单元240包括一从动(Slave)总线接口241、一第一主动(Master)总线接口242、一第二主动总线接口243与一数据处理单元244。其中,从动总线接口241与第一主动总线接口242耦接至第一总线210,第二主动总线接口243耦接至第二总线220。注意的是,在先进高性能总线(AHB)系统中,每一主机可以是主动端或是从动端。先进高性能总线系统的定义与主动端及从动端的操作为本领域普通技术人员所熟知,其相关细节在此省略。从动总线接口241中具有一缓存器245,用来透过第一总线210由中央处理单元230接收并储存配置数据。
数据处理单元244包括一直接内存存取(Direct MemoryAccess,DMA)控制器2441及一处理模块2442。DMA控制器2441通过接收缓存器245发出的配置数据获得描述符基址,从而透过第二主动总线接口243由第二总线220驱使存取控制器250依据描述符基址由储存装置260读取至少一描述符。其后,DMA控制器2441对描述符进行译码以获取将要读取的数据块的地址、对数据进行何种处理以及目标地址,并透过第二主动总线接口243由第二总线220驱使存取控制器250依据数据块的地址由储存装置260读取相应的数据块。处理模块2442随后依据描述符信息对DMA控制器2441读取的一个或多个数据块进行处理,如异或(XOR)运算处理、比较运算处理或是无零判断处理,从而得到处理后的结果。需要注意的是,只有对两个或两个以上数据块方可进行异或运算处理,因而本实施例的处理模块2442可设置一数据缓存器,在接受一定数量的数据块后再对所述数据决进行异或运算处理并输出一处理后的结果至DMA控制器2441。之后,DMA控制器2441透过第一主动总线接口242由第一总线210驱使存取控制器250依据描述符中的目标地址将处理后的结果写入至储存装置260中。
在一些对于独立磁盘多重数组存取的数据处理系统的实施例中,由于系统中读取操作的需求大于写入操作,因此,一些相关的周边装置可以耦接至第一总线210中,使得第二总线220的频宽可以使用于数据的读取操作。
图2为依据本发明一实施例的数据处理方法的流程图。
首先,如步骤S302,中央处理单元230产生且透过第一总线210将配置数据传送至从动总线接口241。其中,配置数据可以为一存储于储存装置260的描述符列表的基址(descriptor baseaddress),透过该描述符基址信息可获得多个已存储于储存装置260内的描述符。每一描述符包括,但不限于,至少一数据块于储存装置260中的地址(即源地址,source memory block address)、将数据块处理后所得到的结果欲储存至储存装置260中的地址(即目标地址,destination address)、对相应的数据区块进行何种处理以及下一描述符的地址。如步骤S304,从动总线接口241接收配置数据且将配置数据储存至缓存器245。如步骤S306,数据处理单元244的DMA控制器2441由缓存器245取得配置数据并依据配置数据发出一读取描述符指令至第二主动总线接口243。
如步骤S308,第二主动总线接口243透过第二总线220将读取描述符指令传送至存取控制器250。如步骤S310,存取控制器250依据读取描述符指令由储存装置260读取一描述符,并如步骤S312,透过第二总线220与第二主动总线接口243将描述符回传至数据处理单元244的DMA控制器2441。如步骤S314,数据处理单元244对读取的描述符进行译码操作,以获知源地址、目标地址及数据处理信息,并如步骤S316,依据上述描述符信息发出一读取数据指令至第二主动总线接口243。如步骤S318,第二主动总线接口243透过第二总线220将读取数据指令传送至存取控制器250。随后,如步骤S320,存取控制器250依据读取数据指令由储存装置260读取一数据块,并如步骤S322,透过第二总线220与第二主动总线接口243将数据块回传至数据处理单元244。之后,如步骤S324,数据处理单元244对于数据块进行相关处理,如异或运算处理或是计算同位信息,从而得到处理后的结果,并如步骤S326,发出一写入数据指令至第一主动总线接口242。如步骤S328,第一主动总线接口242透过第一总线210将处理所得的数据块依据写入数据指令传送至存取控制器250。如步骤S330,存取控制器250依据写入指令将处理结果写入至储存装置260。
图3所示为依据本发明另一实施例的数据处理系统。在此实施例中,数据处理系统包括三个总线,其中两个总线用于数据的读取操作,一个总线用于数据的写入操作。注意的是,图3与图1中相同的组件使用相同的标号。
依据本发明实施例的数据处理系统400包括一第一总线210、一第二总线220与一第三总线270、一中央处理单元230、一数据加速单元240、一存取控制器250、以及至少一储存装置260。类似地,储存装置260可以是DDR、DDRII、SDRAM。此外,第一总线210、第二总线220与第三总线270可以是先进高性能总线,但不限定于此。中央处理单元230决定数据处理所需的配置数据,如欲读取的特定数据块于储存装置中的地址,以及将数据块处理后所得到的结果欲储存至储存装置中的地址。于本实施例中,配置数据可以为一存储于储存装置260的描述符列表的基址,透过该描述符基址信息可获得已存储于储存装置260内的描述符。
数据加速单元240包括一从动总线接口241、一第一主动总线接口242、一第二主动总线接口243、一第三主动总线接口246与一数据处理单元244。其中,从动总线接口241与第一主动总线接口242耦接至第一总线210,第二主动总线接口243耦接至第二总线220,第三主动总线接口246耦接至第三总线270。从动总线接口241中具有一缓存器245,用来透过第一总线210由中央处理单元230接收且储存配置数据。
数据处理单元244包括一DMA控制器2441及一处理模块2442。DMA控制器2441依据接收的配置数据透过第二主动总线接口243或第三主动总线接口246由第二总线220或第三总线270驱使存取控制器250由储存装置260读取一描述符。其后,DMA控制器2441通过译码描述符获取将要读取的数据块的地址,并分别透过第二主动总线接口243与第三主动总线接口246由第二、第三总线220,270驱使存取控制器250由储存装置260读取一第一数据块及一第二数据区块。处理模块2442对读出的第一数据块、第二数据块进行处理,如异或运算处理、无零判断(non-zero)、比较(compare)运算或是计算同位信息,从而得到处理后的结果。之后,DMA控制器2441透过第一主动总线接口242由第一总线210驱使存取控制器250依据相应描述符的目标地址将处理后的结果写入至储存装置260中。
由以上描述可知,本实施例的数据处理系统设置有两条读取总线220,270与一条写入总线210,以加快读写数据到存取装置的传输速度。这样,本发明的数据处理系统具有较大的数据传输带宽,因而可适用于高端的RISC应用平台,并具有良好的数据处理性能。根据应用的情形,本实施例的数据处理系统也可设置三条或者更多的读取总线,而写入总线亦可相应增加以平衡读取与写入数据传输的带宽。另一方面,中央处理单元230仅需要将配置数据传输给数据加速单元,而不需要参与数据的传输及处理,这使得本实施例的数据处理系统具有较高的运行速度。
图4为依据本发明另一实施例的数据处理方法的流程图。在此实施例中,数据处理系统400需要由储存装置260读取两个数据块。
首先,如步骤S502,中央处理单元230产生配置数据且透过第一总线210将配置数据传送至从动总线接口241。其中,于本实施例中,配置数据为一存储于储存装置260的描述符列表的基址(descriptor base address)。如步骤S504,从动总线接口241接收配置数据且将配置数据储存至缓存器245。
之后,如步骤S506,数据处理单元244的DMA控制器2441由缓存器245取得配置数据,并依据该配置数据发出一读取描述符指令至第二总线220。每一描述符包括,但不限于至少一数据块于储存装置260中的地址(source memory block address)、将数据块处理后所得到的结果欲储存至储存装置260中的地址(即目标地址,destination address)、对相应的数据区块进行何种处理以及下一描述符的地址。
如步骤S508,第二主动总线接口243透过第二总线220将读取描述符指令传送至存取控制器250。如步骤S510,存取控制器250依据读取描述符指令由储存装置260读取一描述符,并如步骤S512,透过第二总线220与第二主动总线接口243将描述符回传至数据处理单元244的DMA控制器2441。如步骤S514,数据处理单元244对读取的描述符进行译码操作,以获知多个数据块的源地址、目标地址及数据处理信息。如步骤S516,数据处理单元244依据上述描述符信息发出一对应于第一数据块的第一读取数据指令至第二主动总线接口243,以及一对应于第二数据块的第二读取数据指令至第三主动总线接口246。如步骤S518及步骤S520,第二、第三主动总线接口243,246分别透过第二总线220与第三总线270将第一读取数据指令、第二读取数据指令传送至存取控制器250。如步骤S522,存取控制器250依据接收的第一读取数据指令、第二读取数据指令由储存装置260读取一第一数据块及一第二数据区块。如步骤S524,存取控制器250透过第二总线220将第一数据块回传至数据处理单元244。如步骤S526,存取控制器250透过第三总线270将第二数据块回传至数据处理单元244。之后,如步骤S528,数据处理单元244对第一数据块、第二数据块进行相关处理,如异或运算处理或是计算同位信息,从而得到处理后的数据块。其中,若对第一数据块、第二数据块进行异或运算处理,则仅可获得一个处理后的数据块,若对第一数据块、第二数据块分别进行独立的处理,如全零运算,则可获得两个相应的处理结果。如步骤S530,数据处理单元244随后发出一写入数据指令至第一主动总线接口242,以将处理结果传输至第一主动总线接口242。如步骤S532,第一主动总线接口242透过第一总线210将处理所得的数据区块依据写入数据指令传送至存取控制器250。如步骤S534,存取控制器250依据写入指令将处理结果写入至储存装置260。
本发明的方法,或特定型态或其部分,可以以程序代码的型态包含于实体介质,如软盘、光盘片、硬盘或是任何其它机器可读取(如计算机可读取)储存介质,其中,当程序代码被机器,如计算机加载且执行时,此机器变成用来参与本发明的装置。本发明的方法与装置也可以以程序代码型态透过一些传送介质,如电线或电缆、光纤或是任何传输型态进行传送,其中,当程序代码被机器,如计算机接收、加载且执行时,此机器变成用来参与本发明的装置。当在一般用途处理器操作时,程序代码结合处理器提供一操作类似于专用逻辑电路的独特装置。
本发明虽以优选实施例披露如上,然其并非用以限定本发明的范围,本领域的技术人员在不脱离本发明的精神和范围的前提下,可做各种的更动与润饰,因此本发明的保护范围以本发明的权利要求为准。
权利要求
1.一种数据处理系统,其特征在于,包括至少一写入总线;至少一读取总线;一处理单元,产生一配置数据;一存取控制器;以及一数据加速单元,与该写入总线及该读取总线耦接,用以依据该配置数据驱使该读取总线至一储存装置读取至少一数据块,处理该数据块,并将一处理后的结果由该写入总线传输至该储存装置。
2.根据权利要求1所述的数据处理系统,其特征在于,所述数据加速单元包括一缓存器,耦接于该写入总线与该读取总线之一以接收该配置数据;以及一数据处理单元,用以依据该配置数据驱使该读取总线至该储存装置读取至少一数据块,处理该数据块,并将一处理后的数据块通过该写入总线写入该储存装置。
3.根据权利要求2所述的数据处理系统,其特征在于,该数据处理单元包括一直接内存存取控制器,用以接受该配置数据,依据该配置数据驱使该读取总线至该储存装置读取至少一数据块,并将该处理后的数据块经由该写入总线传输至该储存装置;以及一处理模块,与该直接内存存取控制器耦接,用以对该数据块进行处理。
4.根据权利要求3所述的数据处理系统,其特征在于,该直接内存存取控制器依据该配置数据至该储存装置读取至少一描述符,该描述符至少包括该数据块于该储存装置的地址及该处理后的结果欲储存至该储存装置中的地址。
5.根据权利要求4所述的数据处理系统,其特征在于,该直接内存存取控制器依据该数据块于该储存装置的地址经由该读取总线至该储存装置读取该数据块,并依据该处理后的结果欲储存至该储存装置中的地址将该处理后的结果经由该写入总线写入该储存装置。
6.根据权利要求2至5中任意一项所述的数据处理系统,其特征在于,该数据加速单元更包括一第一主动总线接口与一第一从动总线接口,耦接至该写入总线,其中,所述缓存器透过该第一从动总线接口由该写入总线接收该配置数据,且该数据处理单元透过该第一主动总线接口由该写入总线驱使该存取控制器依据该配置数据将处理后的该数据块写入该储存装置。
7.根据权利要求2至5中任意一项所述的数据处理系统,其特征在于,该数据加速单元更包括一第二主动总线接口,耦接至该读取总线;其中,该数据处理单元透过该第二主动总线接口由该读取总线驱使该存取控制器依据该配置数据由该储存装置读取该数据块。
8.一种数据处理的方法,其特征在于,包括驱使一第一读取总线与一第二读取总线至一储存装置读取一个或多个数据块;处理该一个或多个数据块以得到一处理后的结果;以及将该处理后的结果由一写入总线写入一储存装置。
9.根据权利要求8所述的数据处理方法,其特征在于,还包括步骤产生一配置数据;驱使该第一读取总线与该第二读取总线之一依据该配置数据至该储存装置读取至少一描述符;以及译码该描述符以获得所述一个或多个数据块分别于该储存装置中的源地址,以及该处理后的结果欲储存至该储存装置中的目标地址。
10.根据权利要求9所述的数据处理方法,其特征在于,还包括步骤依据该源地址发出一第一读取数据指令,驱使该第一读取总线读取至少一数据块;以及依据该源地址发出一第二读取数据指令,驱使该第二读取总线读取至少一数据块。
全文摘要
本发明提供一种数据处理系统及数据处理方法,特别涉及一种数据处理系统,其包括至少一写入总线;至少一读取总线;一处理单元,产生一配置数据;一存取控制器;以及一数据加速单元,与该写入总线及该读取总线耦接,用以依据该配置数据驱使该读取总线至该储存装置读取至少一数据块,处理该数据块,并将一处理后的结果借该写入总线传输至该储存装置。本发明所提供的数据处理系统及数据处理方法,该数据处理系统通过读取总线到存储装置读取数据,通过写入总线将数据写入存储装置,从而达到增大数据传输带宽的目的,以适用于数据吞吐量大的系统平台。
文档编号G06F13/20GK101013408SQ20071007986
公开日2007年8月8日 申请日期2007年2月15日 优先权日2007年2月15日
发明者高鹏, 胡勇, 李德建 申请人:威盛电子股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1