TW472193B - Method and apparatus for transferring data over a processor interface bus - Google Patents

Method and apparatus for transferring data over a processor interface bus Download PDF

Info

Publication number
TW472193B
TW472193B TW088111377A TW88111377A TW472193B TW 472193 B TW472193 B TW 472193B TW 088111377 A TW088111377 A TW 088111377A TW 88111377 A TW88111377 A TW 88111377A TW 472193 B TW472193 B TW 472193B
Authority
TW
Taiwan
Prior art keywords
processor interface
interface bus
data
bus
memory
Prior art date
Application number
TW088111377A
Other languages
English (en)
Inventor
David William Todd
Michael Dean Snyder
Brian Keith Reynolds
Michael Julio Garcia
Original Assignee
Motorola 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 Motorola Inc filed Critical Motorola Inc
Application granted granted Critical
Publication of TW472193B publication Critical patent/TW472193B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0806Multiuser, multiprocessor or multiprocessing cache systems
    • G06F12/0815Cache consistency protocols
    • G06F12/0831Cache consistency protocols using a bus scheme, e.g. with bus monitoring or watching means
    • G06F12/0833Cache consistency protocols using a bus scheme, e.g. with bus monitoring or watching means in combination with broadcast means (e.g. for invalidation or updating)
    • 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/38Information transfer, e.g. on bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication
    • G06F15/17Interprocessor communication using an input/output type connection, e.g. channel, I/O port

Description

472193 五、發明說明(1) - 先前申請之依據 本專利申請已在美國提出,該項美國專利申請係於一九 九八年七月六曰被受理,專利申請案號為〇 9/ 1 1 0 . 3 5 1。 發明之領域 本發明概言之係與傳送資料有關,更明確言之,係與藉 由一處理器介面匯流排傳送資料之操作有關。 發明背景 目如’各種不同的匿流排協定通常都是用以處理局部匯 流排從屬裝置中所含有但並非位於主記憶體内之可高速緩 衝處理資料或不可高速緩衝處理資料之資料傳送。通常都 是使用-一分離的匯流排協定將位於主記憶體内之可高速緩 衝處理資料直接自一高速緩衝記憶體傳送(移轉)至另一高 速緩衝處理記憶體。因為每一不同之匯流排協定各有一組 不同之控制梢,在一系統中使用較多的協定,也就需要較 多的控制梢,從而必會增加製造成本與裝置複雜性。因 此,乃需要開發一種更有效且成本較低廉之匯流排協定以 支援與一局部匯流排從屬裝置有關之高速緩衝記憶體至另 一高速缓衝記憶體之間的操作功能移轉以及資料移轉。 附圖簡要說明 圖1所示係依本發明一個具體實例所採用之資料處理系 統之方塊圖。 圖2所示係說明圖1中匯流排之概略圖。 圖3所示係圖1中f料處理系統内處理器介面匯流排之各 匯流階段功能說明簡圖。
第5頁 472193 五、發明說明(2) - 圖4所示係說明在圖3所示匯流階段1 0 6,1 0 8及1 1 0内執 行一特定操作方法之流程圖。 圖5所示係說明圖3中各匯流階段1 0 4,1 0 6,1 0 8及1 1 0 内,匯流排與一從屬裝置之間的通訊方法流程圖。 圖6所示係說明圖5中資料傳送步驟流程圖。 圖7所示係說明根據本發明設計之一種具體實例中資料 播送方法之流程圖.。 發明之詳細說明 概言之,本發明係與一種用以在一處理器介面匯流排上 傳送資料的方法與裝置有關。在一種具體實例中,本方法 係用以在一從屬裝置與一處理器介面匯流排之間通訊期間 傳送資料,該處理器介面匯流排也與一主要裝置相互通 訊。本方法之各項作業步驟包括從該處理器介面匯流排上 接收原由該主要裝置提供的位置資料,並將一第一信號施 加在該處理器介面匯流排上以顯示該從屬裝置正在進行相 關資料傳送操作,同時將一第二信號施加在該處理器介面 匯流排上以顯示利用該處理器介面匯流排傳送的資料是否 將由一個與該處理器介面匯流排通訊之主記憶體控制器而 儲存在該主記憶體内。然後即將該資料於該從屬裝置和該 處理器介面匯流排之間傳送。 在另一具體實例中,本方法係用以在一從屬裝置與一處 理器介面匯流排之間通訊期間傳送資料,該處理器介面匯 流排也與一主裝置祖互通訊。本方法之各項作業步驟包 • · 括:從該處理器介面匯流排上接收原由該主裝置提供之一
472103 五、發明說明(3) - 個位置資料,並將一第一信號施加在該處理器介面匯流排 上以顯示該從屬裝置正在執行相關資料傳送操作,同時將 一第二信號施加至該處理器介面匯流排上以顯示利用處理 器介面匯流排傳送之資料是否將由一個與該處理器介面匯 流排通訊之主記憶體控制器儲存在該主記憶體内。另外, 也有一第三信號被施加至該處理器介面匯流排上以顯示該 從屬裝置以備妥可立即執行該項資料傳送操作。然後即將 該資料於該從屬裝置和處理器介面匯流排之間傳送。 在另一具體實例中,本方法係用以將資料從一外接資料 源傳送至一個與若干裝置進行通訊之處理器介面匯流排 上。本方法包括在一個與該處理器介面匯流器配合操作之 控制器上接收由一外接資料源提供之資料和相關之記憶體 位置。當確定該相關記憶體位置是否在該多個裝置有關之 記憶體容量範圍之内以後,就在該處理器介面匯流排上開 始進行一項寫入操作,同時並檢察該處理器介面匯流排有 否收到來自該等多個裝置之多個回應信號。該處理器介面 匯流排上如收到來自該多個裝置中任一子集裝置之資料準 備信號時,該處理器介面匯流排即受到控制,並取得可向 該多個裝置之該子集裝置存取資料之許可。然後,從該外 接資料源處收到之資料乃被傳送至該處理器介面匯流排。 在本發明的一個具體實例中,該裝置係一資料處理系 統,包括一處理器免面匯流排,一個響應於該處理器介面 * · 匯流排之記憶體控制器,一個響應於該記憶體控制器之記
第7頁 472193 五、發明說明(4) — 憶體裝置,一個執行一主要裝置操作且響應於該處理器介 面匯流排之第一裝置,以及一第二裝置。該第二裝置響應 於該處理器介面匯流排,其功能係一從屬裝置,可將一第 一信號施加至該處理器介面匯流排上以顯示該從屬裝置正 在執行一資料傳送操作。第二裝置同時也將一第二信號施 加在該處理器介面匯流排上以顯示是否應由該主記憶體控 制器將該項由處理器介面匯流排傳送的資料儲存在該記 憶體裝置内。 在另一具體實例中,本發明裝置係一資料處理系統,包 括一處理器介面匯流排,一個響應於該處理器介面匯流排 之記憶體控制器,一個響應於該記憶體控制器之主記憶 體,一個響應於該處理器介面匯流排,執行主要裝置操作 並具有一第一高速缓衝記憶體之第一裝置。該資料處理系 統亦包括一第二裝置,響應於該處理器介面匯流排,執行 一從屬裝置操作,並具有一第二高速緩衝記憶體。處理器 介面匯流排係依照一匯流排協定之指令而操作,該匯流排 協定處理之第一種操作包括在該第一裝置之第一高速緩衝 記憶體和該第二裝置之第二高速緩衝記憶體之間傳送資 料;以及一第二種操作,包括在第一和第二裝置二者之一 和一耦接至該處理器介面匯流排之局部從屬裝置之間傳送 資料。 圖1所示之資料處理系統1 0包含一第一微處理器1 2,一 第二微處理器1 4,附加声處理器1 6 (如需要時),一個第三 級高速緩衝記憶體1 8,其他從屬裝置2 0,主從屬裝置2 2,
472193 五、發明說明(5) ' — 和晶片組32,均耦接至該處理器介面匯流排34。第.一微處 理器1耦接至一第一個二級高速緩衝記憶體以,而第二微 處if !§' 1 4係耦接至一第二個二級高速緩衝記憶體26。微處 理器1 6係輕接至二級高速緩衝記憶體2 8。記憶體3 〇耦接至 主從屬裝置22。主記憶體36耦接至晶片組32。晶片組32包 括之位址控制器4 4 ’資料控制器4 6,和主記憶體3 6之記憶 體控制器(圖中未繪出)。晶片組3 2亦包括一匯流排處理單 元48。晶片組32亦藉由匯流排38而耦接至輸入/輸出裝置 4 0和其他匯流排各模組4 2。在一種具體實例中,匯流排3 8 疋一個輪入/輸出匯流排。其他具體實例中’該位址,資 料與記憶體各控制器可能與晶片組32分離設置,或亦可能 將各該記憶體可能與晶片組3 2分離設置,或亦可能將各該 控制器整合在一個單一控制器内。晶片組3 2的功能與現在 常用之桌上型個人電腦系統中所用的晶片組功能相似。因 此’忒晶片組的特定功能和設計須視其裝用之系統用途而 定。圖1所示資料系統1 〇的操作原理將在討論附圖2-7時 —併說明。 圖2所示乃係圖1中匯流排3 4之一個特別具體實例。在該 範例中,匯流排3 4包含兩個部份。一部份為位址匯流排5 0 及其相關之控制器與歸屬處理位元位置,另,部份為一資 料匯流排6 0與其相關控制各位元組。在此一具體實例中, 5玄^址匯流排和該資料匯流排彼此並未耦接,但在一其他 ^體實例中,該位社及声料匯流部份可耦接在一個單一匯 流排結構内。其他具體實例亦可將匯流排分割成許多不同
第9頁 472193 五 發明說明(6) 的α卩份,其中之k制位元和控制位元及歸屬處理位元之間 亦可各有其刀離,匯流排,或鏈接在一起。匯流排之大小 則視該資料處理糸統1 〇所需要的位址位元,資料位元,及 控制與歸屬處理位兀之數目而定,故而因系統之不同而各 異’並可依糸統之用途而設計之。處理器匯流排3 4之功能 與通常一般桌上型電腦系統所使用之匯流排功能相似。對 本技術領域有一般.認識者當知,匯流排之設計係因資料處 理糸統之不同要求條件而各異。例如,為執行所需要的匯 流排協定,資料處理器匯流排可能需要不同的控制信號。 圖3所示係圖1中資料處理器系統丨〇内所發生之一種高階 層處理操作流程圖1 〇。該項操作流程包括各不同匯流階段 1 〇 2,1 〇 4,1 〇 6,1 〇 8及1 1 〇在相關時間内發生的流程。在 位址仲 48來決 中應該 該仲裁 jfTSO V〇 — 獨早7G 權的裝 位元於 上。在 3 4耦接 或檢察 反應。 裝置, 裁階段1 0 2期間’由位於晶片組3 2之仲裁處理單元 定那些需要使用位置匯流排5 0令那一個裝置在操作 接受該位址匯流排之使用權。在其他具體實例中, 處理單元4 8也可能是一値裝置在晶片組3 2外面的單 °仲裁處理單元48作成該決定後’取得匯流排使用 置,亦即該主裝置立即將一主位址隨同相同之控制 位址移轉階段1 04操作期間内放置在位址匯流^非 位址(檢索查詢)反應階段1 〇 6期間内,與匯^ 之其他各裝置即對位址匯流排5 0進行資料&索=排 操作,以決定各自是否需要對該主位址咨μ二~為 , 4貝料有任4 就一特定操作而,,要求該項操作之裝晉 而對該主位址信號有反應的.裝置則成A# 王 八钓攸屬裝置,
4?2l93 五、發明說^~~一 *— -—--^ 〜'依遠主裝置之操作要求而提供服務。 在資料仲裁處理階段1 〇 8操作期間内,含有盥兮Κ ii卜古3日+ 开琢項主作 哥賢料之裝置即提出資料匯流排6 0的使用權。,日 用資料匯流排6 0的權利時,含有資料的裴置及可^得使 間内得以控制資料匯流排60上的資訊。仲裁處」术作期 咨刺π ^ 々王早兀4 8將 貝枓匯流排使用權授與要求使用之裝置或多個 til /-fc 置"^^m·乂交^ 1 料傳送階段1 1 0開始操作,將資料在主裝置和從屬掌置 之間傳送。請注意,在其他具體實例中,若干匯流階t段可 能須依資料處理系統1 0之設計要求同時或按時間順序^序 發生操作。同時,在若干具體實例中,後續執行之各匯# 作業階段亦可能和以前執行之各匯流作業階段相重1 (或& 以管路方式安排)。此外,不同匯流作業之資料傳送階段 可以就各自之相關位址分別加以記錄。 圖4所示之流程圖2 0 0係說明利用晶片組3 2在匯流排3 4上 傳送資料之作業程序。流程圖2 0 0係由決定菱形方塊2 0 2所 表示之圖3所示觀察反應階段1 〇 6開始。各局部匯流裝置係 指與匯流排3 4搞接之各裝置’老如2 2 ’ 2 0 ’ 1 2,1 4及1 8等 裝置。觀察該項位址資料後’如未發現任何裝置提出作業 要求時,晶片組32乃自行執行操作’如方塊2 〇4所示。反 之,如果有一局部匯流裝置’諸如’主從屬裝置22或其他 從屬裝置2 〇提出作業要求’作業流程即繼續進行至決定菱 形方塊2 0 6。如果該局部匯流裝置要求作業並施加一 S n a r f 信號,該局部匯流f置.已接受一作業操作(因而成為從屬 裝置),並已警告晶片組32指明主記憶體需要更新。在本
472193 五 '發明說明(8) ; '~~~*~~~ -- 發明一個具體實例中’當局部匯流從屬裝置已將所要求的 育料修改’因而需要對主記憶體3 β及要求作業之裝置,寫 入該更新之裝置時,該局部匯流從屬裝置就會施加該 Snar f k號。在其他具體實例中,該局部匯流從屬裝置(例 如一寫入通過(write —through)高速緩衝記憶體)可在接收 來自另一裝置的資料時施加該S n a r f信號,俾可將該資料 也达往主記憶體36 ,。在另一具體實例中,晶月組32可能對 Snarf模式無法配合操入,除非由一從屬裝置施加—勿以 Snarf模式處理信號。此時,除非施加一信號指示勿做 S n a r f處理’否則該資料即被寫入主記憶體3 6中。 局部匯流排從屬裝置準備執衧資料傳送作業後(圖中之 決定菱形方塊2 0 8 ),即產生一資料準備信號,該信號告知 仲裁處理單元4 8 ’表示該局部匯流裝置在要求使用資料匯 流排(方塊2 1 0 )。倘主袭置原來要求的作業類別(方式)已 備妥,即可立即執行一 Snar f作業,並發生該局部匯流從 屬裝置和主裝置之間的資料傳送操作(方塊2 2 ),同時也發 生將該資料寫入主記憶體36之操作。另一方面,如果所要 求的作業方式係一「讀出並修改(R W I TM)」作業,則在該 局部匯流排從屬裝置和主裝置之間仍會發生資料傳送操 作’但,卻無寫入主記憶體之操作(如圖中方塊2 1 8所 示)。 如果在決定菱形方塊2 0 6階段該從屬裝置並未產生該 Snarf信號,則該項,作業.並不需要執行寫入主記憶體36之 操作。局部匯流排從屬裝置當資料已備妥可供傳送時,即
472193 五、發明說明(9) - 可產生一資料備妥信號(在圖中菱形方塊2丨4階段),要求 掌控資料匯流排60 ^於取得資料匯流排6〇之控制權(圖令 方塊2 1 δ階段)’即在資料匯流排6 〇上發生該局部匯流排從 屬裝置和主裝置之間的資料傳送操作(方塊2丨8階段)。 在本發明一種具體實例内,其中之主裝置可能是一個微 處理器’遠如被處理器1 2 ’ 1 4或1 6,或主/從裝置2 2,而 其中之從屬裝置則可能是另一微處理器,諸如:三級高速 緩衝記憶體18 ’主/從裝置22,或其他從屬裝置2〇。在一 特定之具體實例中,主/從裝置2 2可能是一圖形控制器, 以記憶體3 0做為其主抗緩衝器。在一特定具體實例中,該 其他從屬裝置2 0可能是一高速緩衝記憶體控制器,—個主 記憶體36以外含有位址資料之記憶體的控制器,或一特殊 用途副處理器。在其他各種具體實例中也可能只有一個微 處理器以及各種不同組之主/從裝置及其他從屬裝置。 圖5所示乃係一使用匯流排34傳送資料之局部匯流排裝 置作業流程圖。該局部匯流排裝置從位址匯流排5 〇中查詢 主裝置之位址(在方塊3 0 2階段),並根據該裝置之類型(在 決定愛形方塊階段)進行一特定步驟,決定其是否要對該 位址執行一資料傳送操作。如果該局部匯流排裝置是一高 速缓衝記憶體’則該局部匯流排裝置之記憶體應是主記憶 體3 6的一個用戶組件。例如:在圖1中,該二級高速緩衝 記憶體24以及在微處理器1 2中看到之第一高速缓衝記憶體 都是主記憶體36之取戶芦件在這種情況下,主記憶體3 6 和其任一用户組件(例如:該二級高速緩衝記憶體2 4或該
第13頁 472193 五、發明說明(ίο) - 第一高速缓衝記憶體之間的記憶體一致(或稱同調)性厥關 重要。倘若一裝置要求某項資料,則載有該資料之裝置必 須取出該資料之最近更新版本。 惟如該局部匯流排裝置是一分離(單獨)的記憶體範圍控 制器,則其中可能含有一個在主記憶體3 6中無法尋獲之分 離記億體範圍。例如:記憶體3 0 (例圖形控制器之一個主 機緩衝器)就可能是一個在主記憶體3 6中無法尋獲之分離 (或個別)記憶體範圍。 倘該局部匯流排裝置是一高速控制器,而且在位址匯流 排5 0中進行位址查詢時在其相關高速緩衝記憶體内已尋獲 該位址資料時(例如當該位址與-―該高速缓衝記憶體内之一 個標記匹配時),即會發生記憶體尋到狀況。如果在決定 菱形方塊3 0 6中未發生尋到狀況,則作業流程即回到方塊 3 0 2處。在一具體實例中,可以程式控制方式開啟或關斷 匯流排3 4之介入協定以便高速緩衝記憶體介入操作。另一 方法,也可在硬體中進行介入操作開啟或關斷之操作。當 介入協定被開啟後,即可在各局部匯流排從屬裝置之間直 接執行資料傳送操作,例如在各處理器之間進行高速緩衝 記憶體對高速緩衝記憶之資料傳送,以代替必須利用主記 憶體36傳送資料之需要。 倘介入操作未被啟動(決定菱形方塊3 0 8 ),且局部匯流 從屬裝置亦未修改所要的資料(決定菱形方塊3 1 0 ),該局 部匯流從屬裝置即已完#其處理作業,而該主裝置將自主 記憶體3 6處而非自該局部匯流排從屬裝置處接收該資料。
第14頁 472193 五、發明說明(π) 此時’作業流程乃回至方塊3 〇 2處。但如該資料已被修 改,該局部匯流排從屬裝置乃發出一查詢資料反應信號’ 在方塊31 2處顯示一再嚐試要求。該再嚐試要求警告主裝 置’在主s己憶體3 β中之該資料並非一修改後的新版本,而 應等待並在一稍後時間再嚐試執行其作業要求。然後’該 局部匯流排從屬裝置即將修改後之資料寫入主記憶體3 6内 (方塊3 1 4階段)。在此點上’該局部匯流排從屬裝置已完 成其作業,且在該局部匯流排從屬裝置内之該資料即不再 被標示為已修改資料。作業流程乃回到方塊3〇2處。此 時’主裝置得重新要求其作業。並將更新後的資料從主記 憶體36中讀出。 另一方面,如果在決定菱形方塊3〇8處啟動介入操作, 即可在不同局部匯流排從屬裝置之間直接進行各項操作。 如果介入操作已被啟動,而且所需要的資料已被局部匯流 排從屬裝置修改(在決定菱形方塊3丨6處),該局部匯流排 從屬裝置將在方塊3 1 8操作程序中提出一第一信號(亦稱作 —尋到信號)要求執行該項操作。該局部匯流排從屬裝置 亦將提出一第二信號(又稱作一Snarf信號)以便執行將修 改後資料寫入主記憶體36之操作(在方塊32〇處)。因此, 即使主裝置將會直接對或從該局部匯流排從屬裝置中傳送 資料,主記憶體也會接收該項資料之修訂内容。資料傳送 步驟乃可在方塊326内繼續進行,詳情請參閱以下對圖6之 說明。 , 介入協定不僅可執行已修改資料介入操作,也同樣可執
第15頁 472193 五、發明說明(12) 行未修改資料之介入操作,如決定菱形方塊3 2 2之說明。 未修介人操彳使局#匯流# m使在f料未被局 部匯流排裝置修改而仍能自主記憶體36中摘取資料的二 下傳运忒貝料。如果貧料未被修改,且未修改資料介入操 作亦未被啟動,該局部匯流排從屬裝置已完成其作業,而 主裝置將會自主記憶體36中取得其需要之資訊。作業流程 乃再度返回方塊3 02處。惟如,未修改資料介入操作已被 啟動,局部匯流排從屬裝置亦未修改該資料,該局部匯流 排從屬裝置將會提出一尋到信號而無法提供上述Snarf信 號(參閱方”塊324之說明),因而就不致發生Snarf i叫之現 象。由於資料未被修改,在此種情況下就不需要 Snarfmg ;因此,也不需要寫入主記憶體36^操作,因為 主S己憶體3 6中已存有該項資料之最新修改内容。作業流程 乃可繼續進行方塊3 2 6之資料傳送操作。 “爪王 如果以上所討論在決定菱形方塊3〇4處之裝置類型是一 分離(單獨)或記憶體範圍控制器,則在查詢該主裝置住址 時,該局部匯流排從屬裝置即可在該主裝置位址資料在苴 記憶體範圍的情況下,於決定菱形方塊328處確定已發生、 一記憶資料尋到之狀況。如果發生記憶資料尋到之狀x況, 且該局部匯流排應負責執行該項作業(在決定菱形方塊33〇 處)時’該局部匯流排從屬裝置將會藉由在方塊3 24處發生 一哥到彳§卩虎的方式要求執彳于该項操作。 “圖6所示係說明進,局部匯流排從屬裝置在步驟3 2 6時之 資料傳送作業流程。如‘果遠#作類別為讀取(入)操作(在
第16頁 472193
472193
472193 五、發明說明(15) - 資料傳送作業,以及選擇性使用對主記憶體之寫入操作可 降低系統成本和複雜性。使用—個單一協定執行多種不同 操作,諸如從屬裝置和處理器高速缓衝記憶體間之資料傳 送,可使採用該項協定之資料處理系統以簡便而符合成本 效益的方式執行多種不同的系統及軟體功能等優點。因 此,以上說明之各種具體實例已說明確實需要應發展一種 低成本高效率且可支援高速緩衝記憶之間資料傳送和各局 部匯流排從屬裝置之間資料傳送之協定(作業規則)。雖然 如此,但對本技術領威具有普通技術者應知,各種可替代 性具體實例亦可使用較多的控制接梢,不同的信號,或不 同的成纽信號解碼方法來達成相同的協定功能。 圖7所示乃係可供執行廣播協定之本發明另一具體實 例。在本具體實例中,在方塊4 0 2處之系統控制器自輸入 及輸出(I / 0 )單元4 0或匯流排3 8上之其他匯流排模組4 2處 接收外來資料。如果該系統控制器在決定菱形方塊4 〇 4處 確定該外來資料位於主記憶體3 6内或在該I /0位址範圍内 時’即會在方塊4 0 6處執行一正常操作,而不會執行一廣 播操作。如果該外來資料未在主記憶體36内或該I/O位置 範圍内時,負責廣播該寫入操作之裝置即可執行將該位址 寫入在匯流排3 4上(在方塊4 0 8處)。在另一具體實例中, 該廣播裝置可認定一位址範圍,在該範圍内必須將資料複 印在主記憶體3 6内,並將該資料以廣播方式提供至匯流排 34上之各個局部匯赛排裝置上。匯流.排34上之各項裝置, 不論為主裝置或從屬裝·置都將監督該匯流排進行查詢該位
第19頁 472193 五、發明說明(16) - 址之操作,以確定該項位址在他們各自之記憶範圍以 (在方塊4 1 0處)。如媒定該位址在其記憶範圍内,則八 該項主位址資料之各裝置將會發出’一尋到信號代表3发次 料查詢結果信號,並要求執行該項操作。肩也二/'資 〗、「 外水產生丽述戽 播信號的裝置’例如晶片組3 2内之判斷單元負主龄究” 各裝置_是否有發送尋到信號之裳置。 ' ' A 〃他 在一具體實例中.,該廣播信號是由晶片組32產生, 其他具體實例中,匯流排34上之任—幸歧罢认 在 工衣直均可產生兮庄 播信號。匯流排34上之各裝置一隹其準備接收該晶 廣播运來的寫入信號時,該等裝置即各自發出」 :號,要求使用資料匯流排60的權利。該元4 = 母一個提出尋到信號之裝置送來的資料備妥信號後(文幻 塊4 12至4 14各操作階段),該判斷單元48即會將資料匯、亡 排兮的使用權授予該等裝置以及主裝置(在方塊4i6幻: =在=塊41 8—步驟中’該項資料即被傳送至資料匯流排 因而,母—發出尋到信號之裝置均能收到該項資料 讀出該資料,並將該資料寫入各自之= 後,該操成該資料被傳送至各個從屬裝置 明、% 2 ^雖^係參閱各附圖之特定具體實例來介紹本發 厂ί:;者應可對該等具體實例進行修改或改
亦$ 士 & a «'、怎可了解,各種不同的設計和元作運用 刃」/〇烕本發明之A 夕由·^ a 4丨一 ?項功能。因此’凡未偏離本說明附帶 ⑹圍各項主張之一切其他修改事項均應包括在
472193
第21頁

Claims (1)

  1. 472193 六、申請專利範圍 - 1. 一種在與一處理器介面匯流排連通之從屬裝置與一主 裝置之間傳送資料之方法,該方法包括下列各項步驟: 接收來自該處理器介面匯流排之位址資料,該位址資料 係由該主裝置提供; 在處理器介面匯流排上提供一第一信號,顯示該從屬裝 置係在執行一資料傳送操作; 在該處理器介面匯流排上提供一第二信號以顯示利用該 處理器介面匯流排傳送之資料是否應由一與該處理器介面 匯排連通之主記憶體控制器儲存在主記憶體内;及 在該從屬裝置和該處理器介面匯流排之間傳送該資料。 2. —種資料處理系統,包括二 一個處理器介面匯流排; 一個響應於該處理器介面匯流排之記憶體控制器; 一個響應於該記憶體控制器之記憶體裝置; 一個響應於該處理器介面匯流排且執行主裝置功能之第 一裝置;及 一個響應於該處理器介面匯流排且執行一從屬裝置功能 之第二裝置,該第二裝置在該處理器介面匯流排上提出一 第一信號,表示該從屬裝置正在執行一項資料傳送操作, 並在該處理器介面匯流排上提出一第二信號,指示是否應 將處理器介面匯流排傳送之資料由該記憶體控制器儲存在 該記憶體内。 3. —種資料處理I統,包括: 一個處理器介面匯流排;
    第22頁 472193 六、申請專利範圍 - 一個響應於該處理器介面匯流排之記憶體控制器; 一個響應於該記憶體控制器之記憶體裝置; 一個響應於該處理器介面匯流排之第一裝置,用以執行 主裝置之功能,並含有一第一高速緩衝記憶體; 一個響應於該處理器介面匯流排之第二裝置,用以執行 從屬裝置之功能,並含有一第二高速緩衝記憶體; 處理器介面匯流排係依一匯流排協定之指令操作,該匯 流排協定處理之第一種作業包括在該第一裝置之第一高速 緩衝記憶體和該第二裝置之第二缓衝記憶體之間傳送資 料;並處理第二種作業包括在該第一和第二裝置之中任一 裝置和個耦接於該處理器介面匯流排之局部匯流排從屬 裝置之間傳送資料。 4. 一種在與一處理器介面匯流排連通之從屬裝置和主裝 置之間傳送資料的方法,該方法包括下列各項步驟: 從該處理器介面匯流排接收一個由該主裝置提供之位址 資料; 在該處理器介面匯流排上提供第一信號,表明該從屬裝 置正在執行一項資料傳送操作; 在該處理器介面匯流排上提供一第二信號,指明是否應 由一主記憶體控制器(也與該處理器介面匯流排連通)將該 資料儲存在主記憶體内,及 在該處理器介面匯流排上提供一第三信號,表明從屬裝 置已準備妥當,可執行該項資料傳送操作;及 * 在該從屬裝置和該處理器介面匯流排之間傳送該資料。
    第23頁 472193 六、申請專利範圍 - 5. —種方法,可將一外部信號源送來的資料傳送至一個 與多個裝置連通之處理器介面匯流排上,上述方法包括下 列各項步驟: 在一響應於該處理器介面匯流排之控制器處接收由一外 部資料源送來的資料及一相關之記憶體位址資料; 確認該相關記憶體位址資料是否在上述多個裝置之記憶 體記憶範圍之内;, 在該處理器介面匯流排上發起一寫入操作; 監視該處理器介面匯流排所收到之上述多個裝置各自之 回應訊息; 從該處理器介面匯流排上接收來自該多個裝置中某一子 集裝置之資料備妥信號; 控制該處理器介面匯流,並將該處理器介面匯流排之存 取(使用)權授與該子組'裝置;及 將所收到之外部資料源送來之資料傳送給該處理器介面 匯流排。
    第24頁
TW088111377A 1998-07-06 1999-07-13 Method and apparatus for transferring data over a processor interface bus TW472193B (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US09/110,351 US6163835A (en) 1998-07-06 1998-07-06 Method and apparatus for transferring data over a processor interface bus

Publications (1)

Publication Number Publication Date
TW472193B true TW472193B (en) 2002-01-11

Family

ID=22332546

Family Applications (1)

Application Number Title Priority Date Filing Date
TW088111377A TW472193B (en) 1998-07-06 1999-07-13 Method and apparatus for transferring data over a processor interface bus

Country Status (6)

Country Link
US (1) US6163835A (zh)
EP (1) EP0971292A3 (zh)
JP (1) JP3723700B2 (zh)
KR (1) KR100310399B1 (zh)
CN (1) CN1210662C (zh)
TW (1) TW472193B (zh)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6483516B1 (en) 1998-10-09 2002-11-19 National Semiconductor Corporation Hierarchical texture cache
US6801207B1 (en) 1998-10-09 2004-10-05 Advanced Micro Devices, Inc. Multimedia processor employing a shared CPU-graphics cache
US6591347B2 (en) * 1998-10-09 2003-07-08 National Semiconductor Corporation Dynamic replacement technique in a shared cache
US6725307B1 (en) * 1999-09-23 2004-04-20 International Business Machines Corporation Method and system for controlling data transfers with physical separation of data functionality from address and control functionality in a distributed multi-bus multiprocessor system
TWI282513B (en) * 2002-06-12 2007-06-11 Mediatek Inc A pre-fetch device of instruction for an embedded system
JP4224430B2 (ja) * 2003-07-07 2009-02-12 株式会社ルネサステクノロジ 情報処理装置
US7369718B2 (en) * 2004-01-23 2008-05-06 Intel Corporation Package substrate pattern to accommodate optical waveguide
US7735037B2 (en) 2005-04-15 2010-06-08 Rambus, Inc. Generating interface adjustment signals in a device-to-device interconnection system
US7802212B2 (en) * 2005-04-15 2010-09-21 Rambus Inc. Processor controlled interface
CN100459570C (zh) * 2005-04-30 2009-02-04 华为技术有限公司 一种数据转发装置及其数据转发方法
US8341360B2 (en) * 2005-12-30 2012-12-25 Intel Corporation Method and apparatus for memory write performance optimization in architectures with out-of-order read/request-for-ownership response
US7562194B2 (en) * 2006-02-06 2009-07-14 Intel Corporation Method and apparatus for exploiting parallelism across multiple traffic streams through a single channel
US8107492B2 (en) 2006-02-24 2012-01-31 Qualcomm Incorporated Cooperative writes over the address channel of a bus
US8108563B2 (en) * 2006-02-24 2012-01-31 Qualcomm Incorporated Auxiliary writes over address channel
KR100781340B1 (ko) * 2006-09-18 2007-11-30 삼성전자주식회사 사용자 정의 확장 연산을 처리하는 연산 시스템 및 방법
US8447957B1 (en) * 2006-11-14 2013-05-21 Xilinx, Inc. Coprocessor interface architecture and methods of operating the same
DE102011007437A1 (de) * 2010-11-15 2012-05-16 Continental Teves Ag & Co. Ohg Verfahren und Schaltungsanrodnung zur Datenübertragung zwischen Prozessorbausteinen

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5519839A (en) * 1992-10-02 1996-05-21 Compaq Computer Corp. Double buffering operations between the memory bus and the expansion bus of a computer system
US5528764A (en) * 1992-12-24 1996-06-18 Ncr Corporation Bus system with cache snooping signals having a turnaround time between agents driving the bus for keeping the bus from floating for an extended period
US5799161A (en) * 1993-06-25 1998-08-25 Intel Corporation Method and apparatus for concurrent data routing
US5790831A (en) * 1994-11-01 1998-08-04 Opti Inc. VL-bus/PCI-bus bridge
WO1997000480A1 (en) * 1995-06-15 1997-01-03 Intel Corporation Architecture for an i/o processor that integrates a pci to pci bridge

Also Published As

Publication number Publication date
KR20000011516A (ko) 2000-02-25
CN1210662C (zh) 2005-07-13
US6163835A (en) 2000-12-19
EP0971292A2 (en) 2000-01-12
JP3723700B2 (ja) 2005-12-07
EP0971292A3 (en) 2000-11-22
CN1245929A (zh) 2000-03-01
KR100310399B1 (ko) 2001-11-03
JP2000115208A (ja) 2000-04-21

Similar Documents

Publication Publication Date Title
TW472193B (en) Method and apparatus for transferring data over a processor interface bus
CN100555257C (zh) 处理页面复制期间的dma操作的存储控制器和方法
EP0283628B1 (en) Bus interface circuit for digital data processor
US5682512A (en) Use of deferred bus access for address translation in a shared memory clustered computer system
JP3529566B2 (ja) 情報処理方法および装置
KR910001789B1 (ko) 디지탈 컴퓨터 시스템의 다중 프로세서 시스템용 캐쉬 무효 장치
TW390986B (en) Cache memory system
TW385395B (en) Method of shared intervention for cache lines in the shared state for SMP bus
US6857035B1 (en) Methods and apparatus for bus mastering and arbitration
US5471625A (en) Method and apparatus for entering a low-power mode and controlling an external bus of a data processing system during low-power mode
TW475117B (en) Method of shared intervention for cache lines in the recently read state for SMP bus
TW591526B (en) Data maintenance method of DSM system
JP4593594B2 (ja) 複数ノード間での通信方法、相互接続ポートおよび相互接続システム
TW460797B (en) Block snooping support for multiple processor systems
JP2018109965A (ja) データ処理
US7490184B2 (en) Systems and methods for data intervention for out-of-order castouts
US7552269B2 (en) Synchronizing a plurality of processors
CA1295749C (en) Interface between processor and special instruction processor in digital data processing system
US8051251B2 (en) Method and apparatus for setting status of cache memory
JP4965974B2 (ja) 半導体集積回路装置
US5623694A (en) Aborting an I/O operation started before all system data is received by the I/O controller after detecting a remote retry operation
JP2008511890A (ja) アトミック・オペレーションを用いて情報単位を変更する方法及び装置
TW386192B (en) Method and system for speculatively sourcing cache memory data within a data-processing system
US6611882B1 (en) Inbound and outbound message passing between a host processor and I/O processor local memory
JP2008123333A5 (zh)

Legal Events

Date Code Title Description
GD4A Issue of patent certificate for granted invention patent
MM4A Annulment or lapse of patent due to non-payment of fees