新聞中心

EEPW首頁 > 測試測量 > 設計應用 > 邏輯分析儀為I2C信號量測提供完整方案

邏輯分析儀為I2C信號量測提供完整方案

作者: 時間:2012-06-21 來源:網(wǎng)絡 收藏

匯流排在電子產(chǎn)品中,很常見的一種匯流排,它的好處就是只需要兩條線,就可以并聯(lián)很多 IC 進行控制。但因為多裝置(Device) 及開路集極(Open drain)的架構,常使 匯流排除錯工作變得困難. 本文將提出一些實際的應用案例,并使用(Logic Analyzer)之各項功能,來協(xié)助排除問題。

本文引用地址:http://2s4d.com/article/193693.htm

使用轉態(tài)儲存進行長時間資料紀錄

匯流排訊號發(fā)生異常時,常無法明確的知道是哪個裝置出錯。因此,無法用設定觸發(fā)的方式來做問題點的定位。使用者多半會考慮先把所有的波形都擷取回來再慢慢分析。但基本是以采樣的方式擷取訊號,不管訊號有沒有改變,都會隨著采樣擷取動作的進行,而不斷地消耗記憶體。而轉態(tài)儲存(Transitional Storage)功能是一種波形資料的儲存模式,只在波形轉態(tài)(Transition)的時候才將波形資料儲存起來,這樣當資料不轉態(tài)時,就可以持續(xù)的等候且不存任何資料到記憶體內。相對于每個采樣點都存一次資料的作法,轉態(tài)儲存將可以記下更多的資料。由于I2C 的傳輸速度如下表一,整體來看速度都不會很快。 因此會非常地適合使用轉態(tài)儲存,來拉長可儲存的時間。

表一I2C 個模式傳輸速度。

1.jpg

利用I2C觸發(fā)來定位問題點

舉例來說,電路板上I2C 匯流排連接了裝置 A 與裝置 B,但在長時間燒機測試(Burn-In Test)的過程中,I2C 匯流排發(fā)生錯誤的問題。已知的現(xiàn)象是當發(fā)生錯誤時,I2C 匯流排上會出現(xiàn)無效的位址(Address),并且燒機的過程中會出現(xiàn)數(shù)次。 如何能利用邏輯分析儀來做做問題厘清? 這樣的問題,若想把所有的波形資料都抓下來,其實是有困難的。 因為出現(xiàn)問題的時間點及次數(shù)都很不一定,且長達好幾天的燒機測試也使得把所有的資料都 Log 下來顯得不切實際,又必須在大量的資料中尋找問題點。也是相當費時費力的工作。

因此,可采用邏輯分析儀中的I2C 觸發(fā)功能來進行定位。首先,先把裝置 A(Addr:12h) 與裝置 B (Addr:34h)的有效位址輸入。 然后讓邏輯分析儀找出不符合上述兩個條件的地址。實際設定如圖一所示。

11.jpg

圖一 利用I2C 觸發(fā)功能進行無效位址定位。

然后再搭配邏輯分析儀擷取波形后自動儲存功能,就很在燒機的過程中,每次觸發(fā)成功就存檔,之后再檢視存檔波形之觸發(fā)點即可。善用I2C 觸發(fā)功能可以快速的協(xié)助波形定位,會比資料抓得多來的有意義很多。同樣的,善用整個使用I2C 參數(shù)來做為觸發(fā)條件,例如地址符合或資料符合或多階式的觸發(fā)來指定更精準的觸發(fā),這些都是單純使用邊緣觸發(fā)(Edge Trigger)所無法做到的功能。

I2C 觸發(fā)檢查時間違反(Timing violation)的問題點

I2C 匯流排會規(guī)范 SCL與 SDA 必須按規(guī)定時間送出,不然整個匯流排的行為將會發(fā)生錯誤,導致通訊失敗。有時候實際波形的時間已經(jīng)超出規(guī)格,但卻無法在開發(fā)及驗證被挑出來,因為有時候時間誤差都不大,使得產(chǎn)品仍可正常使用。 但常常問題會流到量產(chǎn)時才爆發(fā)出來,造成量產(chǎn)不良率攀升。甚至到使用者手上才出現(xiàn)問題。這都是產(chǎn)品開發(fā)所不樂于見到的結果。

以圖二所示,可啟用邏輯分析儀之時間違反檢查當作觸發(fā)條件,設定所需檢查的時間值,再讓邏輯分析儀協(xié)助挑出時間違反的地方。邏輯分析儀系統(tǒng)采用 200MHz 采樣率來進行采樣。 因此,可檢查之最小時間寬度為 5ns。這樣,就可以輔助使用者,利用觸發(fā)來做時間違反檢查。非常適合于燒機測試時,用這個方式檢測I2C 匯流排的訊號時間。

22.jpg

圖二 時間違反觸發(fā)功能之設定畫面。

采用舒密特觸發(fā)電路架構擷取品質良好的I2C 訊號

使用邏輯分析儀進行量測時,常會看到一些雜訊。但使用示波器看的時候似乎又沒有,是甚么原因? 要如何排除? 這是因為I2C 匯流排是開路集極架構,匯流排上又同時接了很多裝置,還有一些靜電防護零件等等??赡苁沟肐2C波形不見得會是很好的方波。 常見的I2C 波形如圖三、四所示。但這樣的波形在I2C 規(guī)范里面,是正??山邮艿模]有問題。

33.jpg

圖三 常見的I2C 匯流排訊號(一), 上方為 SCL, 下方為 SDA。

44.jpg

圖四 常見的I2C 匯流排訊號(二), SDA 訊號。

也因為這樣,一般I2C晶片,都會規(guī)范在訊號輸入腳位必須要有舒密特觸發(fā)(Schmitt trigger)電路,以便于完善的解決訊號輸入后能正確的處理邏輯訊號。為此,邏輯分析儀也可循此法做較完善的訊號解擷取動作。圖五為一般邏輯分析儀,此用單一個觸發(fā)準位的方式來做邏輯0與邏輯1 的區(qū)分。這樣的作法,很容易在待測訊號經(jīng)過觸發(fā)準位(Threshold)附近時,產(chǎn)生很多不可預期的邏輯變化。 使得擷取出來的訊號像是雜訊或彈跳的現(xiàn)象。

55.jpg

圖五 邏輯分析儀采單一觸發(fā)準位模式示意圖。

若采用低通濾波(Low-pass filter)的做法,是可以濾除雜訊,但又使得可能造成線路問題的高頻雜訊也同時被濾掉了。無論如何,這都不是適當?shù)慕鉀Q。


上一頁 1 2 下一頁

評論


相關推薦

技術專區(qū)

關閉