多核微处理器功率选通高速缓存恢复编程机制制造技术

技术编号:13878052 阅读:156 留言:0更新日期:2016-10-22 17:16
一种装置包括设备编程器和存储装置。设备编程器利用用于布置在管芯上的多个核心的压缩的配置数据来对半导体熔丝阵列进行编程。存储装置具有每个对应于多个核心中的每一个核心的多个子存储装置,其中多个核心中的一个被配置为在上电/重置之后访问半导体熔丝阵列以进行读取并对压缩的配置数据进行解压缩,并且将用于多个核心中的每一个核心内的一个或多个高速缓存存储器的多个解压缩的配置数据集合存储在多个子存储装置中,并且其中,在功率选通事件之后,多个核心中的每一个之一随后访问多个子存储装置中的每一个的相应子存储装置,以检索和采用解压缩的配置数据集合来初始化一个或者多个高速缓存。

【技术实现步骤摘要】
【国外来华专利技术】相关申请的交叉引用本申请是如下的美国专利申请的继续申请,并且要求该美国专利申请的优先权权益。本申请与如下的待决美国及PCT专利申请相关,并且其中的每一个都具有共同的受让人和共同的专利技术人。
本专利技术大体上涉及微电子领域,并且更具体地,涉及用于在多核功率选通事件之后恢复压缩的高速缓存修补(repair)数据的装置和方法。
技术介绍
集成器件技术在过去的40年间获得了指数级的进步。特别是在始于4位单指令、10微米器件的微处理器领域,在半导体制造技术的进步已经使得设计者能够提供在架构和密度方面越来越复杂的设备。在80年代和90年代中,所谓的流水线微处理器和超标量体系结构微处理器被开发出来,其在单个管芯(die)上包括数百万个晶体管。现在,在20年之后,64位的32纳米的设备正在被生产,其在单个管芯上具有数十亿个晶体管,并且其包括用于数据处理的多个微处理器核心。从这些早期的微处理器被生产开始就一直坚持的一个要求是:当其被上电时或者当其被重置时需要利用配置数据来对这些设备进行初始化。例如,很多架构以很多可选择的频率和/或电压中的一个执行而使得设备能够被致能。其它的架构要求每个设备具有序列号,以及可以通过指令的执行而被读取的其它信息。另外的设备的内部寄存器和控制电路需要初始化数据。另外的微处理器,特别是具有板上高速缓存存储器的微处理器使用修补数据来实现在这些存储器内的冗余电路,以纠正制造的错误。本领域技术人员将理解,设计者传统上采用管芯上的半导体熔丝阵列来存储和提供初始配置和修补数据。这些熔丝阵列通常通过在已经制造好部件之后对其中的选择的熔丝进行烧断来编程,并且阵列包含上千位的信息,其在上电/重置之后通过相应的设备来读取,以初始化和配置设备来进行操作。随着过去的数年间设备的复杂度得到增加,对于典型的设备所需要的配置/修补数据的量也成比例地增加。但是,本领域技术人员将理解,虽然晶体管大小随着所采用的半导体制造工艺而成比例地缩小,但是半导体熔丝大小由于用于对管芯上的熔丝进行编程的特定的需求而增加。半导体熔丝中的和其本身的这种现象对于通常受到实际资源(realestate)限制和功率限制的设计者而言是个问题。换言之,在给定的管芯上没有足够的实际资源来制造庞大的熔丝阵列。此外,用于在单个管芯上制造多个设备核心的能力已经几何地加剧了该问题,因为对于每个核心的配置需求导致在单个阵列或者不同的阵列中、在管芯上熔丝数量的需求,该数量与在其上放置的核心的数量成比例。此外,本领域技术人员将理解,多核设备使用操作的复杂的功率节省模式,其导致核心中的一个或者多个当不被使用时,在所谓的功率选通事件(或者“睡眠模式”)中被断电。因此,当在功率选通事件之后对核心上电时,除了初始化速度需求更加严厉之外,仍然继续存在对于初始化、配置、以及修补的相同的需求。因此,需要使得配置/修补数据能够被存储和提供给与迄今已经被提供的设备相比,在单个管芯上要求明显减少的实际资源以及功率的多核设备的装置和方法。此外,需要能够存储和提供与当前技术相比明显更多的配置/修补数据,同时要求在多核管芯上的相同或者更少的实际资源的熔丝阵列机制。此外,需要便于在功率选通事件之后提示多核设备的初始化、配置、以及修补的技术。
技术实现思路
本专利技术提供一种用于在功率选通事件之后恢复配置数据的领先技术。在一个方面中,考虑一种用于提供配置数据给集成电路的装置。该装置包括设备编程器和存储装置。设备编程器被耦合到布置在管芯上的半导体熔丝阵列,并且被配置为利用用于布置在管芯上的多个核心的压缩的配置数据来对半导体熔丝阵列进行编程。存储装置被耦合到多个核心,该存储装置包括每个对应于多个核心中的每一个核心的多个子存储装置,其中多个核心中的一个被配置为在上电/重置之后访问半导体熔丝阵列以进行读取并对压缩的配置数据进行解压缩,并且将用于多个核心中的每一个核心内的一个或多个高速缓存存储器的多个解压缩的配置数据集合存储在多个子存储装置中,并且其中,在功率选通事件之后,多个核心中的每一个之一随后访问多个子存储装置中的每一个的相应子存储装置,以检索和采用解压缩的配置数据集合来初始化一个或者多个高速缓存。在一个方面中,本专利技术设想到一种用于提供配置数据给集成电路设备的装置。该装置具有设备编程器和多核微处理器。设备编程器被耦合到布置在管芯上的半导体熔丝阵列,并且被配置为利用用于布置在管芯上的多个核心的压缩的配置数据来对半导体熔丝阵列进行编程。多核微处理器包括半导体熔丝阵列和存储装置。半导体熔丝阵列被布置在管芯上,向其中编程用于布置在管芯上且耦合到半导体熔丝阵列的多个核心的压缩的配置数据。存储装置被耦合到多个核心,该存储装置包括每个对应于多个核心中的每一个核心的多个子存储装置,其中多个核心之一被配置为在上电/重置之后访问半导体熔丝阵列以进行读取并对压缩的配置数据进行解压缩,并且将用于多个核心中的每一个核心内的一个或多个高速缓存存储器的多个解压缩的配置数据集合存储在多个子存储装置中,并且其中,在功率选通事件之后,多个核心中的每一个之一随后访问多个子存储装置中的每一个的相应子存储装置,以检索和采用解压缩的配置数据集合来初始化一个或者多个高速缓存。在另一方面中,本专利技术包含一种用于配置集成电路的方法。该方法包括首先将半导体熔丝阵列布置在管芯上;经由设备编程器利用用于布置在管芯上且耦合到半导体熔丝阵列的多个核心的压缩的配置数据来对半导体熔丝阵列进行编程;以及其次将存储装置布置在管芯上,该存储装置包括每个对应于多个核心中的每一个核心的多个子存储装置,其中多个核心中的一个核心被配置为在上电/重置之后访问半导体熔丝阵列以进行读取并对压缩的配置数据进行解压缩,并且将用于多个核心中的每一个核心内的一个或多个高速缓存存储器的多个解压缩的配置数据集合存储在多个子存储装置中,并且其中,在功率选通事件之后,多个核心中的每一个之一随后访问多个子存储装置中的每一个的相应子存储装置,以检索和采用解压缩的配置数据集合来初始化一个或者多个高速缓存。关于工业适用性,本专利技术在可以用于通用或者专用计算设备的微处理器内实现。附图说明相对于以下描述和附图,本专利技术的这些和其它目标、特征、和优点将得到更好的理解,在附图中:图1是图示了包括用于向微处理器核心提供配置数据的熔丝阵列的当前微处理器核心的框图;图2是描绘了包括可以在烧断熔丝阵列内的第一熔丝组之后烧断的冗余熔丝组的,在图1的微处理器核心内的熔丝阵列的框图;图3是特征为提供对多核设备的配置数据的压缩和解压缩的根据本专利技术的系统的框图;图4是示出了根据本专利技术的熔丝解压缩机制的框图;图5是图示了根据本专利技术的用于压缩的配置数据的示例性格式的框图;图6是图示了根据本专利技术的用于解压缩的微代码补丁(PATCH)配置数据的示例性格式的框图;图7是描绘了根据本专利技术的用于解压缩的微代码寄存器配置数据的示例性格式的框图;图8是特征为根据本专利技术的用于解压缩的高速缓存纠正数据的示例性格式的框图;图9是示出了根据本专利技术的用于解压缩的熔丝纠正数据的示例性格式的框图;以及图10是示出了根据本专利技术的用于解压缩的熔丝纠正数据的替代的示例性格式的框图;以及图11是图示了在功率选通事件之后提供对于高速缓存修补数据的快速恢复的、根据本本文档来自技高网
...

【技术保护点】
一种用于提供配置数据给集成电路的装置,该装置包括:设备编程器,其被耦合到布置在管芯上的半导体熔丝阵列,被配置为利用用于布置在所述管芯上的多个核心的压缩的配置数据来对所述半导体熔丝阵列进行编程;以及存储装置,其被耦合到所述多个核心,所述存储装置包括每个对应于所述多个核心中的每一个核心的多个子存储装置,其中所述多个核心中的一个核心被配置为在上电/重置之后访问所述半导体熔丝阵列以对所述压缩的配置数据进行读取并进行解压缩,并且将用于所述多个核心中的所述每一个核心内的一个或多个高速缓存存储器的多个解压缩的配置数据集合存储在所述多个子存储装置中,并且其中,在功率选通事件之后,所述多个核心中的所述每一个之一随后访问所述多个子存储装置中的所述每一个的相应子存储装置,以检索和采用所述解压缩的配置数据集合来初始化所述一个或者多个高速缓存。

【技术特征摘要】
【国外来华专利技术】2014.05.22 US 14/285,4121.一种用于提供配置数据给集成电路的装置,该装置包括:设备编程器,其被耦合到布置在管芯上的半导体熔丝阵列,被配置为利用用于布置在所述管芯上的多个核心的压缩的配置数据来对所述半导体熔丝阵列进行编程;以及存储装置,其被耦合到所述多个核心,所述存储装置包括每个对应于所述多个核心中的每一个核心的多个子存储装置,其中所述多个核心中的一个核心被配置为在上电/重置之后访问所述半导体熔丝阵列以对所述压缩的配置数据进行读取并进行解压缩,并且将用于所述多个核心中的所述每一个核心内的一个或多个高速缓存存储器的多个解压缩的配置数据集合存储在所述多个子存储装置中,并且其中,在功率选通事件之后,所述多个核心中的所述每一个之一随后访问所述多个子存储装置中的所述每一个的相应子存储装置,以检索和采用所述解压缩的配置数据集合来初始化所述一个或者多个高速缓存。2.如权利要求1所述的装置,其中,所述多个核心中的所述一个核心内的高速缓存熔丝解压缩器通过在上电/重置期间运行微代码来对所述压缩的配置数据进行解压缩。3.如权利要求1所述的装置,其中,所述解压缩的配置数据集合每个包括第一多个半导体熔丝,其指示所述一个或多个高速缓存存储器中的一个高速缓存存储器内的在正常操作期间不被采用的一个或多个子单元位置。4.如权利要求3所述的装置,其中,所述解压缩的配置数据集合每个还包括第二多个半导体熔丝,其指示所述一个或多个高速缓存存储器中的一个高速缓存存储器内的在正常操作期间替代所述一个或多个子单元位置的相应子单元位置将被采用的一个或多个替代子单元位置。5.如权利要求4所述的装置,其中,在所述一个或多个高速缓存存储器中的所述一个高速缓存存储器内,所述子单元位置和所述替代子单元位置分别包括列和冗余列。6.如权利要求4所述的装置,其中,在所述一个或多个高速缓存存储器中的所述一个高速缓存存储器内,所述子单元位置和所述替代子单元位置分别包括行和冗余行。7.如权利要求1所述的装置,其中,所述集成电路包括x86兼容的多核微处理器。8.一种用于提供配置数据给集成电路设备的装置,该装置具有:设备编程器,其被耦合到布置在管芯上的半导体熔丝阵列,被配置为利用用于布置在所述管芯上的多个核心的压缩的配置数据来对所述半导体熔丝阵列进行编程;以及多核微处理器,其包括:所述半导体熔丝阵列,其被布置在所述管芯上,向其中编程用于布置在所述管芯上且耦合到所述半导体熔丝阵列的所述多个核心的所述压缩的配置数据;以及存储装置,其被耦合到所述多个核心,所述存储装置包括每个对应于所述多个核心中的每一个核心的多个子存储装置,其中所述多个核心之一被配置为在上电/重置之后访问所述半导体熔丝阵列以对所述压缩的配置数据进行读取并进行解压缩,并且将用于所述多个核心中的所述每一个核心内的一个或多个高速缓存存储器的多个解压缩的配置数据集合存储在所述多个子存储装置中,并且其中,在功率选通事件之后,所述多个核心中的所述每一个之一随后访问所述多个子存储装置中的所述每一个的相应子存储装置,以检索和采用所述解压缩的配...

【专利技术属性】
技术研发人员:G葛兰亨利弟尼斯K詹史蒂芬嘉斯金斯
申请(专利权)人:上海兆芯集成电路有限公司
类型:发明
国别省市:上海;31

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

1