TWI442733B - 通訊裝置及系統 - Google Patents
通訊裝置及系統 Download PDFInfo
- Publication number
- TWI442733B TWI442733B TW100103945A TW100103945A TWI442733B TW I442733 B TWI442733 B TW I442733B TW 100103945 A TW100103945 A TW 100103945A TW 100103945 A TW100103945 A TW 100103945A TW I442733 B TWI442733 B TW I442733B
- Authority
- TW
- Taiwan
- Prior art keywords
- frame
- value
- error
- confirmation
- indicator
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/40—Support for services or applications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
- H04L1/1607—Details of the supervisory signal
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L2001/0092—Error control systems characterised by the topology of the transmission link
- H04L2001/0096—Channel splitting in point-to-point links
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L2001/125—Arrangements for preventing errors in the return channel
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Communication Control (AREA)
- Detection And Prevention Of Errors In Transmission (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Description
本發明係一種通訊裝置及系統,特別有關一種在通訊鏈路、錯誤檢查及處理方面進行改進的通訊裝置及系統。
以基於串列/解串列器(SerDes)互相連結的通訊鏈路實現的系統通常不僅需要能夠串列(serialize)及解串列(deserialize)在串列及並列資料格式間轉換之資料的電路,而且必須確保資料在有耗損之通道上傳輸的正確性。具體來說,在有耗損的通道上,可能因內部的符號通訊介面、時脈顫動及電源供應器的噪聲等,造成在有限機率下遺失資料中某些位元。
在此系統中,確保訊框資料可靠地傳輸是由資料鏈路層(data link layer)來負責。然而,在許多習知的系統中,某些與資料傳輸可靠性有關的功能或操作可能需要花費相當大的代價才能實現。這些必須付出很大代價而實現的系統可能起因於通過多個交換器(switches)的多個終端的定址、被過度簽署(over-subscribed)之交換器丟失之封包及共同模式噪聲(common mode noise)所導致之丟失的封包等。雖然這些系統無可避免必須付出這樣的代價,但是其實施的方式可能導致鏈路之頻寬效率降低,特別是在傳輸較小的有效載荷的時候。因此,這些習知的系統為了維持頻寬的效率,可能採用傳輸較大的有效載荷的方式來攤平上述高代價之實施方式所導致的不利影響。然而,這對於大部份用來傳輸較小的有效載荷的系統來說,可能無法接收效率低落及上述高代價之實施方式所帶來的額外成本。
本發明揭露了各種包含通訊介面的裝置實施例,於一實施例中,通訊裝置包含一接收單元,其用以經由一第一通訊路徑接收來自一第二裝置中的一發送單元傳來之訊框的資料。該通訊裝置並包含一錯誤檢查單元,其用以檢查經由該第一通訊路徑所接收之訊框的資料是否出現資料錯誤。而且,該通訊裝置包含一確認指示產生單元,其用以維護一確認指示符,該確認指示符指出經由該第一通訊路徑由該通訊裝置所接收之訊框是否為無錯誤之訊框。為了回應該錯誤檢查單元檢查到有錯誤,該確認指示產生單元藉由凍結該確認指示符之數值以指出有錯誤之訊框於該第一通訊路徑上傳輸之狀況。並且,在該通訊裝置經由該第一通訊路徑接收訊框時,該通訊裝置同時經由一第二通訊路徑依次傳送該確認指示符之數值到該第二裝置,而該確認指示符之數值包含至少一個數值其指出至少一無錯誤之訊框已被該通訊裝置所接收。
於一特定的實施方式中,該確認指示符包含一計數數值,其指出自初始化以來有多少數目的無錯誤訊框被該通訊裝置所接收。此外,凍結該確認指示符之數值係會使得至少連續兩個相同的計數數值被傳送。
於另一特定的實施方式中,該確認指示符僅包含單一位元。在此實施方式中,針對每個接收到的且該錯誤檢查單元檢查沒有發現錯誤的訊框,該確認指示產生單元對每個已接收到的無錯誤訊框切換(toggle)其確認指示符之狀態。並且,凍結該確認指示符之數值係會使得至少連續兩個相同的該確認指示符之數值被傳送到該第二裝置。
於另一實施例中,通訊裝置包含一發送單元,其用以經由一第一通訊路徑發送訊框之資料到一第二裝置的接受器。該通訊裝置並包含一接收單元,其用以在該發送單元經由該第一通訊路徑發送訊框之時,經由一第二通訊路徑依次地接收來自該第二裝置的一確認指示符之數值,該確認指示符之數值包含至少一個數值其指出至少一無錯誤之訊框已被該第二裝置的接收器所接收。該確認指示符之數值用以指出該第二裝置經由該第一通訊路徑接收到的是否為無錯誤的訊框。並且,該通訊裝置包含一錯誤處理單元,其用以在偵測出該通訊裝置之該接收單元從該第二裝置接收到凍結的確認指示符的數值之時,判定有錯誤的情況存在。
於一特定的實施方式中,該錯誤處理單元並用以在偵測出至少連續兩個相同的確認指示符之數值時,判定有錯誤的情況存在。
各種實施例將於後文配合圖式來詳細例示說明,然而應當明瞭的是圖式及其詳細說明並非為了將本發明限定於某些特定的實施例,即便針對某個特定的特徵只有描述於一個實施例中。相反地,本領域具有通常知識者受益於本揭露,能夠輕易地做出各種修飾、均等物及變體,此亦是本發明意欲涵蓋的部份。除非特別說明,本揭露針對技術特徵所舉的例子係為清楚說明而已,而非用以限縮本發明。
本揭露所使用的用語中,所用的字詞「可」及「可能」係有許可的涵義(亦即,有可能如何),而不是命令式的涵義(亦即,必須)。類似地,所用的字詞「包含」及「包括」係為開放式的用語,意指含有某些項目,但不限於此。
許多通訊鏈路(communication links)採用可靠且精確的資料確認應答機制,這些習知系統係假定長時間於通道中傳輸經常會發生傳輸錯誤,因此系統需要精確地對每個收到的訊框進行確認,任何未在一段適當時間內完成確認的訊框會再被重新傳送。將通訊頻寬之效率最佳化所需付出的代價是提高控制上的複雜度以及分配給確認應答之資訊流較高的頻寬,這些方案需要更為複雜的系統、傳輸命令佇列及複雜的通訊協定,許多實際例子中這類型的系統係以軟體驅動程式或嵌入式控制器內的微碼來實現。在傳輸命令佇列之方式中,當訊框丟失時,不僅需要在發送端產生一個重新發送的佇列,而且需要在接收端產生一個停止傳輸所有訊框的佇列,直到重新獲得所丟失的訊框,如此接收端將會增加傳輸延遲時間及複雜的程序。
請參閱第1圖,其係顯示一種具有位於兩裝置間之通訊鏈路的系統的實施例的方塊圖。通訊系統10包含一裝置(如裝置1)經由一串列通訊鏈路16耦接至另一裝置(如裝置2),裝置1包含一通訊介面12A,裝置2包含另一通訊介面12B。一般來說,裝置1及裝置2任一者具體可為任意類型的裝置且可具任何所需的特定功能。另一方面,實施於裝置1及裝置2兩者或其中一者的電路可整合在單一晶片(IC)中或實施於不同的晶片上。於一例示的實施例中,其中一個裝置(如裝置1)可以一記憶體控制器為代表,而另一個裝置(如裝置2)可以一記憶體裝置為代表。
需注意的是,所謂通訊鏈路(如通訊鏈路16)係指兩裝置間用以相互傳遞資訊的物理性連接,其傳輸方式不限於有線傳輸或無線傳輸。例如,在電路板上兩晶片經由一有線通訊鏈路互相連接的實施例中,該通訊鏈路包含電路板上任意數目的傳輸導線。相應地,於第1圖所示的實施例中,通訊鏈路16包含一組單向的通訊路徑(如14A)用以從裝置1到裝置2以串列方式傳遞資訊,以及另一組單向的通訊路徑(如14B)用以從裝置2到裝置1以串列方式傳遞資訊。需注意的是,在其他各式各樣的實施例中,串列通訊鏈路16可能包含任意數目之單向的通訊路徑14A及14B,而在另外的實施例中,通訊鏈路16亦可能包含任意數目之雙向的串列通訊路徑。另一方面,通訊鏈路16也可能同時包含單向的串列通訊路徑及雙向的串列通訊路徑。
如下文配合第3圖的詳細說明中所述,於一實施例,每個通訊介面12包含邏輯元件用來接收從其他裝置內之各個電路傳來的事務(transaction)、根據一特定的資料框格式(如第2圖所示)來將此事務格式化、以及在通訊鏈路16上發送及接收已格式化之資料的訊框。此外,每個通訊介面12並可設計成能夠檢查所接收的訊框是否出現錯誤,且一旦發現錯誤則暫停確認應答。
請參閱第2圖,其係顯示於第1圖之通訊鏈路16上傳輸之資料鏈路層(data link layer,DDL)訊框的實施例的示意圖。訊框200包含一有效載荷(payload)欄位201、一DLL欄位203、一Rx確認應答(Ack)欄位205及一循環冗餘碼(cyclic redundancy code,CRC)欄位207。
於一實施例中,在傳輸運載資料之訊框的過程中,例如,讀取及寫入記憶體資料,亦即將資料載入系統及儲存至記憶體,此有效載荷欄位201內包含一定數目的資料位元。但是,當該訊框為一控制訊框,則有效載荷欄位201會包含有關命令控制的資訊,例如,一或多個控制、指令字元。於一特定實例中,有效載荷欄位201的長度可實施為72位元,但在其它實施例中,也可使用其它不同數目之位元。
DLL欄位203係用來告知接收器該訊框所運載的是資料,如事務層資訊(transaction layer information),抑或是控制資訊,如資料鏈路資訊(data link information)。於一實施例中,DLL欄位203可實施為單一位元,而於其它實施例中,DLL欄位203可為具複數位元的編碼,其用以指示出各種不同類型的資料或各種不同類型的控制訊框。Rx Ack欄位205係用來將一代表肯定確認的指示符回傳給裝置中之發送器,藉由訊框的傳送以告知先前傳送的訊框沒有錯誤存在。於一實施例中,Rx Ack欄位205可實施為單一位元的確認指示符,而於其他實施例中,Rx Ack欄位205可為具複數位元的編碼,其提供計數的數值。CRC欄位207係用來傳送CRC位元以檢查訊框傳輸是否存在錯誤,而CRC位元係從其中一個裝置的發送器傳輸到另一個裝置的接收器。於一特定實例中,CRC欄位207可包含任意數目之位元,其只要足以保護在訊框200中或在一或多個先前之訊框中其餘的位元即可。
請參閱第3圖,其係顯示第1圖中通訊介面12A及12B進一步較為詳細之實施例的示意圖。通訊介面12A包含一發送單元301,發送單元301包含一請求發送(Tx)處理佇列305耦接至一重送佇列310,重送佇列310耦接至一Tx串列/解串列器(SerDes)315、一鏈路控制單元345及一CRC產生器320,CRC產生器320並與Tx串列/解串列器315耦接,Tx串列/解串列器315經由通訊鏈路16中的一條通訊路徑14A耦接至通訊介面12B的Rx串列/解串列器350。需注意的是,在某些實施例中,發送單元301沒有重送佇列310亦能運作。
通訊介面12A並包含一接收單元302,其包含一Rx串列/解串列器330耦接至一錯誤處理單元335,錯誤處理單元335依序耦接至鏈路控制單元345及重送佇列310,錯誤處理單元335並與一前框確認指示儲存器325耦接。
裝置12B的接收單元303包含Rx串列/解串列器350,其耦接至一Rx目標處理佇列365及一CRC錯誤檢查單元355,CRC錯誤檢查單元355並耦接至一Rx確認指示產生單元360,Rx確認指示產生單元360耦接至裝置12B之發送單元304的Tx串列/解串列器370,Tx串列/解串列器370經由經由通訊鏈路16中的一條通訊路徑14B耦接至通訊介面12A的Rx串列/解串列器330。
於一實施例中,請求發送處理佇列305可儲存所接收到的事務,例如,來自裝置1其他部份之電路的事務。在配有重送佇列310的實施例中,將要被傳送的事務可儲存於重送佇列310。每個事務可被格式化成如第2圖所示的訊框格式,並儲存在Tx串列/解串列器315的Tx發送佇列317。於一實施例中,CRC產生器320可根據訊框中其餘位元產生CRC檢查碼並將CRC檢查碼附加至該訊框。於另一實施例中,為提供較強的錯誤檢測,CRC產生器320可根據兩個訊框來產生CRC檢查碼,形成較大的CRC檢查碼,其無法單只填入任一訊框的CRC欄位207,在此實施例中,CRC檢查碼可由兩個訊框一起來傳送。具體而言,CRC檢查碼可根據兩個訊框來產生,而產生的CRC檢查碼再由後續兩個訊框來傳送。因此,針對兩個訊框產生的全部CRC檢查碼會落後於產生該CRC檢查碼的該兩訊框。再於另一實施例中,CRC產生器320可根據前一訊框來產生CRC檢查碼,在此實施例中,CRC產生器320可根據一個訊框中的其餘位元來產生CRC檢查碼並將該CRC檢查碼送到下一訊框的CRC欄位207,因此一個訊框的CRC檢查碼會比該訊框落後一個訊框的長度。
在各種實施例中,CRC檢查碼可附加至Tx發送佇列317中的訊框之前或之後的儲存空間。至於其他邏輯元件,如鏈路控制單元345,其可控制訊框之DLL欄位203中的指示符,其係取決於該訊框是資料訊框或控制訊框。具體來說,於一實施例中,如果該訊框為一資料訊框,則DLL欄位203中的指示符會被清除並被設為邏輯值0;如果該訊框為一控制訊框,例如,內含重新執行(resume)或重新傳送(replay)之指令的訊框,則DLL欄位203中的指示符會被設為邏輯值1。需注意的是,在其他實施例中,DLL欄位203中之指示符的邏輯值設定可能是相反的,以至於如果該訊框為一控制訊框,則DLL欄位203中的指示符會被清除並被設為邏輯值0,反之亦然。
此外,對於每個由通訊介面12A傳送的訊框,通訊介面12B中的邏輯元件都會產生適當的確認指示(容後詳述),通訊介面12A中亦具有邏輯元件(未圖示)與通訊介面12B中的前述邏輯元件相似。
經格式化的訊框透過Tx串列/解串列器315經由通訊路徑14A傳送至Rx串列/解串列器350。CRC錯誤檢查單元355可檢查每個訊框是否出現錯誤。於一實施例中,CRC錯誤檢查單元355藉由根據所接收到的訊框來產生一CRC值,並比較該新產生的CRC值與該訊框內記錄的CRC值,來檢查所接收到的訊框是否有錯誤。如果沒有偵測出錯誤,則每個訊框的有效載荷可被轉發至Rx目標處理佇列365。此外,CRC錯誤檢查單元355可通知Rx確認指示產生單元360是否目前訊框存在錯誤。於一實施例中,如果目前訊框存在錯誤,則CRC錯誤檢查單元355可提供一凍結(freeze)訊號給Rx確認指示產生單元360,以指出錯誤的存在,否則提供一確認(Ack)訊號以指出沒有錯誤存在。但是,在其它實施例中,可能使用單一個錯誤/無錯誤的訊號。相應地,Rx確認指示產生單元360會產生具適當數值之Rx確認指示符並傳送給Tx串列/解串列器370,Tx串列/解串列器370可利用一或多個訊框將該Rx確認指示符傳給通訊介面12A。
具體來說,Rx確認指示產生單元360可維護確認指示符,其用以指出Rx串列/解串列器350所接收到的訊框是否無錯誤。因此,於一實施例中,每當接收到無錯誤存在的訊框且CRC錯誤檢查單元355傳送確認訊號之後,Rx確認指示產生單元360會更新(如增量)一計數數值,其指出自上次通訊鏈路16初始化或重新初始化開始,已接收到多少數目的無錯誤訊框。但是,如果CRC錯誤檢查單元355檢測出錯誤並傳送了凍結訊號,Rx確認指示產生單元360會停止增量該計數數值並提供該停止計數的計數數值給Tx串列/解串列器370,因此在此實施例中,該確認指示符對應的是一個計數數值。於一實施例中,每個訊框中的Rx Ack欄位205僅為一個位元的數值,這樣的話,複數位元的計數數值可利用多個訊框來傳送。例如,如果計數數值為1011b,則Rx確認指示產生單元360可一次提供一個位元的計數數值給Tx串列/解串列器370,其總共使用四個訊框來傳送該計數數值。於一實施例中,Rx確認指示產生單元360可連續提供新的計數數值給Tx串列/解串列器370,而錯誤處理單元335可用來追蹤那些訊框包含有效的確認指示之計數數值。
相應地,停止或凍結計數數值係指停止改變該計數數值的內容,因此當停止或凍結的計數數值依次傳送至Tx串列/解串列器370,接收單元302藉著至少連續兩次見到相同的計數數值而可因而判定檢測到錯誤存在。於一實施例中,在通訊鏈路16進行初始化期間,計數數值可被初始化成一個數值為0的初始值,或其他預定數值的初始值,當接收到無錯誤訊框,該計數數值可因而增量。例如,如果已經接收到11個訊框而在第12個訊框檢測出錯誤,則Rx確認指示產生單元360會停止或凍結計數數值,該計數數值即停在11,並且依次提供該數值為11的計數數值給Tx串列/解串列器370,直到通訊鏈路透過一重新執行的操作再次初始化或訊框再重新被傳送。
於另一實施例中,每個傳送之訊框中的Rx確認指示符可為單一位元,其每次接收到無錯誤訊框都會被進行轉換(toggle)。如此,Rx確認指示產生單元360每次可簡單地將確認指示符作轉換,且在存在錯誤的情況下,Rx確認指示產生單元360可將確認指示符的數值凍結或停在上次轉換的數值。
在上述實施例中,停止或凍結確認指示符係指停止轉換該確認指示符。於一實施例中,在通訊鏈路16進行初始化期間,Rx確認指示符可被初始化成一個數值為0的初始值,或其他預定數值的初始值,當接收到無錯誤訊框,該Rx確認指示符可因而被轉換。如果檢測出錯誤,則Rx確認指示產生單元360會將Rx確認指示符的數值凍結或停在最近一個Rx確認指示符的數值,並依次地提供該凍結之Rx確認指示符的數值給Tx串列/解串列器370,直到通訊鏈路透過一重新執行的操作再次初始化或訊框再重新被傳送。
再於另一實施例中,Rx確認指示符可為單一位元,其只要訊框被檢測為無錯誤的就保持著相同的數值。當檢測出錯誤,則Rx確認指示產生單元360會轉換最近一個Rx確認指示符的數值。相反地,Rx確認指示產生單元360將該Rx確認指示符的數值設為一個不同的值,例如一預定的錯誤值。
Rx串列/解串列器330可將該接收到的訊框中位在Rx Ack欄位205的指示符傳送到錯誤處理單元335。錯誤處理單元335係被設計成可從所收到之連續的Rx確認指示符創建新的Rx確認指示符(如複數個位元的計數數值),並比較該新的Rx確認指示符(如果其有效的話)以及儲存在前框確認指示儲存器325中之先前的Rx確認指示符。當比較完成後,可將該新的Rx確認指示符儲存在前框確認指示儲存器325中,給下次比較使用。
在Rx確認指示符為複數位元之計數數值的實施例中,如果連續兩個Rx確認指示符之計數數值都相同(亦即,凍結的Rx確認指示符),則錯誤處理單元335即可判定有錯誤存在。在Rx確認指示符為轉換位元的實施例中,如果連續兩個訊框中的Rx確認指示符都具有相同的數值(亦即,凍結的Rx確認指示符),則錯誤處理單元335即可判定有錯誤存在。在Rx確認指示符除非有錯誤存在否則保持著相同數值的實施例中,如果任兩個連續訊框之Rx確認指示符的數值不同,或如果Rx確認指示符之數值被設為預定的錯誤值,則錯誤處理單元335即可判定有錯誤存在。
如前所述,基於上述幾個實施例,錯誤處理單元335判定有錯誤存在係依據凍結的Rx確認指示符,或依據是否任兩個連續訊框之Rx確認指示符的數值不同,或依據是否Rx確認指示符之數值被設為預定的錯誤值。但是,接收器可能沒有必要針對所有的訊框都給予可靠的確認應答。具體來說,於一實施例中,接收器不會給予控制訊框(亦即,具有DLL位元的訊框,DLL位元係可指出所在訊框為控制訊框)可靠的確認應答,在此實施例中,Rx串列/解串列器350會偵測控制訊框,並當接收到無錯誤的控制訊框時,通知接收單元303中的Rx確認指示產生單元360不要增量或改變數值(或在有的實施例中不要保持著相同的數值)。如果控制訊框被檢測出有錯誤,這些控制訊框只是會簡單地被丟棄。因此,這使得即使Rx確認指示符未被凍結,裝置12A仍會以為Rx確認指示符被凍結了。
因此,在此實施例中,鏈路控制單元345持續追蹤控制訊框的數目及資料訊框的數目,同時計數這些數目以得知全程延遲(round trip delay),這樣裝置12A就不會不實地檢測出錯誤。於一實施例中,鏈路控制單元345可利用簡單之固定長度的延遲FIFO(未圖示),其匹配於事務傳送計數器及該接收到的Rx確認指示符之間的全程延遲(於鏈路初始化),來產生一糾錯的確認指示數值。於另一實施例中,鏈路控制單元345可利用計數器及邏輯元件來追蹤得知有多少訊框在裝置12A及12B間傳送,以建立該糾錯的確認指示數值。
於一實施例中,鏈路控制單元345可提供糾錯的確認指示數值給錯誤處理單元335,以儲存到前框確認指示儲存器325。於一實施例中,錯誤處理單元335可使用該糾錯的確認指示數值來修正儲存於前框確認指示儲存器325中的數值,或者反之使用該糾錯的確認指示數值而不使用儲存於前框確認指示儲存器325中的數值。
如果檢測到錯誤,則錯誤處理單元335會通知鏈路控制單元345。於一實施例中,鏈路控制單元345可藉由如傳送一或多個控制訊框來致動重新傳送的操作,以告知通訊介面12B之接收端有訊框要被重新傳送,並解凍接收器的相關操作。於一實施例中,鏈路控制單元345可控制DLL欄位203以指出訊框為一控制訊框(如設有DLL位元),並且在該訊框之有效載荷欄位201提供預定的控制資訊。例如,該預定的控制資訊可為一控制字元,其指出後面的訊框為重送的資料訊框。重送佇列310內的事務可被重新格式化成如第2圖所示的訊框格式,CRC檢查碼附加至該要被傳送的格式化的訊框。相應地,接收單元可重置或重新初始化Rx確認指示符,使其成為初始值。
鏈路控制單元345可接著使重送佇列310內相應的事務被重新傳送。於一實施例中,重送佇列310可使用一傳送指示符,其在重送時指出下一個要被重送的事務,並使用一寫入指示符,其指出新的事務要被寫入的下一個位置。重送佇列要夠大使得足以容納裝置間通過Rx確認循環時間的全程延遲。隨著新的事務抵達並被傳送,重送佇列內的項目可能會被覆寫,被覆寫的項目假定已被成功地傳送。當檢測出錯誤,凍結的Rx確認指示之計數數值可用來重置該傳送指示符,將其重置成該Rx計數數值加一,並從那個位置開始重送。
在不使用重送佇列的實施例中,鏈路控制單元345可控制DLL欄位203以指出訊框為一控制訊框(如設有DLL位元),並且在該訊框之有效載荷欄位201提供預定的控制資訊。例如,該預定的控制資訊可為一「重新執行」控制字元,其用以解凍及/或重新初始化通訊介面12B的接收單元。此外,該控制資訊也可為一資料鏈路訊息(data link message),例如裝置狀態的查詢,如閒置、暫停等。
第4A圖顯示第1圖及第3圖中之通訊介面的接收單元302的操作實施例的流程圖。請同時參考第1圖至第3圖以及第4A圖所示之實施例中起始步驟401,每當Rx串列/解串列器330接收到訊框,即將Rx確認指示符之數值轉發給錯誤處理單元335。在Rx確認指示符為複數位元之計數數值的實施例中,錯誤處理單元335會儲存每個Rx確認指示符之數值以形成該複數位元的計數數值,其即為新的Rx確認指示符數值,此步驟可利用移位暫存器(shift register)來實現。接著,錯誤處理單元335比較該新的Rx確認指示符數值以及儲存在前框確認指示儲存器325中的計數數值(步驟403)。在Rx確認指示符為單一位元且其每次會被轉換的實施例中,錯誤處理單元335會將每個單一位元與前一個Rx確認指示符進行比較,如果在比較過程中兩者之數值不相同,則回到步驟401,進行步驟401上述描述的相關操作。
如果該新的Rx確認指示符數值與前一個Rx確認指示符之數值相同(步驟405),則錯誤處理單元335會開始進行錯誤處理的程序(步驟407)。例如,如前所述,錯誤處理單元335通知鏈路控制單元345告知它有錯誤存在,以致動重送的操作或開始一個重新執行的操作。於一實施例中,錯誤處理單元335通知上游的錯誤處理邏輯元件,使得該邏輯元件能夠作出正確的決定來處理丟失的事務。
第4B圖顯示第1圖及第3圖中之通訊介面的接收單元302的另一個操作實施例的流程圖。請同時參考第1圖至第3圖以及第4B圖所示之實施例中起始步驟411,每當Rx串列/解串列器330接收到訊框,即將Rx確認指示符之數值轉發給錯誤處理單元335。接著,錯誤處理單元335比較新的Rx確認指示符數值以及儲存在前框確認指示儲存器325中的數值(步驟413),如果在比較過程中兩者之數值相同,則回到步驟411,進行步驟411上述描述的相關操作。
如果該新的Rx確認指示符數值不同於前一個Rx確認指示符之數值,或如果該新的Rx確認指示符數值被設成一預定的錯誤值(步驟415),則錯誤處理單元335會開始進行錯誤處理的程序(步驟417)。例如,如前所述,錯誤處理單元335通知鏈路控制單元345告知它有錯誤存在,以致動重送的操作或開始一個重新執行的操作。於一實施例中,錯誤處理單元335通知上游的錯誤處理邏輯元件,使得該邏輯元件能夠作出正確的決定來處理丟失的事務。
第5圖顯示第1圖及第3圖中之通訊介面的接收單元的操作實施例的流程圖。請同時參考第1圖至第3圖以及第5圖所示之實施例中起始步驟501,Rx串列/解串列器350經由通訊路徑(如14A)接收一訊框。CRC錯誤檢查單元355可檢查該訊框是否出現錯誤(步驟503)。於一實施例中,CRC錯誤檢查單元355藉由根據所接收到的訊框來產生一CRC值,並比較該新產生的CRC值與該訊框內記錄的CRC值。如果該訊框沒有錯誤(步驟505),則接收端的確認指示狀態不會被停止或凍結(步驟507),該訊框會被轉發至Rx目標處理佇列365做後續處理(步驟509)。
此外,CRC錯誤檢查單元355通知Rx確認指示產生單元360以更新或改變Rx確認指示符(步驟511)。於一實施例中,Rx確認指示產生單元360會維護及增量一複數位元的計數數值(亦即,Rx確認指示符之數值),其指出自初始化以來已接收到多少數目的無錯誤訊框。於另一實施例中,Rx確認指示產生單元360只是轉換一單一位元之Rx確認指示符的數值。之後,Rx確認指示符再被轉發至Tx串列/解串列器370以於通訊路徑14B上傳輸。在使用複數位元之計數數值作為Rx確認指示符的實施例中,如前所述,Tx串列/解串列器370可將每個位元以不同的訊框傳輸(步驟513),而在單一位元的實施例中,Tx串列/解串列器370會傳送該單一位元之Rx確認指示符的數值。
回到步驟505,如果檢測出錯誤,則CRC錯誤檢查單元355通知Rx確認指示產生單元360及Rx串列/解串列器350有錯誤存在,Rx確認指示產生單元360則停止或凍結確認指示狀態及Rx確認指示符的數值(步驟515)。之後,凍結的Rx確認指示符再被轉發至Tx串列/解串列器370以於通訊路徑14B上傳輸。Rx串列/解串列器350會丟棄目前的訊框,並停止轉發任何接續的訊框到Rx目標處理佇列365(步驟517)。如上所述,依次傳送該凍結的Rx確認指示符的數值,直到其他裝置開始重送或初始化通訊鏈路16。
回到步驟507,如果接收器接收到的訊框其確認指示的狀態是被凍結或停止的,以及Rx串列/解串列器350判定該訊框不是一控制訊框(步驟519),則Rx串列/解串列器350會丟棄該訊框(步驟521)。然而,如果該訊框為控制訊框(如有效載荷欄位包含適當之命令控制的資訊的訊框)(步驟519),則Rx串列/解串列器350可清除其確認指示之狀態及重置Rx確認指示符之數值(步驟523)。如前所述,控制訊框可能指示來重送資料訊框之資料流或重新執行以接收標準的資料訊框。類似地,於另一實施例中,如果控制訊框是無錯誤的,即使確認指示之狀態是被凍結的,該控制訊框還是會被處理或執行。
如前所述,需注意的是,於另外的實施例中,Rx確認指示符可能是單一數值(如單一位元的數值),當所接收到的訊框沒有錯誤,則該單一數值固定維持不變,重複傳送此數值以指出訊框處於無錯誤的狀態。當檢測到所接收到的訊框有錯誤,則改變此數值(如改變成一預定的錯誤值)。在某些實施例中,一旦檢測到錯誤,在步驟625中確認指示之狀態會被凍結,而非凍結確認指示之數值。Rx確認指示產生單元360可改變確認指示之數值(如預定的錯誤值),然後再於步驟513中進行傳送。類似地,Rx確認指示符之數值可維持不變,而非如步驟511中持續更新確認指示之數值。
第6圖顯示第1圖及第3圖中一個通訊介面的發送單元的操作實施例及另一個通訊介面的接收單元的操作實施例的流程圖。請同時參考第1圖至第3圖以及第6圖所示之實施例中起始步驟601,裝置1中的上游邏輯元件可將事務儲存於請求發送處理佇列305。當裝置1的發送器準備好接收一個新的事務時,請求發送處理佇列305會發出接收事務的請求(步驟601)。CRC值會由CRC產生器320計算得出,事務則被格式化而CRC值會被附加至訊框(步驟603)。已格式化的訊框被儲存於Tx發送佇列317(步驟605),該訊框經由通訊鏈路16上之一或多個通訊路徑14,從該發送佇列傳送出去(步驟607)。
Rx串列/解串列器350經由通訊路徑14A來接收訊框(步驟609),CRC錯誤檢查單元355檢查該訊框是否有錯誤。如果該訊框沒有錯誤(步驟611)且接收端的確認指示之狀態沒有被凍結(步驟613),則如前所述該訊框會被接收且錯誤檢查單元355會通知Rx確認指示產生單元360以更新Rx確認指示符之數值(步驟615)。於一實施例中,Rx確認指示產生單元360會維護及增量一複數位元的計數數值(亦即,Rx確認指示符之數值),其指出自上次通訊鏈路16被初始化或重新初始化以來已接收到多少數目的無錯誤訊框。於另一實施例中,Rx確認指示符之數值為單一位元之數值,每當接收到無錯誤的訊框時,該單一位元之數值會被進行轉換。被更新的/轉換的Rx確認指示符再被轉發至Tx串列/解串列器370以於通訊路徑14B上傳輸。如前所述,Tx串列/解串列器370可利用一或多個訊框來發送該Rx確認指示符之數值。
Rx串列/解串列器330接收包含Rx確認指示符之數值的該訊框(步驟619),Rx確認指示符之數值再被轉發至錯誤處理單元335。接著,錯誤處理單元335比較新的Rx確認指示符數值以及儲存在前框確認指示儲存器325中的數值。如果在比較過程中兩者之Rx確認指示符的數值不相同(步驟621),則繼續進行步驟601及步驟619上述描述的相關操作。
但是,如果該新的Rx確認指示符數值與前一個Rx確認指示符數值相同的話(步驟621),則錯誤處理單元335會開始進行錯誤處理的程序(步驟623)。例如,如前所述,錯誤處理單元335通知鏈路控制單元345告知它有錯誤存在,以致動重送的操作或開始一個重新執行的操作。
回到步驟611,如果CRC錯誤檢查程序判定所接收到的訊框有錯誤,則CRC錯誤檢查單元355通知Rx確認指示產生單元360及Rx串列/解串列器350有錯誤存在,Rx確認指示產生單元360則停止或凍結確認指示狀態及Rx確認指示符的數值(步驟625)。之後,凍結的Rx確認指示符再被轉發至Tx串列/解串列器370以於通訊路徑14B上傳輸(步驟617),繼續進行步驟步驟619上述描述的相關操作。
回到步驟613,如果接收器接收到的訊框其確認指示的狀態是被凍結或停止的,且如果Rx串列/解串列器350判定該訊框不是一控制訊框(步驟627),則Rx串列/解串列器350會丟棄該訊框(步驟629)。然而,如果該訊框為控制訊框(步驟627),則Rx串列/解串列器350可清除其確認指示之狀態及重置(如初始化)Rx確認指示符之數值(步驟631),繼續進行步驟步驟617上述描述的相關操作。
如前所述,需注意的是,於另外的實施例中,Rx確認指示符可能是單一數值(如單一位元的數值),當所接收到的訊框被檢測為沒有錯誤,則該單一數值固定維持不變,重複傳送此數值以指出訊框處於無錯誤的狀態。當檢測到所接收到的訊框有錯誤,則Rx確認指示產生單元360改變此數值(如改變成一預定的錯誤值)。在某些實施例中,一旦檢測到錯誤,在步驟625中確認指示之狀態會被凍結,而非凍結確認指示之數值。Rx確認指示產生單元360可改變確認指示之數值(如預定的錯誤值),然後再於步驟617中進行傳送。類似地,Rx確認指示符之數值可維持不變,而非如步驟615中持續更新確認指示之數值。
需注意的是,雖然上述之操作流程以特定的順序顯示及描述,但在其他實施例中,第4A圖至第6圖的各個步驟的操作也可以不同的順序執行,符合所需即可。
上述諸多實施例中,係假設錯誤嫌少發生而且通訊鏈路僅是很小的延遲。因此,上述至少有些實施例能夠在較低頻寬之鏈路上精確地追蹤無錯誤訊框之應答及確認的程序。如前所述,當接收到的訊框有錯誤,依次傳送前次所知之良好訊框的指示符,直到有錯誤之訊框被重送或系統錯誤被處理以清除該錯誤為止,藉此確認應答之通道能夠精確地辨識出那個訊框出現錯誤。
因此,相較於一般操作程序在傳送訊框時花費較長的應答時間,上述諸多實施例能夠在最低的付出下來最佳化通訊鏈路。此外,某些實施例中的重送佇列可實施為位在儲存端的緩衝器,藉此不會受限於無法在傳輸延遲時間較長之路徑傳輸。再者,接收端不需設置暫存佇列,因而更能減少系統複雜度及傳輸延遲時間。
需注意的是,雖然上述實施例以串列之通訊鏈路來例示說明,然在其他實施例中,也可使用於並列之通訊鏈路。
雖然本發明之實施例已相當詳細地揭露如上,然本發明所屬技術領域具有通常知識者通過對上述揭露的全盤瞭解,即可輕易地明瞭各種之更動與潤飾,本發明後附之申請專利範圍的解釋即意欲涵蓋這些更動與潤飾。
1‧‧‧裝置
2‧‧‧裝置
10‧‧‧通訊系統
12A、12B‧‧‧通訊介面
14A、14B‧‧‧通訊路徑
16‧‧‧串列通訊鏈路
200‧‧‧訊框
201‧‧‧有效載荷欄位
203‧‧‧DLL欄位
205‧‧‧RxAck欄位
207‧‧‧CRC欄位
301‧‧‧發送單元
302‧‧‧接收單元
303‧‧‧接收單元
304‧‧‧發送單元
305‧‧‧請求發送處理佇列
310‧‧‧重送佇列
315‧‧‧Tx串列/解串列器
317‧‧‧Tx發送佇列
320‧‧‧CRC產生器
325‧‧‧前框確認指示儲存器
330‧‧‧Rx串列/解串列器
335‧‧‧錯誤處理單元
345‧‧‧鏈路控制單元
350‧‧‧Rx串列/解串列器
355‧‧‧CRC錯誤檢查單元
360‧‧‧Rx確認指示產生單元
365‧‧‧Rx目標處理佇列
370‧‧‧Tx串列/解串列器
401~407‧‧‧步驟
411~417‧‧‧步驟
501~523‧‧‧步驟
601~631‧‧‧步驟
第1圖顯示一種具有位於兩裝置間之通訊鏈路的系統的實施例的方塊圖。
第2圖顯示第1圖之系統的通訊鏈路使用的資料鏈路層(data link layer,DDL)訊框協定的實施例的示意圖。
第3圖顯示第1圖中的通訊介面的實施例的示意圖。
第4A圖顯示第1圖及第3圖中之通訊介面的接收單元的操作實施例的流程圖。
第4B圖顯示第1圖及第3圖中之通訊介面的接收單元的另一個操作實施例的流程圖。
第5圖顯示第1圖及第3圖中之通訊介面的接收單元的操作實施例的流程圖。
第6圖顯示第1圖及第3圖中一個通訊介面的發送單元的操作實施例
及另一個通訊介面的接收單元的操作實施例的流程圖。
301...發送單元
302...接收單元
303...接收單元
304...發送單元
305...請求發送處理佇列
310...重送佇列
315...Tx串列/解串列器
317...Tx發送佇列
320...CRC產生器
325...前框確認指示儲存器
330...Rx串列/解串列器
335...錯誤處理單元
345...鏈路控制單元
350...Rx串列/解串列器
355...CRC錯誤檢查單元
360...Rx確認指示產生單元
365...Rx目標處理佇列
370...Tx串列/解串列器
Claims (23)
- 一種通訊裝置,包含:一接收單元,用以經由一第一通訊路徑接收來自一第二裝置中的一發送單元傳來之訊框的資料;一錯誤檢查單元,用以檢查經由該第一通訊路徑所接收之訊框的資料是否出現資料錯誤;以及一確認單元,用以維護一確認指示符,該確認指示符指出經由該第一通訊路徑由該通訊裝置所接收之訊框是否為無錯誤之訊框,其中為了回應該錯誤檢查單元檢查到有錯誤,該確認單元藉由凍結該確認指示符之數值以指出有錯誤之訊框於該第一通訊路徑上傳輸之狀況;其中在該通訊裝置經由該第一通訊路徑接收訊框時,該通訊裝置同時經由一第二通訊路徑依次傳送該確認指示符之數值到該第二裝置,而該確認指示符之數值包含至少一個數值其指出至少一無錯誤之訊框已被該通訊裝置所接收。
- 如申請專利範圍第1項所述之通訊裝置,其中所述訊框包含一確認應答欄位用以傳送該確認指示符相應之數值。
- 如申請專利範圍第2項所述之通訊裝置,其中該確認指示符包含一計數數值,其指出自初始化以來有多少數目的無錯誤訊框被該通訊裝置所接收,且凍結該確認指示符之數值係會使得至少連續兩個相同的計數數值被傳送到該第二裝置。
- 如申請專利範圍第3項所述之通訊裝置,其中所述計數數值為包含複數位元之數值,且該通訊裝置使用複數個訊框來將該包含複數位元之數 值傳送到該第二裝置。
- 如申請專利範圍第2項所述之通訊裝置,其中該確認指示符僅包含單一位元,針對每個接收到的且該錯誤檢查單元檢查沒有發現錯誤的訊框,該確認單元對每個已接收到的無錯誤訊框切換其確認指示符之狀態,並且凍結該確認指示符之數值係會使得至少連續兩個相同的該確認指示符之數值被傳送到該第二裝置。
- 如申請專利範圍第1項所述之通訊裝置,其中所述訊框包含一資料鏈路層欄位用以傳送一控制指示符以指出在所述訊框之一有效載荷欄位中所傳送的是資料還是控制資訊。
- 如申請專利範圍第1項所述之通訊裝置,其中所述訊框包含一資料鏈路層欄位用以傳送一控制指示符以指出在所述訊框之一有效載荷欄位中所傳送的是資料還是控制資訊,並且基於該資料鏈路層欄位,在判定所接收的訊框為一控制訊框時,該確認單元會在維護該確認指示符之數值時忽略該控制訊框。
- 一種通訊裝置,包含:一發送單元,用以經由一第一通訊路徑發送訊框之資料到一第二裝置的接收器;一接收單元,用以在該發送單元經由該第一通訊路徑發送訊框之時,經由一第二通訊路徑依次地接收來自該第二裝置的一確認指示符之數值,該確認指示符之數值包含至少一個數值其指出至少一無錯誤訊框已被該第二裝置的接收器所接收,其中該確認指示符之數值用以指出該第二裝置經由該第一通訊路徑接收到的是否為無錯誤的訊框;以及 一錯誤處理單元,用以在偵測出該通訊裝置之該接收單元從該第二裝置接收到凍結的確認指示符的數值之時,判定有錯誤的情況存在。
- 如申請專利範圍第8項所述之通訊裝置,其中所述訊框包含一確認欄位及一資料鏈路層欄位,該確認欄位用以傳送該確認指示符相應之數值,而該資料鏈路層欄位用以傳送一控制指示符以指出所述訊框中所傳送的是資料還是控制資訊。
- 如申請專利範圍第8項所述之通訊裝置,其中該錯誤處理單元並用以比較所接收到的確認指示符之數值及先前接收到的確認指示符之數值,以判定是否有錯誤的情況存在。
- 如申請專利範圍第10項所述之通訊裝置,其中該錯誤處理單元並用以在偵測出至少連續兩個相同的確認指示符之數值時,判定有錯誤的情況存在。
- 如申請專利範圍第9項所述之通訊裝置,更包含一鏈路控制單元耦接至該錯誤處理單元,該鏈路控制單元會使得一控制訊框被傳送到該第二裝置,該控制訊框係於其內的一有效載荷欄位具有一特定編碼,其中該控制訊框的一資料鏈路層欄位指出訊框係為控制訊框,該特定編碼用以使該凍結的確認指示符在該第二裝置中重新初始化。
- 如申請專利範圍第12項所述之通訊裝置,其中該鏈路控制單元並用以維護一交易訊框計數數值,其對應於扣除傳送到該第二裝置的控制訊框之數目的訊框的數目,且該錯誤處理單元並用以比較所接收到的確認指示符之數值及該交易訊框計數數值,以判定是否有錯誤的情況存在。
- 一種通訊系統,包含: 一第一裝置;以及一第二裝置,經由一第一通訊路徑及一第二通訊路徑耦接至該第一裝置;其中該第一裝置用以經由該第一通訊路徑接收來自該第二裝置之訊框的資料,並檢查所述訊框之資料是否出現錯誤;其中該第一裝置係配置用以:維護一確認指示符,該確認指示符指出經由該第一通訊路徑接收到的訊框是否為無錯誤之訊框;凍結該確認指示符之數值以指出檢查出所接收到的訊框有資料錯誤的情況;在該第一裝置經由該第一通訊路徑接收訊框時,同時依次傳送該確認指示符之數值到該第二裝置,該確認指示符之數值包含至少一個數值其指出至少一無錯誤之訊框已被接收;其中該第二裝置係配置用以接收來自該第一裝置的該確認指示符之數值,以在接收到凍結的確認指示符之數值時,判定有錯誤的情況存在。
- 如申請專利範圍第14項所述之通訊系統,其中所述訊框包含一確認應答欄位及一資料鏈路層欄位,該確認應答欄位用以傳送該確認指示符相應之數值,而該資料鏈路層欄位用以傳送一控制指示符以指出所述訊框中所傳送的是資料還是控制資訊。
- 如申請專利範圍第15項所述之通訊系統,其中該確認指示符包含一計數數值,其指出自初始化以來有多少數目的無錯誤訊框被該第一裝置所接收,且該凍結的確認指示符之數值係相應於連續兩個相同的計數數值。
- 如申請專利範圍第16項所述之通訊系統,其中所述計數數值為包含複數位元之數值,且該第一裝置使用複數個訊框來傳送該包含複數位元之數值。
- 如申請專利範圍第15項所述之通訊系統,其中該確認指示符之數值僅包含單一位元,針對每個接收到的且沒有發現錯誤的訊框,該第一裝置對每個已接收到的無錯誤訊框轉換其確認指示符之數值,並且該凍結的確認指示符係相應於連續兩個相同的該確認指示符之數值。
- 如申請專利範圍第15項所述之通訊系統,其中該第二裝置並用以傳送一控制訊框到該第一裝置,該控制訊框係於其內的一有效載荷欄位具有一特定編碼,其中該控制訊框的一資料鏈路層欄位指出訊框係為控制訊框,該特定編碼用以使該第一裝置重新初始化該凍結的確認指示符。
- 如申請專利範圍第19項所述之通訊系統,其中該第二裝置並用以在接收到該凍結的確認指示符之時,傳送在該有效載荷欄位內具有該特定編碼的該控制訊框,接著,重新傳送一或多個先前發送過的訊框到該第一裝置。
- 如申請專利範圍第14項所述之通訊系統,其中該第二裝置並用以比較所接收到的確認指示符之數值及先前接收到的確認指示符之數值,以判定是否有錯誤的情況存在。
- 如申請專利範圍第21項所述之通訊系統,其中該第一裝置包含一記憶體控制器以及該第二裝置包含一記憶體裝置。
- 如申請專利範圍第14項所述之通訊系統,其中該第一通訊路徑及該第二通訊路徑皆為串列的通訊路徑。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/697,763 US8370725B2 (en) | 2010-02-01 | 2010-02-01 | Communication interface and protocol |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201141122A TW201141122A (en) | 2011-11-16 |
TWI442733B true TWI442733B (zh) | 2014-06-21 |
Family
ID=44320111
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW100103945A TWI442733B (zh) | 2010-02-01 | 2011-02-01 | 通訊裝置及系統 |
Country Status (6)
Country | Link |
---|---|
US (1) | US8370725B2 (zh) |
EP (1) | EP2532110B1 (zh) |
KR (1) | KR101471733B1 (zh) |
CN (2) | CN105071904A (zh) |
TW (1) | TWI442733B (zh) |
WO (1) | WO2011094395A2 (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8954803B2 (en) * | 2010-02-23 | 2015-02-10 | Mosys, Inc. | Programmable test engine (PCDTE) for emerging memory technologies |
US8539254B1 (en) * | 2010-06-01 | 2013-09-17 | Xilinx, Inc. | Method and integrated circuit for protecting against differential power analysis attacks |
US8988956B2 (en) | 2012-09-18 | 2015-03-24 | Mosys, Inc. | Programmable memory built in self repair circuit |
US9363621B2 (en) | 2012-11-12 | 2016-06-07 | Huawei Technologies Co., Ltd. | System and method adopting a reliable stop-and-wait hybrid automatic repeat request protocol |
WO2017027028A1 (en) * | 2015-08-12 | 2017-02-16 | Hewlett Packard Enterprise Development Lp | Serdes link management |
EP3378178B1 (en) * | 2015-11-18 | 2020-07-22 | Telefonaktiebolaget LM Ericsson (PUBL) | Toggling based indicator of reception success |
WO2019000190A1 (en) * | 2017-06-26 | 2019-01-03 | Nokia Technologies Oy | CRC AND POLAR CODE TRANSMISSION SCHEME |
CN108134655B (zh) * | 2017-12-19 | 2021-01-19 | 深圳先进技术研究院 | 一种确定通信链路状态的方法及控制器 |
US11855655B2 (en) * | 2021-09-28 | 2023-12-26 | Texas Instruments Incorporated | Serial communications module with CRC |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4422171A (en) * | 1980-12-29 | 1983-12-20 | Allied Corporation, Law Department | Method and system for data communication |
US6148422A (en) * | 1997-10-07 | 2000-11-14 | Nortel Networks Limited | Telecommunication network utilizing an error control protocol |
US6088337A (en) * | 1997-10-20 | 2000-07-11 | Motorola, Inc. | Method access point device and peripheral for providing space diversity in a time division duplex wireless system |
JPWO2006046586A1 (ja) * | 2004-10-28 | 2008-05-22 | 松下電器産業株式会社 | データ通信装置、データ受信装置、データ送信装置および再送制御方法 |
JP4703310B2 (ja) * | 2005-08-04 | 2011-06-15 | 株式会社東芝 | 通信方法および通信システム |
CN101278529B (zh) * | 2005-10-03 | 2011-10-19 | 松下电器产业株式会社 | 通信装置 |
KR100750170B1 (ko) | 2005-11-15 | 2007-08-21 | 삼성전자주식회사 | 통신 네트워크에서 데이터 프레임을 효율적으로 전송하는방법 및 장치 |
WO2008117164A2 (en) | 2007-03-26 | 2008-10-02 | Marvell World Trade Ltd. | Encoding and decoding systems with header and data transmission success indication |
KR100899823B1 (ko) | 2007-05-10 | 2009-05-27 | 포스데이타 주식회사 | 무선 통신시스템의 arq 피드백 방법 및 장치 |
CN101359980B (zh) * | 2008-09-05 | 2011-02-09 | 华为技术有限公司 | Rlc数据块发送过程中的异常处理方法 |
-
2010
- 2010-02-01 US US12/697,763 patent/US8370725B2/en not_active Expired - Fee Related
-
2011
- 2011-01-27 CN CN201510552852.6A patent/CN105071904A/zh active Pending
- 2011-01-27 CN CN201180013710.2A patent/CN103004124B/zh not_active Expired - Fee Related
- 2011-01-27 EP EP11737631.9A patent/EP2532110B1/en not_active Not-in-force
- 2011-01-27 KR KR1020127023090A patent/KR101471733B1/ko not_active Expired - Fee Related
- 2011-01-27 WO PCT/US2011/022705 patent/WO2011094395A2/en active Application Filing
- 2011-02-01 TW TW100103945A patent/TWI442733B/zh not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
TW201141122A (en) | 2011-11-16 |
EP2532110B1 (en) | 2014-01-15 |
US20110191647A1 (en) | 2011-08-04 |
CN105071904A (zh) | 2015-11-18 |
WO2011094395A3 (en) | 2011-11-17 |
WO2011094395A2 (en) | 2011-08-04 |
US8370725B2 (en) | 2013-02-05 |
KR101471733B1 (ko) | 2014-12-12 |
CN103004124A (zh) | 2013-03-27 |
CN103004124B (zh) | 2017-03-01 |
KR20130023199A (ko) | 2013-03-07 |
EP2532110A4 (en) | 2013-05-15 |
EP2532110A2 (en) | 2012-12-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI442733B (zh) | 通訊裝置及系統 | |
US7881303B2 (en) | Command packet packing to mitigate CRC overhead | |
US7840873B2 (en) | Partial CRC insertion in data packets for early forwarding | |
EP1710944A1 (en) | Handling of erroneous sequence number in a in a NACK packet | |
US20170093526A1 (en) | Error correction on demand | |
CN111837342B (zh) | 用于无线重传通信系统的位纠错 | |
CN101621471A (zh) | 用于发送和接收分组的系统 | |
US8335958B2 (en) | Method of communication, in particular with capability of frame abortion or retransmission indication, between a transmitter and a receiver based on frames and corresponding communication node | |
US9465690B2 (en) | Cumulative error detection in data transmission | |
US7133947B2 (en) | Data communication system, data communication method, and communication unit | |
KR101332279B1 (ko) | 데이터 패킷 전송 방법 및 디바이스 | |
US20230199306A1 (en) | Communication device and communication system | |
US8522104B2 (en) | Smart aging retry buffer | |
US8780934B2 (en) | Method for performing serial transport communication, and associated device | |
US20060059273A1 (en) | Envelope packet architecture for broadband engine | |
US8806291B2 (en) | Data transfer device and control method of data transfer device | |
US20250030500A1 (en) | System-level techniques for error correction in chip-to-chip interfaces | |
WO2022193065A1 (zh) | 一种数据传输方法及装置 | |
JP4239482B2 (ja) | データ転送システム、lsi及びデータ転送方法 | |
JPH06177941A (ja) | ホーム・バス・コントローラ | |
JP2020080463A (ja) | 通信時の誤り訂正機能を備えた数値制御装置 | |
CN101123484A (zh) | 数据传输方法与系统 | |
WO2013097220A1 (zh) | 基于使能信号线反馈实现检错重发的系统及方法 | |
JP2000022672A (ja) | 通信装置及び通信システム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MM4A | Annulment or lapse of patent due to non-payment of fees |