一种具有图像处理功能的智能存储设备的制造方法

文档序号:9667466阅读:630来源:国知局
一种具有图像处理功能的智能存储设备的制造方法
【技术领域】
[0001]本发明涉及计算机硬件存储技术领域以及深度学习(Deep Learning)的卷积神经网络(Convolut1nal Neural Networks, CNN)的人工智能技术领域,尤其涉及一种具有图像处理功能的智能存储设备。
【背景技术】
[0002]卷积神经网络(CNN)是一个广为人知的深度学习架构,它拓展于人工神经网络并在视频监控、移动机器人视觉、图像搜索引擎等领域里被广泛使用。CNN的设计灵感来源于生物的视觉神经,通过处理具有多层神经链接特性的数据来达到图像识别的高精度要求。最近基于深度学习算法的急速需求也极大地推动了深度卷积神经网络(De印CNN)的研究。由于CNN特殊的运算模式,通用处理器(CPU)很难有效地实现CNN算法并满足较高的性能需求。如此一来,基于可编程门阵列器件(FPGA)、显卡(GPU)甚至专用集成电路(ASIC)等各种加速模块也被设计用来改善CNN的运算性能。由于FPGA具有高性能、高能效、开发周期短和可重构等特点,FPGA的加速模块也广泛地被研究者关注。
[0003]另一方面,随着信息传播的爆发式增长,数据存储也遇到容量和速度的挑战。近年来,固态硬盘(SSD)的技术日趋成熟,因其特有的存取速度优势,传统的磁碟硬盘正在逐步被速度更快的SSD所取代。例如,在互联网、安全防护、刑事侦查等领域中,大规模图像数据的分类及检索功能的应用需求日益增多。目前常用的解决方法是利用服务器的CPU运算能力或者是独立的加速板卡例如GPU或者FPGA实现图像的高速分类和检索。然而,这几种做法都有或多或少的缺陷,一种需要倚靠服务器本身CPU的强大计算能力。另外一种的加速板卡方式需要占用服务器的扩展插槽,一般为PCIe。而服务器本身的插槽位数有限,在引入附加成本的同时,扩展性也收到了限制。如果存储设备本身已经具备了图片分类及检索功能之后,以上的问题就可以得到很好的解决。

【发明内容】

[0004]针对现有技术中的大规模图像数据的分类及检索时所存在的上述缺陷,本发明提供了一种基于卷积神经网络的具有图像处理功能的智能存储设备。
[0005]依据本发明的一个方面,提供了一种具有图像处理功能的智能存储设备,包括:
[0006]一集成电路,包括一主机控制器、一设备控制器、一第一逻辑单元和一第二逻辑单元,其中所述第一逻辑单元与所述第二逻辑单元相互独立;
[0007]—主机,电性耦接至所述主机控制器,所述主机通过所述主机控制器与所述集成电路进行双向数据传输;以及
[0008]一固态硬盘,电性耦接至所述设备控制器,所述固态硬盘通过所述设备控制器与所述集成电路进行双向数据传输,
[0009]其中,所述智能存储设备藉由所述第一逻辑单元和所述第二逻辑单元对应地实现图像分类和图像检索。
[0010]在其中的一实施例,所述集成电路为一现场可编程门阵列。
[0011]在其中的一实施例,所述主机控制器和所述设备控制器均为SATA接口电路。
[0012]在其中的一实施例,所述第一逻辑单元为CNN加速模块,用于接收来自所述主机的图片,对所述图片进行分类,并将分类结果存储于所述固态硬盘。
[0013]在其中的一实施例,所述CNN加速模块的分类结果包括分类标识码和索引节点地址,所述分类标识码用于生成图片目录文件,所述索引节点地址用于生成索引节点地址列表。
[0014]在其中的一实施例,所述第二逻辑单元为向量比对加速模块,用于根据来自所述主机的图片检索信息,对所述固态硬盘中的图片文件进行特征提取和向量比对,并依据相似度的高低生成检索目录文件。
[0015]在其中的一实施例,所述向量比对加速模块使用所述集成电路中的数据处理模块对目标向量和图片特征进行欧式距离计算,以获得图片相似度的高低。
[0016]在其中的一实施例,所述CNN加速模块包括多个处理单元、片上缓存器、片外存储器和片内/片外交互单元,其中,所述片外存储器用于存储待处理的图片数据,所述片内/片外交互单元用于处理单元与片外存储器之间的数据通信,所述片上缓存器用于在所述处理单元进行卷积运算之前对所述待处理的图片数据进行高速缓存。
[0017]在其中的一实施例,所述CNN加速模块电性耦接至中断控制器和控制总线,其中,所述CNN加速模块通过所述控制总线向数据处理模块发送交互指令,所述数据处理模块根据所述交互指令并通过数据总线与片外存储器进行数据通信。
[0018]在其中的一实施例,所述数据处理模块的工作频率为100MHz,所述片外存储器的数据带宽为400MB/S。
[0019]采用本发明的具有图像处理功能的智能存储设备,其包括集成电路、主机和固态硬盘。该集成电路包括主机控制器、设备控制器、第一逻辑单元和第二逻辑单元。该主机电性耦接至上述主机控制器,主机通过主机控制器与集成电路进行双向数据传输。固态硬盘电性耦接至设备控制器,并通过设备控制器与集成电路进行双向数据传输。本发明的智能存储设备藉由第一逻辑单元和第二逻辑单元对应地实现图像分类和图像检索。相比于现有技术,本发明将诸如FPGA芯片的集成电路实现CNN硬件加速功能、向量比对功能,并透过与固态硬盘的数据通信来实现图片存取过程中的高速分类存储以及图片读取时的快速检索功能。如此一来,本发明通过集成电路的深度流水设计,在性能上完全能够满足高速存取的应用场景,并且集成电路和固态硬盘的功耗较低,因此可有效提高单位设备的运算能效比。此外,诸如服务器的主机CPU只需要负责通信和存储的控制调度,不必具备强大的计算性能;服务器允许的硬盘接入数目高于PCIe插槽的配置数目,在数据存储方面具有更好的扩展性。
【附图说明】
[0020]读者在参照附图阅读了本发明的【具体实施方式】以后,将会更清楚地了解本发明的各个方面。其中,
[0021]图1示出依据本发明的一实施方式,具有图像处理功能的智能存储设备的结构示意图;
[0022]图2示出图1的智能存储设备中的集成电路的结构示意图;
[0023]图3示出图2的集成电路中的CNN加速模块的结构示意图;
[0024]图4示出图2的集成电路中,CNN加速模块与其它功能模块的数据交互示意图;
[0025]图5示出采用图1的智能存储设备进行图片分类的示意图;以及
[0026]图6不出米用图1的智能存储设备进彳丁图片检索的不意图。
【具体实施方式】
[0027]为了使本申请所揭示的技术内容更加详尽与完备,可参照附图以及本发明的下述各种具体实施例,附图中相同的标记代表相同或相似的组件。然而,本领域的普通技术人员应当理解,下文中所提供的实施例并非用来限制本发明所涵盖的范围。此外,附图仅仅用于示意性地加以说明,并未依照其原尺寸进行绘制。
[0028]下面参照附图,对本发明各个方面的【具体实施方式】作进一步的详细描述。
[0029]图1示出依据本发明的一实施方式,具有图像处理功能的智能存储设备的结构示意图。图2示出图1的智能存储设备中的集成电路的结构示意图。
[0030]参照图1和图2,在该实施方式中,本发明的具有图像处理功能的智能存储设备包括一主机、一集成电路和一固态硬盘。其中,集成电路包括一主机控制器、一设备控制器、一第一逻辑单元和一第二逻辑单元。第一逻辑单元与第二逻辑单元相互独立。例如,第一逻辑单元处于主机一集成电路一固态硬盘的数据通路上,用来实现图片分类存储操作。又如,第二逻辑单元处于固态硬盘一集成电路一主机的数据通路上,用来实现图片检索和读取操作。
[0031]主机电性耦接至集成电路中的主机控制器。主机通过主机控制器与集成电路进行双向数据传输。固态硬盘电性耦接至设备控制器。固态硬盘通过设备控制器与集成电路进行双向数据传输。因此,智能存储设备藉由第一逻辑单元和第二逻辑单元对应地实现图像分类和图像检索。较佳地,集成电路为一现场可编程门阵列(FPGA)芯片。主机控制器和设备控制器均为SATA接口电路。在此,简要描述一下SATA数据通信的主要操作流程:首先从主机端接收FIS命令数据,然后解码并执行ΑΤΑ命令,接着发送FIS命令数据给固态硬盘,然后等待来自固态硬盘发回的FIS状态数据,最后将该FIS状态数据返回至主机端。在FPGA芯片中,数据处理模块负责转发FIS数据至主机端或固态硬盘。
[0032]在一具体实施例,第一逻辑单元为CNN加速模块,用于接收来自主机的图片,对图片进行分类并将分类结果存储于固态硬盘。进一步,CNN加速模块的分类结果包括分类标识码(分类id)和索引节点地址(inode地址),分类标识码用于生成图片目录文件,索引节点地址用于生成索引节点地址列表。后续将结合图5进行具体描述。
[0033]在一具体实施例,第二逻辑单元为向量比对加速模块,用于根据来自主机的图片检索信息,对固态硬盘中的图片文件进行特征提取和向量比对,并依据相似度的高低生成检索目录文件。进一步,向量比
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1