CN105892988B - 一种基于fpga的运算电路、示波器和测量仪器 - Google Patents

一种基于fpga的运算电路、示波器和测量仪器 Download PDF

Info

Publication number
CN105892988B
CN105892988B CN201610264757.0A CN201610264757A CN105892988B CN 105892988 B CN105892988 B CN 105892988B CN 201610264757 A CN201610264757 A CN 201610264757A CN 105892988 B CN105892988 B CN 105892988B
Authority
CN
China
Prior art keywords
computing module
computing
unit
module
operation result
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.)
Active
Application number
CN201610264757.0A
Other languages
English (en)
Other versions
CN105892988A (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.)
Guangzhou Zhiyuan Instrument Co., Ltd.
Original Assignee
Guangzhou Zhiyuan Electronics Co Ltd
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 Guangzhou Zhiyuan Electronics Co Ltd filed Critical Guangzhou Zhiyuan Electronics Co Ltd
Priority to CN201610264757.0A priority Critical patent/CN105892988B/zh
Publication of CN105892988A publication Critical patent/CN105892988A/zh
Application granted granted Critical
Publication of CN105892988B publication Critical patent/CN105892988B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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/57Arithmetic logic units [ALU], i.e. arrangements or devices for performing two or more of the operations covered by groups G06F7/483 – G06F7/556 or for performing logical operations
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R13/00Arrangements for displaying electric variables or waveforms
    • G01R13/02Arrangements for displaying electric variables or waveforms for displaying measured electric variables in digital form
    • G01R13/0218Circuits therefor

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Computing Systems (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Complex Calculations (AREA)
  • Stored Programmes (AREA)

Abstract

本申请公开的一种基于FPGA的运算电路、示波器和测量仪器,输出互联矩阵模块,将第一运算模块输出的运算结果作为第二运算模块的输入量,将第三运算模块输出的运算结果作为最终输出,第一运算模块为输出的运算结果作为其它运算模块输入量的运算模块,第二运算模块为输入量是其它运算模块输出运算结果的运算模块,第三运算模块为输出运算结果作为最终运算输出的运算模块,同一个运算模块,在不同的运算过程中可以是第一运算模块、第二运算模块或第三运算模块,保障各个运算模块之间的多级任意互联,使得数学运算的拆分次数变少,进而,提高了数学运算速度,并且,FPGA的并行特性,运算时对系统的其它操作不会产生影响,进而不会出现系统卡顿的情况。

Description

一种基于FPGA的运算电路、示波器和测量仪器
技术领域
本申请涉及数据处理领域,更具体地说,涉及一种基于FPGA的运算电路、示波器和测量仪器。
背景技术
数学运算装置是大多测量仪器的功能单元之一,用于完成数学运算,传统的数学运算装置由微处理器来实现,结构如图1所示,在执行数学运算时,需要从程序存储器中取指令,用于控制运算单元从数据存储器中获取数据进行运算,以及控制将运算单元的运算结果存入数据存储器。
数学运算模型可以归纳为y=f[g1(x1,x2,…,xn),g2(x1,x2,…,xn),…,gk(x1,x2,…,xn)],其中g1…gk为子函数,即运算函数y可以拆分为多级子函数运算,例如y=sin(x1)+ln(x2)可拆分为g1=sin(x1),g2=ln(x2),y=g1+g2。因此,任意数学运算都可以通过拆分、分级运算来实现。
微处理器进行数学运算具有串行迭代特性,即运算时只能等上一次运算完成后才能进行下一次的运算。例如:y=sin(x1)+ln(x2)通过微处理器需要进行三次运算,首选运算sin(x1),再进行ln(x2)的运算,最后再将两个运算结果相加。假设一次数学参数运算时,微处理器需要执行的指令数目为N,第N条指令需要KN个时钟周期,每个时钟周期的时间为T1,则微处理器完成M次数学运算需要的时间T2=M*(K1+K2+…+KN)*T1,(K1+K2+…+KN)的值随运算的复杂程度增大而增大,至少在几十的数量。微处理器进行数学运算的方式,基于指令集进行串行操作,需要多次迭代,速度慢,并且,结构单一,运算时会占用大量微处理器资源,很容易导致系统卡顿的故障。
发明内容
有鉴于此,本申请提出一种基于FPGA的运算电路、示波器和测量仪器,欲实现提高数学运算速度,以及减少系统卡顿情况发生目的。
为了实现上述目的,现提出的方案如下:
一种基于FPGA的运算电路,包括:输入互联矩阵模块、多个运算模块、以及输出互联矩阵模块,
所述输入互联矩阵模块,用于获取数学参数,并将所述数学参数作为所述运算模块的输入量,以及获取第一运算模块输出的运算结果,并将所述第一运算模块输出的运算结果作为第二运算模块的输入量,所述第一运算模块为输出的运算结果作为其它运算模块输入量的运算模块,所述第二运算模块为输入量是其它运算模块输出的运算结果的运算模块;
所述运算模块,用于对接收的输入量进行运算;
所述输出互联矩阵模块,用于将所述第一运算模块输出的运算结果作为第二运算模块的输入量,以及将第三运算模块输出的运算结果作为最终运算输出,所述第三运算模块为输出的运算结果作为最终运算输出的运算模块。
优选的,所述运算模块包括但不限于加法单元、减法单元、除法单元、乘法单元、开方单元、指数单元、平方单元、微分单元、积分单元、对数单元和/或三角函数单元。
优选的,所述运算模块的运算采用流水线处理方式。
一种示波器,包括处理器、模拟数字转换器和显示器,还包括如上述的基于FPGA的运算电路。
优选的,所述示波器的运算模块包括但不限于加法单元、减法单元、除法单元、乘法单元、开方单元、指数单元、平方单元、微分单元、积分单元、对数单元和/或三角函数单元。
优选的,所述示波器的运算模块的运算采用流水线处理方式。
一种测量仪器,包括上述的基于FPGA的运算电路。
优选的,所述测量仪器的运算模块包括但不限于加法单元、减法单元、除法单元、乘法单元、开方单元、指数单元、平方单元、微分单元、积分单元、对数单元和/或三角函数单元。
优选的,所述测量仪器的运算模块的运算采用流水线处理方式。
从上述的技术方案可以看出,本申请公开的一种基于FPGA的运算电路、示波器和测量仪器,输出互联矩阵模块,用于将第一运算模块输出的运算结果作为第二运算模块的输入量,以及将第三运算模块输出的运算结果作为最终输出,保障各个运算模块之间的多级任意互联,例如,把运算模块1和运算模块2串联,将运算模块1输出的运算结果作为运算模块2的输入量,将运算模块2的输出作为最终运算输出,y=sin(x1)+ln(x2)通过基于FPGA的运算电路,执行一次运算就能完成,使得数学运算的拆分次数变少,进而,提高了数学运算速度,并且,由于FPGA的并行特性,运算时对系统的其它操作不会产生影响,进而不会出现系统卡顿的情况。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1为本实施例公开的一种传统的数学运算装置的结构示意图;
图2为本实施例公开的一种基于FPGA的运算电路的结构示意图;
图3为本实施例公开的运算模块的运算采用流水线和非流水线时间对比示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。
本申请公开的一种基于FPGA的运算电路,实现数学运算时数据的运算为并行操作,数据直接保存在FPGA硬件电路中,可以实现各个运算模块之间的多级任意互联,使得数学运算的拆分次数变少,进而提高数学运算速度,并且,由于FPGA的并行特性,运算时对系统的其它操作不会产生影响,进而不会出现系统卡顿的情况。
本实施例公开一种基于FPGA的运算电路,参见图2所示,该运算电路包括:输入互联矩阵模块、多个运算模块、以及输出互联矩阵模块。
输入互联矩阵模块,用于获取数学参数(x1、x2、……xn),并将获取的数学参数作为运算模块的输入量,以及获取第一运算模块输出的运算结果,并将第一运算模块输出的运算结果作为第二运算模块的输入量。一个运算模块输出的运算结果作为另一个运算模块的输入量时,我们定义前者为第一运算模块,后者为第二运算模块,即第一运算模块和第二运算模块是针对在一个运算模块输出的运算结果作为另一个运算模块的输入量时的名称,同一个运算模块,在不同的运算过程中既可以是第一运算模块,也可以是第二运算模块。
运算模块,用于对接收的输入量进行运算;
输出互联矩阵模块,用于将第一运算模块输出的运算结果作为第二运算模块的输入量,以及将第三运算模块输出的运算结果作为最终运算输出(y),我们定义输出的运算结果作为最终运算输出的运算模块为第三运算模块,同样的,同一个运算模块,在不同的运算过程中可以是第一运算模块、第二运算模块或第三运算模块。
本实施例公开的一种基于FPGA的运算电路,输出互联矩阵模块,将第一运算模块输出的运算结果作为第二运算模块的输入量,以及将第三运算模块输出的运算结果作为最终输出,保障各个运算模块之间的多级任意互联,使得数学运算的拆分次数变少,进而,提高了数学运算速度,并且,由于FPGA的并行特性,运算时对系统的其它操作不会产生影响,进而不会出现系统卡顿的情况。
运算模块包括但不限于加法单元、减法单元、除法单元、乘法单元、开方单元、指数单元、对数单元、三角函数单元、平方单元、微分单元、积分单元等,FPGA是一种现场可编程器件,通过软件编程方式来更改内部电路结构实现不同功能。
运算模块的运算采用非流水线处理方式时,因为第M次运算必须等待第M-1次运算的完成后才能运算。由于基于FPGA的运算电路进行数学运算时,为并行操作,数据直接保存在FPGA硬件电路中,不会有取指令、执行指令的操作,完成一次数学运算需要L个系统时钟周期T3,L值一般在5左右,所以基于FPGA的运算电路进行M次数学运算,运算模块的运算采用非流水线处理方式时,所需要的时间为M*L*T3,T3与T2相差不大,L远小于(K1+K2+…+KN),因此,基于FPGA的运算电路进行M次数学运算,运算模块的运算采用非流水线处理方式时,运算速度较微处理器进行数学运算有较大提高。
运算模块的运算采用流水线处理方式时,因为第M次运算不必等待第M-1次运算的完成后再运算,可以同时运算,参见图3所示,基于FPGA的运算电路进行M次数学运算,运算模块的运算采用流水线处理方式时,完成M次数学运算需要的时间为(M+L-1)*T3。进一步,提高了数学运算的速度。
本实施例公开一种示波器,包括处理器、模拟数字转换器、显示器、以及基于FPGA的运算电路,使得示波器的数学运算速度得到很大提升。
本实施例公开一种测量仪器,基于FPGA的运算电路,使得测量仪器的数学运算速度得到很大提升。
以上所描述的实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其它变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其它要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同相似部分互相参见即可。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

Claims (9)

1.一种基于FPGA的运算电路,其特征在于,包括:输入互联矩阵模块、多个运算模块、以及输出互联矩阵模块,
所述输入互联矩阵模块,用于获取数学参数,并将所述数学参数作为所述运算模块的输入量,以及获取第一运算模块输出的运算结果,并将所述第一运算模块输出的运算结果作为第二运算模块的输入量,所述第一运算模块为输出的运算结果作为其它运算模块输入量的运算模块,所述第二运算模块为输入量是其它运算模块输出的运算结果的运算模块;
所述运算模块,用于对接收的输入量进行运算;
所述输出互联矩阵模块,用于将所述第一运算模块输出的运算结果作为第二运算模块的输入量,以及将第三运算模块输出的运算结果作为最终运算输出,所述第三运算模块为输出的运算结果作为最终运算输出的运算模块。
2.根据权利要求1所述的运算电路,其特征在于,所述运算模块包括加法单元、减法单元、除法单元、乘法单元、开方单元、指数单元、平方单元、微分单元、积分单元、对数单元和/或三角函数单元。
3.根据权利要求1或2所述的运算电路,其特征在于,所述运算模块的运算采用流水线处理方式。
4.一种示波器,包括处理器、模拟数字转换器和显示器,其特征在于,还包括如权利要求1所述的基于FPGA的运算电路。
5.根据权利要求4所述的示波器,其特征在于,所述运算模块包括加法单元、减法单元、除法单元、乘法单元、开方单元、指数单元、平方单元、微分单元、积分单元、对数单元和/或三角函数单元。
6.根据权利要求4或5所述的示波器,其特征在于,所述运算模块的运算采用流水线处理方式。
7.一种测量仪器,其特征在于,包括如权利要求1所述的基于FPGA的运算电路。
8.根据权利要求7所述的测量仪器,其特征在于,所述运算模块包括加法单元、减法单元、除法单元、乘法单元、开方单元、指数单元、平方单元、微分单元、积分单元、对数单元和/或三角函数单元。
9.根据权利要求7或8所述的测量仪器,其特征在于,所述运算模块的运算采用流水线处理方式。
CN201610264757.0A 2016-04-26 2016-04-26 一种基于fpga的运算电路、示波器和测量仪器 Active CN105892988B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610264757.0A CN105892988B (zh) 2016-04-26 2016-04-26 一种基于fpga的运算电路、示波器和测量仪器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610264757.0A CN105892988B (zh) 2016-04-26 2016-04-26 一种基于fpga的运算电路、示波器和测量仪器

Publications (2)

Publication Number Publication Date
CN105892988A CN105892988A (zh) 2016-08-24
CN105892988B true CN105892988B (zh) 2019-03-01

Family

ID=56704692

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610264757.0A Active CN105892988B (zh) 2016-04-26 2016-04-26 一种基于fpga的运算电路、示波器和测量仪器

Country Status (1)

Country Link
CN (1) CN105892988B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106443115B (zh) * 2016-09-26 2023-12-29 广州致远电子股份有限公司 一种基于深度存储的示波器
CN108229668B (zh) * 2017-09-29 2020-07-07 北京市商汤科技开发有限公司 基于深度学习的运算实现方法、装置和电子设备
CN108132373B (zh) * 2017-12-20 2020-04-28 福建利利普光电科技有限公司 示波器旋钮操作移动效果的处理方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1671090A (zh) * 2004-03-19 2005-09-21 华为技术有限公司 一种计算平方根的装置
CN102508798A (zh) * 2011-10-18 2012-06-20 国电南京自动化股份有限公司 基于burst和流水线的cpu和fpga接口方法
CN102629189A (zh) * 2012-03-15 2012-08-08 湖南大学 基于fpga的流水浮点乘累加方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100451951C (zh) * 2006-01-26 2009-01-14 深圳艾科创新微电子有限公司 Risc cpu中的5+3级流水线设计方法
CN101646080B (zh) * 2009-06-18 2013-09-25 杭州高特信息技术有限公司 基于avs并行流水idct快速变换的方法和装置
US20150268962A1 (en) * 2014-03-24 2015-09-24 GoofyFoot Labs Asynchronous Circuit Design
CN105468335B (zh) * 2015-11-24 2017-04-12 中国科学院计算技术研究所 流水级运算装置、数据处理方法及片上网络芯片

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1671090A (zh) * 2004-03-19 2005-09-21 华为技术有限公司 一种计算平方根的装置
CN102508798A (zh) * 2011-10-18 2012-06-20 国电南京自动化股份有限公司 基于burst和流水线的cpu和fpga接口方法
CN102629189A (zh) * 2012-03-15 2012-08-08 湖南大学 基于fpga的流水浮点乘累加方法

Also Published As

Publication number Publication date
CN105892988A (zh) 2016-08-24

Similar Documents

Publication Publication Date Title
CN105468335B (zh) 流水级运算装置、数据处理方法及片上网络芯片
Sun et al. The multiplicity of solutions for perturbed second-order Hamiltonian systems with impulsive effects
CN105892988B (zh) 一种基于fpga的运算电路、示波器和测量仪器
RU2010153303A (ru) Аналитические модели карты
CN109902819A (zh) 神经网络计算方法、装置、移动终端及存储介质
TW201706872A (zh) 用於在類神經網路處理器中使用之預取權重
CN104145281A (zh) 神经网络计算装置和系统及其方法
CN101916177B (zh) 一种可配置多精度定点乘加装置
CN109933529A (zh) 基于计算单元的验证方法及验证平台
CN103984560A (zh) 基于大规模粗粒度嵌入式可重构系统及其处理方法
CN102945224A (zh) 基于fpga的高速可变点fft处理器及其处理方法
CN103218347B (zh) 面向可重构阵列的多参数融合性能建模方法
CN106373112A (zh) 图像处理方法、装置和电子设备
CN1225713C (zh) 智能电器专用芯片
CN110147249A (zh) 一种网络模型的计算方法及装置
CN103176949B (zh) 实现fft/ifft变换的电路及方法
CN106326639B (zh) 一种ecg仿真信号建模与分段发生方法
CN102122180B (zh) 一种基于fpga的飞轮模拟器
CN110119265A (zh) 乘法运算实现方法、装置、计算机存储介质及电子设备
CN103713878B (zh) 一种应用补码方法的正余弦cordic算法在fpga实现的方法
CN106526269A (zh) 一种数据测量方法及系统
RU103412U1 (ru) Информационно-моделирующая среда для обеспечения управления группировками войск (сил)
CN103645887B (zh) 双指令多浮点操作数加/减、乘、除运算控制器
CN110895460A (zh) 基于Jenkins的机器人系统集成方法、装置及终端设备
CN102591200B (zh) 一种fpga控制系统开发平台

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CP03 Change of name, title or address

Address after: 510000 room 517, Gao Pu Road, Tianhe Software Park, Tianhe District, Guangzhou, Guangdong, China, 1023

Patentee after: GUANGZHOU ZHIYUAN ELECTRONICS Co.,Ltd.

Address before: 510000 Guangdong city of Guangzhou province Tianhe District No. 1035 Room 204 second Pu Lu

Patentee before: GUANGZHOU ZHIYUAN ELECTRONICS Co.,Ltd.

CP03 Change of name, title or address
TR01 Transfer of patent right

Effective date of registration: 20220809

Address after: Room 304, 3rd Floor, No. 43, Sicheng Road, Tianhe District, Guangzhou City, Guangdong Province, 510000

Patentee after: Guangzhou Zhiyuan Instrument Co., Ltd.

Address before: 510000 room 517, 1023 Gaopu Road, Tianhe Software Park, Tianhe District, Guangzhou City, Guangdong Province

Patentee before: GUANGZHOU ZHIYUAN ELECTRONICS Co.,Ltd.

TR01 Transfer of patent right