測(cè)試延遲自動(dòng)生成器
摘要:在電壓調(diào)整測(cè)試中,測(cè)試設(shè)備提供的負(fù)載電流需經(jīng)一定的時(shí)間延遲才能達(dá)到預(yù)定值。文章介紹了一套開發(fā)于ASL-1000測(cè)試平臺(tái)、可自動(dòng)生成測(cè)試所需延時(shí)間的電路,使測(cè)試既準(zhǔn)確又經(jīng)濟(jì),因此可推而廣之。
關(guān)鍵詞:負(fù)載電流 延遲時(shí)間 ASL-1000 測(cè)試
1 引言
在電壓調(diào)整器負(fù)載特性的測(cè)試中,測(cè)試設(shè)備一般采用電容組充、放電,以輸出具有一定脈寬的大電流,并將其提供給“特測(cè)器件”(DUT,Device Under Test)的輸出端作為負(fù)載電流。由于電容效應(yīng),該電流無法在t=0時(shí)刻達(dá)到器件手冊(cè)中的規(guī)定值,因而在電流源開啟后,必須經(jīng)一段延遲才能進(jìn)行輸出采樣。延遲時(shí)間的取值對(duì)測(cè)試影響較大,過小則負(fù)載電流尚未達(dá)規(guī)定值,測(cè)試無效;過大將影響測(cè)試速度,造成經(jīng)濟(jì)損失。
2 電路設(shè)計(jì)
ASL-1000是美國(guó)Credence公司研制的IC測(cè)試設(shè)備,已在業(yè)界普遍應(yīng)用。在其電壓調(diào)整器的常規(guī)測(cè)試電路中,接入兩只內(nèi)部繼電器并外接一只1Ω/5W的電阻,同時(shí)輔助以相應(yīng)的測(cè)試軟件,從而構(gòu)成了一套延遲時(shí)間自動(dòng)生成電路,如圖1所示。
3 設(shè)計(jì)實(shí)例
圖1中,DVI-9-CH0提供DUT輸入電壓,PV3-2提供負(fù)載電流(圖中略)。DVI-9-CH1與DVI-11-CH1分別采樣測(cè)試。以集成穩(wěn)壓器CW7812為例,合上MUX-1-1和MUX-2-1,當(dāng)DUT負(fù)載電流為0.5A時(shí),由于電阻壓降,兩測(cè)試端采樣到的電壓應(yīng)相差0.5V,表1是經(jīng)不同延遲時(shí)間后獲得的測(cè)量值。
由表1數(shù)據(jù)可得負(fù)載電流與時(shí)間的關(guān)系示意圖,如圖2所示。顯然,延遲時(shí)間應(yīng)稍大于T1并小于T2,才能使測(cè)試既準(zhǔn)確又經(jīng)濟(jì),且不同芯片負(fù)載特性的差異會(huì)使T1、T2也隨之改變。鑒于此,筆者設(shè)計(jì)了一套延遲時(shí)間自動(dòng)生成方案:合上繼電器,兩測(cè)試端同時(shí)采樣。設(shè)初始延遲時(shí)間為10μs,以100μs為步進(jìn),循環(huán)增加,直到兩測(cè)試端同次測(cè)值壓差不小于0.5V且同一端前后兩次測(cè)值之差不大于1mV,方可認(rèn)定此時(shí)負(fù)載電流已達(dá)到0.5A。為避免進(jìn)入死循環(huán),程序設(shè)置了時(shí)間溢出(time_over),一旦延遲時(shí)間超出,程序退出并報(bào)錯(cuò),此時(shí)需配合其它參數(shù)的測(cè)試,檢查DUT是否已失效。正常測(cè)試時(shí),要斷開MUX-2-1。
表1 不同時(shí)延后的測(cè)值
時(shí)延(s) | 10 | 50 | 100 | 300 | 500 | 700 |
DVI-9-CH1測(cè)值(V) | 12.0832 | 12.0821 | 12.0832 | 12.0815 | 12.0808 | 12.0802 |
DVI-11-CH1測(cè)值(V) | 12.0832 | 12.0831 | 12.081 | 12.0612 | 12.0435 | 12.0069 |
時(shí)延(s) | 750 | 770 | 790 | 850 | 950 | 1200 |
DVI-9-CH1測(cè)值(V) | 12.0743 | 12.0615 | 12.0559 | 12.0436 | 12.0506 | 12.0553 |
DVI-9-CH1測(cè)值(V) | 11.6772 | 11.5119 | 11.3962 | 11.2635 | 11.3012 | 11.5266 |
時(shí)延(s) | 1300 | 1400 | 1500 | 1600 | 1700 | 30000 |
DVI-9-CH1測(cè)值(V) | 12.0568 | 12.0572 | 12.0577 | 12.0578 | 12.0578 | 12.0832 |
DVI-9-CH1測(cè)值(V) | 11.5485 | 11.5495 | 11.5497 | 11.5498 | 11.5499 | 12.0832 |
以下為測(cè)試源程序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)以上程序,在測(cè)得CW7812實(shí)際輸出電壓Vout 的同時(shí),可自動(dòng)獲得測(cè)試所需的延遲時(shí)間(timedelay),且在后續(xù)其它參數(shù)的測(cè)試中,延遲時(shí)間可延用此數(shù)值。如此,既滿足了測(cè)試要求,又最大限度的節(jié)省了測(cè)試時(shí)間。本方法適用于其它所有電壓調(diào)整器的測(cè)試,并可推廣到其它測(cè)試設(shè)備中。
評(píng)論