487844 經濟部智慧財產局員工消費合作社印製 A7 B7 五、發明說明(/ ) 發明領域 本發明一般而言係有關一種於裝置之間之資料傳輸的 領域。更特別的是,本發明係有關一種允許資料之區塊轉 移至一個輸入/輸出裝置之系統。 相關先前技藝之說明 當轉移資料時,一個以典型的電腦爲主的系統會應用 地址與資料匯流排來允許於一個微處理器與其他相關聯之 裝置之間的通訊。上述位址匯流排是使用於在一個相關聯 的裝置(不論手於電腦的內部或外部)中定址一個特別的位 置,於其上,特定的資料要轉移。上述的情形是藉由將用 於外部裝置預先決定的位址,置於上述微處理器想要轉移 資料至上述位址匯流排之上。 一旦資料需要位置之位址已經置放於上述匯流排上時 ,每一個外部裝置會判斷是否微處理器需要將資料傳輸給 它。此已可以藉由許多先前已知之方式來完成,並且通常 藉由讓每個裝置比較上述位址匯流排上之位址與其自己預 先設定之位址(或是數個位址)來完成。若上述的位址互相 匹配,則上述外部裝置會取走出現於上述資料匯流排上的 資料,並且儲存於其自有的記憶體中。同樣地,這樣的資 料轉移可以藉由上述微處理器,經由一條控制線,警告將 要將資料轉移至上述裝置之裝置來達成。於警告該裝置之 後,上述微處理器會將一個位於上述裝置(例如一個暫存器 之一個位址)中之位址放置於上述位址匯流排上。上述資料 通常P—個資料字元的單位來傳輸,這樣之資料字元的大 3 本紙張尺度適用中國國家標準(CNS)A4規格(210 X 297公釐) (請先閱讀背面之注意事項再填寫本頁) --------^---------^. 487844 經濟部智慧財產局員工消費合作社印製 A7 B7 五、發明說明(:〇 小會隨著上述資料匯流排的寬度而改變。 爲了要轉移一個相當大數量的資料至上述外部裝置上 ,上述微處理器可以重複地將上述外部裝置之位址放置於 上述位址匯流排上。上述外部裝置繼續取走展現於上述資 料匯流排上之每個相繼的資料字元,並且將其儲存於其記 憶體上。 上述微處理器可以維持一個指標器,其對應到一個包 含其想要轉移至上述外部裝置之資料的一個記憶體位置上 。當每個資料字元轉移至上述外部裝置上時,上述指標器 會更新至上述微處理器想要轉移至上述外部裝置之資料、 相對應之下一個位置。但是,爲了要確保每個相繼的資料 字元皆轉移至上述同一個外部裝置上(假設上述微處理器希 望下一個資料轉移至上述裝置上),上述位於上述位址匯流 排上的位址要於上述指標器指到上述微處理器中之下一個 資料字元之位址更新時維持不變。 一些較新的微處理器亦包含藉由執行一個”區塊轉移” 之動作,允許將較大區塊之資料由一個記憶體位址轉移至 另一個記憶體位址之簡化上述處理程序之能力。如同此領 域中已知之技術,上述區塊轉移可以藉由直接記憶體位址 (Direct Memory Address,DMA)轉移法,其利用一個分離的 、額外的微處理器或是其他硬體與/或軟體結構(一個” DMA 控制器”)來完成。直接記憶體位址法可以較一個字元接字 元資料轉移法快速許多。上述方法速度上的增強來自於包 含上述之分離結構來掌控增加對應至上述包含下一個將要 4 ϊ --------1---------^ —^WI (請先閱讀背面之注意事項再填寫本頁) 本紙張尺度適用中國國家標準(CNS)A4規格(210 X 297公釐) 487844 經濟部智慧財產局員工消費合作社印製 A7 B7 五、發明說明(3 ) 被轉移之上述資料字元之記憶體位址的指標器,以及上述 資料將要被接收的對應位址。 直接記憶體位址轉移法可以以下列的方式來執行。將 要由上述區塊轉移出去之上述第一個記憶體位置以及上述 區塊的大小會先判斷,並且提供至上述直接記憶體位址控 制器上。而目的地的位置亦已決定了。上述直接記憶體位 址控制器維持目的地指標器,其對應至一個記憶體中之資 料將要轉移到的位址上。每一個位於將要轉移之記憶體區 塊中之記憶II位置隨後相繼地被放置於上述資料匯流排上 。於每個轉移之後,上述記憶體指標器以及上述直接記億 體位址控制器之目的地指標器會增加計數。如同本領域中 已知之技術,增加一個指標器計數的方法會改變,並且包 括增加量其經由一個鏈結之表單增加或,更簡單地,僅僅 對一個儲存於上述指標器中之目前的數値增加一個定額的 數量.。 當資料目前儲存之位置,以及資料將要轉移到的位置 此兩個上述之位置具有分離之位址,其以上述指標器增加 計數之相同的方式變化時,上述直接記憶體位址轉移法允 許於兩個記憶體位置之間作快速地轉移資料。當由一個記 憶體位置轉移一個資料區塊至另一個記憶體位置時,上述 兩個位置皆位於相同的記憶體單元,或者是相同的記憶體 型態,此型態之定址方式可以非常有效地蓮作。 但是,仍有一些情形是上述資料並非轉移至序列的或 '是逐漸增加之位址上,而是皆轉移至同一個位址。此情形 5 i紙張尺度適用中國國家標準(CNS)A4規格(210 X 297公釐) ^ 一 «1 ·1 ί ί ί ϋ ϋ ϋ αϋ ϋ ·ϋ · n ϋ ϋ I «a— n n-·-,β ϋ ϋ ϋ H ϋ n «ϋ I "口 ^ (請先閱讀背面之注意事項再填寫本頁) 487844 經濟部智慧財產局員工消費合作社印製 A7 ___B7__ 五、發明說明(★) 會發生於,舉例說明,當上述資料將要轉移至某些特定之 輸入/輸出裝置上。每一個輸入/輸出裝置可以被指定爲一 個獨一無二之位址或是一複數個位址。當一複數個位址被 指定至一個特別之輸入/輸出裝置上時,其通常表示上述特 別之裝置能夠由上述微處理器接收資訊,亦能傳輸資訊至 上述微處理器上。這種型態之輸入/輸出裝置的其中一種爲 通用非同步接收器與傳輸器(Universal Asynchronous Receiver Transmitter,UART) ° 一個通_非同步接收器與傳輸器通常包含複數個暫存 器,其記錄狀態並且輸入/輸出資料。每一個暫存器具有一 個獨一的位址,其對應至上述微處理器中的記憶體空間中 。上述輸入與輸出暫存器,每個皆具有一個獨一的位址, 具有經由針對這些暫存器利用一個內部緩衝器來快速、連 續地接收或是傳輸數個資料字元的能力。上述內部緩衝器 可以是,舉例說明,一個先入先出(First-In First-Out, FIFO)堆疊。如同已知的技術,這樣的堆疊能夠快速連續地 接收與儲存數個資料字元。 於沒有採用區塊轉移法之系統中,上述用於輸入一個 輸出暫存器之獨一的位址並不會造成任何實際上的困難。 如同以上所描述的,上述微處理器僅需要掌握當序列式地 將資料放置於上述資料匯流排上時,於上述通用非同步接 收器與傳輸器中所需要之位置、位於上述位址匯流排之位 址。此係藉由上述微處理器啓動一個位於兩個位置之間(例 如,記憶體與上述通用非同步接收器與傳輸器之間)的轉移 6 本紙張尺度適用中國國家標準(CNS)A4規格(210 X 297公釐) ϋ n n I ϋ ϋ « f— ·ϋ ϋ n ϋ ammm§ n 一 δ,1 n 1 _§ an ϋ n I (請先閱面之注意事項再填寫本頁) 經濟部智慧財產局員工消費合作社印製 487844 A7 —---------B7____ 五、發明說明(^ ) 、來完成的。若上述目的地位置對應至上述通用非同步接收 器與傳輸器之輸入暫存器,則上述微處理器會啓動一個指 示上述通用非同步接收器與傳輸器去讀取資料至其輸入暫 存器中的控制線。上述位於用於儲存資料之輸入/輸入裝置 中之特定的暫存器之位址會經由上述位址匯流排傳送至上 述通用非同步接收器與傳輸器中。 但是,於應用一個區塊轉移方法之系統中,上述目的 地之位址是逐步增加的。此舉接著會造成上述資料區塊之 序列資料最後爲位於不同的位置上的情形。 Λ 發明槪要 於一個實施例中,本發明的主要目的爲設計一個用於 執f了資料轉移之設備。上述設備包括一個具有複數個位址 線之位址匯流排,一個具有複數個資料線之資料匯流排, 以及至少一個連接於上述位址匯流排與上述資料匯流排之 輸入/輸出裝置,上述輸入/輸出裝置連接至上述位址匯流 排,以使得上述複數個位址中的每一個位址總是可以對應 到上述輸入/輸出裝置上。 於本發明的另一個實施例中,本發明的目的是設計一 個用於執行資料區塊轉移之系統。上述系統包括一個第一 個輸入/輸出裝置,其連接於一個位址匯流排與一個資料匯 流排,其中,與上述位址匯流排之連接藉由一個固定數量 的數値補償。 於本發明的另一個實施例中,本發明的目的爲設計一 個其用於電子性轉移一串資料元件之方法,該資料元件包 7 本紙張尺度適用中國國家標準(CNS)A4規格(21G X 297公餐)'" ' —^------------------訂---------線 (請先閱讀背面之注意事項再填寫本頁) 經濟部智慧財產局員工消費合作社印製 487844 A7 一 B7 五、發明說明(& ) ,( 括一個第一個資料元件與一個第二個資料元件,上述資料 提供於一個包括一個資料區塊與一個位址區塊之匯流排上 ,上述資料串列傳送給第一個資料接收裝置,上述第一個 資料接收裝置包括複數個位址線與一個當一個接收元件位 址方已放置於上述位址線上時可以被存取之儲存元件。上 述方法包括以下的步驟(a)利用一個放置於上述匯流排之位 址區塊上的第一個位址,將上述第一個資料元件轉移至上 述第一個資料接收裝置之儲存元件上,以及(b)利用一個 放置於上述_流排之位址區塊上的第二個位址,將上述第 二個資料元件轉移至上述第一個資料接收裝置之儲存元件 上。於此方法中,步驟(a)與(b)並不需要藉著電子性地將第 一個位址與第二個位址解碼至上述接收元件位址中來執行 〇 於本發明的另一個實施例中,本發明的目的爲設計一 個電子性轉移的方法,其於一個具有一個位址區塊與一個 資料區塊的匯流排上,將一個第一個資料元件區塊轉移至 一個第一個裝置中之一個儲存元件上,以及將一個第二個 資料元件區塊轉移至一個第二個裝置中之一個儲存元件上 。上述方法包括以下的步驟,(a)將一個第一個位址放置並 維持於上述匯流排上之位址區塊上,(b)於執行於步驟(a)期 間,轉移上述第一個區塊中之第一個資料元件至上述第一 個裝置之儲存元件上,以及(c)與步驟(b)同時執行,將上述 第二個區塊中的一個第一個資料元件轉移至上述第二個裝 置之儲存元件上。 8 本紙張尺度適用中國國家標準(CNS)A4規格(210 X 297公釐) s --------^---------線 i^w. (His先閱讀背面之注意事項再填寫本頁) 487844 經濟部智慧財產局員工消費合作社印製 A7 B7 五、發明說明(7 ) 於本發明的另一個實施例中,本發明的目的爲設計一 個同步轉移資料之系統。上述系統包括一個具有一個位址 區塊與一個資料區塊之匯流排,以及一個第一個資料接收 裝置。上述第一個資料接收裝置包括複數個資料輸入,以 由上述匯流排之資料區塊中接收資料,一個儲存兀件’其 用於儲存由上述匯流排之資料區塊接收到的資料,複數個 位址輸入,其用於由上述匯流排之位址區塊中接收一個位 址,以及一個裝置,其用於判斷上述位址輸入接收到之位 址以及所擁有之位址,是否對應到一個指定給上述第一個 \ 資料接收裝置的位址上。上述系統亦包括一個第二個資料 接收裝置。上述第二個資料接收裝置包括複數個資料輸入 ,以由上述匯流排之資料區塊中接收資料,一個儲存元件 ,其用於儲存由上述匯流排之資料區塊接收到的資料,一 複數個位址輸入,其用於由上述匯流排之位址區塊中接收 一個位址,以及一個裝置,其用於判斷上述位址輸入接收 到之位址以及所擁有之位址;是否對應到一個指定給上述 第二個資料接收裝置的位址上。上述的系統被設計爲上述 第一個資料接收裝置連接至上述匯流排中的位址區塊,使 得這樣的連接包含一個第一個固定補償數量的補償。 圖式簡單說明 本發明的範疇,可以參考附圖以及藉由以下詳細的描 述而得到淸楚的了解,且這樣詳細的描述以及特別的範例 ,其爲本發明實施例的範例,僅是用於描述本發明而已, 因爲各種於本發明之精神與範疇之內的改變與變更,對於 9 本紙張尺度適用中國國家標準(CNS)A4規格(210 X 297公釐) ·----------———^訂---------^線 (請先閱讀背面之注意事項再填寫本頁) 487844 經濟部智慧財產局員工消費合作社印製 Α7 Β7 五、發明說明(y ) 專精於此領域者可以由此詳細的描述而更爲淸楚,於其中 圖1爲一個典型先前技術有關於一個微處理器與一個 外部輸入/輸出裝置之間之連接的方塊圖。 圖2顯示一個先前技術關於將一個輸入/輸出裝置與一 個位址匯流排之間的連接。 圖3顯示本發明之一個論點的一個示範性實施例。 圖4顯示一個示範性實施例,其說明如何依據本發明 的原理而可β將複數個輸入/輸出裝置連接至一個位址匯流 排上。 圖5顯示一個如何依據本發明的原理而可以將複數個 輸入/輸出裝置連接至一個資料匯流排上之實施例。 圖6顯示如何依據本發明的原理可以如何將複數個輸 入/輸出裝置連接至一個資料匯流排上之另一實施例。 圖7爲一個流程圖,其顯示一個示範性的方法,藉此 方法資料區塊可以依據本發明的一個實施例來轉移。 元件符號說明 微處理器 1〇2輸入/輸出裝置 1〇4位址匯流排 資料匯流排 2〇2輸入 2〇4輸出 1〇2第一個輸入/輸出裝置 10 本紙張尺度適用中國國家標準(CNS)A4規格(210 X 297公爱) . --------訂---------線 (請先閱讀背面之注意事項再填寫本頁) 經濟部智慧財產局員工消費合作社印製 487844 A7 _ B7 五、發明說明(?) 102’第二個輸入/輸出裝置 發明詳細說明 圖1顯示一個先前傳統之技術組態,於其中,一個微 處理器100連接至一個外部輸入/輸出(I/O)裝置102。如同 圖中所顯示的,上述微處理器100以及上述I/O裝置102 兩者皆連接至一個共同位址匯流排104以及一個共同資料 匯流排106。上述微處理器100與裝置1〇2可以選擇性地 具有一個連結於兩者之間之控制線108(以虛線顯示)。 上述微蹲理器1〇〇可以是一部電腦上唯一的微處理器 ,或是一個直接記憶體位址控制器中之一部份的微處理器 ,上述直接記憶體位址控制器是特定的並且僅使用於於上 述系統記憶體(未顯示於圖中)之間執行直接記憶體位址轉 移法。上述記憶體可以位於上述微處理器100的內部或外 部。但是,爲了方便敘述,其僅需要了解上述記憶體1〇〇 可以存取與放置資料於該資料匯流排106上。 如同以上所敘述的,上述微處理器100會將對應到目 前位於上述資料匯流排106上之資料將要轉移到的目的地 之位址放置於上述位址匯流排104上。以此方式,上述微 處理器100可以控制來往於上述I/O裝置102之間的所有 資料移動。 現在參考圖2,其顯示一個於一個微處理器1〇〇與一 個I/O裝置102之間之先前技術的連接組態更詳細的描述 圖。圖2將用於更淸楚地解釋這樣的一個組態於資料之區 塊轉移時所產生的缺點與問題。 11 本紙張尺度適用中國國家標準(CNS)A4規格(210 X 297公釐) I J------------------訂---------線 Φ (請先閱讀背面之注意事項再填寫本頁) 經濟部智慧財產局員工消費合作社印製 487844 A7 B7 五、發明說明(/〇 ) 如圖顯示的,圖2基本上與圖1所顯示者相同。但是 ,其中上述位址匯流排104與上述資料匯流排106以更詳 細的方式加以顯示。特別是,上述位址匯流排1〇4是由數 個獨立的位址線A0....A31所構成的。而上述資料匯流排 106,同樣地包含複數個資料線D0…D15,每一條資料線代 表一個資料位元。此處必須要注意的是上述位址線與資料 線的數目是可變的。於此實施例中,所顯示之上述位址匯 流排104爲32個位元寬度,而上述資料匯流排106則爲 16個位元寬莩。於典型的系統中,上述位址匯流排104的 寬度與上述資料匯流排106的寬度是分別地對應到上述微 處理器1〇〇所使用的位址空間的大小與一個資料字元的大 小。因此,上述顯示於圖2中之微處理器100具有一個32 個位元寬度的空間以及一個16位元之資料字元。 上述位址匯流排104與上述資料匯流排106與上述 I/O裝置102之間的連接與圖1所顯示的亦有所不同。如 同圖2所顯示的,上述I/O裝置1〇2與上述位址匯流排 1〇4以及上述資料匯流排106之間有複數個直接的連結。 上述連結的數量取決於上述I/O裝置102可以掌控的資料 字元的大小,以及上述裝置實際位址之寬度。如圖中所顯 示者,上述裝置102可以用三個位元定址,且具有8位元 資料字元。上述I/O裝置102之資料連結是連結至上述資 料匯流排106之8個低位位元(D0至D7),而上述位址連 結則連結至上述位址匯流排104之3個最低位位元(A0至 A2)上。 12 本紙張尺度適用中國國家標準(CNS)A4規格(210 X 297公釐) —·------------------訂---------線 (請先閱讀背面之注意事項再填寫本頁) 經濟部智慧財產局員工消費合作社印製 487844 A7 B7 五、發明說明(Π ) 於此實施例中,上述I/O裝置102具有至少兩個暫存 器,一個輸入暫存器202與一個輸出暫存器204。每一個 暫存器通常具有其自己擁有之分離位址。假設於以下的解 釋中,上述輸入暫存器202具有一個0的位址,且上述輸 出暫存器204具有一個1的位址。因此,上述微處理器100 可以對應於其內,一個十六進位數字FF00H對應至上述輸 入暫存器202,且位址FF01H對應至上述輸出暫存器204。 如同以上所描述的,於許多的1/◦裝置102中,上述輸入 暫存器202辱上述輸出暫存器204可以具有一個相關聯之 堆疊,或是一個緩衝器。 若上述微處理器100被指示要將包含於一個隨機記憶 體位址(例如,1110H)的資料,轉移至記憶體位址FF00H(例 如,上述I/O裝置102之輸入暫存器202)上時,會發生以 下的事件。首先,上述微處理器1〇〇將會使用一個記憶體 對應圖(未顯示於圖中)來判斷上述位址FF00H是否對應至 上述I/O裝置102之輸入暫存器202。隨後,上述微處理器 100會將記憶體位址1110H的內容放置於上述資料匯流排 106上,上述位址匯流排104上之位址0(例如,上述記憶 體對於上述輸入暫存器202之對應位址),並且將會啓動上 述控制線108以更換資料即將要轉移到的上述I/O裝置102 上。隨後,上述I/O裝置102會拷貝位於上述資料匯流排 106上之資料藉由位於上述位址匯流排104之位址加以定 址之上述暫存器,於此例中,即拷貝至輸入暫存器202上 。若上述微處理器隨後被指示去轉移記憶體位址1101H上 13 0張尺度適用中國國家標準(CNS)A4規格(210 X 297公釐) --.------------------訂----------線 (請先閱讀背面之注意事項再填寫本頁) 經濟部智慧財產局員工消費合作社印製 487844 A7 B7 五、發明說明(u) 之內容至記憶體位址FFOOH上時,以上所述相同的處理程 序會反覆執行。依此方式,所有的資料會轉移至上述相同 的位址上。此種型態的記憶體轉移可以試想爲是一序列之 資料字兀轉移至相同的位置上。 通常區塊轉移機制並不會以上述這樣的形式來執行。 一個直接記憶體位址轉移法於每個區塊轉移時,僅諮詢一 個記憶體對應圖一次。一旦上述第一個目的地位址由上述 記億體對應圖來判定之後,其會儲存於一個目的地指標器 中,每次當齊塊中的一個資料字元轉移後,上述暫存器會 增加數値。此增加之指標器數値會連續地放置於上述位址 線上。 以上述的實施例爲例子,假設上述微處理器100被指 示去由記憶體位址1110H轉移一個資料字元區塊至另一個 記憶體位址FF00H。上述第一個資料字元(意即,位於位址 1110H上之資料)被放置於上述資料匯流排106上。而上述 第一個記憶體位址(意即1110H)之位址則儲存於記憶體指標 器中。隨後上述微處理器利用上述記憶體對應圖來檢查上 述記憶體位址FF00H,以及,如同以上所描述的,將其轉 換至位址0,其指示上述I/O裝置102之輸入暫存器202。· 此位址(0)儲存於一個目的地指標器中。,上述儲存於上述目 的地指標器(0)之位址被放置於上述位址匯流排104上,且 上述字元則以以上描述的方式儲存。但是,於轉移第二個 資料字元時(意即,位於位址1111H之資料),上述微處理 器100將會增加上述記憶體與上述目的地指標器兩者之數 14 本紙張尺度適用中國國家標準(CNS)A4規格(210 X 297公釐) . -------I ^---------^ i^w. (請先閱讀背面之注意事項再填寫本頁) 487844 A7 B7 經濟部智慧財產局員工消費合作社印製 五、發明說明(〇 ) 値。上述目的地指標器目前包含了數値丨,其會使得上述 資料被儲存於上述輸出暫存器204中,而不是原本要儲存 的輸入暫存器202中。因此,顯示於圖2中的組著、並非適 合於資料的區塊轉移上。 其中一個嘗試要克服此問題的先前的技術發表於 Priem之美國專利弟5687357號。Priem教示當上述系統要 執行一個區塊轉移時,可使用一個位址解碼器來將連續的 位址解碼至同一個位址上的方法。但是,額外增加的解碼 器需要額外巧硬體或是軟體的應用來將上述的位址轉換至-· 同一個位址上。此額外之元件的增加需要更多實體的空間 來容納,亦需要限制記憶體轉移的速度至需要用於解碼的 時間上,若這樣的解碼之速度慢於一個I/O裝置可以接收 或是傳輸資料的速度時。本發明的一些實施例已經減少或 是克服了上述的問題。 > 圖3顯示本發明的一個實施例。於此實施例中/不需 要額外的解碼電子電路或是軟體來執行一個直接記憶體位 址區塊轉移法將資料轉移至一:個單一的目的地位址上。 上述顏示於圖3的實施例包括了一個微處理器100, 一個I/O裝置1〇2,. 一個位址.匯流排104以及一個資料匯流 排106。上述I/O裝置藉由裝置位址線304a....304c連 接於上述位址匯流排104,並藉由裝置資料線306a…306h 連結至上述資料匯流排106。於此實施例中,上述微處理 器100具有一個32個位元的位址空間,以及16個位元的 資料字元。上述位址空間與上述資料字元的大小於本發明 15 I -----! I 訂------II— i^v. (請先閱讀背面之注意事項再填瀉本頁) 本紙張尺度適用中國國家標準(CNS)A4規格(210 x 297公釐) 487844 經濟部智慧財產局員工消費合作社印製 A7 B7 五、發明說明(咚) 中並不很重要,且可以加以變化。如以上所描述的,上述 微處理器1〇〇與上述1/0裝置102藉由一條控制線108連接 。一位具有普通技術者將會容易地體認上述控制線108於 某些情形下可以忽略’例如當上述I/O裝置102具有選擇 上述位址匯流排104以判斷是否資料已經轉移給它時之能 力,便可以忽略。 如圖3所顯示的’上述I/O裝置102是直接地連結至 上述位址匯流排104上。但是,與圖2比較,上述裝置位 址線304是申上述位址匯流排104之最低序位的位元上開 始補償的。意即,上述最低序位位址線(如圖所顯示的,裝 置位址線304a)並非連接至上述位址匯流排1〇4之最低序位 位元上(例如,A0)。於此實施例中,上述裝置位址線304 是在上述最低序位裝置位址線304a已經連結至上述位址匯 流排104之第五個最低序位位元A4的情況下.,藉由四個位 元來補償的。此舉允許序列目的地位址可以全部被定址於 同一個位址上,而不需要包含任何額外的解碼電子電路或 是軟體來執行。 以上述的實施例爲例子,將會描述依據本發明之原理 所執行之區塊轉移操作。於以上所描述的實施例中,因爲 於儲存於上述目的地指標器中之位址的逐步增加,則位於 上述第二個記憶體位址(意即,1111H)上的資訊將會被導引 至上述I/O裝置102中錯誤的暫存器上。若上述I/O裝置 102如圖3中所顯示地連結於上述位址匯流排104上時,位 址(0與1)看起來將不#有所不同。意即,因爲上述I/O轉 16 本紙張尺度適用中國國家標準(CNS〉A4規格(210 X 297公釐) II Ί — I — — — — — — — · — I I I I I I ·11111111 (請先閱讀背面之注意事^填寫本頁) 經濟部智慧財產局員工消費合作社印製 487844 A7 ___ B7 五、發明說明Ur) 置102並未連接至上述四個最低序位位址線AO至A3上’ 所以數目FF00H至FF0FH都會顯示爲位址FF00H。 再次敘述以上所描述之目的地指標器,上述增加數値 之位址0到7將會全部對上述I/O裝置102顯示爲〇。 以上所描述的補償爲四個位元。此將會使得16個記憶: 體位址全部位於同一個位址上。因此,以上所描述的問題 是藉由實施將上述位址線304連接至上述位址匯流排104 上來克服,其中上述最低序位位址線304a是由上述最低序 位位址匯流排線A0開始補償的。 如同剛才所描述的,上述補償爲四個位元,並且藉此 允許8個資料字元可以被區塊轉移至相同的位址上。其他 的補償亦可以應用於此用途上。其中一個影響補償之數量 的因素是與上述暫存器相關位於需要之位址上的緩衝器的 大小。較佳的情形爲,補償的大小與相關之緩衝器的大小 相同。舉例而言,若上述緩衝器的大小爲四個字元,則上 述補償可以是兩個位元。此將允許,舉例而言,位址1至 3(0001b至0010b),其代表四個分離的位址,可以都被定址 於相同的一個位址上(意即,於此例中第三個位元値爲0)。 雖然補償的數量並不需要相等於上述可能被轉移之區塊之 大小的緩衝器的大小,但其對大部分的應用而言,可能最 有效的設定方式。 以上所描述之I/O裝置可以是任何合適之已知的裝置 ,或是最近發展之裝置,其能夠執行一連串的資料轉移至 一個單一的位址上。舉例而言,上述I/O裝置102可以是 '本紙張尺度適用中國國家標準(CNS)A4規格(210 X 297公釐) ---------------------訂---------線 (請先閱讀背面之注意事項再填寫本頁) 經濟部智慧財產局員工消費合作社印製 487844 A7 _ B7 五、發明說明(Μ ) 一個UART,一部數據機,一部磁碟驅動器,一個邏輯控 制器,或是一個網路介面。如以上所論及的,一個緩衝器 ,一個堆疊或是類似的資料結構,其與已經被定址於上述 I/O裝置102之暫存器相關者,皆可以應用於本發明中。 本發明可以適用於當資料是要於實質相同時間內由一 個單一位址轉移至另外兩個其他位址上的情形。每一個位 址可以是一個控制子系統。於許多情況中,上述控制子系 統輸出的時間會變得非常的重要,且可能會產生一些迫切 需要的要求〈使得每個控制子系統可幾乎於同一個時間內 產生出一個輸出。其中一個方法爲提供一個共同時脈給兩 個子系統,以使其操作同步化。但是,提供一個單一時脈 將會產生一個單一裝置故障,其可能中斷或是可能破壞上 述系統之操作。因此,於一個故障容許系統中增加一個共 同時脈並不是一個可以被接受的解決方案。 舉例說明,故障容許系統通常會使用獨立並且平行運 作之子系統,以確保當於其中一個控制子系統中發生故障 時,不會使得整個系統因此失去功用。上述每個控制子系 統的輸出會互相比較,用來偵測是否於其中一個子系統中 有故障之發生。如同於此技術領域中已知之技術,隨後會 啓動一個判斷程序或是表決程序,以選擇將會使用哪一個 子系統輸出於控制上述系統的其中一部份。舉例說明,上 述兩個子系統皆可能驅動一個單一的促動器(例如,一部 馬達)。 本發明的某些實施例可以解決上述這些問題的一部份 18 本紙張尺度適用中國國家標準(CNS)A4規格(210 X 297公釐) -------------------^---------^ (請先閱讀背面之注意事項再填寫本頁) , 經濟部智慧財產局員工消費合作社印製 487844 A7 _ B7 五、發明說明(ιΠ ) 或是全部,其藉由允許一個單一記憶體由上述微處理器同 時地轉移至兩個或多個控制子系統。於此所使用之控制子 系統名稱可以等同於先前所描述之任何普通的I/O裝置。 因此,爲了討論上之簡便性與連續性,以下所討論之上述 I/O裝置102會包括,但並未限制於,一個控制子系統。較 佳的情形爲上述I/O裝置102爲一個UART。 除此之外,依據本發明的另一個實施例,本發明允許 ,同時地轉移資料區塊至複數個I/O裝置,於其中所有的資 料區塊皆轉移;至相同的位址上。 現在參考圖4,一個能夠同時轉移資料至兩個1/〇裝 置,102與102’上之系統的示範性實施例將會於以下討論之 。上述I/O裝置的數量並不需要等於兩部,於一些應用中 可以多於兩部,其取決於需要之冗位數量。 於此實施例中,上述系統包括一個第一個I/O裝置102 ,一個第二個I/O裝置102’,以及一個微處理器1〇〇。上述 微處理器100藉由一條控制線108直接分別連接於上述第 一個I/O裝置102與第二個I/O裝置102’。上述微處理器 100連接至上述位址匯流排104之所有位址線上,並且可 以放置一個位址於上述位址匯流排104上。如圖中所顯示 的,上述兩個I/O裝置102與102f,皆連接至同一個相同 的位址線(A0至A6)。假設上述兩個I/O裝置102與102’ 具有相同的位址,因爲他們皆連接至上述位址匯流排104 上相同的位址線上,則兩個裝置可以同時地定址。 假設上述微處理器想要資訊轉移至上述第一個I/O裝 19 本紙張尺度適用中國國家標準(CNS)A4規格(210 X 297公爱) —,------------------訂---------線 (請先閱讀背面之注意事項再填寫本頁) 經濟部智慧財產局員工消費合作社印製 487844 A7 _ B7 五、發明說明((?) 置之輸入暫存器202中。此轉移可以以上詳細描述之方式 來完成。但是,於一個故障容許系統中,其通常需要上述 資訊可以備份。意即,上述資料必須要轉移至兩個獨立的 位址(裝置)上。一般而言,要完成上述的目的,上述微 處理器100首先將會轉移上述資料至上述第一個I/O裝置 ,然後再將相同的資料轉移至另一個不同的裝置上。此舉 需要更多的微處理器100的工作週期,因此而增加多餘的 工作量,並且降低上述微處理器100之處理速度。除此之 ,外,此種序列式轉移之方式並無法同時地提供上述資料至 兩個裝置中。 然而,依據本發明的其中一個觀點,因爲上述第一個 I/O裝置102與上述第二個I/O裝置102,皆連接於上述相同 之位址線(A0至A6)上,所以其可以同時地被定址。舉 例說明,於上述微處理器已經經由控制線104通知上述I/O 裝置102與102f其希望將資料轉移至裝置上之後上述微 處理器100將會放置一個位址0於上述位址匯流排104上 ,以將位於上述資料匯流排106上之資料導引至上述兩個 裝置的輸入暫存器上。意即,當然,假設上述兩個I/O裝 、置102與1〇2’皆具有位址〇被指派至其個別的輸入暫存器 上。以此方式,上述位於上述資料匯流排106上之資料會 同時地轉移至上述兩個I/O裝置1〇2與102'上。 如同顯示於圖4中,上述兩個第一個I/O裝置102與 第二個I/O裝置102’皆具有其藉由四個位元之補償個別連 接至上述位址匯流排106。此情形,如同以上之詳述,允 20 本紙張尺度適用中國國家標準(CNS)A4規格(210 X 297公餐) ------------------訂---------線 k請先閱讀背面之注意事項再填寫本頁ο 斗δ/844 A7
五、發明說明((?) 經濟部智慧財產局員工消費合作社印製 許有效地將資料區塊轉移至每一個裝置上。特別地是,因 爲上述兩個裝置皆由上述相同的控制線1〇8控制,且上述 兩個裝置皆直接地連接至上述相同的位址線上(A4至A6 )’所以資料之區塊轉移可以同時地於上述第一個I/O裝 置102與第二個ι/〇裝置1〇2,上實施。 於圖4中,上述兩個〗/〇裝置1〇2與1〇2’,連同上述 微處理器100,係連接至上述資料匯流排1〇6上。上述I/O 裝置102及102,與上述資料匯流排1〇6之兩個不同的示範 性連接,且$些優點與每個使用方式將會參考圖5與圖6 於以下討掄之。 圖5顯示上述第一個與第二個I/O裝置1〇2與102,兩 個裝置,個別地連接至上述資料匯流排1〇6相同的部份。 更特別的是,上述兩個裝置皆連接至上述資料匯流排106 上之較低序位資料線(D0至D7)。當以這種組態來安排 時’上述兩個I/O裝置102與102’將會接收到相同的資料 。如同圖中所顯示的,僅有上述資料匯流排1〇6之資料線 的一部份是連接於上述I/O裝置102與1〇2,上。然而,如 具有普通技術者將會容易地明瞭,根據應用的方式,上述 I/O裝置102與102’可以連接至上述所有的資料線,或是其 中的一部份。 如同顯示於圖5中,這樣的一個連接方式之情形的範 例爲於一個需要兩份所有儲存之資料的備份之系統中可能 會發生情形。藉由讓上述兩個I/O裝置1〇2與102’連接至 相同之資料線上,且因爲上述兩個裝置皆由一個共同控制 21 本紙張尺度適用中國國家標準(CNS)A4規格(210 X 297公釐) -------------------訂·--------i^w (請先閱讀背面之注意事項再填寫本頁) 487844 經濟部智慧財產局員工消費合作社印製 A7 B7 五、發明說明) 線108來控制’上述出現於上述資料匯流排106上之資料 可以同時地儲存於兩個位址上(上述1/0裝置102與102· )。此同步儲存允許上述資料之兩個備份的產生’且皆可 以相同地存取之。此舉有利於允許上述資料一個備份拷貝 之產生,而不需要額外花費將原始資料拷貝至一個備份檔 案上之時間。 另一個相同資料同步轉移之應用爲上述之故障容忍系 統。藉由轉移資料至兩個位址上’其中一個控制子系統之 故障將不會戰重地影響由此子系統所控制之設備的運作。 圖6顯示位於上述資料匯流排與上述第一個與第 二個I/O裝置102與102’之間個別之另一種方式的連接。 如圖6中所顯示的,上述第一個I/O設備1〇2連接於上述 較低序位資料線(D0至D7),而上述第二個I/O設備102' 則連接於上述較高序位資料線(D8至D15)。此允許兩個 不同的資料字兀可以利用一個單一轉移指令同時地轉移至 兩個不同的位址上。因此,對每一個連接至上述資料匯流 排,皆可由一個單一位址加以定址之上述I/O裝置’可以 同時地取得不同資料。 顯示於圖6中之組態允許,舉例而言,兩個相對之促 動器(例如,馬達)的同步控制。若上述I/O裝置102與 1021個別連接於,一個不同之促動器時(未顯示於圖中), 上述兩個促動器可以藉由上述微處理器轉移一個單一片段 或是單一區塊之資料來控制。 舉初說明,於一個使用馬達爲了要維持一個齒輪於一 22 表紙張尺度適用中國國家標準(cnS)A4規格(210 x 297公釐) ' " 一 —I--------------訂---------線-^1· (請先閱讀背面之注意事項再填寫本頁) 經濟部智慧財產局員工消費合作社印製 487844 A7 B7 五、發明說明( >丨) 個直立的位置,一個馬達可以應用於上述齒輪的兩邊以維 持上述齒輪直立的狀態。當上述齒輪開始往其中一邊傾斜 時,上述位於另一邊之馬達會被促動’以將上述齒輪帶回 直立的狀態。若一次僅有一個馬達(經由一個i/Q裝置) 可以接收有關其將會如何運作的資訊’上述齒輪可能會被 過度控制。亦即,一個馬達運作直到另一個馬達開始運作 。於此形態,上述齒輪將會擺動’因爲每個單獨的馬達之 連續運作之前後擺動所致。但是’若兩個馬達能夠同時地 接收資訊,叫問題可以加以減輕。舉例而言,當上述齒輪〜 藉由其中一個馬達帶至直立的位置時’另一個相對的馬達 將會於同一時間慢慢地開始啓動’以使得上述齒輪永遠不 會脫離直立之狀態。 同樣地,上述第一個與第二個I/O裝置102與102,個 別地可以接收到相同之資訊,且仍然可以圖6中所顯示的 方式連接於上述資料匯流排上。於此例中,上述微處理器 100 (未顯示於圖中)將僅會將相同的資料置於較低序位資 料線D0至D7,當其置於較高序位資料線D8至D15上 圖7爲一個流程圖,其詳細地描述一個利用本發明之 示範性實施例轉移資料之方法的一個實施例。於步驟702 ,一個位址會被放置於一條位址匯流排上。上述放置於上 述位址匯流排上之位址會被保持於匯流排上一段時間,使 其足夠讓上述資料可以由上述匯流排中讀出。於步驟704 中,一部份將要被轉移且位於上述資料區塊中之資料(意 即,一個資料字元)會被放置於上述資料匯流排上。步驟 23 本紙張尺度適用中國國家標準(CNS)A4規格(210 X 297公爱) —·------------------訂---------線 (請先閱讀背面之注意事項再填寫本頁) 經濟部智慧財產局員工消費合作社印製 487844 A7 __B7 五、發明說明(>>) 704將會於上述位址維持於上述位址匯流排上的相同時間 內發生。 於其中一個實施例中,兩個或多個資料區塊可以平行 地轉移。於此實施例中,每一個資料區塊的第一個部份可 以同時地放置於上述資料匯流排的部份區塊上,意即,上 述匯流排之上半部份與下半部份。如同以上所描述的,可 以使用一個直接記憶體位址控制器來將上述位址與資料置 於上述匯流排上。 一旦上雖資料放置於上述資料匯流排上時,於步驟 706,上述資料轉移至一個裝置(意即,一個資料儲存裝置 ),其具有一個用於接收上述資料之儲存元件。上述資料 可以由一個裝置或複數個裝置接收,如同以上所描述的。 於任何例子中,上述方法會繼續運作直至整個區塊已經如 同區塊708處所作之判斷而被轉移。於每一個經由圖7之 流程圖運作之序列,上述被放置於且保持於上述位址匯流 排上之位址會增加其數値。使用以上所描述之實施例,但 是,每一個於一個區塊中之資料字元之轉移會依序地儲存 於上述相同的儲存元件,儘管上述位址之增加。 以上已經描述了數個本發明之示範性實施例,其中一 些本發明的優點與操作特色,藉由描述上述實施例會越來 越明顯,但本發明之範疇並非限制於上述實施例。專精於 此領域者可以對上述實施例做任何的變動與改進,其他的 實施例亦可,只要其變動的範圍不脫離本發明之精神。舉 例而言,雖然位於I/O裝置之間的連接與不同的匯流排已 24 表紙張尺度適用中國國家標準(CNS)A4規格(210 X 297公釐)~" —----------1 --------訂--------- (請先閱讀背面之注意事項再填寫本頁) 487844 A7 B7 五、發明說明(/ 經於實施例中顯示爲直接之連接方式,不需要額外之電子 電路或是裝置來幫助上述之連接,然而,上述這些連接可 以有額外之電子電路或是裝置放置於上述匯流排之間與上 述任何一個I/O裝置之上。除此之外,上述位址匯流排與 資料匯流排的寬度,如同上述微處理器之位址空間〜般了 是可變的。此外,上述每個I/O裝置可掌控之資料字二 大小也是可變的。另外,上述控制線可以加以建_ 713的 ,即使兩個裝置具有相同的位址,資訊將僅可以被吏得 其中一個裝®上。因此,本發明的範疇限制於於以、栘窆 專利範圍所定義者,以及均等之範圍。本發明申讅卞令言靑 圍爲: 〜粵利麵 ----------------------訂·— (請先閱讀背面之注音?事項再填寫本頁) -------今 經濟部智慧財產局員工消費合作社印製 5 2 本紙張尺度適用中國國家標準(CNS)A4規格(210 x 297公釐)