0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

I2C總線與SMBus的比較指南

星星科技指導(dǎo)員 ? 來(lái)源:ADI ? 作者:ADI ? 2023-01-13 15:26 ? 次閱讀

I2C總線和SMBus?是流行的2線總線,基本上相互兼容。通常,設(shè)備(主機(jī)和從設(shè)備)可以在兩條總線之間自由互換。兩條總線都具有可尋址從站(盡管兩者之間的特定地址分配可能有所不同)。總線以相同的速度工作,最高可達(dá)100kHz,但I(xiàn)2C總線具有400kHz和2MHz版本。兩條總線之間的完全兼容性僅在100kHz以下得到保證。本應(yīng)用筆記重點(diǎn)介紹I2C和SMB之間的顯著差異。

I2C總線和SMBus是流行的2線總線,基本上相互兼容。通常,設(shè)備(主機(jī)和從設(shè)備)可以在兩條總線之間自由互換。兩條總線都具有可尋址從站(盡管兩條總線之間的特定地址分配可能有所不同)??偩€以相同的速度工作,最高可達(dá)100kHz,但I(xiàn)2C總線具有400kHz和2MHz版本。顯然,使用所有器件的兩條總線之間的完全兼容性僅在100kHz以下才能得到保證。

本應(yīng)用筆記重點(diǎn)介紹兩條總線之間的顯著差異。雖然假設(shè)讀者對(duì)I2C總線和/或SMBus有一定的了解,但讓我們首先回顧一些協(xié)議基礎(chǔ)知識(shí):

啟動(dòng)和停止事件。這些尤其重要,因?yàn)?它們是向接口發(fā)出信號(hào)的方式,表明它需要轉(zhuǎn)到 已初始化或重置狀態(tài)。

數(shù)據(jù)和時(shí)鐘必須很高才能生成啟動(dòng)和停止。一位大師 無(wú)法生成啟動(dòng)或停止,除非數(shù)據(jù)(I2C的SDA和 SMBData for SMBus)和時(shí)鐘(SCL 用于 I2C,SMBClk 用于 SMBus)線路 是自由的(不是拉低的)。這是成為開(kāi)放收藏家的結(jié)果 總線。

啟動(dòng)和停止條件是唯一的時(shí)間 在時(shí)鐘為高電平時(shí)成為數(shù)據(jù)線上的過(guò)渡。

僅當(dāng)通信期間時(shí)鐘為低電平時(shí),數(shù)據(jù)才能更改狀態(tài)。 數(shù)據(jù)上的數(shù)據(jù)必須始終在時(shí)鐘高電平之前準(zhǔn)備就緒 并且僅在時(shí)鐘變低后更改(除了 啟動(dòng)和停止)。

pYYBAGPBCEaAdH9EAAAp182H5ng706.png

圖1.典型的通信,顯示啟動(dòng)和停止條件。

超時(shí)和時(shí)鐘速度

超時(shí)和(由于超時(shí))最小時(shí)鐘速度是I2C總線和SMBus之間最重要的區(qū)別。

I2C 總線 = 直流 (無(wú)超時(shí))
SMBus = 10kHz (35mS 超時(shí))

超時(shí)是指每當(dāng)時(shí)鐘變?yōu)榈碗娖降臅r(shí)間超過(guò)超時(shí)時(shí)間(通常為 35 毫秒)時(shí),從設(shè)備就會(huì)重置其接口。超時(shí)的使用也決定了時(shí)鐘的最低速度,因?yàn)樗肋h(yuǎn)不會(huì)靜止。因此,SMBus 具有最低時(shí)鐘速度規(guī)格。相比之下,I2C總線可以無(wú)限期地變?yōu)殪o態(tài)。在I2C總線中,主站或從站都可以根據(jù)需要保持時(shí)鐘低電平以處理數(shù)據(jù)。

所有這些都是兩條總線如何處理從站錯(cuò)誤并從這些錯(cuò)誤中恢復(fù)的結(jié)果。要了解錯(cuò)誤恢復(fù),請(qǐng)考慮有兩種狀態(tài),即啟動(dòng)和停止,在正確設(shè)計(jì)的I2C或SMBus從機(jī)上,這兩種狀態(tài)指示從接口進(jìn)入特定狀態(tài)。在 Start 的情況下,接口應(yīng)自行初始化并準(zhǔn)備好接收通信。無(wú)論啟動(dòng)條件之前是什么,都應(yīng)該發(fā)生這種情況(例如,如果從站處于通信過(guò)程中,主設(shè)備感到困惑并不得不重新開(kāi)始)。在 Stop 的情況下,接口應(yīng)再次初始化自身,但應(yīng)在任何新通信之前期待啟動(dòng)。“開(kāi)始”和“停止”都是時(shí)鐘為高電平時(shí)發(fā)生的唯一數(shù)據(jù)轉(zhuǎn)換。為了使數(shù)據(jù)上的轉(zhuǎn)換發(fā)生,數(shù)據(jù)線(和時(shí)鐘線)必須是“自由的”,以允許主站根據(jù)需要在線上放置高點(diǎn)和低點(diǎn)。

在I2C總線中,如果從機(jī)鎖定并保持時(shí)鐘或數(shù)據(jù)低電平,則無(wú)法進(jìn)行錯(cuò)誤恢復(fù)。實(shí)際上很少有從設(shè)備能夠保持時(shí)鐘。因此,最常見(jiàn)的總線錯(cuò)誤是從設(shè)備最終處于數(shù)據(jù)(數(shù)據(jù)線)低電平的狀態(tài)。在I2C總線中,主機(jī)通過(guò)時(shí)鐘時(shí)鐘直到數(shù)據(jù)為高電平,然后發(fā)出啟動(dòng)后停止信號(hào)來(lái)完成錯(cuò)誤恢復(fù)。

與I2C總線相比,只要時(shí)鐘處于低電平,時(shí)間超過(guò)SMBus規(guī)范中規(guī)定的35ms超時(shí),SMBus從站就會(huì)復(fù)位其接口。因此,英特爾 PIIX4 等 SMBus 主站沒(méi)有內(nèi)置任何錯(cuò)誤恢復(fù)例程。實(shí)際上,從設(shè)備需要檢查時(shí)鐘和數(shù)據(jù),即使SMBus規(guī)范沒(méi)有規(guī)定這一點(diǎn)。應(yīng)該這樣做,因?yàn)榻?jīng)驗(yàn)表明,處于錯(cuò)誤狀態(tài)的從站可以保持低數(shù)據(jù),即使時(shí)鐘可能很高。完全按照 SMBus 規(guī)范實(shí)現(xiàn)超時(shí)并不能解決此錯(cuò)誤模式。


I2C Slave
SMB Slave
I2C Slave
I2C Master I2C Master
SMB Master Potential for bus lockup SMB Master

SMBus的時(shí)鐘速度限制為100kHz,而I2C允許高達(dá)400kHz的速度。

邏輯電平

盡管兩條總線之間的邏輯電平規(guī)格存在差異,但通常器件可以混合使用,并可以放棄匹配。事實(shí)證明,SMBus或I2C總線很少因電平差異而發(fā)生故障。當(dāng)我們比較相應(yīng)的電平規(guī)格時(shí),這可能會(huì)令人驚訝,如圖1所示。

pYYBAGPBCD6AYcJYAAAfXMgpPt4107.png

圖2.這是I2C總線和SMBus之間電平規(guī)格的比較。I2C-VDD顯示了 3 V 至 5 V 電源的相關(guān)高值和低值范圍。

為了進(jìn)一步比較,表 2 一起列出了規(guī)格。

High I2C VDD Dependent 0.7 × VDD
I2C Fixed 3.0V
SMBus 2.1V
Low I2C VDD Dependent 0.3 × VDD
I2C Fixed 1.5V
SMBus 0.8V

盡管電平規(guī)格之間似乎存在相當(dāng)大的差異,但在這方面,器件互換性并未被證明是一個(gè)問(wèn)題。這是因?yàn)橹鳈C(jī)和從站的輸出電壓擺幅幾乎總是接近全電源電壓。

上拉電阻電流電平

在討論電壓電平時(shí),不明顯的是,這些電平也由總線之間的不同電流指定。SMBus的最小灌電流為100μA,最大灌電流為350μA,而I2C總線的最小灌電流為3mA。這反過(guò)來(lái)又將確定上拉電阻的最低可接受值,其示例如下表所示。

3V VDD 5V VDD
I2C 總線 > 1k > 1.6k
SMBus > 8.5k > 14k

實(shí)際上,在SMBus系統(tǒng)中遇到上拉電阻值并不罕見(jiàn),因?yàn)樯侠娮柚档陀谕扑]值,因此違反了此規(guī)范。即使在某些SMBus系統(tǒng)中,上拉電阻值的一個(gè)非常普遍的范圍似乎是2.4k至3.9k。

一般呼叫和警報(bào)響應(yīng)

I2C總線有一個(gè)稱為通用呼叫的地址,即0000 000,所有設(shè)計(jì)用于響應(yīng)通用呼叫的從站都將相應(yīng)地采取行動(dòng)。這是一種可以同時(shí)與系統(tǒng)上的多個(gè)設(shè)備通信的方法。

SMBus還規(guī)定了一條名為ALERT#的線路,不要與I2C通用呼叫地址混淆。此行充當(dāng) SMBus 主服務(wù)器的中斷。收到中斷后,SMBus 主服務(wù)器可以發(fā)出警報(bào)響應(yīng)。此警報(bào)響應(yīng)被發(fā)送到地址 0001 100,任何生成中斷的從設(shè)備都試圖通過(guò)將自己的地址放在總線上來(lái)識(shí)別自己。地址最低的設(shè)備將占主導(dǎo)地位(由于集電極開(kāi)路總線)。如果它被維修和清除,主服務(wù)器可以重復(fù)該過(guò)程并通過(guò)可能發(fā)生的任何其他中斷進(jìn)行處理。

其他小細(xì)節(jié)

有一些與上升和下降時(shí)間和總線電容有關(guān)的微妙問(wèn)題通常不是問(wèn)題。此外,在使用“確認(rèn)”和“不確認(rèn)”條件方面,還存在一些很少遇到的協(xié)議差異。對(duì)于大多數(shù)主流的主人和從屬選擇,這些因素通常都不是問(wèn)題。

顯著差異總結(jié)

超時(shí)和最小時(shí)鐘速度

電壓等級(jí)

上拉電阻值和電流水平

I2C SMBus
Timeout No Yes
Minimum Clock Speed DC 10kHz
Maximum Clock Speed 100kHz (400kHz and 2MHz also available) 100kHz
VHIGH 0.7 × VDD, 3.0V Fixed 2.1V
VLOW 0.3 × VDD, 1.5V Fixed 0.8V
Max I 3mA 350μA
Clock Nomenclature SCL SMBCLK
Data Nomenclature SDA SMBDAT
General Call Yes Yes
Alert# No Yes

審核編輯:郭婷

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 總線
    +關(guān)注

    關(guān)注

    10

    文章

    2914

    瀏覽量

    88711
  • SMBus
    +關(guān)注

    關(guān)注

    1

    文章

    117

    瀏覽量

    22247
  • I2C總線
    +關(guān)注

    關(guān)注

    0

    文章

    14

    瀏覽量

    2183
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    SMBusI2C有什么差別?

    系統(tǒng)管理總線(SMBus)是一個(gè)兩線接口。通過(guò)它,各設(shè)備之間以及設(shè)備與系統(tǒng)的其他部分之間可以互相通信。它基于I2C操作原理。SMBus為系統(tǒng)和電源管理相關(guān)的任務(wù)提供一條控制
    發(fā)表于 03-20 09:01

    PCA9519 4通道I2C-bus SMBus 中繼器

    PCA9519 是一個(gè)4 通道的I2C 總線/SMBus 中繼器,可以實(shí)現(xiàn)將低電壓兩線串行總線接口的處理器與標(biāo)準(zhǔn)的I2C
    發(fā)表于 11-11 13:34 ?19次下載

    PCA9511—熱插拔型I2CSMBus總線緩存器產(chǎn)品數(shù)據(jù)手冊(cè)

    PCA9511 是一款具有雙向緩存功能、支持熱插拔的I2CSMBus 總線緩存器
    發(fā)表于 03-11 16:19 ?28次下載

    PCA9519—4通道I2C-bus SMBus中繼器產(chǎn)品數(shù)據(jù)手冊(cè)

    PCA9519 是一個(gè)4 通道的I2C 總線/SMBus 中繼器,可以實(shí)現(xiàn)將低電壓兩線串行總線接 口的處理器與標(biāo)準(zhǔn)的I2C
    發(fā)表于 03-12 14:18 ?11次下載

    SPI總線I2C總線工作原理

    SPI總線I2C總線工作原理,本內(nèi)容詳細(xì)介紹了SPI總線I2C總線的工作原理和
    發(fā)表于 12-08 16:55 ?0次下載

    CAN、I2S、I2C、SPI、SSP總線的介紹和比較

    CAN、I2S、I2C、SPI、SSP總線的介紹和比較
    發(fā)表于 07-14 16:20 ?53次下載

    MSP430硬件I2C如何實(shí)現(xiàn)SMBus

    該應(yīng)用報(bào)告描述了使用MSP430硬件I2C外圍設(shè)備實(shí)現(xiàn)系統(tǒng)管理總線SMBus)。
    發(fā)表于 05-08 09:34 ?18次下載
    MSP430硬件<b class='flag-5'>I2C</b>如何實(shí)現(xiàn)<b class='flag-5'>SMBus</b>

    LTC4303/LTC4304 - 可恢復(fù)阻塞總線I<sup>2</sup>C/SMBus 緩沖器

    LTC4303/LTC4304 - 可恢復(fù)阻塞總線I2C/SMBus 緩沖器
    發(fā)表于 03-21 02:32 ?9次下載
    LTC4303/LTC4304 - 可恢復(fù)阻塞<b class='flag-5'>總線</b>的 <b class='flag-5'>I</b><sup>2</sup><b class='flag-5'>C</b>/<b class='flag-5'>SMBus</b> 緩沖器

    TCAL9538 8位I2C總線,SMBus I/O擴(kuò)展器數(shù)據(jù)表

    電子發(fā)燒友網(wǎng)站提供《TCAL9538 8位I2C總線,SMBus I/O擴(kuò)展器數(shù)據(jù)表.pdf》資料免費(fèi)下載
    發(fā)表于 06-19 10:04 ?0次下載
    TCAL9538 8位<b class='flag-5'>I2C</b><b class='flag-5'>總線</b>,<b class='flag-5'>SMBus</b> <b class='flag-5'>I</b>/O擴(kuò)展器數(shù)據(jù)表

    TCAL6408 8位轉(zhuǎn)換I2C總線,SMBus I/O擴(kuò)展器數(shù)據(jù)表

    電子發(fā)燒友網(wǎng)站提供《TCAL6408 8位轉(zhuǎn)換I2C總線SMBus I/O擴(kuò)展器數(shù)據(jù)表.pdf》資料免費(fèi)下載
    發(fā)表于 06-19 09:58 ?0次下載
    TCAL6408 8位轉(zhuǎn)換<b class='flag-5'>I2C</b><b class='flag-5'>總線</b>,<b class='flag-5'>SMBus</b> <b class='flag-5'>I</b>/O擴(kuò)展器數(shù)據(jù)表

    TCAL9539-Q1汽車類低壓16位I2C總線SMBus I/O擴(kuò)展器數(shù)據(jù)表

    電子發(fā)燒友網(wǎng)站提供《TCAL9539-Q1汽車類低壓16位I2C總線SMBus I/O擴(kuò)展器數(shù)據(jù)表.pdf》資料免費(fèi)下載
    發(fā)表于 06-19 11:54 ?0次下載
    TCAL9539-Q1汽車類低壓16位<b class='flag-5'>I2C</b><b class='flag-5'>總線</b><b class='flag-5'>SMBus</b> <b class='flag-5'>I</b>/O擴(kuò)展器數(shù)據(jù)表

    TCA39306-Q1雙路雙向I3C、I2C總線SMBus電壓電平轉(zhuǎn)換器數(shù)據(jù)表

    電子發(fā)燒友網(wǎng)站提供《TCA39306-Q1雙路雙向I3C、I2C總線SMBus電壓電平轉(zhuǎn)換器數(shù)據(jù)表.pdf》資料免費(fèi)下載
    發(fā)表于 06-21 11:03 ?0次下載
    TCA39306-Q1雙路雙向<b class='flag-5'>I3C</b>、<b class='flag-5'>I2C</b><b class='flag-5'>總線</b>和<b class='flag-5'>SMBus</b>電壓電平轉(zhuǎn)換器數(shù)據(jù)表

    TCA9509電平轉(zhuǎn)換I2CSMBUS總線中繼器數(shù)據(jù)表

    電子發(fā)燒友網(wǎng)站提供《TCA9509電平轉(zhuǎn)換I2CSMBUS總線中繼器數(shù)據(jù)表.pdf》資料免費(fèi)下載
    發(fā)表于 06-24 10:13 ?0次下載
    TCA9509電平轉(zhuǎn)換<b class='flag-5'>I2C</b>和<b class='flag-5'>SMBUS</b><b class='flag-5'>總線</b>中繼器數(shù)據(jù)表

    具有阻塞總線恢復(fù)功能的TCA4307熱插拔 I2C 總線SMBus緩沖器數(shù)據(jù)表

    電子發(fā)燒友網(wǎng)站提供《具有阻塞總線恢復(fù)功能的TCA4307熱插拔 I2C 總線SMBus緩沖器數(shù)據(jù)表.pdf》資料免費(fèi)下載
    發(fā)表于 06-27 10:39 ?0次下載
    具有阻塞<b class='flag-5'>總線</b>恢復(fù)功能的TCA4307熱插拔 <b class='flag-5'>I2C</b> <b class='flag-5'>總線</b>和 <b class='flag-5'>SMBus</b>緩沖器數(shù)據(jù)表

    TCA9511A熱插拔I2C總線SMBus緩沖器數(shù)據(jù)表

    電子發(fā)燒友網(wǎng)站提供《TCA9511A熱插拔I2C總線SMBus緩沖器數(shù)據(jù)表.pdf》資料免費(fèi)下載
    發(fā)表于 07-02 10:41 ?0次下載
    TCA9511A熱插拔<b class='flag-5'>I2C</b><b class='flag-5'>總線</b>和<b class='flag-5'>SMBus</b>緩沖器數(shù)據(jù)表