TW588250B - Computer system I/O node - Google Patents

Computer system I/O node Download PDF

Info

Publication number
TW588250B
TW588250B TW091122965A TW91122965A TW588250B TW 588250 B TW588250 B TW 588250B TW 091122965 A TW091122965 A TW 091122965A TW 91122965 A TW91122965 A TW 91122965A TW 588250 B TW588250 B TW 588250B
Authority
TW
Taiwan
Prior art keywords
instruction
patent application
input
communication path
scope
Prior art date
Application number
TW091122965A
Other languages
English (en)
Inventor
Stephen C Ennis
Larry D Hewitt
Original Assignee
Advanced Micro Devices 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 Advanced Micro Devices Inc filed Critical Advanced Micro Devices Inc
Application granted granted Critical
Publication of TW588250B publication Critical patent/TW588250B/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
    • 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/10Program control for peripheral devices
    • G06F13/12Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor
    • G06F13/124Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor where hardware is a sequential transfer control unit, e.g. microprocessor, peripheral processor or state-machine
    • G06F13/128Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor where hardware is a sequential transfer control unit, e.g. microprocessor, peripheral processor or state-machine for dedicated transfers to a network

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Bus Control (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Small-Scale Networks (AREA)

Description

588250 五、發明說明(1) [發明所屬之技術領域] 本發明係關於電腦系統輸入/輸出(I n p u t / 0 u t p u t, I / 0 ),並且尤其係關於在輸入/輸出節點中之資訊交易處 理。 [先前技術] 在典型的電腦系統中,一個或一個以上之處理器可以 經由一個或一個以上之匯流排與輸入/輸出裝置做通訊。 該輸入/輸出裝置可以透過輸入/輸出橋接器連接至該處理 器,該橋接器處理在連接至該輸入/輸出裝置之周邊匯流 排與連接至該處理器之共用匯流排之間之資料的轉移。此 外,該輸入/輸出橋接器可處理在系統記憶體與該輸入/輸 出裝置之間或在該系統記憶體與該處理器之間之資料的轉 移。 遺憾的是很多匯流排系統仍然具有許多缺點。例如, 許多連結至匯流排之裝置對於在該匯流排上之裝置驅動訊 號可能存在相對大的電容量。此外,在共用匯流排上之該 多重連結點在高訊號頻率下產生減少訊號完整性之訊號反 射。因此,在匯流排上之訊號頻率通常保持相對較低藉以 維持訊號完整性於可接受的位準。該相對低的訊號頻率降 低訊號頻寬,而限制了連結至該匯流排之裝置的效能。 對於較大數量的裝置之擴充性的缺乏是共用匯流排系 統之另外的缺點。共用匯流排之可獲得的頻寬實質上是固 定的(並且若加入額外的裝置造成在訊號頻率於匯流排上 之降低,則可能減少)。一旦連結至該匯流排(不論是直接
92187.ptd 第6頁 588250 五、發明說明(2) 地或非直接地)之裝置的頻寬需求超過該匯流排之可獲得 的頻寬時,當嘗試存取該匯流排時,裝置將會常常延遲, 並且包含該共用匯流排之電腦系統之整體的效能將非常有 可能降低。一個藉由輸入/輸出裝置所使用之共用匯流之 例子為周邊組件互連接(peripheral component interconnect, pci)匯流排。 很多輸入/輸出橋接裝置使用缓衝機制以緩衝許多來 自該PC I匯流排至最終的目的匯流排之待解決的資訊交 易。然而緩衝可能導致在該PC I匯流排上之延遲。當一連 串的資訊交易(後文中簡稱交易)緩衝於佇列中以及等待傳 輸至目的匯流排時,延遲將可能造成,並且延遲發生於該 目的匯流排上,該目的匯流排停止傳遞前進。接著將容許 那些等待的交易去完成之交易到達於該佇列處並且儲存於 其它交易後面。為了打破該延遲,在件列中之該交易必須 設法重新排序以允許該新到達交易傳送於該待解決的交易 之前。因此’為了避免諸如此種的情況,該p C I匯流排規 範訂定一組支配p C I匯流排交易之處理及排序之重新排序 規則。 為了克服共用匯流排之某些缺點,某些電腦系統玎能 在裝置或節點之間使用封包模式通訊。在此類的系統中, 節點可以藉由交換資訊之封包而彼此通訊。通常,"節點f 為能夠在内連接上參與交易之裝置。例如,該内連接4以 是封包型模式的,並且該節點可以經由配置以接收及發送 封包。一般來說,π封包”為在兩個節點之間之通訊,該雨
92187.ptd 第7頁 588250 五、發明說明(3) 個節點為:發送該封包之初始或π來源π節點及接收該封包 之目的或”目標”節點。當封包到達該目標節點時,該目標 節點接受由該封包所傳遞之資訊並且於内部處理該資料。 位在該來源及目標節點之間之在通訊路徑上之節點將可轉 送或傳遞來自該來源節點之該封包給該目標節點。 此外,也有系統使用封包模式通訊及匯流排模式通訊 之組合。例如,系統可連接至PC I匯流排及諸如AGP之繪圖 匯流排。該PC I匯流排可以連接至封包匯流排介面,該封 包匯流排介面接著可以轉譯PC I匯流排交易成為用於在封 包匯流排上傳輸之封包交易。同樣地該繪圖匯流排可以連 接至可轉譯AGP交易成為封包交易之AGP介面。每個介面可 以與結合其中一個處理器之主橋接器或在某些例子中與另 一個周邊裝置做通訊。 當PC I裝置初始化交易時,如同於PC I區域匯流排規範 中所提及的,封包型交易可能受到由相同的排序規則所限 制。該相同對於指定於該PC I匯流排之封包交易而言可能 是合法的。由於可能發生在封包匯流排介面處之交易延遲 可能在該封包匯流排介面處造成停滯,這些排序規則在該 封包模式交易中仍然可以觀察到。此停滯可能造成進一步 的延遲回到該封包匯流排線路上。此外,AGP交易可以依 循一組交易順序規則以確保資料之適當的傳送。 視輸入/輸出節點之配置而定,不論是在主橋接器之 方向上或遠離該主橋接器之方向上,交易可以透過節點傳 遞至另一個節點。另外,交易可以在特定的節點處引入封
92187.ptd 第8頁 588250 五、發明說明(4) 包傳輸中。在任一個情況下,當該交易沿著該通訊路徑發 送時,可以控制該交易之輸入/輸出節點架構可能是必須 具備的。 [發明内容] 在此將揭露電腦系統輸入/輸出節點之各種實施例。 在其中一項實施例中,用於電腦系統之輸入/輸出節點包 含經由配置以在第一通訊路徑上接收第一指令之第一接收 器單元及經由連接以在第二通訊路徑上發送對應該第一指 令之第一對應指令之第一發送器單元。該輸入/輸出節點 亦包含經由配置以在第三通訊路徑上接收第二指令之第二 接收器單元及經由連接以在第四通訊路徑上發送對應該第 二指令之第二對應指令之第二發送器單元。在一項特定的 實現中,該通訊路徑可以是諸如例如H y p e r T r a n s ρ 〇 r t 結之點對點通訊連結。再者,該輸入/輸出節點可包含經 由連接以接收來自於該第一接收器及該第二接收器之選擇 的指令之橋接器單元,並且經由配置以在周邊匯流排上發 送對應於該選擇的指令之指令。 在一項特定的實施例中,輸入/輸出節點包含經由連 接以控制來自該第一通訊路徑之指令至該第二通訊路徑及 至該周邊匯流排之傳送的控制單元。此外,該控制單元經 由連接以控制來自該第三通訊路徑之指令至該第四通訊路 徑及至該周邊匯流排之傳送。該控制單元亦經由配置以控 制來自該周邊匯流排之指令至該第二通訊路徑及該第四通 訊路徑之傳送。基於來自該第一接收器、該第二接收器及
92187.ptd 第9頁 588250 五、發明說明(5) 該橋接器單元所接收之複數個控制指令,該控制單元更經 由配置以選擇性地控制該指令之傳送。 [實施方式] 茲參照第1圖,該圖顯示電腦系統之一項實施例之方 塊圖。該電腦系統包含每個藉由相干封包匯流排1 5做内連 接之處理器1 0 A至1 0 D。每個區段的相干封包匯流排1 5在每 個處理器1 0 A至D之間可形成點對點連結。雖然該圖顯示使 用點對點連結之四個處理器,需要注意的是其它數量的處 理器亦可以使用並且其它形式的匯流排亦可在該處理器之 間做内連接。該電腦系統亦包含三個標示為2 0、3 0及4 0之 輸入/輸出節點,每個節點分別藉由輸入/輸出封包匯流排 5 0 B及5 0 C以串連方式連接在一起。輸入/輸出封包匯流排 5 0 A連接於主節點/處理器1 0 A及輸入/輸出節點2 0之間。處 理器1 0 A描述為主節點,該節點可包含用於與輸入/輸出封 包匯流排5 0 A做通訊之主橋接器。處理器1 0 B至D亦可包含 用於與其它輸入/輸出封包匯流排(未顯示)做通訊之主橋 接器。由輸入/輸出封包匯流排5 0 A至C所形成之該通訊連 結亦可以稱為點對點連結。輸入/輸出節點2 0連接至一對 周邊匯流排2 5 A至B。輸入/輸出節點3 0連接至繪圖匯流排 3 5,而輸入/輸出節點4 0連接至額外的周邊匯流排4 5。 處理器1 0A至1 0D例如每個可以用諸如Athlon TM微處理 器之X 8 6微處理器做為例證說明。此外,諸如輸入/輸出封 包匯流排5 0 A至5 0 C之封包匯流排的其中一個例子可以是非 同步HyperTransportTM。周邊匯流排25A至B及周邊匯流排
92187.ptd 第10頁 588250 五、發明說明(6) 4 5可以用諸如周邊組件互連接(PC I )匯流排之共用周邊匯 流排來做為例證說明。匯流排3 5例如可以用加速繪圖埠 (accelerated graphics port,AGP)做為例證說明。然 而,需要暸解的是其它形式的微處理器及其它形式的周邊 匯流排亦可以使用。 需要注意的是雖然該圖顯示三個輸入/輸出節點連接 至主處理器1 0 A,但是其它實施例可具有其它數目的節點 並且那些節點可以以其它形態做連接。說明於第1圖中之 該串連形態是為了本身的容易瞭解而顯示。 在說明的實施例中,處理器1 0A之主橋接器可接收諸 如輸入/輸出節點2 0、3 0或4 0之來自下行節點之上行封包 交易。另外,處理器1 0 A之主橋接器可發送封包下行至諸 如周邊裝置(未顯示)之裝置上,該周邊裝置例如可以連接 至周邊匯流排2 5 A。 在運作期間,輸入/輸出節點20及40可轉譯PCI匯流排 交易而成為在輸入/輸出資料流中傳輸之上行封包交易, 並且另外可轉譯下行封包交易而成為PC I匯流排交易。所 有源自於節點處而非處理器1 0 A之主橋接器的封包在受到 傳遞至任何其它的節點之前可流通上行至處理器1 0 A之主 橋接器。所有源自於處理器1 0 A之主橋接器的封包可流通 下行至諸如輸入/輸出節點2 0、3 0及4 0之其它節點。如同 在此所使用的,π上行”意指封包傳輸在處理器1 0A之主橋 接器的方向上流通,而’’下行π意指封包傳輸在遠離處理器 1 0 Α之主橋接器的方向上流通。每個輸入/輸出資料流可以
92187.ptd 第11頁 588250 五、發明說明(7) 藉由稱為單元I D ( Un i t I D )之識別器所識別。需要考量、 是該單元I D可以是部分封包標頭或者該單元丨D可以是$的。 一封包或複數個封包中之某些其它標示數目之位元&在單 在此所使用的,”輸入/輸出資料流”意指含有該相同如%同 元I D並且因此源自於該相同的節點之所有封包交易。、單 舉例說明,在周邊匯流排4 5上之周邊裝置初始耸 在周邊匯流排2 5上之周邊裝置之交易。該交易首先u V向 譯成為一個或一個以上之具有獨特的單元丨D之封勺:以轉 著可以發送上行。需要注意的是每個封包可以編=点且接 能識別該封包之特定的資訊。例如,,具有 為”包標頭。此外…易之形式二編;^ = 包祐頭。每個封包可以指定識別該初始點之 I由 輸出節點20可能無法從下行而傳遞封心 主:接号之ί邊裝S,故該封包發送上行至處理器l〇A之 主橋接裔。處理器丨〇 A之主橋接器㈣ 10A之主橋接器…10的該封包具:處理器 輸出節點2 0識得卄η敌丰r 1 · 直到輸入/ 之1 HΓ 走(aims)給予在周邊匯流排25上 的該封包。輸入/輸出節點2〇接著可轉,Γ 封I成為周邊匯流排交易並且發轉# 3 2 5上之該周邊裝置。 μ又易…在周邊匯流排 當封包交易進行上行或下行時, 一個以上之輸入/輸出節點。該穿越有^可穿越—個或 輸入/輸出節點有時稱為通道裝置。^寺%為通道並且該 行至上行所發送之封包稱為,,前 攸上仃至下行或從下 得輸。此外,源自於特
92187.ptd 第12頁 588250 五、發明說明(8) 定的輸入/輸出節點並且插入至該上行傳輸之封包傳輸稱 為”注入”傳輸。 如同將於下文中更加詳細說明的是,為了保留可能連 接至輸入/輸出節點之各種匯流排之順序規則,該輸入/輸 出節點可提供交易重新排序以及封包緩衝。該輸入/輸出 節點藉由前遞及注入傳輸兩者亦可包含控制封包之流通進 入該通道及由該通道出來之控制邏輯。 參考第2圖,該圖顯示輸入/輸出節點之一項實施例之 方塊圖。該輸入/輸出節點以第1圖之輸入/輸出節點2 0、 3 0或4 0表示並且為了簡化起見將於下文中稱為輸入/輸出 節點2 0。第2圖之輸入/輸出節點2 0包含透過指令匯流排 1 1 1連接至發送器1 4 0及透過指令匯流排1 1 2連接至周邊介 面1 5 0之交易接收器1 1 0。輸入/輸出節點2 0亦包含透過指 令匯流排1 2 1連接至發送器1 3 0及透過指令匯流排1 2 2連接 至周邊介面15 0之交易接收器120。周邊介面15 0亦透過指 令匯流排1 5 1連接至發送器1 3 0及1 4 0並且連接至周邊匯流 排1 5 2。此外,輸入/輸出節點2 0包含透過控制指令匯流排 1 0 1連接至每個接收器、每個發送器及周邊介面之交易控 制單元1 0 0。如同於此所使用的,指令匯流排意指包含用 於指令、控制及資料之訊號。因此,當交易或指令宣稱經 由個別的指令匯流排而發送時,該交易或指令意指包含指 令及資料位元。 在說明的實施例中,接收器11 0及發送器1 4 0形成輸入 /輸出通道之其中一個通訊路徑並且接收器1 2 0及發送器
92187.pld 第13頁 588250 五、發明說明(9) 1 3 0形成該輸入/輸出通道之第二個通訊路徑。由於每個該 通訊路徑為單一方向的,故任何一個路徑可以連接成為該 上行或下行路徑。因此,來自周邊介面1 5 0之該注入傳輸 將提供給任何一個傳輸器1 3 0及1 4 0。 每一個接收器11 0及1 2 0接收封包交易進入接收缓衝區 (未顯示)内。當接收到每個交易時,將產生含有内含於該 接收的指令中之子集合資料之控制指令。該控制指令可例 如包含該來源節點之單元I D、目的資訊、資料計數及交易 形式。需要注意的是該控制指令可包含其它資訊或可不包 含某些於此所列舉的資訊。該控制指令將發送給交易控制 單元100。 回應於周邊介面1 5 0接收來自於周邊匯流排1 5 2之交 易,周邊介面1 5 0亦可產生含有類似於上文所描述之該控 制指令之資訊的控制指令。周邊介面1 5 0亦可儲存該交易 於一個或一個以上之緩衝區中並且發送該控制指令給交易 控制單元1 0 0。 交易控制單元1 0 0可儲存每個控制指令,該交易控制 單元接收該控制指令以該單元所接收之順序進入一個或一 個以上之緩衝區構造内。基於該交易控制單元1 0 0儲存該 控制指令於本身的緩衝區内,交易控制單元1 0 0可決定該 對應的指令等待於來源緩衝區(意即接收器及/或周邊介 面)中可以發送之順序。如同將於下文中結合第3圖至第6 圖以更詳細之描述,交易控制單元1 0 0基於諸如交易之形 式之因素可以在本身的緩衝區中的交易之間做仲裁,是否
92187.ptd 第14頁 五、發明說明(10) 在該發送器及目的處具有〜 前遞傳輸或注入傳輪。因:該2 ,是否該交易為 輸出節點之通道可以負責於交易仫制早兀1 〇〇透過輪入 一旦交易控制單元100仲 之溢位/ 交易控制單元1 00可針對該個別那一個交易將要處理時, 的交易給該目的裝f。例如,言二來:裳置:
自本身的緩衝區之控制指該緩衝區代表器擇上 至發送器140之待傳f之父易。交易控制單元i〇〇通知接收 器11 〇以透過指令ii流排111發送該交易給發送器14 〇。發 送器1 4 0接著可發送該父易給在該串連中之下一個節點。 該下一個節點可以是另一個不管是上行或下行之輸入/輸 出節點,或者該下〆個節點可以是諸如第1圖之主處理器 1 〇 A之主節點。此外’父易控制單元1 0 0及發送器1 4 〇可包 含指示另一個節點是否於該接收緩衝區中未具有閒置空間 之邏輯(未顯示)。
茲參照第3圖,該圖顯示父易控制單元之一項實施例 之方塊圖。為了簡牝及簡潔’顯示於第2圖中之對應於那 些組件之電路組件將以相同圖式標號做標示。交易控制單 元1 0 0包含三個分别楳示為1 6 0、1 7 0及1 8 0之排程器。每一 個排程器160、17〇及180包 含一對虛擬通道指令緩衝區及 仲裁器與緩衝區處该單元。排程器1 60之虛擬通道指令緩 衝區標示為V C F I F〇 1 6 6及1 6 7並且仲裁器與緩衝區處理 單元標號為1 6 8。同樣地’排程器1 7 〇之虛擬通道指令緩衝 區標示為V. C fIF〇 1 76及177並且仲裁器與緩衝區處理單
588250 五、發明說明(11) 元標號為1 78,以及排程器1 80之虛擬通道指令緩衝區標示 為V. C. FIFO 18 6及18 7並且仲裁器與緩衝區處理單元標號 為 188〇 一般來說,”虛擬通道’’為用於運送封包於各種處理節 點之間之通訊路徑。每個虛擬通道為資源獨立於該其它的 虛擬通道(亦即,藉由實體的傳輸,在其中一個虛擬通道 流通之封包通常並不會受到封包於另一個虛擬通道中之存 在或缺乏而影響)。封包基於封包形式而指定給虛擬通 道。在該相同的虛擬通道中之封包實體上可能與彼此的傳 輸衝突(亦即,在該相同的虛擬通道中之封包可能經歷資 源衝突),但是實體上可能不會與在不同的虛擬通道中的 封包之傳輸衝突。 某些封包於邏輯上可能與其它封包衝突(亦即,對於 通訊協定之原因、相干性之原因或其它此類的原因,其中 一個封包可能於邏輯上與另一個封包衝突)。對於邏輯/通 訊協定之原因,若第一封包必須在第二封包抵達該封包的 目的節點之前抵達本身的目的節點,而若該第二封包實體 上阻滯該第一封包的傳送(藉由佔據衝突資源),則電腦系 統可能停滯。藉由指定該第一及第二封包以分離虛擬通 道,以及藉由在該電腦系統内實現該傳送媒介使得在個別 的虛擬通道中之封包無法阻滯每個其它的傳送,停滯免除 之操作則可以達成。需要注意的是來自不同的虛擬通道之 封包將透過該相同的實體連結而傳送。然而,由於接收緩 衝區於發送之前是可以獲得的,即使當使用此種共用資源
92187.ptd 第16頁 588250 五、發明說明(12) 時,該虛擬通道並未彼此阻滯。 從其中一個觀點,每個不同的封包形式(例如每個不 同的指令編碼)可以指定給屬於本身的虛擬通道並且因此 在一項實施例中,個別的緩衝器分派給每個虛擬通道。由 於個別的緩衝器可以使用於每個虛擬通道,來自其中一個 虛擬通道之封包可能不會與來自另一個虛擬通道之封包形 成實體衝突(由於此類封包將放置於另一個緩衝區中)。 每個排程器對應於特定的目的及對應於兩個來源。在 該說明的實施例中,排程器1 6 0控制具有第2圖之發送器 1 3 0作為目的與接收器1 2 0及周邊介面/橋接器1 5 0作為來源 之交易。同樣地,第3圖之排程器1 7 0控制具有第2圖之發 送器1 4 0作為目的與接收器1 1 0及橋接器1 5 0作為來源之交 易。最後,第3圖之排程器1 8 0控制具有第2圖之橋接器1 5 0 作為目的與接收器1 1 0及接收器1 2 0作為來源之交易。在第 3圖中,每個虛擬通道指令緩衝區接收來自個別的接收器 或對應於由該個別的接收器或橋接器所接收之交易的橋接 器控制指令。控制指令可包含指定該控制指令將會發送至 那一個排程器之目的位元。通常控制指令將僅具有一個目 的位元設定。然而,在交易為廣播訊息之事件中,超過一 個的目的位元將會設定以允許超過一個的排程器以接收該 控制指令。 為了簡化討論,將只詳細說明排程器1 6 0。當控制指 令接收進入V. C. FIFO 16 6或16 7時,該指令視交易之形式 而放置於個別的FIFO區段内。由於V. C. FIFO 16 6及16 7是
92187.ptd 第17頁 588250 五、發明說明(13) =同的,只有V.c· FIF0166將詳細說明。V C FIF0166含 ^ ^個個別的FIF0區段,該區段對應於三個交易形式··宣 該控二^)、非宣告(non—posted)、及回應(response)。 而,為9,依照所接收之順序放置於該個別的F1F0内。然 排或元維持結合可能已經產生該初始的指令之各種匯流 形式之Μ形式之排序規則,該交易可能必須在不同的交易 、之間脫序處理。 及緩衝2 :文結合第4圖至第6圖以更詳細之描述,仲裁器 以在V,处理邏輯1 6 8可以經由配置以仲裁那一個交易可
序而處^ /IF〇166或v.c· FIF0167之間依照第一、第二順 宣告的指i例如、在回應指令之前到達於v·c· ?11?0166之 後處理。二κ由於11亥順序規則而可能必須在該回應指令之 那一個、C夕裁^器及緩衝器處理邏輯168亦可以仲裁 在該下—彻认 丄父易可以基於一組公正性規則及是否 之空間是可出節點或該主橋接器之接收缓衝區内 器1 5〇,則誃^而做處理。若該目的為第2圖之橋接 裁規則。、μ、疋、裁規則可能不同於上文所描述之仲 制單元2::’上文所描述之說明的實施例為交易控
執行額外的=&。經由考量之另一種實施例可包含可 =卜的功能之不同的實現。 圖。^ 了 ^:匕圖及明亥„不排程器之一項實施例之方塊 組件將_:石起見,對應於第3圖中所顯示之電路 將‘不相同的圖式標號。交易排程器4。〇包含連接至
588250 五、發明說明(14) 仲裁及公平性邏輯450之虛擬通道FIFO緩衝區410。交易排 程器4 0 〇包含亦連接至仲裁及公平性邏輯4 5 0之虛擬通道 FIFO緩衝器42 0。仲裁及公平性邏輯45 0連接至FIFO緩衝區 4 6 0,該F I F 0緩衝區連接至緩衝處理邏輯4 7 〇。緩衝處理邏 輯之輸出由輸出暫存器4 8 0所閂鎖。 如同上文結合第3圖之描述,每個虛擬通道ρ I ρ 0緩衝 區4 1 0及4 2 0可接收來自個別的來源輸入之控制指令,該來 源輸入諸如例如第2圖之接收器1 1 〇或橋接器1 5 〇。藉由該 控制指令所表示之交易形式,該控制指令可以放置於虛擬 通道FIFO緩衝區410及42 0内。尤其,該控制指令可表示不 論是宣告、非宣告或回應指令並且因此表示該個別的宣 告、非宣告或回應仵列。 —fUl貫施例中,仲裁及公平性邏輯450包含仲裁 =ί以選擇i :及公平性單儿445。*裁單s 43G可以經由 Ϊ^ ί ί 儲存於虛擬通道FIF0緩衝區410内之 於下文中更進一步說明的是,該選擇程序可 = :仲裁演算法選擇其中-個入選者。同樣 H 裁單元430所使用類似的演算法,仲裁單 7〇 4 4 0可以經由配置 $遥豆中一 、 哉單 緩衝區420内之控制指令二平^儲f於虛擬通道FIF〇 中-個由仲裁單元纖撕千選 單^ 445基於是否該交易為前遞或注。亥,入選父易。公平性 演异法。視該排程器之目的,仲裁單-二可使用公平性 在該對應之交易的目的缓衝區中伴:;430及440亦可含有 1示待追蹤緩衝區空間之邏
92l87.ptd 第19頁 588250 五、發明說明(15) ^- 輯(未顯示),該目的緩衝區諸如該下一個輸入/ 之接收緩衝區或於第i圖之處理器丨〇A之主橋接器中。 在說明的實例中,可能具有三個時脈周期: 以透過排程器40 0傳送控制指令。旁路415及旁路42 5顯示 以分別繞過虛擬通道FIF0緩衝區41〇及42〇。當排程器4〇〇 接收來自來源之控制指令並且在給定的虛擬通道f丨f〇緩衝 内之每個佇列為空的時,則可能有機會藉由繞過該虛擬通 道F I F 0緩衝區以節省時脈周期。例如,非宣告控制指令在 虛擬通道F I FO緩衝區4 1 0處所接收,該緩衝區目前為空 的。若仲裁單元4 3 0顯示在該交易的目的緩衝區具有可獲 得的緩衝空間,則在仲裁單元43 0内之邏輯可允^該非宣 告控制指令以繞過虛擬通道F I FO緩衝區4丨〇並且即時放置 於F I F 0緩衝區4 6 0内。此外’公平性單元4 4 5視如同上所描 述之公平性演算法而定,可允該繞道。因此在該上文的例 子中,其中一個時脈周期之減少等待時間將可以實現。需 要注意的是雖然該說明的實施例顯示具有三個時脈周期的 等待時間,所考量的是其它實施例可具有較少的或較多的 時脈周期等待時間。此外,由旁路4 1 5及4 2 5所實現之該實 際的等待時間減少可能是更多或更少。 第4圖之FIFO缓衝區46 0可接收該入選的控制指令。在 該說明的實施例中,F I F 0緩衝區4 6 0為雙延伸(two-deep) 緩衝區,然而,所考量的是在其它實施例中,F I F0緩衝區 4 6 0可以具有更多或更少的緩衝區位置。 緩衝區處理邏輯4 7 0經由配置以保持在第2圖之發送器
92187.ptd 第20頁 588250 五、發明說明(16) 13 0或14 0或者在橋接器150中之緩衝區空間的追蹤。當交 易儲存於F I F 0緩衝區4 6 0中時,緩衝處理邏輯4 7 0檢查該下 一個緩衝區之可取得性並且也將保留該控制指令直到緩衝 區空間可以獲得或允許該控制指令進行至輸出暫存器 4 8 0。一旦該控制指令已經由輸出暫存器4 8 0閂鎖,該個別 的交易來源受到通知,對應於該控制指令之交易可以分別 發送到第2圖之發送器1 3 0或1 4 0或者發送至橋接器1 5 〇。 茲參照第5圖,該圖顯示包含標記邏輯排程器之一項 實施例之方塊圖。排程器5 0 0包含連接至虛擬通道F I F 0緩 衝區5 0 5之標記邏輯510。虛擬通道FIFO緩衝區5 0 5包含對 應於該三種形式的交易之三個個別的佇列,該三種形式的 父易為:宣告、非宣告及回應。標記比較/仲裁邏輯單元 5 2 〇連接至虛擬通道F I F 0緩衝區5 0 5。此外,該圖亦顯示虛 擬通道F I F 0緩衝區5 0 5之分解圖。該分解圖顯示每個該非 |告及回應佇列具有對應的標記。然而,該宣告佇列具有 兩個標記:每一個分別對應於該非宣告及回應仔列。 標記邏輯5 1 0在控制指令儲存於虛擬通道F I F 0缓衝區 5 0 5之前,可指定標記給每個控制指令。控制指令玎以以 來自諸如第2圖之接收器π 〇或橋接器1 5 0之來源單元所接 收之順序而指定標記。該標記可以附加於該控制指令。 當控制指令到達在虛擬通道F I F 0緩衝區5 0 5内之上方 位置時,標記比較/仲裁邏輯單元5 2 〇可以經由配置以在該 —個虛擬通道之間做仲裁以選取入選的控制指令。入選者 使用基於一組順序規則之演算法來挑選,該順序規則可符
^2187.ptd 第21頁 588250 五、發明說明(17) 合由連接至該 規則。 則。在 則。 在 以上達 需要注 可含有 位元。 器邏輯 非宣告 中一個 控制指 收到宣 告或回 特殊的 應控制 指令, 例中, 為 入該三 第一攔 令所接 令之標 在一項 另一個 說明的 1 6個位 意的是 其它數 標記邏 保持已 及回應 可阻滯 令之前 告控制 應、計數 位元設 指令在 則非宣 該特殊 了說明 個宣告 顯示該 收之形 記,並 ΐ :二出節點之周邊匯流排所維持的順序 二:例中該順序規則可符合 J序 中忒順序規則可符合AGP序順序規 例中,由於虛擬通道FIFO緩衝區5〇5 故該標記可以是四個位元。然而, 其它實施例中,虛擬通道F I F0緩衝區5 μ 饥置並且因此該標記可含有對應數目的 妙:1 0可包含計數器邏輯(未顯示),該計數 紅儲存於虛擬通道FIFO緩衝區5 0 5之用於該 控制指令之該目前的標記之追蹤。若至少其 的非宣告或回應控制指令是於該目前的宣告 並在上一個宣告控制指令之後接收,則當接 才曰令時,該標記可以依據增加該個別的非宣 器之演算法而指定。如同在此所使用的,若 疋於該相對的控制指令而確認該非宣告或回 虛擬通道F I F0缓衝區5 0 5内將通過宣告控制 告或回應控制指令為可阻滯的。在一項實施 的位元稱為PassPW位元。 標記演算法之使用,第1表說明控制指令進 、非宣告及回應佇列之接收順序及標記。該 九個控制指令之接收順序。該第二欄顯示指 式。該第三欄顯示指定給該非宣告及回應指 且該第四及第五指令顯示在該等計數器值由
第22頁 588250 五、發明說明(18) 宣告控制指令所遞增之後之該非宣告及回應指令計數器數 值。由於該宣告控制指令接收兩個標記,對於該個別的非 宣告及回應計數器,該宣告控制指令接收顯示於該目前的 計數器數值内之標記兩者。虛擬通道F I F0缓衝器5 0 5之分 解圖說明第1表之該指令如何儲存。 第1表 接收順序 控制指令 Pass PW 位元 標記值 非宣告計數器 回應計數器 _1 宣告1 0 0 0 _2 回應1 0 0 0 0 — 3 宣告2 0 0 1 〜 _4 非宣告1 0 0 0 1 〜 5 回應2 0 1 0 1 〜 6 非宣告2 0 0 0 1 〜 7 宣告3 0 1 2 — 8 回應3 0 2 1 2 〜 9 非宣告3 0 1 1 1 2 〜 第2表說明PassPW位元如何可影響顯示於第1表中之該 接收的控制指令之標記。若該PassPW位元設定為非宣告或 回應控制指令,則下一個宣告控制指令將不會增加該相對 的計數器。例如,在第2表中,該PassPW位元設定為回應 1 ’因此當接收到宣告2控制指令時,該回應計數器並未遞 增。然而,該PassPW位元設定為非宣告2,並且該宣告3控 制指令造成該非宣告及回應計數器兩者遞增。這是因為該 非宣告1控制指令在該上一個宣告控制指令之後及在該目 前的宣告控制指令之前接收到具有該PassPW位元清除,因
588250 五、發明說明(19) 此滿足用於遞增該計數器之標記規則。需要注意的是雖然 該PassPW位元描述設定為顯示非宣告或回應控制指令可傳 遞宣告控制指令,需考量的是在其它實施例中該邏輯可以 反置。 第2表 接收順序 控制指令 Pass PW 位元 標記值 非宣告計數器 回應計數器 1 宣告1 0 0 0 2 回應1 1 0 0 0 3 宣告2 0 0 0 4 非宣告1 0 0 0 0 5 回應2 0 0 0 0 6 非宣告2 1 0 0 0 7 宣告3 0 1 1 8 回應3 0 1 1 1 9 非宣告3 0 1 1 1 回頭參考第5圖,在仲裁期間,標記比較及仲裁邏輯 單元5 2 0經由配置而藉由比較附屬於每個控制指令之標記 以選取來自虛擬通道FIF 0緩衝區5 0 5之入選控制指令。此 外,在該標記比較之前,標記比較及仲裁邏輯單元5 2 0可 確認是否在下一個輸入/輸出節點處對於每個該虛擬通道 具有可獲得的緩衝區空間。若任何虛擬的通道為阻滯的, 則該通道對於該周期並未參與該仲裁。若所有三個通道對 於仲裁為開啟時,則該仲裁在該非宣告及回應通道之間以 循環(r 〇 u n d r 〇 b i η )方式發生並且該宣告通道將個別與該 非宣告及回應通道做比較。最後,標記比較及仲裁邏輯單
92187.ptd 第24頁 588250 五、發明說明(20) 元5 2 0可使用公平性演算法來決定入選者。該公平性演算 法結合第6圖之描述將於下文中做更詳細的描述。 茲參考第6圖,該圖顯示包含匱乏避免邏輯之交易排 程器之一項實施例之方塊圖。交易排程器6 0 0包含連接至 仲裁電路6 5 0之虛擬通道F I FO缓衝區6 1 0。交易排程器6 0 0 更包含亦連接至仲裁電路6 5 0之虛擬通道F IFO緩衝區6 2 0。 仲裁電路6 5 0連接至FIFO緩衝區67〇,該FIFO緩衝區連接至 緩衝處理邏輯680。緩衝處理邏輯之輸出由輸出暫存器690 所閂鎖。 類似於上文之第3圖及第4圖之說明,每個虛擬通道 F I F0緩衝區6 1 0及6 2 0可接收來自個別的來源輸入之控制指 令,諸如例如第2圖之接收器1 1 0或橋接器1 5〇。該控制指 令依據該控制指令所表示之交易之形式可以儲存於虛擬通 道F I F 0緩衝區6 1 0及6 2 0内。例如,該控制指令可表示办 告、非宣告或回應指令並且因此可以儲存於該個別的^ 告、非宣告或回應仔列内。 一 在說明的實施例中,仲裁電路650包含仲裁 640,以及公平性電路645。在仲裁周期期間, 630及640可以經由配置以選擇分別儲存在虛 = 衝區610及6 2 0内之控制指令。此外,公平 t=FIF0、、友 供可決定那一個仲裁單元630或640將選擇該入選2將提^ 選擇條件。如同結合第7圖之說明而將於 又易之 :述’公平性電路645可使用☆平性演算法 ::二 先權以分配頻t。該公平性演算法將視置乏避免邏仲輯裁而、定 588250 五、發明說明(21) 以決^何時任何交易已經阻滞持續預定數目的 鉍參照第7圖,該圖顯示第6圖之公平性電路二項與 施例之方塊圖。公平性電路645包含含有連接至:^二 器70 5之三十二個三位元計數器〇至31之公平性 。十 問鎖710連接計數器70 5。插入速率邏輯715連接至。 y〇。公平性電路645亦包含連接至匱乏門限暫存器76〇之 二個虛擬通道計數器75 5至75 7的匱乏單元75〇及連 平性單元70 0及匱乏單元75 0之交易選擇單元?75。 “ 在一項實施例中,每個交易透過該通道向前傳遞的時 刻丄發送該交易之對應於該輸入/輸出節點之該三位元計 數器0至3 1可以遞增。此外,計數器7 〇 5在每個任何的該三 位元計數器0至3 1遞增的時刻將會增加。當其中一個該一 位元計數器0至31溢位時,在計數器7〇5中之該數值可以由 ,鎖710所擷取。該擷取的值可表示於時間内在該特定點 =該下行節點交易請求速率。插入速率邏輯715接著使用 邊擷取的值可計算對於該節點之允許的插入速率。 交易選擇單元7 75在第6圖之仲裁單元63〇或64〇内可造 念”票:指向f仲裁循環期間所考量的虛擬通道緩衝區。 二二有父易於前遞的虛擬通道緩衝區之虛擬通道中並且具 :易於插入緩衝區之相同的虛擬通道中可能需要時間? 2第7圖中,交易選擇單元775依據由公平性單元7〇〇所建 另外選擇該兩個虛擬通道緩衝區'然而在 =m t ι在父易的目的處由於缺乏可獲的緩衝區空間之此 類因素而變成阻滞之事件中,仲裁邏輯可略過該阻滞通道
92187.ptd
第26頁
588250 五、發明說明(22) ' ~~' 並且當仲裁繼續時、# — 變成可獲得時,、可ΐ : f+:—個虛擬通道。當該阻滯通道 並且由於該通道於該前遞通道具有可獲得的空間 之優先權,來自演算法而具有高於該插入通道 .個該先前阻滞;道之交易將可以發送。接著當下 裁周期中可能再獲得β夺’該通道在該目前的仲 種情況可能持續並且因先權並且因此可再次略過。此 道。視特定的節缺乏(starve)n該插入虛擬通 中,該前遞通道亦所考量的是在其它實施例 缺乏。 了此糟由注入通道以類似的事件而變成 為了避免給定诵洁 為阻滞之次數的數乏二匿乏單元750可保持交易 那一個交易有資格仲=;;,氣母=交易選擇單元775決定 成該對應的虛擬通道計數^ 7,颅,交易選擇皁元775造 存器760保持對應於通道在1至757將遞增。匱乏臨界暫 大數目之值。儲存於置乏臨界裁^間。可能略過之次數的最 視該計算的請求速率而可叙〜子态7 6 0之值在任何時刻 計數器75 5至75 7符合在匱乏===變。當任何該虛擬通道 應的虛擬通道之優先權將可以改二存器中之數值時,該對 可以造成該a滯的μ在後=便交^選擇單元775 因此,藉由動態改變該優先‘的:裁周期期間受到選擇。 免。需要注意的是所描述之^的通道之置乏可以避 的實現。所考量的是另外的於=處理僅為其中一個特定 計數器及在那些計數器中之較^可以使用包含不同數目 夕或較少的位元之另一個邏
92187.ptd 弟27頁 588250 五、發明說明(23) 輯處理以達到上文所描述的功能。 對於熟習此項技藝之人士一旦完全瞭解上文之揭露 後,各種改變及修正將變得顯而易見。下列之申請專利範 圍應解釋為意在含括所有此類的改變及修正。
92187.ptd 第28頁 588250 圖式簡單說明 [圖式簡單說明] 第1圖為電腦系統之一項實施例之方塊圖。 第2圖為輸入/輸出節點之一項實施例之方塊圖。 第3圖為交易控制單元之一項實施例之方塊圖。 第4圖為排程器之一項實施例之方塊圖。 第5圖為包含標記邏輯之排程器之一項實施例之方塊 圖。 第6圖為包含匱乏避免邏輯之交易排程器之一項實施 例之方塊圖。 第7圖為公平性電路之一項實施例之方塊圖。 雖然本發明容許於各種的修正及替代形式,但本發明 之特定的實施例藉由在圖式中之例子而呈現並且將於此詳 細描述。然而,應該要瞭解的是對於該例子之圖式及詳細 描述並非意在限定本發明於所揭露之該特定的形式,而相 反地,本發明是在於含括落在由附加的申請專利範圍所定 義之本發明之精神及範疇内的所有修正、等同及替代。 1 0 A至1 0 D 處理器 15 相干封包匯流排 20、30、40 輸入/輸出節點 25A至25B、45、50A至50C、152 周邊匯流排 35 繪圖匯流排 1 0 0資訊交易控制單元 1 0 1控制指令匯流排 1 1 0接收器 1 1 1、1 1 2、1 2 1、1 2 2、1 5 1 指令匯流排
92187.ptd 第29頁 588250 圖式簡單說明 1 2 〇交易接收器 1 3 0、1 4 0發送器 150周邊介面 160、170、180排程器
1 66、1 67、176、177、186、187 V. c. FIFO 1 6 8仲裁器及緩衝區處理邏輯 178' 188仲裁器與緩衝區處理單元 4 0 0、6 0 0交易排程器 410、420、505、610、620 虛擬通道 FIFO緩衝區 415、 425 旁路 430' 440、 630、 640 仲裁單元
4 4 5、7 0 0公平性單元 4 5 0仲裁及公平性邏輯 4 6 0、6 7 0 FIFO緩衝區 4 7 0、6 8 0緩衝處理邏輯 4 8 0、6 9 0輸出暫存器 5 1 0標記邏輯 5 2 0標記比較/仲裁邏輯單元 6 5 0仲裁電路 71 〇閂鎖 750匱乏單元 760匱乏門限暫存器 6 4 5公平性電路 7 0 5計數器 715插入速率邏輯 7 5 5至7 5 7 虛擬通道計數器 7 7 5交易選擇單元

Claims (1)

  1. 588250 ^ . ..., _案號91122965 ^年翁月丨日 修正_ 六、申請專利範圍 1 . 一種用於電腦系統之輸入/輸出節點,包括: 經由配置以接收在第一通訊路徑上之第一指令的 第一接收器單元; 經由連接以發送第一對應的指令之第一發送器單 元,該指令對應於在第二通訊路徑上之該第一指令; 經由配置以接收在第三通訊路徑上之第二指令的 第二接收器單元; 經由連接以發送第二對應的指令之第二發送器單 元,該指令對應於在第四通訊路徑上之該第二指令; 以及 經由連接以接收來自該第一接收器與該第二接收 器之選擇的指令及經由配置以發送對應於該選擇的指 令之指令於周邊匯流排上的橋接器單元。 2. 如申請專利範圍第1項之輸入/輸出節點,更包括經由 連接以控制來自該第一通訊路徑至該第二通訊路徑及 至該周邊匯流排,以及來自該第三通訊路徑至該第四 通訊路徑及至該周邊匯流排之指令之傳送的控制單 元。 3. 如申請專利範圍第2項之輸入/輸出節點,其中該控制 單元更經由配置以控制來自該周邊匯流排至該第二通 訊路徑及該第四通訊路徑之指令之傳送。 4. 如申請專利範圍第3項之輸入/輸出節點,其中該橋接 器單元更經由配置以選擇性地提供對應於來自該周邊 匯流排至該第一發送器及該第二發送器所接收之指令
    92187.ptc 第31頁 588250 _案號 91122965 年 Ur 月 ί 日_^L·_ 六、申請專利範圍 的指令。 5. 如申請專利範圍第4項之輸入/輸出節點,其中該控制 單元更經由配置而基於來自該第一接收器、該第二接 收器及該撟接器單元所接收之複數個控制指令以選擇 性地控制該指令之傳送。 6. 如申請專利範圍第5項之輸入/輸出節點,其中每一個 該控制指令含有由該第一與第二接收器及該撟接器單 元所接收之子集合之對應的指令。 7. 如申請專利範圍第6項之輸入/輸出節點,其中該控制 單元更經由配置以透過控制指令匯流排接收該控制指 〇 8. 如申請專利範圍第1項之輸入/輸出節點,其中該周邊 匯流排為周邊組件互連接(PC I )匯流排。 9. 如申請專利範圍第1項之輸入/輸出節點,其中該周邊 匯流排為繪圖匯流排。 1 0 .如申請專利範圍第1項之輸入/輸出節點,其中該第一 與第三通訊路徑及該第二與第四通訊路徑為 HyperTransportτ連結 ° 1 1. 一種電腦系統,包括: 一個或一個以上之處理器; 連接在一起並且連接至該一個或一個以上之處理 器的一個或一個以上之輸入/輸出節點,每個該輸入/ 輸出節點包含: 經由配置以接收在第一通訊路徑上之第一指令的
    92187.ptc 第32頁 588250 _案號91122965 、年汴月1曰 修正_ 六、申請專利範圍 第一接收器單元; 經由連接以發送第一對應的指令之第一發送器單 元,該指令對應於在第二通訊路徑上之該第一指令; 經由配置以接收在第三通訊路徑上之第二指令的 第二接收器單元; 經由連接以發送第二對應的指令之第二發送器單 元,該指令對應於在第四通訊路徑上之該第二指令; 以及 經由連接以接收來自該第一接收器與該第二接收 器之選擇的指令及經由配置以發送對應於該選擇的指 令之指令於周邊匯流排上的橋接器單元。 1 2 .如申請專利範圍第1 1項之電腦系統,其中該輸入/輸出 節點更包括經由連接以控制來自該第一通訊路徑至該 第二通訊路徑及至該周邊匯流排,以及來自該第三通 訊路徑至該第四通訊路徑及至該周邊匯流排之指令之 傳送的控制單元。 1 3 .如申請專利範圍第1 2項之電腦系統,其中該控制單元 更經由配置以控制來自該周邊匯流排至該第二通訊路 徑及該第四通訊路徑之指令之傳送。 1 4 .如申請專利範圍第1 3項之電腦系統,其中該橋接器單 元更經由配置以選擇性地提供對應於來自該周邊匯流 排至該第一發送器及該第二發送器所接收之指令的指 令0 1 5 .如申請專利範圍第1 4項之電腦系統,其中該控制單元
    92187.ptc 第33頁 588250 _案號91122965 @年4月丨曰 修正_ 六、申請專利範圍 更經由配置而基於來自該第一接收器、該第二接收器 及該撟接器單元所接收之複數個控制指令以選擇性地 控制該指令之傳送。 1 6 .如申請專利範圍第1 5項之電腦系統,其中每一個該控 制指令含有由該第一與第二接收器及該撟接器單元所 接收之子集合之對應的指令。 1 7 .如申請專利範圍第1 6項之電腦系統,其中該控制單元 更經由配置以透過控制指令匯流排接收該控制指令。 1 8 .如申請專利範圍第1 1項之電腦系統,其中該周邊匯流 排為周邊組件互連接(PC I )匯流排。 1 9 .如申請專利範圍第1 1項之電腦系統,其中該周邊匯流 排為繪圖匯流排。 2 0 .如申請專利範圍第1 1項之電腦系統,其中該第一與第 三通訊路徑及該第二與第四通訊路徑為 Hy per Tran sport M °
    92187.ptc 第34頁
TW091122965A 2001-10-15 2002-10-04 Computer system I/O node TW588250B (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US09/978,349 US6807599B2 (en) 2001-10-15 2001-10-15 Computer system I/O node for connection serially in a chain to a host

Publications (1)

Publication Number Publication Date
TW588250B true TW588250B (en) 2004-05-21

Family

ID=25526005

Family Applications (1)

Application Number Title Priority Date Filing Date
TW091122965A TW588250B (en) 2001-10-15 2002-10-04 Computer system I/O node

Country Status (8)

Country Link
US (1) US6807599B2 (zh)
EP (1) EP1444587B1 (zh)
JP (1) JP4391819B2 (zh)
KR (1) KR100968250B1 (zh)
CN (1) CN1307568C (zh)
DE (1) DE60226167T2 (zh)
TW (1) TW588250B (zh)
WO (1) WO2003034239A1 (zh)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6834319B1 (en) * 2002-03-21 2004-12-21 Advanced Micro Devices, Inc. Tunnel device for an input/output node of a computer system
US7315912B2 (en) * 2004-04-01 2008-01-01 Nvidia Corporation Deadlock avoidance in a bus fabric
US7430622B1 (en) * 2005-01-18 2008-09-30 Advanced Micro Devices, Inc. Extended fairness arbitration for chains of point-to -point devices having multiple virtual channels
US8223650B2 (en) * 2008-04-02 2012-07-17 Intel Corporation Express virtual channels in a packet switched on-chip interconnection network
US8392667B2 (en) * 2008-12-12 2013-03-05 Nvidia Corporation Deadlock avoidance by marking CPU traffic as special
US8225052B2 (en) * 2009-06-03 2012-07-17 Micron Technology, Inc. Methods for controlling host memory access with memory devices and systems
US8495271B2 (en) * 2010-08-04 2013-07-23 International Business Machines Corporation Injection of I/O messages
US20120036302A1 (en) 2010-08-04 2012-02-09 International Business Machines Corporation Determination of one or more partitionable endpoints affected by an i/o message
US8549202B2 (en) 2010-08-04 2013-10-01 International Business Machines Corporation Interrupt source controller with scalable state structures
US9336029B2 (en) 2010-08-04 2016-05-10 International Business Machines Corporation Determination via an indexed structure of one or more partitionable endpoints affected by an I/O message
US9824058B2 (en) * 2014-11-14 2017-11-21 Cavium, Inc. Bypass FIFO for multiple virtual channels
US11734155B2 (en) * 2021-07-22 2023-08-22 Disney Enterprises, Inc. Fully traceable and intermediately deterministic rule configuration and assessment framework

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5751951A (en) 1995-10-30 1998-05-12 Mitsubishi Electric Information Technology Center America, Inc. Network interface
US5809328A (en) 1995-12-21 1998-09-15 Unisys Corp. Apparatus for fibre channel transmission having interface logic, buffer memory, multiplexor/control device, fibre channel controller, gigabit link module, microprocessor, and bus control device
US6278532B1 (en) 1996-12-20 2001-08-21 Link2It Apparatus and method for reception and transmission of information using different protocols
JP2970596B2 (ja) 1997-06-10 1999-11-02 日本電気株式会社 Atm通信装置
JPH1185345A (ja) 1997-09-02 1999-03-30 Toshiba Corp 入出力インターフェース回路及び半導体システム
US6005849A (en) * 1997-09-24 1999-12-21 Emulex Corporation Full-duplex communication processor which can be used for fibre channel frames
JPH11143847A (ja) * 1997-11-10 1999-05-28 Fujitsu Ltd データ処理装置
US6691185B2 (en) * 2001-07-13 2004-02-10 Sun Microsystems, Inc. Apparatus for merging a plurality of data streams into a single data stream
US6697890B1 (en) * 2001-12-27 2004-02-24 Advanced Micro Devices, Inc. I/O node for a computer system including an integrated I/O interface

Also Published As

Publication number Publication date
KR100968250B1 (ko) 2010-07-06
EP1444587A1 (en) 2004-08-11
JP4391819B2 (ja) 2009-12-24
CN1307568C (zh) 2007-03-28
CN1568462A (zh) 2005-01-19
JP2005505855A (ja) 2005-02-24
KR20040054722A (ko) 2004-06-25
US20030097514A1 (en) 2003-05-22
EP1444587B1 (en) 2008-04-16
WO2003034239A1 (en) 2003-04-24
DE60226167D1 (en) 2008-05-29
US6807599B2 (en) 2004-10-19
DE60226167T2 (de) 2009-05-14

Similar Documents

Publication Publication Date Title
US8718065B2 (en) Transmission using multiple physical interface
US8085801B2 (en) Resource arbitration
US9703732B2 (en) Interface apparatus and memory bus system
TW588250B (en) Computer system I/O node
US6760791B1 (en) Buffer circuit for a peripheral interface circuit in an I/O node of a computer system
JP4255833B2 (ja) コンピュータ・システムの入出力ノードにおけるタグ付けおよび調停メカニズム
US9665514B2 (en) Integrated circuit having a bus network, and method for the integrated circuit
US6681274B2 (en) Virtual channel buffer bypass for an I/O node of a computer system
US7672303B1 (en) Arbitration method and system
US6757755B2 (en) Peripheral interface circuit for handling graphics responses in an I/O node of a computer system
EP0875827A2 (en) Source and destination initiated interrupt system for message arrival notification
US6839784B1 (en) Control unit of an I/O node for a computer system including a plurality of scheduler units each including a plurality of buffers each corresponding to a respective virtual channel
US6820151B2 (en) Starvation avoidance mechanism for an I/O node of a computer system
EP2588965B1 (en) Method, apparatus and system for maintaining transaction coherecy in a multiple data bus platform
US6098105A (en) Source and destination initiated interrupt method for message arrival notification
US6675246B1 (en) Sharing arbiter
JP4391820B2 (ja) コンピュータシステムのi/oノードのための周辺インターフェイス回路
US10419367B2 (en) Queue buffer de-queuing
US6098104A (en) Source and destination initiated interrupts for message arrival notification, and related data structures

Legal Events

Date Code Title Description
MK4A Expiration of patent term of an invention patent