TWI247996B - Apparatus and method for high speed data transfer - Google Patents

Apparatus and method for high speed data transfer Download PDF

Info

Publication number
TWI247996B
TWI247996B TW093116655A TW93116655A TWI247996B TW I247996 B TWI247996 B TW I247996B TW 093116655 A TW093116655 A TW 093116655A TW 93116655 A TW93116655 A TW 93116655A TW I247996 B TWI247996 B TW I247996B
Authority
TW
Taiwan
Prior art keywords
signal
data
unit
read
write
Prior art date
Application number
TW093116655A
Other languages
English (en)
Other versions
TW200504514A (en
Inventor
Dehai Kong
Michael Hong
Original Assignee
Via Tech Inc
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 Via Tech Inc filed Critical Via Tech Inc
Publication of TW200504514A publication Critical patent/TW200504514A/zh
Application granted granted Critical
Publication of TWI247996B publication Critical patent/TWI247996B/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/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4204Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
    • G06F13/4208Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a system bus, e.g. VME bus, Futurebus, Multibus
    • G06F13/4217Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a system bus, e.g. VME bus, Futurebus, Multibus with synchronous protocol

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)

Description

五、發明說明(1) 發明所屬之技術領域 本發明相 相關於一個在 (protocol) ° 先前技術 關於數位通訊的領域。更特別來說 一個通訊匯流排上傳輸資料的協定 本發明 逋訊匯^排含有許多應用,舉例來 積體電路間交換資料。一個通訊匯流排可以嘴和 點(feature),不過,其中最大的一個是盆 後夕種特 享的通訊聯結(shared c〇mmunicati〇n = 〜個分 聯結可以允許兩個單元(un i t)來作通訊, 一义種通訊 的處理器以及記憶體之間;或是可以讓許多j 2電鵰中 兀作通訊,例如报多在網際網路互相連結 叶的單 說,一個通訊聯結是組合成必須互相通訊之=二因此來 的基礎單位。通訊匯流排也提供來讓雜系統 一個適當規劃的匯流排可以提供在匯流排二二,性。 :的容易性。通訊匯流排也可以提供來讓通“ 少單 本。如果可以專用既有的-組來做資料匯流排二ί减少成 線,必需和其他各種各樣單元之間彼輪^用信貌 元不再需要自己專屬的其他組信號線。^貝科的許多單 雖然通訊匯流排可以提供優點,可 個通訊匯流排會有其相關的最大資料傳輪頻ί,、限制。— ^流排也沒有辦法同時間分享給匯流排上二;有 生傳輸的瓶頸。最大傳排的時候會f 寸铷疋度s破匯流排長度、匯流排上 1247996 五、發明說明(2) ΐ::ϊ Ϊ f所需支援的裝置數範圍等因素所限制。-個 ί =規^有可能报複雜,因為各種範圍的裝置會有非 1-個务。例如不同的潛時(iatency),也就是反 ^單元=二粗需的時間;或是不同的資料傳輸速率。當一 _雨# f二ί傳輸率比匯流排的傳輸率要快時,匯流排也 流排“輸::::匯流?上的方法。還有當接收率比匯 手要&時,匯流排同樣也許需要節制資料放到 匯>;IL排上的方法。 術中,同步通訊匯流排也因為啟動單元以及接 k 刼作需要接近的耦合而效果變差。啟動單元需要 、二^ ^ 3 一個接收單元某些操作的指示。接收單元類似 的也品要持續的包含一個啟動單元某些操作的指示。當其 提供,一個近距離控制的通信系統時,會產生許多延遲, 特別疋來回延遲(r〇und-trip lag)。舉例來說,當執行一 個寫入(wnt^e)動作,啟動單元需要產生訊號給接收單 =:由接收單兀處理後,接收單元產生新的信號傳到啟動 單7Ό來啟動要求的寫入動作。一個讀取(read)動作產生一 個因為同樣需要協商的第二個來回延遲。習有技術的其他 架構會在於後描述本發明的時候交互提出。為了解本發 明,先了解習有技術的某些結構是很有幫助的。因此)於 後將先回顧習有技術;之後,再描述本發明的實施例。透 過對習有技術全盤的了解,更能查知本發明的廣泛應用 性。此外,熟悉相關技術者更可以了解本發明除所描述實 施例之外的應用性。 '
0608-10435twf(nl);S3U02-0003;VICTORCHO.ptd 第7頁 1247996 . 五、發明說明(3) ' 通訊系統的一般結構可以透過第1圖來了解。第1圖是 一個通訊匯流排1 〇 2的組織方式。通訊匯流排1 〇 2包含一組 第一訊號線專門用來做控制線1 〇 4以及一組第二訊號線專 門用來做資料線1 〇 6。控制線1 〇 4控制通訊匯流排1 〇 2資料 的流動,特別是資料線丨〇6上的資料。除了其他的功能之 外’控制線1 〇 4上的資訊可以指出資料線丨〇 6上資料是何種 類型。控制線1 〇 4上的資訊可以進一步指出資料線丨〇 6上資 料流動的方向包含資料的來源及目標。資料線丨〇 6在來源 及目標之間傳達資料。這些資料可以包含資料目標位址的 指定。此外,資料線丨〇6上的資料可以傳達目標單元所要 接收及處理的複雜指令。 當通訊或交換資料時,一個匯流排傳輸會發生。一般 來說’ 一個匯流排傳輸包含一個發出命令的要求,以及一 個包含資料傳輸的動作。第2圖中表示一個通訊系統2〇 〇的 方塊圖。通§孔系統2 〇 〇包含一個匯流排主控器(匕u s mas t e r ) 2 0 2、一個通訊匯流排2 〇 4以及一個匯流排受控器 (bus slave) 20 6。匯流排主控器2〇2是一個透過發出一個 命令以及(/或)一個位址來啟動一個匯流排傳輸的單元。 該匯流排傳輸會經由匯流排2〇4傳輸並由匯流排受控器2〇6 所接收。在收到這樣的命令及(/或)位址之後並且當準備 好要反應這個命令以及(/或)位址之時,如果主控器要求 資料,匯流排受控器2 06會以發出資料給主控器來做反 應。在+此情μ況中,匯流排主控器2 〇 2可以由匯流排受控器 2 0 6處讀取資料,也就是說,匯流排受控器2〇6在匯流排 1247996 * 五、發明說明(4) 2 0 4上傳輸讀取資料。如果主控器2 〇 2指示一個寫入動作, 匯流排受控器2 0 6也可以從主控器2 0 2接收資料來做反應。 在此情況中,匯流排主控器202可以在匯流排2〇4上傳輸寫 入資料給匯流排受控器2 0 6。 匯流排的種類有非常多,包括處理器/記憶體匯流 排、底板(backplane)匯流排、輸入/輸出匯流排以及區塊 互聯(inter-block)匯流排,包括在積體電路中的區塊間 互相連接的匯流排。第3 A圖中表示使用處理器/記憶體匯 流排3 0 2、底板匯流排3 0 4以及輸出入匯流排3 0 6 A及3 0 6 B的 一個電腦系統3 0 0的方塊圖。如圖所示,處理器/記憶體匯 流排3 0 2是一個高速匯流排用來在處理器3 0 8以及記憶體 3 1 0之間傳送資料。因為輸出入元件3 1 2至3 1 8可能也需要 存取處理器3 0 8或記憶體3 1 0,底板匯流排3 0 4以及輸出入 匯流排3 0 6 A及3 0 6B也被提供來與匯流排配接器 (adaptor) 3 2 0A、3 2 0B及320 C相接。配接器320A被提供來 做處理器/記憶體匯流排3 0 2以及底板匯流排3 0 4的介面。 配接器32 0A可以提供處理器/記憶體匯流排302以及底板匯 流排3 0 4之間任何所需要的轉換。類似地,配接器3 2 0B及 3 2 0C可以分別地提供底板匯流排3 0 4以及輸出入匯流排 3 0 6A及3 0 6B之間任何所需要的轉換。藉由將底板匯流排 3 04以及輸出入匯流排3 0 6A及30 6 B耦合,處理器/記憶體匯 流排30 2的負荷量將大量降低。第3B圖中表示一個積體電 路350的方塊圖,其包含352A到352D等多種區塊,可通訊 地耦接到一個區塊互聯匯流排3 5 4。就像通訊匯流排可以
0608-10435twf(nl);S3U02-0003;VICTORCHO.ptd 第9頁 1247996 五、發明說明(5) 被提β供在外部作積體電路間的連接一樣,區塊互聯匯流排 3 5 4提供在積體電路3 5 〇内部的匯流排通訊。雖然規模可能 不相同’但是所有這些匯流排的基本目的都是一樣的:從 來源端傳送資訊到目的端。
在一般傳送資料,或特別指是在通訊匯流排上傳送資 料’都必要具有一個資料的發送端(t r a n s m i t t e 了)以及一 個貧料的接收端(reCeiVer)。上述的發送端及接收端也可 以稱為一個資料的來源(s〇urce)以及一個資料的終點 (destination)。而且,當討論通訊匯流排時,有時候也 用主控器(mas ter)以及受控器(siave)的稱謂,其中受控 單兀是受主控單元所管制的。受控單元執行主控單元所要 求的動作。在許多情況下,這些角色是永遠不會改變的; 這是意指,一個主控單元永遠是主控單元而且一個受控單 兀永遠是受控單元。然而,在其他規劃中,單元們是可以 互相在主控或被控的身分上交換的。在這樣的規劃中,將 它們稱為一個啟動器(initiator)以及一個目標器 (targe t)是比較方便的。一個啟動單元因此類似於一個主 動式單元’其指示其他單元執行某些動作。一個啟動單元 可以有進一步的功能,其本身可以在某些其他狀況當作被 動式單元。因為本發明具有廣泛的應用性,所以將使用啟 動益以及目標器的稱謂’不過,任何熟悉相關技術的人可 以了解本說明在主動及被動單元規劃以及來源及終點規劃 方式時的應用性。 在一個有數個潛在啟動器的通訊規劃中,需要有匯流
0608-104351wf(η1);S3U02-0003;VICTORCHO.p t d 第10頁 1247996
1247996
五、發明說明(7) WR_REQ —B 41 0並處理此要求。a > 亩目才示早兀準備好技Lfr A丄Ϊ 及資料訊息時,目標單元在時間” 41 :子== GNT—B412。在下一個時脈週期,如u4i6所示允第午一 = 虎 位址-位址0及第一個資料_資料"皮寫入到目標巾 位址-位址0及資料-資料〇被表示為在t3 416之後的::H: 時間寫入、。這j為了圖示出任何在邏輯電路中處理或傳遞 所而的延遲這些延遲在時脈週期很小或傳遞延遲很大日& 可以變得很顯著。確實’如果這些延遲超過一個時脈周期 的期間時,一個傳輸匯流排會顯示很顯著的錯誤而影響其 操作或在其上為了通訊目的而麵接的裝置之操作。 在位址0及資料〇被處理後,後續的位址及資料訊息, 例如位址1到位址3以及資料1到資料3,可以被類似地^送 (例如在時間15 4 2 0, 17 4 2 4以及14 41 8)。在一個寫入要 求完成後,啟動單元在14 4 1 8的一小段時間之後收回寫入 要求WR —REQ —B 410 ;此一小段時間是相關於經過組合邏輯 的處理或傳輸的一個延遲。目標單元接著以收回匯流排允 許GNT-B 41 2來做反應。然後匯流排可以使用於其他用 途0 必須注意在接收資料時,目標單元可以時段性的收回 匯流排允許信號來減慢資料的接收。以此方式,目標單元 可以在接收更多訊息之前處理任何已經接收到的訊息。舉 例來說,在時間15 4 2 0時,目標單元移除匯流排允許信號 GNT—B 412所以位址2以及資料2在t 6 422並沒有被目標單 元所接收,而是改由在允許信號GNT — B 412重新啟動之後
0608-10435twf(nl);S3U02-0003;VICTORCHO.ptd 第12頁 1247996 五、發明說明(8) 的時間t 7 4 2 4時接收。 第4B圖表示的是時序圖4 5 〇,其圖示一個習有技術中 由啟動單元從目標單元讀取資料的同步匯流排傳輸協定。 因為其為同步協定,啟動單元及目標單元根據一個同步主 控時脈4 5 2來操作。在啟動單元從目標單元讀取資料的情 況下’啟動單元準備讀取位MRD_ADDR 45 6。當這些資料 準備好時,如圖中位址〇在時間t 〇 4 58所示,啟動單元提 供一個匯流排讀取要求RD_REq_B 4 6 0。一段時間後(請注 意延遲又因與第4 A圖相似的原因被圖示出來),在時間t工 4 63,目標單元接收到汕^⑽―B 46〇並處理該要求。當目 標單元準備好要接收位址資訊時,目標單元在時間t2 464 發出一個匯流排允許信號GNT_B 462。在下一個時脈週 期,如13 4 6 6所示,第一個位址-位址〇被目標單元接收; 目標單元也可以接收後續的位址訊息例如位址1到位址3。
必須注 匯流排 來的位 何時提 GNT — B 而在t5 讀取。 擷取該 對應的 能花費 意在讀取位址資訊時,目標單元可以時段性的收任 允許信號GNT — B 4 62來調節其何時讀取從啟動單元 址資訊。以此方式,目標單元可以訊號通知啟動蒙 供下一筆位址資訊。舉例來說,在時間t 8 4 8 2, 4 54被收回因而停止下一個位址—位址2被讀取。然 472,GNT —B 454被重新發出因而指出位址2可以才 關於將被啟動器讀取的資料,目標器必 資料。舉雜兒,目標器必須處理並擷== 貧料0 ’其他的位址也與此類似。一個讀取操作可 數個時脈週期,取決於是否有對被存取之記憶體肩
1247996
五、發明說明(9) 做頁分斷(page break)的要求以及取決私么 1_ 474含有至少第一筆將被讀的^=延=當 468的資料0),目標單元對應地發出資料就緒^曰 RD一DATA —RDY —B 470。資料0在下一個時脈週期日^間“ 472 被放在匯流排上。後續的讀取資料,例如資 也類似地被傳送。 、才1 J貝竹 在一個讀取要求被完成後,也就是說,當一個目標接 收完所有讀取位址資訊後,啟動單元可以在時間t6 47 2取 消匯流排讀取要求RD一REQ一B 4 6 0。目標單元接著以取消匯 流排允許GNT_B 454來做回應。當目標單元在時間t 9 784 元成k供所有的f買取資料訊息時(意指,資料〇到資料3 ), 其以發出訊號RD —DATA一RDY — B 47 0通知啟動器。然後匯流 排可以使用於其他用途。必須注意當讀取資料時,目標單 元可以時段性的移除讀取資料就緒信號,rd_data_rdy_b 4 7 0來調節何時提供讀取資訊給啟動單元。由此方式,目 標單元可以信號通知啟動單元什麼時候會把資訊放到匯流 排上。舉例來說,在時間t6 478,RD —DATA_RDY__B 470被 取消因而停止下一筆資料-資料1被讀取。然而在時間t 7 480時,RD_DATA_RDY_B 4 70被重新發出因而指出資料1可 以被讀取。在通訊匯流排被延遲的情況下,一個延遲性號 STALL_RD_DATA_B 4 76被發出因而指示不能再讀取接下來 的資料。例如,在時間t 8 4 82,STALL_RD_DATA —B 476被 發出因而資料2沒有被放到通訊匯流排上。然而在時間t 9 484時,STALL — RD__DATA_B 4 76被收回,下一筆資料-資料2
0608-10435 twf(nl);S3U02-0003;VICTORCHO.p td 第14頁 1247996 五、發明說明(10) 被放到通訊匯流排上。 前述在第4A及4B圖圖示之匯流排傳輸協定可以應用於 很多不同的方式。在第5圖中是一個應用第4A及4B圖示協 疋之通5孔糸統5 0 0的示範方塊圖。第5圖描畫包含在啟動單 元5 02及目標單元5 04的多種裝置,在通訊匯流排5 0 0的這 些各樣的方塊可以由組合邏輯或是其他此領域的方式作成 應用。如所示啟動單元5 〇 2透過通訊匯流排5 0 6通訊性地耦 接到目標單元5 0 4。啟動單元502其中有啟動交換狀態機 (Initiator Handshake State Machine) 5 08 從啟動單元 5 02裡接收訊號510來決定在匯流排5 〇6上是需要一個寫入 要求或是讀取要求。如此,要求產生器5丨2以邏輯準位低 態產生信號514作為?1? — 1^〇 — 6或1^ — 1^(^來分別地指示一個 寫入或讀取要求。信號5 1 4耦接到通訊匯流排5 0 6並指到目 標單元5 0 4。目標單元5 0 4以目標交換狀態機5 1 6接收並處 理要求訊號5 1 4。為反應連到目標單元5 〇 4的内部信號 5 1 8 ’目標交換狀態機5 1 6決定是否或何時可以處理目標單 元的要求。如果目標單元504是可使用的,要求產生器520 以邏輯準位低態產生信號5 2 2來指示其可以被使用。信號 5 2 2直接接到或閘(or ga t e) 5 24 ;或閘5 24也接收要求信號 5 1 4。因此,信號5 1 4以及信號5 2 2必須同時在低邏輯準位 來讓或閘5 2 4的輸出為低邏輯準位(請記得此處使用低態有 效裝置);或閘5 24的輸出因而以信號GNT一B 525允許匯流 排要求。信號GNT_B 525接到啟動交換狀態機50 8以及要求 產生器512,以對這些單元作通訊匯流排5〇6狀態的更新:
〇608-10435twf(nl);S3U02-0003;VICTORCH〇.ptd 第 ϋ ' " ' --- 1247996 五、發明說明(11) =號GNT—B 5 25接著接到位址單元52 6及寫入單元52 7。 口羊細來說,信號GNT一B 5 25是接到位址單元52β的多工器 52 8以及寫入單元527的多工器529。位址單元526用作為 入以=讀寫動作時的位址功能。寫入單元527適用作為從 啟動單元502經由通訊匯流排5〇6寫入資料到目標單元5〇4 之用。 在接收到信號GNT—B 52 5之前,位址單元52 6用位址/ 2數器534及多工器528使第一筆位址在位址信號53 〇處就 、,-三位址信號53 0可以是寫入位址或是讀取位址。透過多 工™ 52 8及D正反器532的操作,第一筆位址在信號GNT —B 525為高準位時持續地在每個時脈週期寫入及再寫入訊號 秦530田k號GNT — B 525變成有效的低準位時,目標單元 5^^^1)1)1?5孔號53〇接收第一筆位址。位址/計數器5 34為接 、.只地回應給ADDR信號530,其透過多工器528 &D正反哭532 提供進一步的位址資訊到ADDR信號53〇上。 單
:^ ^ - t . , / , 5 3 4 Ϊ I 5〇2中接收信號5 36來決定適當的位址。位址單元526很重 要地在寫入及讀取動作時做類似的動作。 「 ^寫^動作時,寫入單元527被使用。在接收到信號 GNT-B 525的有效低準位之前,寫入單元527使 一ΐΐ在DATA 538處就緒。透過多工器52 9及D正反 1 作,第一筆寫入資料在信號GNT —B 52 5為高準位 w日:二:效)持續地在每個時脈週期寫入及再寫入信號 WR_DATA 538。當信號GNT_B 525變成低準位(意指 0608-10435twf(nl);S3U02-〇〇〇3;VlCTORCHO.ptd 第16頁 1247996 五、發明說明(12) 時’目標單元50 4從信號WR —DATA 53 8接收第一筆寫入資 料。寫入資料先進先出緩衝器(FIF〇) 544 /先進先出控制器 546為接續地回應給信號WR —DATA 538,其透過多工器529 及D正反器54 0提供進一步的寫入資料到信號WR_DATA 538 上。目標單元5 0 4可因此接收進一步的資料對應到上述所 接收的位址資訊。寫入資料先進先出緩衝器5 4 4也耦接到 仏號5 4 6接收在啟動單元5 〇 2中適當的資料訊息。 在讀取動作時,讀取單元5 28被使用。目標單元5〇4, 特別是指其中的讀取單元548,必須至少準備好以上文描 述位址單元5 26時所述方法傳送之第一筆位址(意指位址〇) 所對應的定址資料(意指資料〇)。有了第一筆位址資訊, 讀取單元548可以擷取該定址資料,例如從記憶體,且經 由仏號5 7 4提供給資料先進先出緩衝器5 5 〇。多工器5 5 2以 類似多工器5 28及5 29的方式操作;而且d正反器554以類似 如上述D正反器5 32及540的方式操作。應用信號Next —Data 556在低準位以及第一筆讀取資料在資料先進先出緩衝器 5/0就緒的條件,第一筆資料被持續地提供在讀取資料訊 ,線5 5 8^上。當先進先出控制以及資料輸出控制單元56〇決 定輸出單兀5 04已經準備好要提供被要求的資料,先進先 出控制以及資料輸出控制單元56 〇對應地提供信號 Next —Data 5 56給多工器5 52以及信564 給啟,單元5 0 2 ’更特別地來說’ |其中的先進先出控制 以及貢料閃(latch)控制單元566。當訊號—^一以^ 562 在低準位%,第一筆以及後續的資料將由資料先進先出緩 第17頁 1247996 五、發明說明(J3) 衝器5 5 0傳遞,經由夕 ,特別是指其及β正反器554到啟動單元 取資料在讀取資料先進^取^料先進先出緩衝器㈣。當讀 號570分配到啟動單元5=緩=5 68日寺’其可以透過信 制單元566藉由產生一個。*控制以及資料閂控 STAU Ρί) Ι)ΑΤΛ D 個流排碩取延遲信號 --ΤΑ—B 572給目標單元5〇4,特 控制以及資料輸出控制單元56。 丄疋义進先出 信號staLLj^data_b 5 72有效時,先進1出=此。當: 料輸出控制早兀56〇使訊號ΝΕχτ—Data 5M工古以及貧 調節傳遞到通訊匯流排5〇6上面的資料。成呵準位用以 描述在第4Α、4Β及5圖習有技術的通 一定的不利條件。舉例來說,如此的習有技机排會遇到 接啟動及目標單元的操作。啟動單元必 二系統必須耦 步的不利條件是一個要求信號(意指 表=某部分啟動單元動作的指示。類似地。供-個 持續的提供一個表示某部分目標單元動作:早元必須 供於一個被接近地控制的通訊匯流排,其也θ不。當此提 延遲,特別是,來回延遲。舉例來說,^ 產生了許多的 作,信號必須由啟動單元產生,連接到目^ ^ =個讀取動 標單元處理後,一個不同的信號需要被目^ =元’經由目 新信號然後被接到啟動單元來啟動所需要:^產生,該 某種意義來說,信號必須繞經由啟動單元、_動作。就 到啟動單元。一個讀取動作會產生另一:丄,標單元再回 來回延遲。 疋需要協商的 個更進 0608-104351wf(η1);S3U02-0003;VICTORCHO.p td 第18頁 1247996
RD一REQ —B或WR —REQ — B)以及一個允許信號(意指GNT_B)必須 在同一個時脈週期變為有效,此將潛在造成讀取或寫入因 為上述來回延遲而錯誤的發生。此外,由目標單元來的允 許信號控制許多在啟動單元内的邏輯功能,可是在啟動單 元裡處理允許信號的動作可能需要減少,來避免太長的傳 輸延遲。然而這也許會讓適當的或完整的允許命令無法執 行。舉例來說,一個在啟動目標裡複雜但是被需要的特性 可旎因為其不能在一個夠短的時間内完成而需要被放棄。 、另一個習有技術的問題是位址需要在每一個時脈週期 遞坫,但疋當時脈頻率很高時,位址計數的處理可能不會 在一個時脈周期内完成。一個非常高的時脈頻率可能造成 其他在啟動單元及目標單元裡因為某些處理或許不能在一 個時脈週期裡完成的問題。當此發生時,錯誤的資訊可能 在下一個時脈週期出現,而產生錯誤情況。 本發明因為減少麵接前述要求及允許信號而增加習有 技術未有之優點。 發明内容
本發明提供一種改進過的匯流排傳輸協定,其有效的 使在一個數位通訊匯流排上的啟動單元及目標單元互相之 間減少耦接。一個依照本發明,在一個啟動單元及目標單 元互相連接的匯流排上處理資料從啟動單元傳送到目標單 元的方法,其包含:在一個匯流排上與時脈信號同步地提 供一個開始寫入位址以及寫入長度資訊。當開始寫入位址 以及寫入長度資訊表示在匯流排上,一個寫入要求信號會
0608-lO435twf(nl);S3U02-0003;VICTORCHO.ptd 第19頁 1247996 五、發明說明(15) 被提供出來。該會 地被變成有效^ :入要求會隨著時脈信號的時脈週期同步 會被接收,該允;二一個,目標單元來的允許信號隨後 有效或無效。在^仏就會隨者時脈信號的時脈週期被變成 步提供的寫入ΐ;允許信ΐ變成無效之後,一些與時脈同 取,一個資料瑁ί項會被提供在匯流排上供目標單元抓 週期,資料項的^ 供在時脈信號的每一個個別的時脈 定。、科頁的數目是由前述已提供的寫入長度資訊所決 變成無效之後,_ 收,且一些與時脈 元的方 地提供 位址以 信號會 期同步 的允許 週期被 個從目 同步提 排上供抓取’一個讀取資料項會被提供在時脈信號的每一 個個別的時脈週期,資料項的數目是由前述已提供的寫入 長度資訊所決定。 個跟上述方法配合, 法。剛開始,在一個 取位址以 資訊表示 。該讀取 效或無效 收。該允 無效。在 區塊就緒 料項會被 本發明 讀取資訊到 一個時脈信 資訊。當開 上,一個讀 時脈信號的 一個從目標 著時脈信號 進一步提供 6U 舌八 〇 口 右又動單 號同步 始讀取 取要求 時脈週 單元來 的時脈 一個開始讀 及讀取長度 被提供出來 地被變成有 信號會被接 變成有效或 標單元來的 供的讀取資 從目標單元 匯流排上與 及讀取長度 在匯流排 要求會隨著 。接下來, 許信號會隨 該允許信號 信號會被接 提供在匯流 @ 一個依照本發明的裝置包含:一個啟動單元或一個 標單元。該啟動單元包含··一個要求產生單元(reqUest generating unit)、一個信號交換狀態機(handshaking
0608-104351wf(η1);S3U02-0003;VICTORCHO.p t d 第20頁 1247996 五、發明說明(16) S^e止maCMne)、一個位址計數器(counter)、一個寫入 貝枓先進先出缓衝器(FIF0)及寫入先進器(FIF〇 ’以及一個讀取資料先進先出缓衝器及讀取 器。前述要求產生單元被轉接以接收-個動 在匯 :二’二被設定為,回應動作類別指示器來使 取或寫入要求信號有效。•讀取或寫 機㈣接到到要求產生器動:±述=交矣狀態 尸咕-从⑴& 攸1,、則述動作類別指不益。該 #號父換狀態機被搞接到通訊匯流排上以接收一個允 提供一個有效的接續區塊信號來回應-個有效的; 位址計數器被轉接到信號交換狀態機以接收 Ϊ2!: 被設定為,回應一個有效的接續區塊信 :::兮:供一個位址及一個長度,❿一個讀取或寫入動 位址開始且該長度指出將在通訊匯流排中傳輪的 前述寫入資料先進先出緩衝器及寫入先進先 出控制裔破耦接到信號交換狀態機以接收接續區 設定a,回應一個,效的ι續ι塊信號在、寫乂 目的資料項。前述讀取資料先進 先出綾衝盗及讀取先進先出控制器被耦接以接收一個结 動作中在通訊匯流排上需讀取資料項的數目,μ及從‘ =流排來的一個讀入讀取區塊信號,並在通訊匯流排上提 供一個接收接續區塊信號。 知 f述目標單元包含:一個信號交換狀態機、一個要 產生單元,以及一個資料先進先出緩衝器及先進先出控制
°6〇8.1〇435twf(nl);S3U02-〇〇〇3;Vlcr〇RCHO.ptd 第21頁 1247996
器。該 排來的 取或寫 生單元 示,且 許信號 單元就 裔及先 數目的 頃取區 塊信號 信號信 讀取或 入要求 被耦接 其被耦 會回應 緒信號 進先出 讀取資 塊就緒 號交換 寫入要 信號是 到信號 接到通 一個有 而同步 控制器 料項或 信號, 狀態機被耦接以接收 求信號以及 與一個時脈信號同步 交換狀態機 訊匯流排以 效的讀取或 地變為有效 被設定來同 寫入資料項 並接收從匯 個從 個單元就緒信 的。前 個單元 以接收一 提供一個 允許信 寫入要求以及一 。前述資料先進 步地提供一個預 以及一個給通訊 流排來的一個接 通訊匯流 號。該言買 述要求產 就緒指 號。該允 個有效的 先出緩衝 先決定好 匯流排的 收接續區
資料是以一組預先定義好的區 本發明的一個優點是 塊所傳送。 本毛明的另一個優點為,不是每一筆個別資料項的位 址都品要在匯流排上被傳送。 再另一個優點為,從一個啟始單元傳輸一個區塊的資 料到目標單元從頭到尾的時間被減少了,因為並不需要讓 要求信號來等待允許信號,也因為不需要提供在匯流排上 的位址及長度資訊超過一個時脈周期以上。
使用說明 第6圖中表示參考本發明某一個實施例的一個通訊系 統60G的方塊圖描晝包含在一個啟動單元6〇2及一個目標單 元604其中的多樣裝置。一個被該通訊系統6〇〇使用的匯流 排協定進一步被用第7Α及7Β圖中的時序圖70 0及7 5 0和第8Α
0608-10435twf(nl);S3U02-0003;VICTORCHO.ptd 第 22 頁 1247996 ? 五、發明說明(18) 及8B圖中的流程圖800及850所描述。如第6圖中所示,一 個啟動單TL 6 0 2根據本發明經由通訊匯流排6 〇 6通訊性地耦 ,到目標單元60 4。在啟動單元6 02中包含啟動信號交換狀 態機60 8其接收從啟動單元6 〇2中來的信號61〇來決定是否 有=個在通訊匯流排上的寫入或讀取資料是被需要的。如 果是的話,要求產生單元6】2分別地使一個信號6】4 WR_REQ —B或RD—REQ — B有效來指示一個寫入要求或一個讀取 要^。該要求信號614被耦接到通訊匯流排66且被接到目 標單元6 04。目標單元6〇4隨後在目標信號交換狀態機616 中接收並處理要求信號6丨4。目標信號交換狀態機6丨6反應 目標單元604裡的信號61 8狀態來決定是否準備好要來處理 該要求信號614。重要的是,要求產生單元612僅需要只在 個%脈週期内產生信號6 j 4因為該目標信號交換狀態機 61 6、只在一個時脈週期内需要這個資訊。如果目標單元6〇4 :二被使用,要求產生單元62〇會使一個信號62 2有效來指 =已經就緒。信號622被接到一個D正反器_。該d正反 為624使一個允許匯流排要求信號GNT —B 6 26有效。該訊號 接到啟動信號交換狀態機60 8以及啟動單
來通知這些單元,通訊匯流排上狀態生J ^】=GNT—B 62 6僅需產生在只有-個時脈周期 内,因為啟動信號交換狀態機6〇8以及要求 在一個時脈週期内需要這個資訊。 生早兀 ^ 個接㊁^::“虎㈣-“⑼’啟動信號交換狀態機⑼“吏-接到£塊位址單元626及寫入單元6 2 7的信號next — bl〇ck 1247996
628變為有效。更特別地來說,該信號〇^—BL〇CK 628是 接到位址產生器6 3 0以及寫入資料先進先出緩衝器6 3 2。該 信號NEXT—BLOCK 6 28是指出目標單元6〇4準備妤要接收一 個資料的區塊。根據本發明,該資料的區塊是相關於一個 區塊位址(意指WR—ADDR或RD —ADDR),而且進一步相關於一 個該資料區塊的長度(意指WR — LENGTH或〇 —LENGTH)。、 為回應信號NEXT —BLOCK 628,區塊位址單元626,特 ^是指位址/計數器6 3 0,準備好第一個區塊位址到D正反 器635上,而D正反器63 5在下一個時脈週期準備好區塊位 址訊號634讓目標單元6〇4可以使用。重要地是,區塊位址 訊號63 4只要在一個時脈週期可以讓目標單元6〇4可以使用 即可。位址/計數器630也決定將要在一個寫入或讀取動作 鐘傳遞的資料區塊的長度。為回應信號ΝΕχτ bl〇ck 62 8, 區塊位址單元62 6,特別是指位址/計數器63〇,準備好相 關的資料區塊的長度。&夕卜,區塊的長度以及區塊的位址 共同與啟動單元6G2以及目標單位6G4兩者都相㈣。當 接收NEXT。一 BLOCK 6 28時,位址/計數器63〇準備好區塊^度 到D正反器6 3 5上,而D正反器63 5在下一偭時脈週期準備好 區塊長度信號6 3 6讓目標單元6 〇 4可以使用。重要地是,區 塊長度信號6 3 6只要在一個時脈週期可以讓目標單元可 以使用即可。區塊位址單开βi> η 早兀bZb及其&塊位址訊號6 34以及 區塊長度信號63 6在寫入及讀取動作兩種動作中都可以使 用。 有了區塊位址以及區塊長度資訊 目標單元6 0 4隨後
0608-10435twf(nl);S3U02-0003;VICTORCHO.ptd 第24頁 1247996 五、發明說明(20) 可以準備來接收此已說明長度的被指定寫入資料區塊。在 接收信號NEXT —BLOCK 628之前,啟動單元6 0 2透過信號線 6 4 0將要寫入的資訊送到寫入資料先進先出緩衝器6 3 8。為 回應信號NEXT-BLOCK 6 2 8,寫入資料先進先出緩衝器6 38/ 先進先出控制器6 4 2提供第一筆資料項給D正反器6 3 9,D正 反器6 3 9在下一個時脈周期將資料就緒在資料訊號β 4 4 (意 指WR-D ΑΤΑ)上。目標單元可以隨後接收該第一筆包含於與 上述地址及長度相關的指定區塊之資訊。寫入資料先進先 ^緩衝器638 /先進先出控制器642及D正反器639持續地在 資料訊號644提供資料直到整個區塊的資料被接收完為 ^ ,一個讀取動作被執行時,目標單元604,特別是指 讀取單元648,會將與如前述方法傳遞之區塊位址及區‘ ,度相關的資料準備好。讀取單元6 48利用區塊長度資訊 來擷取已定址的資料(例如,從記憶 、岸 供於資料先進先出緩衝器65。上,然後,在…二“ 上。當相關於區塊位址及區塊長度的資料在資料 上。同時間,資料先Λ出= = 及資料輸出控制單元66°,然後先^二及進 ^料輸出控制單元660產生讀取區塊就緒,先出&制及 RD—BL0CK_DATA—RDY—β 6 64 給啟動單元6〇2,琥 先出控制及資料問控制單元666。先 ^別疋指先進 控制單元6 6 6隨後準備好讀取資料先進先及資料岡 无出緩衝器6 6 7將接 第25頁 0608-10435twf(nl);S3U02-0003;VICTORCHO.ptd 1247996 五、發明說明(21) 二‘ S :項。在下—個時脈週_正反器654提 e5s,〇„, 料信默"ΑΤΑ 先出緩衝器66 7來接收資 接你次祖r°貝取貝料先進先出緩衝器66 7隨後讓 一個=f80在啟動單元60 2上就緒。接續地,將 ° ^ 达給資料先進先出緩衝器6 5 0來讓下一筆資料 控制及資料閃控制單元6 6 6藉由提供一個 ° 5.u — ext-block-b 668接到先進先出控制及資料 β!Λ?^λ6 6 ° ^ ^ ^ - ^ ^ ^ J^ 、 單71:6 02已經準備好接收下一區塊的資料(如果 還有下一區塊的資料)。重要的是,下一個區塊的資料可 以立即地在現有的資料區塊之後被目標單元6〇4傳送並且 由啟動單凡6 0 2接收而不需要多餘的時脈週期。這是因為 區塊位址單元62 6與讀取單元648沒有耦接,動作可以管線 (pipelined)處理才能達成。 有了對本發明硬體應用的了解,接著敘述在第Μ及7 b 圖的時序圖7 0 0及7 50。第7Α圖所示是一個描畫一個本發明 的匯,排上的寫入動作時序圖7〇 〇。因為其為同步協定, 啟動單元以及目標單元基於一個主控時脈7〇 i來動作。接 下來的討論中,邏輯裝置會被以低態邏輯準位為有效的方 式來敘述。然而熟悉習有技術者當可了解,高態邏輯準位 有效的信號也可應用在本發明中。在啟動單元^資料到目 標單元的情況中,啟動單元在時間t 0 7丨2準備寫入資料 WR — DATA 710。以一種大體上同時的方式,一個資料位址 0608-10435twf(nl);S3U02-0003;VICTORCHO.ptd 第26頁 1247996 五、發明說明(22) WR—ADDR 704以及一個寫入資料的長度WR —LENGTH 7〇6被決 定給寫入資料WR —DATA 710。有了這些資訊,一個寫入要 求,WR — REQ—B 7 02,在t0 712 —個短時間之後被變得有 效。為回應寫入要求WR 一 REQ — B 702,在下一個週期tl 714 時目標單元被通知啟動單元準備要寫一個相關於位址 WR—ADDR 704以及相關於長7〇6的一個資料區 塊WR —DATA 710。在tl 714之後的某時間,目標單元以發 出允許信號GNT一B 708來允許該寫入要求。如第7A圖所 示’匯流排允許信號GNT — B 7 08在與tl 714為同一個時脈 周期的時間t 2 7 1 6被提供。重要的是,匯流排允許信號不 需要如習有技術般在該同一時脈周期内產生。在本發明 中,匯流排允許信號可以在任何接收到寫入要求wr_req_b 7 0 2信號後的任何時間發生。另外需要注意的是寫入要求 WR一REQ — B 70 2不需要被維持為有效到超過一個時脈週期。 在啟動單元傳送寫入要求信號㈣―REq—B 702以及目標單元 接收到這個信號後,啟動單元在11 71 4後移除要求信號 WR_REQ—B 702 ° 當目標單元在時間t2 716提供匯流排允許信號GNT_B 708,目標單元指出其準備好在時間t3 718之後某時間接 收區塊位址WR-ADDR 704以及寫入長度WR —LENGTH 7 0 6,如 第7A圖所示。目標單元隨後準備接收跟區塊位址㈣_addr 7 04以及其相關的寫入長度WR — LENGTH 706。重要的是,在 收到上述資訊後’目標單元如圖示移除匯流排允許信號 GNT — B 708。在時間t4 7 20,目標單元繼續接收相關區塊
0608-10435twf(nl);S3U02-0003;VICTORCHO.ptd 第27頁 1247996 五、發明說明(23) 位址WR — ADDR 70 4以及寫入長度WR-LENGTH 7'06的寫入資 料。在第7A圖所示之例子中,寫入長度是4筆資訊,此4筆 資訊在時間t 4 720、t5 722、t6 72 4及t7 72 6後被接收。 請注意在真實狀況中將會有相關的傳送及處理資訊的相關 延遲。 熟悉相關技術的人可以察知本發明減少很多相關於持 續監視寫入要求以及匯流排允终化號的來回延遲。本發明 減少寫入要求以及匯流排允許信號的耦合到僅需要在一個 時脈周期的時間内需要這些資訊。本發明在讀取資訊時提 供類似的優點。 第7 B圖所示一個是一個描晝一個本發明的匯流排上的 項取動作時序圖750。因為其為同步協定,啟動單元以及 目標單元基於一個主控時脈751來動作。在啟動單元從目 標單元讀取資料的情況中,啟動單元準備好一個區塊位址 RD — ADDR 754以及一個讀取資料的長度rd_LENGTH 7 5 6給即 將項取的資料RD_DATA 750。有了這些資訊,一個讀取要 求,RD一REQ-B 7 52,在ΐ 0 7 66 —個短時間之後被變得有 效。為回應讀取要求RD一REQ — B 752,在下一個週期Mg 時目標單元被通知啟動單元準備要寫一個相關於區塊位址 RD_ADDR 7 54以及相關於長度RD一LENGTH 75 6的一個資料區 塊RD—DATA 7 60。在tl 7 68之後的某時間,目標單元以發 出允許信號GNT一B 758來允許該讀取要求。如第7B圖所 示’匯流排允許信號GNT 一 B 758在與tl 768為同一個時脈 周期的時間t 2 7 7 0被提供。重要的是,匯流排允許信號不
0608-10435twf(nl);S3U02-0003;VICTORCHO.ptd 第 28 頁 1247996 五、發明說明(24) :要::有技術般在該同一時脈周期内產生
^ 在任何接收到讀取要求⑽jEQJ RD RFO二Γ 另外需要注意的是讀取要求 在啟動單-值^ ί要被維持為有效到超過一個時脈週期。 ^ =兀傳迗頃取要求信號RD — REQ —B 752以及目標單元 =收到這個信號後,啟動單元在tl 768後 RD — REQ — B 75 2。 文 筑 當目標單元在時間t2 7 7〇提供匯流排允許信號gnt b 758,目標單元指出其準備好在時間^ 772之後某時間接 收區塊位址RD — ADDR 754以及讀取長度RD —LENGTH 7 5 6,如 第7B圖所示。目標單元隨後準備接收跟區塊位址rd _addr 754以及其相關的讀取長度❹一以^^ 756。重要的是,在 收到上述資訊後,目標單元如圖示移除匯流排允許信號 GNT一B 758。在時間t4 7 74,目標單元準備好傳送相關區 塊位址RD — ADDR 70 4以及讀取長度RD —LENGTH 7〇6的讀取資 料。目標單元回應地提供信號RD — BL〇CK_DATA_RDY_B 7 5 6、 來指示讀取資訊已經準備好要從目標單元傳送到啟動單 元。如苐7 B圖所示,時間13 7 7 2及時間14 7 4 4之間的時間 差相關於準備所需讀取資料的時間。在需要從記憶體讀取 資訊的情況下,也許需要有幾個時脈周期的時間來擷取資 料。請注意信號RD一BLOCK —DATA—RDY一B 75 6只需要被提供 一個時脈周期的時間。回應信號rd_block_data_rdy_b 756 ’目;f示早元在776開始繼績傳送資料。第了b圖所示 之例子中’讀取長度是4筆資訊,此4筆資訊在時間15
0608-10435twf(nl);S3U02-0003;VICTORCHO.ptd 第29頁 1247996 五、發明說明(25)
776、t 6 778、t 7 780 及 t8 782 後被接收。 第7B圖進一步表示由目標單元所產生的信號 ACCEPT — NEXT —BLOCK—B 7 64指示啟動單元下一個讀取資料 區塊已經就緒而且將在現有傳輸結束後馬上開始傳送 '。夹 例來說,如第7B圖所示信號ACCEPT_NEXT —BL0CKJ 7 / 時間t6 778產生指出在當時4筆資料,資料〇到資料3傳輸 完後’下一個資料的區塊將會在t9 784開始傳送。信號~ ACCEPT —NEXT —BLOCK —B 7 64 以類似信號 ° ^ RD一BLOCK—DATA一 U b的方法 一 隹共他接下來的讀取 要求RD — REQ一B 7 52以及允許要求758跟資料的傳輸重疊日士 產生。以這種方式,處理以及資料傳輸是管線化的。:^ 理以及資料傳輸有效的減少耦接時,通訊匯流排可以^ 2 持續的使用而更有效被利用。 么 為更清楚了解本發明,第8A及8B圖提供本發明方 流程圖。第8 A圖所示是一個本發明的在通訊匯流排啟= 單兀寫入資料到目標單元的方法8 〇 〇。第8A圖所示是— 本發明的在通訊匯流排中啟動單元從目標單元疋&一個 方法85 0。 %貝料的 參考第8A圖,一個啟動單元透過在步驟8〇2產一 區塊位址以及在步驟804產生一個寫入長度來準備:^ 個資料區塊到-個目標單元。啟動單元在步驟m ^ : 準備要傳送之資料區塊的串、流。這樣的資才斗帛流有二 一項以及一個最後一項資料並且以連貫的資料型能= 因為啟動單元隨後將準備傳送資料到目標單元,二,輪 1从啟
1247996 五、發明說明(26) 單元在步驟808產生—個寫 標單元接收。在太路日沾甘一 / 貴&隹^驟8 1 〇被目 808產生該寫入要心僅/::卜厂Λ啟動單元再步驟 元隨後可以判斷需維持一個時脈週期。目標單 "椤單开進,、準備好接收一個寫入資料的區塊。 ^ 75 準備要接收一個寫入資料的區塊,其於步驟 一個允許由啟動單元在步驟814接收。在本發明的 目標單元於步驟812僅產生該允許一個時脈周 』9 $間。目標單元隨後在步驟816接收該區塊位址及 步驟818接收寫入長度。在步驟82〇時,目標單元接收資料 =串流。當在步驟820接收資料的串流時,目標單元期待 得到一個由步驟81 8決定之寫入長度的資料。目標單元隨 後將接收到的資料區塊與在步驟8丨6決定的區塊位址作相 關處理。在本發明的某實施例,在步驟8 〇 8的寫入要求及 步驟81 2的允許若僅產生一個時脈週期,在方法8〇〇中的許 多步驟都能管線化來使通訊訊匯流排的使用以及資料傳輸 的有效率達到最佳化。舉例來說,步驟8 〇 2到8 1 8可以在步 驟8 2 0執行時執行。 ,
參考第8Β圖,一個啟動單元透過在步驟852產生一個 區塊位址以及在步驟854產生一個讀取長度來準備從一個 目標單元讀取一個資料區塊。啟動單元隨後準備要從目標 皁元接收讀取資料。啟動早元在步驟856產生一個讀取要 求’此要求隨後在步驟8 5 8被目標早元接收。在本發明的 某實施例,一個啟動單元在步驟8 5 8產生該讀取要求時, 僅需維持一個時脈週期。目標單元隨後準備要被讀取資料
〇608-10435twf(nl);S3U02-〇〇〇3;VICTORCHO.ptd 第 31 頁 1247996 五、發明說明(27) 的相,資訊。另外,目標單元可以判斷其是否準備好傳送 了個讀取資料的區塊。當目標單元準備要傳送一個讀取資 料的區塊’其於步驟8 6 〇產生一個允許由啟動單元在步驟 8 6 2接收。在本發明的某實施例,目標單元於步驟μ 〇僅產 生該允許一個時脈周期的時間。目標單元隨後在步驟8 64 接收該區塊位址及在步驟86 6接收讀取長度。目標單元利 用收到區塊位址及讀取長度在步驟8 68收集要被讀取的資 料串抓。步驟8 6 8可以包含其他例如從記憶體擷取資料或 ,行相關計算等步驟。該資料串流有一個第一項以及一個 ,後一=資料並且以連貫的資料型態傳輸。在步驟87〇 時,目標單元發出信號RD —BLOCK_DATA — RDY — B 870來指示 讀取資訊已經準備好要傳送。啟動單元在步驟872接^這 個訊號。為了回應,啟動單元準備接收資料。目標單元隨 後在步驟874傳送資料串流,而啟動單元在步驟8 76接收資 料的串流。當在步驟876接收資料的串流時,啟動單元期、 待得到一個由步驟854決定之讀取長度的資料。啟動單元 隨後將接收到的資料區塊與在步驟8 52決定的區塊位址作 相關處理。在本發明的某實施例,在步驟85 6的讀取要求 及步驟860的允許若僅產生一個時脈週期,在方法85〇中的 許多步驟都能管線化來使通訊匯流排的使用以及資料傳輸 的有效率達到最佳化。舉例來說,步驟8 5 2到8 7 2可以 驟8 7 4執行時執行。 雖然本發明已以較佳實施例揭露如上,麸立 限定本發明,任何熟習此技藝者,在不脫離:發明=
0608-1043 51wf(η1);S3U02-0003;VICTORCHO ptd 1247996
0608-10435twf(nl);S3U02-0003;VICTORCHO.ptd 第33頁 1247996 圖式簡單說明 本發明透過後附詳細說明的圖示將會比較容 解’其僅為圖解之用而非將本發明限制於圖示範圍。疏 第1圖是一個描繪一個根據習有技術之通訊匯流 用的組織方塊圖。 第2圖是一個根據習有技術之主控器-被控器規劃的通 訊匯流排的方塊圖。 第3 A圖是一個根據習有技術使用多樣匯流排包括一個 微處理器/記憶體匯流排、一個主版匯流排以及一個輪入 輸出匯流排之電腦系統的方塊圖。 & 弟3 B圖是一個根據習有技術包含多樣區塊的電路以及 一個内部區塊連接匯流排之積體電路的方塊圖。 弟4 A圖描緣一個根據習有技術在一個同步通訊匯流排 協定中影響一個寫入動作之多種信號交互作用的時序圖。 第4 B圖描緣一個根據習有技術在一個同步通訊匯流排 協定中影響一個讀取動作之多種信號交互作用的時序圖。 第5圖是一個根據習有技術包含一個啟動單元、一個 通訊匯流排以及一個目標單元之通訊系統的方塊圖。 第6圖是一個根據本發明包含一個啟動單元、一個通 訊匯流排以及一個目標單元之通訊系統的方塊圖。 第7 A圖描繪一個根據本發明在一個同步通訊匯流排協 定中影響一個寫入動作之多種信號交互作用的時序圖。 第7B圖描繪一個根據本發明在一個同步通訊匯流排協 定中影響一個讀取動作之多種信號交互作用的時序圖。 第8A圖是一個根據本發明,在一個同步通訊匯流排協
0608-1043 51wf(η1);S3U02-0003;VICTORCHO.p t d 第34頁 1247996 : 圖式簡單說明 定中從一個啟動單元寫入資料到一個目標單元的方法之流 程圖。 第8B圖是一個根據本發明,在一個同步通訊匯流排協 定中一個啟動單元由一個目標單元讀取資料的方法之流程 圖。 符號說明: 1 0 0、2 0 0 通訊系統 1 0 2、2 0 2 通訊匯流排 10 4 控制線 106 資料線 3 0 2、30 4、3 0 6A、3 0 6B 通訊匯流排 312、314、316、318輸出輸入單元 352A、352B、352C、352D積體電路内部之電路區塊 3 5 4積體電路内部之通訊匯流排 50 2、6 0 2啟動單元 5 0 4、6 0 4目標單元 5 0 6、6 0 6 通訊匯流排
0608-10435twf(nl);S3U02-0003;VICTORCHO.ptd 第35頁

Claims (1)

1247996 ------- 六、申請專利範圍 1 ·種^料傳輸的方法’在一個啟動时_ σ 互相連接的匯流排上在啟動單元和 元及目標皁兀 料,該方法包含·· ^早凡之間傳輸資 在一個匯流排上與時脈信號同 位址以及寫入長度資訊; 也钕供一個開始寫入 當開始寫入位址以及耷入具痒 時,提供-個會隨著時脈信號在匯流排上 效或無效的寫入要求信號; 了脈週期同步地被變成有 接收一個從目標單元來的會 被變成有效或無效的允許信號;二^蛉脈仏號的時脈週期 在該允許信號變成無效之後, 供的寫入資料項在匯流排上供目標單^ ^與時脈同步提 會被提供在時脈信號的每一個個別的=,一個資料項 數目是由前述已提供的寫入長度資訊所決:期,資料項的 2. 如申請專利範圍第] 一、。 中該寫入要求信號包含大^貧料傳輪的方法,其 間。 個大約一個時脈週期的有效時 3. 如申請專利範圍第!項所述之資 中該允許信號包含一個大 、料傳輪的方法,复 4. ^ t It 4 II ^ ^ ^ ^ a, fBl 其中寫入要求信號Γ允項二述么資卿^ 個時脈週期的有效時間;並^ °〜別包合延伸一個或多 其中寫入要求有效爱日 間的時脈週期不同。 s 4脈週期跟允許信號有效期
第36頁 0608-10435twf(nl);S3U02-0003;VICTORCHO.ptd 1247996
六、申請專利範圍 中啟動單元處項所述之資料傳輸的方法’其 的步驟。 ,、則述開始寫入位址以及寫入長度資訊 中啟6動ΐΠΐϊ;圍第1項所述之資料傳輸的方法,其 7 前述寫入要求信號的步驟。 中啟f單元處理提供前述-些寫入資料項^ .種貝料傳輪的方法,在一個啟動覃t芬曰P抑-互相連接的匯流排上I 動 啟動早7L及目彳示早兀 料,其方法包含:上在啟動早…標單元之間傳輸資 當開始寫入位址以凫宜-時,從啟動單元接收一個:^ =資訊表示在匯流排上 地被變成有$文或無$文的寫二=^脈^虎的時脈週期同步 提供一個會隨著時脈信 I就、’ 效的允許信號給啟動單亓·二、、、$ &週期被變成有效或無 資訊在要求信號的有效門:述開始寫入位址及寫入長度 六分a o a 期間被抓取;以及 在該允許化唬變成無效之 時脈同步提供的寫入資料項,1抓—取一些在匯流排上與 信號的每一個個別的時脈週# 了 ^ ^料項會被提供在時脈 提供的寫入長度資訊所決定\ ^料員的數目是由前述已 9·如申請專利範圍笫、一 中該寫入要求信號包含一、述之貝料傳輪的方法,立 間。 個大約一個時脈週期的有效時、 1 0 ·如申請專利範圍第s 弟8項所述之資料傳輪的方法,其 1247996 六、申請專利範圍 中該允許信號包含一 比如申請專利:圍二::脈?的有效時間。 其中寫入要求信,、f述之身料傳輸的方法, 個時脈週期的有效時間並=L號個別包含延伸一個或多 其中寫入要炎古^ ^ ' 間的時脈週期不同。月間的時脈週期跟允許信號有效期 〗2.如申請專利範圍第8項所述 目二早Λ處理提供前述允許信號給啟動單’其 t如申請專利範圍第8項所述之 =的步驟。 中目標單兀處理抓取前述一此 料^輪的方法,其 14 —種資料傳輪的方法-,寫在入一^ 兀互相連接的匯流排上在啟動單元動早π及目標單 料,其方法包含·· ‘早70之間傳輸資 在一個匯流排上與時脈信號同 位址以及讀取長度資訊; ^ 、一個開始讀取 當開始讀取位址以及讀取長 時,提供-個會隨著時脈信號的時脈週期:J匯流排上 效或無效的讀取要求信號; / V地被變成有 接收一個從目標單元夾的合 w 被變成有效或無效的允許信號7 ^ 1 1 &心竣的時脈週期 在該允許信號變成無效之後, 接收-個從目標單元來的區塊就緒信 抓取一些匯流排上與時脈同步提供的讀取 個資料項會被提供在時脈信號的每一個個別的二料項’— 寸脈週期, 第38頁 O608-10435twf(nl);S3U02-0003;VICTORCH〇.ptd 1247996 六、申請專利範圍 資料項的數g H a a Η如 疋由两述已提供的寫入長度資訊所決〜 其中該讀:Λ專, 間。 / ^ ^氣包含一個大約一個時脈遇期的有致時 其中U.允〜申二專Λ範圍第14項所述之資料傳輪的方法, η·如申^二—個大約-個w脈週期的有效時間。 直 〒印專利乾圍第丨4項所述之資料傳輸的方 個時= 及::信號個別包含延伸-個或多 間的=有效期間的時脈週期跟允許信號有效期 豆中2 #/如-申請專利範圍第1 4項所述之資料傳輸的方法, 二 單元處理提供前述開始讀取位址以及讀取長产眘 訊的步驟。 Κ度貝 直1 9 ·如。申睛專利範圍第1 4項所述之資料傳輸的方法, 八中啟動單元處理提供前述讀取要求信號的步驟。 2〇·如申請專利範圍第14項所述之資料傳輸的方法, 其中啟動單元處理接收前述區塊就緒信號的步驟。 2 1 ·如申請專利範圍第1 4項所述之資料傳輸的方法, 其中啟動單元處理抓取前述一些讀取資料項的步驟。 2 2· 種 > 料傳輸的方法,在,個啟動單元及目標單 元互相連接的匯流排上在啟動單元及目標單元之間傳輪資 料,其方法包含·· ' 當開始讀取位址以及讀取長度資訊表示在匯流排上
0608-10435twf(nl);S3U02-0003;VICr〇RCHO.ptd 第39頁 1247996 — I, 六、申謗專利範圍 ____ :或信號的時脈週期同步地被變成有 被變====巧會以:信號的時脈週期 長度資訊在要求心r就,則述開始讀取位址及讀取 文說的有效期間被抓取;以及 f該允許信號變成無效之後, f: ?從目標單元來的區塊就緒信號;以及 個資時脈同步提供的讀取資料項,- 資料項的:目號的每::個別的時脈週期, j述已提供的讀取長度資訊所決定。 Α Φ nVt專利範圍第22項所述之資料傳輸的方、去。 間。 欠七唬包含一個大约一個時脈週期的有致時 八/ 二唬匕合—個大約一個時脈週期的有效時 甘士如±申請專利範圍第22項所述之資料傳輸的方S 。 ,、中讀取要求信號及允許信號個別包含延 佃, 個時脈週期的有效時間;並且 彳申個或多 其中讀取要求有效週期跟允 間的時脈週期不同。 Τ 卞乜唬有效期 26 ·如申請專利範圍第2 2項所述之資料傳輪的方 ,、中目標單元處理提供前述區塊就緒信號的步驟。/ , 27·如申請專利範圍第22項所述之資料傳輪的 ,、中目標單元處理提供前述允許信號給啟動單元的步驟’ 1247996 六、申請專利範圍 28·如申請專利範圍第22項所述之資料傳輸的方法, 其中目標單元處理提供前述一些讀取資料項的步驟。 29. —個啟動單元包含: 一個要求產生單元,搞接以接收一個動作類別指示信 號,並且設定來反應該動作類別指示骏置來使一個讀取或 寫入要求信號在一個通訊匯流排上有欵,而該讀取或寫入 要求信號與一個時脈信號同步; 一個信號交換狀態機耦 動作類別指示信號,該信號 以連接一個允許信號並且反 供一個有效的接續區塊信號 接到要求產生單元來提供前述 交換狀態機耦接到通訊匯流排 應該允許信號有效之狀態來提 一個位址計數器耦接到前述信號交換狀態機來接收 $接續區塊信號,該位址計數器被設定反應一個有效 ^區塊信號來同步地提供-個前述讀取或寫人動作將開始 ::址以及一個長度來指示一個在該動作中: 傳輸之資料項的數目; w徘上 一個寫入資料先進先出暫存器以及寫入 器耦接到信號交換狀態機來接# ^ 二 先出控制 入識進先出暫存器以及控制器被設定來反岸一個:寫 的接續區塊信號,在一個_ Λ說备士 ^疋木汉應個有效 上提供前述數目的資料項:=作¥同步地在通訊匯流排 一個讀取資料先進先出暫存 器被耦接以在一個讀取動作時接 數目的資料項,以及—個 : 1固在通訊 裔以及讀取先進先出控制 收在通訊匯流排上之前迷 匯流排的讀入讀取資料作
1247996 六、申請專利範圍 號,並且提供一個接收接續區塊 3〇· —個目標單元包含: 一個信號交換狀態機被耦接 讀取或寫入信號以及一個單元可 入信號與一個時脈信號同步; 一個要求產生單元被耦接到 個單元可利用信號;該要求產生 以提供一個允許信號;該允許信 取或寫入要求信號以及一個有效 步地變為有效;以及 一個資料先進先出緩衝器以 地提供一個已預先規定數目的讀 先規定數目的寫入資料項,以及 資料就緒信號,並且從匯流排接 號0 仏就到通訊匯流排上。 來從通訊匯流排接收一個 ^用信號,前述讀取或寫 ^ 5虎交換狀態機以接收一 I %被耦接到通訊匯流排 號’為回應一個有效的讀 的單元可利用信號,被同 及先進先出控制器來同步 取資料項或接收一個已預 一個給通訊匯流排的讀取 收一個接收接續區塊信
TW093116655A 2003-06-10 2004-06-10 Apparatus and method for high speed data transfer TWI247996B (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US45936903A 2003-06-10 2003-06-10

Publications (2)

Publication Number Publication Date
TW200504514A TW200504514A (en) 2005-02-01
TWI247996B true TWI247996B (en) 2006-01-21

Family

ID=33510806

Family Applications (1)

Application Number Title Priority Date Filing Date
TW093116655A TWI247996B (en) 2003-06-10 2004-06-10 Apparatus and method for high speed data transfer

Country Status (3)

Country Link
US (1) US7302508B2 (zh)
CN (1) CN1322443C (zh)
TW (1) TWI247996B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8244825B2 (en) * 2006-11-06 2012-08-14 Hewlett-Packard Development Company, L.P. Remote direct memory access (RDMA) completion
CN101923442B (zh) * 2009-06-09 2012-05-23 英业达集团(天津)电子技术有限公司 iSCSI存储设备访问过程中的缓存数据同步系统及方法
JP5876364B2 (ja) * 2012-04-13 2016-03-02 ラピスセミコンダクタ株式会社 半導体メモリ及びデータ読出方法
KR20160094154A (ko) * 2015-01-30 2016-08-09 에스케이하이닉스 주식회사 데이터 전송 회로
TWI625618B (zh) * 2017-07-11 2018-06-01 新唐科技股份有限公司 可程式化接腳位準的控制電路
CN114115588B (zh) * 2021-09-26 2023-11-03 洛晶半导体(上海)有限公司 感应面板的控制芯片、控制电路及控制方法

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5182761A (en) * 1991-01-31 1993-01-26 Motorola, Inc. Data transmission system receiver having phase-independent bandwidth control
US5463753A (en) * 1992-10-02 1995-10-31 Compaq Computer Corp. Method and apparatus for reducing non-snoop window of a cache controller by delaying host bus grant signal to the cache controller
US5473762A (en) * 1994-01-25 1995-12-05 Apple Computer Inc. Method and system for pipelining bus requests
US5938746A (en) * 1996-02-29 1999-08-17 Sanyo Electric Co., Ltd. System for prioritizing slave input register to receive data transmission via bi-directional data line from master
JP3711730B2 (ja) * 1998-02-06 2005-11-02 富士ゼロックス株式会社 インターフェース回路
US6128749A (en) * 1998-11-03 2000-10-03 Intel Corporation Cross-clock domain data transfer method and apparatus
US6571325B1 (en) * 1999-09-23 2003-05-27 Rambus Inc. Pipelined memory controller and method of controlling access to memory devices in a memory system
US6651148B2 (en) * 2000-05-23 2003-11-18 Canon Kabushiki Kaisha High-speed memory controller for pipelining memory read transactions
US6748505B1 (en) * 2000-07-11 2004-06-08 Intel Corporation Efficient system bus architecture for memory and register transfers
JP3665030B2 (ja) * 2002-02-19 2005-06-29 Necマイクロシステム株式会社 バス制御方法及び情報処理装置
CN100421096C (zh) * 2002-05-08 2008-09-24 威盛电子股份有限公司 高速数据传输器及其传输方法

Also Published As

Publication number Publication date
CN1564144A (zh) 2005-01-12
TW200504514A (en) 2005-02-01
US7302508B2 (en) 2007-11-27
CN1322443C (zh) 2007-06-20
US20040255061A1 (en) 2004-12-16

Similar Documents

Publication Publication Date Title
CN103198043B (zh) 一种改进的AHB to APB总线桥及其控制方法
TWI358636B (en) System for time ordering events
US9571215B2 (en) Measuring time offsets between devices with independent silicon clocks
JP2002530744A (ja) 多重レベル接続識別を備えた通信のシステムおよび方法
JP2015520459A (ja) リングトポロジーステータス指示
JP2018109965A (ja) データ処理
TWI247996B (en) Apparatus and method for high speed data transfer
CN1952900A (zh) 可编程通用多核处理器芯片上处理器之间程序流同步方法
TW200832142A (en) A method for time-stamping messages
US7340553B2 (en) Data processing device and method for transferring data
JP2007122410A (ja) バス調停回路及びバス調停方法
US10489319B2 (en) Automatic transmission of dummy bits in bus master
JP6272847B2 (ja) クロック・ドメイン間のデータ転送
JP2007525922A (ja) 互いに同期しない回路モジュールを備える回路
WO2018133879A1 (zh) 一种服务器及其处理数据的方法
TW309603B (zh)
TW432286B (en) Bus retry read method
EP2687938A2 (en) Measuring time offsets between devices with independent silicon clocks
JP2011070701A (ja) データを伝送する処理システム及び方法
JP2010118020A (ja) リクエスト順序制御システム、リクエスト順序制御方法およびリクエスト順序制御プログラム
KR20060004829A (ko) 디렉트 메모리 엑세스 장치, 디렉트 메모리 엑세스 장치를통한 데이터를 송수신하는 시스템 및 방법
EP2800003B1 (en) Method and device for realizing end-to-end hardware message passing
US11995012B2 (en) High speed interface for multi image sensor device
JP2002141922A (ja) ループ型バスシステム
JP4603054B2 (ja) スケーラブルバス構造