趙 影,高 劍
(北京自動(dòng)測(cè)試技術(shù)研究所,北京,100088)
I2C串行接口數(shù)字芯片SCG103測(cè)試方法
趙 影,高 劍
(北京自動(dòng)測(cè)試技術(shù)研究所,北京,100088)
本文概述了I2C串行總線協(xié)議原理,研究了采用I2C串行接口的數(shù)字芯片的測(cè)試方法。在此基礎(chǔ)上,研究了I2C串行接口時(shí)鐘/日歷芯片SCG103的測(cè)試方案,并在BC3192測(cè)試系統(tǒng)中開發(fā)了測(cè)試程序,成功實(shí)現(xiàn)了測(cè)試。該測(cè)試方法同樣適用于類似的I2C串行接口數(shù)字芯片。
ATE;串行總線;串行接口;I2C;數(shù)字芯片;IC測(cè)試;BC3192
串行總線是工業(yè)上大量應(yīng)用的一種通信協(xié)議。隨著集成電路產(chǎn)業(yè)和數(shù)字芯片的高速發(fā)展,串行總線協(xié)議也廣泛應(yīng)用于各類數(shù)字芯片。常見的串行總線協(xié)議如I2C總線、Microwire總線、SPI總線。與并行接口相較,采用串行接口的數(shù)字芯片具有較少的I/ O管腳、信號(hào)線和布局通路,能夠明顯減小芯片體積和封裝體積,降低成本。串行總線一般采用打包數(shù)據(jù)的通信方式,使得數(shù)據(jù)的字符長(zhǎng)度可隨系統(tǒng)要求呈動(dòng)態(tài)變化,適應(yīng)性更強(qiáng)。
串行輸入/輸出的特點(diǎn),使得采用串行接口的數(shù)字芯片往往具有較復(fù)雜的指令集,由此增加了測(cè)試向量的編寫難度。同時(shí),芯片本身的規(guī)模和邏輯復(fù)雜度,也決定了測(cè)試的復(fù)雜性。在測(cè)試中,既要考慮串行總線通信的時(shí)序特點(diǎn),又要有效測(cè)試芯片的邏輯功能和電學(xué)性能。如何充分利用測(cè)試系統(tǒng),以較低的成本、較大的故障覆蓋率實(shí)現(xiàn)高效測(cè)試,是串行接口數(shù)字芯片測(cè)試面臨的挑戰(zhàn)。
I2C總線協(xié)議是一種典型的串行總線協(xié)議,最早由Philips公司推出。它是用于集成電路芯片間通信的二線制總線協(xié)議,電路結(jié)構(gòu)簡(jiǎn)單,程序編寫方便,易于實(shí)現(xiàn)系統(tǒng)軟硬件的模塊化、標(biāo)準(zhǔn)化,且性能穩(wěn)定、價(jià)格較低,目前已得到廣泛應(yīng)用。本文針對(duì)I2C總線的工作原理,提出了采用此種接口的數(shù)字芯片的測(cè)試方法,并在BC3192系統(tǒng)中成功實(shí)現(xiàn)了I2C接口芯片SCG103的測(cè)試。
1.1 I2C總線協(xié)議原理
I2C總線協(xié)議采用串行通信,主控器與各外圍器件之間通過時(shí)鐘線(SCL)與數(shù)據(jù)線(SDA)兩條信號(hào)線傳輸信息,并根據(jù)唯一的地址識(shí)別各個(gè)器件。每一個(gè)連接在I2C總線上的芯片都可以作為發(fā)送器或接收器,在執(zhí)行數(shù)據(jù)傳輸時(shí),也可以被看做主機(jī)或從機(jī),其含義如表1所示。

表1 I2C總線術(shù)語(yǔ)定義
另外,I2C總線協(xié)議具有一些時(shí)序特點(diǎn),是在生成測(cè)試向量時(shí)需要特殊注意的:
1.1.1 位傳輸

圖1 I2C總線協(xié)議 位傳輸
每個(gè)時(shí)鐘周期傳輸一位數(shù)據(jù)。SDA數(shù)據(jù)線的電平在SCL時(shí)鐘高電平期間要保持穩(wěn)定,此期間的SDA信號(hào)變化會(huì)被理解為控制信號(hào)。見圖1。
1.1.2 開始/停止
SCL高電平,SDA由高到低跳變,表示數(shù)據(jù)傳輸開始。SCL高電平,SDA由低到高跳變,表示數(shù)據(jù)傳輸停止。見圖2。

圖2 I2C總線協(xié)議 起始/停止
1.1.3 字節(jié)格式與應(yīng)答位
在開始、停止位之間發(fā)送的數(shù)據(jù)字節(jié)數(shù)目不限,每個(gè)字節(jié)后要跟隨一個(gè)應(yīng)答位。在主機(jī)生成一個(gè)額外時(shí)鐘信號(hào)的同時(shí),從機(jī)發(fā)出一個(gè)高電平信號(hào),這就是應(yīng)答位。從機(jī)在接收每個(gè)字節(jié)后,必須生成一個(gè)應(yīng)答位。主機(jī)在接收每個(gè)字節(jié)后,也必須產(chǎn)生一個(gè)應(yīng)答位。見圖3。

圖3 I2C總線協(xié)議 字節(jié)格式與應(yīng)答位
1.2 I2C串行接口芯片測(cè)試模型
同大多數(shù)集成電路測(cè)試一樣,I2C串行接口芯片測(cè)試主要包括功能測(cè)試和直流參數(shù)測(cè)試兩項(xiàng)內(nèi)容。由于I2C串行接口的特點(diǎn),這種芯片一般具有較復(fù)雜的指令集,不同芯片需要測(cè)試的參數(shù)、功能也不盡相同。為了簡(jiǎn)明描述I2C串行接口芯片的測(cè)試方法,根據(jù)I2C串行總線的特點(diǎn),我們建立如圖4所示的通用測(cè)試模型。
在I2C串行接口芯片測(cè)試中,測(cè)試系統(tǒng)作為主機(jī),被測(cè)芯片作為從機(jī)。測(cè)試系統(tǒng)為被測(cè)芯片提供電源,通過SCL發(fā)送時(shí)鐘信號(hào),通過SDA發(fā)送控制指令,接收數(shù)據(jù)信號(hào)。

圖4 I2C串行接口數(shù)字芯片測(cè)試模型
I2C數(shù)字芯片測(cè)試一般分為直流參數(shù)測(cè)試與功能測(cè)試。對(duì)于直流參數(shù)測(cè)試,一般需要在測(cè)試某參數(shù)前,對(duì)被測(cè)器件輸入一段控制指令,使其進(jìn)入期望的狀態(tài)。因此測(cè)試系統(tǒng)須通過向量生成單元向被測(cè)器件輸入激勵(lì)向量,然后通過激勵(lì)/測(cè)試單元(PMU)測(cè)試相應(yīng)管腳的直流參數(shù)。其測(cè)試模型如圖5。

圖5 I2C串行接口數(shù)字芯片 直流參數(shù)測(cè)試模型
對(duì)于功能測(cè)試,測(cè)試系統(tǒng)須根據(jù)要求生成測(cè)試向量。將時(shí)鐘和控制指令等激勵(lì)向量發(fā)送給被測(cè)芯片,接收被測(cè)芯片輸出的數(shù)據(jù),并通過接收數(shù)據(jù)與期望向量的比較,進(jìn)行失效判斷。其測(cè)試模型如圖6。

圖6 I2C串行接口數(shù)字芯片 功能測(cè)試模型
2.1 SCG103簡(jiǎn)介
SCG103是一種采用I2C串行接口的實(shí)時(shí)時(shí)鐘/日歷芯片,提供以下功能:

圖7 SCG103內(nèi)部框圖
- 以32.768kHz石英晶振為基礎(chǔ),實(shí)現(xiàn)年、月、周、日、時(shí)、分、秒計(jì)時(shí)。
- 提供時(shí)鐘、鬧鐘功能,通過SDA端口輸出實(shí)時(shí)時(shí)鐘/日歷。
- 通過CLKOUT端口向外圍設(shè)備提供可編程時(shí)鐘信號(hào),支持頻率:32.768kHz,1024Hz,32Hz,1Hz。
SCG103的I2C接口讀寫頻率可達(dá)400kHz,讀寫指令:讀A3h,寫A2h。讀寫地址自動(dòng)增益。圖7為SCG103的內(nèi)部框圖。
2.2 測(cè)試方案與實(shí)現(xiàn)
SCG103的測(cè)試分為直流參數(shù)測(cè)試和功能測(cè)試兩部分。直流參數(shù)主要是測(cè)試不同狀態(tài)下芯片電源端的靜態(tài)電流,其具體測(cè)試流程如圖8。

圖8 SCG103直流參數(shù)測(cè)試流程
需要注意的是,各測(cè)試步驟必須按照?qǐng)D中順序進(jìn)行,且中間不能斷電,以確保參數(shù)是在正確狀態(tài)下被測(cè)試的。
SCG103的功能測(cè)試主要包括:復(fù)位值驗(yàn)證(RESET),頻率驗(yàn)證(FREQ)和時(shí)鐘走時(shí)驗(yàn)證(RUNTIME),其具體測(cè)試流程如表2。
如前所述,為滿足SCG103的測(cè)試需求,ATE系統(tǒng)需具備向量生成單元,能夠編寫、產(chǎn)生激勵(lì)向量、期望結(jié)果向量。須具備比較器,進(jìn)行讀回?cái)?shù)據(jù)的失效判斷。須具備激勵(lì)/測(cè)試單元(PMU),以測(cè)試直流參數(shù)。其模型如圖9所示。
BC3192系統(tǒng)滿足上訴要求。在該系統(tǒng)的開發(fā)環(huán)境下建立測(cè)試程序:設(shè)置時(shí)間參數(shù)、編寫測(cè)試向量、設(shè)置直流參數(shù)測(cè)試項(xiàng),能夠完成SCG103要求的所有測(cè)試項(xiàng)目。該測(cè)試程序已經(jīng)成功用于產(chǎn)線批量測(cè)試。
在SCG103測(cè)試程序開發(fā)中,編寫測(cè)試向量是關(guān)鍵點(diǎn)。由于指令/數(shù)據(jù)向量的串行格式,字節(jié)不易分辨,手動(dòng)編寫、修改比較困難。可對(duì)軟件工具做出改進(jìn),在向量編寫時(shí)仍用并行格式,如下面一段向量:
SCL SDA
01010101 11001100
01010101 00001100
再通過軟件工具轉(zhuǎn)化為如下的串行格式,可以使向量編寫更加便捷:
SCL SDA

表2 SCG103功能測(cè)試流程

圖9 I2C串行接口數(shù)字芯片 測(cè)試系統(tǒng)模型

本文通過分析I2C串行總線協(xié)議原理,討論了I2C串行接口數(shù)字芯片的測(cè)試方法。在此基礎(chǔ)上以實(shí)時(shí)時(shí)鐘/日歷芯片SCG103為例,研究了I2C串行接口數(shù)字芯片的測(cè)試方案,并利用BC3192測(cè)試系統(tǒng)開發(fā)了測(cè)試程序,實(shí)現(xiàn)了參數(shù)、功能測(cè)試。該測(cè)試程序已成功用于產(chǎn)線批量測(cè)試。本文所述方法同樣適用于其他I2C串行接口數(shù)字芯片的測(cè)試。
[1] 韓紅星. PCF8563芯片的測(cè)試程序開發(fā)研究[C].中國(guó)蘇州:第五屆中國(guó)測(cè)試學(xué)術(shù)會(huì)議論文集,2008:426.
[2] THE I2C-BUS SPECIFICATION Version2.1[M].Philips Semiconductors.2000:8-11.
[3] PCF8563 Production Specifications[M].Philips Semiconductors.1999:4-16.
[4] 應(yīng)建華,陳艷,郭艷.一種I2C總線接口的串行時(shí)鐘芯片[J].華中科技大學(xué)學(xué)報(bào)(自然科學(xué)版),2006,34(5): 61-64.
[5] 蔣長(zhǎng)斌,生曉坤,李杰,宋澤明.ARM Cortex-M3微處理器測(cè)試方法[J].電子測(cè)試,2013,07(4): 48-51.
趙影:女,碩士,北京自動(dòng)測(cè)試技術(shù)研究所助理工程師,主要從事集成電路測(cè)試方法研究及測(cè)試系統(tǒng)研發(fā)工作。
Test Method for I2C Serial Interface Digital IC SCG103
Zhao Ying,Gao Jian
(Beijing Institute of Auto-Testing Technology,Beijing,100088)
This article discusses the principle of I2C serial bus protocol,and researched the test method for digital IC with I2C serial interface. Based on that,researched the test solution for SCG103,a real time clock/calendar IC with I2C serial interface.Test procedures are developed and successfully performed in BC3192 system.This test method is also applicable to similar IC with I2C serial interface.
ATE;Serial Bus;Serial Interface;I2C;Digital IC;IC Test;BC3192
TN40
A