TWI507880B - 資料交換系統及其主裝置 - Google Patents
資料交換系統及其主裝置 Download PDFInfo
- Publication number
- TWI507880B TWI507880B TW101104746A TW101104746A TWI507880B TW I507880 B TWI507880 B TW I507880B TW 101104746 A TW101104746 A TW 101104746A TW 101104746 A TW101104746 A TW 101104746A TW I507880 B TWI507880 B TW I507880B
- Authority
- TW
- Taiwan
- Prior art keywords
- servant
- master
- data
- line
- link
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
- G06F13/4286—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus using a handshaking protocol, e.g. RS232C link
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
- G06F13/4291—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus using a clocked protocol
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/36—Handling requests for interconnection or transfer for access to common bus or bus system
- G06F13/362—Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
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)
- Communication Control (AREA)
Description
本發明係關於一種串列介面。
串列介面通常用以使電子元件或裝置相互做二進制資料通信,且於一時間點做一位元通信。例如,設於一印刷電路板(PCB)上之一微控制單元(MCU)、或一無線電晶片(radio chip),係可使用一包括印刷電路板上之走線之串列介面來彼此做資料通信。其中,使用一串列匯流排係較使用一平行匯流排更加普及,係因在特定情況下,串列匯流排並無需在積體電路上使用大量的多針腳(pin),因而可節省空間。
串列周邊介面(SPI)即為一個一般的串列介面,其係提供一主裝置及一僕裝置之間的同步通信。再者,其係使用一時脈線以及兩個資料線。透過該時脈線,主裝置係可傳輸一時脈信號,而一資料線係可提供雙向資料流之通信。再者,資料交換係可由上述之時脈同步。
然而,串列周邊介面具有一僕裝置係藉由何種機制來初始與主裝置之通信的缺點。而本發明則在提供一種可減緩上述缺點之串列介面。
依據本發明之一態樣,本發明係在提供一種透過一串列介面於一主裝置(master device)及一僕裝置(slave device)之間全雙工通信之方法,包括五個個別的線,該五個線分別為一時脈線、一請求線、一預備線、一主對僕資料線、及一僕對主資料線,該方法包括:該主裝置透過該時脈線傳輸一時脈信號至該僕裝置;於一第一執行期間,該主裝置透過該請求線發送一主傳輸請求信號至該僕裝置;該僕裝置接收該主傳輸請求信號,並透過該預備線發送一僕傳輸接收信號作回應;該主裝置接收該僕傳輸接收信號,並透過該主對僕資料線傳送二進制資料至該僕裝置作直接回應;以及於一第二執行期間,該僕裝置透過該預備線或一僕請求線發送一僕傳輸請求信號至該主裝置;該主裝置接收該僕傳輸請求信號,該主裝置透過該請求線或一主預備線發送一主傳輸接收信號至僕裝置作回應;該僕裝置接收該主傳輸接收信號並透過該僕對主資料線傳送二進制資料至該主裝置作直接回應;其中,於該第一執行期間及該第二執行期間至少其中之一,該主裝置透過主對僕資料線傳送資料且該僕裝置同時透過該僕對主資料線傳送二進制資料。
本發明所屬技術領域中之通常知識者係可體認本發明提供之串列介面,可允許主裝置及僕裝置任一者來作初始通信,因而可避免主裝置及僕裝置何者為先初始化該通信所造成的衝突,且支持兩裝置間之全雙工通信(例如,雙向之同步資料流)。
上述之配置係使資料在單向或雙向上的通信更有效率,並可免除例如僕裝置於開始發送資料之前需等待來自主裝置的投選指令(poll command)的缺點。藉此,當一事件發生於僕裝置(或主裝置)時,可藉由主裝置(或僕裝置)而達到快速的響應時間。
例如,僕裝置為一積體無線電發送器,當僕裝置接收一無線電封包,係可立即指示其欲將接收封包之內容傳送至一MCU(主裝置)之需求,並可在當MCU承認該僕傳輸請求信後開始將該內容傳輸至MCU,而無需等待MCU的投選。
依據本發明之一第二態樣,本發明係在提供一種通信系統,包括一主裝置、一僕裝置、以及一串列介面,其中該串列介面包括五個個別的線,該五個線為一時脈線、一請求線、一預備線、一主對僕資料線、及一僕對主資料線,其中:該主裝置係用以透過該時脈線傳輸一時脈信號至該僕裝置;該主裝置係用以於一第一執行期間中,透過該請求線發送一主傳輸請求信號至該僕裝置;該僕裝置係用以透過該請求線接收該主傳輸請求信號,並透過該請求線發送一僕傳輸接收信號至該主裝置作回應;該主裝置係更用以接收該僕傳輸接收信號,並透過該主對僕資料線傳送二進制資料至該僕裝置作直接回應;以及該僕裝置係用以於一第二執行期間中,透過該預備線或一僕請求線發送一僕傳輸接收信號至該主裝置;該主裝
置係用以接收該僕傳輸接收信號,該主裝置透過該請求線或一主預備線發送一主傳輸接收信號至僕裝置作回應;該僕裝置係更用以接收該主傳輸接收信號並透過該僕對主資料線傳送二進制資料至該主裝置作直接回應;該主裝置及該僕裝置係能夠於該第一執行期間及該第二執行期間至少其中之一中同時傳輸二進制資料。
依據本發明之再一態樣,本發明係在提供一種主裝置,包括五個串列介面連結,該五個串列介面連結為一時脈連結、一請求連結、一預備連結、一主對僕資料連結、及一僕對主資料連結,其中:該主裝置係用以自該時脈連結傳輸一時脈信號至該僕裝置;該主裝置係用以於一第一執行期間中,自該請求連結發送一主傳輸請求信號至該僕裝置;並在該預備連結下自該僕裝置接收一僕傳輸接收信號,且自主對僕資料連結傳輸一二進制資料至該僕裝置作直接回應;該僕裝置係用以於一第二執行期間中,在該預備連結或在一僕請求連結下自該僕裝置接收一僕傳輸請求信號,並自該請求連結或一主預備連結發送一主傳輸接收信號至該僕裝置;且在僕對主資料連結下自該僕裝置接收二進制資料;以及於該第一執行期間及該第二執行期間至少其中之一,該主裝置係能夠自主對僕資料連結傳輸二進制資料,且同時在僕對主資料連結下接收二進制資料。
依據本發明之又一態樣,本發明係在提供一種僕裝置,包括五個串列介面連結,該五個串列介面連結為一時脈連結、一請求連結、一預備連結、一主對僕資料連結、及一僕對主資料連結,其中:該僕裝置係用以於該時脈連結上自該主裝置接收一時脈信號;該僕裝置係用以於一第一執行期間中,於該請求線上自該主裝置接收一主傳輸請求信號,並自該預備連結發送一僕傳輸接收信號至該主裝置作回應;且在主對僕資料連結下自該主裝置接收二進制資料;該僕裝置係用以於一第二執行期間中,自該預備連結或一僕請求連結發送一僕傳輸請求信號至該主裝置;在該請求連結或一主預備連結下自該主裝置接收一主傳輸接收信號,並自該僕對主資線傳輸二進制資料至該主裝置作回應;於該第一執行期間及該第二執行期間至少其中之一,該僕裝置係能夠在主對僕資料連結下接收二進制資料,且同時自僕對主資料連結傳輸二進制資料。
上述之時脈連結(例如一腳位)係可連接至一時脈線(例如一PCB走線)。類似地,任何或所有請求連結、預備連結、主對僕資料連結、以及僕對主資料連結可連接至各自的線。若為此種情形,僕請求連結可連接至一僕請求線,而主回應連結可連接至一主回應線。
其中該時脈連結、該主對僕資料連結、及該僕對主資料連結可與一串列周邊介面(SPI)匯流排連接。
主裝置較佳地保持該請求線於兩個可能狀態的其中之一。為方便起見,上述之狀態係為參考如同一高位準狀態及一低位準狀態。高位準狀態及低位準狀態係可分別對應至高電壓及低電壓,或低電壓及高電壓。此外,上述之主傳輸請求信號可包括該請求線之狀態之一切換(toggling)。於某些實施例中,主傳輸請求信號包括將請求線由高位準狀態降至低位準狀態。僕裝置較佳地保持該預備線係於兩個可能狀態的其中之一。為方便起見,上述之狀態係為一高位準狀態及一低位準狀態。高位準狀態及低位準狀態係可分別對應至高電壓及低電壓,或低電壓及高電壓。上述之僕傳輸接收信號可包括該預備線之狀態之一切換(toggling)。於某些實施例中,僕傳輸接收信號包括將預備線由高位準狀態降至低位準狀態。
再者,僕傳輸請求信號可包括預備線之狀態之一切換(toggling)。於某些實施例中,僕傳輸請求信號包括將預備線由高位準狀態降至低位準狀態。
此外,主傳輸接收信號可包括請求線之狀態之一切換(toggling)。於某些實施例中,主傳輸接收信號包括將預備線由高位準狀態降至低位準狀態。
主對僕資料線及僕對主資料線可各自獨立運作,而系統則可用以使得兩線共同啟動,而就後者之情形而言,只有在主僕裝置的其中之一有資料需傳輸的情況下,另一裝
置才可傳送空資料(null data)或虛擬資料(dummy data)(例如,所有位元皆為‘0’)。
主裝置係可用以當傳輸及/或接收二進制資料時,傳輸時脈信號。
於某些情況下,主裝置係可設定為:當該僕裝置傳輸一信息至該主裝置時,該主裝置亦傳輸一信息至該僕裝置,而上述信息的長度互不相同。若僕對主資料線及主對僕資料線被同時啟動,則發送較短信息之裝置可在較短信息之末端,附加虛擬資料(dummy data)或空資料(null data),例如讓較短信息的長度等於較長信息的長度。
一信息係可含有與其長度相關之資訊。該信息可含有一傳送整個該信息之長度的長度數(length number)。例如,信息的第一個位元組可為信息之位元組的總數目,或信息之變動長度資料片段的總數目。
主裝置係用以透過主對僕資料線接收自僕裝置之信息長度資訊,並使用該信息長度資訊以決定何時該終止一執行程序。較佳地,主裝置係用以當(1)透過該僕對主資料線以接收該僕裝置所傳輸之任何信息之所有位元、及(2)透過該主對僕資料線所傳輸之任何信息之所有位元時,終止一執行程序。在此方式下,係可確保不同長度的信息可被同步並完整地交換,以提供一強健且有效的通信機制。
再者,本發明之概念係為創新且富創造力,因而形成一再一態樣,即本發明再提供一種透過一同步串列連結而於一主裝置及一僕裝置間交換資料之方法,包括:該僕裝
置傳輸一含有信息長度資訊之一二進制信息至該主裝置,同時該主裝置傳輸一二進制信息至該僕裝置,其中當該主裝置(1)自該僕裝置所對應之該信息長度資訊接收一數量之信息位元、及(2)傳輸該主裝置所傳輸至該僕裝置之該信息之所有位元時,發送一傳輸終端信號至該僕裝置。
依據本發明之再一態樣,本發明係在提供一種資料交換系統,包括一主裝置、一僕裝置、及一於該主裝置及該僕裝置之間之同步串列連結,其中該僕裝置係用以傳輸含有信息長度資訊之一二進制信息至該主裝置,同時該主裝置傳輸一二進制信息至該僕裝置,而其中該主裝置係用以當該主裝置(1)自該僕裝置所對應之該信息長度資訊接收一數量之信息位元、及(2)傳輸該主裝置所傳輸至該僕裝置之一信息之所有位元時,發送一傳輸終端信號至該僕裝置。
依據本發明之又一態樣,本發明係在提供一種主裝置,係用以透過一同步串列連結自一僕裝置接收一二進制信息,含有信息長度資訊,並同時透過該同步串列連結傳輸一二進制信息至該僕裝置,更用以當(1)自該僕裝置所對應之該信息長度資訊接收一數量之信息位元、及(2)傳輸該主裝置所傳輸至該僕裝置之一信息之所有位元時,發送一傳輸終端信號至該僕裝置。
較佳地,信息的傳輸係同步開始,而在第一時脈信號下,每一信息的最小有效位元較佳係被同步傳輸。
前述之態樣的選擇性特徵亦可為該些態樣的特徵。
於前述任何一態樣中,一執行程序(例如一連續或持續的通信期間)係可藉由主裝置透過請求線或一終端信號線發送一主傳輸終端信號至僕裝置而被終止。除此之外,一執行程序亦可透過該時脈線,以藉由主裝置停止發送一時脈信號而被終止。
一主傳輸終端信號係可包括一請求線之狀態之一切換(toggling)。於某些實施例中,主傳輸終端信號包括將請求線由低位準狀態升至高位準狀態。
僕裝置係用以對切換預備線之狀態作回應,以接收一主傳輸請求信號。於某些實施例中,僕裝置將預備線由低位準狀態升至高位準狀態作回應,以接收一主傳輸終端信號。
主裝置係用以於發送一主傳輸請求之前檢查預備線或請求線(或兩者)的狀態,並僅在該線之狀態滿足一主傳輸條件下發送該主傳輸請求信號。主傳輸條件係可為該線為高位準狀態時。
類似地,僕裝置係用以於發送一僕傳輸請求之前檢查預備線或請求線(或兩者)的狀態,並僅在該線之狀態滿足一僕傳輸條件下發送該僕傳輸請求信號。僕傳輸條件係可為該線為高位準狀態時。
藉此,藉由確保當一執行程序正在進行時,一傳輸請求並不會被傳送,以避免來自僕裝置及主裝置之間之傳輸請求的衝突。
主裝置較佳包括一傳輸緩衝器及一接收緩衝器。該些緩衝器係可為一個及相同之緩衝器(例如一單一8位元緩衝器)。在任一情況下,位元係可由緩衝器的一端傳輸,並由緩衝器的另一端(環型緩衝器)接收。然而,較佳地,該些緩衝器為各自分離之緩衝器。
主裝置可包括複數個傳輸緩衝器及/或複數個接收緩衝器。主裝置中之一控制器(可包含硬體邏輯或軟體)係可用以選擇該些傳輸緩衝器之一作為一主動傳輸緩衝器,而該主動傳輸緩衝器可被用於此次或下次的傳輸運作中。而一主動接收緩衝器係可同樣地被選出。
就類似的方式來說,僕裝置係可包括一單一傳輸及接收緩衝器。但較佳包括一個或多個傳輸緩衝器以及一個或多個分離接收緩衝器。僕裝置係可包括一用來選擇一主動傳輸及/或接收緩衝器之控制器。
於主裝置及僕裝置上之緩衝器可皆為相同位元大小(例如8位元,或一固定數目之位元組),或可為不同位元大小。
主裝置及/或僕裝置之緩衝器可由硬體或軟體而實施。
若僕裝置決定在該僕裝置接收一完全信息之前該主裝置已終止一執行程序,僕裝置係可用以請求來自主裝置之一信息的再傳輸。例如,信息可含有信息長度資訊,而僕裝置可用以使用此資訊來決定,當僕裝置接收一主傳輸終端信號時,一信息位元之對應位元數是否已被接收。上述再傳輸的請求可由預備線及/或僕對主資料線來完成。例
如,僕裝置可透過預備線發送一僕傳輸請求信號,並接著傳輸一信息至主裝置,而該信息包括一預設之再傳輸請求。
主裝置可為、或可包括一微控制器或中央處理單元。而僕裝置可為、或可包括一微控制器或中央處理單元。再者,本發明係特別適合於主裝置及僕裝置兩者之軟體控制。而可以想像的是,僕裝置可為、或可包括一硬體裝置,例如一連接性晶片組(connectivity chipset),像是無線電晶片(radio-on-a-chip),或其他種不必然具有一通用型處理器(general-purpose processor)之元件。
介面的連接線係可為任何適合的形式。其可為光學式,但較佳為電氣式。一電纜包括至少五個連接線,且可連接於主裝置及僕裝置之間。然而,於較佳實施例中,該等連接線係形成在一PCB板上。而在其他實施例中,主裝置及僕裝置係可整合於一單一矽晶片中,而連接線則可包括於矽晶片上之導體。
資料位元係較佳於與時脈信號相同之傳輸率下傳輸。例如,每一時脈脈波傳輸一位元。而資料則可在時脈信號的上升邊緣或下降邊緣被傳輸或讀取。在某些實施例中,資料在上升邊緣被擷取,而在下降邊緣被傳輸。
雖然本發明係描述有關主裝置及一個僕裝置,而一個主裝置對複數個僕裝置的實施方式是可以被理解與體認的。一僕選擇線係可用來將主裝置連接至僕裝置,以啟動僕裝置中被選擇啟動者,如SPI中所為熟知之方式。若該等線係為所有僕裝置所共用,一非主動僕裝置係可用以忽略
在請求以及主對僕資料連接線上的信號,且不在預備線以及僕對主資料連接線上傳輸任何信號。
於某些實施例中,包括複數個僕裝置,每一僕裝置可具有自己的預備線,且該預備線係選擇性地與主裝置連接。於此方式下,一僕裝置係可發送一僕傳輸請求信號至主裝置,即使是在主裝置對其他僕裝置之間的執行程序期間,並可等待一主傳輸接收信號。上述之時脈線、主對僕資料線、及僕對主資料線可為複數個僕裝置所分享,因此,相較於每一僕裝置具有完全獨立串列介面之形態,可節省更多空間。
本發明各個態樣中之選擇性或較佳特徵,無論在何種情況下,可合適地作為其他態樣中之選擇性或較佳特徵。而數個或全部個態樣係可結合為一單一實施例。
圖1係顯示一微控制器1及一積體式單晶片無線電收發機2。微控制器1及積體式單晶片無線電收發機2係可個別設於如一般常見的PCB板上。微控制器1及無線電收發機2具有一位於其間之五線串列匯流排3,而五線串列匯流排3係可由PCB板上的走線形成。串列線係為:一請求線(request line,REQN)、一預備線(ready line,RDYN)、一時脈線(clock line,CLK)、一主到僕資料線(master-out slave-in data line,MOSI)、及一僕到主資料線(master-in slave-out data line,MISO)。
一於微控制器1上執行之軟體應用程式係可使用此串列連結以發送資料至無線電收發機2,例如透過無線電傳輸之命令及信息。並自無線電收發機2接收資料,例如透過無線電接收的狀態資訊及信息。
圖2係顯示無線電收發機2內之用以控制串列介面之特定元件。
時脈線、請求線、以及預備線係連接至一應用控制介面(Application Controller Interface,ACI)控制元件4。主到僕資料線係連接至一MOSI對緩衝器控制元件5,而僕到主資料線則連接至一MISO對緩衝器控制元件6。MOSI對緩衝器控制元件5可寫入至任何n接收(RX)緩衝器7。MISO對緩衝器控制元件6可由任何m傳輸(TX)緩衝器8讀出。其中,n及m係可為相同或不同。再者,每一個緩衝器之長度係為x
個位元組,而x係為使用ACI以實現軟體協定之最大(片段)長度。於一示例中,n=5,m=2,且x=32。而於另一示例中,n=m=10,且x=4。此外,ACI控制元件4,緩衝器控制元件5、6,以及RX緩衝器7及TX緩衝器8則皆由硬體實施。
ACI控制元件4具有與二緩衝器控制元件5、6,RX緩衝器7、TX緩衝器8,及一ACI驅動元件9之連結,其係可由軟體或硬體實施完成。ACI驅動元件9係介於串列連結緩衝器及無線電收發機之其他元件之間。
微控制器1係可具有類似或相同於圖2之配置,僅管每一連接線的方向被保留。
就使用上來說,微控制器1係可藉由將REQN線接地來請求與無線電收發機2之通信。而若無線電收發機2預備作通信,則將RDYN線接地,或將其維持在高位準狀態直到預備完成為止。再者,微控制器1則在RDYN線接地之後開始資料傳輸。
無線電收發機2可藉由將RDYN線接地來請求與微控制器1之通信。而微控制器1則以REQN線接地來作回應,並開始作資料傳輸。
資料傳輸通常藉由微控制器1協同動作,其係用以管理時脈線上的時脈信號。
當無線電收發機2將RDYN線降至接地位準,以表示欲傳輸一信息至微控制器1時,無線電收發機2亦將該信息的最小有效資料位元(least significant data bit)置於MISO線。
而若微控制器1亦有資料欲傳送至無線電收發機2,其亦將該信息的最小有效資料位元置於MOSI線,並將CLK線拉至高位準狀態。再者,無線電收發機2接收時脈信號並自MOSI線讀取資料位元。於此同時,微控制器1自MISO線讀取最小有效資料位元。
微控制器1接著將CLK線降至接地位準,並將次小有效資料位元(second-to-least significant data bit)置於MOSI線。僕裝置將讀取資料位元位移至一主動RX緩衝器中,並將次小有效資料位元置於MISO線。
上述之程序係持續運作直到資料位元的請求數目(例如,兩信息之全部)已雙向被傳輸。
每一資料位元係在時脈的下降邊緣被傳輸,而在時脈的上升邊緣被擷取。
ACI控制元件4為處理流程控制、協談、非對稱資料傳輸、以及再傳輸。且其亦監管與再傳輸連結之緩衝器控制元件5、6。
ACI控制元件4係能夠確認無線電收發機2何時能於RDYN線上接收一由微控制器1請求之資料傳輸。且其亦可於RDYN線上表示,當ACI控制元件4發出一請求至微控制器1,以於無線電收發機2有資料需要傳輸時,開始作資料傳輸。
對非對稱資料傳輸而言,ACI控制元件4具有供MOSI線及MISO線用之獨立緩衝器控制元件5、6。若ACI控制元件4偵到一成功、完整的傳輸及/或接收,則接著使得MOSI
緩衝器控制元件5推進至下一個接收及/或傳輸緩衝器如同主動緩衝器。。
ACI控制元件4在RDYN線上發送一信號之前,檢查MOSI及MISO緩衝器控制元件5、6,以確保在單向或雙向上有足夠的緩衝空間。
緩衝器控制元件5、6係於資料傳輸期間,扮演著獨立位移邏輯的角色。ACI控制元件4為指示資料位元自那一個緩衝器擷取以及位移至那一個緩衝器。
ACI驅動元件9係存取該ACI控制元件4,並掌管所有由微控制器1以及無線電收發機2所請求的資料傳輸的寫入與讀出。
圖3係顯示自微控制器1發送至無線電收發機2之封包之時序,而以下為相關的事件流程:-微控制器1藉由設定REQN腳位為接地以請求發送資料;-無線電晶片2設定RDYN腳位為接地,當同意微控制器1開始傳輸資料;-微控制器1在CLK腳位上開始發送一時脈信號,並開始自MOSI腳位傳輸資料。微控制器1的第一個位元組係定義信息的長度,第二個位元組係為信息資料的第一個位元組,第n個位元組係為信息資料的最後一個位元組;-微控制器1停止時脈並將REQN腳位設為高位準狀態以終止資料執行程序;以及-無線電收發機2重設RDYN為高電位狀態。
若無線電收發機2具有欲傳輸至微控制器1的資料寫入,其係可同時與來自微控制器1的傳輸一同被傳輸。
圖4係顯示自無線電收發機2發送至微控制器1之封包之時序,而以下為相關的事件流程:-無線電晶片2設定RDYN腳位為接地;-微控制器1設定REQN腳位為接地,並開始在CLK腳位上傳送一時脈信號,且開始於MOSI腳位上讀取資料。而無線電晶片2的第一個位元組係為微控制器1切除的內部除錯位元組。第二個位元組為定義信息的長度,第三個位元組係為信息資料的第一個位元組,第n個位元組係為信息資料的最後一個位元組;-一旦微控制器1接收到整個信息,其將停止時脈並將REQN腳位設為高位準狀態以終止資料執行程序;以及-無線電收發機2重設RDYN為高位準狀態。
若微控制器1具有欲傳輸至無線電收發機2的資料寫入,其係可同時與來自無線電收發機2的傳輸一同被傳輸。
封包的最大長度可基於可使用的緩衝器之位元大小來決定。
藉由使用REQN、RDYN、CLK、MOSI、以及MISO線,微控制器1以及無線電收發機2可於全雙工模式下接收及傳輸資料。
在資料的傳輸中嵌入信息的長度,以允許微控制器1達到被共同傳輸之信息的最大長度。因此可確保所有資料位元到達無線電收發機2以及微控制器1。
若微控制器1並未達到所有預期資料位元,則根據傳輸的內嵌長度,ACI控制元件4(及/或選擇性的更高階軟體)可偵測到一不完全傳輸,以使得無線電收發機2請求一再傳輸。
此外,錯誤偵測可於一高階協定層中實施。
上述實施例僅係為了方便說明而舉例而已,本發明所主張之權利範圍自應以申請專利範圍所述為準,而非僅限於上述實施例。
1‧‧‧微控制器
2‧‧‧無線電收發機
3‧‧‧匯流排
4‧‧‧ACI控制元件
5、6‧‧‧緩衝器控制元件
7‧‧‧RX緩衝器
8‧‧‧TX緩衝器
9‧‧‧ACI驅動元件
圖1係顯示一微控制器(MCU),一無線電收發機(radio transceiver),以及其間之串列連結之示意圖。
圖2係顯示無線電收發機之內部元件之示意圖。
圖3係顯示由MCU初始之一執行程序之時序圖。
圖4係顯示由無線電收發機初始之一執行程序之時序圖。
1‧‧‧微控制器
2‧‧‧無線電收發機
3‧‧‧匯流排
Claims (15)
- 一種資料交換系統,包括一主裝置、一僕裝置、及一於該主裝置及該僕裝置之間之同步串列連結,其中該僕裝置係在一執行程序裡被設定用以傳輸含有資料以及有關於僕對主二進制信息長度資訊之一僕對主二進制信息至該主裝置,且在該執行程序裡,該主裝置同時傳輸一含有資料之主對僕二進制信息至該僕裝置,而其中該主裝置係用以:決定該主裝置已經(1)自該僕裝置所對應之該信息長度資訊接收一數量之信息位元、及(2)傳輸該主對僕二進制信息之所有位元;以及回應於該決定而發送一傳輸終端信號至該僕裝置。
- 如申請專利範圍第1項所述之資料交換系統,其係用以同時開始傳輸該僕對主二進制信息及該主對僕二進制信息。
- 如申請專利範圍第1或2項所述之資料交換系統,其中該同步串列連結包含五個個別的線,其係為一時脈線、一請求線、一預備線、一主對僕資料線、及一僕對主資料線,且其中該主裝置係配置以:透過該時脈線傳輸一時脈信號至該僕裝置;以及透過該請求線發送一主傳輸請求信號至該僕裝置;透過該預備線接收自該僕裝置一主傳輸接收信號,並透過該主對僕資料線傳送該含有資料之主對僕二進制訊息至該僕裝置作直接回應。
- 如申請專利範圍第1或2項所述之資料交換系統,其中該同步串列連結包含五個個別的線,其係為一時脈線、一請求線、一預備線、一主對僕資料線、及一僕對主資料線,且其中該僕裝置係配置以:透過該時脈線自該主裝置接收一時脈信號;以及透過該預備線或一僕請求線發送一僕傳輸請求信號至該主裝置,透過該請求線或一主預備線接收來自該主裝置的一主傳輸接收信號,並透過該僕對主資料線傳送該含有資料和信息長度資訊之僕對主二進制訊息至該僕裝置作直接回應。
- 如申請專利範圍第1或2項所述之資料交換系統,其中,該主裝置係配置以使用該信息長度資訊來決定何時終止該執行程序。
- 如申請專利範圍第1或2項所述之資料交換系統,其中,該主對僕二進制訊息含有和其長度相關的訊息。
- 如申請專利範圍第6項所述之資料交換系統,其中,該僕裝置係配置以使用接收來自該主裝置的信息長度資訊,以當該僕裝置接收該傳輸終端信號時,決定是否已經接收到一對應數量之主對僕信息位元。
- 如申請專利範圍第6項所述之資料交換系統,其中,該僕裝置係配置以請求再傳輸來自該主裝置之主對僕二進制訊息,如果該僕裝置係在已接收完整的主對僕二進制訊息之前即判定該主裝置已終止該執行程序。
- 如申請專利範圍第1或2項所述之資料交換系統,其中,該同步串列連結包含五個個別的線,其係為一時脈線、一請求線、一預備線、一主對僕資料線、及一僕對主資料線,其中:該主裝置透過該時脈線用以傳輸一時脈信號至該僕裝置;該主裝置配置以於一第一執行程序中,透過該請求線發送一主傳輸請求信號至該僕裝置;該僕裝置配置以接收該主傳輸請求信號,並透過該預備線發送一僕傳輸接收信號至該主裝置作回應;該主裝置更配置以接收該僕傳輸接收信號,並透過該主對僕資料線傳送該二進制資料至該僕裝置作直接回應;該僕裝置係配置以於一第二執行程序中,透過該預備線或一僕請求線發送一僕傳輸請求信號至該主裝置;該主裝置配置以接收該僕傳輸請求信號,並透過該請求線或一主預備線發送一主傳輸接收信號至該僕裝置作回應;該僕裝置更配置以接收該主傳輸接收信號,並透過該僕對主資料線傳送該二進制資料至該主裝置作直接回應;以及於該第一執行程序及該第二執行程序至少其中之一中,該主裝置以及僕裝置係能夠同時彼此傳輸二進制資料。
- 一主裝置,係用以透過一同步串列連結,自一僕裝置接收一僕對主二進制信息,且含有資料以及有關於僕對主二進制信息長度的信息長度資訊,並透過該同步串列連 結,同時傳輸一含有資料之主對僕二進制信息至該僕裝置,更用以:決定該主裝置已經(1)自該僕裝置所對應之該信息長度資訊接收一數量之信息位元、及(2)傳輸該主對僕二進制信息之所有位元;以及回應於該決定而發送一傳輸終端信號至該僕裝置。
- 如申請專利範圍第10項所述之主裝置,其中,該主裝置包括五個串列介面連結,其係為一時脈連結、一請求連結、一預備連結、一主對僕資料連結、及一僕對主資料連結,且配置以:透過該時脈線傳輸一時脈信號至該僕裝置;以及自該請求連結發送一主傳輸請求信號至該僕裝置,於該預備連結上,接收來自該僕裝置的一僕傳輸接收信號,並自該主對僕資料連結傳送該含有資料之主對僕二進制訊息至該僕裝置作直接回應。
- 如申請專利範圍第10項所述之主裝置,其中,該主裝置包括五個串列介面連結,其係為一時脈連結、一請求連結、一預備連結、一主對僕資料連結、及一僕對主資料連結,且配置以:透過該時脈線傳輸一時脈信號至該僕裝置;以及於該預備連結或一僕請求連結上,接收一來自該僕裝置之僕傳輸請求信號,並自該請求連結或一主預備連結發送一主傳輸接收信號至該僕裝置作回應;並於該僕對主資 料連結上,接收來自該僕裝置的含有資料和信息長度資訊之僕對主二進制訊息。
- 如申請專利範圍第10或11項所述之主裝置,其中,該主裝置係配置以使用該信息長度資訊來決定何時終止該執行程序。
- 如申請專利範圍第10或11項所述之主裝置,其中,該主對僕二進制訊息含有和其長度相關的訊息。
- 如申請專利範圍第10項所述之主裝置,其中,該主裝置包括五個串列介面連結,其係為一時脈連結、一請求連結、一預備連結、一主對僕資料連結、及一僕對主資料連結,其中該主裝置係:配置以自該時脈連結傳輸一時脈信號至該僕裝置;配置以於一第一執行程序中,自該請求連結發送一主傳輸請求信號至該僕裝置;並於該預備連結上,接收一自該僕裝置之僕傳輸接收信號,並自該主對僕資料連結傳送二進制資料至該僕裝置作直接回應;配置以於一第二執行程序中,於該請求連結或一僕請求連結上,接收一來自該僕裝置之僕傳輸請求信號,並自該請求連結或一主預備連結發送一主傳輸接收信號至該僕裝置作回應;並於該僕對主資料連結上,接收來自該僕裝置之二進制資料;以及於該第一執行程序及該第二執行程序至少其中之一中,能夠自該主對僕資料連結傳輸二進制資料,並同時在該僕對主資料連結下接收二進制資料。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GBGB1102594.7A GB201102594D0 (en) | 2011-02-15 | 2011-02-15 | Serial interface |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201234191A TW201234191A (en) | 2012-08-16 |
TWI507880B true TWI507880B (zh) | 2015-11-11 |
Family
ID=43859421
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW101104746A TWI507880B (zh) | 2011-02-15 | 2012-02-14 | 資料交換系統及其主裝置 |
Country Status (8)
Country | Link |
---|---|
US (1) | US9003089B2 (zh) |
EP (1) | EP2676204B1 (zh) |
JP (1) | JP6061868B2 (zh) |
KR (1) | KR101812835B1 (zh) |
CN (1) | CN103460201B (zh) |
GB (2) | GB201102594D0 (zh) |
TW (1) | TWI507880B (zh) |
WO (1) | WO2012110798A1 (zh) |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB201102594D0 (en) | 2011-02-15 | 2011-03-30 | Nordic Semiconductor Asa | Serial interface |
JP6004891B2 (ja) * | 2012-10-26 | 2016-10-12 | シチズンホールディングス株式会社 | シリアル通信システム |
TWI492576B (zh) * | 2013-03-11 | 2015-07-11 | Realtek Semiconductor Corp | 主從偵測方法以及主從偵測電路 |
DE102013010277A1 (de) * | 2013-06-19 | 2014-12-24 | Giesecke & Devrient Gmbh | Verfahren zum Initiieren einer Datenübertragung |
KR101481907B1 (ko) | 2013-08-02 | 2015-01-12 | 주식회사 엘지씨엔에스 | 데이터 전송 장치 |
CN106126465B (zh) * | 2016-06-21 | 2017-09-12 | 广东欧珀移动通信有限公司 | 一种数据传输方法及装置 |
CN106326163A (zh) * | 2016-08-16 | 2017-01-11 | 深圳天珑无线科技有限公司 | 一种数据传送系统及传送方法 |
CN108475241B (zh) * | 2016-09-29 | 2021-01-05 | 华为技术有限公司 | 一种基于spi的数据传输方法及装置 |
EP3435245A1 (en) * | 2017-07-27 | 2019-01-30 | Nxp B.V. | Biometric sensing system and communication method |
CN108446243B (zh) * | 2018-03-20 | 2021-11-26 | 上海奉天电子股份有限公司 | 一种基于串行外设接口的双向通信方法与系统 |
CN108763140B (zh) * | 2018-04-23 | 2021-02-12 | 深圳市文鼎创数据科技有限公司 | 一种双向通信的方法、系统及终端设备 |
CN109344086B (zh) * | 2018-11-15 | 2021-09-17 | 天津津航计算技术研究所 | 一种基于sip芯片的软件测试平台 |
CN111490920A (zh) * | 2019-01-29 | 2020-08-04 | 杭州海康汽车技术有限公司 | 一种基于spi的数据传输方法、系统及装置 |
CN110032536A (zh) * | 2019-03-28 | 2019-07-19 | 北京龙鼎源科技股份有限公司 | 两系mcu数据同步方法、装置及系统 |
CN110955625A (zh) * | 2019-11-22 | 2020-04-03 | 上海麦腾物联网技术有限公司 | 一种基于spi的全双工实时通信的方法及装置 |
CN111427828B (zh) * | 2020-03-02 | 2022-08-09 | 深圳震有科技股份有限公司 | 一种spi流控方法、系统、主设备、从设备及存储介质 |
US11627403B2 (en) | 2020-06-30 | 2023-04-11 | Gn Hearing A/S | Hearing device assembly |
CN114116559B (zh) * | 2022-01-20 | 2022-05-17 | 浙江中控技术股份有限公司 | 一种适用于plc应用的高速总线方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060143348A1 (en) * | 2004-12-29 | 2006-06-29 | Wilson Matthew T | System, method, and apparatus for extended serial peripheral interface |
US20070061342A1 (en) * | 2005-09-09 | 2007-03-15 | Thomas Magdeburger | Data structures and circuit for multi-channel data transfers using a serial peripheral interface |
TWI284264B (en) * | 2005-05-30 | 2007-07-21 | Tatung Co | Bus structure suitable for data exchange of system chip |
TW201009689A (en) * | 2008-08-19 | 2010-03-01 | Inventec Corp | Data exchanger and data exchange method |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH03194640A (ja) * | 1989-12-22 | 1991-08-26 | Mitsubishi Electric Corp | 半導体装置 |
JPH0546549A (ja) | 1991-08-08 | 1993-02-26 | Fujitsu Ten Ltd | マイクロコンピユータ間同期式シリアル通信方式 |
JPH0816512A (ja) * | 1994-06-29 | 1996-01-19 | Sony Corp | 通信インターフェイス |
DE10161669A1 (de) | 2001-12-14 | 2003-06-26 | Bosch Gmbh Robert | Verfahren und Vorrichtung zum Aktivieren bzw. Deaktivieren verteilter Steuereinheiten |
JP2003348127A (ja) | 2002-05-28 | 2003-12-05 | Nec Commun Syst Ltd | Spi−3インタフェースシステム及びその転送効率向上方法 |
JP3970786B2 (ja) * | 2003-03-05 | 2007-09-05 | 株式会社日立製作所 | マルチプロセッサシステム |
US20050215248A1 (en) * | 2004-03-23 | 2005-09-29 | Texas Instruments Incorporated | Method and system of communication between a master device and a slave device |
US7308516B2 (en) * | 2004-04-26 | 2007-12-11 | Atmel Corporation | Bi-directional serial interface for communication control |
JP2007036424A (ja) * | 2005-07-25 | 2007-02-08 | Orion Denki Kk | シリアル通信を行う電子デバイスを備えた電子装置及びシリアル通信方法 |
JP2008009608A (ja) * | 2006-06-28 | 2008-01-17 | Matsushita Electric Ind Co Ltd | シリアルインターフェース装置及び双方向シリアルインターフェースシステム並びにシリアル通信方法 |
US7849229B2 (en) * | 2008-11-25 | 2010-12-07 | Spansion Llc | SPI addressing beyond 24-bits |
CN101552733B (zh) * | 2009-05-15 | 2011-07-20 | 华为终端有限公司 | 一种基于spi实现数据传输的方法和系统 |
GB201102594D0 (en) | 2011-02-15 | 2011-03-30 | Nordic Semiconductor Asa | Serial interface |
US8892800B2 (en) * | 2012-02-09 | 2014-11-18 | Intel Corporation | Apparatuses for inter-component communication including slave component initiated transaction |
-
2011
- 2011-02-15 GB GBGB1102594.7A patent/GB201102594D0/en not_active Ceased
-
2012
- 2012-02-14 JP JP2013554005A patent/JP6061868B2/ja active Active
- 2012-02-14 WO PCT/GB2012/050324 patent/WO2012110798A1/en active Application Filing
- 2012-02-14 GB GB1202504.5A patent/GB2488223B/en active Active
- 2012-02-14 TW TW101104746A patent/TWI507880B/zh active
- 2012-02-14 CN CN201280008949.5A patent/CN103460201B/zh active Active
- 2012-02-14 EP EP20120705392 patent/EP2676204B1/en active Active
- 2012-02-14 US US13/985,715 patent/US9003089B2/en active Active
- 2012-02-14 KR KR1020137021557A patent/KR101812835B1/ko active IP Right Grant
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060143348A1 (en) * | 2004-12-29 | 2006-06-29 | Wilson Matthew T | System, method, and apparatus for extended serial peripheral interface |
TWI284264B (en) * | 2005-05-30 | 2007-07-21 | Tatung Co | Bus structure suitable for data exchange of system chip |
US20070061342A1 (en) * | 2005-09-09 | 2007-03-15 | Thomas Magdeburger | Data structures and circuit for multi-channel data transfers using a serial peripheral interface |
TW201009689A (en) * | 2008-08-19 | 2010-03-01 | Inventec Corp | Data exchanger and data exchange method |
Also Published As
Publication number | Publication date |
---|---|
KR101812835B1 (ko) | 2017-12-27 |
CN103460201B (zh) | 2016-03-02 |
WO2012110798A1 (en) | 2012-08-23 |
JP6061868B2 (ja) | 2017-01-18 |
EP2676204A1 (en) | 2013-12-25 |
TW201234191A (en) | 2012-08-16 |
GB2488223B (en) | 2014-01-01 |
US9003089B2 (en) | 2015-04-07 |
KR20140045324A (ko) | 2014-04-16 |
GB2488223A (en) | 2012-08-22 |
GB201102594D0 (en) | 2011-03-30 |
GB201202504D0 (en) | 2012-03-28 |
CN103460201A (zh) | 2013-12-18 |
US20140143461A1 (en) | 2014-05-22 |
JP2014507035A (ja) | 2014-03-20 |
EP2676204B1 (en) | 2015-04-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI507880B (zh) | 資料交換系統及其主裝置 | |
JP3045985B2 (ja) | 接続確立方法、通信方法、状態変化伝達方法、状態変化実行方法、無線装置、無線デバイス、及びコンピュータ | |
US20170286360A1 (en) | Usb interface using repeaters with guest protocol support | |
US20090063717A1 (en) | Rate Adaptation for Support of Full-Speed USB Transactions Over a High-Speed USB Interface | |
US10698856B1 (en) | Alternative protocol selection | |
KR20180037783A (ko) | 반도체 장치, 반도체 시스템 및 반도체 장치의 동작 방법 | |
CN1821913A (zh) | 基于i2c的通信系统及通信方法 | |
US7457898B2 (en) | Substitute SATA host for communicating with a SATA device | |
JP2004295333A (ja) | バス通信システムおよびその通信制御方法 | |
CN110138761B (zh) | 基于mipi协议的设备间通信方法及设备拓扑结构 | |
JP2005044094A (ja) | データ中継システム | |
CN105718396B (zh) | 一种大数据主设备传输的i2c总线装置及其通讯方法 | |
US6889265B2 (en) | Apparatus and method to allow and synchronize schedule changes in a USB enhanced host controller | |
CN110113209B (zh) | 基于mipi协议的设备间通信方法及设备拓扑结构 | |
JP2006243866A (ja) | 通信方式 | |
JP2011071579A (ja) | PCIExpress通信システム | |
US9049041B2 (en) | Method and system for distributed initiation of USB over network data plane connections | |
CN1656760B (zh) | 协议内阻抗补偿控制 | |
CN111832049B (zh) | 一种基于spi的数据传输方法及系统 | |
JP2009037636A (ja) | データバス通信システムおよびデータバス通信制御方法 | |
US8578061B2 (en) | Method and system for USB addressing by a network adaptor | |
JP2022091361A (ja) | 通信装置、通信方法、およびプログラム | |
CN117412194A (zh) | 一种摄像头系统图像数据传输方法、摄像头系统和计算机程序产品 | |
TW201413458A (zh) | 可提升效能的高速介面控制裝置及資料傳輸方法 | |
US9059864B2 (en) | USB device adaptor for initiating a USB connection over a non-USB network |