電子傳感器市場不斷擴大,年增長率達到兩位數。推動這一增長的主要因素是物聯網設備、移動設備(智能手機和平板電腦)和可穿戴設備中引入的大量傳感器。由于采用了傳感器融合技術,前所未有的應用場景現在成為可能,通過該技術,從多個傳感器獲取的信息被結合起來,以獲得單個傳感器無法獲得的高級聚合信息。最常用于與這些傳感器進行通信和控制的接口是內部集成電路 (I2C),其規范由飛利浦半導體(現為 NXP)于 1982 年推出。另一個常見的接口是 SPI。至于 SPI,它需要四根線,并且由于沒有明確定義的標準,因此具有許多不同的實現方式。
這種在短時間內變得非常流行的接口的主要優點是只需要兩個信號(一個用于數據,一個用于時鐘),可以在同一總線上連接多個設備,并且能夠支持不同的傳輸速率。然而,I2C 接口有一些重要的限制,包括連接到總線的從設備無法啟動通信,需要使用上拉電阻(這會導致功率吸收增加和上升時間變慢),以及限制性能的通信協議。
如今,與傳感器的接口對設計人員來說是一項艱巨的挑戰,要記住市場上有多種接口(I2C、SPI、UART 等),而擁有一個一致且通用的協議(a種通用接口)與各種傳感器進行通信。在本文中,我們將看到一個能夠響應這些需求的接口,它結合了 I2C 和 SPI 的優勢并添加了新功能:I3C 接口,其正式??名稱為 MIPI 聯盟改進的內部集成電路.
I3C接口的目的
在保持向后兼容性的原始 I2C 標準的基礎上,由 MIPI 聯盟標準化的新 I3C接口增加了改進和重要的附加功能,例如多點操作機制。這種創新接口的主要目的是引入一個通用標準來管理與不同類型傳感器的通信,同時確保高性能、低功耗和減少接口引腳的數量。圖1顯示了一個界面的應用圖,我們可以立即看到:
只有兩條線(SDA 和 SCL)的通信總線,與傳統 I2C 中的通信總線完全相同
多種速度通信模式,允許高達 30.3Mbps 的數據數據
帶內中斷和熱連接機制
在同一總線上連接多個主節點的可能性
能夠連接 I3C 和 I2C 從設備(向后兼容)
I3C 接口中引入的新功能之一是連接到總線的每個從設備可以利用用于通信協議的相同 SDA 和 CLK 線生成中斷信號。在這方面,我們談到“帶內”中斷 (IBI),這意味著不需要額外的線路或信號,從而節省成本并簡化連接。以完全類似的方式,可以管理帶內命令代碼。其他顯著特性包括 7 位動態尋址,僅適用于 I3C 設備(仍保留傳統 I2C 接口的靜態尋址)、多主機操作,以及支持總線上的“熱插拔”設備(熱連接功能) . I3C 接口還支持低功耗操作并顯著提高傳輸數據速率,
I3C:技術概述
從電氣角度來看,I3C 接口與 I2C 標準有一些相似之處(例如只有兩條線,SDA 和 SCL),但也有一些顯著差異。首先,數據信號 (SDA) 具有開漏配置(例如,可以通過集電極開路輸出來實現),從而允許從設備控制總線并發送中斷。相反,時鐘信號 (SCL) 可以切換到推挽配置,這允許主設備生成基頻為 12.5 MHz 的時鐘信號。更準確地說,I3C 具有四種數據傳輸模式:SDR 模式下的 12.5 Mbps(默認)和 HDR 模式下的 25、27.5 和 39.5 Mbps。不包括與每個事務相關的控制字節,實際可實現的比特率分別為 11.1、20、23.5 和 33.3 Mbps。
在左側的圖 2 中,我們看到了 I3C(在其不同工作模式下)與傳統 I2C 接口的功耗 (mJ/Mb) 之間的比較。藍色條形圖指的是 3.3-V 總線電源電壓,而紅色條形圖指的是 1.8-V 電源電壓。在圖 2 的右側,分別比較了 I3C 和 I2C 可獲得的原始比特率。對這些圖表的研究表明,即使在兼容的 I2C 模式下,新 I3C 接口也比傳統 I2C 更節能,并且支持超過 33 Mbps 的有效傳輸速度。
帶內中斷
由于 IBI 特性,I3C 標準克服了傳統 I2C 接口的經典限制之一,即從節點不可能在總線上自發地啟動自己的事務。為此,傳統 I2C 和 SPI 接口都需要專用線路,從而增加成本和布線復雜性。另一方面,如果總線處于空閑狀態,則帶內功能允許每個 I3C 從機在它們認為有必要時啟動 START 事務。為此,如果總線可用,則從節點將 SDA 線拉低并等待當前主節點將 SCL 線拉低,從而完成 START 階段。通過在 SCL 線上向從機提供時鐘信號,主機允許后者用自己的地址驅動 SDA 線。如果多個從機試圖同時訪問總線,仲裁電路將優先級分配給地址最低的從機。此時,master 有三個可用的選項:
接受從機的請求,發送一個 ACK?? 并獲取從機傳輸的數據字節。
拒絕來自從站的請求,但不禁用中斷(被動 NACK)。一旦總線可用,從站現在可以重試操作。
通過禁用中斷并發送 NACK 來拒絕來自從站的請求。
從設備使用帶內中斷機制將事件或狀態變化通知主設備。通過這種機制自發發送信息的可能性允許 I3C 傳感器僅在獲得的物理量發生顯著變化時(例如,考慮到檢測到墜落運動的加速度計)向主機傳達獲取的物理量的顯著變化,并且不需要與傳統 I2C 和 SPI 接口一樣的專用中斷線。
熱連接功能
此功能允許 I3C 傳感器在正確配置后連接到總線。在基于傳感器的現代應用中,例如與物聯網相關的多種場景,不僅要確保高性能,還要確保高效運行,從而最大限度地降低傳感器(主要由電池供電)的功耗。由于熱連接功能,傳感器可以在不需要時保持關閉(或處于低功耗狀態),并且僅在數據采集和傳輸的特定時期連接到總線,與“永遠在線”的解決方案。熱加入請求只能由尚未分配動態地址的從站執行。為此,從機使用為此功能保留的物理地址;
同樣重要的是離線功能,它允許從節點變為非活動狀態,然后在稍后恢復正常操作。有兩種離線模式:
從機完全不活動(相當于斷電),只有在某些外部事件發生時才恢復活動;發生這種情況時,從機熱加入總線以獲取新的動態地址。
從機部分處于非活動狀態,從某種意義上說,它繼續監視總線以檢查是否向其發送命令,例如從機復位,從機喚醒并返回操作。
常用命令代碼
一個非常有用的功能是通用命令代碼 (CCC),即主機用來與連接到總線(廣播)的所有從機或特定從機通信的命令。CCC 命令包括標準操作,例如啟用/禁用事件、處理特定 I3C 總線功能(例如,動態尋址和時序控制)或其他總線操作。所有與 CCC 命令相關的代碼均由 MIPI 聯盟定義,部分值保留用于未來擴展。
主控請求
此功能允許輔助主節點在他們打算獲得活動主節點角色時發送主控請求 (MR)。如果請求被當前主控接受,則主控權從后者轉移到次主控。
通訊方式
I3C接口為用戶提供了多種通信方式,可分為以下幾種:
單一數據速率 (SDR) 是與傳統 I2C 接口的消息交換兼容的模式,提供高達 12.5 .MHz 的數據速率
高數據速率 (HDR) 包括幾種與 I2C 不兼容的消息交換模式。在 SDR 和 HDR 操作模式下,SDA 引腳用作雙向數據信號。第二個引腳在 SDR 和 HDR-DDR 模式下用作時鐘信號 (SCL),在 HDR-TSL 和 HDR-TSP 協議通信模式下用作雙向數據信號。
SDR 模式支持不同類型的消息,例如標準 I2C 消息、廣播消息和 CCC 消息,允許主機與總線上的所有設備通信并處理從機轉發的請求(例如,帶內中斷或假設請求主人的角色)。有兩種主要的 HDR 模式:HDR-DDR(雙倍數據速率)和 HDR-TSL/TSP(三元符號),它們提供高于 33 Mbps 的比特率,而在快速模式(400 kHz )。HDR-DDR 可用于與 MIPI I3C 從設備通信,允許將傳統 I2C 設備連接到同一總線上,這將忽略高速 MIPI I3C HDR 廣播。HDR-DDR 模式使用 SCL 信號作為時鐘,數據位在 SCL 兩側同步。另一方面,HDR-TSL/TSP 模式允許三元符號編碼(即,用于 I3C (TSP) 和 I2C-legacy inclusive (TSL) MIPI 系統的三位數基本代碼。HDR-TSL 使用 SCL 和 SDA 作為數據線,其中每個周期必須至少傳輸一條線。轉換索引用于將二進制符號的傳輸編碼為三進制,以實現以非常低的功率進行高速傳輸。
圖 :進入 HDR 模式 CCC 總線模式
與 I2C(和 SPI)的主要區別
由于使用推挽(而不是開漏)和強上拉信號,所有 I3C 模式提供的每比特傳輸功耗低于 I2C。此外,I3C 可以通過使用更高的數據速率(結合深度睡眠模式)、IBI 以及從設備在 I3C 總線上正常運行的同時禁用所有內部時鐘的能力來進一步節省功耗。在傳統 I2C 中,時鐘延長(從機將時鐘保持在低電平,使其停止運行)通常會導致嚴重的問題,包括總線卡住。這不會發生在 I3C 總線上,因為只有主機可以驅動時鐘,而從機在 SDA 上執行與該時鐘相關的所有操作,從而消除了掛起的風險。還應該注意的是,I3C 規范的下一個修訂版將包括一個從機復位功能,用于復位無響應的 I3C 從機。I3C 旨在解決這個問題,
審核編輯:湯梓紅
評論
查看更多