TWI249680B - A multi-device system and the method thereof - Google Patents

A multi-device system and the method thereof Download PDF

Info

Publication number
TWI249680B
TWI249680B TW93100612A TW93100612A TWI249680B TW I249680 B TWI249680 B TW I249680B TW 93100612 A TW93100612 A TW 93100612A TW 93100612 A TW93100612 A TW 93100612A TW I249680 B TWI249680 B TW I249680B
Authority
TW
Taiwan
Prior art keywords
slave
master
request
arbitration
devices
Prior art date
Application number
TW93100612A
Other languages
English (en)
Other versions
TW200523748A (en
Inventor
Cheng-Ya Chou
Min-Liang Sun
Original Assignee
Magima Digital Information Co
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 Magima Digital Information Co filed Critical Magima Digital Information Co
Priority to TW93100612A priority Critical patent/TWI249680B/zh
Publication of TW200523748A publication Critical patent/TW200523748A/zh
Application granted granted Critical
Publication of TWI249680B publication Critical patent/TWI249680B/zh

Links

Landscapes

  • Bus Control (AREA)

Description

1249680 並依頻寬要求的不同分為多個不同層4 , 裝置,與匯流排相連,並依頻寬要以及複數個從屬 層次,且可通過匯流排與主裝置之问分為多個不同 層次較高的主裝置和層次較高的從屬^資料傳送運算。 較高的資料傳送速率;層次較低的1之間的通訊採用 的通訊或主裝置與層次較低的從屬裝置肖從屬裝置之間 較低的資料傳送速率。 1 之間的通訊則採用 另外’根據本發明之上述目的,提一 高層次的主裝置和較高層次的從屬裝置離:::佈局’較 器較近,而較低層次的主裝置和較低眉^ /机排上的仲裁 流排上的仲裁器較遠。 人的彳欠屬裝置離匯 依肤本發明一實施例,此多裝置系 制,例如在仲裁器中進一步設有反向件典,有反向仲裁機 為回應主裝置所發出的讀運算請求而:組,從屬裝置 向反向仲裁模組申請匯流排佔用。反向你讀數據時,可以 依據主裝置和從屬裝置間的資料傳送^中裁的仲裁時機可 因此,并百命面七私 > 迷率來決定。 頻見要求較咼的主裝置和 採用較高的資料傳送速率,能夠很屬裝置之間的通訊 算,同時’從物理佈局上,較高層次的也完成資料傳送運 的從屬裝置離匯流排仲裁器較近,主裝置和較高層次 相對減小,因此能夠充分地滿足此=佈線延遲的影響也 頻寬要求較低的主裝置和從屬裝置雖^置的頻寬要求。而 遠,但採用了較低的資料傳送速率,然離匯流排仲裁器較 間的資料㈣時間受佈線延冑的 主襄置和從屬裝置之 ,使得 /曰同樣有所減少 8 1249680 系統傳輸延遲的不確定性也能相對降低。 【實施方式】
請參照第1圖,本發明實施例的多裝置系統包括一匯流 排1 0 1,與匯流排1 〇 1相連的仲裁器n 4,以及分別與匯流 排101相連的主裝置A 102、主裝置B 103、主裝置C 104、 主裝置D105、主裝置E106、主裝置ρ 1〇7和從屬裝置A 108、從屬裝置B 109、從屬裝置c no、從屬裝置d 111、 從屬裝置E 112、從屬裝置F 113。其中,主裝置可以是 CPU、DSP、ASIC或者是子系統等;從屬裝置可以是同步 動態隨機存取記憶體(SDRAM)或直接記憶體存取(dma) 專裝置。匯流排上的仲舞哭 可 T ^ ^ ’可以對連接在匯流排上的各 裝置所提出的匯流排使用士主七/ Μ史用清求做出仲裁,經仲裁選中的主 裝置佔有匯流排與對庫的"Λ感壯 丁應的從屬裝置進行資料傳送。 主裝置可以分成重要 要主裝置和次要主裝置。本實施例 中,主裝置A 102、主# 工衣置B 103和主裝置c 104為重要 主裝置,而主裝置D 1〇 士狀要广 、主叙置e 1〇6和主裝置F 107 為次要主裝置。一般而+ ㊁’可以把對匯流排回應速度要求 較高的主裝置設為重 ^ 受主衣置,如需進行即時處理的裝置 等,而把對回應速声 X要求不是太高的裝置設為次要主裝 置。同樣地,從屬梦罢 恶 &罝也分成重要從屬裝置和次要從屬裝 置。在本實施例中, 從屬裝置C "0為重:屬裝置A 108、從屬裝置B 109和 屬裝置E U2和從屬:從屬裝置:❿從屬裝置D⑴、從 、置F 113為次要從屬裝置。一般而 9 1249680 口 ,可以把對匯流排回應速度要求較高的從屬裝置設為重 要從屬裝置,如需進行即時處理的裝置等,而把對回應速 度要求不是太高的裝置設為次要從屬裝置。 請參照第2圖,其繪示本實施例之匯流排系統的物理 佈局示意圖。圖中示意性地表示出,在物理佈局上,重要 主裝置A 202、重要主裝置β 203和重要主裝置C 204,離 仲裁器201較近,而次要主裝置D 2〇5、次要主裝置E 2〇6 和次要主裝置F 207離仲裁器2〇1較遠;重要從屬裝置a 2〇8、重要從屬裝置B 209和重要從屬裝置C2l〇離仲裁器 2〇ι較近,而次要從屬裝置D211、次要從屬裝置E2i2: 次要從屬裝置F 213離仲裁器2〇1較遠。匯流排上並對主 裝置和從屬裝置分別設置了兩層多工器。次要主裝置D 205、次要主裝置E 206和次要主裝置F 2〇7,分別有訊 線,接至第二主裝置多工器216的輸入端,第二主裝置^ 工器216的輸出端連接至第一主裝置多工器 二夕 瑞0镇一:t 壯耍夕 口口 的輸入 &弟一主衣置多工益216另有訊號線與仲裁器2 使次要主裝置D 205、次要主裝置E 2〇6和次
207也可以直接向仲裁器2〇1傳送資料。重 、置F 202、重要主奘罢王衣置 A 衣置B 203和重要主裝置c 204各右知& 號線連接至第—主梦晉夕τ抑?彳1 a认 有相應的訊 禾主衣置多工态2 1 4的輸入端,第_ 多工杰2 1 4的輸出端連接至所有從屬裝置。因此,衣置 裝置可以在得到E流排授權後直接向對應的壯2主 資料。同樣地’次要從屬裝置D 2 i】、次要 衣置傳送 和次要從屬裝置F 213,分別有訊 ' E川 <乐一從屬裝 10 1249680 置多工器217的輸入端,第二從屬裝置多工器217的輸出· 端連接至第一從屬裝置多工器2 1 5的輸入端。重要從屬裝· 置A 208、重要從屬裝置B 209和重要從屬裝置C 210各 有相應的訊號線連接至第一從屬裝置多工器215的輸入 端,第一從屬裝置多工器215的輸出端連接至所有主裝 置。因此,在進行讀運算時,所有從屬裝置可以直接向相 應的主裝置回傳資料。在其他實施例中,也可以只使用一 層多工器,或根據實際裝置的數量來選擇多工器的層數。 重要主裝置和重要從屬裝置之間的資料傳送速率較 大,而重要主裝置和次要從屬裝置之間、次要主裝置和重 要從屬裝置之間以及次要主裝置和次要從屬裝置之間的資 料傳送速率較小。在本實施例中,重要主裝置A、重要主 裝置B或重要主裝置C與重要從屬裝置A、重要從屬裝置 B或重要從屬裝置C之間的資料傳送速率為1個資料/時 脈,如匯流排為32位元,匯流排頻率為1兆赫茲(MHz ), 則資料傳送速率為32百萬位元/秒。重要主裝置A、重要 主裝置B或重要主裝置C與次要從屬裝置D、次要從屬裝 置E或次要從屬裝置F之間,或是次要主裝置D、次要主 裝置E或次要主裝置F與重要從屬裝置A、重要從屬裝置 B或重要從屬裝置C之間,以及次要主裝置D、次要主裝 置E或次要主裝置F與次要從屬裝置D、次要從屬裝置E 或次要從屬裝置F之間的資料傳送速率為1個資料/2時 脈,如前述匯流排為3 2位元,匯流排頻率為1兆赫茲,則 資料傳送速率為1 6百萬位元/秒,小於重要主裝置與重要 11 1249680 從屬裝置之間的資料傳送速率32石# Ζ百萬位元/秒。 主裝置發出的匯流排使用請电 ^ 衣刀成不同的級別,本實 施例中,母一主裝置有一 MReq匯、六 ^ 4 L _排請求訊號線與仲裁 器相連,該訊號線傳送的MRea % % 4机唬可用來表示匯流排使 用請求的級別。通過MReq匯流排▲主 ^ ^ , 排4求訊號線發出的MReq 匯流排使用请求訊號分成RE〇、r4 紐派a π矣辦- lrEq和LREQ三類,其 解碼如下表所不。 表1 MReq 訊號 說明 ---Ί 0 0 IDLE ~' —--- 無请求 ^^-——一 0 1 REQ ~~ ~--- 一般讀寫請求 ^-〜 10 LREQ 般和MCmd配人 , ^-— +、 口。如果MCmd為〇,是要 求LOCK的讀運算; 如果MCmd為ί, η如 11 CREQ 強制性碩寫請求,ί Γ7Γ 一-~- 序。 具有比REQ更高的優先順 其中MCmd為讀寫運算請求,低為讀,高為寫。 MReq匯流排使用請求訊號中,creq和lrEq比r叫 馇先順序要高,因此,如果主裝置發出的MReq為creq 戈汉丘Q ’較之R E Q往往能更快速地獲得回應。其中,乙r e q 的請求是一種配對的讀寫運算請求,它請求的是〜個讀寫 運异的配對運算,由於該讀寫運算需要連續進行,而不能 12 1249680 插入其他的運算,因此將其設為一種優先順序別較高的請. 求。 MReq可以在每一次資料傳送時由編寫程式等方式靈 活設定,因此,主裝置發出的匯流排使用請求的優先權等 級可以按實際需求而決定。在其他實施例中,MReq的匯 流排使用請求訊號可以按需要設定一定的等級,其編碼也 可隨之改變,本技術領域人員對此應易於理解和實現。 在本實施例中,匯流排採用流脈衝(Stream Bum ) 形式的資料傳送方式。以流脈衝的形式進行資料傳送,可 傳送的資料包括單一資料及/或脈衝形式的資料。同一個流 脈衝中的單一資料或一個完整的位址連續的脈衝資料可稱 為一個分段脈衝,而分段脈衝之間的位址可以不連續,在 本實施例中,一個流脈衝中的不同分段脈衝還可以發送給 不同的目標從屬裝置。本實施例中規定MLast訊號來代表 主裝置給仲裁器的分段脈衝結束碼,以指示資料傳送的狀
態。MLast訊號有四類值,分別是c〇NT、LAST、SAME 和DIFF。CONT表示一個分段脈衝正在傳送中;LAST表 不一個完整的流脈衝已經結束;SAME表示當前分段脈衝 已經結束,但流脈衝尚未結束’而下—個分段脈衝存取的 從屬裝置與當前分段脈衝相同;DIFF表示一個流脈衝尚未 結束,當前分段脈衝已經結束,而下一個分段脈衝存取 從屬裝置與當前分爲^ Λ>ΓΤ 田⑴刀奴脈衝不同。當MLast訊號為LAST、 SAME、DIFF這三種值時,表示當前分段脈衝已經結束。 在分段脈衝結束時’仲裁器進入可仲裁狀態,下文將對此 13 1249680 作進一步描述。 在一個流脈衝的傳送過裎中, 戈口果沒有其他輕其 的請求提出’當前正在進行資料傳送的主u 二、'、別 匯流排進行資料傳送運算;如果有A他二、丨持、,佔有 使用請求在流脈衝的傳送過程中描ψ 乂向級別的匯流排 可仲裁狀態,m仲裁器將對當前流脈衝的匯"二::入 和其他較高級別的匯流排使用請求一併進行里^求 高級別的匯流排使用請求進行匯流排授權。 ,^中較 當匯流排上的主裝置要求使 I β ^ ^ ^ ^ 定用匯/爪排進行資料傳送運 异%,百先會發出匯流排使用請求給 ^ > τ桃為,由仲裁哭i企 照預設的演算法判斷出可優先進 T甄„。知 疋1丁的研衣。本實施例中, =可進行的仲裁包括正向仲裁和反向仲裁兩個部分。 正向仲裁是指對主裝置發出的匯流排使用tt求進行 反向仲裁是指在讀運算+,對從屬裝置為回傳資料而發出 的匯流排使用請求進行仲裁。而正 T哉又包括兩層仲 裁,分別是第二階段仲裁和第一階段仲裁。 請參照第3圖,圖中麟示的仲裁器包括實現第二階段 仲裁的正向第二階段仲裁模、板306、實現第—階段仲裁的 正向第-階段仲裁模組303和實現反向仲裁的反向仲裁模 組307。正向仲裁後的各訊號經過正向解瑪器⑽解碼後, 达給重要主裝置群302以及次要主裝置群3()ι中之相應的 主裝置與從屬裝置群3〇9中之相應的從屬裝置;反向仲裁 後的各訊號經過反向解碼器3〇8解碼後,&給從屬裝置群 3〇9中之相應的從屬裳置和重要主裝置群如以及次要主 14 1249680 之相應的主裝置。正向第二階段仲裁模組306 將仲裁結出的匯流排使用請求進行仲裁,再 組3〇3則把重== 裁模U3·’第一階段仲裁模 一 要主袭置群3〇2發出的匯流排使用請求和第 一 &段的仲裁結果一起進行仲裁。 心°中裁的第一階段在任何時間都可進行新的仲裁, 斤、Γ管^仲裁演算法可以是熟悉相關技術人員所知曉的各 ^:n在本實施例中’ I向第二階段仲裁模組是採用 口:k先核决算法進行仲裁,即對每一個主裝置設定一個 確:的I:先權等級’在同一時間有兩個或兩個以上的主裝 置提出明求時’則選中優先順序別較高的主裝置進入第一 P白&例如,本實施例中,次要主裝置群3 0丨包括次要主 裝置2、、次要主裝置E和次要主裝置F,其優先權等級分 別没定為1級、2級和3級。這樣,當次要主裝置群3〇丄 提出請求時,仲裁器將選中優先權等級相對較高的次要主 裝置D提出的匯流排請求作為仲裁結果,送入第一階段仲 裁模組303。 請參照第4圖,其繪示了第二階段仲裁一個示範性的 時序圖’其中次要主裝置D發出的匯流排使用請求的訊號 包括MReq3、MLast3和MDstnum3,分別指出請求的級別、 資料傳送狀態和目標從屬裝置的號碼,同樣地,次要主裝 置E發出的匯流排使用請求的訊號包括MReq4、MLast4 和MDstnum4。第二階段仲裁模組發出的仲裁結果訊號包 括 A2Req、A2Last、A2Dstnum 和 A2MNum,這些訊號分 15 1249680 別指出第二級仲裁後得到的請求的級別、資料傳送狀態、 目標從屬裝置的號碼和回應的主裝置的號碼。本實施例 中,對重要主裝置A、重要主裝置B、重要主裝置C、次 要主裝置D、次要主裝置E、次要主裝置F依序編號為〇、 1、2、3、4、5 ;同樣地,對重要從屬裝置A、重要從屬裝 置B、重要從屬裝置C、次要從屬裝置D、次要從屬裝置E、 次要從屬裝置F依序編號為〇、1、2、3、4、5。 當次要主裝置D、次要主裝置E和次要主裝置ρ同時 提出匯流排使用請求時,根據優先等級,仲裁器將優先選 中次要主裝置D提出的匯流排像用請求;若只有次要主裝 置E和次要主裝置F同時提出匯流排使用請求時,根據優 先等級,仲裁器將優先選中次要主裝置E提出的匯流排使 用請求。因此,在第4圖的時序中,第二階段仲裁模組發 出的仲裁結果為優先響應次要主裝置D的匯流排使用請 求。在次要主裝置D的匯流排使用請求響應結束後,仲裁 器才對次要主裝置E此時發出的匯流排使用請求做出回 應。第二階段仲裁模組發出的仲裁結果訊號,包括A2Req、 A2Last、A2Dstnum和A2MNum等,送入第一階段仲裁模 組簽與仲裁。在第4圖的範例中,假定此時無其他匯流排 使用請求參舆仲裁或第二階段仲裁模組被優先選中,則在 第一階段仲裁模組中,匯流排上的仲裁器將發出仲裁訊 號,包括第4圖所示的匯流排授權訊號AGrant和授權主裝 置訊號AMN⑽等。在本實施例中,由於次要主裝置的資 料傳送速率始終為較低的速率,即1個資料/2時脈,因此、, 16 !249680 仲裁器對於次要主裝置送出的杳 的貝枓在兩個時脈只對一個資 料的傳送運算發出AGrant有效$味a 貝 令政Λ 5虎進行回應。 正向第一階段仲裁並不是在 疋在任何時間都可進行新的仲 裁,而只在滿足一定條件而允 Τ 叫允5午仲裁的時候才能進行仲
裁。一般情況下,第一階段可以、* y T 、, 了以進行仲裁的首要條件是當 Μ仲裁器處於閒置狀態。本實 卞仟疋田 Λ ^ 尽Μ方也例中,仲裁器提供了
Arb —state訊號,當該訊號為1〇 ^ 0a LE時,表示仲裁器目前處 於閒置狀態,即當前無正在進行中的仲裁運算。 第-階段仲裁採用了分級仲裁機制,在本實施例中包 括REQ仲裁時機和CREQ仲教眛媸 ϋ & V W萩日寸機。對應於這兩個仲裁時 機,分別設有較低級仲裁時機訊號 风也就AREQ —arb和較高級仲 裁時機訊號ACREQ一arb訊號。針對本實施例流脈衝形式的 資料傳送方式,仲裁狀態機中只有在出現LAST、same和 DIFF這二種分段脈衝結束碼時,才能進入仲裁狀態。在本 實施例中,一個流脈衝過程只能被CREQ級別的其他匯流 排使用請求中斷,而REQ級別的其他匯流排使用請求是不 能中斷一個流脈衝的。因此,在出現LASt訊號時, AREQ —arb说號與ACREQ —arb訊號同時有效;在出現SAME 或DIFF訊號時,只有ACREQ —arb訊號有效。 請參照第5圖,圖中以一個仲裁時機的時序當例子對此 做了說明。在主裝置發出的MLast訊號經仲裁器仲裁後, 仲裁器的正向解碼器會發出ALast訊號,圖中共有三個示 範,分別為LAST、SAME和DIFF。LAST訊號表示一個流 脈衝結束,此時AREQ_arb和ACREQ —arb兩個訊號同時有 17 1249680 效;SAME和DIFF均只表示一個分段脈衝已經結束,而流 脈衝未結束,此時只有ACREQ —arb訊號有效。 請參照第6圖與表2,本實施例的仲裁狀態機共包括三 個片大態·· IDLE、ARBLEVEL1 和 ARBLEVEL2 ° ARBLEVEL1 和ARBLEVEL2分別為前文所述的REQ仲裁時機和CREQ 仲裁時機。以下說明請參照表2。 表2 條件1 沒有一個有效請求是CREQ或LREQ,至少 有1個有效請求是REQ 條件2 在AREQ —arb有效時,且沒有一個有效請求 是 REQ、CREQ 或 LREQ 條件3 至少有1個有效請求是CREQ或LREQ 條件4 在 ACREQ —arb有效時,且沒有一個有效請 求是 REQ、CREQ 或 LREQ 條件5 在ACREQ —arb有效且AREQ —arb無效時, 至少有1個有效請求是CREQ或LREQ,且 記 AEnterST2 為 1 條件6 在ACREQ —arb有效時,且沒有一個有效請 求是 CREQ 或 LREQ,以及 AEnterST2 為 1, 同時把AEnterST2歸零 當 Arb—state 訊號為 IDLE’並且滿足條件 1 ’即 AREQ_arb訊號有效時,只有REQ級別的有效請求而沒有 18 1249680 CREQ 或 LREQ 級別的有效請求,則仲裁器進入 ARBLEVEL1仲裁狀態。在ARBLEVEL1仲裁狀態下,仲裁 器可以對主裝置發出的REQ、CREQ和LREQ級別的匯流 排使用請求進行仲裁。當Arb_state訊號為IDLE,並且滿 足條件3,即 ACREQ_ai*b訊號有效時,只要有CREQ或 LREQ級別的有效請求,而無論是否有REQ級別的有效請 求,則仲裁器進入ARBLEVEL2仲裁狀態。在ARBLEVEL2 仲裁狀態下,仲裁器只對主裝置發出的CREQ或LREQ級 別的匯流排使用請求進行仲裁,而REQ級別的匯流排使用 請求不參與仲裁。 從第6圖也可以看到,仲裁狀態機中ARBLEVEL1和 ARBLEVEL2兩個狀態在一定的條件也可以相互轉換。因 此,在本實施例中,引入了 AEnterST2訊號,用來記錄被 中斷的仲裁狀態。當仲裁器正在ARBLEVEL1狀態下仲裁 時,由於出現較高級別的有效請求,如CREQ或LREQ請 求,需要轉換仲裁狀態到 ARBLEVEL2狀態下,此時記 AEnterST2訊號為1。由於仲裁器從ARBLEVEL 1狀態下轉 換到ARBLEVEL2狀態下時,需記AEnterST2訊號為1, 因此,在AEnterST2訊號為1的情況下,當ARBLEVEL2 狀態下的仲裁運算完成後,若只有rEq級別的匯流排使用 請求而沒有CREQ或LREQ級別的匯流排使用請求,仲裁 ,器將不進行重新仲裁,而是返回到原先的仲裁狀態,並在 返回的同時將AEnterST2訊號歸零。而在轉換仲裁狀態 時’需要保留仲裁器的内部狀態,要保留的訊號量暫時放 19 1249680 在緩衝器中,要保留的訊號量主要有仲裁器送給主裝置以 回應主裝置的訊號AMNum、仲裁器送給從屬裝置以回應 k屬裟置的訊號ASNum和用來指明資料傳送速率的仲^ 器内部訊號ALevel。在本實施例中,ALevel訊號為高表示 使用較高的速率,即1個資料/時脈,而ALevel訊號 表示使用較低的速率,即i個資料/2時脈。而在其# 例中,也可採用更多個不同的資料傳送速率,並相應地對 ALevel訊號進行編碼。 、 在k IDLE狀態直接轉換到ARBLEVEL2狀態下時,卷 仲裁器完成ARBLEVEL2狀態下的仲裁任務後,即使有 REQ級別的有效請求而沒有CREq或lreq級別的有效請 求犄,仲裁器仍將重新對全部的有效請求進行仲裁。 在ARBLEVEL1狀態下,仲裁器採用一般演算法,公 平地對各個主裝置發出的各類匯流排使用請求進行仲裁, 從中遠出一個請求,並對發出該請求的主裝置傳送授權訊 號,則主I置開始貧料傳送。在ARBLEVEL2狀態下,仲 裁裔將採用一般演算法對CREQ級別的匯流排使用請求進 打仲裁,從中選出一個請求,對發出該匯流排使用請求的 主裝置傳送授權訊號’主裝置接到授權訊號後開始佔用匯 流排進行資料傳送運算。在ARBLEVEL2狀態下,REQ級 別的請求將被忽略。這裏的一般演算法,指單迴圈仲裁演 异法(Round Robin)或其他為本技術領域人員公知的仲裁 演算法,在此不再贅述。 請苓照第7圖,在本實施例的另一個示範例中,次要主 20 1249680 裝置D和次要主裝置E需要完成與第4圖的示範例同樣的 資料傳送運算,但在次要主褒置D的傳送過程中,仲裁器 收到了一個较高級別的匯流排使用請求。在第7圖中, 要主裝置A發出了匯流排使用請求,其訊號包括熥〜卟重 MLastO和MDstnumO等。仲裁器收到CREQ級別重要主裝 置A的匯流排使用請求後,仲裁狀態機進入到 ARBLEVEL2,對重要主裝£ A的匯流排使用請求進 裁。在次要主裝置D的第一個分段脈衝結束時,仲裁器 權重要主裝置A進行資料傳送。重要主裝置a的發送 為重要從屬…’因此其資料傳送速率較高,為… 料/時脈。重要主裝置A的資料傳送完成後返回原流脈衝貝 假設此時無其他CREQ級別的匯流排使用請求,則繼續進 打次要主裝置D的資料傳送以及次要主裝置E的 送,貧料傳送速率仍為i個資料/2時脈。 、 本:广:中主U A和主裴置B還具有多執行緒 =;一 t行緒可以是CPU、DSP、繼或者是子 t:二 緒獲得授權使用匯流排時,仲裁器會 毛/I緒所屬主裝置的號碼和該執行緒的號碼。一個 執灯緒的請求未被執行完全時, 從屬裝置還未準備好時,允許同= ; = :料所在的 發出請求,因此可能會有幾個不同置執行緒 同從屬裝置同時回傳的情形。在其他 對庫的不可此出現幾個不同主裝置請求的讀數據,從 α自對應的不同從屬裝置同時回傳的情形。仲裁器的反向 21 1249680 仲裁模組在遑種情形下,可以# 叙# Λ對各個不同從屬裝置回傳嘈 态反向仲裁完成後,仲裁器提# @ 我 疋1,、的ARGrant訊號將置於右 效狀態,授權選中的從屬裝置佔 ^ 一 佔有匯^排進行資料回傳運 异’同時,表示已有從屬裝置驊彳 置獲侍彳又榷並佔有匯流排, ARGrant訊號為各裝置共用。 本實施例巾,仲裁器的反向仲裁也有仲裁時機。在次 要從屬裝置進行反向資料傳送時或是進行反向資料傳送的 目標是次要主裝置時,即正在進行資料傳送速率為丨個資 料/2時脈的資料傳送運算時,仲裁器不進行仲裁。 、 請參照第8圖,圖中對反向仲裁的仲裁時機進行示範性 說明。圖中ARSNum訊號表示進行反向資料傳送的從屬裝 置,ARGrant Λ號表示仲裁器對反向資料傳送的從屬裝置 和對應主裝置發出回應,ARMNum訊號表示反向資料傳送 的目標主裝置’ ARArb一forbid訊號為低時,表示允許對反 向傳送的從屬裝置的有效請求做出仲裁。從第8圖中可以 看出,重要從屬裝置A在對重要主裝置B進行反向資料傳 送時,資料傳送速率為1個資料/時脈,ARArb —forbid訊 號為低,可進行仲裁;重要從屬裝置B向次要主裝置F回 傳資料的反向匯流排使用請求,資料傳送速率為1個資料 /2時脈,ARArb_forbid訊號變高,不可進行反向仲裁;次 要從屬裝置E對重要主裝置B和次要從屬裝置F對次要主 裝置D發出反向匯流排使用請求時,資料傳送速率均為i 個資料/2時脈,ARArb_forbid訊號會變高,不可進行反向 22 !249680 仲裁。 本實施例中,反向請求也分成不同等級,包括SREQ '、及別的反向請求和CSREQ級別的反向請求,其中CSREQ 、另】的反向請求優先順序高於SREQ級別的反向請求。在 仲裁為對反向請求進行仲裁時,首先回應CSREQ級別的反 向清求。同級別的反向匯流排使用請求則按發出反向請求 的攸屬裝置的固定優先順序來決定。例如,可將從屬裝置 A攸屬裝置6、從屬裝置C、從屬裝置D、從屬裝置E和 7屬農置F的固定優先順序由高到低設定,因此,若從屬 ▲ 2 A、從屬裝置B和從屬裝置^同時發出反向匯流排使 1明求’仲裁器將優先響應從屬裝置A的反向匯流排使用 明求,而若只有從屬裝置B和從屬裝置C同時發出同級別 的反向匯流排使用請求時,仲裁器將優先響應從屬裝置B ::向匯流排使用請求。在其他實施例中,也可採用其他 r去對反向匯流排使用請求進行仲裁,同樣應該包含 本發明的實質範圍内。 躍然本發明 太癸昍/ 、丄於丹亚非用以限定 又’任何_習此技藝者’在不脫離本發明 :附::作各種之更動與潤飾,因此本發明之保護範圍:: 後附之申請專利範圍所界定者為準。 田視 【圖式簡單說明】 圖 以下附圖為對本發明實施例的辅 對本發明實施例的闡述,是為進一 助說明,結合 步揭露本發明 以下附 的特徵 23 1249680 所在,但並不限制本發明’圖中相同符號代表實施例中相 應元件或步驟,其中: 第1圖繪示本發明一實施例的多裝置系統結構示意 圖; 第2圖繪示第1圖所示多裝置系統的匯流排結構示意 圖; 第3圖繪示本發明一實施例的仲裁器之結構圖; 第 4圖繪示本發明一實施例之第二階段仲裁的時序 圖, 第5圖繪示本發明一實施例之第一階段仲裁的仲裁時 機時序圖; 第6圖繪示本發明一實施例之仲裁器的仲裁狀態機工 作原理圖; 第7圖繪示本發明一實施例的正向仲裁時序圖;以及 第8圖繪示本發明一實施例的反向仲裁時機時序圖。
102 :主裝置A 104 :主裝置C 106 :主裝置E 108:從屬裝置A 110 :從屬裝置C 112 :從屬裝置E 114 :仲裁器
【元件代表符號簡單說明】 1 0 1 :匯流排 103 :主裝置B 105 :主裝置D 107 :主裝置F 109 :從屬裝置B
I 11 :從屬裝置D
II 3 :從屬裝置F 24 1249680 201 : 203 : 205 : 207 : 209 : 211: 213 : 215 : 216 : 217 : 301 : 303 : 304 : 306 : 307 : 309 : 仲裁器 202 : 重要主裝置A 重要主裝置B 204 : 重要主裝置B 次要主裝置D 206 : 次要主裝置E 次要主裝置F 208 : 重要從屬裝置A 重要從屬裝置 B 210 : 重要從屬裝置C 次要從屬裝置 D 212 : 次要從屬裝置E 次要從屬裝置 F 214 : 第一主裝置多工器 第一從屬裝置多工器 第二主裝置多 工器 第二從屬裝置多工器 次要主裝置群 302 : :重要主裝置群 正向第一階段仲裁模組 仲裁狀態機 305 : 正向解碼器 正向第二階段仲裁模組 反向仲裁模組 308 :反向解碼器 從屬裝置群
25

Claims (1)

1249680 圍 拾、申請專利範 統至少包含: 其中該些主裝置依照 裝置以及複數個低頻 ,通過該匯流排與該 中該些從屬裝置依照 屬裝置以及複數個低 種多裝置系統,該多裝置系 匯减排; ” 并—複數個主裝置與該匯流排相連, 員寬要求可分為複數個高頻寬要求主 寬要求主裝置; 複數個從屬裝置與該匯流排相連 些主裝置次 ^ <間進仃貧料傳送運算,其 頻見要求可分為複數個高頻寬要求從 頻寬要求從屬裝置;以及 一仲裁器,供仲裁該匯流排之資料傳送運算,該仲 為至少包含: 一正向仲裁裝置,至少包含: … 主 用請求進行判斷’選 ;以及 對該候選低頻寬要求 主装置發出的至少一 選擇/授權主裝置’ 由該暖流排對該些從 以及 頻%要求從屬裝置發 ^斷,選擇出一授權 一第二階段仲裁模組,對該些低頻寬要求 裝置發出的至少一匯流排使 擇一候選低頻寬要求主裝置 一第一階段仲裁模組’ 主裝置以及該些高頻寬要求 匯流排使用請求進行判斷’ 其中該授權主裝置被允許經 屬裝置進行資料傳送運算; 一反向仲裁裝置,對該些高 出的至少一匯流排使用請求進行 26 1249680 從屬裝置,其中該授權從屬裝置被允許經由該匯流排 對該些高頻寬要求主裝置進行反向資料傳送運算。 2. 如申請專利範圍第1項所述之多裝置系統,其中該 些高頻寬要求主裝置和該些高頻寬要求從屬裝置之間的資 料傳送速率高於該些低頻寬要求主裝置和任一該些從屬裝 置或任一該些主裝置和該些低頻寬要求從屬裝置之間的資 料傳送速率。 3. 如申請專利範圍第1項所述之多裝置系統,其中該 些高頻寬要求主裝置以及該些高頻寬要求從屬裝置與該仲 裁器之物理距離小於該些低頻寬要求主裝置以及該些低頻 寬從屬裝置與該仲裁器之物理距離。 4. 如申請專利範圍第1項所述之多裝置系統,其中該 些主裝置為具有多執行緒(thread)的主裝置。 5 ·如申請專利範圍第1項所述之多裝置系統,其中該 第二階段仲裁模組係採用固定優先權演算法(fixed priority algorithm)來選擇該候選低頻寬要求主裝置。 6.如申請專利範圍第1項所述之多裝置系統,其中該 第一階段仲裁模組係採用單迴圈仲裁演算法(Round Robin) 來選擇該授權主裝置。 27 1249680 7.如申請專利範圍第1項所述之多裝置系統,其中該 反向仲裁裝置係採用固定優先權演算法(fixed priority algorithm)來選擇該授權從屬裝置。
8 · —種多裝置糸統之操作方法,供仲裁一匯流排之資 料傳送運算,該匯流排連接複數個主裝置以及複數個從屬 裝置,其中該些主裝置依照頻寬要求可分為複數個高頻寬 要求主裝置以及複數個低頻寬要求主裝置,且該些從屬裝 置依照頻寬要求可分為複數個高頻寬要求從屬裝置以及複 數個低頻寬要求從屬裝置,該操作方法包含: 對該些低頻寬要求主裝置發出的至少一匯流排使用請 求進行判斷’選擇一候選低頻寬要求主裝置;
對該候選低頻寬要求主裝置以及該些高頻寬要求主裝 置發出的至少一匯流排使用請求進行判斷,選擇一授權主 裝置,其中該授權主裝置被允許經由該匯流排對該些從屬 穿置進行資料傳送運算;以及 對該些高頻寬要求從屬裝置發出的至少一匯流排使用 请求進行判斷’選擇出一授權從屬裝置’其中該授權從屬 裝置被九許經由該匯流排對該些高頻寬要求主裝置進行反 9.如申請專利範圍第8項所述之操作方法,其中該些 高頻%要求主裝置和該些高頻寬要求從屬裝置之間的資料 28 1249680 傳送速率高於該些低頻寬要求主裝置和任一該些從屬裝置 成任/該些主裝置和該些低頻寬要求從屬裝置之間的資料 傳送速率 I 〇.如申請專利範圍第8項所述之操作方法,其中該些 高頻寬要求主装置以及該些高頻寬要求從屬裝置與該仲裁 弯之物理距離小於該些低頻寬要求主裝置以及該些低頻寬 從屬裝置與該仲裁器之物理距離。 II ·如申請專利範圍第8項所述之操作方法,其中該些 主裝置為具有多執行緒(thread)的主裝置。 1 2 ·如申清專利範圍第8項所述之操作方法,其中係採 用固定優先權演算法(fixed priority algorithm)來選擇該候 選低頻寬要求主裝置。 1 3 ·如申睛專利範圍第8項所述之操作方法,其中係採 用單迴圈仲裁演算法(Round Robin)來選擇該授權主裝置。 用固 如申睛專利範圍第8項所述之操作方法,其中係採 > 疋彳支先權演算法(fixed priority algorithm)來選擇該授 核從屬裝置。 29
TW93100612A 2004-01-09 2004-01-09 A multi-device system and the method thereof TWI249680B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
TW93100612A TWI249680B (en) 2004-01-09 2004-01-09 A multi-device system and the method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW93100612A TWI249680B (en) 2004-01-09 2004-01-09 A multi-device system and the method thereof

Publications (2)

Publication Number Publication Date
TW200523748A TW200523748A (en) 2005-07-16
TWI249680B true TWI249680B (en) 2006-02-21

Family

ID=37430178

Family Applications (1)

Application Number Title Priority Date Filing Date
TW93100612A TWI249680B (en) 2004-01-09 2004-01-09 A multi-device system and the method thereof

Country Status (1)

Country Link
TW (1) TWI249680B (zh)

Also Published As

Publication number Publication date
TW200523748A (en) 2005-07-16

Similar Documents

Publication Publication Date Title
EP1027657B1 (en) A fully-pipelined fixed-latency communications system with a real-time dynamic bandwidth allocation
US7275119B2 (en) Early detection and grant, an arbitration scheme for single transfers on AMBA advanced high-performance bus
TWI309358B (en) Weighted bus arbitration based on transfer direction and consumed bandwidth
US5623672A (en) Arrangement and method of arbitration for a resource with shared user request signals and dynamic priority assignment
US6393506B1 (en) Virtual channel bus and system architecture
CN103543954A (zh) 一种数据存储管理方法和装置
US20030229742A1 (en) Methods and structure for state preservation to improve fairness in bus arbitration
US20030088722A1 (en) System and method for managing priorities in a PCI bus system
US20080059674A1 (en) Apparatus and method for chained arbitration of a plurality of inputs
Weber et al. A quality-of-service mechanism for interconnection networks in system-on-chips
US7543093B2 (en) Method and system for stream burst data transfer
EP1820109B1 (en) Time-based weighted round robin arbiter
KR100803114B1 (ko) 메모리 중재 방법 및 시스템
KR100626362B1 (ko) 고속 대역폭의 시스템 버스를 중재하기 위한 중재기, 중재기를 포함하는 버스 시스템 및 버스 중재 방법
TWI249680B (en) A multi-device system and the method thereof
US6571306B1 (en) Bus request mechanism for bus master which is parked on a shared bus
US6889283B2 (en) Method and system to promote arbitration priority in a buffer queue
US7058742B2 (en) Method and apparatus for arbitrating common bus by using urgent channel
JP2009519524A (ja) データ伝送バスにアクセスする方法、対応する装置およびシステム
KR100973419B1 (ko) 버스 중재 방법 및 장치
US7130947B2 (en) Method of arbitration which allows requestors from multiple frequency domains
WO2006045216A1 (fr) Dispositif et procede d'arbitrage
US6854036B2 (en) Method of transferring data in a processing system
TWI559228B (zh) 可變長度仲裁方法及裝置
US20070198730A1 (en) Embedded system with a bus and arbitration method for same

Legal Events

Date Code Title Description
MM4A Annulment or lapse of patent due to non-payment of fees