用于加速压缩和解压缩操作的设备以及方法_4

文档序号:9510125阅读:来源:国知局
功能单元执行整数数学操作,第二功能单元执行浮点指令,第三功能单元执行来自/向缓存/存储器的加载/存储操作,等等)。由全部功能单元执行的全部操作的集合对应于由处理核800支持的“指令集”。图7的逻辑设计700可以被包括到执行级的功能单元中的一个中,以便实现具有如前所述的指令执行能力的核。
[0062]图9示出了示例性多核处理器900的架构。如在图9中观察到的,处理器包括:1)多个处理核901_1到901_N ;2)互连网络902 ;3)末级缓存系统903 ;4)存储器控制器904和I/O中枢905。处理核中的每一个都包含用于执行程序代码指令的一个或多个指令执行流水线。这样的指令执行流水线中的任何一个或全部都可包括用于执行如上文所讨论的DEFLATE解码的执行单元。互连网络902可用于将核901_1到901_N中的每一个彼此互连并与其他组件903、904、905互连。末级缓存系统903在指令和/或数据被驱逐到系统存储器908之前充当处理器中的最后一层缓存。
[0063]存储器控制器904从/向系统存储器908读/写数据和指令。I/O中枢905管理处理器和“I/O”设备(例如,非易失性存储器设备和/或网络接口)之间的通信。端口 906源于互连网络902以链接多个处理器,以便可以实现具有N以上的核的系统。图形处理器907执行图形计算。功率管理电路(未示出)作为整体管理处理器的性能和功率状态(“封装级别”)以及处理器内的诸如单个核901_1到901_N、图形处理器907等等之类的单个单元的性能和功率状态的各方面。为了方便起见,在图9中未描绘其他重要的功能块(例如,锁相环(PLL)电路)。
[0064]通过以上的讨论所讲述的过程可以利用诸如机器可执行指令之类的导致机器(诸如“虚拟机”、位于半导体芯片上的通用CPU处理器或位于半导体芯片上的专用处理器)执行某些功能的程序代码来执行。另选地,这些功能可由包含用于执行功能的硬连线逻辑的专用硬件组件来执行,或由编程的计算机组件和自定义的硬件组件的任何组合来执行。
[0065]存储介质可以被用来存储程序代码。存储程序代码的存储介质可以被具体化为,但不仅限于,一个或多个存储器(例如,一个或多个闪存、随机访问存储器(静态、动态或其他))、光盘、CD-ROM、DVD ROM、EPROM, EEPR0M、磁卡或光卡或其他类型的适于存储电子指令的机器可读取的介质。程序代码也可以通过在传播介质中实现的数据信号(例如,通过通信链路(例如,网络连接))从远程计算机(例如,服务器)下载到发出请求的计算机(例如,客户端)。
[0066]在上述说明书中,已经参考特定示例性实施例描述了本发明。然而,显然可对这些实施例作出各种修改和改变,而不背离如所附权利要求所述的本发明的更宽泛精神和范围。因此,说明书和附图应被认为是说明性而非限制性意义。
【主权项】
1.一种处理器,包括: 指令执行流水线,具有: 用于获取并解码指令的指令获取单元; 用于执行所述指令的执行单元,所述执行单元包括:状态机和内容可寻址存储器(CAM)电路,所述状态机接收指向DEFLATE编码信息流的指针,获取所述DEFLATE编码信息的部分,并将所述DEFLATE编码信息的所述部分应用到所述CAM,以获得解码的DEFLATE信息。2.如权利要求1所述的处理器,其特征在于,所述CAM包含用于解码数据符号和长度的?目息。3.如权利要求2所述的处理器,其特征在于,所述信息指示有多少额外比特适用于特定DEFLATE编码长度。4.如权利要求2所述的处理器,其特征在于,所述CAM中的条目指示它们是否包含关于数据符号的信息。5.如权利要求2所述的处理器,其特征在于,所述CAM中的条目指示它们是否包含关于长度的信息。6.如权利要求1所述的处理器,其特征在于,所述执行单元包含其中包含用于解码距离的信息的第二 CAM。7.如权利要求6所述的处理器,其特征在于,所述第二CAM的条目指示额外比特是否适用。8.如权利要求1所述的处理器,其特征在于,所述执行单元返回已更新的指针值。9.如权利要求1所述的处理器,其特征在于,如果所述指令仅部分地完成所述指令的执行,则所述执行单元将向控制寄存器空间写入以指示部分完成。10.如权利要求9所述的处理器,其特征在于,即使所述执行仅部分地完成所述指令的执行,所述执行单元也将返回已更新的指针。11.一种方法,包括: 获取指令; 解码指令; 执行所述指令,其中所述指令的所述执行包括: 接收指向DEFLATE编码信息流的指针; 获取所述DEFLATE编码信息的部分;以及, 将所述DEFLATE编码的信息的所述部分应用到所述CAM,以获得解码的DEFLATE信息。12.如权利要求11所述的方法,其特征在于,所述CAM包含用于解码数据符号和长度的?目息。13.如权利要求12所述的方法,其特征在于,所述信息指示有多少额外比特适用于特定DEFLATE编码长度。14.如权利要求12所述的方法,其特征在于,所述CAM中的条目指示它们是否包含关于数据符号的信息。15.如权利要求12所述的方法,其特征在于,所述CAM中的条目指示它们是否包含关于长度的信息。16.如权利要求11所述的方法,其特征在于,所述执行单元包含其中包含用于解码距离的信息的第二 CAM。17.具有指令的机器可读介质,所述指令在由计算系统处理时,导致方法被执行,所述方法包括: 通过以下操作构建软件代码: 引入第一指令,所述第一指令接受指向DEFLATE编码信息的指针,并解码所述DEFLATE编码信息的部分,以产生DEFLATE信息的已解码部分和计及所述已解码部分的大小的已更新的指针;以及 引入循环操作,以使用所述已更新的指针作为输入操作数来重新执行所述指令。18.如权利要求16所述的机器可读的介质,其特征在于,所述构建进一步包括在所述指令和所述循环操作之间引入存储器写入指令,以将所述已解码的部分写入到系统存储器。19.如权利要求16所述的机器可读介质,其特征在于,所述构建进一步包括引入用于处理所述指令的部分完成的代码。20.具有指令的机器可读的介质,所述指令在由计算系统处理时,导致方法被执行,所述方法包括: 执行第一指令,所述第一指令接受指向DEFLATE编码信息的指针,并解码所述DEFLATE编码信息的部分,以产生DEFLATE信息的已解码部分和计及所述已解码部分的大小的已更新的指针;以及 执行循环操作,以重新执行与所述指令相同类型的第二指令,所述第二指令使用来自所述相同类型的先前指令的相应的已更新的指针作为输入操作数。21.如权利要求19所述的机器可读的介质,其特征在于,进一步包括在所述第一指令的所述执行之后,执行存储器写入指令,以将DEFLATE信息的所述已解码的部分写入到系统存储器。
【专利摘要】描述了一种处理器,该处理器包括具有指令获取单元以获取和解码指令的指令执行流水线。该处理器还具有用于执行指令的执行单元。该执行单元具有状态机和内容可寻址存储器(CAM)电路。状态机将接收指向DEFLATE编码信息流的指针,获取DEFLATE编码的信息的部分,并将DEFLATE编码信息的该部分应用到CAM,以获得解码的DEFLATE信息。
【IPC分类】G06F9/30, G06F9/38
【公开号】CN105264490
【申请号】CN201480031123
【发明人】V·戈帕尔, J·D·吉尔福德, G·M·沃尔里齐
【申请人】英特尔公司
【公开日】2016年1月20日
【申请日】2014年6月13日
【公告号】EP3014421A1, US8947270, US9294123, US20150006853, US20150256195, WO2014209641A1
当前第4页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1