CN104598391A - 一种待转置二维矩阵的分块线性存储读取方法及系统 - Google Patents
一种待转置二维矩阵的分块线性存储读取方法及系统 Download PDFInfo
- Publication number
- CN104598391A CN104598391A CN201510031791.9A CN201510031791A CN104598391A CN 104598391 A CN104598391 A CN 104598391A CN 201510031791 A CN201510031791 A CN 201510031791A CN 104598391 A CN104598391 A CN 104598391A
- Authority
- CN
- China
- Prior art keywords
- dimensional matrix
- transposed
- matrix
- memory
- equal
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 239000011159 matrix material Substances 0.000 title claims abstract description 71
- 238000000034 method Methods 0.000 title claims abstract description 26
- 238000000638 solvent extraction Methods 0.000 title abstract description 6
- 230000017105 transposition Effects 0.000 claims abstract description 18
- 230000009191 jumping Effects 0.000 abstract description 3
- 230000000903 blocking effect Effects 0.000 description 3
- 230000007547 defect Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 1
Landscapes
- Complex Calculations (AREA)
Abstract
本发明提供一种待转置二维矩阵的分块线性存储读取方法及系统,所述方法包括将待转置矩阵分块,将分块后的矩阵进行存储以及读取存储数据进行转置操作。本发明通过分块存储待转置数据,并跳变读取待转置数据,提高了矩阵的转置效率,节省了转置时间。
Description
技术领域
本发明涉及存储器读取技术领域,尤其涉及一种待转置二维矩阵的分块线性存储读取方法及系统。
背景技术
目前,SAR成像处理系统中常用SDRAM作为数据的存储介质。由于SDRAM的结构特点,SDRAM对于顺序的地址跳变访问可以达到非常高的读写速率,但在地址跳变的随机访问情况下,大量的换行操作严重降低了访问效率。因此,采用行进列出或者列进行出的方法进行矩阵的转置,效率很低。
因此现有技术有待于进一步的改进。
发明内容
鉴于上述现有技术中的不足之处,本发明的目的在于为用户提供一种待转置二维矩阵的分块线性存储读取方法及系统,旨在解决现有技术中采用行进列出或者列进行出的方法进行矩阵的转置,效率较低的缺陷。
本发明解决技术问题所采用的技术方案如下:
一种待转置二维矩阵的分块线性存储读取方法,其中,所述方法包括步骤:
S1、将待转置二维矩阵A(j,i)划分为M×L个大小相等的子矩阵Aml:
其中,0≤i<NR,0≤j<NA,NR为二维矩阵A(j,i)的总列数,NA为二维矩阵A(j,i)的总列数,每个子矩阵Aml的大小为NA’×NR’,NA’=NA/M,NR’=NR/L,0≤m≤(M-1),0≤l≤(L-1);
S2、将每个子矩阵Aml的元素存入存储器的存储空间的同一物理行中,有:
Bml(NR'·p+q)=Aml(p,q),0≤p≤NA’,0≤q≤NR’;
B(L×NA'×NR'+M×NA'×NR'+k)=Bml(k),0≤k≤NA’×NR’;
存储器的存储空间的同一物理行的存储大小为2n字节,其中n为正整数;
S3、当进行转置时,从存储器的存储空间的每一物理行中隔NR个点取出一个点进行转置。
所述待转置二维矩阵的分块线性存储读取方法,其中,所述步骤S2中当n为偶数时,则M和L均等于2n/2。
所述待转置二维矩阵的分块线性存储读取方法,其中,所述步骤S2中当n为奇数时,则M等于2(n-1)/2,且L等于2(n+1)/2。
一种待转置二维矩阵的分块线性存储读取方法,其中,包括:
子矩阵获取模块,用于将待转置二维矩阵A(j,i)划分为M×L个大小相等的子矩阵Aml:
其中,0≤i<NR,0≤j<NA,NR为二维矩阵A(j,i)的总列数,NA为二维矩阵A(j,i)的总列数,每个子矩阵Aml的大小为NA’×NR’,NA’=NA/M,NR’=NR/L,0≤m≤(M-1),0≤l≤(L-1);
写入模块,用于将每个子矩阵Aml的元素存入存储器的存储空间的同一物理行中,有:
Bml(NR'·p+q)=Aml(p,q),0≤p≤NA’,0≤q≤NR’;
B(L×NA'×NR'+M×NA'×NR'+k)=Bml(k),0≤k≤NA’×NR’;
存储器的存储空间的同一物理行的存储大小为2n字节,其中n为正整数;
转置模块,用于当进行转置时,从存储器的存储空间的每一物理行中隔NR个点读取出一个点进行转置。
所述待转置二维矩阵的分块线性存储读取系统,其中,所述步骤S2中当n为偶数时,则M和L均等于2n/2。
所述待转置二维矩阵的分块线性存储读取系统,其中,所述步骤S2中当n为奇数时,则M等于2(n-1)/2,且L等于2(n+1)/2。
本发明提供一种待转置二维矩阵的分块线性存储读取方法及系统,所述方法包括将待转置矩阵分块,将分块后的矩阵进行存储以及读取存储数据进行转置操作。本发明通过分块存储待转置数据,并跳变读取待转置数据,提高了矩阵的转置效率,节省了转置时间。
附图说明
图1为本发明所述待转置二维矩阵的分块线性存储读取方法较佳实施例的流程图。
图2为本发明所述待转置二维矩阵的分块线性存储读取系统较佳实施例的结构框图。
具体实施方式
为使本发明的目的、技术方案及优点更加清楚、明确,以下参照附图并举实施例对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅仅用于解释本发明,并不用于限定本发明。
请参见图1,图1是本发明所述待转置二维矩阵的分块线性存储读取方法较佳实施例的流程图。如图1所示,所述待转置二维矩阵的分块线性存储读取方法,包括以下步骤:
步骤S100、将待转置二维矩阵A(j,i)划分为M×L个大小相等的子矩阵Aml:
其中,0≤i<NR,0≤j<NA,NR为二维矩阵A(j,i)的总列数,NA为二维矩阵A(j,i)的总列数,每个子矩阵Aml的大小为NA’×NR’,NA’=NA/M,NR’=NR/L,0≤m≤(M-1),0≤l≤(L-1)。
步骤S200、将每个子矩阵Aml的元素存入存储器的存储空间的同一物理行中,有:
Bml(NR'·p+q)=Aml(p,q),0≤p≤NA’,0≤q≤NR’;
B(L×NA'×NR'+M×NA'×NR'+k)=Bml(k),0≤k≤NA’×NR’;
存储器的存储空间的同一物理行的存储大小为2n字节,其中n为正整数;
当n为偶数时,则M和L均等于2n/2;当n为奇数时,则M等于2(n-1)/2,且L等于2(n+1)/2。
步骤S300、当进行转置时,从存储器的存储空间的每一物理行中隔NR个点取出一个点进行转置。
如果采用行进列出的传统读取方式,访问A(j,i)的一行中的所有数据,数据地址是连续的;如果访问A(j,i)的一列中的所有数据,数据的地址跳变间隔为NR。显然,访问列时,每读写一个数据,SDRAM就需要进行一次换行操作,访问效率大大降低。通过本发明的方法访问A(j,i)中的一行只需要进行L次换行,访问一列只需要M次换行。假设换行操作需要nrowchange个时钟周期,行内操作都是单周期的,那么此时行访问的效率为 列访问的效率为 由此可见,本发明基于SDRAM行内操作的流水能力,从数据矩阵中划分出一个分布在两维空间的子数据块,将一个子数据块映射到SDRAM的一行内,这样对SDRAM一行内数据的连续访问就可以实现访问二维数据的目的,使对数据矩阵的两维访问速度达到平衡,降低了转置所需的时间,提高了访问效率。
基于上述方法,本发明还提供了待转置二维矩阵的分块线性存储读取系统。如图2所示,其为本发明所述待转置二维矩阵的分块线性存储读取系统较佳实施例的结构框图,所述系统包括:
子矩阵获取模块100,用于将待转置二维矩阵A(j,i)划分为M×L个大小相等的子矩阵Aml:
其中,0≤i<NR,0≤j<NA,NR为二维矩阵A(j,i)的总列数,NA为二维矩阵A(j,i)的总列数,每个子矩阵Aml的大小为NA’×NR’,NA’=NA/M,NR’=NR/L,0≤m≤(M-1),0≤l≤(L-1)。
写入模块200,用于将每个子矩阵Aml的元素存入存储器的存储空间的同一物理行中,有:
Bml(NR'·p+q)=Aml(p,q),0≤p≤NA’,0≤q≤NR’;
B(L×NA'×NR'+M×NA'×NR'+k)=Bml(k),0≤k≤NA’×NR’;
存储器的存储空间的同一物理行的存储大小为2n字节,其中n为正整数。
转置模块300,用于当进行转置时,从存储器的存储空间的每一物理行中隔NR个点读取出一个点进行转置。
进一步地实施例,在所述待转置二维矩阵的分块线性存储读取系统中,所述步骤S2中当n为偶数时,则M和L均等于2n/2。
进一步地实施例,在所述待转置二维矩阵的分块线性存储读取系统中,所述步骤S2中当n为奇数时,则M等于2(n-1)/2,且L等于2(n+1)/2。
综上所述,本发明提供一种待转置二维矩阵的分块线性存储读取方法及系统,所述方法包括将待转置矩阵分块,将分块后的矩阵进行存储以及读取存储数据进行转置操作。本发明通过分块存储待转置数据,并跳变读取待转置数据,提高了矩阵的转置效率,节省了转置时间。
可以理解的是,对本领域普通技术人员来说,可以根据本发明的技术方案及其发明构思加以等同替换或改变,而所有这些改变或替换都应属于本发明所附的权利要求的保护范围。
Claims (6)
1.一种待转置二维矩阵的分块线性存储读取方法,其特征在于,所述方法包括步骤:
S1、将待转置二维矩阵A(j,i)划分为M×L个大小相等的子矩阵Aml:
其中,0≤i<NR,0≤j<NA,NR为二维矩阵A(j,i)的总列数,NA为二维矩阵A(j,i)的总列数,每个子矩阵Aml的大小为NA’×NR’,NA’=NA/M,NR’=NR/L,0≤m≤(M-1),0≤l≤(L-1);
S2、将每个子矩阵Aml的元素存入存储器的存储空间的同一物理行中,有:
Bml(NR'·p+q)=Aml(p,q),0≤p≤NA’,0≤q≤NR’;
B(L×NA'×NR'+M×NA'×NR'+k)=Bml(k),0≤k≤NA’×NR’;
存储器的存储空间的同一物理行的存储大小为2n字节,其中n为正整数;
S3、当进行转置时,从存储器的存储空间的每一物理行中隔NR个点取出一个点进行转置。
2.根据权利要求1所述待转置二维矩阵的分块线性存储读取方法,其特征在于,所述步骤S2中当n为偶数时,则M和L均等于2n/2。
3.根据权利要求1所述待转置二维矩阵的分块线性存储读取方法,其特征在于,所述步骤S2中当n为奇数时,则M等于2(n-1)/2,且L等于2(n+1)/2。
4.一种待转置二维矩阵的分块线性存储读取方法,其特征在于,包括:
子矩阵获取模块,用于将待转置二维矩阵A(j,i)划分为M×L个大小相等的子矩阵Aml:
其中,0≤i<NR,0≤j<NA,NR为二维矩阵A(j,i)的总列数,NA为二维矩阵A(j,i)的总列数,每个子矩阵Aml的大小为NA’×NR’,NA’=NA/M,NR’=NR/L,0≤m≤(M-1),0≤l≤(L-1);
写入模块,用于将每个子矩阵Aml的元素存入存储器的存储空间的同一物理行中,有:
Bml(NR'·p+q)=Aml(p,q),0≤p≤NA’,0≤q≤NR’;
B(L×NA'×NR'+M×NA'×NR'+k)=Bml(k),0≤k≤NA’×NR’;
存储器的存储空间的同一物理行的存储大小为2n字节,其中n为正整数;
转置模块,用于当进行转置时,从存储器的存储空间的每一物理行中隔NR个点读取出一个点进行转置。
5.根据权利要求4所述待转置二维矩阵的分块线性存储读取系统,其特征在于,所述步骤S2中当n为偶数时,则M和L均等于2n/2。
6.根据权利要求4所述待转置二维矩阵的分块线性存储读取系统,其特征在于,所述步骤S2中当n为奇数时,则M等于2(n-1)/2,且L等于2(n+1)/2。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510031791.9A CN104598391A (zh) | 2015-01-21 | 2015-01-21 | 一种待转置二维矩阵的分块线性存储读取方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510031791.9A CN104598391A (zh) | 2015-01-21 | 2015-01-21 | 一种待转置二维矩阵的分块线性存储读取方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104598391A true CN104598391A (zh) | 2015-05-06 |
Family
ID=53124199
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510031791.9A Pending CN104598391A (zh) | 2015-01-21 | 2015-01-21 | 一种待转置二维矩阵的分块线性存储读取方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104598391A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104750435A (zh) * | 2015-03-31 | 2015-07-01 | 宁波高新区宁源科技服务有限公司 | 一种待转置二维矩阵的分块线性存储读取方法 |
CN108053855A (zh) * | 2017-11-29 | 2018-05-18 | 北京时代民芯科技有限公司 | 一种基于sdram芯片的矩阵转置方法 |
WO2018192161A1 (zh) * | 2017-04-19 | 2018-10-25 | 上海寒武纪信息科技有限公司 | 运算装置及方法 |
US10896369B2 (en) | 2017-04-06 | 2021-01-19 | Cambricon Technologies Corporation Limited | Power conversion in neural networks |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110208901A1 (en) * | 2010-02-25 | 2011-08-25 | Jung Wook Kim | Memory Systems and Methods of Operating the Same |
CN102279386A (zh) * | 2011-05-12 | 2011-12-14 | 西安电子科技大学 | 基于fpga的sar成像信号处理数据转置方法 |
CN103135096A (zh) * | 2013-01-11 | 2013-06-05 | 北京理工大学 | 一种合成孔径雷达成像处理转置存储方法和数据访问方法 |
-
2015
- 2015-01-21 CN CN201510031791.9A patent/CN104598391A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110208901A1 (en) * | 2010-02-25 | 2011-08-25 | Jung Wook Kim | Memory Systems and Methods of Operating the Same |
CN102279386A (zh) * | 2011-05-12 | 2011-12-14 | 西安电子科技大学 | 基于fpga的sar成像信号处理数据转置方法 |
CN103135096A (zh) * | 2013-01-11 | 2013-06-05 | 北京理工大学 | 一种合成孔径雷达成像处理转置存储方法和数据访问方法 |
Non-Patent Citations (1)
Title |
---|
边明明等: "实时SAR成像系统矩阵转置方法研究与实现", 《计算机工程与应用》 * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104750435A (zh) * | 2015-03-31 | 2015-07-01 | 宁波高新区宁源科技服务有限公司 | 一种待转置二维矩阵的分块线性存储读取方法 |
US10896369B2 (en) | 2017-04-06 | 2021-01-19 | Cambricon Technologies Corporation Limited | Power conversion in neural networks |
WO2018192161A1 (zh) * | 2017-04-19 | 2018-10-25 | 上海寒武纪信息科技有限公司 | 运算装置及方法 |
CN108053855A (zh) * | 2017-11-29 | 2018-05-18 | 北京时代民芯科技有限公司 | 一种基于sdram芯片的矩阵转置方法 |
CN108053855B (zh) * | 2017-11-29 | 2021-01-08 | 北京时代民芯科技有限公司 | 一种基于sdram芯片的矩阵转置方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7921245B2 (en) | Memory system and device with serialized data transfer | |
EP3403184B1 (en) | Apparatuses and methods for concurrently accessing multiple partitions of a non-volatile memory | |
US8612723B2 (en) | System and method for storing a sparse matrix | |
US6353910B1 (en) | Method and apparatus for implementing error correction coding (ECC) in a dynamic random access memory utilizing vertical ECC storage | |
CN107209703B (zh) | 双列直插式存储器模块(dimm)以及将数据写入到dimm的方法 | |
US9042194B2 (en) | Refresh method, refresh address generator, volatile memory device including the same | |
CN108053855B (zh) | 一种基于sdram芯片的矩阵转置方法 | |
CN104598391A (zh) | 一种待转置二维矩阵的分块线性存储读取方法及系统 | |
US8438448B2 (en) | Decoding method and device for low density generator matrix codes | |
US9823863B1 (en) | Sub-blocks and meta pages for mapping table rebuild | |
CN104993837B (zh) | 一种卷积交织方法和卷积交织器 | |
US20080195823A1 (en) | Method and apparatus for convolutional interleaving/de-interleaving technique | |
CN102005241A (zh) | 半导体存储器件及其控制方法 | |
US20140052912A1 (en) | Memory device with a logical-to-physical bank mapping cache | |
US11755235B2 (en) | Increasing random access bandwidth of a DDR memory in a counter application | |
KR101331738B1 (ko) | 비휘발성 메모리를 위한 수정된 판독 동작 | |
CN102567243B (zh) | 存储设备的刷新处理方法和存储设备 | |
CN108665940B (zh) | Ecc编码电路、解码电路以及存储器控制器 | |
CN108062289B (zh) | 快速傅里叶变换fft地址换序方法、信号处理方法及装置 | |
US9715343B2 (en) | Multidimensional partitioned storage array and method utilizing input shifters to allow multiple entire columns or rows to be accessed in a single clock cycle | |
CN110474647B (zh) | 有限域构造的ldpc码的译码方法、装置、译码器及存储介质 | |
CN112947854B (zh) | 一种基于双通道ddr3的sar数据存储和访问方法及装置 | |
US20230307036A1 (en) | Storage and Accessing Methods for Parameters in Streaming AI Accelerator Chip | |
CN113542770B (zh) | 一种dct变换方法及dct变换电路系统 | |
CN113553009B (zh) | 数据读取方法、数据写入方法及数据读写方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20150506 |
|
RJ01 | Rejection of invention patent application after publication |