測試延遲自動生成器
摘要:在電壓調(diào)整測試中,測試設(shè)備提供的負載電流需經(jīng)一定的時間延遲才能達到預(yù)定值。文章介紹了一套開發(fā)于ASL-1000測試平臺、可自動生成測試所需延時間的電路,使測試既準確又經(jīng)濟,因此可推而廣之。
關(guān)鍵詞:負載電流 延遲時間 ASL-1000 測試
1 引言
在電壓調(diào)整器負載特性的測試中,測試設(shè)備一般采用電容組充、放電,以輸出具有一定脈寬的大電流,并將其提供給“特測器件”(DUT,Device Under Test)的輸出端作為負載電流。由于電容效應(yīng),該電流無法在t=0時刻達到器件手冊中的規(guī)定值,因而在電流源開啟后,必須經(jīng)一段延遲才能進行輸出采樣。延遲時間的取值對測試影響較大,過小則負載電流尚未達規(guī)定值,測試無效;過大將影響測試速度,造成經(jīng)濟損失。
2 電路設(shè)計
ASL-1000是美國Credence公司研制的IC測試設(shè)備,已在業(yè)界普遍應(yīng)用。在其電壓調(diào)整器的常規(guī)測試電路中,接入兩只內(nèi)部繼電器并外接一只1Ω/5W的電阻,同時輔助以相應(yīng)的測試軟件,從而構(gòu)成了一套延遲時間自動生成電路,如圖1所示。
3 設(shè)計實例
圖1中,DVI-9-CH0提供DUT輸入電壓,PV3-2提供負載電流(圖中略)。DVI-9-CH1與DVI-11-CH1分別采樣測試。以集成穩(wěn)壓器CW7812為例,合上MUX-1-1和MUX-2-1,當DUT負載電流為0.5A時,由于電阻壓降,兩測試端采樣到的電壓應(yīng)相差0.5V,表1是經(jīng)不同延遲時間后獲得的測量值。
由表1數(shù)據(jù)可得負載電流與時間的關(guān)系示意圖,如圖2所示。顯然,延遲時間應(yīng)稍大于T1并小于T2,才能使測試既準確又經(jīng)濟,且不同芯片負載特性的差異會使T1、T2也隨之改變。鑒于此,筆者設(shè)計了一套延遲時間自動生成方案:合上繼電器,兩測試端同時采樣。設(shè)初始延遲時間為10μs,以100μs為步進,循環(huán)增加,直到兩測試端同次測值壓差不小于0.5V且同一端前后兩次測值之差不大于1mV,方可認定此時負載電流已達到0.5A。為避免進入死循環(huán),程序設(shè)置了時間溢出(time_over),一旦延遲時間超出,程序退出并報錯,此時需配合其它參數(shù)的測試,檢查DUT是否已失效。正常測試時,要斷開MUX-2-1。
表1 不同時延后的測值
時延(s) | 10 | 50 | 100 | 300 | 500 | 700 |
DVI-9-CH1測值(V) | 12.0832 | 12.0821 | 12.0832 | 12.0815 | 12.0808 | 12.0802 |
DVI-11-CH1測值(V) | 12.0832 | 12.0831 | 12.081 | 12.0612 | 12.0435 | 12.0069 |
時延(s) | 750 | 770 | 790 | 850 | 950 | 1200 |
DVI-9-CH1測值(V) | 12.0743 | 12.0615 | 12.0559 | 12.0436 | 12.0506 | 12.0553 |
DVI-9-CH1測值(V) | 11.6772 | 11.5119 | 11.3962 | 11.2635 | 11.3012 | 11.5266 |
時延(s) | 1300 | 1400 | 1500 | 1600 | 1700 | 30000 |
DVI-9-CH1測值(V) | 12.0568 | 12.0572 | 12.0577 | 12.0578 | 12.0578 | 12.0832 |
DVI-9-CH1測值(V) | 11.5485 | 11.5495 | 11.5497 | 11.5498 | 11.5499 | 12.0832 |
以下為測試源程序Vout_Highload.cpp:
void Vout_Highload(test_function func)
{ //The two lines below must be the first two in the function.
Vout_Highload_params *ours;
ours=(Vout_Highload params *)func.params;
floatVout,Vout1,Vout2,Vout3,delta1,delta2,delta3;
float time_delay=1,time_over=1000;
//initialise delay time=10μs,time_over=10ms board_hardware_init();
fixed_connect();
//initialise the DVI_9_CH1 and the DVI_1_CH1
dvi_9 ->set_meas_mode (DVI_CHANNEL_1,DVI_MEASURE_VOLTAGE);
dvi_9->est_voltage_range(DVI_CHANNEL_1,POSITIVE_V_OUT,VOLT_50_RANGE,
FAST_VOLTAGE_MODE);
div_11 ->set_meas_mode (DVI_CHANNEL_1,DVI_MEASURE_VOLTAGE);
dvi_11->set_voltage_range(DVI_CHANNEL_1,POSITIVE_V_OUT,VOLT_50_RANGE,FAST_VOLTAGE_MODE);
//connect the resistor to the output of the DUT
mux_20->close_relay(MUX_1_1);
mux_20->close_relay(MUX_2_1);
//set initial current
pv3_2->set_voltage(0.0,PV3_RNG_100V);
//set initial voltage
wait.delay 10_μs(10);
pv3_connect(); //connect PV3 to circuit
do
{//Set PV3 voltage to 20V so that PV3 step up current to max value
pv3_2->set_voltage(20,PV3_RNG_100V);
pv3_2->set_current(0.5,RANGE_10_A);
//set the current to 0.5A
pv3_2->drive-on();
wait.delay_10_μs(time_delay);
Vout=dvi_9->measure (); //Measure output without the resistor
Vout1=dvi_11->measure (); //Measure output with the resistor
pv3_2->drive_off();
time_delay=time_delay+10;
delta1=Vout-Vout1;
delta2=Vout-Vout2;
delta2=Vout1-Vout3;
Vout2=Vout;
Vout3=Vout1;
if(time_delay>time_over)
{Vout=999.999;
break;
}
} while((fabs(delta1)0.5)||(fabs(delta2)>0.001)||(fabs(delta3)>0.001));
board_hardware_init();
}
4 結(jié)束語
經(jīng)以上程序,在測得CW7812實際輸出電壓Vout 的同時,可自動獲得測試所需的延遲時間(timedelay),且在后續(xù)其它參數(shù)的測試中,延遲時間可延用此數(shù)值。如此,既滿足了測試要求,又最大限度的節(jié)省了測試時間。本方法適用于其它所有電壓調(diào)整器的測試,并可推廣到其它測試設(shè)備中。
評論