新四季網

介接不同寬度總線的接口電路、系統及方法

2023-06-02 19:15:41

專利名稱:介接不同寬度總線的接口電路、系統及方法
技術領域:
本發明是關於在兩個具有不同寬度的總線間傳輸資料的接口電路與方法,尤其是關於接口電路(例如先進先出(FIFO)電路)以一具時間效率的方式在兩總線間暫時儲存及傳遞資料。
背景技術:
處理系統一般是於數個電子組件間傳輸資料。如眾所皆知,數據傳輸操作通常涉及多個內存組件透過數據總線以互相通訊。然而,資料所傳輸的接口經常用以連接兩寬度不同的一第一總線與一第二總線。在本發明中,一總線的「寬度」是指該總線一時間單位可傳輸的資料位數。通常,由於一較寬的總線是允許較多資料於一時間單位內傳輸,因此較寬的總線比一較窄的總線操作較快。
為調節一連接不同寬度的總線的接口上資料的傳輸,一先進先出(first-in,first-out;其後簡稱FIFO)內存裝置常用於此接口電路系統內。此FIFO內存裝置是暫時儲存來自較寬的總線的資料,然後以與較窄的總線相同的慢速提供資料予此較窄的總線。FIFO內存裝置一般可依兩種不同方式設計。第一種方式,FIFO內存裝置可設計成與寬總線同等寬度,使FIFO內存裝置可在一時脈周期內接收寬總線上所有資料。然而,此設計所伴隨的問題是,當寬總線上的資料僅有一部分是有效時,FIFO電路並無法得知此數據中那些字節是有效的。因此,此類的電路典型需要一額外「有效」位伴隨數據傳輸,用以指示每一字節有效或無效與否。並且,此FIFO電路更需要附加電路系統用以監控有效位而得以決定每一字節有效或無效。
於處理系統中較普遍的方式,FIFO內存裝置的第二種設計是提供不同寬度數據總線間的接口電路另一可行的解決方案。在此設計中,資料自寬總線一時間單位傳輸一字節,並且一時間單位讀出一字節到慢(窄)總線。此類系統的主要缺點是,於寬總線端操作的裝置將遭遇一瓶頸狀態。此連接至寬總線的裝置(例如一處理器、一直接內存存取(DMA)控制器或其它類型的數據傳輸裝置)需持續忙於以慢速提供資料至窄總線,因而整個數據傳輸過程中皆需保持在忙碌狀態。
請參照圖1,其為介於不同寬度的總線間一傳統接口電路中的一FIFO電路。具體而言,接口電路12是於一處理器數據總線14與一外圍總線16間傳輸資料。一處理器18是可由寬處理器數據總線14高速存取資料。此處理器18包含一內部電路系統20,其亦為接口電路12的一部分。在一寫入程序期間,該內部電路系統20由一中間總線22提供資料至FIFO電路10與外圍總線16上的一裝置(未繪出)通訊,其中中間總線22是具有與窄外圍總線16相同的寬度。受限於FIFO電路10與窄外圍總線16,處理器18的內部電路系統20僅能以窄總線16的慢速率提供資料給FIFO電路10,因此處理器18持續忙於數據傳輸而無法執行其它處理任務。就此而言,處理器18的速度由於受限於慢總線16,因此在這段資料轉換期間將無法發揮其最大效能。
圖1所示的FIFO電路10是包含一內存數組24、一寫入計數器26以及一讀取計數器28。內存數組24是有一字節的寬度用以一次儲存一字節,且可有任何數目的地址深度。內存數組24可視為一FIFO裝置,用以儲存與此數組地址數量相等的字節資料。然後資料是依相同的順序讀出。
為請求一寫入程序,處理器18送出一「資料寫入」信號給寫入計數器26表示一寫入請求。為響應此「資料寫入」信號,寫入計數器26是增加一內部值,代表一指向內存數組24內其中一地址的指針。寫入計數器26依據指針數目所指的內存數組24下一個可存取的內存地址,以指示下一字節將儲存於何處。
其後,一連接在外圍總線16上的外圍裝置指示其何時準備好接收儲存於內存數組24內的資料。此外圍裝置送出一「資料讀取」信號由讀取計數器28所接收。為響應此「資料讀取」信號,讀取計數器28將另一指針值加一以指向內存數組24內的下一內存地址,用以讀取此內存地址的內容。然後內存數組24一次傳輸一資料字節至外圍總線16。
請參照圖2,其為使用圖1所示的傳統接口電路12傳輸8位元組的一範例時序圖。例如在一第一時脈周期,處理器18將一第一字節「字節0」經由其內部電路系統20寫入內存數組24;一時脈周期的後,處理器18將一第二字節「字節1」寫入內存數組24;依此類推,每一時脈周期寫入一字節直到所有字節都寫入後完成。內存數組24可一次一個字節,儲存任何寫入的數據。自資料開始從處理器18讀出並寫入內存數組24後一段時間,可指示讀取記數器28自內存數組24存取資料以寫入至外圍總線16。從圖2的時序圖可知處理器18在此8位元組的數據傳輸至內存24的整個過程中持續忙碌。
由於上述先前技術的缺點,眾所期望的乃是處理系統的一改良接口電路。例如於一快速的寬總線與一緩慢的窄總線間的數據傳輸過程,提供一裝置有助於一接口電路使處理器不必受其限制或強制等待。

發明內容
本發明在此揭露接口電路及方法用以在不同寬度的總線間傳輸資料,其中這些方法可使處理器速度較快。依本發明的一接口電路是包含一第一控制邏輯電路與一第二控制邏輯電路。此第一控制邏輯電路是用以提供一選擇信號至複數個分配裝置。每一分配裝置是控制一個字節暫存器與其在一寬總線上一對應的字節位置間的通訊。此第二控制邏輯電路是用以提供一選擇信號至另一分配裝置,此另一分配裝置是控制該等複數個字節暫存器與一窄總線間的通訊,其中此窄總線相較於寬總線是具有一較少字節的寬度。
詳言之,此第一控制邏輯電路是可從一位於該寬總線上的裝置接收一第一信號與一第二信號,其中此第一信號是表示一請求信號以存取該等字節暫存器內的資料,此第二信號是表示欲存取資料的字節數量。此第一控制邏輯電路亦可包含一計數器,其中此計數器所增加的數量等於此第二信號所表示的數量。此接口電路更可使此第二控制邏輯電路接收一來自位於此第二總線上一裝置的信號,此信號是表示一請求信號以存取在該等字節暫存器內的資料。舉例,此第二控制邏輯電路可為一計數器。
上述接口電路還包含一狀態檢查模塊用以接收來自此第一控制邏輯電路的一第一計數值與來自此第二控制邏輯電路的一第二計數值。為響應此第一計數值與此第二計數值,該狀態檢查模塊是各提供一停止信號或一繼續信號至此第一控制邏輯電路與此第二控制邏輯電路。
本發明亦揭露用以傳輸複數個字節的資料的方法,此資料在單一時脈周期內於一第一總線與數個暫存器間傳輸,其中此暫存器的數目是相對於資料的字節數目;接著傳輸此複數個字節的資料於該等暫存器與一第二總線間,一時間周期傳輸一字節。此傳輸步驟不必依此特定順序進行,依據兩總線中較寬者為讀取或寫入資料,可逆向實施。


為進一步說明本發明的具體技術內容,以下結合實施例及附圖詳細說明如後,其中圖1是在不同寬度總線間的一傳統接口電路的概略方塊圖;圖2是圖1所示的處理器內含組件的時序圖;圖3是在不同寬度總線間的一接口電路的一第一實施例的概略方塊圖;圖4是一接口電路的一第二實施例的概略方塊圖;圖5是一接口電路的一第三實施例的概略方塊圖;圖6是一接口電路的一第四實施例的概略方塊圖;以及圖7是圖3-圖6的接口電路的一處理器信號活動的時序圖。
具體實施例方式
本發明是揭露接口連接(interface)不同寬度的總線的電路,以及在該等總線間進行數據傳輸的方法,以克服先前技藝的缺失。此改良的接口電路可允許於一寬總線上操作的裝置可以此寬總線的速度傳輸資料,而非一窄總線的速度。在此所描述的範例中,除非另有指明,否則一「寬總線」是為一具有32位或4位元組寬度的總線;而一「窄總線」是為一具有8位或1位元組寬度的總線。然而,該等指定的寬度是僅用於圖解說明的參考,並非於任何方面意欲限制本發明於此觀點。反的,該等總線可具有任何適當的寬度,並且較佳的寬度是一字節的倍數。並且,此寬總線與窄總線可為任何類型的信號傳輸信道或是無線通訊信道用以傳送信號、資料或指令等。舉一範例,此寬總線可作為一處理器數據總線,此窄總線是可作為一外圍總線用與一個或多個外圍裝置通訊。
本發明的實施例亦可適用於如先進先出(first-in,first-out;其後簡稱FIFO)裝置,此裝置所儲存的資料是以相同順序讀入與讀出。然而,本發明是包含數個獨立暫存器,各獨立暫存器可儲存與讀出一字節,以取代先前技術所用的儲存維度為一字節寬與一數目的地址深度的內存數組。於後敘述的實施例不僅維持字節數據傳輸的適當順序,並可藉由僅將有效字節暫時儲存於該等暫存器內簡化傳輸處理。
本發明是包含接口電路的實施例,該等接口電路是允許位於寬總線上的一處理器、一直接內存存取(DMA)控制器或其它適當的數據傳輸裝置,於單一時脈周期內存取(讀取或寫入)1-4位元組的數據。依此方式,處理器或數據傳輸裝置將不需等待一內存數組一次儲存或讀出一字節。反之,該等實施例的處理器可快速存取資料,而後接續執行其它功能。根據本發明所揭示的接口電路能以快速總線的速度與快速總線傳輸資料,並且能以慢速總線的速度與慢速總線傳輸資料。緣是可知相較於先前技術的處理器,本發明中位於快速總線上的處理器具有較少的延遲,此乃因在數據傳輸過程中處理器的速度是由快速總線的速度所決定而非慢速總線。
本發明所揭示的電路是允許位於一快速總線上的一裝置(例如一處理器)使用一「爆發寫入(burst writing)」技術,將資料寫入位於一慢速總線上的一裝置。另揭示允許一快速總線上的一裝置(例如一處理器)使用一「爆發讀取(burst reading)」技術,自慢速總線上的一裝置讀取資料的電路。運用此類技術的方法亦揭示於本發明中。參照圖3與圖4,下列敘述一以爆發寫入技術操作的接口電路,其中位在一寬數據總線上的一裝置將資料寫入位在一窄總線上的另一裝置。在爆發讀取時,位於此慢速總線上的裝置是可於數個時脈周期(例如四個時脈周期)內將資料寫入暫存器,然後位於快速總線上的裝置可於僅僅單一時脈周期內讀取所有的四字節。圖5與圖6則關於一以爆發讀取技術操作的接口電路。
由於僅寫入或讀取寬總線的一字節毫無效率可言,因此本發明是提供系統及方法使處理器時間的運用更有效率。處理器的有效率使用寬總線是包含在每一時脈周期使用所有可用的寬度。另一寬總線的有效率使用是包含在背對背(back-to-back)時脈周期內使用此總線所有寬度讀取或寫入,如圖7所示。此種使用寬總線所有寬度在背對背時脈周期內讀取或寫入是稱為「爆發讀取」或「爆發寫入」。從一處理器/DMA的觀點,爆發讀取或寫入的使用(將在下列詳細解說)提供一非常有效率填滿(filling)或倒空(emptying)字節暫存器的方法。
請參照圖3,其為一接口電路30的實施例的概略方塊圖,此接口電路30是自一寬總線32寫入資料至一窄總線34。顯而易見地此接口電路30亦可用於自寬總線32上的一裝置讀取資料至窄總線34上的另一裝置。不論是上述那一種情況,資料是從寬總線32傳輸至窄總線34。
此接口電路30的實施例是包含一寫入控制邏輯電路36、數個字節多工器38與字節暫存器40、一暫存多工器42、一讀取計數器44以及一狀態檢查模塊46。寫入控制邏輯電路36、字節多工器38、暫存多工器42、讀取計數器44以及狀態檢查模塊46可配置於硬體及/或軟體內。如果配置於硬體內,上述這些組件可包含任何適當的邏輯組件組合以完成本發明所描述的功能。如果配置於軟體內,上述這些組件可包含任何適當的指令處理模塊或具有指令的程序代碼以完成本發明所指定的功能,其中上述的指令處理模塊及/或具有指令的程序代碼可儲存在一計算機或其它可由處理裝置讀取的媒體上。
寫入控制邏輯電路36是包含兩輸入,其中第一輸入是用以接收一「資料寫入」信號以表示請求一寫入程序;第二輸入是用以接收一「資料大小」信號,此「資料大小」信號是表示此寫入程序期間有多少字節將被寫入。在此實施例中,資料大小信號是為一個二位信號,其二進位值00、01、10或11分別代表一字節、二字節、三字節與四字節的數據大小。若為其它寬總線32大小不同於本實施例中所示的四字節總線32的實施例,其資料大小信號的位數可依所需表示的字節數目,由一個字節至一總線能處理的最大字節數目。
如上所述,寬總線32與窄總線34依特定設計可具有任何數目字節的寬度,但其較佳數目是一字節的倍數。在此範例中,寬總線32具有四字節的寬度,而窄總線34具有一字節的寬度。接口電路30可依據每一總線的字節數目而修改,例如若寬總線32具有四字節的寬度,接口電路30的較佳設計為包含以四為倍數的數目的字節暫存器40和其對應的字節多工器38。依此方式,寬總線32可於一時序周期寫入四字節至一組字節暫存器40。若有八個字節暫存器40,四字節的爆發寫入可於每兩連續時脈周期執行一次。若有12個字節暫存器40,爆發寫入於每三個連續時脈周期執行一次,依此類推。就此點而言,接口電路30的設計是可能依此或其它指定速度的規格而修改。
如另一範例,自一具有三字節寬度的寬總線32傳輸資料至一具有一字節寬度的總線34。如果一設計規格要求每一次爆發是寫入12位元組,則設計者可修改接口電路30的設計為包含12個字節暫存器40以符合此規格。此配置將允許接口電路30在四個連續時脈周期內接收所有12位元組,其中三個字節暫存器40在一第一時脈信號接收來自此三字節總線的三個字節,下一組的三個字節暫存器40在下一時脈是儲存來自此總線的下一組三個字節,依此類推。
雖然接口電路30是可包含任何數量的字節暫存器40,但是電路設計者需考量的另一因素是晶片可用的面積。如果可用面積較少,當然可使用的字節暫存器較少。另一可能修改接口電路30設計的因素是電路的整體大小,特別是使用數量可觀的字節暫存器40時。若尺寸較大,控制邏輯電路38與多工器42間的傳輸路徑長度將可能增加,因而導致在控制邏輯電路與對應的多工器間傳輸的控制信號產生非預期延遲。緣是,設計者寧可儘可能維持相對較小的整體尺寸。
再回到圖3,寫入控制邏輯電路36是包含一寫入計數器48以作為一對應的字節暫存器40的一「指針」。然而,不同於先前技術中是用於指向一內存數組的一地址,寫入計數器48基本上指向下一字節可寫入的下一可用字節暫存器40。為響應資料寫入信號與資料大小信號,寫入計數器48是增加一與資料大小相等的數目至一內部值。例如如果數據大小是三字節(數據大小信號是二進位10),則計數器增加三。如果「Z地址」字節暫存器40Z是持有最後寫入的資料字節,則下一可用字節暫存器40A將接收下一個寫入的字節,而字節暫存器40B與40C接收再下兩個字節。
寫入計數器48其一最大計數相等於字節暫存器40的數量。假設接口電路30具有八個字節暫存器40W、40X、40Y、40Z、40A、40B、40C與40D,當寫入計數器48達到指定最後暫存器(例如40D)的最大計數時,其將於下一計數重設為零,以指向第一暫存器(例如40W)。依據寫入控制邏輯電路36的邏輯運作,數據寫入信號與數據大小信號是用以控制字節多工器38,藉此允許在寬總線32上的資料字節加載適當的字節暫存器40內。例如假設有八個字節暫存器40W、40X、40Y、40Z、40A、40B、40C、40D與八個相對應的字節多工器38W、38X、38Y、38Z、38A、38B、38C、38D,並且假設字節暫存器40已填滿至第五暫存器40A,則寫入計數器48將含有一值以顯示第六暫存器40B將是下一字節所欲寫入的暫存器。再者,假設處理器請求寫入四個字節(資料寫入信號是致能且數據大小信號是二進位11),則寫入控制邏輯電路36致能第六多工器38B以將第一字節「字節0」從寬總線32寫入至第六字節暫存器40B;其後依序致能第七多工器38C以將第二字節「字節1」寫入至第七字節暫存器40C;致能第八多工器38D以將第三字節「字節2」寫入至第八字節暫存器40D;以及致能第一多工器38W以將第四字節「字節3」寫入至第一字節暫存器40W。
當資料加載該等字節暫存器40其中至少一個字節暫存器時,窄總線34上的一裝置(未繪出)可請求開始從該等字節暫存器40讀取資料。讀取計數器44是包含指針值用以指向下一個可讀取資料的字節暫存器40。讀取計數器44送出一指針值的選擇信號給暫存器多工器42以選擇相對的字節暫存器40。然後暫存器多工器42自所選取的字節暫存器40傳輸資料字節至窄總線34。此程序在每一寫入至窄總線34的動作重複,一次一個字節。
寫入控制邏輯電路36與讀取控制邏輯電路44兩者各包含一最大限制數,而此最大限制數是相等於該等字節暫存器40的數目。當達到此最大限制數時,控制邏輯電路是重設為零以指向第一暫存器。除了此最大限制數之外,寫入控制邏輯電路36與讀取控制邏輯電路44兩者亦各包含一額外的「狀態位」,此狀態位可為一位,且於達到最大限制數時被觸發,或置於指針計數的最高有效位。一「讀取計數值」與狀態位一起傳送至狀態檢查模塊46,此狀態檢查模塊46亦接收「寫入計數值」和其狀態位。如果寫入計數值內所有的位與讀取計數值內所有的位相同,則該等狀態位可表示下列兩種情況其中之一。第一種情況,當該等狀態位相同時,則狀態檢查模塊46是可判定讀取控制邏輯電路44已經從該等字節暫存器40讀取所有的字節,並且是與寫入控制邏輯電路36連接。在此情況下,狀態檢查模塊46指示讀取控制邏輯電路44停止讀取。第二種情況,當該等狀態位不同時,則狀態檢查模塊46是可判定寫入控制邏輯電路36已經達到超過讀取控制邏輯電路44的位置,且未覆蓋寫入尚未被讀取控制邏輯電路44所讀取的數據的最遠位置。在此情況下,狀態檢查模塊46通知寫入控制邏輯電路36不可再寫入數據,直到讀取控制邏輯電路36能從該等填滿的暫存器40讀取資料以空出位置供更多數據寫入。
一處理器或其它合適的數據傳輸裝置加載字節到寬總線32上,使第一字節是在字節0位置內;第二字節(如果存在)是在字節1位置內;第三字節(如果存在)是在字節2位置內;以及第四字節(如果存在)是在字節3位置內。處理器亦提供資料寫入信號與資料大小信號。數據大小信號是表示寬總線32的字節0至字節3中何種為有效有效字節。通常處理器以一預設順序,從第一字節放在字節0的位置開始將數據置入寬總線32上。如果數據大於一字節寬度,則隨後的字節亦將依序放置。對於兩字節寬度數據,此數據將被放置在字節0與字節1;三個字節則將被放置在字節0、字節1以及字節2;依此類推。在一後續的寫入中,處理器將再次從第一字節放在字節0的位置內開始。然而,在另一實施例中,如果處理器沒有依以上所述的預設順序將資料輸出,則接口電路30將包含一外加邏輯電路以確認某特定順序。
請參照圖4,其為自一寬總線52傳輸資料至一窄總線54的一接口電路50另一較佳實施例。資料的傳輸是可以是從寬總線52到窄總線54的一爆發寫入操作,或是從寬總線52讀取資料至窄總線54的一讀取操作。在此強調,資料是從寬總線52傳輸至窄總線54。在本實施例中,接口電路50包含一寫入控制邏輯電路56以及複數個數據分配模塊58,每一數據分配模塊58包含複數個暫存器選擇模塊60、複數個資料大小選擇模塊62、複數個與門(AND gate)模塊64以及一或門(OR gate)模塊66。接口電路50更包含複數個字節暫存器68、一暫存器多工器70以及一讀取計數器72。接口電路50包含複數個資料分配模塊58對應至每一個字節暫存器68。資料分配模塊58是可配置於硬體及/或軟體內,用以將寬總線52的有效字節以一預設順序儲存到該等字節暫存器68內。
每一數據分配模塊58的暫存器選擇模塊60是用以判定來自寫入控制邏輯電路56的計數值。例如如果計數值是等於Z,則此「等於Z」的模塊是將輸出一高準位致能信號至對應的與門模塊64。在所示的實施例中,一第一等於Z的模塊是用於數據分配模塊58Z的第一與門模塊64Z,一第二等於Z的模塊是用於數據分配模塊58A的第二與門模塊64A。如果資料分配模塊58B與58C亦包含於接口電路50的內,則其暫存器選擇模塊60的第三與第四位置亦包含等於Z的模塊,依此類推。
接著,各數據大小選擇模塊62依據自數據大小信號得知的資料大小提供輸出。如果僅有一字節置於寬總線52上且資料大小為一時,則僅有大於0的模塊將提供一高準位致能信號給與門模塊64中的第一個與門。如果在寬總線52上是三個有效字節,則大於0、大於1、大於2的模塊將致能。在上述的範例中,假設下一可用暫存器是具有「Z地址」的字節暫存器68Z,且假設資料大小是兩字節時,則僅有大於0的模塊與大於1的模塊將致能。在圖4所示的第一個數據分配模塊58Z中,與門模塊64Z的第一個與門自寬總線52提供一第一字節「字節0」的輸出至或門模塊66Z。這是因為僅有該等於Z模塊與大於0模塊是此位選擇模塊58Z中。在圖4所示的第二個數據分配模塊58A中,由於僅有等於Z的模塊與大於1的模塊是此與門模塊64A上提供致能信號者,因此與門模塊64A的第二個與門自寬總線52提供一第二字節「字節1」的輸出至或門模塊66A。
各字節暫存器68是自寬總線52經由相對的數據分配模塊58的或門模塊66接收適當的字節。字節暫存器68儲存與輸出資料至暫存器多工器70,而暫存器多工器70是根據讀取計數器72的選擇信號獲知已讀取的資料以選擇下一個暫存器。讀取計數器72亦包含一邏輯電路用以接收資料讀取信號以指示何時資料可讀取至窄總線54。
請參照圖5,其為於一窄總線76與一寬總線78間的一接口電路74另一較佳實施例。在此範例中,資料是以一爆發讀取程序從窄總線76傳輸至寬總線78。此接口電路74包含一寫入計數器80、一暫存器解多工器82、複數個字節暫存器84、複數個總線解多工器86以及一讀取控制邏輯電路88。寫入計數器80自一個於窄總線76上操作的裝置接收一資料寫入信號,並且提供一計數信號至暫存器解多工器82,以將資料的字節自窄總線76寫入下一個可用的字節暫存器84。當寬總線78上的處理器或其它類型的數據傳輸裝置送出一資料讀取信號伴隨一數據大小信號至讀取控制邏輯電路88時,讀取控制邏輯電路88是從適當的字節暫存器84選取最多四個字節(假設寬總線78寬度是四個字節)。讀取控制邏輯電路88根據一依資料讀取信號與資料大小信號增加的讀取計數值(如先前所描述),提供選擇信號給適當的總線解多工器86。這些選擇信號是一起送至總線解多工器86,使得所選取的字節可由總線解多工器86置於寬總線78上的適當字節位置,如第一字節放置在字節0的位置、第二字節放置在字節1的位置等方式。處理器接著可在一時脈周期內從寬總線78讀取該等字節(一次最多四個)。如果接口電路74具有足夠的字節暫存器84(例如一個四字節總線78則至少八個字節暫存器84),則處理器可在接續的下一時脈周期由選擇適當的總線解多工器86,自字節暫存器84讀取一第二組的四字節。
請參照圖6,其為用於接口連接(interfacing)一窄總線92與一寬總線94的一接口電路90另一較佳實施例的概略方塊圖。在本實施例中,資料是從窄總線92傳輸至寬總線94,其中窄總線92上的一裝置將資料寫入寬總線94上的一裝置;或由寬總線94上的一裝置自窄總線92上的一裝置讀取資料。接口電路90是包含一寫入計數器96、一解多工器98、複數個字節暫存器100、複數個數據分配模塊102以及一讀取控制邏輯電路104。寫入計數器96、該等數據分配模塊102以及讀取控制邏輯電路104可配置於硬體及/或軟體內。各數據分配模塊102是包含複數個總線位置選擇模塊106、複數個數據大小選擇模塊108以及複數個與門模塊110。
寫入計數器96是接收一資料寫入信號,此資料寫入信號表示一自窄總線92寫入資料的請求信號。寫入計數器96增加方式依據上述的相關組件,並且選擇資料將寫入的下一可用字節暫存器100。讀取控制邏輯電路104自寬總線94上的一裝置接收一資料讀取信號與一資料大小信號。讀取控制邏輯電路104輸出一值(例如一指針值)作為響應,該值根據欲讀取的資料指示下一個可用的字節暫存器100。該值受到總線位置選擇模塊106偵測,以判定來自字節暫存器100何種的哪些字節放置在寬總線94上的何處位置。舉例如果讀取控制邏輯電路104輸出Z值,表示具有Z地址的字節暫存器是下一可用的暫存器,則在各資料分配模塊102內等於Z的模塊是提供一邏輯高準位輸出至對應的與門模塊100。並且,由於數據大小至少為一,因此數據大小選擇模塊108中至少有大於0的模塊亦提供一邏輯高準位輸出至與門模塊110。在此範例中,Z地址字節暫存器100Z是經由此與門模塊100Z的第一個與門提供所儲存的數據字節至寬總線94的字節0。同樣依此範例,如果數據大小是至少為二,則等於Z的模塊與大於1的模塊將提供高準位信號到數據分配模塊102A的與門模塊110A的第二個與門,而得以將A地址字節暫存器100A的資料字節置於寬總線94的第二字節位置「字節1」。
所應注意的是,圖4-圖6的實施例亦可包含圖3所示的狀態檢查模塊46。在這些實施例中,狀態檢查模塊46的操作方式與圖3所示相近。狀態檢查模塊46自讀取計數器或讀取控制邏輯電路接收讀取計數值,並且從寫入計數器或寫入控制邏輯電路接收寫入計數值;以及判定字節暫存器是否全部已滿、部份已滿或全部未滿。當字節暫存器全部已滿時,寫入裝置受命令停止寫入而讀取裝置是致能以繼續讀取。當全部未滿時,讀取裝置受命令停止讀取而寫入裝置是致能以繼續寫入。當部分字節暫存器為滿時,讀取裝置與寫入裝置可繼續讀取與寫入。如果讀取裝置從空白的暫存器讀取或寫入裝置寫入已滿的暫存器時,則狀態檢查模塊46亦可送出一錯誤信號以表示錯誤狀態。
請參照圖7,其為圖3-圖6的實施例信號活動之一的範例時序圖。無論於讀取或寫入過程,皆允許處理器自接口電路中相對的數個暫存器寫入或讀取數個字節。在圖3與圖4示意一個自一寬總線寫入資料至一窄總線的接口電路實施例,其中處理器可在兩時脈周期內將最多至八個字節寫入接口電路的至少八個暫存器。在圖5與圖6所示的自一窄總線寫入資料至一寬總線的接口電路實施例中,在慢速端上的至少八個暫存器可儲存最多至八個字節,並且在兩個時脈周期內每次寫入四個字節至處理器。在上述任一情況下,處理器於數據處理過程中僅有兩個時脈周期需致能動作,然而在先前技藝中則必須花費處理器八個時脈周期以存取資料。若處理器可操作在寬總線的高速度,處理器便可將注意力指向其它處理步驟,並且能更有效率及更快速運作。
顯然地,依照上面實施例中的描述,本發明可能有許多的修正與差異。因此需要在其附加的權利要求項的範圍內加以理解,除了上述詳細的描述外,本發明還可以廣泛地在其它的實施例中施行。上述僅為本發明的較佳實施例而已,並非用以限定本發明的申請專利範圍;凡其它未脫離本發明所揭示的精神下所完成的等效改變或修飾,均應包含在下述申請專利範圍內。
權利要求
1.一種介接不同寬度總線的接口電路,於不同寬度的總線間傳輸資料,其特徵在於,該接口電路包含複數個字節暫存器;一第一控制邏輯電路,用以提供一第一選擇信號至複數個第一分配裝置,每一個該等第一分配裝置是控制該等字節暫存器其中之一與一第一總線上複數個字節位置其中之一之間的通訊;以及一第二控制邏輯電路,用以提供一第二選擇信號至一第二分配裝置,該第二分配裝置是控制該等字節暫存器其中之一與一第二總線之間的通訊,該第二總線相較於該第一總線是具有一較少數量字節的寬度。
2.如權利要求1項所述的介接不同寬度總線的接口電路,其特徵在於,其中該第一控制邏輯電路是自一於該第一總線上操作的裝置接收一第一信號與一第二信號,該第一信號是表示一請求信號以存取該等字節暫存器內的資料,該第二信號是表示被存取資料的字節數量。
3.如權利要求2項所述的介接不同寬度總線的接口電路,其特徵在於,其中該第一控制邏輯電路是包含一計數器,該計數器是具有一計數信號,該計數信號表示何種字節暫存器與該第一總線上何種字節位置通信,並依該第二信號表示的量累加。
4.如權利要求1項所述的介接不同寬度總線的接口電路,其特徵在於,其中該第二控制邏輯電路是自該第二總線上的一裝置接收一信號,該信號是表示一請求信號以存取該等字節暫存器內的資料,且該第二控制邏輯電路是為一具有一計數信號的計數器,該計數信號是表示何種字節暫存器與該第二總線通信。
5.如權利要求1項所述的介接不同寬度總線的接口電路,其特徵在於,其中還包含一狀態檢查模塊,用以自該第一控制邏輯電路接收一第一計數值以及自該第二控制邏輯電路接收一第二計數值,其中,為響應該第一計數值與該第二計數值,該狀態檢查模塊是提供一停止信號或一繼續信號至各個該第一控制邏輯電路與該第二控制邏輯電路。
6.如權利要求5項所述的介接不同寬度總線的接口電路,其特徵在於,其中該第一控制邏輯電路與該第二控制邏輯電路中一者是包含一寫入控制邏輯電路,該第一控制邏輯電路與該第二控制邏輯電路的另一種是包含一讀取控制邏輯電路。
7.如權利要求6項所述的介接不同寬度總線的接口電路,其特徵在於,其中該讀取控制電路與該狀態檢查模塊的運作方式可為下列模式其中之一當該讀取控制邏輯電路已讀取由該寫入控制邏輯電路寫入該等字節暫存器內的所有字節時,該狀態檢查模塊是提供該停止信號至該讀取控制邏輯電路;當該讀取控制邏輯電路尚未完全讀取該寫入控制邏輯電路寫入該等字節暫存器內的所有字節時,該狀態檢查模塊提供該繼續信號至該讀取控制邏輯電路;當該寫入控制邏輯電路已寫入該等字節暫存器的數量,超過該讀取控制邏輯電路所讀取的該等字節暫存器但尚未覆蓋寫入資料時,該狀態檢查模塊是提供該停止信號至該寫入控制邏輯電路;以及當該寫入控制邏輯電路已寫入該等字節暫存器的數量,超過該讀取控制邏輯電路所讀取的該等字節暫存器但尚未覆蓋寫入資料時,該狀態檢查模塊是提供該停止信號至該寫入控制邏輯電路。
8.如權利要求1項所述的介接不同寬度總線的接口電路,其特徵在於,其中各個該第一分配裝置是為一第一多工器用以將資料自該第一總線的該等字節位置其中之一寫入對應的該字節暫存器,該字節位置是依據該第一選擇信號所選取;該第二分配裝置是為一第二多工器用以將資料自該等字節暫存器其中之一寫入該第二總線,該字節暫存器是依據該第二選擇信號所選取。
9.如權利要求1項所述的介接不同寬度總線的接口電路,其特徵在於,其中該第二分配裝置是為一第二解多工器用以將資料自該第二總線寫入該等字節暫存器其中之一,該字節暫存器是依據該第二選擇信號所選取;每一該第一分配裝置是為一第一解多工器用以將資料自對應的該字節暫存器寫入該第一總線的該等字節位置其中之一,該字節位置是依據該第一選擇信號所選取。
10.如權利要求1項所述的介接不同寬度總線的接口電路,其特徵在於,其中各個該第一分配裝置是包含複數個暫存器選擇模塊,複數個數據大小選擇模塊,複數個與門模塊,以及一或門模塊;當一對應的暫存器選擇模塊與對應的資料大小選擇模塊提供致能信號至該等與門模塊之一時,該與門模塊是用以自該第一總線上的一對應的字節位置傳輸數據至該或門模塊,該或門模塊是用以傳輸該數據至一對應的字節暫存器。
11.如權利要求1項所述的介接不同寬度總線的接口電路,其特徵在於,其中各個該第一分配裝置是包含複數個總線位置選擇模塊,複數個數據大小選擇模塊,以及複數個與門模塊;當一對應的總線位置選擇模塊與一對應的數據大小選擇模塊提供致能信號至該等與門模塊之一時,該與門模塊是用以自一對應的字節暫存器的至該第一總線上該等字節位置其中的一傳輸數據。
12.一種介接不同寬度總線的方法,用以接口連接一第一總線與一第二總線,其特徵在於,該方法包含在一時脈周期內,於一第一總線與一相對數量暫存器間傳輸複數個字節資料;以及於一第二總線與該等暫存器間一時脈周期傳輸一字節的該等字節數據;其中,該第一總線較該第二總線具有一較大的寬度。
13.如權利要求12項所述介接不同寬度總線的方法,其特徵在於,其中在該第一總線與該等暫存器間傳輸資料還包含接收一資料寫入信號與一資料大小信號;處理該資料寫入信號與該資料大小信號以提供選擇信號;以及依據該等選擇信號其中之一多任務處理自該第一總線上的複數個地址的資料字節至各個該等暫存器。
14.如權利要求13項所述介接不同寬度總線的方法,其特徵在於,其中接收該資料寫入信號與該資料大小信號是包含自與該第一總線通訊的第一裝置接收該等信號;該資料寫入信號是表示該第一裝置的一請求信號以寫入資料至一數量的該等暫存器,該資料大小信號是表示該第一總線上何種字節是有效。
15.如權利要求14項所述介接不同寬度總線的方法,其特徵在於,其中在該第一總線與該等暫存器間傳輸資料還包含接收一資料讀取信號與一資料大小信號;處理該資料讀取信號與該資料大小信號以提供選擇信號;以及依據該等選擇信號其中的一解多任務處理自各個該等暫存器的資料至該第一總線上的複數個位置其中之一。
16.如權利要求15項所述介接不同寬度總線的方法,其特徵在於,其中接收該資料讀取信號與該資料大小信號是包含自與該第一總線通訊的一第一裝置接收該等信號;該資料讀取信號是表示該第一裝置的一請求信號以自一數量的該等暫存器讀取資料,該資料大小信號是表示該等暫存器何種字節是有效。
17.如權利要求12項所述介接不同寬度總線的方法,其特徵在於,其中在該第二總線與該等暫存器間傳輸資料還包含接收一資料讀取信號;處理該資料讀取信號以提供一選擇信號;以及依據該選擇信號多任務處理該等暫存器的資料字節至該第二總線。
18.如權利要求17項所述介接不同寬度總線的方法,其特徵在於,其中接收該資料讀取信號是包含自與該第二總線通信的一第二裝置接收該資料讀取信號;該資料讀取信號是表示該第二裝置的一請求信號以自一數量的該等暫存器讀取資料。
19.如權利要求12項所述介接不同寬度總線的方法,其特徵在於,其中在該第二總線與該等暫存器間傳輸資料是更包含接收一資料寫入信號;處理該資料寫入信號以提供一選擇信號;以及依據該選擇信號解多任務處理資料自該第二總線至該等暫存器其中之一。
20.如權利要求19項所述介接不同寬度總線的方法,其特徵在於,其中接收該資料寫入信號是包含自與該第二總線通信的一第二裝置接收該資料寫入信號;該資料寫入信號是表示該第二裝置的一請求信號以將資料寫入至該等暫存器其中之一。
全文摘要
本發明是揭露在不同寬度總線間傳遞資料的接口電路與方法。上述接口電路是包含一第一控制邏輯電路用以提供一選擇信號至複數個第一分配裝置。各該等第一分配裝置是分別控制其對應的一字節暫存器和其對應至一第一總線上的一字節位置兩者間的通訊。上述接口電路還包含一第二控制邏輯電路用以提供一選擇信號至一第二分配裝置。此第二分配裝置是控制該等字節暫存器與一第二總線間的通訊,其中第二總線相較於第一總線具有一較少字節的寬度。
文檔編號G06F13/38GK1825296SQ20061006809
公開日2006年8月30日 申請日期2006年3月27日 優先權日2005年3月25日
發明者大衛鮑德魯 申請人:威盛電子股份有限公司

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀