CN111583094B - 一种基于fpga的图像脉冲编码方法及*** - Google Patents
一种基于fpga的图像脉冲编码方法及*** Download PDFInfo
- Publication number
- CN111583094B CN111583094B CN202010385501.1A CN202010385501A CN111583094B CN 111583094 B CN111583094 B CN 111583094B CN 202010385501 A CN202010385501 A CN 202010385501A CN 111583094 B CN111583094 B CN 111583094B
- Authority
- CN
- China
- Prior art keywords
- pulse
- pixel value
- image
- value
- amplifying
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/20—Processor architectures; Processor configuration, e.g. pipelining
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2200/00—Indexing scheme for image data processing or generation, in general
- G06T2200/28—Indexing scheme for image data processing or generation, in general involving image processing hardware
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Image Processing (AREA)
- Compression Of Band Width Or Redundancy In Fax (AREA)
Abstract
本发明涉及一种基于FPGA的图像脉冲编码方法及***,包括:构建异构计算机***;获取灰度图像及归一化像素值;将归一化像素值放大T倍,并输入至缓存区;将灰度图像进行切分,并将切分后的灰度图像送入PE阵列所对应的缓存区,产生脉冲信号;当频率值生成器接收到外部输入像素值时,将像素值放大预先设定倍数产生Frate数据缓存在BUFF中;将T值扩大预先设定倍数;计算时间间隔,并存储于BUFI中;将Frate数据以SEL信号送入Accumulator和Output Block中,判断所述SEL信号是否为0,若为0,则使Accumulator和Output Block处于休眠状态;将所述时间间隔通过寄存器不断累加得到脉冲发放的时间序列,最终生成图像脉冲序列。本发明能够降低数据处理延迟时间。
Description
技术领域
本发明涉及神经网络领域,特别是涉及一种基于FPGA的图像脉冲编码方法及***。
背景技术
人工神经网络在计算机视觉,语音识别和文本生成方面获得了显著的成绩,但是这些显著的成绩依赖于诸如GPU这样的低能效硬件的支持,而GPU的低能效限制了人工神经网络在嵌入端或边缘端的应用,与其相比,神经科学带给高级人工智能算法许多启发,高级人工智能算法用于解决多样性机器学习问题。脉冲神经网络是一种典型的生物可塑性神经网络,它处理信息的机制是基于脉冲实现的。当没有脉冲或事件到来时,整个计算单元处于休眠状态以节省能耗,这与基于数据驱动的传统神经网络有所不同。因此能够比传统神经网络更节省能耗,但目前存在的问题就是脉冲神经网络与传统人工神经网络在处理信息的机制上不同,因此传统图像传感器产生的图像数据并不能被脉冲神经网络所兼容,因此需要一种脉冲编码算法将这些图像数据转换为脉冲神经网络兼容的脉冲事件数据,另外目前许多脉冲神经网络加速器并不是一个端到端的加速,即缺失编码这一块,限制了脉冲神经网络***应用落地。
目前有很多硬件平台来模拟脉冲神经网络编码算法,我们使用高能效比的FPGA来替代低能效比的CPU或GPU。从而能够使得我们的方法得以在功耗敏感领域落地。
发明内容
本发明的目的是提供一种基于FPGA的图像脉冲编码方法及***,提高数据吞吐率,降低数据处理延迟时间。
为实现上述目的,本发明提供了如下方案:
一种基于FPGA的图像脉冲编码方法,所述方法包括:
S1:构建异构计算机***;所述异构计算机***包括:通用处理器PS和可编程逻辑PL;所述通用处理器PS包括存储器DRAM、SD存储器和控制器Quad-CoreA53 CPU;所述可编程逻辑PL包括I/O Buffer、可配置寄存器CFG、顶层控制器和PE处理单元;所述PE处理单元包括:底层控制器、频率值生成器、间隔值生成器、频率值缓存单元、间隔值缓存单元、累加器、输出块;所述DRAM和SD存储器用于存储数据和程序;所述I/O Buffer用于存储算法中的权值和临时数据;所述可配置寄存器CFG用于存储算法的参数;
S2:获取灰度图像及归一化像素值;
S3:将所述归一化像素值放大T倍,并将放大T倍的归一化像素值T*rj输入至所述PL端的Input Buffer缓存区;
S4:将所述灰度图像进行切分,并将切分后的灰度图像分别送入PFGA中的PE阵列所对应的Input Buffer,并产生脉冲信号,将所述脉冲信号发送至所述PE单元中的底层控制器;
S5:当Frate Generator频率值生成器接收到外部输入像素值T*rj时,将所述像素值T*rj放大预先设定倍数产生Frate数据缓存在BUFF频率值缓存单元中,同时送入Interval Generator间隔值生成器并作为之后数据选择器的选择信号;
S6:将所述T值扩大预先设定倍数;所述T为脉冲神经网络的时间窗口;
S7:基于放大预先设定倍数后的像素值T*rj和扩大预先设定倍数后的T值采用右移操作来替换除法计算时间间隔,并将所述时间间隔存储于BUFI间隔值缓存单元中;
S8:将所述BUFF中的Frate数据以SEL信号送入Accumulator累加器和OutputBlock输出块中,判断所述SEL信号是否为0,若为0,则使Accumulator和Output Block处于休眠状态;
S9:将所述时间间隔通过寄存器不断累加得到脉冲发放的时间序列,最终生成图像脉冲序列。
可选的,所述将所述灰度图像进行切分具体包括:
将所述灰度图像按7*7大小的切分为16个特征图。
可选的,所述预先设定倍数为128倍。
可选的,所述基于放大预先设定倍数后的像素值T*rj和扩大预先设定倍数后的T值采用右移操作来替换除法计算时间间隔具体采用以下公式:
可选的,所述将所述时间间隔通过寄存器不断累加得到脉冲发放的时间序列,最终生成图像脉冲序列具体采用以下公式:
本发明另外提供一种基于FPGA的图像脉冲编码***,所述***包括:
异构计算单元,用于构建异构计算机***;所述异构计算机***包括:通用处理器PS和可编程逻辑PL;所述通用处理器PS包括存储器DRAM、SD存储器和控制器Quad-CoreA53CPU;所述可编程逻辑PL包括I/O Buffer、可配置寄存器CFG、顶层控制器和PE处理单元;所述PE处理单元包括:底层控制器、频率值生成器、间隔值生成器、频率值缓存单元、间隔值缓存单元、累加器、输出块;所述DRAM和SD存储器用于存储数据和程序;所述I/O Buffer用于存储算法中的权值和临时数据;所述可配置寄存器CFG用于存储算法的参数;
灰度图像及像素值获取模块,用于获取灰度图像及归一化像素值;
第一放大模块,用于将所述归一化像素值放大T倍,并将放大T倍的归一化像素值T*rj输入至所述PL端的Input Buffer缓存区;
切分模块,用于将所述灰度图像进行切分,并将切分后的灰度图像分别送入PFGA中的PE阵列所对应的Input Buffer,并产生脉冲信号,将所述脉冲信号发送至所述PE单元中的底层控制器;
第二放大模块,用于当Frate Generator接收到外部输入像素值T*rj时,将所述像素值T*rj放大预先设定倍数产生Frate数据缓存在BUFF频率值缓存单元中,同时送入Interval Generator间隔值生成器并作为之后数据选择器的选择信号;
第三放大模块,用于将所述T值扩大预先设定倍数;所述T为脉冲神经网络的时间窗口;
时间间隔计算模块,用于基于放大预先设定倍数后的像素值T*rj和扩大预先设定倍数后的T值采用右移操作来替换除法计算时间间隔,并将所述时间间隔存储于BUFI间隔值缓存单元中;
判断模块,用于将所述BUFF中的Frate数据以SEL信号送入Accumulator累加器和Output Block输出块中,并判断所述SEL信号是否为0,若为0,则使Accumulator和OutputBlock处于休眠状态;
图像脉冲序列生成模块,用于将所述时间间隔通过寄存器不断累加得到脉冲发放的时间序列,最终生成图像脉冲序列。
可选的,所述将所述灰度图像进行切分具体包括:
将所述灰度图像按7*7大小的切分为16个特征图。
可选的,所述预先设定倍数为128倍。
可选的,所述基于放大预先设定倍数后的像素值T*rj和扩大预先设定倍数后的T值采用右移操作来替换除法计算时间间隔具体采用以下公式:
可选的,所述将所述时间间隔通过寄存器不断累加得到脉冲发放的时间序列,最终生成图像脉冲序列具体采用以下公式:
根据本发明提供的具体实施例,本发明公开了以下技术效果:
本发明中的上述方法,能够将普通灰度图像转换为脉冲神经网络可识别的脉冲序列,使得脉冲神经网络能够处理灰度图像数据,使用多核处理器架构来提高数据的吞吐率,降低数据处理延迟时间。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例基于FPGA的图像脉冲编码方法流程图;
图2为本发明实施例异构计算机***结构示意图;
图3为本发明实施例横向路由(LCR)映射方法;
图4为本发明实施例PE结构示意图;
图5为本发明实施例基于FPGA的图像脉冲编码***结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的目的是提供一种基于FPGA的图像脉冲编码方法及***,提高数据吞吐率,降低数据处理延迟时间。
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
图1为本发明实施例基于FPGA的图像脉冲编码方法流程图,如图1所示,所述方法包括:
S1:构建异构计算机***;所述异构计算机***包括:通用处理器PS和可编程逻辑PL;所述通用处理器PS包括存储器DRAM、SD存储器和控制器Quad-Core A53 CPU;所述可编程逻辑PL包括I/O Buffer、可配置寄存器CFG、顶层控制器和PE处理单元;所述PE处理单元包括:底层控制器、频率值生成器、间隔值生成器、频率值缓存单元、间隔值缓存单元、累加器、输出块;所述DRAM和SD存储器用于存储数据和程序;所述I/O Buffer用于存储算法中的权值和临时数据;所述可配置寄存器CFG用于存储算法的参数,所述异构计算机***结构如图2所示。
S2:获取灰度图像及归一化像素值。
S3:将所述归一化像素值放大T倍,并将放大T倍的归一化像素值T*rj输入至所述PL端的Input Buffer缓存区。
由于硬件传输中最好避免小数的传输,因此我们将S2中的归一化像素值首先放大T(T为脉冲神经网络的时间窗口,本发明中T=10)倍,即在Off-Chip DRAM(DDR4)处获得输入数据T*rj,通过FPGA上的A53 CPU进行数据交互后,将数据传入PL端的Input Buffer缓存区。
上述技术方案中,在完成平台搭建后,需要明确将数据映射到硬件上每个PE单元进行加速处理的映射方法,因此S4设计具体映射到硬件上的映射方法。受生物神经元连接启发,本发明中提出横向路由映射方法(LCR)来最小化DRAM与计算元之间的数据移动操作,如图3所示,包括以下几个步骤:
S4:将所述灰度图像进行切分,并将切分后的灰度图像分别送入PFGA中的PE阵列所对应的Input Buffer,并产生脉冲信号,将所述脉冲信号发送至所述PE单元中的底层控制器。
具体的,首先,将输入为784个像素点的灰度图像按7*7大小的切分为16个特征图,分别被送入图4所示的PE阵列所对应的Input Buffer;
每个PE会读取自己所属的Input Buffer中的数据并执行操作,时间窗口T设置为10,则每个PE至多产生490个脉冲信号,16个PE共计7840个脉冲信号以模拟神经元的行为。因此,我们可以将静态图像的输入数据使用该方法映射到硬件的处理单元上。
上述技术方案中,在S4数据映射到每个PE处理单元后,需要进一步完善PE处理单元的设计,该PE单元用于执行图2中的算法,每个PE单元通过AXI总线与外部通信,具体包括以下几个步骤:
S5:首先底层控制器通过AXI总线收到神经元初始化指令后初始化内部计算单元,当Frate Generator频率值生成器接收到外部输入像素值T*rj时,则使用乘法器将所述像素值T*rj放大128倍产生Frate数据缓存在BUFF中,同时送入Interval Generator并作为之后数据选择器的选择信号。此处将数据放大128倍的目的是在硬件上使用定点数运算,能够使其保留两位小数。
S6:在Interval Generator中将T值扩大128倍匹配数据;
S7:再进一步使用右移操作来替换除法计算(T*128)/(T*rj*128),即,得到了时间间隔fj,该数据数据被存储于BUFI中;。
S8:另外一条通路产生SEL信号送入到Accumulator和Output Block中,判断所述SEL信号是否为0,若为0,则使Accumulator和Output Block处于休眠状态以降低能耗。
S9:将所述时间间隔通过寄存器不断累加得到脉冲发放的时间序列,最终生成图像脉冲序列。
具体的,是将计算结果fj通过寄存器不断累加得到脉冲发放的时间序列,最后产生脉冲序列。步骤S5-S9中操作都受底层控制器控制,底层控制器控制逻辑则是根据神经元状态机来实现,公式如下:
图5为本发明实施例基于FPGA的图像脉冲编码***结构示意图,如图5所示,所述***包括:
异构计算单元201用于构建异构计算机***;所述异构计算机***包括:通用处理器PS和可编程逻辑PL;所述通用处理器PS包括存储器DRAM、SD存储器和控制器Quad-CoreA53 CPU;所述可编程逻辑PL包括I/O Buffer、可配置寄存器CFG、顶层控制器和PE处理单元;所述PE处理单元包括:底层控制器、频率值生成器、间隔值生成器、频率值缓存单元、间隔值缓存单元、累加器、输出块;所述DRAM和SD存储器用于存储数据和程序;所述I/OBuffer用于存储算法中的权值和临时数据;所述可配置寄存器CFG用于存储算法的参数。
灰度图像及像素值获取模块202用于获取灰度图像及归一化像素值。
第一放大模块203用于将所述归一化像素值放大T倍,并将放大T倍的归一化像素值T*rj输入至所述PL端的Input Buffer缓存区。
切分模块204用于将所述灰度图像进行切分,并将切分后的灰度图像分别送入PFGA中的PE阵列所对应的Input Buffer,并产生脉冲信号,将所述脉冲信号发送至所述PE单元中的底层控制器。
第二放大模块205用于当Frate Generator接收到外部输入像素值T*rj时,将所述像素值T*rj放大预先设定倍数产生Frate数据缓存在BUFF中,同时送入IntervalGenerator并作为之后数据选择器的选择信号。
第三放大模块206用于将所述T值扩大预先设定倍数;所述T为脉冲神经网络的时间窗口。
时间间隔计算模块207用于基于放大预先设定倍数后的像素值T*rj和扩大预先设定倍数后的T值采用右移操作来替换除法计算时间间隔,并将所述时间间隔存储于BUFI中。
判断模块208用于将所述BUFF中的Frate数据以SEL信号送入Accumulator和Output Block中,并判断所述SEL信号是否为0,若为0,则使Accumulator和Output Block处于休眠状态。
图像脉冲序列生成模块209用于将所述时间间隔通过寄存器不断累加得到脉冲发放的时间序列,最终生成图像脉冲序列。
根据S1-至S9讨论,我们使用基于Xilinx XCZU9EG平台验证了我们的设计结果。如表1所示为在该平台上的资源利用率,表2为与其它硬件平台上的加速效果对比,表3为测试环境说明,从表2中的数据可以看出与通用CPU相比,在单图片编码速度上获得了1.5倍左右的加速效果,而能耗减少了17.7倍左右。
表1 Xilinx XCZU9EG资源利用率
LUTs | LUTBRAMs | BRAM(36kb) | DSP | |
Encoder | 6897 | 8694 | 3 | 10 |
SNN | 107273 | 17457 | 264.5 | 0 |
Total | 114170 | 26151 | 265 | 10 |
Percent(%) | 41.65 | 18.16 | 29.11 | 0.08 |
表2不同硬件平台上的时间消耗
Number of Input Images | ARM | CPU | FPGA |
1 | 30.4ms | 1.1ms | 0.7ms |
10 | 306.7ms | 7.1ms | 7.4ms |
100 | 3145ms | 67.55ms | 71.0ms |
表3测试环境说明
Platform | Hardware Config. | Software Config. | Power | Clock |
ARM | Quard-Core A53 | Linux,Jupyter | 2.95W | 1.9Ghz |
CPU | Intel 17-4790k | Win10,Matlab | TDP 88W | 3.6Ghz |
FPGA | XCZU9EG | Linux,PYNQ | 4.775W | 100Mhz |
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的***而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本发明的限制。
Claims (10)
1.一种基于FPGA的图像脉冲编码方法,其特征在于,所述方法包括:
S1:构建异构计算机***;所述异构计算机***包括:通用处理器PS和可编程逻辑PL;所述通用处理器PS包括存储器DRAM、SD存储器和控制器Quad-CoreA53CPU;所述可编程逻辑PL包括I/O Buffer、可配置寄存器CFG、顶层控制器和PE处理单元;所述PE处理单元包括:底层控制器、频率值生成器、间隔值生成器、频率值缓存单元、间隔值缓存单元、累加器、输出块;所述DRAM和SD存储器用于存储数据和程序;所述I/O Buffer用于存储算法中的权值和临时数据;所述可配置寄存器CFG用于存储算法的参数;
S2:获取灰度图像及归一化像素值;
S3:将所述归一化像素值放大T倍,并将放大T倍的归一化像素值T*rj输入至所述PL端的InputBuffer缓存区;
S4:将所述灰度图像进行切分,并将切分后的灰度图像分别送入PFGA中的PE阵列所对应的Input Buffer,并产生脉冲信号,将所述脉冲信号发送至所述PE处理单元中的底层控制器;
S5:当Frate Generator频率值生成器接收到外部输入像素值T*rj时,将所述像素值T*rj放大预先设定倍数产生Frate数据缓存在BUFF频率值缓存单元中,同时送入IntervalGenerator间隔值生成器并作为之后数据选择器的选择信号;
S6:将所述T值扩大预先设定倍数;所述T为脉冲神经网络的时间窗口;
S7:基于放大预先设定倍数后的像素值T*rj和扩大预先设定倍数后的T值采用右移操作来替换除法计算时间间隔,并将所述时间间隔存储于BUFI间隔值缓存单元中;
S8:将所述BUFF中的Frate数据以SEL信号送入Accumulator累加器和Output Block输出块中,判断所述SEL信号是否为0,若为0,则使Accumulator和Output Block处于休眠状态;
S9:将所述时间间隔通过寄存器不断累加得到脉冲发放的时间序列,最终生成图像脉冲序列。
2.根据权利要求1所述的基于FPGA的图像脉冲编码方法,其特征在于,所述将所述灰度图像进行切分具体包括:
将所述灰度图像按7*7大小的切分为16个特征图。
3.根据权利要求1所述的基于FPGA的图像脉冲编码方法,其特征在于,所述预先设定倍数为128倍。
6.一种基于FPGA的图像脉冲编码***,其特征在于,所述***包括:
异构计算单元,用于构建异构计算机***;所述异构计算机***包括:通用处理器PS和可编程逻辑PL;所述通用处理器PS包括存储器DRAM、SD存储器和控制器Quad-CoreA53CPU;所述可编程逻辑PL包括I/O Buffer、可配置寄存器CFG、顶层控制器和PE处理单元;所述PE处理单元包括:底层控制器、频率值生成器、间隔值生成器、频率值缓存单元、间隔值缓存单元、累加器、输出块;所述DRAM和SD存储器用于存储数据和程序;所述I/O Buffer用于存储算法中的权值和临时数据;所述可配置寄存器CFG用于存储算法的参数;
灰度图像及像素值获取模块,用于获取灰度图像及归一化像素值;
第一放大模块,用于将所述归一化像素值放大T倍,并将放大T倍的归一化像素值T*rj输入至所述PL端的Input Buffer缓存区;
切分模块,用于将所述灰度图像进行切分,并将切分后的灰度图像分别送入PFGA中的PE阵列所对应的InputBuffer,并产生脉冲信号,将所述脉冲信号发送至所述PE处理单元中的底层控制器;
第二放大模块,用于当Frate Generator接收到外部输入像素值T*rj时,将所述像素值T*rj放大预先设定倍数产生Frate数据缓存在BUFF中,同时送入Interval Generator并作为之后数据选择器的选择信号;
第三放大模块,用于将所述T值扩大预先设定倍数;所述T为脉冲神经网络的时间窗口;
时间间隔计算模块,用于基于放大预先设定倍数后的像素值T*rj和扩大预先设定倍数后的T值采用右移操作来替换除法计算时间间隔,并将所述时间间隔存储于BUFI中;
判断模块,用于将所述BUFF中的Frate数据以SEL信号送入Accumulator和OutputBlock中,并判断所述SEL信号是否为0,若为0,则使Accumulator和Output Block处于休眠状态;
图像脉冲序列生成模块,用于将所述时间间隔通过寄存器不断累加得到脉冲发放的时间序列,最终生成图像脉冲序列。
7.根据权利要求6所述的基于FPGA的图像脉冲编码***,其特征在于,所述将所述灰度图像进行切分具体包括:
将所述灰度图像按7*7大小的切分为16个特征图。
8.根据权利要求6所述的基于FPGA的图像脉冲编码***,其特征在于,所述预先设定倍数为128倍。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010385501.1A CN111583094B (zh) | 2020-05-09 | 2020-05-09 | 一种基于fpga的图像脉冲编码方法及*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010385501.1A CN111583094B (zh) | 2020-05-09 | 2020-05-09 | 一种基于fpga的图像脉冲编码方法及*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111583094A CN111583094A (zh) | 2020-08-25 |
CN111583094B true CN111583094B (zh) | 2023-04-25 |
Family
ID=72113383
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010385501.1A Active CN111583094B (zh) | 2020-05-09 | 2020-05-09 | 一种基于fpga的图像脉冲编码方法及*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111583094B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112363844B (zh) * | 2021-01-12 | 2021-04-09 | 之江实验室 | 一种面向图像处理的卷积神经网络垂直分割方法 |
CN114819121B (zh) * | 2022-03-28 | 2022-09-27 | 中国科学院自动化研究所 | 基于脉冲神经网络的信号处理装置及信号处理方法 |
CN115063283A (zh) * | 2022-06-13 | 2022-09-16 | 脉冲视觉(北京)科技有限公司 | 一种用于图像重构的逻辑器件 |
CN115880883B (zh) * | 2023-01-29 | 2023-06-09 | 上海海栎创科技股份有限公司 | 一种***间选择性传输控制信号的***及方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016127357A1 (zh) * | 2015-02-12 | 2016-08-18 | 中国科学技术大学 | 一种基于fpga的时间数字变换器 |
CN108470190A (zh) * | 2018-03-09 | 2018-08-31 | 北京大学 | 基于fpga定制脉冲神经网络的图像识别方法 |
WO2018170508A1 (en) * | 2017-03-17 | 2018-09-20 | Regents Of The University Of Colorado, A Body Corporate | High speed two-dimensional event detections and imaging with an analog interface |
CN108846408A (zh) * | 2018-04-25 | 2018-11-20 | 中国人民解放军军事科学院军事医学研究院 | 基于脉冲神经网络的图像分类方法及装置 |
CN110287858A (zh) * | 2019-06-21 | 2019-09-27 | 天津大学 | 基于fpga的仿生脉冲神经网络视觉识别*** |
-
2020
- 2020-05-09 CN CN202010385501.1A patent/CN111583094B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016127357A1 (zh) * | 2015-02-12 | 2016-08-18 | 中国科学技术大学 | 一种基于fpga的时间数字变换器 |
WO2018170508A1 (en) * | 2017-03-17 | 2018-09-20 | Regents Of The University Of Colorado, A Body Corporate | High speed two-dimensional event detections and imaging with an analog interface |
CN108470190A (zh) * | 2018-03-09 | 2018-08-31 | 北京大学 | 基于fpga定制脉冲神经网络的图像识别方法 |
CN108846408A (zh) * | 2018-04-25 | 2018-11-20 | 中国人民解放军军事科学院军事医学研究院 | 基于脉冲神经网络的图像分类方法及装置 |
CN110287858A (zh) * | 2019-06-21 | 2019-09-27 | 天津大学 | 基于fpga的仿生脉冲神经网络视觉识别*** |
Also Published As
Publication number | Publication date |
---|---|
CN111583094A (zh) | 2020-08-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111583094B (zh) | 一种基于fpga的图像脉冲编码方法及*** | |
CN110390385B (zh) | 一种基于bnrp的可配置并行通用卷积神经网络加速器 | |
CN109784489B (zh) | 基于fpga的卷积神经网络ip核 | |
EP3557425B1 (en) | Accelerator and system for accelerating operations | |
CN110458279B (zh) | 一种基于fpga的二值神经网络加速方法及*** | |
CN108108809B (zh) | 一种针对卷积神经元网络进行推理加速的硬件架构及其工作方法 | |
CN107609641B (zh) | 稀疏神经网络架构及其实现方法 | |
EP3557485A1 (en) | Method for accelerating operations and accelerator apparatus | |
CN108229671B (zh) | 一种降低加速器外部数据存储带宽需求的***和方法 | |
CN110321997B (zh) | 高并行度计算平台、***及计算实现方法 | |
CN108805272A (zh) | 一种基于fpga的通用卷积神经网络加速器 | |
CN110991632A (zh) | 一种基于fpga的异构神经网络计算加速器设计方法 | |
CN111582451B (zh) | 图像识别层间并行流水线型二值化卷积神经网络阵列架构 | |
CN111626403B (zh) | 一种基于cpu-fpga内存共享的卷积神经网络加速器 | |
EP3352132B1 (en) | Image processing method and image processing apparatus | |
Li et al. | Efficient depthwise separable convolution accelerator for classification and UAV object detection | |
CN113051216A (zh) | 一种基于FPGA加速的MobileNet-SSD目标检测装置及方法 | |
Tu et al. | A power efficient neural network implementation on heterogeneous FPGA and GPU devices | |
US20200356809A1 (en) | Flexible pipelined backpropagation | |
CN113792621B (zh) | 一种基于fpga的目标检测加速器设计方法 | |
CN109472734B (zh) | 一种基于fpga的目标检测网络及其实现方法 | |
CN109685208B (zh) | 一种用于神经网络处理器数据稀梳化加速的方法及装置 | |
CN117217274B (zh) | 向量处理器、神经网络加速器、芯片及电子设备 | |
CN110728303B (zh) | 基于卷积神经网络数据复杂度的动态自适应计算阵列 | |
US20230128421A1 (en) | Neural network accelerator |
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 |