Prodigy邏輯分析儀在時(shí)鐘擴(kuò)展上實(shí)現(xiàn)脈沖寬度觸發(fā)
Prodigy邏輯分析儀 在 clock stretching 上實(shí)現(xiàn) pulse width 觸發(fā)
概述
在嵌入式系統(tǒng)領(lǐng)域,I2C(內(nèi)部集成電路)是一種常見使用的通信協(xié)議,使設(shè)備能夠在短距離內(nèi)相互通信。I2C 通信的一個(gè)關(guān)鍵方面是 clock stretching,它允許較慢的器件通過保持較低的 clock line 來控制通信的速度。設(shè)計(jì)工程師面臨的挑戰(zhàn)之一是在總線中連接多個(gè)I2C 時(shí)監(jiān)控不頻繁的 clock stretching 事件。哪個(gè)設(shè)備正在延長時(shí)鐘,以及它如何影響嵌入式系統(tǒng)的性能。
PGY-LA-EMBD 是一款高性能邏輯分析儀,提供用于分析 I2C 信號的高級功能,包括時(shí)鐘延展的脈寬觸發(fā)。本文檔概述了如何使用PGY-LA-EMBD logic analyzer 在 clock stretching 上實(shí)現(xiàn) pulse width 觸發(fā)。
I2C 中的clock stretching
時(shí)鐘擴(kuò)展是 I2C 通信中使用的一種機(jī)制,其中從器件可以將 SCL (時(shí)鐘線)保持為低電平,以向主機(jī)發(fā)出信號,使其在繼續(xù)通信之前等待(如圖 1 所示)。當(dāng) slave 需要更多時(shí)間來處理信息時(shí),這確保了數(shù)據(jù)完整性。主設(shè)備必須等到從設(shè)備釋放SCL 線路后才能恢復(fù)通信。當(dāng) slave 需要額外的時(shí)間進(jìn)行處理、緩沖或 synchronization 時(shí),此功能特別有用,但它確實(shí)需要 master 支持 clock stretching 才能正確進(jìn)行通信。
脈沖寬度觸發(fā)
脈沖寬度觸發(fā)是 logic analyzers 中的一項(xiàng)強(qiáng)大功能,允許用戶根據(jù)脈沖的持續(xù)時(shí)間捕獲事件。在 I2C clock stretching 的上下文中,此功能對于檢測和分析 I2C 中的器件將時(shí)鐘線(SCL) 保持為低電平以進(jìn)行 clock stretching 的實(shí)例特別有用,因?yàn)樵撈骷枰鄷r(shí)間來響應(yīng)。在 I2C 總線中,并非所有器件都等于響應(yīng)時(shí)間。盡管 I2C 總線可以以 10Kbps 的速度工作,但在邏輯分析儀或 I2C 分析儀中捕獲不常見的時(shí)鐘拉伸事件是很困難的。脈沖寬度觸發(fā)通過設(shè)置脈沖寬度超過 100Kbps 的數(shù)據(jù)速率來設(shè)置脈沖寬度觸發(fā),從而可以捕獲此事件。此功能可幫助工程師識別 I2C 通信中的時(shí)序問題、性能瓶頸和其他異常情況。
PGY-LA-EMBD 提供各種觸發(fā)選項(xiàng),包括 pattern 觸發(fā)、協(xié)議感知觸發(fā)和 timing parameter triggers。timing parameter trigger 是 pulse width 觸發(fā)的一種形式,允許用戶在負(fù)邊沿設(shè)置脈沖寬度。這意味著如果clock line 保持低電平的時(shí)間超過指定的 pulse width,則 PGY-LA-EMBD 將在負(fù)沿觸發(fā)。
例如,在圖 2 中,脈沖寬度觸發(fā)配置為負(fù)邊沿上的脈沖寬度大于 10,000 ns。在此示例中,I2C 信號以 100 kHz 的頻率和 10,000 ns 的周期捕獲。在某些情況下,會發(fā)生 clock stretching,并且 PGY-LA-EMBD 中的 pulse width 觸發(fā)功能用于準(zhǔn)確捕獲這些事件。
圖 3 顯示了寫-讀傳輸期間的 I2C 波形。讀取傳輸后,clock 在寫入消息期間被拉伸,導(dǎo)致 clock stretching 事件持續(xù) 30,000 ns。Vertical cursors 用于測量此 clock stretching 的持續(xù)時(shí)間。當(dāng) I2C 從器件將時(shí)鐘線 (SCL) 保持為低電平時(shí),會發(fā)生時(shí)鐘延展,暫時(shí)暫停通信以處理數(shù)據(jù)。在此示例中,PGY-LA-EMBD logic analyzer配置為在超過 10,000 ns 的 clock stretch上觸發(fā),以捕獲這種不常見的事件。當(dāng)超過此閾值時(shí),具有 I2C 解碼功能的邏輯分析儀將通知觸發(fā)點(diǎn)在總線視圖上標(biāo)有“T”,從而輕松識別和分析延遲。這種設(shè)置有助于診斷 I2C 通信中的時(shí)序和性能問題,確??煽窟\(yùn)行。
結(jié)論
使用具有 I2C 解碼功能的PGY-LA-EMBD 邏輯分析儀在 I2C 上觸發(fā)時(shí)鐘延展的脈寬,為分析和排除 I2C 通信故障提供了一種強(qiáng)大的方法。通過利用 PGY-LA-EMBD 的高級觸發(fā)功能,工程師可以更深入地了解 I2C 系統(tǒng)的時(shí)序行為,從而確保嵌入式應(yīng)用中的可靠和高效通信。