CN115526768A - 具有容错机制的基于视频流处理的二维卷积神经网络架构 - Google Patents
具有容错机制的基于视频流处理的二维卷积神经网络架构 Download PDFInfo
- Publication number
- CN115526768A CN115526768A CN202211147656.7A CN202211147656A CN115526768A CN 115526768 A CN115526768 A CN 115526768A CN 202211147656 A CN202211147656 A CN 202211147656A CN 115526768 A CN115526768 A CN 115526768A
- Authority
- CN
- China
- Prior art keywords
- node
- fault
- node unit
- unit
- units
- 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
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
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/06—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
- G06N3/063—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
-
- 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)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Artificial Intelligence (AREA)
- Neurology (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Image Processing (AREA)
Abstract
本发明公开了一种具有容错机制的基于视频流处理的二维卷积神经网络架构,包括两路并行的流水线结构,流水线结构将各层卷积运算分布在流水线上的各个节点单元;流水线上的每一节点单元按照像素排列顺序独立处理一层或连续若干层的卷积运算,各个节点单元同步处理数据;两路流水线结构上的节点单元一一对应,两路流水线结构之间设有多个容错单元,容错单元连接对应两个节点单元的输出端,并实时比较两个节点单元的输出结果;下一节点单元的输入数据可通过容错单元切换。在流处理架构上设置多个容错单元,当系统发生多发型故障时,只要每个节点有一路正常工作,系统仍可正常运行,从而提高系统在恶劣条件下的整体可靠性。
Description
技术领域
本发明涉及神经网络技术领域,特别涉及具有容错机制的基于视频流处理的二维卷积神经网络架构。
背景技术
伴随着深度学习技术的发展,卷积神经网络越来越广泛的应用在图像处理及计算机视觉领域。由于卷积神经网络对算力有较高的要求,具有AI功能的通用及专用芯片普遍采用专用的AI加速器电路及模块,才能满足卷积神经网络的运算要求。其中最典型的方法是将卷积神经网络运算转换为线性矩阵运算,并采用乘法累加器阵列实现二维矩阵乘法加速运算。这种方法具有通用性强、容易实现等特点。但加速器应用效率较低,需要大量数据缓存及较高的数据带宽,因而会增加系统功耗及延时。这些缺点限制了AI技术在终端及边缘计算领域的推广应用。
同时,为了保证深度神经网络在恶劣环境下的系统可靠性,往往采用双备份电路设计。当其中一套电路失效时,可以采用另一套电路替补。这种方式可以保证在一路电路失效时系统仍可正常工作。但当出现多发性电路故障时,则系统大概率失效。
发明内容
为了解决上述问题,本发明提供了一种具有容错机制的基于视频流处理的二维卷积神经网络架构,采用流水线式处理方式,减少系统对存储器带宽的要求,设置多个容错点,提高系统的运算效率和可靠性。
为此,本发明的技术方案是:具有容错机制的基于视频流处理的二维卷积神经网络架构,包括两路并行的流水线结构,流水线结构将各层卷积运算分布在流水线上的各个节点单元;流水线上的每一节点单元按照像素排列顺序独立处理一层或连续若干层的卷积运算,各个节点单元同步处理数据;两路流水线结构上的节点单元一一对应,两路流水线结构之间设有多个容错单元,容错单元连接对应两个节点单元的输出端,并实时比较两个节点单元的输出结果;下一节点单元的输入数据可通过容错单元切换,连接同一流水线的上一节点单元输出结果或另一流水线的上一节点单元输出结果。
本发明采用两路并行的级联流水线处理结构,图像数据以像素为单位,进入流水线输入端,逐级进入流水线内各个节点单元,完成深度卷积神经网络的各级运算,每个节点单元可根据需求设计不同的卷积运算。同时,在两路流水线对应节点单元的输出端设置容错单元,容错单元可以比较两个节点单元的输出结果,如果结果一致,说明两个节点单元均正常,如果结果不一致,则说明有一个节点单元出现了异常,此时需要切断异常节点单元的输出,然后将正常节点单元的输出结果输入到两路流水线的下一节点单元;而两路流水线每一个节点单元的输出端均可设置一个容错单元,使得每一个节点单元都可切换输入。
优选地,所述容错单元的工作机制为:每个容错单元实时监测两路流水线上节点单元的输出结果,判断是否一致;当输出结果不一致时,两路流水线的输入端接入测试信号,容错单元根据测试信号判断出异常节点单元和正常节点单元,并切断异常节点单元的输出,异常节点单元所处流水线的下一节点单元接收正常节点单元的输出结果。为了判断出哪一路的节点单元出现异常,需要在系统内预存测试信号,且容错单元内存节点测试信号,当测试信号经过各个节点单元处理后,发送至容错单元,与容错单元内存的节点测试信号比对,从而判断出错的分支,并将正确的输出结果输送到异常分支下一个节点单元的输入端,以保证后续电路的正常运行。
优选地,所述容错单元通过异或电路比较两路输出结果是否一致;所述异或电路包括三个异或门和两个二选一控制开关,第一异或门的输入端连接两路流水线对应两个节点单元的输出结果;第二异或门的输入端连接其中一路流水线的节点单元和节点测试信号;第三异或门的输入端连接另一路流水线的节点单元和节点测试信号;两个二选一控制开关的输入端均连接两路流水线对应两个节点单元的输出结果,二选一控制开关的输入端分别连接两路流水线的下一个节点单元。
优选地,若两路流水线上对应节点单元的输出结果一致,则系统正常,数据沿流水线正常传输,即每一节点单元的输出结果均为下一节点单元的输入数据。
优选地,逐行扫描的图像数据按照顺序同步输入到两路流水线的输入端,每一个时钟节拍输入一个像素;各节点单元按照相同速度处理数据。各个单元按照统一的速度处理数据,上一个节点单元的输出结果直接输入下一个节点单元,不需要缓存大量数据,大大提高系统工作效率。
优选地,流水线上各节点单元同步处理数据,即第一个节点单元处理完第一个像素后,输出结果经容错单元判断正常,则传送至第二个节点单元,同时第一个节点单元处理第二个像素,以此类推,每个节点单元将处理的数据传送至下一个节点单元后,开始接收上一个节点单元处理的数据。
优选地,流水线上的每个独立的节点单元,均采用硬件电路实现二维卷积运算;所述硬件电路包括多个并行处理的乘法累加器及相应的本地行缓存单元及参数缓存单元,网络参数存储在参数缓存单元内;所有节点单元采用串联连接。节点单元按照流水线串联连接,每个节点单元原则上可以独立设计,但实际上是采用同样的结构,不同的乘法器数量及本地缓存大小。网络参数存储在参数缓存单元,可重复使用,减少系统缓存带宽要求。
优选地,相邻节点单元通过并联连接,可形成数据处理量更大的节点单元,且合并后形成的节点单元仍与其余节点单元保持相同速度处理数据;两路流水线上的节点单元数据处理量保持一致。相邻节点单元的乘法累加器、本地行缓存单元、参数缓存单元均合并;根据网络每一层/节点单元所需要的硬件资源(乘法器/缓存)决定,如果原有节点单元资源不足,则需要合并相邻节点单元。
优选地,同时处理多幅图像时,将多幅图像沿行方向拼接,节点单元内部设有补零功能,用于隔离并联图像在拼接位置的处理,即在每幅图像边缘补零。当需要对多幅图像同时做并行处理时,采用将多幅图像沿行方向拼接的方式组成一幅大图像处理,在拼接处保留足够的隔离带以减少图像边缘处的窜扰,利用补零的方式形成隔离带。
与现有技术相比,本发明的有益效果是:采用流水线处理方式,每一节点单元的运算结果输出到流水线的下一个节点单元作为输入数据,图像数据不需要传回到帧存储器缓存;在流处理架构上设置多个容错单元,实时监测各节点单元的输出情况,并根据节点上异常监测状态,调整输出结果;当系统发生多发型故障时,只要对应两个节点单元之间有一路正常工作,系统仍可正常运行,从而提高系统在恶劣条件下的整体可靠性。
附图说明
以下结合附图和本发明的实施方式来作进一步详细说明
图1为本发明的流水线架构图;
图2为本发明单个节点单元的结构图;
图3为本发明两个节点单元的合并连接图;
图4为本发明容错单元异常状态的电路连接图;
图5为本发明容错单元正常状态的电路连接图。
具体实施方式
参见附图。本实施例所述的二维卷积神经网络架构,包括两路并行的流水线结构,流水线结构将各层卷积运算分布在流水线上的各个节点单元;流水线上的每一节点单元按照像素排列顺序独立处理一层或连续若干层的卷积运算;每一个节点单元可包含多层卷积运算,具体卷积核数量根据实际需求设定。
两路流水线结构上具有相同数量的节点单元,将两路流水线上对应位置的节点单元设有一组,每组两个节点单元所包含的卷积运算相同。每组节点单元后方均设有一个容错单元,容错单元的输入端连接对应两个节点单元的输出端,容错单元的输出端连接下一组两个节点单元的输入端。
逐行扫描的Bayer或RGB图像数据按照顺序同步输入到两路流水线的输入端,每一个时钟节拍输入一个像素;两路流水线上对应两个节点单元的输出结果由容错单元进行比较。
所述容错单元的工作逻辑:
每个容错单元通过异或电路实时监测两路流水线上节点单元的输出结果,判断是否一致:
若两路流水线上对应节点单元的输出结果一致,则系统正常,数据沿流水线正常传输,即每一节点单元的输出结果均为下一节点单元的输入数据。
当两路流水线上对应节点单元的输出结果不一致时,系统启动测试程序,两路流水线的输入端接入测试信号,容错单元根据测试信号判断出异常节点单元和正常节点单元。为了判断出哪一路的节点单元出现异常,需要在系统内预存测试信号,且容错单元内存节点测试信号,当测试信号经过各个节点单元处理后,发送至容错单元,与容错单元内存的节点测试信号比对,从而判断出错的分支,并切断异常节点单元的输出。
根据异常测试结果,选择正确的分支,并将正确的输出结果输送到异常分支下一个节点单元的输入端,以保证后续电路的正常运行。
所述容错单元通过异或电路比较两路输出结果是否一致。所述异或电路包括三个异或门和两个二选一控制开关,第一异或门U1的输入端1连接流水线分支1上的节点单元的输出结果,输入端2连接流水线分支2上的节点单元的输出结果;第二异或门U2的输入端1连接流水线分支1节点单元的输出结果,输入端2连接节点测试信号(预存的);第三异或门U3的输入端1连接流水线分支2节点单元的输出结果,输入端2连接节点测试信号(预存的);控制开关S1的1脚连接流水线分支1上的节点单元的输出结果,2脚连接流水线分支2上的节点单元的输出结果,3脚连接流水线分支1上下一个节点单元的输入端;控制开关S2的1脚连接流水线分支2上的节点单元的输出结果,2脚连接流水线分支1上的节点单元的输出结果,3脚连接流水线分支2上下一个节点单元的输入端。
如图5所示,当第一异或门U1的输出端输出正常信号(低电平信号)时,则意味着分支1和分支2的输出结果一致,此时控制开关S1的3脚与1脚导通,流水线分支1上的节点单元的输出结果经由控制开关S1输入至下一节点单元;控制开关S2的3脚与1脚导通,流水线分支2上的节点单元的输出结果经由控制开关S2输入至下一节点单元;
如图4所示,当第一异或门U1的输出端输出异常信号(高电平信号)时,则意味着分支1和分支2的输出结果不一致,此时需要判断出现异常的流水线分支是哪一路:此时,两路流水线分支的总输入端接入测试信号,测试信号经一路路节点单元处理后,到达出现异常的节点单元,此时第二异或门U2的输入端1连接流水线分支1节点单元的输出结果,输入端2连接节点测试信号(预存的),若第二异或门U2的输出端输出正常信号(低电平信号),则意味着流水线分支1节点单元工作正常;则控制开关S1的3脚与1脚导通,流水线分支1上的节点单元的输出结果经由控制开关S1输入至分支1的下一节点单元;
此时第三异或门U3的输入端1连接流水线分支2节点单元的输出结果,输入端2连接节点测试信号(预存的),若第三异或门U3的输出端输出输出异常信号(高电平信号),则意味着流水线分支2节点单元工作异常;控制开关S2的3脚与2脚导通,流水线分支1上的节点单元的输出结果经由控制开关S2输入至分支2的下一节点单元。
容错电路可以设置为自动方式和手动方式:
自动方式:容错电路实时比较两路信号是否相同。如果相同,则系统工作正常。当两路信号比较结果不同时,则至少有一路出现故障。此时系统自动接入测试信号。容错电路则分别将预存的正常的测试信号输出数据与每一路信号数据比较,以此找出异常的电路分支;切换电路则启动并屏蔽异常分支电路。
手动方式:容错电路实时比较两路信号是否相同。如果相同,则系统工作正常。当两路信号比较结果不同时,此时系统产生报警信号,指示至少有一路电路工作异常。此时可以人工干预启动系统测试程序,逐级排查故障;并启动切换电路屏蔽异常电路分支。
正确节点单元的输出结果直接作为下一节点单元的输入数据;所述流水线上各个节点单元同步处理数据,即各节点单元按照相同速度处理数据。所谓同步是指各个单元按照统一的速度处理数据,第一节点单元处理完一个像素后,就将输出数据传送到第二节点单元,同时第一节点单元处理第二个像素,而第二节点单元不必等第一节点单元处理完所有数据后才开始处理,取消了系统级帧存储器或块缓存单元,不需要缓存大量数据,大大提高系统工作效率。
流水线上的每个独立的节点单元,采用硬件电路实现二维卷积运算;所述硬件电路包括多个并行处理的乘法累加器及相应的本地行缓存单元及参数缓存单元,网络参数存储在参数缓存单元内;所有节点单元采用串联连接。节点单元按照流水线串联连接,每个节点单元原则上可以独立设计,但实际上是采用同样的结构,但是选择不同的乘法器数量及本地缓存大小。网络参数存储在参数缓存单元,可重复使用,减少系统缓存带宽要求。硬件电路还包括输出多路复用器、时序控制器、数据接口、激活函数电路等卷积网络常规结构。
根据网络每一层/节点单元所需要的硬件资源(乘法器/缓存)决定,如果原有节点单元资源不足,则需要合并相邻节点单元。相邻节点单元通过并联连接,可形成数据处理量更大的节点单元,且合并后形成的节点单元仍与其余节点单元保持相同速度处理数据。相邻节点单元的乘法累加器、本地行缓存单元、参数缓存单元均合并。
当需要同时处理多幅图像时,将多幅图像沿水平的行方向拼接,组成一幅更大的图像进行处理,在拼接处保留足够的隔离带以减少图像边缘处的窜扰。节点单元内部设有补零功能,利用补零的方式形成隔离带,用于隔离并联图像在拼接位置的处理。因为做卷积运算时需要在边缘补零(复位移位寄存器),所以在拼接多幅图像时,需要在每幅图像边缘补零。
以上所述仅是本发明的优选实施方式,本发明的保护范围并不仅局限于上述实施例,凡属于本发明思路下的技术方案均属于本发明的保护范围。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理前提下的若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (9)
1.具有容错机制的基于视频流处理的二维卷积神经网络架构,其特征在于:包括两路并行的流水线结构,流水线结构将各层卷积运算分布在流水线上的各个节点单元;流水线上的每一节点单元按照像素排列顺序独立处理一层或连续若干层的卷积运算,各个节点单元同步处理数据;两路流水线结构上的节点单元一一对应,两路流水线结构之间设有多个容错单元,容错单元连接对应两个节点单元的输出端,并实时比较两个节点单元的输出结果;下一节点单元的输入数据可通过容错单元切换,连接同一流水线的上一节点单元输出结果或另一流水线的上一节点单元输出结果。
2.如权利要求1所述的具有容错机制的基于视频流处理的二维卷积神经网络架构,其特征在于:所述容错单元的工作机制为:每个容错单元实时监测两路流水线上节点单元的输出结果,判断是否一致;当输出结果不一致时,两路流水线的输入端接入测试信号,容错单元根据测试信号判断出异常节点单元和正常节点单元,并切断异常节点单元的输出,异常节点单元所处流水线的下一节点单元接收正常节点单元的输出结果。
3.如权利要求2所述的具有容错机制的基于视频流处理的二维卷积神经网络架构,其特征在于:所述容错单元通过异或电路比较两路输出结果是否一致;所述异或电路包括三个异或门和两个二选一控制开关,第一异或门的输入端连接两路流水线对应两个节点单元的输出结果;第二异或门的输入端连接其中一路流水线的节点单元和节点测试信号;第三异或门的输入端连接另一路流水线的节点单元和节点测试信号;两个二选一控制开关的输入端均连接两路流水线对应两个节点单元的输出结果,二选一控制开关的输入端分别连接两路流水线的下一个节点单元。
4.如权利要求2所述的具有容错机制的基于视频流处理的二维卷积神经网络架构,其特征在于:若两路流水线上对应节点单元的输出结果一致,则系统正常,数据沿流水线正常传输,即每一节点单元的输出结果均为下一节点单元的输入数据。
5.如权利要求1所述的具有容错机制的基于视频流处理的二维卷积神经网络架构,其特征在于:逐行扫描的图像数据按照顺序同步输入到两路流水线的输入端,每一个时钟节拍输入一个像素;各节点单元按照相同速度处理数据。
6.如权利要求1所述的具有容错机制的基于视频流处理的二维卷积神经网络架构,其特征在于:流水线上各节点单元同步处理数据,即第一个节点单元处理完第一个像素后,输出结果经容错单元判断正常,则传送至第二个节点单元,同时第一个节点单元处理第二个像素,以此类推,每个节点单元将处理的数据传送至下一个节点单元后,开始接收上一个节点单元处理的数据。
7.如权利要求1所述的具有容错机制的基于视频流处理的二维卷积神经网络架构,其特征在于:流水线上的每个独立的节点单元,均采用硬件电路实现二维卷积运算;所述硬件电路包括多个并行处理的乘法累加器及相应的本地行缓存单元及参数缓存单元,网络参数存储在参数缓存单元内;所有节点单元采用串联连接。
8.如权利要求1所述的具有容错机制的基于视频流处理的二维卷积神经网络架构,其特征在于:相邻节点单元通过并联连接,可形成数据处理量更大的节点单元,且合并后形成的节点单元仍与其余节点单元保持相同速度处理数据;两路流水线上的节点单元数据处理量保持一致。
9.如权利要求1所述的具有容错机制的基于视频流处理的二维卷积神经网络架构,其特征在于:同时处理多幅图像时,将多幅图像沿行方向拼接,节点单元内部设有补零功能,用于隔离并联图像在拼接位置的处理,即在每幅图像边缘补零。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211147656.7A CN115526768A (zh) | 2022-09-19 | 2022-09-19 | 具有容错机制的基于视频流处理的二维卷积神经网络架构 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211147656.7A CN115526768A (zh) | 2022-09-19 | 2022-09-19 | 具有容错机制的基于视频流处理的二维卷积神经网络架构 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115526768A true CN115526768A (zh) | 2022-12-27 |
Family
ID=84699692
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211147656.7A Pending CN115526768A (zh) | 2022-09-19 | 2022-09-19 | 具有容错机制的基于视频流处理的二维卷积神经网络架构 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115526768A (zh) |
-
2022
- 2022-09-19 CN CN202211147656.7A patent/CN115526768A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6035414A (en) | Reliability of crossbar switches in an information processing system | |
US4500951A (en) | Plant control system | |
EP0430569B1 (en) | Fault tolerant interconnection networks | |
CN101251816B (zh) | 一种用于可编程器件的冗余系统及其冗余实现方法 | |
JP2011216020A (ja) | 情報処理装置および回路再構成装置 | |
Belli et al. | An approach to the reliability optimization of software with redundancy | |
US5448572A (en) | Spare signal line switching method and apparatus | |
US3665418A (en) | Status switching in an automatically repaired computer | |
CN115526768A (zh) | 具有容错机制的基于视频流处理的二维卷积神经网络架构 | |
CN113851175A (zh) | 存算一体的冗余替换电路、芯片及计算装置 | |
JPH05235886A (ja) | 伝送端局装置の切替え方式 | |
CN113850033B (zh) | 一种余度系统、余度管理方法及可读存储介质 | |
JPH03132861A (ja) | マルチプロセッサ・システムの再構成制御方式 | |
US6880119B1 (en) | Method for supervising parallel processes | |
CN1121756A (zh) | 电信和数据通信系统 | |
JPH05160876A (ja) | 通信制御プロセッサの管理方法 | |
KR20000040686A (ko) | Lan 선로의 이중화 시스템 | |
KR0152229B1 (ko) | 시스팀의 이중화를 위한 저가형 이중화 노드 | |
CN118075291B (zh) | 数据中心分布式机器学习参数的同步加速方法及装置 | |
Leung | On-line fault identification in multistage interconnection networks | |
JP2839664B2 (ja) | 計算機システム | |
JPH11134211A (ja) | 二重化コンピュータシステムおよびその運用方法 | |
Quesnell | Fault Tolerant Distributive Processing | |
JPH0653995A (ja) | パケット交換装置の回線対応部 | |
CN115334056A (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 |