TW501026B - Partial match partial output cache for computer arithmetic operations - Google Patents

Partial match partial output cache for computer arithmetic operations Download PDF

Info

Publication number
TW501026B
TW501026B TW090103096A TW90103096A TW501026B TW 501026 B TW501026 B TW 501026B TW 090103096 A TW090103096 A TW 090103096A TW 90103096 A TW90103096 A TW 90103096A TW 501026 B TW501026 B TW 501026B
Authority
TW
Taiwan
Prior art keywords
operand
result
cache
msb
partial
Prior art date
Application number
TW090103096A
Other languages
English (en)
Inventor
Hoi-Jin Lee
Original Assignee
Samsung Electronics Co Ltd
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 Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Application granted granted Critical
Publication of TW501026B publication Critical patent/TW501026B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/57Arithmetic logic units [ALU], i.e. arrangements or devices for performing two or more of the operations covered by groups G06F7/483 – G06F7/556 or for performing logical operations

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Computing Systems (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Description

501026 A7 B7 7 219p i f . doc /0 0ι 五、發明說明(1 ) 發明背景 發明領域 本發明是有關於一種用於以快取記憶體執行數學操作 之裝置及方法;且特別是有關於一種具有能夠部份輸出之 快取記憶體之裝置及方法。 相關技藝之討論 電腦藉由重覆地移位、相加、及相減的操作資料來執 行數學操作。需要許多的資料存取及操作週期來得到結 果。對於更複雜的運算,例如‘平方根’及執行三角函數, 傳統的電腦程序是非常費時的,並且在某些應用中,變成 是無法實現的。 某些更複雜的數學函數可以用查表方式來實現,但是 表格必需夠大,足以容納許多不同的運算元(operand)。假 如要操作的運算元有所差異,即使是符號位元的差異,查 詢表即無法運作。由查詢表得到的資料將會不正確。要得 到正確的結果,必須對該運算元的每一位數字執行整個計 算。 其他的實現方式包括使用專屬電路。例如,該參見U.S. Pat. No· 4,734,878 ,Suteliffe 的 “ CIRCUIT FOR PERFORMING SQUARE ROOT FUNCTIONS” 。雖然花費 較少的時間,但是專屬電路需要額外的硬體,並且只能使 用在特定函數。亦即,Suteliffe裝置只能執行平方根,乘 法器只能用於乘法,等等。 本紙張尺度適用中國國家標準(CNS)A4規格(210 X 297公釐) ------------鬌------- 丨訂----------線^__w. (請先閱讀背面之注意事項再填寫本頁) 經濟部智慧財產局員工消費合作社印製 501026 A7 B7 7219pif.doc/008 五、發明說明(>) 快取記憶體係一高速的隨機存取記憶體(Random Access Memory,簡稱RAM),CPU可以比存取常規記憶體 來更快地對其做存取。快取記憶體通常用來儲存會被CPU 頻繁存取的資料。CPU可以對快取記憶體中的資料執行更 多的運算,和從常規記憶體存取運算資料比起來,就可更 快執行這些運算。 CPU可以直接存取快取記憶體(而不是經由,例如, 外部的記憶體管理單元),並且其實際的位置非常靠近 CPU,甚至有些快取是在CPU晶片中的,藉以降低CPU 與快取記憶體之間的訊號傳送時間。可以在Morgan Kaufmann Publishers,Inc· 1996 年出版的,由 David A. Patterson 及 John L. Hennessy 戶斤著的 Computer Architecture A Quantitative Approach” 中的第 380-383 頁找到諸如 Alpha ΑΧΡ 21064微處理器的資料快取的說明。當CPU執 行讀取或是拿取(fetch)運算時,會先檢查所需的資料或指 令是否在快取中。假如是在快取中,則可以快速地存取該 資料或指令。否則,要從常規記憶體(DRAM或ROM)中拿 取,因而花費更多的時間。 第1圖繪示一種習知的快取。快取記憶體1〇包括快 取標籤11,其包括用以儲存處理器經常或最近存取的資 料、位址、或檔案的數個緩衝器。快取記憶體1〇包括用 來比較新輸入的資料與儲存在標籤中的資料的電路。如第 1圖所繪示,在快取標籤11中,每個緩衝器的每個位元與 一個互斥OR閘聯結在一起。當其判斷新輸入的資料匹配 於儲存在快取標籤11中的一個緩衝器的資料時,則在閘 本紙張尺度適用中國國家標準(CNS)A<〗規格(210 X 297公釐) I · · ir ---I---I I---ill — — — — — — — — — — (請先閱讀背面之注意事項再填寫本頁) 經濟部智慧財產局員工消費合作社印製 501026 A7 B7 7219pif.doc/〇〇8 五、發明說明(>) 15、16、…19輸出一真値。快取資料12係儲存對應於快 取標籤11中的每一緩衝器的資料的檔案。在收到對應閘 15、16、…19的真値訊號時,輸出快取資料12的對應位 置中的資料’即q4、q3、q2、...qO。第1圖所繪不的快取 的寬度爲5位元。 可以看出,快取記憶體的特性對於當作用於執行高速 計算的數學裝置的資料儲存裝置會很有用的。例如,如第 1圖所繪示快取記憶體,將運算元儲存在快取標籤11中以 及對應的計算結果儲存在快取資料12中。假如在快取標 籤11中發現要執行相同數學運算的運算元,則跳過此數 學運算。在此種情形,此快取是用來當作查詢表,和查詢 表ROM比較起來,可以減少存取時間。然而,和在查詢 表ROM的情形一樣,假如此方法只有當運算元與儲存的 快取標籤資料完全匹配時才運作,則在查表模式的快取的 使用’將造成整體的吞吐量(throughout)的降低。 因此’需要一種具有快取記憶體的裝置,用來代替數 學單元’其能夠有部份匹配運算元的計算的部份結果輸 出。 發明總結 一種執行數學運算之方法,其使用一快取結構,具有 一 TAG暫存器及一快取資料記憶體,該方法包括的步驟 爲將複數個已知運算元儲存在該TAG暫存器,每一個具 有由一數學運算推導出之一對應的結果,該結畢儲存在該 快取資料記憶體之一對應的位置;將要執行該數學運算之 本紙張尺度適用中國國家標準(CNS)A4規格(210 X 297公釐) -------------------1 -----1 瞧 $ Aw. (請先閱讀背面之注意事項再填寫本頁) 經濟部智慧財產局員工消費合作社印製 501026 A7 B7 7219pif.doc/008 五、發明說明(4 ) (請先閱讀背面之注意事項再填寫本頁) 一新運算元輸入至該TAG暫存器;比較該新運算元與該 些複數個已知運算元;以及判斷該新運算元是否匹配於任 何已知運算元,並且假如有匹配的,則從該快取資料記憶 體輸出對應於與該新運算元匹配之該已知運算元之該已知 結果。 該方法最好更包括下列步驟:假如在判撕步驟中沒有 匹配的,則判斷該些已知運算元與該新運算元之間是否有 部份匹配的;選.擇具有MSB與該新運算元之MSB匹配之 該已知運算元;從該快取資料記憶體存取對應於具有最匹 配M>SB之該已知運算元之結果;決定由該S知運算元之 該匹配MSB所推導之該存取的結果之一第一部份;遮罩 該存取的結果之一第二部份,其爲除了該第一部份之外; 以及提供該遮罩結果做爲一第一部份結果。 該方法最好再包括之步驟爲對該新運算元之除了該匹 配MSB之外之位元執行該數學運算,產生一第二部份結 果;以及藉由結合該第一部份結果與該第二部份結果輸出 一完整結果。 其優點爲,依照本發明之所舉例之方法可以應用在諸 如平方根、除法、或乘法之數學運算。 經濟部智慧財產局員工消費合作社印製 也提出一種用以執行數學運算之快取裝置,包括:一 TAG暫存器,用以儲存複數個已知運算元,每一個具有由 一數學運算推導出之一對應的結果;一快取資料記憶體, 用以儲存對應於該些已知運算元之結果;比較邏輯,在該 TAG暫存器中,用以將較一新運算元,其将要執行該數學 運算,與該些複數個已知運算元做比較,其中假如該新運 7 本紙張尺度適用中國國家標準(CNS)A4規格(210 X 297公釐) 501026 A7 7219pif.doc/008 gy 五、發明說明(K ) 算元匹配於任何已知運算元,則該快取資料記憶體輸出對 應於與該新運算元匹配之該已知運算元之該已知結果。 (請先閱讀背面之注意事項再填寫本頁) 快取裝置最好更包括:一邏輯群檢測器,用以檢測具 有一共同邏輯位準之一群資料,該邏輯群檢測器用以檢測 具有匹配於該新運算元之MSB之最高位數MSB之該已知 運算元;遮罩邏輯,用以部份遮罩對應於具有該最匹配MSB 之該已知運算元之該結果,該遮罩邏輯用以通過由該已知 運算元之該匹配MSB推導出之該對應結果之一第一部份 以及用以遮罩該對應結果之除該第一部份以外之一第二部 份;以及一1多工器’用以多工傳輸S亥對應結果之該弟一^部 份至一數學單元。 依照本發明之快取裝置,最好更包括一第二多工器’ 其中該數學單元對該新運算元之除該匹配MSB以外之位 元執行該數學運算,藉以產生一第二部份結果,該第二多 工器用以多工傳輸該第二部份結果至該數學單元,其中該 第二部份結果與該第一部份結果結合,藉以形成一完整結 經濟部智慧財產局員工消費合作社印製 圖式之簡單說明 第1圖繪示習知快取記憶體; 第2圖繪示具有依照本發明之一實施例之快取之數學 裝置; 第3圖繪示使用第2圖之裝置之平方根運算之流程 圖; 第4圖是依照本發明之第2圖之快取記憶體中之檢測 本紙張尺度適用中國國家標準(CNS)A4規格(210 X 297公釐) 501026 A7 B7 11快取標籤 21 PMPO快取標籤 27平方根模組 42檢測邏輯 45遮罩暫存器 61運算符分割單元 100 PMPO 快取 7219pif.doc/008 五、發明說明(G ) 邏輯之輸入與輸出資料之真値表以及遮罩運算; 第5圖是依照本發明之乘法實施例之檢測之輸入與輸 出資料之真値表;以及 第6圖是依照本發明之另一實施例之數學裝置。 ft式中標示之簡里說明 10快取記憶體 12快取資料 22 PMPO快取資料 29 Q’緩衝器 43選擇暨遮罩邏輯 48平方根緩衝器 62、63多工器 本發明之鮫佳眚施例夕設昍 依據本發明的一種運算快取,儲存先前數學計算結果 的結果資料’以及假如目前的運算元和執行相同數學運舅 的先前的運算元相同時,輸出該結果資料。本發明也在當 目前的運算元部份匹配於先前儲存在運算快取的運算元 時,從運算快取中輸出部份結果資料。使用依照本發明之 運算快取的數學單元的結構及運算繪示及說明如下。 第2圖繪示用以執行平方根運算的數學單元。所繪开 的數學單元包括依照本發明之一實施例之部份匹配部份輔 出(Partial Match Partial Output,簡稱 PMPO)快取。繪示取 依照此實施例的數學裝置包括PMPO快取100,具有PMP( 本紙張尺度適用中國國家標準(CNS)A4規格(210 X 297公釐) -------------! (請先閱讀背面之注意事項再填寫本頁) 經濟邨智慧財產局員工消費合作社印製 501026 A7 B7 7219pif.doc/008 五、發明說明(η ) 快取標籤21及PMPO快取資料22。平方根模組27是用來 對給定的數字X(被開方數)計算平方根結果的軟體或硬體 模組。該平方根模組最好包括用來執行已知的平方根運算 的程式步驟或演算法,例如用於平方根抽取(square root extraction)的“完全平方(completing the square)” 方法,其 原理與回復分割架構(restoring division scheme)類似,參 見 Israel Korean, ‘Computer Arithmetic Algorithms’ , 第7章,ISBN D-l3-15 1952-2,1993。平方根模組27也包 括以傳統的除法及餘數(divisional and remainder)方法來對 一被開方數計算平方根的電路或程式步驟。舉例來說,處 理器對一8位元運算元執行‘除法及餘數’平方根運算, 一般需要8個週期來求得平方根結果的資料。結果的資料 收集在Q’緩衝器29。在完成平方根運算後,平方根結果 的資料從Q’緩衝器29向前傳送至PMPO快取資料22中的 D卜D2、…、Dn之一,將之儲存起來。被開方數X也是 儲存在對應的PMPO快取標籤21的緩衝器ΤΙ、T2、...、Τη 中。在此種架構中,當其判斷新輸入的要開方根的被開方 數X’匹配於在PMPO快取標籤21的對應緩衝器的被開方 數X’時,第2圖的數學單元會從PMPO快取資料22輸出 平方根Q’。新的被開方數的比對是由快取標籤21中的互 斥NOR閘來執行的,當一個緩衝器中的X的每一位元和 新輸入的被開方數X’的每一位元完全匹配時,其會全部輸 出一。儲存在快取資料22中對應於緩衝器ΤΙ、T2、...、Τη 中的X,其完全匹配於被開方數X’,的位置的資料會被輸 出,當作平方根結果Q’。在此種情形,快取資料22送出 本紙張尺度適用中國國家標準(CNS)A4規格(210 X 297公釐) -----------------—----1—^ A_w (請先閱讀背面之注意事項再填寫本頁) 經濟部智慧財產局員工消費合作社印製 501026 A7 B7 72l9pif.doc/008 五、發明說明(β ) 的Q,會直接經由多工器63送至Q’緩衝器29 °此種直接比 對及將平方根結果輸出至Q’緩衝器29的過程’會越過平 方根模組27的處理。 具有第2圖所繪示的依照本發明的PMPO快取的數學 單元,也設計成當新輸入的運算元X’與儲存在快取標籤21 的緩衝器ΤΙ、T2、…、Τη中的複數個運算元x部份匹配 時,輸出部份平方根輸出。部份匹配部份輸出(Partial Match Partial Output,簡稱PMPO)實施例的運作的說明將參照第 2圖至第5圖。在收到要被開方根的新運算元X’時(步驟 410),將運算元X,與儲存在PMPO快取標籤21的緩衝器 Ή、T2、…、Τη中的X做比對(步驟412)。爲了表達實例 的目的,運算元及平方根資料爲8位元,例如Χ’[7:〇]及 Q’[7:0]。對於習知此技藝者,可以很容易地瞭解第2圖的 PMP0快取可以應用至任何寬度的運算元。快取標籤21的 互斥NOR閘連接至檢測邏輯42,其實施中最好具有8位 元緩衝器,每一緩衝器Tx對應一個,用以儲存個別的互 斥NOR緩衝器群輸出的8位元輸出。於是,假如運算元X’ 與快取標籤21中的任一個緩衝器的X完全匹配時,則檢 測邏輯42中的對應電路會將其8位元緩衝器全部註記爲 一。習知此技藝者,亦可以很容易地瞭解假如快取標籤21 中使用互斥OR閘時,則在完全匹配時,檢測邏輯42會全 部註記爲零。假如只有部份匹配時,則檢測邏輯42會在 匹配於運算元X’的位元的快取標籤21中的Xn的位元顯 示邏輯‘1’ 。在步驟414中,判斷新輸入的運算元X’與 儲存在快取標籤21的緩衝器的複數個運算元X是完全匹 本紙張尺度適用中國國家標準(CNS)A4規格(210 X 297公望) ! , . ——--------訂---------線 (請先閱讀背面之注意事項再填寫本頁) 經濟部智慧財產局員工消費合作社印製 經濟部智慧財產局員工消費合作社印製 501026 五、發明說明q) 配亦或部份匹配。選擇暨遮罩邏輯43包括用以解碼Det_l、 Det一2、…、Det一η及判斷完全匹配或部份匹配的邏輯電路。 假如是部份匹配,也會判斷匹配的程度。選擇暨遮罩邏輯 43輸出適當的致能訊號至快取資料22及遮罩暫存器45。 當檢測邏輯42輸出的任一個DetJ、Det_2、…、Det_n訊 號包括全部一時,則爲找到完全匹配。假如沒有完全匹配 或部份匹配,則PMPO快取100輸出一訊號,指示快取1〇〇 中沒有平方根資料。不匹配訊號送至MUX 62及63,於其 中新輸入的運算元X’被輸入至平方根模組27,以及由平 方根模組27對運算元X’執行一般的平方根運算(步驟 416)。由模組27處理所得到的結果的資料被向前送至快取 資料22,將之儲存在對應於快取標籤21中的Tx緩衝器的 位置,該Τχ緩衝器用來儲存剛被運算過的運算元X’(步驟 418)。 假如是完全匹配或部份匹配,則檢查檢測邏輯42輸 出的Det_l、Det_2、…、De〇i訊號,看是否有相同的匹 配(步驟420)。假如有相同的匹配,則選擇暨遮罩邏輯43 輸出一訊號至快取資料22中對應於快取標籤21中完全匹 配的緩衝器的位置。在此情形,遮罩暫存器45會使快取 資料22輸出的資料通過至平方根緩衝器48,此資料接著 會經MUX 63被向前送至Q’緩衝器29,當作平方根運算的 結果(步驟422)。 假如運算元X’是部份匹配,則選擇暨遮罩邏輯43選 擇具有最多連續的最高位元(Most Significant Bit,簡稱MSB) 匹配的Det_l、Det_2、…、Det_n訊號。對於Ml至Μη的 —----------------—訂----——線 (請先閱讀背面之注意事項再填寫本頁) 本紙張尺度適用中國國家標準(CNS)A4規格(210 χ 297公釐) 501026 A7 B7 7219pif.doc/008 五、發明說明((G) 資料中的第一個最高位的零之後的任何資料,檢測邏輯42 都賦予‘不在乎(don’t care)’ 。第4圖繪示檢測邏輯42輸 出的Ml至Μη輸入及對應的Det_l至Det_n。選擇暨遮罩 邏輯43接收Det_l至Det_n訊號以及執行遮罩運作,其產 生通過訊號,Det_l至Det_n中的每兩個連續的邏輯對應 一個。在Det_n全部都爲一的情況時,則不執行遮罩。Det_l 至Det_n輸入與對應的Mask的遮罩表是從選擇暨遮罩邏 輯43輸入的。在第4圖中,繪不的是8位元Mask資料 Mask[7:0]。選擇暨遮罩邏輯43輸出致能訊號En,藉以存 取快取資料22中的對應於最相似樣版(pattern) Det_max的 位置。對應於Detjnax的Mask資料Mask[7:0]被輸入至部 份輸出單元45,於其中將對應於Detjnax的Mask資料與 由快取資料22讀出的資料輸出Qi做AND運算(步驟426)。 以下爲用來示範上述程序的一個實例。運算元 100000002、100011112、及 101011112 儲存在快取標籤 21 的 T1至Τη中,以及對應於該些運算元的平方根結果儲存在 快取資料記憶體22中的對應位置。將要開方根的100000012 的被開方數X’輸入至數學裝置。檢測邏輯42接收對應於 運算元的訊號分別爲11111110、11110χχχ、及ΙΙΙΟχχχχ, 以及輸出對應於比較結果的樣版Det_l至Det_n分別爲 11111110、11110000、及 11000000。因此,邏輯 ‘1’ 表示 儲存在T1至Τη中的運算二的對應位元與被開方數X’是 匹配的,而邏輯‘0’表示對應的位元是不匹配的。此外, ‘X’表示不在乎。 由檢測邏輯42產生的樣版DeU = miUl〇、 I !1! t·!· <請先閲讀背面之注意事項再填寫本頁) 經濟部智慧財產局員工消費合作社印製 本紙張尺度適用中國國家標準(CNS)A4規格(210 X 297公釐) 501026 A7 B7 7219pif.doc/008 五、發明說明((p
Det_2=l 1110000、及 Det_3=l 1000000,輸入至選擇暨遮罩 邏輯43,並且Detj樣版11Π1110被選爲最相似樣版 Det_max,其與被開方數X,的對應位元具有最多相同的連 續MSB位元。依照第4圖繪示的真値表,選擇暨遮罩邏 輯43產生對應於11111110的Det—max的11100000的遮罩 樣版Mask。輸出致能En被送至快取資料記憶體22 ’藉以 輸出對應於Detjnax,其爲具有11111110的資料的Det一 1, 的輸出結果的資料Qi。 部份輸出單元45執行Qi與11100000的Mask資料之 間的AND運算,並且將q[x:〇]儲存在緩衝器48中。如前 面所解釋的,假如檢測邏輯42輸出的所有檢測訊號Det_l 至Det__n都是Oxxxxxxx,則輸入Q’緩衝器29的全部爲零’ 當作啓始値,以及運算元X’被輸入至平方根模組27。數 學運算,在此實例中爲對運算元X’的所有位數做平方根計 算,是在數學模組27(在此實例中爲平方根模組)中執行的。 並且假如儲存在快取標籤21中的運算元T1至Τη中的其 中之一與被開方數X’相同;換句話說,假如檢測邏輯42 輸出的檢測訊號Det_l至Det_n中的其中之一爲11111111, 則會從快取資料22輸出對應於檢測訊號11111111的Qi資 料,當作結果的資料Qi,而不用模組27的任何計算或處 理。 包括運算符(operator)分割單兀61、第一多工器62、 及第二多工器63的中間電路受選擇暨遮罩邏輯43的控 制,藉以將資料轉送至模組27及Q’緩衝器29。運算符分 割單元61用來抽取部份運算元X” ’其爲被開方數X’的 本紙張尺度適用中國國家標準(CNS)A‘l規格(210 X 297公髮) -------I I I----- - ---I ^--l!i (請先閱讀背面之注意事項再填寫本頁) 經濟部智慧財產局員工消費合作社印製 501026
Q = VX A7 7219pif.doc/008 五、發明說明(d 最大的不匹配部份。在平方根計算中,部份平方根結果的 資料Q[x:〇]被平方後,然後由輸入被開方數X’減去,藉以 求得部份運算元X”。(x”= X’-q2)。部份X”被輸入至模組27, 藉以執行平方根運算。部份結果輸出q[X:0]被輸入至Q,緩 衝器29,當作部份結果資料(步驟428)。在選擇暨遮罩邏 輯43的控制下,會選取X”及q[x:〇]分別通過多工器62及 63。在模組27完成部份X”的平方根處理後,其結果資料 會與儲存在Q’緩衝器29的部份結果資料結合,藉以形成 完整的平方根結果資料。 其優點爲,當數學運算要頻繁地執行時,依照本發明 的部份輸出、部份匹配可以顯著地減少系統的呑吐量 (throughput) 〇 雖然上面所舉的實例爲平方根運算,然而熟習此技藝 者可以很容易地瞭解,在熟習此技藝者的知識範圍內,稍 做潤飾,如第2圖所繪示及說明的裝置可以應用在其他數 學運算,例如平方根,除法、乘法、三角函數等等。平方 根計算可以描述如下 ri =2γμ —qi(2QM +qi2_1) (請先閱讀背面之注意事項再填寫本頁) ------ 訂---------線一 經濟部智慧財產局員X消費合作杜印製
除法爲 X
Q γ
ri = 2riH -q〗D 舉例來說,假如X=11101001,Y=K,並且假如新運算 元Χ’ = 111Π011,及Y,z=K,和Y —樣,除了除法有兩個運 15 本紙張尺度適用中國國家標準(CNS)A4規格(210 X 297公釐) 501026 A7 7219pi f . doc/ 0 0 8 ^ 五、發明說明(〇) 算元X及Y之外,除法運算和平方根運算是一樣的。假如 新運算元Υ’和先前的運算元γ —樣,則除法可以視爲一 元運算(unary operation),並且除法可以用ΡΜΡ0快取1〇〇 來執行。 對於乘法,Q = XxY,假如χ=111〇1〇〇1,γ=κ,並且 假如Χ’ = 11111011,及Υ’=Κ,和γ —樣,部份乘法可以用 依照本發明的ΡΜΡ0快取來執行。第5圖繪示的遮罩運算 只有在(X xor X’)AND Χ= 0000—〇〇〇〇才成立。請參照第6 圖,其爲第2圖的裝置的修飾版本,對於具有和第2圖所 繪示的一樣的標號的元件,類似的標號表示相同的運作, 反相功能61爲修飾成用來執行χ,,=χ,-χ,用以抽取部份 運算元。 雖然已參照附圖說明了本發明之實施例,但是要瞭解 本發明並非限制在這些明確的實施例,並且對於熟習此技 藝者在不脫離本發明之精神和範圍內,可以做不同的修飾 及變化。 (請先閱讀背面之注咅5事項再填寫本頁) 經濟部智慧財產局員工消費合作社印製 本紙張尺度適用中國國家標準(CNS)A4規格(210 X 297公釐)

Claims (1)

  1. 經濟部智慧財產局員工消費合作社印製 501026 A8 B8 7219pif.d〇c/〇〇8 g| 六、申請專利範圍 L一種執行數學運算之方法,其使用一快取結構,具 有一 TAG暫存器及一快取資料記憶體,該方法包括下列 步驟: 將複數個己知運算元儲存在該TAG暫存器,每一個 具有由一數學運算推導出之一對應的結果,該結果儲存在 該快取資料記億體之一對應的位置; 將要執行該數學運算之一新運算元輸入至該TAG暫 存器; 比較該新運算元與該些複數個已知運算元;以及 判斷該新運算元是否匹配於任何已知運算元,並且假 如有匹配的,則從該快取資料記憶體輸出對應於與該新運 算元匹配之該已知運算元之該已知結果。 2.如申請專利範圍第1項所述之方法,更包括下列步 驟: 假如在判斷步驟中沒有匹配的,則判斷該些已知運算 元與該新運算元之間是否有部份匹配的; 選擇具有MSB與該新運算元之MSB匹配之該已知運 算元; 從該快取資料記憶體存取對應於具有最匹配MSB之 該已知運算元之結果; 決定由該已知運算元之該匹配MSB所推導之該存取 的結果之一第一部份; 遮罩該存取的結果之一第二部份,其爲除了該第一部 份之外;以及 提供該遮罩結果做爲一第一部份結果。 本紙張尺度適用中國國家標準(CNS)A4規格(210 X 297公f ) -----------i -------訂 - ----- 丨-線 (請先閱讀背面之注意事項再填寫本頁) 501026 A8 B8 7219pif .doc/008 β| 六、申請專利範圍 (請先閱讀背面之注意事項再填寫本頁) 3. 如申請專利範圍第2項所述之方法,更包括下列步 驟:對該新運算元之除了該匹配MSB之外之位元執行該 數學運算,產生一第二部份結果;以及藉由結合該第一部 份結果與該第二部份結果輸出一完整結果。 4. 如申請專利範圍第1項所述之方法,其中該數學運 算係該新運算元之一平方根。 5. 如申請專利範圍第1項所述之方法,其中該數學運 算係一除法,其中該新運算元係該被除數。 6. 如申請專利範圍第1項所述之方法,其中該數學運 算係一乘法,其中該新運算元係該被乘數。 7. —種用以執行數學運算之快取裝置,包括: 一 TAG暫存器,用以儲存複數個已知運算元,每一 個具有由一數學運算推導出之一對應的結果; 一快取資料記憶體,用以儲存對應於該些已知運算元 之結果; 經濟部智慧財產局員工消費合作社印製 比較邏輯,在該TAG暫存器中,用以將較一新運算 元,其將要執行該數學運算,與該些複數個已知運算元做 比較,其中假如該新運算元匹配於任何已知運算元,則該 快取資料記憶體輸出對應於與該新運算元匹配之該已知運 具兀之該已知結果。 8. 如申請專利範圍第7項所述之快取裝置,更包括: 一邏輯群檢測器,用以檢測具有一共同邏輯位準之一 群資料,該邏輯群檢測器用以檢測具有匹配於該新運算元 之MSB之最高位數MSB之該已知運算元; 遮罩邏輯,用以部份遮罩對應於具有該最匹配MSB 本紙張尺度適用中國國家標準(CNS)A4規格(210 X 297公f ) 501026 A8 B8 7219pif.doc/008 六、申請專利範圍 之該已知運算元之該結果,該遮罩邏輯用以通過由該已知 運算元之該匹配MSB推導出之該對應結果之一第一部份 以及用以遮罩該對應結果之除該第一部份以外之一第二部 份;以及 ’ 一多工器,用以多工傳輸該對應結果之該第一部份至 一數學單元。 9.如申請專利範圍第8項所述之快取裝置,更包括一 第二多工器,其中該數學單元對該新運算元之除該匹配 MSB以外之位元執行該數學運算,藉以產生一第二部份結 果,該第二多工器用以多工傳輸該第二部份結果至該數學 單元,其中該第二部份結果與該第一部份結果結合,藉以 形成一完整結果。 -----------—----—訂--------- (請先閱讀背面之注意事項再填寫本頁) 經濟部智慧財產局員工消費合作社印製 本紙張尺度適用中國國家標準(CNS)A4規格(210 X 297公釐)
TW090103096A 2001-01-10 2001-02-13 Partial match partial output cache for computer arithmetic operations TW501026B (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US09/757,789 US6542963B2 (en) 2001-01-10 2001-01-10 Partial match partial output cache for computer arithmetic operations

Publications (1)

Publication Number Publication Date
TW501026B true TW501026B (en) 2002-09-01

Family

ID=25049225

Family Applications (1)

Application Number Title Priority Date Filing Date
TW090103096A TW501026B (en) 2001-01-10 2001-02-13 Partial match partial output cache for computer arithmetic operations

Country Status (7)

Country Link
US (1) US6542963B2 (zh)
EP (1) EP1223505B1 (zh)
JP (1) JP4574030B2 (zh)
KR (1) KR100423893B1 (zh)
CN (1) CN1194301C (zh)
DE (1) DE60127524T2 (zh)
TW (1) TW501026B (zh)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050108368A1 (en) * 2003-10-30 2005-05-19 Aditya Mohan Method and apparatus for representing data available in a peer-to-peer network using bloom-filters
DE102004019967B4 (de) * 2004-04-23 2014-02-13 Rohde & Schwarz Gmbh & Co. Kg Signalverarbeitungseinrichtung mit Nachverarbeitung
US9189412B2 (en) * 2013-03-07 2015-11-17 Mips Technologies, Inc. Apparatus and method for operating a processor with an operation cache
US10514928B2 (en) 2014-04-17 2019-12-24 Arm Limited Preventing duplicate execution by sharing a result between different processing lanes assigned micro-operations that generate the same result
US9817466B2 (en) 2014-04-17 2017-11-14 Arm Limited Power saving by reusing results of identical micro-operations
US9933841B2 (en) 2014-04-17 2018-04-03 Arm Limited Reuse of results of back-to-back micro-operations
GB2525263B (en) * 2014-04-17 2021-06-02 Advanced Risc Mach Ltd Reuse of results of back-to-back micro-operations
US9946331B2 (en) * 2014-06-27 2018-04-17 Samsung Electronics Co., Ltd. System and method to process signals having a common component
GB2528497B (en) * 2014-07-24 2021-06-16 Advanced Risc Mach Ltd Apparatus And Method For Performing Floating-Point Square Root Operation
US10261911B2 (en) * 2016-09-08 2019-04-16 The Johns Hopkins University Apparatus and method for computational workflow management
US11269643B2 (en) 2017-04-09 2022-03-08 Intel Corporation Data operations and finite state machine for machine learning via bypass of computational tasks based on frequently-used data values
JP7143866B2 (ja) 2020-03-25 2022-09-29 カシオ計算機株式会社 キャッシュ管理プログラム、サーバ、キャッシュ管理方法、および情報処理装置

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4734878A (en) 1985-10-31 1988-03-29 General Electric Company Circuit for performing square root functions
JP2613223B2 (ja) * 1987-09-10 1997-05-21 株式会社日立製作所 演算装置
CA2074769C (en) * 1991-08-09 2001-03-20 International Business Machines Corporation Formula processor
US5260898A (en) * 1992-03-13 1993-11-09 Sun Microsystems, Inc. Result cache for complex arithmetic units
US5828591A (en) * 1992-11-02 1998-10-27 Intel Corporation Method and apparatus for using a cache memory to store and retrieve intermediate and final results
US5537560A (en) * 1994-03-01 1996-07-16 Intel Corporation Method and apparatus for conditionally generating a microinstruction that selects one of two values based upon control states of a microprocessor
US5845103A (en) * 1997-06-13 1998-12-01 Wisconsin Alumni Research Foundation Computer with dynamic instruction reuse
US6810474B1 (en) * 1998-03-04 2004-10-26 Hitachi, Ltd. Information processor
US6253287B1 (en) * 1998-09-09 2001-06-26 Advanced Micro Devices, Inc. Using three-dimensional storage to make variable-length instructions appear uniform in two dimensions
US6298369B1 (en) * 1998-09-30 2001-10-02 Stmicroelectronics, Inc. High speed multiplier
US6343359B1 (en) * 1999-05-18 2002-01-29 Ip-First, L.L.C. Result forwarding cache

Also Published As

Publication number Publication date
JP4574030B2 (ja) 2010-11-04
US6542963B2 (en) 2003-04-01
EP1223505B1 (en) 2007-03-28
US20020120814A1 (en) 2002-08-29
CN1365049A (zh) 2002-08-21
CN1194301C (zh) 2005-03-23
KR100423893B1 (ko) 2004-03-24
EP1223505A3 (en) 2004-06-16
KR20020060547A (ko) 2002-07-18
JP2002229775A (ja) 2002-08-16
DE60127524T2 (de) 2008-01-31
DE60127524D1 (de) 2007-05-10
EP1223505A2 (en) 2002-07-17

Similar Documents

Publication Publication Date Title
TW501026B (en) Partial match partial output cache for computer arithmetic operations
US5204953A (en) One clock address pipelining in segmentation unit
US4338675A (en) Numeric data processor
US6487575B1 (en) Early completion of iterative division
JP5893012B2 (ja) 多機能命令のうちの選択されたインストール済み機能を隠蔽するためのコンピュータで実装される方法、コンピュータ・システム、およびコンピュータ・プログラム
US6085210A (en) High-speed modular exponentiator and multiplier
JPH0635675A (ja) データプロセッサにおいて除算を行うための方法および装置
US5381360A (en) Modulo arithmetic addressing circuit
US4466077A (en) Method and apparatus for division employing associative memory
JPH04230575A (ja) データプロセッサにおいてキーハッシングを行う方法およびその装置
TW201346715A (zh) 十進位浮點資料邏輯提取的方法與設備
US10983755B2 (en) Transcendental calculation unit apparatus and method
US5828591A (en) Method and apparatus for using a cache memory to store and retrieve intermediate and final results
CN114139693A (zh) 神经网络模型的数据处理方法、介质和电子设备
US10552150B2 (en) Efficient conversion of numbers from database floating point format to binary integer format
US6751645B1 (en) Methods and apparatus for performing pipelined SRT division
US6779008B1 (en) Method and apparatus for binary leading zero counting with constant-biased result
CN113032797B (zh) 在处理设备中执行加密操作的方法
US6834293B2 (en) Vector scaling system for G.728 annex G
US6870775B2 (en) System and method for small read only data
Knöfel A hardware kernel for scientific/engineering computations
TWI310516B (en) A method and system for saturating a left shift result using a standard shifter
Fischer et al. Scalable rsa processor in reconfigurable hardware-A soc building block
RU2276805C2 (ru) Способ и устройство для выделения целой и дробных компонент из данных с плавающей точкой
JP2972326B2 (ja) 平方根計算装置

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