TWI490697B - 匯流排控制器、匯流排通信系統及匯流排控制方法 - Google Patents

匯流排控制器、匯流排通信系統及匯流排控制方法 Download PDF

Info

Publication number
TWI490697B
TWI490697B TW097135745A TW97135745A TWI490697B TW I490697 B TWI490697 B TW I490697B TW 097135745 A TW097135745 A TW 097135745A TW 97135745 A TW97135745 A TW 97135745A TW I490697 B TWI490697 B TW I490697B
Authority
TW
Taiwan
Prior art keywords
starter
starters
bus
masking
period
Prior art date
Application number
TW097135745A
Other languages
English (en)
Other versions
TW201009593A (en
Inventor
Hiroshi Ootaki
Yasuhito Oomiya
Original Assignee
Mitsubishi Electric Corp
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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Publication of TW201009593A publication Critical patent/TW201009593A/zh
Application granted granted Critical
Publication of TWI490697B publication Critical patent/TWI490697B/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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Bus Control (AREA)
  • Small-Scale Networks (AREA)

Description

匯流排控制器、匯流排通信系統及匯流排控制方法
本發明係有關匯流排控制器(bus controller)、匯流排通信系統及匯流排控制方法。本發明尤其有關於資料匯流排通信方式。
近年來,由於匯流排通信系統的高功能化及連接於匯流排通信系統的元件數目的增加與高功能化,對系統匯流排的負荷係逐漸增加,而在如此的狀況中,當發出超出系統匯流排與記憶體匯流排的性能之要求(request)時,會發生僅優先權高的起始機(initiator)受到服務,而優先權低的起始機擱置(hang up)之狀況。因此,有採用用以均等地對各起始機提供服務的循環法(round robin)與LRU(Least Recently Used;最近最少使用)等方式,而讓低優先權的起始機也受到服務。然而,在採用循環法與LRU的系統中也有當各起始機同時或者交互地發出複數個要求、各起始機交互地被賦予匯流排權、平均地發出命令之狀況發生時,視起始機而會有由於所欲存取(access)的目標機(target)一直在處理來自別的起始機的命令,因此每次存取皆被拒絕而進行重試(retry),導致命令無法被接受之狀態始終持續而擱置之問題。
在專利文獻1中係揭示一種方式,係在規定有存取週期的高優先權的起始機與沒有規定存取週期的低優先權的起始機對同一目標機進行存取的系統中,在低優先權的起 始機的匯流排解放期間設置臨限值(threshold value),藉此中斷使用中的匯流排的解放,將匯流排權分配給高優先權的起始機,因此保證高優先權的存取。
專利文獻1:日本特開2003-281083號公報
在專利文獻1中,並未揭示當各起始機同時或者交互地發出複數個要求、各起始機交互地被賦予匯流排權、平均地發出命令之狀況發生時,避免視起始機而有由於所欲存取的目標機一直在處理來自別的起始機的命令,因此每次存取皆被拒絕而進行重試,命令無法被接受之狀態的方式。
於第11圖顯示一般的資料匯流排系統。第11圖所示的系統係構成為:複數個起始機;1個以上的目標機,係處理來自起始機的命令;匯流排控制器,係藉由循環法與LRU等優先順位控制方式,對來自複數個起始機的要求均等地或固定優先順位地提供服務;以及匯流排,係擇選1個命令而進行驅動。進行優先順位控制的匯流排控制器係在起始機將位址與命令載至匯流排之前接收命令發出要求(亦即,要求信號(request)),在許可時對起始機回覆許可(亦即,許可信號(grant))。接收到許可的起始機係對目標機發出位址與命令(cmd)。處理來自起始機的命令之目標機係在判斷位址與命令後,將接受(accept)或重試(retry)回覆給起始機。然而,在此種構成的系統中,當目標機的 服務能力相對於來自複數個起始機的命令發出並不足夠時,視起始機會有對其每次命令發出老是給予重試回應之情形,而當該起始機被接受之前其他的起始機的動作不做改變時,會有導致匯流排整體擱置之問題。
在專利文獻1所揭示的方式中,即使能夠將匯流排權確實地分配給高優先權的起始機,仍舊無法避免目標機對在分配匯流排權後起始機所發出的命令每次皆回應重試的狀況。在要求從複數個起始機同時或者交互地發出複數個命令的情況中,即使目標機對每次從相同的起始機發出的命令回應重試而使該起始機擱置之狀況的發生頻率不高,但還是必須避免。
本發明的目的係例如即使從複數個起始機同時或者交互地進行複數個命令發出要求(亦即,要求信號的送訊),也可藉由打亂來自各起始機的命令發出要求(亦即,要求信號)的時序,來防止命令的發出週期成為一定,而避免一直被目標機回應重試的狀況。
本發明之一態樣的匯流排控制器係控制匯流排通信系統者,在該通信系統中,連接於匯流排的複數個起始機(initiator)的各者係在預定的週期產生要求使用匯流排之要求信號並將之送訊,且依據要求信號而在被許可使用匯流排時將指示執行預定處理的命令信號送訊給連接於匯流排的目標機(target),而當判斷為該目標機不執行該處理時,則於再度被許可使用匯流排時將命令信號送訊至該 目標機,其中,該匯流排控制器具備:匯流排控制部,係當從各起始機接收要求信號時,依據預定的優先順位來對於各起始機許可匯流排的使用;以及遮沒(mask)產生部,係從各起始機發送要求信號之時序(timing)成為非週期性之方式對在各起始機所產生的要求信號進行遮沒控制,前述遮沒產生部包含有:遮沒週期設定部,係將對各起始機所產生的要求信號進行遮沒控制之週期作為遮沒週期而設定;遮沒條件設定部,係將作為遮沒控制之對象的起始機之複數個組合設定作為複數個遮沒條件,並將與前述複數個起始機逐一對應且係僅將對應的起始機由遮沒控制的對象排除而得之與前述複數個起始機相同數的遮沒條件包含於前述複數個條件中;以及起始機遮沒ID(識別符)計數器,係與前述遮沒條件設定部所設定之複數個遮沒條件之每一個條件對應;前述遮沒產生部於前述遮沒週期設定部所設定之每一個遮沒週期使前述計數器上數,並依據與前述計數器所顯示之起始機遮沒ID對應的遮沒條件而選擇作為遮沒控制對象的起始機,且對經選擇之起始機所產生的要求信號進行遮沒控制。
在前述匯流排控制器中,前述遮沒週期設定部設定與 各起始機產生並發送要求信號的週期不同的週期作為前述遮沒週期。
在前述匯流排控制器中,前述遮沒產生部於前述遮沒週期設定部所設定之每一個遮沒週期,以較所選擇之起始機產生並發送要求信號之週期還長的時間,對該起始機所產生的的要求信號進行遮沒控制。
在前述匯流排控制器中,前述遮沒條件設定部復將使前述複數個起始機之全部作為遮沒控制對象的一個遮沒條件包含於前述複數個條件中。
在前述匯流排控制器中,前述遮沒條件設定部係依命令信號的類別來設定前述複數個遮沒條件。
在前述匯流排控制器中,前述遮沒產生部復具備遮沒期間設定部,該遮沒期間設定部係設定依前述遮沒週期設定部所設定的每一遮沒週期將進行遮沒控制之時間來作為遮沒期間。
在前述匯流排控制器中,前述遮沒產生部復具備遮沒對象指定旗標設定部,該遮沒對象指定旗標設定部係依每一起始機設定是否將其作為遮沒控制的對象。
本發明其中一態樣的匯流排通信系統係將複數個起始機與至少1個目標機連接於匯流排者,其中,前述各起始機係在預定的週期產生要求使用匯流排之要求信號並將之送訊,且依據要求信號而在被許可使用匯流排時將指示執行預定處理的命令信號送訊給目標機,而當判斷為該目標機不執行該處理時,則於再度被許可使用 匯流排時將命令信號送訊至該目標機;於前述匯流排通信系統係將匯流排控制器連接於匯流排,且該匯流排控制器係具備:匯流排控制部,係當從各起始機接收要求信號時,依據預定的優先順位來對於各起始機許可匯流排的使用;以及遮沒產生部,係以使各起始機發送要求信號之時序成為非週期性之方式對在各起始機所產生的要求信號進行遮沒控制,前述遮沒產生部包含有:遮沒週期設定部,係將對各起始機所產生的要求信號進行遮沒控制之週期作為遮沒週期而設定;遮沒條件設定部,係將作為遮沒控制之對象的起始機之複數個組合設定作為複數個遮沒條件,並將與前述複數個起始機逐一對應且係僅將對應的起始機由遮沒控制的對象排除而得之與前述複數個起始機相同數的遮沒條件包含於前述複數個條件中;以及起始機遮沒ID(識別符)計數器,係與前述遮沒條件設定部所設定之複數個遮沒條件之每一個條件對應;前述遮沒產生部於前述遮沒週期設定部所設定之每一個遮沒週期使前述計數器上數,並依據與前述計數器所顯示之起始機遮沒ID對應的遮沒條件而選擇作為遮沒控制對象的起始機,且對經選擇之起始機所產生的要求信號進行遮沒控制。
本發明之一態樣的匯流排控制方法係控制匯流排通信系統者,在該通信系統中,連接於匯流排的複數個起始機的各者係在預定的週期產生要求使用匯流排之要求信號並將之送訊,且依據要求信號而在被許可使用匯流排時將指示執行預定處理的命令信號送訊給連接於匯流排的目標機,而當判斷為該目標機不執行該處理時,則於再度被許可使用匯流排時將命令信號送訊至該目標機,其中,匯流排控制部在當從各起始機接收要求信號時,依據預定的優先順位來對於各起始機許可匯流排的使用,且遮沒產生部係以使發送要求信號起始機發送要求信號之時序成為非週期性之方式對在各起始機所產生的要求信號進行遮沒控制,前述遮沒產生部進行以下處理:將對各起始機所產生的要求信號進行遮沒控制之週期作為遮沒週期而設定;將作為遮沒控制之對象的起始機之複數個組合設定作為複數個遮沒條件;將與前述複數個起始機逐一對應且係僅將對應的起始機由遮沒控制的對象排除而得之與前述複數個起始機相同數的遮沒條件包含於前述複數個條件中;以及於前述每一個遮沒週期使與前述複數個遮沒條件逐一對應之起始機遮沒ID計數器上數,並依據與前述計數器所顯示之起始機遮沒ID對應的遮沒條件而選擇作為遮沒控制對象的起始機,且對經選擇之起始機所產生的要求信號 進行遮沒控制。本發明其中一態樣的匯流排控制器,係控制匯流排通信系統者,在該通信系統中,連接於匯流排的複數個起始機(initiator)的各者係在被許可使用匯流排時將指示執行預定處理的命令信號送訊給連接於匯流排的目標機(target),而當判斷為該目標機不執行該處理時,則於再度被許可使用匯流排時將命令信號送訊至該目標機,其中,該匯流排控制器具備:匯流排控制部,係依據預定的優先順位來對於各起始機許可匯流排的使用;以及遮沒產生部,係以使前述匯流排控制部對於至少1個起始機許可匯流排的使用之時序成為非週期性之方式進行控制;各起始機係在預定的週期產生對於前述匯流排控制部要求使用匯流排之要求信號並將之送訊;前述遮沒產生部係以使從各起始機送訊要求信號之時序成為非週期性之方式對各起始機所產生的要求信號進行遮沒控制;前述遮沒產生部係具備:遮沒週期設定部,係將對各起始機所產生的要求信號進行遮沒控制之週期作為遮沒週期而設定;以及遮沒條件設定部,係依前述遮沒週期設定部所設定的每一遮沒週期將作為遮沒控制的對象之起始機作為遮沒條件而設定; 且前述遮沒條件設定部係依命令信號的類別將作為遮沒控制的對象之起始機來作為遮沒條件而設定
依據本發明其中一態樣,在匯流排控制器中,遮沒產生部係使匯流排控制部對至少1個起始機許可匯流排的使用之時序成為非週期性之方式進行控制,藉此,防止命令的發出週期成為一定,而能夠避免一直被目標機給予重試回應的狀況。
以下,利用圖式說明本發明的實施形態。
實施形態1
參照圖式說明本實施形態的資料匯流排通信系統,本發明的資料匯流排通信系統係為了製造許可命令發出的時序與間隔之紊亂(為了打亂對匯流排的存取週期),而將欲使之接受要求的起始機之外的起始機予以遮沒(mask)某期間,藉此而賦予不規則性。
第1圖係能夠將欲使之接受要求的起始機102之外的起始機予以遮沒某期間之資料匯流排通信系統100的構成方塊圖。
在第1圖中,匯流排通信系統100係具備匯流排控制器101、複數個起始機102、以及至少一個目標機103。匯流排控制器101、起始機102、目標機103係連接於匯流排104。
匯流排控制器101係為於第11圖所示的匯流排控制器 附加有產生遮沒信號的遮沒產生部110而成者,其係控制匯流排通信系統100。各起始機102係對匯流排控制器101進行命令發出要求(亦即,要求信號的送訊),且對目標機103發出命令。目標機103係處理來自起始機102的命令。匯流排104係選擇1個來自起始機102的命令而進行驅動。
具體而言,起始機102係為了發出命令,在預定週期產生要求匯流排104的使用之要求信號(request)並送訊給匯流排控制器101。匯流排控制器101係當從起始機受訊要求信號(request)時,判斷是否對該起始機102許可命令的發出,亦即判斷是否許可其使用匯流排104。匯流排控制器110係在判斷為對該起始機101許可使用匯流排104時,將許可信號(grant)送訊給該起始機102。起始機102係在某週期從匯流排控制器101受訊有許可信號(grant)時,亦即被許可使用匯流排104時,將指示執行預定處理的命令信號(cmd)送訊給目標機103。目標機103係當從起始機102受訊命令信號(cmd)時,判斷是否處理來自該起始機102的命令,亦即判斷是否能夠執行所指示的處理。目標機103係在判斷為能夠執行該起始機102所指示的處理時,將接受信號(accept)送訊給起始機102。另一方面,目標機103係當判斷為無法執行該起始機102所指示的處理時,將重試信號(retry)送訊給起始機102。另外,匯流排控制器101亦可在判斷是否使目標機103執行起始機102所指示的處理,當判斷為不使其執行該處理時,將重試信號(retry)送訊給起始機102。起始機102係在受訊重試信 號(retry)時,亦即,判斷為(知道)未在該目標機103執行該處理時,當在之後的週期從匯流排控制器101受訊有許可信號(grant)時,亦即,當匯流排104的使用再度被許可時,將命令信號(cmd)送訊給目標機103。此後係重複相同的通訊處理。
匯流排控制器101係具有遮沒產生部110及匯流排控制部120。
遮沒產生部110係為了打亂存取週期的間隔與存取週期等,而在某存取週期產生將欲使之接受要求的起始機102之外的起始機102予以遮沒某期間的信號(遮沒信號)。匯流排控制部120係進行來自起始機102的要求的優先順位控制。亦即,匯流排控制120係依據預定的優先順位對送訊出要求信號(request)的起始機102送訊許可信號(grant),藉此對該起始機102許可匯流排104的使用。遮沒產生部110係將遮沒信號送訊給至少1個起始機102而使該起始機102遮沒要求信號(request)(例如,使之不要送訊要求信號、或使之送訊無意義的信號作為要求信號等方式),藉此而以使匯流排控制部120對於該起始機102許可使用匯流排104之時序成為非週期性之方式進行控制。亦即,遮沒產生部110係對在各起始機102產生的要求信號(request)進行遮沒控制,以使從各起始機102送訊要求信號(request)的時序成為非週期性。另外,遮沒產生部110係亦可將遮沒信號送訊給匯流排控制部120而使匯流排控制部120遮沒來自至少一個起始機120的要求信號 (request)(例如,使之無視所受訊的要求信號、或使之將所受訊的要求信號轉換成無意義的信號等方式),藉此而以使匯流排控制部120對於該起始機102許可使用匯流排104之時序成為非週期性之方式進行控制。亦即,遮沒產生部110亦可對於在匯流排控制部120從各起始機102受訊的要求信號(request)進行遮沒控制,以使在匯流排控制部120內部處理(或檢測)要求信號(request)的時序成為非週期性。或者,遮沒產生部110亦可將遮沒信號送訊給匯流排控制部120而使匯流排控制部120將對至少一個起始機120的許可信號(grant)(例如,使之不要送訊許可信號、或使之送訊無意義的信號來作為許可信號等方式)予以遮沒,藉此而以使匯流排控制部120對於該起始機102許可使用匯流排104之時序成為非週期性之方式進行控制。亦即,遮沒產生部110亦可對在匯流排控制部120產生的許可信號(grant)進行遮沒控制,以使從匯流排控制部120送訊許可信號(grant)的時序成為非週期性。
遮沒產生部110係具備遮沒週期設定部111、起始機遮沒ID(識別符)計數器112、遮沒期間設定部113、遮沒條件設定部114、遮沒對象指定旗標(flag)設定部115。
遮沒週期設定部111係任意設定進行遮沒的時序(週期)。具體而言,遮沒週期設定部111係設定對於在各起始機102產生的要求信號(request)進行遮沒控制之週期來作為遮沒週期。起始機遮沒ID計數器112係任意設定依每一遮沒週期進行變更的成為遮沒對象之起始機102。具體 而言,起始機遮沒ID計數器112係依遮沒週期設定部111所設定的每一遮沒週期,變更後述遮沒條件設定部114所設定的遮沒條件。遮沒期間設定部113係任意設定成為遮沒對象的起始機102的遮沒期間。亦即,遮沒期間設定部113係設定依遮沒週期設定部111所設定的每一遮沒週期進行遮沒控制之時間來作為遮沒期間。遮沒條件設定部114係設定依每一遮沒週期設定部111所設定的遮沒週期作為遮沒控制對象之起始機102來作為遮沒條件。並且,遮沒條件設定部114係對與起始機遮沒ID計數器112相對應的起始機102、於遮沒期間設定部113所設定的期間進行遮沒信號輸出。遮沒對象指定旗標設定部115係可任意設定各起始機102的遮沒為有效或無效。亦即,遮沒對象指定旗標設定部115係對於每一起始機102設定是否成為遮沒控制的對象。
在此,於第2圖顯示遮沒條件的設定例。第2圖顯示的例中,起始機102為5個,且備有0到9的遮沒ID以產生以下三種遮沒條件:各起始機102一定會被許可一次之狀況、所有起始機102皆不被許可之狀況、以及各有3個起始機102被許可之狀況,第2圖係表示起始機遮沒ID與進行遮沒的起始機102之對應。遮沒條件係為能夠任意設定者,較佳為配合匯流排通信系統100的構成來設定適當設定,而在本例中,只要設定符合起始機遮沒ID=0至5者即能夠對應各種構成。其中,只要設定符合起始機遮沒ID=0至4者便能提供高汎用性的匯流排通信系統100。
匯流排通信系統100係例如搭載於電腦者,而匯流排通信系統100的匯流排控制器101係由電腦所具備的CPU 201(Central Process Unit;中央處理器)所控制。CPU 201係利用電腦所具備的ROM(Read Only Memory;唯讀記憶體)、RAM(Random Access Memory;隨機存取記憶體)等記憶體202來執行程式,進行例如遮沒產生部110的遮沒週期設定部111、遮沒期間設定部113、遮沒對象指定設定部115之設定。在如後述將遮沒條件設定部114作為電路而進行安裝的情形中,能夠藉由程式任意地進行遮沒週期設定部111、遮沒期間設定部113、遮沒對象指定旗標設定部115之設定,藉此,即變得容易進行適合匯流排通信系統100的構成之遮沒控制。
另外,在本實施形態的說明中,作為「~部」進行說明者可為「~裝置」、「~機器」,此外,亦可為「~步驟」、「~工序」、「~程序」、「~處理」。作為「~部」進行說明者亦可以記憶於記憶體202的韌體(firmware)來實現。或者,亦可僅以軟體來實現,或者亦可僅以元件、裝置、基板、配線等硬體來實現,或者亦可以軟體與硬體的組合更甚而與韌體的組合來實現。韌體與軟體係作為程式而記憶於記憶體202。該程式係藉由CPU 201讀出並藉由CPU 201執行。亦即,程式係使電腦發揮作為本實施形態說明中所說明的「~部」之功能者。或者,係使電腦執行本實施形態說明中所說明的「~部」的程序或方法者。
接著,針對在第2圖所例示的遮沒條件的設定下,且 遮沒週期為Ta、起始機遮沒ID為2、遮沒期間為Tm、遮沒對象指定旗標將起始機A與起始機C設定為有效時之動作,利用第3至5圖進行說明。
第3圖係遮沒產生部110的動作原理圖。在第3圖中,起始機遮沒ID為2,且遮沒對象指定旗標將起始機A與起始機C設定為有效,因此遮沒產生部110係僅對起始機A輸出遮沒信號。
第4圖係表示遮沒週期與遮沒期間與起始機遮沒ID計數器112的關係圖。於第4圖,由於起始機遮沒ID為2,因此由第2圖的遮沒條件得到與之相對應的起始機102為起始機C以外的所有起始機102。另一方面,由於遮沒對象指定旗標僅將起始機A與起始機C設定為有效,因此在起始機遮沒ID為2時,僅有起始機A成為遮沒對象。
第5圖係針對遮沒對象指定旗標所指定的起始機A與起始機C的時序圖。於第5圖,(1)在遮沒前(無進行遮沒時),起始機C係持續從目標機接收重試回應。(2)在遮沒後(進行了遮沒時),當遮沒期間Tm比起始機A的要求週期TreqA長時,由於起始機A被遮沒了遮沒期間Tm,因此持續接收重試回應的起始機C係被接受(accept)。(3)在遮沒後(進行了遮沒時),當遮沒期間Tm比起始機A的要求週期TreqA短時,若遮沒期間Tm重疊於起始機A的要求週期TreqA的開始時點時,持續接收重試回應的起始機C亦被接受。另外,(2)與(3)的時序圖可為顯示在匯流排104上量測的信號值者,亦可為顯示在匯流排控制器101內部量 測的信號值者。當遮沒產生部110對在各起始機102產生的要求信號(request)進行遮沒控制以使從各起始機102送訊要求信號(request)的時序成為非週期性時,不論是在匯流排104上量測的信號值或在匯流排控制器101內部量測的信號值皆為如(2)與(3)所示者。另一方面,當遮沒產生部110以使在匯流排控制部120的內部處理(或檢測)要求信號(request)的時序成為非週期性之方式對在匯流排控制部120從各起始機102受訊的要求信號(request)進行遮沒控制時,即使在匯流排104上量測的信號值為如(1)所示者,在匯流排控制器101內部量測的信號值仍為如(2)與(3)所示者。
以下,針對附加於匯流排控制器101的遮沒產生部110產生用以打亂來自各起始機102的要求之發出時序之遮沒信號並將之輸出之動作進行說明。
第6圖係顯示匯流排控制器101的遮沒產生部110將遮沒信號予以輸出的一連串動作之流程圖。
在步驟S101中,遮沒產生部110係將用以檢測遮沒週期的遮沒週期計數器、以及依每一遮沒週期變更進行遮沒的起始機102的起始機遮沒ID計數器112予以重置,然後前進至步驟S102。在步驟S102中,遮沒產生部110係開始遮沒週期計數器的計數,然後前進至步驟S103。在步驟S103中,遮沒產生部110係當遮沒週期計數器與遮沒週期一致時前進至步驟S104。遮沒產生部110係當遮沒週期計數器與遮沒週期不一致時,使遮沒週期計數器進行上數 (count up)。在步驟S104中,遮沒產生部110係使起始機遮沒ID計數器112上數1,輸出與起始機遮沒ID相對應的起始機102的選擇信號,且清除(clear)遮沒週期計數器並開始再計數,然後前進至步驟S105。在步驟S105中,遮沒產生部110係開始對遮沒對象指定旗標為有效並且作為與起始機遮沒ID相對應的遮沒對象而被選擇的起始機102進行遮沒,且開始遮沒期間計數器的計數,然後前進至步驟S106。在步驟S106中,遮沒產生部110係若遮沒期間計數器計數至遮沒期間則解除遮沒,若未計數至遮沒期間則使遮沒期間計數器上數1,然後前進至步驟S107。在步驟S107中,遮沒產生部110係解除遮沒,然後再次前進至步驟S103。
如上所述,依據本實施形態,於匯流排控制器101附加遮沒產生部110,且遮沒產生部110係依每一預定週期對成為遮沒對象的起始機102遮沒預定期間,藉此,即使從複數個起始機102同時或交互地發出複數個要求(亦即,要求信號(request)之送訊),來自各102的命令發出要求(亦即,要求信號(request))的時序係紊亂,防止命令(cmd)的發出週期成為一定,而能夠避免一直被目標機103給予重試回應(retry)的狀況。
如上所說明,本實施形態中所具備的匯流排通信系統100係具備:複數個起始機102;1個以上的目標機103,係處理來自起始機102的命令;以及匯流排控制器101,係進行來自複數個起始機102的要求的優先順位控制;其 中,匯流排控制器101係具有打亂來自各起始機102的要求的發出時序之遮沒產生部110。遮沒產生部110pps係對來自起始機102的命令發出要求(亦即,要求信號(request))進行遮沒,藉此,來自102的命令發出要求(亦即,要求信號(request))的時序係紊亂,而能夠避免起因於來自目標機的重試(retry)之死鎖(deadlock)。
匯流排控制器101的特徵在於其在遮沒產生部110中具有能夠任意地設定進行遮沒的時序之遮沒週期設定部111。藉此,能夠任意地設定相應於系統的遮沒週期。
匯流排控制器101的特徵在於其在遮沒產生部110中具有決定依每一遮沒週期進行遮沒的起始機102之遮沒條件設定部114。藉此,能夠相應於系統而任意地設定於每一存取週期遮沒對象之起始機102。
匯流排控制器101的特徵在於其在遮沒產生部110中具有可於每一遮沒週期任意決定遮沒期間之遮沒期間設定部113。藉此,能夠相應於系統而任意地設定成為遮沒對象的起始機102的遮沒期間。
匯流排控制器101的特徵在於其在遮沒產生部110中具有將遮沒控制決定為有效或無效之遮沒對象指定旗標設定部115。藉此,能夠相應於系統而任意地將各起始機102的遮沒設定為有效或無效。
匯流排控制器101的特徵在於其在遮沒產生部110中具有依每一遮沒週期變更遮沒條件設定部114中的遮沒條件之起始機遮沒ID計數器112。藉此,能夠任意地設定依 每一遮沒週期進行變更的成為遮沒對象之起始機102。
如此,依據本實施形態,即使為當各起始機102同時或者交互地發出複數個要求、各起始機102交互地被賦予匯流排權、平均地發出命令之狀況發生時,即使在視起始機102而有所欲存取的目標機一直在處理來自別的起始機102的命令而一直進行重試,導致命令無法被接受之狀態下,也可藉由打亂要求的發出時序,而使命令要求能被接受。
實施形態2
就本實施形態,主要說明本實施形態與實施形態1的差異。
在實施形態1中,遮沒條件設定部114係只是將作為遮沒控制的對象之起始機102的組合設定作為遮沒條件,而在本實施形態中,遮沒條件設定114係依每一命令信號(cmd)的類別將作為遮沒控制的對象之起始機102設定作為遮沒條件。具體而言,遮沒條件設定部114係將當命令(cmd)為指示執行伴隨資料匯流排的讀取(read)動作之處理的命令之情形、及當命令(cmd)為指示執行伴隨資料匯流排的寫入(write)動作之處理的命令之情形分類,來設定作為遮沒控制的對象之起始機102的組合作為遮沒條件。另外,就命令(cmd)的類別而言,亦可使用讀取/寫入以外的區分方式。例如,遮沒條件設定部114係亦可將之分類成當命令(cmd)為指示執行伴隨資料匯流排的單一(single)傳輸動作之處理的命令之情形、及當命令(cmd)為指示執行 伴隨資料匯流排的叢發(burst)傳輸動作之處理的命令之情形,來設定作為遮沒控制的對象之起始機102的組合作為遮沒條件。
在此,於第7圖顯示遮沒條件的設定例。第7圖係顯示用以對讀取類別與寫入類別的命令發出要求(亦即,要求信號(request))個別地進行遮沒之遮沒條件。起始機遮沒ID 0到9為對於讀取類別的命令發出要求(亦即,要求信號(request))進行遮沒之遮沒條件,起始機遮沒ID 10到19為對於寫入類別的命令發出要求(亦即,要求信號(request))進行遮沒之遮沒條件。
在本實施形態中,由於遮沒產生部110的構成與動作與實施形態1相同,因此省略說明。
如上所述,依據本實施形態,藉由依據遮沒條件來將遮沒對象限定為起始機102的讀取及寫入之中的任一方(亦可再增加將寫入及讀取兩者皆作為對象的遮沒條件),從而能夠細密地進行遮沒控制,既可減少不必要的遮沒又可打亂來自各起始機102的命令發出要求(亦即,要求信號(request))的時序,防止命令(cmd)的發出週期成為一定,而能夠避免一直被目標機103給予重試(retry)回應的狀況。
如上所說明,本實施形態的特徵在於,在遮沒條件設定部14中分別準備有針對讀取或寫入(或讀取及寫入兩者)來指定遮沒條件者,並依序切換使用該些遮沒條件。藉此,能夠使遮沒對象細密地變化,因此能夠避免過度地進行遮 沒之事態。
實施形態3
就本實施形態,主要說明本實施形態與實施形態1的差異。
在本實施形態1中,在遮沒期間設定部113設定的遮沒期間係無關遮沒條件而共通,而在本實施形態中係依每一起始機遮沒ID設定遮沒期間。
第8圖係設定有與起始機ID對應的遮沒期間Tm0到Tm9之中的任一個之遮沒產生部110的動作原理圖。在第8圖中,由於起始機遮沒ID為2,因此在遮沒期間設定部113係設定遮沒期間Tm2。
第9圖係表示依每一起始機遮沒ID設定遮沒期間時的遮沒週期與遮沒期間與起始機遮沒ID計數器112的關係之圖。在第9圖中,當起始機遮沒ID為2時,遮沒期間係成為Tm2。如此,於每一遮沒週期,遮沒期間係依起始機遮沒ID變化。
以下,針對附加於匯流排控制器101的遮沒產生部110產生用以打亂來自各起始機102的要求的發出時序之遮沒信號並將之輸出之動作進行說明。
第10圖係顯示匯流排控制器101的遮沒產生部110輸出遮沒信號的一連串的動作之流程圖。
由於步驟S201到步驟S204係與第6圖的步驟S101到步驟S104相同,因此省略說明。在步驟S205中,遮沒產生部110係開始對於遮沒對象指定旗標為有效並且作為與 起始機遮沒ID相對應的遮沒對象而被選擇的起始機102進行遮沒,且將依每一起始機遮沒ID而準備的遮沒期間設定至遮沒期間計數器並開始計數,然後前進至步驟S206。由於步驟S206與步驟S207係與第6圖的步驟S106與步驟S107相同,因此省略說明。
如上所述,依據本實施形態,藉由依每一起始機遮沒ID設定遮沒期間,能夠細密地進行遮沒控制,既可減少不必要的遮沒又可打亂來自各起始機102的命令發出要求(亦即,要求信號(request))的時序,防止命令(cmd)的發出週期成為一定,而能夠避免一直被目標機103給予重試回應(retry)的狀況。
以上,針對本發明的實施形態進行了說明,但亦可組合該些之中的兩個以上的實施形態來實施。或者,亦可部分性地實施該些之中的1個實施形態。或者,亦可將該些之中的2個以上的實施形態部分性地組合來實施。
100‧‧‧匯流排通信系統
101‧‧‧匯流排控制器
102‧‧‧起始機
103‧‧‧目標機
104‧‧‧匯流排
110‧‧‧遮沒產生部
111‧‧‧遮沒週期設定部
112‧‧‧起始機遮沒ID(識別符)計數器
113‧‧‧遮沒期間設定部
114‧‧‧遮沒條件設定部
115‧‧‧遮沒對象指定旗標設定部
120‧‧‧匯流排控制部
201‧‧‧CPU
202‧‧‧記憶體
第1圖係顯示實施形態1的匯流排通信系統之方塊圖。
第2圖係顯示實施形態1的遮沒條件的設定例之表。
第3圖係實施形態1的遮沒產生部的動作原理圖。
第4圖係顯示實施形態1的遮沒週期與遮沒期間與起始機遮沒ID計數器的關係之圖。
第5圖係針對實施形態1的遮沒對象指定旗標所指定的起始機之時序圖。
第6圖係顯示實施形態1的遮沒產生部的動作之流程 圖。
第7圖係顯示實施形態2的遮沒條件的設定例之表。
第8圖係實施形態3的遮沒產生部的動作原理圖。
第9圖係顯示實施形態3的遮沒週期與遮沒期間與起始機遮沒ID計數器的關係之圖。
第10圖係顯示實施形態3的遮沒產生部的動作之流程圖。
第11圖係顯示一般的資料匯流排系統的構成之方塊圖。
100‧‧‧匯流排通信系統
101‧‧‧匯流排控制器
102‧‧‧起始機
103‧‧‧目標機
104‧‧‧匯流排
110‧‧‧遮沒產生部
111‧‧‧遮沒週期設定部
112‧‧‧起始機遮沒ID(識別符)計數器
113‧‧‧遮沒期間設定部
114‧‧‧遮沒條件設定部
115‧‧‧遮沒對象指定旗標設定部
120‧‧‧匯流排控制部
201‧‧‧CPU
202‧‧‧記憶體

Claims (9)

  1. 一種匯流排控制器,係控制匯流排通信系統者,在該通信系統中,連接於匯流排的複數個起始機(initiator)的各者係在預定的週期產生要求使用匯流排之要求信號並將之送訊,且依據要求信號而在被許可使用匯流排時將指示執行預定處理的命令信號送訊給連接於匯流排的目標機(target),而當判斷為該目標機不執行該處理時,則於再度被許可使用匯流排時將命令信號送訊至該目標機,其中,該匯流排控制器具備:匯流排控制部,係當從各起始機接收要求信號時,依據預定的優先順位來對於各起始機許可匯流排的使用;以及遮沒產生部,係以使從各起始機發送要求信號之時序成為非週期性之方式對在各起始機所產生的要求信號進行遮沒控制;前述遮沒產生部包含有:遮沒週期設定部,係將對各起始機所產生的要求信號進行遮沒控制之週期作為遮沒週期而設定;遮沒條件設定部,係將作為遮沒控制之對象的起始機之複數個組合依命令信號的類別設定作為複數個遮沒條件,並將與前述複數個起始機逐一對應且係僅將對應的起始機由遮沒控制的對象排除而得之與前述複數個起始機相同數的遮沒條件包含於前述複數個條件 中;以及起始機遮沒ID(識別符)計數器,係與前述遮沒條件設定部所設定之複數個遮沒條件之每一個條件對應;前述遮沒產生部於前述遮沒週期設定部所設定之每一個遮沒週期使前述計數器上數,並依據與前述計數器所顯示之起始機遮沒ID對應的遮沒條件而選擇作為遮沒控制對象的起始機,且對經選擇之起始機所產生的要求信號進行遮沒控制。
  2. 如申請專利範圍第1項之匯流排控制器,其中,前述遮沒週期設定部設定與各起始機產生並發送要求信號的週期不同的週期作為前述遮沒週期。
  3. 如申請專利範圍第2項之匯流排控制器,其中,前述遮沒產生部於前述遮沒週期設定部所設定之每一個遮沒週期,以較所選擇之起始機產生並發送要求信號之週期還長的時間,對該起始機所產生的的要求信號進行遮沒控制。
  4. 如申請專利範圍第1至3項中任一項之匯流排控制器,其中,前述遮沒條件設定部復將使前述複數個起始機之全部作為遮沒控制對象的一個遮沒條件包含於前述複數個條件中。
  5. 如申請專利範圍第1至3項中任一項之匯流排控制器,其中,前述遮沒產生部復具備遮沒期間設定部,該遮沒期間設定部係依前述遮沒週期設定部所設定的每一遮沒週期將進行遮沒控制之時間作為遮沒期間而設定。
  6. 如申請專利範圍第1至3項中任一項之匯流排控制器,其中,前述遮沒產生部復具備遮沒對象指定旗標設定部,該遮沒對象指定旗標設定部係依每一起始機設定是否將其作為遮沒控制的對象。
  7. 一種匯流排通信系統,係將複數個起始機與至少1個目標機連接於匯流排者,其中,前述各起始機係在預定的週期產生要求使用匯流排之要求信號並將之送訊,且依據要求信號而在被許可使用匯流排時將指示執行預定處理的命令信號送訊給目標機,而當判斷為該目標機不執行該處理時,則於再度被許可使用匯流排時將命令信號送訊至該目標機;於前述匯流排通信系統係將匯流排控制器連接於匯流排,且該匯流排控制器係具備:匯流排控制部,係當從各起始機接收要求信號時,依據預定的優先順位來對於各起始機許可匯流排的使用;以及遮沒產生部,係以使從各起始機發送要求信號之時序成為非週期性之方式對在各起始機所產生的要求信號進行遮沒控制;前述遮沒產生部包含有:遮沒週期設定部,係將對各起始機所產生的要求信號進行遮沒控制之週期作為遮沒週期而設定;遮沒條件設定部,係將作為遮沒控制之對象的起始機之複數個組合依命令信號的類別設定作為複數個遮 沒條件,並將與前述複數個起始機逐一對應且係僅將對應的起始機由遮沒控制的對象排除而得之與前述複數個起始機相同數的遮沒條件包含於前述複數個條件中;以及起始機遮沒ID(識別符)計數器,係與前述遮沒條件設定部所設定之複數個遮沒條件之每一個條件對應;前述遮沒產生部於前述遮沒週期設定部所設定之每一個遮沒週期使前述計數器上數,並依據與前述計數器所顯示之起始機遮沒ID對應的遮沒條件而選擇作為遮沒控制對象的起始機,且對經選擇之起始機所產生的要求信號進行遮沒控制。
  8. 一種匯流排控制方法,係控制匯流排通信系統者,在該通信系統中,連接於匯流排的複數個起始機的各者係在預定的週期產生要求使用匯流排之要求信號並將之送訊,且依據要求信號而在被許可使用匯流排時將指示執行預定處理的命令信號送訊給連接於匯流排的目標機,而當判斷為該目標機不執行該處理時,則於再度被許可使用匯流排時將命令信號送訊至該目標機,其中,匯流排控制部在當從各起始機接收要求信號時,依據預定的優先順位來對於各起始機許可匯流排的使用;且遮沒產生部係以使從各起始機發送要求信號之時序成為非週期性之方式對在各起始機所產生的要求信號進行遮沒控制;前述遮沒產生部進行以下處理: 將對各起始機所產生的要求信號進行遮沒控制之週期作為遮沒週期而設定;將作為遮沒控制之對象的起始機之複數個組合依命令信號的類別設定作為複數個遮沒條件;將與前述複數個起始機逐一對應且係僅將對應的起始機由遮沒控制的對象排除而得之與前述複數個起始機相同數的遮沒條件包含於前述複數個條件中;以及於前述每一個遮沒週期使與前述複數個遮沒條件逐一對應之起始機遮沒ID計數器上數,並依據與前述計數器所顯示之起始機遮沒ID對應的遮沒條件而選擇作為遮沒控制對象的起始機,且對經選擇之起始機所產生的要求信號進行遮沒控制。
  9. 一種匯流排控制器,係控制匯流排通信系統者,在該通信系統中,連接於匯流排的複數個起始機(initiator)的各者係在被許可使用匯流排時將指示執行預定處理的命令信號送訊給連接於匯流排的目標機(target),而當判斷為該目標機不執行該處理時,則於再度被許可使用匯流排時將命令信號送訊至該目標機,其中,該匯流排控制器具備:匯流排控制部,係依據預定的優先順位來對於各起始機許可匯流排的使用;以及遮沒產生部,係以使前述匯流排控制部對於至少1個起始機許可匯流排的使用之時序成為非週期性之方式進行控制; 各起始機係在預定的週期產生對於前述匯流排控制部要求使用匯流排之要求信號並將之送訊;前述遮沒產生部係以使從各起始機送訊要求信號之時序成為非週期性之方式對各起始機所產生的要求信號進行遮沒控制;前述遮沒產生部係具備:遮沒週期設定部,係將對各起始機所產生的要求信號進行遮沒控制之週期作為遮沒週期而設定;以及遮沒條件設定部,係依前述遮沒週期設定部所設定的每一遮沒週期將作為遮沒控制的對象之起始機作為遮沒條件而設定;且前述遮沒條件設定部係依命令信號的類別將作為遮沒控制的對象之起始機來作為遮沒條件而設定。
TW097135745A 2008-08-22 2008-09-18 匯流排控制器、匯流排通信系統及匯流排控制方法 TWI490697B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2008/064982 WO2010021054A1 (ja) 2008-08-22 2008-08-22 バスコントローラ及びバス通信システム及びバス制御方法

Publications (2)

Publication Number Publication Date
TW201009593A TW201009593A (en) 2010-03-01
TWI490697B true TWI490697B (zh) 2015-07-01

Family

ID=41706950

Family Applications (1)

Application Number Title Priority Date Filing Date
TW097135745A TWI490697B (zh) 2008-08-22 2008-09-18 匯流排控制器、匯流排通信系統及匯流排控制方法

Country Status (6)

Country Link
US (1) US8527682B2 (zh)
EP (1) EP2320326B1 (zh)
JP (1) JP5127927B2 (zh)
CN (1) CN102124453B (zh)
TW (1) TWI490697B (zh)
WO (1) WO2010021054A1 (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2856681B2 (ja) 1994-01-27 1999-02-10 インターナショナル・ビジネス・マシーンズ・コーポレイション 外部事象を処理する方法およびシステム
JP5625766B2 (ja) * 2010-11-08 2014-11-19 ソニー株式会社 アービトレーション回路、および、その制御方法
CN103870415B (zh) * 2012-12-13 2019-02-19 德州仪器公司 用于在总线上执行事务的方法及系统
US9336167B2 (en) 2012-12-13 2016-05-10 Texas Instruments Incorporated I2C controller register, control, command and R/W buffer queue logic
US9183904B2 (en) * 2014-02-07 2015-11-10 Micron Technology, Inc. Apparatuses, memories, and methods for facilitating splitting of internal commands using a shared signal path
JP6187508B2 (ja) * 2015-03-09 2017-08-30 日本電気株式会社 制御装置、バス回路、方法、及び、プログラム
CN106951391B (zh) * 2017-02-15 2020-02-11 合肥芯荣微电子有限公司 一种芯片内点对点互连总线访问屏蔽系统和方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0553979A (ja) * 1991-08-29 1993-03-05 Nec Eng Ltd 優先順位判定回路
JPH11184805A (ja) * 1997-12-24 1999-07-09 Ricoh Co Ltd バスシステム
TWI258081B (en) * 2002-04-04 2006-07-11 Via Tech Inc Arbitrating method and arbiter for bus grant

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0537899B1 (en) 1991-09-27 1999-12-15 Sun Microsystems, Inc. Bus arbitration architecture incorporating deadlock detection and masking
JPH06337843A (ja) 1993-05-28 1994-12-06 Fujitsu Ltd データ転送制御方法
EP0665501A1 (en) 1994-01-28 1995-08-02 Compaq Computer Corporation Bus master arbitration circuitry with retry mechanism
EP0676696B1 (en) 1994-04-06 1999-01-20 Advanced Micro Devices, Inc. Parallel port circuits in computer systems
DE69632634T2 (de) 1996-12-13 2005-06-09 Bull S.A. Arbitrierungseinheit zum Multiprozessorsystembuszugriff mit Wiederholungsfähigkeit
JPH11345198A (ja) * 1998-06-03 1999-12-14 Nec Corp バスマスタ機構およびその制御方法
EP1096387B1 (en) 1999-10-26 2012-10-10 Bull S.A.S. An arbitration unit for a bus
JP2002149480A (ja) * 2000-11-16 2002-05-24 Matsushita Electric Ind Co Ltd 排他制御方法
JP3832733B2 (ja) * 2002-01-17 2006-10-11 シャープ株式会社 ポーリング装置および通信装置
JP2003281083A (ja) 2002-03-27 2003-10-03 Sanyo Electric Co Ltd バスコントロール回路
US6973520B2 (en) 2002-07-11 2005-12-06 International Business Machines Corporation System and method for providing improved bus utilization via target directed completion
US7096289B2 (en) * 2003-01-16 2006-08-22 International Business Machines Corporation Sender to receiver request retry method and apparatus
US7062582B1 (en) * 2003-03-14 2006-06-13 Marvell International Ltd. Method and apparatus for bus arbitration dynamic priority based on waiting period
US7380040B2 (en) * 2005-04-14 2008-05-27 Texas Instruments Incorporated Software programmable dynamic arbitration scheme
US7467245B2 (en) * 2005-07-22 2008-12-16 Cisco Technology, Inc. PCI arbiter

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0553979A (ja) * 1991-08-29 1993-03-05 Nec Eng Ltd 優先順位判定回路
JPH11184805A (ja) * 1997-12-24 1999-07-09 Ricoh Co Ltd バスシステム
TWI258081B (en) * 2002-04-04 2006-07-11 Via Tech Inc Arbitrating method and arbiter for bus grant

Also Published As

Publication number Publication date
JPWO2010021054A1 (ja) 2012-01-26
US8527682B2 (en) 2013-09-03
TW201009593A (en) 2010-03-01
EP2320326B1 (en) 2015-01-14
EP2320326A4 (en) 2013-05-22
CN102124453B (zh) 2014-08-13
WO2010021054A1 (ja) 2010-02-25
JP5127927B2 (ja) 2013-01-23
CN102124453A (zh) 2011-07-13
EP2320326A1 (en) 2011-05-11
US20110179206A1 (en) 2011-07-21

Similar Documents

Publication Publication Date Title
TWI490697B (zh) 匯流排控制器、匯流排通信系統及匯流排控制方法
US7577780B2 (en) Fine-grained bandwidth control arbiter and the method thereof
EP1253518B1 (en) Memory access arbitration guaranteeing a desired data transfer rate
US6961793B2 (en) Bus arbiter and bus access arbitrating method
KR102344032B1 (ko) 반도체 장치
EP1927054A1 (en) Method and system for bus arbitration
US7380040B2 (en) Software programmable dynamic arbitration scheme
JP2004521410A (ja) コンピュータシステムにおけるマルチレベル割込み方式を実現するためのシステムおよび方法
US20070067527A1 (en) Data transfer bus system connecting a plurality of bus masters
US7054970B2 (en) Bus arbiter for integrated circuit systems
US8185679B2 (en) Controlling bus access
US20070073948A1 (en) Bus control system
JP2007018280A (ja) バスシステムの制御方法及び制御回路
KR20090128851A (ko) 버스 중재 방법 및 장치
US8713205B2 (en) Data transfer device and data transfer method
US20050172061A1 (en) Device controller
JP3985085B2 (ja) Dma制御装置
US7404025B2 (en) Software programmable dynamically reconfigurable scheme for controlling request grant and masking for ultra high priority accessor during arbitration
JP2002288120A (ja) 調停装置およびバスシステム
JP2005004563A (ja) Dma転送制御装置
KR100605867B1 (ko) 동적 우선순위 조정기능을 갖는 버스 중재기와 버스 중재방법
JP2001117860A (ja) メモリアクセス優先順位切替制御装置
JP2002091903A (ja) バスシステム
JPH11232215A (ja) バスコントローラ、バスマスタ装置及びバス制御システムの制御方法
JPH0660017A (ja) 競合回路

Legal Events

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