TW202213115A - 相位差分協定的錯誤訊號傳遞窗口 - Google Patents
相位差分協定的錯誤訊號傳遞窗口 Download PDFInfo
- Publication number
- TW202213115A TW202213115A TW110128508A TW110128508A TW202213115A TW 202213115 A TW202213115 A TW 202213115A TW 110128508 A TW110128508 A TW 110128508A TW 110128508 A TW110128508 A TW 110128508A TW 202213115 A TW202213115 A TW 202213115A
- Authority
- TW
- Taiwan
- Prior art keywords
- error
- signaling
- serial bus
- indicator
- window
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/3027—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a bus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0751—Error or fault detection not based on redundancy
- G06F11/0754—Error or fault detection not based on redundancy by exceeding limits
- G06F11/0757—Error or fault detection not based on redundancy by exceeding limits by exceeding a time limit, i.e. time-out, e.g. watchdogs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0766—Error or fault reporting or storing
- G06F11/0772—Means for error signaling, e.g. using interrupts, exception flags, dedicated error registers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
- G06F11/1012—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using codes or arrangements adapted for a specific type of error
- G06F11/102—Error in check bits
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
- G06F13/4291—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus using a clocked protocol
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L25/00—Baseband systems
- H04L25/38—Synchronous or start-stop systems, e.g. for Baudot code
- H04L25/40—Transmitting circuits; Receiving circuits
- H04L25/49—Transmitting circuits; Receiving circuits using code conversion at the transmitter; using predistortion; using insertion of idle bits for obtaining a desired frequency spectrum; using three or more amplitude levels ; Baseband coding techniques specific to data transmission systems
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Information Transfer Systems (AREA)
Abstract
描述了用於串列匯流排上的錯誤訊號傳遞的系統、方法和裝置。一種裝置包括匯流排介面、相位差分解碼器和處理器。匯流排介面被配置為將裝置耦合到串列匯流排。相位差分解碼器被配置為從符號序列中的符號對之間的轉變中解碼資料,該符號序列從串列匯流排被接收,每個符號表示串列匯流排的訊號傳遞狀態。處理器被配置為:在串列匯流排的兩個線的訊號傳遞狀態中偵測錯誤訊號傳遞窗口的指示符,錯誤訊號傳遞窗口的指示符對應於被禁止的符號組合或控制訊號傳遞的延遲;並且當在符號序列中或在錯誤訊號傳遞窗口的指示符的時序中偵測到錯誤時,在錯誤訊號傳遞窗口期間經由匯流排介面發信號通知錯誤。
Description
相關申請的交叉引用/優先權聲明
本專利申請案請求於2020年9月21日在美國專利商標局提交的待決的第17/027,541號非臨時申請的優先權和利益。
本案大體係關於處理電路與周邊設備之間的串列匯流排介面,並且更特定言之係關於偵測和報告經由串列匯流排傳輸的符號序列中的錯誤或從符號序列中解碼的資料的錯誤。
行動通訊設備可以包括各種部件,包括電路板、積體電路(IC)設備及/或片上系統(SoC)設備。這些部件可以包括經由共享共享資料通訊匯流排進行通訊的處理設備、使用者介面部件、儲存裝置和其他周邊部件,共享共享資料通訊匯流排可以包括多點串列匯流排或並行匯流排。業內已知的通用序列介面包括積體電路間(I2C或I²C)序列介面及其衍生產品和備選產品。
行動行業處理器介面(MIPI)聯盟定義了用於改進型積體電路間(I3C)序列介面、射頻前端(RFFE)介面、系統電源管理介面(SPMI)和其他介面的標準。例如,這些介面可以用於連接處理器、傳感器和其他周邊設備。在一些介面中,多個匯流排主設備耦合到串列匯流排,使得兩個或更多設備可以用作在串列匯流排上傳輸的不同類型的訊息的匯流排主設備。SPMI協定定義了可以在基頻或應用處理器與周邊部件之間實現的硬體介面。在某些情況下,實現SPMI協定以支援設備內的電源管理操作。
習知I3C協定通常用於控制串列匯流排上的半雙工操作。對更高輸送量的需求可以經由使用更高時鐘速率或其他編碼方案來滿足。在很多習知系統中,半雙工串列匯流排上的錯誤報告可能會導致資料率衝突,並且針對在編碼塊或訊號傳遞序列中傳輸資料的某些編碼方案。
本案的某些態樣涉及在資料串流內提供預定義模式的系統、裝置、方法和技術,該預定義模式可以由接收設備明確標識並且提高高速通訊介面的完整性,包括涉及相位差分編碼的介面。
在本案的各個態樣中,一種用於在耦合到串列匯流排的設備處接收資料的方法包括:接收符號序列,每個符號表示串列匯流排的訊號傳遞狀態;從符號序列中的符號對之間的轉變中解碼資料;在串列匯流排的兩個線的訊號傳遞狀態中偵測錯誤訊號傳遞窗口的指示符,錯誤訊號傳遞窗口的指示符對應於被禁止的符號組合或控制訊號傳遞的延遲;及當在符號序列中或在錯誤訊號傳遞窗口的指示符的時序中偵測到錯誤時,在錯誤訊號傳遞窗口期間發信號通知錯誤。
在本案的各個態樣中,一種裝置包括匯流排介面、相位差分解碼器和處理器。匯流排介面被配置為將該裝置耦合到串列匯流排。相位差分解碼器被配置為從符號序列中的符號對之間的轉變中解碼資料,符號序列從串列匯流排被接收,每個符號表示串列匯流排的訊號傳遞狀態。處理器被配置為:在串列匯流排的兩個線的訊號傳遞狀態中偵測錯誤訊號傳遞窗口的指示符,錯誤訊號傳遞窗口的指示符對應於被禁止的符號組合或控制訊號傳遞的延遲;並且當在符號序列中或在錯誤訊號傳遞窗口的指示符的時序中偵測到錯誤時,在錯誤訊號傳遞窗口期間經由匯流排介面發信號通知錯誤。
在本案的各個態樣中,一種計算機可讀取媒體儲存代碼、指令及/或資料,包括在由處理器執行時使處理器進行以下操作的代碼:接收符號序列,每個符號表示串列匯流排的訊號傳遞狀態;從符號序列中的符號對之間的轉變中解碼資料;在串列匯流排的兩個線的訊號傳遞狀態中偵測錯誤訊號傳遞窗口的指示符,錯誤訊號傳遞窗口的指示符對應於被禁止的符號組合或控制訊號傳遞的延遲;及當在符號序列中或在錯誤訊號傳遞窗口的指示符的時序中偵測到錯誤時,在錯誤訊號傳遞窗口期間發信號通知錯誤。
在本案的各個態樣中,一種裝置包括:用於接收符號序列的構件,每個符號表示串列匯流排的訊號傳遞狀態;用於從符號序列中的符號對之間的轉變中解碼資料的構件;用於在串列匯流排的兩個線的訊號傳遞狀態中偵測錯誤訊號傳遞窗口的指示符的構件,錯誤訊號傳遞窗口的指示符對應於被禁止的符號組合或控制訊號傳遞的延遲;及用於當在符號序列中或在錯誤訊號傳遞窗口的指示符的時序中偵測到錯誤時在錯誤訊號傳遞窗口期間發信號通知錯誤的構件。
在本案的各個態樣中,一種用於從耦合到串列匯流排的設備傳輸資料的方法包括:將資料編碼在符號序列中的符號對之間的轉變中,每個符號定義串列匯流排的訊號傳遞狀態;經由串列匯流排傳輸符號序列;在串列匯流排的兩個線的訊號傳遞狀態中傳輸錯誤訊號傳遞窗口的指示符,錯誤訊號傳遞窗口的指示符對應於被禁止的符號組合或控制訊號傳遞的延遲;在錯誤訊號傳遞窗口中接收指示符號序列中的錯誤或錯誤訊號傳遞窗口的指示符的時序中的錯誤的訊號傳遞;及當在錯誤訊號傳遞窗口中接收到指示錯誤的訊號傳遞時,終止資料的傳輸。
在本案的各個態樣中,一種裝置包括匯流排介面、相位差分編碼器和處理器。匯流排介面被配置為將該裝置耦合到串列匯流排。相位差分編碼器被配置為將資料編碼在符號序列中的符號對之間的轉變中,每個符號定義串列匯流排的訊號傳遞狀態。處理器被配置為:在串列匯流排的兩個線的訊號傳遞狀態中傳輸錯誤訊號傳遞窗口的指示符,錯誤訊號傳遞窗口的指示符對應於被禁止的符號組合或控制訊號傳遞的延遲;在錯誤訊號傳遞窗口中接收指示符號序列中的錯誤或錯誤訊號傳遞窗口的指示符的時序中的錯誤的訊號傳遞;並且當在錯誤訊號傳遞窗口中接收到指示錯誤的訊號傳遞時,終止資料的傳輸。
在本案的各個態樣中,一種計算機可讀取媒體儲存代碼、指令及/或資料,包括在由處理器執行時使處理器進行以下操作的代碼:將資料編碼在符號序列中的符號對之間的轉變中,每個符號定義串列匯流排的訊號傳遞狀態;經由串列匯流排傳輸符號序列;在串列匯流排的兩個線的訊號傳遞狀態中傳輸錯誤訊號傳遞窗口的指示符,錯誤訊號傳遞窗口的指示符對應於被禁止的符號組合或控制訊號傳遞的延遲;在錯誤訊號傳遞窗口中接收指示符號序列中的錯誤或錯誤訊號傳遞窗口的指示符的時序中的錯誤的訊號傳遞;及當在錯誤訊號傳遞窗口中接收到指示錯誤的訊號傳遞時,終止資料的傳輸。
在本案的各個態樣中,一種用於管理在串列匯流排上執行的交易的裝置包括:用於將資料編碼在符號序列中的符號對之間的轉變中的構件,每個符號定義串列匯流排的訊號傳遞狀態;用於經由串列匯流排傳輸符號序列的構件;用於在串列匯流排的兩個線的訊號傳遞狀態中傳輸錯誤訊號傳遞窗口的指示符的構件,錯誤訊號傳遞窗口的指示符對應於被禁止的符號組合或控制訊號傳遞的延遲;用於在錯誤訊號傳遞窗口中接收指示符號序列中的錯誤或錯誤訊號傳遞窗口的指示符的時序中的錯誤的訊號傳遞的構件;及用於當在錯誤訊號傳遞窗口中接收到指示錯誤的訊號傳遞時終止資料的傳輸的構件。
下面結合附圖闡述的詳細描述旨在作為對各種配置的描述,而非旨在表示可以實踐本文中描述的概念的唯一配置。詳細描述包括用於提供對各種概念的透徹理解的特定細節。然而,對於本領域技藝人士很清楚的是,可以在沒有這些具體細節的情況下實踐這些概念。在某些情況下,眾所周知的結構和部件以方塊圖形式示出以避免混淆這些概念。
現在將參考各種裝置和方法呈現若干態樣和特徵。這些裝置和方法將在下面的詳細描述中進行描述,並且在附圖中經由各種方塊、模組、部件、電路、步驟、程序、演算法等(統稱為「元素」)進行說明。這些元素可以使用電子硬體、計算機軟體或其任何組合來實現。這些元素實現為硬體還是軟體取決於特定應用和對整個系統施加的設計約束。
概述
包括專用IC(ASIC)設備、SoC及/或其他IC設備在內的設備通常採用共享通訊介面,該共享通訊介面可以包括串列匯流排或其他資料通訊鏈路,以將處理器與數據機以及其他周邊設備連接。串列匯流排可以根據由標準機構定義的規範和協定進行操作。在本文中揭露的某些實現中,串列匯流排根據諸如I2C及/或I3C協定等協定進行操作,這些協定定義了經由串列匯流排傳輸的信號之間的時序關係。本文中揭露的某些態樣涉及為從設備提供用於在交易被完全傳輸之前報告同位錯誤的機會的系統、裝置、方法和技術。
本案的某些態樣涉及經由串列匯流排來傳輸和接收相位差分編碼信號的設備。在一個示例中,接收設備可以接收符號序列,每個符號表示串列匯流排的訊號傳遞狀態,從符號序列中的符號對之間的轉變中解碼資料,在串列匯流排的兩個線的訊號傳遞狀態中偵測錯誤訊號傳遞窗口的指示符,錯誤訊號傳遞窗口的指示符對應於被禁止的符號組合或控制訊號傳遞的延遲,當在符號序列中或在錯誤訊號傳遞窗口的指示符的時序中偵測到錯誤時,在錯誤訊號傳遞窗口期間發信號通知錯誤。
具有串列資料鏈路的設備的示例
根據本案的某些態樣,可以採用串列資料鏈路來互連電子設備,該電子設備是諸如以下各項等的裝置的子部件:蜂巢式電話、智慧電話、通信期發起協定(SIP)電話、膝上型計算機、筆記本、小筆電、智慧本、個人數字助理(PDA)、衛星無線電、全球定位系統(GPS)設備、智慧家居設備、智慧照明、多媒體設備、視訊設備、數字音訊播放機(例如,MP3播放機)、相機、遊戲機、娛樂設備、車輛部件、可穿戴計算設備(例如,智慧手錶、健康或健身追蹤器、眼鏡等)、電器、傳感器、安全設備、自動售貨機、智慧儀表、無人機、多旋翼飛行器或任何其他類似功能的設備。
圖1圖示採用資料通訊匯流排的裝置100的示例。裝置100可以包括處理電路102,處理電路102具有多個電路及/或設備104、106及/或108,該電路及/或設備可以例如在一或多個ASIC或SoC中實現。在一個示例中,裝置100可以是通訊設備,並且處理電路102可以包括設置在ASIC 104中的處理設備、一或多個周邊設備106、以及收發器108,收發器108使得該裝置能夠經由天線124與無線電存取網路、核心存取網路、網際網路及/或另一網路通訊。
ASIC 104可以具有一或多個處理器112、一或多個數據機110、板載記憶體114、匯流排介面電路116、及/或其他邏輯電路或功能。處理電路102可以由作業系統控制,該作業系統可以提供應用程式化介面(API)層,API層使得一或多個處理器112能夠執行常駐在板載記憶體114中或被設置在處理電路102上的其他處理器可讀儲存裝置122中的軟體模組。軟體模組可以包括儲存在板載記憶體114或處理器可讀儲存裝置122中的指令和資料。ASIC 104可以存取其板載記憶體114、處理器可讀儲存裝置122、及/或在處理電路102外部的儲存裝置。板載記憶體114、處理器可讀儲存裝置122可以包括可以用於處理系統和計算平臺中的非暫態媒體,諸如唯讀記憶體(ROM)、隨機存取記憶體(RAM)、電可抹除可程式化ROM(EEPROM)、閃存卡或其他類型的記憶體設備。處理電路102可以包括、實現或能夠存取本端資料庫或其他參數儲存裝置,本端資料庫或其他參數儲存裝置可以維持用於配置和操作裝置100及/或處理電路102的操作參數和其他資訊。本端資料庫可以使用暫存器、資料庫模組、閃存、磁性媒體、EEPROM、軟碟或硬碟等實現。處理電路102還可以可操作地耦合到外部設備,諸如天線124、顯示器126、操作員控制項和其他部件。操作員控制項可以包括開關或按鈕128、130及/或整合或外部鍵盤132。使用者介面模組可以被配置為經由專用通訊鏈路或經由一或多個串列資料互連來操作顯示器126、外部鍵盤132等。
處理電路102可以提供使得某些設備104、106及/或108能夠通訊的一或多個匯流排118a、118b、120。在一個示例中,ASIC 104可以包括匯流排介面電路116,匯流排介面電路116包括電路、計數器、時序器、控制邏輯以及其他可配置電路或模組的組合。在一些情況下,匯流排介面電路116可以被配置為根據標準定義的通訊規範或協定進行操作。處理電路102可以包括或控制用於配置和管理裝置100的操作的電源管理功能。
圖2圖示通訊鏈路200,在通訊鏈路200中使用串列匯流排202連接多個設備204、206、208、210、212、214和216 。在一個示例中,設備204、206、208、210、212、214和216可以被適配或配置為根據I3C協定經由串列匯流排202進行通訊。在一些情況下,設備204、206、208、210、212、214和216中的一或多個設備可以備選地或另外地使用其他協定進行通訊,例如包括I2C協定。
串列匯流排202上的通訊可以由主設備204控制。在一種操作模式下,主設備204可以被配置為提供用於控制資料信號的時序的時鐘信號。在另一操作模式下,設備204、206、208、210、212、214和216中的兩個或更多個設備可以被配置為交換被編碼在定義時鐘和資料信號的訊號傳遞狀態的符號中的資料,其中時序資訊嵌入在符號的傳輸中。
圖3圖示包括耦合到串列匯流排320的多個設備302和322
0-322
N的裝置300的某些態樣。設備302和322
0-322
N可以設置在一或多個半導體IC設備中,諸如應用處理器、SoC或ASIC。在各種實現中,設備302和322
0-322
N可以包括、支援以下各項或作為其進行操作:數據機、信號處理設備、顯示驅動器、相機、使用者介面、傳感器、傳感器控制器、媒體播放機、收發器及/或其他此類部件或設備。在一些示例中,從設備322
0-322
N中的一或多個從設備可以用於控制、管理或監測傳感器設備。設備302與322
0-322
N之間的、經由串列匯流排320進行的通訊由匯流排主設備302控制。某些類型的匯流排可以支援多個匯流排主設備302。
在一種實現中,匯流排主設備302包括介面控制器304,介面控制器304管理對串列匯流排的存取,為從設備322
0-322
N配置動態位址及/或產生要在串列匯流排320的時鐘線318上傳輸的時鐘信號328。匯流排主設備302可以包括配置暫存器306或其他儲存裝置324、及/或被配置為處理協定或高級功能的控制邏輯312。控制邏輯312可以包括處理電路,諸如狀態機、定序器、信號處理器或通用處理器。匯流排主設備302包括收發器310以及線路驅動器/接收器314a和314b。收發器310可以包括接收器、傳輸器和共用電路,其中共用電路可以包括時序、邏輯電路及/或儲存設備。在一個示例中,傳輸器基於由時鐘產生電路308提供的時鐘信號328中的時序來編碼和傳輸資料。可以提供其他時序時鐘信號326以用於控制邏輯312和其他功能、電路或模組的使用。
至少一個設備322
0-322
N可以被配置為作為串列匯流排320上的從設備進行操作,並且可以包括支援顯示器、圖像傳感器的電路和模組、及/或控制用於測量環境條件的一或多個傳感器並且與其通訊的電路和模組。在一個示例中,被配置為作為從設備進行操作的從設備322
0可以提供控制功能、模組或電路332,電路332包括用於支持顯示器、圖像傳感器的電路和模組、及/或控制用於測量環境條件的一或多個傳感器並且與其通訊的電路和模組。從設備322
0可以包括配置暫存器334或其他儲存裝置336、控制邏輯342、收發器340和線路驅動器/接收器344a和344b。控制邏輯342可以包括處理電路,諸如狀態機、定序器、信號處理器或通用處理器。收發器310可以包括接收器、傳輸器和共用電路,其中共用電路可以包括時序、邏輯電路及/或儲存設備。在一個示例中,傳輸器基於由時鐘產生及/或恢復電路346提供的時鐘信號348中的時序來編碼和傳輸資料。時鐘信號348可以從時鐘線318接收的信號中導出。其他時序時鐘信號338可以被提供用於控制邏輯342和其他功能、電路或模組的使用。
串列匯流排320可以根據I2C、I3C、RFFE、SPMI或其他協定進行操作。至少一個設備302、322
0-322
N可以被配置為作為串列匯流排320上的主設備和從設備進行操作。兩個或更多個設備302、322
0-322
N可以被配置為作為串列匯流排320上的主設備進行操作。
在一個示例中,串列匯流排320可以根據I3C協定進行操作。使用I3C協定進行通訊的設備可以與使用I2C協定進行通訊的設備共存於相同的串列匯流排320上。I3C協定可以支援不同通訊模式,包括與I2C協定相容的單資料率(SDR)模式。高資料率(HDR)模式可以提供在6兆位元每秒(Mbps)至16Mbps之間的資料傳輸速率,並且某些HDR模式可以提供更高資料傳輸速率。I2C協定可以符合事實上的I2C標準,以提供範圍可以在100千位元每秒(kbps)至3.2Mbps之間的資料率。除了資料格式和匯流排控制的態樣,I2C和I3C協定可以為在2線串列匯流排320上傳輸的信號定義其他電氣和時序態樣。在一些態樣中,I2C和I3C協定可以定義影響與串列匯流排320相關聯的某些信號位準的直流(DC)特性、及/或影響在串列匯流排320上傳輸的信號的某些時序態樣的交流(AC)特性。在一些示例中,2線串列匯流排320在資料線316上傳輸資料,並且在時鐘線318上傳輸時鐘信號。在一些情況中,資料可以被編碼在訊號傳遞狀態中,或者被編碼在資料線316和時鐘線318的訊號傳遞狀態的轉變中。
在一些實現中,上拉/下拉電路350可以被耦合到資料線316及/或時鐘線318以在沒有設備主動驅動相關聯的線路時維持串列匯流排320的訊號傳遞狀態,包括在第一設備停止驅動線路並且在第二設備開始主動驅動線路之前的線路轉變期間。上拉/下拉電路350可以使用多種電路來實現。在所示示例中,上拉/下拉電路350包括電阻器354,電阻器354可以經由開關352耦合到電壓源。在一個示例中,電壓源可以提供與為串列匯流排320而定義的兩個二進位訊號傳遞狀態中的一個訊號傳遞狀態相對應的電壓。在一些情況下,開關352可以實現為適當配置的電晶體。在一些情況下,上拉/下拉電路350直接耦合到電壓源,並且開關352將上拉/下拉電路350耦合到資料線316或時鐘線318。
在一些實現中,保持電路360可以被配置為正反饋電路,正反饋電路經由高阻抗輸出來驅動資料線316及/或時鐘線318,並且經由低阻抗輸入從資料線316及/或時鐘線318接收反饋。保持電路360可以被配置為維持線路上的最後斷言的訊號傳遞狀態。保持電路360的輸出可以很容易被主設備302或從設備322
0-322
N中的線路驅動器解決。
串列匯流排上的資料傳輸
以示例的方式示出使用I2C和I3C協定來控制訊號傳遞、命令和有效載荷傳輸的資料傳輸。然而,本文中揭露的某些概念適用於其他匯流排配置和協定,包括RFFE和SPMI配置和協定。在一個示例中,可以根據以三元符號(HDR-TSP)對資料進行編碼的I3C HDR協定來傳輸資料,並且可以根據HDR-TSP字來定義HDR-TSP時槽,其中每個時槽可以表示為一組六個連續恢復時鐘脈衝,這與用於HDR-TSP字的時鐘脈衝數相同。在另一示例中,可以根據I3C HDR雙倍資料速率(HDR-DDR)協定傳輸資料,其中時槽可以根據HDR-DDR字來定義及/或表示為用於傳輸HDR-DDR字的時鐘脈衝數。
圖4圖示與根據某些I2C及/或I3C協定發送到從設備的位址字相關聯的時序400的示例。在該示例中,主設備以開始條件406發起交易,由此SDA線402從高被驅動到低同時SCL線保持為高。主設備然後在SCL線404上傳輸時鐘信號。然後在SDA線402上傳輸從設備的七位元位址410。七位元位址410之後是寫/讀命令位元412,寫/讀命令位元412在為低時指示「寫入」並且在為高時指示「讀取」。經由將SDA線402驅動為低,從設備可以在下一時鐘間隔414中用ACK進行響應。如果從設備沒有響應,則SDA線402被拉高並且主設備將沒有響應視為NACK。主設備可以經由在SCL線404為高的同時將SDA線402從低被驅動到高來以停止條件408終止交易。該交易可以用於決定具有耦合到串列匯流排的傳輸位址的從設備是否處於活動狀態。
圖5圖示當串列匯流排以由I3C規範定義的單資料率(SDR)操作模式進行操作時串列匯流排上的訊號傳遞500。在串列匯流排的第一線(可以稱為資料線502、SDA或SDATA)上傳輸的資料可以使用在串列匯流排的第二線(可以稱為時鐘線504、SCL或SCLOCK)上傳輸的時鐘信號來擷取。在資料傳輸期間,當時鐘線504處於高電壓位準時,預期資料線502的訊號傳遞狀態512在脈衝514的持續時間內保持恆定。當時鐘線504處於高電壓位準時,資料線502上的轉變指示開始條件506、停止條件508或重複開始510。
在I3C串列匯流排上,開始條件506被定義為允許當前匯流排主設備發信號通知資料將被傳輸。當資料線502從高轉變為低同時時鐘線504為高時,開始條件506發生。匯流排主設備可以使用停止條件508發信號通知傳輸的完成及/或終止。停止條件508在資料線502從低轉變為高而時鐘線504為高時被指示。重複開始510可以由希望在第一傳輸完成時發起第二傳輸的匯流排主設備傳輸。傳輸重複開始510而不是停止條件508,並且重複開始510具有停止條件508之後緊接著的是開始條件506的意義。當資料線502從高轉變為低同時時鐘線504為高時,重複開始510發生。
匯流排主設備可以在傳輸從設備的位址、命令及/或資料之前傳輸可以是開始條件506或重複開始510的發起符(initiator)522。圖5圖示由匯流排主設備進行的命令代碼傳輸520。在傳輸中,發起符522之後可以是預定義位址標頭524和命令代碼526。例如,命令代碼526可以使串列匯流排轉變到期望操作模式。在一些情況下,可以傳輸資料528。命令代碼傳輸520之後可以是終止符530,終止符530可以是停止條件508或重複開始510。
某些串列匯流排介面支援能夠提供更高資料率的訊號傳遞方案。在一個示例中,I3C規範定義了多種HDR模式,包括HDR-DDR模式,在HDR-DDR模式下,資料在時鐘信號的上升沿和下降沿兩者進行傳輸。
I3C匯流排可以在SDR模式與DDR模式之間進行切換。圖5包括在資料線502和時鐘線504上傳輸的、用於發起某些模式改變的訊號傳遞540的示例。訊號傳遞540由I3C協定定義,訊號傳遞540用於發起重啟、退出及/或中斷I3C HDR通訊模式。訊號傳遞540包括可以用於使HDR中斷或退出的HDR退出542。HDR退出542以時鐘線504上的下降沿544開始,並且以時鐘線504上的上升沿546結束。當時鐘線504處於低訊號傳遞狀態時,在資料線502上傳輸四個脈衝。當時鐘線504上沒有提供脈衝時,I2C設備忽略資料線502。
圖6和7包括時序圖,該時序圖圖示當匯流排主設備從從設備進行讀取時在串列匯流排上傳輸的訊框600、700。串列匯流排具有時鐘線(SCL 602、702)和資料線(SDA 604、704)。在SCL 602、702上傳輸的時鐘信號620、720提供可以在串列匯流排以I3C單資料率(SDR)模式和以I3C HDR-DDR模式進行操作時使用的時序資訊。時鐘信號包括由上升沿624、724和下降沿626、726定義的脈衝622、628、722、728。匯流排主設備在SCL 602、702上傳輸時鐘信號,而不管串列匯流排上的資料的流動方向如何。
圖6圖示在串列匯流排以I3C SDR模式進行操作的同時傳輸的訊框600。在每個訊框600中傳輸單個位元組的資料606。在SDA 604上傳輸的資料信號預期在時鐘信號620中的脈衝628的高狀態的持續時間內是穩定的,並且在一個示例中,SDA 604的狀態在時鐘脈衝628的下降沿被採樣。資料606的每個位元組之後是可以用作同位位元或轉變位元(T位元)的位元608。
圖7圖示在串列匯流排以HDR-DDR模式進行操作的同時傳輸的訊框700。在HDR-DDR模式下,資料在時鐘信號720中的脈衝722的上升沿724和下降沿726進行傳輸。接收器在時鐘信號720中的脈衝728的每個沿處採樣或擷取SDA 704上的一位元資料。在HDR-DDR模式下,在每個訊框700中傳輸2位元組的資料字708。資料字708大體包括被組織為兩個8位元位元組714、716的16個有效載荷位元,並且資料字708之前是兩位元的前序信號706,並且之後是兩個同位位元712。訊框700中的20個位元可以在10個時鐘脈衝的沿上傳輸。傳輸的完整性可以經由同位位元712的傳輸來保護。
MIPI I3C介面的靈活性、匯流排管理特徵和能量效率已經將I3C協定提升到用於序列介面的優選狀態。習知I3C介面可以提供高達100Mbps的有效資料輸送量。I3C介面用於各種不同類型的應用。某些應用對提高資料傳輸速率和降低延遲的需求不斷增加。當然,經由增加匯流排時鐘速率可以實現更高資料輸送量。增加匯流排時鐘速率可能會使某些習知設備中較慢的開關驅動器無法使用,並且可能危及較新的接收器中的時序收斂條件。在一個示例中,當接收器可以在資料信號穩定並且有效的時間窗口內對資料信號採樣時,時序收斂條件滿足。一些系統使用多通道配置,該多通道配置將基本時鐘速率保持在12.5MHz,以確保在接收器處時序收斂條件滿足並且維持與較舊的較慢的設備的相容性。這些多通道配置經由使用附加實體通道和多通道(ML)協定來實現更高資料輸送量。
附加實體通道可以設置在串列匯流排中,以耦合兩個或更多個設備,並且可以用作附加資料通道以增加資料輸送量,提供錯誤偵測保護特徵,改進信號完整性,擴展串列匯流排的物理範圍,及/或用於其他目的。附加通道可以被配置為使得能夠對要經由串列匯流排傳輸的資料進行有效編碼。I3C標準支援多種高資料率(HDR)協定,包括DDR模式和相位差分訊號傳遞模式。相位差分訊號傳遞模式將資料編碼在用於控制串列匯流排的多條線的訊號傳遞狀態的符號中。相對於基於時鐘線的協定,相位差分訊號傳遞提供了某些優勢。例如,相位差分訊號傳遞可以使串列匯流排的通道上的轉變次數最小化,並且針對資料使用共用驅動器可以提高信號完整性,並且支援匯流排的增加的覆蓋範圍。習知I3C規範提供了可以在耦合習知I2C設備的串列匯流排上使用的三元符號傳統模式(HDR-TSL)、以及可以在僅耦合I3C設備的串列匯流排上使用的純匯流排模式的三元符號(HDR-TSP)。
圖8圖示經由多線串列匯流排進行的傳輸的三個示例800、820、840。第一示例800涉及具有兩個主線(SCL 802和SDA 804)和三個輔線806、808、810的串列匯流排。串列匯流排可以根據I3C HDR-TSP模式或HDR-TSL模式進行操作,在這種模式下,資料以5位元符號編碼,並且使用相位差分訊號傳遞進行傳輸。第二示例820涉及具有兩個主線(SCL 822和SDA 824)和輔線826的串列匯流排。串列匯流排可以根據I3C HDR-TSP模式或HDR-TSL模式進行操作,在這種模式下,資料以3位元符號編碼並且使用相位差分訊號傳遞進行傳輸。第三示例840涉及具有兩個主線(SCL 842和SDA 844)而沒有輔線的串列匯流排。串列匯流排可以根據I3C HDR-TSP模式或HDR-TSL模式進行操作,在這種模式下,資料以2位元符號編碼並且使用相位差分訊號傳遞進行傳輸。
根據本文中揭露的某些態樣,可以提供線和編碼的其他組合。可以在HDR-DDR模式下傳輸命令,以選擇HDR-TSP或HDR-TSL模式。在某些情況下,命令可以攜帶用於定義串列匯流排的操作模式的附加參數。操作模式可以定義在訊框中傳輸的符號數、用於傳輸符號的電線數、耦合到串列匯流排的驅動器及/或接收器的操作類型或模式、編碼方案或映射、用於表示轉變次數的數字基礎、及/或其他特性或參數。在每個訊框或符號序列中傳輸的符號數可以被選擇以提供表示每訊框資料位元數的期望編碼速率,期望編碼效率可以表示為每訊框編碼的位元數與每訊框可以編碼的最大位元數之間的比率,及/或以用於獲得在編碼速率與編碼效率之間的令人滿意的折衷。
圖9圖示編碼方案900的第一示例,該編碼方案900可以由三元到符號編碼器使用以產生具有嵌入式時鐘的符號序列,以用於在串列匯流排320上傳輸。編碼方案900也可以由符號到三元解碼器使用以從串列匯流排3230接收的符號中提取三元轉變次數。在該編碼方案900中,串列匯流排320的兩個線允許定義4個基本符號930、932、934、936(S:{0,1,2,3})。符號序列中的任何兩個連續符號具有不同狀態,並且符號序列0,0,1,1,2,2,3,3為連續符號的無效組合。因此,在每個符號邊界處只有3個有效符號轉變可用,其中符號邊界由傳輸時鐘決定並且表示第一符號(前一符號Ps)922終止和第二符號(當前符號Cs)924開始的點。
根據本文中揭露的某些態樣,三個可用轉變被分配給每個Ps符號922的轉變數位(transition number digit)(T)926。T 926的值可以由三元數表示。在一個示例中,轉變次數數字926的值可以經由針對編碼方案分配符號排序圓902來決定。符號排序圓902在符號排序圓902上為四個可能符號分配位置904a-904d、以及位置904a-904d之間的旋轉方向906。在所示示例中,旋轉方向906是順時針方向。轉變次數數字926可以表示有效當前符號924與緊接在前的符號922之間的間隔。間隔可以定義為從前一符號922到達當前符號Cs 924所需要的符號排序圓902上沿著旋轉方向906的步數。步數可以表示為以3為基礎的一位數。應當理解,符號之間的三步差可以表示為0base-3。圖9中的表920總結了採用這種方法的編碼方案。
在傳輸器處,表920可以用於查找要傳輸的當前符號924、先前產生的符號922的已知知識、和輸入三元數,輸入三元數用作轉變次數數字926。在接收器處,例如,表920可以用作查找資料表以決定表示先前接收符號922與當前接收符號924之間的轉變的轉變次數數字926。
根據某些態樣,轉變次數940可以由複數個轉變次數數字926形成,每個數字926可以用於在給定當前符號的情況下決定下一符號。在一個示例中,轉變次數940是包括12個三元數字926的三元數。在一般情況下,具有N個數字(Ts)926的轉變次數940(每個T 926有r個可能的轉變)具有總共r
N個狀態。在12位轉變次數940的示例中,對於N=12個數字926之每一者,總共有r=4-1=3個可能的轉變,從而提供總共3
12=531441個不同狀態。因此,12位轉變次數940可以編碼需要524288個狀態的19位二進位數。剩餘的7153個狀態可以用於攜帶控制代碼等。
複數個下一代設備可以與一或多個傳統I2C設備共存於同一串列匯流排320上。因此,高資料率協定定義了可以被傳統I2C設備忽略、未偵測或以其他方式忽視的訊號傳遞方案。I3C設備可以在與I2C模式訊號傳遞一致的訊號傳遞中傳輸控制資訊,並且可以傳輸根據基於三元編碼的協定而編碼的資料有效載荷以獲取更快傳輸速度。下一代設備可以使用其他編碼模式來傳輸資料有效載荷,包括傳統I2C模式。
圖10圖示在雙線串列匯流排320上採用符號轉變編碼的編碼方案1000的第二示例。在該示例中,根據I3C HDR協定採用基於三元的數字編碼的變體。預期與符號轉變相關聯的某些概念可以被擴展為包括具有三個或更多個線的I3C串列匯流排320。當三個線可用於傳輸符號時,可以使用基於七元的數字編碼,當四個線可用於傳輸符號時,可以使用基於十五元的數字編碼,等等。在表1020(也參見圖7-9)中表示的兩線示例中,由編碼器產生的轉變次數1024可以表示為整個圓上的狀態1008、1010、1012、1014之間的位移值1022。順時針位移1004可以表示為三元值T=1,逆時針位移1002可以表示為三元值T=0,並且整個圓上的位移(即,順時針或逆時針2步)可以表示為三元值T=2。
圖11包括時序圖1100,時序圖1100圖示根據本文中揭露的某些態樣的在傳輸符號序列時串列匯流排320的訊號傳遞狀態。在所示示例中,時鐘線318和資料線316兩者都用於編碼資料。原始符號值1102使線驅動電路將時鐘線318和資料線316之每一者線驅動到由當前原始符號值1102的一位元決定的電壓位準。在該示例中,被設置為「二進位1」的符號位使時鐘線318和資料線316中的對應一項具有更正的電壓位準,而設置為「二進位0」的符號位使時鐘線318和資料線316中的對應一項具有更負的電壓位準。圖11提供了表1120,表1120圖示當時鐘線318和資料線316之每一者可以處於兩個電壓位準中的一個電壓位準時符號1122的四個可能的訊號傳遞狀態。具有K位元的資料元素可以被編碼在L個符號的序列中。K和L的值可以基於編碼方案、字長和配置以及其他應用參數(包括等待時間等)來決定。時序圖1100圖示包括7個時槽1104的符號傳輸序列的摘錄或快照,其中符號1106可以在時槽1104之每一者中傳輸。圖示的7個時槽可以是更大符號序列的一部分,諸如對16位字進行編碼的12符號序列,或者可以包括符號的兩個或更多個序列(例如,2、3……或6個符號)。
根據本文中揭露的某些態樣,傳輸器可以被配置或適配為確保在時槽序列1104中的任何兩個連續時槽中不傳輸相同符號。因此,時鐘線318和資料線316中的至少一項在連續符號之間的每個邊界處改變訊號傳遞狀態。時鐘線318和資料線316中任何一項的觸發標誌著新符號的開始。
根據某些態樣,主線上的訊號傳遞可以被配置為避免產生由I3C HDR定義的、用於指示重啟、退出及/或帶內複位的某些資料模式。在某些情況下,主線以由習知I3C協定規定的模式承載資料,包括使用SDR、HDR-DDR、HDR-TSP和HDR-TSL協定傳輸的資料。
相位差協定的錯誤訊號傳遞窗口
由某些應用定義的資料輸送量和等待時間要求可能需要增加串列匯流排的基本時鐘速率。基本時鐘速率的增加給基於諸如I3C SDR協定和I3C HDR-DDR協定等使用專用時鐘線(SCL)的協定的通訊的時序收斂帶來了特別的困難,該SCL由匯流排主設備驅動而不管資料傳輸方向如何。在讀取交易中,隨著時鐘信號中的沿被引入匯流排主設備,時序窗口打開,時鐘信號穿過串列匯流排到達從設備,該從設備使用該沿對串列匯流排上相反方向上的資料傳輸進行計時。在後一示例中,傳輸和切換延遲累積,並且對匯流排主設備中接收器電路處的時序窗口產生的影響最大。
諸如I3C HDR-TSP協定和I3C HDR-TSL協定等相位差分協定可以克服由於在每次傳輸中使用嵌入式時鐘而可能影響I3C SDR和I3C HDR-DDR的某些時序收斂問題。時鐘由傳輸器嵌入,並且在符號轉變中提供時序資訊,接收器可以使用該時序資訊來控制符號擷取的時序。也就是說,時鐘資訊與所傳輸的資料源於串列匯流排的同一端,並且可以很容易地針對所有導線提供緊密匹配的傳播路徑,包括多通道串列匯流排中的所有導線。
本案的某些態樣提供了用於偵測在使用相位差分協定時可能發生的錯誤的技術。當使用更高時鐘速率來控制串列匯流排上的傳輸時,這些技術可以提高串列匯流排的性能。雖然使用I3C HDR-TSP協定和I3C HDR-TSL協定的示例描述某些技術、裝置和程序,但底層概念以及I3C HDR-TSP協定和I3C HDR-TSL協定適用於其他相位差分協定。
在採用相位差分協定的高資料率或嘈雜匯流排環境中,訊框同步可能是有問題的。I3C HDR-TSP協定和I3C HDR-TSL協定定義了以具有12個符號的訊框被編碼的資料封包。資料被編碼在符號之間的轉變中,並且由於噪聲或採樣電路錯誤導致的符號丟失會影響基於多個後續符號轉變的解碼。I3C協定提供了同位校驗,同位校驗可以用於觸發對提前終止的請求,該請求可以在一或多個提前終止訊號傳遞模式期間被發信號通知。提前終止訊號傳遞模式可能導致匯流排錯誤或由於同步丟失而與正常資料傳輸符號混淆,例如,在當例如時序錯誤使接收器丟失或丟棄符號時。在某些情況下,偵測到同位錯誤的接收器可以嘗試使用協定定義的模式向發送器發信號通知,並且在同步丟失時,可能會導致嚴重的破壞性匯流排衝突。例如,發送器可能正在傳輸沒有接收到提前終止訊號傳遞的下一訊框。嘗試在由協定定義的訊框之間的某個點傳輸錯誤代碼的異步接收器可能會導致與發送器的匯流排的衝突。
本案的某些態樣提供了可以允許設備可靠地標識錯誤訊號傳遞窗口的訊號傳遞。術語「錯誤訊號傳遞窗口」可以用於表徵允許交易中的接收設備指示錯誤的訊號傳遞模式。可以提供錯誤訊號傳遞窗口指示符,該指示符使用資料串流內的預定義的獨特的模式,該模式可以由交易中的發送設備明確標識,並且用作由交易中的接收設備偵測到的錯誤的指示。在一個示例中,錯誤訊號傳遞窗口可以使用被禁止或沒有出現在任何其他有效資料傳輸中的符號資料串來指示。在另一示例中,錯誤訊號傳遞窗口可以使用由協定定義的提前終止模式,指示並且被修改以更改與提前終止模式相關聯的一或多個時序參數。
根據本案的某些態樣,關聯於與一或多個相位差協定一起使用的錯誤訊號傳遞窗口的模式、時序和特性可以由協定定義或者使用命令傳輸來配置或者在發送器與接收器之間協商。根據相位差分協定進行操作的串列匯流排的所有線路在資料傳輸交易期間被主動驅動。交易中的接收器可以僅在傳輸器與接收器之間商定的時間,或者在為傳輸器和接收器預先配置的時間發信號通知錯誤或請求動作,並且提供為訊號傳遞而定義的某些特定程序。錯誤訊號傳遞窗口的時序和結構的定義對於防止衝突和確保在發生錯誤之後可以重新建立同步是必要的。
在一個示例中,共用命令代碼(CCC)可以用於配置與I3C HDR-TSP協定或I3C HDR-TSL協定一起使用的錯誤訊號傳遞窗口的某些態樣。在另一示例中,發送器和接收器上的應用可以建立用於管理錯誤訊號傳遞窗口的使用和格式的契約。錯誤訊號傳遞窗口的操作和配置可以在系統設計、初始化期間或在受影響設備的匯流排實例化期間定義。相位差分協定的多通道串列匯流排實現可以使用主通道(例如,SCL和SDA)、使用附加通道或使用主通道和附加通道的某種組合來提供錯誤訊號傳遞窗口。
錯誤訊號傳遞窗口可以用於去往和來自匯流排主設備的,或者從設備之間的資料傳輸。與錯誤訊號傳遞窗口相關的時序可以由應用修改以實現穩健的錯誤標識,並且確保在時序收斂接近其指定限值時,串列匯流排可以可靠地操作。在I3C協定的示例中,某些HDR-TSP規範和HDR-TSL規範定義了流量控製程序,該程序可以被適配,以使得接收器能夠在偵測到錯誤時安全地進行幹預。這些程序可以被適配以與其他相位差分或基於符號的協定一起使用。雖然這些程序和適配中的某些是參考2線串列匯流排來描述的,但是這些概念和某些實現適用於具有一或多個附加線路的串列匯流排。
圖12圖示根據本文中揭露的某些態樣的由I3C HDR-TSP協定和I3C HDR-TSL協定定義的訊號傳遞1200的第一適配。HDR重啟模式1206在所有I3C操作模式下都是可辨識的,包括SDR、HDR-DDR、HDR-TSP和HDR-TSL模式。HDR重啟模式1206對應於包括值為「2」的三個或更多個連續符號1208的符號序列的傳輸。符號序列使SCL 1204在SDA 1202觸發時被保持在低訊號傳遞狀態1210。SCL 1204上的沿1212驗證重啟,並且可以觸發接收器擷取SDA 1202和SCL 1204的當前狀態,以在串列匯流排上出現下一命令字1214之前重設或配置接收電路。
在本案的一態樣中,HDR重啟模式1206可以被適配為在經由串列匯流排傳輸的訊號傳遞1220中提供錯誤訊號傳遞窗口標識符1226。錯誤訊號傳遞窗口標識符1226在所有I3C操作模式下也是可辨識的,包括SDR、HDR-DDR、HDR-TSP和HDR-TSL模式。錯誤訊號傳遞窗口標識符1226對應於包括值為「2」的三個或更多個連續符號1228的符號序列的傳輸。符號序列使SCL 1224在SDA 1222觸發時被保持在高訊號傳遞狀態1230。SCL 1204上的沿1232驗證重啟,並且可以觸發接收器擷取SDA 1222和SCL 1224的當前狀態,以在串列匯流排上出現下一資料字1234之前重設或配置接收電路。
圖13和14中的時序圖1300、1400分別圖示根據本文中揭露的某些態樣來提供的錯誤訊號傳遞窗口的使用的第一示例。這些第一示例與主設備到從設備傳輸有關。
時序圖1300、1400涉及根據I3C HDR-TSP協定或I3C HDR-TSL協定進行操作的串列匯流排的示例。時序圖1300、1400圖示SDA 1302、1402和SCL 1304、1404上的訊號傳遞。時序圖1300、1400還圖示到SDA 1302、1402上的訊號傳遞的從設備貢獻1322、1422、以及到SDA 1302、1402上的訊號傳遞的匯流排主設備貢獻1332、1432。時序圖1300、1400還圖示到SCL 1304、1404上的訊號傳遞的從設備貢獻1324、1424、以及到SCL 1304、1404上的訊號傳遞的匯流排主設備貢獻1334、1434。到SDA 1302、1402上的訊號傳遞或到SCL 1304、1404上的訊號傳遞的貢獻被示出為實線,而虛線指示對應設備的驅動器處於高阻抗狀態。在某些情況下,匯流排主設備可能會使其耦合到串列匯流排的線路的驅動器中的一個驅動器的輸出進入高阻抗狀態,同時將保持電路或被動上拉或下拉電路連接到驅動器的輸出,以維持串列匯流排的線路上的期望或預設訊號傳遞狀態。
圖13中的時序圖1300圖示使用根據本文中揭露的某些態樣來提供的錯誤訊號傳遞窗口的由主設備到從設備傳輸中的從設備進行的終止。在匯流排主設備完成用於對資料字進行編碼的最後的符號(T0)的傳輸的時間1306,匯流排主設備主動地將SDA 1302和SCL 1304驅動到高狀態1308。匯流排主設備維持SCL 1304為高,同時在每個後續符號傳輸間隔處觸發SDA 1302。將SCL 1304為高與SDA 1302觸發的組合解釋為值為「2」的符號。根據I3C相位差分協定,在資料傳輸中禁止值為「2」的三個或更多符號的序列,並且在根據本案的某些態樣而配置的匯流排主設備和從設備中,將此類序列辨識為錯誤訊號傳遞窗口。錯誤訊號傳遞窗口訊號傳遞可以由匯流排主設備中的邏輯電路產生。
作為傳輸的一方的從設備可以包括邏輯電路,該邏輯電路被配置為獨立於從設備中的解碼邏輯來偵測錯誤訊號傳遞窗口。在一些情況下,錯誤訊號傳遞窗口可以被配置為在接收器處產生值為「2」的三個以上的符號,使得當一或多個符號丟失或包括錯誤時,接收器可以辨識錯誤訊號傳遞窗口。從設備可以決定錯誤訊號傳遞窗口已經被非預期地接收到。例如,丟失或丟棄的符號可能使錯誤訊號傳遞窗口被提前偵測到。從設備對錯誤訊號傳遞窗口的提前或晚期偵測,或者對同位錯誤的偵測可以被解釋為錯誤條件。例如,對於更高級別的應用,可能會出現其他錯誤情況。任何類型的通訊錯誤的偵測都可能使從設備終止傳輸。
根據一態樣,在偵測或接收到值為「2」的第三符號1312之後,經由將SCL 1304驅動到低信號狀態,從設備可以終止傳輸。在與值為「2」的第三符號1312相對應的轉變被傳輸以促進從設備對SCL 1304的驅動之後,匯流排主設備可以將SCL 1304釋放到高阻抗狀態1310。當使其線路驅動器進入高阻抗狀態時,匯流排主設備可以將保持電路或被動上拉電路耦合到SCL 1304。在將SCL 1304驅動到低信號狀態之後,並且在允許匯流排主設備偵測SCL 1304中的轉變1314的SDA 1302中的一或多個沿之後,從設備使其線路驅動器進入高阻抗模式。
在匯流排主設備偵測到SCL 1304中的轉變1314之後,匯流排主設備使其線路驅動器主動地將SCL 1304驅動到低信號狀態1318。然後匯流排主設備可以終止傳輸。在一個示例中,匯流排主設備將SCL 1304維持在低信號狀態1318,並且繼續觸發SDA 1302以產生HDR退出或重啟模式,該模式包括三個或更多個值「2」符號1320的附加序列。
圖14中的時序圖1400圖示使用根據本文中揭露的某些態樣來提供的錯誤訊號傳遞窗口的由主設備到從設備傳輸中的從設備指示的繼續。在匯流排主設備完成用於對資料字進行編碼的最後的符號(T0)的傳輸的時間1406,匯流排主設備主動地將SDA 1402和SCL 1404驅動到高狀態1408。匯流排主設備維持SCL 1404為高,同時在每個後續符號傳輸間隔處觸發SDA 1402。SCL 1404為高與SDA 1402觸發的組合被解釋為值為「2」的符號,並且三個或更多此類符號的序列根據I3C相位差分協定在資料傳輸中被禁止,並且被辨識為根據本案的某些態樣而配置的匯流排主設備和從設備中的錯誤訊號傳遞窗口。錯誤訊號傳遞窗口訊號傳遞可以由匯流排主設備中的邏輯電路產生。
作為傳輸的一方的從設備可以包括邏輯電路,該邏輯電路被配置為獨立於從設備中的解碼邏輯來偵測錯誤訊號傳遞窗口。在一些情況下,錯誤訊號傳遞窗口可以被配置為在接收器處產生值為「2」的三個以上的符號,使得當一或多個符號丟失或包括錯誤時,接收器可以辨識錯誤訊號傳遞窗口。從設備可以決定錯誤訊號傳遞窗口已經被及時地接收並且沒有偵測到其他類型的通訊錯誤。
根據一態樣,當沒有偵測到錯誤時,從設備可以避免驅動SDA 1402和SCL 1404。在與值為「2」的第三符號1412相對應的轉變根據從設備的需要被傳輸以促進SCL 1404的驅動之後,匯流排主設備可以將SCL 1404釋放到高阻抗狀態1410。當使其線路驅動器進入高阻抗狀態時,匯流排主設備可以將保持電路或被動上拉電路耦合到SCL 1404。在計算出的能夠提供足夠時間以允許從設備請求終止的某個時間段之後,匯流排主設備使其線路驅動器主動地將SCL 1404驅動到低信號狀態1414。在一些示例中,匯流排主設備等待1至8個符號間隔以允許從設備請求終止。在一些示例中,匯流排主設備延長一或多個符號間隔以允許從設備請求終止。
圖15和16中的時序圖1500、1600分別圖示根據本文中揭露的某些態樣來提供的錯誤訊號傳遞窗口的使用的第二示例。這些第二示例涉及從設備到主設備的傳輸。
時序圖1500、1600涉及根據I3C HDR-TSP協定或I3C HDR-TSL協定進行操作的串列匯流排的示例。時序圖1500、1600圖示SDA 1502、1602和SCL 1504、1604上的訊號傳遞。時序圖1500、1600還圖示到SDA 1502、1602上的訊號傳遞的從設備貢獻1522、1622、以及到SDA 1502、1602上的訊號傳遞的匯流排主設備貢獻1532、1632。時序圖1500、1600還圖示到SCL 1504、1604上的訊號傳遞的從設備貢獻1524、1624、以及到SCL 1504、1604上的訊號傳遞的匯流排主設備貢獻1534、1634。到SDA 1502、1602上的訊號傳遞或到SCL 1504、1604上的訊號傳遞的貢獻被示出為實線,而虛線指示對應設備的驅動器處於高阻抗狀態。在某些情況下,匯流排主設備可能會使其耦合到串列匯流排的線路的驅動器中的一個驅動器的輸出進入高阻抗狀態,同時將保持電路或被動上拉或下拉電路連接到驅動器的輸出,以維持串列匯流排的線路上的期望或預設訊號傳遞狀態。
圖15中的時序圖1500圖示使用根據本文中揭露的某些態樣來提供的錯誤訊號傳遞窗口的由從設備到主設備傳輸中的匯流排主設備進行的終止。在從設備完成用於對資料字進行編碼的最後的符號(T0)的傳輸的時間1506,從設備主動地將SDA 1502和SCL 1504驅動到高狀態1508。從設備維持SCL 1504為高,同時在每個後續符號傳輸間隔處觸發SDA 1502。SCL 1504為高與SDA 1502觸發的組合被解釋為值為「2」的符號,並且三個或更多此類符號的序列根據I3C相位差分協定在資料傳輸中被禁止,並且被辨識為根據本案的某些態樣來配置的匯流排主設備以及從設備中的錯誤訊號傳遞窗口。錯誤訊號傳遞窗口訊號傳遞可以由從設備中的邏輯電路產生。
匯流排主設備可以包括邏輯電路,該邏輯電路被配置為獨立於匯流排主設備中的解碼邏輯來偵測錯誤訊號傳遞窗口。在一些情況下,錯誤訊號傳遞窗口可以被配置為在接收器處產生值為「2」的三個以上的符號,使得當一或多個符號丟失或包括錯誤時,接收器可以辨識錯誤訊號傳遞窗口。匯流排主設備可以決定錯誤訊號傳遞窗口已經被非預期地接收到。例如,丟失或丟棄的符號可能使錯誤訊號傳遞窗口被提前偵測到。從設備對錯誤訊號傳遞窗口的提前或晚期偵測或者對同位錯誤的偵測可以被解釋為錯誤條件。例如,對於更高級別的應用,可能會出現其他錯誤情況。偵測到任何類型的通訊錯誤都可能使匯流排主設備終止傳輸。
根據一態樣,在偵測或接收值為「2」的第三符號1512之後,經由將SCL 1504驅動到低信號狀態,匯流排主設備可以終止傳輸。在與值為「2」的第三符號1512相對應的轉變被傳輸以促進匯流排主設備對SCL 1504的驅動之後,從設備可以將SCL 1504釋放到高阻抗狀態1510。在從設備使其線路驅動器進入高阻抗狀態之前,匯流排主設備可以將保持電路或被動上拉電路耦合到SCL 1504。匯流排主設備使其線路驅動器在SDA 1502上的下一個下降沿主動地將SCL 1504驅動到低信號狀態1518。然後匯流排主設備可以終止傳輸。在一個示例中,匯流排主設備將SCL 1504維持在低信號狀態,並且繼續觸發SDA 1502以產生HDR退出或重啟模式,該模式包括三個或更多個值「2」符號1520的附加序列。
圖16中的時序圖1600圖示使用根據本文中揭露的某些態樣來提供的錯誤訊號傳遞窗口的由從設備到主設備傳輸中的匯流排主設備指示的繼續。在匯流排主設備完成用於對資料字進行編碼的最後的符號(T0)的傳輸的時間1606,從設備主動地將SDA 1602和SCL 1604驅動到高訊號傳遞狀態1608。從設備維持SCL 1604為高,同時在每個後續符號傳輸間隔處觸發SDA 1602。SCL 1604為高與SDA 1602觸發的組合被解釋為值為「2」的符號,並且三個或更多此類符號的序列根據I3C相位差分協定在資料傳輸中被禁止,並且被辨識為根據本案的某些態樣而配置的匯流排主設備和從設備中的錯誤訊號傳遞窗口。錯誤訊號傳遞窗口訊號傳遞可以由從設備中的邏輯電路產生。
匯流排主設備可以包括邏輯電路,該邏輯電路被配置為獨立於從設備中的解碼邏輯來偵測錯誤訊號傳遞窗口。在一些情況下,錯誤訊號傳遞窗口可以被配置為在接收器處產生值為「2」的三個以上的符號,使得當一或多個符號丟失或包括錯誤時,接收器可以辨識錯誤訊號傳遞窗口。匯流排主設備可以決定錯誤訊號傳遞窗口已經被及時地接收,並且沒有偵測到其他類型的通訊錯誤。
根據一態樣,當沒有偵測到錯誤時,匯流排主設備可以避免驅動SDA 1602和SCL 1604。在與值為「2」的第三符號1612相對應的轉變根據匯流排主設備的需要而被傳輸以促進SCL 1604的驅動之後,從設備可以將SCL 1604釋放到高阻抗狀態1610。在從設備使其線路驅動器進入高阻抗狀態1614之前,匯流排主設備可以將保持電路或被動上拉電路耦合到SCL 1604。在計算出的能夠提供足夠時間以允許匯流排主設備請求終止的某個時間段之後,從設備使其線路驅動器主動地將SCL 1604驅動到低信號狀態1618。在一些示例中,從設備等待1至8個符號間隔以允許從設備請求終止。在一些示例中,從設備延長一或多個符號間隔以允許從設備請求終止。
在所描述的示例中,接收設備可以經由啟動驅動器並且引起SDA 1302、1402、1502或1602的訊號傳遞狀態的改變來終止傳輸,並且經由不採取改變訊號傳遞狀態的動作來允許傳輸繼續。在一些實現中,可能需要接收設備在傳輸繼續之前肯定地確認對一或多個資料字的接收。在這些實現中,接收設備經由啟動驅動器並且引起SDA 1302、1402、1502或1602的訊號傳遞狀態的改變來允許傳輸繼續,並且經由不採取改變訊號傳遞狀態的動作來允許傳輸終止。
圖17圖示根據本文中揭露的某些態樣的由I3C HDR-TSP協定和I3C HDR-TSL協定定義的訊號傳遞1700的第二適配。HDR提前終止模式1706可以在約定數目的符號、訊框或資料字1708之後傳輸。在所示示例中,匯流排主設備使用提前終止模式1706來結束來自從設備的資料傳輸。在該示例中,從設備提供附加時鐘脈衝1712,該附加時鐘脈衝1712足以使得匯流排主設備能夠發信號通知對提前終止的請求。從設備經由使其線路驅動器的輸出進入高阻抗狀態1714來在釋放SDA 1702之前最初將SDA 1702驅動到高訊號傳遞狀態1710。在從設備釋放SDA 1702之前,匯流排主設備可以將保持電路或上拉電路耦合到SDA 1702。在SCL 1704上的第一時鐘脈衝1712的下降沿1718之後,匯流排主設備可以經由將SDA 1702驅動到低訊號傳遞狀態1716來終止傳輸。從設備在時鐘脈衝1712中的第二時鐘脈衝的下降沿之後辨識SDA 1702的狀態的改變。從設備在時間1720釋放SCL 1704,以使得匯流排主設備能夠控制串列匯流排並且提供HDR退出或HDR重啟信號。
在本案的一個態樣中,提前終止模式1706可以被適配以提供錯誤訊號傳遞窗口標識符。錯誤訊號傳遞窗口標識符可以經由延遲提前終止模式1706的一部分來提供。
時序圖1800、1900涉及根據I3C HDR-TSP協定或I3C HDR-TSL協定進行操作的串列匯流排的示例。時序圖1800、1900圖示SDA 1802、1902和SCL 1804、1904上的訊號傳遞。時序圖1800、1900還圖示到SDA 1802、1902上的訊號傳遞的從設備貢獻1822、1922、以及到SDA 1802、1902上的訊號傳遞的匯流排主設備貢獻1832、1932。時序圖1800、1900還圖示到SCL 1804、1904上的訊號傳遞的從設備貢獻1824、1924、以及到SCL 1804、1904上的訊號傳遞的匯流排主設備貢獻1834、1934。將到SDA 1802、1902上的訊號傳遞或到SCL 1804、1904上的訊號傳遞的貢獻示出為實線,而虛線指示對應設備的驅動器處於高阻抗狀態。在某些情況下,匯流排主設備可能會使其耦合到串列匯流排的線路的驅動器中的一個驅動器的輸出進入高阻抗狀態,同時將保持電路或被動上拉或下拉電路連接到驅動器的輸出,以維持串列匯流排的線路上的期望或預設訊號傳遞狀態。
圖18中的時序圖1800圖示使用根據本文中揭露的某些態樣來提供的錯誤訊號傳遞窗口的由主設備到從設備傳輸中的從設備進行的終止。匯流排主設備主動地將SDA 1802驅動到高狀態,並且在延遲1806之後在SCL 1804上提供時鐘脈衝。在延遲之後,提供提前終止模式1808。提前終止模式1808對應於提前終止模式1706,延遲1806除外。在圖18的示例中,在時間1812,從設備經由在釋放SDA 1802之前將SDA 1802驅動到低狀態1810來發信號通知對終止傳輸的請求,以使得匯流排主設備能夠在SCL 1804上的第二脈衝的下降沿獲取對串列匯流排的控制。然後匯流排主設備可以提供HDR重啟或HDR退出訊號傳遞。
可以基於應用要求、匯流排時鐘速率以及匯流排傳輸的預期錯誤率來選擇延遲1806的持續時間。延遲1806可以包括多個匯流排時鐘週期。在一個示例中,當使用100MHz匯流排時鐘時,延遲1806包括8個匯流排時鐘週期。延遲1806使接收設備認識到提前終止模式1808包括用於防止同步錯誤導致衝突的錯誤訊號傳遞窗口。
圖19中的時序圖1900圖示其中在偵測到根據本文中揭露的某些態樣來提供的錯誤訊號傳遞窗口之後從設備允許主設備到從設備傳輸繼續的交易。匯流排主設備主動地將SDA 1902驅動到高狀態,並且在延遲1906之後主動地在SCL 1904上提供時鐘脈衝。在延遲之後,提供提前終止模式1908。提前終止模式1908對應於提前終止模式1706,延遲1906除外。在圖19的示例中,從設備避免驅動SDA 1902,使得匯流排主設備保持對串列匯流排的控制。匯流排主設備然後可以在時間1910開始傳輸下一資料字。
延遲1906的持續時間可以基於應用要求、匯流排時鐘速率以及匯流排傳輸的預期錯誤率來選擇。延遲1906可以包括多個匯流排時鐘週期。在一個示例中,當使用100MHz匯流排時鐘時,延遲1906包括8個匯流排時鐘週期。延遲1906使接收設備認識到提前終止模式1908包括用於防止同步錯誤導致衝突的錯誤訊號傳遞窗口。
時序圖2000、2100涉及根據I3C HDR-TSP協定或I3C HDR-TSL協定進行操作的串列匯流排的示例。時序圖2000、2100圖示SDA 2002、2102和SCL 2004、2104上的訊號傳遞。時序圖2000、2100還圖示到SDA 2002、2102上的訊號傳遞的從設備貢獻2022、2122、以及到SDA 2002、2102上的訊號傳遞的匯流排主設備貢獻2032、2032。時序圖2000、2100還圖示到SCL 2004、2104上的訊號傳遞的從設備貢獻2024、2124、以及到SCL 2004、2104上的訊號傳遞的匯流排主設備貢獻2034、2134。到SDA 2002、2102上的訊號傳遞或到SCL 2004、2104上的訊號傳遞的貢獻被示出為實線,而虛線指示對應設備的驅動器處於高阻抗狀態。在某些情況下,匯流排主設備可能會使其耦合到串列匯流排的線路的驅動器中的一個驅動器的輸出進入高阻抗狀態,同時將保持電路或被動上拉或下拉電路連接到驅動器的輸出以維持串列匯流排的線路上的期望或預設訊號傳遞狀態。
圖20中的時序圖2000圖示使用根據本文中揭露的某些態樣來提供的錯誤訊號傳遞窗口的由從設備到主設備傳輸中的匯流排主設備進行的終止。從設備主動地將SDA 2002驅動到高狀態,並且在延遲2006之後在SCL 2004上提供時鐘脈衝。在延遲之後,提供提前終止模式2008。提前終止模式2008對應於提前終止模式1706,延遲2006除外。在圖20的示例中,在時間2012,匯流排主設備經由在釋放SDA 2002之前將SDA 2002驅動到低狀態2010來發信號通知對終止傳輸的請求。從設備經由進入高阻抗狀態來釋放SCL 2004,以使得匯流排主設備能夠在SCL 2004上的第二脈衝的下降沿獲取對串列匯流排的控制。然後匯流排主設備可以提供HDR重啟或HDR退出信號。
可以基於應用要求、匯流排時鐘速率和匯流排傳輸的預期錯誤率來選擇延遲2006的持續時間。延遲2006可以包括多個匯流排時鐘週期。在一個示例中,當使用100MHz匯流排時鐘時,延遲2006包括8個匯流排時鐘週期。延遲2006使接收設備認識到提前終止模式2008包括用於防止同步錯誤導致衝突的錯誤訊號傳遞窗口。
圖21中的時序圖2100圖示其中在偵測到根據本文中揭露的某些態樣來提供的錯誤訊號傳遞窗口之後匯流排主設備允許從設備到主設備的傳輸繼續的交易。從設備主動地將SDA 2102驅動到高狀態,並且在延遲2106之後在SCL 2104上提供時鐘脈衝。在延遲之後,提供提前終止模式2108。提前終止模式2108對應於提前終止模式1706,延遲2106除外。在圖21的示例中,匯流排主設備避免驅動SDA 2102,使得從設備保持對串列匯流排的控制。從設備然後可以在時間2110開始傳輸下一資料字。
延遲2106的持續時間可以基於應用要求、匯流排時鐘速率和匯流排傳輸的預期錯誤率來選擇。延遲2106可以包括多個匯流排時鐘週期。在一個示例中,當使用100MHz匯流排時鐘時,延遲2106包括8個匯流排時鐘週期。延遲2106使接收設備認識到提前終止模式2108包括用於防止同步錯誤導致衝突的錯誤訊號傳遞窗口。
處理電路和方法的示例
圖22是示出採用處理電路2202的裝置2200的硬體實現的示例的圖,該處理電路2202可以被配置為執行本文中揭露的一或多個功能。根據本案的各個態樣,本文中揭露的元件或元件的任何部分或元件的任何組合可以使用處理電路2202來實現。處理電路2202可以包括由硬體和軟體模組的某種組合控制的一或多個處理器2204。處理器2204的示例包括微處理器、微控制器、數位信號處理器(DSP)、SoC、ASIC、現場可程式化閘陣列(FPGA)、可程式化邏輯裝置(PLD)、狀態機、定序器、閘控邏輯、離散硬體電路、和被配置為執行本案通篇描述的各種功能的其他合適的硬體。一或多個處理器2204可以包括專用處理器,專用處理器執行特定功能並且可以由軟體模組2216中的配置、擴充或控制。一或多個處理器2204可以經由在初始化期間加載的軟體模組2216的組合來配置,並且經由在操作期間加載或卸載一或多個軟體模組2216來進一步配置。在各種示例中,處理電路2202可以使用狀態機、定序器、信號處理器及/或通用處理器、或者此類設備和電路的組合來實現。
在所示示例中,處理電路2202可以用匯流排架構來實現,匯流排架構整體上由匯流排2210表示。匯流排2210可以包括任何數目的互連匯流排和橋接器,具體取決於處理電路2202的具體應用和整體設計約束。匯流排2210將包括一或多個處理器2204和儲存裝置2206在內的各種電路鏈接在一起。儲存裝置2206可以包括記憶體設備和大容量儲存設備,並且在本文中可以稱為計算機可讀取媒體及/或處理器可讀取媒體。匯流排2210還可以鏈接各種其他電路,諸如時序源、時序器、周邊設備、電壓調節器和電源管理電路。匯流排介面2208可以在匯流排2210與一或多個收發器2212之間提供介面。可以為由處理電路2202支援的每種聯網技術提供收發器2212。在一些情況下,多種聯網技術可以共享收發器2212中的電路系統或處理模組中的一些或全部。每個收發器2212提供用於經由傳輸媒體與各種其他裝置通訊的構件。取決於裝置2200的性質,還可以提供使用者介面2218(例如,鍵盤、顯示器、揚聲器、麥克風、操縱桿),並且使用者介面2218可以直接或經由匯流排介面2208通訊地耦合到匯流排2210。
處理器2204可以負責管理匯流排2210和一般處理,一般處理可以包括執行儲存在可以包括儲存裝置2206的計算機可讀取媒體中的軟體。在這點上,包括處理器2204的處理電路2202可以用於實現本文中揭露的任何方法、功能和技術。儲存裝置2206可以用於儲存由處理器2204在執行軟體時操縱的資料,並且該軟體可以被配置為實現本文中揭露的方法中的任何一種。
處理電路2202中的一或多個處理器2204可以執行軟體。軟體應當廣義地解釋為表示指令、指令集、代碼、代碼區段、程式代碼、程式、副程式、軟體模組、應用、軟體應用、軟體包、常式、子常式、對象、可執行檔案、執行線程、程序、函數、演算法等,無論稱為軟體、韌體、中介軟體、微碼、硬體描述語言還是其他。軟體可以以計算機可讀形式常駐在儲存裝置2206中,或在外部計算機可讀取媒體中。外部計算機可讀取媒體及/或儲存裝置2206可以包括非暫態計算機可讀取媒體。作為示例,非暫態計算機可讀取媒體包括磁碟儲存裝置(例如,硬碟、軟碟、磁條)、光碟(例如,壓縮光碟(CD)或數字多功能磁碟(DVD))、智慧卡、閃存設備(例如,「閃存驅動器」、卡、棒或密鑰驅動器)、RAM、ROM、可程式化唯讀記憶體(PROM)、可抹除PROM(EPROM)(包括EEPROM)、暫存器、可移動磁碟、以及用於儲存可以由計算機存取和讀取的軟體及/或指令的任何其他合適的媒體。作為示例,計算機可讀取媒體及/或儲存裝置2206還可以包括載波、傳輸線、以及用於傳輸可以由計算機存取和讀取的軟體及/或指令的任何其他合適的媒體。計算機可讀取媒體及/或儲存裝置2206可以常駐在處理電路2202中、在處理器2204中、在處理電路2202外部、或者分佈在包括處理電路2202在內的多個實體之間。計算機可讀取媒體及/或儲存裝置2206可以體現在計算機程式產品中。例如,計算機程式產品可以包括包裝材料中的計算機可讀取媒體。本領域技藝人士將認識到如何根據特定應用和強加在整個系統上的整體設計約束來最好地實現本案中呈現的所描述的功能。
儲存裝置2206可以維持在可加載的代碼區段、模組、應用、程式等(在本文中可以稱為軟體模組2216)中維持及/或組織的軟體。軟體模組2216之每一者可以包括當安裝或加載到處理電路2202上並且由一或多個處理器2204執行時有助於控制一或多個處理器2204的操作的運行時映射2214的指令和資料。當被執行時,某些指令可以使處理電路2202根據本文中描述的某些方法、演算法和程序執行功能。
軟體模組2216中的一些可以在處理電路2202的初始化期間被加載,並且這些軟體模組2216可以將處理電路2202配置為實現本文中揭露的各種功能的執行。例如,一些軟體模組2216可以配置處理器2204的內部設備及/或邏輯電路2222,並且可以管理對諸如收發器2212、匯流排介面2208、使用者介面2218、時序器、數學協處理器等外部設備的存取。軟體模組2216可以包括與中斷處理程式和設備驅動程式互動並且控制對由處理電路2202提供的各種資源的存取的控製程式及/或作業系統。資源可以包括記憶體、處理時間、對收發器2212、使用者介面2218的存取等。
處理電路2202的一或多個處理器2204可以是多功能的,由此軟體模組2216中的一些被加載和配置為執行不同功能或同一功能的不同實例。例如,一或多個處理器2204可以另外地被適配以管理響應於來自使用者介面2218、收發器2212和設備驅動程式的輸入而發起的後台任務。為了支援多個功能的執行,一或多個處理器2204可以被配置為提供多任務環境,由此複數個功能之每一者被實現為根據需要或期望由一或多個處理器2204服務的一組任務。在一個示例中,多任務環境可以使用時間共享程式2220來實現,時間共享程式2220在不同任務之間傳遞處理器2204的控制,由此每個任務在任何未完成的操作完成時及/或響應於諸如中斷等輸入將一或多個處理器2204的控制返回給時間共享程式2220。當任務能夠控制一或多個處理器2204時,處理電路有效地專門用於由與控制任務相關聯的功能所解決的目的。時間共享程式2220可以包括作業系統、在循環基礎上轉移控制的主循環、根據功能的優先級來分配對一或多個處理器2204的控制的功能、及/或經由將一或多個處理器2204的控制提供給處理功能來響應於外部事件的中斷驅動主循環。
圖23是示出可以在耦合到串列匯流排的接收設備處執行的方法的流程圖2300。串列匯流排可以根據一或多個I3C協定進行操作。在方塊2302,接收設備可以接收符號序列。每個符號可以表示串列匯流排的訊號傳遞狀態。例如,可以使用2位元符號來表示串列匯流排的兩個線的二進位狀態,可以使用3位元符號來表示串列匯流排的三個線的二進位狀態,等等。在方塊2304,接收設備可以從符號序列中的符號對之間的轉變中解碼資料。例如,接收設備可以使用轉變次數來表示連續訊號傳遞狀態之間的差異,其中資料可以從轉變次數中提取,轉變次數從符號序列中被產生。
在方塊2306,接收設備可以在串列匯流排的兩個線的訊號傳遞狀態中偵測錯誤訊號傳遞窗口的指示符。在一些實現中,錯誤訊號傳遞窗口的指示符對應於被禁止的符號組合。例如,被禁止的符號組合可以產生訊號傳遞模式,該訊號傳遞模式激發對原本不參與資料傳輸的設備的響應。在一些實現中,在某些控制訊號傳遞被延遲時指示錯誤訊號傳遞窗口。在一些實現中,錯誤訊號傳遞窗口的指示符領先錯誤訊號傳遞窗口達一或多個符號間隔。
在方塊2308,當在符號序列中或在錯誤訊號傳遞窗口的指示符的時序中偵測到錯誤時,接收設備可以在錯誤訊號傳遞窗口期間發信號通知錯誤。在一些示例中,在符號序列中偵測到的錯誤涉及同位錯誤。當錯誤訊號傳遞窗口的指示符在符號序列中的在非預期時間或非預期位置開始時,可以偵測錯誤,其中設備被預配置有錯誤訊號傳遞窗口的符號序列中的預期時間或位置的指示。當錯誤訊號傳遞窗口的指示符在接收到完整符號序列之前開始時,可以偵測錯誤。當符號序列包括被禁止的符號組合中的一或多個符號時,可以偵測到錯誤。
在一些實現中,使用相位差分解碼器對資料進行解碼,並且使用獨立於相位差分解碼器進行操作的偵測電路來在符號序列中或在錯誤訊號傳遞窗口的指示符的時序中偵測錯誤。
在一些示例中,接收設備被配置為作為從設備進行操作,並且資料的傳輸可以在設備已經發信號通知錯誤之後終止。在其他示例中,接收設備作為匯流排主設備進行操作,並且傳輸被配置為在發信號通知錯誤之後終止資料的傳輸的訊號傳遞模式。
在一個示例中,當提前終止模式被延遲時,接收設備可以偵測錯誤訊號傳遞窗口的指示符。在另一示例中,當兩個線中的第一線在三個或更多個符號間隔之每一者符號間隔之後被觸發的同時串列匯流排的兩個線中的第二線維持在第一訊號傳遞狀態時,接收設備偵測錯誤訊號傳遞窗口的指示符。當兩個線中的第一線在三個或更多個符號間隔之每一者符號間隔之後被觸發的同時串列匯流排的兩個線中的第二線維持在第二訊號傳遞狀態時,可以偵測後期傳輸或提前傳輸同步模式。
圖24是示出用於採用處理電路2402的裝置2400的硬體實現的示例的圖。在一個示例中,裝置2400被配置用於經由根據一或多個I3C協定進行操作的串列匯流排進行的資料通訊。處理電路2402通常具有控制器或處理器2416,控制器或處理器2416可以包括一或多個微處理器、微控制器、數字信號處理器、定序器及/或狀態機。處理電路2402可以用匯流排架構來實現,匯流排架構整體上由匯流排2420表示。匯流排2420可以包括任何數目的互連匯流排和橋接器,具體取決於處理電路2402的具體應用和整體設計約束。匯流排2420將包括一或多個處理器及/或硬體模組在內的各種電路鏈接在一起,由控制器或處理器2416、模組或電路2404、2406和2408、以及處理器可讀儲存媒體2418表示。裝置2400可以使用實體層電路2414耦合到多線通訊鏈路。實體層電路2414可以操作多線串列匯流排2412以支援符合I3C協定的通訊。匯流排2420還可以鏈接本領域眾所周知的各種其他電路,諸如時序源、周邊設備、電壓調節器和電源管理電路,並且因此將不再進一步描述。
處理器2416對一般處理負責,包括儲存在處理器可讀儲存媒體2418上的軟體、代碼及/或指令的執行。處理器可讀儲存媒體2418可以包括非暫態儲存媒體。該軟體在由處理器2416執行時使處理電路2402執行以上針對任何特定裝置而描述的各種功能。處理器可讀儲存媒體2418可以用於儲存由處理器2416在執行軟體時操縱的資料。處理電路2402還包括模組2404、2406和2408中的至少一個。模組2404、2406和2408可以是在處理器2416中運行的軟體模組,常駐/儲存在處理器可讀儲存媒體2418中,耦合到處理器2416的一或多個硬體模組,或其某種組合。模組2404、2406和2408可以包括微控制器指令、狀態機配置參數或其某種組合。
在一種配置中,裝置2400是包括實體層電路2414的資料通訊裝置,實體層電路2414可以包括耦合到多線串列匯流排2412的一或多個線路驅動器電路。裝置2400包括被配置為從多線串列匯流排2412接收的符號序列中解碼資料的模組及/或電路2406、以及被配置為在接收到的符號序列中或在從符號序列中解碼的資料中偵測錯誤的模組及/或電路2408。裝置2400包括被配置為偵測在多線串列匯流排2412上進行的資料傳輸的錯誤訊號傳遞窗口並且在錯誤訊號傳遞窗口內發信號通知錯誤的模組及/或電路2404。
在一個示例中,裝置2400包括:被配置為將裝置耦合到多線串列匯流排2412的匯流排介面;被配置為從符號序列中的符號對之間的轉變中解碼資料的相位差分解碼器,符號序列從串列匯流排被接收,每個符號表示串列匯流排的訊號傳遞狀態;及處理器2416。處理器2416可以被配置為在串列匯流排的兩個線的訊號傳遞狀態中偵測錯誤訊號傳遞窗口的指示符,該錯誤訊號傳遞窗口的指示符對應於被禁止的符號組合或控制訊號傳遞的延遲,當在符號序列或錯誤訊號傳遞窗口的指示符的時序中偵測到錯誤時,在錯誤訊號傳遞窗口期間經由匯流排介面發信號通知錯誤。
在一個示例中,在符號序列中偵測到的錯誤包括同位錯誤。在另一示例中,處理器2416還被配置為當錯誤訊號傳遞窗口的指示符在在符號序列中的非預期時間或非預期位置開始時,偵測到錯誤,其中設備被預配置有錯誤訊號傳遞窗口的符號序列中的預期時間或位置的指示。在另一示例中,處理器2416還被配置為當錯誤訊號傳遞窗口的指示符在接收到完整符號序列之前開始時偵測到錯誤。處理器2416還可以被配置為當符號序列包括被禁止的符號組合中的一或多個符號時偵測到錯誤。在一些實現中,錯誤訊號傳遞窗口的指示符領先錯誤訊號傳遞窗口達一或多個符號間隔。
在一些實現中,裝置2400包括偵測電路,該偵測電路被配置為獨立於相位差分解碼器來在符號序列中或在錯誤訊號傳遞窗口的指示符的時序中偵測到錯誤。偵測電路還可以被配置為當兩個線中的第一線在三個或更多個符號間隔之每一者符號間隔之後被觸發的同時串列匯流排的兩個線中的第二線維持在第一訊號傳遞狀態時,偵測錯誤訊號傳遞窗口的指示符。當兩個線中的第一線在三個或更多個符號間隔之每一者符號間隔之後被觸發的同時串列匯流排的兩個線中的第二線維持在第二訊號傳遞狀態時,可以偵測後期傳輸或提前傳輸同步模式。
偵測電路還可以被配置為當提前終止模式被延遲時,偵測錯誤訊號傳遞窗口的指示符。
在一些情況下,該裝置被配置為作為從設備進行操作,並且資料的傳輸在發信號通知錯誤之後終止。在一些情況下,處理器還被配置為將設備作為匯流排主設備進行操作,並且傳輸被配置為在發信號通知錯誤之後終止資料的傳輸的訊號傳遞模式。
處理器可讀儲存媒體2418可以包括:使處理電路2402進行以下操作的指令:接收符號序列,每個符號表示串列匯流排的訊號傳遞狀態;從符號序列中的符號對之間的轉變中解碼資料;在串列匯流排的兩個線的訊號傳遞狀態中偵測錯誤訊號傳遞窗口的指示符,錯誤訊號傳遞窗口的指示符對應於被禁止的符號組合或控制訊號傳遞的延遲;並且當在符號序列中或在錯誤訊號傳遞窗口的指示符的時序中偵測到錯誤時,在錯誤訊號傳遞窗口期間發信號通知錯誤。
在一些示例中,在符號序列中偵測到的錯誤包括同位錯誤。當錯誤訊號傳遞窗口的指示符在符號序列中的非預期時間或非預期位置開始時,可以偵測到錯誤,其中設備被預配置有錯誤訊號傳遞窗口的符號序列中的預期時間或位置的指示。當錯誤訊號傳遞窗口的指示符在接收到完整符號序列之前開始時,可以偵測到錯誤。當符號序列包括被禁止的符號組合中的一或多個符號時,可以偵測到錯誤。在一些實現中,使用相位差分解碼器對資料進行解碼,並且使用獨立於相位差分解碼器進行操作的偵測電路來在符號序列中或在錯誤訊號傳遞窗口的指示符的時序中偵測到錯誤。
在一些示例中,處理器可讀儲存媒體2418可以包括使處理電路2402將裝置2400作為從設備進行操作的指令,並且在處理電路2402已經發信號通知錯誤之後,資料的傳輸可以終止。在其他示例中,裝置2400作為匯流排主設備進行操作,並且傳輸被配置為在發信號通知錯誤之後終止資料的傳輸的訊號傳遞模式。在一些實現中,錯誤訊號傳遞窗口的指示符領先錯誤訊號傳遞窗口達一或多個符號間隔。
在一個示例中,處理器可讀儲存媒體2418可以包括用於使處理電路2402進行以下操作的指令:當兩個線中的第一線在三個或更多個符號間隔之每一者符號間隔之後被觸發的同時串列匯流排的兩個線中的第二線維持在第一訊號傳遞狀態時,偵測錯誤訊號傳遞窗口的指示符。當兩個線中的第一線在三個或更多個符號間隔之每一者符號間隔之後被觸發的同時串列匯流排的兩個線中的第二線維持在第二訊號傳遞狀態時,可以偵測後期傳輸或提前傳輸同步模式。在另一示例中,處理器可讀儲存媒體2418可以包括使處理電路2402在提前終止模式被延遲時,偵測錯誤訊號傳遞窗口的指示符的指令。
圖25是示出可以在耦合到串列匯流排的傳輸設備處執行的方法的流程圖2500。串列匯流排可以根據一或多個I3C協定進行操作。在方塊2502,傳輸設備可以將資料編碼在符號序列中的符號對之間的轉變中。每個符號可以定義串列匯流排的訊號傳遞狀態。例如,2位元符號可以定義符號傳輸間隔中的串列匯流排的兩個線的二進位狀態,3位元符號可以定義符號傳輸間隔中的串列匯流排的三個線的二進位狀態,等等。在方塊2504,傳輸設備可以經由串列匯流排傳輸符號序列。
在方塊2506,傳輸設備可以在串列匯流排的兩個線的訊號傳遞狀態中傳輸錯誤訊號傳遞窗口的指示符。錯誤訊號傳遞窗口的指示符可以對應於被禁止的符號組合或控制訊號傳遞的延遲。在一個示例中,被禁止的符號組合可以產生訊號傳遞模式,該訊號傳遞模式激發對原本不參與資料傳輸的設備的響應。在一些示例中,傳輸設備可以在符號序列中的預配置時間或位置處傳輸錯誤訊號傳遞窗口的指示符。在方塊2508,傳輸設備可以在錯誤訊號傳遞窗口中接收指示符號序列中的錯誤或錯誤訊號傳遞窗口的指示符的時序中的錯誤的接收訊號傳遞。在方塊2510,當在錯誤訊號傳遞窗口中接收到指示錯誤的訊號傳遞時,傳輸設備可以終止資料的傳輸。
在一些示例中,傳輸設備可以使用相位差分編碼器對資料進行編碼並且可以使用獨立於相位差分編碼器進行操作的電路來產生錯誤訊號傳遞窗口的指示符。
在一些實現中,傳輸設備可以經由延遲提前終止模式來產生錯誤訊號傳遞窗口的指示符。傳輸設備可以作為匯流排主設備或從設備進行操作。在一些實現中,傳輸設備可以經由在三個或更多個符號間隔之每一者符號間隔之後觸發兩個線中的第一線,同時將串列匯流排的兩個線中的第二線維持在第一訊號傳遞狀態來產生錯誤訊號傳遞窗口的指示符。當兩個線中的第一線在三個或更多個符號間隔之每一者符號間隔之後被觸發的同時串列匯流排的兩個線中的第二線維持在第二訊號傳遞狀態時,可以偵測後期傳輸或提前傳輸同步模式。
圖26是示出用於採用處理電路2602的裝置2600的硬體實現的示例的圖。在一個示例中,裝置2600被配置用於經由根據一或多個I3C協定進行操作的串列匯流排進行的資料通訊。處理電路2602通常具有控制器或處理器2616,控制器或處理器2616可以包括一或多個微處理器、微控制器、數字信號處理器、定序器及/或狀態機。處理電路2602可以用匯流排架構來實現,匯流排架構整體上由匯流排2620表示。匯流排2620可以包括任何數目的互連匯流排和橋接器,具體取決於處理電路2602的具體應用和整體設計約束。匯流排2620將包括一或多個處理器及/或硬體模組在內的各種電路鏈接在一起,由控制器或處理器2616、模組或電路2604、2606和2608、以及處理器可讀儲存媒體2618表示。裝置2600可以使用實體層電路2614耦合到多線通訊鏈路。實體層電路2614可以操作多線串列匯流排2612以支援符合I3C協定的通訊。匯流排2620還可以鏈接本領域眾所周知的各種其他電路,諸如時序源、周邊設備、電壓調節器和電源管理電路,並且因此將不再進一步描述。
處理器2616可以負責一般處理,包括儲存在處理器可讀儲存媒體2618上的軟體、代碼及/或指令的執行。處理器可讀儲存媒體2618可以包括非暫態儲存媒體。該軟體在由處理器2616執行時使處理電路2602執行以上針對任何特定裝置而描述的各種功能。處理器可讀儲存媒體2618可以用於儲存由處理器2616在執行軟體時操縱的資料。處理電路2602還包括模組2604、2606和2608中的至少一個。模組2604、2606和2608可以是在處理器2616中運行的軟體模組,常駐/儲存在處理器可讀儲存媒體2618中,耦合到處理器2616的一或多個硬體模組,或其某種組合。模組2604、2606和2608可以包括微控制器指令、狀態機配置參數或其某種組合。
在一種配置中,裝置2600包括實體層電路2614,實體層電路2614可以包括耦合到多線串列匯流排2612的一或多個線路驅動器電路。裝置2600包括被配置將資料編碼在要經由多線串列匯流排2612進行傳輸的符號序列中的模組及/或電路2606、以及被配置為處理符號序列中的錯誤或從由接收設備報告的符號序列中解碼的資料的錯誤的模組及/或電路2608。裝置2600包括被配置為提供錯誤訊號傳遞窗口以用於經由多線串列匯流排2612進行的資料傳輸並且監測錯誤訊號傳遞窗口的模組及/或電路2604。
在一個示例中,裝置2600包括:被配置為將裝置耦合到多線串列匯流排2612的匯流排介面;被配置為從符號序列中的符號對之間的轉變中解碼資料的相位差分編碼器,符號序列從串列匯流排被接收,每個符號表示串列匯流排的訊號傳遞狀態;及處理器2616。處理器2616可以被配置為在串列匯流排的兩個線的訊號傳遞狀態中傳輸錯誤訊號傳遞窗口的指示符。錯誤訊號傳遞窗口的指示符可以對應於被禁止的符號組合或控制訊號傳遞的延遲。處理器2616還可以被配置為在錯誤訊號傳遞窗口中接收指示符號序列中的錯誤或錯誤訊號傳遞窗口的指示符的時序中的錯誤的訊號傳遞。處理器2616還可以被配置為當在錯誤訊號傳遞窗口中接收到指示錯誤的訊號傳遞時終止資料的傳輸。處理器2616還可以被配置為當在錯誤訊號傳遞窗口中接收到指示錯誤的訊號傳遞時終止資料的傳輸。
在一些實現中,裝置2600包括被配置為獨立於相位差分編碼器來產生錯誤訊號傳遞窗口的指示符的訊號傳遞電路。訊號傳遞電路可以被配置為經由延遲提前終止模式來產生錯誤訊號傳遞窗口的指示符。訊號傳遞電路可以被配置為經由在三個或更多個符號間隔之每一者符號間隔之後觸發兩個線中的第一線,同時將串列匯流排的兩個線中的第二線維持在第一訊號傳遞狀態來產生錯誤訊號傳遞窗口的指示符。當兩個線中的第一線在三個或更多個符號間隔之每一者符號間隔之後被觸發的同時串列匯流排的兩個線中的第二線維持在第二訊號傳遞狀態時,可以偵測後期傳輸或提前傳輸同步模式。在一些示例中,訊號傳遞電路可以被配置為在符號序列中的預配置時間或位置處傳輸錯誤訊號傳遞窗口的指示符。
處理器可讀儲存媒體2618可以包括使處理電路2602進行以下操作的指令:將資料編碼在符號序列中的符號對之間的轉變中,每個符號定義串列匯流排的訊號傳遞狀態;經由串列匯流排傳輸符號序列;在串列匯流排的兩個線的訊號傳遞狀態中傳輸錯誤訊號傳遞窗口的指示符,錯誤訊號傳遞窗口的指示符對應於被禁止的符號組合或控制訊號傳遞的延遲;並且在錯誤訊號傳遞窗口中接收指示符號序列中的錯誤或錯誤訊號傳遞窗口的指示符的時序中的錯誤的訊號傳遞。在一些示例中,處理器可讀儲存媒體2618可以包括使處理電路2602當在錯誤訊號傳遞窗口中接收到指示錯誤的訊號傳遞時終止資料的傳輸的指令。
在一些示例中,傳輸設備可以使用相位差分編碼器對資料進行編碼,並且可以使用獨立於相位差分編碼器進行操作的電路來產生錯誤訊號傳遞窗口的指示符。
在一些示例中,處理器可讀儲存媒體2618可以包括使處理電路2602經由在三個或更多個符號間隔之每一者符號間隔之後觸發兩個線中的第一線,同時將串列匯流排的兩個線中的第二線維持在第一訊號傳遞狀態來產生錯誤訊號傳遞窗口的指示符的指令。當兩個線中的第一線在三個或更多個符號間隔之每一者符號間隔之後被觸發的同時串列匯流排的兩個線中的第二線維持在第二訊號傳遞狀態時,可以偵測後期傳輸或提前傳輸同步模式。在一些示例中,處理器可讀儲存媒體2618可以包括使處理電路2602經由延遲提前終止模式來產生錯誤訊號傳遞窗口的指示符的指令。傳輸設備可以作為匯流排主設備或從設備進行操作。
應當理解,所揭示的程序中的步驟的特定順序或層次是對示例性方法的說明。根據設計偏好,可以理解,可以重新佈置程序中的步驟的特定順序或層次。此外,可以組合或省略一些步驟。隨附的方法請求項以示例順序呈現各個步驟的元素,並不表示限於所呈現的特定順序或層次。
提供先前描述以使得本領域技藝人士能夠實踐本文中描述的各個態樣。對這些態樣的各種修改對於本領域技藝人士來說將是很清楚的,並且本文中定義的一般原理可以應用於其他態樣。因此,請求項不旨在限於本文中示出的態樣,而是符合與語言請求項一致的全部範圍,其中除非具體如此陳述,否則對單數形式的元素的引用並不旨在表示「一個且僅一個」,而是表示「一或多個」。除非另有特別說明,否則術語「一些」是指一或多個。本領域一般技藝人士已知的或後來變得已知的在整個本案中描述的各個態樣的元素的所有結構和功能均等物經由引用明確地併入本文並且旨在被請求項所涵蓋。此外,無論請求項中是否明確引用了此類揭露,本文中揭露的任何內容均不旨在專供公眾使用。任何請求項要素均不得解釋為手段加功能,除非使用短語「用於…的手段(means for)」明確敘述該要素。
100:裝置
102:處理電路
104:ASIC
106:周邊設備
108:收發器
110:數據機
112:處理器
114:板載記憶體
116:匯流排介面電路
118a:匯流排
118b:匯流排
120:匯流排
122:處理器可讀儲存裝置
124:天線
126:顯示器
128:開關或按鈕
130:開關或按鈕
132:外部鍵盤
200:通訊鏈路
202:串列匯流排
204:主設備
206:設備
208:設備
210:設備
212:設備
214:設備
216:設備
300:裝置
302:匯流排主設備
304:介面控制器
306:配置暫存器
308:時鐘產生電路
310:收發器
312:控制邏輯
314a:線路驅動器/接收器
314b:線路驅動器/接收器
316:資料線
318:時鐘線
320:串列匯流排
322
0:從設備
322
1:從設備
322
2:從設備
322
3:從設備
324:其他儲存裝置
326:其他時序時鐘信號
328:時鐘信號
332:電路
334:配置暫存器
336:其他儲存裝置
338:其他時序時鐘信號
340:收發器
342:控制邏輯
344a:線路驅動器/接收器
344b:線路驅動器/接收器
346:時鐘產生及/或恢復電路
348:時鐘信號
350:上拉/下拉電路
352:開關
354:電阻器
360:保持電路
400:時序
402:SDA線
404:SCL線
406:開始條件
408:停止條件
410:七位元位址
412:寫/讀命令位元
414:下一時鐘間隔
500:訊號傳遞
502:資料線
504:時鐘線
506:開始條件
508:停止條件
510:重複開始
512:訊號傳遞狀態
514:脈衝
520:命令代碼傳輸
522:發起符
524:預定義位址標頭
526:命令代碼
528:傳輸資料
530:終止符
540:訊號傳遞
542:HDR退出
544:下降沿
546:上升沿
600:訊框
604:SDA
606:資料
608:位元
620:時鐘信號
622:脈衝
624:上升沿
626:下降沿
628:脈衝
700:訊框
702:SCL
704:SDA
706:前序信號
708:資料字
712:同位位元
714:8位元位元組
716:8位元位元組
720:時鐘信號
722:脈衝
724:上升沿
726:下降沿
728:脈衝
800:示例
802:SCL
804:SDA
806:輔線
808:輔線
810:輔線
820:第二示例
822:SCL
824:SDA
826:輔線
840:第三示例
842:SCL
844:SDA
900:編碼方案
902:符號排序圓
904a:可能符號分配位置
904b:可能符號分配位置
904c:可能符號分配位置
904d:可能符號分配位置
906:旋轉方向
920:表
922:先前產生的符號
930:基本符號
932:基本符號
934:基本符號
936:基本符號
940:轉變次數
1000:編碼方案
1002:逆時針位移
1004:順時針位移
1008:狀態
1010:狀態
1012:狀態
1014:狀態
1020:表
1022:位移值
1024:轉變次數
1100:時序圖
1102:原始符號值
1104:時槽
1106:符號
1120:表
1122:符號
1200:訊號傳遞
1202:SDA
1204:SCL
1206:HDR重啟模式
1208:連續符號
1210:低訊號傳遞狀態
1212:沿
1214:下一命令字
1220:訊號傳遞
1222:SDA
1224:SCL
1226:錯誤訊號傳遞窗口標識符
1228:三個或更多個連續符號
1230:高訊號傳遞狀態
1232:沿
1234:下一資料字
1300:時序圖
1302:SDA
1304:SCL
1306:時間
1308:高狀態
1310:高阻抗狀態
1312:第三符號
1314:轉變
1318:低信號狀態
1320:值「2」符號
1322:從設備貢獻
1324:從設備貢獻
1332:匯流排主設備貢獻
1334:匯流排主設備貢獻
1400:時序圖
1402:SDA
1404:SCL
1406:時間
1408:高狀態
1410:高阻抗狀態
1412:第三符號
1414:低信號狀態
1422:從設備貢獻
1424:從設備貢獻
1432:匯流排主設備貢獻
1434:匯流排主設備貢獻
1500:時序圖
1502:SDA
1504:SCL
1506:時間
1508:高狀態
1510:高阻抗狀態
1512:第三符號
1518:低信號狀態
1520:值「2」符號
1522:從設備貢獻
1524:從設備貢獻
1532:匯流排主設備貢獻
1534:匯流排主設備貢獻
1600:時序圖
1602:SDA
1604:SCL
1606:時間
1608:高訊號傳遞狀態
1610:高阻抗狀態
1612:第三符號
1614:高阻抗狀態
1618:低信號狀態
1622:從設備貢獻
1624:從設備貢獻
1632:匯流排主設備貢獻
1634:匯流排主設備貢獻
1700:訊號傳遞
1702:SDA
1704:SCL
1706:提前終止模式
1708:資料字
1710:高訊號傳遞狀態
1712:時鐘脈衝
1714:高阻抗狀態
1718:下降沿
1720:時間
1724:
1732:
1734:
1800:時序圖
1802:SDA
1804:SCL
1806:延遲
1808:提前終止模式
1810:低狀態
1812:時間
1822:從設備貢獻
1824:從設備貢獻
1832:匯流排主設備貢獻
1834:匯流排主設備貢獻
1900:時序圖
1902:SDA
1904:SCL
1906:延遲
1908:提前終止模式
1910:時間
1922:從設備貢獻
1924:從設備貢獻
1932:匯流排主設備貢獻
1934:匯流排主設備貢獻
2000:時序圖
2002:SDA
2004:SCL
2006:延遲
2008:提前終止模式
2010:低狀態
2012:時間
2022:從設備貢獻
2024:從設備貢獻
2032:匯流排主設備貢獻
2034:匯流排主設備貢獻
2100:時序圖
2102:SDA
2104:SCL
2106:延遲
2108:提前終止模式
2110:時間
2122:從設備貢獻
2124:從設備貢獻
2132:
2134:匯流排主設備貢獻
2200:裝置
2202:處理電路
2204:處理器
2206:儲存裝置
2208:匯流排介面
2210:匯流排
2212:收發器
2214:行時映射
2216:軟體模組
2218:使用者介面
2220:時間共享程式
2222:內部設備及/或邏輯電路
2300:流程圖
2302:方塊
2304:方塊
2306:方塊
2308:方塊
2400:裝置
2402:處理電路
2404:模組或電路
2406:模組或電路
2408:模組或電路
2412:多線串列匯流排
2414:實體層電路
2416:
2418:處理器可讀儲存媒體
2420:匯流排
2500:流程圖
2502:方塊
2504:方塊
2506:方塊
2508:方塊
2510:方塊
2600:裝置
2602:處理電路
2604:模組或電路
2606:模組或電路
2608:模組或電路
2612:多線串列匯流排
2614:實體層電路
2616:處理器
2618:處理器可讀儲存媒體
2620:匯流排
圖1圖示在IC設備之間採用資料鏈路的裝置,該資料鏈路根據複數個可用標準中的一個標準選擇性地操作;
圖2圖示其中使用串列匯流排連接複數個設備的通訊介面;
圖3圖示包括連接到串列匯流排的複數個設備的裝置的某些態樣;
圖4圖示與根據I2C協定發送到從設備的命令字相關的時序;
圖5圖示當串列匯流排以由I3C規範定義的操作模式進行操作時,串列匯流排上的訊號傳遞的示例;
圖6圖示I3C單資料率模式下的訊框傳輸的示例;
圖7圖示I3C高資料率模式下的訊框傳輸的示例,其中資料以雙倍資料速率(DDR)傳輸;
圖8圖示根據本文中揭露的某些態樣來配置的多線串列匯流排上的傳輸;
圖9圖示根據本文中揭露的某些態樣的用於對資料進行轉碼的編碼方案的第一示例;
圖10圖示根據本文中揭露的某些態樣的用於對資料進行轉碼的編碼方案的第二示例;
圖11圖示根據本文中揭露的某些態樣的當傳輸符號時,高資料率協定(諸如I3C協定)的訊號傳遞狀態;
圖12圖示根據本文中揭露的某些態樣的用於提供錯誤訊號傳遞窗口的訊號傳遞適配的第一示例;
圖13-16圖示根據本文中揭露的某些態樣來提供的錯誤訊號傳遞窗口的使用;
圖17圖示根據本文中揭露的某些態樣的用於提供錯誤訊號傳遞窗口的訊號傳遞適配的第二示例;
圖18-21圖示根據本文中揭露的某些態樣來提供的錯誤訊號傳遞窗口的使用;
圖22是示出採用處理電路的裝置的方塊圖,該處理電路可以根據本文中揭露的某些態樣進行適配;
圖23是示出根據本文中揭露的某些態樣的用於在耦合到串列匯流排的設備處接收資料的方法的某些態樣的流程圖;
圖24圖示根據本文中揭露的某些態樣的作為接收設備進行操作的裝置的硬體實現;
圖25是示出根據本文中揭露的某些態樣的用於從耦合到串列匯流排的設備傳輸資料的方法的某些態樣的流程圖;及
圖26圖示根據本文中揭露的某些態樣的針對作為傳輸設備進行操作的裝置的硬體實現。
國內寄存資訊(請依寄存機構、日期、號碼順序註記)
無
國外寄存資訊(請依寄存國家、機構、日期、號碼順序註記)
無
1800:時序圖
1802:SDA
1804:SCL
1806:延遲
1808:提前終止模式
1810:低狀態
1812:時間
1822:從設備貢獻
1824:從設備貢獻
1832:匯流排主設備貢獻
1834:匯流排主設備貢獻
Claims (30)
- 一種用於在耦合到一串列匯流排的一設備處接收資料的方法,包括: 接收一符號序列,每個符號表示該串列匯流排的訊號傳遞狀態; 從該符號序列中的符號對之間的轉變中解碼該資料; 在該串列匯流排的兩個線的訊號傳遞狀態中偵測一錯誤訊號傳遞窗口的一指示符,該錯誤訊號傳遞窗口的該指示符對應於一被禁止的符號組合或控制訊號傳遞的一延遲;及 當在該符號序列中或在該錯誤訊號傳遞窗口的該指示符的時序中偵測到一錯誤時,在該錯誤訊號傳遞窗口期間發信號通知該錯誤。
- 根據請求項1之方法,其中在該符號序列中偵測到的該錯誤包括一同位錯誤。
- 根據請求項1之方法,進一步包括: 當該錯誤訊號傳遞窗口的該指示符在該符號序列中的一非預期時間或一非預期位置開始時,偵測該錯誤,其中該設備被預配置有該錯誤訊號傳遞窗口的該符號序列中的預期時間或位置的一指示。
- 根據請求項1之方法,還包括: 當該錯誤訊號傳遞窗口的該指示符在接收到一完整符號序列之前開始時,偵測該錯誤。
- 根據請求項1之方法,其中該錯誤訊號傳遞窗口的該指示符領先該錯誤訊號傳遞窗口達一或多個符號間隔。
- 根據請求項1之方法,進一步包括: 使用一相位差分解碼器解碼該資料;及 使用獨立於該相位差分解碼器進行操作的一偵測電路,來在該符號序列中或在該錯誤訊號傳遞窗口的該指示符的該時序中偵測該錯誤。
- 根據請求項1之方法,其中該設備被配置為作為一從設備進行操作,並且其中該資料的傳輸在發信號通知該錯誤之後終止。
- 根據請求項1之方法,進一步包括: 將該設備作為一匯流排主設備進行操作;及 傳輸一訊號傳遞模式,該訊號傳遞模式被配置為在發信號通知該錯誤之後終止該資料的傳輸。
- 根據請求項1之方法,進一步包括: 當該串列匯流排的該兩個線中的一第一線在三個或更多個符號間隔之每一者符號間隔之後被觸發的同時該串列匯流排的該兩個線中的一第二線維持在一第一訊號傳遞狀態時,偵測該錯誤訊號傳遞窗口的該指示符;及 當該串列匯流排的該兩個線中的該第一線在三個或更多個符號間隔之每一者符號間隔之後被觸發的同時該串列匯流排的該兩個線中的該第二線維持在一第二訊號傳遞狀態時,偵測一同步模式。
- 根據請求項1之方法,進一步包括: 當一提前終止模式被延遲時,偵測該錯誤訊號傳遞窗口的該指示符。
- 一種資料通訊裝置,包括: 一匯流排介面,被配置為將該資料通訊裝置耦合一到串列匯流排; 一相位差分解碼器,被配置為從一符號序列中的符號對之間的轉變中解碼資料,該符號序列從該串列匯流排被接收,每個符號表示該串列匯流排的訊號傳遞狀態;及 一處理器,被配置為: 在該串列匯流排的兩個線的訊號傳遞狀態中偵測一錯誤訊號傳遞窗口的一指示符,該錯誤訊號傳遞窗口的該指示符對應於一被禁止的符號組合或控制訊號傳遞的一延遲;及 當在該符號序列中或在該錯誤訊號傳遞窗口的該指示符的時序中偵測到一錯誤時,在該錯誤訊號傳遞窗口期間經由該匯流排介面發信號通知該錯誤。
- 根據請求項11之資料通訊裝置,其中在該符號序列中偵測到的該錯誤包括一同位錯誤。
- 根據請求項11之資料通訊裝置,其中該處理器進一步被配置為: 當該錯誤訊號傳遞窗口的該指示符在該符號序列中的一非預期時間或一非預期位置開始時,偵測該錯誤,其中該資料通訊裝置被預配置有該錯誤訊號傳遞窗口的該符號序列中的預期時間或位置的一指示。
- 根據請求項11之資料通訊裝置,其中該處理器進一步被配置為: 當該錯誤訊號傳遞窗口的該指示符在接收到一完整符號序列之前開始時,偵測該錯誤。
- 根據請求項11之資料通訊裝置,其中該錯誤訊號傳遞窗口的該指示符領先該錯誤訊號傳遞窗口達一或多個符號間隔。
- 根據請求項11之資料通訊裝置,進一步包括: 一偵測電路,被配置為獨立於該相位差分解碼器來在該符號序列中或在該錯誤訊號傳遞窗口的該指示符的該時序中偵測該錯誤。
- 根據請求項16之資料通訊裝置,其中該偵測電路進一步被配置為: 當該串列匯流排的該兩個線中的一第一線在三個或更多個符號間隔之每一者符號間隔之後被觸發的同時該串列匯流排的該兩個線中的一第二線維持在一第一訊號傳遞狀態時,偵測該錯誤訊號傳遞窗口的該指示符;及 當該串列匯流排的該兩個線中的該第一線在三個或更多個符號間隔之每一者符號間隔之後被觸發的同時該串列匯流排的該兩個線中的該第二線維持在一第二訊號傳遞狀態時,偵測一同步模式。
- 根據請求項16之資料通訊裝置,其中該偵測電路進一步被配置為: 當一提前終止模式被延遲時,偵測該錯誤訊號傳遞窗口的該指示符。
- 根據請求項11之資料通訊裝置,其中該資料通訊裝置被配置為作為一從設備進行操作,並且其中該資料的傳輸在發信號通知該錯誤之後終止。
- 根據請求項11之資料通訊裝置,其中該處理器進一步被配置為: 將該資料通訊裝置作為一匯流排主設備進行操作;及 傳輸一訊號傳遞模式,該訊號傳遞模式被配置為在發信號通知該錯誤之後終止該資料的傳輸。
- 一種用於從耦合到一串列匯流排的一設備傳輸資料的方法,包括: 將該資料編碼在一符號序列中的符號對之間的轉變中,每個符號定義該串列匯流排的訊號傳遞狀態; 經由該串列匯流排傳輸該符號序列; 在該串列匯流排的兩個線的訊號傳遞狀態中傳輸一錯誤訊號傳遞窗口的一指示符,該錯誤訊號傳遞窗口的該指示符對應於一被禁止的符號組合或控制訊號傳遞的一延遲; 在該錯誤訊號傳遞窗口中接收指示該符號序列中的一錯誤或該錯誤訊號傳遞窗口的該指示符的時序中的一錯誤的訊號傳遞;及 當在該錯誤訊號傳遞窗口中接收到指示該錯誤的訊號傳遞時,終止該資料的傳輸。
- 根據請求項21之方法,進一步包括: 使用一相位差分編碼器對該資料進行編碼;及 使用獨立於該相位差分編碼器進行操作的一電路,來產生該錯誤訊號傳遞窗口的該指示符。
- 根據請求項21之方法,進一步包括: 經由在三個或更多個符號間隔之每一者符號間隔之後觸發該串列匯流排的該兩個線中的一第一線,同時將該串列匯流排的該兩個線中的一第二線維持在一第一訊號傳遞狀態,來產生該錯誤訊號傳遞窗口的該指示符, 其中當在該串列匯流排上傳輸一同步模式時,該串列匯流排的該兩個線中的該第一線在三個或更多個符號間隔之每一者符號間隔之後被觸發,同時該串列匯流排的該兩個線中的該第二線維持在一第二訊號傳遞狀態。
- 根據請求項21之方法,進一步包括: 在該符號序列中的一預配置時間或位置處傳輸該錯誤訊號傳遞窗口的該指示符。
- 根據請求項21之方法,進一步包括: 經由延遲一提前終止模式來產生該錯誤訊號傳遞窗口的該指示符。
- 一種資料通訊裝置,包括: 一匯流排介面,被配置為將該資料通訊裝置耦合到一串列匯流排; 一相位差分編碼器,被配置為將資料編碼在一符號序列中的符號對之間的轉變中,每個符號定義該串列匯流排的訊號傳遞狀態;及 一處理器,被配置為: 在該串列匯流排的兩個線的訊號傳遞狀態中傳輸一錯誤訊號傳遞窗口的一指示符,該錯誤訊號傳遞窗口的該指示符對應於一被禁止的符號組合或控制訊號傳遞的一延遲; 在該錯誤訊號傳遞窗口中接收指示該符號序列中的一錯誤或該錯誤訊號傳遞窗口的該指示符的時序中的一錯誤的訊號傳遞;及 當在該錯誤訊號傳遞窗口中接收到指示該錯誤的訊號傳遞時,終止該資料的傳輸。
- 根據請求項26之資料通訊裝置,進一步包括: 一訊號傳遞電路,被配置為獨立於該相位差分編碼器產生該錯誤訊號傳遞窗口的該指示符。
- 根據請求項27之資料通訊裝置,其中該訊號傳遞電路還被配置為: 經由在三個或更多個符號間隔之每一者符號間隔之後觸發該串列匯流排的該兩個線中的一第一線,同時將該串列匯流排的該兩個線中的一第二線維持在一第一訊號傳遞狀態,來產生該錯誤訊號傳遞窗口的該指示符, 其中當在該串列匯流排上傳輸一同步模式時,該串列匯流排的該兩個線中的該第一線在三個或更多個符號間隔之每一者符號間隔之後被觸發,同時該串列匯流排的該兩個線中的該第二線維持在一第二訊號傳遞狀態。
- 根據請求項27之資料通訊裝置,其中該訊號傳遞電路進一步被配置為: 經由一延遲提前終止模式來產生該錯誤訊號傳遞窗口的該指示符。
- 根據請求項27之資料通訊裝置,其中該訊號傳遞電路進一步被配置為: 使該匯流排介面在該符號序列中的一預配置時間或位置傳輸該錯誤訊號傳遞窗口的該指示符。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/027,541 | 2020-09-21 | ||
US17/027,541 US11531608B2 (en) | 2020-09-21 | 2020-09-21 | Error signaling windows for phase-differential protocols |
Publications (1)
Publication Number | Publication Date |
---|---|
TW202213115A true TW202213115A (zh) | 2022-04-01 |
Family
ID=77519797
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW110128508A TW202213115A (zh) | 2020-09-21 | 2021-08-03 | 相位差分協定的錯誤訊號傳遞窗口 |
Country Status (4)
Country | Link |
---|---|
US (1) | US11531608B2 (zh) |
CN (1) | CN116018588A (zh) |
TW (1) | TW202213115A (zh) |
WO (1) | WO2022060478A1 (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US12007934B1 (en) * | 2023-01-12 | 2024-06-11 | Qualcomm Incorporated | Corrupt packet detector for C-PHY receiver |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7788567B1 (en) * | 2003-11-18 | 2010-08-31 | Apple Inc. | Symbol encoding for tolerance to single byte errors |
DE102014219512A1 (de) * | 2014-09-26 | 2016-03-31 | Dr. Johannes Heidenhain Gmbh | Verfahren und Vorrichtung zur seriellen Datenübertragung über einen bidirektionalen Datenübertragungskanal |
CN106598891B (zh) | 2015-10-15 | 2021-04-30 | 恩智浦美国有限公司 | 集成电路间i2c总线系统中的从设备报警信号 |
EP3535625B1 (en) * | 2016-12-07 | 2021-02-24 | Arilou Information Security Technologies Ltd. | System and method for using signal waveform analysis for detecting a change in a wired network |
US20180181532A1 (en) | 2016-12-22 | 2018-06-28 | Qualcomm Incorporated | Data transfer ending in phase differential modes |
DE112018005256T5 (de) * | 2017-09-18 | 2020-07-02 | Intel Corporation | Zeitkodiertes Datenkommunikationsprotokoll, Vorrichtung und Verfahren zum Erzeugen und Empfangen eines Datensignals |
US20190356412A1 (en) | 2018-05-16 | 2019-11-21 | Qualcomm Incorporated | Fast termination of multilane double data rate transactions |
US11182477B2 (en) * | 2019-04-30 | 2021-11-23 | Cylance Inc. | System abnormality detection using signal fingerprinting |
-
2020
- 2020-09-21 US US17/027,541 patent/US11531608B2/en active Active
-
2021
- 2021-08-03 WO PCT/US2021/044368 patent/WO2022060478A1/en active Application Filing
- 2021-08-03 CN CN202180053742.9A patent/CN116018588A/zh active Pending
- 2021-08-03 TW TW110128508A patent/TW202213115A/zh unknown
Also Published As
Publication number | Publication date |
---|---|
WO2022060478A1 (en) | 2022-03-24 |
CN116018588A (zh) | 2023-04-25 |
US20220091952A1 (en) | 2022-03-24 |
US11531608B2 (en) | 2022-12-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11010327B2 (en) | I3C point to point | |
US9811499B2 (en) | Transcoding and transmission over a serial bus | |
US10007628B2 (en) | Dynamically adjustable multi-line bus shared by multi-protocol devices | |
US10241955B2 (en) | Dynamically adjustable multi-line bus shared by multi-protocol devices | |
TWI822849B (zh) | 混合模式射頻前端介面 | |
US10579581B2 (en) | Multilane heterogeneous serial bus | |
KR20160147842A (ko) | 센서 글로벌 버스 | |
TW201937378A (zh) | 用於i3c匯流排的使用脈衝計數調制的資料包內關鍵信號傳遞 | |
US9880895B2 (en) | Serial interface with bit-level acknowledgement and error correction | |
US10684981B2 (en) | Fast termination of multilane single data rate transactions | |
US20230350841A1 (en) | Providing acknowledgements for system power management interface | |
TW202213115A (zh) | 相位差分協定的錯誤訊號傳遞窗口 | |
US20190095273A1 (en) | Parity bits location on i3c multilane bus | |
TW201904236A (zh) | 串列匯流排中止之際的糾錯計算 | |
US20210173808A1 (en) | Early parity error detection on an i3c bus | |
WO2018005516A1 (en) | Accelerated i3c master stop | |
WO2019070361A1 (en) | MULTI-LINE BUS WITH DYNAMIC ADJUSTMENT SHARED BY MULTIPROTOCOL DEVICES | |
US20180357067A1 (en) | In-band hardware reset for virtual general purpose input/output interface | |
US11360916B2 (en) | Group slave identifier time-multiplexed acknowledgment for system power management interface |