基于dsp芯片的矩阵转置装置的制造方法

文档序号:9616217阅读:557来源:国知局
基于dsp芯片的矩阵转置装置的制造方法
【技术领域】
[0001] 本发明主要涉及到微处理器结构与芯片设计领域,特指一种基于DSP芯片的矩阵 转置装置。
【背景技术】
[0002] 矩阵是数据组织和存储的基本方式之一,广泛应用于信号图像处理(合成孔径雷 达成像(SAR)成像、二维FFT)、模拟仿真等科学计算中。如何快速访问到矩阵中的数据元 素,对处理器性能和存储带宽利用率的充分发挥起到重要作用。对矩阵的行顺序和列顺序 交替访问是科学计算等应用领域中的一种重要的访存方式。如SAR成像中矩阵数据的行列 方向分别代表方位向和距离向,计算过程中需要分别进行方位向和距离向压缩计算;二维 FFT和二维图像处理等需要分别从两个维度对矩阵数据进行计算;矩阵求逆算法需要按行 和按列访问数据矩阵。
[0003] 然而,当前大部分大容量数据存储器(如DDR)和访存协议(如AXI协议)都是采 用突发访问的方式实现通信带宽利用率最大化。按照传统的行优先存储模式将矩阵数据映 射到DDR存储空间,矩阵行数据分布方向与DDR物理行平行,行数据将分布在尽可能少的物 理行中;而矩阵列数据分布方向与物理行交叉,分布在多个不同的物理行中。矩阵应用程序 对数据进行行列交替访问过程中,行连续访问的带宽利用率很高;而列连续访问的10带宽 利用率急剧下降,限制行列交替访问矩阵应用程序整体存储性能。
[0004] 在基于突发的通信协议中,按列访问N*M的数据矩阵时,需要启动N*M次的突发访 问,这种方式完全无法利用数据网络的流水缓存来提升存储通路的带宽利用率。同时,为 了匹配日益提升的处理器计算性能,数据带宽也得到相应提升,目前处理器和DSP芯片(TI 6678)的数据位宽扩展到256位,有些处理器芯片的数据位宽甚至达到1024位;然而,按列 访问数据矩阵时,矩阵中的每个元素仅占用数据位宽的一小部分,其他的数据位宽无法使 用,这也是导致按列访问数据矩阵时存储带宽利用率低的一个重要原因。

【发明内容】

[0005] 本发明要解决的技术问题就在于:针对现有技术存在的技术问题,本发明提供一 种可实现矩阵转置功能、提升存储带宽利用率的基于DSP芯片的矩阵转置装置。
[0006] 为解决上述技术问题,本发明采用以下技术方案:
[0007] -种基于DSP芯片的矩阵转置装置,其包括:
[0008] 矩阵转置单元,用来将矩阵转置转换为若干基本块的转置,同时给DMA总线控制 器发送读写控制参数,协调两个多体数据存储器的读写访问,实现基本矩阵读和写操作重 置;
[0009] DMA总线控制器,用来发送读写控制参数,协调两个多体数据存储器的读写访问, 实现基本矩阵读和写操作重叠;
[0010] 两个多体数据存储器,每个多体数据存储器包括多个随机存储器,用来负责缓存 一个基本块数据;
[0011] 数据通路和命令通路异步处理单元,用来将TeraNet数据主机端口协议转换为内 部DMA总线协议,将TeraNet命令从机端口协议转换为内部Pbus总线协议。
[0012] 作为本发明的进一步改进:所述多体数据存储器提供多个独立端口以保证基本块 能以行顺序写入,同时以列顺序读出。
[0013] 作为本发明的进一步改进:所述两个多体数据存储器以乒乓方式实现基本块读操 作和写操作重叠。
[0014] 作为本发明的进一步改进:设置四种转置模式:
[0015] A、矩阵转置模式0 :交叉存储到交叉存储;
[0016] B、矩阵转置模式1 :分开存储到交叉存储;
[0017] C、矩阵转置模式2 :交叉存储到分开存储;
[0018] D、矩阵转置模式3 :分开存储到分开存储。
[0019] 作为本发明的进一步改进:所述矩阵转置单元执行以下分块矩阵转置策略:
[0020] (a)将原始Ni*N2矩阵分解若干基本块,通过一次按行读和按列写操作完成基本块 转置;
[0021] (b)以基本块为元素,对基本块矩阵进行转置,实现整个矩阵的转置;基本块矩阵 转置通过控制基本块转置的读、写地址完成;
[0022] (c)采用"乒乓"结构实现不同基本块的读操作时间和写操作时间重叠,AXI数据 通路的读通路与写通路完全分开。
[0023] 与现有技术相比,本发明的优点在于:
[0024] 1、本发明的基于DSP芯片的矩阵转置装置,针对矩阵行访问和列访问存储带宽利 用率差别大的问题,利用DSP芯片内部存储器,设计一个随机乒乓存储结构的矩阵转置装 置。通过高效的矩阵转置操作和行访问操作实现矩阵列访问,大大提升了存储带宽利用率。
[0025] 2、本发明的基于DSP芯片的矩阵转置装置,支持复数实部和虚部交叉存储和分开 存储两种存储形式及两者之间的转换,支持矩阵元素为32位和64位的矩阵转置操作。
[0026] 3、本发明的基于DSP芯片的矩阵转置装置,复用DSP内部的数据存储器,增加简单 的DMA控制逻辑来实现基本矩阵数据块(简称基本块)的转置,然后通过读、写地址的控制 实现基本块矩阵转置。具有实现简单、效率高、适用面广等优点,以突发方式访问基本块、基 本块转置之间采用读和写重叠方式来提高存储带宽利用率。
【附图说明】
[0027] 图1是本发明矩阵转置装置的拓扑结构示意图。
[0028] 图2是采用两种数据组织方式(交叉存储和分开存储)的示意图。
[0029] 图3是本发明在具体应用实例中采用矩阵转置模式0 :交叉存储到交叉存储的示 意图。
[0030] 图4是本发明在具体应用实例中采用矩阵转置模式1 :分开存储到交叉存储的示 意图。
[0031] 图5是本发明在具体应用实例中矩阵转置模式2 :交叉存储到分开存储的示意图。
[0032] 图6是本发明在具体应用实例中矩阵转置模式3 :分开存储到分开存储的示意图。
[0033] 图7是本发明在具体应用实例中基本矩阵转置的数据组织方式的示意图。
[0034]图8是本发明在具体应用实例中块矩阵转置组织方式的示意图。
[0035]图9是本发明在具体应用实例中块矩阵转置时空图的示意图。
[0036]图10是本发明在具体应用实例中矩阵转置控制状态机的示意图。
【具体实施方式】
[0037] 以下将结合说明书附图和具体实施例对本发明做进一步详细说明。
[0038] 如图1所示,本发明的基于DSP芯片的矩阵转置装置,包括:
[0039] 矩阵转置单元,用来将矩阵转置转换为若干基本块的转置,同时给DMA总线控制 器发送读写控制参数,协调两个多体数据存储器的读写访问,实现基本矩阵读和写操作重 置;
[0040]DMA总线控制器,用来发送读写控制参数,协调两个多体数据存储器的读写访问, 实现基本矩阵读和写操作重叠;
[0041] 两个多体数据存储器,每个多体数据存储器包括多个随机存储器,用来负责缓存 一个基本块数据;多体数据存储器提供多个独立端口以保证基本块能以行顺序写入,同时 以列顺序读出;两个多体数据存储器以乒乓方式实现基本块读操作和写操作重叠,最大化 存储带宽利用率;
[0042] 数据通路和命令通路异步处理单元,用来将TeraNet数据主机端口协议转换为内 部DMA总线协议,将TeraNet命令从机端口协议转换为内部Pbus总线协议。
[0043] 在数字信号处理领域,数据通常以复数方式组织,这类数据矩阵的组织有两种基 本组织方式一一实部虚部交叉存储和实部虚部分开存储。如图2所示,实部虚部交叉存储方 式是数据采集后最常用的表达形式,单精度浮点形式的实数和虚部组成一个64位的复数; 实部虚部分开存储方式是复数矩阵处理过程中另一种主要的表示形式,实部和虚部分别存 储在两个连续的矩阵中,对应序号的两个单精度浮点数据视为一个复数。因此,本发明的数 据矩阵转置可以用来适用于这两种形式,同时本发明的矩阵转置装置还可以实现复数矩阵 这两种形式的相互转换。
[0044] 针对复数矩阵的两种组织方式,本发明的矩阵转置装置设置四种转置模式:
[0045] A、矩阵转置模式0 :交叉存储到交叉存储;
[0046] 如图3所示,将地址Init_real指定的N1*N2的二维数据矩阵(64位)转置放置 到地址Result_real位置,其中初始矩阵和转置后的矩阵均为连续矩阵。这种模式可以实 现矩阵元素为64位的矩阵转置操作。
[0047] B、矩阵转置模式1 :分开存储到交叉存储;
[0048]如图4所示,将两个N1*N2的二维数据矩阵(32位),分别由地址Init_real和 Init_imag指定,对应位置的数据合并成64位数据,然后转置放置到地址Result_real位置 转置后结果可视为一个64位数据矩阵,其中两个初始矩阵和转置后的矩阵均为连续矩阵。 这种模式能够将两个独立的32位矩阵对应位置组合,然后转置成64位矩阵。
[0049]C、矩阵转置模式2:交叉存储到分开存储;
[0050] 如图5所示,对由地址Init_real指定64位N1*N2的二维数据矩阵进行转置,首 先将每个64位数据分解为两个32位数据,然后对分解后的数据矩阵分别进行转置,两个转 置后的32位矩阵分别存储到有地址Result_real和Result_imag指定的位置,其中64位 的初始矩阵和两个32位转置后的矩阵均为连续矩阵。这种模式能够将一个64位矩阵拆分 成两个32位矩阵,并完成矩阵转置操作。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1