发明内容
本发明的主要目的是提供一种计算机电压拉偏和环境测试***,从而解决现有测试***不能对计算机内部部件电压进行有效拉偏的技术问题。本发明的目的是这样实现的:
一种计算机电压拉偏和环境测试***,该测试***包括一控制平台、一测试平台和一温湿控箱,所述的测试平台被置于所述的温湿控箱之内,测试平台上运行一后台测试软件,所述的控制平台分别与测试平台和温湿控箱相连,其特征在于,所述测试平台包括至少一个电压拉偏电路、信号转换电路、和跳线电路;信号转换电路输入端连接所述的控制平台,接收电压拉偏控制信号,信号转换电路输出端连接各电压拉偏电路的控制端;电压拉偏电路的输出端连接跳线电路,跳线电路与计算机部件上的各个供电电压端连接,跳线电路的跳线实现计算机部件各个供电电压的分别独立拉偏和同时共同拉偏。
所述测试平台上的电压拉偏电路包括n条由调压电阻和场效应管串联构成的调压支路和一稳压支路;所述各调压支路的控制端即场效应管的输入端接收电压拉偏控制信号,各调压支路的输出端并接;所述的稳压支路包括分压电路和稳压器件,稳压器件的输出端连接分压电路的分压点并与调压支路的输出端并接点连接,分压电路的高电位端输出拉偏电压,n为正整数。
所述信号转换电路包括一串/并信号转换电路和一电平驱动电路,串/并信号转换电路的输入端接收电压拉偏控制信号,串/并信号转换电路的各输出端和所述电平驱动电路的各输入端一一对应连接,电平驱动电路的各输出端和所述电压拉偏电路的控制端一一对应连接。
所述测试平台的跳线电路由分压电路连接跳线开关构成;分压电路的高电位端连接一电压拉偏电路的拉偏电压输出端,并接计算机部件的第一种供电电压的输入端;分压电路的分压端连接跳线开关一固定端,跳线开关另一固定端连接另一电压拉偏电路的拉偏电压输出端,跳线开关的活动端接计算机部件的第二种供电电压的输入端。
所述的控制平台和测试平台之间利用I2C总线结构进行连接。
所述的控制平台和测试平台上分别包括互为本端和对端的I2C总线电气隔离电路,I2C总线电气隔离电路包括总线逻辑判断单元和光电耦合器,本端I2C总线电气隔离电路的总线逻辑判断单元和对端I2C总线电气隔离电路的光电耦合器的激励端相连,I2C总线信号先经过本端总线逻辑判断单元再送入对端光电耦合器的激励端,对端光电耦合器的响应端输出与I2C总线信号状态一致的信号,光电耦合器实现控制平台和测试平台之间I2C总线的电气隔离。
所述测试平台还包括对每一电压拉偏电路进行过压保护的过压保护电路,该过压保护电路有二比较输入端,其中一端接电压拉偏电路的输出端,另一端接设定的参考电压,过压保护电路的输出端接计算机电源控制端。
所述的控制平台和温湿控箱之间利用R-232接口连接。
所述测试平台上还包括一监测电路,该监测电路与控制平台相连,向控制平台发送计算机部件实际拉偏电压和温度的采集数据。
本发明提供的一种计算机电压拉偏和环境测试***完全实现了对计算机主板供电部件进行自动电压拉偏测试的功能,而且在测试过程中不会引入其它影响计算机正常工作的因素,解决了一直困扰计算机集成厂商的部件电源兼容性测试的难题;本发明采用的电源设计方案适用于大多数计算机***由主板供电的部件,具有广泛的适用性;本发明所采用的软件和硬件的接口是通用的I2C总线,因此具有良好的功能扩展性,只要修改控制软件便可实现不同的测试功能;此外,本发明设计成本低,具有良好的经济效益。
具体实施方式
下面结合附图和实施例进一步说明本发明的具体实施方式。
在本实施例中以针对DDR内存进行电压拉偏和环境测试的测试平台为例对本发明进行说明。
首先介绍一下DDR内存对电源的要求,DDR内存工作需要主板提供两种电源:1)参考电压VREF,2)工作电压VDIMM。设计规范要求参考电压VREF为1.25V,工作电压VDIMM为2.50V,允许的变化范围为+-5%。
本实施例就是通过对VDIMM与VREF的拉偏来测试内存在各种环境下(包括温度、电压、负载)的性能变化,具体的拉偏方式有以下两种:
1)VDIMM与VREF同时共同拉偏
同时拉偏方式保证了VDIMM与VREF同步变化,主要目的是为了仿***板***运行的真实情况,在这种平台上可以验证主板电压变化对内存运行的影响。
2)VDIMM与VREF分别独立拉偏
分别独立拉偏方式主要考察噪声容限对内存工作的影响。
此外,本实施例的测试平台工作温度范围为0℃——55℃。
如图1所示为本实施例测试***总体框图,***主要由控制平台101和测试平台102以及温湿控制箱103三部分组成,测试平台102被置于所述的温湿控箱103之内,控制平台101和测试平台102之间通过I2C总线实现数据的通信,控制平台101和温湿控制箱103之间通过R-232接口实现数据通信。
控制平台101和测试平台102的组成框图见图2所示,控制平台101是一台个人计算机(PC机),采用INTEL845GE+ICH4主板南北桥芯片组平台,主要包括:控制软件201,控制平台基本输入输出***(BIOS)202,控制平台I2C通信接口电路203和在该PC机主板的周边元件扩展接口(PCI)插槽上增加的一块专用PCI卡204,该专用PCI卡204上包括电气隔离电路211,其中,在该PC机的BIOS(202)上必须为测试需要而增加相应的控制代码,专用PCI卡204主要功能是利用I2C总线与测试平台102主板进行数据传输,同时实现电气隔离。
控制平台101通过运行于其上的控制软件201实现对内存电压调节方式的设置,通过I2C总线向测试平台102发送内存电压调节信息并从测试平台102读取内存的实际电压值,记录所有测试数据并生成测试报告,同时通过R-232接口控制温湿控箱103的温度和湿度及保持时间。
测试平台102采用INTEL845GE+ICH4主板南北桥芯片组平台,主要包括:主板并口205,测试平台电气隔离电路212,测试平台I2C通信接口电路206,信号转换电路207,监测电路(SUPER I/O)208,电压拉偏电路209,后台测试软件210,跳线电路213和过压保护电路214。其中,测试平台102的主板上将I2C总线连接到该主板并口205上,此主板并口205仅仅是数据接口,不具备原主板并口功能;控制平台101的主板通过PCI卡204和测试平台102的主板并口205实现数据和控制信号的传输;后台测试软件210用于对DDR内存条的性能测试。
测试平台102作为被测DDR内存条的载体,响应控制平台101的控制信息,通过电压拉偏电路209自动调节DDR内存供电电压,通过过压保护电路214实现对内存电源的过压保护,利用监测电路(SUPER I/O)208采集内存拉偏电压和拉偏主板表面温度等测试***运行状态信息,并回传给控制平台。
本实施例测试平台所采用的硬件平台为INTEL845GE+ICH4主板南北桥芯片组平台,它支持DDR内存。DDR内存的工作电压VDIMM为2.5V,测试要求VDIMM能在2.2V-2.8V的范围内实现至少16个台阶的变化(电压每变化一次的变化量为40mV),所以,使用了电压拉偏电路对DDR内存的工作电压VDIMM进行拉偏测试。
电压拉偏电路如图3所示,该电压拉偏电路的控制端即MOSFET场效应管1、2、3、4的输入端a、b、c、d接收控制信号,MOSFET场效应管1、2、3、4分别与调压电阻R1、R2、R3、R4的串连,这四个调压电阻R1、R2、R3、R4分别和MOSFET场效应管1、2、3、4组成4个调压支路301,该4个调压支路的输出端并接,并接点e又接在稳压支路302中分压支路303的分压点f上,该分压点f与稳压器件304的输出相连,此稳压器件的输出电压为Vr,分压点f通过分压电阻R1’接地,通过分压电阻R2’接输出端g,该输出端g为DDR内存提供拉偏工作电压VDIMM,在未接入调压电路以前,输出电压VDIMM为:
VDIMM=Vr+I*R2’
其中,R2’根据实际需要的不同可选取不同的阻值。
在图3中,因为Vr是固定的,因此,改变电流I的值就可以改变输出电压的大小。通过调压电阻R1、R2、R3、R4的不同组合获得不同的电阻值,从而改变上式中的电流I值,在本实施例中采用了4级调压电阻,而且每个调压电阻的阻值各不相同,通过改变控制端a、b、c、d的状态可以使4个MOSFET场效应管导通或关断,从而使这4个调压电阻加入或不加入电路,即可以在VDIMM端得到16种不同的电压值。
因为I2C总线控制信号是一个串行信号,所以需要一信号转换电路307将该串行总线控制信号转换为4个并行控制信号,本实施例中的信号转换电路307包括一串/并信号转换电路和一电平驱动电路,并采用了Philips PCA9560集成电路305作为串/并信号转换电路,如图3所示,串行总线控制信号可以通过PCA9560输出4个并行控制信号D0、D1、D2、D3,在本实施例中,由于控制端a、b、c、d所需要的控制信号的电平要求高,PCA9560输出的4个控制信号D0、D1、D2、D3可能达不到控制端a、b、c、d的电平要求,所以,为了保证逻辑控制信号的可靠性,该4个逻辑控制信号D0、D1、D2、D3还要通过一电平驱动电路306转变成4个电平信号A、B、C、D,该4个电平信号分别控制控制端a、b、c、d,从而实现通过总线信号控制内存电压。
本实施例中通过控制信号A、B、C、D控制MOSFET场效应管1、2、3、4的导通和关断,从而使调压支路加入到或分离出电压拉偏电路,进一步改变电流I,最终在输出端g实现2.2V-2.8V的内存电压值,如表1所示为控制信号A、B、C、D对应的电压值,其中的A、B、C、D分别代表控制信号A、B、C、D的电平状态,“1”表示高电平,“0”表示低电平。
VDIMM |
2.20 |
2.24 |
2.28 |
2.32 |
2.36 |
2.40 |
2.44 |
2.48 |
2.52 |
2.56 |
2.60 |
2.64 |
2.68 |
2.72 |
2.76 |
2.80 |
A |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
B |
0 |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
0 |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
C |
0 |
0 |
1 |
1 |
0 |
0 |
1 |
1 |
0 |
0 |
1 |
1 |
0 |
0 |
1 |
1 |
D |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
表1
在本实施例中,因为电压只要有16个台阶的变化就能满足设计需求,所以本实施例中只采用了4个调压支路。如果电压变化有更高精度的要求,则可增加相应的调压支路,比如,采用5个调压支路可以获得32个台阶的变化,采用6个调压支路可获得64个台阶的变化,依此类推。
以上所述的电压拉偏电路是对DDR内存的工作电压VDIMM进行拉偏,对DDR内存的参考电压VERF进行拉偏的电压拉偏电路和此电压拉偏电路相同,只不过其输出端g为DDR内存提供拉偏参考电压VERF。
因为对DDR内存的拉偏方式有两种:工作电压和参考电压的同时拉偏和分别拉偏,所以本发明用一个跳线电路来实现这两种拉偏方式的转变,如图4所示,跳线电路由分压电路401连接跳线开关402构成;分压电路401的高电位端h连接对工作电压进行拉偏的电压拉偏电路403的拉偏电压输出端g,并接内存工作电压的输入端;分压电路401的分压端i连接跳线开关402的一固定端j,跳线开关402的另一固定端1连接对参考电压进行拉偏的电压拉偏电路404的拉偏电压输出端g’,跳线开关402的活动端k接内存参考电压的输入端。分压电路401的分压电阻R5和分压电阻R6阻值的比值可以根据VDIMM和VERF的比值进行选择,在本实施例中由于VERF的值为1/2VDIMM,所以分压电阻R5和分压电阻R6阻值相等。当跳线开关402的活动端k和j端相连时,因为分压电阻R5和分压电阻R6阻值相等,所以不论工作电压VDIMM为何值,参考电压VERF总是等于1/2VDIMM,从而实现工作电压和参考电压的同时拉偏;当跳线开关402的活动端k和1端相连时,内存上工作电压和参考电压分别由各自的电压拉偏电路进行拉偏,从而实现分别拉偏。
为了实现控制平台和测试平台之间的通信,本发明选用了结构简单,通信速率符合设计需要且和主板原有的内部信号总线(SMBUS)接口兼容的I2C总线作为通信的手段。本发明中所有数据的采集和所有控制信号的发送都是通过I2C总线来实现的。如图5所示,本发明中用到了三个I2C设备:控制平台的计算机主板芯片组中的南桥芯片组ICH4(501),测试平台上的监测电路(SUPERI/O)208和测试平台上电压拉偏电路209中的集成电路PCA9560(305)。其中只有控制平台的ICH4(501)是主设备,控制软件一方面通过ICH4(501)的SMBUS向测试平台上的PCA9560(305)发出调节内存电压的控制信号并从PCA9560(305)读回***的电源状态信息,另一方面,由于本发明利用SUPERI/O(208)模块实现内存拉偏电压和拉偏主板表面温度的数据采集,所以控制软件可以从测试平台上的SUPER I/O(208)上读取内存的电压值及测试***的温度值。这种主从式的I2C总线结构设计可以使得I2C总线控制简单且不容易出错。本发明中这些I2C设备的相互关系以及每个设备所实现的功能如图5所示。图中ICH4(501)是I2C总线上唯一的主设备,可以主动地从其它设备读取数据或向其它设备写入数据。当控制软件需要改变内存电压值时,只需通过ICH4(501)的SMBUS接口向PCA9560(305)写入调压控制信息便可;当控制软件需要读取内存电压和***温度时,可以从SUPER I/O(208)上读取,通过SUPER I/O(208)芯片内部的采集功能,可以将调压后内存获得的实际电压值采集并发送给主控端,另外,通过主板上固有的热敏电阻阻值随主板表面温度的变化而变化,SUPER I/O(208)将该电阻的电压变化采集并分析,将温度信息反馈给主控端,从而实现了电压和温度的闭环反馈控制;而测试平台的电源拉偏状态信息则可以从PCA9560(305)读取。
由于实际应用中控制平台和测试平台可能距离比较远,而且两个平台所采用的电源可能存在地电位的不同,如果采用I2C总线直接将两个平台连接起来可能会造成许多意想不到的问题,所以本发明专门设计了如图6所示的I2C总线电气隔离电路来实现采用I2C总线通信的两个平台之间的电气的隔离。其基本电路图如图6所示。由于I2C总线由一组数据(DATA)信号线和一组时钟信号(CLOCK)线组成,所以需要隔离的信号主要是这两种信号。图6中只描述了I2C总线中CLOCK线实现电气隔离的方法,但本电路同样适用于DATA线的电气隔离。由于本发明中对I2C总线的DATA和CLOCK两组信号线的处理是一样的,所以下面仅以其中一种信号线(例如CLOCK)或统称为总线说明整个隔离电路的实现方法。本电路的连接情况如图6所示,先看控制平台的电气隔离电路211,接口电路601采用了一个由R1~R8构成的电阻桥为主的电阻网络,使得总线信号接入点的电平能满足I2C规范的要求,并且能将该总线信号的电平状态通过电阻网络的两个输出端A、B有效地传输到总线逻辑判断单元即比较器602中去,比较器602的输出端C连接到总线驱动器即一个二输入或门603的一个输入端上,而二输入或门603的另一个输入端D则接比较器602的冗余电路604的输出,该冗余电路604是从信号接入点通过一个零电阻R9接入的,该冗余电路604的输出信号和比较器602的输出信号的逻辑关系是相同的,但产生的机制不同,这样就可以保证比较器602或冗余电路604中的任何一个输出信号出错时,通过二输入或门603也能够得到正确的输出信号,从而保证了电路的可靠性。该二输入或门603的输出端E的信号用来驱动测试平台端光电耦合器605中的激励端即发光二极管606,测试平台端光电耦合器605的响应端即光敏三极管607输出的信号通过测试平台电气隔离电路212的接口电路608输出。由于本发明的电气隔离电路是对称的,所以测试平台的电气隔离电路212和控制平台的电气隔离电路211对称相同,这里不再详述。因为实现互连的控制平台和测试平台之间电气隔离的关键器件为光电耦合器,所以同一个光电耦合器中的激励端和响应端必须分别采用控制平台和测试平台来供电,光电耦合器的激励端和响应端的供电是分开的,即其发光二极管是由对端供电,其光敏三极管则由本端供电,如图6中测试平台端光电耦合器605的激励端即发光二极管606与控制平台端相连,由控制平台端供电;测试平台端光电耦合器605的响应端即光敏三极管607与测试平台端的电源网络610相连,由测试平台端的电源网络610供电。虽然测试平台端光电耦合器605的激励端606是由控制平台端供电的,但由于测试平台端光电耦合器605的激励端606和响应端607之间是通过光来实现联系的,所以它们在电气上是没有联系的,从而就实现了控制平台端和测试平台端的电气隔离。
下面具体说明该电气隔离电路是如何实现I2C总线数据传输的。以CLOCK信号为例,假如信号方向为从控制平台到测试平台:当控制平台的输入CLOCK信号为高电平时,A点电平高于B点,C点输出为高电平,此时冗余电阻R9的两端,即F点及D点均为高电平,所以E点为高电平,此时测试平台端光电耦合器605无响应,测试平台端光电耦合器605的输出端g点为高电平,所以测试平台的输出CLOCK信号也为高电平,从而实现了高电平CLOCK信号的传输;当CLOCK为低电平时,B点电平高于A点,C点输出为低电平,此时F点及D点均为低电平,所以E点为低电平,此时测试平台端光电耦合器605响应,测试平台端光电耦合器605输出端g点为低电平,所以测试平台的输出CLOCK信号也为低电平,从而实现了低电平CLOCK信号的传输。因为本发明的电路是对称的,所以当数据流向反过来时信号的工作原理是一样的,这里不再赘述。
因为本***中内存电压可调,所以万一电压拉偏电路失效,则可能会使得内存供电电路输出过高的电压而损害内存条,所以本实施例设计了内存电压过压保护电路,如图7所示,比较器701的输入端3接DDR内存的工作电压VDIMM,比较器701的输入端2接设定的参考电压REF,当VDIMM低于REF时,即比较器701的输入端3的电压低于输入端2的电压时,比较器701输出端1输出低电平,该低电平经过三级管Q1反向后输出高电平,使得三级管Q2处于导通状态,此时主机电源的控制信号PS-ON#和由SUPER I/O输出的电源控制信号PWRCTL#的电平相同,所以计算机电源的开关由PWRCTL#的状态决定,即在正常情况下过压保护电路不会影响计算机***的正常运转;当VDIMM超过REF时,比较器701输出端1输出高电平,经过三级管Q1反向后输出低电平,使得三级管Q2处于非导通状态,由于电压VCC的存在,计算机电源的PS-ON#处于高电平,电源自动关闭,从而避免了内存因电压过高而损坏。同时,在比较器701的输入端2和输出端1之间加了一级MOSFET场效应管702作为正反馈,当VDIMM刚刚超过REF时,比较器701的输出端1为高电平,MOSFET场效应管702导通,参考电压REF为0,此时,比较器701输出端1的电平值立刻上升至VDIMM的值,这样就加快了三级管Q1的反相速度,从而实现VDIMM刚超过REF时就进行电路保护,加快了电路的保护速度。
上述的过压保护电路是对DDR内存的工作电压进行过压保护,DDR内存参考电压的过压保护电路和此电路结构一样,只不过比较器701的输入端3接DDR内存的参考电压VREF。
如图8所示为本发明控制平台上运行的控制软件的流程图,该控制软件采用VC语言开发,其主要流程包括以下步骤:
a、打开控制软件,选择测试操作,即是同时拉偏还是独立拉偏。设定测试曲线;
b、选择是否调用原有的参数设置,如果是,则调入已有的参数设定文件,并执行步骤e,否则,执行步骤c;
所述的参数是指测试曲线的类型、电压值、温度值及相应的保持时间;
c、选择测试曲线类型。在本实施例中,该测试曲线有六种类型,分别是:
1.只调温度;
2.只调工作电压VDIMM;
3.只调参考电压VREF;
4.既调温度又调电压,但以调温度为基准;
5.既调温度又调电压,但以调工作电压VDIMM为基准;
6.既调温度又调电压,但以调参考电压VREF为基准;
d、设定调节的电压、温度值以及相应的保持时间;
e、根据以上设定的参数值、或参数设定文件设定参数,显示设定曲线;
f、选择是否保存参数设置,如果是,则先将设定的参数保存到参数设定文件中,再执行下一步;否则,直接执行下一步;
g、运行测试窗口;
h、指定温控箱控制文件;
i、启动温控箱控制程序;
j、开始进行调温调压测试;
k、调温调压测试结束;
l、保存测试结果曲线;
m、填写测试报告。
因为对于一个实时控制***来说稳定性和可靠性是一个关键点,为了保证读取数据的正确性,控制软件对读取的所有数据均采用二次滤波,确保了数据的准确性和稳定性,而对发出的所有控制信息均采用:发出控制信息—回读控制结果—比较结果与预期值是否相符的方式来保证发出的控制信息的可靠性。
以上所述为整个测试平台的组成,其测试流程如下:
1.确定采用的拉偏方式,并在拉偏测试主板上选择相应的跳线设置;
2.将拉偏测试主板放入温湿控箱;
3.启动主控机,打开内存环境测试软件,选择相应的拉偏方式,进入主界面;
4.进入主界面后可以直接调用以往的参数设置,也可以自行进行参数设置,设置内容包括,电压随时间的变化曲线,温度、湿度随时间变化的曲线等,这些参数会通过控制平台I2C总线传输给测试平台主板I2C总线,通过该主板I2C总线将参数提供给PCA9560芯片,这时相应的MOSFET场效应管就会相应的打开或关断,实现相应的电压拉偏;
5.保存参数设置,进入测试报告填写界面,将相关测试信息记录下来;
6.启动测试,整个***将会按前述参数设置状态进行运行,同时拉偏测试***会运行专用内存测试程序,检测内存是否正常工作,与此同时,控制平台和测试平台主板间会通过I2C总线进行数据反馈,即在固定时间内控制平台主板I2C总线会访问测试平台I2C总线(测试平台主板南桥芯片),如果测试平台出现故障死机,则控制平台得不到测试平台的及时反馈,就判断测试***出错,保持现有的状态,并记录现有状态参数;或者把***关掉。
整个内存环境测试***可以实现在无人的环境下连续运行,当设定的时间结束后,***会自动给出测试报告,记录整个测试过程。