一种SQL指令的硬件实现方法,其特征在于: 1)SQL核的启动过程: SQL核的启动是由通用处理器来触发的,具有数据库操作的程序运行在通用处理器上,当通用处理器执行到SQL指令时,通用处理器发送SQL指令到SQL核上。SQL核首先通过SQL指令的解析部件,设置SQL核PC值为该SQL指令对应微指令序列中的第一条微指令地址。设置PC值结束以后,SQL核开始执行微指令序列过程为取微指令,送到硬件逻辑部件中执行,当硬件逻辑部件执行到OVER微指令,该SQL指令执行结束;2)SQL指令集: 相比软件实现数据库中DBMS对SQL的解释执行,拥有一套基本的SQL指令集,包括create table、drop table、select、insert、delete和update。对于这6条汇编指令,分别为它们设计了指令格式、参数排列形式、参数的访问标准、结果输出地址以及结果格式,这些指令对于SQL指令的硬件实现系统是一条独立的汇编指令,指令之间无相互约束,SQL指令由SQL核来执行完成,SQL核是一个异构定制的核; 3)SQL核的微指令构架: SQL核对SQL指令的实现采用了微指令的方法,即一条SQL指令会在异构核中被分解成微指令序列来完成SQL指令的功能,这些微指令并不被SQL核外部所见或访问,对于通用处理器来讲,SQL核提供给它的接口就是6条基本的SQL汇编指令; 4)SQL核和通用处理器的并行工作: 通用处理器执行程序的过程中,当遇到SQL指令,它将这条SQL指令发送给SQL核,由SQL核来完成对数据库的操作,在SQL核执行操作的同时,通用处理器运行其他任务来增加通用核和异构核的并行性,当芯片资源充足时,设置多个SQL核在芯片内部,这样能达到更大的数据库操作并行性,同时SQL核的调度由通用核决定。
【技术实现步骤摘要】
本专利技术涉及数据库和体系结构领域,尤其涉及一种SQL指令的硬件实现方法。
技术介绍
数据库技术诞生以来,经历了不到半个世纪的时间,就形成了坚实的理论 基础,成熟的商业产品和广泛的应用领域,研究者不断加入,成为了一个被广 泛关注的研究领域。随着信息内容的不断增长、新技术的层出不穷,数据库技 术面临着前所未有的挑战。面对各种数据形式,人们提出了多样的数据模型(层次模型、网状模型、 关系模型、面向对象模型、板结构化模型等),也提出了许多新的数据库技术 (XML数据管理、数据流管理、Web数据集成、数据挖掘等)。随着电子银行、电子政府以及移动商务应用的增加,需要处理的移动数据 也迅速增大,为了满足日益增长的数据处理需求和方便应用开发,对移动设备 上的小型数据库管理系统的需求也越来越大。各种各样的数据库技术中,数据库机(知识库机)、内存数据库、片上系统 (SoC)技术共同构成本系统的技术基础。数据库机(Database Machine),是为了用硬件直接支持数据库管理所需的高 级数据操作功能而英语的一种具有专用目的的计算机,是人们为了改善数据库 系统性能和支持大规模高速信息处理而提出的一种专用计算机。它是将数据库 技术、VLSI技术和计算机体系结构等研究结合而成的产物。数据库机可以作 为知识库机的基础机构或基本模块,从而支持高效的知识处理。数据库机研究 经过十几年的发展已然形成了一个由计算机体系结构和数据库技术相结合而成 的相对独立的技术学科。传统基于磁盘的关系数据库系统(以Oracle, DB2等为代表),以下简称 DRDB(Disk—Resident Databases),由于主数据库常驻磁盘,事务处理往往涉及 磁盘IO操作,其体系结构设计的优化目标是如何减少读写磁盘的次数,很难满 足未来基于网络的应用系统对高性能数据访问能力的需求。内存数据库 (MMDB: Main Memory Database)技术则为上述应用领域提供了一种很好的实时 数据管理的解决方案。3MMDB与DRDB之间主要区别在于MMDB主数据库常驻内存,体系结 构设计的优化目标是提高内存和CPU使用效率,由于事务处理无需进行磁盘访 问,使用MMDB的应用系统性能得到极大提高。与DRDB相比,MMDB的优点如下完成同样的功能,所需机器指令大大降低;不再需要缓冲区管理器, 消除了磁盘和内存之间额外的数据拷贝开销;在数据与索引的组织管理中,广 泛使用指针,简化/内存管理,降低了内存开销。现在在一个芯片上往往集成了许多的功能单元,从而在单个芯片上形成一 个完整的系统,这样的系统叫做片上系统(System on Chip, SoC)。 SoC的设计 方法能够有效降低片上设计的复杂性。多处理器片上系统(multiprocessor SoC, MPSoC)是一种特殊的片上系统,就是在一个芯片上具有两个或多个处理器, 当然这些处理器可以是同构的也可以是异构的。通常多处理器片上系统中包含 了一些通用的处理器和一些用于专用计算的硬件模块。现在MPSoC已经被广泛 的应用在了通信、多媒体和网络等领域,这些领域通常要求高性能、低能耗和 高灵活性。IBM Cell是一个异构多核处理器的典型代表。
技术实现思路
为了能够适应对现有数据库系统越来越大的数据访问量和越来越高的性能 要求,在提高数据库数据访问速度和并发性的同时简化DBMS的设计、减轻通 用处理器在数据库访问时的工作量,增强数据库访问时候的安全性,本专利技术的 目的在于提供一种数据库结构化查询(SQL)指令的硬件实现方法。本专利技术解决技术问题所采用的技术方案是1) SQL核的启动过程SQL核的启动是由通用处理器来触发的,具有数据库操作的程序运行在通 用处理器上,当通用处理器执行到SQL指令时,通用处理器发送SQL指令到 SQL核上,SQL核首先通过SQL指令的解析部件,设置SQL核PC值为该SQL 指令对应微指令序列中的第一条微指令地址,设置PC值结束以后,SQL核开始 执行微指令序列过程为取微指令,送到硬件逻辑部件中执行,当硬件逻辑部件 执行到OVER微指令,该SQL指令执行结束;2) SQL指令集相比软件实现数据库中DBMS对SQL的解释执行,拥有一套基本的SQL 指令集,包括create table、 droptable、 select、 insert、 delete禾卩update,对于这6条汇编指令,分别为它们设计了指令格式、参数排列形式、参数的访问标准、 结果输出地址以及结果格式,这些指令对于SQL指令的硬件实现系统是一条独立的汇编指令,指令之间无相互约束,SQL指令由SQL核来执行完成,SQL核 是一个异构定制的核;3) SQL核的微指令构架SQL核对SQL指令的实现采用了微指令的方法,即一条SQL指令会在异构 核中被分解成微指令序列来完成SQL指令的功能,这些微指令并不被SQL核外 部所见或访问,对于通用处理器来讲,SQL核提供给它的接口就是6条基本的 SQL汇编指令;4) SQL核和通用处理器的并行工作通用处理器执行程序的过程中,当遇到SQL指令,它将这条SQL指令发送 给SQL核,由SQL核来完成对数据库的操作,在SQL核执行操作的同时,通 用处理器运行其他任务来增加通用核和异构核的并行性,当芯片资源充足时, 设置多个SQL核在芯片内部,这样能达到更大的数据库操作并行性,同时SQL 核的调度由通用核决定。本专利技术具有的有益的效果是首先本专利技术提高了数据库的操作的执行效率。在传统的数据库访问解决方 案中,SQL指令交由DBMS来处理,DBMS得到SQL指令后,对SQL指令进 行解释和执行,这种方式的效率没有直接通过硬件执行SQL指令高。当简单的 SQL指令设计成汇编指令以后,DBMS只需要优化和分解复杂的数据库操作为 6条基本的SQL指令。其次本专利技术能够有效的提高数据库操作之间的并发性。 当应用程序同时对数据库进行一系列操作的时候,如果DBMS判定这些操作不 存在数据并发上的冲突,那么通用处理器就可以把不同的操作分发给不同的 SQL核,这样能够有效的提高对数据库访问的并发。第三,本专利技术能够有效的 减轻通用处理器的负担,增加吞吐量。由于此时通用处理器不再需要完成对数 据库操作的任务,这样使得通用处理器能够在SQL核的协助下并发更多的任务, 增加吞吐量。 附图说明附图是SQL专用核的启动过程。 具体实施例方式首先来介绍所设计的专用核的寄存器组和微指令集合。在设计的专用核中, 共有35个寄存器,每个寄存器的长度为32位。在这35个寄存器中,通用寄存 器有24个,分别为R0-R23,专用寄存器11个,名字和功能分别如下IP—数据库操作指令计数器PC —子指令计数器RT—表ID—表名映射表基地址RD—域id—域名映射表基地址RB—表id—地址映射表基地址RA—结果存储基地址TB —表基地址Rtid—表IDRL —表记录长度RC—表记录计数器Flags —标志在所设计的专用核中,共设计了 19条微指令来完成6条SQL指令的执行,微指令的格式、操作码、功能等分别描述如下:<table>table see original document page 6</column><本文档来自技高网...
【技术保护点】
一种SQL指令的硬件实现方法,其特征在于: 1)SQL核的启动过程: SQL核的启动是由通用处理器来触发的,具有数据库操作的程序运行在通用处理器上,当通用处理器执行到SQL指令时,通用处理器发送SQL指令到SQL核上。SQL核首先通过SQL指令的解析部件,设置SQL核PC值为该SQL指令对应微指令序列中的第一条微指令地址。设置PC值结束以后,SQL核开始执行微指令序列过程为取微指令,送到硬件逻辑部件中执行,当硬件逻辑部件执行到OVER微指令,该SQL指令执行结束;2)SQL指令集: 相比软件实现数据库中DBMS对SQL的解释执行,拥有一套基本的SQL指令集,包括create table、drop table、select、insert、delete和update。对于这6条汇编指令,分别为它们设计了指令格式、参数排列形式、参数的访问标准、结果输出地址以及结果格式,这些指令对于SQL指令的硬件实现系统是一条独立的汇编指令,指令之间无相互约束,SQL指令由SQL核来执行完成,SQL核是一个异构定制的核; 3)SQL核的微指令构架: SQL核对SQL指令的实现采用了微指令的方法,即一条SQL指令会在异构核中被分解成微指令序列来完成SQL指令的功能,这些微指令并不被SQL核外部所见或访问,对于通用处理器来讲,SQL核提供给它的接口就是6条基本的SQL汇编指令; 4)SQL核和通用处理器的并行工作: 通用处理器执行程序的过程中,当遇到SQL指令,它将这条SQL指令发送给SQL核,由SQL核来完成对数据库的操作,在SQL核执行操作的同时,通用处理器运行其他任务来增加通用核和异构核的并行性,当芯片资源充足时,设置多个SQL核在芯片内部,这样能达到更大的数据库操作并行性,同时SQL核的调度由通用核决定。...
【技术特征摘要】
1.一种SQL指令的硬件实现方法,其特征在于1)SQL核的启动过程SQL核的启动是由通用处理器来触发的,具有数据库操作的程序运行在通用处理器上,当通用处理器执行到SQL指令时,通用处理器发送SQL指令到SQL核上。SQL核首先通过SQL指令的解析部件,设置SQL核PC值为该SQL指令对应微指令序列中的第一条微指令地址。设置PC值结束以后,SQL核开始执行微指令序列过程为取微指令,送到硬件逻辑部件中执行,当硬件逻辑部件执行到OVER微指令,该SQL指令执行结束;2)SQL指令集相比软件实现数据库中DBMS对SQL的解释执行,拥有一套基本的SQL指令集,包括create table、drop table、select、insert、delete和update。对于这6条汇编指令,分别为它们设计了指令格式、参数排列形式、参数的访问标准、结果输...
【专利技术属性】
技术研发人员:陈天洲,蒋冠军,汪达舟,王超,缪良华,
申请(专利权)人:浙江大学,
类型:发明
国别省市:86
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。