CN111061675A - 一种系统传递函数辨识算法的硬件实现方法及运行该方法的计算机设备与可读存储介质 - Google Patents

一种系统传递函数辨识算法的硬件实现方法及运行该方法的计算机设备与可读存储介质 Download PDF

Info

Publication number
CN111061675A
CN111061675A CN201911045111.3A CN201911045111A CN111061675A CN 111061675 A CN111061675 A CN 111061675A CN 201911045111 A CN201911045111 A CN 201911045111A CN 111061675 A CN111061675 A CN 111061675A
Authority
CN
China
Prior art keywords
matrix
calculation
bank
adder
module
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
Application number
CN201911045111.3A
Other languages
English (en)
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 CN201911045111.3A priority Critical patent/CN111061675A/zh
Publication of CN111061675A publication Critical patent/CN111061675A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/16Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Analysis (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Algebra (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • Complex Calculations (AREA)

Abstract

本发明涉及一种系统传递函数辨识算法的硬件实现方法及运行该方法的计算机设备与可读存储介质,该实现架构包括:总控制模块,可重构控制模块,计算阵列模块,存储资源模块;所述的总控制模块可控制整个计算流程,包括子算法执行顺序、参数配置等;所述的可重构控制模块包括所有子算法控制模块,可用于控制不同阶段下的数据传输、重构模式等;所述的计算阵列模块由一系列运算单元组成,包括乘法器、加法器、除法器;所述的存储资源模块包含一系列存储单元。与传统的方法相比,本发明充分利用硬件的并行性以及资源的重用,可加快系统传递函数辨识算法的迭代速度。

Description

一种系统传递函数辨识算法的硬件实现方法及运行该方法的 计算机设备与可读存储介质
技术领域
本发明属于数字信号处理算法的硬件实现领域,尤其涉及一种系统传递函数辨识算法的硬件实现方法及运行该方法的计算机设备与可读存储介质。
背景技术
系统传递函数是系统自动控制的重要条件,能够准确确定系统传递函数可以加速系统调节速度,及时调整系统参数。
传递函数是指一个线性系统输入与输出之间的关系,一般定义为输出与输入的拉普拉斯变化之比,它是体现一个系统的重要表征量,是系统的固有属性。通常整个系统的传递函数可以根据各个子系统的传递函数和他们之间的连接关系得到。其意义在于我们可以通过分析系统的动态特性、稳定性来控制自动控制系统运行。
在伺服系统中,控制芯片主要有三种:微控制器、数字信号处理器、现场可编程门阵列。该算法常常由软件实现,速度较慢,延时太长,无法充分利用硬件的并行性以及资源的重用。
发明内容
发明目的:一个目的是提供一种系统传递函数辨识算法的硬件实现方法,以克服背景技术中软件实现系统传递函数辨识算法的不足。进一步目的是提供一种可运行上述方法的计算机设备以及可被该计算机设备读取的存储介质。
技术方案:一种系统传递函数辨识算法的硬件实现方法,包括以下步骤:
步骤1、总控制模块控制子算法执行顺序、参数配置等计算流程;
步骤2、可重构控制模块控制不同阶段下的数据传输、重构模式;
步骤3、计算阵列模块利用乘法器、加法器、除法器运行预设的运算内容;
步骤4、存储资源模块利用预定数量的存储单元根据不同计算阶段的特征选择不同存储体,以写入或读取数据。
在进一步的实施例中,所述步骤1进一步包括:
步骤1-1、所述总控制模块利用存储资源模块选通器,以根据不同计算阶段的特征选通对应存储体,以写入或读取数据;
步骤1-2、利用计算资源选通器,以根据不同计算阶段的特征选通不同计算资源,将源数据传输入计算单元进行计算或将结果数据取出;
步骤1-3、利用总控制状态机,以根据参数配置的情况和各个子计算阶段的开始结束信号,控制整个计算的流程。
在进一步的实施例中,所述总控制状态机的运行包括以下步骤:
步骤1-31、总控制状态机接收复位信号,跳转到IDLE状态;
步骤1-32、总控制状态机接收开始信号,开始信号拉高使得总控制状态机跳转到START状态,此时进入计算准备阶段;
步骤1-33、生成矩阵元素STEP1:从bank中取出源数据P、源数据Q、源数据D、以及源数据W,依次存入bank中形成中间值,此时源数据P对应于
Figure DEST_PATH_IMAGE001
,源数据Q对应于
Figure 648810DEST_PATH_IMAGE002
,源数据D对应于
Figure DEST_PATH_IMAGE003
,源数据W对应于
Figure 3961DEST_PATH_IMAGE004
输出计算结果
Figure DEST_PATH_IMAGE005
Figure 662475DEST_PATH_IMAGE006
Figure DEST_PATH_IMAGE007
步骤1-34、生成矩阵元素STEP2:从bank中取出步骤1-33生成的中间值,将中间值
Figure 499981DEST_PATH_IMAGE008
存入bank;输入计算结果
Figure DEST_PATH_IMAGE009
Figure 738196DEST_PATH_IMAGE010
Figure DEST_PATH_IMAGE011
步骤1-35、生成矩阵元素STEP3:从bank中取出步骤1-33生成的中间值
Figure 148186DEST_PATH_IMAGE001
Figure 915285DEST_PATH_IMAGE002
Figure 771246DEST_PATH_IMAGE003
Figure 609889DEST_PATH_IMAGE004
和步骤1-35的中间值
Figure 724651DEST_PATH_IMAGE008
,将中间值
Figure 990548DEST_PATH_IMAGE012
存入bank;输入计算结果
Figure DEST_PATH_IMAGE013
Figure 537067DEST_PATH_IMAGE014
Figure DEST_PATH_IMAGE015
步骤1-36、生成矩阵元素STEP4:从bank中取出中间值
Figure 117084DEST_PATH_IMAGE002
Figure 862186DEST_PATH_IMAGE008
Figure 298983DEST_PATH_IMAGE003
Figure 362492DEST_PATH_IMAGE012
,将中间值
Figure 542938DEST_PATH_IMAGE016
Figure DEST_PATH_IMAGE017
存入bank;输入计算结果
Figure 345808DEST_PATH_IMAGE018
Figure DEST_PATH_IMAGE019
Figure 422349DEST_PATH_IMAGE020
步骤1-37、将最终STEP4生成的矩阵元素存入bank0,判断结束信号是否有效,有效则跳转到break状态,输出最终结果。
在进一步的实施例中,所述步骤3进一步包括:
步骤3-1、将生成的矩阵元素
Figure DEST_PATH_IMAGE021
Figure 913766DEST_PATH_IMAGE022
Figure DEST_PATH_IMAGE023
Figure 366745DEST_PATH_IMAGE024
Figure DEST_PATH_IMAGE025
Figure 289701DEST_PATH_IMAGE026
Figure DEST_PATH_IMAGE027
Figure 537143DEST_PATH_IMAGE028
Figure DEST_PATH_IMAGE029
Figure 512927DEST_PATH_IMAGE030
Figure DEST_PATH_IMAGE031
Figure 504017DEST_PATH_IMAGE032
放置为六阶矩阵,存放在bank3、bank4、bank5、bank6中:
扩展如下:
Figure 812638DEST_PATH_IMAGE034
同时生成向量V,将向量V放入bank12以后的任意一个bank中,该矩阵向量的大小与矩阵阶数相等;
步骤3-2、对L矩阵和U矩阵求逆:
Figure 762140DEST_PATH_IMAGE036
式中,矩阵L由矩阵U转置得出,故
Figure DEST_PATH_IMAGE037
Figure 257843DEST_PATH_IMAGE038
表示对矩阵L求逆,
Figure DEST_PATH_IMAGE039
表示将L的逆矩阵再次转置得出U的逆矩阵;
其中,矩阵
Figure 757351DEST_PATH_IMAGE040
矩阵
Figure DEST_PATH_IMAGE041
将矩阵S表示为三阶下三角矩阵:
Figure 654900DEST_PATH_IMAGE042
步骤3-3、采用至少一个乘法器和至少三个加法器对该三阶下三角矩阵硬解:乘法器的输出端接入加法器的输入端,第一个加法器的结果反馈至第二个加法器的输入端,由第二加法器的结果输出至第三加法器,最终的结果反馈至第二个加法器输出。
在进一步的实施例中,存储资源模块将源数据
Figure DEST_PATH_IMAGE043
Figure 244144DEST_PATH_IMAGE001
Figure 492723DEST_PATH_IMAGE002
Figure 855309DEST_PATH_IMAGE004
分别存储在bank4、bank5、bank6、bank7中;将
Figure 138523DEST_PATH_IMAGE005
Figure 164247DEST_PATH_IMAGE006
Figure 900122DEST_PATH_IMAGE007
的结果存储在bank0中;将
Figure 833443DEST_PATH_IMAGE010
Figure 971163DEST_PATH_IMAGE014
的结果存储在bank1中;将
Figure 433369DEST_PATH_IMAGE011
Figure 656540DEST_PATH_IMAGE019
Figure 629437DEST_PATH_IMAGE015
Figure 621664DEST_PATH_IMAGE020
存储在bank2中;将
Figure 254771DEST_PATH_IMAGE044
Figure 965238DEST_PATH_IMAGE018
的结果存储在bank3中。
一种系统传递函数辨识算法的硬件实现方法,其特征在于包括以下模块:
用于控制整个计算流程的总控制模块;
用于控制不同阶段下数据传输、重构模式的可重构控制模块;
采用一系列运算单元实现运算功能的计算阵列模块;
采用一系列存储单元实现存储功能的存储资源模块。
在进一步的实施例中,所述总控制模块进一步包括存储资源模块选通器,计算资源选通器与总控制状态机;存储资源模块选通器根据不同计算阶段的特征选通不同存储体,以写入或读取数据;计算资源选通器根据不同计算阶段的特征选通不同计算资源,将源数据传输入计算单元进行计算或将结果数据取出;总控制状态机可根据参数配置的情况和各个子计算阶段的开始结束信号,控制整个计算流程;
所述的计算流程包括矩阵元素的生成、矩阵的扩展、矩阵求逆、矩阵向量乘法、矩阵行变换、拉普拉斯频率响应滤波,此为一个迭代次数内的情况,当迭代次数大于1时,将计算更新后的目标向量作为第二次迭代的输入继续进行计算;
所述可重构控制模块包括各个子算法的控制模块,如矩阵求逆、矩阵向量乘法等;各个子算法的控制模块根据配置信息控制计算开始与结束信号,以及数据在存储和计算阵列之间的传输。
在进一步的实施例中,所述计算阵列模块包括乘法器、加法器、除法器,所述计算阵列模块进一步将生成的矩阵元素
Figure 974782DEST_PATH_IMAGE021
Figure 87094DEST_PATH_IMAGE022
Figure 156682DEST_PATH_IMAGE023
Figure 88866DEST_PATH_IMAGE024
Figure 10423DEST_PATH_IMAGE025
Figure 977242DEST_PATH_IMAGE026
Figure 809543DEST_PATH_IMAGE027
Figure 229023DEST_PATH_IMAGE028
Figure 580369DEST_PATH_IMAGE029
Figure 401695DEST_PATH_IMAGE030
Figure 813085DEST_PATH_IMAGE031
Figure 218396DEST_PATH_IMAGE032
放置为六阶矩阵,存放在bank3、bank4、bank5、bank6中:
扩展如下:
Figure 373434DEST_PATH_IMAGE034
同时生成向量V,将向量V放入bank12以后的任意一个bank中,该矩阵向量的大小与矩阵阶数相等;
对L矩阵和U矩阵求逆:
Figure 49266DEST_PATH_IMAGE036
式中,矩阵L由矩阵U转置得出,故
Figure 631557DEST_PATH_IMAGE037
Figure 25629DEST_PATH_IMAGE038
表示对矩阵L求逆,
Figure 984358DEST_PATH_IMAGE039
表示将L的逆矩阵再次转置得出U的逆矩阵;
其中,矩阵
Figure 780276DEST_PATH_IMAGE040
矩阵
Figure 267889DEST_PATH_IMAGE041
将矩阵S表示为三阶下三角矩阵:
Figure 149257DEST_PATH_IMAGE042
采用至少一个乘法器和至少三个加法器对该三阶下三角矩阵硬解:乘法器的输出端接入加法器的输入端,第一个加法器的结果反馈至第二个加法器的输入端,由第二加法器的结果输出至第三加法器,最终的结果反馈至第二个加法器输出。
一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,该计算机程序存储在一种计算机可读存储介质上,计算机设备通过运行该可读存储介质,由处理器执行计算机程序,进而实现以下步骤:
步骤1、总控制模块控制子算法执行顺序、参数配置等计算流程:
所述总控制模块利用存储资源模块选通器,以根据不同计算阶段的特征选通对应存储体,以写入或读取数据;
利用计算资源选通器,以根据不同计算阶段的特征选通不同计算资源,将源数据传输入计算单元进行计算或将结果数据取出;
利用总控制状态机,以根据参数配置的情况和各个子计算阶段的开始结束信号,控制整个计算的流程。
总控制状态机接收复位信号,跳转到IDLE状态;
总控制状态机接收开始信号,开始信号拉高使得总控制状态机跳转到START状态,此时进入计算准备阶段;
生成矩阵元素STEP1:从bank中取出源数据P、源数据Q、源数据D、以及源数据W,依次存入bank中形成中间值,此时源数据P对应于
Figure 147562DEST_PATH_IMAGE001
,源数据Q对应于
Figure 797986DEST_PATH_IMAGE002
,源数据D对应于
Figure 722080DEST_PATH_IMAGE003
,源数据W对应于
Figure 825165DEST_PATH_IMAGE004
输出计算结果
Figure 860117DEST_PATH_IMAGE005
Figure 896207DEST_PATH_IMAGE006
Figure 991202DEST_PATH_IMAGE007
生成矩阵元素STEP2:从bank中取出步骤1-33生成的中间值,将中间值
Figure 581583DEST_PATH_IMAGE008
存入bank;输入计算结果
Figure 918761DEST_PATH_IMAGE009
Figure 543777DEST_PATH_IMAGE010
Figure 75253DEST_PATH_IMAGE011
生成矩阵元素STEP3:从bank中取出步骤1-33生成的中间值
Figure 887351DEST_PATH_IMAGE001
Figure 529685DEST_PATH_IMAGE002
Figure 9208DEST_PATH_IMAGE003
Figure 446005DEST_PATH_IMAGE004
和步骤1-35的中间值
Figure 10979DEST_PATH_IMAGE008
,将中间值
Figure 191425DEST_PATH_IMAGE012
存入bank;输入计算结果
Figure 26919DEST_PATH_IMAGE013
Figure 900197DEST_PATH_IMAGE014
Figure 890150DEST_PATH_IMAGE015
生成矩阵元素STEP4:从bank中取出中间值
Figure 874286DEST_PATH_IMAGE002
Figure 62822DEST_PATH_IMAGE008
Figure 841422DEST_PATH_IMAGE003
Figure 879523DEST_PATH_IMAGE012
,将中间值
Figure 401771DEST_PATH_IMAGE016
Figure 710393DEST_PATH_IMAGE017
存入bank;输入计算结果
Figure 925474DEST_PATH_IMAGE018
Figure 952335DEST_PATH_IMAGE019
Figure 12695DEST_PATH_IMAGE020
将最终STEP4生成的矩阵元素存入bank0,判断结束信号是否有效,有效则跳转到break状态,输出最终结果。
步骤2、可重构控制模块控制不同阶段下的数据传输、重构模式;
步骤3、计算阵列模块利用乘法器、加法器、除法器运行预设的运算内容:
将生成的矩阵元素
Figure 175823DEST_PATH_IMAGE021
Figure 561805DEST_PATH_IMAGE022
Figure 810384DEST_PATH_IMAGE023
Figure 175900DEST_PATH_IMAGE024
Figure 459114DEST_PATH_IMAGE025
Figure 750418DEST_PATH_IMAGE026
Figure 751872DEST_PATH_IMAGE027
Figure 419613DEST_PATH_IMAGE028
Figure 557334DEST_PATH_IMAGE029
Figure 19539DEST_PATH_IMAGE030
Figure 242710DEST_PATH_IMAGE031
Figure 947098DEST_PATH_IMAGE032
放置为六阶矩阵,存放在bank3、bank4、bank5、bank6中:
扩展如下:
Figure DEST_PATH_IMAGE045
同时生成向量V,将向量V放入bank12以后的任意一个bank中,该矩阵向量的大小与矩阵阶数相等;
对L矩阵和U矩阵求逆:
Figure 408167DEST_PATH_IMAGE036
式中,矩阵L由矩阵U转置得出,故
Figure 306853DEST_PATH_IMAGE037
Figure 17320DEST_PATH_IMAGE038
表示对矩阵L求逆,
Figure 761285DEST_PATH_IMAGE039
表示将L的逆矩阵再次转置得出U的逆矩阵;
其中,矩阵
Figure 873597DEST_PATH_IMAGE040
矩阵
Figure 677605DEST_PATH_IMAGE041
将矩阵S表示为三阶下三角矩阵:
Figure 140948DEST_PATH_IMAGE042
采用至少一个乘法器和至少三个加法器对该三阶下三角矩阵硬解:乘法器的输出端接入加法器的输入端,第一个加法器的结果反馈至第二个加法器的输入端,由第二加法器的结果输出至第三加法器,最终的结果反馈至第二个加法器输出。
步骤4、存储资源模块利用预定数量的存储单元根据不同计算阶段的特征选择不同存储体,以写入或读取数据。
存储资源模块将源数据
Figure 912771DEST_PATH_IMAGE043
Figure 145169DEST_PATH_IMAGE001
Figure 385657DEST_PATH_IMAGE002
Figure 805137DEST_PATH_IMAGE004
分别存储在bank4、bank5、bank6、bank7中;将
Figure 156484DEST_PATH_IMAGE005
Figure 977810DEST_PATH_IMAGE006
Figure 389199DEST_PATH_IMAGE007
的结果存储在bank0中;将
Figure 561555DEST_PATH_IMAGE010
Figure 683969DEST_PATH_IMAGE014
的结果存储在bank1中;将
Figure 890960DEST_PATH_IMAGE011
Figure 473251DEST_PATH_IMAGE019
Figure 867323DEST_PATH_IMAGE015
Figure 560472DEST_PATH_IMAGE020
存储在bank2中;将
Figure 90811DEST_PATH_IMAGE044
Figure 844003DEST_PATH_IMAGE018
的结果存储在bank3中。
有益效果:本发明将系统传递函数辨识功能集成到硬件中实现,通过设置总控制模块,可重构控制模块,计算阵列模块,存储资源模块,由总控制模块控制整个计算流程;由可重构控制模块控制不同阶段下的数据传输、重构模式;由计算阵列模块对矩阵元素的生成、矩阵的扩展、矩阵求逆、矩阵向量乘法、矩阵行变换、拉普拉斯频率响应滤波进行计算和硬解;由存储资源模块存储相应的源数据到对应的bank中。本发明的阶数可配置,通过并行计算和数据重用提高计算速度,具有更高的灵活性。
附图说明
图1为本发明的整体模块示意图。
图2为本发明的设计流程图。
图3为本发明中总控制模块的状态转移图。
具体实施方式
申请人认为,在现有的伺服系统中,通常由软件实现相应的算法,即软解。然而,这种软解方式耗时较长,计算同样规模的运算量需要消耗更多资源。
为解决现有技术存在的问题,本发明提出一种硬件实现方法,支持阶数可配置,并行计算和数据重用,提高计算速度。下面结合附图和具体实施案例对本发明进行详细说明:
如图1所示,本实施例的系统传递函数辨识算法的硬件实现方法包括总控制模块,可重构控制模块,计算阵列模块,存储资源模块;所述的总控制模块可控制整个计算流程,包括子算法执行顺序等;所述的可重构控制模块包括所有子算法控制模块,可用于控制不同阶段下的数据传输、重构模式、阶数的确定等;所述的计算阵列模块由一系列运算单元组成,包括9个乘法器、11个加法器、3个除法器;所述的存储资源模块包含17个深度为1k,宽度为32的子存储体。
总控制模块包括存储资源模块选通器,计算资源选通器与总控制状态机;存储资源选通器可根据不同计算阶段的特征选通不同存储体,以写入或读取数据;计算资源选通器可根据不同计算阶段的特征选通不同计算资源,将源数据传输入计算单元进行计算或将结果数据取出;总控制状态机可根据参数配置的情况和各个子计算阶段的开始结束信号,控制整个计算的流程。
可重构控制模块包括各个子算法的控制模块,各个子算法的控制模块根据配置信息控制计算开始与结束信号,以及数据在存储和计算阵列之间的传输。其中矩阵元素生成阶段需完成多次数据更新,参数配置为三阶时需完成四次更新,五阶时需完成七次更新。矩阵求逆阶段分为四个子计算阶段,包括LU分解、矩阵转置、三角矩阵求逆、矩阵乘法。
以矩阵元素生成第一次更新为例,它包括以下几个子模块:源数据读地址产生、结果数据写地址产生、控制模块、以及累加控制模块。源数据读地址模块可根据参数配置情况,生成所需从存储模块中读取的数据的地址,以及使能信号和读信号;结果数据写地址产生模块可根据参数配置情况,生成所需从存储模块中写入结果数据的地址,以及使能信号和写信号;控制模块控制整个子计算阶段的开始和结束;累加控制模块可将计算资源中的加法器重构为累加器,对读取的数据进行累加操作。
所述总控制模块利用存储资源模块选通器,以根据不同计算阶段的特征选通对应存储体,以写入或读取数据;利用计算资源选通器,以根据不同计算阶段的特征选通不同计算资源,将源数据传输入计算单元进行计算或将结果数据取出;利用总控制状态机,以根据参数配置的情况和各个子计算阶段的开始结束信号,控制整个计算的流程。
计算的流程如下:总控制状态机接收复位信号,跳转到IDLE状态。总控制状态机接收开始信号,开始信号拉高使得总控制状态机跳转到START状态,此时进入计算准备阶段。接着生成矩阵元素STEP1:从bank中取出源数据P、源数据Q、源数据D、以及源数据W,依次存入bank中形成中间值,此时源数据P对应于
Figure 725372DEST_PATH_IMAGE001
,源数据Q对应于
Figure 487791DEST_PATH_IMAGE002
,源数据D对应于
Figure 374101DEST_PATH_IMAGE003
,源数据W对应于
Figure 32616DEST_PATH_IMAGE004
。并输出计算结果
Figure 401280DEST_PATH_IMAGE005
Figure 436232DEST_PATH_IMAGE006
Figure 472321DEST_PATH_IMAGE007
;生成矩阵元素STEP2:从bank中取出步骤1-33生成的中间值,将中间值
Figure 472376DEST_PATH_IMAGE008
存入bank;输入计算结果
Figure 593916DEST_PATH_IMAGE009
Figure 432559DEST_PATH_IMAGE010
Figure 791996DEST_PATH_IMAGE011
;生成矩阵元素STEP3:从bank中取出步骤1-33生成的中间值
Figure 57892DEST_PATH_IMAGE001
Figure 135570DEST_PATH_IMAGE002
Figure 777904DEST_PATH_IMAGE003
Figure 257426DEST_PATH_IMAGE004
和步骤1-35的中间值
Figure 694224DEST_PATH_IMAGE008
,将中间值
Figure 495083DEST_PATH_IMAGE012
存入bank;输入计算结果
Figure 675529DEST_PATH_IMAGE013
Figure 743979DEST_PATH_IMAGE014
Figure 86099DEST_PATH_IMAGE015
;生成矩阵元素STEP4:从bank中取出中间值
Figure 872789DEST_PATH_IMAGE002
Figure 824302DEST_PATH_IMAGE008
Figure 747259DEST_PATH_IMAGE003
Figure 260280DEST_PATH_IMAGE012
,将中间值
Figure 799846DEST_PATH_IMAGE016
Figure 322094DEST_PATH_IMAGE017
存入bank;输入计算结果
Figure 630715DEST_PATH_IMAGE018
Figure 550523DEST_PATH_IMAGE019
Figure 311806DEST_PATH_IMAGE020
;将最终STEP4生成的矩阵元素存入bank0,判断结束信号是否有效,有效则跳转到break状态,输出最终结果。
如图2所示,该发明的设计流程:矩阵元素的生成、矩阵的扩展、矩阵求逆、矩阵向量乘法、矩阵行变换、拉普拉斯频率响应滤波,此为一个迭代次数内的情况,当迭代次数大于1时,将计算更新后的目标向量作为第二次迭代的输入继续进行计算。当达到迭代设定目标次数时,输出辨识结果。
更为具体的,将生成的矩阵元素
Figure 637745DEST_PATH_IMAGE021
Figure 800873DEST_PATH_IMAGE022
Figure 921276DEST_PATH_IMAGE023
Figure 169854DEST_PATH_IMAGE024
Figure 33905DEST_PATH_IMAGE025
Figure 284496DEST_PATH_IMAGE026
Figure 575800DEST_PATH_IMAGE027
Figure 46095DEST_PATH_IMAGE028
Figure 448258DEST_PATH_IMAGE029
Figure 54820DEST_PATH_IMAGE030
Figure 30209DEST_PATH_IMAGE031
Figure 253380DEST_PATH_IMAGE032
放置为六阶矩阵,存放在bank3、bank4、bank5、bank6中:
扩展如下:
Figure 193654DEST_PATH_IMAGE045
同时生成向量V,将向量V放入bank12以后的任意一个bank中,该矩阵向量的大小与矩阵阶数相等;
对L矩阵和U矩阵求逆:
Figure 185881DEST_PATH_IMAGE036
式中,矩阵L由矩阵U转置得出,故
Figure 84566DEST_PATH_IMAGE037
Figure 263875DEST_PATH_IMAGE038
表示对矩阵L求逆,
Figure 273419DEST_PATH_IMAGE039
表示将L的逆矩阵再次转置得出U的逆矩阵;
其中,矩阵
Figure 618688DEST_PATH_IMAGE040
矩阵
Figure 157117DEST_PATH_IMAGE041
将矩阵S表示为三阶下三角矩阵:
Figure 89300DEST_PATH_IMAGE042
采用至少一个乘法器和至少三个加法器对该三阶下三角矩阵硬解:乘法器的输出端接入加法器的输入端,第一个加法器的结果反馈至第二个加法器的输入端,由第二加法器的结果输出至第三加法器,最终的结果反馈至第二个加法器输出。
其中,存储资源模块将源数据
Figure 371377DEST_PATH_IMAGE043
Figure 338196DEST_PATH_IMAGE001
Figure 313105DEST_PATH_IMAGE002
Figure 234050DEST_PATH_IMAGE004
分别存储在bank4、bank5、bank6、bank7中;将
Figure 585397DEST_PATH_IMAGE005
Figure 406723DEST_PATH_IMAGE006
Figure 552533DEST_PATH_IMAGE007
的结果存储在bank0中;将
Figure 459309DEST_PATH_IMAGE010
Figure 348768DEST_PATH_IMAGE014
的结果存储在bank1中;将
Figure 24600DEST_PATH_IMAGE011
Figure 839847DEST_PATH_IMAGE019
Figure 233919DEST_PATH_IMAGE015
Figure 927069DEST_PATH_IMAGE020
存储在bank2中;将
Figure 457407DEST_PATH_IMAGE044
Figure 210600DEST_PATH_IMAGE018
的结果存储在bank3中。
图3描述了主控制模块中的状态转移,每一个状态的跳转条件都是下一个算法的开始信号,遇到复位信号时,跳转到IDLE状态。判断最后一个子算法模块的结束信号是否经过了目标次数,若到达,跳转到BREAK状态,完成迭代,输出最后结果,结束计算;若不到,跳转到START状态。
如上所述,尽管参照特定的优选实施例已经表示和表述了本发明,但其不得解释为对本发明自身的限制。在不脱离所附权利要求定义的本发明的精神和范围前提下,可对其在形式上和细节上做出各种变化。

Claims (9)

1.一种系统传递函数辨识算法的硬件实现方法,其特征是包括以下步骤:
步骤1、总控制模块控制子算法执行顺序、参数配置等计算流程;
步骤2、可重构控制模块控制不同阶段下的数据传输、重构模式;
步骤3、计算阵列模块利用乘法器、加法器、除法器运行预设的运算内容;
步骤4、存储资源模块利用预定数量的存储单元根据不同计算阶段的特征选择不同存储体,以写入或读取数据。
2.根据权利要求1所述的系统传递函数辨识算法的硬件实现方法,其特征在于,所述步骤1进一步包括:
步骤1-1、所述总控制模块利用存储资源模块选通器,以根据不同计算阶段的特征选通对应存储体,以写入或读取数据;
步骤1-2、利用计算资源选通器,以根据不同计算阶段的特征选通不同计算资源,将源数据传输入计算单元进行计算或将结果数据取出;
步骤1-3、利用总控制状态机,以根据参数配置的情况和各个子计算阶段的开始结束信号,控制整个计算的流程。
3.根据权利要求2所述的系统传递函数辨识算法的硬件实现方法,其特征在于,所述总控制状态机的运行包括以下步骤:
步骤1-31、总控制状态机接收复位信号,跳转到IDLE状态;
步骤1-32、总控制状态机接收开始信号,开始信号拉高使得总控制状态机跳转到START状态,此时进入计算准备阶段;
步骤1-33、生成矩阵元素STEP1:从bank中取出源数据P、源数据Q、源数据D、以及源数据W,依次存入bank中形成中间值,此时源数据P对应于
Figure 294058DEST_PATH_IMAGE001
,源数据Q对应于
Figure 841714DEST_PATH_IMAGE002
,源数据D对应于
Figure 808533DEST_PATH_IMAGE003
,源数据W对应于
Figure 517863DEST_PATH_IMAGE004
输出计算结果
Figure 202922DEST_PATH_IMAGE005
Figure 554269DEST_PATH_IMAGE006
Figure 375595DEST_PATH_IMAGE007
步骤1-34、生成矩阵元素STEP2:从bank中取出步骤1-33生成的中间值,将中间值
Figure 52564DEST_PATH_IMAGE008
存入bank;输入计算结果
Figure 195226DEST_PATH_IMAGE009
Figure 84684DEST_PATH_IMAGE010
Figure 760516DEST_PATH_IMAGE011
步骤1-35、生成矩阵元素STEP3:从bank中取出步骤1-33生成的中间值
Figure 811649DEST_PATH_IMAGE001
Figure 940142DEST_PATH_IMAGE002
Figure 898870DEST_PATH_IMAGE003
Figure 694788DEST_PATH_IMAGE004
和步骤1-35的中间值
Figure 946516DEST_PATH_IMAGE008
,将中间值
Figure 827884DEST_PATH_IMAGE012
存入bank;输入计算结果
Figure 59145DEST_PATH_IMAGE013
Figure 709569DEST_PATH_IMAGE014
Figure 633663DEST_PATH_IMAGE015
步骤1-36、生成矩阵元素STEP4:从bank中取出中间值
Figure 736748DEST_PATH_IMAGE002
Figure 771700DEST_PATH_IMAGE008
Figure 542210DEST_PATH_IMAGE003
Figure 138670DEST_PATH_IMAGE012
,将中间值
Figure 729051DEST_PATH_IMAGE016
Figure 302115DEST_PATH_IMAGE017
存入bank;输入计算结果
Figure 927132DEST_PATH_IMAGE018
Figure 193028DEST_PATH_IMAGE019
Figure 5126DEST_PATH_IMAGE020
步骤1-37、将最终STEP4生成的矩阵元素存入bank0,判断结束信号是否有效,有效则跳转到break状态,输出最终结果。
4.根据权利要求3所述的系统传递函数辨识算法的硬件实现方法,其特征在于,所述步骤3进一步包括:
步骤3-1、将生成的矩阵元素
Figure 647460DEST_PATH_IMAGE021
Figure 625518DEST_PATH_IMAGE022
Figure 796736DEST_PATH_IMAGE023
Figure 361710DEST_PATH_IMAGE024
Figure 276576DEST_PATH_IMAGE025
Figure 876185DEST_PATH_IMAGE026
Figure 483884DEST_PATH_IMAGE027
Figure 536153DEST_PATH_IMAGE028
、、
Figure 756176DEST_PATH_IMAGE029
Figure 210291DEST_PATH_IMAGE030
Figure 988891DEST_PATH_IMAGE031
放置为六阶矩阵,存放在bank3、bank4、bank5、bank6中:
扩展如下:
Figure 528457DEST_PATH_IMAGE032
同时生成向量V,将向量V放入bank12以后的任意一个bank中,该矩阵向量的大小与矩阵阶数相等;
步骤3-2、对L矩阵和U矩阵求逆:
Figure 50705DEST_PATH_IMAGE033
式中,矩阵L由矩阵U转置得出,故
Figure 359326DEST_PATH_IMAGE034
Figure 308828DEST_PATH_IMAGE035
表示对矩阵L求逆,
Figure 70110DEST_PATH_IMAGE036
表示将L的逆矩阵再次转置得出U的逆矩阵;
其中,矩阵
Figure 894585DEST_PATH_IMAGE037
矩阵
Figure 57713DEST_PATH_IMAGE038
将矩阵S表示为三阶下三角矩阵:
Figure 178115DEST_PATH_IMAGE039
步骤3-3、采用至少一个乘法器和至少三个加法器对该三阶下三角矩阵硬解:乘法器的输出端接入加法器的输入端,第一个加法器的结果反馈至第二个加法器的输入端,由第二加法器的结果输出至第三加法器,最终的结果反馈至第二个加法器输出。
5.根据权利要求3所述的系统传递函数辨识算法的硬件实现方法,其特征在于:存储资源模块将源数据
Figure 692273DEST_PATH_IMAGE040
Figure 556324DEST_PATH_IMAGE001
Figure 573959DEST_PATH_IMAGE002
Figure 865263DEST_PATH_IMAGE004
分别存储在bank4、bank5、bank6、bank7中;将
Figure 601138DEST_PATH_IMAGE005
Figure 250905DEST_PATH_IMAGE006
Figure 388625DEST_PATH_IMAGE007
的结果存储在bank0中;将
Figure 116409DEST_PATH_IMAGE010
Figure 339580DEST_PATH_IMAGE014
的结果存储在bank1中;将
Figure 811013DEST_PATH_IMAGE011
Figure 537661DEST_PATH_IMAGE019
Figure 436346DEST_PATH_IMAGE015
Figure 146813DEST_PATH_IMAGE020
存储在bank2中;将、
Figure 654893DEST_PATH_IMAGE018
的结果存储在bank3中。
6.一种系统传递函数辨识算法的硬件实现方法,其特征在于包括以下模块:
用于控制整个计算流程的总控制模块;
用于控制不同阶段下数据传输、重构模式的可重构控制模块;
采用一系列运算单元实现运算功能的计算阵列模块;
采用一系列存储单元实现存储功能的存储资源模块。
7.根据权利要求6所述的系统传递函数辨识算法的硬件实现方法,其特征在于:
所述总控制模块进一步包括存储资源模块选通器,计算资源选通器与总控制状态机;存储资源模块选通器根据不同计算阶段的特征选通不同存储体,以写入或读取数据;计算资源选通器根据不同计算阶段的特征选通不同计算资源,将源数据传输入计算单元进行计算或将结果数据取出;总控制状态机可根据参数配置的情况和各个子计算阶段的开始结束信号,控制整个计算流程;
所述的计算流程包括矩阵元素的生成、矩阵的扩展、矩阵求逆、矩阵向量乘法、矩阵行变换、拉普拉斯频率响应滤波,此为一个迭代次数内的情况,当迭代次数大于1时,将计算更新后的目标向量作为第二次迭代的输入继续进行计算;
所述可重构控制模块包括各个子算法的控制模块,如矩阵求逆、矩阵向量乘法等;各个子算法的控制模块根据配置信息控制计算开始与结束信号,以及数据在存储和计算阵列之间的传输;
所述计算阵列模块包括乘法器、加法器、除法器,所述计算阵列模块进一步将生成的矩阵元素
Figure 501626DEST_PATH_IMAGE021
Figure 571213DEST_PATH_IMAGE022
Figure 503397DEST_PATH_IMAGE023
Figure 316633DEST_PATH_IMAGE024
Figure 283451DEST_PATH_IMAGE025
Figure 523940DEST_PATH_IMAGE026
Figure 208999DEST_PATH_IMAGE027
Figure 61811DEST_PATH_IMAGE028
Figure 883136DEST_PATH_IMAGE041
Figure 28947DEST_PATH_IMAGE029
Figure 935723DEST_PATH_IMAGE030
Figure 90761DEST_PATH_IMAGE031
放置为六阶矩阵,存放在bank3、bank4、bank5、bank6中:
扩展如下:
Figure 32172DEST_PATH_IMAGE032
同时生成向量V,将向量V放入bank12以后的任意一个bank中,该矩阵向量的大小与矩阵阶数相等;
对L矩阵和U矩阵求逆:
Figure 348884DEST_PATH_IMAGE033
式中,矩阵L由矩阵U转置得出,故
Figure 8535DEST_PATH_IMAGE034
Figure 701685DEST_PATH_IMAGE035
表示对矩阵L求逆,
Figure 996138DEST_PATH_IMAGE036
表示将L的逆矩阵再次转置得出U的逆矩阵;
其中,矩阵
Figure 749330DEST_PATH_IMAGE037
矩阵;
将矩阵S表示为三阶下三角矩阵:
Figure 365119DEST_PATH_IMAGE039
采用至少一个乘法器和至少三个加法器对该三阶下三角矩阵硬解:乘法器的输出端接入加法器的输入端,第一个加法器的结果反馈至第二个加法器的输入端,由第二加法器的结果输出至第三加法器,最终的结果反馈至第二个加法器输出。
8.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至5中任一项所述方法的步骤。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至5中任一项所述的方法的步骤。
CN201911045111.3A 2019-10-30 2019-10-30 一种系统传递函数辨识算法的硬件实现方法及运行该方法的计算机设备与可读存储介质 Pending CN111061675A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911045111.3A CN111061675A (zh) 2019-10-30 2019-10-30 一种系统传递函数辨识算法的硬件实现方法及运行该方法的计算机设备与可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911045111.3A CN111061675A (zh) 2019-10-30 2019-10-30 一种系统传递函数辨识算法的硬件实现方法及运行该方法的计算机设备与可读存储介质

Publications (1)

Publication Number Publication Date
CN111061675A true CN111061675A (zh) 2020-04-24

Family

ID=70298093

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911045111.3A Pending CN111061675A (zh) 2019-10-30 2019-10-30 一种系统传递函数辨识算法的硬件实现方法及运行该方法的计算机设备与可读存储介质

Country Status (1)

Country Link
CN (1) CN111061675A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113625994A (zh) * 2021-10-12 2021-11-09 华控清交信息科技(北京)有限公司 一种数据处理方法和处理核

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103092815A (zh) * 2013-01-07 2013-05-08 青岛海信宽带多媒体技术有限公司 校准装置及其对监测装置中的传递函数进行校准的方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103092815A (zh) * 2013-01-07 2013-05-08 青岛海信宽带多媒体技术有限公司 校准装置及其对监测装置中的传递函数进行校准的方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
祁鹏展: "Levy系统传递函数辨识算法的硬件实现", 《中国优秀硕士学位论文全文数据库 基础科学辑》 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113625994A (zh) * 2021-10-12 2021-11-09 华控清交信息科技(北京)有限公司 一种数据处理方法和处理核
CN113625994B (zh) * 2021-10-12 2022-01-04 华控清交信息科技(北京)有限公司 一种数据处理方法和处理核

Similar Documents

Publication Publication Date Title
KR102443546B1 (ko) 행렬 곱셈기
US11443217B2 (en) Information processing apparatus and information processing method
US10832120B2 (en) Systems and methods for a multi-core optimized recurrent neural network
US10379816B2 (en) Data accumulation apparatus and method, and digital signal processing device
CN102053817B (zh) 用于执行乘法累加运算的设备和方法
CN110046704B (zh) 基于数据流的深度网络加速方法、装置、设备及存储介质
US8959135B2 (en) Data structure for tiling and packetizing a sparse matrix
CN106445471A (zh) 处理器和用于在处理器上执行矩阵乘运算的方法
US20120144130A1 (en) Optimizing Output Vector Data Generation Using A Formatted Matrix Data Structure
Fan et al. Reconfigurable acceleration of 3D-CNNs for human action recognition with block floating-point representation
US20200026746A1 (en) Matrix and Vector Multiplication Operation Method and Apparatus
CN108897716A (zh) 通过存储器读写操作来缩减计算量的数据处理装置及方法
CN113010099A (zh) 有效地利用存储器空间的神经网络处理设备及其操作方法
WO2018027706A1 (zh) Fft处理器及运算方法
US20150112662A1 (en) Method of and apparatus for performing simulation using plurality of processors in parallel
CN110765710A (zh) 基于非易失器件的通用逻辑综合方法及装置
EP3876092B1 (en) Method for executing matrix multiplication, circuit and soc
CN111061675A (zh) 一种系统传递函数辨识算法的硬件实现方法及运行该方法的计算机设备与可读存储介质
CN114595811A (zh) 用于执行深度学习操作的方法和设备
EP4168943A1 (en) System and method for accelerating training of deep learning networks
Boéchat et al. An architecture for solving quadratic programs with the fast gradient method on a Field Programmable Gate Array
CN111027688A (zh) 一种基于fpga的神经网络计算器生成方法及装置
US20230029761A1 (en) Run-time reconfigurable accelerator for matrix multiplication
Milik On PLCs Control Program Hardware Implementation Selected Problems of Mapping and Scheduling
CN104793922A (zh) 一种大整数乘法Comba算法基于OpenMP的并行实现方法

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
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20200424