TW201717033A - 具有少於八位元之位元組及可變封包大小之序列周邊介面 - Google Patents

具有少於八位元之位元組及可變封包大小之序列周邊介面 Download PDF

Info

Publication number
TW201717033A
TW201717033A TW105122466A TW105122466A TW201717033A TW 201717033 A TW201717033 A TW 201717033A TW 105122466 A TW105122466 A TW 105122466A TW 105122466 A TW105122466 A TW 105122466A TW 201717033 A TW201717033 A TW 201717033A
Authority
TW
Taiwan
Prior art keywords
data
bits
mode
peripheral device
bit
Prior art date
Application number
TW105122466A
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 TW201717033A publication Critical patent/TW201717033A/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/10Program control for peripheral devices
    • G06F13/102Program control for peripheral devices where the programme performs an interfacing function, e.g. device driver
    • 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/1673Details of memory controller using buffers
    • 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/1689Synchronisation and timing concerns
    • 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/40Bus structure
    • G06F13/4063Device-to-bus coupling
    • G06F13/4068Electrical coupling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • G06F13/4291Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus using a clocked protocol

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Information Transfer Systems (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)

Abstract

一種同步序列周邊裝置具有與一資料輸出線耦合之一傳輸單元及與一時脈線耦合之一時脈單元。該序列周邊裝置傳輸至少一單一傳輸,其中在一第一操作模式中,該傳輸單元及該時脈單元係可組態以執行具有可被定義為介於一(1)位元與八(8)位元之間之一資料長度之一資料傳輸。

Description

具有少於八位元之位元組及可變封包大小之序列周邊介面 相關專利申請案
本申請案主張2015年7月15日申請之共同擁有之美國臨時專利申請案第62/192,773號之優先權;該案特此為全部目的以引用的方式併入本文中。
本發明係關於同步序列周邊介面,特定言之一種具有少於8位元之位元組及可變封包大小之SPI介面。
同步序列周邊裝置使用各別資料線及時脈線,其中一最小資料大小係8位元。該等裝置係微控制器中之常見介面周邊設備。其等亦可於複數個獨立裝置中使用,該等獨立裝置諸如類比轉數位轉換器、數位轉類比轉換器、感測器裝置、傳輸器與接收器及需要與一微處理器或微控制器通信之任何其它類型的裝置。
根據一實施例,一種同步序列周邊裝置可包括:一傳輸單元,其與一資料輸出線耦合;及一時脈單元,其與一時脈線耦合,其中該序列周邊裝置傳輸至少一單一傳輸,其中在一第一操作模式中,該傳輸單元及該時脈單元可組態以執行具有可定義為介於一(1)位元與八(8)位元之間之一資料長度的一資料傳輸。
根據又一實施例,該同步序列周邊裝置可進一步包括與該傳輸單元耦合之一FIFO記憶體,其中該周邊裝置進一步可組態以在一第二操作模式中操作,在該第二操作模式中,一傳輸由包括來自該FIFO記憶體之複數個8位元字組的一傳輸訊框其後接著來自該FIFO記憶體之具有可定義為少於八(8)位元之一資料長度的一單一資料傳輸字組組成。根據又一實施例,一組態暫存器中之一單一位元判定第一或第二操作模式是否在作用中。根據又一實施例,該同步序列周邊裝置可進一步包括與一資料輸入線耦合之一接收單元,其中該序列周邊裝置經組態以接收一可變位元長度單一序列傳輸,其中在該第一操作模式中,該接收單元可組態以接收具有該定義資料長度之一資料傳輸。根據又一實施例,在該第一操作模式中,一組態暫存器中之複數個位元判定該資料長度。根據又一實施例,在該第二操作模式中,第一數目個特殊功能暫存器位元判定連續8位元字組之一數目,且在已傳輸該等連續8位元字組之後,第二數目個特殊功能暫存器位元判定該單一資料傳輸字組之位元數目。根據又一實施例,在該第一操作模式中,第一數目個特殊功能暫存器位元判定該資料長度,且在該第二操作模式中,第二數目個特殊功能暫存器位元判定連續8位元字組之一數目,且該第一數目個特殊功能暫存器位元判定該單一資料傳輸字組之該位元數目。根據又一實施例,一單一特殊功能暫存器包括該等第一及第二數目個特殊功能暫存器位元。根據又一實施例,該同步序列周邊裝置可進一步包括控制該時脈線上傳輸之一時脈信號的一有限狀態機。根據又一實施例,該同步序列周邊裝置可進一步包括控制該有限狀態機之一位元組計數器及一位元計數器。根據又一實施例,該位元計數器控制該傳輸單元。根據又一實施例,藉由調整鮑率、位元數目及資料來仿真對各資料位元之一PWM/曼徹斯特編碼(Manchester encoding)而達成所需調變型樣。根據又一實施例,該同步序列周邊裝 置可進一步包括一從屬控制輸入。根據又一實施例,該同步序列周邊裝置可進一步包括各別資料輸入線及資料輸出線。
根據另一實施例,一種微控制器可包括如上文所述之一同步序列周邊裝置。
根據另一實施例,一種操作一同步序列周邊裝置之方法可包括以下步驟:組態該同步序列周邊裝置,以在一第一傳輸模式中操作;將一傳輸位元寬度設定為少於8位元之長度;將資料移至一傳送緩衝器中;其中在主控模式中,於接收到該資料之後,該同步序列周邊裝置在一資料線上傳輸資料,且在一時脈線上傳輸一相關聯時脈信號,其中在該資料線上傳輸少於8位元之一位元數目,且在該時脈線上傳輸少於8個時脈脈衝之一數目。
根據該方法之又一實施例,在從屬模式中,於一時脈線上接收到來自主控器之時脈信號之後,該同步周邊裝置在一資料線上傳輸資料。根據該方法之又一實施例,該方法可進一步包括以下步驟:組態該同步序列周邊裝置,以在一第二傳輸模式中操作;設定8位元字組之一數目,且將一位元寬度設定為少於8位元之長度;將資料移至一傳輸FIFO記憶體中;其中在接收到一觸發之後,該同步序列周邊裝置傳輸來自該傳輸FIFO記憶體之複數個8位元字組,其後接著具有可定義為少於八(8)位元之一資料長度之一單一資料傳輸字組。根據該方法之又一實施例,一組態暫存器中之一單一位元判定第一或第二操作模式是否在作用中。根據該方法之又一實施例,在一控制暫存器中設定一位元產生該觸發。根據該方法之又一實施例,該方法可進一步包括:當在該第一操作模式中時,接收具有該傳輸位元寬度之一資料字組,及當在該第二操作模式中時,接收該數個8位元字組及具有少於八位元之一長度的一最後字組,其中將各經接收字組傳送至一接收FIFO記憶體中。根據該方法之又一實施例,在該第一操作模式中, 一組態暫存器中之複數個位元判定該資料長度。根據該方法之又一實施例,在該第一操作模式中,第一數目個特殊功能暫存器位元判定該資料長度,且在第二操作模式中,第二數目個特殊功能暫存器位元判定連續8位元字組之一數目,且該第一數目個特殊功能暫存器位元判定該單一資料傳輸字組之位元數目。根據該方法之又一實施例,藉由調整鮑率、位元數目及資料來仿真對各資料位元一PWM/曼徹斯特編碼以達成所需調變型樣。
100‧‧‧同步序列周邊裝置
110‧‧‧N型深接收FIFO
120‧‧‧第一多工器
130‧‧‧第一解序列化器
140‧‧‧位元組計數器
150‧‧‧位元計數器
160‧‧‧有限狀態機
170‧‧‧N型深傳輸FIFO
180‧‧‧多工器
190‧‧‧序列化器
200‧‧‧配置
210‧‧‧主控器
220‧‧‧從屬器
230‧‧‧從屬器
1000‧‧‧微控制器
1010‧‧‧中央處理單元(CPU)
1020‧‧‧程式快閃記憶體
1030‧‧‧資料隨機存取記憶體/資料記憶體
1040a至1040n‧‧‧周邊裝置
1050‧‧‧周邊裝置/周邊設備/介面模組
1060‧‧‧組態暫存器
1070‧‧‧組態暫存器
1080‧‧‧I/O埠/接腳
1090‧‧‧內部系統匯流排
CLK‧‧‧接腳
CS‧‧‧接腳
SCK‧‧‧接腳
SDI‧‧‧接腳
SDO‧‧‧接腳
SPIxBUF‧‧‧緩衡暫存器
SPIxSR‧‧‧移位暫存器
#SS‧‧‧接腳
圖1展示一同步序列周邊模組之一實施例之一方塊圖;圖2展示具有透過一SPI介面耦合之一主控器及複數個從屬單元之一系統;圖3展示一習知SPI傳輸之一時序圖;圖4展示根據一第一操作模式之具有少於八位元之一SPI傳輸之一時序圖;圖5展示根據一第二操作模式之一SPI傳輸之一時序圖;圖6展示用於一電路內除錯器/程控器之一典型傳輸協定;圖7展示根據一第一操作模式之仿真一PWM/曼徹斯特編碼之一傳輸;圖8展示一習知SPI模組之一第一組態;圖9展示一習知SPI模組之一第二組態;及圖10展示根據各種實施例之包括一SPI模組之一微控制器之一方塊圖。
若傳輸器僅發送必需位元,則採用序列資料之RF傳輸之應用程式得以改良。當裝置使用僅8位元之位元組可產生序列資料時,則有時必須傳輸過多位元(例如,32位元或40位元)而非最佳數目(例如,37 位元)。額外位元增添所消耗之總能量,且縮短電池壽命。
圖8及圖9展示可在一微控制器中實施之一典型SPI周邊模組。此一周邊設備可在不同模式中操作,其中如圖8中所示之一正常模式使用與一移位暫存器SPIxSR耦合之一單一緩衝暫存器SPIxBUF,該移位暫存器SPIxSR又與外部接腳SDO及SDI耦合。如圖8及圖9中所示,移位暫存器操作為一序列化器及一解序列化器。透過前置分頻器產生時脈信號且提供控制邏輯以處置SDO、SDI及SCK接腳上之信號之傳送協定。根據標準,一第四接腳可用於從屬模式或訊框同步。圖9展示在一增強模式中操作時之相同模組。現一FIFO接收與傳輸緩衝器耦合在緩衝暫存器SPIxBUF與移位暫存器SPIxSR之間。因此,一使用者可在無時序約束(等待狀態)之情況下執行多次寫入,此取決於FIFO大小。此一周邊設備通常由經記憶體映射以容易在一微控制器內存取之特殊功能暫存器組態。然而,此等類型的SPI介面限於8位元或16位元之傳輸。當前,提供一可變位元長度序列傳輸之唯一方式係使用所謂的位元衝擊(bit-banging)技術,該技術需要中央處理器直接控制一I/O埠及信號之時序,此顯然引起一顯著軟體額外耗用。
需要一經改良之更靈活的SPI介面,以在很大程度上自動處置具有可變資料寬度之一序列傳輸。
根據各種實施例,可進一步增強如圖8及圖9中所示之一SPI模組。例如,可修改SPI資料序列化器及解序列化器,使得並非所傳輸之全部位元組皆需為8位元長。為此,控制SPI周邊設備之操作之一特殊功能暫存器尤其係受控於(例如)控制一特定設定之一單一模式位元或多個位元。使用一單一位元BMODE容許兩種模式。當BMODE=0時,指定一總位元計數,例如具有37位元之一長度之一傳輸。可在一特殊功能暫存器中設定實際長度。在此模式中,於傳輸複數個8位元位元組之後,將一最後位元組(例如,在一設定中第五位元組)截斷成 必需長度。因此,將循序傳輸四個正常8位元字組及一個5位元字組以導致一37位元之傳輸。
當BMODE=1時,將各位元組截斷成一選定位元計數。此模式容許將每一傳輸定義為由(例如)少於8位元組成。然而,該設定可介於1位元至8位元之間,其中8位元設定等效於一正常傳輸。
根據一項實施例,僅提供一單一操作模式,其中此模式等效於BMODE=1。此實施例並不需要如下文用一兩操作模式實施例論述之一FIFO記憶體,但可與圖8中所示之SPI周邊設備類似實施。因此,代替一FIFO,可提供一單一傳輸緩衝暫存器及一單一傳輸接收暫存器(類似於圖8中所示之配置),而非圖1中所示之FIFO多工器配置。
因此,根據各種實施例之一SPI模組容許可變大小之資料傳送。如上文提及,根據一項實施例,可存在經實施以達成可變傳送大小之兩種模式:
- 模式1-可變封包大小模式。封包大小可(例如)介於9位元至16391位元之間。取決於實施方案可應用其它封包大小。
- 模式2-可變位元組大小模式。各位元組之大小可介於1位元至8位元之間。
使用一位元選擇器,將FIFO資料直接多工傳輸至一SDO輸出上,且經由一解序列化器及一相關聯接收FIFO來接收SDI輸入信號以達成可變位元組大小之有效率實施方案。另外,一主控模式有限狀態機使用byte_count及bit_count資訊以產生可變數目個SCK脈衝。圖1展示根據一實施例之一同步序列周邊裝置100之一方塊圖。
一第一解序列化器130接收一序列SDI信號,且將一平行8位元信號轉送至與一N型深接收FIFO 110耦合之一第一多工器120。解序列化器130受控於位元計數器150,該位元計數器150亦控制輸出時脈信號SCK之有限狀態機160。有限狀態機160進一步與位元組計數器140耦 合。一N型深傳輸FIFO 170係與將一8位元平行信號輸出至序列化器190之多工器180耦合,該序列化器190之輸出提供SDO信號。
截斷位元組且完成一資料載入/儲存操作的能力係以8位元每位元組執行,但其需要特別考慮資料控制。特定言之,在維持連續資料時脈(RF傳輸之一要求)時,極難以傳送僅1位元每位元組。位元計數器與有限狀態機及傳輸器與接收器互動,以確保全部處於相同狀態。
此一同步序列周邊裝置在「主控模式」中之操作可係如下。首先,除非如上文論述般僅一單一模式可用,否則同步序列周邊裝置經組態以在兩種操作模式之一者中操作。在一第一傳輸模式中,將一傳輸位元寬度設定為至多8位元之一長度。若使用一FIFO或一傳送緩衝器來接收資料,則各此傳送可觸發一傳輸。在一FIFO之情況中,周邊設備將僅在FIFO中存在一有效資料時傳送。因此,在接收到資料之後,同步序列周邊裝置在一資料線上傳輸資料,且在一時脈線上傳輸一相關聯時脈信號,其中在資料線上傳輸可少於8位元之一位元數目,且在時脈線上傳輸相關聯數目個時脈脈衝。
此一同步序列周邊裝置在「從屬模式」中之操作可係如下。首先,除非如上文論述般僅一單一模式可用,否則同步序列周邊裝置經組態以在兩種操作模式之一者中操作。在一第一傳輸模式中,將一傳輸位元寬度設定為至多8位元之一長度。假若FIFO中存在資料,則周邊設備將僅在一旦其接收到來自主控器之時脈時傳送。因此,在接收到來自主控器之時脈之後,同步序列周邊裝置在一資料線上傳輸資料,其中在資料線上傳輸可少於8位元之一位元數目。
在第二傳輸模式中,首先將數個8位元字組及長度少於8位元之一位元寬度程式化至一或多個各自特殊功能暫存器中。接著,將資料移至傳輸FIFO記憶體中,此取決於傳輸之總位元長度可能需要複數個資料傳送。因此,在此操作模式中,同步序列周邊裝置傳輸來自傳 輸FIFO記憶體之複數個8位元字組,其後接著具有可定義為少於八(8)位元之一資料長度之一單一資料傳輸字組。根據一項實施例,一旦FIFO中已接收到足夠資料,傳送便可自動開始。根據另一實施例,可由一使用者設定之一組態暫存器中之一單一位元來判定傳送之起始。
SPI在多個裝置之間序列地傳送資料。圖2展示具有一主控器210及複數個從屬器220、230之一典型配置200。如圖3之時序圖中所示,在一特定SCK邊緣上改變序列輸出資料且在下一SCK邊緣上取樣資料。習知SPI系統逐字組傳送資料,其中字組大小=資料匯流排寬度(8位元MCU=>8位元SPI位元組)。一些系統亦提供16位元之一資料傳送寬度。
根據一實施例,可實施一封包大小選項,此提供當前在習知SPI介面中不可用之一特徵。
如圖4中所示,根據一特定可程式化操作模式,SPI周邊設備具有一位元組傳送模式,其中各傳送涉及發送/接收一個位元組。各位元組之大小可介於1位元至8位元之間。一各自特殊功能暫存器(SFR)控制此功能:此暫存器可例如由一單一位元BMODE程式化,其中BMODE=1之一設定用於一位元組模式,且此或另一特殊功能暫存器中之複數個位元(BITS)針對位元組大小定義位元數目。如圖4中所示之實例:控制暫存器具有BMODE=1、BITS=3之一設定。在此模式中,僅3個位元(即最高有效位元7、6及5)由各寫入傳送至緩衝傳送暫存器中。
如圖5中所示,根據特定可程式化操作模式,SPI周邊設備亦可具有一封包傳送模式。封包大小可介於9位元至16391位元之間。然而,如上文所述,取決於實施方案可應用其它大小。數個特殊功能暫存器(SFR)可用來控制設定。例如,位元BMODE=0用以設定封包模式,位 元BYTES用以設定8位元位元組之數目,且位元BITS用以設定最後位元組之大小。此導致一封包大小(以位元數目計)=BYTES*8+BITS。如圖5中所示之實例使用設定BMODE=0、BYTES=1及BITS=3,此導致一11位元操作模式。
如圖6中所示,例如,一微晶片電路內序列程式化(ICSP)需要發送一6位元命令其後接著一16位元有效負載。可使用BMODE=1、BITS=6發送第一位元組且可使用BMODE=1、BITS=0發送下兩個位元組。或者,此可使用具有BMODE=0、BYTES=2、BITS=6(封包大小=22位元)之封包模式達成。此使某些微控制器能夠用於微晶片PIC程式化,此需要傳送可變位元長度字組。
需要傳送奇數個位元之無線應用程式可受益於新穎封包模式。例如,Keeloq®應用程式可具有介於66位元至192位元之間之一資料大小。如上文提及,先前此等應用程式將必須使用位元衝擊來發送確切長度之封包以藉由在無任何零填補額外耗用之情況下關閉收發器而節省電力。與藉由位元衝擊方法所達成之時序準確度相比,新穎封包模式可有助於達成更高時序準確度。又,無縫資料傳送支援可改良匯流排利用率且進一步最佳化電力消耗。
如圖7中所示,根據一實施例之新穎SPI模組可容易用於要求對各資料位元之一PWM/曼徹斯特編碼之應用程式。例如,某些LED裝置使用以下PWM編碼來表示一個資料位元。可調整鮑率、位元數目及資料以達成所需調變型樣。
圖10展示根據各種實施例之一SPI模組於一單晶片微控制器1000中之一整合之一實例。微控制器1000包括一中央處理單元1010,其與一程式快閃記憶體1020及一資料隨機存取記憶體1030耦合而實施一哈佛架構(Harvard architecture)。然而,根據其它實施例,亦可使用其它架構。一內部系統匯流排1090將CPU 1010與複數個周邊裝置1040a 至1040n耦合。周邊裝置之一者1050係根據如上文所述之各種實施例之一SPI模組。其可具有複數個組態暫存器1060、1070,該複數個組態暫存器1060、1070係微控制器1000之特殊功能暫存器且可記憶體映射至資料記憶體1030。微控制器1000可具有在一預設設定下操作為數位或類比I/O埠1080之複數個外部接腳。一些此等接腳1080可組態以如圖10中所示般指派給SPI模組。例如,一個接腳CLK可經指派以傳輸或接收一時脈信號,一個接腳SDI可用作一序列資料輸入接腳,一個接腳SDO可用作一序列資料輸出接腳,且一個接腳#SS可用作從屬選擇或訊框同步接腳。當啟動SPI周邊設備1050時,可使用至少接腳CLK及SDI或SDO。另外,特定言之若一個以上從屬單元經由相同匯流排通信,則可使用一CS接腳。通常,取決於應用程式,一主控器可需要複數個此等接腳,且因此此等接腳係簡單I/O埠接腳且將由軟體手動設定。然而,一SPI介面模組1050之一些實施例可自動控制一或多個此等接腳。
100‧‧‧同步序列周邊裝置
110‧‧‧N型深接收FIFO
120‧‧‧第一多工器
130‧‧‧第一解序列化器
140‧‧‧位元組計數器
150‧‧‧位元計數器
160‧‧‧有限狀態機
170‧‧‧N型深傳輸FIFO
180‧‧‧多工器
190‧‧‧序列化器

Claims (24)

  1. 一種同步序列周邊裝置包括:一傳輸單元,其係與一資料輸出線耦合;及一時脈單元,其係與一時脈線耦合,其中該序列周邊裝置傳輸至少一單一傳輸,其中在一第一操作模式中,該傳輸單元及該時脈單元係可組態以執行具有可被定義為介於一(1)位元與八(8)位元之間之一資料長度之一資料傳輸。
  2. 如請求項1之同步序列周邊裝置,進一步包括經與該傳輸單元耦合之一FIFO記憶體,其中該周邊裝置係進一步可組態以在一第二操作模式中操作,在該第二操作模式中,一傳輸由包括來自該FIFO記憶體之複數個8位元字組之一傳輸訊框其後接著來自該FIFO記憶體之具有可定義為少於八(8)位元之一資料長度之一單一資料傳輸字組組成。
  3. 如請求項2之同步序列周邊裝置,其中一組態暫存器中之一單一位元判定該第一或第二操作模式是否在作用中。
  4. 如請求項1之同步序列周邊裝置,進一步包括與一資料輸入線耦合之一接收單元,其中該序列周邊裝置經組態以接收一可變位元長度單一序列傳輸,其中在該第一操作模式中,該接收單元係可組態以接收具有該定義資料長度之一資料傳輸。
  5. 如請求項1之同步序列周邊裝置,其中在該第一操作模式中,一組態暫存器中之複數個位元判定該資料長度。
  6. 如請求項2之同步序列周邊裝置,其中在該第二操作模式中,第一數目個特殊功能暫存器位元判定連續8位元字組之一數目,且在已傳輸該等連續8位元字組之後,第二數目個特殊功能暫存器位元判定該單一資料傳輸字組之位元數目。
  7. 如請求項1之同步序列周邊裝置,其中在該第一操作模式中,第 一數目個特殊功能暫存器位元判定該資料長度,且在該第二操作模式中,第二數目個特殊功能暫存器位元判定連續8位元字組之一數目,且該第一數目個特殊功能暫存器位元判定該單一資料傳輸字組之該位元數目。
  8. 如請求項7之同步序列周邊裝置,其中一單一特殊功能暫存器包括該等第一及第二數目個特殊功能暫存器位元。
  9. 如請求項1之同步序列周邊裝置,進一步包括控制該時脈線上傳輸之一時脈信號之一有限狀態機。
  10. 如請求項9之同步序列周邊裝置,進一步包括控制該有限狀態機之一位元組計數器及一位元計數器。
  11. 如請求項9之同步序列周邊裝置,其中該位元計數器控制該傳輸單元。
  12. 如請求項1之同步序列周邊裝置,其中藉由調整鮑率、該位元數目及該資料來仿真對各資料位元之一PWM/曼徹斯特編碼以達成所需調變型樣。
  13. 如請求項1之同步序列周邊裝置,進一步包括一從屬控制輸入。
  14. 如請求項1之同步序列周邊裝置,進一步包括各別資料輸入線及資料輸出線。
  15. 一種微控制器包括如請求項1之一同步序列周邊裝置。
  16. 一種操作一同步序列周邊裝置之方法,該方法包括以下步驟:組態該同步序列周邊裝置,以在一第一傳輸模式中操作;將一傳輸位元寬度設定為少於8位元之長度;將資料移至一傳送緩衝器中;其中在主控模式中,於接收到該資料之後,該同步序列周邊裝置在一資料線上傳輸資料,且在一時脈線上傳輸一相關聯時脈信號,其中在該資料線上傳輸少於8位元之一位元數目,且在 該時脈線上傳輸少於8個時脈脈衝之一數目。
  17. 如請求項16之方法,其中在從屬模式中,於一時脈線上接收到來自該主控器之時脈信號之後,該同步周邊裝置在一資料線上傳輸資料。
  18. 如請求項16之方法,進一步包括以下步驟:組態該同步序列周邊裝置,以在一第二傳輸模式中操作;設定8位元字組之一數目,且將一位元寬度設定為少於8位元之長度;將資料移至一傳輸FIFO記憶體中;其中在接收到一觸發之後,該同步序列周邊裝置傳輸來自該傳輸FIFO記憶體之複數個8位元字組,其後接著具有可定義為少於八(8)位元之一資料長度之一單一資料傳輸字組。
  19. 如請求項18之方法,其中一組態暫存器中之一單一位元判定該第一或第二操作模式是否在作用中。
  20. 如請求項18之方法,其中在一控制暫存器中設定一位元產生該觸發。
  21. 如請求項18之方法,進一步包括:當在該第一操作模式中時,接收具有該傳輸位元寬度之一資料字組,及當在該第二操作模式中時,接收該數個8位元字組及具有少於八位元之一長度之一最後字組,其中將各經接收字組傳送至一接收FIFO記憶體中。
  22. 如請求項18之方法,其中在該第一操作模式中,一組態暫存器中之複數個位元判定該資料長度。
  23. 如請求項21之方法,其中在該第一操作模式中,第一數目個特殊功能暫存器位元判定該資料長度,且在該第二操作模式中, 第二數目個特殊功能暫存器位元判定連續8位元字組之一數目,且該第一數目個特殊功能暫存器位元判定該單一資料傳輸字組之位元數目。
  24. 如請求項16之方法,其中藉由調整鮑率、該位元數目及該資料來仿真對各資料位元之一PWM/曼徹斯特編碼以達成所需調變型樣。
TW105122466A 2015-07-15 2016-07-15 具有少於八位元之位元組及可變封包大小之序列周邊介面 TW201717033A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201562192773P 2015-07-15 2015-07-15
US15/209,467 US20170017584A1 (en) 2015-07-15 2016-07-13 SPI Interface With Less-Than-8-Bit Bytes And Variable Packet Size

Publications (1)

Publication Number Publication Date
TW201717033A true TW201717033A (zh) 2017-05-16

Family

ID=56550385

Family Applications (1)

Application Number Title Priority Date Filing Date
TW105122466A TW201717033A (zh) 2015-07-15 2016-07-15 具有少於八位元之位元組及可變封包大小之序列周邊介面

Country Status (6)

Country Link
US (1) US20170017584A1 (zh)
EP (1) EP3323051B1 (zh)
KR (1) KR20180030511A (zh)
CN (1) CN107710184B (zh)
TW (1) TW201717033A (zh)
WO (1) WO2017011621A1 (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2539445A (en) * 2015-06-16 2016-12-21 Nordic Semiconductor Asa Data processing
US10490238B2 (en) * 2017-06-29 2019-11-26 SK Hynix Inc. Serializer and memory device including the same
IT201800002767A1 (it) * 2018-02-16 2019-08-16 St Microelectronics Srl Circuito per il pilotaggio di led, dispositivo e procedimento corrispondenti
CN110471865B (zh) * 2019-08-15 2021-04-02 绵阳市维博电子有限责任公司 一种模拟spi通信实现控制器与驱动器通信的方法
CN111625487B (zh) * 2020-04-17 2024-05-31 惠州市德赛西威汽车电子股份有限公司 一种spi通信系统及其通信方法
CN113204507A (zh) * 2021-04-25 2021-08-03 山东英信计算机技术有限公司 一种通用输入输出数据传输方法、装置、设备及介质
CN114036088A (zh) * 2021-11-16 2022-02-11 深圳市创成微电子有限公司 一种dsp数据存储控制架构和方法
TWI818834B (zh) * 2022-12-16 2023-10-11 新唐科技股份有限公司 微控制器及應用其之序列周邊介面系統

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4809232A (en) * 1986-12-16 1989-02-28 The United States Of America As Represented By The United States Department Of Energy High speed, very large (8 megabyte) first in/first out buffer memory (FIFO)
DE69031023T2 (de) * 1989-10-20 1997-10-30 Sony Corp Anordnung zum Aufzeichnen eines Videosignals mit hoher Auflösung
US6324120B2 (en) * 1990-04-18 2001-11-27 Rambus Inc. Memory device having a variable data output length
US5673396A (en) * 1994-12-16 1997-09-30 Motorola, Inc. Adjustable depth/width FIFO buffer for variable width data transfers
US6279052B1 (en) * 1998-01-13 2001-08-21 Intel Corporation Dynamic sizing of FIFOs and packets in high speed serial bus applications
FR2775091B1 (fr) * 1998-02-16 2000-04-28 Matra Communication Procede de transfert de donnees en serie, et interface de bus serie synchrone mettant en oeuvre un tel procede
US6169501B1 (en) * 1998-09-23 2001-01-02 National Instruments Corp. Adjustable serial-to-parallel or parallel-to-serial converter
EP1658976B1 (en) * 1999-10-04 2007-03-21 Seiko Epson Corporation Ink jet recording apparatus, semiconductor device, and recording head apparatus
US6577649B1 (en) * 1999-11-12 2003-06-10 International Business Machines Corporation Multiplexer for asynchronous data
BR0107142A (pt) * 2000-08-25 2002-07-02 Koninkl Philips Electronics Nv Métodos para redução do número de bits de um sinal de entrada digital, e para recuperar um sinal de saìda de um sinal de comprimento de palavra reduzido, e, aparelhos de processamento de sinal, e para decodificação de sinal
US6959316B2 (en) * 2001-02-01 2005-10-25 Nokia Mobile Phones Limited Dynamically configurable processor
US7220908B2 (en) * 2002-09-12 2007-05-22 Yamaha Corporation Waveform processing apparatus with versatile data bus
US7379467B1 (en) * 2003-05-08 2008-05-27 Cypress Semiconductor Corporation Scheduling store-forwarding of back-to-back multi-channel packet fragments
US7315549B2 (en) * 2003-07-24 2008-01-01 Intel Corporation Formatting data for a buffer
JP4356984B2 (ja) * 2004-02-24 2009-11-04 株式会社デンソー 車載センサデータ伝送装置
CN100531221C (zh) * 2004-07-27 2009-08-19 邓里文 一种用于因特网与准同步数字体系融合的适配方法
US7430624B2 (en) * 2005-10-04 2008-09-30 International Business Machines Corporation High speed on-chip serial link apparatus and method
US20080005434A1 (en) * 2006-06-02 2008-01-03 Macronix International Co., Ltd. Method and Apparatus for Communicating Data Over Multiple Pins of A Multi-Mode Bus
JP5108261B2 (ja) * 2006-07-11 2012-12-26 株式会社リコー 情報処理装置およびデータ通信装置
TW200839530A (en) * 2007-03-20 2008-10-01 Via Tech Inc Dynamic switching between multiplexed interfaces LPC and SPI
US7984177B2 (en) * 2007-04-30 2011-07-19 Vixs Systems, Inc. Multimedia client/server system with adjustable packet size and methods for use therewith
US8060681B2 (en) * 2007-11-27 2011-11-15 Microsoft Corporation Interface protocol and API for a wireless transceiver
US20090310489A1 (en) * 2008-06-17 2009-12-17 Bennett Andrew M Methods and apparatus using a serial data interface to transmit/receive data corresponding to each of a plurality of logical data streams
US9250299B1 (en) * 2009-08-28 2016-02-02 Cypress Semiconductor Corporation Universal industrial analog input interface
US8135881B1 (en) * 2010-09-27 2012-03-13 Skyworks Solutions, Inc. Dynamically configurable serial data communication interface
US8631265B2 (en) * 2010-12-13 2014-01-14 Oracle International Corporation Synchronization circuit that facilitates multiple parallel reads and writes
CN103324597B (zh) * 2012-03-23 2016-06-01 美国亚德诺半导体公司 在高速串行数字接口的通道之间平衡歪斜失真的方案
US8824535B2 (en) * 2012-05-22 2014-09-02 Blackberry Limited System and method for transmitting data through a digital interface
US9658971B2 (en) * 2013-09-11 2017-05-23 Nxp Usa, Inc. Universal SPI (serial peripheral interface)
CN103701663A (zh) * 2013-12-25 2014-04-02 北京航天测控技术有限公司 一种1553b总线程控故障注入装置
US9780938B2 (en) * 2015-06-25 2017-10-03 Intel IP Corporation Patch download with improved acknowledge mechanism

Also Published As

Publication number Publication date
CN107710184A (zh) 2018-02-16
EP3323051A1 (en) 2018-05-23
US20170017584A1 (en) 2017-01-19
WO2017011621A1 (en) 2017-01-19
EP3323051B1 (en) 2023-03-29
KR20180030511A (ko) 2018-03-23
CN107710184B (zh) 2021-12-03

Similar Documents

Publication Publication Date Title
TW201717033A (zh) 具有少於八位元之位元組及可變封包大小之序列周邊介面
US11954055B2 (en) Mapping high-speed, point-to-point interface channels to packet virtual channels
EP2791810B1 (en) System and method of sending data via a plurality of data lines on a bus
CN107015927B (zh) 一种基于SoC支持多个SPI接口标准组的装置
US9842071B2 (en) Multi-channel I2S transmit control system and method
US20200076713A1 (en) Slave-to-master data and out-of-sequence acknowledgements on a daisy-chained bus
US11580044B2 (en) Network credit return mechanisms
US10503686B2 (en) SPI interface with automatic slave select generation
US10002090B2 (en) Method for improving the performance of synchronous serial interfaces
US10733121B2 (en) Latency optimized I3C virtual GPIO with configurable operating mode and device skip
US8341313B2 (en) FIFO serial control device, semicondicutor device, and serial data transfer method that indicates inclusion or non-inclusion of end data of serial data
US8284792B2 (en) Buffer minimization in interface controller
KR20130111391A (ko) 프로그래밍 가능 하드웨어를 구성하기 위한 통신 시스템 및 그 방법
WO2022086732A1 (en) Static identifiers for a synchronous interface
CN109213710A (zh) 高速串行接口装置与其数据传输方法
EP2320327A1 (en) A data transferring device
CN107942794A (zh) 一种利用GPIO接口模拟McBSP接口的方法
Slave 2.17. 1.2 Half-Duplex Operation