SMBus與I2C的差別
The I2C bus and the SMBus are popular 2-wire buses that areessentially compatible with each other.
-- | 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 |
SMBus與I2C的差別
詳細參考: SMBus與I2C的區別
SMbus 最早是由 Intel 公司提出來的. 現在由 SBS 管理維護這一個規格. 此規格是用 Philips 的 I2C 簡化而來. SMbus 是由兩條訊號所組成的一種匯流排. 是為了在系統上較慢速的裝置及電源管理裝置之間的溝通使用. 使系統可取得這些裝置的制造廠商,型號,一些控制資訊,錯誤訊息及狀態.
運作頻率
先以運作頻率來說,I2C此方面相當寬裕,最低頻可至0Hz(直流狀態,等於時間暫停),高可至100kHz(Standard Mode)、400kHz(Fast Mode)、乃至3.4MHz(High Speed Mode),相對的SMBus就很拘限,最慢不慢於10kHz,最快不快於100kHz。很明顯的,I2C與SMBus的交集運作頻率即是10kHz~100kHz間。
數據停留時間
傳速要求之後還有數據停留時間(Data Hold Time)的要求,SMBus規定SMBCLK線路的準位下降後,SMBDAT上的資料必須持續保留300nS,但I2C卻沒有對此有相同的強制要求。類似的,SMBus對介面被重置(Reset)後的恢復時間(Timeout)也有要求,一般而言是35mS,I2C這方面亦無約束,可以任意延長時間。相同的SMBus也要求無論是在主控端(Master)或受控端(Slave),其時脈處於Lo準位時的最長持續時間不得超越限制,以免因為長時間處在Lo準位,而致收發兩端時序脫軌(失去同步,造成後續誤動作)。
電流限制
既然對電流有限制,那麼也可容易地推斷對提升電阻的阻值之範圍要求,I2C在5V Vdd時當大於1.6k ohm,在3V Vdd時當大於1k ohm,類似的SMBus於5V Vdd時當大於14k ohm,3V Vdd時當大於8.5k ohm,不過這個定義並非牢不可破,就一般實務而言,在SMBus上也可用2.4k~3.9k ohm範疇的阻值。
電容限制
再者是相關限制,I2C有線路電容的限制,SMBus卻沒有,但也有相類似的配套規範,即是準位下拉時的電流限制,當SMBus的開集極接腳導通其閘極而使線路接地時,流經接地的電流不得高於350uA,另外拉升電流(即相同的開集極接腳開路時)也一樣有規範,最小不低於100uA,最高也是不破350uA。
其他
由於看不是很懂,所以直接看鏈接上的內容吧。
SMBus與I2C的差別