TW201926064A - 用於時間臨界資料交換之多點下傳匯流排上之位元交錯雙向傳輸 - Google Patents

用於時間臨界資料交換之多點下傳匯流排上之位元交錯雙向傳輸 Download PDF

Info

Publication number
TW201926064A
TW201926064A TW107139889A TW107139889A TW201926064A TW 201926064 A TW201926064 A TW 201926064A TW 107139889 A TW107139889 A TW 107139889A TW 107139889 A TW107139889 A TW 107139889A TW 201926064 A TW201926064 A TW 201926064A
Authority
TW
Taiwan
Prior art keywords
data
bus
transmitted
serial bus
bit
Prior art date
Application number
TW107139889A
Other languages
English (en)
Inventor
拉藍 傑 米序拉
理查 多明尼克 韋特費爾德
Original Assignee
美商高通公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 美商高通公司 filed Critical 美商高通公司
Publication of TW201926064A publication Critical patent/TW201926064A/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/36Handling requests for interconnection or transfer for access to common bus or bus system
    • G06F13/362Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • G06F1/10Distribution of clock signals, e.g. skew
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • G06F13/4291Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus using a clocked protocol

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Systems (AREA)

Abstract

本發明描述用於使用一串列匯流排上之位元交錯雙向傳輸來最佳化匯流排延時的系統、方法及設備。一種在耦接至一串列匯流排之一裝置處執行的方法包括:在待經由該串列匯流排進行之一異動中與一第二裝置配對;在該串列匯流排之一時脈線上所傳輸的一時脈信號之複數個循環中的每一循環之一第一部分中,經由該串列匯流排之一資料線將一第一資料位元傳輸至該第二裝置;及在該每一循環之一第二部分中,在該資料線上接收藉由該第二裝置傳輸之一第二資料位元。該串列匯流排可根據一I3C、RFFE、SPMI或其他協定來操作。

Description

用於時間臨界資料交換之多點下傳匯流排上之位元交錯雙向傳輸
本發明大體上係關於經由共用串列匯流排之串列通信,且更特定而言,係關於最佳化與經由共用串列匯流排傳輸之時間臨界資料相關聯的延時。
行動通信裝置可包括多種組件,包括電路板、積體電路(IC)裝置及/或系統單晶片(SoC)裝置。該等組件可包括處理裝置、使用者介面組件、儲存器及經由共用資料通信匯流排通信之其他周邊組件,該等匯流排係諸如多點下傳串列匯流排或並列匯流排。通用串列介面為業界所知,包括積體間電路(I2C或I²C)串列匯流排及其衍生物及替代物。某些串列介面標準及協定由行動業界處理器介面(MIPI)聯盟定義,包括I3C、系統功率管理介面(SPMI)以及射頻前端(RFFE)介面標準及協定。
I3C串列匯流排為預期用於將感測器及其他周邊裝置連接至處理器之串列匯流排。在一些實施中,多個匯流排主控器耦接至串列匯流排,從而使得兩個或兩個以上裝置可充當用於在串列匯流排上傳輸之不同訊息的匯流排主控器。RFFE標準及協定界定可用於控制各種射頻(RF)前端裝置之通信介面,該等前端裝置包括功率放大器(PA)、低雜訊放大器(LNA)、天線調諧器、濾波器、感測器、功率管理裝置、交換器等。此等裝置可同置於單一IC裝置中或經提供於多個IC裝置中。在行動通信裝置中,多個天線及無線電收發器可支援多個並行RF鏈路。SPMI標準及協定界定可實施於基頻/應用程式處理器與周邊裝置之間的硬體介面。在一些實施中,SPMI經實施以支援裝置內的功率管理操作。
在許多情況下,多點下傳串列介面可經提供以支援應用程式處理器與某些周邊裝置之間的高優先級、低延時通信,及其他較低優先級通信。當耦接至串列匯流排之多個裝置係並行在作用中時,延時可不利地受到影響。降級之延時可導致串列匯流排上丟棄之封包、會話逾時及再傳輸的增大。由於行動通信裝置持續包括更高層級之功能性,因此需要改良式串列通信技術,以改良耦接周邊裝置及應用程式處理器之串列匯流排上的延時及/或優先級訊務之處置。
本發明之某些態樣係關於可支援串列匯流排上之位元交錯傳輸的系統、設備、方法及技術。
在本發明之各種態樣中,一種在耦接至一串列匯流排之一裝置處執行的方法包括:在待經由該串列匯流排進行之一異動中與一第二裝置配對;在該串列匯流排之一時脈線上所傳輸的一時脈信號之複數個循環中的每一循環之一第一部分中,經由該串列匯流排之一資料線將一第一資料位元傳輸至該第二裝置;及在該每一循環之一第二部分中,在該資料線上接收藉由該第二裝置傳輸之一第二資料位元。該串列匯流排可根據一I3C、RFFE、SPMI或其他協定來操作。
在一個態樣中,與該第二裝置配對包括在該串列匯流排上傳輸一裝置位址,該裝置位址識別該第二裝置。與該第二裝置配對可包括在傳輸該裝置位址之前在該串列匯流排上傳輸一序列開始狀況,或在傳輸該裝置位址之前作為一從屬裝置參與匯流排仲裁以獲得對該串列匯流排之存取。該第一裝置與該第二裝置可在該裝置位址藉由該第二裝置接收之後有效地配對。
在本發明之各種態樣中,一種處理器可讀儲存媒體於其上儲存有一或多個指令。該等指令可藉由一處理電路中之至少一個處理器或狀態機執行。該等指令可使得該處理電路:在待經由該串列匯流排進行之一異動中與一第二裝置配對;在該串列匯流排之一時脈線上所傳輸的一時脈信號之複數個循環中的每一循環之一第一部分中,經由該串列匯流排之一資料線將一第一資料位元傳輸至該第二裝置;及在每一循環之一第二部分中,在該資料線上接收藉由該第二裝置傳輸之一第二資料位元。該串列匯流排可根據一RFFE協定或一SPMI協定來操作。
在本發明之各種態樣中,一種資料通信設備包括經組態以將該設備耦接至一串列匯流排的一收發器,及耦接至該收發器之一處理器。該處理器可經組態以:在待經由一串列匯流排進行之一異動中將該設備與一第二裝置配對,且藉由在該串列匯流排之一時脈線上所傳輸的一時脈信號之複數個循環中的每一循環之一第一部分中,經由該串列匯流排之一資料線將一第一資料位元傳輸至該第二裝置,及在該每一循環之一第二部分中,在該資料線上接收藉由該第二裝置傳輸之一第二資料位元,來使用該收發器與該第二裝置交換資料。
在本發明之各種態樣中,一種設備包括用於在待經由該串列匯流排進行之一異動中與一第二裝置配對的構件,及用於與該第二裝置交換資料的構件。用於交換資料的該構件可經組態以在該串列匯流排之一時脈線上所傳輸的一時脈信號之複數個循環中的每一循環之一第一部分中,經由該串列匯流排之一資料線將一第一資料位元傳輸至該第二裝置,及在該每一循環之一第二部分中,在該資料線上接收藉由該第二裝置傳輸之一第二資料位元。該串列匯流排可根據一I3C、RFFE、SPMI或其他協定來操作。
相關申請案之交叉參考
本申請案主張2018年11月8日於美國專利及商標局申請之非臨時專利申請案第16/184,284號及2017年12月5日於美國專利及商標局申請之臨時專利申請案第62/594,953號的優先權及權益。
下文結合附圖闡述之實施方式意欲作為對各種組態之描述,且並不意欲表示可實踐本文中所描述之概念的僅有組態。出於提供對各種概念之透徹理解之目的,實施方式包括具體細節。然而,對於熟習此項技術者而言,可在無此等具體細節之情況下實踐此等概念將為顯而易見的。在一些情況下,熟知結構及組件係以方塊圖形式展示,以便避免混淆此等概念。
現將參考各種設備及方法來呈現本發明之若干態樣。將由各種區塊、模組、組件、電路、步驟、處理程序、演算法等(統稱為「元件」)在以下詳細描述中描述且在附圖中說明此等設備及方法。此等元件可使用電子硬體、電腦軟體或其任何組合來予以實施。是否將此等元件實施為硬體或軟體取決於特定應用程式及強加於整個系統上之設計約束。
概述
包括多個SoC之裝置及其他IC裝置常常採用可包括串列匯流排或其他資料通信鏈路的共用通信介面以將處理器與數據機及其他周邊裝置連接。串列匯流排或其他資料通信鏈路可根據所界定之多個標準或協定而操作。舉例而言,串列匯流排可根據I2C、I3C、SPMI及/或RFFE協定操作,該等標準或協定通常經界定及/或經組態用於半雙工操作。增大串列匯流排之利用,及/或強加支援應用程式、周邊裝置及感測器之更嚴格的時序約束會導致對經縮短傳輸延時之需求。傳輸延時可包括終止串列匯流排上之過程中的異動、匯流排回轉(turnaround)(於傳輸模式與接收模式之間)、匯流排仲裁及/或藉由協定指定之命令傳輸所需的時間。
在一些實施中,一種縮短延時之暴力方法包括增大傳輸時脈頻率。增大時脈頻率與增大對電池壽命敏感之裝置內的功率消耗相關聯,且可能致使電磁干擾增大。
在某些應用中,高匯流排延時可限制串列匯流排之能力及功能性。舉例而言,匯流排延時可能限制可藉由RFFE匯流排或SPMI匯流排耦接之射頻(RF)裝置的數目。在一些實例中,可實施多個串列匯流排,以使得RF或其他低延時裝置能夠在緊張時間約束內通信,包括匯流排輸貫量、利用率及/或其他操作特性另外易於藉由單一匯流排支援的情況。
根據本文所揭示之某些態樣,作為半雙工串列匯流排上之異動的相關方的裝置可在耦接至該串列匯流排之兩個裝置之間所建立的單一異動內雙向地交換位元級資料。在異動之持續時間內配對的裝置可在兩個方向中交換有效負載及控制資料。在習知實施中,半雙工通信係使用主控器起始之輪詢或從屬器起始之匯流排仲裁來實施,以控制經由串列匯流排之資料傳輸的方向。與輪詢及匯流排仲裁相關聯之協定負擔明顯促使匯流排延時。
在本文所揭示之某些態樣中,兩個裝置可在異動之持續時間內配對,或在啟用雙向通信之期間內的一系列異動內配對。在一個實例中,可經由半雙工串列鏈路建立「全雙工異動」,以正向傳輸一多位元組資料報,同時允許反向傳輸一或多個位元組。位元級交錯可相比支援處於資料報層級之匯流排回轉的習知協定,更有效地支援新興的延時敏感之匯流排協定。位元級交錯可相比本文所揭示的支援處於位元組層級之匯流排回轉的協定,更有效地支援新興的延時敏感之匯流排協定。位元級交錯可用以處置不同資料大小,包括以子位元組大小為單位傳輸之資料。
在一個實例中,資料在寫入異動期間自主控裝置正向傳輸至從屬裝置。在另一實例中,資料在讀取異動期間自從屬裝置正向傳輸至主控裝置。在一些實例中,正向方向可被指派至自主控裝置至從屬裝置之任何通信,且反向方向可被指派至自從屬裝置至主控裝置之任何通信。
根據各種態樣,經由半雙工串列匯流排的正向及反向傳輸可交替,且主控裝置與從屬裝置可在兩個方向上交換不相關資料。舉例而言,主控裝置可將組態資料寫入至從屬裝置,同時從屬裝置正於同一異動內將狀態資訊傳輸至主控裝置。主控裝置可起始異動以將資料報發送至從屬裝置,且主控裝置可在正發送資料報的同時準備好接收反向資料。本文所揭示之技術及程序並不需要主控裝置在資料報內傳輸匯流排回轉命令。本文所揭示之技術及程序可縮短整體匯流排延時,且防止在使用習知匯流排管理協定促進經由串列匯流排之雙向通信時可能以其他方式產生的逾時、丟棄之封包及錯過之狀態及/或事件。本文所揭示之技術及程序可實施於多種多點下傳串列匯流排架構中,包括根據RFFE、I3C及SPMI協定操作之串列匯流排。
採用串列資料鏈路的設備之實例
根據某些態樣,串列資料鏈路可用於互連電子裝置,該等電子裝置為一設備之子組件,該設備諸如:蜂巢式電話、智慧型電話、會話起始協定(SIP)電話、膝上型電腦、筆記型電腦、迷你筆記型電腦、智能本、個人數位助理(PDA)、衛星無線電、全球定位系統(GPS)裝置、智慧型家庭裝置、智慧型照明、多媒體裝置、視訊裝置、數位音訊播放器(例如,MP3播放器)、攝影機、遊戲控制台、娛樂裝置、汽車組件、可穿戴計算裝置(例如,智慧型手錶、健康或健身跟蹤器、護目鏡等)、電器、感測器、安全性裝置、自動販賣機、智慧型儀錶、無人駕駛飛機、多旋翼飛行器或任何其他類似功能裝置。
圖1說明可採用資料通信匯流排之設備100的實例。設備100可包括具有多個組件及/或裝置104、106及/或108之處理電路102,且其可實施於一或多個ASIC或一SoC中。在一個實例中,設備100可為通信裝置且處理電路102可包括在ASIC 104、一或多個周邊裝置106及收發器108中所提供的處理裝置,該收發器使設備能夠經由天線124與無線電存取網路、核心存取網路、網際網路及/或另一網路通信。
ASIC 104可具有一或多個處理器112、一或多個數據機110、機載記憶體114、匯流排介面電路116及/或其他邏輯電路或功能。處理電路102可藉由可提供應用程式設計介面(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可經組態以根據通信規範或協定操作。處理電路102可包括或控制一功率管理功能,其組態及管理設備100之操作。
圖2說明設備200之某些態樣,該設備包括耦接至串列匯流排220之多個裝置202及2220 至222N 。裝置202及2220 至222N 可實施於諸如應用程式處理器、SoC或ASIC之一或多個半導體IC裝置中。在各種實施中,裝置202及2220 至222N 可包括、支援以下各者或作為以下各者操作:數據機、信號處理裝置、顯示驅動器、攝影機、使用者介面、感測器、感測器控制器、媒體播放器、收發器及/或其他此類組件或裝置。在一些實例中,從屬裝置2220 至222N 中之一或多者可用以控制、管理或監視感測器裝置。裝置202及2220 至222N 之間的經由串列匯流排220之通信受匯流排主控器202控制。某些類型匯流排可支援多個匯流排主控裝置202。
在一個實例中,匯流排主控裝置202可包括介面控制器204,該介面控制器可管理對串列匯流排之存取、組態從屬裝置2220 至222N 之動態位址及/或產生待在串列匯流排220之時脈線218上傳輸的時脈信號228。匯流排主控裝置202可包括組態暫存器206或其他儲存器224,及經組態以處置協定及/或較高層級功能之其他控制邏輯212。控制邏輯212可包括一諸如狀態機、定序器、信號處理器或通用處理器之處理電路。匯流排主控裝置202包括收發器210及線驅動器/接收器214a及214b。收發器210可包括接收器、傳輸器及共同電路,其中共同電路可包括時序、邏輯及儲存電路及/或裝置。在一個實例中,傳輸器基於由時脈產生電路208提供之時脈信號228中之時序來編碼及傳輸資料。其他時序時脈226可由控制邏輯212及其他功能、電路或模組使用。
至少一個裝置2220 至222N 可經組態以在串列匯流排220上作為從屬裝置操作,且可包括支援顯示器、影像感測器之電路及模組,及/或控制及與量測環境狀況之一或多個感測器通信的電路及模組。在一個實例中,經組態以作為從屬裝置操作之從屬裝置2220 可提供控制功能、模組或電路232,其包括支援顯示器、影像感測器之電路及模組及/或控制及與量測環境狀況之一或多個感測器通信的電路及模組。從屬裝置2220 可包括組態暫存器234或其他儲存器236、控制邏輯242、收發器240及線驅動器/接收器244a及244b。控制邏輯242可包括諸如狀態機、定序器、信號處理器或通用處理器之處理電路。收發器210可包括接收器、傳輸器及共同電路,其中共同電路可包括時序、邏輯及儲存電路及/或裝置。在一個實例中,傳輸器基於由時脈產生及/或恢復電路246提供之時脈信號248中之時序來編碼及傳輸資料。時脈信號248可自接收自時脈線218之信號導出。其他時序時脈238可由控制邏輯242及其他功能、電路或模組使用。
串列匯流排220可根據RFFE、I2C、I3C、SPMI或其他協定操作。至少一個裝置202、2220 至222N 可經組態以在串列匯流排220上作為主控裝置及從屬裝置操作。兩個或兩個以上裝置202、2220 至222N 可經組態以在串列匯流排220上作為主控裝置操作。
在一些實施中,可根據I3C協定來操作串列匯流排220。使用I3C協定通信的裝置可與使用I2C協定通信之裝置共存於同一串列匯流排220上。I3C協定可支援不同通信模式,包括與I2C協定相容之單資料速率(SDR)模式。高資料速率(HDR)模式可提供介於6百萬位元每秒(Mbps)與16 Mbps之間的資料傳送速率,且一些HDR模式可提供較高資料傳送速率。I2C協定可實際上符合提供範圍可介於100千位元/秒(kbps)與3.2 Mbps之間的資料速率之I2C標準。除匯流排控制之資料格式及態樣外,I2C及I3C協定亦可定義在2線串列匯流排220上傳輸之信號的電及時序態樣。在一些態樣中,I2C及I3C協定可定義影響與串列匯流排220相關聯之某些信號位準的直流電(DC)特性,及/或影響在串列匯流排220上傳輸之信號之某些時序態樣的交流電(AC)特性。在一些實例中,2線串列匯流排220在資料線216上傳輸資料且在時脈線218上傳輸時脈信號。在一些情況下,可在發信狀態中編碼資料,或在資料線216及時脈線218之發信狀態中轉變資料。
圖3為說明包括RFFE前端裝置318、320、322、324、326、328之裝置302之實例的方塊圖300。多個RFFE匯流排330、332、334經提供以耦接裝置之各種組合。在此實例中,數據機304包括將數據機304耦接至第一RFFE匯流排330之RFFE介面308。數據機304可經由一或多個通信鏈路310、336與基頻處理器306及射頻IC (RFIC 312)通信。所說明裝置302可體現於行動通信裝置、行動電話、行動計算系統、行動電話、筆記本電腦、平板計算裝置、媒體播放器、遊戲裝置、可穿戴計算及/或通信裝置、電器或其類似者中之一或多者中。
在各種實例中,裝置302可藉由一或多個基頻處理器306、數據機304、RFIC 312、多個通信鏈路310、336、多個RFFE匯流排330、332、334及/或其他類型匯流排實施。裝置302可包括其他處理器、電路、模組且可經組態用於各種操作及/或不同功能性。在圖3中所說明之實例中,數據機經由其RFFE介面308及第一RFFE匯流排330耦接至RF調諧器318。RFIC 312可包括一或多個RFFE介面314、316、控制器、狀態機及/或處理器,其組態及控制RF前端之某些態樣。RFIC 312可經由其RFFE介面314中之第一者及第二RFFE匯流排332與PA 320及功率追蹤模組322通信。RFIC 312可與交換器324及一或多個LNA 326、328通信。
MIPI聯盟SPMI標準及協定指定可實施於基頻或應用程式處理器與周邊組件之間的硬體介面以支援包括與功率管理操作相關之資料通信的多種資料通信功能。圖4說明包括資料通信鏈路410、412的系統400之實例,其中資料通信鏈路410、412中之每一者經組態為根據SPMI協定操作的兩線串列匯流排。在一個實例中,第一資料通信鏈路410可用於連接應用程式處理器402之整合電力控制器與第一功率管理積體電路(PMIC 406)中之電壓調節系統,且第二資料通信鏈路412可用於連接數據機4041 之整合電力控制器與第二PMIC 408中之電壓調節系統。資料通信鏈路410、412可用以準確監視並控制給定工作負荷或應用所要求的處理器效能位準並基於效能位準即時動態控制各種供應電壓。資料通信鏈路410、412可用以攜載應用程式處理器402與第一PMIC 406之間及/或數據機4041 與第二PMIC 408之間的其他類型之資料。SPMI資料通信鏈路可經實施為用以連接多種不同裝置及攜載其他類型之資料的多點下傳串列鏈路。一些SPMI資料通信鏈路可經最佳化用於即時功率管理功能。一些SPMI資料通信鏈路可用作為裝置提供高速低延時連接的共用匯流排,其中資料傳輸可根據經指派給不同訊務類別之優先級來管理。
系統400包括應用程式處理器402,其可充當各種資料通信鏈路410、422、424、多個周邊裝置4041 至404 N 及一或多個PMIC 406上的主機裝置。應用程式處理器402及數據機4041 可使用利用SPMI主控器414、418實施之功率管理介面耦接至各別PMIC 406、408。SPMI主控器414、418與在PMIC 406、408中提供的對應SPMI從屬器416、420通信以促進對PMIC 406、408之即時控制。應用程式處理器402可使用不同類型資料通信鏈路410、412耦接至周邊裝置4041 至404 N 中之每一者。舉例而言,資料通信鏈路410、412可根據諸如RFFE、SPMI、I3C協定之一或多個協定操作。
匯流排延時可影響串列匯流排處置高優先級、即時及/或其他時間約束訊息的能力。低延時訊息或需要低匯流排延時之訊息可與感測器狀態、裝置產生之即時事件及虛擬化通用輸入/輸出(GPIO)有關。在一個實例中,匯流排延時可經量測為訊息變得可供用於傳輸與訊息之遞送(或在一些情況下,訊息之傳輸的開始)之間經過的時間。可使用對匯流排延時之其他量測。匯流排延時通常包括在傳輸較高優先級訊息時引發的延遲、中斷處理、終止串列匯流排上之過程中之異動所需要的時間、傳輸引起在傳輸模式與接收模式之間的匯流排回轉、匯流排仲裁及/或藉由協定指定的命令傳輸之命令的時間。
虛擬GPIO訊息為低延時訊息的一個實例。行動通信裝置及與行動通信裝置相關或連接至行動通信裝置之其他裝置愈來愈提供較大能力、效能及功能性。在許多情況下,行動通信裝置併有使用多種通信鏈路連接的多個IC裝置。舉例而言,圖5說明包括應用程式處理器502及多個周邊裝置504、506、508之設備500。在實例中,每一周邊裝置504、506、508經由可根據相互不同的協定操作的各別通信鏈路510、512、514與應用程式處理器502通信。應用程式處理器502與每一周邊裝置504、506、508之間的通信可涉及在應用程式處理器502與周邊裝置504、506、508之間攜載控制或命令信號的額外線。此等額外線可被稱為旁頻帶GPIO 520、522、524,且在一些情況中,旁頻帶GPIO 520、522、524所必需的連接之數目可超出通信鏈路510、512、514所用的連接之數目。
GPIO包括可經定製用於特定應用之通用接腳/連接件。舉例而言,GPIO接腳可程式化以根據應用需求充當輸出接腳、輸入接腳或雙向接腳。在一個實例中,應用程式處理器502可指派及/或組態數個GPIO接腳以與諸如數據機之周邊裝置504、506、508進行訊號交換發信或處理器間通信(IPC)。當使用訊號交換發信時,旁頻帶發信可對稱,其中發信藉由應用程式處理器502及周邊裝置504、506、508傳輸及接收。在裝置複雜度增加之情況下,用於IPC通信之GPIO接腳之數目增加可顯著增加製造成本且限制GPIO對其他系統層級周邊介面之可用性。在一些裝置中,可經由資料通信鏈路俘獲、串列化及傳輸與通信鏈路相關聯的GPIO之狀態。在一個實例中,所俘獲的GPIO狀態可經由根據RFFE、I2C、I3C、SPMI或其他協定操作之多點下傳串列匯流排,在封包中作為虛擬GPIO (VGI)訊息予以傳輸。
圖6說明使用多點下傳串列匯流排610以耦接包括主機SoC 602及數個周邊裝置612之各種裝置的設備600之實例。主機SoC 602可包括虛擬GPIO有限狀態機(VGI FSM 606)及匯流排介面604,其中匯流排介面604與一或多個周邊裝置612中之對應I3C匯流排介面614合作,以在主機SoC 602與周邊裝置612之間提供通信鏈路。每一周邊裝置612包括VGI FSM 616。在所說明之實例中,在SoC 602與周邊裝置612之間進行交換的訊息可經由根據RFFE、I2C、I3C、SPMI或其他協定之多點下傳串列匯流排610串列化及傳輸。在一些實例中,主機SoC 602可包括或支援多種類型之介面,包括I2C介面及/或RFFE介面。在其他實例中,主機SoC 602可包括可用以使用I2C、I3C、RFFE及/或另一合適之協定通信的可組態介面。在各種實例中,多點下傳串列匯流排610包括資料線618,其用以根據藉由在時脈線620上傳輸之時脈信號提供的時序攜載資料信號。
多點下傳半雙工匯流排上之傳輸的實例
圖7說明可參與當串列匯流排704將主控裝置702耦接至多個從屬裝置710、712、714、716時的習知多點下傳半雙工操作之系統700。可在根據藉由在時脈線708上傳輸之時脈信號所提供的時序而經由資料線706傳輸之信號中傳達資料。藉由應用程式、虛擬GPIO資料、命令與控制資料及其他資訊產生或消耗的資料可在資料包720、740之資料有效負載728、748中進行編碼或囊封於其中,並經由資料線706傳輸。在每一階段,資料在藉由操作類型判定的方向中流動,且針對每一資料報固定。圖7包括其中執行讀取,從而引起串列匯流排704之至少一個匯流排回轉的資料包720、740。針對讀取及寫入操作,以及在匯流排回轉前後,藉由主控裝置702傳輸時脈信號。資料流732、734、736、752、754、756、758之方向係自異動之起始者的角度進行繪示。
第一資料報720與主控器起始之異動有關。主控裝置702驅動資料線706上的序列開始狀況(SSC 722)以起始異動。主控裝置702隨後傳輸至少識別資料將被讀取之從屬裝置710、712、714、716的位址的資訊724。在某些實施中,協定可指定或迫使主控裝置702傳輸自所識別之從屬裝置710、712、714、716讀取的資料之目的地之位址。主控裝置702可接著傳輸讀取請求726,其包括用以起始自所識別之從屬裝置710、712、714、716進行讀取之命令碼。用於此等初始傳輸的資料流732之方向係自主控裝置702至從屬裝置710、712、714、716。由於讀取操作已起始,因此主控裝置702釋放資料線706至所識別之從屬裝置710、712、714、716以開始在資料線706上傳輸資料有效負載728 (通常自暫存器位址或讀取請求726中所識別之其他位置)。繼資料有效負載728之傳輸之後,所識別之從屬裝置710、712、714、716釋放資料線706,且主控裝置702可傳輸額外命令或匯流排停放序列(BP 730)以終止異動。資料線706上的資料流732、734、736之方向取決於哪個裝置702、710、712、714、716正驅動資料線706。未驅動資料線706之裝置702、710、712、714、716的線驅動器通常置放於高阻抗狀態中。
第二資料報740與從屬器起始之異動有關。從屬裝置710、712、714、716可參與匯流排仲裁742以獲得串列匯流排704之控制,以便用主控裝置702及/或另一從屬裝置710、712、714、716進行異動。獲勝從屬裝置710、712、714、716可接著傳輸至少識別資料將被讀取之裝置702、710、712、714、716的位址的資訊744。在某些實施中,協定可迫使獲勝從屬裝置710、712、714、716傳輸自所識別之裝置702、710、712、714、716 (其中資料將被讀取)讀取的資料之目的地之位址。獲勝從屬裝置710、712、714、716可接著傳輸讀取請求746,其包括用以起始自所識別之裝置702、710、712、714、716 (其中資料將被讀取)進行讀取之命令碼。由於讀取操作已起始,因此獲勝從屬裝置710、712、714、716釋放資料線706,以允許所識別之裝置702、710、712、714、716 (其中資料將被讀取)開始在資料線706上傳輸資料有效負載748 (通常自暫存器位址或讀取請求746中所識別之其他位置)。繼資料有效負載748之傳輸之後,所識別之裝置702、710、712、714、716 (其中資料將被讀取)釋放資料線706,且BP 750可經傳輸以終止異動。資料線706上的資料流752、754、756之方向取決於哪個裝置702、710、712、714、716正驅動資料線706。未驅動資料線706之裝置702、710、712、714、716的線驅動器通常置放於高阻抗狀態中。
多點下傳半雙工匯流排上之交錯式傳輸
根據本文所揭示之某些態樣,當有效配對之裝置可在單一異動期間於兩個方向上交換資料時,可針對串列匯流排達成有效的輸貫量增強。在一些情況下,藉由有效配對之裝置中之一者在資料報之傳輸期間於兩個方向上交換資料。傳輸可在整個資料報中錯開,及/或按資料報傳輸中之經組態時間錯開。可根據針對有效配對之裝置所定義的組態、用以起始異動之命令碼、一種類型資料報,及/或如有效配對之裝置之間所協商的控制資料傳送之方向。
圖8說明根據本文所揭示之某些態樣的可有助於經由串列匯流排之交錯式雙向傳輸802、804、842的異動及/或資料包800、840。可根據RFFE、SPMI、I3C或其他協定傳輸異動及/或資料包800、840,且可使得某些命令、位址及控制資料或信號符合用以操作串列匯流排之協定的要求。舉例而言,所說明之異動及/或資料包800、840的傳輸在匯流排主控器傳輸序列開始狀況(SSC 806、844)時起始,且在匯流排主控器傳輸匯流排停放序列(BP 824、858)時終止。在其他實例中(其未描繪於圖8中),可藉由從屬裝置經由協定所定義之中斷及/或匯流排仲裁過程起始異動。發信BP 824、858或SSC 806、844所用之方法可藉由用以控制串列匯流排之協定來判定,且諸如應答發信之某些控制資料或信號可藉由一些協定支援且藉由其他協定省略。協定與異動或資料報之起始形式之間的差異通常不會不利地影響本文所揭示之概念的實施,其係參考僅為促進描述而選擇之實例進行描述,且其並不限制可得益於本文所揭示之概念之實施的匯流排或協定之所揭示特徵或類型的範疇。
第一異動或資料報800可用於交錯式傳輸之對稱模式中,其中時脈循環由兩個傳輸方向之間的組態劃分。主控裝置及從屬裝置輪流在串列匯流排上傳輸。第一異動或資料報800之起始建立兩個裝置之有效配對,該等裝置接著可在給定數目個時脈循環內於每一方向上交換資料。在一些情況下,傳輸時間係在有效配對之裝置之間均勻分配,包括當有效配對之裝置包括主控裝置及從屬裝置時。在其他情況下,傳輸時間係經由協商及/或根據應用需要進行分配。在一個實例中,第一有效配對之裝置將一位元組資料(具有或不具有同位)傳輸至第二有效配對之裝置,且接著在數個時脈循環內釋放串列匯流排,以便允許第二有效配對之裝置傳輸一位元組資料。在另一實例中,第一有效配對之裝置將商定數目個位元的資料傳輸至第二有效配對之裝置,且接著在數個時脈循環內釋放串列匯流排,以便允許第二有效配對之裝置傳輸該商定數目個位元的資料。在另一實例中,第一有效配對之裝置將商定數目個位元組或字組傳輸至第二有效配對之裝置,且接著在數個時脈循環內釋放串列匯流排,以便允許第二有效配對之裝置傳輸該商定數目個位元組或字組。在此等實例中,資料之接收器可重組譯或以其他方式重建構在所接收之交錯式傳輸期間接收的控制、命令及/或有效負載資料。
在所說明之實例中,第一有效配對之裝置可為起始異動或資料報800以便在第一方向中傳輸特定類型或大小之資料的主控裝置,且第二有效配對之裝置可為從屬裝置。從屬裝置可使用可用的傳輸機會將資料反向傳輸至主控裝置。從屬裝置可傳輸與自主控裝置接收之資料不相關的資料。
在所說明之實例中,主控裝置藉由傳輸SSC 806來起始異動或資料報800。主控裝置可傳輸從屬器位址808以識別接收藉由主控裝置傳輸之資料有效負載的從屬裝置。在一些情況下,主控裝置及從屬裝置在從屬器位址808已經傳輸之後被視為有效配對。在一些實例中,當主控裝置及從屬裝置中之每一者已經組態以支***錯式傳輸且將另一裝置辨識為能夠處置交錯式傳輸時,該等裝置可有效地配對。
主控裝置可在命令欄位810中傳輸命令碼,其中該命令碼指定待執行之操作的類型。主控裝置可指定寫入操作(如圖8中所說明)或讀取操作。主控裝置可傳輸指示暫存器寫入或讀取之開始位置的位址資訊812。位址資訊812可包括或已附有錯誤偵測及/或錯誤校正欄位,其可包括同位位元814、循環冗餘檢查(CRC)值、校驗和或其類似者。可接著分別傳輸資料欄位8161 至816N 及8201 至820N ,繼之以同位8181 至818N 及8221 至822N
主控裝置可在命令欄位810中正向傳輸指定待執行之操作的命令碼。舉例而言,該操作可為讀取操作或寫入操作。主控裝置可在位址資訊812中傳輸暫存器位址,該暫存器位址為藉由命令欄位810中之命令碼指定的讀取或寫入操作識別開始位置。當指定寫入操作時,主控裝置可首先傳輸,且當指定讀取操作時,主控裝置可首先接收,但傳輸及/或接收之次序可藉由組態及/或針對每一異動或異動之類型予以界定。
從屬裝置可獨立於藉由主控裝置起始之異動而起始反向異動。在圖8中所說明之實例中,主控裝置可在具有指定待讀取之第一暫存器之位址資訊812的命令欄位810中傳輸讀取命令。從屬裝置可在反向傳輸之一或多個資料欄位8201 至820N 中傳輸命令及位址資訊。
在一些情況下,反向資料欄位8201 至820N 可未被使用或部分被使用。在此等情況下,頻寬利用及/或延時可為次最佳化的,但對稱交錯之使用可經由習知半雙工操作改良頻寬利用及/或延時。對稱交錯可經由習知半雙工操作提供總體上改良式頻寬利用及/或經縮短延時。
第二異動或資料報840說明啟動經組態用於交錯式傳輸的有效配對之裝置之間的反向資料傳輸的發信860、862、864。在所說明之實例中,主控裝置藉由傳輸SSC 844起始異動或資料報840。主控裝置可傳輸從屬器位址846以識別接收藉由主控裝置傳輸之資料有效負載的從屬裝置。在一些情況下,主控裝置及從屬裝置在從屬器位址846已經傳輸之後被視為有效配對。在一些實例中,當主控裝置及從屬裝置中之每一者已經組態以支***錯式傳輸且將另一裝置辨識為能夠處置交錯式傳輸時,該等裝置可有效地配對。
主控裝置可在命令欄位848中傳輸命令碼,其中該命令碼指定待執行之操作的類型。主控裝置可指定寫入操作(如圖8中所說明)或讀取操作。主控裝置可傳輸指示暫存器寫入或讀取之開始位置的位址資訊850。位址資訊850可包括或已附有錯誤偵測及/或錯誤校正欄位,其可包括同位位元852、循環冗餘檢查(CRC)值、校驗和或其類似者。可接著傳輸資料欄位8541 至854N ,繼之以同位8561 至856N
根據本文所揭示之某些態樣,回應於藉由一個或兩個裝置的發信860、862、864,可在經組態用於交錯式傳輸的有效配對之裝置之間自動起始反向傳輸。在一個實例中,發信860經提供於命令欄位848中。當某些命令碼包括於命令欄位848中時,可啟用交錯式傳輸。啟用交錯式通信之命令碼可在藉由兩個裝置維持之組態資訊中予以識別及/或可藉由應用提供。
在另一實例中,當位址資訊850識別組態資訊中具有匹配與交錯式傳輸相關聯之一位址或位址範圍的位址的暫存器時,可藉由發信862啟用交錯式傳輸。啟用交錯式通信之位址及/或位址範圍可在藉由兩個裝置維持之組態資訊中予以識別及/或可藉由應用提供。
在另一實例中,裝置可指示需要在同位位元傳輸期間使用在時脈信號上傳輸之頻帶內發信864反向傳輸資料。頻帶內發信864可用以啟用(或停用)處於位元組邊界之交錯式傳輸。頻帶內發信864可用以在資料可用於接收裝置處的傳輸時提供反向時槽。在一些實施中,頻帶內發信864可用以起始反向訊務傳輸,而不需要針對已經組態以支***錯式傳輸的有效配對之裝置界定一啟用正向命令或經識別暫存器位址範圍。在一些實施中,頻帶內發信864可用以在資料可用於傳輸時,及啟用正向命令及/或經識別暫存器位址範圍之傳輸之後提供反向時槽。
在圖9中,第一資料報900說明第一實例,其中在經由根據RFFE協定操作之串列匯流排耦接的有效配對之裝置之間啟用或起始交錯式傳輸902、904、942、944。在此實例中,交錯式傳輸係藉由主控裝置所傳輸之某些命令啟用或起始。啟用或起始交錯式傳輸之命令碼可在藉由有效配對之裝置維持的組態資訊中予以識別。在其他實例中,串列匯流排可根據SPMI、I3C或其他協定操作,且交錯式傳輸可藉由以類似方式傳輸之命令及/或藉由具有不同格式或結構之命令啟用或起始。
在第一實例中,主控裝置藉由傳輸SSC 906起始異動或資料報900。主控裝置可傳輸從屬器位址908以識別將接收藉由主控裝置傳輸之資料有效負載的從屬裝置。在一些情況下,主控裝置及從屬裝置在從屬器位址908已經傳輸之後被視為有效配對。在初始化期間或根據藉由應用之組態,主控裝置及從屬裝置中之每一者已經組態以支***錯式傳輸且將另一裝置辨識為能夠處置交錯式傳輸。
主控裝置可在命令欄位910中傳輸命令碼,其中該命令碼指定待執行之操作的類型。命令欄位910可指定寫入操作或讀取操作,繼之以指示暫存器寫入或讀取之開始位置的位址資訊914。命令欄位910及/或位址資訊914可包括或已附有錯誤偵測及/或錯誤校正欄位,其可包括同位位元、循環冗餘檢查(CRC)值、校驗和或其類似者。可接著傳輸資料欄位9181 至918N 及9201 至920N 。反向資料欄位9201 至920N 在傳輸中可先於位址欄位916,該位址欄位識別待由包括於反向資料欄位9201 至920N 中之資料寫入的第一暫存器位址。
在一些情況下,有效配對之裝置可將命令欄位910之內容辨識為與交錯式傳輸相關聯。舉例而言,組態資訊可判定包括於命令欄位910中之命令碼指示有效配對之裝置可使用位元組層級交錯式傳輸。命令圖框亦可指示可在有效配對之裝置之間交換的位元組之數目。位元組之數目可與正向訊務、反向訊務或經組合訊務有關。
資料可在單個異動內在兩個方向上傳輸,而不重複標頭912,其中標頭912可包括SSC 906、從屬器位址908、命令欄位910及/或一或多個同位位元。使用交錯式傳輸使得反向資料欄位9201 至920N 能夠在同一資料報900中交換為正向資料欄位9181 至918N ,且消除將以其他方式先於反向資料欄位9201 至920N 之傳輸的匯流排仲裁及/或某些標頭傳輸。傳輸之消除可縮短匯流排延時。在一個實例中,匯流排可在26 MHz下計時,且標頭在15個時脈循環中進行傳輸,從而提供以下標頭時間:
15 × 38.5ns = 0.57µs.
因此,在RFFE或SPMI匯流排上,在26 MHz下,與在交錯式傳輸中交換之反向資料相關聯的延時縮短至少為0.57µs。
在圖9中,第二資料報940說明第二實例,其中在經由根據RFFE協定操作之串列匯流排耦接的有效配對之裝置之間啟用或起始交錯式傳輸。在此實例中,在某些位址範圍中之暫存器得以定址時啟用或起始交錯式傳輸。其中啟用交錯式傳輸之位址範圍可在藉由有效配對之裝置維持的組態資訊中予以識別。在其他實例中,串列匯流排可根據SPMI、I3C或其他協定來操作,且交錯式傳輸可基於暫存器位址範圍以類似方式啟用或起始。
在第二實例中,主控裝置藉由傳輸SSC 946起始異動或資料報940。主控裝置可傳輸從屬器位址948以識別將接收藉由主控裝置傳輸之資料有效負載的從屬裝置。在一些情況下,主控裝置及從屬裝置在從屬器位址948已經傳輸之後被視為有效配對。在初始化期間或根據藉由應用之組態,主控裝置及從屬裝置中之每一者已經組態以支***錯式傳輸且將另一裝置辨識為能夠處置交錯式傳輸。
主控裝置可在命令欄位950中傳輸命令碼,其中該命令碼指定待執行之操作的類型。命令欄位950可包括指定寫入操作或讀取操作之命令碼,繼之以指示暫存器寫入或讀取之開始位置的位址資訊954。命令欄位950及/或位址資訊954可包括或已附有錯誤偵測及/或錯誤校正欄位,其可包括同位位元、循環冗餘檢查(CRC)值、校驗和或其類似者。可接著傳輸資料欄位9561 至956N 及9581 至958N
在一些情況下,有效配對之裝置可將在位址資訊954中傳輸之位址辨識為處於啟用交錯式傳輸之位址的一範圍內。在此實例中,經配對裝置知曉何位址應接收回寫資料。
資料可在單個異動內在兩個方向上傳輸,而不重複標頭952,其中標頭952可包括SSC 946、從屬器位址948、命令欄位950、位址資訊954及/或一或多個同位位元。使用交錯式傳輸使得反向資料欄位9581 至958N 能夠在同一資料報940中交換為正向資料欄位9561 至956N ,且消除將以其他方式先於反向資料欄位9581 至958N 之傳輸的匯流排仲裁及/或某些標頭傳輸。此等傳輸之消除可縮短匯流排延時。在一個實例中,匯流排可在26 MHz下計時,且標頭在24個時脈循環中進行傳輸,從而提供以下標頭時間:
24 × 38.5ns = 0.92µs.
因此,在RFFE或SPMI匯流排上,在26 MHz下,與在交錯式傳輸中交換之反向資料相關聯的延時縮短至少為0.92µs。
在圖10中,資料報1000說明第三實例,其中可在經由根據RFFE協定操作之串列匯流排耦接的有效配對之裝置之間啟用或起始交錯式傳輸1002、1004。可藉由頻帶內發信864啟用或起始交錯式傳輸,該頻帶內發信由意圖或需要反向資料之傳輸的裝置產生。在一個實例中,頻帶內發信864可在經指派用於於資料線1042上傳輸同位位元的位元時槽1016期間,在時脈線1044上所傳輸之時脈信號中傳輸。在其他實例中,串列匯流排可根據SPMI、I3C或其他協定來操作,且交錯式傳輸可藉由在經指派用於傳輸同位元、應答(ACK)或其他命令或控制資訊的時槽中進行傳輸的頻帶內發信來啟用或起始。
主控裝置可藉由傳輸SSC 1006來起始資料報1000。主控裝置可傳輸從屬器位址1008以識別將接收藉由主控裝置傳輸之資料有效負載的從屬裝置。在一些情況下,主控裝置及從屬裝置在從屬器位址1008已經傳輸之後被視為經有效配對。在初始化期間或根據藉由應用進行之組態,主控裝置及從屬裝置中之每一者可能已經組態以支***錯式傳輸且將另一裝置辨識為能夠處置交錯式傳輸。
主控裝置可在命令欄位1010中傳輸命令碼,其中該命令碼指定待執行之操作的類型。命令碼可指定一寫入操作或一讀取操作,繼之以指示一暫存器寫入或讀取之開始位置的位址資訊1014。命令欄位1010及/或位址資訊1014可包括或已附有一錯誤偵測及/或錯誤校正欄位,其可包括一同位位元、循環冗餘檢查(CRC)值、校驗和(checksum)或其類似者。可接著傳輸資料欄位10181 至1018N 及10201 至1020N
作為交錯式傳輸的回寫資料之傳輸可藉由頻帶內發信864起始,該頻帶內發信指示在完成經指派用於同位位元之傳輸的位元時槽1016之後,將在資料欄位10201 至1020N 中傳輸一位元組的回寫資料。在一個實例中,當頻帶內發信864得以確證時,主控裝置可正在資料欄位10181 中傳輸資料,使得主控裝置產生資料線以使得一位元組的回寫得以傳輸。主控裝置可藉由使得線驅動器在回寫傳輸之持續時間內進入高阻抗狀態來產生資料線。
在一個實例中,主控裝置可驅動在時脈線1044上所傳輸之時脈信號中的下降邊緣1046,以開始用以傳輸同位位元的位元時槽1016。主控裝置可接著藉由使得耦接至時脈線1044之線驅動器離開有效驅動狀態1048且進入高阻抗狀態來釋放時脈線1044,其中時脈線1044藉由保持器電路、下拉電阻器或其類似者保持於低狀態。根據本文所揭示之某些態樣,從屬裝置可在時脈信號之預期低持續時間1052的第二半內的間隔1050期間驅動時脈線1044。從屬裝置可發信以下目的:在將以其他方式由主控裝置驅動之預期轉變1054之前,藉由將時脈線1044驅動為高,來在資料欄位10201 中傳輸一位元組的回寫資料。從屬裝置可釋放時脈線1044以允許主控裝置恢復執行驅動時脈信號。主控裝置可判定時脈線1044已較早地驅動為高,且可判定將執行反向傳輸。
在另一實例中,可在時脈信號之高週期期間提供用於頻帶內發信之間隔。主控裝置可在釋放時脈線1044之前,在用以傳輸同位位元之位元時槽1016期間驅動在時脈線1044上傳輸之時脈信號中之上升邊緣。主控裝置可藉由使得耦接至時脈線1044之線驅動器離開有效驅動狀態1048且進入高阻抗狀態,來釋放時脈線1044,其中時脈線1044藉由保持器電路、下拉阻抗或其類似者保持於高狀態中。從屬裝置可發信以下目的:在將以其他方式由主控裝置驅動之預期低轉變之前,藉由將時脈線1044驅動為低,來在資料欄位10201 中傳輸一位元組的回寫資料。從屬裝置可釋放時脈線1044以允許主控裝置恢復執行驅動時脈信號。主控裝置可判定時脈線1044已較早地驅動為低,且可判定將執行反向傳輸。
使用頻帶內發信准許資料在單個異動內在兩個方向上傳輸,而不重複匯流排仲裁及/或某些標頭傳輸。使用交錯式傳輸使得反向資料欄位10201 至1020N 能夠在同一資料報1000中交換為正向資料欄位10181 至1018N ,且消除將以其他方式先於反向資料欄位10201 至1020N 之傳輸的匯流排仲裁及/或某些標頭傳輸。此等傳輸之消除可縮短匯流排延時。如本文所揭示,在RFFE或SPMI匯流排上,在26 MHz下,與在交錯式傳輸中交換之反向資料相關聯的延時縮短至少為0.57µs。
在一些實施中,可限制頻帶內發信之所起始的反向資料欄位10201 至1020N 之數目以防止匯流排擾亂,其中單一裝置可藉由對反向傳輸之持續需求來鎖死其他裝置。在一個實例中,可組態最大數目個反向資料欄位10201 至1020N 。在一個實例中,可組態每個資料報的最大數目個反向資料欄位10201 至1020N 。在另一實例中,可組態每個資料報的最大數目個經組合之正向資料欄位10181 至1018N 及反向資料欄位10201 至1020N
多點下傳半雙工匯流排上之位元交錯傳輸
根據本文所揭示之某些態樣,作為半雙工串列匯流排上之異動的相關方的裝置可在單一異動內在兩個方向上交換資料,其中傳輸之方向在位元層級改變以獲得資料傳輸之位元級交錯。當啟動位元級交錯時,資料可在時脈信號中的時脈脈衝之兩個邊緣上傳輸。位元級交錯可用以增強對稱交錯方案,其中有效配對之裝置可經由經商定或組態數目個時脈循環在兩個方向上交換資料。使用位元級交錯為大小可變之資料單元提供支援。舉例而言,第一對裝置之間的異動可包括其中交換位元組資料的交錯式傳輸,而第二對裝置之間的異動可包括其中在至少一個方向上傳輸四位元字或更小資料單元的交錯式傳輸。在異動之持續時間內配對的裝置可在協商及/或商定以實施位元級交錯之後在兩個方向上交換有效負載及控制資料。位元級交錯可使用參與裝置之間的單次私用合約來啟用。
根據本文所揭示之某些態樣,可採用一種機制在一時脈循環內在不同方向上交錯兩個位元。關於其中使用位元組層級交錯之單一資料速率實施,延時可減半。位元級交錯可採用一種形式之頻帶內發信。在一個實例中,頻帶內發信可包括使用一些匯流排協定中所提供的ACK/NACK發信來提供有效頻帶內指示符。在一些實施中,可實施位元級優先級方案,其可被稱為「即接收即用」模式。
圖11說明可在根據RFFE或SPMI協定操作之串列匯流排上傳輸,且可經調適以支援位元級交錯的資料報1100之實例。在此實例中,資料報1100在主控裝置傳輸序列開始狀況(SSC 1102)時起始1116,且在主控裝置傳輸匯流排停放序列(BP 1118)時終止。主控裝置可傳輸從屬器位址1104以識別接收藉由主控裝置傳輸之資料有效負載的從屬裝置。主控裝置及從屬裝置可在從屬器位址1104已經傳輸之後被視為有效配對。SSC 1102及從屬器位址1104之傳輸可界定資料報1100之配對間隔1106。
根據某些態樣,一對裝置可經組態以在與彼此通信時啟用位元級交錯。該等裝置可在系統啟動下、在應用程式控制下及/或藉由裝置之間的私用合約進行組態。私用合約可起因於裝置之間的先前通信。位元級交錯可在交錯週期1114內啟用,其可在遵循配對間隔1106的資料報1100之實質上整個部分上延伸。
主控裝置可傳輸指定待執行之操作的類型的命令圖框1108。舉例而言,主控裝置可指定寫入操作或讀取操作。主控裝置可傳輸指示暫存器寫入或讀取之開始位置的位址資訊1110。位址資訊1110可包括或已附有錯誤偵測及/或錯誤校正欄位,其可包括同位位元、CRC字組、校驗和值或類似資訊。資料欄位11121 至1112N 可接著藉由主控裝置傳輸或接收。位元級交錯使得雙向傳送在從屬器位址1104已經傳輸之後出現。在一個實例中,從屬裝置可在主控裝置正在正向傳輸資料時反向傳輸資料,其中正向及反向與在時脈信號中傳輸之時脈脈衝的不同邊緣相關聯。在另一實例中,主控裝置可在從屬裝置正在正向傳輸資料時反向傳輸資料,其中正向及反向與在時脈信號中傳輸之時脈脈衝的不同邊緣相關聯。位元級交錯使得命令、控制及有效負載資料能夠在不增大傳輸資料報1100所需的時脈循環之數目的情況下反向發送。
圖11中之時序圖1140說明單一位元組傳輸間隔1148期間的位元級交錯之實例。在此實例中,資料線1142在每一時脈循環1146期間切換傳輸方向。在每一時脈循環1146之第一部分中,第一位元1150正向傳輸,同時第二位元1152反向傳輸。正向可特徵化為自起始裝置至非起始裝置的方向,且反向可特徵化為自非起始裝置至起始裝置的方向。在所說明之實例中,可在時脈線1144上所傳輸之時脈信號之上升邊緣上俘獲第一位元1150,同時可在時脈信號之下降邊緣上俘獲第二位元1152。
根據某些態樣,非起始裝置可發信在控管兩個裝置之間的位元級交錯之合約及/或組態中所界定的邊界處傳輸資料的意圖。在一個實例中,非起始裝置可發信在同位位元之傳輸期間傳輸資料的意圖。在另一實例中,非起始裝置可能有機會發信在每次第k 個時脈循環之後傳輸資料的意圖,其中k 之值可對應於正向傳輸之資料的每一單元中之時脈循環1146之數目。
表1說明可使用本文所揭示之某些技術達成的延時縮短之實例。該表將習知半雙工傳輸(參見圖7)與位元組交錯之交錯式傳輸(參見圖8至圖9)及根據本文所揭示之某些態樣的位元級交錯進行比較。出於比較的目的,實例係基於在經由習知半雙工串列匯流排在每一方向上的命令圖框之後出現的2位元組資料傳輸之傳輸進行計算,且需要34個時脈循環來正向傳輸2個位元組,且需要34個時脈循環來反向傳輸2個位元組。
1 :每一方向中之 2 位元組傳輸
在表1中,習知雙向傳輸涉及匯流排回轉及兩個標頭,以及仲裁之一或多個情況,位元組交錯傳輸消除第二標頭之至少一部分,且位元交錯傳輸在同一時脈循環中傳輸正向及反向位元。
在一些實施中,當反向資料不可用,或裝置商定不會在當前異動期間傳輸反向資料時,可使用DDR時脈於一個方向上在串列匯流排上傳輸資料。在一些實施中,可針對一些資料包支援單一方向DDR及位元交錯雙向傳輸之某一組合,其中除非非起始裝置發信將傳輸反向資料,否則起始裝置可將DDR時脈用於正向訊務。
處理電路及方法之實例
圖12為說明用於設備1200之硬體實施的實例之圖解。在一些實例中,設備1200可執行本文所揭示之一或多個功能。根據本發明之各種態樣,元件,或元件之任何部分,或如本文所揭示之元件的任何組合可使用處理電路1202來實施。處理電路1202可包括藉由硬體與軟體模組之某一組合控制的一或多個處理器1204。處理器1204之實例包括微處理器、微控制器、數位信號處理器(DSP)、SoC、ASIC、場可程式化閘陣列(FPGA)、可程式化邏輯裝置(PLD)、狀態機、定序器、閘控邏輯、離散硬體電路及經組態以執行貫穿本發明所描述之各種功能性的其他合適之硬體。一或多個處理器1204可包括執行特定功能並可藉由軟體模組1216中的一者而組態、擴充或控制之專用處理器。一或多個處理器1204可經由在初始化期間載入的軟體模組1216之組合而組態,且另外藉由在操作期間載入或卸載一或多個軟體模組1216而組態。
在所說明之實例中,可藉由匯流排架構來實施處理電路1202,該匯流排架構一般藉由匯流排1210來表示。匯流排1210可取決於處理電路1202之特定應用及總設計約束而包括任何數目個互連匯流排及橋接器。匯流排1210將包括一或多個處理器1204及儲存器1206之各種電路連結在一起。儲存器1206可包括記憶體裝置及大容量儲存裝置,且可在本文中稱為電腦可讀媒體及/或處理器可讀媒體。匯流排1210亦可連結各種其他電路,諸如時序源、定時器、周邊裝置、電壓調節器及功率管理電路。匯流排介面1208可提供在匯流排1210與一或多個收發器1212a、1212b之間的介面。收發器1212a、1212b可經提供用於藉由處理電路支援之每一網路連接技術。在一些情況下,多個網路連接技術可共用在收發器1212a、1212b中發現的電路系統或處理模組中之一些或全部。每一收發器1212a、1212b提供用於經由傳輸媒體與各種其他設備通信的構件。在一個實例中,收發器1212a可用於將設備1200耦接至多線匯流排。在另一實例中,收發器1212b可用以將設備1200連接至無線電存取網路。取決於設備1200之本質,使用者介面1218 (例如,小鍵盤、顯示器、揚聲器、麥克風、操縱桿)亦可提供,且可直接或經由匯流排介面1208以通信方式耦接至匯流排1210。
處理器1204可負責管理匯流排1210且負責可包括儲存在可包括儲存器1206之電腦可讀媒體中的軟體之執行的通用處理。就此而言,包括處理器1204之處理電路1202可用於實施本文所揭示之方法、功能及技術中的任一者。儲存器1206可用於儲存在執行軟體時藉由處理器1204操縱的資料,且軟體可經組態以實施本文所揭示之方法中的任一者。
處理電路1202中之一或多個處理器1204可執行軟體。軟體應廣泛地解釋為意謂指令、指令集、碼、碼段、程式碼、程式、子程式、軟體模組、應用程式、軟體應用程式、軟體套件、常式、次常式、目標、可執行碼、執行緒、程序、功能、演算法等,而不管其是被稱作軟體、韌體、中間軟體、微碼、硬體描述語言抑或其他者。軟體可以電腦可讀形式駐留在儲存器1206或外部電腦可讀媒體中。外部電腦可讀媒體及/或儲存器1206可包括非暫時性電腦可讀媒體。藉助於實例,非暫時性電腦可讀媒體包括磁性儲存裝置(例如,硬碟、軟碟、磁條)、光碟(例如,緊密光碟(CD)或數位多功能光碟(DVD))、智慧卡、快閃記憶體裝置(例如,「快閃驅動器」、卡、桿、或隨身碟)、RAM、ROM、可程式化唯讀記憶體(PROM)、包括EEPROM之可抹除式PROM (EPROM)、暫存器、可移除式磁碟,及用於儲存可由電腦存取及讀取的軟體及/或指令的任何其他合適之媒體。藉助於實例,電腦可讀媒體及/或儲存器1206亦可包括載波、傳輸線,及用於傳輸可由電腦存取及讀取的軟體及/或指令的任何其他合適之媒體。電腦可讀媒體及/或儲存器1206可駐留在處理電路1202中,處理器1204中,處理電路1202外部,或在包括處理電路1202之多個實體上分佈。電腦可讀媒體及/或儲存器1206可實施於電腦程式產品中。藉助於實例,電腦程式產品可將電腦可讀媒體包括於封裝材料中。熟習此項技術者將認識到取決於特定應用及強加於整個系統上的總設計約束而最佳地實施呈現在整個本發明中之所描述功能性的方式。
儲存器1206可維持在可載入碼段、模組、應用程式、程式等(其可在本文中稱為軟體模組1216)中維持及/或組織的軟體。軟體模組1216中之每一者可包括指令及資料,其當安裝或載入於處理電路1202上並藉由一或多個處理器1204執行時促成一控制一或多個處理器1204之操作的執行時影像1214。當經執行時,某些指令可引起處理電路1202根據本文中所描述的某些方法、演算法及處理程序執行功能。
一些軟體模組1216可在處理電路1202之初始化期間載入,且此等軟體模組1216可組態處理電路1202以致能本文所揭示之各種功能的執行。舉例而言,一些軟體模組1216可組態內部裝置及/或處理器1204之邏輯電路1222,並可管理對諸如收發器1212a、1212b、匯流排介面1208、使用者介面1218、定時器、數學共處理器等之外部裝置的存取。軟體模組1216可包括控制程式及/或作業系統,其與中斷處理常式及裝置驅動器相互作用,並控制對由處理電路1202提供之各種資源的存取。資源可包括記憶體、處理時間、對收發器1212a、1212b之存取、使用者介面1218等。
處理電路1202之一或多個處理器1204可為多功能性,藉此一些軟體模組1216經載入並經組態以執行不同功能或相同功能之不同個例。一或多個處理器1204可另外經調適以管理回應於來自(例如)使用者介面1218、收發器1212a、1212b及裝置驅動器之輸入而起始的後台任務。為支援多個功能之執行,一或多個處理器1204可經組態以提供多任務環境,藉此複數個功能中的每一者經實施為根據需要或所要藉由一或多個處理器1204伺服的一組任務。在一個實例中,可使用通過不同任務之間的處理器1204之控制的時間共用程式1220實施多任務環境,藉此每一任務在完成任何未完成操作後及/或回應於諸如中斷之輸入而將一或多個處理器1204之控制返回至時間共用程式1220。當任務具有一或多個處理器1204之控制時,處理電路有效地特定用於藉由與控制任務相關聯的功能解決的目的。時間共用程式1220可包括作業系統、在循環基礎上傳送控制之主要迴路、根據功能之優先排序分配一或多個處理器1204之控制的功能,及/或藉由將一或多個處理器1204之控制提供至處置功能而對外部事件作出回應的中斷驅動主要迴路。
用於最佳化虛擬GPIO延時之方法可包括剖析各種輸入源的動作,該等源包括待傳輸之GPIO信號狀態、參數及/或訊息的源。輸入源可包括硬體事件、組態資料、掩蔽參數及暫存器位址。封包特定延時估計器可用以基於剖析之參數估計用於對應封包類型之延時。待用於傳輸之封包類型可基於針對可用封包類型計算或判定的最小延時而選擇。所選擇之封包類型可使用命令碼來識別,該命令碼可與待傳輸之有效負載一起經提供至封包化器。命令碼亦可反映待用以傳輸有效負載之協定。在一些實施中,用以傳輸有效負載之實體鏈路可根據不同協定或一或多個協定之不同變體而操作。待用於傳輸有效負載的協定可基於與各種可用協定或協定之變體相關聯的延時而選擇。
圖13位可由耦接至串列匯流排之裝置執行的方法之流程圖1300。串列匯流排可根據I3C、RFFE、SPMI或其他協定來操作。在區塊1302處,第一裝置可在待經由串列匯流排進行之異動中與第二裝置配對。在區塊1304處,第一裝置可在串列匯流排之時脈線上所傳輸之時脈信號之複數個循環中的每一循環之第一部分中,經由串列匯流排之資料線將第一資料位元傳輸至第二裝置。在區塊1306處,第一裝置可在每一循環之第二部分中,在資料線上接收藉由第二裝置傳輸之第二資料位元
在某些實例中,與第二裝置配對包括在串列匯流排上傳輸一裝置位址,其中該裝置位址識別第二裝置。與第二裝置配對可包括在傳輸該裝置位址之前在串列匯流排上傳輸SSC。與第二裝置配對可包括在傳輸該裝置位址之前作為從屬裝置參與匯流排仲裁以獲得對串列匯流排之存取。該第一裝置與該第二裝置可在該裝置位址藉由該第二裝置接收之後有效地配對。
在一些實例中,第一裝置可經由串列匯流排將命令傳輸至第二裝置,以識別在異動期間待傳輸至第二裝置的一種類型之資料報。第一裝置可經由串列匯流排接收藉由第二裝置傳輸之命令。該命令可識別在異動期間待自第二裝置接收的一種類型之資料報。
在一個實例中,第一裝置可在於第一方向在串列匯流排之資料線上傳輸同位位元的同時判定時脈信號中之發信狀態已出現早期轉變。第一裝置可在完成於第一方向上傳輸同位位元之後接收於第二方向上傳輸之複數個資料位元。該第二資料位元可包括於該複數個資料位元中。
在另一實例中,第一裝置可在接收於第二方向上在串列匯流排之資料線上傳輸之同位位元的同時,引起時脈信號中之發信狀態的早期轉變。第一裝置可在同位位元已經傳輸之後在第一方向上傳輸複數個資料位元。該第一資料位元可包括於該複數個資料位元中。
圖14為說明採用處理電路1402的設備1400的硬體實施之簡化實例的圖。處理電路通常具有可包括一或多個微處理器、微控制器、數位信號處理器、定序器及/或狀態機的控制器或處理器1416。可藉由匯流排架構實施處理電路1402,該匯流排架構一般藉由匯流排1420來表示。匯流排1420可取決於處理電路1402之特定應用及總設計約束而包括任何數目個互連匯流排及橋接器。匯流排1420將包括一或多個處理器及/或硬體模組之各種電路連結在一起,該等電路藉由控制器或處理器1416、模組或電路1404、1406及1408,及處理器可讀儲存媒體1418來表示。可提供一或多個實體層電路及/或模組1414,以支援在使用多點下傳串列匯流排1412實施之通信鏈路上、經由天線1422(例如,至無線電存取網路)等的通信。匯流排1420亦可連結此項技術中已熟知且因此將並不更進一步描述之各種其他電路,諸如時序源、周邊裝置、電壓調節器及功率管理電路。
處理器1416負責一般處理,包括儲存於處理器可讀儲存媒體1418上的軟體、程式碼及/或指令之執行。處理器可讀儲存媒體可包括非暫時性儲存媒體。軟體在由處理器1416執行時使處理電路1402執行上文針對任何特定設備描述的各種功能。處理器可讀儲存媒體可用於儲存當執行軟體時藉由處理器1416操縱的資料。處理電路1402進一步包括模組1404、1406及1408中之至少一者。模組1404、1406及1408可為在處理器1416中運行、常駐/儲存於處理器可讀儲存媒體1418中之軟體模組、耦接至處理器1416之一或多個硬體模組,或其某一組合。模組1404、1406及1408可包括微控制器指令、狀態機組態參數或其某一組合。
在一個組態中,設備1400包括經調適以接收且處理命令、暫存器位址及/或頻帶內發信以判定何時指示位元級交錯的模組及/或電路1408;經調適以基於位元級交錯能力組態經有效耦接之裝置的模組及/或電路1406;及經調適以在位元級交錯傳輸期間管理位元級交錯及/或組態或控制一或多個實體層電路及/或模組1414的模組及/或電路1404。
在一些實例中,設備1400具有經組態以將設備耦接至多點下傳串列匯流排1412之收發器。收發器可包括實體層電路及/或模組1414。設備1400可具有耦接至收發器且經組態以在待經由多點下傳串列匯流排1412進行之異動中將設備1400與第二裝置配對的處理器1416。處理器1416可經組態以藉由在串列匯流排之時脈線上所傳輸之時脈信號之複數個循環中的每一循環之第一部分中經由串列匯流排之資料線將第一資料位元傳輸至第二裝置,及在每一循環之第二部分中,在資料線上接收藉由第二裝置傳輸之第二資料位元,來使用收發器與第二裝置交換資料。多點下傳串列匯流排1412可根據RFFE或SPMI協定來操作。
在一些情況下,處理器1416藉由在多點下傳串列匯流排1412上傳輸裝置位址來將設備與第二裝置配對。在一個實例中,裝置位址可唯一地識別第二裝置。處理器1416可藉由在傳輸裝置位址之前在多點下傳串列匯流排1412上傳輸SSC來將設備與第二裝置配對。在另一實例中,處理器藉由在傳輸裝置位址之前作為從屬裝置參與匯流排仲裁以獲得對多點下傳串列匯流排1412之存取來將設備1400與第二裝置配對。在另一實例中,設備1400與第二裝置在裝置位址藉由第二裝置接收之後有效地配對。在另一實例中,處理器1416經進一步組態以使用收發器經由多點下傳串列匯流排1412將命令傳輸至第二裝置,以識別在異動期間待傳輸至第二裝置的一種類型之資料報。在另一實例中,處理器1416經進一步組態以經由多點下傳串列匯流排1412接收藉由第二裝置傳輸之命令,該命令識別在異動期間待自第二裝置接收的一種類型之資料報。在另一實例中,處理器1416經進一步組態以在於第一方向上在多點下傳串列匯流排1412之資料線上傳輸同位位元的同時判定時脈信號中之發信狀態已出現早期轉變,且在完成於第一方向上傳輸同位位元之後接收於第二方向上傳輸之複數個資料位元,其中該第二資料位元包括於該複數個資料位元中。在另一實例中,處理器1416經進一步組態以在接收於第一方向上在多點下傳串列匯流排1412之資料線上傳輸之同位位元的同時,引起時脈信號中之發信狀態的早期轉變,且在同位位元已經傳輸之後在第二方向上傳輸複數個資料位元,其中該第一資料位元包括於該複數個資料位元中。
處理器可讀儲存媒體1418可儲存、維持、接收或以其他方式具有一或多個指令,該等指令在由至少一個處理器1416或處理電路1402之狀態機執行時,使得處理電路1402在待經由多點下傳串列匯流排1412進行之異動中與第二裝置配對。對於在多點下傳串列匯流排1412之時脈線上傳輸之時脈信號之複數個循環中的每一循環,一或多個指令可使得處理電路1402在該每一循環之第一部分中經由多點下傳串列匯流排1412之資料線將第一資料位元傳輸至第二裝置,及在該每一循環之第二部分中,於資料線上接收藉由第二裝置傳輸之第二資料位元。多點下傳串列匯流排1412可根據RFFE或SPMI協定來操作。
一或多個指令可進一步使得處理電路1402在多點下傳串列匯流排1412上傳輸裝置位址,該裝置位址識別該第二裝置。一或多個指令可進一步使得處理電路1402在傳輸裝置位址之前在多點下傳串列匯流排1412上傳輸SSC。一或多個指令可進一步使得處理電路1402在傳輸裝置位址之前作為從屬裝置參與匯流排仲裁以獲得對多點下傳串列匯流排1412之存取。設備1400與第二裝置可在裝置位址藉由第二裝置接收之後有效地配對。一或多個指令可進一步使得處理電路1402經由多點下傳串列匯流排1412將命令傳輸至第二裝置,以識別在異動期間待傳輸至第二裝置的一種類型之資料報。一或多個指令可進一步使得處理電路1402經由多點下傳串列匯流排1412接收藉由第二裝置傳輸之命令,該命令識別在異動期間待自第二裝置接收的一種類型之資料報。一或多個指令可進一步使得處理電路1402在於第一方向上在多點下傳串列匯流排1412之資料線上傳輸同位位元的同時判定時脈信號中之發信狀態已出現早期轉變,且在完成於第一方向上傳輸同位位元之後接收於第二方向上傳輸之複數個資料位元,其中該第二資料位元包括於該複數個資料位元中。一或多個指令可進一步使得處理電路1402在接收於第一方向上在多點下傳串列匯流排1412之資料線上傳輸之同位位元的同時,引起時脈信號中之發信狀態的早期轉變,且在同位位元已經傳輸之後在第二方向上傳輸複數個資料位元,其中該第一資料位元包括於該複數個資料位元中。
應理解,所揭示處理程序中之步驟的特定次序或層次為例示性方法之說明。基於設計偏好,應理解,可重新配置處理程序中之步驟的特定次序或層次。另外,可組合或省略一些步驟。隨附方法請求項以樣本次序呈現各個步驟之要素,且並不意欲受限於所呈現之特定次序或層次。
提供先前描述以使任何熟習此項技術者能夠實踐本文中所描述之各種態樣。對此等態樣之各種修改對於熟習此項技術者而言將為顯而易見的,且本文中定義之一般原理可應用於其他態樣。因此,申請專利範圍不意欲限於本文中所展示的態樣,而是將被賦予與語言申請專利範圍一致的完整範圍,其中以單數形式參考一元件不意欲意謂「一個且僅有一個」,除非明確地如此陳述,而是表示「一或多個」。除非另外明確地陳述,否則術語「一些」指代一或多個。一般熟習此項技術者已知或稍後將知曉的貫穿本發明所描述之各種態樣的元件之所有結構及功能等效物以引用的方式明確地併入本文中,且意欲由申請專利範圍涵蓋。此外,本文中所揭示之任何內容均不意欲專用於公眾,無論申請專利範圍中是否明確敍述此揭示內容。沒有申請專利範圍元件將被解釋為手段加功能,除非元件係使用片語「用於……之構件」來明確地敍述。
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‧‧‧控制邏輯
214a‧‧‧線驅動器/接收器
214b‧‧‧線驅動器/接收器
216‧‧‧資料線
218‧‧‧時脈線
220‧‧‧串列匯流排
2220-222N‧‧‧從屬裝置
224‧‧‧儲存器
226‧‧‧時序時脈
228‧‧‧時脈信號
232‧‧‧模組或電路
234‧‧‧組態暫存器
236‧‧‧儲存器
238‧‧‧時序時脈
240‧‧‧收發器
242‧‧‧控制邏輯
244a‧‧‧線驅動器/接收器
244b‧‧‧線驅動器/接收器
246‧‧‧時脈產生及/或恢復電路
248‧‧‧時脈信號
300‧‧‧方塊圖
302‧‧‧裝置
304‧‧‧數據機
306‧‧‧基頻處理器
308‧‧‧射頻前端(RFFE)介面
310‧‧‧通信鏈路
312‧‧‧射頻積體電路(RFIC)
314‧‧‧射頻前端(RFFE)介面
316‧‧‧射頻前端(RFFE)介面
318‧‧‧射頻(RF)調諧器
320‧‧‧功率放大器(PA)
322‧‧‧功率追蹤模組
324‧‧‧交換器
326‧‧‧低雜訊放大器(LNA)
328‧‧‧低雜訊放大器(LNA)
330‧‧‧第一射頻前端(RFFE)匯流排
332‧‧‧第二射頻前端(RFFE)匯流排
334‧‧‧射頻前端(RFFE)匯流排
336‧‧‧通信鏈路
400‧‧‧系統
402‧‧‧應用程式處理器
4041至404N‧‧‧數據機
406‧‧‧第一功率管理積體電路(PMIC)
408‧‧‧第二功率管理積體電路(PMIC)
410‧‧‧資料通信鏈路
412‧‧‧資料通信鏈路
414‧‧‧系統功率管理介面(SPMI)主控器
416‧‧‧系統功率管理介面(SPMI)主控器
418‧‧‧系統功率管理介面(SPMI)主控器
420‧‧‧系統功率管理介面(SPMI)從屬器
422‧‧‧資料通信鏈路
424‧‧‧資料通信鏈路
500‧‧‧設備
502‧‧‧應用程式處理器
504‧‧‧周邊裝置
506‧‧‧周邊裝置
508‧‧‧周邊裝置
510‧‧‧通信鏈路
512‧‧‧通信鏈路
514‧‧‧通信鏈路
520‧‧‧旁頻帶通用輸入/輸出(GPIO)
522‧‧‧旁頻帶通用輸入/輸出(GPIO)
524‧‧‧旁頻帶通用輸入/輸出(GPIO)
600‧‧‧設備
602‧‧‧主機系統單晶片(SoC)
604‧‧‧匯流排介面
606‧‧‧虛擬通用輸入/輸出(GPIO)有限狀態機(VGI FSM)
610‧‧‧多點下傳串列匯流排
612‧‧‧周邊裝置
614‧‧‧對應I3C匯流排介面
616‧‧‧虛擬通用輸入/輸出(GPIO)有限狀態機(VGI FSM)
618‧‧‧資料線
620‧‧‧時脈線
700‧‧‧系統
702‧‧‧主控裝置
704‧‧‧串列匯流排
706‧‧‧資料線
708‧‧‧時脈線
710‧‧‧從屬裝置
712‧‧‧從屬裝置
714‧‧‧從屬裝置
716‧‧‧從屬裝置
720‧‧‧資料包
722‧‧‧序列開始狀況(SSC)
724‧‧‧資訊
726‧‧‧讀取請求
728‧‧‧資料有效負載
730‧‧‧匯流排停放序列(BP)
732‧‧‧資料流
734‧‧‧資料流
736‧‧‧資料流
740‧‧‧資料包/第二資料報
742‧‧‧匯流排仲裁
744‧‧‧資訊
746‧‧‧讀取請求
748‧‧‧資料有效負載
750‧‧‧匯流排停放序列(BP)
752‧‧‧資料流
754‧‧‧資料流
756‧‧‧資料流
758‧‧‧資料流
800‧‧‧異動及/或資料包
802‧‧‧交錯式雙向傳輸
804‧‧‧交錯式雙向傳輸
806‧‧‧序列開始狀況(SSC)
808‧‧‧從屬器位址
810‧‧‧命令欄位
812‧‧‧位址資訊
814‧‧‧同位位元
8161至816N‧‧‧資料欄位
8181至818N‧‧‧同位
8201至820N‧‧‧資料欄位
8221至822N‧‧‧同位
824‧‧‧匯流排停放序列(BP)
840‧‧‧異動及/或資料包
842‧‧‧交錯式雙向傳輸
844‧‧‧序列開始狀況(SSC)
846‧‧‧從屬器位址
848‧‧‧命令欄位
850‧‧‧位址資訊
852‧‧‧同位位元
8541至854N‧‧‧資料欄位
8561至856N‧‧‧同位
858‧‧‧匯流排停放序列(BP)
860‧‧‧發信
862‧‧‧發信
864‧‧‧頻帶內發信
900‧‧‧第一資料報
902‧‧‧交錯式傳輸
904‧‧‧交錯式傳輸
906‧‧‧序列開始狀況(SSC)
908‧‧‧從屬器位址
910‧‧‧命令欄位
912‧‧‧標頭
914‧‧‧位址資訊
916‧‧‧位址欄位
9181-918N‧‧‧正向資料欄位
9201-920N‧‧‧反向資料欄位
940‧‧‧第二資料報
942‧‧‧交錯式傳輸
944‧‧‧交錯式傳輸
946‧‧‧序列開始狀況(SSC)
948‧‧‧從屬器位址
950‧‧‧命令欄位
952‧‧‧標頭
954‧‧‧位址資訊
9561-956N‧‧‧正向資料欄位
9581-958N‧‧‧反向資料欄位
1000‧‧‧資料報
1002‧‧‧交錯式傳輸
1004‧‧‧交錯式傳輸
1006‧‧‧序列開始狀況(SSC)
1008‧‧‧從屬器位址
1010‧‧‧命令欄位
1014‧‧‧位址資訊
1016‧‧‧位元時槽
10181至1018N‧‧‧資料欄位
10201至1020N‧‧‧資料欄位
1042‧‧‧資料線
1044‧‧‧時脈線
1046‧‧‧下降邊緣
1048‧‧‧有效驅動狀態
1050‧‧‧間隔
1052‧‧‧預期低持續時間
1054‧‧‧預期轉變
1100‧‧‧資料報
1102‧‧‧序列開始狀況(SSC)
1104‧‧‧從屬器位址
1106‧‧‧配對間隔
1108‧‧‧命令圖框
1110‧‧‧位址資訊
11121-1112N‧‧‧資料欄位
1114‧‧‧交錯週期
1118‧‧‧匯流排停放序列(BP)
1140‧‧‧時序圖
1142‧‧‧資料線
1144‧‧‧時脈線
1146‧‧‧時脈循環
1148‧‧‧位元組傳輸間隔
1150‧‧‧第一位元
1152‧‧‧第二位元
1200‧‧‧設備
1202‧‧‧處理電路
1204‧‧‧處理器
1206‧‧‧儲存器
1208‧‧‧匯流排介面
1210‧‧‧匯流排
1212a‧‧‧收發器
1212b‧‧‧收發器
1214‧‧‧執行時影像
1216‧‧‧軟體模組
1218‧‧‧使用者介面
1220‧‧‧時間共用程式
1222‧‧‧邏輯電路
1300‧‧‧流程圖
1302‧‧‧區塊
1304‧‧‧區塊
1306‧‧‧區塊
1400‧‧‧設備
1402‧‧‧處理電路
1404‧‧‧模組或電路
1406‧‧‧模組或電路
1408‧‧‧模組或電路
1412‧‧‧多點下傳串列匯流排
1414‧‧‧實體層電路及/或模組
1416‧‧‧控制器或處理器
1418‧‧‧處理器可讀儲存媒體
1420‧‧‧匯流排
1422‧‧‧天線
圖1說明根據複數個可用標準中之一者選擇性地操作的採用介於IC裝置之間的資料鏈路之設備。
圖2說明採用介於IC裝置之間的資料鏈路之設備的系統架構。
圖3說明採用RFFE匯流排以耦接各種射頻前端裝置之裝置。
圖4說明根據本文所揭示之某些態樣的採用SPMI匯流排以耦接各種裝置的裝置。
圖5說明包括耦接至多個周邊裝置之應用程式處理器的設備。
圖6說明根據本文所揭示之某些態樣的使用多點下傳串列匯流排耦接各種裝置的設備。
圖7說明繪示將一主控裝置耦接至多個從屬裝置之串列匯流排的操作之系統。
圖8說明根據本文所揭示之某些態樣的使用資料包以促進經由串列匯流排之交錯式雙向傳輸。
圖9包括根據本文所揭示之某些態樣的說明其中可啟用或起始交錯式傳輸之第一及第二實例的資料包。
圖10說明根據本文所揭示之某些態樣的其中可啟用或起始交錯式傳輸之第三實例。
圖11說明根據本文所揭示之某些態樣的可經調適以支援位元級交錯之資料報之實例。
圖12說明採用可根據本文所揭示之某些態樣調適的處理電路的設備之一個實例。
圖13為說明本文所揭示之某些態樣的流程圖。
圖14說明根據本文所揭示之某些態樣調適的設備之硬體實施的實例。

Claims (30)

  1. 一種在耦接至一串列匯流排之一第一裝置處執行的資料通信方法,其包含: 在待經由該串列匯流排進行之一異動中與一第二裝置配對;及 對於在該串列匯流排之一時脈線上所傳輸的一時脈信號之複數個循環中的每一循環: 在該每一循環之一第一部分中,經由該串列匯流排之一資料線將一第一資料位元傳輸至該第二裝置;及 在該每一循環之一第二部分中,在該資料線上自該第二裝置接收一第二資料位元。
  2. 如請求項1之方法,其中該串列匯流排根據一射頻前端(RFFE)協定或一系統功率管理介面(SPMI)協定來操作。
  3. 如請求項1之方法,其中與該第二裝置配對包含: 在該串列匯流排上傳輸一裝置位址,該裝置位址識別該第二裝置。
  4. 如請求項3之方法,其中與該第二裝置配對包含: 在傳輸該裝置位址之前在該串列匯流排上傳輸一序列開始狀況(SSC)。
  5. 如請求項3之方法,其中與該第二裝置配對包含: 在傳輸該裝置位址之前,作為一從屬裝置參與匯流排仲裁以獲得對該串列匯流排之存取。
  6. 如請求項3之方法,其中該第一裝置與該第二裝置在該裝置位址藉由該第二裝置接收到之後有效地配對。
  7. 如請求項1之方法,其進一步包含: 經由該串列匯流排將一命令傳輸至該第二裝置,以識別在該異動期間待傳輸至該第二裝置的一類型之一資料報。
  8. 如請求項1之方法,其進一步包含: 經由該串列匯流排接收藉由該第二裝置傳輸之一命令,該命令識別在該異動期間待自該第二裝置接收的一類型之一資料報。
  9. 如請求項1之方法,其進一步包含: 於在一第一方向上在該串列匯流排之該資料線上傳輸一同位位元的同時,判定該時脈信號中之發信狀態的一早期轉變已出現;及 在完成於該第一方向上傳輸該同位位元之後接收於一第二方向上傳輸之複數個資料位元,其中該第二資料位元包括於該複數個資料位元中。
  10. 如請求項1之方法,其進一步包含: 在接收於一第一方向上在該串列匯流排之該資料線上傳輸之一同位位元的同時,引起該時脈信號中之發信狀態的一早期轉變;及 在該同位位元已經傳輸之後在一第二方向上傳輸複數個資料位元,其中該第一資料位元包括於該複數個資料位元中。
  11. 一種具有一或多個指令之處理器可讀儲存媒體,該等指令在由一處理電路之至少一個處理器或狀態機執行時使得該處理電路進行以下操作: 在待經由一串列匯流排進行之一異動中與一第二裝置配對;及 對於在該串列匯流排之一時脈線上所傳輸的一時脈信號之複數個循環中的每一循環: 在該每一循環之一第一部分中,經由該串列匯流排之一資料線將一第一資料位元傳輸至該第二裝置;及 在該每一循環之一第二部分中,在該資料線上自該第二裝置接收一第二資料位元。
  12. 如請求項11之儲存媒體,其中該串列匯流排根據一射頻前端(RFFE)協定或一系統功率管理介面(SPMI)協定來操作。
  13. 如請求項11之儲存媒體,其中該一或多個指令進一步使得該處理電路進行以下操作: 在該串列匯流排上傳輸一裝置位址,該裝置位址識別該第二裝置。
  14. 如請求項13之儲存媒體,其中該一或多個指令進一步使得該處理電路進行以下操作: 在傳輸該裝置位址之前在該串列匯流排上傳輸一序列開始狀況(SSC)。
  15. 如請求項13之儲存媒體,其中該一或多個指令進一步使得該處理電路進行以下操作: 在傳輸該裝置位址之前,作為一從屬裝置參與匯流排仲裁以獲得對該串列匯流排之存取。
  16. 如請求項13之儲存媒體,其中該處理電路與該第二裝置在藉由該第二裝置接收到該裝置位址之後有效地配對。
  17. 如請求項11之儲存媒體,其中該一或多個指令進一步使得該處理電路進行以下操作: 經由該串列匯流排將一命令傳輸至該第二裝置,以識別在該異動期間待傳輸至該第二裝置的一類型之一資料報。
  18. 如請求項11之儲存媒體,其中該一或多個指令進一步使得該處理電路進行以下操作: 經由該串列匯流排接收藉由該第二裝置傳輸之一命令,該命令識別在該異動期間待自該第二裝置接收的一類型之一資料報。
  19. 如請求項11之儲存媒體,其中該一或多個指令進一步使得該處理電路進行以下操作: 於在一第一方向上在該串列匯流排之該資料線上傳輸一同位位元的同時,判定該時脈信號中之發信狀態的一早期轉變已出現;及 在完成於該第一方向上傳輸該同位位元之後接收於一第二方向上傳輸之複數個資料位元,其中該第二資料位元包括於該複數個資料位元中。
  20. 如請求項11之儲存媒體,其中該一或多個指令進一步使得該處理電路進行以下操作: 在接收於一第一方向上在該串列匯流排之該資料線上傳輸之一同位位元的同時,引起該時脈信號中之發信狀態的一早期轉變;及 在該同位位元已經傳輸之後在一第二方向上傳輸複數個資料位元,其中該第一資料位元包括於該複數個資料位元中。
  21. 一種可操作以經由一串列匯流排傳達資料的設備,其包含: 一收發器,其經組態以將該設備耦接至該串列匯流排;及 一處理器,其耦接至該收發器且經組態以: 在待經由該串列匯流排進行之一異動中將該設備與一第二裝置配對;及 藉由以下操作使用該收發器以與該第二裝置交換資料: 在該串列匯流排之一時脈線上所傳輸的一時脈信號之複數個循環中的每一循環之一第一部分中,經由該串列匯流排之一資料線將一第一資料位元傳輸至該第二裝置;及 在該每一循環之一第二部分中,在該資料線上自該第二裝置接收一第二資料位元。
  22. 如請求項21之設備,其中該串列匯流排根據一射頻前端(RFFE)協定或一系統功率管理介面(SPMI)協定來操作。
  23. 如請求項21之設備,其中該處理器經組態以藉由在該串列匯流排上傳輸一裝置位址來將該設備與該第二裝置配對,該裝置位址識別該第二裝置。
  24. 如請求項23之設備,其中該處理器經組態以藉由在傳輸該裝置位址之前在該串列匯流排上傳輸一序列開始狀況(SSC)來將該設備與該第二裝置配對。
  25. 如請求項23之設備,其中該處理器經組態以藉由在傳輸該裝置位址之前作為一從屬裝置參與匯流排仲裁以獲得對該串列匯流排之存取來將該設備與該第二裝置配對。
  26. 如請求項23之設備,其中該設備與該第二裝置在該裝置位址藉由該第二裝置接收到之後有效地配對。
  27. 如請求項21之設備,其中該處理器經進一步組態以: 使用該收發器經由該串列匯流排將一命令傳輸至該第二裝置,以識別在該異動期間待傳輸至該第二裝置的一類型之一資料報。
  28. 如請求項21之設備,其中該處理器經進一步組態以: 經由該串列匯流排接收藉由該第二裝置傳輸之一命令,該命令識別在該異動期間待自該第二裝置接收的一類型之一資料報。
  29. 如請求項21之設備,其中該處理器經進一步組態以: 於在一第一方向上在該串列匯流排之該資料線上傳輸一同位位元的同時,判定該時脈信號中之發信狀態的一早期轉變已出現;及 在完成於該第一方向上傳輸該同位位元之後接收於一第二方向上傳輸之複數個資料位元,其中該第二資料位元包括於該複數個資料位元中。
  30. 如請求項21之設備,其中該處理器經進一步組態以: 在接收於一第一方向上在該串列匯流排之該資料線上傳輸之一同位位元的同時,引起該時脈信號中之發信狀態的一早期轉變;及 在該同位位元已經傳輸之後在一第二方向上傳輸複數個資料位元,其中該第一資料位元包括於該複數個資料位元中。
TW107139889A 2017-12-05 2018-11-09 用於時間臨界資料交換之多點下傳匯流排上之位元交錯雙向傳輸 TW201926064A (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201762594953P 2017-12-05 2017-12-05
US62/594,953 2017-12-05
US16/184,284 2018-11-08
US16/184,284 US10838898B2 (en) 2017-12-05 2018-11-08 Bit-interleaved bi-directional transmissions on a multi-drop bus for time-critical data exchange

Publications (1)

Publication Number Publication Date
TW201926064A true TW201926064A (zh) 2019-07-01

Family

ID=66659224

Family Applications (1)

Application Number Title Priority Date Filing Date
TW107139889A TW201926064A (zh) 2017-12-05 2018-11-09 用於時間臨界資料交換之多點下傳匯流排上之位元交錯雙向傳輸

Country Status (3)

Country Link
US (1) US10838898B2 (zh)
TW (1) TW201926064A (zh)
WO (1) WO2019112754A1 (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110582985B (zh) * 2017-03-08 2023-04-11 罗伯特·博世有限公司 用于在控域网之上减轻对密钥协定方案的基于时序的攻击的方法
US10713199B2 (en) * 2017-06-27 2020-07-14 Qualcomm Incorporated High bandwidth soundwire master with multiple primary data lanes
US11023312B2 (en) 2018-11-21 2021-06-01 Marvell Asia Pte, Ltd. Serial management interface with improved reliability
CN112988634A (zh) * 2019-12-02 2021-06-18 深圳市中兴微电子技术有限公司 多天线通道装置及配置方法
US11398926B2 (en) 2020-02-10 2022-07-26 Apple Inc. Signaling of time for communication between integrated circuits using multi-drop bus
US11907154B2 (en) * 2022-07-11 2024-02-20 Qualcomm Incorporated Latency and power efficient clock and data recovery in a high-speed one-wire bidirectional bus
CN115441991B (zh) * 2022-08-26 2023-08-04 武汉市聚芯微电子有限责任公司 数据传输方法、装置、电子设备和计算机存储介质

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5905716A (en) 1996-12-09 1999-05-18 Ericsson, Inc. Asynchronous full duplex communications over a single channel
US6772251B1 (en) 2001-05-04 2004-08-03 Cypress Semiconductor Corporation Bit interleaved data serial interface
US7286570B2 (en) * 2001-11-21 2007-10-23 Alcatel-Lucent Canada Inc High speed sequenced multi-channel bus
US7069476B1 (en) * 2002-08-15 2006-06-27 Network Appliance, Inc. Method and apparatus to release a serial bus from a suspended state
US7729427B2 (en) * 2004-02-24 2010-06-01 Intersil Americas Inc. Pseudo-synchronous one wire bidirectional bus interface
JP2013257465A (ja) * 2012-06-13 2013-12-26 Sumitomo Electric Ind Ltd 光トランシーバ
US9602464B2 (en) * 2014-12-12 2017-03-21 Intel Corporation Apparatus, system and method for allocating identifiers to components of a control system
US10216689B2 (en) * 2014-12-18 2019-02-26 Intel Corporation Coordinating multiple real-time functions of a peripheral over a synchronous serial bus
US9632862B2 (en) * 2014-12-20 2017-04-25 Intel Corporation Error handling in transactional buffered memory
US10042798B2 (en) * 2015-12-30 2018-08-07 Mediatek Singapore Pte. Ltd. System comprising a master device and a slave device having multiple integrated circuit die, wireless communication unit and method therefor
US10970243B2 (en) * 2016-01-29 2021-04-06 Qorvo Us, Inc. Front end serial bus automatic bus park tri-state activation
US10210130B2 (en) * 2016-11-01 2019-02-19 Psemi Corporation Serial-bus interface for multi-die module
US10423551B2 (en) * 2017-09-07 2019-09-24 Qualcomm Incorporated Ultra-short RFFE datagrams for latency sensitive radio frequency front-end

Also Published As

Publication number Publication date
US10838898B2 (en) 2020-11-17
WO2019112754A1 (en) 2019-06-13
US20190171595A1 (en) 2019-06-06

Similar Documents

Publication Publication Date Title
US10482055B2 (en) Hardware event priority sensitive programmable transmit wait-window for virtual GPIO finite state machine
TW201926064A (zh) 用於時間臨界資料交換之多點下傳匯流排上之位元交錯雙向傳輸
US20170168966A1 (en) Optimal latency packetizer finite state machine for messaging and input/output transfer interfaces
US10579549B2 (en) Staggered transmissions on a multi-drop half-duplex bus
US20180357199A1 (en) Slave-to-slave communication in i3c bus topology
US20180329837A1 (en) Input/output direction decoding in mixed vgpio state exchange
US10445270B2 (en) Configuring optimal bus turnaround cycles for master-driven serial buses
US10515044B2 (en) Communicating heterogeneous virtual general-purpose input/output messages over an I3C bus
US10572438B1 (en) Dynamic optimal data sampling time on a multi-drop bus
US20200201804A1 (en) I3c device timing adjustment to accelerate in-band interrupts
TW202014904A (zh) I3c上的低等待時間虛擬通用輸入/輸出
US10528503B1 (en) Real-time dynamic addressing scheme for device priority management
US10684981B2 (en) Fast termination of multilane single data rate transactions
US20200083875A1 (en) Master read from slave over pulse-width modulated half-duplex 1-wire bus
US10997114B2 (en) Vector decoding in time-constrained double data rate interface
US10733121B2 (en) Latency optimized I3C virtual GPIO with configurable operating mode and device skip
US10545886B2 (en) Clock line driving for single-cycle data over clock signaling and pre-emption request in a multi-drop bus
TW201937902A (zh) 用於低延遲事件訊息之多點虛擬通用輸入/輸出
US20180357067A1 (en) In-band hardware reset for virtual general purpose input/output interface
US11520729B2 (en) I2C bus architecture using shared clock and dedicated data lines