TW201702891A - 具有多重模式調變之增強虛擬gpio - Google Patents

具有多重模式調變之增強虛擬gpio Download PDF

Info

Publication number
TW201702891A
TW201702891A TW105111707A TW105111707A TW201702891A TW 201702891 A TW201702891 A TW 201702891A TW 105111707 A TW105111707 A TW 105111707A TW 105111707 A TW105111707 A TW 105111707A TW 201702891 A TW201702891 A TW 201702891A
Authority
TW
Taiwan
Prior art keywords
gpio
signal
communication
pulse width
signals
Prior art date
Application number
TW105111707A
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 TW201702891A publication Critical patent/TW201702891A/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/1668Details of memory controller
    • G06F13/1678Details of memory controller using bus width
    • 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/382Information transfer, e.g. on bus using universal interface adapter
    • G06F13/385Information transfer, e.g. on bus using universal interface adapter for adaptation of a particular data processing system to different peripheral devices
    • 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
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/13Linear codes
    • H03M13/19Single error correction without using particular properties of the cyclic codes, e.g. Hamming codes, extended or generalised Hamming codes
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Dc Digital Transmission (AREA)
  • Information Transfer Systems (AREA)
  • Communication Control (AREA)
  • Magnetic Resonance Imaging Apparatus (AREA)
  • Crystals, And After-Treatments Of Crystals (AREA)

Abstract

本發明提供一種組合脈寬調變與相位調變以傳輸如虛擬GPIO信號之複數個GPIO信號的多重調變方案。

Description

具有多重模式調變之增強虛擬GPIO [相關申請案的交互參照]
本申請案主張2015年4月14日申請之美國臨時專利申請案第62/147,238號之權利,且進一步主張2015年9月25日申請之美國臨時專利申請案第62/233,278號之權利。
本申請案係關於傳訊,且更特定言之,係關於組合脈寬調變與相位調變的多重調變數位傳訊方案。
通用輸入/輸出(GPIO)使得積體電路設計者能夠提供可經自訂用於特定應用的通用接腳。舉例而言,GPIO接腳可程式化以根據使用者之需要而為輸出或輸入接腳。GPIO主機或周邊裝置將通常控制可基於介面要求而變化的接腳群組。歸因於GPIO接腳之可程式化性,其常常包括於微處理器及微控制器應用中。舉例而言,行動裝置中之應用處理器可使用數個GPIO接腳以進行交握傳訊,諸如與數據機處理器之處理器間通信(IPC)。
相對於此類交握傳訊,若邊帶信號必須由處理器傳輸及接收,則邊帶信號被視為「對稱」。若存在需要被交換的n個對稱邊帶信號,則每一處理器需要n×2個GPIO(一個GPIO用以傳輸給定信號,且一個GPIO用以接收該信號)。舉例而言,數據機處理器與應用處理器之間 的對稱IPC介面可包含五個信號,此意味著對於所得IPC傳訊必需10個GPIO接腳。對於如此多GPIO接腳用於IPC通信的需要增大了製造成本。此外,為IPC投入過多GPIO會限制其他系統級周邊介面之GPIO可用性。無法藉由將IPC通信移至處理器之間的主資料匯流排上而解決問題,此係因為接著會違反某些隅角條件。
此外,已開發數個數位傳訊協定以支援諸如行動裝置之系統中的積體電路之間的通信。此等傳訊協定在本文中視為「數位」,此係因為傳輸電路將其傳輸插腳驅動高至供電電壓層級或使接腳接地以傳輸位元。此等數位傳訊協定之實例包括通用I/O(GPIO)及通用異步收發機(UART)。舉例而言,UART傳輸器經由傳輸插腳驅動在UART接收器處之接收插腳上接收之數位信號。UART接收器使用過取樣時脈對所接收信號進行取樣,以判定所接收信號為二進位高還是二進位低。
為了在此等數位傳訊協定中減小功率消耗,已利用多種無損資料壓縮技術,諸如執行長度編碼(RLE)。但執行長度編碼並不保證固定且可預測之輸送量增加,此係因為壓縮度取決於資料之隨機性。若資料傳輸係完全隨機的,則執行長度編碼並不提供任何益處。其他更多個複雜方案提供經改良輸送量但不與數位傳訊相容。舉例而言,使用正交相移鍵控(QPSK)方案具有習知數位傳訊之兩倍的輸送量,但需要使用兩個獨立正弦副載波。對比而言,數位信號協定簡單得多,此係因為傳輸器僅需要在符號傳輸期間將其傳輸插腳驅動高至供電電壓及/或接地。類似地,數位傳訊接收器僅需要判定在過取樣時脈之每一取樣處正接收電壓高還是電壓低信號。
相應地,在此項技術中存在對於可適應多個輸入/輸出信號而無需過多數目個接腳且使用具有增大之輸送量及減小之功率消耗的改良之數位傳訊協定的GPIO架構的需要。
本發明提供一種用於在各自具有一處理器的兩個積體電路之間通信的混合型虛擬GPIO架構。此架構視為「混合型」,此係因為其適應GPIO信號及通信報信號兩者。如先前所論述,習知GPIO系統中之GPIO信號係專用於特定接腳。在對應GPIO接腳上接收到GPIO信號識別至接收處理器的信號。但如本文中定義之通信報信號為在(諸如串列周邊介面(SPI)或處理器間通信(IPC)介面中之)專用接收接腳上接收的信號。可因此在相同之專用接收接腳上接收混合型通信報信號。為了區分開各個通信報信號,習知的是,通信報信號包括含有位址的位址標頭。接收積體電路基於該位址而將所接收通信報信號投送至適當的暫存器。舉例而言,一種類型之通信報信號可係關於識別所安裝卡,諸如一無線卡或一GPS卡。此類通信報信號將接著具有映射至適當暫存器的位址,以使得可相應地暫存對應訊息內容。藉由解譯該暫存器之所得內容,接收處理器可接著解譯所安裝卡之身分識別。將以類似方式將其他類型之通信報信號傳送至接收積體電路中之適當暫存器。
每一積體電路亦包括一虛擬GPIO介面用於使用GPIO信號之一傳輸組而與一或多個其餘積體電路通信。該虛擬GPIO介面經組態以按習知方式經由GPIO接腳將該傳輸組之一部分傳輸至對應積體電路中之遠端處理器。但並不在個別GPIO接腳上傳輸傳輸組之其餘部分。實情為,GPIO信號之該傳輸組之其餘部分由一混合型虛擬GPIO有限狀態機(FSM)串列化成至少一個訊框,且經由一專用傳輸接腳傳輸。該混合型虛擬GPIO有限狀態機亦經組態以將該等通信報信號串行化成至少一個訊框或用於通信報信號之專用訊框。
每一積體電路亦包括與其餘積體電路中之超取樣時脈異步的超取樣時脈。該積體電路之混合型虛擬FSM經組態以回應於其超取樣時 脈之週期而傳輸及接收虛擬GPIO信號之訊框及/或通信報信號之訊框。該傳輸混合型虛擬FSM傳輸待經由其傳輸接腳傳輸的一訊框中之每一位元,該傳輸係藉由使用超取樣時脈對位元進行超取樣及經由該傳輸接腳將所得樣本傳輸至用於一遠端積體電路中之混合型虛擬FSM的接收接腳。接收混合型虛擬FSM樣本各自使用其超取樣時脈接收位元,且基於所得樣本對該等位元進行解碼,如在UART技術中已知。所得架構係非常有利的,此係因為對於僅使用單一傳輸接腳及單一接收接腳來同步虛擬GPIO信號與通信報信號之所得傳輸,無外部時脈接腳係必需的。
為了增強虛擬GPIO傳輸,每一混合型虛擬GPIO(VGPIO)介面經進一步組態以使用相位編碼脈寬調變符號傳輸及接收訊框位元。舉例而言,假設該等符號具有兩個可能脈寬。在一習知脈寬調變方案中,此等兩個脈寬將表示一個位元。但此外,該等符號亦具有至少兩個可能相位。在一兩相實施例中,該等脈衝經對準以使其下降邊緣與該位元週期之終點對準,或使其上升邊緣與該位元週期之起點對準。該等兩相對準因此表示另一位元。考慮到脈寬調變及相位調變兩者之此組合,本文中將所得符號指示為「多重調變」符號或字元。此等字元相比於二進位相位或脈寬調變方案係非常有利的,歸因於其增大之輸送量及減小之功率消耗。此外獲得此等優勢而無需脫離傳統數位傳訊技術。因此避免涉及諸如QPSK中之類比正弦波的併發情況。
存在所揭示混合型虛擬GPIO架構的兩個主要實施例。在一第一實施例中,經由專用傳輸接腳傳輸的每一訊框包括識別該訊框包含虛擬GPIO信號之一傳輸組還是通信報信號之一傳輸組的一標頭。該標頭亦可指示該訊框將識別待設定於接收器側上的虛擬GPIO訊框長度,或指示對所要虛擬GPIO訊框長度之一應答。因此訊框大小可變,且由所得串流長度判定訊框判定。在一第二實施例中,針對包括 虛擬GPIO信號及通信報信號兩者的一訊框延伸標頭,使得該擴展標頭識別該等虛擬GPIO信號及該等通信報信號之位元位置。混合型GPIO介面可接著將包含來自遠端處理器之第二組GPIO信號及通信報信號的第二組信號提供至接收處理器。
混合型虛擬GPIO FSM在各自由一起始位元及一終點位元分界的訊框中傳輸虛擬GPIO信號及通信報信號之傳輸組。接收裝置中之混合型虛擬GPIO FSM因此將所傳輸訊框作為其虛擬GPIO信號及通信報信號接收組接收。藉由監視FSM是否接收包括起始位元及終點位元兩者的完整訊框,一個處理器之FSM可偵測遠端處理器是否已發生故障。
經由以下詳細描述可較佳地理解此等及額外優勢。
100‧‧‧脈衝
105‧‧‧脈衝
110‧‧‧脈衝
115‧‧‧脈衝
120‧‧‧移位時脈
125‧‧‧脈衝
200‧‧‧脈寬經調變序列
205‧‧‧相位經調變序列
210‧‧‧多重調變序列
300‧‧‧傳輸器
305‧‧‧位元解多工器
310‧‧‧調變器
315‧‧‧輸出接腳
320‧‧‧超取樣時脈信號
325‧‧‧輸出驅動器
326‧‧‧反相器
328‧‧‧查找表
400‧‧‧超取樣時脈信號
500‧‧‧數據機處理器積體電路
501‧‧‧處理器
502‧‧‧處理器
503‧‧‧通用輸入/輸出(GPIO)介面
505‧‧‧應用處理器積體電路
510a‧‧‧傳輸線
510b‧‧‧線
511‧‧‧接收接腳
512‧‧‧傳輸接腳
515‧‧‧混合型虛擬有限狀態機(FSM)
525‧‧‧通用輸入/輸出(GPIO)接腳/焊墊
530‧‧‧習知通用輸入/輸出(GPIO)信號
535‧‧‧虛擬通用輸入/輸出(GPIO)信號
536‧‧‧通信報暫存器
537‧‧‧位址
538‧‧‧通信報信號
540‧‧‧數據機功率管理器(MPM)
600‧‧‧積體電路
605‧‧‧積體電路
620‧‧‧積體電路
625‧‧‧積體電路
630‧‧‧積體電路
700‧‧‧訊框
705‧‧‧標頭
706‧‧‧起始位元
710‧‧‧終點位元
800‧‧‧多工模組
801‧‧‧邏輯電路
807‧‧‧鎖存器/組態暫存器
810‧‧‧互斥或閘
815‧‧‧平行輸入-串列輸出(SIPO)移位暫存器
820‧‧‧啟用信號
825‧‧‧平行輸入-串列輸出(SIPO)移位暫存器
851‧‧‧鎖存器
855‧‧‧調變器
861‧‧‧超取樣時脈源
870‧‧‧多重模式解調變器
875‧‧‧超取樣時脈
880‧‧‧超取樣時脈信號
881‧‧‧移位信號
882‧‧‧解調變資料信號
900‧‧‧訊框
905‧‧‧功能位元欄位
910‧‧‧資料有效負載
915‧‧‧符號
1000‧‧‧訊框
1100‧‧‧訊框
1300‧‧‧訊框
1400‧‧‧動作
1405‧‧‧動作
1410‧‧‧動作
1415‧‧‧動作
1420‧‧‧動作
1425‧‧‧動作
1430‧‧‧動作
1435‧‧‧動作
1440‧‧‧動作
1445‧‧‧動作
1500‧‧‧系統
1505‧‧‧系統單晶片(SoC)
1510‧‧‧周邊裝置
1515‧‧‧系統匯流排
1520‧‧‧動態隨機存取記憶體(DRAM)
1525‧‧‧顯示控制器
1530‧‧‧視訊處理器
1535‧‧‧顯示器
D0‧‧‧位元
D1‧‧‧位元
D2‧‧‧位元
D3‧‧‧位元
D4‧‧‧位元
D5‧‧‧位元
D6‧‧‧位元
D7‧‧‧位元
D8‧‧‧位元
D9‧‧‧位元
D10‧‧‧位元
D11‧‧‧位元
D12‧‧‧位元
D13‧‧‧位元
D14‧‧‧位元
D15‧‧‧位元
D16‧‧‧位元
fn_0‧‧‧功能位元
fn_1‧‧‧功能位元
圖1說明四個實例多重調變兩位元字元。
圖2說明圖1的多重調變字元中之一些與二進位相位經調變輸入位元及脈寬經調變輸入位元之對應集合之間的關係。
圖3為根據本發明的一實施例之傳輸器的方塊圖。
圖4說明用於解調變自圖3的傳輸器傳輸之多重調變字元的超取樣時脈樣本。
圖5為實例混合型虛擬GPIO架構的方塊圖。
圖6A為處理器與單一遠端處理器通信的混合型虛擬GPIO架構之方塊圖。
圖6B為處理器與兩個遠端處理器通信的混合型虛擬GPIO架構之方塊圖。
圖7說明具有兩位元功能標頭的實例混合型訊框。
圖8為圖5的混合型虛擬GPIO架構中之混合型虛擬GPIO有限狀態機的電路圖。
圖9說明由圖8之FSM傳輸的通用訊框。
圖10說明圖9之訊框的第一輸入/輸出(I/O)模式。
圖11說明說明圖9之訊框的第二I/O模式及第三I/O模式。
圖12說明圖11之訊框的碼字表格。
圖13說明圖9之訊框的第四I/O模式。
圖14A為根據本發明之一態樣之第一操作方法的流程圖。
圖14B為根據本發明之一態樣之第二操作方法的流程圖。
圖15說明包括圖5之混合型虛擬架構的實例系統。
藉由參考如下詳細描述最好地理解本發明之實施例及其優勢。 應瞭解,相同參考編號係用以識別諸圖中之一或多者中說明的相同元件。
提供了數位傳訊協定,該數位傳訊協定經由(例如)用於UART傳訊協定的傳統數位傳訊使輸送量加倍。在彼方面,UART位元通常由處於供電電壓位準或接地的二進位電壓信號表示。就簡單性而言此係非常有利的,此係因為習知反相器可用作輸出驅動器。本文所揭示之數位傳訊協定保留此簡單性,此係因為每一經傳輸符號為二進位組合(符號之第一部分經脈動而高至供電電壓且第二部分經放電)。為了經由傳統數位傳訊技術增加輸送量,提供了傳輸經相位編碼脈寬調變符號的傳輸器。以下實例實施例係針對僅使用兩個脈寬及兩個相位的系統,但應瞭解,可如本文所揭示組合任意數目個脈寬及相位。
圖1中展示兩個實例脈寬。第一脈衝100具有一位元週期之25%的脈寬,而其餘脈衝105具有該位元週期之75%的脈寬。將何二進位指派給出至脈衝100之脈寬係任意的,但出於說明的目的為脈衝100之脈寬指派二進位0值。類似地,脈衝105之脈寬表示二進位1。應注意,脈衝100及105之下降邊緣與位元週期之終點對準。在邏輯高系統中, 脈衝100及105兩者因此以邏輯零(接地)起始,且以邏輯高(供電電壓)結束。在邏輯低系統中,指示脈衝100及105兩者以邏輯高值(接地)起始,且以邏輯低值(供電電壓)結束係等效的。以下論述係針對邏輯高系統而不丟失通用性。因為脈衝100及105兩者經調相位以便同時以位元週期邊界結束,所以脈衝100及105可視為表示第一相位。此第一相位調變可視為表示二進位0。因此,脈衝100表示兩位元符號00-一個二進位0來自後邊緣對準且另一二進位0來自25%脈寬。類似地,脈衝125表示具有源自75%脈寬之二進位1的兩位元符號01。
互補第二相位(上升邊緣與位元週期之起點對準)由一對脈衝110及脈衝115表示。脈衝110類似於脈衝100,類似之處在於脈衝110具有等於位元週期之25%的脈寬。但不同於脈衝100,脈衝110移位180度使得其上升邊緣與位元週期起點對準。類似地,脈衝115相對於脈衝105移位180度。
因此存在由脈衝110及115相比於脈衝100及105表示之二進位相位調變。類似地,每一對脈衝100/105及110/115表示二進位脈寬調變。脈衝100、105、110及115之組合因此表示二進位相位調變及二進位脈寬調變兩者,使得每一脈衝可視為包含兩位元符號。不同於諸如QPSK之替代性編碼技術,脈衝100、105、110及115之調變係完全數位的:傳輸器僅需要傳輸代表位元週期之某個持續時間的二進位高信號及代表位元週期之其餘持續時間的二進位低信號。因為每一脈衝表示一兩位元字元,所以存在可表示[00]、[01]、[10]及[11]的四個可能二進位兩位元字元。將何兩位元字元指派至給定脈衝係任意的。將存在四個此等選擇--圖1表示其中脈衝100表示字元[00],脈衝105表示字元[01],脈衝110表示字元[10],且脈衝115表示字元[11]的一個選項。應瞭解,替代性脈寬,諸如70/30或80/20可用於二進位脈寬調變方案。此外,在替代實施例中可僅自兩個增大脈寬及相位之數目。
參考圖2可較佳地理解來自所得「多重模式」調變之組合二進位相位調變與二進位脈寬調變的輸送量增加及功率降低。存在使用脈寬調變處理以產生脈寬經調變序列200的八個二進位位元D0至D7。亦可使用相位調變處理此等相同位元以產生相位經調變序列205。相位調變之載波為使其下降邊緣與位元週期之終點對準以表示二進位0的方形脈衝(位元週期之50%的脈寬)。本文中此類對準將稱作「未翻轉」,此係因為其表示用於該方形脈衝之0度相位調變。相反,二進位1之相位調變由使其上升邊緣與位元週期之起點對準的方形脈衝表示。此類調變在本文中由「翻轉」表示,此係因為其表示一百八十度之相位調變。
對於序列200或205,需要八個位元週期以傳輸八個位元D0至D7。對比而言,多重調變序列210僅在四個位元週期中傳輸此等八個位元,此操作表示單調變序列200及205兩倍之輸送量。為了產生多重調變序列210,位元D0至D7之一半由脈寬調變位元表示且其餘一半由相位調變位元表示。舉例而言,可假定位元D0、D2、D4及D6在序列205中表示相位調變位元。相反,可假定位元D1、D3、D5及D7在序列200中表示脈寬調變位元。在此實例中,二進位1由位元週期之75%的脈衝表示,而二進位0由位元週期之25%的脈衝表示。此等脈衝在序列200中全部使其下降邊緣與其各別位元週期之終點對準。
每一相位調變位元相位對後續脈寬調變位元進行調變。在此情況下,假定此等相位調變位元之二進位1表示180相位反轉,使得脈衝調變「翻轉」以便具有與符號週期之起點的上升邊緣對準。相反,假定此等相位調變位元之二進位0表示無相位改變(「非翻轉」)以便具有與符號週期之終點的下降邊緣對準。因為相位調變位元D0具有二進位1值,故翻轉序列200中之PWM位元D1的脈衝以在序列210中形成對應多重調變字元A(其對應於相對於圖1論述之字元110)。相反,相 位位元D2具有二進位0值以使得並不翻轉來自PWM位元D3之脈衝以形成對應多重調變字元B(其對應於圖1之字元或符號105)。然而,相位調變位元D4具有二進位1值,所以翻轉來自PWM位元D5之脈衝以形成對應多重調變字元C(其對應於圖1之字元115)。最後,相位位元D6為二進位0,所以並不翻轉來自PWM位元D7之脈衝以形成對應多重調變字元D(其又對應於圖1之字元105)。相比於輸入PMW及相位調變位元可立即看到所得多重調變字元之若干優勢。舉例而言,若假定多重調變符號週期與相位及PWM位元之位元週期相同,則輸送量加倍。此外,因為相比於使用八個相位位元或八個PWM位元,在多重調變字元中僅存在四個脈衝之傳輸,所以功率消耗減小了一半。最後,相比於使用八個PWM位元減少了自多重調變字元A至D的電磁干擾(EMI),此係因為上升邊緣及下降邊緣的數目減小了一半。
在圖3中展示經組態用於傳輸多重調變字元的實例傳輸器300。位元解多工器305接收輸入資料串流,且將輸入位元串流解多工成PWM輸入位元及相位輸入位元。舉例而言,若輸入位元串流包含範圍自位元D0至位元D15的十六個位元,則解多工器305可對位元D0、D2、D4、D6、D8、D10、D12及D14進行解多工以形成相位位元。相反,位元D1、D3、D5、D7、D9、D11、D13及D15形成PWM位元。在此實施例中,每一相位位元及連續PWM位元形成由調變器310調變成圖1之四個可能輸出字元100、105、110及115中之一者的輸入位元對。舉例而言,位元D0及D1形成一個輸入位元對,位元D2及D3形成另一輸入位元對,以此類推。調變器310可包含對應於四個可能輸入組合[00]、[01]、[10]及[11]的四位元查找表328。當接收輸入位元對[00]時,查找表328選擇脈衝100。類似地,當接收輸入位元對[01]時,查找表328選擇脈衝105,等等。為了提供輸送量之額外增加,可(諸如)藉由在位元解多工之前進行執行長度編碼而無損地對輸入資料 串流進行編碼。輸出驅動器325可包括在輸出接腳315上驅動出由查找表328擷取的符號之反相形式的反相器326。所得符號週期之時序可回應於諸如來自超取樣時脈之超取樣時脈信號320的時脈信號而出現。
相對於諸如圖4中說明之超取樣時脈信號400,可執行對接收器中的多重調變字元的解調變。在彼方面,傳輸器及接收器兩者皆可包括類似超取樣時脈。為了使超取樣時脈保持與彼此同相,傳輸器可定期傳輸諸如具有50%工作週期之一系列脈衝的訓練序列。接著可使用諸如在UART中習知地執行之訊框及標頭來傳輸多重調變字元。訊框及標頭大小對於接收器及傳輸器兩者皆已知。因此,接收器可相對於此已知結構而判定訊框之位元邊界。如圖4中展示,接收器可使用每一字元100至115之初始樣本以判定其相位。若第一樣本為零,則接收器知曉其將對字元100或105進行解調變。為了區分開此等字元,接收器可相比於為二進位0之樣本的數目而對為二進位1(供電電壓)之樣本的數目進行計數,以判定脈寬。另一方面,若初始樣本為二進位1,則接收器必須區分開字元110與字元115。亦可藉由相比於二進位0判定為二進位1之超取樣樣本的數目而執行此區分。可易於擴展此類超取樣方案以解調變較高階(大於二進位)相位及脈寬調變。此外,多重調變亦可使用多個振幅以允許功率消耗之較大程度減少及輸送量之增加。
可有利地將本文中描述之多重模式調變應用於虛擬GPIO架構中。特定言之,提供混合型虛擬通用輸入/輸出(GPIO)架構,GPIO架構使得系統能夠使用一對接腳,猶如接腳構成較大複數個GPIO接腳以及用於通信報信號的專用傳輸接腳及專用接收接腳。如本文所用,「通信報信號」係指將習知地經由諸如在IPC、SPI或UART協定中實踐之專用傳輸接腳傳輸的信號。每一通信報信號因此包括一位址,以使得接收處理器可將所接收通信報信號傳送至適當暫存器。在混合型 虛擬GPIO架構中,位址信號由所傳輸訊框內之位元次序取代。舉例而言,可理解,在由第一通信報暫存器接收之後,應遞送通信報訊框中之第一位元。類似地,在由第二通信報暫存器接收之後,應遞送通信報訊框中之第二位元,以此類推。每一通信報暫存器具有一位址,使得接收處理器經由處理器自其擷取通信報信號的對應通信報暫存器之位址而知曉通信報信號之身分識別。
混合型虛擬GPIO架構視為「虛擬」,此係因為對於產生虛擬GPIO信號的系統級應用,其猶如適應彼等虛擬GPIO信號以用於在習知GPIO接腳上輸入/輸出。換言之,具有本文所揭示之虛擬GPIO架構的系統單晶片(SoC)或處理器在GPIO信號與虛擬GPIO信號之間體驗不到任何功能差別。然而,僅兩個接腳用以傳輸及接收原本將各自需要其自身專用GPIO接腳對的虛擬GPIO信號(若GPIO信號對稱)。混合型虛擬GPIO架構視為「混合型」,此係因為用以傳輸虛擬GPIO信號的專用傳輸接腳亦用以將通信報信號傳輸至遠端處理器。類似地,用以接收虛擬GPIO信號的專用接收接腳亦用以自遠端處理器接收通信報信號。
將相對於適應行動電話或其他通信裝置中之應用處理器與數據機處理器之間的IPC而論述本文所揭示之虛擬GPIO信號。然而,應瞭解,本文所揭示之虛擬GPIO電路及技術廣泛地適用於需要GPIO能力的系統單晶片(SoC)或特殊應用積體電路(ASIC)。
所揭示混合型虛擬GPIO架構使得傳輸節點之健康對接收節點透明。此為重要之優點,特別是在軟體實施之除錯階段期間,此係因為其向接收處理器指示傳輸處理器變得不操作的時間。
為賦能此類穩健虛擬GPIO能力,每一積體電路包括耦接至電路板上之傳輸線的專用傳輸接腳及耦接至電路板之接收線的專用接收接腳。在彼方面,虛擬GPIO信號可劃分成用於經由傳輸線傳輸的傳輸 組,及用於在接收線上接收的接收組。若傳訊對稱,則每一處理器的傳輸組中之信號的數目相同。然而,本文所揭示之混合型虛擬GPIO架構可適應一個處理器之虛擬GPIO信號的傳輸組並非與遠端處理器之傳輸組大小相同的不對稱傳訊。類似於虛擬GPIO信號,亦經由專用傳輸接腳傳輸且在專用接收接腳上接收通信報信號。
圖5中展示之混合型虛擬GPIO架構包括行動電話或其他通信裝置內之應用處理器積體電路505及數據機處理器積體電路500。用於應用處理器積體電路505之傳輸線510a為用於數據機處理器積體電路500之接收線。類似地,用於數據機處理器積體電路500之傳輸線110b為用於應用處理器積體電路505之接收線。此等線或導線攜載於電路板或積體電路500與505之間的其他實體互連件上。每一積體電路包括專用傳輸接腳512以耦接至對應傳輸線(例如,用於數據機處理器積體電路500之線510b)。類似地,每一積體電路包括專用接收接腳511以耦接至對應接收線(例如,用於數據機處理器積體電路500之線510a)。每一積體電路中之混合型虛擬有限狀態機(FSM)515相對於超取樣時脈信號320(圖3)之週期而控制使用此等專用線及接腳的傳輸及接收,如本文中進一步論述。
應用處理器積體電路505包括處理器502。類似地,模式處理器積體電路500包括處理器501。每一處理器經由GPIO介面503傳輸且接收GPIO信號,每一處理器藉由GPIO介面503而以習知方式與GPIO接腳525介接。可在習知GPIO接腳525上將經由每一混合型虛擬GPIO介面503處理之信號的某一部分作為習知GPIO信號530傳輸且接收。但並不經由習知GPIO接腳525傳輸或接收經由GPIO介面503處理之信號的其餘部分。替代地,此其餘信號部分中之一些包含複數個虛擬GPIO信號535,使用專用傳輸接腳及專用接收接腳經由對應混合型虛擬FSM 515傳輸且接收虛擬GPIO信號535。每一混合型虛擬FSM 515 亦相對於接收及傳輸通信報信號538而直接與對應處理器介接。因為通信報信號538並非GPIO信號,所以其並不經由GPIO介面103耦接。每一FSM 115經由其專用傳輸接腳512及接收接腳511傳輸且接收通信報信號538。此等接腳因此為「混合型」接腳,此係因為其用於虛擬GPIO信號535及通信報信號538兩者。
虛擬GPIO信號535並未如習知GPIO信號530之情況而各自具有其自身專用接腳。此係非常有利的,有利之處在於相比於虛擬GPIO信號535將各自需要其自身接腳的習知GPIO實施例,所得混合型虛擬GPIO架構達成對接腳之相當大減少。通信報信號538將習知地亦需要另一專用傳輸接腳及另一專用接收接腳。但在本發明之有利混合型虛擬GPIO架構中亦消除此等額外接腳。
積體電路可包括僅一個混合型虛擬FSM 515或可包括複數個此等元件用於與多個外部系統介接。圖6A說明積體電路600包括單一混合型虛擬FSM 515用於與積體電路605中之遠端處理器通信的混合型虛擬GPIO架構,積體電路605包括其自身單一混合型虛擬FSM 515。對比而言,圖6B中展示之積體電路620包括第一混合型虛擬FSM 115A及第二混合型虛擬FSM 115B用於分別與積體電路625及630中之遠端處理器通信。在彼方面,如本文中論述之積體電路可組態有適應與其他裝置之混合型虛擬GPIO傳訊所必要的同樣多的混合型虛擬FSM 515。
再次參考圖5,因為使用諸如混合型虛擬FSM 515之有限狀態機適應虛擬GPIO信號535,所以處理器501及502可休眠或處於另一類型之休眠狀態,但能夠接收虛擬GPIO信號535及通信報信號538。以此方式,虛擬GPIO架構不僅有利地節省了用於每一GPIO介面503之接腳的數目,而且係低功率的。
如本文所使用,「接腳」為涵蓋積體電路用以耦接至電路板上之導線或其他實體互連件(例如,封裝互連件或通孔互連件)的諸如焊墊 或實際接腳之結構的通用術語。舉例而言,若如圖5中展示,每一積體電路具有十六個GPIO接腳或焊墊525,則此等接腳可經組態以適應八個對稱GPIO信號530(為了說明清晰性,在圖5中僅對四個習知GPIO信號#1至#4進行編號)或十六個不對稱GPIO信號530。此外,每一積體電路可使用線510a及510b適應複數(m)個虛擬GPIO信號535之輸入/輸出介接,其中m為任意複數整數。類似地,每一積體電路可使用線510a及510b適應複數(M)個虛擬通信報信號538之輸入/輸出介接,其中M為正複數整數。相對於每一處理器核心,在GPIO信號530與虛擬GPIO信號535之間不存在差別:兩者皆僅為視需要經由GPIO介面503傳輸及接收的信號。然而,因為虛擬GPIO信號535及通信報信號538相比於習知GPIO信號530並不具有專用接腳,所以在混合型虛擬FSM 515中串列化虛擬GPIO信號535及通信報信號538以用於在線510a及510b上傳輸。在被接收之後,每一混合型虛擬FSM 515即刻對所接收經串列化虛擬GPIO信號及所接收經串列化通信報信號信號進行解串列化。因此,每一混合型虛擬FSM 515相對於虛擬GPIO信號535及通信報信號538充當串列器/解串器。
處理器可能需要回應於GPIO信號或通信報信號中之所選者的改變而接收中斷信號。相對於虛擬GPIO信號535及通信報信號336,數據機功率管理器(MPM)540如所程式化經由中斷組態暫存器(未說明)監視所選GPIO信號或通信報信號。每一虛擬GPIO信號535具有對應中斷組態暫存器。若需要虛擬GPIO信號535回應於信號改變狀態而產生中斷,則將相應地對對應組態暫存器進行程式化。類似地,若虛擬GPIO信號535或通信報信號538為無關於信號是否已改變狀態而並不產生中斷的信號,則亦將相應地對對應中斷組態暫存器進行程式化。MPM 540亦可包含有限狀態機。因此,正如混合型虛擬FSM 115,MPM 540為低功率,且無關於處理器是否在睡眠模式或一些其他休眠 狀態下而活動。
虛擬GPIO信號535可細分成傳輸組及接收組。在對稱系統中,每一傳輸組將具有相同之數目。類似地,每一接收組將具有相同數目個信號。然而,應瞭解,所揭示虛擬GPIO架構為有利的,此係因為其可易於適應虛擬GPIO信號535及通信報信號538之傳輸組具有不同大小且GPIO信號535及通信報信號538之接收組亦具有不同大小的不對稱傳訊實施例。無關於架構是對稱還是不對稱,每一混合型虛擬FSM 515平行地自GPIO介面503接收虛擬GPIO信號535之傳輸組(在此等傳輸組中之每一信號攜載於在GPIO介面503與混合型虛擬FSM 515之間的其自身之導線的意義上)。通信報信號538並非GPIO信號且因此並不經由GPIO介面503耦接。替代地,每一處理器501及502擷取或將通信報信號538寫入至通信報暫存器536之對應者。相對於通信報信號538之所接收訊框,對應混合型虛擬FSM使用訊框中之位元次序來識別哪些通信報信號538寫入至特定通信報暫存器。此等通信報暫存器536各自映射至對應處理器501或502之位址空間內的混合型虛擬FSM 515之通用位址的一些偏移。每一通信報暫存器536因此具有其自身位址537。回應於來自MPM 540之中斷,處理器101或102可接著存取通信報暫存器536以獲得適當之通信報信號538。正如虛擬GPIO信號535,通信報信號538可細分成傳輸組及接收組。無關於架構為對稱還是不對稱,此等傳輸組由混合型虛擬FSM 115的所得傳輸經由單一傳輸接腳512發生。來自一個處理器之虛擬GPIO信號535的傳輸組變為用於遠端處理器之虛擬GPIO信號535的接收組。類似地,通信報信號538之傳輸組變為用於遠端處理器之通信報信號538的接收組。遠端處理器之混合型虛擬FSM 515接著對虛擬GPIO信號535之接收組進行解串列化,以使得可平行地將虛擬GPIO信號535呈現至GPIO介面503。
每一混合型虛擬FSM 515包括儲存虛擬GPIO信號535之傳輸組及 通信報信號538之先前狀態的組態暫存器(未說明)。以此方式,每一混合型虛擬FSM 515可監視虛擬GPIO信號535之傳輸組當自GPIO介面503接收時的目前狀態,且若目前狀態已相對於先前狀態而改變,則混合型虛擬FSM 515僅觸發對對應傳輸組之串列傳輸。換言之,僅當傳輸組內之一或多個信號已改變狀態,如經由將先前狀態儲存於組態暫存器中而偵測到時,混合型虛擬FSM 515才將觸發對通信報信號538之傳輸組或虛擬GPIO信號535的串列傳輸。每一處理器知曉通信報信號暫存器536之位址537且可因此將所要傳輸組寫入至暫存器536中,且亦可讀取接收組之任何改變。混合型虛擬FSM 515監視通信報信號536之傳輸組是否已相對於其先前傳輸而改變,且將相應地觸發傳輸組至遠端處理器之傳輸。MSM 540監視接收組是否已如先前所論述而改變,且中斷對應處理器以使得可處理已改變的接收組。
經傳輸及所接收訊框具有預定義大小。對訊框大小之此預定義係必需的,此係因為混合型虛擬FSM 515按所接收虛擬GPIO信號535及所接收通信報信號538在訊框內之次序而識別此等信號。若傳輸處理器需要傳輸比可含於預設訊框大小中更多的虛擬GPIO信號535或通信報信號538,則傳輸混合型虛擬FSM 515可發信號至接收混合型虛擬FSM 515以將其訊框大小自預設長度改變至新經程式化長度。舉例而言,訊框大小可由標頭程式化為某一數目個位元長。在圖7中展示一實例訊框700。標頭705可包含兩個功能位元,fn_0及fn_1。在一個實施例中,若兩個功能位元皆為零,則後續位元為虛擬GPIO信號535。若fn_0為零且fn_1等於1,則後續位元為通信報信號538。若fn_0為1且fn_1等於0,則訊框有效負載中之後續位元表示應由接收混合型虛擬FSM 515預期的新虛擬GPIO(或通信報信號)訊框長度。類似地,若兩個功能位元皆為1,則後續位元表示由遠端處理器之對所要訊框長度的應答。若虛擬GPIO信號535之傳輸組(或通信報信號538之傳輸 組)小於此固定訊框大小,則每一訊框內之未使用位元可為隨意值(don't care value)。或者,每一混合型虛擬FSM 515可經組態以取決於給定應用所需之位元數目而變更所傳輸訊框之大小。應瞭解,對使用兩個功能位元之編碼的先前論述僅為一實例,且其他標頭及編碼協定可用以識別訊框正攜載虛擬GPIO信號535、通信報信號538、對虛擬GPIO訊框長度之識別、對虛擬GPIO訊框長度之應答、對通信報信號訊框長度之識別、還是對通信報信號訊框長度之應答。在一個實施例中,訊框700亦可包括類型位元(type_bit),類型位元識別訊框有效負載包含虛擬GPIO信號535還是通信報信號538。
為了偵測對用於虛擬GPIO信號535或通信報信號538之接收組的完整訊框之接收,混合型虛擬FSM 515可包括邏輯電路(未說明),邏輯電路對在接收到訊框700之起始位元706之後超取樣時脈320(圖3)的週期之必需數目進行計數。舉例而言,假設接收組包含回應於超取樣時脈320之100個週期(10×超取樣比率)而接收的十個虛擬GPIO信號535。在偵測到起始位元706及等待超取樣時脈320之另100個週期之後,FSM邏輯電路將接著預期對終點位元710之接收。
再次參考圖7,因此在由起始位元706及終點位元710分界的訊框700中傳輸虛擬GPIO信號之傳輸組。因為傳輸處理器之傳輸組變為遠端處理器之接收組,所以亦相應地使接收組成框。此成框係有利的,此係因為每一處理器可接著在不需要任何額外專用接腳的情況下監視遠端處理器之健康。舉例而言,每一混合型虛擬FSM 515可經組態以在預設狀態(與虛擬GPIO信號之傳輸組的先前狀態相比無當前狀態的改變)期間微弱地將其專用傳輸接腳512拉動(且因此微弱地將其傳輸線510a拉動)至供電電壓。此類實施例之起始位元將為邏輯零,使得混合型虛擬FSM 515使其傳輸線510a接地以用於傳輸起始位元706。以此方式,每一混合型虛擬FSM 515可易於藉由偵測其接收線510b已 被拉動朝向接地而偵測對起始位元706之接收。在一個實施例中,起始位元706與停止位元710為彼此之邏輯補充。若起始位元706為邏輯零,則停止位元710將因此為邏輯高值。訊框700之有效負載接著可自類型位元延伸至分界訊框終點的停止位元710。
存在處理器已發生故障使得其不適當地將其傳輸線710a拉動至接地的可能性。遠端混合型虛擬FSM 515將因此偵測此可能性,此係因為起始位元706及混合型虛擬FSM 515之邏輯電路將開始相應地朝向訊框700之終點計數。但若終點位元710為邏輯1,則每一混合型虛擬FSM 515使傳輸線510a充電至供電電壓以用信號表示訊框傳輸之結束。若處理器已發生故障而使得遠端混合型虛擬FSM 115偵測到被視為起始位元706之位元,則邏輯電路將不會偵測終點位元且將相應地向其處理器告知遠端處理器之故障。
考慮所揭示虛擬混合型GPIO架構之優勢:僅兩個接腳必需,但可經由混合型虛擬有限狀態機515對任何數目個虛擬GPIO信號535及通信報信號538進行串列化及解串列化。唯一限制為相對於超取樣時脈320及任何預期量之時脈滯後或提前之對虛擬GPIO信號的時序要求。此外,使一個處理器之健康對對接處理器透明不需要其他接腳。訊框700亦非常有利的,有利之處在於僅藉由少至兩個功能位元之額外負荷,可經由專用傳輸接腳112傳輸多個通信報信號538及虛擬GPIO信號535。
如相對於圖3及圖4所論述,每一混合型虛擬FSM 115可經組態以使用(諸如)相對於符號100、105、110及115論述之多重模式調變來傳輸及接收訊框700。藉由使用其超取樣時脈而對所接收符號進行取樣及比較所得數目個二進位1樣本與二進位0樣本,每一所接收符號可由接收混合型虛擬FSM 515解調變。
圖8為多重模式調變混合型虛擬FSM 515的方塊圖以較佳地說明 其傳輸及接收操作。FSM 515經由多工模組800自其(圖5中展示之)GPIO介面503接收虛擬GPIO信號535之傳輸組。或者,多工模組800可接收通信報信號538之傳輸組,如先前相對於FSM 515所論述。FSM 515包括邏輯電路801,若相比於傳輸組之先前狀態已存在傳輸組之改變,則邏輯電路801將授權經由傳輸線510a將信號傳輸組作為多重模式經調變符號進行串列傳輸。以此方式,不存在相比於先前傳輸而未改變狀態的不必要之對傳輸組的重新傳輸。邏輯電路801因此比較虛擬GPIO信號535之當前傳輸組與儲存於鎖存器或組態暫存器807中之先前傳輸組。為了執行比較,邏輯電路801可包括使當前傳輸組與儲存於組態暫存器807中之先前傳輸組進行「互斥或」運算的互斥或閘810。多工模組800將當前傳輸組平行地負載至平行輸入-串列輸出(PISO)移位暫存器815中。若來自互斥或閘810之啟用信號820變得高(指示當前傳輸組與儲存於組態暫存器807中的傳輸組之間的改變),則回應於移位時脈120而啟用PISO移位暫存器815以將其內容串列地移位出至傳輸線510a上。
每一信號傳輸組包含儲存於PISO移位暫存器815中之資料的訊框。FSM 515包括多重模式調變器855,多重模式調變器855將自PISO移位暫存器815移位出的傳輸組多重模式調變成在傳輸線510a上驅動至遠端處理器的多重模式經調變符號。此調變係回應於對來自振盪器之振盪週期的計數,諸如對自超取樣時脈源861之超取樣時脈信號320的計數。可藉由來自互斥或閘810之啟用信號820的確證而觸發調變器855及超取樣時脈源861。回應於此觸發,調變器855選通移位信號120以使得PISO移位暫存器815使初始位元對自信號傳輸組移位至調變器855。舉例而言,可藉由使超取樣時脈320之頻率減小其超取樣比率而自超取樣時脈320導出移位時脈120。
以此方式,儲存於PISO移位暫存器815中之資料的訊框之信號傳 輸組將一對位元一次性移位至調變器855中。取決於移位至PISO移位暫存器815之外的位元對中之每一位元的二進位值,多重模式調變器855對經由傳輸線510a傳輸的對應符號進行脈寬及相位調變。在彼方面,每一處理器可經組態以在預設狀態(無資料傳輸)期間微弱地使其傳輸線510a充電高至供電電壓VDD。返回參考圖3,調變器855可包含調變器310。
FSM 515亦使用平行輸入-串列輸出(SIPO)移位暫存器825而以類似方式對信號(虛擬GPIO信號535及/或通信報信號538)之接收組進行解串列化。在於接收線510b上接收到時,多重模式解調變器870對來自遠端處理器之所接收多重模式經調變符號進行解調變。每一訊框之起始位元用以同步來自超取樣時脈875之超取樣時脈信號880。應注意,在替代性實施例中,時脈875與861可包含相同之時脈。解調變器870亦可在偵測到已接收完整訊框後即刻向SIPO移位暫存器825確證移位信號881。SIPO移位暫存器825將接著將解調變資料信號882自解調變器870移位。一旦接收到訊框,則將訊框鎖存於輸出鎖存器851中以使得可平行地向多工模組800呈現訊框。
可經由錯誤校正編碼增強相對於圖7論述之功能位元。儘管錯誤校正編碼增大潛時,但功能位元由此不受可經由錯誤校正編碼校正之位元錯誤影響。使用者可接著保證將遞送諸如應答(ACK)及否定應答(NACK)之重要功能標頭而不出現錯誤。後續實施例將係針對使用延伸漢明(Hamming)(8,4)碼字以界定唯一功能,但應瞭解,可使用其他錯誤校正技術。
在圖9中展示具有錯誤校正的實例訊框900。類似於訊框700,訊框900以起始符號開始且以邏輯高(經確證至VDD)停止符號結束。10位元長功能位元欄位905提供與(例如)具有多至128個資料位元之資料有效負載910相關聯的後設資料。此等資料位元可包含虛擬GPIO信號 530及/或通信報信號538,如相對於圖7所論述。功能位元欄位905及資料有效負載910兩者皆作為多重模式經調變符號加以傳輸。舉例而言,第一符號915表示操作模式位元D0及D1兩者。因為存在兩個操作模式位元,所以其針對四個不同操作模式進行編碼。第一操作模式對應於等於零的操作模式位元D0及D1兩者,如圖10中針對訊框1100所展示。在此模式下,資料有效負載910具有八個虛擬GPIO位元535之固定大小。給定此固定訊框大小及相對短暫之資料有效負載1010,可在此第一操作模式中使功能位元欄位905縮短至僅兩個操作模式位元D0及D1。
第二及第三操作模式對應於圖11中展示之訊框1100。若操作模式位元D0等於1且操作模式位元D1等於0,則使用第一P2P(點對點)通信報方案。在此第一P2P通信報方案中,操作模式位元D0及D1後接8位元功能欄位。8位元功能欄位可形成圖12中展示之漢明碼字。以此方式,8位元功能欄位對於錯誤穩健,使得接收混合型虛擬FSM可穩健地對正進行傳輸的類型之訊框進行解碼。因為存在8個位元,所以存在16個可傳輸的漢明碼字,如圖12中所展示。在一個實施例中,功能標頭碼字可形成位元反相對以有利地簡化所得解碼。舉例而言,碼字6為點對多點網路之經定址ACK,而位元反相碼字9為經定址NACK。類似地,碼字7為直接ACK(點對點網路),而位元反相碼字8為直接NACK。可保留碼字5及其位元反相對應碼字10用於將來使用。碼字4指定用於經定址網路之流動控制覆寫訊息(FCOM)。對應位元反相碼字11為用於直接網路之流動控制覆寫訊息。碼字3將相關聯資料有效負載識別為用於經定址網路的通信報有效負載,而對應位元反相碼字12指示相關聯資料有效負載為用於直接網路的通信報有效負載。碼字2指示相關聯資料有效負載為用於經定址網路的虛擬GPIO有效負載,而對應位元反相碼字13指示相關聯資料有效負載為用於直接網路的虛 擬GPIO有效負載。碼字1表示訊框為廣播訊框,而位元反相碼字14表示訊框為僅收聽詢問。最後,碼字0觸發軟重設,而對應位元反相碼字15觸發最低速率操作模式。應瞭解,圖12中之對碼字之指派僅說明一個實施例,且可利用多個替代性碼字指派。
再次參考圖11,第三操作模式對應於等於0的操作模式位元D0及等於1的操作模式位元D1。在此操作模式下,在操作模式位元之後的功能位元欄位的範圍可介於0至8個位元。可將此等功能位元任意地指派至圖12中展示之碼字中的所選者。
第四操作模式對應於圖13如中所展示之訊框1300,其中第一符號915中之操作模式位元D0及D1兩者皆等於1。在此模式下,操作模式位元之後的符號包含相對於圖7論述之功能位元D0及D1 705。此第四操作模式因此支援對待用於通信報信號及虛擬GPIO信號有效負載之新虛擬GPIO串流長度的程式化。
應注意,訊框900、1000、1100及1300之有效負載亦可全部經編碼用於錯誤校正。此外,此等訊框中之每一者以歷經符號週期延伸之同步符號(時脈同步)開始。在時脈同步符號之第一半中,傳輸混合型虛擬FSM 515使其傳輸接腳放電。在同步符號之第二半中,傳輸混合型虛擬FSM 515為其傳輸接腳充電回至供電電壓VDD。因為傳輸接腳之預設狀態為高,所以當接收同步符號之第一半時,接收混合型虛擬FSM 515可易於偵測對其接收接腳之放電。接收混合型虛擬FSM 515亦可易於偵測符號傳輸之中點處的同步符號之上升邊緣。接收FSM可因此回應於同步符號之此上升邊緣而同步其超取樣時脈。
現將相對於圖14A之流程圖而論述第一操作方法。第一方法包括在GPIO介面處接收GPIO信號的傳輸組的動作1400。在GPIO介面503處自對應處理器501或502接收GPIO信號的傳輸組為動作4100之一實例。該方法亦包括經由GPIO接腳自GPIO介面傳輸GPIO信號之第一部 分的動作1405。經由GPIO接腳525之對應者傳輸GPIO信號530為動作1405之一實例。此外,該方法包括將GPIO信號之第二部分自GPIO介面傳輸至有限狀態機(FSM)的動作1410,其中GPIO信號之第二部分配置成一系列位元對。接收調變器855中之位元對為動作1410之一實例。相對於每一位元對而定義後續動作。動作1415係基於位元對中之第一位元,且包含在至少兩個脈寬之間選擇以提供所選脈寬。基於如相對於查找表328論述之每一位元對中之相位寬度位元而選擇脈寬為動作1414之一實例。動作1420係基於位元對中之第二位元,且包含在所選脈寬之與符號週期之起點的上升邊緣對準與所選脈寬之與符號週期之終點的下降邊緣對準之間選擇,以提供所選邊緣對準。根據如相對於查找表328論述之每一位元對中之相位控制位元而控制相位為動作1420之一實例。最後,該方法包括根據所選脈寬及所選邊緣對準而在符號週期內經由傳輸接腳自FSM傳輸脈衝的動作1425,其中脈衝在所選脈寬期間等於供電電壓且在所選脈寬外部等於接地。傳輸由調變器855調變之脈寬及相位寬度經調變符號為動作1425之一實例。
相對於圖14B之流程圖而論述第二操作方法。動作1430及1435分別類似於動作1400及1405。該方法亦包括串列地經由專用傳輸接腳將該組GPIO信號之其餘部分作為第一訊框中之虛擬GPIO信號傳輸至遠端處理器的動作1440,其中每一第一訊框包括將第一訊框識別為虛擬GPIO訊框的第一標頭,且其中第一標頭經錯誤校正編碼。最後,該方法包括自由第一處理器寫入至的通信報信號暫存器擷取通信報信號,且經由專用傳輸接腳串列地在第二訊框中將所擷取通信報信號傳輸至遠端處理器的動作1445,其中每一第二訊框包括將第二訊框識別為通信報訊框的第二標頭,且其中第二標頭經錯誤校正編碼。
圖15中展示之實例系統1500包括經組態以如本文所揭示經由混合型虛擬GPIO介面(未說明)與複數個周邊裝置1510通信的系統單晶片 (SoC)1505。每一周邊裝置1510因此亦包括混合型虛擬FSM(未說明),如本文所揭示。系統1500可包含蜂巢式電話、智慧型電話、個人數位助理、平板電腦、膝上型電腦、數位相機、手持型遊戲裝置、或其他適合之裝置。除了使用其混合型虛擬FSM以將通信報信號及虛擬GPIO信號傳輸至周邊裝置1510以外,SoC 1505亦經由亦耦接至諸如DRAM 1520之記憶體及耦接至顯示控制器1525的系統匯流排1515通信。顯示控制器1525又耦接至驅動顯示器1535的視訊處理器1530。
如熟習此項技術者至今將理解且取決於手頭的特定應用,可在不脫離本發明之範疇的情況下對本發明之裝置的材料、設備、組態及使用方法中作出許多修改、替代及變化。鑒於此,本發明之範疇不應限於本文中說明且描述之特定實施例的範疇,此係因為其僅借助其一些實例,而應與下文隨附申請專利範圍及其功能等效物的範疇完全相稱。
1400‧‧‧動作
1405‧‧‧動作
1410‧‧‧動作
1415‧‧‧動作
1420‧‧‧動作
1425‧‧‧動作

Claims (24)

  1. 一種方法,其包含:在一GPIO介面處,接收GPIO信號之一傳輸組;自該GPIO介面,經由GPIO接腳傳輸該等GPIO信號之一第一部分;自該GPIO介面,將該等GPIO信號之一第二部分提供至一有限狀態機(FSM),其中該等GPIO信號之該第二部分配置成一系列位元對;針對在該FSM處接收之每一位元對:基於該位元對中之一第一位元,在至少兩個脈寬之間選擇以提供一所選脈寬;基於該位元對中之一第二位元,在該所選脈寬之與一符號週期之一起點的一上升邊緣對準與該所選脈寬之與該符號週期之一終點的一下降邊緣對準之間選擇,以提供一所選邊緣對準;及根據該所選脈寬及該所選邊緣對準而經由一傳輸接腳在該符號週期內傳輸一虛擬GPIO脈衝,該虛擬GPIO脈衝在該所選脈寬期間等於一供電電壓,且在該所選脈寬外部等於接地。
  2. 如請求項1之方法,其中該至少兩個脈寬包含:一第一脈寬,該第一脈寬等於該符號週期之一第一部分;及一第二脈寬,該第二脈寬等於該符號週期之一其餘第二部分。
  3. 如請求項2之方法,其中該第一脈寬為該符號週期之25%,且該第二脈寬為該符號週期之75%。
  4. 如請求項1之方法,其進一步包含:自一處理器,將複數個通信報信號寫入至對應複數個通信報 暫存器中;在該FSM中,自該對應複數個通信報暫存器擷取該複數個通信報信號,其中該所擷取複數個通信報信號配置成通信報位元對;針對在該FSM處接收之每一通信報位元對:基於該通信報位元對中之一第一位元,在至少該兩個脈寬之間選擇以提供一所選脈寬;基於該通信報位元對中之一第二位元,在該所選脈寬之與一符號週期之一起點的一上升邊緣對準與該所選脈寬之與該符號週期之一終點的一下降邊緣對準之間選擇,以提供一所選邊緣對準;及根據該所選脈寬及該所選邊緣對準而經由一傳輸接腳在該符號週期內傳輸一通信報信號脈衝,該通信報信號脈衝在該所選脈寬期間等於一供電電壓,且在該所選脈寬外部等於接地。
  5. 如請求項1之方法,其中在包括將一訊框識別為具有一虛擬GPIO有效負載之一標頭的該訊框中傳輸該等虛擬GPIO脈衝,。
  6. 如請求項4之方法,其中在包括將一訊框識別為具有一通信報信號有效負載之一標頭的該訊框中傳輸該等通信報信號脈衝。
  7. 如請求項4之方法,其進一步包含:經由一遠端積體電路處之一接收接腳接收每一通信報信號脈衝,該等通信報信號脈衝具有到達該接收接腳之一次序;將每一所接收通信報信號寫入至根據該所接收通信報信號之該到達次序而選定選擇的一對應接收通信報暫存器。
  8. 如請求項7之方法,其進一步包含:在該遠端積體電路中之一處理器中,自該等對應接收通信報暫存器擷取該等所接收通信報信號。
  9. 如請求項1之方法,其進一步包含:經由一遠端積體電路處之一接收接腳接收該等虛擬GPIO脈衝;及回應於每一所接收虛擬GPIO脈衝之脈寬及其是否具有該上升邊緣對準或該下降邊緣對準而解調變每一所接收虛擬GPIO脈衝,以自每一所接收虛擬GPIO脈衝恢復GPIO信號之該位元對。
  10. 一種積體電路,其包含:複數個GPIO接腳;一GPIO介面,其經組態以經由該等GPIO接腳傳輸GPIO信號之一傳輸組的一第一部分;一傳輸接腳;及一有限狀態機(FSM),其經組態以自該GPIO介面接收GPIO信號之該傳輸組的一第二部分,其中該第二部分配置成一系列位元對,其中該FSM經進一步組態以為每一位元對形成一虛擬GPIO符號,每一位元對具有選自對應於該位元對中之一第一位元的一第一脈寬及一第二脈寬的一脈寬,且具有對應於該位元對中之一第二位元的一相位調變,且其中該FSM經進一步組態以經由該傳輸接腳傳輸該等虛擬GPIO符號。
  11. 如請求項10之積體電路,其中該第一脈寬等於一符號週期之一第一部分,且一第二脈寬等於一符號週期之一其餘第二部分。
  12. 如請求項10之積體電路,其中該FSM經進一步組態以經由該傳輸接腳在一訊框中傳輸該等虛擬GPIO符號,且其中該FSM經進一步組態以經由將該訊框識別為具有一虛擬GPIO資料有效負載的該傳輸接腳傳輸該訊框之一標頭。
  13. 如請求項10之積體電路,其中該FSM經進一步組態以將該標頭作為具有選自該第一脈寬及該第二脈寬之一脈寬的一兩位元符號 進行傳輸。
  14. 如請求項10之積體電路,其進一步包含:複數個通信報暫存器;一處理器,其經組態以將複數個通信報信號寫入至該等通信報暫存器,其中該等通信報信號係選自由以下各者組成之群:串列周邊介面(SPI)信號、處理器間通信(IPC)信號及通用異步收發機(UART)信號;及其中該FSM經進一步組態以自通信報信號對中之該等通信報信號擷取該等通信報信號,且基於每一通信報信號對之一二進位內容而自該第一脈寬與該第二脈寬選擇一脈寬且自與一符號週期之一起點的一上升邊緣對準或與該符號週期之一終點的一下降邊緣對準選擇一邊緣對準,且根據該所選脈寬及該所選邊緣對準而在該符號週期中傳輸一通信報信號脈衝。
  15. 如請求項10之積體電路,其中該FSM經進一步組態以回應於一超取樣時脈信號而傳輸每一虛擬GPIO符號。
  16. 如請求項10之積體電路,其進一步包含一接收接腳,其中該FSM經進一步組態以經由該接收接腳接收一虛擬GPIO符號訊框。
  17. 一種方法,其包含:在一GPIO介面處自一第一處理器接收一組GPIO信號;經由專用GPIO接腳將該組GPIO信號之一部分傳輸至一遠端處理器;串列地經由一專用傳輸接腳在若干第一訊框中將該組GPIO信號之一其餘部分作為虛擬GPIO信號傳輸至該遠端處理器,其中每一第一訊框包括將該第一訊框識別為一虛擬GPIO訊框的一第一標頭,且其中該等第一標頭經錯誤校正編碼;及自由該第一處理器寫入至的通信報信號暫存器擷取通信報 信號,且經由該專用傳輸接腳串列地在若干第二訊框中將該等所擷取通信報信號傳輸至該遠端處理器,其中每一第二訊框包括將該第二訊框識別為一通信報訊框的一第二標頭,且其中該等第二標頭經錯誤校正編碼。
  18. 如請求項17之方法,其中對該等第一標頭及該等第二標頭之該錯誤編碼包含一漢明碼。
  19. 如請求項18之方法,其中該漢明碼為一(8,4)漢明碼。
  20. 如請求項17之方法,其中串列地傳輸該等所擷取通信報信號包含串列地傳輸所擷取通用異步收發機(UART)信號。
  21. 如請求項17之方法,其中串列地傳輸該等所擷取通信報信號包含串列地傳輸所擷取串列周邊介面(SPI)信號。
  22. 一種積體電路,其包含:一第一處理器;複數個通信報信號暫存器,其中該第一處理器經組態以將通信報信號之一傳輸組寫入至該等通信報信號暫存器中;複數個GPIO接腳;一GPIO介面,其經組態以自該第一處理器接收一第一組信號及經由該複數個GPIO接腳將該第一組信號之一部分作為GPIO信號傳輸至一遠端處理器;一專用傳輸接腳;及一有限狀態機(FSM),其經組態以自該GPIO介面接收該第一組信號之一其餘部分,且串列地經由該專用傳輸接腳將該其餘部分作為組織成訊框的一組虛擬傳輸GPIO信號傳輸至該遠端處理器,且其中該FSM經進一步組態以自通信報信號暫存器擷取通信報信號之一傳輸組,且串列地經由該專用傳輸接腳將組織成訊框的通信報信號之該傳輸組傳輸至該遠端處 理器,其中該FSM經進一步組態以將識別每一訊框包含虛擬GPIO信號還是通信報信號一經錯誤校正編碼標頭附加至該訊框。
  23. 如請求項22之積體電路,其中該經錯誤校正編碼標頭包含一漢明碼。
  24. 如請求項22之積體電路,其中該漢明碼為一(8,4)漢明碼。
TW105111707A 2015-04-14 2016-04-14 具有多重模式調變之增強虛擬gpio TW201702891A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201562147238P 2015-04-14 2015-04-14
US201562233278P 2015-09-25 2015-09-25
US15/097,237 US10146727B2 (en) 2015-04-14 2016-04-12 Enhanced virtual GPIO with multi-mode modulation

Publications (1)

Publication Number Publication Date
TW201702891A true TW201702891A (zh) 2017-01-16

Family

ID=55949087

Family Applications (1)

Application Number Title Priority Date Filing Date
TW105111707A TW201702891A (zh) 2015-04-14 2016-04-14 具有多重模式調變之增強虛擬gpio

Country Status (9)

Country Link
US (2) US10146727B2 (zh)
EP (2) EP3283969B1 (zh)
JP (2) JP6878300B2 (zh)
KR (1) KR20170137089A (zh)
CN (2) CN112835825A (zh)
AU (1) AU2016250158A1 (zh)
BR (1) BR112017021885A2 (zh)
TW (1) TW201702891A (zh)
WO (1) WO2016168369A1 (zh)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9753487B2 (en) * 2013-03-14 2017-09-05 Micron Technology, Inc. Serial peripheral interface and methods of operating same
US10146727B2 (en) 2015-04-14 2018-12-04 Qualcomm Incorporated Enhanced virtual GPIO with multi-mode modulation
US20180359117A1 (en) * 2017-06-12 2018-12-13 Qualcomm Incorporated Virtual channel instantiation over vgi/vgmi
US20190050366A1 (en) * 2017-08-14 2019-02-14 Qualcomm Incorporated Device, event and message parameter association in a multi-drop bus
US10355693B1 (en) * 2018-03-14 2019-07-16 Qualcomm Incorporated Extended GPIO (eGPIO)
CN110531146B (zh) * 2019-09-02 2020-11-03 北京智芯微电子科技有限公司 三相载波通信模块的过零检测装置、方法及计算机存储介质
US11502712B2 (en) 2021-03-05 2022-11-15 Aspeed Technology Inc. Signal transceiving system and signal receiver thereof
US11960434B2 (en) * 2021-04-07 2024-04-16 Sony Semiconductor Solutions Corporation Communication device, communication system, and communication method for transmitting data blocks including signal groups conforming to a serial peripheral interface
WO2023219648A1 (en) 2022-05-09 2023-11-16 Lockheed Martin Energy, Llc Flow battery with a dynamic fluidic network
CN117539819B (zh) * 2024-01-10 2024-06-14 广东保伦电子股份有限公司 使用gpio模拟单线uart串口的方法、装置、设备及存储介质

Family Cites Families (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5434719A (en) * 1994-03-18 1995-07-18 Seagate Technology, Inc. Correction of header information in a magnetic disc drive
US5960191A (en) * 1997-05-30 1999-09-28 Quickturn Design Systems, Inc. Emulation system with time-multiplexed interconnect
JP2000278332A (ja) * 1999-03-24 2000-10-06 Fuji Electric Co Ltd マルチppm符号化方法およびその符号化回路
US20030061431A1 (en) * 2001-09-21 2003-03-27 Intel Corporation Multiple channel interface for communications between devices
US7055085B2 (en) * 2002-03-07 2006-05-30 Broadcom Corporation System and method for protecting header information using dedicated CRC
US6906502B2 (en) 2002-11-14 2005-06-14 Fyre Storm, Inc. Method for regulating an output voltage of a power coverter
US7373111B2 (en) * 2004-02-19 2008-05-13 Marvell International Ltd. Communication access apparatus, systems, and methods
US7260660B1 (en) * 2004-05-21 2007-08-21 Zilog, Inc. Flow control by supplying a remote start bit onto a single-wire bus
US8560753B1 (en) * 2005-03-30 2013-10-15 Teradici Corporation Method and apparatus for remote input/output in a computer system
CN101154207A (zh) * 2006-09-29 2008-04-02 上海海尔集成电路有限公司 一种微控制器配置接口操作方法
US20080278508A1 (en) 2007-05-11 2008-11-13 Swen Anderson Architecture and Method for Remote Platform Control Management
JP5179834B2 (ja) * 2007-10-31 2013-04-10 ルネサスエレクトロニクス株式会社 半導体装置及びデータ処理システム
CN101329663B (zh) * 2008-07-31 2010-04-21 炬力集成电路设计有限公司 一种实现片上系统管脚分时复用的装置及方法
JP5168020B2 (ja) * 2008-08-06 2013-03-21 富士通株式会社 インターフェース回路
CN101404113B (zh) * 2008-11-06 2010-11-17 成都九洲电子信息系统有限责任公司 一种在嵌入式系统中用软件实现红外遥控解码的方法
CN101963783B (zh) * 2009-07-24 2012-06-27 环旭电子股份有限公司 可省电的脉冲宽度调制控制系统及其方法
US9129072B2 (en) * 2012-10-15 2015-09-08 Qualcomm Incorporated Virtual GPIO
CN102938197A (zh) * 2012-10-26 2013-02-20 合肥移瑞通信技术有限公司 输入捕获中断方式解码红外遥控的方法
TWI686085B (zh) * 2012-11-29 2020-02-21 日商索尼半導體解決方案公司 攝像裝置及圖像感測器之資料傳送方法、資訊處理裝置及資訊處理方法以及程式
CN103869724B (zh) * 2012-12-11 2017-10-13 厦门雅迅网络股份有限公司 一种两线制多信号输入检测的扩展方法及电路
US9875209B2 (en) * 2013-05-06 2018-01-23 Qualcomm Incorporated Synchronous data-link throughput enhancement technique based on data signal duty-cycle and phase modulation/demodulation
CN103346988B (zh) * 2013-06-13 2016-03-23 电子科技大学 一种fsk数字解调器
US9747244B2 (en) 2013-11-22 2017-08-29 Qualcomm Incorporated Clockless virtual GPIO
US9417801B2 (en) * 2014-03-27 2016-08-16 Intel Corporation Virtual general-purpose I/O controller
US9311206B2 (en) 2014-04-15 2016-04-12 Freescale Semiconductor, Inc. Method and apparatus for monitoring general purpose input output, GPIO, signals
US9619427B2 (en) 2014-04-21 2017-04-11 Qualcomm Incorporated Hybrid virtual GPIO
CN104484992B (zh) * 2014-12-31 2018-03-02 广州科技贸易职业学院 基于可编程逻辑器件的红外遥控解码器
JP2018506915A (ja) * 2015-02-04 2018-03-08 クアルコム,インコーポレイテッド データリンク電力低減およびスループット向上のためのマルチ変調
US10146727B2 (en) 2015-04-14 2018-12-04 Qualcomm Incorporated Enhanced virtual GPIO with multi-mode modulation

Also Published As

Publication number Publication date
EP3283969A1 (en) 2018-02-21
EP3410306A1 (en) 2018-12-05
US20190087380A1 (en) 2019-03-21
US20160306770A1 (en) 2016-10-20
CN107580702A (zh) 2018-01-12
US10146727B2 (en) 2018-12-04
JP2018518083A (ja) 2018-07-05
CN112835825A (zh) 2021-05-25
BR112017021885A2 (pt) 2018-07-17
JP2021145338A (ja) 2021-09-24
EP3283969B1 (en) 2020-05-27
AU2016250158A1 (en) 2017-09-28
JP6878300B2 (ja) 2021-05-26
WO2016168369A1 (en) 2016-10-20
CN107580702B (zh) 2021-03-26
KR20170137089A (ko) 2017-12-12
US10303643B2 (en) 2019-05-28

Similar Documents

Publication Publication Date Title
TW201702891A (zh) 具有多重模式調變之增強虛擬gpio
US8694710B2 (en) Conversion of a two-wire bus into a single-wire bus
JP6325537B2 (ja) N相極性出力ピンモードマルチプレクサ
CN105283862B (zh) 用于数据通信的方法和装置
US9678828B2 (en) Error detection capability over CCIe protocol
EP3365797A1 (en) Alternating pseudo-random binary sequence seeds for mipi csi-2 c-phy
US9569390B2 (en) Protocol for communication
US10218492B2 (en) Clock and data recovery for pulse based multi-wire link
KR20160125411A (ko) 에러 검출 최적화를 용이하게 하는 공유된 버스를 통한 비트 할당
CN108604219B (zh) 具有最优传输等待时间的串行通信链路
KR102243771B1 (ko) 직렬 측파대 시그널링 링크
JP2017514230A (ja) ハイブリッド仮想gpio
TWI596904B (zh) 用於資料鏈結功率減少及產出率增加之多調變
US10587391B2 (en) Simplified C-PHY high-speed reverse mode
US10355894B2 (en) Simplified 3-phase mapping and coding
TW201702895A (zh) 具有線活動偵測器之通用非同步接收器/傳輸器
JPS5863253A (ja) デコ−ド・ロジツクを有するデイジタル直列インタフエ−ス