TW201926062A - 在多點半雙工匯流排上之交錯傳輸 - Google Patents

在多點半雙工匯流排上之交錯傳輸 Download PDF

Info

Publication number
TW201926062A
TW201926062A TW107136799A TW107136799A TW201926062A TW 201926062 A TW201926062 A TW 201926062A TW 107136799 A TW107136799 A TW 107136799A TW 107136799 A TW107136799 A TW 107136799A TW 201926062 A TW201926062 A TW 201926062A
Authority
TW
Taiwan
Prior art keywords
serial bus
data
transmitted
bus
transmission
Prior art date
Application number
TW107136799A
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 TW201926062A publication Critical patent/TW201926062A/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/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1605Handling requests for interconnection or transfer for access to memory bus based on arbitration
    • G06F13/1652Handling requests for interconnection or transfer for access to memory bus based on arbitration in a multiprocessor architecture
    • G06F13/1663Access to shared memory
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B7/00Radio transmission systems, i.e. using radiation field
    • H04B7/24Radio transmission systems, i.e. using radiation field for communication between two or more posts
    • H04B7/26Radio transmission systems, i.e. using radiation field for communication between two or more posts at least one of which is mobile
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40006Architecture of a communication node
    • H04L12/40045Details regarding the feeding of energy to the node from the bus
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L25/00Baseband systems
    • H04L25/38Synchronous or start-stop systems, e.g. for Baudot code
    • H04L25/40Transmitting circuits; Receiving circuits
    • H04L25/49Transmitting 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
    • H04L25/497Transmitting 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 by correlative coding, e.g. partial response coding or echo modulation coding transmitters and receivers for partial response systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Spectroscopy & Molecular Physics (AREA)
  • Human Computer Interaction (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或其他協定來操作該串列匯流排。
在一個態樣中,在第一器件與第二器件之間起始異動包括傳輸開始條件或參與匯流排仲裁過程,以及在串列匯流排上自第一器件傳輸器件位址,該器件位址識別第二器件,及經由串列匯流排將命令自第一器件傳輸至第二器件以識別在串列匯流排上沿第一方向執行之交換類型。
在本發明之各種態樣中,處理器可讀儲存媒體具有儲存在其上之一或多個指令。指令可由處理電路中之至少一個處理器或狀態機執行。指令可致使處理電路在第一器件與第二器件之間起始異動以經由串列匯流排在第一方向上交換資料報,且在完全傳輸資料報之前經由串列匯流排在第二方向上交換一或多個資料位元組。兩個器件可作為傳輸器在串列匯流排上交替,使得資料傳輸之方向在串列匯流排上交錯。可根據I3C、RFFE、SPMI或其他協定來操作串列匯流排。
在本發明之各種態樣中,裝置包括:用於在第一器件與第二器件之間起始異動以經由串列匯流排在第一方向上交換資料報,以及用於在已完全傳輸資料報之前經由串列匯流排在第二方向上交換一或多個資料位元組。兩個器件可作為傳輸器在串列匯流排上交替,使得資料傳輸之方向在串列匯流排上交錯。可根據I3C、RFFE、SPMI或其他協定來操作串列匯流排。
在本發明之各種態樣中,適於經由串列匯流排通信之第一器件具有介面電路,該介面電路經調適以將裝置耦接至串列匯流排,及處理器。該處理器可僅組態以在第一器件與第二器件之間起始異動以經由串列匯流排在第一方向上與第二器件交換資料報,且在已完全傳輸資料報之前經由串列匯流排在第二方向上與第二器件交換一或多個資料位元組。第一器件及第二器件作為傳輸器在串列匯流排上交替,使得資料傳輸之方向在串列匯流排上交錯。
本申請案主張2018年10月17日在美國專利與商標局提出申請之非臨時申請案第16/162,583號及2017年12月5日在美國專利與商標局提出申請之臨時申請案第62/594,955號之優先權及權益。
下文結合附圖所闡明之詳細描述意欲作為對各種組態之描述且並不意欲表示可實踐本文中所描述之概念之僅有的組態。出於提供對各種概念之徹底理解的目的,詳細描述包括特定細節。然而,對熟習此項技術者將顯而易見,可在無此等特定細節之情況下實踐此等概念。在一些情況中,眾所周知之結構及組件系以方塊圖形式展示以便避免混淆此等概念。
現在將參考各種裝置及方法呈現本發明之數個態樣。此等裝置及方法將在以下詳細說明中予以描述且在附圖中藉由各種區塊,模組,組件,電路,步驟,程序,演算法等(統稱為「元件」)加以圖解說明。此等元件可使用電子硬體,電腦軟體或其任一組合來實施。此等元件系實施為硬體抑或軟體取決於特定應用及強加於整體系統之設計約束。
概述
包括多個SoC及其他IC裝置之裝置通常使用共用通信介面,該共用通信介面可包括串列匯流排或其他資料通信鏈路以將處理器與數據機及其他周邊裝置連接。串列匯流排或其他資料通信鏈路可根據所定義之多個標準或協定來操作。例如,可根據I2C、I3C、SPMI及/或RFFE協定操作串列匯流排,其通常經定義及/或組態用於半雙工操作。增加串列匯流排之利用率及/或在支援應用、周邊器件及感測器時施加更嚴格之時序約束可能導致對減少傳輸延時之需求。傳輸延時可包括在串列匯流排上終止正在進行之異動所需的時間,匯流排轉回(在傳輸模式與接收模式之間),匯流排仲裁及/或由協定指定之命令傳輸。
在一些實施中,用以減少延時之蠻力方法包括增加傳輸時脈頻率。增加的時脈頻率與對電池壽命敏感之器件內增加的功率消耗相關聯,且可能導致增加的電磁干擾。
根據本文中所揭示之某些態樣,作為半雙工串列匯流排上之異動的參與方之器件可在耦接至串列匯流排之兩個器件之間建立的單個異動內雙向地交換資料。在異動期間配對之器件可在兩個方向上交換有效負載及控制資料。在習用實施中,使用主起始輪詢或從起始匯流排仲裁來實施之半雙工通信以控制串列匯流排上之資料傳輸方向。與輪詢及匯流排仲裁相關之協定顯著地促進匯流排延時。
在本文中所揭示之的某些態樣中,兩個器件可在異動之持續時間內配對,或在啟用雙向通信之一系列異動中配對。在一個實例中,可在半雙工串行鏈路上建立「全雙工異動」以在正向方向上傳輸多位元組資料報,同時准許在反向方向上傳輸一或多個位元組。在一個實例中,在寫入異動期間,資料在正向方向上自主器件傳輸至從器件。在另一實例中,在讀取異動期間,資料在前向方向上自從器件發送至主器件。在一些實例中,正向可經指派至至主器件至從器件之任何通信,且反向可經指派至至從器件至主器件之任何通信。
根據各種態樣,可交替經由半雙工串列匯流排之在正向及反向上傳輸,且主器件及從器件可在兩個方向上交換不相關資料。例如,主器件可將組態資料寫入至從器件,而從器件在同一異動內向主器件發送狀態資訊。主器件可起始異動以將資料報發送至從器件,且主器件可經準備在發送資料報時接收反向資料。本文中揭示之技術及過程不要求主器件在資料報內傳輸匯流排轉回命令。本文中揭示之技術及程序可減少總體匯流排延時且防止在習用匯流排管理協定用於促進串列匯流排上之雙向通信時原本可能出現之逾時、丟棄封包及丟失狀態及/或事件。本文中所揭示之技術及程序可以各種多點串列匯流排架構中實施,包括根據RFFE、I3C及SPMI協定操作之串列匯流排。
使用串列資料鏈路之裝置的實例
根據某些態樣,串列資料鏈路可用於互連作為裝置之子組件的電子裝置,諸如蜂巢式電話、智慧型電話、會話初始化協定(SIP)電話、膝上型電腦、筆記型電腦、迷你筆記型電腦、智慧筆電、個人數位助理(PDA)、衛星無線電、全球定位系統(GPS)裝置、智慧家庭裝置、智慧型照明、多媒體裝置、視訊裝置、數位音訊播放器(例如,MP3播放器)、相機、遊戲機、娛樂裝置、運載工具組件、可穿戴計算裝置(例如,智慧型手錶、健康或健身追蹤器、眼鏡等)、電器、感測器、安全裝置、自動售貨機、智能電錶、無人機、多功能飛行器或任何其他類似功能裝置。
圖1說明可使用資料通信匯流排之裝置100的實例。裝置100可包括處理電路102,其耦接多個組件及/或裝置104、106及/或108且可在一或多個ASIC中或在SoC中實施。在一個實例中,裝置100可為通信器件,且處理電路102可包括提供在ASIC 104中之處理器件、一或多個周邊裝置106以及使得裝置能夠經由天線124與無線電存取網路、核心存取網路、網際網路及/或另一網路通信的收發器108。
ASIC 104可具有一或多個處理器112 、一或多個數據機110、機載記憶體114、匯流排介面電路116,及/或其他邏輯電路或功能。處理電路102可由作業系統控制,該作業系統可提供使得一或多個處理器112能夠執行駐存在提供在處理電路102上之機載記憶體114或其他處理器可讀儲存裝置122中之軟體模組織應用程序設計介面(API )層。軟體模組可包括儲存在機載記憶體114或處理器可讀儲存裝置122中之指令及資料.ASIC 104可存取其機載記憶體114,處理器可讀儲存裝置122,及/或處理電路102外部之儲存裝置。機載記憶體114,處理器可讀儲存裝置122可包括唯讀記憶體(ROM)或隨機存取記憶體(RAM),電可抹除可程式化ROM (EEPROM),閃卡或可用於處理系統及計算平台之任何記憶體裝置。處理電路102可包括,實施或存取本端資料庫或其他參數儲存裝置,其可保持用於組態及操作裝置100及/或處理電路102之操作參數及其他資訊。本端資料庫可使用暫存器,資料庫模組,快閃記憶體,磁媒體,EEPROM ,軟碟或硬碟等來實施。處理電路亦可可操作方式耦接至外部裝置(諸如天線124,顯示器126,操作者控制件,諸如開關或按鈕128、130及/或整合式或外部鍵盤132)連同其他組件。使用者介面模組可經組態以經由專用通信鏈路或經由一或多個串列資料互連與顯示器126、外部小鍵盤132等一起操作。
處理電路102可包括使得某些裝置104、106及/或108能夠通信之一或多個匯流排118a、118b、120。在一個實例中,ASIC 104可包括匯流排介面電路116,其包括電路,計數器,定時器,控制邏輯和其他可組態電路或模組之組合。在一個實例中,匯流排介面電路116可經組態以根據通信規範或協定進行操作。處理電路102可包括或控制組態及管理裝置100之操作的電力管理功能。
圖2說明包括耦接至串列匯流排220之多個器件202及2220 -222N 之器件200的某些態樣。器件202及2220 -222N 可在一或多個半導體IC器件(諸如應用處理器,SoC或ASIC)中實施。在各種實施中,器件202及2220 -222N 可包括、支援或操作為數據機、信號處理器件、顯示驅動器、相機、使用者介面、感測器、感測器控制器、媒體播放器、收發器及/或其他此等組件或裝置。在一些實例中,從器件2220 至222N 中之一或多者可用於控制、管理或監視感測器器件。經由串列匯流排220在裝置202及2220 至222N 之間的通信由匯流排主器件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上操作為主器件。
在一些實施中,串列匯流排220可根據I3C協定來操作。使用I3C協定進行通信之器件可與使用I2C協定進行通信之器件在相同串列匯流排220上共存。I3C協定可支援不同的通信模式,包括與I2C協定相容之單資料速率(SDR)模式。高資料速率(HDR)模式可提供6百萬位元/秒(Mbps)與16 Mbps之間的資料傳輸速率,且一些HDR模式可提供較高資料傳送速率。I2C協定可能符合事實上之I2C標準,提供範圍可能在100千位元/秒(kbps)與和3.2 Mbps之間的資料速率。除了資料格式及匯流排控制之態樣之外,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上之主機裝置、多個周邊器件4041 至404N ,以及一或多個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 至404N 中之每一者。例如,資料通信鏈路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。資料可在信號中傳遞,該信號經由資料線706根據在時脈線708上傳輸之時脈信號提供定時傳輸。由應用生成或消耗之資料、虛擬GPIO資料、命令及控制資料以及其他資訊可經編碼或囊封在資料報720、740之資料有效負載728、748中且經由資料線706傳輸。在每個階段,資料在由操作類型判定之方向上流動,且對於每一資料報為固定的。圖7包括其中執行讀取的資料報720、740,導致串列匯流排704之至少一個匯流排轉回。時脈信號藉由主器件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,該讀取請求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說明根據本文中所揭示之某些態樣的可促進經由串列匯流排之交錯雙向傳輸之異動及/或資料報800、840。可根據RFFE、SPMI、I3C或其他協定傳輸異動及/或資料報800、840,且某些命令、位址及控制資料或信號可符合用於操作串列匯流排之協定的要求。例如,當匯流排主控器傳輸序列開始條件(SSC 806、844)時起始所說明異動及/或資料報800、840的傳輸,且當匯流排主控器發送匯流排停放序列(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中所說明之實例中,主器件可在命令欄位810中傳輸具有規定欲讀取之第一暫存器之位址資訊812之讀取命令。從器件可在反向方向上傳輸一或多個資料欄位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交錯傳輸。在一個實例中,在命令欄位848中提供發信860。當命令欄位848中包括某些命令碼時,可啟用交錯傳輸。啟用交錯通信之命令碼可在由兩個器件維護之組態資訊中識別及/或可由應用程序提供。
在另一實例中,當位址資訊850識別具有與組態資訊中之交錯傳輸相關聯之位址或位址範圍匹配之位址的暫存器時,可藉由發信862啟用交錯傳輸。啟用交錯通信之位址及/或位址範圍可在由兩個器件維護之組態資訊中識別及/或可由應用程序提供。
在另一實例中,器件可使用在同位位元傳輸期間在時脈信號上傳輸之帶內發信864來指示在反向方向上傳輸資料之期望。帶內發信864可用於在位元組邊界處啟用(或停用)交錯傳輸。當資料可用於在接收器件處傳輸時,帶內發信864可用於提供反向時槽。在一些實施中,帶內發信864可用於起始反向業務傳輸,而無需為已經組態以支***錯傳輸之主動配對器件定義啟用正向命令或經識別暫存器位址範圍。在一些實施中,帶內發信864可用於在資料可用於傳輸時以及在傳輸啟用正向命令及/或經識別暫存器位元範圍之後提供反向時槽。
在圖9中,第一資料報900說明第一實例,其中經由在根據RFFE協定操作之串列匯流排耦接之主動配對器件之間啟用或起始交錯傳輸。在此實例中,由主器件傳輸之某些命令啟用或起始交錯傳輸。可在由主動配對器件維護之組態資訊中識別啟用或起始交錯傳輸之命令碼。在其他實例中,可根據SPMI、I3C或其他協定來操作串列匯流排,且可藉由類似傳輸命令及/或藉由具有不同格式或結構之命令來啟用或起始交錯傳輸。
在第一實例中,主器件藉由傳輸SSC 906來起始異動或資料報900。主器件可傳輸從器件位址908以識別欲接收由主器件傳輸之資料有效負載之從器件。在某些情況下,在已傳輸從器件位址908之後,主器件及從器件被認為係主動配對的。主器件及從器件中之每一者可經組態以支***錯傳輸且將另一器件識別為能夠在初始化期間或藉由應用程序藉由組態來處置交錯傳輸。
主器件可在命令欄位910中傳輸命令碼,其中命令碼規定欲執行之操作的類型。命令欄位910可規定寫入操作或讀取操作,後續接著指示暫存器寫入或讀取之開始位置之位址資訊914。命令欄位910及/或位元資訊914可包括或已附加有錯誤偵測及/或錯誤校正欄位,其可包括同位位元、循環冗餘檢查(CRC)值、檢查和等。然後可傳輸資料欄位9181 至918N 及9201 至920N 。反向資料欄位9201 至920N 在傳輸中可在識別欲由包括在反向資料欄位9201 至920N 中之資料寫入之第一暫存器位址的位址欄位916之前。
在一些情況下,主動配對器件可將命令欄位910之內容識別為與交錯傳輸相關聯。例如,組態資訊可判定包括在命令欄位910中之命令碼指示主動配對器件可使用位元組級交錯傳輸。命令幀亦可指示可在主動配對器件之間交換之位元組之數目。位元組之數目可與前向訊務、反向訊務或組合訊務有關。
可在單個異動內在兩個方向上傳輸資料而不重複標頭912,其中標頭912可包括SSC 906、從器件位址908、命令欄位910及/或一或多個同位位元。交錯傳輸之使用使得能夠在與前向資料欄位918l 至918N 相同之資料報900中交換反向資料欄位9201 至920N ,且消除原本在反向資料欄位9201 至920N 之傳輸之前的匯流排仲裁及/或某些標頭傳輸。消除傳輸可減少匯流排延時。在一個實例中,匯流排可以26 MHz計時,且標頭以15個時脈週期傳輸,提供如下標頭時間:
15 x 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及/或一或多個同位位元。交錯傳輸之使用使得能夠在與前向資料欄位9561 至956N 相同之資料報940中交換反向資料欄位9581 至958N ,且消除原本在反向資料欄位9581 至958N 之傳輸之前的匯流排仲裁及/或某些標頭傳輸。消除此等傳輸可減少匯流排延時。在一個實例中,匯流排可以26 MHz計時,且標頭以24個時脈週期傳輸,提供如下標頭時間:
24 x 38.5ns =0.92μs。
因此,與在交錯傳輸中交換之反向資料相關聯的延時減少在RFFE或SPMI匯流排上在26 MHz下至少為0.92 μs。
在圖10中,資料報1000說明第三實例,其中可經由在根據RFFE協定操作之串列匯流排耦接之主動配對器件之間啟用或起始交錯傳輸。交錯傳輸可藉由意欲或期望傳輸反向資料之器件生成之帶內發信864啟用或起始。在一個實例中,帶內發信864可在指定用於在資料線1042上傳輸同位位元之位元時槽1016期間在時脈線1044上傳輸之時脈信號上傳輸。在其他實例中,串列匯流排可根據SPMI、I3C或其他協定操作,且可藉由在指定用於傳輸同位、應答(ACK)或其他命令或控制資訊之時槽中傳輸帶內發信來啟用或起始交錯傳輸。
主器件可藉由傳輸SSC 1006來起始資料報1000。主器件可傳輸從器件位址1008以識別欲接收由主器件傳輸之資料有效負載之從器件。在某些情況下,在已傳輸從器件位址1008之後,主器件及從器件被認為係主動配對的。主器件及從器件中之每一者可經組態以支***錯傳輸且將另一器件識別為能夠在初始化期間或藉由應用程序藉由組態來處置交錯傳輸。
主器件可在命令欄位1010中傳輸命令碼,其中命令碼規定欲執行之操作的類型。命令碼可規定寫入操作或讀取操作,後續接著指示暫存器寫入或讀取之開始位置之位址資訊1014。命令欄位1010及/或位元資訊1014可包括或已附加有錯誤偵測及/或錯誤校正欄位,其可包括同位位元、循環冗餘檢查(CRC)值、檢查和等。然後可傳輸資料欄位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已經提前驅動為低,且可判定欲執行反向傳輸。
帶內發信之使用准許資料在單個異動內在兩個方向上傳輸,而不重複匯流排仲裁及/或某些標頭傳輸。交錯傳輸之使用使得能夠在與前向資料欄位10181 至1018N 相同之資料報1000中交換反向資料欄位10201 至1020N ,且消除原本在反向資料欄位10201 至1020N 之傳輸之前的匯流排仲裁及/或某些標頭傳輸。消除此等傳輸可減少匯流排延時。如本文中所揭示,與交錯傳輸中交換之反向資料相關聯的延時減少在RFFE或SPMI匯流排上在26 MHz下至少為0.57 μs。
在一些實施中,起始帶內發信之反向資料欄位10201 至1020N 之數目可經限制以防止匯流排佔用(bus hogging),其中單個器件可藉由對反向傳輸之連續需求來鎖定其他器件。在一個實例中,反向資料欄位10201 至1020N 之最大數目可組態。在一個實例中,每資料報反向資料欄位10201 至1020N 之最大數目可組態。在另一實例中,每資料報之組合式前向資料欄位10181 至1018N 及反向資料欄位10201 至1020N 之最大數目可組態。
在某些實施中,可採用帶內發信事件中之一或多者來起始反方向傳輸。使用多於一個帶內發信事件可防止在單個同位位元週期期間發生之錯誤。在一些實例中,所使用之帶內發信之組態可在系統初始化、製造期間藉由應用程序或藉由匯流排主器件判定或提供。
處理電路及方法之實例
圖11為說明用於使用裝置1100之硬體實施之實例的圖。在一些實例中,裝置1100可執行本文中所揭示之一或多個功能。根據本發明之各種態樣,如本文中所揭示之元件,或元件之任何部分或元件之任何組合可使用處理電路1102來實施。處理電路1102可包括由硬體及軟體模組之某一組合控制之一或多個處理器1104。處理器1104之實例包括微處理器、微控制器、數位信號處理器(DSP)、SoC、ASIC、場可程式化閘陣列(FPGA)、可程式化邏輯裝置(PLD)、狀態機、定序器、閘控邏輯、離散硬體電路以及經組態以執行貫穿本發明所闡述之各種功能性之其他適合硬體。一或多個處理器1104可包括執行特定功能且可由軟體模組1116中之一者組態、擴充或控制之專門處理器。一或多個處理器1104可經由在初始化期間載入的軟體模組1116之組合來組態,且藉由在操作期間載入或攜載一或多個軟體模組1116來進一步組態。
在所說明實例中,處理電路1102可藉助匯流排架構(通常由匯流排1110表示)來實施。取決於處理電路1102之特定應用及整體設計約束,匯流排1110可包括任一數目個互連匯流排及橋接器。匯流排1110將包括一或多個處理器1104及儲存器1106之各種電路鏈接在一起。儲存器1106可包括記憶體器件及大量儲存器件,且可在本文中被稱作電腦可讀媒體及/或處理器可讀媒體。匯流排1110亦可鏈接各種其他電路,諸如時序源、時序器、周邊器件、電壓調節器及電源管理電路。匯流排介面1108可在匯流排1110與一或多個收發器1112a、1112b之間提供介面。可為處理電路支援之每一聯網技術提供收發器1112a、1112b。在一些情況下,多個聯網技術可共用在收發器1112a、1112b中發現之一些或所有電路或處理模組。每一收發器1112a、1112b提供用於經由傳輸媒體與各種其他裝置進行通信的構件。在一個實例中,收發器1112a可用於將裝置1100耦接至多線匯流排。在另一實例中,收發器1112b可用於將裝置1100連接至無線電存取網路。取決於裝置1100之本質,使用者介面1118 (例如,小鍵盤、顯示器、揚聲器、麥克風、搖桿)亦可經提供,且可直接地或經由匯流排介面1108以通信方式耦接至匯流排1110。
處理器1104可負責管理匯流排1110及一般處理,該一般處理可包括儲存於可包括儲存器1106之電腦可讀媒體中之軟體之執行。在此態樣中,處理電路1102 (包括處理器1104)可用於實施本文中所揭示之方法、功能及技術中之任何者。儲存器1106可用於儲存在執行軟體時由處理器1104操縱之資料,且軟體可經組態以實施本文中所揭示之方法中之任一者。
處理電路1102中之一或多個處理器1104年可執行軟體。無論稱作軟體,韌體,中間軟體,微碼,硬體描述語言抑或其他,軟體應廣泛地解釋為意指指令,指令集,碼,碼段,程式碼,程式,子程式,軟體模組,應用程式,軟體應用程式,軟體套件,常式,副常式,物件,可執行檔,執行緒,程序,函式,演算法等。軟體可以外部電腦可讀形式駐留在儲存器1106中或外部電腦可讀媒體中。外部電腦可讀媒體及/或儲存器1106可包括非暫時性電腦可讀媒體。藉由實例之方式,非暫時性電腦可讀媒體包括:磁性儲存器件(例如,硬碟,軟碟,磁條),光碟(例如,緊湊光碟(CD),數位通用光碟(DVD)),智慧卡,快閃記憶體器件(例如,「隨身碟」,記憶卡,記憶棒,保密磁碟),RAM,ROM,可程式化唯讀記憶體(PROM),可抹除PROM(EPROM),EEPROM,暫存器,可抽換磁碟及用於儲存可由電腦存取及讀取之軟體及/或指令之任何其他適合媒體。藉由實例之方式,電腦可讀媒體及/或儲存器1106亦可包括載波,傳輸線路及適於傳輸可由電腦存取及讀取之軟體及/或指令的任何其他媒體。電腦可讀媒體及/或儲存器1106可駐留在處理電路1102中,在處理器1104中,在處理電路1102外部或跨越包括處理電路1102之多個實體分佈。電腦可讀媒體及/或儲存器1106可以電腦程式產品體現。藉由實例之方式,電腦程式產品可包括封裝材料中之電腦可讀媒體。熟習此項技術者將認識到最佳實施貫穿本發明所呈現之所描述功能性的方式取決於特定應用及強加於整體系統上之整體設計約束。
儲存器1106可維持經維持及/或組織在可載入碼段、模組、應用程式、程式等等(其在本文中稱作軟體模組1116)中之軟體。軟體模組1116中之每一者可包括在安裝或載入於處理電路1102上且由一或多個處理器1104執行時促成可控制一或多個處理器1104之操作之執行階段映像1114的指令及資料。在被執行時,某些指令可致使處理電路1102根據本文中所描述之某些方法、演算法及程序執行功能。
可在處理電路1102之初始化期間載入軟體模組1116中之一者,且此等軟體模組1116可組態處理電路1102以實現本文中所揭示之各種功能之效能。舉例而言,一些軟體模組1116可組態處理器1104之內部器件及/或邏輯電路1122,且可管理對諸如收發器1112a、1112b,匯流排介面1108,使用者介面1118,時序器、數學共處理器等等外部器件之存取。軟體模組1116可包括與中斷處置器及器件驅動器互動且控制對由處理電路1102提供之各種資源之存取之控制程式及/或作業系統。資源可包括記憶體、處理時間、收發器1112a、1112b之存取、使用者介面1118等等。
處理電路1102之一或多個處理器1104可為多功能的,藉此軟體模組1116中之一些經載入且經組態以執行不同功能或相同功能之不同情況。一或多個處理器1104可另外經調適以管理回應於來自(例如)使用者介面1118、收發器1112a、1112b及器件驅動器之輸入而起始之背景任務。為支援多功能之效能,一或多個處理器1104可經組態以提供多任務環境,藉此複數個功能中之每一者視需要或期望實施為由一或多個處理器1104伺服之任務集。在一項實例中,多任務環境可使用在不同任務之間傳遞對處理器1104之控制之分時程式1120來實施,藉此每一任務在任何未完成操作之完成時及/或回應於諸如中斷之輸入而將對一或多個處理器1104之控制返回至分時程式1120。當任務具有對一或多個處理器1104之控制時,處理電路有效地專門用於由於控制任務相關聯之功能解決之用途。分時程式1120可包括作業系統、在循環配置資源基礎上傳送控制之主迴路、根據功能之優先次序分配對一或多個處理器1104之控制之功能,及/或藉由將對一或多個處理器1104之控制提供至處置功能來對外部事件作出回應之中斷驅動主迴路。
用於最佳化虛擬GPIO延時之方法可包括解析各種輸入源的動作,包括GPIO信號狀態的源,欲傳輸之參數及/或訊息。輸入源可包括硬體事件、組態資料、掩碼參數及暫存器位址。可採用封包特定延時估計器來基於經剖析參數來估計對應封包類型之延時。可基於針對可用封包類型計算或判定之最小延時來選擇欲用於傳輸之封包類型。可使用命令碼來識別選定封包類型,該命令碼可經提供至具有欲傳輸之有效負載之封包器。命令碼亦可反映欲用於傳輸有效負載之協定。在一些實施中,可根據不同協定或一或多個協定之不同變體來操作用於傳輸有效負載之實體鏈路。可基於與各種可用協定或協定變體相關聯之延時來選擇欲用於傳輸有效負載之協定。
圖12為可由耦接至串列匯流排之器件執行之方法的流程圖1200 。可根據I3C、RFFE、SPMI或其他協定來操作串列匯流排。在區塊1202處,器件可在第一器件與第二器件之間起始異動以經由串列匯流排在第一方向上與第二裝置交換資料報。在區塊1204處,器件可在完全傳輸資料報之前經由串列匯流排在第二方向上與第二器件交換一或多個資料位元組。第一器件及第二器件可作為傳輸器在串列匯流排上交替,使得資料傳輸之方向在串列匯流排上交錯。
在某些實例中,在第一器件與第二器件之間起始異動包括在串列匯流排上自第一器件傳輸器件位址,識別第二器件之器件位址,以及經由串列匯流排自第一器件向第二器件傳輸命令以識別經由串列匯流排在第一方向上執行之交換之類型。在第一實例中,在第一器件與第二器件之間起始異動可包括在傳輸器件位址之前在串列匯流排上傳輸SSC。在第二實例中,在第一器件與第二器件之間起始異動包括作為從器件參與匯流排仲裁以在傳輸器件位址之前獲得對串列匯流排之存取。在第二器件接收到器件位址之後,第一器件及第二器件可被認為係主動繫結。
在一些實例中,時脈信號在串列匯流排之時脈線上傳輸。第一器件及第二器件可經調適以組態第一線驅動器以在串列匯流排之資料線上作為傳輸器操作達足以傳輸一個位元組之資料的時脈信號之第一數目個週期,且在時脈信號之第一數目個週期已完成之後重新組態第一線驅動器以在串列匯流排上作為接收器操作。資料傳輸之方向可在串列匯流排上交錯,直至已交換一或多個位元組之資料為止。
在一個實例中,命令包括自多個可用命令碼中選擇之命令碼。第一器件及第二器件可經組態以回應於複數個可用命令碼中之一或多者而錯開資料傳輸之方向。
在一個實例中,在兩個器件之間起始異動包括在傳輸命令之後在串列匯流排上自第一器件傳輸暫存器位址。第一器件及第二器件可經組態以當暫存器位址落入預先組態用於交錯傳輸之位址範圍內時錯開資料傳輸之方向。
在一個實例中,第一器件可致使時脈信號中之發信狀態之早期轉變,同時在串列匯流排之資料線上在第一方向上傳輸同位位元。早期轉變可致使暫停資料在第一方向上之傳輸。在已在第一方向上傳輸同位位元之後,第一器件可在第二方向上傳輸資料位元組。發信狀態之早期轉變可自低電壓狀態至高電壓狀態之轉變,或自高電壓狀態至低電壓狀態之轉變。
在一個實例中,第一器件可判定在串列匯流排之資料線上在第一方向上傳輸同位位元時已發生時脈信號中之發信狀態之早期轉變,回應於早期轉變而暫停資料在第一方向上之傳輸,且在完成在第一方向上之同位位元之傳輸之後接收在第二方向上傳輸之資料位元組。
圖13為說明用於使用處理電路1302之裝置1300之硬體實施之簡化實例的圖。處理電路通常具有可包括一或多個微處理器、微控制器、數位信號處理器、定序器及狀態機之控制器或處理器1316 。處理電路1302可藉助匯流排架構(通常由匯流排1320表示)來實施。取決於處理電路1302之特定應用及整體設計約束,匯流排1320可包括任一數目個互連匯流排及橋接器。匯流排1320將包括由控制器或處理器1316、模組或電路1304、1306及1308以及處理器可讀儲存媒體1318表示之一或多個處理器及/或硬體模組之各種電路鏈接在一起。一或多個實體層電路及/或模組1314可經提供以支援通過使用多點匯流排1312、經由天線1322 (例如,至無線電存取網路)等等實施之通信鏈路上的通信。匯流排1320亦可鏈接此項技術中眾所周知之各種其他電路(諸如,定時源、周邊裝置、電壓調節器及功率管理電路),且因此將不進行任何進一步描述。
處理器1316負責一般處理,包括儲存在處理器可讀儲存媒體1318上之軟體、程式碼及/或指令之執行。處理器可讀儲存媒體可包括非暫時性儲存媒體。軟體在由處理器1316執行時致使處理電路1302執行上文針對任何特定裝置所描述之各種功能。處理器可讀儲存媒體可用於儲存在執行軟體時由處理器1316操縱之資料。處理電路1302進一步包括模組1304、1306及1308中之至少一者。模組1304、1306及1308可為在處理器1316中執行,駐留/儲存於處理器可讀媒體1318中之軟體模組,耦接至處理器1316之一或多個硬體組件,或其某一組合。模組1304、1306及1308可包括微控制器指令,狀態機組態參數或其某一組合。
在一個組態中,裝置1300包括經調適以接收及處理命令、暫存器位址及/或帶內發信以判定何時指示交錯傳輸之模組及/或電路1308,經調適以基於交錯傳輸能力組態主動耦接之器件之模組及/或電路1306,以及經調適以在交錯傳輸期間管理交錯傳輸及/或組態或控制一或多個實體層電路及/或模組1314之模組及/或電路1304。
在一個實例中,裝置1300可具有經調適將裝置耦接至多點串列匯流排1312之介面電路,以及處理器1316。該裝置可經指定為耦接至多點串列匯流排1312之複數個器件中之第一器件。處理器1316可經組態以在第一器件與第二器件之間起始異動,以經由多點串列匯流排1312在第一方向上與第二器件交換資料報,且在完全傳輸資料報之前經由多點串列匯流排1312在第二方向上與第二器件交換一或多個位元組之資料。第一器件及第二器件在多點串列匯流排1312上作為傳輸器交替,使得資料傳輸之方向在多點串列匯流排1312上交錯。多點串列匯流排1312可根據RFFE或SPMI協定來操作。
在各種實例中,處理器1316經進一步組態以在多點串列匯流排1312上自第一器件傳輸器件位址,器件位址識別第二器件,且經由多點串列匯流排1312將命令自第一器件傳輸至第二器件以識別欲經由多點串列匯流排1312在第一方向上執行之交換類型。處理器1316可經進一步組態以在傳輸器件位址之前在多點串列匯流排1312上傳輸SSC。處理器1316可經進一步組態以作為從器件參與匯流排仲裁以在傳輸器件位址之前獲得對多點串列匯流排1312之存取。在第二器件接收到器件位址之後,可主動繫結第一器件及第二器件。第一器件及第二器件中之每一者可經調適以組態第一線驅動器以在多點串列匯流排1312之資料線上作為傳輸器操作達足以傳輸一個資料位元組之在多點串列匯流排1312之時脈線上傳輸時脈信號之第一數目個週期,且在已完成時脈信號之第一數目個週期之後,重新組態第一線驅動器以在多點串列匯流排1312上操作為接收器。資料傳輸之方向在多點串列匯流排1312上交錯,直至已交換一或多個位元組之資料為止。該命令可包括自複數個可用命令碼中選擇之命令碼,其中第一器件及第二器件經組態以回應於複數個可用命令碼中之一或多者而錯開資料傳輸之方向。處理器1316可經進一步組態以在傳輸命令之後在多點串列匯流排1312上自第一器件傳輸暫存器位址,其中第一器件及第二器件經組態以在暫存器位址在預先組態用於交錯傳輸之位址範圍內時交錯資料傳輸之方向。處理器1316可經進一步組態以在多點串列匯流排1312之資料線上在第一方向上傳輸同位位元時致使時脈信號中之發信狀態之早期轉變,其中早期轉變指示暫停資料在第一方向上之傳輸,且在同位位元已在第一方向上傳輸之後在第二方向上傳輸一個位元組之資料。發信狀態之早期轉變可自低電壓狀態至高電壓狀態之轉變,或自高電壓狀態至低電壓狀態之轉變。處理器1316可經進一步組態以判定在多點串列匯流排1312之資料線上在第一方向上傳輸同位位元時已發生時脈信號中之發信狀態之早期轉變,回應於早期轉變而暫停資料在第一方向上之傳輸,且在完成在第一方向上之同位位元之傳輸之後接收在第二方向上傳輸之資料位元組。
處理器可讀儲存媒體1318可具有一或多個指令,該一或多個指令在由處理電路之至少一個處理器1316或狀態機執行時致使處理電路在第一器件與第二器件之間起始異動以經由多點串列匯流排1312在第一方向上交換資料報,且在完全傳輸資料報之前經由多點串列匯流排1312在第二方向上交換一或多個資料位元組。第一器件及第二器件在多點串列匯流排1312上作為傳輸器交替,使得資料傳輸之方向在多點串列匯流排1312上交錯。多點串列匯流排1312可根據RFFE或SPMI協定來操作。
應理解,所揭示之程序中之步驟之特定次序或階層系對例示性方法之說明。基於設計偏好,應理解,可重新配置程序中之步驟之特定次序或階層。此外,一些步驟可經組合或省略。所附方法申請專利範圍表示以樣本次序呈現各種步驟之要素,且並不意欲限於所呈現之特定次序或階層。
提供先前描述以使得熟習此項技術者能夠實踐本文中所描述之各種態樣。熟習此項技術者將容易明瞭對此等態樣之各種修改,且本文中所定義之一般原理可適用於其他態樣。因此,申請專利範圍並不意欲限於本文中所展示之態樣,而是欲賦予其與申請專利範圍之語言一致之全部範疇,其中以單數形式對一元件之提及並不意欲意味著「一個且僅一個」 (除非明確地如此陳述),而是「一或多個」。除非另有明確地陳述,否則術語「一些」系指一或多個。為熟習此項技術者已知或稍後將知曉之貫穿本發明所描述之各種態樣中之元件的所有結構及功能等效物以引用的方式確切地併入本文中且意欲由申請專利範圍囊括。此外,本文中所揭示之任何內容皆不意欲奉獻於公眾而不論此揭示內容是否在申請專利範圍中予以明確地敍述。任何請求項元件不應被認作構件加功能,除非該元件系使用片語「用於...的構件」來予以明確地敍述。
100‧‧‧裝置
102‧‧‧處理電路
104‧‧‧組件/裝置
106‧‧‧組件/裝置
108‧‧‧組件/裝置
110‧‧‧數據機
112‧‧‧處理器
114‧‧‧機載記憶體
116‧‧‧匯流排介面電路
118a‧‧‧匯流排
118b‧‧‧匯流排
120‧‧‧匯流排
122‧‧‧處理器可讀儲存裝置
122‧‧‧處理器可讀儲存裝置
124‧‧‧天線
126‧‧‧顯示器
128‧‧‧開關/按鈕
130‧‧‧開關/按鈕
132‧‧‧整合式或外部鍵盤
200‧‧‧器件
202‧‧‧器件
204‧‧‧介面控制器
206‧‧‧組態暫存器
208‧‧‧時脈生成電路
210‧‧‧收發器
212‧‧‧控制邏輯
214a‧‧‧線驅動器/接收器
214b‧‧‧ 線驅動器/接收器
216‧‧‧資料線
218‧‧‧時脈線
220‧‧‧串列匯流排
2220‧‧‧裝置
2221‧‧‧裝置
2222‧‧‧裝置
222N‧‧‧裝置
224‧‧‧儲存器
226‧‧‧定時時脈
228‧‧‧時脈信號
232‧‧‧控制功能、模組或電路
234‧‧‧組態暫存器
236‧‧‧儲存裝置
238‧‧‧定時時脈
240‧‧‧收發器
242‧‧‧控制邏輯
244a‧‧‧線驅動器/接收器
244b‧‧‧線驅動器/接收器
246‧‧‧時脈生成及/或恢復電路
248‧‧‧時脈信號
300‧‧‧方塊圖
302‧‧‧器件
304‧‧‧數據機
306‧‧‧基頻處理器
308‧‧‧射頻前端(RFFE)介面
310‧‧‧通信鏈路
312‧‧‧射頻積體電路(RFIC)
314‧‧‧射頻前端介面
316‧‧‧射頻前端介面
318‧‧‧RFFE前端器件
320‧‧‧RFFE前端器件
322‧‧‧RFFE前端器件
324‧‧‧RFFE前端器件
326‧‧‧RFFE前端器件
328‧‧‧RFFE前端器件
330‧‧‧RFFE匯流排
332‧‧‧RFFE匯流排
334‧‧‧RFFE匯流排
336‧‧‧通信鏈路
400‧‧‧系統
402‧‧‧應用處理器
4041‧‧‧數據機
4042‧‧‧數據機
4043‧‧‧數據機
404N‧‧‧數據機
406‧‧‧第一電源管理積體電路(PMIC)
408‧‧‧第二PMIC
410‧‧‧資料通信鏈路
412‧‧‧資料通信鏈路
418‧‧‧系統電源管理介面(SPMI)主器件
420‧‧‧SPMI從器件
422‧‧‧資料通信鏈路
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‧‧‧匯流排停放
752‧‧‧資料流
754‧‧‧資料流
756‧‧‧資料流
758‧‧‧資料流
800‧‧‧異動/資料報
806‧‧‧序列開始條件(SSC)
808‧‧‧器件位址
810‧‧‧命令欄位
812‧‧‧位址資訊
814‧‧‧同位位元
8161‧‧‧資料欄位
8162‧‧‧資料欄位
816N‧‧‧資料欄位
8181‧‧‧同位
8182‧‧‧同位
818N‧‧‧同位
8201‧‧‧資料欄位
8202‧‧‧資料欄位
820N‧‧‧資料欄位
8221‧‧‧同位
8222‧‧‧同位
822N‧‧‧同位
824‧‧‧匯流排停放序列(BP)
840‧‧‧異動/資料報
844‧‧‧序列開始條件(SSC)
846‧‧‧器件位址
848‧‧‧命令欄位
850‧‧‧位址資訊
852‧‧‧同位位元
8541‧‧‧資料欄位
854N‧‧‧資料欄位
8561‧‧‧同位
856N‧‧‧同位
858‧‧‧匯流排停放序列(BP)
860‧‧‧發信
862‧‧‧發信
864‧‧‧發信
900‧‧‧第一資料報
906‧‧‧SSC
908‧‧‧器件位址
910‧‧‧命令欄位
912‧‧‧標頭
914‧‧‧位址資訊
916‧‧‧位址欄位
9181‧‧‧資料欄位
918N‧‧‧資料欄位
9201‧‧‧反向資料欄位
920N‧‧‧反向資料欄位
940‧‧‧第二資料報
946‧‧‧SSC
948‧‧‧從器件位址
950‧‧‧命令欄位
952‧‧‧標頭
954‧‧‧位址資訊
9561‧‧‧前向資料欄位
956N‧‧‧前向資料欄位
9581‧‧‧反向資料欄位
958N‧‧‧反向資料欄位
1000‧‧‧資料報
1006‧‧‧SSC
1008‧‧‧器件位址
1010‧‧‧命令欄位
1014‧‧‧位元資訊
1016‧‧‧位元時槽
10181‧‧‧資料欄位
1018N‧‧‧資料欄位
10201‧‧‧資料欄位
1020N‧‧‧資料欄位
1042‧‧‧資料線
1044‧‧‧時脈線
1046‧‧‧下降邊緣
1048‧‧‧有效驅動狀態
1050‧‧‧間隔
1052‧‧‧預期低持續時間
1054‧‧‧預期轉變
1100‧‧‧裝置
1102‧‧‧處理電路
1104‧‧‧處理器
1106‧‧‧儲存器
1108‧‧‧匯流排介面
1110‧‧‧匯流排
1112a‧‧‧收發器
1112b‧‧‧收發器
1114‧‧‧階段映像
1116‧‧‧軟體模組
1118‧‧‧使用者介面
1120‧‧‧分時程式
1122‧‧‧內部器件/邏輯電路
1200‧‧‧流程圖
1202‧‧‧區塊
1204‧‧‧區塊
1300‧‧‧裝置
1302‧‧‧處理電路
1304‧‧‧模組/電路
1306‧‧‧模組/電路
1308‧‧‧模組/電路
1312‧‧‧多點匯流排
1314‧‧‧實體層電路及/或模組
1316‧‧‧處理器
1318‧‧‧處理器可讀儲存媒體
1320‧‧‧匯流排
1322‧‧‧天線
圖1說明根據複數個可用標準中之一者在選擇性操作之IC器件之間採用資料鏈路之裝置。
圖2說明在IC器件之間採用資料鏈路之裝置的系統架構。
圖3說明採用RFFE匯流排來耦接各種射頻前端器件之器件。
圖4說明根據本文中揭示之某些態樣的採用SPMI匯流排來耦接各種器件之器件。
圖5說明包括耦接至多個周邊器件之應用處理器的裝置。
圖6說明根據本文中揭示之某些態樣使用多點串列匯流排來耦接各種器件之裝置。
圖7說明說明將主器件耦接至多個從器件之串列匯流排之操作的系統。
圖8說明根據本文中之某些態樣使用資料報以促進經由串列匯流排之交錯雙向傳輸。
圖9包括說明根據本文中所揭示之某些態樣可啟用或起始交錯傳輸之第一及第二實例的資料報。
圖10說明根據本文中所揭示之某些態樣可啟用或起始交錯傳輸之第三實例。
圖11說明使用可根據本文中所揭示之某些態樣調適之處理電路之裝置之一個實例。
圖12為說明本文中所揭示之某些態樣之流程圖。
圖13說明根據本文中揭示之某些態樣調適之裝置的硬體實施的第一實例。

Claims (30)

  1. 一種在耦接至一串列匯流排之一第一器件處執行的方法,其包含: 在該第一器件與一第二器件之間起始一異動以經由該串列匯流排在一第一方向上與該第二器件交換一資料報;及 在已完全傳輸該資料報之前,經由該串列匯流排在一第二方向上與該第二器件交換一或多個位元組之資料, 其中該第一器件及該第二器件作為傳輸器在該串列匯流排上交替,使得資料傳輸之方向在該串列匯流排上交錯。
  2. 如請求項1之方法,其中根據一射頻前端(RFFE)協定或一系統電源管理介面(SPMI)協定來操作該串列匯流排。
  3. 如請求項1之方法,其中在該第一器件與該第二器件之間起始該異動包含: 在該串列匯流排上傳輸來自該第一器件之一器件位址,該器件位址識別該第二器件;及 經由該串列匯流排將一命令自該第一器件傳輸之該第二器件以識別欲經由串列匯流排在第一方向上執行之一交換類型。
  4. 如請求項3之方法,其中在該第一器件與該第二器件之間起始該異動包含: 在傳輸該器件位址之前,在該串列匯流排上傳輸一序列開始條件(SSC)。
  5. 如請求項3之方法,其中在該第一器件與該第二器件之間起始該異動包含: 在傳輸該器件位址之前作為一從器件參與匯流排仲裁以獲得對該串列匯流排之存取。
  6. 如請求項3之方法,其中在該第二器件接收該器件位址之後,主動繫結該第一器件及該第二器件。
  7. 如請求項3之方法,其中在該串列匯流排之一時脈線上傳輸一時脈信號,且該第一器件及該第二器件中之每一者經調適以: 組態以第一線驅動器以在該串列匯流排之一資料線上操作為一傳輸器達足以傳輸一個位元組之資料之該時脈信號之一第一數目個週期;及 在該時脈信號之該第一數目個週期已完成之後,重新組態該第一線驅動器以在該串列匯流排上操作為一接收器。
  8. 如請求項7之方法,其中資料傳輸之該方向在該串列匯流排上交錯,直至已交換該一或多個資料位元組中之每一者為止。
  9. 如請求項7之方法,其中該命令包括自複數個可用命令碼選擇一命令碼,且其中該第一器件及該第二器件經組態以回應於該複數個可用命令碼中之一或多者而交錯資料傳輸之該方向。
  10. 如請求項7之方法,其中在該第一器件與該第二器件之間起始該異動包含: 在傳輸該命令之後在該串列匯流排上傳輸來自該第一器件之一暫存器位址,其中該第一器件及該第二器件經組態以當該暫存器位址在經預先組態用於交錯傳輸之一位址範圍內時交錯資料傳輸之該方向。
  11. 如請求項7之方法,其進一步包含: 當在該串列匯流排之該資料線上在該第一方向上傳輸一同位位元時,致使該時脈信號中之發信狀態之一早期轉變,其中該早期轉變致使暫停資料在該第一方向上之傳輸;及 在已在該第一方向上傳輸該同位位元之後,在該第二方向上傳輸一第一資料位元組。
  12. 如請求項11之方法,其中發信狀態之該早期轉變為自一低電壓狀態至一高電壓狀態之一轉變。
  13. 如請求項11之方法,其中發信狀態之該早期轉變為自高電壓狀態至一低電壓狀態之一轉變。
  14. 如請求項7之方法,其進一步包含: 判定當在該串列匯流排之該資料線上在該第一方向上傳輸一同位位元時已發生該時脈信號中之發信狀態之一早期轉變; 回應於該早期轉變暫停資料在該第一方向上之傳輸;及 在完成在該第一方向上之該同位位元之傳輸之後接收在該第二方向上傳輸之一第二資料位元組。
  15. 一種裝置,其包含經調適用於經由一串列匯流排通信之一第一器件,其包含: 一介面電路,其經調適以將該裝置耦接至該串列匯流排;及 一處理器,其經組態以: 在該第一器件與一第二器件之間起始一異動以經由該串列匯流排在一第一方向上與該第二器件交換一資料報;及 在已完全傳輸該資料報之前,經由該串列匯流排在一第二方向上與該第二器件交換一或多個位元組之資料, 其中該第一器件及該第二器件作為傳輸器在該串列匯流排上交替,使得資料傳輸之方向在該串列匯流排上交錯。
  16. 如請求項15之裝置,其中根據一射頻前端(RFFE)協定或一系統電源管理介面(SPMI)協定來操作該串列匯流排。
  17. 如請求項15之裝置,其中該處理器經進一步組態以: 在該串列匯流排上傳輸來自該第一器件之一器件位址,該器件位址識別該第二器件;及 經由該串列匯流排將一命令自該第一器件傳輸之該第二器件以識別欲經由串列匯流排在第一方向上執行之一交換類型。
  18. 如請求項17之裝置,其中該處理器經進一步組態以: 在傳輸該器件位址之前,在該串列匯流排上傳輸一序列開始條件(SSC)。
  19. 如請求項17之裝置,其中該處理器經進一步組態以: 在傳輸該器件位址之前作為一從器件參與匯流排仲裁以獲得對該串列匯流排之存取。
  20. 如請求項17之裝置,其中在該第二器件接收該器件位址之後,主動繫結該第一器件及該第二器件。
  21. 如請求項17之裝置,其中在該串列匯流排之一時脈線上傳輸一時脈信號,且該第一器件及該第二器件中之每一者經調適以: 組態以第一線驅動器以在該串列匯流排之一資料線上操作為一傳輸器達足以傳輸一個位元組之資料之該時脈信號之一第一數目個週期;及 在該時脈信號之該第一數目個週期已完成之後,重新組態該第一線驅動器以在該串列匯流排上操作為一接收器。
  22. 如請求項21之裝置,其中資料傳輸之該方向在該串列匯流排上交錯,直至已交換該一或多個資料位元組中之每一者為止。
  23. 如請求項21之裝置,其中該命令包括自複數個可用命令碼選擇一命令碼,且其中該第一器件及該第二器件經組態以回應於該複數個可用命令碼中之一或多者而交錯資料傳輸之該方向。
  24. 如請求項21之裝置,其中該處理器經進一步組態以: 在傳輸該命令之後在該串列匯流排上傳輸來自該第一器件之一暫存器位址,其中該第一器件及該第二器件經組態以當該暫存器位址在經預先組態用於交錯傳輸之一位址範圍內時交錯資料傳輸之該方向。
  25. 如請求項21之裝置,其中該處理器經進一步組態以: 當在該串列匯流排之該資料線上在該第一方向上傳輸一同位位元時,致使該時脈信號中之發信狀態之一早期轉變,其中該早期轉變致使暫停資料在該第一方向上之傳輸;及 在已在該第一方向上傳輸該同位位元之後,在該第二方向上傳輸一第一資料位元組。
  26. 如請求項25之裝置,其中發信狀態之該早期轉變為自一低電壓狀態至一高電壓狀態之一轉變。
  27. 如請求項25之裝置,其中發信狀態之該早期轉變為自高電壓狀態至一低電壓狀態之一轉變。
  28. 如請求項21之裝置,其中該處理器經進一步組態以: 判定當在該串列匯流排之該資料線上在該第一方向上傳輸一同位位元時已發生該時脈信號中之發信狀態之一早期轉變; 回應於該早期轉變暫停資料在該第一方向上之傳輸;及 在完成在該第一方向上之該同位位元之傳輸之後接收在該第二方向上傳輸之一第二資料位元組。
  29. 一種處理器可讀儲存媒體,其具有一或多個指令,該一或多個指令在由一處理電路之至少一個處理器或狀態機執行時,致使該處理電路: 在一第一器件與一第二器件之間起始一異動以經由一串列匯流排在一第一方向上交換一資料報;及 在已完全傳輸該資料報之前,經由該串列匯流排在一第二方向上交換一或多個位元組之資料, 其中該第一器件及該第二器件作為傳輸器在該串列匯流排上交替,使得資料傳輸之方向在該串列匯流排上交錯,且 其中根據一射頻前端(RFFE)協定或一系統電源管理介面(SPMI)協定來操作該串列匯流排。
  30. 一種裝置,其包含: 用於在一第一器件與一第二器件之間起始一異動以經由一串列匯流排在一第一方向上交換一資料報的構件;及 用於在已完全傳輸該資料報之前經由該串列匯流排在一第二方向上交換一或多個位元組之資料的構件, 其中該第一器件及該第二器件作為傳輸器在該串列匯流排上交替,使得資料傳輸之方向在該串列匯流排上交錯。
TW107136799A 2017-12-05 2018-10-18 在多點半雙工匯流排上之交錯傳輸 TW201926062A (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201762594955P 2017-12-05 2017-12-05
US62/594,955 2017-12-05
US16/162,583 US10579549B2 (en) 2017-12-05 2018-10-17 Staggered transmissions on a multi-drop half-duplex bus
US16/162,583 2018-10-17

Publications (1)

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

Family

ID=66659217

Family Applications (1)

Application Number Title Priority Date Filing Date
TW107136799A TW201926062A (zh) 2017-12-05 2018-10-18 在多點半雙工匯流排上之交錯傳輸

Country Status (3)

Country Link
US (1) US10579549B2 (zh)
TW (1) TW201926062A (zh)
WO (1) WO2019112697A1 (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10079650B2 (en) * 2015-12-04 2018-09-18 Infineon Technologies Ag Robust high speed sensor interface for remote sensors
US10713199B2 (en) * 2017-06-27 2020-07-14 Qualcomm Incorporated High bandwidth soundwire master with multiple primary data lanes
US10752209B2 (en) * 2018-02-12 2020-08-25 FELL Technology AS System and method for wirelessly linking electronic components and/or sensors using sub-1 GHz frequencies (700-1000 MHz) for long range, robustness in wet environment and highly resistant to wireless noise
JP7391116B2 (ja) * 2019-06-28 2023-12-04 アナログ・ディヴァイシス・インターナショナル・アンリミテッド・カンパニー 低複雑度イーサネットノード(len)1ポート
CN115396258B (zh) * 2022-09-05 2024-03-26 山东中康国创先进印染技术研究院有限公司 一种自适应轮询软件处理方法、装置及存储介质

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19843810A1 (de) 1998-09-24 2000-03-30 Philips Corp Intellectual Pty Datenbus
US9569390B2 (en) * 2012-04-20 2017-02-14 Combined Conditional Access Development And Support, Llc Protocol for communication
US9602464B2 (en) * 2014-12-12 2017-03-21 Intel Corporation Apparatus, system and method for allocating identifiers to components of a control system
DE102016103928A1 (de) * 2016-03-04 2017-09-07 Eaton Electrical Ip Gmbh & Co. Kg Busanordnung und Verfahren zum Betreiben einer Busanordnung
US10445270B2 (en) * 2017-06-09 2019-10-15 Qualcomm Incorporated Configuring optimal bus turnaround cycles for master-driven serial buses

Also Published As

Publication number Publication date
US10579549B2 (en) 2020-03-03
WO2019112697A1 (en) 2019-06-13
US20190171590A1 (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
TW201926062A (zh) 在多點半雙工匯流排上之交錯傳輸
US10838898B2 (en) Bit-interleaved bi-directional transmissions on a multi-drop bus for time-critical data exchange
US20170168966A1 (en) Optimal latency packetizer finite state machine for messaging and input/output transfer interfaces
US20180357199A1 (en) Slave-to-slave communication in i3c bus topology
CN112639756B (zh) 混合模式射频前端接口
US10515044B2 (en) Communicating heterogeneous virtual general-purpose input/output messages over an I3C bus
CN111033486A (zh) 多点总线中的设备、事件和消息参数关联
US20180329837A1 (en) Input/output direction decoding in mixed vgpio state exchange
TW202014904A (zh) I3c上的低等待時間虛擬通用輸入/輸出
CN116075815A (zh) 跨接口的批操作
US20200201804A1 (en) I3c device timing adjustment to accelerate in-band interrupts
US10733121B2 (en) Latency optimized I3C virtual GPIO with configurable operating mode and device skip
US20200083875A1 (en) Master read from slave over pulse-width modulated half-duplex 1-wire bus
US20190171588A1 (en) Multi-point virtual general-purpose input/output (mp-vgi) for low latency event messaging
WO2019112700A1 (en) Clock line driving for single-cycle data over clock signaling and pre-emption request in a multi-drop bus
US10474622B1 (en) Method and apparatus for latency management of data communication over serial bus
US11520729B2 (en) I2C bus architecture using shared clock and dedicated data lines
WO2019112698A1 (en) Protocol-framed clock line driving for device communication over master-originated clock line
TW202125270A (zh) 基於序列執行來控制射頻前端觸發的應用時間
TW202213116A (zh) 符合即時控制的射頻共存管理匯流排