CN109785905A - 一种面向基因比对算法的加速装置 - Google Patents

一种面向基因比对算法的加速装置 Download PDF

Info

Publication number
CN109785905A
CN109785905A CN201811546046.8A CN201811546046A CN109785905A CN 109785905 A CN109785905 A CN 109785905A CN 201811546046 A CN201811546046 A CN 201811546046A CN 109785905 A CN109785905 A CN 109785905A
Authority
CN
China
Prior art keywords
gene
alignment algorithm
unit
accelerating module
comparison 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.)
Granted
Application number
CN201811546046.8A
Other languages
English (en)
Other versions
CN109785905B (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.)
Institute of Computing Technology of CAS
Original Assignee
Institute of Computing Technology of CAS
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 Institute of Computing Technology of CAS filed Critical Institute of Computing Technology of CAS
Priority to CN201811546046.8A priority Critical patent/CN109785905B/zh
Publication of CN109785905A publication Critical patent/CN109785905A/zh
Application granted granted Critical
Publication of CN109785905B publication Critical patent/CN109785905B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Abstract

本发明提供了一种面向基因比对算法的加速装置。该加速装置包括主机端和多个加速模块,所述加速模块包括多个存储层、垂直切片管理单元和交换网络,其中:所述主机端用于控制向所述加速模块分发基因测序序列和接收基因比对结果;所述加速模块的存储层用于存储基因参考序列;所述加速模块的垂直切片管理单元用于管理将所述多个存储层进行垂直划分所形成的切片以及执行基因比对算法,获得基因比对结果;所述加速模块的交换网络用于控制该加速模块内部的数据交换以及该加速模块与外部的数据交换。本发明的加速装置利用定制结构能够提高基因比对算法的处理速度。

Description

一种面向基因比对算法的加速装置
技术领域
本发明涉及生物基因数据处理技术领域,尤其涉及一种面向基因比对算法的加速装置。
背景技术
目前,生物技术的发展正在引发农业、医药、能源、材料等领域的产业革命,有效缓解了食品、健康、资源等问题,具有广阔的发展空间。作为生物领域学科的生物信息学的重要性也日益凸显,它是当今生命科学和自然科学的重大前沿领域之一,其研究重点是基因组学和蛋白质组学,具体而言是从核酸和蛋白质序列出发,分析序列中表达的结构功能的生物信息。在序列(read)分析中,基因比对是最基本和最常用的方法,通过基因比对能够发现基因序列间的相似性和差异性,从而揭示生物的进化、遗传和变异等问题。目前基因比对技术迅猛发展,基因测序的成本大幅度的降低,使得基因分析的大量应用成为可能,该技术已在农作物育种、精准医疗和无创产检等领域获得广泛应用。高通量测序技术的普及使得基因测序生物数据量呈爆炸性的增长,因而快速地、低能耗地处理这些数据面临巨大的挑战。
在现有技术中,基因比对算法通常采用通用处理结构(例如普通服务器等),这种基因比对算法主要存在两方面问题:1)、CPU和存储器通常是分离的,通过电路板上的内存接口来访问数据,受到电气特性的限制,访存带宽有限;此外,由于基因比对操作程序的局部性很差,对内存带宽有很大的需求,这种对高带宽的需求与当前带宽不能满足其需求,造成基因比对算法运行性能差、功耗高。2)、通用处理器中通常会配置浮点运算器、定点运算器和分支预测逻辑等若干的功能部件,而基因比对算法具有计算密度低、并行度高的特征,这些部件不仅占用了处理器硅片的面积,而且消耗了大量的电能。
因此,需要对现有技术进行改进,以提供处理效率高、运行功耗低的面向基因比对算法的加速装置。
发明内容
本发明的目的在于克服上述现有技术的缺陷,提供一种面向基因比对算法的加速装置。
根据本发明的第一方面,提供了一种面向基因比对算法的加速装置。该加速装置包括主机端和多个加速模块,所述加速模块包括多个存储层、垂直切片管理单元和交换网络,其中:
所述主机端用于控制向所述加速模块分发基因测序序列和接收基因比对结果;
所述加速模块的存储层用于存储基因参考序列;
所述加速模块的垂直切片管理单元用于管理将所述多个存储层进行垂直划分所形成的切片以及执行基因比对算法,获得基因比对结果;
所述加速模块的交换网络用于控制该加速模块内部的数据交换以及该加速模块与外部的数据交换。
在一个实施例中,所述垂直切片管理单元包括垂直切片控制器、存储单元和基因比对算法执行单元,其中:
所述存储单元用于存储数据和程序代码;
所述垂直切片控制器用于控制该垂直切片管理单元的内部的逻辑控制以及与外部的信息交互;
所述基因比对算法执行单元用于执行基因比对算法,获得基因比对结果。
在一个实施例中,所述存储单元包括程序代码缓存单元、测序序列缓存单元、基因比对结果缓存单元,其中:
所述程序代码缓存单元用于存储执行基因比对算法的程序代码;
所述测序序列缓存单元用于存储待进行比对的基因测序序列;
所述基因比对结果缓存单元用于存储所述基因比对算法执行单元获得的基因比对结果。
在一个实施例中,所述基因比对算法执行单元采用多级流水线结构,各级流水线并行执行基因比对算法,获得各自的基因比对中间结果。
在一个实施例中,所述存储单元还包括多个寄存器堆,每个寄存器堆对应所述基因比对算法单元的一级流水线,用于缓存对应流水线的基因比对的中间结果。
在一个实施例中,所述多个寄存堆中的每一个还配置一个用于存放基因参考序列中检查点的专用寄存器以及一个用于存储基因参考序列中检查点之后的部分数据的专用寄存器。
在一个实施例中,所述基因比对算法执行单元的多级流水线共享一个所述程序代码缓存单元、共享一个所述测序序列缓存单元并共享一个所述基因比对结果缓存单元。
在一个实施例中,所述基因比对算法执行单元的每一级流水线包括定点加法器和移位器。
在一个实施例中,所述主机端通过内存映射方法将所述多个加速模块映射为内存区域的一部分。
根据本发明的第二方面,提供了一种面向基因比对算法的加速芯片,该加速芯片包括本发明提供的加速装置,其中,所述多个存储层、所述垂直切片管理单元和所述交换网络利用3D堆叠技术进行组合。
与现有技术相比,本发明的优点在于:基于3D堆叠制造工艺,设计了面向基因比对算法的加速装置,在该装置中,采用加速单元定制技术,去除了处理器中的浮点运算单元并增加了松耦合的定点运算单元,从而能够满足基因比对算法计算密度低的特征;配置了并行的定制处理逻辑,能够满足基因比对算法对并行度的需求;此外,将多层的内存单元与定制加速逻辑单元组成一个芯片,充分利用芯片内部的高速数据访问能力,克服了访存带宽受限的问题,从而显著提高了基因比对算法的运行速度和性能功耗比。
附图说明
以下附图仅对本发明作示意性的说明和解释,并不用于限定本发明的范围,其中:
图1示出了根据本发明一个实施例的面向基因比对算法的加速装置的结构图;
图2示出了根据本发明一个实施例的加速装置的主机端的主处理器的结构图;
图3示出了根据本发明一个实施例的加速装置中加速模块的结构图;
图4示出了根据本发明一个实施例的加速模块的垂直切片的结构图;
图5示出了根据本发明一个实施例的加速装置的工作流程示意图;
图6示出了根据本发明一个实施例的加速模块的访存流程图。
具体实施方式
为了使本发明的目的、技术方案、设计方法及优点更加清楚明了,以下结合附图通过具体实施例对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅用于解释本发明,并不用于限定本发明。
图1示出了根据本发明一个实施例的面向基因比对算法的加速装置的结构图,该加速装置100包括主机端110(host)和多个加速模块(Cube)120(示出了4个Cube,即Cube 0至Cube 3)。
主机端110与加速模块120之间具有通信连接,主机端110用于向完成加速模块120的基因测序序列的分发和控制功能,可采用通用处理器(例如X86处理器)实现。主机端110可通过内存映射的方式,将各加速模块120的存储空间映射到主机端110的存储空间中,从而避免了主机端110的处理器和加速模块120之间数据一致性的维护。
加速模块120用于实现基因比对算法的存储和计算功能,获得基因比对结果。
需要说明的是,图1中主机端110和各加速模块之间的连接仅为示意性描述,在实现时,可由多种连接方式,例如,各加速模块之间通过例如MESH机制进行通信,每一个加速模块可采用高速串行链路作为片外接口与外部互连等。主机端110和各Cube之间以及Cube与Cube之间可以以任意的拓扑互连,整个加速装置100的扩展性不受限制。此外,由于基因比对过程中不需要虚拟内存提供的映射功能,因此加速装置100中可以不必实现虚拟内存的功能,从而避免了地址转换的开销。为了支持主机端110中操作系统的运行,主机端110的主处理器在自己的主存储器中可使用虚拟地址。
图2示出了根据本发明一个实施例的加速装置的主机端的主处理器的内部结构图,其包括CPU和两级Cache结构,其中,一级Cache分为I-Cache和D-Cache,分别与CPU的端口ichche_port和dcache_port相连,二级Cache(L2cache)通过L2总线(L2bus)与一级Cache相连,L2cache通过内存总线(membus)与内存控制器(Memory Controller)之间进行数据传递,存储总线与存储控制器之间的接口标记为memectrl_port。
需要说明的是,主机端的主处理器可采用现有技术中其他类型的通用处理器,主处理器负责基因比对任务的分发和控制功能,能够访问所有加速模块的空间。在运行过程中,主处理器可使用自定义的数据传输进行系统调用,例如,将若干基因测序序列分配给各个加速模块等。主处理器可拥有自己的内存(例如配置不具备加速功能的普通内存),并运行操作系统。
图3示出了根据本发明一个实施例的加速装置中一个加速模块的结构图,该加速模块由多个层次的存储层310(其中以DRAM示意了两层存储层,即DRAM 1-16为一层,DRAM17-32为一层)、垂直切片管理单元320(或称Vault320)和交换网络330组成。
在实际应用中,存储层310、垂直切片管理单元320和交换网络330可通过3D堆叠技术组合在一起,加速模块中多层DRAM采用垂直划分的方式分成多个垂直切片,每个垂直切片的逻辑控制单元,即本文的垂直切片管理单元320可管理一个具有若干块的DRAM分区,例如,Vault 1负责管理DRAM 1的访存,Vault 2负责管理DRAM 2的访存,Vault 17负责管理DRAM 17的访存等。在传统的内存架构中,每个内存地址被静态地映射到特定的信道,而在本发明中,每个Vault都能被用来发送访存请求数据包,而不需要考虑具体的内存地址,这有助于更加均匀的分配负载,从而提高资源利用率,也提高了访存的并发度。
需要说明的是,垂直切片管理单元320具有用于逻辑处理的控制器(称为Vault控制器)、存储功能和计算功能等,关于垂直切片管理单元320的内部结构将在下文进一步描述。
存储层310用于存储基因参考序列,可包括多个存储层,例如,基于
图3的示例,可扩展为更多层的DRAM,而每一个Vault可管理一层DRAM中的分区,也可管理多层DRAM的分区。
交换网络330用于数据交换,例如,用于同一个Cube内部的Vault控制器之间以及Vault控制器与Cube外部之间的数据交换等。
交换网络330可采用基于交换开关的网络(Crossbar Networks)实现,例如,可以设置为片上直连网络或树形网络等多种形式。交换网络330包含读地址通道、写地址通道、读数据通道、写数据通道和写响应通道等,用于不同的Vault之间的数据交换。
Vault层320用于实现基因比对算法,每一个Vault中的控制器用于基因比对过程中的逻辑控制。
图4示出了根据本发明一个实施例的Vault的内部结构示意图,该Vault包括缓存逻辑、运算逻辑和控制逻辑三部分,在该实施例中,缓存逻辑包括测序序列缓存单元410、程序代码缓存单元420、多个寄存器堆(示出了寄存器堆1-3)和基因比对结果缓存单元430。运算逻辑包括由多条流水线(图中示出了流水线1-3)构成的基因比对算法执行单元,每条流水线可独立并行地执行基因比对,每条流水线包含定点加法器、移位器等功能计算单元(未示出)。控制逻辑由Vault控制器440实现。
参见图4示出的实施例,测序序列缓存单元410被多条流水线共享,在进行基因比对时,可通过DMA的方式将若干的测序序列read从主机端的内存中读取到测序序列缓存单元410,当某条流水线空闲时,则从测序序列缓存单元410中读取一条read并进行处理。每条流水线执行的均是基因比对算法的代码段,代码段不仅固定而且占用容量很少。在每个Vault中配置一个程序代码缓存单元420,只在程序开始运行时由主机端的主处理器配置一次,运行过程中不会改变。每条流水线对应一个寄存器堆,寄存器堆用于缓存基因比对过程的中间结果,并对一些常数进行缓存。在一个实施例中,每个寄存器堆中还配置一个256bit的寄存器专门用于存放检查点(Checkpoint)的值,在基因比对过程中,还需要读取参考基因序列中Checkpoint之后的256bit数据,因此,在每个寄存器堆中可进一步配置一个专用寄存器来存储检查点之后的这部分数据。
Vault控制器440用于对本Vault所对应的多层次的DRAM进行读写。基于图4的架构,每一个Vault控制器在读写Cube中的DRAM(存储参考序列)时采用独立的读队列和写队列来访问数据,在一个实施例中,数据的读写采用先来先服务的策略,数据的读写操作是由程序代码缓存单元中的程序控制。
需要说明的是,DRAM芯片由Bank、row(行)、col(列)层次结构组成,通常,对DRAM读取时可提供两种基础的行缓存策略:第一种是关闭页面策略,为每个列访问打开行然后通过一次预充电关闭;第二种是打开页面策略,留下一行打开直到发生bank冲突,在这种策略下,前一行关闭,新行打开。Vault控制器中可有两级调度:第一级调度是读和写之间的选择,通过监视读写队列的长度,选取较长长度的队列作为优先服务的对象;第二级调度是基于当前的页面策略,从读队列和写队列中分别按照先来先服务的原则选择一个请求。此外,主机端的主处理器可采用平均分配的方式向每个Vault中都分配相同数量的测序序列。由于在加速模块Cube上使用的是单一的物理地址空间,地址信息和任务分配信息可全部由应用程序自己管理。
应理解的是,尽管图4未示出,程序代码缓存单元420和基因比对结果缓存单元430也可由多条流水线共享,即每条流水线可分别地(不经由其他流水线)从程序代码缓存单元420获取基因比对算法的代码段,并在执行完之后,将比对结果存储到基因比对结果缓存单元430。
基于本发明实施例的Vault结构,能够实现基因比对算法的快速处理,例如,对于采用多级流水线的Vault中,每条流水线可分别进行取指(IF)、译码(ID)、执行(EX)、访存(MEM)和写回(WB)等,每级流水线的功能具体如下:
1)、取指阶段
从程序代码缓存单元中获取指令;
2)、译码阶段
对指令进行译码,获得指令的具体内容,例如加载类指令、存储类指令等。
3)执行阶段
执行获得的指令内容,例如,对于普通指令由定点加法器和移位器完成处理,对于加载类指令,从自身Vault所管理的数据或者同一个Cube中的其它Vault中读取数据。
4)、访存阶段
对于存储类指令,通过Vault中的Vault控制器将数据写入到本Vault所对应的DRAM中。
5)、写回阶段
例如,向主机端的主处理器内存写入基因比对结果等。
综上,Vault中设置的多条流水线之间相互独立、不存在数据依赖关系,每条流水线配置自己的功能部件(例如定点加法器和移位器),可以分别独立处理基因测序序列,而不需要进行通信。在基因比对算法的执行过程中,对每一个read序列片段都要和参考基因序列执行比对,而不同的read的处理之间不存在数据的相关性,这使得本发明的Vault具有很好的并行性能。从数据流角度看,每条流水线的输入数据由测序序列缓存单元提供,在计算过程的中间结果由每条流水线的寄存器堆缓存,计算完成后直接写入基因比对结果缓存单元,并通过DMA方式写入主机端的主处理器内存中。从控制流的角度看,每条流水线了独立地执行取指、译码等,每条流水线之间并不需要同步操作也不需要相互等待对方的数据。
根据一个实施例,本发明提供的加速装置的工作流程包括以下步骤,参见图5所示:
步骤S510,主机端的主处理器将人类基因参考序列(约3GB)拷贝到每个Cube。
例如,拷贝到每个Cube的DRAM中,以保证每一个Cube中都有一个完整的参考序列副本,从而在基因比对过程中,Cube和Cube之间不需要通信。
步骤S520,主机端的主处理器将待比对的基因序列平均分配到Cube的每一个Vault中的测序序列缓存单元。
步骤S530,主机端的主处理器将每个Vault需要运行的程序代码加载到程序代码缓存单元。
步骤S540,主机端的主处理器激活每个Cube,每个Cube开始独立工作。
步骤S550,每个Cube启动基因比对算法的执行。
例如,对于Cube中的一个Vault,从测序序列缓存单元读出一个Read,送入空闲的流水线中,流水线执行程序代码缓存单元中的程序,对Read进行处理,完成基因的序列比对;将比对结果送入到Vault的基因比对结果缓存单元;当基因比对结果缓存单元满或者所有Read处理完成之后,将比对结果批量写回到主机端的内存等。
需要说明的是,上述Vault的处理逻辑由Vault控制器来执行,例如,控制选择空闲的流水线、控制将测序序列向流水线的加载、将比对结果向主机端的内存的写回等。
下文介绍根据本发明的一个实施例的Vault中流水线的访存过程。以当前主流的BWA-MEM工具集中的FM-index基因比对算法为例,在一个实施例中,流水线访存具体包括以下步骤:
步骤S610,判断基因参考序列片段是否由当前的Vault管理。
从测序序列缓存单元中读取一条read,并将其送入一条空的流水线,该流水线首先根据该read的序列计算其索引值,该索引值本身是一个地址值;流水线通过索引值判断所需要的参考序列片段是否由当前的Vault管理(即位于当前Vault管理的DRAM),若是,则跳转到步骤S620;若不是,则跳转到步骤S640;
步骤S620,流水线向相应的Vault控制器发出读命令。
读命令中的读地址为S610计算出的索引值。
步骤S630,Vault控制器对所管理的DRAM进行读取操作,并将数据发送给流水线。
步骤S640,当流水线通过索引值判断所需要的参考序列片段不是由当前的Vault管理时,将读数据请求通过交换网络向数据存在的Vault发送。
步骤S650,交换网络根据读数据请求中的地址信息将读数据请求路由到相应的Vault中。
路由地址可通过(索引值/Vault总数)获得。
步骤S660,收到读数据请求的Vault通过Vault控制器对其所管理的DRAM进行读取操作,并将读取的数据打包,通过交换网络返回给发出读数据请求的Vault。
步骤S670,交换网络将返回的数据包路由到发出请求的Vault控制器,Vault控制器解包后将数据交给对应的流水线,由该流水线继续进行处理操作。
应理解的是,在本发明的加速装置中,多个加速模块和主机端的信息交互可采用多种方式实现,例如,每个加速模块有多条全双工的串行链路,每条链路又由多条lane组成,每个lane提供较高的访存带宽。串行链路具有解决数据包序列化的延迟问题。串行链路的从端口与主机端的处理器相连,负责接收处理器端的请求和发送应答给处理器,从端口中可设有一个缓冲器,用来缓存还没有发送出去的应答数据。串行链路的主端口与交换网络相连,用来向交换网络转发处理器的请求和接收返回的应答,主端口可同样设有一个缓冲器,用来缓存还没有发送出去的请求。串行链路可以接收来自整个地址范围的数据包,因此,主机端的内存控制器还可配置一个负载分配器,用来为这些串行链路调度请求数据包以达到有效利用带宽的目的。
应理解的是,Vault之间的数据传输可采用现有的双向的valid和ready握手信号机制,并使用基于消息的数据传递机制。信息源使用valid信号表示通道上存在可用的有效数据或者控制信息。信息接收源使用ready信号表示可以接收数据,根据请求中的数据地址信息,将请求路由到对应的Vault控制器上。Vault之间可采用低延迟的消息传递机制,对于任何一个内存读取操作,都封装成一个消息,由目的端的Vault控制器解析,在完成数据读取之后,将读出的数据同样封装成消息,并返回给发起者。
综上所述,本发明基于3D堆叠技术和计算结构定制技术实现了一种计算与存储融合的面向基因对比算法的加速装置,针对基因比对算法设计了定制的计算结构,能够充分利用3D堆叠内部的带宽,提高基因比对速度、降低系统能耗。
需要说明的是,虽然上文按照特定顺序描述了各个步骤,但是并不意味着必须按照上述特定顺序来执行各个步骤,实际上,这些步骤中的一些可以并发执行,甚至改变顺序,只要能够实现所需要的功能即可。
本发明可以是系统、方法和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于使处理器实现本发明的各个方面的计算机可读程序指令。
计算机可读存储介质可以是保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以包括但不限于电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。
以上已经描述了本发明的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。

Claims (10)

1.一种面向基因比对算法的加速装置,包括主机端和多个加速模块,所述加速模块包括多个存储层、垂直切片管理单元和交换网络,其中:
所述主机端用于控制向所述加速模块分发基因测序序列和接收基因比对结果;
所述加速模块的存储层用于存储基因参考序列;
所述加速模块的垂直切片管理单元用于管理将所述多个存储层进行垂直划分所形成的切片以及执行基因比对算法,获得基因比对结果;
所述加速模块的交换网络用于控制该加速模块内部的数据交换以及该加速模块与外部的数据交换。
2.根据权利要求1所述的加速装置,其特征在于,所述垂直切片管理单元包括垂直切片控制器、存储单元和基因比对算法执行单元,其中:
所述存储单元用于存储数据和程序代码;
所述垂直切片控制器用于控制该垂直切片管理单元的内部的逻辑控制以及与外部的信息交互;
所述基因比对算法执行单元用于执行基因比对算法,获得基因比对结果。
3.根据权利要求2所述的加速装置,其特征在于,所述存储单元包括程序代码缓存单元、测序序列缓存单元、基因比对结果缓存单元,其中:
所述程序代码缓存单元用于存储执行基因比对算法的程序代码;
所述测序序列缓存单元用于存储待进行比对的基因测序序列;
所述基因比对结果缓存单元用于存储所述基因比对算法执行单元获得的基因比对结果。
4.根据权利要求3所述的加速装置,其特征在于,所述基因比对算法执行单元采用多级流水线结构,各级流水线并行执行基因比对算法,获得各自的基因比对中间结果。
5.根据权利要求4所述的加速装置,其特征在于,所述存储单元还包括多个寄存器堆,每个寄存器堆对应所述基因比对算法单元的一级流水线,用于缓存对应流水线的基因比对的中间结果。
6.根据权利要求5所述的加速装置,其特征在于,所述多个寄存堆中的每一个还配置一个用于存放基因参考序列中检查点的专用寄存器以及一个用于存储基因参考序列中检查点之后的部分数据的专用寄存器。
7.根据权利要求4所述的加速装置,其特征在于,所述基因比对算法执行单元的多级流水线共享一个所述程序代码缓存单元、共享一个所述测序序列缓存单元并共享一个所述基因比对结果缓存单元。
8.根据权利要求4所述的加速装置,其特征在于,所述基因比对算法执行单元的每一级流水线包括定点加法器和移位器。
9.根据权利要求1所述的加速装置,其特征在于,所述主机端通过内存映射方法将所述多个加速模块映射为内存区域的一部分。
10.一种面向基因比对算法的加速芯片,包括根据权利要求1至9任一项所述的加速装置,其中,所述多个存储层、所述垂直切片管理单元和所述交换网络利用3D堆叠技术进行组合。
CN201811546046.8A 2018-12-18 2018-12-18 一种面向基因比对算法的加速装置 Active CN109785905B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811546046.8A CN109785905B (zh) 2018-12-18 2018-12-18 一种面向基因比对算法的加速装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811546046.8A CN109785905B (zh) 2018-12-18 2018-12-18 一种面向基因比对算法的加速装置

Publications (2)

Publication Number Publication Date
CN109785905A true CN109785905A (zh) 2019-05-21
CN109785905B CN109785905B (zh) 2021-07-23

Family

ID=66497187

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811546046.8A Active CN109785905B (zh) 2018-12-18 2018-12-18 一种面向基因比对算法的加速装置

Country Status (1)

Country Link
CN (1) CN109785905B (zh)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110990063A (zh) * 2019-11-28 2020-04-10 中国科学院计算技术研究所 一种用于基因相似性分析的加速装置、方法和计算机设备
CN111326216A (zh) * 2020-02-27 2020-06-23 中国科学院计算技术研究所 一种针对大数据基因测序文件的快速划分方法
CN111584011A (zh) * 2020-04-10 2020-08-25 中国科学院计算技术研究所 面向基因比对的细粒度并行负载特征抽取分析方法及系统
CN111653317A (zh) * 2019-05-24 2020-09-11 北京哲源科技有限责任公司 基因比对加速装置、方法及系统
CN111798923A (zh) * 2019-05-24 2020-10-20 中国科学院计算技术研究所 基因比对的细粒度负载特征分析方法、装置与存储介质
CN111863139A (zh) * 2020-04-10 2020-10-30 中国科学院计算技术研究所 一种基于近内存计算结构的基因比对加速方法和系统
CN113241120A (zh) * 2021-06-07 2021-08-10 中科计算技术西部研究院 一种基因测序系统及测序方法
CN113254104A (zh) * 2021-06-07 2021-08-13 中科计算技术西部研究院 一种用于基因分析的加速器及加速方法
CN113535637A (zh) * 2021-07-20 2021-10-22 珠海市一微星科技有限公司 一种新型运算加速单元及其运行方法
CN113535638A (zh) * 2021-07-20 2021-10-22 珠海市一微星科技有限公司 一种并行运算加速系统及其运行方法

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104375807A (zh) * 2014-12-09 2015-02-25 中国人民解放军国防科学技术大学 基于众核协处理器的三级流水序列比对方法
CN105378690A (zh) * 2013-04-30 2016-03-02 惠普发展公司,有限责任合伙企业 存储器节点差错校正
US20160154929A1 (en) * 2014-12-01 2016-06-02 Institute For Information Industry Next generation sequencing analysis system and next generation sequencing analysis method thereof
CN106415522A (zh) * 2014-05-08 2017-02-15 美光科技公司 存储器内轻量一致性
CN106886690A (zh) * 2017-01-25 2017-06-23 人和未来生物科技(长沙)有限公司 一种面向基因数据计算解读的异构平台
CN107301455A (zh) * 2017-05-05 2017-10-27 中国科学院计算技术研究所 用于卷积神经网络的混合立方体存储系统及加速计算方法
CN107590533A (zh) * 2017-08-29 2018-01-16 中国科学院计算技术研究所 一种用于深度神经网络的压缩装置
CN107704728A (zh) * 2017-09-26 2018-02-16 华南理工大学 一种基因序列比对的云计算加速方法
CN108595917A (zh) * 2018-06-29 2018-09-28 中国科学技术大学苏州研究院 基于fpga的面向基因测序串匹配算法的加速平台及设计方法
CN108920902A (zh) * 2018-06-29 2018-11-30 郑州云海信息技术有限公司 一种基因序列处理方法及其相关设备
CN108985008A (zh) * 2018-06-29 2018-12-11 郑州云海信息技术有限公司 一种快速比对基因数据的方法和比对系统

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105378690A (zh) * 2013-04-30 2016-03-02 惠普发展公司,有限责任合伙企业 存储器节点差错校正
CN106415522A (zh) * 2014-05-08 2017-02-15 美光科技公司 存储器内轻量一致性
US20160154929A1 (en) * 2014-12-01 2016-06-02 Institute For Information Industry Next generation sequencing analysis system and next generation sequencing analysis method thereof
CN104375807A (zh) * 2014-12-09 2015-02-25 中国人民解放军国防科学技术大学 基于众核协处理器的三级流水序列比对方法
CN106886690A (zh) * 2017-01-25 2017-06-23 人和未来生物科技(长沙)有限公司 一种面向基因数据计算解读的异构平台
CN107301455A (zh) * 2017-05-05 2017-10-27 中国科学院计算技术研究所 用于卷积神经网络的混合立方体存储系统及加速计算方法
CN107590533A (zh) * 2017-08-29 2018-01-16 中国科学院计算技术研究所 一种用于深度神经网络的压缩装置
CN107704728A (zh) * 2017-09-26 2018-02-16 华南理工大学 一种基因序列比对的云计算加速方法
CN108595917A (zh) * 2018-06-29 2018-09-28 中国科学技术大学苏州研究院 基于fpga的面向基因测序串匹配算法的加速平台及设计方法
CN108920902A (zh) * 2018-06-29 2018-11-30 郑州云海信息技术有限公司 一种基因序列处理方法及其相关设备
CN108985008A (zh) * 2018-06-29 2018-12-11 郑州云海信息技术有限公司 一种快速比对基因数据的方法和比对系统

Non-Patent Citations (6)

* Cited by examiner, † Cited by third party
Title
DUCKHWAN KIM等: "Neurocube: A Programmable Digital Neuromorphic Architecture with High-Density 3D Memory", 《2016 ACM/IEEE 43RD ANNUAL INTERNATIONAL SYMPOSIUM ON COMPUTER ARCHITECTURE》 *
HYBRID MEMORY CUBE CONSORTIUM: "《Hybrid Memory Cube Specification 2.1》", 31 December 2014 *
R. NAIR等: "Active Memory Cube: A processing-in-memory architecture for exascale systems", 《IBM JOURNAL OF RESEARCH AND DEVELOPMENT》 *
刘阳: "面向新一代测序的GPU序列比对工具研究", 《中国优秀硕士学位论文全文数据库 基础科学辑》 *
孙岩等: "一种基于三维堆叠技术的高可靠性Cache结构", 《上海交通大学学报》 *
无: "HMC内存技术解析", 《电脑报》 *

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111653317A (zh) * 2019-05-24 2020-09-11 北京哲源科技有限责任公司 基因比对加速装置、方法及系统
CN111798923A (zh) * 2019-05-24 2020-10-20 中国科学院计算技术研究所 基因比对的细粒度负载特征分析方法、装置与存储介质
CN111653317B (zh) * 2019-05-24 2024-02-09 北京哲源科技有限责任公司 基因比对加速装置、方法及系统
CN111798923B (zh) * 2019-05-24 2023-01-31 中国科学院计算技术研究所 基因比对的细粒度负载特征分析方法、装置与存储介质
CN110990063A (zh) * 2019-11-28 2020-04-10 中国科学院计算技术研究所 一种用于基因相似性分析的加速装置、方法和计算机设备
CN111326216A (zh) * 2020-02-27 2020-06-23 中国科学院计算技术研究所 一种针对大数据基因测序文件的快速划分方法
CN111863139B (zh) * 2020-04-10 2022-10-18 中国科学院计算技术研究所 一种基于近内存计算结构的基因比对加速方法和系统
CN111584011A (zh) * 2020-04-10 2020-08-25 中国科学院计算技术研究所 面向基因比对的细粒度并行负载特征抽取分析方法及系统
CN111863139A (zh) * 2020-04-10 2020-10-30 中国科学院计算技术研究所 一种基于近内存计算结构的基因比对加速方法和系统
CN111584011B (zh) * 2020-04-10 2023-08-29 中国科学院计算技术研究所 面向基因比对的细粒度并行负载特征抽取分析方法及系统
CN113241120A (zh) * 2021-06-07 2021-08-10 中科计算技术西部研究院 一种基因测序系统及测序方法
CN113254104B (zh) * 2021-06-07 2022-06-21 中科计算技术西部研究院 一种用于基因分析的加速器及加速方法
CN113254104A (zh) * 2021-06-07 2021-08-13 中科计算技术西部研究院 一种用于基因分析的加速器及加速方法
CN113535638A (zh) * 2021-07-20 2021-10-22 珠海市一微星科技有限公司 一种并行运算加速系统及其运行方法
CN113535637A (zh) * 2021-07-20 2021-10-22 珠海市一微星科技有限公司 一种新型运算加速单元及其运行方法

Also Published As

Publication number Publication date
CN109785905B (zh) 2021-07-23

Similar Documents

Publication Publication Date Title
CN109785905A (zh) 一种面向基因比对算法的加速装置
US11036556B1 (en) Concurrent program execution optimization
US10963306B2 (en) Managing resource sharing in a multi-core data processing fabric
US11775354B2 (en) Reducing overlay network overhead across container hosts
CN108694069A (zh) 动态可组成的计算系统、数据中心和用于动态组成计算系统的方法
CN109426648A (zh) 用于由智能网络接口控制器处理网络分组的技术
CN109426633A (zh) 用于管理网络接口控制器的灵活主机接口的技术
US7339592B2 (en) Simulating multiported memories using lower port count memories
US6925520B2 (en) Self-optimizing crossbar switch
CN110120915A (zh) 高性能计算的三级成本效益分解和具有在线扩展灵活性的高容量存储器
CN105027075B (zh) 具有共享前端单元的处理核
CN104834484B (zh) 基于嵌入式可编程逻辑阵列的数据处理系统及处理方法
CN104219279A (zh) 用于超大规模分布式处理应用的模块化架构的系统和方法
CN110347626A (zh) 服务器系统
CN109814927A (zh) 一种机器学习推理协处理器
CN105718990A (zh) 细胞阵列计算系统以及其中细胞之间的通信方法
CN105718993B (zh) 细胞阵列计算系统以及其中的通信方法
EP4134822A2 (en) Systems, methods, and apparatus for memory access in storage devices
Gao et al. SEAL: Hybrid resource distribution for multi-tenant data centers
Masko Task scheduling for dynamic SMP clusters with communication on the fly for bounded number of resources

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