System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及控制器,尤其涉及一种控制器硬件加速的逻辑设计系统。
技术介绍
1、数据库操作,如页面解析、查询过滤、数据排序、聚合归并等计算操作,往往需要大量的计算资源和时间。传统基于cpu的数据库系统,只能使用串行计算的方式,对数据库中的计算任务逐个执行。
2、但是,随着数据量的不断增长,在处理大规模数据集时面临性能瓶颈。尽管多核cpu技术在一定程度上缓解了数据库计算的性能瓶颈,但由于cpu的设计面向通用计算,其架构设计的复杂性需要大量的逻辑资源,导致所能够创建的cpu核心数有限,并行计算提升效果仍不理想。
3、因此,亟需一种控制器硬件加速的逻辑设计系统,能够提高数据库计算操作的速度,对数据中的计算密集型操作使用定制化的专用电路,通过大量专用逻辑电路构成加速核进行并行计算,可有效提升数据库计算的吞吐率,降低延迟率。
技术实现思路
1、本申请提供了一种控制器硬件加速的逻辑设计系统,以提高数据库计算操作的速度,对数据中的计算密集型操作使用定制化的专用电路,通过大量专用逻辑电路构成加速核进行并行计算,可有效提升数据库计算的吞吐率,降低延迟率。
2、本申请提供了一种控制器硬件加速的逻辑设计系统,所述控制器硬件加速的逻辑设计系统与主机端进行通信;所述控制器硬件加速的逻辑设计系统包括:目标列提取器、长位宽并行比较器、矩阵乘法器和真值表查找器;
3、所述目标列提取器用于对预设页面进行提取目标列数据信息,并将所述目标列数据信息发送至所述长位宽并行比较器;
4、所述长位宽并行比较器用于将所述目标列数据信息根据数据类型复制至对应的长位宽寄存器中,并根据比较运算指令码和所述目标列数据信息得到比较结果,并将所述比较结果发送至所述矩阵乘法器;其中,所述比较运算指令码为主机端发送至所述控制器硬件加速的逻辑设计系统中的;
5、所述矩阵乘法器用于根据所述比较结果和置换矩阵,确定查找码;其中,所述置换矩阵为所述主机端发送至所述控制器硬件加速的逻辑设计系统中的;
6、所述真值表查找器用于根据所述查找码和逻辑运算真值表,输出匹配结果;其中,所述匹配结果用于发送至所述主机端。
7、本申请还提供了一种控制器硬件加速方法,应用于所述控制器硬件加速的逻辑设计系统,所述控制器硬件加速的逻辑设计系统与主机端进行通信;所述控制器硬件加速的逻辑设计系统包括:目标列提取器、长位宽并行比较器、矩阵乘法器和真值表查找器;
8、通过所述目标列提取器对预设页面进行提取目标列数据信息,并将所述目标列数据信息发送至所述长位宽并行比较器;其中,所述预设页面的存储结构为第一预设位置存放页面元信息、第二预设位置存放行元信息、第三预设位置存放变长列长度信息和第四预设位置存放行数据;
9、通过所述长位宽并行比较器将所述目标列数据信息根据数据类型复制至对应的长位宽寄存器中,并根据比较运算指令码和所述目标列数据信息得到比较结果,并将所述比较结果发送至所述矩阵乘法器;其中,所述比较运算指令码为主机端发送至所述控制器硬件加速的逻辑设计系统中的;
10、通过所述矩阵乘法器根据所述比较结果和置换矩阵,确定查找码;其中,所述置换矩阵为所述主机端发送至所述控制器硬件加速的逻辑设计系统中的;
11、通过所述真值表查找器根据所述查找码和逻辑运算真值表,输出匹配结果;其中,所述匹配结果用于发送至所述主机端。
12、本申请还提供了一种电子设备,包括:存储器,用于存储计算机程序;处理器,用于执行计算机程序时实现上述控制器硬件加速方法的步骤。
13、本申请还提供了一种计算机可读存储介质,计算机可读存储介质中存储有计算机程序,其中,计算机程序被处理器执行时实现上述控制器硬件加速方法的步骤。
14、本申请还提供了一种计算机程序产品,包括计算机程序,计算机程序被处理器执行时实现上述控制器硬件加速方法的步骤。
15、通过本申请,由于所述控制器硬件加速的逻辑设计系统与主机端进行通信;所述控制器硬件加速的逻辑设计系统包括:目标列提取器、长位宽并行比较器、矩阵乘法器和真值表查找器;其中的所述目标列提取器用于对预设页面进行提取目标列数据信息,并将所述目标列数据信息发送至所述长位宽并行比较器;由于目标列提取器无需逐一读取列数据信息,而是直接读取目标列数据信息,因此可以加快读取速度。进一步地,所述长位宽并行比较器用于将所述目标列数据信息根据数据类型复制至对应的长位宽寄存器中,并根据比较运算指令码和所述目标列数据信息得到比较结果,并将所述比较结果发送至所述矩阵乘法器;由于长位宽并行比较器可以并行对目标列数据信息进行比较,因此也可以提高执行速度。所述矩阵乘法器用于根据所述比较结果和置换矩阵,确定查找码;所述真值表查找器用于根据所述查找码和逻辑运算真值表,输出匹配结果,通过逻辑运算真值表可以直接得到最后的结果,而无需读取中间的比较结果,再计算最终的数值,进而可有效提升数据库计算的吞吐率,降低延迟率。
本文档来自技高网...【技术保护点】
1.一种控制器硬件加速的逻辑设计系统,其特征在于,所述控制器硬件加速的逻辑设计系统与主机端进行通信;所述控制器硬件加速的逻辑设计系统包括:目标列提取器、长位宽并行比较器、矩阵乘法器和真值表查找器;
2.根据权利要求1所述的系统,其特征在于,所述目标列提取器包括:页面读取模块和目标列拷贝模块;所述页面读取模块包括访存控制器、路由状态机和元信息寄存器组;所述目标列拷贝模块包括:列偏移累加器、行缓存寄存器组和寄存器拷贝器。
3.根据权利要求2所述的系统,其特征在于,所述访存控制器包括暂存数据的存储器,所述访存控制器用于从预设的磁盘读取所述预设页面的数据,并将所述预设页面的数据存储至所述暂存数据的存储器中。
4.根据权利要求2所述的系统,其特征在于,所述路由状态机用于将存储在暂存数据的存储器中的所述预设页面的数据进行分发。
5.根据权利要求4所述的系统,其特征在于,所述路由状态机用于将所述页面元信息、所述行元信息和所述变长列长度信息分发至所述元信息寄存器组;所述路由状态机用于将所述行数据分发至所述行缓存寄存器组中。
6.根据权利
7.根据权利要求2所述的系统,其特征在于,所述列偏移累加器用于根据预先配置的定长列长度列表和变长列长度,并行计算每个列相对于起始位置的偏移,并将目标列字段在行中的偏移值,发送至寄存器拷贝器中。
8.根据权利要求2所述的系统,其特征在于,所述行缓存寄存器组用于将所述行数据进行拆分,存储到多个并行访问的寄存器中。
9.根据权利要求2所述的系统,其特征在于,所述寄存器拷贝器用于根据比较指令中需要的目标列,并行从所述行缓存寄存器组中,将相应的寄存器内容拷贝到所述长位宽并行比较器中。
10.根据权利要求1所述的系统,其特征在于,所述长位宽并行比较器包括:多个比较运算指令码寄存器、多个长位宽的输入寄存器、多个比较器、多个比较结果寄存器和移位控制器。
11.根据权利要求10所述的系统,其特征在于,所述比较运算指令码寄存器用于存储比较运算指令码;所述长位宽的输入寄存器用于并行计算多个相同数据类型的比较运算指令码。
12.根据权利要求10所述的系统,其特征在于,所述比较器用于根据用户配置的比较运算指令码中的运算符,配置比较器中比较常量值与多路选择器,选择比较运算输出结果;所述比较结果寄存器用于存储所述比较运算输出结果。
13.根据权利要求10所述的系统,其特征在于,所述移位控制器用于将比较运算输出结果根据移位寄存器值,进行移位后作为比较结果进行输出。
14.根据权利要求10所述的系统,其特征在于,同一个数据类型的比较器的数量由数据库中多个表的同一个数据类型的最大数量值确定。
15.根据权利要求1所述的系统,其特征在于,所述矩阵乘法器具体用于:将所述置换矩阵存储至置换矩阵寄存器组中;所述置换矩阵寄存器组中包括多个置换矩阵行寄存器。
16.根据权利要求15所述的系统,其特征在于,所述矩阵乘法器具体用于:将所述置换矩阵行寄存器与比较结果寄存器进行按位与操作,输出所述查找码。
17.根据权利要求1所述的系统,其特征在于,所述真值表查找器具体用于:将所述逻辑运算真值表按照比较运算结果的生成的值作为索引,将对应的结果值写入到预设位宽的存储器中。
18.根据权利要求17所述的系统,其特征在于,所述真值表查找器具体用于:响应于查询计算的请求,使用置换矩阵计算出的查找码作为索引,从预设位宽的存储器中获取对应的值作为输出结果;所述输出结果用于判断所述预设页面中的行是否满足过滤条件。
19.根据权利要求1所述的系统,其特征在于,所述控制器硬件加速的逻辑设计系统还用于算术运算。
20.根据权利要求1所述的系统,其特征在于,所述控制器硬件加速的逻辑设计系统还用于列式存储的数据库。
21.一种控制器硬件加速方法,其特征在于,应用于所述控制器硬件加速的逻辑设计系统,所述控制器硬件加速的逻辑设计系统与主机端进行通信;所述控制器硬件加速的逻辑设计系统包括:目标列提取器、长位宽并行比较器、矩阵乘法器和真值表查找器;
22.一种电子设备,其特征在于,包括:
23.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,其中,所述计算机程序被处理器执行时实现如权利要求21所述的控制器硬件加速方法的步骤。
24.一种计算机程序产品,包括计算机程序,其特征在于,所...
【技术特征摘要】
1.一种控制器硬件加速的逻辑设计系统,其特征在于,所述控制器硬件加速的逻辑设计系统与主机端进行通信;所述控制器硬件加速的逻辑设计系统包括:目标列提取器、长位宽并行比较器、矩阵乘法器和真值表查找器;
2.根据权利要求1所述的系统,其特征在于,所述目标列提取器包括:页面读取模块和目标列拷贝模块;所述页面读取模块包括访存控制器、路由状态机和元信息寄存器组;所述目标列拷贝模块包括:列偏移累加器、行缓存寄存器组和寄存器拷贝器。
3.根据权利要求2所述的系统,其特征在于,所述访存控制器包括暂存数据的存储器,所述访存控制器用于从预设的磁盘读取所述预设页面的数据,并将所述预设页面的数据存储至所述暂存数据的存储器中。
4.根据权利要求2所述的系统,其特征在于,所述路由状态机用于将存储在暂存数据的存储器中的所述预设页面的数据进行分发。
5.根据权利要求4所述的系统,其特征在于,所述路由状态机用于将所述页面元信息、所述行元信息和所述变长列长度信息分发至所述元信息寄存器组;所述路由状态机用于将所述行数据分发至所述行缓存寄存器组中。
6.根据权利要求2所述的系统,其特征在于,所述元信息寄存器组用于存放所述预设页面的数据中的行个数、行偏移、以及变长列长度。
7.根据权利要求2所述的系统,其特征在于,所述列偏移累加器用于根据预先配置的定长列长度列表和变长列长度,并行计算每个列相对于起始位置的偏移,并将目标列字段在行中的偏移值,发送至寄存器拷贝器中。
8.根据权利要求2所述的系统,其特征在于,所述行缓存寄存器组用于将所述行数据进行拆分,存储到多个并行访问的寄存器中。
9.根据权利要求2所述的系统,其特征在于,所述寄存器拷贝器用于根据比较指令中需要的目标列,并行从所述行缓存寄存器组中,将相应的寄存器内容拷贝到所述长位宽并行比较器中。
10.根据权利要求1所述的系统,其特征在于,所述长位宽并行比较器包括:多个比较运算指令码寄存器、多个长位宽的输入寄存器、多个比较器、多个比较结果寄存器和移位控制器。
11.根据权利要求10所述的系统,其特征在于,所述比较运算指令码寄存器用于存储比较运算指令码;所述长位宽的输入寄存器用于并行计算多个相同数据类型的比较运算指令码。
12.根据权利要求10所述的系统,其特征在于,所...
【专利技术属性】
技术研发人员:刘科,张闯,
申请(专利权)人:苏州元脑智能科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。