TWI727269B - 通用序列匯流排裝置及其資料傳輸方法 - Google Patents

通用序列匯流排裝置及其資料傳輸方法 Download PDF

Info

Publication number
TWI727269B
TWI727269B TW108106772A TW108106772A TWI727269B TW I727269 B TWI727269 B TW I727269B TW 108106772 A TW108106772 A TW 108106772A TW 108106772 A TW108106772 A TW 108106772A TW I727269 B TWI727269 B TW I727269B
Authority
TW
Taiwan
Prior art keywords
packet
memory
usb
host
packets
Prior art date
Application number
TW108106772A
Other languages
English (en)
Other versions
TW202032379A (zh
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 瑞昱半導體股份有限公司
Priority to TW108106772A priority Critical patent/TWI727269B/zh
Priority to US16/801,223 priority patent/US11216398B2/en
Priority to CN202010121748.2A priority patent/CN111625486B/zh
Publication of TW202032379A publication Critical patent/TW202032379A/zh
Application granted granted Critical
Publication of TWI727269B publication Critical patent/TWI727269B/zh

Links

Images

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/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/24Handling requests for interconnection or transfer for access to input/output bus using interrupt
    • G06F13/26Handling requests for interconnection or transfer for access to input/output bus using interrupt with priority control
    • 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/4295Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus using an embedded synchronisation
    • 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/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • 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/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/28Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
    • 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
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0042Universal serial bus [USB]

Landscapes

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

Abstract

本發明揭露了USB裝置及其資料傳輸方法,該USB裝置耦接一主機,並傳送至少一封包至該主機。該USB裝置包含一記憶體、一USB控制器以及一傳輸管理電路。該記憶體儲存該些封包。該USB控制器用來將該些封包傳送至該主機。該傳輸管理電路耦接於該記憶體與該USB控制器之間,用來自該記憶體依序讀取該些封包並依序傳輸該些封包至該USB控制器,並執行以下操作:當該記憶體的儲存內容不符合一繼續傳輸封包的條件時,結束資料傳輸;或是當一最後傳輸的封包符合一預設條件且該最後傳輸的封包的一下一個封包不符合該預設條件時,結束資料傳輸。

Description

通用序列匯流排裝置及其資料傳輸方法
本發明是關於通用序列匯流排(Universal Serial Bus, USB),尤其是關於通用序列匯流排裝置及其資料傳輸方法。
在通用序列匯流排的實作中,通常採用聚集(aggregation)的方式來將裝置(device)中的資料經由USB傳輸到主機(host),以減少資料搬移的次數,進而降低主機的處理器(例如中央處理器、微控制單元或微控制器等)的負擔並提升單位時間的傳輸量。裝置必須等待主機啟動傳輸才能開始傳輸資料。
圖1顯示根據習知的傳輸制機的一次的USB傳輸(USB transfer)的內容。主機於時間點T0啟動傳輸,裝置開始依序傳輸封包P1、封包P2、封包P3、...,直到累積的傳輸量達到預設資料量Dth(亦即封包P1、P2、P3、…、PN的資料總合大於等於預設資料量Dth)後於時間點Te結束資料傳輸。主機接收完畢封包P1~PN後才對所有N個封包進行處理,換言之,一次的USB傳輸包含封包P1~PN。預設資料量Dth可以略小於主機的系統資源儲存上限。就傳輸的順序而言,封包P2為封包P1的下一個封包,封包P3為封包P2的下一個封包,以此類推。
圖1的機制的缺點在於,幾乎每個封包都有傳輸延遲。舉例來說,封包P3於時間點T3便已傳輸完畢,但主機卻等到時間點Te才處理全部的封包,所以封包P3至少有時間TL3(TL3=Te-T3)的傳輸延遲。當封包P3為時間上較重要(必須盡早傳送至主機)的封包時,這樣的傳輸機制可能會影響使用者體驗,或降低主機的效能。
鑑於先前技術之不足,本發明之一目的在於提供一種USB裝置及USB裝置的資料傳輸方法,以縮短重要封包的傳輸延遲。
本發明揭露一種USB裝置。該USB裝置耦接一主機,並傳送至少一封包至該主機。該USB裝置包含一記憶體、一USB控制器以及一傳輸管理電路。該記憶體儲存該些封包。該USB控制器用來將該些封包傳送至該主機。該傳輸管理電路耦接於該記憶體與該USB控制器之間,用來自該記憶體依序讀取該些封包並依序傳輸該些封包至該USB控制器,並執行以下操作:當該記憶體的儲存內容不符合一繼續傳輸封包的條件時,結束資料傳輸;或是當一最後傳輸的封包符合一預設條件且該最後傳輸的封包的一下一個封包不符合該預設條件時,結束資料傳輸。
本發明另揭露一種資料傳輸方法,應用於一USB裝置,該USB裝置耦接一主機並透過一USB控制器傳送至少一封包至該主機。該資料傳輸方法包含:自一記憶體依序讀取該些封包並依序傳輸該些封包至該USB控制器;以及當該記憶體的儲存內容不符合一繼續傳輸封包的條件時,結束資料傳輸。
本發明另揭露一種資料傳輸方法,應用於一USB裝置,該USB裝置耦接一主機並透過一USB控制器傳送至少一封包至該主機。該資料傳輸方法包含:自一記憶體依序讀取該些封包並依序傳輸該些封包至該USB控制器;以及當一最後傳輸的封包符合一預設條件且該最後傳輸的封包的一下一個封包不符合該預設條件時,結束資料傳輸。
本發明之USB裝置及USB裝置的資料傳輸方法能夠適時地提早結束資料傳輸。相較於傳統技術,本發明可以縮短須及時處理的封包的傳輸延遲,以提升使用者體驗及主機效能。
有關本發明的特徵、實作與功效,茲配合圖式作實施例詳細說明如下。
以下說明內容之技術用語係參照本技術領域之習慣用語,如本說明書對部分用語有加以說明或定義,該部分用語之解釋係以本說明書之說明或定義為準。
本發明之揭露內容包含USB裝置及USB裝置的資料傳輸方法。由於本發明之USB裝置所包含之部分元件單獨而言可能為已知元件,因此在不影響該裝置發明之充分揭露及可實施性的前提下,以下說明對於已知元件的細節將予以節略。此外,本發明之USB裝置的資料傳輸方法的部分或全部流程可以是軟體及/或韌體之形式,並且可藉由本發明之USB裝置或其等效裝置來執行,在不影響該方法發明之充分揭露及可實施性的前提下,以下方法發明之說明將著重於步驟內容而非硬體。
圖2為依據本發明一實施例之電子設備的功能方塊圖。電子設備10(例如是伺服器、桌上型電腦、筆記型電腦、平板電腦、手持裝置等)包含主機100及USB裝置200,主機100及USB裝置200透過USB傳輸媒介300(例如USB傳輸線或是USB介面傳輸電路)傳送資料。在一些實施例中,USB裝置200耦接主機100的USB下行端埠(USB Downstream Port)。主機100包含中央處理器120(central processing unit, CPU)、記憶體140及USB控制器160。主機100利用USB控制器160透過USB傳輸媒介300從USB裝置200接收至少一封包,並且將收到的封包存入記憶體140。USB裝置200以聚集的方式傳送封包給主機100。當USB控制器160得知USB裝置200結束傳輸時(例如收到USB裝置200傳來的短封包(short packet)或等效的資訊),USB控制器160以中斷訊號SI通知中央處理器120已完成一次傳輸,中央處理器120便可從記憶體140讀取封包並且處理該些封包。
USB裝置200包含記憶體220、傳輸管理電路240以及USB控制器260。記憶體220儲存由電子設備10外部傳輸給電子設備10的封包(例如網路封包,則USB裝置200可以是USB網路通訊晶片(Network Interface Controller, NIC))。傳輸管理電路240耦接於記憶體220與USB控制器260之間,用來從記憶體220依序讀取封包並依序傳輸封包至USB控制器260。傳輸管理電路240包含暫存器241、擷取電路242、資料緩衝器244、偵測計算單元246以及狀態資料緩衝器248。傳輸管理電路240可以是一個包含複數個邏輯閘或邏輯電路的動態聚集狀態機(Dynamic Aggregation State Machine),例如以直接記憶體存取引擎(Direct Memory Access, DMA)實作。
圖3為本發明資料傳輸方法之一實施例的流程圖。以下的說明請參閱圖2及圖3。當主機100啟動傳輸時,傳輸管理電路240開始大量傳輸(Bulk-In transfer)操作。首先,擷取電路242從記憶體220讀取封包(步驟S310)。在一些實施例中,記憶體220是先進先出(First In First Out, FIFO)記憶體,擷取電路242依照封包被存入記憶體220的順序依序讀取封包。讀取封包後,擷取電路242將封包存入資料緩衝器244;隨後USB控制器260從資料緩衝器244取得封包,並根據USB的標準封裝封包,再將封包透過USB傳輸媒介300傳輸至主機100(步驟S320)。偵測計算單元246用來計算該次傳輸的傳輸量(transfer size)(亦即從主機100啟動傳輸開始,擷取電路242從記憶體220所讀取的總資料量)(步驟S330),並判斷傳輸量是否大於等於預設資料量Dth(步驟S340)。
偵測計算單元246還偵測記憶體220中目前儲存的封包數及/或封包大小,以及判斷封包是否符合預設條件。在一些實施例中,符合預設條件的封包可以被認定為重要的封包(具有高優先權的封包),其傳輸延遲愈小愈好。此預設條件可以儲存在暫存器241中。在一些實施例中,使用者可以透過主機100上所執行的軟體來設定預設條件。主機100執行USB裝置200的驅動程式來將預設條件透過USB控制器260寫入傳輸管理電路240的暫存器241中。舉例來說,預設條件可以是封包的來源埠號(source port number)是否落於預設範圍內(例如用戶資料報協定(User Datagram Protocol, UDP)的5000~5500)。在一個實施例中,如果封包的來源埠號落於預設範圍內,則該封包被認定為重要的封包。
回到圖3。當步驟S340的判斷為是,擷取電路242會停止從記憶體220讀取封包並放至資料緩衝器244。若USB控制器260傳送的最後一筆USB封包的長度小於USB最大封包長度(可由狀態資料緩衝器248獲得資訊),即可結束該次傳輸(步驟S380);若USB控制器260傳送的最後一筆USB封包的長度剛好為USB最大封包長度,偵測計算單元246會在狀態資料緩衝器248準備一個USB封包長度為0的狀態資料,然後USB控制器260會根據此狀態資料傳送一筆長度為0的USB封包到USB控制器160來結束該次傳輸(步驟S380)。更明確地說,當狀態資料緩衝器248存有狀態資料,USB控制器260根據狀態資料緩衝器248的資料來傳送完資料緩衝器244內的封包,並以最後一筆USB封包為短封包(長度小於USB規格書所規範最大封包長度)以通知主機100傳輸結束。當步驟S340的判斷為否,偵測計算單元246判斷是否繼續傳輸封包(亦即是否繼續聚集封包)(步驟S350)。當步驟S350的判斷為否,傳輸管理電路240立即結束大量傳輸(步驟S380);當步驟S350的判斷為是,則流程進入步驟S360。在一些實施例中,繼續傳輸封包的條件例如是:(1)記憶體220中的封包數大於預設值(例如0個);或(2)記憶體220中的封包大小大於預設值(例如64Byte)。
在步驟S360中,偵測計算單元246判斷最後傳輸的封包是否符合預設條件。當步驟S360的判斷為否,流程回到步驟S310,擷取電路242繼續從記憶體220讀取下一個待傳的封包。當步驟S360的判斷為是,偵測計算單元246判斷下一個待傳的封包(儲存於記憶體220中)是否符合預設條件(步驟S370)。當步驟S370的判斷為是,擷取電路242執行步驟S310,以從記憶體220中讀取該下一個封包。當步驟S370的判斷為否,傳輸管理電路240立即結束傳輸(步驟S380)。
以下以圖4為例來進一步說明步驟S350~S370的機制。圖4顯示本發明的USB資料傳輸制機的一個範例。假設在時間點TN(封包P1~PN已存入資料緩衝器244,但封包P1~PN的資料量總合小於預設資料量Dth)記憶體220的狀態(即儲存內容)符合繼續傳輸封包的條件(步驟S350為是),則偵測計算單元246在步驟S360中判斷最後傳輸的封包(即封包PN)是否符合預設條件。如果封包PN不是重要的封包(亦即封包PN不符合預設條件),則傳輸管理電路240繼續聚集封包(步驟S310)。反之,如果封包PN是重要的封包(亦即封包PN符合預設條件),偵測計算單元246在步驟S370中從記憶體220讀取封包PN的下一個封包(尚未傳輸,亦即尚未存入資料緩衝器244),並判斷封包PN的下一個封包是否符合預設條件。如果封包PN的下一個封包不是重要的封包(步驟S370為否),則立即結束傳輸(步驟S380)。反之,如果封包PN的下一個封包是重要的封包(步驟S370為是),則擷取電路242繼續讀取該下一個封包並存入資料緩衝器244(步驟S310)。
由以上的說明可知,本發明的傳輸機制在以下兩種情況可以提早結束資料傳輸:(1)當記憶體220的狀態不符合繼續傳輸封包的條件時(無論最後傳輸的封包PN是否為重要的封包);以及(2)當封包PN為重要的封包且封包PN的下一個封包不是重要的封包時。在這兩種情況中,封包P1~PN皆可以提早被中央處理器120處理,也就是說封包P1~PN皆可以減少時間TLN=Te-TN的傳輸延遲(N=1, 2, …)。換句話說,本發明的資料傳輸方法可以減少重要的封包的傳輸延遲,使重要的封包能夠盡早被處理。
由於本技術領域具有通常知識者可藉由本案之裝置發明的揭露內容來瞭解本案之方法發明的實施細節與變化,因此,為避免贅文,在不影響該方法發明之揭露要求及可實施性的前提下,重複之說明在此予以節略。請注意,前揭圖示中,元件之形狀、尺寸、比例以及步驟之順序等僅為示意,係供本技術領域具有通常知識者瞭解本發明之用,非用以限制本發明。
雖然本發明之實施例如上所述,然而該些實施例並非用來限定本發明,本技術領域具有通常知識者可依據本發明之明示或隱含之內容對本發明之技術特徵施以變化,凡此種種變化均可能屬於本發明所尋求之專利保護範疇,換言之,本發明之專利保護範圍須視本說明書之申請專利範圍所界定者為準。
P1、P2、P3、PN:封包10:電子設備100:主機120:中央處理器140、220:記憶體160、260:USB控制器200:USB裝置240:傳輸管理電路241:暫存器242:擷取電路244:資料緩衝器246:偵測計算單元248:狀態資料緩衝器300:USB傳輸媒介SI:中斷訊號S310~S380:步驟
[圖1]顯示根據習知的傳輸制機的一次的USB傳輸的內容; [圖2]為依據本發明一實施例之電子設備的功能方塊圖; [圖3]為為本發明資料傳輸方法之一實施例的流程圖;以及 [圖4]為本發明的USB資料傳輸制機的一個範例。
S310~S380:步驟

Claims (8)

  1. 一種通用序列匯流排(Universal Serial Bus,USB)裝置,耦接一主機,並傳送至少一封包至該主機,該USB裝置包含:一記憶體,用來儲存該至少一封包;一USB控制器,用來將該至少一封包傳送至該主機;以及一傳輸管理電路,耦接於該記憶體與該USB控制器之間,用來自該記憶體依序讀取該至少一封包並依序傳輸該至少一封包至該USB控制器,並執行以下操作:當一第一封包符合一預設條件且一第二封包不符合該預設條件時,結束資料傳輸;其中,該第一封包係已自該記憶體讀出的封包之中的最後一個被讀取的封包,而該第二封包係位於該記憶體中且即將被讀取的封包。
  2. 如申請專利範圍第1項所述之通用序列匯流排裝置,其中該傳輸管理電路更執行以下操作:當該第一封包及該第二封包皆符合該預設條件時,繼續將該第二封包傳送至該USB控制器。
  3. 如申請專利範圍第1項所述之通用序列匯流排裝置,其中當該第一封包的一來源埠號落於一預設範圍,則該第一封包符合該預設條件;當該第二封包的一來源埠號落於該預設範圍,則該第二封包符合該預設條件。
  4. 一種資料傳輸方法,應用於一通用序列匯流排(Universal Serial Bus,USB)裝置,該USB裝置耦接一主機並透過一USB控制器傳送至少一封包至該主機,該方法包含:自一記憶體依序讀取該至少一封包並依序傳輸該至少一封包至該USB控制器;以及當一第一封包符合一預設條件且一第二封包不符合該預設條件時,結束資料傳輸;其中,該第一封包係已自該記憶體讀出的封包之中的最後一個被讀取的封包,而該第二封包係位於該記憶體中且即將被讀取的封包。
  5. 如申請專利範圍第4項所述之方法,更包含:當該第一封包及該第二封包皆符合該預設條件時,繼續將該第二封包傳送至該USB控制器。
  6. 如申請專利範圍第4項所述之方法,其中當該第一封包的一來源埠號落於一預設範圍,則該第一封包符合該預設條件;當該第二封包的一來源埠號落於該預設範圍,則該第二封包符合該預設條件。
  7. 一種通用序列匯流排(Universal Serial Bus,USB)裝置,耦接一主機,並傳送至少一封包至該主機,該USB裝置包含:一記憶體,用來儲存該至少一封包;一USB控制器,用來將該至少一封包傳送至該主機;以及一傳輸管理電路,耦接於該記憶體與該USB控制器之間,用來 自該記憶體依序讀取該至少一封包並依序傳輸該至少一封包至該USB控制器,並執行以下操作:當一第一封包及一第二封包皆符合一預設條件時,繼續將該第二封包傳送至該USB控制器;其中,該第一封包係已自該記憶體讀出的封包之中的最後一個被讀取的封包,而該第二封包係位於該記憶體中且即將被讀取的封包。
  8. 如申請專利範圍第7項所述之通用序列匯流排裝置,其中當該第一封包的一來源埠號落於一預設範圍,則該第一封包符合該預設條件;當該第二封包的一來源埠號落於該預設範圍,則該第二封包符合該預設條件。
TW108106772A 2019-02-27 2019-02-27 通用序列匯流排裝置及其資料傳輸方法 TWI727269B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
TW108106772A TWI727269B (zh) 2019-02-27 2019-02-27 通用序列匯流排裝置及其資料傳輸方法
US16/801,223 US11216398B2 (en) 2019-02-27 2020-02-26 USB device and data transfer method thereof
CN202010121748.2A CN111625486B (zh) 2019-02-27 2020-02-26 通用串行总线装置及其数据传输方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW108106772A TWI727269B (zh) 2019-02-27 2019-02-27 通用序列匯流排裝置及其資料傳輸方法

Publications (2)

Publication Number Publication Date
TW202032379A TW202032379A (zh) 2020-09-01
TWI727269B true TWI727269B (zh) 2021-05-11

Family

ID=72140301

Family Applications (1)

Application Number Title Priority Date Filing Date
TW108106772A TWI727269B (zh) 2019-02-27 2019-02-27 通用序列匯流排裝置及其資料傳輸方法

Country Status (3)

Country Link
US (1) US11216398B2 (zh)
CN (1) CN111625486B (zh)
TW (1) TWI727269B (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW201337573A (zh) * 2012-03-05 2013-09-16 Asmedia Technology Inc 管線排程的控制方法及其控制模組
TW201351159A (zh) * 2012-06-08 2013-12-16 Prolific Technology Inc 可動態設定傳輸組態的傳輸系統及其控制方法
TW201435597A (zh) * 2013-03-06 2014-09-16 Realtek Semiconductor Corp 應用於通用序列匯流排系統的資料傳輸電路及相關的資料傳輸方法
TW201830261A (zh) * 2017-02-02 2018-08-16 慧榮科技股份有限公司 資料儲存裝置以及其操作方法

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2282474B (en) * 1993-09-30 1998-02-25 Intel Corp Buffer memory management for a computer network node
JP3874211B2 (ja) * 1996-10-31 2007-01-31 ソニー株式会社 情報記録方法及びその装置
JP2004021613A (ja) * 2002-06-17 2004-01-22 Seiko Epson Corp データ転送制御装置、電子機器及びデータ転送制御方法
KR100560645B1 (ko) * 2002-12-17 2006-03-16 삼성전자주식회사 메모리 사용 정보를 표시하는 유에스비 플래시 메모리 장치
DE10355583A1 (de) * 2003-11-28 2005-07-07 Advanced Micro Devices, Inc., Sunnyvale Gemeinsame Nutzung eines Speichers in einer Zentralsteuerung
US8032674B2 (en) * 2004-07-19 2011-10-04 Marvell International Ltd. System and method for controlling buffer memory overflow and underflow conditions in storage controllers
CN100536384C (zh) * 2005-10-14 2009-09-02 威盛电子股份有限公司 串行收发器及其控制方法
CA2749826A1 (en) * 2009-01-16 2010-07-22 Mainline Net Holdings Limited Maximizing bandwidth utilization in networks with high latencies and packet drops using transmission control protocol
CN101887403B (zh) * 2010-06-25 2012-06-27 钰创科技股份有限公司 节省usb协议中存封包的存储器的数据传输方法及装置
EP2876965B1 (en) 2012-07-18 2023-09-06 Huawei Technologies Co., Ltd. Data connection management method, device and system

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW201337573A (zh) * 2012-03-05 2013-09-16 Asmedia Technology Inc 管線排程的控制方法及其控制模組
TW201351159A (zh) * 2012-06-08 2013-12-16 Prolific Technology Inc 可動態設定傳輸組態的傳輸系統及其控制方法
TW201435597A (zh) * 2013-03-06 2014-09-16 Realtek Semiconductor Corp 應用於通用序列匯流排系統的資料傳輸電路及相關的資料傳輸方法
TW201830261A (zh) * 2017-02-02 2018-08-16 慧榮科技股份有限公司 資料儲存裝置以及其操作方法

Also Published As

Publication number Publication date
CN111625486B (zh) 2022-09-23
TW202032379A (zh) 2020-09-01
US11216398B2 (en) 2022-01-04
US20200272587A1 (en) 2020-08-27
CN111625486A (zh) 2020-09-04

Similar Documents

Publication Publication Date Title
US7340548B2 (en) On-chip bus
US11695669B2 (en) Network interface device
JP5663037B2 (ja) 映像および音声用デジタル相互インターフェース(DiiVA)上のマルチメディアUSBデータ転送
JP4988859B2 (ja) エンハンスドワイヤレスusbプロトコル及びハブ
US9176911B2 (en) Explicit flow control for implicit memory registration
US6421746B1 (en) Method of data and interrupt posting for computer devices
US8402180B2 (en) Autonomous multi-packet transfer for universal serial bus
US9311268B1 (en) Method and system for communication with peripheral devices
CN113297112B (zh) PCIe总线的数据传输方法、系统及电子设备
JP2008502976A (ja) 分割トランザクションを処理するためのバス・コントローラ
US20080235484A1 (en) Method and System for Host Memory Alignment
TWI727269B (zh) 通用序列匯流排裝置及其資料傳輸方法
JP2008502977A (ja) バス・コントローラのための割り込み方式
US8842547B2 (en) Communication control apparatus and control method
US20040139386A1 (en) Data exchange unit
US6298409B1 (en) System for data and interrupt posting for computer devices
US20130326097A1 (en) Semiconductor device
JP5587530B2 (ja) エンジン・プロセッサ連携システム及び連携方法
US20170242821A1 (en) Acknowledgement-less canary-based completion protocol