專利名稱:數(shù)字基帶芯片中i2c模塊的自動(dòng)測(cè)試電路結(jié)構(gòu)及其方法
技術(shù)領(lǐng)域:
本發(fā)明涉及集成電路技術(shù)領(lǐng)域,特別涉及集成電路芯片測(cè)試領(lǐng)域,具體是指一種 數(shù)字基帶芯片中I2C模塊的自動(dòng)測(cè)試電路結(jié)構(gòu)及其方法。
背景技術(shù):
在芯片生產(chǎn)過(guò)程中,為了篩選次品,需要用自動(dòng)化測(cè)試系統(tǒng)對(duì)其進(jìn)行批量測(cè)試。測(cè) 試系統(tǒng)的穩(wěn)定性,以及對(duì)芯片各功能模塊的覆蓋率,都是影響測(cè)試結(jié)果可靠性的重要因素。GPIO(通用可編程輸入輸出口)是 General Programmable Input Output 的簡(jiǎn) 稱,當(dāng)微控制器或芯片組沒(méi)有足夠的I/O端口,或當(dāng)系統(tǒng)需要采用遠(yuǎn)端串行通信或控制時(shí), GPIO產(chǎn)品能夠提供額外的控制和監(jiān)視功能。I2C(Inter-Integrated Circuit,集成電路之間)總線是由PHILIPS公司開發(fā)的 一種兩線式串行總線,用于連接微控制器及其外圍設(shè)備,廣泛應(yīng)用于數(shù)字基帶芯片。I2C總線是由數(shù)據(jù)線和時(shí)鐘線構(gòu)成的串行總線,可發(fā)送和接收數(shù)據(jù)。每個(gè)器件都有 一個(gè)唯一的地址識(shí)別,且都可以作為發(fā)送器或接收器,在執(zhí)行數(shù)據(jù)傳輸時(shí)也可以被看作是 主機(jī)或從機(jī)。I2C包括7/10bit地址、起始字節(jié)(Start Byte)、廣播呼叫(General Call) 等工作模式。數(shù)字基帶芯片I2C模塊的一般測(cè)試方法是將芯片的I2C模塊與外接I2C器件進(jìn)行 通訊,對(duì)芯片I2C緩存內(nèi)的數(shù)據(jù)進(jìn)行校驗(yàn),如E2PR0M,對(duì)其進(jìn)行讀寫操作,將發(fā)送數(shù)據(jù)與接 收數(shù)據(jù)進(jìn)行比較。但是此類方案都受限于外接器件硬件電路,以及所支持的工作模式和時(shí) 序要求。改變測(cè)試平臺(tái)的硬件環(huán)境,則相應(yīng)的測(cè)試程序也需要改變,不但增加了測(cè)試系統(tǒng)的 復(fù)雜程度和成本,而且無(wú)法完整覆蓋數(shù)字基帶芯片I2C模塊的各種功能。綜上所述,其具有以下缺點(diǎn)(1)硬件電路復(fù)雜,增加了系統(tǒng)不確定因素,降低了測(cè)試結(jié)果的可靠性;(2)增加了測(cè)試成本;(3)測(cè)試模式單一,不能完全覆蓋I2C各種工作模式;(4)只能對(duì)結(jié)果進(jìn)行比較分析,不能對(duì)通訊過(guò)程中的具體時(shí)序進(jìn)行分析;(5)測(cè)試程序的可移植性較差。
發(fā)明內(nèi)容
本發(fā)明的目的是克服了上述現(xiàn)有技術(shù)中的缺點(diǎn),提供一種能夠?qū)崿F(xiàn)數(shù)字基帶芯片 的I2C模塊的自動(dòng)化測(cè)試、電路結(jié)構(gòu)簡(jiǎn)單、測(cè)試過(guò)程方便快捷、工作性能穩(wěn)定可靠、適用范 圍較為廣泛的數(shù)字基帶芯片中I2C模塊的自動(dòng)測(cè)試電路結(jié)構(gòu)及其方法。為了實(shí)現(xiàn)上述的目的,本發(fā)明的數(shù)字基帶芯片中I2C模塊的自動(dòng)測(cè)試電路結(jié)構(gòu)及 其方法如下該數(shù)字基帶芯片中I2C模塊的自動(dòng)測(cè)試電路結(jié)構(gòu),包括數(shù)字基帶芯片中的通用輸 入輸出GPIO端口,其主要特點(diǎn)是,所述的數(shù)字基帶芯片中的I2C模塊與所述的通用輸入輸出GPIO端口相連接。該數(shù)字基帶芯片中I2C模塊的自動(dòng)測(cè)試電路結(jié)構(gòu)中的通用輸入輸出GPIO端口包 括第一 GPIO端口和第二 GPIO端口,所述的I2C模塊中的時(shí)鐘端口與所述的第一 GPIO端口 相連接,所述的I2C模塊中的數(shù)據(jù)收發(fā)端口與所述的第二 GPIO端口相連接。該基于上述的電路結(jié)構(gòu)實(shí)現(xiàn)數(shù)字基帶芯片中I2C模塊的自動(dòng)測(cè)試的方法,其主要 特點(diǎn)是,所述的方法包括以下步驟(1)對(duì)數(shù)字基帶芯片中的I2C模塊進(jìn)行復(fù)位操作;(2)對(duì)所述的I2C模塊中的工作寄存器及所述的通用輸入輸出GPIO端口的工作寄 存器進(jìn)行初始化處理;(3)將所述的I2C模塊使能,并根據(jù)I2C協(xié)議的工作方式進(jìn)行I2C模塊和通用輸入 輸出GPIO端口之間的數(shù)據(jù)發(fā)送接收測(cè)試操作;(4)檢驗(yàn)所述的通用輸入輸出GPIO端口的測(cè)試數(shù)據(jù)和所述的I2C模塊的緩存數(shù)據(jù) 的一致性;(5)改變所述的I2C模塊的測(cè)試參數(shù),重復(fù)上述步驟(2) ⑷。該實(shí)現(xiàn)數(shù)字基帶芯片中I2C模塊的自動(dòng)測(cè)試的方法中的I2C協(xié)議的工作方式可以 為I2C模塊作為主機(jī)發(fā)送數(shù)據(jù),所述的I2C模塊和通用輸入輸出GPIO端口之間的數(shù)據(jù)發(fā)送 接收測(cè)試操作,包括以下步驟(11)所述的數(shù)字基帶芯片向I2C模塊的發(fā)送緩存中寫入測(cè)試數(shù)據(jù);(12)所述的I2C模塊向所述的通用輸入輸出GPIO端口發(fā)送時(shí)鐘信號(hào);(13)所述的通用輸入輸出GPIO端口檢測(cè)所述的I2C模塊所發(fā)送來(lái)的起始信號(hào)、地 址字節(jié)以及寫控制信號(hào),以字節(jié)為單位開始接收測(cè)試數(shù)據(jù),并發(fā)送響應(yīng)信號(hào);(14)在測(cè)試數(shù)據(jù)接收過(guò)程中根據(jù)I2C協(xié)議對(duì)接收時(shí)序進(jìn)行判斷,如果相應(yīng)的接收 時(shí)序與I2C協(xié)議不符,則將測(cè)試標(biāo)志位設(shè)置為出錯(cuò)狀態(tài);(15)所述的通用輸入輸出GPIO端口檢測(cè)到所述的I2C模塊所發(fā)送來(lái)的停止信號(hào) 后結(jié)束接收。該實(shí)現(xiàn)數(shù)字基帶芯片中I2C模塊的自動(dòng)測(cè)試的方法中的改變I2C模塊測(cè)試參數(shù), 包括以下的一個(gè)方式或者多個(gè)方式(a)改變發(fā)送數(shù)據(jù)長(zhǎng)度;(b)改變地址模式為7bit或IObit ;(c)改變工作模式為起始字節(jié)(Start byte)模式或者廣播呼叫(General Call) 模式。該實(shí)現(xiàn)數(shù)字基帶芯片中I2C模塊的自動(dòng)測(cè)試的方法中的I2C協(xié)議的工作方式可以 為I2C模塊作為主機(jī)接收數(shù)據(jù),所述的I2C模塊和通用輸入輸出GPIO端口之間的數(shù)據(jù)發(fā)送 接收測(cè)試操作,包括以下步驟(21)所述的數(shù)字基帶芯片將I2C模塊的接收緩存清空;(22)所述的I2C模塊向所述的通用輸入輸出GPIO端口發(fā)送時(shí)鐘信號(hào);(23)所述的通用輸入輸出GPIO端口檢測(cè)所述的I2C模塊所發(fā)送來(lái)的起始信號(hào)、地 址字節(jié)以及讀控制信號(hào),開始發(fā)送測(cè)試數(shù)據(jù),每發(fā)送完一個(gè)字節(jié),等待接收I2C模塊的響應(yīng)
信號(hào);
(24)在測(cè)試數(shù)據(jù)發(fā)送過(guò)程中根據(jù)I2C協(xié)議對(duì)發(fā)送時(shí)序進(jìn)行判斷,如果相應(yīng)的發(fā)送 時(shí)序與I2C協(xié)議不符,則將測(cè)試標(biāo)志位設(shè)置為出錯(cuò)狀態(tài);(25)所述的通用輸入輸出GPIO端口接收到所述的I2C模塊所發(fā)送來(lái)的不響應(yīng)位
或者停止信號(hào)后結(jié)束發(fā)送。該實(shí)現(xiàn)數(shù)字基帶芯片中I2C模塊的自動(dòng)測(cè)試的方法中的改變I2C模塊測(cè)試參數(shù), 包括以下的一個(gè)方式或者多個(gè)方式(a)改變接收數(shù)據(jù)長(zhǎng)度;(b)改變地址模式為7bit或IObit ;(c)改變工作模式為起始字節(jié)模式或者廣播呼叫模式。該實(shí)現(xiàn)數(shù)字基帶芯片中I2C模塊的自動(dòng)測(cè)試的方法中的I2C協(xié)議的工作方式可以 為I2C模塊作為從機(jī)接收數(shù)據(jù),所述的I2C模塊和通用輸入輸出GPIO端口之間的數(shù)據(jù)發(fā)送 接收測(cè)試操作,包括以下步驟(31)所述的數(shù)字基帶芯片將I2C模塊的接收緩存清空;(32)所述的通用輸入輸出GPIO端口向所述的I2C模塊發(fā)送時(shí)鐘信號(hào);(33)所述的通用輸入輸出GPIO端口向所述的I2C模塊發(fā)送起始信號(hào)、地址字節(jié)以 及寫控制信號(hào),并開始發(fā)送測(cè)試數(shù)據(jù),每發(fā)送完一個(gè)字節(jié),等待接收I2C模塊的響應(yīng)信號(hào);(34)在測(cè)試數(shù)據(jù)發(fā)送過(guò)程中根據(jù)I2C協(xié)議對(duì)發(fā)送時(shí)序進(jìn)行判斷,如果相應(yīng)的發(fā)送 時(shí)序與I2C協(xié)議不符,則將測(cè)試標(biāo)志位設(shè)置為出錯(cuò)狀態(tài);(35)所述的通用輸入輸出GPIO端口接收到所述的I2C模塊所發(fā)送來(lái)的不響應(yīng)位 或者所述的通用輸入輸出GPIO端口將所有的測(cè)試數(shù)據(jù)均發(fā)送完畢并產(chǎn)生停止信號(hào)后結(jié)束 發(fā)送。該實(shí)現(xiàn)數(shù)字基帶芯片中I2C模塊的自動(dòng)測(cè)試的方法中的改變I2C模塊測(cè)試參數(shù), 包括以下的一個(gè)方式或者多個(gè)方式(a)改變接收數(shù)據(jù)長(zhǎng)度;(b)改變地址模式為7bit或IObit ;(c)改變工作模式為起始字節(jié)模式或者廣播呼叫模式。該實(shí)現(xiàn)數(shù)字基帶芯片中I2C模塊的自動(dòng)測(cè)試的方法的I2C協(xié)議的工作方式可以為 I2C模塊作為從機(jī)發(fā)送數(shù)據(jù),所述的I2C模塊和通用輸入輸出GPIO端口之間的數(shù)據(jù)發(fā)送接 收測(cè)試操作,包括以下步驟(41)所述的數(shù)字基帶芯片向I2C模塊的發(fā)送緩存中寫入測(cè)試數(shù)據(jù);(42)所述的通用輸入輸出GPIO端口向所述的I2C模塊發(fā)送時(shí)鐘信號(hào);(43)所述的通用輸入輸出GPIO端口向所述的I2C模塊發(fā)送起始信號(hào)、地址字節(jié)以 及讀控制信號(hào),以字節(jié)為單位開始接收測(cè)試數(shù)據(jù),并發(fā)送響應(yīng)信號(hào);(44)在測(cè)試數(shù)據(jù)接收過(guò)程中根據(jù)I2C協(xié)議對(duì)接收時(shí)序進(jìn)行判斷,如果相應(yīng)的接收 時(shí)序與I2C協(xié)議不符,則將測(cè)試標(biāo)志位設(shè)置為出錯(cuò)狀態(tài);(45)所述的通用輸入輸出GPIO端口將所有的測(cè)試數(shù)據(jù)均接收完畢并產(chǎn)生停止信 號(hào)后結(jié)束接收。該實(shí)現(xiàn)數(shù)字基帶芯片中I2C模塊的自動(dòng)測(cè)試的方法中的改變I2C模塊測(cè)試參數(shù), 包括以下的一個(gè)方式或者多個(gè)方式
(a)改變發(fā)送數(shù)據(jù)長(zhǎng)度;(b)改變地址模式為7bit或IObit ;(c)改變工作模式為起始字節(jié)模式或者廣播呼叫模式。采用了該發(fā)明的數(shù)字基帶芯片中I2C模塊的自動(dòng)測(cè)試電路結(jié)構(gòu)及其方法,由于其 中直接利用了數(shù)字基帶芯片自帶的GPIO (通用輸入輸出端口)模擬I2C接口,并根據(jù)I2C 協(xié)議與數(shù)字基帶芯片的I2C模塊進(jìn)行通訊,實(shí)現(xiàn)了 I2C模塊的主機(jī)發(fā)送、主機(jī)接收、從機(jī)發(fā) 送及從機(jī)接收功能以及7/10bit地址、起始字節(jié)(start byte)、廣播呼叫(general call)、 重復(fù)起始等工作模式的自動(dòng)化測(cè)試,從而無(wú)需任何外接器件即可靈活實(shí)現(xiàn)了與I2C模塊的 通訊,不但降低了硬件電路的復(fù)雜程度,而且降低了測(cè)試成本,提高了系統(tǒng)穩(wěn)定度,同時(shí)也 增強(qiáng)了測(cè)試程序的可移植性,提高了測(cè)試結(jié)果的可靠性,測(cè)試過(guò)程方便快捷,工作性能穩(wěn)定 可靠,適用范圍較為廣泛。
圖1為本發(fā)明的數(shù)字基帶芯片中I2C模塊的自動(dòng)測(cè)試電路結(jié)構(gòu)的原理示意圖。
具體實(shí)施例方式為了能夠更清楚地理解本發(fā)明的技術(shù)內(nèi)容,特舉以下實(shí)施例詳細(xì)說(shuō)明。請(qǐng)參閱圖1所示,該數(shù)字基帶芯片中I2C模塊的自動(dòng)測(cè)試電路結(jié)構(gòu),包括數(shù)字基帶 芯片中的通用輸入輸出GPIO端口,其中,所述的數(shù)字基帶芯片中的I2C模塊與所述的通用 輸入輸出GPIO端口相連接。其中,所述的通用輸入輸出GPIO端口包括第一 GPIO端口和第二 GPIO端口,所述 的I2C模塊中的時(shí)鐘端口與所述的第一 GPIO端口相連接,所述的I2C模塊中的數(shù)據(jù)收發(fā)端 口與所述的第二 GPIO端口相連接。該基于上述的電路結(jié)構(gòu)實(shí)現(xiàn)數(shù)字基帶芯片中I2C模塊的自動(dòng)測(cè)試的方法,其中包 括以下步驟(1)對(duì)數(shù)字基帶芯片中的I2C模塊進(jìn)行復(fù)位操作;(2)對(duì)所述的I2C模塊中的工作寄存器及所述的通用輸入輸出GPIO端口的工作寄 存器進(jìn)行初始化處理;(3)將所述的I2C模塊使能,并根據(jù)I2C協(xié)議的工作方式進(jìn)行I2C模塊和通用輸入 輸出GPIO端口之間的數(shù)據(jù)發(fā)送接收測(cè)試操作;所述的I2C協(xié)議的工作方式可以為I2C模塊 作為主機(jī)發(fā)送數(shù)據(jù),所述的I2C模塊和通用輸入輸出GPIO端口之間的數(shù)據(jù)發(fā)送接收測(cè)試操 作,包括以下步驟(a)所述的數(shù)字基帶芯片向I2C模塊的發(fā)送緩存中寫入測(cè)試數(shù)據(jù);(b)所述的I2C模塊向所述的通用輸入輸出GPIO端口發(fā)送時(shí)鐘信號(hào);(c)所述的通用輸入輸出GPIO端口檢測(cè)所述的I2C模塊所發(fā)送來(lái)的起始信號(hào)、地 址字節(jié)以及寫控制信號(hào),以字節(jié)為單位開始接收測(cè)試數(shù)據(jù),并發(fā)送響應(yīng)信號(hào);(d)在測(cè)試數(shù)據(jù)接收過(guò)程中根據(jù)I2C協(xié)議對(duì)接收時(shí)序進(jìn)行判斷,如果相應(yīng)的接收 時(shí)序與I2C協(xié)議不符,則將測(cè)試標(biāo)志位設(shè)置為出錯(cuò)狀態(tài);(e)所述的通用輸入輸出GPIO端口檢測(cè)到所述的I2C模塊所發(fā)送來(lái)的停止信號(hào)后結(jié)束接收;或者,所述的工作方式可以為I2C模塊作為主機(jī)接收數(shù)據(jù),所述的I2C模塊和通用 輸入輸出GPIO端口之間的數(shù)據(jù)發(fā)送接收測(cè)試操作,包括以下步驟(a)所述的數(shù)字基帶芯片將I2C模塊的接收緩存清空;(b)所述的I2C模塊向所述的通用輸入輸出GPIO端口發(fā)送時(shí)鐘信號(hào);(c)所述的通用輸入輸出GPIO端口檢測(cè)所述的I2C模塊所發(fā)送來(lái)的起始信號(hào)、地 址字節(jié)以及讀控制信號(hào),開始發(fā)送測(cè)試數(shù)據(jù),每發(fā)送完一個(gè)字節(jié),等待接收I2C模塊的響應(yīng) 信號(hào);(d)在測(cè)試數(shù)據(jù)發(fā)送過(guò)程中根據(jù)I2C協(xié)議對(duì)發(fā)送時(shí)序進(jìn)行判斷,如果相應(yīng)的發(fā)送 時(shí)序與I2C協(xié)議不符,則將測(cè)試標(biāo)志位設(shè)置為出錯(cuò)狀態(tài);(e)所述的通用輸入輸出GPIO端口接收到所述的I2C模塊所發(fā)送來(lái)的不響應(yīng)位或
者停止信號(hào)后結(jié)束發(fā)送;或者,所述的工作方式可以為I2C模塊作為從機(jī)接收數(shù)據(jù),所述的I2C模塊和通用 輸入輸出GPIO端口之間的數(shù)據(jù)發(fā)送接收測(cè)試操作,包括以下步驟(a)所述的數(shù)字基帶芯片將I2C模塊的接收緩存清空;(b)所述的通用輸入輸出GPIO端口向所述的I2C模塊發(fā)送時(shí)鐘信號(hào);(c)所述的通用輸入輸出GPIO端口向所述的I2C模塊發(fā)送起始信號(hào)、地址字節(jié)以 及寫控制信號(hào),并開始發(fā)送測(cè)試數(shù)據(jù),每發(fā)送完一個(gè)字節(jié),等待接收I2C模塊的響應(yīng)信號(hào);(d)在測(cè)試數(shù)據(jù)發(fā)送過(guò)程中根據(jù)I2C協(xié)議對(duì)發(fā)送時(shí)序進(jìn)行判斷,如果相應(yīng)的發(fā)送 時(shí)序與I2C協(xié)議不符,則將測(cè)試標(biāo)志位設(shè)置為出錯(cuò)狀態(tài);(e)所述的通用輸入輸出GPIO端口接收到所述的I2C模塊所發(fā)送來(lái)的不響應(yīng)位或 者所述的通用輸入輸出GPIO端口將所有的測(cè)試數(shù)據(jù)均發(fā)送完畢并產(chǎn)生停止信號(hào)后結(jié)束發(fā) 送;或者,所述的工作方式可以為I2C模塊作為從機(jī)發(fā)送數(shù)據(jù),所述的I2C模塊和通用 輸入輸出GPIO端口之間的數(shù)據(jù)發(fā)送接收測(cè)試操作,包括以下步驟(a)所述的數(shù)字基帶芯片向I2C模塊的發(fā)送緩存中寫入測(cè)試數(shù)據(jù);(b)所述的通用輸入輸出GPIO端口向所述的I2C模塊發(fā)送時(shí)鐘信號(hào);(c)所述的通用輸入輸出GPIO端口向所述的I2C模塊發(fā)送起始信號(hào)、地址字節(jié)以 及讀控制信號(hào),以字節(jié)為單位開始接收測(cè)試數(shù)據(jù),并發(fā)送響應(yīng)信號(hào);(d)在測(cè)試數(shù)據(jù)接收過(guò)程中根據(jù)I2C協(xié)議對(duì)接收時(shí)序進(jìn)行判斷,如果相應(yīng)的接收 時(shí)序與I2C協(xié)議不符,則將測(cè)試標(biāo)志位設(shè)置為出錯(cuò)狀態(tài);(e)所述的通用輸入輸出GPIO端口將所有的測(cè)試數(shù)據(jù)均接收完畢并產(chǎn)生停止信 號(hào)后結(jié)束接收;(4)檢驗(yàn)所述的通用輸入輸出GPIO端口的測(cè)試數(shù)據(jù)和所述的I2C模塊的緩存數(shù)據(jù) 的一致性;(5)改變所述的I2C模塊的測(cè)試參數(shù),重復(fù)上述步驟⑵ (4);當(dāng)所述的I2C協(xié) 議的工作方式為I2C模塊作為主機(jī)發(fā)送數(shù)據(jù)或者從機(jī)發(fā)送數(shù)據(jù)時(shí),則所述的改變I2C模塊 測(cè)試參數(shù),包括以下的一個(gè)方式或者多個(gè)方式(a)改變發(fā)送數(shù)據(jù)長(zhǎng)度;
(b)改變地址模式為7bit或IObit ;(c)改變工作模式為起始字節(jié)模式或者廣播呼叫模式;當(dāng)所述的I2C協(xié)議的工作方式為I2C模塊作為主機(jī)接收數(shù)據(jù)或者從機(jī)接收數(shù)據(jù) 時(shí),所述的改變I2C模塊測(cè)試參數(shù),包括以下的一個(gè)方式或者多個(gè)方式(a)改變接收數(shù)據(jù)長(zhǎng)度;(b)改變地址模式為7bit或IObit ;(c)改變工作模式為起始字節(jié)模式或者廣播呼叫模式。在實(shí)際使用當(dāng)中,本發(fā)明的自動(dòng)測(cè)試電路結(jié)構(gòu)的硬件電路原理圖如圖1所示,所 述的數(shù)字基帶芯片的I2C模塊引腳直接與GPIO引腳相連,相應(yīng)的測(cè)試步驟如下(1)對(duì)芯片I2C模塊進(jìn)行復(fù)位;(2)初始化I2C寄存器及GPIO工作寄存器;(3)使能I2C,GPIO發(fā)送或接收數(shù)據(jù);(4)檢驗(yàn)GPIO發(fā)送/接收數(shù)據(jù)和I2C接收/發(fā)送緩存內(nèi)的數(shù)據(jù)是否一致;(5)改變參數(shù),重復(fù)上述⑵ (4)步驟。根據(jù)I2C協(xié)議規(guī)定的工作模式,分以下4種情況進(jìn)行測(cè)試(1)I2C模塊作為主機(jī)發(fā)送數(shù)據(jù)。向I2C發(fā)送緩存寫入數(shù)據(jù),I2C模塊發(fā)送時(shí)鐘信 號(hào),GPIO檢測(cè)到起始信號(hào)、地址字節(jié)以及寫控制信號(hào)后,以字節(jié)為單位,開始接收數(shù)據(jù),并發(fā) 送響應(yīng)信號(hào),直到檢測(cè)到停止信號(hào),在此過(guò)程中嚴(yán)格對(duì)照I2C協(xié)議對(duì)接收時(shí)序進(jìn)行判斷,發(fā) 現(xiàn)與協(xié)議不符時(shí)將測(cè)試標(biāo)志位置位。接收結(jié)束后將I2C發(fā)送緩存內(nèi)的數(shù)據(jù)與GPIO接收到的 數(shù)據(jù)進(jìn)行比較。然后改變I2C模塊測(cè)試參數(shù),如發(fā)送數(shù)據(jù)長(zhǎng)度、地址模式(7bit或lObit)、 工作模式(起始字節(jié)(Start byte)模式或者廣播呼叫(General Call)模式)等,重復(fù)上 述操作若干次。(2) I2C模塊作為主機(jī)接收數(shù)據(jù)。將I2C模塊的接收緩存清空,I2C模塊發(fā)送時(shí)鐘 信號(hào),GPIO檢測(cè)到起始信號(hào)、地址字節(jié)及讀控制信號(hào)后,開始發(fā)送數(shù)據(jù),每發(fā)送完一個(gè)數(shù)據(jù), 等待I2C模塊的響應(yīng)位,直到接收到I2C模塊發(fā)送的不響應(yīng)位或停止信號(hào)。發(fā)送結(jié)束后將 GPIO發(fā)送的數(shù)據(jù)與I2C接收緩存內(nèi)的數(shù)據(jù)進(jìn)行比較。然后改變I2C模塊測(cè)試參數(shù),如接收 數(shù)據(jù)長(zhǎng)度、地址模式(7bit或lObit)、工作模式(Start byte或General Call)等,重復(fù)上 述操作若干次。(3) I2C模塊作為從機(jī)接收數(shù)據(jù)。將I2C模塊的接收緩存清空,GPIO發(fā)送時(shí)鐘信 號(hào),產(chǎn)生起始信號(hào)和地址字節(jié),并發(fā)送寫控制信號(hào),I2C模塊做出響應(yīng)后,GPIO開始發(fā)送數(shù) 據(jù),若I2C模塊發(fā)送不響應(yīng)位,或I2C模塊接收完所有字節(jié)后,GPIO產(chǎn)生停止信號(hào)。將GPIO 發(fā)送的數(shù)據(jù)與I2C接收緩存內(nèi)的數(shù)據(jù)進(jìn)行比較。然后改變I2C模塊測(cè)試參數(shù),如接收數(shù)據(jù) 長(zhǎng)度、地址模式(7bit或lObit)、工作模式(Start byte或General Call)等,重復(fù)上述操 作若干次。(4) I2C模塊作為從機(jī)發(fā)送數(shù)據(jù)。向I2C發(fā)送緩存寫入數(shù)據(jù),GPIO發(fā)送時(shí)鐘信號(hào), 產(chǎn)生起始信號(hào)和地址字節(jié),并發(fā)送讀控制信號(hào)。GPIO接收I2C模塊發(fā)來(lái)的數(shù)據(jù),并發(fā)送響應(yīng) 信號(hào),直到接收完所有數(shù)據(jù),GPIO產(chǎn)生停止信號(hào)。結(jié)束后將I2C發(fā)送緩存內(nèi)的數(shù)據(jù)與GPIO 接收到的數(shù)據(jù)進(jìn)行比較。然后改變I2C模塊測(cè)試參數(shù),如發(fā)送數(shù)據(jù)長(zhǎng)度、地址模式(7bit或 lObit)、工作模式(Start byte或General Call)等,重復(fù)上述操作若干次。
10
采用了上述的數(shù)字基帶芯片中I2C模塊的自動(dòng)測(cè)試電路結(jié)構(gòu)及其方法,由于其中 直接利用了數(shù)字基帶芯片自帶的GPIO (通用輸入輸出端口)模擬I2C接口,并根據(jù)I2C協(xié) 議與數(shù)字基帶芯片的I2C模塊進(jìn)行通訊,實(shí)現(xiàn)了 I2C模塊的主機(jī)發(fā)送、主機(jī)接收、從機(jī)發(fā)送 及從機(jī)接收功能以及7/10bit地址、start byte、general call、重復(fù)起始等工作模式的自 動(dòng)化測(cè)試,從而無(wú)需任何外接器件即可靈活實(shí)現(xiàn)了與I2C模塊的通訊,不但降低了硬件電 路的復(fù)雜程度,而且降低了測(cè)試成本,提高了系統(tǒng)穩(wěn)定度,同時(shí)也增強(qiáng)了測(cè)試程序的可移植 性,提高了測(cè)試結(jié)果的可靠性,測(cè)試過(guò)程方便快捷,工作性能穩(wěn)定可靠,適用范圍較為廣泛。在此說(shuō)明書中,本發(fā)明已參照其特定的實(shí)施例作了描述。但是,很顯然仍可以作出 各種修改和變換而不背離本發(fā)明的精神和范圍。因此,說(shuō)明書和附圖應(yīng)被認(rèn)為是說(shuō)明性的 而非限制性的。
權(quán)利要求
一種數(shù)字基帶芯片中I2C模塊的自動(dòng)測(cè)試電路結(jié)構(gòu),包括數(shù)字基帶芯片中的通用輸入輸出GPIO端口,其特征在于,所述的數(shù)字基帶芯片中的I2C模塊與所述的通用輸入輸出GPIO端口相連接。
2.根據(jù)權(quán)利要求1所述的數(shù)字基帶芯片中I2C模塊的自動(dòng)測(cè)試電路結(jié)構(gòu),其特征在于, 所述的通用輸入輸出GPIO端口包括第一 GPIO端口和第二 GPIO端口,所述的I2C模塊中的 時(shí)鐘端口與所述的第一 GPIO端口相連接,所述的I2C模塊中的數(shù)據(jù)收發(fā)端口與所述的第二 GPIO端口相連接。
3.一種基于權(quán)利要求1所述的電路結(jié)構(gòu)實(shí)現(xiàn)數(shù)字基帶芯片中I2C模塊的自動(dòng)測(cè)試的方 法,其特征在于,所述的方法包括以下步驟(1)對(duì)數(shù)字基帶芯片中的I2C模塊進(jìn)行復(fù)位操作;(2)對(duì)所述的I2C模塊中的工作寄存器及所述的通用輸入輸出GPIO端口的工作寄存器 進(jìn)行初始化處理;(3)將所述的I2C模塊使能,并根據(jù)I2C協(xié)議的工作方式進(jìn)行I2C模塊和通用輸入輸出 GPIO端口之間的數(shù)據(jù)發(fā)送接收測(cè)試操作;(4)檢驗(yàn)所述的通用輸入輸出GPIO端口的測(cè)試數(shù)據(jù)和所述的I2C模塊的緩存數(shù)據(jù)的一 致性;(5)改變所述的I2C模塊的測(cè)試參數(shù),重復(fù)上述步驟(2) (4)。
4.根據(jù)權(quán)利要求3所述的實(shí)現(xiàn)數(shù)字基帶芯片中I2C模塊的自動(dòng)測(cè)試的方法,其特征在 于,所述的I2C協(xié)議的工作方式為I2C模塊作為主機(jī)發(fā)送數(shù)據(jù),所述的I2C模塊和通用輸入 輸出GPIO端口之間的數(shù)據(jù)發(fā)送接收測(cè)試操作,包括以下步驟(11)所述的數(shù)字基帶芯片向I2C模塊的發(fā)送緩存中寫入測(cè)試數(shù)據(jù);(12)所述的I2C模塊向所述的通用輸入輸出GPIO端口發(fā)送時(shí)鐘信號(hào);(13)所述的通用輸入輸出GPIO端口檢測(cè)所述的I2C模塊所發(fā)送來(lái)的起始信號(hào)、地址字 節(jié)以及寫控制信號(hào),以字節(jié)為單位開始接收測(cè)試數(shù)據(jù),并發(fā)送響應(yīng)信號(hào);(14)在測(cè)試數(shù)據(jù)接收過(guò)程中根據(jù)I2C協(xié)議對(duì)接收時(shí)序進(jìn)行判斷,如果相應(yīng)的接收時(shí)序 與I2C協(xié)議不符,則將測(cè)試標(biāo)志位設(shè)置為出錯(cuò)狀態(tài);(15)所述的通用輸入輸出GPIO端口檢測(cè)到所述的I2C模塊所發(fā)送來(lái)的停止信號(hào)后結(jié) 束接收。
5.根據(jù)權(quán)利要求4所述的實(shí)現(xiàn)數(shù)字基帶芯片中I2C模塊的自動(dòng)測(cè)試的方法,其特征在 于,所述的改變I2C模塊測(cè)試參數(shù),包括以下的一個(gè)方式或者多個(gè)方式(a)改變發(fā)送數(shù)據(jù)長(zhǎng)度;(b)改變地址模式為7bit或IObit;(c)改變工作模式為起始字節(jié)模式或者廣播呼叫模式。
6.根據(jù)權(quán)利要求3所述的實(shí)現(xiàn)數(shù)字基帶芯片中I2C模塊的自動(dòng)測(cè)試的方法,其特征在 于,所述的I2C協(xié)議的工作方式為I2C模塊作為主機(jī)接收數(shù)據(jù),所述的I2C模塊和通用輸入 輸出GPIO端口之間的數(shù)據(jù)發(fā)送接收測(cè)試操作,包括以下步驟(21)所述的數(shù)字基帶芯片將I2C模塊的接收緩存清空;(22)所述的I2C模塊向所述的通用輸入輸出GPIO端口發(fā)送時(shí)鐘信號(hào);(23)所述的通用輸入輸出GPIO端口檢測(cè)所述的I2C模塊所發(fā)送來(lái)的起始信號(hào)、地址字節(jié)以及讀控制信號(hào),開始發(fā)送測(cè)試數(shù)據(jù),每發(fā)送完一個(gè)字節(jié),等待接收I2C模塊的響應(yīng)信 號(hào);(24)在測(cè)試數(shù)據(jù)發(fā)送過(guò)程中根據(jù)I2C協(xié)議對(duì)發(fā)送時(shí)序進(jìn)行判斷,如果相應(yīng)的發(fā)送時(shí)序 與I2C協(xié)議不符,則將測(cè)試標(biāo)志位設(shè)置為出錯(cuò)狀態(tài);(25)所述的通用輸入輸出GPIO端口接收到所述的I2C模塊所發(fā)送來(lái)的不響應(yīng)位或者 停止信號(hào)后結(jié)束發(fā)送。
7.根據(jù)權(quán)利要求6所述的實(shí)現(xiàn)數(shù)字基帶芯片中I2C模塊的自動(dòng)測(cè)試的方法,其特征在 于,所述的改變I2C模塊測(cè)試參數(shù),包括以下的一個(gè)方式或者多個(gè)方式(a)改變接收數(shù)據(jù)長(zhǎng)度;(b)改變地址模式為7bit或IObit;(c)改變工作模式為起始字節(jié)模式或者廣播呼叫模式。
8.根據(jù)權(quán)利要求3所述的實(shí)現(xiàn)數(shù)字基帶芯片中I2C模塊的自動(dòng)測(cè)試的方法,其特征在 于,所述的I2C協(xié)議的工作方式為I2C模塊作為從機(jī)接收數(shù)據(jù),所述的I2C模塊和通用輸入 輸出GPIO端口之間的數(shù)據(jù)發(fā)送接收測(cè)試操作,包括以下步驟(31)所述的數(shù)字基帶芯片將I2C模塊的接收緩存清空;(32)所述的通用輸入輸出GPIO端口向所述的I2C模塊發(fā)送時(shí)鐘信號(hào);(33)所述的通用輸入輸出GPIO端口向所述的I2C模塊發(fā)送起始信號(hào)、地址字節(jié)以及寫 控制信號(hào),并開始發(fā)送測(cè)試數(shù)據(jù),每發(fā)送完一個(gè)字節(jié),等待接收I2C模塊的響應(yīng)信號(hào);(34)在測(cè)試數(shù)據(jù)發(fā)送過(guò)程中根據(jù)I2C協(xié)議對(duì)發(fā)送時(shí)序進(jìn)行判斷,如果相應(yīng)的發(fā)送時(shí)序 與I2C協(xié)議不符,則將測(cè)試標(biāo)志位設(shè)置為出錯(cuò)狀態(tài);(35)所述的通用輸入輸出GPIO端口接收到所述的I2C模塊所發(fā)送來(lái)的不響應(yīng)位或 者所述的通用輸入輸出GPIO端口將所有的測(cè)試數(shù)據(jù)均發(fā)送完畢并產(chǎn)生停止信號(hào)后結(jié)束發(fā) 送。
9.根據(jù)權(quán)利要求8所述的實(shí)現(xiàn)數(shù)字基帶芯片中I2C模塊的自動(dòng)測(cè)試的方法,其特征在 于,所述的改變I2C模塊測(cè)試參數(shù),包括以下的一個(gè)方式或者多個(gè)方式(a)改變接收數(shù)據(jù)長(zhǎng)度;(b)改變地址模式為7bit或IObit;(c)改變工作模式為起始字節(jié)模式或者廣播呼叫模式。
10.根據(jù)權(quán)利要求3所述的實(shí)現(xiàn)數(shù)字基帶芯片中I2C模塊的自動(dòng)測(cè)試的方法,其特征在 于,所述的I2C協(xié)議的工作方式為I2C模塊作為從機(jī)發(fā)送數(shù)據(jù),所述的I2C模塊和通用輸入 輸出GPIO端口之間的數(shù)據(jù)發(fā)送接收測(cè)試操作,包括以下步驟(41)所述的數(shù)字基帶芯片向I2C模塊的發(fā)送緩存中寫入測(cè)試數(shù)據(jù);(42)所述的通用輸入輸出GPIO端口向所述的I2C模塊發(fā)送時(shí)鐘信號(hào);(43)所述的通用輸入輸出GPIO端口向所述的I2C模塊發(fā)送起始信號(hào)、地址字節(jié)以及讀 控制信號(hào),以字節(jié)為單位開始接收測(cè)試數(shù)據(jù),并發(fā)送響應(yīng)信號(hào);(44)在測(cè)試數(shù)據(jù)接收過(guò)程中根據(jù)I2C協(xié)議對(duì)接收時(shí)序進(jìn)行判斷,如果相應(yīng)的接收時(shí)序 與I2C協(xié)議不符,則將測(cè)試標(biāo)志位設(shè)置為出錯(cuò)狀態(tài);(45)所述的通用輸入輸出GPIO端口將所有的測(cè)試數(shù)據(jù)均接收完畢并產(chǎn)生停止信號(hào)后 結(jié)束接收。
11.根據(jù)權(quán)利要求10所述的實(shí)現(xiàn)數(shù)字基帶芯片中I2C模塊的自動(dòng)測(cè)試的方法,其特征 在于,所述的改變I2C模塊測(cè)試參數(shù),包括以下的一個(gè)方式或者多個(gè)方式(a)改變發(fā)送數(shù)據(jù)長(zhǎng)度;(b)改變地址模式為7bit或IObit;(c)改變工作模式為起始字節(jié)模式或者廣播呼叫模式。
全文摘要
本發(fā)明涉及一種數(shù)字基帶芯片中I2C模塊的自動(dòng)測(cè)試電路結(jié)構(gòu)及方法,電路結(jié)構(gòu)包括數(shù)字基帶芯片中的GPIO端口,其中數(shù)字基帶芯片中的I2C模塊與GPIO端口相連接。方法包括對(duì)I2C模塊進(jìn)行復(fù)位操作、初始化I2C模塊中的工作寄存器及GPIO端口的工作寄存器、使能I2C模塊并根據(jù)I2C協(xié)議的工作方式進(jìn)行I2C模塊和GPIO端口之間的數(shù)據(jù)發(fā)送接收測(cè)試、檢驗(yàn)GPIO端口的測(cè)試數(shù)據(jù)和I2C模塊的緩存數(shù)據(jù)的一致性、改變I2C模塊的測(cè)試參數(shù)并重復(fù)上述過(guò)程。采用該種數(shù)字基帶芯片中I2C模塊的自動(dòng)測(cè)試電路結(jié)構(gòu)及其方法,降低了硬件電路復(fù)雜度,降低了測(cè)試成本,提高了系統(tǒng)穩(wěn)定性,增強(qiáng)了測(cè)試程序的可移植性,提高了測(cè)試結(jié)果的可靠性,測(cè)試過(guò)程方便快捷,工作性能穩(wěn)定可靠,適用范圍較為廣泛。
文檔編號(hào)G01R31/317GK101907683SQ20091005235
公開日2010年12月8日 申請(qǐng)日期2009年6月2日 優(yōu)先權(quán)日2009年6月2日
發(fā)明者胡垚 申請(qǐng)人:上海摩波彼克半導(dǎo)體有限公司