CN108762719A - 一种并行广义内积重构控制器 - Google Patents

一种并行广义内积重构控制器 Download PDF

Info

Publication number
CN108762719A
CN108762719A CN201810497969.2A CN201810497969A CN108762719A CN 108762719 A CN108762719 A CN 108762719A CN 201810497969 A CN201810497969 A CN 201810497969A CN 108762719 A CN108762719 A CN 108762719A
Authority
CN
China
Prior art keywords
address
intermediate result
broad sense
computing module
inner product
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.)
Granted
Application number
CN201810497969.2A
Other languages
English (en)
Other versions
CN108762719B (zh
Inventor
李丽
祁鹏展
鲍贤亮
宋文清
李伟
何书专
潘红兵
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nanjing University
Original Assignee
Nanjing University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Nanjing University filed Critical Nanjing University
Priority to CN201810497969.2A priority Critical patent/CN108762719B/zh
Publication of CN108762719A publication Critical patent/CN108762719A/zh
Application granted granted Critical
Publication of CN108762719B publication Critical patent/CN108762719B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/06Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
    • G06F12/0646Configuration or reconfiguration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • G06F15/7867Architectures of general purpose stored program computers comprising a single central processing unit with reconfigurable architecture
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/483Computations with numbers represented by a non-linear combination of denominational numbers, e.g. rational numbers, logarithmic number system or floating-point numbers
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Nonlinear Science (AREA)
  • Complex Calculations (AREA)
  • Logic Circuits (AREA)

Abstract

本发明的并行广义内积重构控制器,包括:中间结果计算模块,接收源数据并根据源数据计算中间结果向量,生成向量的地址,存入bank;每完成一个中间结果向量的计算生成一个完成信号,并将所述完成信号发送至最终结果计算模块,作为启动信号;最终结果计算模块,读数据进入复数乘累加器进行最终结果计算得到结果矩阵第L个元素,生成向量的地址,存入bank;数据存储地址处理模块,根据乒乓操作选择信号进行数据选择,生成正确的bank地址信号。有益效果:计算时间少且存储资源利用率大,可满足在许多信号检测应用场景中进行非均匀检测时,获取检验统计量的高实时性要求。

Description

一种并行广义内积重构控制器
技术领域
本发明属于非均匀检测技术领域,尤其涉及一种并行广义内积重构控制器。
背景技术
空时自适应处理(STAP)是一种对运动目标的检测技术。常规STAP算法中,必须进行杂波协方差矩阵估计。当利用二次数据进行杂波协方差矩阵的估计时,二次数据必须满足独立同分布的条件,才能减少性能损失。
在实际应用中,所检测到的信号回波不仅会被自然杂波污染,还会受到人为的非均匀干扰所污染,因此经常不满足独立同分布条件。
针对样本中的干扰目标,Melvin首先提出了非均匀检测器(NHD)的思想,通过剔除包含干扰目标的样本,来抑制其对杂波协方差矩阵估计的影响。NHD的基本思路为:根据被干扰目标污染的样本与其他样本统计特性的差异,设置相应的检验统计量来区分两种样本。
在NHD检验统计量选取方面,美国海军实验室Gerlach等人提出了广义内积(GIP)和自适应功率剩余两个准则。令XL表示初始样本中的第L个样本,则其对应的自相关矩阵表示为:其中T为杂噪协方差矩阵,令表示由L个样本组成的样本协方差矩阵,则每个样本对应的GIP值可表示为:根据每个样本对应的GIP值,可以有效剔除干扰目标。
广义内积非均匀检测方法对杂波的抑制能力与样本的数量大小有关,样本数量越大,杂波协方差矩阵数据越真实,其对杂波的抑制能力越强。软件上实现广义内积非均匀检测方法对大量样本进行计算时存在精度不高和运算时间过长的问题,以满足实际非均匀检测技术的高实时性要求。
发明内容
本发明的目的是克服上述背景技术中的不足,提出一种并行广义内积重构控制器,更好地满足实际应用的高实时性、大点数计算的需求,具体通过以下技术方案来实现的:
所述并行广义内积重构控制器包括:
中间结果计算模块,接收源数据并根据源数据计算中间结果向量YL,生成向量YL的地址,存入bank;每完成一个中间结果向量YL的计算生成一个完成信号,并将所述完成信号发送至最终结果计算模块,作为启动信号;
最终结果计算模块,通过地址生成器连续生成矩阵X的列XL元素的地址和相应中间结果向量YL元素的地址,读数据进入复数乘累加器得到结果矩阵Z1xN第L个元素ZL,生成向量ZL的地址,存入bank;
数据存储地址处理模块,根据乒乓操作选择信号进行数据选择,同时对来自中间结果计算模块和最终结果计算模块的针对同一个bank的信号进行处理,生成正确的bank地址信号。
所述并行广义内积运算的硬件实现方法的进一步设计在于,计算YL的过程是XL和方阵T,每一列乘累加的过程,所述方阵T的行列数与矩阵X的列数相等,该乘累加的过程通过多路并行计算实现。
所述并行广义内积运算的硬件实现方法的进一步设计在于,中间结果计算模块采用四路并行的实现方式实现。
所述并行广义内积运算的硬件实现方法的进一步设计在于,中间结果计算模块的源数据存储方式为:矩阵T按列存放在bank0-bank3中,存满之后继续按列存放于bank4-bank7中;矩阵X按列存放在bank8-bank11中。
所述并行广义内积运算的硬件实现方法的进一步设计在于,中间结果计算模块的中间结果存储方式为:奇数项存放到bank12中,偶数项存放到bank13中。
所述并行广义内积运算的硬件实现方法的进一步设计在于,中间结果计算模块进行中间结果计算的流程为:在一次运算过程中,首先地址生成器生成X的一列元素XL和四列T矩阵元素地址,同时搬运对应的矩阵元素数据,输入复数乘累加器得到中间结果YL;接着由地址生成器生成中间结果存储地址,将中间结果存入bank中。
所述并行广义内积运算的硬件实现方法的进一步设计在于,最终结果计算模块进行最终结果计算的流程为:当最终结果计算模块得到中间结果计算完成信号时,地址生成器连续生成矩阵X的列XL元素的地址和相应中间结果向量YL元素的地址;同时输入到复数乘累加器得到最终结果ZL,由地址生成器生成最终结果存储地址,将最终结果存入bank中。
所述并行广义内积运算的硬件实现方法的进一步设计在于,所述复数乘法器均为延迟4个时钟周期的流水单精度浮点运算单元,复数乘法器的访存延迟设定为6个周期。
所述并行广义内积运算的硬件实现方法的进一步设计在于,所述复数乘累加器为五个,其中四个用于四路并行计算中间结果,另一个用于同步计算最终结果。
所述并行广义内积运算的硬件实现方法的进一步设计在于,每个复数乘累加器由一个复数乘法器和三个复数加法器组成,在40nm CMOS工艺下DC综合的面积为19993.56μm2
本发明的优点
本发明提供的并行广义内积重构控制器采用计算一个中间结果后立即计算一个最终结果元素的策略,计算ZL-1的时间可以被隐藏于计算YL的时间内,计算时间少且存储资源利用率大。该并行广义内积重构控制器可满足在许多信号检测应用场景中进行非均匀检测时,获取检验统计量的高实时性要求。
附图说明
图1是并行广义内积重构控制器的架构示意图。
图2是并行广义内积数据存储示意图。
图3是并行广义内积算法计算流程示意图。
具体实施方式
下面结合附图和具体实现案例对本发明进行详细说明。
如图1,本实施例的并行广义内积重构控制器以四路并行为例,主要由由三个子模块组成,分别为:中间结果计算模块、最终结果计算模块以及数据存储地址处理模块。中间结果计算模块用于计算中间结果;最终结果计算模块计算最终结果;数据存储地址处理模块处理bank地址等相关信号。
中间结果计算模块,完全流水的计算中间结果向量YL,包括生成XL列元素地址,对XL一列元素与方阵TMxM每一列进行内积乘累加运算,得到中间结果向量YL,生成向量YL的地址,存入bank。每完成一个YL的计算给出一个完成信号给最终结果计算模块,作为它的一次计算的启动信号。
最终结果计算模块,通过地址生成器连续生成矩阵X的列XL元素的地址和相应中间结果向量YL元素的地址,读数据进入复数乘累加器得到结果矩阵Z1xN第L个元素ZL,生成向量ZL的地址,存入bank。
数据存储地址处理模块,根据乒乓操作选择信号进行数据选择,同时对来自中间结果计算模块和最终结果计算模块的针对同一个bank的信号进行处理,生成正确的bank地址等信号。
如图1,存储单元包括15个bank,其中矩阵T存放于bank0-7,矩阵X存放于bank8-11,中间结果YL存放到bank12和bank13中,最终的并行广义内积矩阵存储在bank14中。运算单元包括5个复数乘累加器,复数乘累加器0-3用于四路并行计算中间结果,复数乘累加器4用于同时计算最终结果。
如图2所示是并行广义内积数据存储示意图。其源数据存储方式为:矩阵T按列存放在bank0-bank3中,存满之后继续按列存放于bank4-bank7中;矩阵X按列存放在bank8-bank11中。如此存放便于计算中间结果YL时进行4路并行运算,也可以简化相应的DMA模块的设计;中间结果YL,Y1、Y3…等奇数项存放到bank12中(后者覆盖前者),Y2、Y4…等偶数项存放到bank13当中(后者覆盖前者)。最终的广义内积矩阵存储在bank14中。
如图3,并行广义内积算法进行中间结果计算的流程为:在一次运算过程中,首先地址生成器1生成X的一列元素XL和四列T矩阵元素地址,同时搬运对应的矩阵元素数据,输入复数乘累加器得到中间结果YL,然后由地址生成器2生成中间结果存储地址,将中间结果存入bank中。
同理,并行广义内积算法进行最终结果计算的流程为:在一次运算过程中,当该模块得到中间结果计算完成信号时,地址生成器1连续生成矩阵X的列XL元素的地址,和相应中间结果向量YL元素的地址。同时输入到复数乘累加器得到最终结果ZL,然后由地址生成器2生成最终结果存储地址,将最终结果存入bank中。
本发明所述并行广义内积算法硬件实现一次完整的计算包括如下步骤:
步骤1)置L=1,从矩阵X的第一列开始计算;
步骤2)计算中间结果YL
计算中间结果YL包括如下步骤:
步骤2-1)根据地址生成器子模块所生成的地址,依次取XL和(T1T2T3T4)的元素送入乘累加子模块进行复数乘累加运算,得到(YL1YL2YL3YL4);
步骤2-2)根据地址生成器子模块所生成的地址将(YL1YL2YL3YL4)顺序写入中间结果bank中,同时取下一组4列T矩阵元素和XL,重复1)和2),直到完成YL的计算;
步骤3)计算最终结果ZL。与1),2)同步进行,若已产生YL-1,根据地址生成器所生成的地址依次取XL-1和YL-1的元素进行复数乘累加,得到ZL-1,根据地址生成器所生成的地址将最终结果写入最终结果bank中;
步骤4)若L<N,L=L+1,跳转到步骤二,;
步骤5)依次取XN和YN的元素进行复数乘累加,得到ZN,存入bank中,完成内积运算。
本实施例的并行广义内积重构控制器中所用到的复数乘法器,复数加法器均为延迟4个时钟周期的流水单精度浮点运算单元,访存延迟为6个周期,采用EDA仿真/综合工具,工作主频达1GHz。
本实施例的并行广义内积重构控制器总计耗用五个复数乘累加器,其中四个用来四路并行计算中间结果,另一个用来同步计算最终结果。每个复数乘累加器由一个复数乘法器和三个复数加法器构成,在40nm CMOS工艺下DC综合的面积为19993.56μm2
本实施例的并行广义内积重构控制器采用计算一个中间结果后立即计算一个最终结果元素的策略,计算ZL-1的时间可以被隐藏于计算YL的时间内,相比于计算完整中间结果后并行计算最终结果的方法,计算时间少且存储资源利用率高。
本实施例的并行广义内积重构控制器的特点为计算速度快,点数灵活可变且存储资源利用率高。可以满足在数据量较大的数字信号处理,例如即时信号检测应用场景中进行非均匀检测时,获取检验统计量的高实时性要求。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或变换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。

Claims (10)

1.一种并行广义内积重构控制器,其特征在于:包括:
中间结果计算模块,接收源数据并根据源数据计算中间结果向量YL,生成向量YL的地址,存入bank;每完成一个中间结果向量YL的计算生成一个完成信号,并将所述完成信号发送至最终结果计算模块,作为启动信号;
最终结果计算模块,通过地址生成器连续生成矩阵X的列XL元素的地址和相应中间结果向量YL元素的地址,读数据进入复数乘累加器进行最终结果计算得到结果矩阵Z1xN第L个元素ZL,生成向量ZL的地址,存入bank;
数据存储地址处理模块,根据乒乓操作选择信号进行数据选择,同时对来自中间结果计算模块和最终结果计算模块的针对同一个bank的信号进行处理,生成正确的bank地址信号。
2.根据权利要求1所述的并行广义内积运算的硬件实现方法,其特征在于:计算YL的过程是XL和方阵T,每一列乘累加的过程,所述方阵T的行列数与矩阵X的列数相等,该乘累加的过程通过多路并行计算实现。
3.根据权利要求2所述的并行广义内积重构控制器,其特征在于:中间结果计算模块采用四路并行的实现方式实现。
4.根据权利要求3所述的并行广义内积重构控制器,其特征在于:中间结果计算模块的源数据存储方式为:矩阵T按列存放在bank0-bank3中,存满之后继续按列存放于bank4-bank7中;矩阵X按列存放在bank8-bank11中。
5.根据权利要求3所述的并行广义内积重构控制器,其特征在于:中间结果计算模块的中间结果存储方式为:奇数项存放到bank12中,偶数项存放到bank13中。
6.根据权利要求1所述的并行广义内积重构控制器,其特征在于:中间结果计算模块进行中间结果计算的流程为:在一次运算过程中,首先地址生成器生成X的一列元素XL和四列T矩阵元素地址,同时搬运对应的矩阵元素数据,输入复数乘累加器得到中间结果YL;接着由地址生成器生成中间结果存储地址,将中间结果存入bank中。
7.根据权利要求1所述的并行广义内积重构控制器,其特征在于:最终结果计算模块进行最终结果计算的流程为:当最终结果计算模块得到中间结果计算完成信号时,地址生成器连续生成矩阵X的列XL元素的地址和相应中间结果向量YL元素的地址;同时输入到复数乘累加器得到最终结果ZL,由地址生成器生成最终结果存储地址,将最终结果存入bank中。
8.根据权利要求1所述的并行广义内积重构控制器,其特征在于:所述复数乘法器均为延迟4个时钟周期的流水单精度浮点运算单元,复数乘法器的访存延迟设定为6个周期。
9.根据权利要求1所述的并行广义内积重构控制器,其特征在于:所述复数乘累加器为五个,其中四个用于四路并行计算中间结果,另一个用于同步计算最终结果。
10.根据权利要求1所述的并行广义内积重构控制器,其特征在于:每个复数乘累加器由一个复数乘法器和三个复数加法器组成,在40nm CMOS工艺下DC综合的面积为19993.56μm2
CN201810497969.2A 2018-05-21 2018-05-21 一种并行广义内积重构控制器 Active CN108762719B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810497969.2A CN108762719B (zh) 2018-05-21 2018-05-21 一种并行广义内积重构控制器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810497969.2A CN108762719B (zh) 2018-05-21 2018-05-21 一种并行广义内积重构控制器

Publications (2)

Publication Number Publication Date
CN108762719A true CN108762719A (zh) 2018-11-06
CN108762719B CN108762719B (zh) 2023-06-06

Family

ID=64004919

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810497969.2A Active CN108762719B (zh) 2018-05-21 2018-05-21 一种并行广义内积重构控制器

Country Status (1)

Country Link
CN (1) CN108762719B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110796193A (zh) * 2019-10-29 2020-02-14 南京宁麒智能计算芯片研究院有限公司 一种基于可重构方式的knn算法的硬件实现***和方法
CN110795687A (zh) * 2019-10-29 2020-02-14 南京宁麒智能计算芯片研究院有限公司 一种自相关算法的层次化分割***及方法
CN111045965A (zh) * 2019-10-25 2020-04-21 南京大学 一种多通道无冲突拆分的硬件实现方法及运行该方法的计算机设备与可读存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5276902A (en) * 1988-11-07 1994-01-04 Fujitsu Limited Memory access system for vector data processed or to be processed by a vector processor
CN104794002A (zh) * 2014-12-29 2015-07-22 南京大学 一种基于特定资源的多路并行划分方法及其硬件架构
CN106855618A (zh) * 2017-03-06 2017-06-16 西安电子科技大学 基于广义内积任意阵列下的干扰样本剔除方法
CN106940815A (zh) * 2017-02-13 2017-07-11 西安交通大学 一种可编程卷积神经网络协处理器ip核

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5276902A (en) * 1988-11-07 1994-01-04 Fujitsu Limited Memory access system for vector data processed or to be processed by a vector processor
CN104794002A (zh) * 2014-12-29 2015-07-22 南京大学 一种基于特定资源的多路并行划分方法及其硬件架构
CN106940815A (zh) * 2017-02-13 2017-07-11 西安交通大学 一种可编程卷积神经网络协处理器ip核
CN106855618A (zh) * 2017-03-06 2017-06-16 西安电子科技大学 基于广义内积任意阵列下的干扰样本剔除方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
张多利等: "二维高精度MUSIC算法的高速实现", 《合肥工业大学学报(自然科学版)》 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111045965A (zh) * 2019-10-25 2020-04-21 南京大学 一种多通道无冲突拆分的硬件实现方法及运行该方法的计算机设备与可读存储介质
CN110796193A (zh) * 2019-10-29 2020-02-14 南京宁麒智能计算芯片研究院有限公司 一种基于可重构方式的knn算法的硬件实现***和方法
CN110795687A (zh) * 2019-10-29 2020-02-14 南京宁麒智能计算芯片研究院有限公司 一种自相关算法的层次化分割***及方法

Also Published As

Publication number Publication date
CN108762719B (zh) 2023-06-06

Similar Documents

Publication Publication Date Title
Su et al. Neural network based reinforcement learning acceleration on fpga platforms
CN103543984B (zh) 用于特殊相关应用的修改型平衡吞吐量数据路径架构
CN108762719A (zh) 一种并行广义内积重构控制器
CN106445471A (zh) 处理器和用于在处理器上执行矩阵乘运算的方法
US8543633B2 (en) Modified Gram-Schmidt core implemented in a single field programmable gate array architecture
KR20180123846A (ko) 합성곱 신경망을 위한 논리적 3차원 구조의 재구성형 연산 가속기
CN102135951B (zh) 基于运行时重构的ls-svm算法fpga实现方法
KR20190073535A (ko) 특수 목적 연산 유닛을 사용한 하드웨어 이중 버퍼링
JP7435602B2 (ja) 演算装置および演算システム
US4769779A (en) Systolic complex multiplier
CN101847137B (zh) 一种实现基2fft计算的fft处理器
CN102945224A (zh) 基于fpga的高速可变点fft处理器及其处理方法
CN108710505A (zh) 一种基于fpga的可扩展稀疏矩阵向量乘处理器
CN109993293A (zh) 一种适用于堆叠式沙漏网络的深度学习加速器
CN106415526A (zh) Fft处理器及运算方法
CN103543983B (zh) 用于提高平衡吞吐量数据路径架构上的fir操作性能的新颖数据访问方法
CN104572588B (zh) 矩阵求逆处理方法和装置
CN109446478A (zh) 一种基于迭代和可重构方式的复协方差矩阵计算***
CN112424745B (zh) 在mac电路中使用不同核对一组数据执行连续mac运算
Singhal et al. Efficient parallel architecture for fixed-coefficient and variable-coefficient FIR filters using distributed arithmetic
EP0536242A1 (en) A number theory mapping generator for addressing matrix structures
Sotiropoulos et al. A fast parallel matrix multiplication reconfigurable unit utilized in face recognitions systems
EP0888586B1 (en) Array indexing
CN104598199B (zh) 一种用于智能卡的Montgomery模乘器的数据处理方法及***
CN203241983U (zh) 用于执行信号处理操作的装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant