一种基于可重构技术的二维数据访问动态自适应方法

文档序号:6552054阅读:186来源:国知局
一种基于可重构技术的二维数据访问动态自适应方法
【专利摘要】该发明提供了一种基于可重构技术的二维数据访问动态自适应方法。该方法所涉及的硬件包括由外部数据传输单元、数据输入缓存、数据输出缓存构成的可重构处理单元,外部存储器接口和外部存储器构成的一个外部访存接口系统。具体过程为在读或写数据情况下,可重构阵列外部数据传输单元根据可重构处理单元当前的数据访问请求将其转换为以目标位为单位的数据访问或写数据操作,然后将转换后的数据访问或写数据请求提交给外部存储器接口,最后经由外部数据传输单元将其从外部存储器接口返回的目标位数据中抽取所需要的部分,提交给可重构处理单元使用。通过该大大提高可重构处理单元与外部存储之间的访存效率。
【专利说明】一种基于可重构技术的二维数据访问动态自适应方法【技术领域】
[0001]本发明涉及嵌入式可重构设计领域,具体地,涉及一种可重构系统中可重构处理单元与外部存储器之间的数据传输方法。
【背景技术】
[0002]在传统的系统架构设计中,无论是总线传输协议或者外存访问协议,都是基于连续的地址访问而进行的。但是在很多工程应用领域如媒体处理算法中,几乎所有的数据存取都是以二维数据块的形式进行,这种二维数据块的访问方式可能造成严重的访问延迟以及存取带宽浪费。
[0003]近年来,可重构计算已经广泛地应用于如数字信号处理、视频图像处理、无线通信、数据加密等各类工程应用领域中。可重构技术的出现,大大改变了传统的嵌入式设计的方法,在嵌入式和高性能的计算领域具有广泛地应用前景,已经成为当前嵌入式系统发展的趋势。
[0004]为解决可重构系统中的外部存储数据访问过程中所面临的外存带宽利用率低和访问延迟问题,将可重构系统中的外部存储数据访问过程进行一定的变换,可以提升外存访问效率。

【发明内容】

[0005]本发明的目的在于,针对上述问题,提出一种基于可重构技术的二维数据访问动态自适应方法,以提升外存访问效率。
[0006]为实现上述目的,本发明采用的技术方案是:
[0007]该方法所涉及的硬件包括由外部数据传输单元、数据输入缓存、数据输出缓存构成的可重构处理单元,外部存储器接口和外部存储器构成的一个外部访存接口系统;其工作过程如下:
[0008]首先,在读或写数据情况下,可重构阵列外部数据传输单元总是先根据可重构处理单元当前的数据访问请求,将其转换为以目标位为单位的数据访问或写数据操作,再将转换后的数据访问或写数据请求提交给外部存储接口;
[0009]然后外部存储接口从外部存储器读取所需数据或将需要写出的数据,提交给外部数据传输单元;
[0010]最后,外部数据传输单元从外部存储器接口返回的目标位数据中抽取所需要的部分,提交给可重构处理单元使用;
[0011] 所述的可重构阵列的外部数据传输单元由外部数据传输仲裁模块、外部数据读取模块、外部数据存储模块组成;所述外部数据读取模块,通过访问外部存储器接口将来自指定数据源片外存储器的数据导入至数据输入缓存中;所述外部存储模块,通过访问外部存储器将数据输出缓存中的数据导出为指定目标片外存储器的数据;所述外部数据仲裁模块,接收并仲裁数据读取模块和数据存储模块对片外存储器的访问请求,当它们同时发起访问时,外部数据仲裁模块保证优先完成数据存储模块的操作,从而保证数据的一致性。
[0012]由外部数据读取模块实现的可重构单元从外部存储器读取数据的过程的原理是外部数据读取模块将数据源中一块二维数据读出,并将其中每1/2/4/8行拼接为I行再写入目标数据中;外部存储器中一块高度为5的二维数据按8字节对齐的方式被读出,再按每2行拼接为I行的方式,通过外部存储器接口写入至数据输入缓冲中;由于这块二维数据中有效部分的首地址可能不按8字节对齐,因此可能将部分无效数据一并读出,再写入数据输入缓存前自动舍去;为保证外部读取模块能够从宽度为8字节的数据源读入二维数据,每行二维数据长度与行间跳转长度之和必须为8的倍数。
[0013]由外部数据存储模块实现的可重构单元向外部存储器写入数据的原理是外部数据存取模块将数据源中一块二维数据读出后,按照数据拼接模式将数据写入数据目标中;外部数据存储模块将读入的二维数据的多行拼接为一行后写入数据目标中;数据输出缓存中一块高度为4的二维数据被读出,每2行拼接为一行,按8字节对齐的方式,通过外部存储器接口写至外部存储器中;存储器中。由于将这块二维数据拼接后写至数据目标时,首地址可能不按8字节对齐,因此需要按照8字节对齐生成涵盖所有有效数据的掩膜信号。
[0014]外部数据存取模块将数据源中一块二维数据读出后,按照数据拆分模式将数据写入数据目标中;外部数据存储模块将读入的二维数据的每行等分为多份后,将每份作为I行写入数据目标中;数据输出缓存中一块高度为2的二维数据被读出,每行等分为2份,将每份按8字节对齐的方式通过外部存储器接口 EMI写至片外存储器中;由于将这块二维数据拆分后写至数据目标时,首地址可能不按8字节对齐,因此需要按照8字节对齐生成涵盖所有有效数据的掩膜信号。
[0015]与现有技术相比,本发明的优点是:本发明的技术方案通过提供一种基于可重构技术的二维数据访问动态自适应方法,提高带宽利用率、提升外存访问访问效率,通过针对性的外部数据传输单元的设计,优化可重构处理器单元与外部存储器之间的数据传输效率。
[0016]下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
【专利附图】

【附图说明】
[0017]附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。在附图中:
[0018]图1为外部数据传输单元结构示意图;
[0019]图2为可重构处理单元的外部数据自组织读取过程;
[0020]图3为可重构处理单元的外存数据自组织写出过程中的数据拼接模式;
[0021]图4为可重构处理单元的外存数据自组织写出过程中的数据拆分模式。
【具体实施方式】
[0022]以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。
[0023]说明:下面用到的英文所代表的含义:可重构处理单元RPU (ReconfigurableProcessing Unit)、外部数据传输单兀(External Data Transmiss1n, EDT)、外部存储器接口(External Memory Interface, EMI)、外部数据传输仲裁模块(External Data Arbiter,EDA)、外部数据读取模块(External Data Load, EDL)和外部数据存储模块(External DataStore, EDS)、数据输入缓存中(External Load Data FIFO, ELDF)、数据输出缓存(ExternalStore Data FIFO, ESDF)。
[0024]如图1所示,可重构阵列外部数据传输单元REDT主要由外部数据传输仲裁模块(External Data Arbiter, EDA)、外部数据读取模块(External Data Load, EDL)和外部数据存储模块(External Data Store, EDS) 3个子模块组成,各自的功能如下:
[0025]I)外部数据读取模块EDL,通过访问外部存储器接口 EMI将来自指定数据源片外存储器的数据,导入至可重构处理单元RPU中的数据输入缓存中(即可重构阵列RCA中的外部数据输入 FIFO, External Load Data FIFO, LDF);
[0026]2)外部数据存储模块EDS,通过访问外部存储器EMI将来自可重构处理单元RPU中数据输出缓存(即可重构阵列RCA中的数据输出FIF0,External Store Data FIFO)中的数据,导出为指定数据目标片外存储器的数据;
[0027]3)外部数据传输仲裁模块EDA,接收并仲裁数据读取模块EDL和数据存储模块EDS对片外存储器的访问请求。当数据读取模块EDL和数据存储模EDS同时发起访问时,仲裁方法保证优先完成数据存储模EDS的操作,从而保证数据的一致性。
[0028]如图1所示,可重构处理单元与外部存储器之间的传输接口包括两个:一个是可重构处理单元RPU对外存的数据访问接口,即可重构阵列外部数据传输单元EDT ;另一个是整个可重构系统对外的数据访问接口即外部存储器接口 EMI。为了尽可能的利用外部存储器的数据访问位宽,本发明所设计的EDT和EMI均支持64位的高位宽数据访问,即可重构阵列外部数据传输单元EDT和外部存储器接口 EMI,将可重构处理单元RPU以8位为寻址单位访问外部存储器的操作,转换为了以64位为寻址单位访问外部存储器的操作。
[0029]为此,本发明提出了一种基于数据抽取和拼接的二维数据访问动态自适应方法,其工作过程如下:
[0030]在读数据情况下,可重构阵列外部数据传输单元EDT总是先根据可重构处理单元RPU当前的数据访问请求,将其转换为以64位为单位的数据访问,再将转换后的数据访问请求提交给外部存储器接口 EMI ;然后,外部存储器接口 EMI从外部存储器读取出所需的数据,提交给外部数据传输单元EDT ;最后,外部数据传输单元EDT从外部存储器接口 EMI返回的64位数据中抽取出需要的部分,并提交给可重构处理单元RPU使用。
[0031]在写数据情况下,可重构阵列外部数据传输单元EDT同样根据可重构处理单元RPU当前的数据访问请求,首先将其转换为以64位为单位的写数据操作;然后再将转换后的写数据请求提交给外部存储器接口 EMI ;最后,外部存储器接口 EMI将对应需要写出的数据,更新到外部存储器中对应的位置。需要注意的是,在写数据时,外部数据传输单元EDT需要首先将相连的待写出字节数据(图像数据以8位为单位)拼成以64位为单位的数据;同时,因为在拼接过程中,总是会出现不对齐的情况(例如,一个64位数据中仅有前7个8位是要写出的,最后一个8位数据不需要被写出),所以外部数据传输单元EDT和外部存储器接口 EMI均支持带掩膜(Mask)的写操作。
[0032]可重构阵列外部数据传输单元EDT所支持的片外二维数据访问动态自适应方法的原理,图2说明的是可重构处理单元RPU从外部存储器中读取数据,该过程由可重构阵列外部数据传输单元REDT中的数据读取模块REDL实现。如上所述,可重构阵列外部数据读取模块REDL,通过访问外部存储器接口 EMI将来自指定数据源片外存储器中的数据,导入至可重构阵列RCA的数据输入缓存ELDF中。数据源中每个数据的大小为8字节,数据目标中每个数据的大小为32字节。具体数据传输方式由2个32位配置信息决定(配置信息格式见表1)。
[0033]表1可重构阵列外部数据读取模块的配置信息格式
【权利要求】
1.一种基于可重构技术的二维数据访问动态自适应方法,其特征在于:该方法所涉及的硬件包括由外部数据传输单元、数据输入缓存、数据输出缓存构成的可重构处理单元,外部存储器接口和外部存储器构成的一个外部访存接口系统;所述方法包括如下步骤: 首先,在读或写数据情况下,可重构阵列外部数据传输单元总是先根据可重构处理单元当前的数据访问请求,将其转换为以目标位为单位的数据访问或写数据操作,再将转换后的数据访问或写数据请求提交给外部存储接口; 然后外部存储接口从外部存储器读取所需数据或将需要写出的数据,提交给外部数据传输单兀; 最后,外部数据传输单元从外部存储器接口返回的目标位数据中抽取所需要的部分,提交给可重构处理单元使用。
2.根据权利要求1所述的一种基于可重构技术的二维数据访问动态自适应方法,其特征在于:所述可重构阵列的外部数据传输单元包括外部数据传输仲裁模块、外部数据读取模块、外部数据存储模块;所述外部数据读取模块通过访问外部存储器接口将来自指定数据源片外存储器的数据导入至数据输入缓存中;所述外部存储模块通过访问外部存储器将数据输出缓存中的数据导出为指定目标片外存储器的数据;所述外部数据仲裁模块接收并仲裁数据读取模块和数据存储模块对片外存储器的访问请求,当它们同时发起访问时,外部数据仲裁模块保证优先完成数据存储模块的操作,从而保证数据的一致性。
3.根据权利要求1或权利要求2所述的一种基于可重构技术的二维数据访问动态自适应方法,其特征在于:由外部数据读取模块实现的可重构单元从外部存储器读取数据的过程,具体为:外部数据读取模块将数据源中一块二维数据读出,并将其中每1/2/4/8行拼接为1行再写入目标数据中;外部存储器中一块高度为5的二维数据按8字节对齐的方式被读出,再按每2行拼接为I行的方式,通过外部存储器接口写入至数据输入缓冲中;由于这块二维数据中有效部分的首地址可能不按8字节对齐,因此可能将部分无效数据一并读出,再写入数据输入缓存前自动舍去;为保证外部读取模块能够从宽度为8字节的数据源读入二维数据,每行二维数据长度与行间跳转长度之和必须为8的倍数。
4.根据权利要求1或权利要求2所述的一种基于可重构技术的二维数据访问动态自适应方法,其特征在于:由外部数据存储模块实现的可重构单元向外部存储器写入数据的过程,具体为:外部数据存取模块将数据源中一块二维数据读出后,按照数据拼接模式将数据写入数据目标中;外部数据存储模块将读入的二维数据的多行拼接为一行后写入数据目标中;数据输出缓存中一块高度为4的二维数据被读出,每2行拼接为一行,按8字节对齐的方式,通过外部存储器接口写至外部存储器中;由于将这块二维数据拼接后写至数据目标时,首地址可能不按8字节对齐,因此需要按照8字节对齐生成涵盖所有有效数据的掩膜信号。
5.根据权利要求1或权利要求2所述的一种基于可重构技术的二维数据访问动态自适应方法,其特征在于:由外部数据存储模块实现的可重构单元向外部存储器写入数据的过程,具体为:外部数据存取模块将数据源中一块二维数据读出后,按照数据拆分模式将数据写入数据目标中;外部数据存储模块将读入的二维数据的每行等分为多份后,将每份作为I行写入数据目标中;数据输出缓存中一块高度为2的二维数据被读出,每行等分为2份,将每份按8字节对齐的方式通过外部存储器接口 EMI写至片外存储器中;由于将这块二维数据拆分后写至数据目标时,首地址可能不按8字节对齐,因此需要按照8字节对齐生成涵盖所有有效数据的掩膜信号。
【文档编号】G06F13/38GK104035903SQ201410313092
【公开日】2014年9月10日 申请日期:2014年7月2日 优先权日:2014年7月2日
【发明者】曹鹏, 刘波, 杨苗苗, 肖建, 朱婉瑜, 张亚 申请人:东南大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1