TWI262393B - Bus arbiter for integrated circuit systems - Google Patents

Bus arbiter for integrated circuit systems Download PDF

Info

Publication number
TWI262393B
TWI262393B TW092113558A TW92113558A TWI262393B TW I262393 B TWI262393 B TW I262393B TW 092113558 A TW092113558 A TW 092113558A TW 92113558 A TW92113558 A TW 92113558A TW I262393 B TWI262393 B TW I262393B
Authority
TW
Taiwan
Prior art keywords
bus
master
busbar
masters
closest
Prior art date
Application number
TW092113558A
Other languages
English (en)
Other versions
TW200400438A (en
Inventor
Young-Sik Kim
Original Assignee
Samsung Electronics Co Ltd
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 Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of TW200400438A publication Critical patent/TW200400438A/zh
Application granted granted Critical
Publication of TWI262393B publication Critical patent/TWI262393B/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/14Handling requests for interconnection or transfer
    • G06F13/36Handling requests for interconnection or transfer for access to common bus or bus system
    • G06F13/362Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control
    • G06F13/364Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control using independent requests or grants, e.g. using separated request and grant lines
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Bus Control (AREA)

Description

1262393 玖、發明說明: 本申請案主張申請於2002年5月21日之韓國專利申 請案第2002-28061號的優先權。在此合併上述案之全部 揭露內容以爲參考。 發Μ所屬之枝術領域 本發明是有關於一種積體電路裝置的匯流排系統,且 特別是有關於一種在積體電路系統內控制匯流排之佔用的 匯流排仲裁器(bus arbiter)。 先前技術 匯流排系統本質上是在計算及資料處理裝置的不同功 能元件間,管理介面操作的資料及控制訊號,理想上是希 望有更簡單的架構與更便宜。特定來說,單一晶片系統 (system-on-a-chips簡稱SOCs)常常採用匯流排系統以在運 作中互聯功能方塊。 一種典型的匯流排系統,如第1圖所示,基本上是由 匯流排1、匯流排仲裁器2、以及複數個匯流排主控器(bus maSter)BM0〜BMn-1 與匯流排僕從器(bus 所建構而成。匯流排主控器在對匯流排仲裁器2發出匯流 排要求(bus request)後,並從匯流排仲裁器2獲得匯流排 擁有權之情況下,從/至-個想要的匯流排僕從器讀與寫 資料。在佔有使麵流排i時有—個_就是—個要求給 一次。匯流排僕從器不能有匯流排擁有權,伸可因應匯流 排主控器誠寫_求,通供__㈣丨。匯流排 仲裁器2在所有要求匯流排擁有權以容許進人匯流排i的 匯流排主控器中’授予給最有優先權的一個。 11431pif.doc/008 5 1262393 匯流排主控器l/n。但是,在包括有複數個匯流排主控器 及僕從器的SOC系統中,(b)的方法其缺點在不能對特定 的匯流排主控器增加匯流排使用率,而此特定的匯流排主 控器比其他匯流排主控器需要更多的匯流排使用時間。 循環可調整(d),補償(a)或(c)方法的缺失,將匯流排 主控器分成如第2圖(請參考由Tom Shanley及Don Anderson所提出之”PCI系統架構”;Addision-Wesley出版 公司,第四版)所示的群組,來仲裁匯流排之使用。參考 到第二圖,匯流排主控器A,B,X,Y,及Z被分成兩個群組, 亦即,高優先權群組HPG以及低優先權群組LPG。HPG 群組包括匯流排主控器A與B,而LPG群組包括匯流排 主控器X,Y,及Z。假設從匯流排主控器引起有匯流排要 求,則匯流排擁有權之順序可能就被安排成A-B-X-A-B-Y-A-B-Z-A-B-X-·..。如果從匯流排主控器而來有9次匯流 排要求,匯流排佔用率會安定在例如A=3/9=l/3, B=3/9=l/3, X=l〈9,Y=l/9,Z=l/9。此第二圖之仲裁機制也具有在調整 匯流排主控器之匯流排佔用率的限制。 在表一中所總結的仲裁方法是可適用於大部分有高頻 率操作需求的匯流排系統。當系統使用在資料通訊或遠端 通訊時,其應用可程式化匯流排佔用率於某一想要値而沒 有限制的匯流排仲裁方式。例如,被選擇的匯流排主控器 之匯流排佔有的一段區間被程式化成保持在設定給此被選 擇的匯流排主控器預定的資料率。但是,這種資料通訊系 統的仲裁方法在使用到如SOCs類的系統時會有困難,此 類SOCs系統處之匯流排要求非常動態地發生在每一時脈 11431pif.doc/008 7 1262393 週期’並且需要複雜的演算法及硬體架構。 控制匯流排主控器之匯流排佔用率的設施具有以下的 事實需要:(1)功能性地區別之匯流排主控器可能互相要求 不同的匯流排佔用率,特定的匯流排主控器比其他想要有 高一點的佔有率(例如:具有100Mbps的乙太功能區塊想 要比具有120Mbps之USB有不同的佔有率);(2)可能會藉 由特定的匯流排主控器發生衡平(equitable)匯流排要求(例 如:具有即時匯流排要求之多通道DMA控制器可能比其 他有較低的匯流排佔用率,此即時匯流排要求是經由其中 有的通道仲裁器,或在獲得匯流排擁有權後,由每一匯流 排主控器分配的處理資料之資料數量或形式爲變動的,例 如爲單一或齊發(burst)型式);(3)根據現有的應用系統, 有需要爲特定的匯流排主控器增加或減少匯流排佔用率。 發明內容 因此本發明的目的就是在提供一種匯流排仲裁器,其 能因應單一晶片系統上之複數個功能區塊的匯流排要求之 現在狀態,做到可靠的匯流排佔用仲裁,以及程式化匯流 排主控器之匯流排佔用率。 爲了獲得之前所述之目的,根據此發明案之觀點,在 此提供一種匯流排仲裁器,其用於積體電路系統中,此積 體電路系統包含複數個匯流排主控器,此匯流排仲裁器包 括:複數個程式暫存器(program registers)之程式列(program file),其中之每一均可儲存分派給每一匯流排主控器之匯 流排佔用率的値;複數個暫存器之暫時列(temporary file), 其中之每一均可提供對應每一匯流排主控器的匯流排佔用 11431pif.doc/008 8 1262393 率之現狀値,以及指標暫存器(point register),其可指出在 這些匯流排主控器之間最接近(most prior)的匯流排主控 器。 匯流排主控器應用匯流排要求信號(bus request signal) 至匯流排仲裁器,且從匯流排仲裁器接收匯流排授與信號 (bus grant signal)。當暫時暫存器之値已經用完(spent out) 時,此暫時暫存器所儲存之匯流排佔用率之値將以上述程 式暫存器之値來儲存。 在包含複數個匯流排主控器之積體電路系統的仲裁匯 流排佔用中,本方法包括下列步驟:程式化這些匯流排主 控器之匯流排佔用數字(bus occupation numbers)及在這些 匯流排主控器中指定最接近的匯流排主控器;當現行要求 之匯流排主控器與最接近的匯流排主,控器相同時,降低對 應最接近的匯流排主控器之匯流排佔用數字且授與匯流排 擁有權給最接近的匯流排主控器;以及當現行要求之匯流 排主控器爲最接近的匯流排主控器之其他者時,降低對應 最接近的匯流排主控器之匯流排佔有數字,以及降低對應 現行要求之匯流排主控器的匯流排佔有數字,且授與現行 要求之匯流排主控器該匯流排擁有權。 當這些匯流排仲裁器之一爲中央處理單元,此中央處 理單元有比其他中央處理單元較高之匯流排佔用率,此中 央處理單元分派到多於至少半數之全部匯流排佔用率。 爲讓本發明之上述描述能更明顯易懂,下文特舉一較 佳實施例,並配合所附圖式,且此發明案的範圍將會在附 加的申請專利範圍(claim)中指出。 11431pif.doc/008 9 1262393 一個完整的發明案之鑑賞,其中有許多附加的優點, 將根據參考接著的詳細描述,會像較易閱讀般十分容易了 解,田考慮相伴隨之圖的連接,其中類似參考符號表示相 同或相似的元件。 實施方式: 熟悉此藝者將了解較佳實施例之描述只是用以說明, 不應將其限制於此意義中。在下面詳細描述中,數個特殊 細節將會提供,此目的是爲提供此發明案更通透了解。但 是’顯而易見的,熟悉此藝者若無這些特殊細節也可將此 發明實踐。 現在’本發明將配合第3至7圖作此實際應用例的說 明。本發明之匯流排仲裁器適合放置於單一晶片系統上。 第3圖顯示出匯流排仲裁器與匯流排主控器間的相互 連結特徵。匯流排主控器BMO〜BMn-1分別使用匯流排要 求信號(bus request signal)HBGO〜HBGn-Ι給予匯流排仲裁 器10,並且分別接收來自匯流排仲裁器10的匯流排授與 信號(bus grant signal)HG〜HGn-Ι。匯流排仲裁器10是由: 包含有對匯流排主控器之匯流排佔用率的已程式化資料的 程式暫存器列(program register file)ll,提供在匯流排仲裁 時的匯流排佔用率之資料的暫時暫存器列(temporary register file)13,以及可指出目前最接近的匯流ί#主控器 (the most prior bus master)(BMptr)之指標暫存器(point register)15所組成。程式暫存器列11是由對應匯流排主控 器ΒΜ0〜BMn-1的數量之程式暫存器(program register) P0〜Ρη-l所組成,且暫時暫存器列13中的暫時暫存器 11431pif.doc/008 10 1262393 (temporary register)TO〜Tn-1也對應匯流排主控器之數量。 在指標暫存器15指出最接近的匯流排主控器(BMptr)與對 應地寫入程式暫存器中匯流排佔用率之後,對指標暫存器 10所指出之匯流排主控器匯流排仲裁被完成,並調整指定 給其之匯流排佔有率。存在程式暫存器P〇〜Pn-1內之已程 式化的値,換言之,匯流排主控器的匯流排佔用率,決定 匯流排主控器之匯流排佔有的可允許數字(在下文中,參 照爲”匯流排佔用時間(bus occupation times)”)。例如,若 一指標暫存器15之現行値(PTR)爲”0”並且將暫存器P〇存 入”2”,匯流排主控器ΒΜ0將被設定爲最接近的匯流排主 控器三次。下面將會有更多細節描述。 對於匯流排主控器ΒΜ0〜BMn-1,假設程式暫存器列 11具有X位元之程式資料,某些匯流排主控器BMi(i是 1〜η-1的其中之一)的匯流排佔用率在其所對應的程式暫存 器Pi中將被設定在〇〜2X-1之値。而且,匯流排仲裁器藉 由參考已程式化之暫存器列11之値,來控制著每個匯流 排主控器當中的每個匯流排佔用率。對於某個匯流排仲裁 器BMi、BORi的匯流排佔用率之値係由下列方程式來決 定: BORi=(P[i] + l)/I(P[i] + i) 方程式 1 ;其中的P[i]指的是程式暫存器Pi的値。 第4圖解釋藉匯流排仲裁器10的手段來控制匯流排 佔用率以及優先權的程序,圖中假設匯流排主控器的數値 爲三(n=4)。若這三個匯流排主控器ΒΜ0〜BM2被指定的程 式暫存器之値爲Ρ[〇]=2,ρ[ΐ] = ι,與p[2]=〇,則依照方程 11431pif.doc/008 11 1262393 式1爲它們預測之匯流排佔用率將會分別是 BOR[0] = (2+l)/(3+2+l)=3/6,BOR[l]=(l + l)/(3+2+l)=2/6, BOR[2] = (0+l)/(3+2+l)二1/6。在第4圖中,匯流排主控器 BMO〜BM2的優先權轉換依次序爲經過BMO BMO -> BMO -> BM1 -> BM1 -> BM2 -> BMO -〉BMO 此八個步驟, 也就像此例子會對PTR之轉換有如0->0->0->1->1->2->0->〇的反應。因此,一般而言,假如此刻指標暫存器15, PTR, 的値爲”Γ時,則匯流排主控器的優先權將會被依照次序設 定爲 BMi -> BMi+1 ->.·-> BMn-2 -> BMO -> BM1 -〉BMi- 1,這些每個匯流排主控器已用完建立於程式暫存器中之 他們自己的佔有率。 另一方面,也可能會發生當匯流排主控器沒有每一次 產生匯流排要求時,實際(actual)以及預知(predicted)之匯 流排佔用率的値之間會產生差異。舉例而言,在PTR指向 匯流排主控器ΒΜ0的狀況下,假如匯流排主控器ΒΜ0不 行形成匯流排要求和已程式化之匯流排佔用率P[〇]=3 — 樣多時,則匯流排主控器BM1之匯流排佔有率會在下一 次擁有優先權時增加(例:BORl>2/6),而導致結果並不與 動態佔有率一致。 考慮匯流排佔用率有差異的情況,其降低了對應於佔 用匯流排之匯流排主控器的暫時暫存器之値,甚至此匯流 排主控器沒有被指標暫存器15指定爲最接近的匯流排主 控器(BMptr)。另外,當沒有要求匯流排擁有權之最接近 的匯流排主控器(BMptr)並無佔用匯流排時,則降低對應 最接近的匯流排主控器的暫時暫存器之値。由於實際以及 11431pif.doc/008 12 1262393 被建立的(或預測的)匯流排佔用率之間的差異,這些匯流 排佔用率之調節消除了匯流排餓斃或是對特別的匯流排主 控器不合宜地過度佔用匯流排。 從現在開始,將要解釋本匯流排仲裁過程之操作流程 圖,見第5圖。 參照第5圖,步驟S1檢驗從匯流排主控器BMO〜BMn-1 是否出現匯流排要求。若無匯流排要求,將會到步驟S2, 以允許匯流排擁有權至一個預設之匯流排主控器(例:微 處理機單元)。若至少從上述匯流排主控器BMO〜BMn-1之 一出現匯流排要求,則跳至步驟S3。 步驟S3中,第一個現行要求之匯流排主控器(current-requesting bus master)(例: BMi) 取得匯流排擁有權 。接下 來到步驟S4,檢驗是否目前之PTR指定現在正佔用匯流 排的匯流排主控器BMi。(換言之,BMi與跟建立在指標 暫存器15中之最接近的匯流排主控器BMptr相同)。若PTR 爲”i”(現行要求之匯流排主控器=最接近匯流排主控器), 則到步驟S7。若PTR不爲”i”(現行要求之匯流排主控器# 最接近匯流排主控器),則繼續進行到步驟S5。 步驟S5中,現在最接近的匯流排主控器(BMptr)並沒 有匯流排擁有權(或者並沒有發出匯流排需求),則檢驗對 應現行要求之匯流排主控器BMi的暫時暫存器之値T[i]是 否爲”0”。T[i]爲從程式暫存區之値P[i]取回的値,P[i]也 對應到匯流排主控器BMi,且含有BMi之已程式化匯流排 佔用(bus occupation)數字。(例如:若BMi爲BM1時,第 4圖中之BM1便爲”2”)。如果T[i]不爲”0”,則至步驟S6 11431pif.doc/008 13 1262393 將T[i]減一,因爲匯流排主控器BMi事實上已經佔用匯流 排一次了。若ΤΠ]爲”0”,則將跳至步驟S7。 步驟S7中,現在最接近的匯流排主控器與該現行要 求之匯流排主控器是相同的,或是對於BMi之匯流排佔用 數字已經完全的用完,則檢驗對應最接近的匯流排主控器 BMptr的暫時暫存器之値T[PTR]是否爲”0”。若T[PTR] 爲”〇”,則前往步驟S8。若T[PTR]不爲”0”,將跳至步驟S9。 步驟S8中,對於最接近的匯流排主控器(BMptr)之匯 流排佔用率之値已經用完,則要在經過步驟S10之前將 P[PTR]之値回存至T[PTR]。相對地,在步驟S9中,T[PTR] 因爲對於BMptr之匯流排佔用之數字仍然存在,所以T[PTR] 持續減一,以持續BMptr•之匯流排佔用直到T[PTR]降至 零爲止。同時,若T[PTR]現在爲”〇”,步驟S9就必須於該 現行要求之匯流排主控器BMi與該最接近的匯流排主控器 BMptr仍然相同之此時先行完成。此理由由以下述所形成: (1)當該現行要求之匯流排主控器BMi與該最接近的匯流 排主控器BMptr不相同時,爲了防止BMptr之匯流排佔用 的差異,需要用預估値與T[PTR]相稱。(2)當該現行要求 之匯流排主控器BMi與該最接近的匯流排主控器BMptr 完全相同時,T[PTR]就取決過程必須減一,因爲實際上已 經會有一次BMptr之匯流排佔用。 步驟10中,爲了下次接近(the next prior)的匯流排主 控器之目的,檢驗PTR之現行値是否爲n_i。若PTR=n-l, 則說明全部的匯流排主控器之匯流排佔用已結束,繼續進 行步驟S11將PTR重設爲”0”,並回到步驟1以進行一個 11431pif.doc/008 14 1262393 新的匯流排仲裁迴圈。若PTR並不等於η_ι,則說明尙有 部分需要佔用匯流排之匯流排仲裁器,並回到步驟S1以 開始一個新的匯流排主控器之匯流排仲裁過程。 從第5圖的操作流程圖中,可以看到根據PTR之現行 値與現行要求之匯流排主控器之間的相關狀態,而區別出 兩條連續的路徑。 首先,當由指標暫存器15指定之最接近的匯流排主 控器與現行要求之匯流排主控器BMi相同之狀況下(換言 之’最接近的匯流排主控器BMptr正在要求匯流排之擁有 權),此匯流排主控器係以建立於PTR之優先權順序,憑 藉著每個匯流排佔用數字(換言之,匯流排佔用率),透過 每個連續進行的步驟,例如S1 S3 -> S4 S7 -> S9, 來佔用匯流排。例如第4圖,匯流排佔用率之次序爲BMO BMO -> BMI ->BM1 -〉BM2。 次之,當由指標暫存器15指定之最接近的匯流排主 控器與現行要求之匯流排主控器BMi不相同之狀況下(換 言之,另一個匯流排主控器並非最接近的匯流排主控器 BMptr,正在要求匯流排之擁有權)。若現行要求之匯流排 主控器BMi的匯流排佔用數字,T[i],已經全部用完,此 匯流排仲裁過程將會經由S1->S3-〉S4-〉S5->S7->S9繼續 進行著。若BMi之匯流排佔有數字依然存在,步驟S5會 在實行完步驟S6之後才會進行至步驟S7。 仲裁匯流排主控器的匯流排佔有之特徵可經由第6圖 繪示出的時序圖而變得更加淸楚,第6圖是以第4圖的三 個匯流排BMO〜BM2作爲範例。時脈訊號HCLK被提供來 11431pif.doc/008 15 1262393 控制信號的觸發與資料傳輸,時脈訊號HCLK之上升邊緣 將會與相關的信號同步。CTO〜CT8代表HCLK的時脈週 期。控制訊號HE係用來致能匯流排仲裁,並且在具有匯 流排擁有權的匯流排主控器正連續不斷的佔有匯流排數個 時脈週期之期間,阻止匯流排仲裁操作。 首先,在時脈週期CTO時,所有的匯流排主控器並無 向匯流排仲裁器10要求匯流排擁有權。指標暫存器15之 値,PTR,在CT1至CT4之間維持爲”0”以指定ΒΜ0,在 CT4至CT5間指定BM1,以及在CT5至CT7間指定BM2 以作爲最接近的匯流排主控器(BMptr)。 在時脈週期 CT1 時,PTR=0,T[0]=2,T[l] = l,且 Τ[2]=0,現在匯流排要求信號HBQO,HBQ1,HBQ2均爲 高態,所有的匯流排主控器ΒΜ0〜BM2均正要求匯流排擁 有權。因此,匯流排仲裁器10轉換匯流排授與信號HG0 爲高態此外,而且將T[〇]減去一(τ[0]=2-1 = 1 ;注意匯流排 佔用之動態數字爲3-1=2),以立刻將匯流排控制權授與給 ΒΜ0 〇 在時脈週期CT2時,τ[0]因爲減去一而降爲一。在此 時’控制信號HE在低態的時候不起作用,以阻止匯流排 仲裁操作,並且不理會匯流排要求信號的現在狀態。 在時脈週期CT3時,伴隨著操作信號HE的動態狀態, 正當所指定之最接近的匯流排主控器ΒΜ0並無要求匯流 排佔用(HBQ爲低態)時,則匯流排擁有權將交到正在要求 匯流排擁有權,並且有第二優先權的BM1中。由於ΒΜ0 事實上已沒有佔用匯流排,ΒΜ0被指定之T[0]在爲了阻止 11431pif.doc/008 16 1262393 匯流排佔用率之差異下,將τ[0]減一成爲0。 接下來,在時脈控制CT4時,Τ[0]=0而且隨著高態 的控制訊號HG,匯流排授與信號HGO〜HG2均爲高態。 當最接近的匯流排主控器ΒΜΟ正在要求匯流排佔用時’ 匯流排擁有權將會理所當然的回到ΒΜΟ。現在Τ[0]爲”0” ’ 其將會回存爲ρ[0],也就是,”2”。在當時,ΒΜ1之匯流 排授與信號HG1在PTR=0,T[l]減一(T[l] = l-1=0)之情況 下爲高態。並且,現在ΒΜΟ之Τ[0]爲”0”(換言之,匯流排 佔用數字已用完),PTR增加一(PTR=1)以指定作爲下次最 接近的匯流排主控器BM1。 在時脈週期CT5時,PTR=1,T[0]=2,T[1]=0,並且 HGO與全部的匯流排要求信號HBQO〜HBQ2均爲高態。因 此,匯流排擁有權將會授與正在指標暫存器15上之最接 近的匯流排主控器BM1。當對應BM1之T[l]現在爲”0”, Τ[0]將會回存爲P[l],也就是,”1”。並且,因爲根據ΒΜ1 本身的匯流排佔用率,ΒΜ1用完在暫存器Ρ1中已程式化 之匯流排佔用數字,則PTR加一(PTR=2)以指定ΒΜ2爲最 接近的匯流排主控器以做爲下一個。 在時脈週期CT6時,匯流排控制信號HE降低爲低態, 以阻止匯流排仲裁而爲閒置狀態。 在時脈週期CT7時,現在PTR=2並且最接近的匯流 排主控器BM2正在要求匯流排佔用(HBQ2爲高態)時,回 應匯流排授與信號HG2爲高態,將匯流排擁有權理所當 然的回到BM2。然後,對應BM2之T[2]從P[2]回存爲, 並且將PTR改爲0。 11431pif.doc/008 17 1262393 最後,在時脈週期CT8時,因爲全部的匯流排主控器 並沒有正在要求匯流排擁有權,即使匯流排控制信號HE 正在動作,還是沒有匯流排佔用的產生。 貫穿整個程序,直到時脈週期CT8爲止,匯流排主控 器BMO〜BM2被控制以各自佔用匯流排三次、兩次、與一 次。因爲匯流排主控器BMO並沒有要求佔用至今,儘管 在時脈週期CT3中它已經被指定爲最接近的匯流排主控 器,T[0]之値減一是爲了符合匯流排佔用之實際數目與暫 時暫存器之値。即,對應於被PTR指標暫存器15之値所 指定之最接近的匯流排主控器的暫時暫存器之値,在每個 匯流排佔用時減一,而不管最接近的匯流排主控器有無匯 流排控制權。而並非最接近之匯流排主控器之暫時暫存器 之値,在每次佔用後減一是爲理所當然。 另一方面,偶然的,在並無從其他匯流排主控器來的 每個匯流排要求時,匯流排主控器之一的中央處理單元 (CPUs)是操作在有非常高之匯流排佔用率。這個事例中, 參照第7圖,匯流排佔用的現行方法爲可能指定CPU爲 預設之匯流排主控器,其具有超過50%之匯流排佔用率, 剩餘之匯流排佔用率被指定給其他的匯流排主控器。 前面提及之,此發明案提供了改善的匯流排仲裁技 術,其避免匯流排佔用率的差異以及程式化匯流排佔用率 的値。 雖然本發明已以一較佳實施例揭露如上,然其並非用 以限定本發明,任何熟習此技藝者,在不脫離本發明之精 神和範圍內,當可作些許之更動與潤飾,因此本發明之保 11431pif.doc/008 18 1262393 護範圍當視細之_轉繼晒者爲淮。 圖式簡單說明 十 第1圖是典型匯流排系統的方塊圖。 一第2 _會示變遷循環機制的裝置之匯流排仲载特性的 不意圖。 f 3圖是根據本發明之一種匯流排仲裁器的方塊圖。 第4圖是本發明控制之匯流排仲裁的狀態圖。 第5圖是根據本發明實施匯流排仲裁操作的流程圖。 第~6圖是根據本發明之匯流排仲载器的操作時序圖。 第7圖展示根據本發明之匯流排仲裁方式的一種應用 例。 圖式標記說明: 1匯流排 2,10匯流排仲裁器 Π程式暫存器之程式列 13暫時暫存器之暫時列 15指標暫存器 BMO〜BMn-1匯流排主控器 BSO〜BSn-Ι匯流排僕從器 HCLK時脈週期 PTR指標暫存器之値 T[0]〜T[2]暫時暫存器之値 HBQO〜HBQ2匯流排要求信號 HGO〜HG2匯流排授與信號 HGE控制信號 !1431pif.doc/008 19

Claims (1)

1262393 拾、申請專利範圍: 1.一種匯流排仲裁器,用於一積體電路系統中,該積 體電路系統包含複數個匯流排主控器,包括: 複數個程式暫存器之一程式列,其中之每一均可儲存 指定給每一匯流排主控器之匯流排佔用率的値; 複數個暫時暫存器之暫時列,其中之每一均可提供對 應每一匯流排主控器的匯流排佔用率之一現狀値;以及 一指標暫存器,其可指出在該些匯流排主控器之間最 接近的匯流排主控器(most prior bus master)。 2·如申請專利範圍第i項所述之匯流排仲裁器,其中 該些匯流排主控器使用匯流排要求信號給予該匯流排仲裁 器’並從該匯流排仲裁器接收匯流排授與信號。 3·如申請專利範圍第1項所述之匯流排仲裁器,其中 當該暫時暫存器之値已經用完時,該暫時暫存器所儲存之 匯流排佔用率之値將以該程式暫存器之値來儲存。 4· 一種仲裁匯流排佔用之方法,用於一積體電路系統, 其包含複數個匯流排主控器,包括下列步驟: 程式化該些匯流排主控器之匯流排佔用數字及在該些 匯流排主控器中指定最接近的匯流排主控器; 授與一匯流排擁有權給最接近的匯流排主控器且當現 行要求之匯流排主控器與最接近的匯流排主控器相同時, 降低對應最接近的匯流排主控器之匯流排佔用數字;以及 授與現行要求之匯流排主控器該匯流排擁有權,以及 當現行要求之匯流排主控器爲最接近的匯流排主控器之其 他者時’降低對應最接近的匯流排主控器之匯流排佔有數 11431pif.doc/008 20 1262393 字’以及降低對應現行要求之匯流排主控器的匯流排佔有 數字。 5.如申請專利範圍第4項所述之仲裁匯流排佔用之方 法,其中當該些匯流排主控器之一爲比其他者具有高匯流 排佔用率之一中央處理單元時,該中央處理單元將會分配 到多於至少半數以上之全部佔有率。 6·—種仲裁匯流排佔用之方法,用於一積體電路系統, 其包含複數個匯流排主控器,包括下列步驟: 第一步驟’用以將該些匯流排主控器之匯流排佔用數 字程式化,以及用以在該些匯流排主控器中指定一最接近 的匯流排主控器; 第二步驟,用以檢驗在該些匯流排主控器中是否有現 行要求之匯流排主控器存在; 第三步驟,用以當在第二步驟中沒有現行要求之匯流 排主控器的存在時,授與一預先決定之匯流排主控器; 第四步驟,用以當該些匯流排主控器中有現行要求之 匯流排主控器時,檢驗現行要求之匯流排主控器是否與最 接近的匯流排主控器相同; 第五步驟,用以當現行要求之匯流排主控器與最接近 的匯流排主控器相同時,授與匯流排擁有權至最接近的匯 流排主控器,以及減低對應最接近的匯流排主控器之匯流 排佔用數字;以及 第六步驟,用以當現行要求之匯流排主控器與最接 近的匯流排主控器爲不相同時,授與匯流排擁有權至現行 要求之匯流排主控器,並且減低對應最接近的匯流排主控 11431pif.doc/008 21 1262393 邊之匯流排佔用數字和減低對應現行要求之匯流排主控器 &匯流排佔用數字。 7.如申請專利範圍第6項所述之仲裁匯流排佔用之方 法,其中該預先決定之匯流排主控器爲一中央處理單元。 8·如申請專利範圍第7項所述之仲裁匯流排佔用之方 法,其中該中央處理單元有多於至少半數之全部匯流排佔 用率的佔有率。 9. 如申請專利範圍第6項所述之仲裁匯流排佔用之 方法,其中第五項步驟包括一步驟,此步驟檢驗包含於現 行要求之匯流排主控器的匯流排佔用數字之現行値爲零。 10. 如申請專利範圍第6項所述之仲裁匯流排佔用之方 法,其中第六步驟包括一步驟,此步驟檢驗包含最接近的 匯流排主控器之匯流排佔用數字的現行値爲零。 11. 如申請專利範圍第10項所述之仲裁匯流排佔用之 方法,其中假若包含最接近的匯流排主控器之匯流排佔用 數字的現行値爲零時,該現行値將會由已程式化之値回存 之。 11431pif.doc/008 22
TW092113558A 2002-05-21 2003-05-20 Bus arbiter for integrated circuit systems TWI262393B (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR10-2002-0028061A KR100456696B1 (ko) 2002-05-21 2002-05-21 집적회로장치의 버스중재기

Publications (2)

Publication Number Publication Date
TW200400438A TW200400438A (en) 2004-01-01
TWI262393B true TWI262393B (en) 2006-09-21

Family

ID=29546314

Family Applications (1)

Application Number Title Priority Date Filing Date
TW092113558A TWI262393B (en) 2002-05-21 2003-05-20 Bus arbiter for integrated circuit systems

Country Status (4)

Country Link
US (1) US7054970B2 (zh)
JP (1) JP4308578B2 (zh)
KR (1) KR100456696B1 (zh)
TW (1) TWI262393B (zh)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100484150B1 (ko) * 2002-07-31 2005-04-18 삼성전자주식회사 버스 중재방법 및 장치
JP2005056067A (ja) * 2003-08-01 2005-03-03 Matsushita Electric Ind Co Ltd Dma転送制御装置
KR100618823B1 (ko) * 2004-04-14 2006-08-31 삼성전자주식회사 옵티컬 장치에서의 메모리 중재기 및 메모리 중재 방법
US7366811B2 (en) * 2004-12-23 2008-04-29 International Business Machines Corporation Bus arbitration system
US7263566B2 (en) * 2004-12-30 2007-08-28 Qualcomm Incorporated Method and apparatus of reducing transfer latency in an SOC interconnect
JP2007072598A (ja) * 2005-09-05 2007-03-22 Fujifilm Corp バス調停方法及びバス調停プログラム
US7546405B2 (en) * 2006-09-26 2009-06-09 Sony Computer Entertainment Inc. Methods and apparatus for dynamic grouping of requestors of resources in a multi-processor system
US7765351B2 (en) * 2007-03-12 2010-07-27 International Business Machines Corporation High bandwidth low-latency semaphore mapped protocol (SMP) for multi-core systems on chips
US8402181B2 (en) * 2007-03-14 2013-03-19 Integrated Device Technology, Inc. Bifurcate arbiter
JP2011133940A (ja) * 2009-12-22 2011-07-07 Seiko Epson Corp アクセス調停装置、集積回路装置、電子機器、アクセス調停方法、及びプログラム
US9529622B1 (en) * 2014-12-09 2016-12-27 Parallel Machines Ltd. Systems and methods for automatic generation of task-splitting code
US10437479B2 (en) * 2014-08-19 2019-10-08 Samsung Electronics Co., Ltd. Unified addressing and hierarchical heterogeneous storage and memory
US10282100B2 (en) 2014-08-19 2019-05-07 Samsung Electronics Co., Ltd. Data management scheme in virtualized hyperscale environments
CN114647604B (zh) * 2022-05-18 2022-10-28 杭州米芯微电子有限公司 Dma数据传输方法、系统、电子设备及可读存储介质

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5072365A (en) * 1989-12-27 1991-12-10 Motorola, Inc. Direct memory access controller using prioritized interrupts for varying bus mastership
JPH0696014A (ja) * 1992-09-14 1994-04-08 Fuji Xerox Co Ltd バス使用優先順位制御装置
JPH09265446A (ja) * 1996-03-27 1997-10-07 Nec Ibaraki Ltd バス制御装置
US5740380A (en) * 1996-07-15 1998-04-14 Micron Electronics, Inc. Method and system for apportioning computer bus bandwidth
US6385678B2 (en) * 1996-09-19 2002-05-07 Trimedia Technologies, Inc. Method and apparatus for bus arbitration with weighted bandwidth allocation
US6092137A (en) * 1997-11-26 2000-07-18 Industrial Technology Research Institute Fair data bus arbitration system which assigns adjustable priority values to competing sources
US6088751A (en) * 1998-02-12 2000-07-11 Vlsi Technology, Inc. Highly configurable bus priority arbitration system
US6363445B1 (en) * 1998-10-15 2002-03-26 Micron Technology, Inc. Method of bus arbitration using requesting device bandwidth and priority ranking
JP2001273248A (ja) * 2000-03-24 2001-10-05 Canon Inc バス制御装置及びその制御方法
US6622208B2 (en) * 2001-03-30 2003-09-16 Cirrus Logic, Inc. System and methods using a system-on-a-chip with soft cache

Also Published As

Publication number Publication date
KR20030090071A (ko) 2003-11-28
JP4308578B2 (ja) 2009-08-05
KR100456696B1 (ko) 2004-11-10
US7054970B2 (en) 2006-05-30
TW200400438A (en) 2004-01-01
US20030221033A1 (en) 2003-11-27
JP2004005677A (ja) 2004-01-08

Similar Documents

Publication Publication Date Title
TWI262393B (en) Bus arbiter for integrated circuit systems
JP4480427B2 (ja) リソース管理装置
US6584523B1 (en) Device for organizing the access to a memory bus
US5862355A (en) Method and apparatus for overriding bus prioritization scheme
US6304923B1 (en) Method for prioritizing data transfer request by comparing a latency identifier value received from an I/O device with a predetermined range of values
US6266718B1 (en) Apparatus for controlling data transfer operations between a memory and devices having respective latencies
KR960042385A (ko) 엘알유(lru)에 의한 중재기
US4998030A (en) Circuit to arbitrate multiple requests for memory access
JP4124579B2 (ja) バス制御システム
JPH01279354A (ja) 共有バスを有するデータ処理システムおよびその優先度決定回路
JP2003030134A (ja) バスアービタ及びバスアービトレーション方法
JPH04250553A (ja) プログラマブルコントローラ
JP2003006146A (ja) バス調停回路
JPH09179609A (ja) 制御装置
JPH05242021A (ja) バス調停回路
JPH01226063A (ja) バス優先制御方法および該方法を実施するバス・アービタ
JPH0821014B2 (ja) 多重入出力デ−タ転送装置
JPH09231163A (ja) Ioブリッジ
JPH01205365A (ja) バス獲得制御方式
JP2002140293A (ja) 調停回路
JPS6217255B2 (zh)
JPH0247777B2 (zh)
JPH08235107A (ja) バス調停回路およびバス調停方法
JPH04362760A (ja) バス調停方式
JPH0789347B2 (ja) バス優先順位決定回路

Legal Events

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