TWI559228B - 可變長度仲裁方法及裝置 - Google Patents

可變長度仲裁方法及裝置 Download PDF

Info

Publication number
TWI559228B
TWI559228B TW101113969A TW101113969A TWI559228B TW I559228 B TWI559228 B TW I559228B TW 101113969 A TW101113969 A TW 101113969A TW 101113969 A TW101113969 A TW 101113969A TW I559228 B TWI559228 B TW I559228B
Authority
TW
Taiwan
Prior art keywords
request
arbitration
requests
clock cycles
category
Prior art date
Application number
TW101113969A
Other languages
English (en)
Other versions
TW201250598A (en
Inventor
朱俊
喬瑟夫 俊 高
盧生
Original Assignee
邁威爾世界貿易有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 邁威爾世界貿易有限公司 filed Critical 邁威爾世界貿易有限公司
Publication of TW201250598A publication Critical patent/TW201250598A/zh
Application granted granted Critical
Publication of TWI559228B publication Critical patent/TWI559228B/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
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K17/00Electronic switching or gating, i.e. not by contact-making and –breaking
    • H03K17/51Electronic switching or gating, i.e. not by contact-making and –breaking characterised by the components used
    • H03K17/56Electronic switching or gating, i.e. not by contact-making and –breaking characterised by the components used by the use, as active elements, of semiconductor devices
    • H03K17/60Electronic switching or gating, i.e. not by contact-making and –breaking characterised by the components used by the use, as active elements, of semiconductor devices the devices being bipolar transistors
    • H03K17/62Switching arrangements with several input- output-terminals, e.g. multiplexers, distributors

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

可變長度仲裁方法及裝置
本發明涉及一種仲裁方法及裝置。
除非另有說明,本節所敘述之方法不是本發明中申請專利範圍之先前技術,並且不因其包括於本節而被承認為先前技術。
計算系統包括數量逐漸增加之共用系統資源,例如記憶體、匯流排和通訊介面。此外,數量逐漸增加之一實體(例如,使用者和使用者端)在共用該等資源。這些不同的實體對於在計算系統中使用的該共用資源具有不同需求。例如,某些實體(如電腦處理器單元(Computer Processing Unit,CPU))看重當提取指令時之存取延遲(access latency);以及其他實體(例如直接記憶體存取(Direct Memory Access,DMA)控制器)最看重吞吐量(throughput)。仲裁器係用於有效率地管理共用資源之使用並最佳地滿足計算系統中不同實體之需求。
不同的仲裁演算法,例如:循環演算法(round robin)、加權循環演算法(weighted round robin)、最近最少使用演算法(Least Recently Used,LRU)和最近最常使用(Most Recently Used,MRU),已被開發以改進仲裁之性能和公平性以滿足不同的系統要求。然而,當系統之速度越來越快時,在仲裁中包括越來越多的實體,仲裁器難以滿足該等系統設計要求。例如,如果64個使用者端共用一個資源,有64位元的請求。常規的仲裁週期是固定的,例如每個仲裁皆在一個時脈週期(clock cycle)中執行。然而,當使用高時脈速度時,即使使用簡單的循環演算法也難於實現一個週期的仲裁。
在一實施例中,一種方法對於由複數個實體所共用的一共用資源,判定用於請求之複數個類別。從該等實體中之一實體接收對於該資源的一請求。該方法對於該接收的請求,在該等類別中判定一類別。如果該接收的請求被判定是在一第一類別中,將該接收的請求分配到一第一仲裁方案,該第一仲裁方案配置用以在一第一時間週期中判定一仲裁決定。如果該接 收的請求被判定是在一第二類別中,將該接收的請求分配到一第二仲裁方案,該第二仲裁方案配置用以在一第二時間週期中判定一仲裁決定,該第二時間週期與該第一時間週期具有一不同的長度。
在一實施例中,該第一時間週期是固定的,以及該第二時間週期是可變的。
在一實施例中,該第一時間週期包括單個時脈週期,以及該第二時間週期包括兩個或更多的時脈週期。
在一實施例中,如果該接收的請求被判定在一第三類別中,該方法評估與該接收的請求相關的一因素,以判定該接收的請求是否應被分配到該第一仲裁方案或該第二仲裁方案。
在一實施例中,一種裝置包括:配置用以從複數個實體中之一實體接收對於一共用資源的一請求的邏輯元件;配置用以對於該接收的請求,在複數個類別中判定一類別的邏輯元件,其中該等類別係用於由該等實體共用的該共用資源;如果該接收的請求被判定是在一第一類別中,配置用以將該接收的請求分配到一第一仲裁方案的邏輯元件,該第一仲裁方案配置用以在一第一時間週期中判定一仲裁決定;以及如果該接收的請求被判定是在一第二類別中,配置用以將該接收的請求分配到一第二仲裁方案的邏輯元件,該第二仲裁方案配置用以在一第二時間週期中判定一仲裁決定,該第二時間週期與該第一時間週期具有一不同的長度。
在一實施例中,一系統包括該共用資源;以及該等實體,其共用對該共用資源的存取。
如下的詳細描述及所附圖式提供本發明的特性和優勢的更詳細的瞭解。
於此處描述的係用於可變長度仲裁系統的技術。在接下來的描述中,為了便於解釋,提出多個示例和特定細節以便提供本發明實施例的透徹瞭解。由申請專利範圍限定的特定實施例可單獨包括這些示例中的某些或所有特徵或與下述的其他特徵組合,並可以進一步包括本文該特徵和理論的修改和對等物。
第1圖描述根據一實施例之用於共用資源的簡化系統100。仲裁器102在可變時脈週期中對共用資源104(例如記憶體104)執行仲裁。共用資源的實體106包括CPU 106-1、液晶顯示器(Liquid Crystal Display,LCD)控制器106-2以及直接記憶體存取控制器106-3。也可以理解其他的共用資源104和實體106。同時,共用資源104被稱為記憶體104,但是也可以理解其他的共用資源。
仲裁器102使用可變長度仲裁(Variable Length Arbitration,VLA)仲裁對記憶體104的存取。可變長度仲裁是仲裁器102可以取決於不同因素(例如實體請求的當前狀態)在可變時脈週期中執行仲裁。下文將更詳細地說明,仲裁器102可以在兩個不同的分層(或在其他實施例中更多的分層)執行仲裁。在一實施例中,提供第一層的仲裁“分層0(level 0)”和第二層的仲裁“分層1(level 1)”。與執行分層1仲裁相比,分層0仲裁在更小週期內執行。分層0仲裁可以是固定的或可變的以及分層1仲裁是可變的。例如,在一個週期內執行分層0仲裁,以及在可變週期(例如一個週期或多個週期)執行分層1仲裁,例如兩個週期(但不限於兩個週期)。因此,通過提供分層或分層1仲裁,可提供可變長度仲裁。
仲裁器102可將請求分為三類。第一類包括需要低延遲和高優先順序的實體請求。CPU請求(例如對於快取線路(cache line)的填充的請求)是在一第一類別中包括的常規示例。在一實施例中,第一類別中的請求被映射到分層0的請求。
第二類別包括具有可變優先順序和延遲需求的實體請求。例如,根據和請求相關的因素,需求有時低有時高。第二類別中的請求取決於當前狀態可以被映射到分層0的請求或分層1的請求。來自LCD控制器106-2的請求是被映射到第二類別的請求的示例。例如,來自LCD控制器106-2的請求優先順序可根據顯示器的緩衝狀態而改變,其代表對於LCD控制器106-2已經緩衝了多少請求。
第三類別包括計算系統100中其他實體100的請求,例如DMA控制器106-3。這些請求被映射到分層1以及主要不是高優先順序或低延遲。
第2圖描述根據一實施例之仲裁器102的簡化示例。仲裁器102包括請求控制塊202、分層0仲裁環204、分層1仲裁環206以及授與仲裁器(Gnt Arb)208。
請求控制塊202將請求分配到分層0仲裁環204和/或分層1仲裁環206。請求控制塊202可根據輸入標準分配請求,例如當前狀態和輸入條件。例如,請求控制塊202可判定請求是哪個類別中的,並將請求分配到分層0仲裁環204或分層1仲裁環206。例如,提供三個類別(category):類別0、類別1和類別2。類別0的請求被分配到分層0仲裁環204以及類別2的請求被分配到分層1仲裁環206。類別1的請求可被分配到分層0仲裁環204或分層1仲裁環206。服務質量(Quality of Service,QoS)和/或權重可用於類別1的請求以判定這些請求是否應分配到分層0仲裁環204或分層1仲裁環206。QoS可根據與請求相關的因素,例如優先順序和延遲需求。狀態對於來自實體106的不同請求有所不同。例如,當實體106的條件改變時,優先順序或延遲需要可改變,從而影響權重。例如,當緩衝器裝滿時,請求的優先順序或延遲需求改變,例如優先順序上升。
在一實施例中,分層0仲裁環204接收一個時脈週期仲裁的請求。例如,分層0仲裁環204接收八個請求輸入。分層0仲裁環204支援可在一個時脈週期內執行的多個仲裁演算法。在一實施例中,接收請求和權重以及分層0仲裁環204根據權重判定那個請求應被授與存取記憶體104。權重可以根據之前已經授與的實體106的那些請求(即,最近還沒被處理的實體106的請求具有較高權重)。
分層1仲裁環206接收請求並使用可變長度仲裁時間,例如一到兩個時脈週期。仲裁時間可以取決於當前狀態和所使用的仲裁演算法。在一實施例中,分層1仲裁環206接收62個請求輸入和權重。權重可以是關於哪些請求之前被授與到記憶體104存取的資訊。分層1仲裁環206根據權重在兩個仲裁(或更多)中判定哪些請求被授權存取記憶體104。
授與仲裁器208根據授與選擇信號gnt_sel判定最後的授與輸出。也就是說,如果八個Arb組(Arb組00到Arb組07)中只有一個Arb組具有有效請求,選擇gnt_cyc1為gnt_lvl1的輸出,否則選擇gnt_cyc2為gnt_lvl1輸出。
第3圖描述根據一實施例請求控制塊202之更詳細的示例。請求控制塊202包括n個請求映射器(req_mapper)302。
請求映射器302判定請求是否是類別0的請求。如果是,則請求被分配到分層0仲裁環204(req_out_lvl0[i])。此外,也發送權重W_lvl0[i]。如果請求映射器302判定請求是類別2的請求,則請求映射器302將請求分配到分層1仲裁環206(req_out_lvl1[i])。如果請求是類別1的請求,則請求映射器302評估涉及該請求的因素,例如服務品質(QOS_in)和權重(weight[i])用於判定哪個分層將被選擇。QoS可根據與請求相關的優先順序。權重可根據不同的因素,例如哪些請求之前被授與存取。如果信號QOS_in是高值,則請求被分配到分層0仲裁環204。否則,如果權重高於閾值,則請求被分配到分層0仲裁環204,否則請求被分配到分層1仲裁環206。權重可根據之前授與的請求。請求映射器302然後更新和/或清除權重(W_lvl0[i]和W_lvl1[i])並根據當前狀態和授與信號(gnt)輸出信號(req_out_lvl0和req_out_lvl1)。
控制信號(ctrl[i])來自系統暫存器(register)。它包括請求的控制資訊,例如請求致能(enable)、請求的初始權重等。
請求映射器302的時序是穩定的,其並不影響計算時間的總複雜度。
第4圖描述根據一實施例分層1仲裁環206之更詳細的示例。提供樹狀結構,其中分層1仲裁環206是雙層結構。其他的結構也可被理解。分層0仲裁環204(未示出)可能是單個的仲裁組404。
位移器(shifter)402判定位元組對齊的仲裁起始點。例如,位移器402可在0-7位元之間位移。該位移可在不同仲裁組404開始仲裁。
每個仲裁組404(arb_group0*)可以接收一組請求(例如,八個請求(req_sft[7:0])和權重輸入(W)。每個仲裁組404在八個請求之間仲裁並選擇一個請求輸出。
在分層1仲裁中,仲裁組404之一被選為在分層0的請求之間仲裁。在這種情況下,其他仲裁組可不具有仲裁的請求。在一個示例中,仲裁組404-0可接收八個分層0的請求並在它們之間仲裁。一個請求被選中並通過邏輯元件406輸出至分層1授權輸出多工器409。該請求被提交給授與仲裁邏輯元件208。當在授與仲裁邏輯元件208接收選擇信號時,請求被輸出。該過程需要一個時脈週期。
在分層1仲裁中,仲裁組404使用權重(w)在八個請求之間仲裁並輸 出贏得仲裁的請求。每個仲裁組404可向第二層仲裁組(arb_group10)408輸出勝出的請求和權重。第二層仲裁組408使用所接收的輸入執行第二仲裁。例如,第二層仲裁組408接收八個請求輸入和八個對應的權重輸入並判定要輸出到授與仲裁邏輯元件208的勝出請求。當在授與仲裁邏輯元件208接收選擇信號時,來自仲裁組408的勝出請求被輸出至分層1授權輸出多工器409。分層1仲裁在這種情況下需要兩個時脈週期。
第5圖描述根據一實施例用於執行可變長度仲裁之方法500的簡化流程圖。在步驟502,判定記憶體104的不同請求類別。記憶體104被實體106共用。
在步驟504,仲裁器102從實體106接收對於記憶體104的請求。在步驟506,仲裁器102判定所接收請求的類別。例如,請求可以落在三個類別中。
在步驟506,仲裁器102判定所接收的請求是否在類別0、類別1,或者類別2中。如果請求在類別0中,則執行步驟508,仲裁器102將所接收的請求分配到第一仲裁方案,該第一仲裁方案配置用以在第一時間週期判定一仲裁決定。例如,仲裁器102將請求分配到分層0仲裁環204。如果請求在第2類別中,則執行步驟510,仲裁器102將請求分配到第二仲裁方案,該第二仲裁方案配置用以在第二時間週期判定一仲裁決定,該第二時間週期具有和第一時間週期不同的長度。例如,仲裁器102將請求分配到分層1仲裁環206。
如果請求在類別1中,則執行步驟512,仲裁器102根據與請求相關的因素判定請求是否應被分類在類別0或類別1中。例如,仲裁器102分析請求的QoS或權重以判定分類請求的類別。仲裁器102然後將請求分類在類別0或類別2中。
因此,本發明提供可變長度仲裁。根據請求的分類,可以提供不同的仲裁長度。這使得可根據請求的優先順序改變仲裁長度。
如本文的描述以及隨後的申請專利範圍所使用,“一個”、“一”和“這個”包括複數表示,除非上下文另有明確規定。同時,如本文描述以及隨後的申請專利範圍所使用,“在...中”的意思包括“在...中”和“在...上”,除非上下文另有明確規定。
以上描述示出本發明的多個實施例以及本發明的多個方面該如何實施的示例。以上示例和實施例不應被視為唯一實施例,並經呈現以示出隨後申請專利範圍定義的本發明的靈活性和優勢。基於以上揭露和隨後的申請專利範圍,在不背離申請專利範圍所定義的本發明範圍的情況下,可以使用不同配置、實施例、實施方式和對等物。
100‧‧‧簡化系統
102‧‧‧仲裁器
104‧‧‧共用資源/記憶體
106-1‧‧‧電腦處理器單元
106-2‧‧‧液晶顯示器控制器
106-3‧‧‧直接存儲存取控制器
202‧‧‧請求控制塊
204‧‧‧分層0仲裁環
206‧‧‧分層1仲裁環
208‧‧‧授與仲裁器/授與邏輯元件
302‧‧‧請求映射器
402‧‧‧位移器
404-0~-7‧‧‧仲裁組
406‧‧‧邏輯元件
408‧‧‧第二層仲裁組
409‧‧‧分層1授權輸出多工器
500‧‧‧方法
502‧‧‧步驟
504‧‧‧步驟
506‧‧‧步驟
508‧‧‧步驟
510‧‧‧步驟
512‧‧‧步驟
第1圖描述根據一實施例之用於共用資源的簡化系統;第2圖描述根據一實施例之仲裁器的簡化示例;第3圖描述根據一實施例請求控制塊之更詳細的示例;第4圖描述根據一實施例分層1仲裁環之更詳細的示例;以及第5圖描述根據一實施例用於執行可變長度仲裁之方法的簡化流程圖。
500‧‧‧方法
502‧‧‧步驟
504‧‧‧步驟
506‧‧‧步驟
508‧‧‧步驟
510‧‧‧步驟
512‧‧‧步驟

Claims (20)

  1. 一種方法,包括:對於由複數個實體所共用的一共用資源,判定用於請求之複數個類別;從該等實體接收對於該資源的複數個請求;對於該等請求的每一個,在該等類別中判定一類別;從該等請求中,提供一第一請求集合以及一第二請求集合,其中該第一請求集合被判定是在一第一類別中,以及該第二請求集合被判定是在一第二類別中;將該第一請求集合分配到一第一仲裁方案,其中該第一仲裁方案執行一第一仲裁演算法,該第一仲裁演算法係配置以使用一第一時脈週期數量以判定一第一仲裁決定,其中該第一時脈週期數量對應至藉由該第一仲裁方案所使用以判定該第一仲裁決定的一第一時間量,以及其中該第一仲裁決定識別從該第一請求集合中要被授與的一第一請求;以及將該第二請求集合分配到一第二仲裁方案,其中該第二仲裁方案執行一第二仲裁演算法,該第二仲裁演算法係配置以使用一第二時脈週期數量以判定一第二仲裁決定,其中該第一時脈週期數量與該第二時脈週期數量不同,其中該第二時脈週期數量對應至藉由該第二仲裁方案所使用以判定該第二仲裁決定的一第二時間量,其中該第一時間量與該第二時間量不同,以及其中該第二仲裁決定識別從該第二請求集合中要被授與的一第二請求。
  2. 依據申請專利範圍第1項所述的方法,其中該第一時脈週期數量是固定的,以及該第二時脈週期數量是可變的。
  3. 依據申請專利範圍第1項所述的方法,其中:該第一時脈週期數量是可變的以及該第二時脈週期數量是可變的;以及該第一時脈週期數量小於該第二時脈週期數量。
  4. 依據申請專利範圍第1項所述的方法,其中該第一時脈週期數量小於該第二時脈週期數量。
  5. 依據申請專利範圍第1項所述的方法,其中該第一仲裁方案包括:在該第一請求集合之間仲裁以判定該第一請求,其中該第一請求在該第一時脈週期數量中被判定。
  6. 依據申請專利範圍第5項所述的方法,其中仲裁包括:在至少一個伸裁器接收該第一請求集合;在該至少一個仲裁器判定一待勝出請求;以及提供該待勝出請求作為該第一請求。
  7. 依據申請專利範圍第1項所述的方法,其中該第二仲裁方案包括:在該第二請求集合之間仲裁,以從該第二時脈週期數量中之一第一時脈週期中判定複數個待勝出請求;以及在該等待勝出請求之間仲裁以判定該第二請求,其中該第二請求從該第二時脈週期數量中之一第二時脈週期中被判定。
  8. 依據申請專利範圍第7項所述的方法,其中:在該第二請求集合之間仲裁包括:在複數個第一層仲裁器接收該第二請求集合之複數個部分;在該第二請求集合的該等部分之間仲裁,以在該等第一層仲裁器的每一個判定一待勝出請求;以及在該等待勝出請求之間仲裁包括:在一第二層仲裁器從該等第一層仲裁器的每一個接收該待勝出請求;以及在該接收的待勝出請求之間仲裁,以從在該第二層仲裁器的該等判定的待勝出請求中判定該第二請求。
  9. 依據申請專利範圍第1項所述的方法,進一步包括: 從該等請求中,提供一第三請求集合,其中該第三請求集合被判定是在一第三類別中;以及評估與從該第三請求集合中的一第三請求相關的一因素,以判定該第三請求是否應分配到該第一仲裁方案或該第二仲裁方案。
  10. 依據申請專利範圍第9項所述的方法,其中評估該因素包括使用和該第三請求相關的一權重或一狀態,以判定是否將該第三請求分配到該第一仲裁方案或該第二仲裁方案。
  11. 依據申請專利範圍第10項所述的方法,其中該權重包括與之前授與的請求相關的資訊以及該狀態與該第三請求相關的一優先順序或一延遲相關。
  12. 一種裝置,包括:邏輯元件,配置以從複數個實體接收對於一共用資源的複數個請求;邏輯元件,配置以對於該等請求的每一個,在複數個類別中判定一類別,其中該等類別係用於由該等實體共用的該共用資源;邏輯元件,配置以從該等請求中,提供一第一請求集合以及一第二請求集合,其中,該第一請求集合被判定是在一第一類別中,以及,該第二請求集合被判定是在一第二類別中;邏輯元件,配置以將該第一請求集合分配到一第一仲裁方案,其中該第一伸裁方案執行一第一伸裁演算法,該第一伸裁演算法係配置以使用一第一時脈週期數量以判定一第一伸裁決定,其中該第一時脈週期數量對應至藉由該第一仲裁方案所使用以判定該第一仲裁決定的一第一時間量,以及其中該第一仲裁決定識別從該第一請求集合中要被授與的一第一請求;以及邏輯元件,配置以將該第二請求集合分配到一第二仲裁方案,其中該第二仲裁方案執行一第二仲裁演算法,該第二仲裁演算法係配置以使用一第二時脈週期數量以判定一第二仲裁決定,其中該第一時脈週期數量與該第二時脈週期數量不同,其中該第二時脈週期數量對應至藉由該第二仲裁 方案所使用以判定該第二仲裁決定的一第二時間量,其中該第一時間量與該第二時間量不同,以及其中該第二仲裁決定識別從該第二請求集合中要被授與的一第二請求。
  13. 依據申請專利範圍第12項所述的裝置,其中該第一時脈週期數量是固定的,以及該第二時脈週期數量是可變的。
  14. 依據申請專利範圍第12項所述的裝置,其中:該第一時脈週期數量是可變的以及該第二時脈週期數量是可變的,以及該第一時脈週期數量小於該第二時脈週期數量。
  15. 依據申請專利範圍第13項所述的裝置,其中該第一時脈週期數量小於該第二時脈週期數量。
  16. 依據申請專利範圍第12項所述的裝置,其中該第一仲裁方案包括:邏輯元件,配置以在該第一請求集合之間仲裁以判定該第一請求,其中該第一請求在該第一時脈週期數量中被判定。
  17. 依據申請專利範圍第16項所述的裝置,其中配置以仲裁的該邏輯元件包括:邏輯元件,配置以在至少一個仲裁器接收該第一請求集合;邏輯元件,配置以在該至少一個仲裁器判定一待勝出請求;以及邏輯元件,配置以提供該待勝出請求作為該第一請求。
  18. 依據申請專利範圍第12項所述的方法,其中該第二仲裁方案包括:邏輯元件,配置以在該第二請求集合之間仲裁,以從該第二時脈週期數量中之一第一時脈週期中判定複數個待勝出請求;以及 邏輯元件,配置以在該等待勝出請求之間仲裁以判定該第二請求,其中該第二請求從該第二時脈週期數量中之一第二時脈週期中被判定。
  19. 依據申請專利範圍第18項所述的裝置,進一步包括複數個第一層仲裁器,其中:配置以在該第二請求集合之間仲裁的邏輯元件包括:邏輯元件,配置以在該等第一層仲裁器接收該第二請求集合之複數個部分;邏輯元件,配置以在該第二請求集合的該等部分之間仲裁,以在該等第一層仲裁器的每一個判定一待勝出請求;以及配置以在該等待勝出請求之間仲裁的邏輯元件包括:邏輯元件,配置以在一第二層仲裁器從該等第一層仲裁器的每一個接收該待勝出請求;以及邏輯元件,配置以在該接收的待勝出請求之間仲裁,以從在該第二層伸裁器的該等判定的待勝出請求中判定該第二請求。
  20. 一種系統,包括申請專利範圍第12項所述的裝置,進一步包括:該共用資源;以及該等實體,其共用對該共用資源的存取。
TW101113969A 2011-04-20 2012-04-19 可變長度仲裁方法及裝置 TWI559228B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US201161477445P 2011-04-20 2011-04-20

Publications (2)

Publication Number Publication Date
TW201250598A TW201250598A (en) 2012-12-16
TWI559228B true TWI559228B (zh) 2016-11-21

Family

ID=47022148

Family Applications (1)

Application Number Title Priority Date Filing Date
TW101113969A TWI559228B (zh) 2011-04-20 2012-04-19 可變長度仲裁方法及裝置

Country Status (7)

Country Link
US (1) US9507742B2 (zh)
EP (1) EP2700014B1 (zh)
JP (1) JP6041324B2 (zh)
KR (1) KR101960870B1 (zh)
CN (1) CN103620568B (zh)
TW (1) TWI559228B (zh)
WO (1) WO2012145416A1 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10268604B2 (en) 2015-07-09 2019-04-23 Oracle International Corporation Adaptive resource management in a pipelined arbiter
US11455097B2 (en) 2016-01-28 2022-09-27 Weka.IO Ltd. Resource monitoring in a distributed storage system

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7013357B2 (en) * 2003-09-12 2006-03-14 Freescale Semiconductor, Inc. Arbiter having programmable arbitration points for undefined length burst accesses and method
US7404024B2 (en) * 2003-10-14 2008-07-22 Stmicroelectronics S.A. Method for arbitrating access to a shared resource
US20090006692A1 (en) * 2007-06-26 2009-01-01 International Business Machines Corporation Method and apparatus for a choose-two multi-queue arbiter
TW200907684A (en) * 2007-06-01 2009-02-16 Qualcomm Inc Device directed memory barriers
US7930456B1 (en) * 2006-12-23 2011-04-19 Emc Corporation Data packet arbitration system

Family Cites Families (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69230462T2 (de) * 1991-11-19 2000-08-03 Sun Microsystems Inc Arbitrierung des Multiprozessorzugriffs zu gemeinsamen Mitteln
JPH09269927A (ja) 1996-03-29 1997-10-14 Mitsubishi Electric Corp バスアクセス方法、バス、並びにバス接続システム
US5815023A (en) * 1997-03-20 1998-09-29 Sun Microsystems, Inc. Unbalanced multiplexer and arbiter combination
JP2000187639A (ja) 1998-12-22 2000-07-04 Nec Eng Ltd バス調停装置
JP4573940B2 (ja) 1999-03-19 2010-11-04 パナソニック株式会社 クロスバススイッチ装置
DE60024421T2 (de) * 2000-06-16 2006-08-03 Stmicroelectronics S.R.L., Agrate Brianza Arbitrierungsverfahren mit variablen Prioritäten, zum Beispiel für Verbindungsbusse, und entsprechendes System
JP2003030134A (ja) * 2001-07-12 2003-01-31 Matsushita Electric Ind Co Ltd バスアービタ及びバスアービトレーション方法
US7352741B2 (en) * 2002-02-21 2008-04-01 Sun Microsystems, Inc. Method and apparatus for speculative arbitration
CN1200344C (zh) 2002-10-18 2005-05-04 威盛电子股份有限公司 具有并行仲裁机制的多重允许控制器及其方法
US7051135B2 (en) 2002-11-22 2006-05-23 Ess Technology, Inc. Hierarchical bus arbitration
US7120714B2 (en) * 2003-05-27 2006-10-10 Intel Corporation High-speed starvation-free arbiter system, rotating-priority arbiter, and two stage arbitration method
US7062615B2 (en) * 2003-08-29 2006-06-13 Emulex Design & Manufacturing Corporation Multi-channel memory access arbitration method and system
JP4222251B2 (ja) 2004-04-27 2009-02-12 ソニー株式会社 バス調停装置およびバス調停方法
JP2005316609A (ja) * 2004-04-27 2005-11-10 Sony Corp バス調停装置およびバス調停方法
US7761529B2 (en) 2004-06-30 2010-07-20 Intel Corporation Method, system, and program for managing memory requests by devices
JP2006127423A (ja) * 2004-11-01 2006-05-18 Matsushita Electric Ind Co Ltd バス制御装置、調停装置、並びに、その方法及びプログラム
US7380038B2 (en) * 2005-02-04 2008-05-27 Microsoft Corporation Priority registers for biasing access to shared resources
KR100784385B1 (ko) 2005-08-10 2007-12-11 삼성전자주식회사 공유 자원에 대한 접근 요청을 중재하는 시스템 및 방법
US7302510B2 (en) 2005-09-29 2007-11-27 International Business Machines Corporation Fair hierarchical arbiter
US20070174529A1 (en) * 2005-12-29 2007-07-26 Intel Corporation Queue manager having a multi-level arbitrator
US20090037635A1 (en) * 2006-03-17 2009-02-05 Shanghai Magima Digital Information Co., Ltd. Bus arbitration device
US8024731B1 (en) * 2007-04-25 2011-09-20 Apple Inc. Assigning priorities to threads of execution
JP5241384B2 (ja) * 2008-08-29 2013-07-17 ルネサスエレクトロニクス株式会社 分散共有メモリ型マルチプロセッサ及びデータ処理方法
WO2010086906A1 (ja) * 2009-02-02 2010-08-05 富士通株式会社 調停装置
CN101510181A (zh) 2009-03-19 2009-08-19 北京中星微电子有限公司 一种总线仲裁方法和总线仲裁装置
JP2010282405A (ja) * 2009-06-04 2010-12-16 Renesas Electronics Corp データ処理システム

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7013357B2 (en) * 2003-09-12 2006-03-14 Freescale Semiconductor, Inc. Arbiter having programmable arbitration points for undefined length burst accesses and method
US7404024B2 (en) * 2003-10-14 2008-07-22 Stmicroelectronics S.A. Method for arbitrating access to a shared resource
US7930456B1 (en) * 2006-12-23 2011-04-19 Emc Corporation Data packet arbitration system
TW200907684A (en) * 2007-06-01 2009-02-16 Qualcomm Inc Device directed memory barriers
US20090006692A1 (en) * 2007-06-26 2009-01-01 International Business Machines Corporation Method and apparatus for a choose-two multi-queue arbiter

Also Published As

Publication number Publication date
JP6041324B2 (ja) 2016-12-07
US9507742B2 (en) 2016-11-29
CN103620568B (zh) 2016-10-05
JP2014514662A (ja) 2014-06-19
EP2700014A4 (en) 2014-10-01
TW201250598A (en) 2012-12-16
KR20140037841A (ko) 2014-03-27
WO2012145416A1 (en) 2012-10-26
US20120271976A1 (en) 2012-10-25
EP2700014A1 (en) 2014-02-26
KR101960870B1 (ko) 2019-03-21
EP2700014B1 (en) 2018-06-20
CN103620568A (zh) 2014-03-05

Similar Documents

Publication Publication Date Title
JP6755935B2 (ja) 共有メモリコントローラおよびそれを使用する方法
US7769936B2 (en) Data processing apparatus and method for arbitrating between messages routed over a communication channel
Ausavarungnirun et al. Staged memory scheduling: Achieving high performance and scalability in heterogeneous systems
US20140189181A1 (en) On-Chip Bus Arbitration Method and Device Thereof
EP2625619B1 (en) Arbitrating stream transactions based on information related to the stream transaction(s)
US7664901B2 (en) Data processing apparatus and method for arbitrating access to a shared resource
US8706940B2 (en) High fairness variable priority arbitration method
US10268604B2 (en) Adaptive resource management in a pipelined arbiter
TWI559228B (zh) 可變長度仲裁方法及裝置
US10114572B2 (en) Acceleration and dynamic allocation of random data bandwidth in multi-core processors
JP2015069576A (ja) 情報処理装置および情報処理装置の制御方法
US6889283B2 (en) Method and system to promote arbitration priority in a buffer queue
KR100973419B1 (ko) 버스 중재 방법 및 장치
CN104750640B (zh) 在多个通道之间仲裁以存取一资源的方法和装置
US7130947B2 (en) Method of arbitration which allows requestors from multiple frequency domains
JP2007026022A (ja) バス調停装置及びバス調停方法
Doifode et al. Design and performance analysis of efficient bus arbitration schemes for on-chip shared bus multi-processor soc
JPH1125035A (ja) バス調停装置
KR100651857B1 (ko) 우선 순위 구조의 중재 시스템 및 이를 이용한 중재 방법
JPH05257873A (ja) 優先判定方法および優先判定回路

Legal Events

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