1. 程式人生 > >I3C 總線協議詳細解析(第一章)

I3C 總線協議詳細解析(第一章)

同時 ble 如果 數據 結構 一中 替換 erro 移動設備

目前隨著手機等移動設備包含的sensor越來越多,傳統應用在sensor上的I2C/SPI接口的局限性也越來越明顯,典型的缺陷如下:

1、sensor等設備的增加,對控制總線的速度和功耗提出了更加嚴苛的要求;

2、雖然I2C是一中2線接口,但是往往此類device需要額外增加一條中斷INT信號線;

處於解決上述問題的原因,推出了I3C的接口總線和協議,下面一起來看下I3C總線的特性。

一、I3C的應用場景

技術分享圖片

從上圖中我們可以看到:

1、I3C總線可以應用在各種sensor中;

2、可以使用在任何傳統的I2C/SPI/UART等接口的設備中。

二、什麽是I3C

技術分享圖片

I3C吸納了I2C和SPI的關鍵特性,並將其統一起來,同時在I2C的基礎上,保留了2線的串行接口結構,這樣工程師就可以在單個設備中連接大量的傳感器。

從上圖中我們可以將特性具體一下:

1、I3C總線可以支持multi-master即多主設備

2、I3C總線與傳統的I2C設備仍然是兼容的

3、可以支持軟中斷

4、相比較於I2C總線的功耗更低

5、速度更快,可以支持到12.5MHZ

從下圖中可以看到在傳統的I2C接口設備中包含了太多的I/0口了,將之(I2C/SPI)替換成I3C之後可以節省很大部分的信號線的開銷,在布局布線時也更方便.

技術分享圖片

按照目前MIPI聯盟的規劃,I3C總線在將來除了應用sensor之外,還有如下的應用領域:camera、TP等

技術分享圖片

三、I3C接口協議

技術分享圖片

從上圖就可以很清楚的看到I3C總線的應用了,I3C總線中支持多主設備,同時兼容I2C。

其中支持設備的具體類型有:

1、I3C主設備

-----SDR-only master

2、I3C secondary MASTER

-----SDR-only secondary master(註意是slave of main master,即相比較主設備而言仍然時從設備)

3、I3C 從設備

-----SDR only slave

4、I2C slave

技術分享圖片

技術分享圖片

上圖為I3C的串行clk和data傳輸的波形,註意下方的標註:SDA的接口為開漏結構,而SCL的接口為推挽結構!

四、I3C特性詳細介紹

1、SDR動態地址分配

---I3C可以為所有的I3C從設備動態的分配7-bit address(註:在I3C從設備中會有兩個standardized characteristics register和內部的48-bit的臨時ID去協助此過程,具體咋協助俺還不知道)

---仍然支持I2C的靜態地址

2、SDR的帶內中斷

---在“bus available(總線空閑)”的狀態下,從設備可以發出“START"請求信號;

---當主設備接收到請求信號後,主設備發出時鐘信號並將分配的地址驅動到總線上,然後從設備響應地址(為防止理解問題,英文描述如下)

---如果此時有多個從設備響應中斷,那麽分配的地址中最低的一個設備將會贏得仲裁

---數據載荷(即強制數據位)可以和帶內中斷一起使用(???未明白,後面填坑)

技術分享圖片

3、error detection and recovery methodology(錯誤檢測和恢復方法)

---主要針對master 和slave產生的錯誤(9種錯誤類型:奇偶性、循環冗余校驗CRC5)

4、common command codes(公共命令碼)

技術分享圖片

技術分享圖片

技術分享圖片

技術分享圖片

技術分享圖片

技術分享圖片

技術分享圖片

技術分享圖片

技術分享圖片

I3C 總線協議詳細解析(第一章)