国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      用于實時信號處理和更新的微處理器技術的制作方法

      文檔序號:6594407閱讀:292來源:國知局
      專利名稱:用于實時信號處理和更新的微處理器技術的制作方法
      技術領域
      本發(fā)明一般涉及用于實時信號處理和更新的微處理器技術,并且尤其涉及可編程 的微處理器核的操作和結構,特別適合于(盡管不是唯一地)通過如共同未決的美國專利 申請?zhí)枮?1/973,184的專利申請中所描述的切換控制的可編程處理器配置以及靈活的流 水線和并行處理的實時信號處理;本發(fā)明主要地涉及在新型分級結構中以發(fā)明程序對計算 執(zhí)行單元(EU)的具體改進,以在不同(多位)精度執(zhí)行不同的算術、計算和邏輯操作。
      背景技術
      如所述共同未決的申請中所解釋,用于匯集多個程序應用至單個設備中(諸如手 機蜂窩電話等等)的系統(tǒng)需要在這類單個設備中有被管理的多種不同的實時信號處理技 術和控制處理能力,該等系統(tǒng)使其自身適合于所述共同未決的申請的新型可編程微處理器 核和靈活流水線信號處理架構。通常,這些可以被描述為包含靈活的數(shù)據(jù)流水線架構,該靈 活的數(shù)據(jù)流水線架構可以基本上適用所有類型的變化的應用的軟件算法集,該流水線架構 具有帶可重新配置的流水線級的可編程處理器,通過在處理器的功能組件之間切換連接使 流水線級的級數(shù)(order)和大小可以變化以響應于建立相應處理器配置的變化的應用指 令序列,從而專門適合各自的和多種多樣的應用;并且其中功能組件以動態(tài)并行和靈活形 式,通過切換矩陣通信。本發(fā)明提出(address)較佳的執(zhí)行單元的多級分級架構和包含該架構的流水線級。發(fā)明目的因此,本發(fā)明的目的是提供一種新的和改進的可配置的微處理器技術和結構,該 技術和結構不受在下文中所描述的在當代和前代的微處理器中的流水線操作的限制,并且 該技術和結構特別地適合(盡管不是唯一地)所述共同未決的專利申請的靈活的可編程數(shù) 據(jù)流水線架構的操作。又一目的是提供一種新的和改進的靈活的數(shù)據(jù)流水線架構以及可編程處理器, 可編程處理器具有可重新配置的流水線級以響應于已建立處理器的相應配置的變化的應 用指令序列,并且具有在其功能組件之間的切換連接以專門適合在變化的應用中的不同 類型的通用操作,并且其中功能組件較佳地以新型動態(tài)并行和靈活的方式,通過切換器 (switch)實時通信,該切換器被配置至在操作期間的每個指令集。在下文中將解釋其它以及進一步的目的,并且這些目的尤其在所附的權利要求中 被解決。


      現(xiàn)在將結合附圖描述本發(fā)明,附圖的圖1是示意當今的目前現(xiàn)有技術處理器核架 構的功能模塊圖,如圖2A、圖2B和圖2C的實例中所示,該處理器核架構在固定數(shù)據(jù)寬度 (即精度)的固定數(shù)量的流水線級中使用執(zhí)行單元的計算級。
      圖3是帶可配置的數(shù)據(jù)流水線的通用核架構的示意圖,如所述共同未決的專利申 請中所描述,該數(shù)據(jù)流水線依據(jù)應用程序的差異而具有可變的寬度、長度和形狀。圖4是本發(fā)明的新型分級執(zhí)行單元概念的方框輪廓圖。圖5示意本發(fā)明的執(zhí)行單元的多級(這里示出為3級)實現(xiàn);圖6和圖7是框圖和電路示意圖,分別示意形成NX 2N單元的NX N執(zhí)行單元的連 接和連接NX 2N單元以形成2NX2N單元;圖8是示出在典型的現(xiàn)在的處理器中的8X8ALU結構的示意圖,與圖9所示的按 照本發(fā)明的8X8ALU結構形成對照;圖10和圖11示意帶旋轉能力的傳統(tǒng)8位和16位桶形移位器(barrel shifter), 并且與在圖12和圖13中所示的8位移位/旋轉結構的本發(fā)明形成對照;以及圖14是示出形成本發(fā)明的2η位移位/旋轉結構的兩個η位移位和旋轉結構的連 接的示意圖。

      發(fā)明內容
      從其廣義、新型的核微處理器的觀點來看,本發(fā)明是一種靈活的數(shù)據(jù)流水線結構, 其用于適用變化的程序應用的軟件計算指令,并且具有帶可重新配置的流水線級的可編程 嵌入式處理器,該可重新配置的流水線級的級數(shù)和長度響應于變化的程序應用指令而變 化,該處理器包括數(shù)據(jù)切換矩陣,數(shù)據(jù)切換矩陣響應于所述指令,有選擇地并靈活地將多個 數(shù)學執(zhí)行單元和存儲器單元互連,并且其中執(zhí)行單元可編程以執(zhí)行多位算術和邏輯電路操 作的不同精度下并且在多級分級架構結構中的操作。從整體可編程處理器和靈活的流水線系統(tǒng)整體架構的觀點來看,本發(fā)明包含處理 器結構,其中每個時鐘周期數(shù)學執(zhí)行單元被配置以執(zhí)行8位、16位和/或32位算術和邏輯 電路操作,并且取決于正執(zhí)行的操作,編程在執(zhí)行單元內部的邏輯電路以將其分為獨立單 元來執(zhí)行并行操作,或者以將其設置為連接的單元來執(zhí)行串行操作,或者以將其組合為一 個或更多的更大的單元來在分級結構中執(zhí)行更大操作。本發(fā)明的較佳的設計和最好方式實施例在下文描述。本發(fā)明的較佳實施方式在圖1中示出較早描述的典型現(xiàn)有技術的并且當前使用的現(xiàn)有處理器架構的示 例,該示例使用固定流水線級和固定數(shù)據(jù)寬度(即精度)。在其中使用的三個典型計算級示 例分別在圖2(A)、圖2(B)和圖2(C)中示意。參考之前提及的圖3,其存在所述共同未決的申請的圖3那里所示的同一通用系 統(tǒng),該共同未決的申請具體體現(xiàn)了帶可變長度、寬度和形狀的靈活的數(shù)據(jù)流水線的處理器 以管理數(shù)據(jù)流水線的控制機制,借助執(zhí)行單元(EU,圖3中的2)、存儲器單元(MU,圖3中的 4)以及切換矩陣單元(圖3中的3)以及控制單元(圖3中的1)形成該數(shù)據(jù)流水線。在所述共同未決的申請中所描述的、并且在本發(fā)明中為這些目的所使用的處理器 核架構具有高可配置的內部結構,該結構可以被優(yōu)化用于所包含的不同類型的計算需要。 它們包括可配置數(shù)量的流水線級以及不同流水線級之間的互連、可被建立以執(zhí)行不同類型 (串行和并行兩者)計算的可配置的計算執(zhí)行單元(EU)、存儲器單元(MU)和執(zhí)行單元(EU) 之間通過切換矩陣單元的可配置的互連,其中建立可配置的存儲器單元以提供在存儲器組(memory bank)中存取數(shù)據(jù)的不同方法。在所述共同未決的申請中以及這里所教導的處 理器核主要地由三個組件組成;也即,以上述及的執(zhí)行單元(EU,圖3中的幻、存儲器單元 (MU,圖4中的4)以及切換矩陣單元(圖3中的3),其中從存儲器單元提供靈活的互連給執(zhí) 行單元以實現(xiàn)新型靈活的處理器核架構。本發(fā)明主要地涉及諸如執(zhí)行單元EU的架構,不同于現(xiàn)在的當前的微處理器,其高 度可配置。它可被配置以執(zhí)行8位、16位或32位算術和邏輯操作,并取決于正被執(zhí)行的操 作,在執(zhí)行單元內部的邏輯電路或者可以被分成為獨立單元以執(zhí)行并行操作,或者可以被 設置為連接的單元以執(zhí)行串行操作,或者可以被組合為一個或更多個更大的單元以執(zhí)行更 大的計算操作。按照本發(fā)明,受硬件的可用性以及輸入/輸出限制的影響,執(zhí)行單元的這些 邏輯電路以分級結構被構造。本發(fā)明的執(zhí)行單元可以被編程以在不同精度(即8位、16位 以及32位)執(zhí)行不同的算術、計算和邏輯操作。這完全不同于現(xiàn)有技術以及現(xiàn)在的微處理 器操作,在那里處理器具有固定計算精度寬度。例如,其為32位處理器、16位處理器或者8 位處理器。當高精度處理器被編程以執(zhí)行低精度計算時,在高精度處理器內部的硬件并未 被全部利用。例如,當正執(zhí)行8位計算時,在32位處理器中用于較高位計算的硬件未被使 用。本發(fā)明的執(zhí)行單元的架構另外能使用戶能夠在通過給定執(zhí)行單元的高精度計算或者通 過相同硬件的許多不同低精度計算之間折中(trade off)。例如,32X 32乘法實際上可以具 有16個以來自同一硬件塊的相似硬件的用法進行的8X8位操作,并且該裝置可被重新使 用于兩個運算。這可以通過下列方式完成,將32位輸入劃分為8位的塊(chunk)并將算出 結果(workout)分成小部分、并然后在一個或更多步驟中組合中間結果來得到最終結果。當正執(zhí)行多個這些計算時,假設在應用程序中存在足夠多的計算用于從開始至結 束加載流水線,許多較低精度計算(例如16個8X8)的輸入輸出總和(throughout)以及 單個較高精度計算(例如一個32X32)的輸入輸出總和是相同的。這讓人相信相對現(xiàn)有技 術的微處理器操作具有明顯的優(yōu)點,在那里,現(xiàn)在的微處理器被設計為僅用于特定精度的 運算。事實上,現(xiàn)在的處理器中的流水線使用固定數(shù)量的在流水線中的執(zhí)行級。另一方 面,在本發(fā)明的處理器中,取決于用戶對執(zhí)行單元的選擇,在該執(zhí)行單元的內部存在可變數(shù) 量的級。本發(fā)明在執(zhí)行單元內部建立流水線級,使在流水線內部的數(shù)據(jù)路徑寬度可變;諸如 8位、16位或32位等。使流水線的形狀也是可變的。如與現(xiàn)在的微處理器結構相對照,取 決于在執(zhí)行單元內部使用了多少級,其可以從一個角落至中間的某處,進入相對的角落,從 而以完全不同的方式在執(zhí)行單元內部遍歷。以這種方式,在本發(fā)明的操作中,數(shù)據(jù)從執(zhí)行單 元外部流入(feed)執(zhí)行單元直到硬件能力的極限,從而在執(zhí)行單元內部串行或并行地執(zhí) 行許多計算功能,作為輸出退出執(zhí)行單元,并允許就數(shù)學計算所需的完全的用戶靈活性。這 與現(xiàn)在的和現(xiàn)有技術的微處理器執(zhí)行單元相反,它們通過在固定數(shù)量的執(zhí)行級中做單個或 多個固定精度計算而被優(yōu)化。事實上,對于這種現(xiàn)在的微處理器,為努力達到相對于在本發(fā)明中的數(shù)據(jù)流水線 實現(xiàn)的計算結果可比的計算結果,對于對輸入數(shù)據(jù)塊的串行或并行操作,必須遍歷流水線 多次。因此現(xiàn)在的微處理器需要相當多的數(shù)據(jù)通過遍歷流水線多次而進入或離開執(zhí)行單元 以響應于相應的多個進入執(zhí)行單元里的指令,這是由于每次單元被遍歷時,其需要一個指 令。
      然而,這個問題在本發(fā)明中不存在,這是由于一旦建立用于對輸入數(shù)據(jù)的并行或 串行操作的特定形狀、數(shù)據(jù)寬度和級數(shù)的執(zhí)行單元,則直到對整個輸入數(shù)據(jù)塊的計算都完 成,不再需要發(fā)送更多新的指令。那么,可以改變結構(數(shù)據(jù)寬度、形狀以及站數(shù))以執(zhí)行 新的操作。通過僅一個特定的流水線結構和對應于對所有輸入數(shù)據(jù)進行的數(shù)學操作或方程 的一個小指令序列,現(xiàn)在以本發(fā)明可以完成之前通過許多不同的經(jīng)歷(go through)流水線 級許多不同次的指令才完成的工作。就流入以及經(jīng)歷所有計算的數(shù)據(jù)以及在最后流出(go out)的數(shù)據(jù)兩者而言,這更為有效得多,以至于不需要多次遍歷。更特殊地,現(xiàn)在的微處理器要求每個時鐘周期向執(zhí)行單元提供新指令,然而,對于 本發(fā)明,指令在執(zhí)行單元內停留許多不同時鐘周期并且僅數(shù)據(jù)流入(go in)并保持重復。從 而本發(fā)明建立極其靈活的架構,該架構在處理器核中提供高度可配置的執(zhí)行單元,該處理 器核容許能夠借助具有這種新的分級結構的執(zhí)行單元內部的邏輯電路執(zhí)行不同精度的算 術和邏輯操作,該邏輯電路被分成獨立的單元以執(zhí)行并行操作,或者以被設置為連接的單 元來執(zhí)行串行操作,或者被組合為一個或更多的大單元來執(zhí)行大操作。如所述共同未決的申請中所解釋,這種處理器可以具有能執(zhí)行相同計算操作(如 在當前RISC處理器等中所使用的那些操作)的功能組件以及之前述及的存儲器單元(諸 如在圖3中以MU1-MUn示出的帶關聯(lián)的邏輯電路的數(shù)據(jù)存儲器組),該等功能組件在圖3中 以數(shù)學執(zhí)行單元EX1-EXn(例如,乘法器、加法器、移位器或者流水線乘法器)示出。在本發(fā) 明的可編程處理器中的這些組件以基本不同于先前的RISC處理器的方式相互通信,該先 前RISC處理器是固定流水線級的處理器。因此這種先前的處理器(圖1、圖2A、圖2B、和圖 2C)功能單元沒有被有效地利用,并且變得復雜度和成本日益增加,其不同于所述共同未決 的申請以及本發(fā)明的靈活流水線和可編程的處理器的之前所描述的優(yōu)點。作為排列相似功能單元形成流水線(圖2A、圖2B、和圖2C)的替代,本發(fā)明利用在 圖3中的切換矩陣單元3來提供連接它們的靈活性,以適用或配置它們用于具體軟件應用 指令序列所要求的具體任務。而且,交叉連接切換器3在一側(在圖3中的幻連接執(zhí)行單 元EX1-Eh并在另一側連接存儲器單元MU1-MlU在圖3中的4),按照不同應用的不同軟件 算法動態(tài)地配置它們?yōu)椴煌Y構。如在所述共同未決的申請中所解釋,用于基于特定指令序列和硬件可用性的任一 特定給定程序的編譯器在合適的時序生成機器指令以配置硬件單元EX和MU,并對它們提 供DMA(直接存儲器存取)和它們之間的連接。現(xiàn)在參考在本發(fā)明的較佳形式中的執(zhí)行單元的整體(overall)架構,執(zhí)行單元被 示出為具有之前述及的分級架構——控制單元通過分級形式中的存取控制邏輯以及程序 RAM來控制執(zhí)行單元。頻繁使用的控制設置可以從存儲設備加載于程序RAM (圖4)中,并且 控制單元然后可以使用單個命令(即在RAM位置χ處開始執(zhí)行)以控制在執(zhí)行單元中程序 執(zhí)行的開始。在本申請的圖4中的執(zhí)行單元EU的基本示意性的組成塊(building block)為8 乘8(8X8)ALU以及8乘8(8X8)乘法器。每個8X8ALU(或乘法器)具有相應的控制其功 能性的控制邏輯。通過將兩個8X8ALU或者兩個8X8乘法器連同專用于基于8X8乘法結 果計算8 X 16乘法結果的電路塊互連在一起,形成每個8乘16 (8 X 16)單元。相似地,通過 將兩個8 X 16單元連同專用于基于8 X 16乘法結果計算16 X 16乘法結果的電路塊互連在一起,形成每個16乘16單元。在這種形式中,一級在另一級之上地建立本發(fā)明的整個執(zhí)行單元。圖4的執(zhí)行單元可在五個不同的分級等級上看待在等級1上的8X8單元;在等 級2上的8X 16單元;在等級3上的16X 16單元;在等級4上的16X32單元;以及在等級 5上的32 X 32單元等。在一等級上的每個單元通過在較低等級上的兩個子單元連帶某些附 加電路而構建,并且每個單元具有關聯(lián)的控制寄存器,用來配置單元的操作以及它的子單 元的連接。與在以上所討論的圖1和圖2A-2C中所示的當今的典型處理器中的計算級不同, 圖5示出對于3個等級實現(xiàn)的本發(fā)明的高度可配置的執(zhí)行單元,盡管分級結構架構同樣可 被用來建立許多等級(例如4、5、6、7...)的執(zhí)行單元。圖5示意2NX2N執(zhí)行單元的一般 化的3個等級實現(xiàn)。而且應當觀察到,NX2N執(zhí)行單元的輸出可以連接至2NXN執(zhí)行單元的輸出或者 連接至NX 2N附加計算邏輯的輸出;2NX2N執(zhí)行單元的輸出也可以連接至2NX2N執(zhí)行單 元的輸出或者連接至2NX2N附加計算邏輯的輸出;以及當單元被配置為執(zhí)行2NX2N乘法 時,被標記為1’的虛線橢圓形示意數(shù)據(jù)流水線級。形成NX 2N以及2NX 2N執(zhí)行單元按照本發(fā)明,圖6和圖7分別示出怎樣連接兩個NXN單元以形成NX2N單元以及 怎樣連接兩個NX 2N以形成2NX 2N單元??梢灾貜偷厥褂眠@些方法以建立分級執(zhí)行單元, 每次一個分級 O 個 8X8 => 8X16 ;2 個 8X16 => 16X16 ;2 個 16X16 => 16X32 ;2 個 16X32 => 32X32 等)。給出以下表1、2、3和4以示意用于配置執(zhí)行單元的圖6和圖7結構的操作的適合 的輸入切換網(wǎng)絡和輸出切換網(wǎng)絡模式,以至于使本發(fā)明能夠眷執(zhí)行較少高精度計算或更多低精度計算;以及 連接一個單元的輸出至其它單元的輸入以形成用于串行計算的數(shù)據(jù)流水線。在這種形式中,在本發(fā)明的執(zhí)行單元內部的數(shù)據(jù)流水線可被配置以具有不同長 度、寬度和形狀。表1 :NX2N => NXN輸入切換網(wǎng)絡模式
      權利要求
      1.一種靈活的數(shù)據(jù)流水線結構,用于適用于變化的應用程序的軟件計算指令,并且該 數(shù)據(jù)流水線結構具有帶內部流水線級的可編程嵌入式處理器,該內部流水線級的級數(shù)和長 度基于預加載至所述處理器中的應用程序中的所述指令序列,隨著每個時鐘周期改變,所 述處理器包括數(shù)據(jù)切換矩陣,該數(shù)據(jù)切換矩陣響應于所述指令,有選擇地并靈活地將多個 數(shù)學執(zhí)行單元和存儲器單元互連,并且其中所述執(zhí)行單元可配置為以多位算術和邏輯操作 的不同精度并在多級分級架構結構中執(zhí)行操作。
      2.如權利要求1所述的數(shù)據(jù)流水線結構,其中,所述切換矩陣借助兩個單元之間任何 允許的連接使完全的接入切換能夠實現(xiàn)。
      3.如權利要求2所述的數(shù)據(jù)流水線結構,其中,所述數(shù)學執(zhí)行單元在運行時被編程以 執(zhí)行8位、16位、32位和/或8位的其它倍數(shù)的算術和邏輯操作,并且取決于正執(zhí)行的所述 操作,基于指令序列,在每個時鐘周期配置在執(zhí)行單元內部的所述邏輯電路,以將其分為獨 立單元來執(zhí)行并行操作,或者以將其設置為連接的單元來執(zhí)行串行操作,或者以將其組合 為一個或多個更大的單元來在分級結構中執(zhí)行更大的操作。
      4.如權利要求3所述的數(shù)據(jù)流水線結構,其中,每個執(zhí)行單元包括總數(shù)為2n的8X 8ALU 和/或者8X8乘法器,并且使每個8X8ALU或8X8乘法器具有相應的控制其功能性的控 制寄存器;并且通過將兩個8X8ALU或兩個8X8乘法器連同專用于基于8X8乘法結果 計算8X 16乘法結果的電路塊互連在一起,形成每個8X 16單元;并且通過將兩個8X 16 單元連同專用于基于8X16乘法結果計算16X16乘法結果的電路塊互連在一起,形成每 個16X16單元,以至于一級在另一級之上地構建整個執(zhí)行單元,該整個執(zhí)行單元具有總數(shù) 為(n+1)的等級從而當η為偶數(shù)時形成(8*2η/2) X (8*2η/2)個單元,或者當η為奇數(shù)時形成 (淋2_) X (8*2(η+1)/2)個單元。
      5.如權利要求4所述的數(shù)據(jù)流水線結構,其中,8X8ALU包括8層電路,該8層電路被 編程以在單個時鐘周期中執(zhí)行以下兩個功能的至少一個- 帶向左或向右移位或旋轉0-7位的結果的算術加法、減法或邏輯操作,并且使每層執(zhí)行以下操作-〇層1無操作〇層2取決于配置,算術加法、減法、逐位邏輯操作或者無操作〇層3取決于配置,向左移位1位,或者無操作〇層4取決于配置,向左移位2位,或者無操作〇層5取決于配置,向左移位4位,或者無操作〇層6取決于配置,向右移位1位,或者無操作〇層7取決于配置,向右移位2位,或者無操作〇層8取決于配置,向右移位4位,或者無操作●8位乘8位乘法,每層執(zhí)行以下操作-〇層1 帶1位輸入的8位輸入的逐位邏輯與〇在層2-8中的每層帶1位輸入的8位輸入的逐位邏輯與,接著8位加法,接著1位 右移,所有操作完成在8位乘8位乘法中的其中一個重復步驟。
      6.如權利要求4所述的數(shù)據(jù)流水線結構,其中,每個執(zhí)行單元使用用于執(zhí)行移位或旋 轉的分級結構;并且通過將在所述8X8ALU中的兩個8位移位/旋轉結構連同附加的多路復用器互連在一起,形成在所述8 X 16ALU中的每個16位移位/旋轉結構;并且通過將在所 述8X 16ALU中的兩個16位移位/旋轉結構連同附加的多路復用器互連在一起,形成在所 述16 X 16ALU中的每個32位移位/旋轉結構,以至于一級在另一級之上地建立用于移位或 旋轉的所述整個結構以借助η個8X8ALU形成8η位移位器。
      7.如權利要求4所述的數(shù)據(jù)流水線結構,其中,所述整體執(zhí)行單元包括多個分級等級, 并且使在一個等級上的每個單元借助在較低等級上的兩個子單元和附加電路建立。
      8.一種帶內部流水線級的可編程嵌入式處理器,該內部流水線級的級數(shù)和長度基于在 應用程序中的指令序列,隨著每個時鐘周期改變,該處理器以組合方式具有數(shù)據(jù)切換矩陣, 該數(shù)據(jù)切換矩陣響應于所述指令有選擇地并靈活地將多個數(shù)學執(zhí)行單元和存儲器單元互 連,并且其中所述執(zhí)行單元可配置為以多位算術和邏輯操作的不同精度并在多級分級架構 結構中執(zhí)行操作。
      9.如權利要求8所述的處理器,其中,所述切換矩陣借助兩個單元之間任何允許的連 接使完全的接入切換能夠實現(xiàn)。
      10.如權利要求8所述的處理器結構,其中,所述數(shù)學執(zhí)行單元在運行時被編程以執(zhí)行 8位、16位、32位和/或8位的其它倍數(shù)的算術和邏輯操作,并且取決于正執(zhí)行的所述操作, 基于指令序列,在每個時鐘周期配置在執(zhí)行單元內部的所述邏輯電路,以將其分為獨立單 元來執(zhí)行并行操作,或者以將其設置為連接的單元來執(zhí)行串行操作,或者以將其組合為一 個或多個更大的單元來在分級結構中執(zhí)行更大的操作。
      11.如權利要求10所述的處理器結構,其中,每個執(zhí)行單元包括總數(shù)為2η的8X8ALU 和/或者8X8乘法器,使每個8X8ALU或8X8乘法器具有相應的控制其功能性的控制 寄存器;并且通過將兩個8X8ALU或兩個8X8乘法器連同專用于基于8X8乘法結果計 算8 X 16乘法結果的電路塊互連在一起,形成每個8 X 16單元;并且通過將兩個8 X 16單 元連同專用于基于8X16乘法結果計算16X16乘法結果的電路塊互連在一起,形成每個 16X16單元,以至于一級在另一級之上地構建整個執(zhí)行單元,該整個執(zhí)行單元具有總數(shù)為 (η+1)的等級從而當η為偶數(shù)時形成(8*2η/2) X (淋2"2)個單元,或者當η為奇數(shù)時形成 (淋2_) X (8*2(η+1)/2)個單元。
      12.如權利要求11所述的處理器結構,其中,8X8ALU包括8層電路,該8層電路被編 程以在單個時鐘周期中執(zhí)行以下兩個功能的至少一個- 帶向左或向右移位或旋轉0-7位的結果的算術加法、減法或邏輯操作,每層執(zhí)行以 下操作-〇層1 無操作〇層2 取決于配置,算術加法、減法、逐位邏輯操作或者無操作 〇層3 取決于配置,向左移位1位,或者無操作 〇層4 取決于配置,向左移位2位,或者無操作 〇層5 取決于配置,向左移位4位,或者無操作 〇層6 取決于配置,向右移位1位,或者無操作 〇層7 取決于配置,向右移位2位,或者無操作 〇層8 取決于配置,向右移位4位,或者無操作 8位乘8位乘法,每層執(zhí)行以下操作-〇層1 帶1位輸入的8位輸入的逐位邏輯與〇在層2-8中的每層帶1位輸入的8位輸入的逐位邏輯與,接著8位加法,接著1位 右移,所有操作完成在8位乘8位乘法中的其中一個重復步驟。
      13.如權利要求11所述的處理器結構,其中,每個執(zhí)行單元使用用于執(zhí)行移位或旋轉 的分級結構;并且通過將在所述8X8ALU中的兩個8位移位/旋轉結構連同附加的多路復 用器互連在一起,形成在所述8 X 16ALU中的每個16位移位/旋轉結構;并且通過將在所述 8X16ALU中的兩個16位移位/旋轉結構連同附加的多路復用器互連在一起,形成在所述 16X16ALU中的每個32位移位/旋轉結構,以至于一級在另一級之上地建立用于移位或旋 轉的所述整個結構以借助η個8X8ALU形成8η位移位器。
      14.如權利要求11所述的數(shù)據(jù)處理器結構,其中,所述整體執(zhí)行單元包括多個分級等 級,并且使在一個等級上的每個單元借助在較低等級上的兩個子單元和附加電路建立。
      15.一種靈活的數(shù)據(jù)流水線化方法,適用于變化的應用程序的軟件算法,該方法包括,編程帶內部流水線級的嵌入式數(shù)據(jù)處理器,該內部流水線級的級數(shù)和長度基于預加載至所述處理器中的應用程序中的指令序列,隨著每個時鐘周期改變;響應于所述指令,有選擇地并靈活地作矩陣切換以將多個數(shù)學執(zhí)行單元和存儲器單元 互連;配置所述執(zhí)行單元以在多位算術和邏輯操作的不同精度執(zhí)行;并且配置所述存儲器單元以在所需的存儲器尋址模式中以及以多級分級形式執(zhí)行存 儲器讀和存儲器寫。
      16.如權利要求15所述的方法,其中,所述切換借助兩個單元之間任何允許的連接使 完全的接入切換能夠實現(xiàn)。
      17.如權利要求15所述的方法,其中,所述數(shù)學執(zhí)行單元在運行時被編程以執(zhí)行8位、 16位、32位和/或8位的其它倍數(shù)的算術和邏輯操作;并且取決于正執(zhí)行的所述操作,基于 指令序列,在每個時鐘周期配置在執(zhí)行單元內部的所述邏輯電路,以將其分為獨立單元來 執(zhí)行并行操作,或者以將其設置為連接的單元來執(zhí)行串行操作,或者以將其組合為一個或 多個更大的單元來在分級結構中執(zhí)行更大的操作。
      18.如權利要求17所述的方法,其中,每個執(zhí)行單元包括總數(shù)為2η的8X 8ALU和/或者 8 X 8乘法器,使每個8 X 8ALU或8 X 8乘法器具有相應的控制其功能性的控制寄存器;并且 通過將兩個8 X 8ALU或兩個8 X 8乘法器連同專用于基于8 X 8乘法結果計算8X16乘法結 果的電路塊互連在一起,形成每個8X16單元;并且通過將兩個8X16單元連同專用于基于 8 X 16乘法結果計算16 X 16乘法結果的電路塊互連在一起,形成每個16 X 16單元,以至于 一級在另一級之上地構建整個執(zhí)行單元,該整個執(zhí)行單元具有總數(shù)為(η+1)的等級從而當 η為偶數(shù)時形成(SMiv2) X (8*2η/2)個單元,或者當η為奇數(shù)時形成(8 "72) X (8*2(n+1)/2) 個單元。
      19.如權利要求18所述的方法,其中,8X8ALU包括8層電路,該8層電路被編程以在 單個時鐘周期中執(zhí)行以下兩個功能的至少一個- 帶向左或向右移位或旋轉0-7位的結果的算術加法、減法或邏輯操作,每層執(zhí)行以 下操作-〇層1 無操作〇層2 取決于配置,算術加法、減法、逐位邏輯操作或者無操作 〇層3 取決于配置,向左移位1位,或者無操作 〇層4 取決于配置,向左移位2位,或者無操作 〇層5 取決于配置,向左移位4位,或者無操作 〇層6 取決于配置,向右移位1位,或者無操作 〇層7 取決于配置,向右移位2位,或者無操作 〇層8 取決于配置,向右移位4位,或者無操作 8位乘8位乘法,每層執(zhí)行以下操作-〇層1 帶1位輸入的8位輸入的逐位邏輯與〇在層2-8中的每層帶1位輸入的8位輸入的逐位邏輯與,接著8位加法,接著1位 右移,所有操作完成在8位乘8位乘法中的其中一個重復步驟。
      20.如權利要求18所述的方法,其中,每個執(zhí)行單元使用用于執(zhí)行移位或旋轉的分 級結構;并且通過將在所述8X8ALU中的兩個8位移位/旋轉結構連同附加的多路復用 器互連在一起,形成在所述8X 16ALU中的每個16位移位/旋轉結構;并且通過將在所述 8X 16ALU中的兩個16位移位/旋轉結構連同附加的多路復用器互連在一起,形成在所述 16X16ALU中的每個32位移位/旋轉結構,以至于一級在另一級之上地建立用于移位或旋 轉的所述整個結構以借助η個8X8ALU形成8η位移位器。
      21.如權利要求18所述的方法,其中,所述整體執(zhí)行單元包括多個分級等級,并且使在 一個等級上的每個單元借助在較低等級上的兩個子單元和附加電路建立。
      全文摘要
      本發(fā)明在于靈活的數(shù)據(jù)流水線結構,用于適用于不同應用程序的軟件計算指令,并且該數(shù)據(jù)流水線結構具有帶內部流水線級的可編程嵌入式處理器,該流水線級的級數(shù)和長度基于預加載至所述處理器中的應用程序中的所述指令序列,隨著每個時鐘周期改變,其中所述處理器包括數(shù)據(jù)切換矩陣,該數(shù)據(jù)切換矩陣響應于所述指令,有選擇地并靈活地將多個數(shù)學執(zhí)行單元和存儲器單元互連,并且其中所述執(zhí)行單元可配置地以多位算術和邏輯操作的不同精度并在多級分級結構中執(zhí)行操作。
      文檔編號G06F9/38GK102150152SQ200980130725
      公開日2011年8月10日 申請日期2009年1月26日 優(yōu)先權日2008年5月29日
      發(fā)明者B·馬沙爾, F·王, G·皮塔里斯, K·凝, Q·吳, X·王 申請人:阿克西斯半導體有限公司
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1