系统支持存储和计算机系统的制作方法

文档序号:6562402阅读:171来源:国知局
专利名称:系统支持存储和计算机系统的制作方法
技术领域
本发明涉及系统支持存储和计算机系统。
背景技术
通常使用至少一个64位中央处理单元(CPU)来构建高性能服务器系统。多个这些CPU可在使用对称多处理(SMP)体系结构的单个服务器系统中协作。这种CPU的公知代表是IBM POWER和PowerPC处理器族以及遵照由Intel与AMD提供的所谓x86-64体系结构的服务器处理器。
在服务器系统中,实现特殊产品功能性的多种特殊子系统可对CPU进行补充。CPU与这些子系统建立了服务器系统的系统拓扑。图1示出了服务器系统的系统拓扑。子系统本身可包含一个或多个处理器。例如,子系统可包含图形控制器、用户接口(键盘、鼠标等)、系统存储器(DDR2SDRAM等)、大容量存储控制器(光纤通道、SCSI等)和关联的大容量存储设备(硬盘驱动器、CD-ROM等)、扩展卡/板支持系统(Infiniband、PCI Express、PCI-X等)、网络适配器(以太网、WiFi等)、用于连接低速外围设备的控制器(USB、FireWire等)、数字与模拟输入/输出(DIO、I2C等),以及其他设备。
特别地,为了其在服务器系统中运行,系统CPU需要特殊的附加组件(处理支持“芯片组”,例如北桥、南桥、SuperIO等)。这些特殊附加组件的集成结构也被称作“处理器巢(processor nest)”,并可被看作服务器系统的特殊子系统。最常见的是使用专用控制器来实现服务器系统的子系统。在服务器系统能够加载操作系统(OS)之前,CPU以及子系统通常需要额外的加电例程和初始化过程-最终导致服务器系统处于可以启动并执行各种应用的运行方式。
作为将服务器系统引入活动状态的最初操作,包含服务器巢和可能的子系统区域(例如扩展卡)的基板(planar board)将被加电。在将相应组件电压准确引至规定规范的按时间规定的序列之后,此过程已可能需要某些服务。在加电成功时的第二个步骤中,需要复位并初始化关键的服务器系统组件。初始化包括配置输入/输出、分配子系统、设置和校准重要的总线定时等。
当使用基本设置配置来配置和初始化服务器系统时,服务器系统可能需要对操作系统引导操作的进一步支持,例如在操作系统执行之前设置前置条件。通常将所有在先步骤称作服务器系统的加电阶段。
一旦服务器系统达到其正常执行模式,通常需要更多运行时支持功能来维持不受约束的服务器系统功能性。这些支持功能可包括诸如电源和热管理之类的环境监视和控制功能或用于检测系统故障及其恢复的功能。当服务器系统提供所谓的自主计算功能时,还可能需要与其正常运行并行的对服务器系统的重新配置。
通常,由至少一个服务控制器或子系统控制器来提供上述运行时支持功能。在通常的刀片服务器系统体系结构中,基板管理控制器(BMC)充当这一角色。BMC可由包含8或16位嵌入式处理器(Hitachi H8、Intel80186等)的一个或多个控制器来表示。其他服务器系统(IBM pSeries、zSeries等)甚至可能需要具有32位嵌入式处理器(PowerPC 440等)的控制器。
处理器巢以及每个所述服务控制器和子系统控制器都需要专用存储,所述存储提供用于系统复位、配置、引导以及运行时监视和支持的数据,下文将这些数据称作系统数据。特别地,系统数据可包含将由包含在子系统中的处理器执行的固件、计算机程序代码。系统数据还包含所谓的重要产品数据(VPD)。典型的VPD信息包含产品型号、唯一序列号、产品发布等级、维护等级以及该硬件类型特有的其他信息。VPD还可包含用户定义的信息,例如设备的建筑物和部门位置。重要产品数据的收集和使用使得网络或计算机系统的状态能被理解,并更迅速地提供服务。
特定的系统支持存储被连接到相应的控制器或子系统,并通常仅可由它们访问。服务器的主存储器不用作系统支持存储。存储要求由控制器个别地定义,并具有广泛变化的特性以及特定属性-高、中或低频率随机读写访问;-关闭电源后或发生意外停电时的数据保持(由电池后备存储器表示);-用于读写的高速运行时访问(直接控制器控制存储器);-高可靠性(有保证的备份操作和数据更新操作)。
为了实现所希望的基本服务器系统属性,还需要所有其组件的高可靠性。因此,这些众多的专用数据储存库对服务器系统总体材料成本的影响不能忽略。造成此事实的一个原因是增加的系统设计的复杂性;例如,向已经在布线上受到限制的系统基板增加扩展板布线。
用于非易失性RAM(NVRAM;RAM随机存取存储器)的电池后备实施方式昂贵且需要专门的长期维护构思。通常,这种NVRAM器件在5到6年的运行后损坏并需要兼容的更换品,而到那时,这种更换品在市场上很难找到。并且为了确保存储的数据不会丢失,电池的持久放电要求服务器系统频繁运行。另一方面,只读存储器(ROM)器件可永久地存储数据,但该数据只能读出而不能更新。
闪存以这样的方式在硅芯片上存储信息无需电力来维持芯片中的信息。另外,闪存提供了快速读取访问时间和固态抗冲击性。闪存存在两种形式NOR和NAND,其中名称指各存储单元中所使用的逻辑门的类型。闪存的一个缺陷是尽管可以以随机存取的方式每次读取或编程一个字节或一个字,但是它必须每次擦除一个“块”。在以新近擦除的块开始的情况下,该块内的任何字节都可被编程。但是,一旦某字节已被编程,则直到整个块被擦除才能再次改变该字节。换言之,闪存(具体地说,NOR闪存)提供了随机存取读取和编程操作,但不能提供随机存取重写或擦除操作。
现今所有的闪存体系结构均受到被称为“位翻转”现象的损害。在某些情况下(通常罕见,但在NAND中比在NOR中常见),位或者被反转,或者被报告为反转。
闪存的另一固有缺陷是有限数量的擦除-写入循环(由于用于存储数据的电荷存储机构周围的绝缘氧化物层的损耗)。例如,现今的NOR存储器具有范围从100000到1百万的擦除-写入循环最大次数。现今的NAND闪存器件比相同容量的NOR闪存便宜多达5倍,可比NOR闪存快5至10倍的速度写入,并具有十倍的耐久性。由于NAND闪存器件的块大小通常比NOR闪存器件的块大小小八倍,在给定的时间段上,与每个NAND块相比,每个NOR块擦除相对较多的次数。这进一步扩大了对NAND有利的差距。
但是,NAND闪存与NOR闪存相比具有某些缺点。NAND闪存不允许随机存取读取并且只能以512字节(称作页)的块存取。因此,存储在NAND闪存中的代码不能直接执行(XIP现场执行),而是需要在开始执行前被复制到不同的随机存取存储装置(例如RAM)。为了执行引导代码,通常通过提供非常小的XIP器件来回避此问题,所述XIP器件包含初始引导代码并将所述代码从NAND闪存器件复制到随机存取器件,并在该处执行所复制的代码。但是,这是一项耗时的任务,并向总体服务器系统成本增添了额外的成本。
由于NAND门的几何结构中的物理效应所产生的随机误差,NAND闪存倾向于具有低可靠性。由于产出及成本考虑,NAND闪存器件伴随有在整个介质上随机散布的坏块。因此,NAND闪存器件需要首先对必须标记为不可用的坏块进行扫描。
对于使用NAND闪存,存在各种设计选择。借助在处理器上单独执行的软件来管理NAND闪存是可行的。但是,这导致极低的性能,主要是由于每个对闪存的读取/写入所需的繁重的错误检测码。因此,NAND器件通常具有集成的控制器(尽管其也可以使用单独的控制器作为替代),该集成控制器已提供了错误检测和校正能力。最先进的控制器向NAND闪存器件提供了与NOR闪存类似的接口和引导能力。具有智能控制器的这种NAND闪存器件的实例是M-Systems DiskOnChip器件族。但是,即便这些闪存器件也具有读取/写入性能损失。
过去,NAND闪存的缺点妨碍了其在服务器系统拓扑中用作数据存储装置。当具有智能控制器的NAND闪存器件在市场上更为多见并清楚地展示其可靠性时,这一偏见可能在不久的将来被人们丢弃。
许多已使用的系统存储设备具有较低的性能特性。这可能导致负面影响,例如较长的加电阶段以及服务器系统正常运行期间降低的系统性能。但是,加电阶段期间在NVRAM中的配置更新以及闪存器件中的固件代码更新在如今是相当罕见的事件。专利申请U.S.2004/0123033 A1提出作为减轻诸如闪存之类的非易失性存储器中发生的存取损失的方法,将易失性存储(例如高速缓存)添加到半导体非易失性存储器中的关联存储器阵列。
磁阻RAM(MRAM)是一种NVRAM技术,从二十世纪九十年代起,其已经处在开发当中。迄今为止,现有存储器技术(尤其是闪存与DRAM(动态RAM))的密度的持续增大将MRAM排除在市场之外,但支持者相信,由于具有压倒性的优点,MRAM最终将得到普及。最近,由于看来系统在减小尺寸方面具有问题,许多致力于MRAM的公司减少了他们的努力。
铁电RAM(FRAM或FeRAM)还没有提供DRAM和SRAM的位密度,但是它是非易失性的,比闪存速度快(写入时间在100纳秒以下,大约与读取一样快),并具有非常低的功率要求。
由于它们的不同特性,在服务器系统的开发、制造、维护以及修理阶段,对不同存储器件(NAND闪存、NOR闪存、ROM、NVRAM)进行编程的努力是巨大的。其可能需要用于每个不同存储器件的一组庞大的不同的工具,并需要在多种文件中提供和维护不同的存储内容。

发明内容
因此,本发明的目标在于提供一种在现有技术之上得到改进的系统支持存储以及相应的计算机系统。
通过一种新型的公用系统支持储存库(CSSR),即一种集成在服务器系统之中的新型存储设备,实现了本发明的优点。在本发明的优选实施例中,通过使用SDRAM(同步DRAM)与同等容量的NAND闪存的组合来实现CSSR,其中所述NAND闪存用作所述SDRAM的永久性镜像副本,所述SDRAM与NAND闪存二者均由新型的CSSR引擎控制器硬件来控制。优选地以ASIC(专用电路)的形式来实现所述CSSR引擎。
较为昂贵的实施方式采用电池后备的NVRAM来取代SDRAM与NAND闪存的组合。其他可能方式是使用MRAM或FRAM。
所述CSSR用于取代在对各种子系统透明的服务器系统拓扑间分布的所有不同的系统支持存储。因此,所述CSSR为所有不同的系统数据提供了中央储存库。所述CSSR具有诸如ROM、NVRAM以及NOR闪存之类的典型系统支持存储的全部所需属性。另外,所述CSSR具有改进的性能和数据持久属性。
所述CSSR的使用使得能够减少服务器系统中组件的数量、降低其复杂性,并因此提高总体系统可靠性。由于组件数量减少,降低了服务器系统的制造成本和功耗。其他优点在于潜在的空间减小和质量减小,这使得能够增加新的组件/功能。这些优点对于诸如刀片服务器系统之类的在成本、电源和空间上受到限制的服务器系统尤其有利。
性能提升可以产生提高的总体服务器系统性能,特别是在加电阶段期间。所述CSSR还将提供足够的空间来添加因现今系统支持存储中的成本限制而不能存储的额外系统数据。所述CSSR的增加的存储容量使得可以存储更大且因此更加智能的固件,所以可向所述服务器系统添加新的和扩展的功能和能力。假设不同的系统支持存储中的总体合计容量较小,可通过使用如今市场上已可购买到的最小的NAND闪存来实现存储增长。
由于所述CSSR是对各种子系统透明的系统支持存储替代物,所以无需修改访问系统支持存储的现有固件。特别地,所述CSSR允许通过集成CSSR来更改现有的服务器系统拓扑。其还为从现有拓扑得出的新的服务器系统拓扑提供了平滑的迁移路径。
此外,无需更改涉及不同系统支持存储的编程的现有开发和制造工具及过程。进而,作为一种公用中央存储,所述CSSR提供了减少这些不同工具和过程的数量的方法,由此降低了开发和制造过程的复杂性。得到的成本和时间节省是本发明的其他优点。例如,经由CPU或经由网络设备的固件代码更新更容易实现且因此更为可靠。


现在结合附图来说明本发明及其优点图1为出了其系统拓扑的服务器系统的示意性框图;图2为根据本发明的服务器系统的示意性框图;图3为根据本发明的系统支持存储设备的示意性框图;图4为根据本发明的系统支持存储设备引擎的示意性框图;图5为根据本发明的系统支持存储设备的内部存储器布局的示意性框图;图6为根据本发明的存储设备的内部存储器布局的示意性框图;图7a、7b为提供了将根据本发明的一个实施例使用的超级电容器的实例数据的表。
具体实施例方式
服务器系统100(例如刀片服务器系统)的典型系统拓扑如图1所示。至少一个CPU 110可以访问服务器系统的主存储器,所述主存储器在此以系统存储器组111的形式实现。系统存储器组包含若干DDR2 RAM模块112。CPU 110与系统芯片组120集成,系统芯片组120经由路径C连接有NOR闪存器件121,并经由路径D连接有NVRAM器件122。服务器系统100包含各种子系统130,特别是包含SAS控制器131(SAS串行连接SCSI;SCSI小型计算机系统接口),至少一个硬盘驱动器132连接到SAS控制器131。
子系统经由路径A连接有NOR闪存器件133,并经由路径B连接有NVRAM器件134。BMC 140控制CPU 110、系统芯片组120以及子系统130。BMC 140经由路径E连接有NOR闪存器件141,并经由路径F连接有RAM器件142。服务器系统100还包含此处未示出的电源或甚至电源子系统。
图2示出了服务器系统101的系统拓扑,所述拓扑通过应用根据本发明的系统设计方法改变图1所示服务器系统100的系统拓扑而得出。路径A、B、C、D、E和F将CPU 110、子系统130、系统芯片组120和BMC140连接到公用系统存储储存库(CSSR)150。在一定范围内,CSSR 150替代NOR闪存器件133、121与141、NVRAM器件134与122以及RAM142。在服务器系统100的具体硬件实施方式中,路径A至F为类似于PCI(外围组件接口)总线连接、Hitachi H8总线连接或短管脚计数(LPC)总线连接的硬件接口。
CSSR 150的基本内部结构在图3中示出。CSSR 150包含CSSR引擎151与CSSR储存库152。路径A至F连接到CSSR引擎151。 CSSR储存库152包含CSSR存储器153。CSSR引擎151与CSSR储存库152经由路径x和y连接,并可选地(在一个实施例中)经由附加路径y′连接。CSSR引擎151还连接到另一路径z,路径z允许访问和更新整个CSSR存储器153。
CSSR引擎151的更为详细的内部结构在图4中示出。路径A至F连接到各存储器总线控制器/端口适配器(MBA),即MBA 200、201、202、203、204、205。此类MBA的实例为PCI和LPC总线适配器。MBA 200至205连接到多路复用器(MPX)210,其连接到SDRAM控制器220。路径x连接CSSR引擎151中的SDRAM控制器220和图3所示的CSSR储存库152。MBA 200至205还连接到可编程定序器230,定序器230经由选择器路径S控制多路复用器210。在优选实施例中,以包含非常小的RAM(例如1k字节)的FPGA(现场可编程门阵列)的形式来实现定序器230。
定序器230还连接到CSSR控制存储器232,并被用作小型有限状态机。在优选实施例中,定序器230的状态可通过附加的后备电容器231(例如,超级电容器)或者通过电池231(在意外停电的情况下)来保持。这种意外停电的典型实例是将刀片服务器系统从其外壳机架物理移除。在本发明的一个实施例中,可经由系统条件路径c对定序器230进行控制。
路径z连接到更新端口控制器233,所述控制器233连接到定序器230。定序器230还使用某些寄存器来存储中间数据闪存更新历史寄存器234、CSSR分区表寄存器235以及仲裁访问优先级寄存器236。NAND闪存控制器240经由路径y以及可选地经由附加路径y′连接到CSSR储存库。定序器230还对NAND闪存控制器240进行控制。
CSSR储存库152的更为详细的内部结构在图5和图6中示出,图5、图6示出了两个不同的实施例。优选实施例在图5中示出,其中CSSR存储器153包含易失性运行时储存库501和非易失性储存库502。运行时储存库501作为DRAM实现,而非易失性储存库502使用NAND闪存503实现。在一个实施例中,NAND闪存503补充有NAND闪存504。CSSR引擎151经由将SDRAM控制器220连接到SDRAM的路径x来访问运行时储存库501,并且经由将NAND闪存控制器240连接到NAND闪存503的路径y,以及可选地经由将NAND闪存控制器240连接到NAND闪存504的路径y′来访问非易失性储存库502。
CSSR储存库152的另一实施方式在图6中示出,其中运行时和非易失性储存库601作为DRAM实现,对于该DRAM,电池和后备控制模块602确保在意外停电期间DRAM的内容不会丢失。
运行时储存库501和601中存储的内容包含与服务器系统100的系统数据有关的相邻存储器分区[A]、[B]、[C]、[D]、[E]和[F]。此系统数据存储在NOR闪存器件133、NVRAM 134、NOR闪存器件121、NVRAM 122、NOR闪存器件141以及RAM 142中,经由图1所示的服务器系统100中的路径A至F对它们进行访问。
除了分区[A]至[F]之外,运行时储存库501与601还包含空闲存储器n的相邻块。在本发明的优选实施例中,存储器分区[A]至[F]的内容被存储在非易失性储存库502中。在使用电池和后备控制模块602代替附加的非易失性储存库502的实施例中,经由路径z和更新端口控制器233,在制造和修复服务器系统101期间,使用专用更新硬件来创建分区及其内容。
在初始化CSSR 150时创建运行时储存库501中的存储器分区。在此步骤中,将存储器分区[A]至[F]的内容从非易失性储存库502复制到运行时储存库501。可通过特殊的刷新器设备在非易失性储存库502中创建存储器分区[A]至[F]以及n的内容,所述刷新器设备用于在将闪存芯片安装到承载CSSR储存库152的基板之前对闪存芯片进行编程。用于编程的数据包含将在服务器系统100中的NOR闪存器件133、NVRAM 134、NOR闪存器件121、NVRAM 122、NOR闪存器件141以及RAM 142中存储的所有数据。所有这些数据还可在制造或修复服务器系统101期间用于运行时储存库601。
CSSR控制存储器232包含定序器230使用的CSSR特定配置数据和程序代码。在最简单的实施方式中,CSSR控制存储器232被实现为ROM。在本发明的另一实施例中,CSSR控制存储器232被实现为NOR闪存器件。在将此闪存器件安装在承载CSSR储存库152的基板上之前,对此闪存器件进行编程。如本领域的技术人员公知的,通过将被解释为命令的特殊数据发送到所述闪存器件来执行编程。闪存器件的编程是由闪存器件执行这些命令。在制造商提供的说明手册中说明了闪存器件所支持的命令。
当已将闪存器件安装在基板上之后,定序器230可以使用更新端口控制器233经由路径z对所述闪存器件编程。然后,可以由诸如具有使用路径z所需的硬件接口的个人计算机之类的外部刷新器硬件来执行所述编程。在本发明的优选实施例中,BMC 140可用于对CSSR控制存储器232进行编程。任何对CSSR控制器存储器232内容的更改只能在服务器系统处于暂停模式时执行,在暂停模式下,需要来自CSSR 150的系统配置数据的CPU 110和所有子系统都停止。
CSSR配置数据存储在逻辑地址空间的起始处。这允许使用固定地址来访问特定配置数据并因此简化了此数据的存储和加载。CSSR特定配置数据包含定义了存储器分区[A]至[F]以及n的开始和结束地址的分区表。
在初始化CSSR 150期间,首先初始化定序器230。所述CSSR特定配置数据还包含CSSR定序器230的内部RAM的内容;特别是包含将由定序器执行的程序代码。在其初始化过程中,CSSR定序器230将此内容加载到其内部RAM中。在执行此程序代码时,CSSR定序器230将CSSR分区表从CSSR控制存储器232复制到CSSR分区表寄存器235。在进一步的步骤中,定序器230通过在特定硬件寄存器中写入特定值来设置CSSR150的所有硬件。
例如,对本领域的技术人员公知的是,需要对SDRAM控制器220和NAND闪存控制器240适当地进行配置。在CSSR 150初始化结束时,定序器230使用SDRAM控制器220经由路径x将存储器分区[A]至[F]的内容从非易失性储存库502复制到运行时储存库501。
在本发明的优选实施例中,CSSR控制存储器232作为NAND闪存503的一部分实现。于是,用于实现定序器230的FPGA还包含用于定序器230的硬编码的程序代码。然后可以从NAND闪存503加载其余的程序代码。
在本发明的其他实施例中,使用BMC 140来初始化CSSR 150,而不是使用定序器230来执行初始化步骤。在这种情况下,BMC 140需要包含用于CSSR 150的代码和配置数据的专用引导闪存。此引导代码包含BMC140执行CSSR 150的初始化所需的代码。BMC 140使用直接连接到CSSR控制存储器232的更新端口控制器233来加载所述引导代码。
只要在服务器系统101的正常运行期间更改了存储器分区[A]至[F]的内容,就在后台进程中将存储器分区[A]至[F]的内容透明地写入非易失性储存库502。在闪存更新历史寄存器234中标记分区的更改。以这种方式,可以确保在预期或意外停电后保留对系统支持存储的任何更改。当触发服务器系统101的关闭电源阶段时将发生预期的停电。然后,在关闭电源阶段完成前,将存储器分区[A]至[F]的内容写入非易失性储存库502。
通过可选的后备电容器或电池231,可确保对闪存的写入操作的成功完成。图7a与7b中的表提供了要用于后备电容器231的超级电容器的所需容量的计算实例。只有成功的写操作才可以确保非易失性储存库502中的有效数据。通过可选地使用充当NAND闪存503的数据镜像的附加NAND闪存504,可进一步提高数据完整性。每当对NAND闪存503编程时,则同样由NAND闪存控制器240经由路径y′对NAND闪存504执行同样的编程。在NAND闪存503存在任何读取错误的情况下,NAND闪存控制器240可替代地使用来自NAND闪存504的所需数据。
使用连接到CSSR引擎151的系统条件路径C,可以将服务器系统101的关闭电源阶段发信号告知CSSR 150。在电源或电源子系统出现故障的情况下,或当CPU 110进入节电模式时,系统条件路径C还可用于触发对CSSR 150中的闪存的写入。CPU 110的节电模式还可用于启动将NAND闪存503的内容复制到NAND闪存504的复制操作。
MBA 200至205使得可以替代服务器系统100的系统支持存储设备,这种替代产生了服务器系统101,其对服务器系统100与101的子系统是透明的。如果这种替代不是透明的,其将导致其他硬件和软件/固件设计的更改,这种更改将增加服务器系统101的总体成本并可以导致新的实现错误。
在最简单的实例中,MBA为用于SRAM和闪存的公知存储器接口。在更复杂的实例中,路径C和D为PCI总线连接,路径E和F为HitachiH8总线连接。于是,MBA 202和203用作PCI总线与从MBA 202和203到多路复用器210及定序器230的内部路径之间的桥。并且MBA 204和205用作Hitachi H8总线与从MBA 204和205到多路复用器210及定序器230的内部路径之间的桥。在其他的实例中,MBA提供了I2C(内部集成电路)接口。
在CSSR 150的初始化过程中,需要对MBA 200到205进行配置,使得它们能够访问CSSR存储器152中它们关联的存储器分区[A]至[F]。在本发明的优选实施例中,MBA需要知道它们关联的存储器分区在运行时储存库501中的地址空间。在初始化CSSR引擎151期间,定序器230在每个MBA 200至205的寄存器中存储地址偏移,该偏移与关联的存储器分区[A]至[F]起始的SDRAM中的地址相关。然后,当生成要经由SDRAM控制器220在SDRAM中访问的地址时,MBA 200至205将此地址偏移用作地址前缀。
在经由路径A至F并行访问CSSR 150的情况下,定序器230使用多路复用器210和选择器S仲裁对CSSR存储器153的访问。在最简单的解决方案中,这可以在先来先服务方案中完成。在本发明的优选实施例中,将路径A至F按优先顺序排列。例如,取决于服务器系统101的状态,BMC140可以具有比CPU 110更高的优先级,例如,当服务器系统101处于初始化或加电阶段时。在这种情况下,与路径C和D相比,路径E和F具有更高的优先级,因此,经由路径E和F的访问在经由路径C和D的访问之前得到服务。
定序器230将路径A至F的优先次序存储在仲裁访问优先级寄存器236中。对于该优先次序,定序器230按照关联的路径A至F的次序处理MBA 200至205的端口。当端口上的请求等待被处理时,其将由定序器230在下一端口被处理之前进行处理并完成。
由于SDRAM允许比NOR闪存器件133、121和141快得多的访问,相比于由用于实现运行时储存库501和601的SDRAM进行补偿的情况,对经由路径A至F并行访问CSSR存储器153进行仲裁所引入的性能损害平均起来要大。
在制造或修复服务器系统101期间,可以使用专用更新硬件来存储、检索和更新CSSR存储器153的全部内容。这允许在服务器系统101处于暂停模式时更新服务器系统101的系统数据,在所述暂停模式下,需要来自CSSR 150的系统配置数据的CPU 110和所有子系统都停止。为了借助定序器230来访问CSSR存储器153,所述更新硬件经由路径z使用更新端口控制器233。但是也可以将路径z连接到BMC 140,以便其可以在服务器系统101的固件代码更新步骤中执行系统数据的更新。
在服务器系统100的开发过程中,特别是在固件开发过程中,由于在系统设计中试图将总体系统成本尽量减到最小,所以经常检测到系统支持存储(如系统支持存储133、134、121、122、141及142)没有足够的存储容量。在这种情况下,需要使用提供更高容量的其他芯片以实现系统支持存储。但是,这种设计更改通常不能对服务器系统100的全部组件透明地完成,因此,它们引入了其他设计更改并由此成为固有的错误来源。对于CSSR存储器153,由于在替换CSSR 150的全部数据内容时存储器分区的边界可自由移动,所以不存在这一问题。
尽管示出并描述了特定的实施例,但是对本领域的技术人员来说,本发明的各种修改将是显而易见的。
权利要求
1.一种用于永久地存储计算机系统(101)的系统数据([A]至[F])的系统支持存储(150),其特征在于提供了至少两个功能不同的硬件接口(201至205,233),可以并行使用所述接口以便访问所述存储的数据的不同子集([A]至[F],n)。
2.根据权利要求1的系统支持存储,其中可经由所述硬件接口(233)中的至少一个接口来访问所有所述存储的数据([A]至[F],n)。
3.根据权利要求1或2的系统支持存储,其中所述硬件接口可以包括RAM(205)、NVRAM(201,203)、MRAM、FRAM、ROM以及闪存(200、202、204)的接口。
4.根据权利要求1至3中的任一权利要求的系统支持存储,包括提供所述硬件接口和用于存储所述数据的非易失性储存库(152)的引擎(151)。
5.根据权利要求4的系统支持存储,其中所述非易失性储存库是电池后备的NVRAM或MRAM或FRAM。
6.根据权利要求4的系统支持存储,包括附加的电源(231)以便所述引擎可以在停电后完成任何对所述储存库的写入操作。
7.根据权利要求6的系统支持存储,其中所述非易失性储存库包括易失性运行时储存库(501)和非易失性存储器(502),所述引擎使用所述运行时储存库来为所有使用所述硬件接口的数据访问提供服务,并且使用所述非易失性存储器来永久地存储所述数据。
8.根据权利要求7的系统支持存储,其中所述运行时储存库是RAM。
9.根据权利要求7或8的系统支持存储,其中所述非易失性存储器是闪存或FRAM或MRAM。
10.根据权利要求7至9中的任一权利要求的系统支持存储,其中所述非易失性存储器包括每个数据表项的至少两个副本(503,504)。
11.根据权利要求1至10中的任一权利要求的系统支持存储,其中定序器(230)仲裁经由所述硬件接口的并行数据访问。
12.根据权利要求11的系统支持存储,其中所述定序器被实现为包含内部RAM的FPGA。
13.根据权利要求1至10中的任一权利要求的系统支持存储,其中所述计算机系统的支持处理器(140)仲裁经由所述硬件接口的并行数据访问。
14.一种芯片,所述芯片包括根据权利要求1至13中的任一权利要求的系统支持存储。
15.一种包括多个子系统(110、120、130、140)的计算机系统(101),每个所述子系统都具有关联的控制数据([A]、[B]、[C]、[D]、[E]、[F]),所述计算机系统的特征在于提供了可连接到选定子系统(120、130、140)的公共存储(150),所述公共存储(150)存储了用于所述选定子系统(120、130、140)的所述关联的控制数据([A]、[B]、[C]、[D]、[E]、[F])的子集。
16.根据权利要求15的计算机系统,其中所述公共存储是根据权利要求1至13中的任一权利要求的系统支持存储或是根据权利要求14的芯片。
全文摘要
本发明涉及系统支持存储以及相应的计算机系统。单个新的系统支持存储设备(150)代替了在对各种子系统(110、120、130、140)透明的服务器系统拓扑之间分布的所有不同的系统支持存储。因此,其为所有不同的系统数据提供了中央储存库。其具有诸如ROM、NVRAM以及NOR闪存之类的典型系统支持存储的全部所需属性。另外,其具有改进的性能和数据持久属性。在本发明的优选实施例中,使用SDRAM(同步动态RAM)和相同容量的NAND闪存的组合来实现所述设备,其中所述NAND闪存用作所述SDRAM的永久性镜像副本,所述SDRAM与NAND闪存二者均由新型引擎控制器硬件来控制。优选地以ASIC的形式来实现所述引擎。
文档编号G06F3/06GK1983152SQ20061014125
公开日2007年6月20日 申请日期2006年9月29日 优先权日2005年12月13日
发明者D·E·施泰格, R·里克 申请人:国际商业机器公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1