CN211403419U - 基于二值化算法的加速控制系统、芯片及机器人 - Google Patents
基于二值化算法的加速控制系统、芯片及机器人 Download PDFInfo
- Publication number
- CN211403419U CN211403419U CN201821303829.9U CN201821303829U CN211403419U CN 211403419 U CN211403419 U CN 211403419U CN 201821303829 U CN201821303829 U CN 201821303829U CN 211403419 U CN211403419 U CN 211403419U
- Authority
- CN
- China
- Prior art keywords
- burst
- state
- binarization
- state machine
- data
- 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.)
- Withdrawn - After Issue
Links
Images
Landscapes
- Image Input (AREA)
Abstract
本实用新型公开基于二值化算法的加速控制系统、芯片及机器人,用于通过AHB总线读写外部的图像存储器。该加速控制系统包括主控制模块、二值化模块和二值化FIFO模块;主控制模块用于当主状态机处于突发读模式状态时,通过接口控制状态机控制AHB总线读取所述图像存储器内的待处理的像素数据,并控制AHB总线内当前像素数据突发传输给二值化模块处理,同时还通过突发读状态机控制二值化FIFO模块读取二值化模块内上一个突发传输的像素数据处理得到的二值化数据,使得所述加速控制系统以流水线的运行方式加速二值化的处理速度,直到将所述图像存储器内存储的全部像素数据被处理,并告知向CPU发送中断。
Description
技术领域
本实用新型涉及硬件加速器领域,具体涉及一种基于二值化算法的加速控制系统、芯片及机器人。
背景技术
当前,扫地机在采用VSLAM进行地图建图和定位时,需要对获取的图像数据进行预处理,然后才能给软件使用。其中,有一种处理算法叫做二值化运算。二值化运算是一种图像处理方式,将图像变成灰度图以增强边缘效果,在图像处理中有广泛应用。软件在对图像进行二值化运算处理时,需要对图像数据进行读取、处理和再写回的动作。在现有技术的片上系统上,CPU发出访问指令,经过AHB总线,查找到存储器所在的空间,对存储器进行访问。访问成功则存储器会对AHB总线发出成功响应的信号,同时送出其他CPU希望得到的数据,AHB总线将这些信号传导回CPU完成一次指令的操作。而由于CPU逻辑的单元都是标准时序或组合元件,它们的翻转速度非常的快,而存储器的一个存储单元往往是由一堆的组合逻辑加在一起才能实现,因此对他们的访问要等待好几个时钟周期才能获得响应,大大降低了CPU的运行效率。所以上述对图像像素的反复读写、二值化处理的过程,如果通过CPU干预完成二值化数据的处理和传输是非常消耗软件资源的,并抢占了其他模块的CPU工作时间,影响其他模块的工作速度,尤其在大量的图像处理的时候会大大增加CPU的工作负担,严重影响整体芯片的性能。
实用新型内容
本实用新型的目的在于提供基于二值化算法的加速控制系统,该加速控制系统用于通过AHB总线读写外部的图像存储器,该加速控制系统还包括主控制模块、二值化模块和二值化FIFO模块;二值化模块,用于接收并二值化处理所述图像存储器中突发传输的像素数据,再将处理得到的二值化数据传输至二值化FIFO模块,直到将所述图像存储器内存储的图像的全部像素数据处理完成,才告知所述加速控制系统向CPU发送中断指令;主控制模块包括主状态机、突发读状态机、突发写状态机和接口控制状态机;主控制模块,用于当主状态机处于突发读模式状态时,通过接口控制状态机控制AHB总线读取所述图像存储器内的待处理的像素数据,并控制AHB总线内当前像素数据突发传输给二值化模块处理,同时还通过突发读状态机控制二值化FIFO模块读取二值化模块内基于上一个突发传输而来的像素数据处理得到的二值化数据,使得所述加速控制系统在主状态机的控制下以流水线的运行方式加速二值化的处理速度;主控制模块,还用于当主状态机处于突发写模式状态时,通过突发写状态机将二值化FIFO模块内保存的二值化数据写入AHB总线,同时通过接口控制状态机控制AHB总线内的二值化数据写回所述图像存储器。
进一步地,所述主状态机,用于在突发读模式状态下,激活所述突发读状态机由初始状态进入突发读工作状态,通过AHB总线突发读取完所述图像存储器内的一个突发传输长度的所述像素数据,并控制AHB总线内的所述像素数据突发传输至所述二值化模块,同时通过所述突发读状态机控制所述二值化FIFO模块突发读取出所述二值化模块中处理得到的所述二值化数据,当一个突发传输长度的所述二值化数据还没被完全保存到所述二值化FIFO模块时,通过所述接口控制状态机控制AHB总线内突发读取的下一个突发传输长度的所述像素数据突发传输给所述二值化模块进行处理,等到一个突发传输长度的所述二值化数据已经完全保存到所述二值化FIFO模块时,进入突发读模式等待状态;所述主状态机,用于在突发读模式等待状态下, 等待AHB总线做好突发写所述二值化FIFO模块的准备,该状态持续一个时钟周期后,由突发读模式等待状态跳转至突发写模式状态;所述主状态机,用于在突发写模式状态下,激活所述突发写状态机由初始状态进入突发写工作状态,使得一个突发传输长度的所述二值化数据被控制从所述二值化FIFO模块突发写出至AHB总线,同时通过接口控制状态机控制AHB总线内一个突发传输长度的所述二值化数据写回所述图像存储器,当一个突发传输长度的所述二值化数据还没被完全写入所述图像存储器时,通过所述突发写状态机控制所述二值化FIFO模块内的下一个突发传输长度的所述二值化数据突发传输给AHB总线,等到一个突发传输长度的所述二值化数据已经完全写入所述图像存储器时,由突发写模式状态进入突发写模式等待状态;所述主状态机,用于在突发写模式等待状态下,根据所述二值化FIFO模块内的所述二值化数据的个数判断是否二值化处理完所述图像存储器的全部所述像素数据,是则由突发写模式等待状态进入结束状态,否则进入突发读模式状态;其中,所述二值化FIFO模块的深度等于所述突发传输长度,所述突发传输长度是每一次突发传输的数据个数,其在突发读模式状态和突发写模式状态下是相等。
进一步地,所述突发读状态机,用于在所述突发读工作状态下,将所述图像存储器内的一个突发传输长度的所述像素数据完全突发读取至所述二值化模块,同时在所述二值化模块内对突发传输而来的所述像素数据进行二值化处理,并将相应处理得到的所述二值化数据传输至所述二值化FIFO模块,直到一个突发传输长度的所述二值化数据中最后一个数据开始传输入所述二值化FIFO模块时,进入突发读完成状态;所述突发读状态机,用于在突发读完成状态下,待到一个突发传输长度的所述二值化数据中最后一个数据已经传输入所述二值化FIFO模块时,进入突发读等待状态,以等待所述接口准备信号置高跳回所述初始状态;所述突发写状态机,用于在所述突发写工作状态下,通过控制所述二值化FIFO模块完成突发写回一个突发传输长度的所述二值化数据至AHB总线,同时控制所述二值化数据从AHB总线传输写入所述图像存储器中,直到一个突发传输长度的所述二值化数据中最后一个数据开始传输写入所述图像存储器时,进入突发写完成状态;所述突发写状态机,用于在突发写完成状态下,当已经突发写回一个突发传输长度的所述二值化数据中最后一个数据至所述图像存储器时,进入突发写等待状态,以等待所述接口准备信号置高跳回所述初始状态。
进一步地,所述接口控制状态机,用于在初始状态下等待传输,若所述突发读状态机进入所述突发读工作状态,或者所述突发写状态机进入所述突发写工作状态,且所述图像存储器通过所述接口准备信号指示突发读/写做好准备时,进入非连续传输状态;所述接口控制状态机,用于在非连续传输状态下,如果所述突发读状态机在所述突发读工作状态下未将一个突发传输长度的所述二值化数据完全突发读取至所述二值化FIFO模块,或者,如果所述突发写状态机在所述突发写工作状态下未间接控制AHB总线将一个突发传输长度的所述二值化数据完全控制突发写入所述图像存储器,则进入连续传输状态;所述接口控制状态机,用于在非连续传输状态下,如果所述突发读状态机在所述突发读工作状态下将一个突发传输长度的所述二值化数据完全突发读取至所述二值化FIFO模块,或者,如果所述突发写状态机在所述突发写工作状态下间接控制AHB总线将一个突发传输长度的所述二值化数据完全突发写入所述图像存储器,则进入所述初始状态;所述接口控制状态机,用于在所述连续传输状态下,如果一个突发传输长度的所述二值化数据中最后一个数据已经突发读取至所述二值化FIFO模块,或者,如果一个突发传输长度的所述二值化数据中最后一个数据已经突发写入所述图像存储器,则进入所述初始状态。
进一步地,所述加速控制系统配置有用于AHB总线突发传输的读写寄存器组,其中,读寄存器,用于存储所述图像存储器突发传输过来的所述像素数据、对应的突发传输长度信息和所述接口控制状态机发送的AHB协议的突发读指令信息;写寄存器,用于存储所述二值化模块突发传输过来的所述二值化数据、对应的突发传输长度信息和所述接口控制状态机发送的AHB协议的突发写指令信息;所述读写寄存器组根据所述接口控制状态机发送的基于AHB协议的突发指令信息进行读写操作:当进行突发读操作时,根据AHB总线解析的突发读指令信息选择所述读寄存器读入或读出所述像素数据;当进行突发写操作时,根据AHB总线解析的突发写指令信息选择所述写寄存器写入或写出所述二值化数据。
进一步地,所述加速控制系统还配置有中断寄存器,用于当所述图像存储器内存储的图像的全部像素数据被二值化处理完成后,告知CPU从所述图像存储器内对应地址单元提取所述二值化数据,再进行软件处理。
一种芯片,该芯片是一种图像处理芯片,其内部架构包括所述加速控制系统,用来加速图像像素数据的二值化处理过程。
一种机器人,该机器人是一种移动视觉机器人,其内置有所述图像处理芯片。
本实用新型实施例的有益效果在于,图像数据的读取,处理以及写出完全由硬件电路完成,通过硬件方式完成上述图像数据读取数据、数据运算和写回数据,这些操作完全不需要软件全程参与,只需要CPU在运算开始的时候进行信息配置,运算完成的时候处理中断就行了。因此,将二值化算法用硬件的方式实现,能够将CPU解放出来,大大提高软件效率。
本实用新型的另外一些具体和优选的方面在所附独立和从属权利要求中被提出。从属权利要求的特征可以与独立权利要求的特征适当地按照与权利要求中所明确提出的那些组合方式不同的组合方式进行组合。
附图说明
图1为本实用新型实施例提供的基于二值化算法的加速控制系统框架的示意图;
图2为本实用新型实施例提供的主控制模块内部的主状态机的状态转换示意图;
图3为本实用新型实施例提供的主控制模块内部的突发读状态机的状态转换示意图;
图4为本实用新型实施例提供的主控制模块内部的突发写状态机的状态转换示意图;
图5为本实用新型实施例提供的主控制模块内部的接口控制状态机的状态转换示意图。
具体实施方式
本实用新型实施方式中所涉及到的各模块及状态机均为逻辑电路,在实际应用中,一个逻辑电路可以是一个物理单元,也可以是一个物理单元的一部分,还可以以多个物理单元的组合实现。此外,为了突出本实用新型的创新部分,本实用新型实施方式中没有将与解决本实用新型的技术问题关系不太密切的单元引入,但这并不表明本实用新型实施方式中不存在其它的单元。
本实用新型实施例提供基于二值化算法的加速控制系统,该加速控制系统用于通过AHB总线读写外部的图像存储器,并对图像存储器内的像素数据进行二值化计算处理的,作为一种硬件加速处理系统,应用于集成电路,相对于软件处理来说,该加速控制系统能够加快图像处理的速度,节省CPU带宽,减少软件资源的消耗。所述加速控制系统还包括主控制模块、二值化模块、二值化FIFO模块以及挂载前述模块的AHB总线。需要说明的是,所述加速控制系统中,基于AHB总线的接口时序需要符合AMB AHB协议。
在所述加速控制系统进行所述像素数据的读写和二值化处理之前,需要CPU预先配置所述图像存储器内存储的一幅图像的地址及像素分辨率大小,其像素大小范围为:最小为1X1,最大为1024X1024,并以矩阵的形式保存在存储介质中,在本实用新型实施中所述图像存储器是SOC芯片上SRAM或SOC芯片外部的DDR。另外CPU配置二值化的处理模式,及二值化结果在所述图像存储器内的目标保存地址。所述加速控制系统指定的突发传输长度是每一次突发传输的数据个数,在本实用新型实施例中设置为16,但根据所述图像存储器内实际待处理的像素数据不排除将突发传输长度设置为8、4、2或1,此外其在突发读模式状态和突发写模式状态下是相等,相应的,所述二值化FIFO模块的深度大小为16。
作为本实用新型实施例,如图1所示,所述二值化模块包括二值化逻辑电路和寄存器,所述二值化模块在所述主控制模块的控制作用下,通过AHB总线突发读取所述图像存储器中的像素数据传输至二值化逻辑电路,在二值化逻辑电路中对所述图像存储器中突发传输的像素数据进行二值化处理,即与其内部预置阈值进行比较得到对应的二值化数据,再经过寄存器以传输至所述二值化FIFO模块,直到将所述图像存储器内存储的图像的全部像素数据处理完成,才告知所述加速控制系统向CPU发送中断指令。
在本实用新型实施例的所述主控制模块中,设计主状态机、突发读状态机、突发写状态机和接口控制状态机共4个状态机。在主状态机的控制下,所述主控制模块读取和二值化处理所述图像存储器中的所述像素数据,同时将所述二值化数据写回所述图像存储器中。具体地,CPU发出中断使能指令,开始标志位start置1,主状态机开始从初始状态IDLE跳至突发读模式状态BRD_ST;当主状态机处于突发读模式状态BRD_ST时,所述主控制模块通过接口控制状态机的AHB解析指令控制AHB总线读取所述图像存储器内的待处理的像素数据,并控制AHB总线内当前像素数据突发传输给所述二值化模块处理;同时,突发读状态机发出读控制信号B_R给所述二值化FIFO模块,从而控制所述二值化FIFO模块读取二值化模块内基于上一个突发传输而来的像素数据处理得到的所述二值化数据,使得所述加速控制系统同时读取处理多个所述突发传输长度的所述像素数据,从而形成流水线的运行结构以加速二值化的处理过程。经过一个时钟周期的等待状态后主状态机跳至突发写模式状态BWR_ST。在突发写模式状态BWR_ST下,突发写状态机发出写控制信号B_W给所述二值化FIFO模块,使得所述二值化FIFO模块内保存的所述二值化数据被控制写入AHB总线,同时通过所述接口控制状态机控制AHB总线内的所述二值化数据写回所述图像存储器,从而加速所述二值化数据的读写过程。
具体地,在所述主控制模块中,对于其中所包括的状态机访问采用三级结构访问模式,即访问请求、访问应答、访问结束。状态机访问采用先到先得原则,一旦占用其它访问将会被屏蔽。所述主状态机控制其他3个状态机,所以访问请求由所述主状态机发出,当其中一个状态机检测到访问请求时,并且自己处于访问初始状态时,给出访问应答,如果所述主状态机检测到访问应答握手信号后,上述状态机激活自己状态,进入相应的状态中,并根据自己状态占用的突发传输的时钟周期,给出访问结束命令到所述主状态机。所述主状态机检测到访问结束后,结束本次访问,进入下一个状态,并访问下一个状态机,比如,由突发读模式状态下激活突发读状态机的操作切换到突发写模式状态下激活突发写状态机的操作。
作为本实用新型实施例,结合图1和图2所示,开始标志位start置1,则所述主状态机由初始状态IDLE跳至突发读模式状态BRD_ST;在突发读模式状态BRD_ST下,所述主状态机激活所述突发读状态机,使所述突发读状态机由初始状态IDLE1进入突发读工作状态BST_RD。所述主状态机通过AHB总线突发读取所述图像存储器内的一个突发传输长度的所述像素数据至所述二值化模块,其中突发传输长度代表一次突发传输16个数据;同时所述主状态机控制突发读状态机发出控制读信号B_R,使得所述二值化FIFO模块突发读取出并保存所述二值化模块处理得到的一个突发传输长度的所述二值化数据,该突发传输长度的所述二值化数据是所述二值化模块内基于上一个突发传输而来的像素数据处理得到的二值化数据。当一个突发传输长度的所述二值化数据还没被完全保存到所述二值化FIFO模块时,所述主状态机通过所述接口控制状态机控制AHB总线内从所述图像存储器内突发读取的下一个突发传输长度的所述像素数据突发传输给所述二值化模块进行处理,等到一个突发传输长度的所述二值化数据已经完全保存到所述二值化FIFO模块时,所述主状态机由突发读模式状态BRD_ST进入突发读模式等待状态BRD_WAIT。具体地,所述二值化FIFO模块的深度等于所述突发传输长度。
在突发读模式等待状态BRD_WAIT下,所述主状态机等待AHB总线做好突发写所述二值化FIFO模块的准备;所述主状态机在该状态下不控制AHB总线进行传输,并持续一个时钟周期,直到所述接口准备信号置高,表示AHB总线做好突发写的准备,再由突发读模式等待状态BRD_WAIT跳转至突发写模式状态BWR_ST。
在突发写模式状态BWR_ST下,所述主状态机激活所述突发写状态机,则所述突发写状态机由初始状态IDLE2进入突发写工作状态BST_WR,使得一个突发传输长度的所述二值化数据被控制从所述二值化FIFO模块突发写出至AHB总线,同时通过接口控制状态机控制AHB总线内存储的上一个突发传输长度的所述二值化数据写回所述图像存储器,其中突发传输长度代表一次突发传输16个数据。当一个突发传输长度的所述二值化数据还没被完全写入所述图像存储器时,所述主状态机控制所述突发写状态机发出控制写信号B_W,使得所述二值化FIFO模块内的下一个突发传输长度的所述二值化数据突发传输给AHB总线,等到一个突发传输长度的所述二值化数据已经完全写入所述图像存储器时,所述主状态机由突发写模式状态BWR_ST进入突发写模式等待状态BWR_WAIT。
在突发写模式等待状态BWR_WAIT下,所述主状态机根据所述二值化FIFO模块内基于所述像素数据处理得到的所述二值化数据的个数,判断所述二值化FIFO模块内的所述二值化数据的个数是否等于所述图像存储器的全部所述像素数据的个数,是则处理完所述图像存储器的全部所述像素数据,并由突发写模式等待状态BWR_WAIT进入结束状态FSM_FINISH。
作为本实用新型一个实施例,所述主状态机处于突发读模式状态BRD_ST,且所述接口准备信号置高时,如图3所示,所述突发读状态机由初始状态IDLE1跳至突发读工作状态BST_RD。在突发读工作状态BST_RD下,所述突发读状态机控制所述接口控制状态机向AHB总线发送基于AHB协议的突发读指令,使所述图像存储器内的一个突发传输长度的所述像素数据完全突发传输至所述二值化模块,同时在所述二值化模块内将传输入的一个突发传输长度的所述像素数据分别与预置阈值进行比较得到对应的一个突发传输长度的所述二值化数据,并将一个突发传输长度的所述二值化数据传输至所述二值化FIFO模块,直到一个突发传输长度的所述二值化数据中最后一个数据开始传输入所述二值化FIFO模块时,进入突发读完成状态DONE1时,所述突发读状态机进入突发读完成状态DONE1。在突发读完成状态DONE1下,当一个突发传输长度的所述二值化数据中最后一个数据已经传输入所述二值化FIFO模块时,所述突发读状态机进入突发读等待状态BWAIT1,以等待所述接口准备信号置高跳回初始状态IDLE1。
作为本实用新型一个实施例,所述主状态机处于突发写模式状态BWR_ST,且所述接口准备信号置高时,如图4所示,所述突发写状态机由初始状态IDLE2跳至突发写工作状态BST_WR。在突发写工作状态BST_WR下,所述突发写状态机通过发送控制信号给所述二值化FIFO模块,从而实现所述二值化FIFO模块将一个突发传输长度的所述二值化数据完全突发写回AHB总线,同时所述突发读状态机控制所述接口控制状态机向AHB总线发送基于AHB协议的突发写指令,使所述二值化数据从AHB总线突发写入所述图像存储器中,直到一个突发传输长度的所述二值化数据中最后一个数据开始传输写入所述图像存储器时,所述突发写状态机进入突发写完成状态DONE2。在突发写完成状态DONE2下,当一个突发传输长度的所述二值化数据中最后一个数据已经写入所述图像存储器时,所述突发写状态机进入突发写等待状态BWAIT2,以等待所述接口准备信号置高跳回初始状态IDLE2。
作为本实用新型一个实施例,如图5所示,所述接口控制状态机由所述突发读状态机和所述突发写状态机的工作状态决定其状态的跳转条件。在初始状态IDLE3下,所述接口控制状态机等待所述像素数据的突发传输。若所述突发读状态机进入突发读工作状态BST_RD,或者,所述突发写状态机进入突发写工作状态BST_WR,且所述图像存储器通过所述接口准备信号指示突发读/写做好准备时,所述接口控制状态机由初始状态IDLE3进入非连续传输状态NSEQ。
在非连续传输状态NSEQ中,所述接口准备信号置高,如果所述突发读状态机在突发读工作状态BST_RD中未将一个突发传输长度的所述二值化数据完全突发读取至所述二值化FIFO模块,或者,如果所述突发写状态机在突发写工作状态BST_WR下,通过所述主状态机间接控制AHB总线,未将一个突发传输长度的所述二值化数据完全突发写入所述图像存储器,则所述接口控制状态机由非连续传输状态NSEQ进入连续传输状态SEQQ;在所述突发读状态机和所述突发写状态机的控制作用下进行所述像素数据和所述二值化数据之间的突发传输;如果所述突发读状态机在突发读工作状态BST_RD中将一个突发传输长度的所述二值化数据完全突发读取至所述二值化FIFO模块,或者,如果所述突发写状态机在突发写工作状态BST_WR下,通过所述主状态机间接控制AHB总线,将一个突发传输长度的所述二值化数据完全突发写入所述图像存储器,则所述接口控制状态机由非连续传输状态NSEQ进入初始状态IDLE3,表示单次传输操作。但是,在非连续传输状态NSEQ中,如果所述接口准备信号没置高,则所述接口控制状态机停留在非连续传输状态NSEQ。
在连续传输状态SEQQ中,当所述接口准备信号置高时,如果在所述突发读状态机的控制下,如果一个突发传输长度的所述二值化数据中最后一个数据已经突发读取至所述二值化FIFO模块,或者,如果所述突发写状态机通过所述主状态机向所述接口控制状态机发送基于AHB协议的突发写指令,进而控制AHB总线将一个突发传输长度的所述二值化数据中最后一个数据完全突发写入所述图像存储器,则所述接口控制状态机由连续传输状态SEQQ进入初始状态IDLE3;如果所述接口准备信号没置高,或者,如果所述接口准备信号已经置高但上述的一个突发传输长度的所述二值化数据未在连续传输状态SEQQ中完成突发读写操作,则所述接口控制状态机保留在连续传输状态SEQQ。
作为本实用新型一个实施例,所述加速控制系统配置有用于AHB总线突发传输的读写寄存器组,其中,读寄存器,用于存储所述图像存储器突在突发读操作下传输过来的所述像素数据、对应的突发传输长度信息和所述接口控制状态机发送基于AHB协议的突发读指令信息;写寄存器,用于存储所述二值化模块突发传输过来的所述二值化数据、对应的突发传输长度信息和所述接口控制状态机发送的基于AHB协议的突发写指令信息;所述读写寄存器组根据所述接口控制状态机发送的基于AHB协议的突发指令信息进行读写操作:当进行突发读操作时,根据AHB总线解析的突发读指令信息选择所述读寄存器读入或读出所述像素数据;当进行突发写操作时,根据AHB总线解析的突发写指令信息选择所述写寄存器写入或写出所述二值化数据。在本实用新型实施例中,一次突发传输长度为16个数据,当所述图像存储器内所述像素数据不足16个但大于8个,则读写寄存器组配置突发传输长度为8个进行突发读取;当所述图像存储器内所述像素数据不足8个但大于4个,则读写寄存器组配置突发传输长度为4个进行突发读取;当所述图像存储器内所述像素数据不足4个但大于2个,则读写寄存器组配置突发传输长度为2个进行突发读取;当所述图像存储器内所述像素数据不足2个,则读写寄存器组配置突发传输长度为1个进行单次读取。故在所述加速控制系统中,所述突发读状态机和突发写状态机都支持burst16、burst8、burst4和burst2传输。
作为本实用新型一个实施例,所述加速控制系统还配置有中断寄存器,所述图像存储器中开始往AHB总线突发传输所述像素数据时,中断寄存器接收CPU发送的中断信号,所述主控制模块使能中断;当所述图像存储器内存储的图像的全部像素数据被二值化处理完成后,通过中断寄存器告知CPU从所述图像存储器内对应地址单元提取所述二值化数据,在CPU的控制下进行软件处理。相比CPU的直接控制读写运算控制,减少了许多响应和请求,所述硬件加速电路处理这一过程的效率更高。
本实用新型实施设计采用4个状态机来控制输入的所述像素数据的二值化处理及处理得到的所述二值化数据,其中所述主状态机用来控制所述突发读状态机、所述突发写状态机和所述接口控制状态机的转换过程,并通过AHB总线完成所述接口控制状态机与所述图像存储器的数据交互传输控制指令,整个状态转换过程需CPU预先配置数据存取地址和接收运算结果的中断通知,无需CPU的其他干预来完成数据交互。
一种芯片,该芯片是一种图像处理芯片,其内部架构包括所述加速控制系统,作为图像二值化算法加速引擎,用来加速所述图像像素数据的二值化处理过程,提高图像处理系统的数据吞吐量和二值化算法的运算速度。
一种机器人,该机器人是一种移动视觉机器人,其内置有所述图像处理芯片,用来加速移动视觉机器人的摄像头所采集图像数据的处理过程。
以上所描述的装置实施方式仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施方式方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
Claims (8)
1.基于二值化算法的加速控制系统,该加速控制系统用于通过AHB总线读写外部的图像存储器,其特征在于,该加速控制系统还包括主控制模块、二值化模块和二值化FIFO模块;
二值化模块,用于接收并二值化处理所述图像存储器中突发传输的像素数据,再将处理得到的二值化数据传输至二值化FIFO模块,直到将所述图像存储器内存储的图像的全部像素数据处理完成,才告知所述加速控制系统向CPU发送中断指令;
主控制模块包括主状态机、突发读状态机、突发写状态机和接口控制状态机;主控制模块,用于当主状态机处于突发读模式状态时,通过接口控制状态机控制AHB总线读取所述图像存储器内的待处理的像素数据,并控制AHB总线内当前像素数据突发传输给二值化模块处理,同时还通过突发读状态机控制二值化FIFO模块读取二值化模块内基于上一个突发传输而来的像素数据处理得到的二值化数据,使得所述加速控制系统在主状态机的控制下以流水线的运行方式加速二值化的处理速度;
主控制模块,还用于当主状态机处于突发写模式状态时,通过突发写状态机将二值化FIFO模块内保存的二值化数据写入AHB总线,同时通过接口控制状态机控制AHB总线内的二值化数据写回所述图像存储器。
2.根据权利要求1所述加速控制系统,其特征在于,所述主状态机,用于在突发读模式状态下,激活所述突发读状态机由初始状态进入突发读工作状态,通过AHB总线突发读取完所述图像存储器内的一个突发传输长度的所述像素数据,并控制AHB总线内的所述像素数据突发传输至所述二值化模块,同时通过所述突发读状态机控制所述二值化FIFO模块突发读取出所述二值化模块中处理得到的所述二值化数据,当一个突发传输长度的所述二值化数据还没被完全保存到所述二值化FIFO模块时,通过所述接口控制状态机控制AHB总线内突发读取的下一个突发传输长度的所述像素数据突发传输给所述二值化模块进行处理,等到一个突发传输长度的所述二值化数据已经完全保存到所述二值化FIFO模块时,进入突发读模式等待状态;
所述主状态机,用于在突发读模式等待状态下, 等待AHB总线做好突发写所述二值化FIFO模块的准备,该状态持续一个时钟周期后,由突发读模式等待状态跳转至突发写模式状态;
所述主状态机,用于在突发写模式状态下,激活所述突发写状态机由初始状态进入突发写工作状态,使得一个突发传输长度的所述二值化数据被控制从所述二值化FIFO模块突发写出至AHB总线,同时通过接口控制状态机控制AHB总线内一个突发传输长度的所述二值化数据写回所述图像存储器,当一个突发传输长度的所述二值化数据还没被完全写入所述图像存储器时,通过所述突发写状态机控制所述二值化FIFO模块内的下一个突发传输长度的所述二值化数据突发传输给AHB总线,等到一个突发传输长度的所述二值化数据已经完全写入所述图像存储器时,由突发写模式状态进入突发写模式等待状态;
所述主状态机,用于在突发写模式等待状态下,根据所述二值化FIFO模块内的所述二值化数据的个数判断是否二值化处理完所述图像存储器的全部所述像素数据,是则由突发写模式等待状态进入结束状态,否则进入突发读模式状态;
其中,所述二值化FIFO模块的深度等于所述突发传输长度,所述突发传输长度是每一次突发传输的数据个数,其在突发读模式状态和突发写模式状态下是相等。
3.根据权利要求2所述加速控制系统,其特征在于,所述突发读状态机,用于在所述突发读工作状态下,将所述图像存储器内的一个突发传输长度的所述像素数据完全突发读取至所述二值化模块,同时在所述二值化模块内对突发传输而来的所述像素数据进行二值化处理,并将相应处理得到的所述二值化数据传输至所述二值化FIFO模块,直到一个突发传输长度的所述二值化数据中最后一个数据开始传输入所述二值化FIFO模块时,进入突发读完成状态;
所述突发读状态机,用于在突发读完成状态下,待到一个突发传输长度的所述二值化数据中最后一个数据已经传输入所述二值化FIFO模块时,进入突发读等待状态,以等待所述接口准备信号置高跳回所述初始状态;
所述突发写状态机,用于在所述突发写工作状态下,通过控制所述二值化FIFO模块完成突发写回一个突发传输长度的所述二值化数据至AHB总线,同时控制所述二值化数据从AHB总线传输写入所述图像存储器中,直到一个突发传输长度的所述二值化数据中最后一个数据开始传输写入所述图像存储器时,进入突发写完成状态;
所述突发写状态机,用于在突发写完成状态下,当已经突发写回一个突发传输长度的所述二值化数据中最后一个数据至所述图像存储器时,进入突发写等待状态,以等待所述接口准备信号置高跳回所述初始状态。
4.根据权利要求1至权利要求3任一项所述加速控制系统,其特征在于,所述接口控制状态机,用于在初始状态下等待传输,若所述突发读状态机进入所述突发读工作状态,或者所述突发写状态机进入所述突发写工作状态,且所述图像存储器通过所述接口准备信号指示突发读/写做好准备时,进入非连续传输状态;
所述接口控制状态机,用于在非连续传输状态下,如果所述突发读状态机在所述突发读工作状态下未将一个突发传输长度的所述二值化数据完全突发读取至所述二值化FIFO模块,或者,如果所述突发写状态机在所述突发写工作状态下未间接控制AHB总线将一个突发传输长度的所述二值化数据完全控制突发写入所述图像存储器,则进入连续传输状态;
所述接口控制状态机,用于在非连续传输状态下,如果所述突发读状态机在所述突发读工作状态下将一个突发传输长度的所述二值化数据完全突发读取至所述二值化FIFO模块,或者,如果所述突发写状态机在所述突发写工作状态下间接控制AHB总线将一个突发传输长度的所述二值化数据完全突发写入所述图像存储器,则进入所述初始状态;
所述接口控制状态机,用于在所述连续传输状态下,如果一个突发传输长度的所述二值化数据中最后一个数据已经突发读取至所述二值化FIFO模块,或者,如果一个突发传输长度的所述二值化数据中最后一个数据已经突发写入所述图像存储器,则进入所述初始状态。
5.根据权利要求1所述加速控制系统,其特征在于,所述加速控制系统配置有用于AHB总线突发传输的读写寄存器组,其中,读寄存器,用于存储所述图像存储器突发传输过来的所述像素数据、对应的突发传输长度信息和所述接口控制状态机发送的AHB协议的突发读指令信息;写寄存器,用于存储所述二值化模块突发传输过来的所述二值化数据、对应的突发传输长度信息和所述接口控制状态机发送的AHB协议的突发写指令信息;
所述读写寄存器组根据所述接口控制状态机发送的基于AHB协议的突发指令信息进行读写操作:当进行突发读操作时,根据AHB总线解析的突发读指令信息选择所述读寄存器读入或读出所述像素数据;当进行突发写操作时,根据AHB总线解析的突发写指令信息选择所述写寄存器写入或写出所述二值化数据。
6.根据权利要求1所述加速控制系统,其特征在于,所述加速控制系统还配置有中断寄存器,用于当所述图像存储器内存储的图像的全部像素数据被二值化处理完成后,告知CPU从所述图像存储器内对应地址单元提取所述二值化数据,再进行软件处理。
7.一种芯片,其特征在于,该芯片是一种图像处理芯片,其内部架构包括基于权利要求1至权利要求6任一项所述加速控制系统,用来加速所述像素数据的二值化处理过程。
8.一种机器人,其特征在于,该机器人是一种移动视觉机器人,其内置有基于权利要求7所述图像处理芯片。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201821303829.9U CN211403419U (zh) | 2018-08-14 | 2018-08-14 | 基于二值化算法的加速控制系统、芯片及机器人 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201821303829.9U CN211403419U (zh) | 2018-08-14 | 2018-08-14 | 基于二值化算法的加速控制系统、芯片及机器人 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN211403419U true CN211403419U (zh) | 2020-09-01 |
Family
ID=72207756
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201821303829.9U Withdrawn - After Issue CN211403419U (zh) | 2018-08-14 | 2018-08-14 | 基于二值化算法的加速控制系统、芯片及机器人 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN211403419U (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108984442A (zh) * | 2018-08-14 | 2018-12-11 | 珠海市微半导体有限公司 | 一种基于二值化算法的加速控制系统、芯片及机器人 |
CN112162942A (zh) * | 2020-09-30 | 2021-01-01 | 南京蕴智科技有限公司 | 一种多模态图像处理硬件加速系统 |
CN114328311A (zh) * | 2021-12-15 | 2022-04-12 | 珠海一微半导体股份有限公司 | 一种存储控制器架构、数据处理电路及数据处理方法 |
-
2018
- 2018-08-14 CN CN201821303829.9U patent/CN211403419U/zh not_active Withdrawn - After Issue
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108984442A (zh) * | 2018-08-14 | 2018-12-11 | 珠海市微半导体有限公司 | 一种基于二值化算法的加速控制系统、芯片及机器人 |
CN108984442B (zh) * | 2018-08-14 | 2023-08-18 | 珠海一微半导体股份有限公司 | 一种基于二值化算法的加速控制系统、芯片及机器人 |
CN112162942A (zh) * | 2020-09-30 | 2021-01-01 | 南京蕴智科技有限公司 | 一种多模态图像处理硬件加速系统 |
CN114328311A (zh) * | 2021-12-15 | 2022-04-12 | 珠海一微半导体股份有限公司 | 一种存储控制器架构、数据处理电路及数据处理方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108984442B (zh) | 一种基于二值化算法的加速控制系统、芯片及机器人 | |
CN211403419U (zh) | 基于二值化算法的加速控制系统、芯片及机器人 | |
KR100881049B1 (ko) | 복수의 어드레스 2 채널 버스 구조 | |
CN106951379B (zh) | 一种基于axi协议的高性能ddr控制器及数据传输方法 | |
CN108595350B (zh) | 一种基于axi的数据传输方法和装置 | |
JP2002175216A (ja) | 行及び列コマンドを同時供給するためのシステム及び方法 | |
CN108415859B (zh) | 一种激光陀螺仪数据的硬件加速电路 | |
US20130151795A1 (en) | Apparatus and method for controlling memory | |
US6782463B2 (en) | Shared memory array | |
CN114442908B (zh) | 一种用于数据处理的硬件加速系统及芯片 | |
CN104572519A (zh) | 一种用于多处理器的多端口访存控制器及其控制方法 | |
CN108897696B (zh) | 一种基于DDRx存储器的大容量FIFO控制器 | |
CN110633233A (zh) | 一种基于流水线的dma数据传输处理方法 | |
CN115328832A (zh) | 一种基于pcie dma的数据调度系统与方法 | |
US20090287869A1 (en) | Bus Arbiter, Bus Device and System | |
CN107807888B (zh) | 一种用于soc架构的数据预取系统及其方法 | |
CN111694777B (zh) | 基于PCIe接口的DMA传输方法 | |
US6829692B2 (en) | System and method for providing data to multi-function memory | |
JP2006268857A (ja) | データ処理装置からレジスタ記憶システムにデータを書き込む方法、データ・レジスタおよびレジスタ・アクセス・システム | |
CN117171064A (zh) | 哈希运算系统及方法 | |
EP1193606B1 (en) | Apparatus and method for a host port interface unit in a digital signal processing unit | |
CN117971748A (zh) | 一种通信方法、转换电路及计算机设备 | |
JPH04300B2 (zh) | ||
JPH04367957A (ja) | マイクロコンピュータ | |
JP2001043355A (ja) | データ処理装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
GR01 | Patent grant | ||
GR01 | Patent grant | ||
AV01 | Patent right actively abandoned |
Granted publication date: 20200901 Effective date of abandoning: 20230818 |
|
AV01 | Patent right actively abandoned |
Granted publication date: 20200901 Effective date of abandoning: 20230818 |
|
AV01 | Patent right actively abandoned | ||
AV01 | Patent right actively abandoned |