侦测电路板上的内存条数量的方法及系统与流程

文档序号:19042731发布日期:2019-11-05 23:19阅读:301来源:国知局
侦测电路板上的内存条数量的方法及系统与流程

本发明涉及计算机技术,尤其涉及一种侦测电路板上的内存条数量的方法及系统。



背景技术:

基本输入输出系统(Basic Input Output System,简称为:BIOS)是一组固化到计算机内主板上一个只读存储记忆体(Read-Only Memory,ROM)芯片上的程序,在计算机系统启动时,首先要运行BIOS来配置计算机系统运行时需要的参数,因此,BIOS的运行速度直接影响计算机的启动速度。

而随着计算机技术的发展,为了提升处理器性能,经常需要增加内存容量,也即计算机主板上需要插入更多的内存条,因此计算机主板上的内存插槽数量也就随之增加。而在计算机启动时,BIOS运行过程中需要读取内存插槽中插入的内存条的串行存在检查(Serial Presence Detect,简称为:SPD)信息,从而配置该内存条的运行参数,以启动计算机系统。因此,SPD信息的读取速度会影响BIOS的运行速度。在现有技术中,BIOS会依据内存插槽的实际数量,根据每个内存插槽的预设地址,逐个读取内存插槽中的内存条的SPD信息。

但是,现有技术中BIOS读取内存条的SPD信息的方式效率不高,进而影响计算机系统的启动速度。



技术实现要素:

本发明实施例提供一种侦测电路板上的内存条数量的方法及系统,以克服现有技术中BIOS读取内存条的SPD信息的方式效率不高,进而影响计算机系统的启动速度的问题。

本发明第一方面提供一种侦测电路板上的内存条数量的方法,所述电路板上包括至少两个内存插槽,每个所述内存插槽的侦测引脚电连接平台控制中枢PCH,以向所述PCH输出所述内存插槽是否已插入内存条的侦测信号,该方法包括:

PCH接收到来自每个内存插槽的所述侦测信号;

PCH根据所述侦测信号确定每个内存插槽是否插入内存条的实际插入状况信息,并将所述实际插入状况信息通知到基本输入输出系统BIOS;

当所述实际插入状况信息代表存在已插入内存条的内存插槽时,所述BIOS控制所述PCH到该实际插入状况信息指定的内存插槽地址读取该指定的内存插槽上的内存条的串行存在检查SPD信息。

结合第一方面,在第一方面的第一种可能的实现方式中,所述内存插槽的侦测引脚为插入所述内存插槽中的与内存条金手指地对应的引脚。

结合第一方面或第一方面的第一种可能的实现方式,在第一方面的第二种可能的实现方式中,每个所述内存插槽的侦测引脚电连接平台控制中枢PCH,包括:

每个所述内存插槽的侦测引脚与PCH上的GPIO接口电连接。

结合第一方面或第一方面的第一种可能的实现方式,在第一方面的第三种可能的实现方式中,所述PCH根据所述侦测信号确定每个内存插槽是否插入内存条的实际插入状况信息,包括:

针对每个内存插槽的侦测信号,若所述侦测信号为逻辑低电平信号,则确定所述内存插槽中插入内存条;若所述侦测信号为逻辑高电平信号,则确定所述内存插槽中未插入内存条。

结合第一方面或第一方面的第一种可能的实现方式,在第一方面的第四种可能的实现方式中,该方法还包括:

当所述实际插入状况信息代表不存在已插入内存条的内存插槽时,所述BIOS向用户进行报警。

本发明第二方面提供一种侦测电路板上的内存条数量的系统,包括电路板,所述电路板上包括至少两个内存插槽,所述系统还包括:平台控制中枢PCH,基本输入输出系统BIOS;其中,每个所述内存插槽的侦测引脚电连接所述PCH,以向所述PCH输出所述内存插槽是否已插入内存条的侦测信号;

所述PCH用于接收到来自每个内存插槽的所述侦测信号;

所述PCH用于根据所述侦测信号确定每个内存插槽是否插入内存条的实际插入状况信息;

所述BIOS,用于接收所述实际插入状况信息,当所述实际插入状况信息代表存在已插入内存条的内存插槽时,用于控制所述PCH到该实际插入状况信息指定的内存插槽地址读取该指定的内存插槽上的内存条的串行存在检查SPD信息。

结合第二方面,在第二方面的第一种可能的实现方式中,所述内存插槽的侦测引脚为插入所述内存插槽中的与内存条金手指地对应的引脚。

结合第二方面或第二方面的第一种可能的实现方式,在第二方面的第二种可能的实现方式中,每个所述内存插槽的侦测引脚与PCH上的GPIO接口电连接。

结合第二方面或第二方面的第一种可能的实现方式,在第二方面的第三种可能的实现方式中,所述PCH具体用于:

针对每个内存插槽的侦测信号,若所述侦测信号为逻辑低电平信号,则确定所述内存插槽中插入内存条;若所述侦测信号为逻辑高电平信号,则确定所述内存插槽中未插入内存条。

结合第二方面或第二方面的第一种可能的实现方式,在第二方面的第四种可能的实现方式中,所述BIOS还用于:

当所述实际插入状况信息代表不存在已插入内存条的内存插槽时,所述BIOS向用户进行报警。

本发明中,每个内存插槽的侦测引脚电连接平台控制中枢PCH,以向PCH输出内存插槽是否已插入内存条的侦测信号,该方法包括:PCH接收到来自每个内存插槽的侦测信号;PCH根据侦测信号确定每个内存插槽是否插入内存条的实际插入状况信息,并将实际插入状况信息通知到BIOS;当实际插入状况信息代表存在已插入内存条的内存插槽时,BIOS控制PCH到该实际插入状况信息指定的内存插槽地址读取该指定的内存插槽上的内存条的SPD信息。其中,BIOS仅控制PCH从指定的已插入内存条的内存插槽地址获取已插入内存条的SPD信息,有效提高了SPD信息的获取速度,进而有效提高了计算机系统的启动速度。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例提供的侦测电路板上的内存条数量的方法的流程图;

图2所示为本发明实施例提供的侦测电路板上的内存条数量的系统结构示意图;

图3为本发明实施例提供的侦测电路板上的内存条数量的系统的具体结构示意图;

图4为图3所示的侦测电路板上的内存条数量的系统的一种具体实现结构示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

目前的计算机中,服务器主板上,BIOS设计普遍是按插槽数量,而不是实际安装的内存条数量去读取SPD信息和判断是否插有内存。但在实际应用中,出于成本和应用领域特点等因素的考虑,往往不会将所有的内存插槽都插上内存条。这就造成当实际安装的内存条数量少于内存插槽数量时候,BIOS读取SPD信息运行效率不高。

为了有效提高计算机系统的启动速度,发明人发现,可以在计算机系统启动后,首先获知内存插槽的状态,从而在读取SPD信息时,只根据插入内存条的内存插槽的地址获取内存条的SPD信息。

实施例一

图1为本发明实施例提供的侦测电路板上的内存条数量的方法的流程图,其中,每个内存插槽的侦测引脚电连接平台控制中枢PCH,以向PCH输出内存插槽是否已插入内存条的侦测信号,如图1所示,本实施例的方法可以包括:

步骤101、PCH接收到来自每个内存插槽的侦测信号。

步骤102、PCH根据侦测信号确定每个内存插槽是否插入内存条的实际插入状况信息,并将实际插入状况信息通知到基本输入输出系统BIOS。

步骤103、当实际插入状况信息代表存在已插入内存条的内存插槽时,BIOS控制PCH到该实际插入状况信息指定的内存插槽地址读取该指定的内存插槽上的内存条的SPD信息。

在计算机系统启动时,需要检测每个内存插槽插入内存条的状态,以仅仅只从已插入内存条的内存槽插槽中读取内存条的SPD信息,由于内存插槽中插入内存条和内存插槽中没有插入内存条时可以用不同的信号表示本发明中,侦测信号即是用来表明内存插槽中是否插入内存条的信号。

为了减小系统的复杂度,可以使用内存插槽的引脚作为侦测引脚向PCH发送侦测信号,以使PCH根据侦测信号确定每个内存插槽是否插入内存条的实际插入状况信息。

其中,每个内存插槽的侦测引脚电连接平台控制中枢PCH的一种可选方案为:

每个内存插槽的侦测引脚与PCH上的GPIO接口电连接。

进一步的,内存槽的侦测引脚为插入内存插槽中的与内存条金手指对应的任一个引脚。

优选的,内存插槽的侦测引脚为插入内存插槽中的与内存条金手指地对应的引脚。当使用与金手指地对应的一个内存插槽引脚作为侦测引脚时,剩余内存插槽中与内存条金手指其他地引脚对应的引脚连接到计算机主板的地网络。

本实施例直接采用存条插槽的引脚作为侦测引脚,无需引入额外的器件,从而无需增加计算机的复杂度。

进一步的,当选择插入内存插槽中的与内存条金手指地对应的引脚作为侦测引脚时,当该内存插槽中插入内存条时,则侦测信号为逻辑低电平信号,当该内存插槽中未插入内存条时,则侦测信号为逻辑高电平信号。

若PCH接收到来自某个内存插槽的侦测信号为逻辑低电平信号,则确定该内存插槽中插入内存条;若PCH接收到来自某个内存插槽的侦测信号为逻辑高电平信号,则确定该内存插槽中未插入内存条。

以下按照上述使用插入内存插槽中的与内存条金手指地对应的引脚作为内存插槽的侦测引脚,且计算机中有4个内存插槽,其中有3个内存插槽中插入内存条的情况说明本方案的具体实现方法:

假设第1个内存插槽对应的侦测信号为逻辑高电平信号,第2、3和4个内存插槽对应的侦测信号均为逻辑低电平信号,当计算机启动时,首先,PCH接收到来自4个内存插槽中每个内存插槽的侦测信号,当接收到该些侦测信号后,PCH判定第1个内存插槽未插入内存条,第2、3和4个内存插槽中已插入内存条,然后PCH将包含第1个内存插槽中未插入内存条,第2、3和4个内存插槽中已插入内存条的实际插入状况信息发送至BIOS,当BIOS接收到该实际插入状况信息后,得知第1个内存插槽未插入内存条,第2、3和4个内存插槽中已插入内存条,确定第2、3和4个内存插槽对应的系统管理总线(System Management Bus,简称为:SMBUS)地址,并把确定的该些地址发送至PCH,以使PCH通过该些SMBUS地址获取已插入内存条的SPD信息。

另一种方式,假设上述4个内存插槽中均未插入内存条时,当计算机启动时,首先,PCH接收到来自4个内存插槽中每个内存插槽的侦测信号,然后PCH将包含第1、2、3和4个内存插槽中均未插入内存条的实际插入状况信息发送至BIOS,当BIOS接收到该实际插入状况信息后,得知所有内存插槽中均未插入内存条,BIOS启动无内存报警程序,向用户进行报警,以向用户提醒没有插入内存条,系统无法正常启动。其中,提醒的方式可以为蜂鸣器发出警报声音的方式,本发明不对提醒的方式加以限制。

进一步的,继续按照上述例子,一种可选的方式,当有4个内存插槽时,可以将第1个内存插槽与PCH的GPIO1连接,将第2个内存插槽与PCH的GPIO2连接,将第3个内存插槽与PCH的GPIO3连接,将第4个内存插槽与PCH的GPIO4连接。

进一步的,上述的实际插入状况信息用来表明内存插槽是否插入内存条,此消息可以包括内存插槽的编号以及与内存插槽的编号对应的内存插槽中是否插入内存条;还可以包括内存插槽的地址以及与内存插槽的地址对应的内存插槽中是否插入内存条。

本发明中,BIOS仅控制PCH从指定的已插入内存条的内存插槽地址获取已插入内存条的SPD信息,而无需从没有插入内存条的内存插槽中尝试读取内存条的SPD信息。

本发明实施提供一种侦测电路板上的内存条数量的方法,每个内存插槽的侦测引脚电连接平台控制中枢PCH,以向PCH输出内存插槽是否已插入内存条的侦测信号,该方法包括:PCH接收到来自每个内存插槽的侦测信号;PCH根据侦测信号确定每个内存插槽是否插入内存条的实际插入状况信息,并将实际插入状况信息通知到BIOS;当实际插入状况信息代表存在已插入内存条的内存插槽时,BIOS控制PCH到该实际插入状况信息指定的内存插槽地址读取该指定的内存插槽上的内存条的SPD信息。其中,BIOS仅控制PCH从指定的已插入内存条的内存插槽地址获取已插入内存条的SPD信息,有效提高提高了SPD信息的获取速度,进而有效提高了计算机系统的启动速度。

实施例二

图2所示为本发明实施例提供的侦测电路板上的内存条数量的系统结构示意图,包括电路板,所述电路板上包括至少两个内存插槽201,如图2所示,该系统还包括:平台控制中枢PCH202,基本输入输出系统BIOS203;其中,

每个所述内存插槽201的侦测引脚电连接平台控制中枢PCH202,以向所述PCH202输出所述内存插槽是否已插入内存条的侦测信号;

所述PCH202用于接收到来自每个内存插槽201输出的所述内存插槽201是否已插入内存条的侦测信号;

所述PCH202用于根据所述侦测信号确定每个内存插槽是否插入内存条的实际插入状况信息;

所述BIOS203,用于接收所述实际插入状况信息,当所述实际插入状况信息代表存在已插入内存条的内存插槽时,用于控制所述PCH202到该实际插入状况信息指定的内存插槽地址读取该指定的内存插槽上的内存条的SPD信息。

进一步的,所述内存插槽的侦测引脚为插入所述内存插槽中的与内存条金手指地对应的引脚。

进一步的,每个所述内存插槽的侦测引脚与PCH上的GPIO接口电连接。

进一步的,所述PCH具体用于:

针对每个内存插槽的侦测信号,若所述侦测信号为逻辑低电平信号,则确定所述内存插槽中插入内存条;若所述侦测信号为逻辑高电平信号,则确定所述内存插槽中未插入内存条。

进一步的,所述BIOS还用于:

当所述实际插入状况信息代表不存在已插入内存条的内存插槽时,所述BIOS向用户进行报警。

本实施例的系统,可以用于执行图1所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。

实施例三

图3为本发明实施例提供的侦测电路板上的内存条数量的系统的具体结构示意图,如图3所示,该系统包括:设置4个内存插槽的电路板301该些内存插槽的编号分别为1、2、3、4,每个内存插槽的引脚与PCH302电连接,PCH302与BIOS303连接。

使用与插入内存插槽中的与内存条金手指对应的引脚作为侦测信号的输出引脚,由于BIOS303无法直接识别该侦测信号,因此需要使用一个中间模块,将该侦测信号转换为BIOS303可以识别的信号,从而使得BIOS303根据该信号确定已插入内存条的内存插槽,在实际应用中,该中间模块可以为平台控制中枢(Platform Controller Hub,简称为:PCH)、或中央处理器(Central Processing Unit,简称为CPU),在本实施例中,选择PCH。

BIOS303用于根据PCH302给出的实际插入状况信息,判断是否所有内存插槽均未插入内存条,当该实际插入状况信息为所有内存插槽均未插入内存条时,启动无内存条报警程序。以提醒用户计算机无法正常启动,当该实际插入状况信息为至少一内存插槽插入内存条时,BIOS303发送对应的命令至该PCH302,并控制打开已插入内存条的内存插槽对应的SMBUS,从而获取各个已插入的内存条的SPD信息。

图4为图3所示的侦测电路板上的内存条数量的系统的一种具体实现结构示意图,具体的,使用与插入内存插槽中的与内存条金手指地对应的引脚作为侦测信号的输出引脚。如图4所示,其中VCC为电源电压,R1、R2、R3、R4为电阻,在此种结构下,由于侦测引脚为插入内存插槽中的与内存条金手指地对应的引脚,当该内存插槽中插入内存条时,电路接通,内存插槽上侦测引脚连接到地网络,输出为逻辑低电平,当该内存插槽中未插入内存条时,电路未接通,输出为逻辑高电平(输出为与VCC对应的逻辑高电平)。

因此如上所述,内存插槽的侦测引脚电连接到PCH302,在实际应用中,为了规避对PCH302正常功能的影响,可选择PCH302的通用输入/输出(General Purpose Input Output,简称为:GIPO)与内存插槽的地引脚连接,也即选择PCH302的GIPO作为侦测信号的输入端,一般的,把GPIO信号上拉到电源,其中,不同的GPIO信号对应于不同的内存插槽,比如,GPIO1与编号为1的内存插槽连接,同时与内存插槽1的SMBUS地址对应;GPIO2与编号为2的内存插槽连接,同时与内存插槽2的SMBUS地址对应;以此类推。PCH根据内存插槽对应的GPIO的状态,就能判断出该内存插槽是否已插入内存条。

根据图4所示的结构,当内存条完全插入内存插槽时,触发侦测信号变成逻辑低电平信号,且内存条的正常工作不受影响。PCH302据此逻辑低电平信号判断该内存插槽已经插入内存条,当没有内存条插入时,则侦测信号电平不变,保持逻辑高电平信号,PCH302据此高电平信号判断该内存插槽中无内存条。

BIOS303用于根据PCH302给出的实际插入状况信息,判断是否所有内存插槽均未插入内存条,当该实际插入状况信息为所有内存插槽均未插入内存条时,启动无内存条报警程序。以提醒用户计算机无法正常启动,当该实际插入状况信息为至少一内存插槽插入内存条时,BIOS303发送对应的命令至该PCH302,并控制打开已插入内存条的内存插槽对应的SMBUS,从而获取各个已插入的内存条的SPD信息。

本实施例提供一种侦测电路板上的内存条数量的系统,BIOS仅控制PCH从指定的已插入内存条的内存插槽地址获取已插入内存条的SPD信息,而无需从没有插入内存条的内存插槽中尝试读取内存条的SPD信息,有效提高提高了SPD信息的获取速度,进而有效提高了计算机系统的启动速度。

本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:只读存储记忆体(Read-Only Memory,ROM)、随机存储记忆体(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。

最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1