智能缓存及智能终端制造技术

技术编号:9033887 阅读:324 留言:0更新日期:2013-08-15 00:45
本发明专利技术公开了一种智能缓存及智能终端,智能缓存包括:通用接口,用于接收来自内核或总线的配置信息、和\或控制信息、和\或数据信息,并返回目标数据;软件定义和重构单元,用于根据配置信息将存储器定义为所需的缓存存储器;控制单元,用于控制读写Cache,以及,实时监控指令或数据流;存储单元,由大量的存储模块构成,用于缓存数据;以及,根据所述软件定义和重构单元的定义,由所述存储模块组合成所需的Cache存储器;智能处理单元,用于处理输入输出数据,将数据在所述控制单元中定义的多个结构之间进行转移、变换和运算。本发明专利技术能根据软件的运行状态、执行任务的特征、数据结构的特性,在控制单元灵活的组织、管理下以及智能处理单元的紧密配合下,实现高效的存储系统。

【技术实现步骤摘要】

本专利技术智能缓存技术,尤其涉及一种利用软硬件紧密结合的方法实现灵活的、可配置的软件定义的智能缓存,以及具有上述智能缓存的智能终端。
技术介绍
传统的高速缓存(Cache Memory)利用处理器程序执行的时间或空间局部性,通过将最近和/或经常执行的指令和数据暂存在靠近处理器单元的Cache Memory内,当需要访问某个指令或数据时先访问Cache Memory,如果Cache Memory缺失(Miss),贝U访问速度较慢、存储空间较大的下一级存储器。图1为典型的cache结构示意图,如图1所示,由于载入Cache的指令或数据只能根据程序动态执行的情况来实时更新,因此处理器核每次访存时首先要搜索Cache中的标签(Tag)阵列,以确认所需指令或数据是否在Cache之中,一旦Cache Miss,查找Tag和数据比较操作都将无效,然后再去访问下一级存储器,这样浪费掉了多个处理器执行周期和Cache功耗。为了增加Cache的命中(Hit)率,通常采用组相联、复杂的替换算法、预取、推测读以及层次化的多级Cache结构等,显然这些性能提升完全是依靠增加硬件复杂度与芯片面积开销来换取的。由于图1所示的缓存结构为现有典型的cache结构,这里不再赘述其各部分的功能及其工作原理。Cache还有一个缺点是Hit与Miss的访问延迟完全不一样,无法预测访存的延迟大小,很多场合引入了紧稱合存储器(TCM, Tightly Coupled Memory)。TCM是靠近处理器内核的静态随机存储器(SRAM, Static Random Access Memory),其特点是速度快且延迟固定。TCM的内容不能实时替换、容量固定且一般较小。TCM的刷新完全依赖于软件调度,刷新TCM之前软件需要找出何时刷新并进行相应的配置操作,且配置过程中TCM不能被访问,这都限制了 TCM的应用。内容寻址存储器(CAM, Content Addressable Memory)是一种专用存储器,作为通用模块在针对某些具体应用场景时不能最大限度地发挥其性能,而且是通过将所有存储条目与输入条目同时并行比较的方式查询,这种方式的硬件代价非常大,成本高。综上,完全依靠硬件复杂度和功耗或完全依靠软件的干预来提升性能都是比较困难的,而且处理器执行与访存的粒度(按指令)比较细,资源被固定的分类和划分,不仅效率低,且浪费系统的存储资源。如果将软硬件紧密结合,根据程序执行情况和数据结构的特征进行灵活的、智能的处理,性能提升空间会更大,性能、功耗、成本等会更平衡。
技术实现思路
有鉴于此,本专利技术的主要目的在于提供一种智能缓存及智能终端,能针对具体应用,由软件灵活定义 、配置和重构,能解决传统Cache的高复杂度、高开销、高能耗以及延迟不可预测等的弊端,也能解决TCM数据更新的低效以及存储单元灵活度低、应用面窄的问题。为达到上述目的,本专利技术的技术方案是这样实现的:一种智能缓存,包括通用接口、软件定义和重构单元、控制单元、存储单元和智能处理单元;其中:通用接口,用于接收来自内核或总线的配置信息、和\或控制信息、和\或数据信息,并返回目标数据;软件定义和重构单元,用于根据配置信息将存储器定义为所需的缓存Cache存储器;控制单元,用于控制读写Cache存储器,以及,实时监控指令或数据流,根据系统信息、将要执行的任务的特征以及使用到的数据结构的特性,控制所述存储单元提前装载所需数据;存储单元,由大量的存储模块构成,用于缓存数据;以及,根据所述软件定义和重构单元的定义,由所述存储模块组合成所需的Cache存储器;智能处理单元,用于处理输入输出数据,将数据在所述控制单元中定义的多个结构之间进行转移、变换和运算。优选地,所述所需的Cache存储器可以配置为包括以下种类存储器中的至少一个:紧耦合存储器TCM、内容寻址存储器CAM、高速缓存Cache。优选地,所述通用接口中还包括多核环境下的一致性接口。 优选地,所述软件定义和重构单元还用于定义多个不同属性的同类结构的Cache存储器,所述不同属性的同类结构Cache存储器包括以下结构存储器的至少一种:全相联的Cache、16路相联的Cache、4路相联的Cache、2路相联的Cache、直接映射的Cache。优选地,所述软件定义和重构单元还用于在工作过程中动态重构闲置存储模块。优选地,所述智能处理单元将数据在所述控制单元中定义的多个结构之间进行转移、变换和运算,具体包括:矩阵运算、比特级操作、数据查找、数据排序、数据比较、逻辑操作、置位/复位、读-修改-写的操作,以及增减量、加减的运算。优选地,所述智能处理单元还用于对数据进行填充和更新,以及将数据转移到下一级存储器。优选地,所述控制单元根据所述软件定义和重构单元定义的数据块大小进行数据装载或自动进行数据装载;并在所述存储单元中定义专门的存储区域,装载异常或杂乱的控制程序。一种智能终端,包括前述的智能缓存。所述智能终端包括计算机、或笔记本、或手机、或个人数字助理、或游戏机等。本专利技术的智能缓存,可以让内核仅需要处理复杂的运算和杂乱的控制,而将频繁使用且处理简单的大量数据提交给智能缓存的智能处理单元来处理,且智能处理单元对数据的处理不仅针对于简单的单个数据,同时也针对整个特定数据结构的处理等,尽量将数据处理靠近存储器,从而减少了对总线的依赖,减轻了内核的负担,从而达到性能、功耗、成本等间的平衡。在与软件的密切配合下,即使没有预取、推测读、复杂的替换算法,但根据软件的运行状态、执行任务的特征、数据结构的特性,在控制单元灵活的组织、管理下以及智能处理单元的紧密配合下,能够实现高效的存储系统。附图说明图1为典型的cache结构示意图;图2为本专利技术实施例的智能缓存的组成结构示意图;图3为本专利技术实施例一的智能缓存的组成结构示意图;图4为本专利技术实施例二的智能缓存的组成结构示意图;图5为本专利技术实施例三的智能缓存的组成结构示意图;图6为本专利技术实施例四的智能缓存的组成结构示意图;图7为本专利技术实施例五的智能缓存的组成结构示意图;图8为本专利技术实施例六的智能缓存的组成结构示意图;图9为本专利技术实施例七的智能缓存的组成结构示意图;图10为本专利技术实施例八的智能缓存的组成结构示意图;图11为本专利技术实施例九的智能缓存的组成结构示意图。具体实施例方式本专利技术的基本思 想为:提供一种智能缓存,其包括通用接口、软件定义和重构单元、控制单元、存储单元和智能处理单元;其中:通用接口,用于接收来自内核或总线的配置信息、和\或控制信息、和\或数据信息,并返回目标数据;软件定义和重构单元,用于根据配置信息将存储系统定义为所需的缓存Cache存储器;控制单元,用于控制读写Cache存储器,以及,实时监控指令或数据流,根据系统信息、将要执行的任务的特征以及使用到的数据结构的特性,控制所述存储单元提前装载所需数据;存储单元,由大量的存储模块构成,用于缓存数据;以及,根据所述软件定义和重构单元的定义,而承担缓存数据的关联阵列(例如Cache TAG)功能并和数据缓存存储单元组合成所需的存储系统结构;智能处理单元,用于处理输入输出数据,将数据在所述控制单元中定义的多个结构之间进行转移、变换和运算。为使本专利技术的目的,技术方案和优点更加清楚本文档来自技高网
...
智能缓存及智能终端

【技术保护点】
一种智能缓存,其特征在于,所述智能缓存包括通用接口、软件定义和重构单元、控制单元、存储单元和智能处理单元;其中:通用接口,用于接收来自内核或总线的配置信息、和\或控制信息、和\或数据信息,并返回目标数据;软件定义和重构单元,用于根据配置信息将存储器定义为所需的缓存Cache存储器;控制单元,用于控制读写Cache存储器,以及,实时监控指令或数据流,根据系统信息、将要执行的任务的特征以及使用到的数据结构的特性,控制所述存储单元提前装载所需数据;存储单元,由大量的存储模块构成,用于缓存数据;以及,根据所述软件定义和重构单元的定义,由所述存储模块组合成所需的Cache存储器;智能处理单元,用于处理输入输出数据,将数据在所述控制单元中定义的多个结构之间进行转移、变换和运算。

【技术特征摘要】

【专利技术属性】
技术研发人员:元西西毛二坤陈前汪坚田学红曾代兵田万廷
申请(专利权)人:中兴通讯股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1