TW405093B - Data processor and data processing system - Google Patents

Data processor and data processing system Download PDF

Info

Publication number
TW405093B
TW405093B TW086115051A TW86115051A TW405093B TW 405093 B TW405093 B TW 405093B TW 086115051 A TW086115051 A TW 086115051A TW 86115051 A TW86115051 A TW 86115051A TW 405093 B TW405093 B TW 405093B
Authority
TW
Taiwan
Prior art keywords
calculation
floating
data
data processor
register
Prior art date
Application number
TW086115051A
Other languages
English (en)
Inventor
Fumio Arakawa
Norio Nakagawa
Tetsuya Yamada
Yonetaro Totsuka
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Application granted granted Critical
Publication of TW405093B publication Critical patent/TW405093B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/16Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization
    • 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/50Adding; Subtracting
    • G06F7/505Adding; Subtracting in bit-parallel fashion, i.e. having a different digit-handling circuit for each denomination
    • G06F7/509Adding; Subtracting in bit-parallel fashion, i.e. having a different digit-handling circuit for each denomination for multiple operands, e.g. digital integrators
    • 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/544Methods 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 for evaluating functions by calculation
    • G06F7/5443Sum of products
    • 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/544Methods 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 for evaluating functions by calculation
    • G06F7/548Trigonometric functions; Co-ordinate transformations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/30007Arrangements for executing specific machine instructions to perform operations on data operands
    • G06F9/3001Arithmetic instructions
    • G06F9/30014Arithmetic instructions with variable precision
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/30007Arrangements for executing specific machine instructions to perform operations on data operands
    • G06F9/30036Instructions to perform operations on packed data, e.g. vector, tile or matrix operations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30098Register arrangements
    • G06F9/30105Register structure
    • G06F9/30112Register structure comprising data of variable length
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30098Register arrangements
    • G06F9/3012Organisation of register space, e.g. banked or distributed register file
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30098Register arrangements
    • G06F9/3012Organisation of register space, e.g. banked or distributed register file
    • G06F9/3013Organisation of register space, e.g. banked or distributed register file according to data content, e.g. floating-point registers, address registers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3885Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3885Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units
    • G06F9/3887Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units controlled by a single instruction for multiple data lanes [SIMD]
    • 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/483Computations with numbers represented by a non-linear combination of denominational numbers, e.g. rational numbers, logarithmic number system or floating-point numbers

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Algebra (AREA)
  • Databases & Information Systems (AREA)
  • Complex Calculations (AREA)
  • Image Processing (AREA)
  • Advance Control (AREA)
  • Image Generation (AREA)

Description

經濟部中央標準局兵X消费合作社印裝 4050¾¾___ 五、發明説明q ) 本發明係有關於一種應用在內積演算以及行列演算之 資料處理器。特別是有關於一種最適合於3次元圖形控制 的資料處理系統,例如有關於一種執行4元以下之浮動小 數點向量或行列之應甩之資料處理器的有效的技術。 在3次元圖形中有關圖形的旋轉、放大、縮小、透視 投影以及平行移動大多是利用一使用4 X 4之轉換行列的 行列演算,又在決定受光面的亮度時則可以利用內積演算 。而在如此之行列演算或是內積演算時必須要反覆地實施 積和演算。又對於在3次圖形中所處理的資料,在高階( high end)的系統中以往則利用浮動小數點數•即使是如遊 戲機或攜帶情報終端般之對於成本限制嚴格的領域,所處 理的資料也逐漸自整數移至浮動小數點數•而此是因爲利 用浮動小數點數時程式設計較容易,且適合於高度的處理 〇 積和演算係一進行單一功能操作(A + B)+ C之演算者 ,例如在 Microprocessor Report,Vol.8,No.l5,November 14, 1944,ρρ.6·9,ΡΑ-80000 Combines Complexity and Speed中已 揭露一備有稹和演算單元的處理器,而稹和演算單元的並 列度爲2。 又在日經電子(日經PB社)1 996 · 1 . 1 5(No .6 5 3). P P 1 6 — 1 7中則有關於將3次元描畫功能 放入一個晶片內的半導體積體電路的記載。將在1個週期 內執行8個固定小數點資料之演算的積和演算器組入到此 ,而可以在2個週期內執行利用4 X 4之行列的座標轉換 本紙張尺度速用中國國家標準(CNS ) A4规格(210X297公釐) (請先閲讀背面之注意事項再填寫本頁) 訂 岣、! -4- 經濟部中央標準局負工消费合作社印箄 A7 _______B7_ 五、發明説明& ) 〇 又在特開昭6 4 — 3 7 5 4中則記載有由4個乘法器 以及可將該4個乘法器的輸出相加之加法器所構成的乘法 電路。該乘法電路由於是一用於處理基本語長以及其2倍 語長的乘法運算者,因此其位數對合功能則是一針對該處 理將化而成的單純設計,而無法進行浮動小數點數的內積 演算。 又在特開平5 — 1 50944中則記載有一具有多個 稹和演算器與用於連接該些之手段的數位信號處理器。該 數位信號處理器則是以整數爲對象。 又在特開平5—216657中則記載有用於數位信 號處理的高速處理器,而記載了利用該高速處理器的浮動 小數點積和演算來執行幾何(geometry)處理。 又在特開平5-233228中則記載之浮動小數點演算裝置以 及其演算方法,而且記載有縮小浮動小數點單元之尺寸的 方法。由於係一將乘法陣列設成一半而使用2次的方式, 除了性能會成爲一半外,乘法陣列以外並不會被縮小,因 此會導致浮動小數點單元的面積對性能化降低。 以上所述之所有的習知技術對於使利用浮動小數點數 之4 X 4的行列演算或是內稹演算高速化則完全未加以考 慮。 本發明人等則針對使利用浮動小數點的行列演算或是 內積演算高速化加以檢討•根據此,由於浮動小數點數之 積和演算之電路規模大,因此在單純地予以並列時’則其 ---I--_— —,Γ ---11—訂 II----攻-------- . 一 . (請先聞讀背面之注$項再填寫本頁) 本紙張尺度適用中國國家橾準(CNS ) A4规格(210X297公釐} -5- 經濟部中央橾準局員工消费合作社印製 405093 a? B7 五、發明説明g ) 電路規模會顯著地增加,如在上述第1文獻中所記載般其 並列度爲2左右*而顯然在高速化有其極限•又在上述第 2文獻中所記載的內容,雖然可以在2個週期內實施利用 4 X 4之行列的座標轉換,而可以實現某個程度的高速化 ,但是很明顯地由於利用位元數少的整數積和演算器之緣 故,不得不犧牲掉演算精度。 本發明之其他目的即在於提供一種可以儘量抑制電路 的增大情形,而能夠高精度且高速地處理行列演算或是內 積演算的資料處理器。 本發明之目的在於提供一種能夠使利用浮動小數點數 的行列演算或是內稹演算高速化的資料處理器。 在本發明中所揭露之發明中之代表者若是簡單地說明 其槪要內容則如下。 亦即,耷料處理器,其中 浮動小數點單元具備演算部,而該演算部包含有分別 自不同的資料输入信號群供給浮動小數點數的虛數部,且 將所供給之虛數部相互間予以相乘時多個乘法器、接受各 乘法器的輸出而進行對位位移的分析器,根據上述浮動小 數點數的指數部而產生上述分析器之對位位移數以及規格 化前之指數的指數處理部,將上述分析器之輸出相加的输 入加法器;以及將上述多輸入加法器之輸出與上述規格化 前之指數予以規格化的規格化器· 藉由將多個乘法器的乘法運算以及各乘法器之乘法結 果的加法運算同時執行,資料處理器能夠使根據浮動小數 本紙張尺度適用中國國家標隼(CNS ) A4规格(210X297公釐) ϋ n -- -—^n I -f- I- (請先閲讀背面之注項再填寫本頁) 訂 405093 經濟部中央橾準局負工消費合作杜印裝 五、發明説明ς ) 點的內積演算或是向量轉換演算得以高速化。又由於可以 藉由,以同時的乘法以及加法運算來求取內稹’而不需要 在針對2個輸入每次進行稹和演算時要進行捨入(round)處 理,因此,內稹演算的等待時間(latency)短’演算精度變 高,而如對2個輸入每次反覆進行稹和演算時,不會因爲 演算順序不同即導致不同的演算結果·又由於資料處理器 只需具備1個用於規格化的電路即可,因此可以儘量地抑 制電路規模的增大情形,而能夠高速且高精度地根據浮動 小數點進行內積演算或是向量轉換演算· 爲了要能夠有效率地對於在浮動小數點數之同時的乘 法以及加法運算中之負數進行處理,上述演算部更包含可 因應在各乘法器中被相乘之浮動小數點數的符號而產生與 各乘法器之乘法結果呈對應之符號的符號處理部,上述分 析器具有可將對位移位結果選擇性地以反轉或是非反轉之 形態輸出的選擇器,當對於所對應之上述乘法結果的符號 爲負時則選擇反轉輸出,而上述多輸入加法器則進行在對 應於對上述乘法結果的符號爲負的分析器的輸出加1而產 生進位,且針對負的乘法結果進行2的補數處理。 .根據演算部而來之演算對象資料以及演算結果資料則 暫時、地儲存在暫存器檔案(register file)。此時,對於乘法 器之並列運算爲必耍的全部資料則必須自暫存器檔案並列 地供給到多個乘法器,此時,爲了要在不增加暫存器的埠( port)數以及暫存器之指定段(field)之位元數的情況下能執行 該處理,乃將暫存器檔案設成暫存器群組(register bank)構 (請先《讀背面之注意事項再填寫本頁) 十 訂 ! 本纸張尺度適用中國國家標準(CNS ) Λ4規格(210X297公釐) 經濟部中央揉準局貝工消费合作社印笨 405093 五、發明説明ς ) 造,而將多個暫存器群組或是單數的群組的暫存器呈並列 地連接到上述乘法器之各輸入端子。 當著眼於內稹演算時,則直接求取4元以下之內積的 內稹演算命令可以包含在資料處理器的命令組(set)中’上 述浮動小數點單元更具有可對用於規定分別由多個成分所 示表示之資料間之內積演算的浮動小數點命令進行解碼的 控制部,該控制部則對上述浮動小數點命令進行解碼,將 暫存器檔案所保有之資料的成分經由上述信號線群供給到 上述演算部,在上述演算部中對所給予的資料作內積演算 ,且將內積的演算結果寫入到上述暫存器植案內。 當著眼於行列轉換演算時,則用於求取轉換行列與向 量之稹的向量轉換演算命令可以包含在資料處理器的命令 組中。上述浮動小數點單位更具有可對用於規定分別由多 個成分所表示的資料與轉換行列之行列演算的浮動小數點 命令進行解碼的控制部,該控制部則對上述浮動小數點命 令進行解碼,而讀取暫存器檔案所保有之資料的成分與上 述轉換行列的成分,且將該些經由上述信號線群供給到上 述演算部,在上述演算部中對所給予的資料進行內積演算 ,且將內稹演算的結果寫入到上述暫存器槽案,將如此一 連串演算循環連續地反覆執行多次,控制上述各演算循環 的等待時間以使在連續多次被執行之最後的演算循環中的 上述暫存器檔案的讀取動作較將在最初之演算循環中的內 稹演算結果寫入到上述暫存器檔案的時間爲早•又,此時 ,若在上述各演算週期中針對雙方之群組呈並列地進行自 本紙張尺度適用中國國家標率(CNS > Α4规格(210X297公釐) (請先Μ讀背面之注$項再填寫本頁) 訂 -^! -8- 經濟部中央標準局貝工消费合作社印製 405093 五、發明説明g ) 上述暫存器.樣篇的讀取動作或是只針對其中一個群組進行 對上述暫存器群組的寫入動作’則可以彌補浮動小數點暫 存器之數量的不足。亦即可以將多個操作數〇Perand(轉換行 列、向量資料)個別地分別配到多個群組而利用暫存器檔案 〇 在利用該暫存器群組時,如1 6位元固定長度浮動小 數點命令般,暫存器指定區(field)乃被限制,因此對於暫存 器的數目被限制之體系結構(aVchitecture)有用,且對於資源 被限制之體系構造(avchitecture)的資料處理器而言•可以 根據浮動小數點來進行內稹演算以及向置轉換演算。 又藉由在上述演算部追加係數表以及乘法器的回饋電 路,可以根據區間分割與高次的多項式展開來求取三角函 數的近似値。根據此,可以在不必大幅增加晶片面積的情 況下即能夠得到在轉換行列等中所利用的正弦以及餘弦· 資料處理器更包含被連接到位址匯流排以及資料匯流 排的C P U,而上述浮動小數點單元被連接到上述資料匯 流排,且上述浮動小數點單元則利用1 6位元固定長度浮 動小數點命令組來執行浮動小數點處理。上述C PU則進 行對於上述浮動小數點單元要得到執行浮動小數點處理的 命令與資料時爲必要的定址(addressing)處理•藉此,浮動 小數點單元不需要支援與C P U相同之高性能的定钍模式 ,而就該點而言,浮動小數點命令可以得到1 6位元固定 長度。 本發明之上述以及其他的目的與新穎的特徵可以-由本 本紙張尺度適用中國國家揉準(CNS ) A4规格(210X297公釐) (#先閱讀背面之注意事項再填寫本篾) 訂 -f. • 9 · 經濟部中央揉準局貝工消费合作社印裝 405093 五、發明説明& ) 說明書的記載以及所附的圖面而明白。 資料處理器之構成 第1圖係表本發明之一例之資料處理器的方塊圖•在 同圖所示之資料處理器1具有32位元R I S C ( Reduced Instruction Set Computer)的體系結構,而執行1 6位元固 定長度浮動小數點命令。該實施態樣對於應用到必須要充 分地支援3次元圖面之機器組入控制(例如視頻遊戲)極爲有 效。 該資料處理器1具有浮動小數點單元2·而浮動小數 點單元2進行演算之浮動小數點數則被設爲單精度。更者 ,資料處理器1具有中央處理裝置(CPU)3,該CPU3 則被設成具有可以處理整數之能力的整數單元。上述 C P U 3則經由3 2位元資料匯流排4而被結合到上述浮 動小數點單元2。C P U 3以及浮動小數點單元2則經由 命令匯流排5自命令快取單元6讀入命令。命令位址則自 CPU 3被供給到命令快取單元6。資料快取單元7則被 連接到上述資料匯流排4,且經由資料位址匯流排8自 C P U 3被供給資料位址。上述資料快取單元7以及命令 快取單元6則分別備有未圖示的快取控制器以及快取記億 體。上述命令快取單元3以及資料快取單元7則經由包含 資料信號以及控制信號的快取匯流排13被連接到匯流排 控制器9。在命令快取單元6中之因爲快取失誤(cTache miss)等所引起之用於外部存取的命令位址則被供給到上述 本紙張尺度適用中國國家揉準(CNS ) A4规格(210X297公釐) <請先《讀背面之注$項再填寫本頁) 訂 •10- 經濟部中央橾準局貝工消費合作社印製 A7 405093 B7___ 五、發明説明) 匯流排控制器9。又在資料快取單元7中之因爲快取失誤 等所引起之用於外部存取的資料位址則被供給到上述匯流 排控制器9。匯流排控制器9則根據該些命令位址或是資 料位址,而爲了要對被連接到代表性被圖示之位址端子以 及資料端子等的外部記憶體等進行存取,則起動外部匯流 排週期。又,計時器或串列通訊介面控制器等的周邊電路 10則經由周邊匯流排11被連接到匯流排控制器9·第 1圖所示之資料處理器則被形成在如單晶矽般的1個半導 體基板上。上述浮動小數點單元(以下只稱爲F P U)2則爲 了要實施浮動小數點處理乃自記憶髅要求資料或命令。在 本實施形態中,上述F P U 2並未具備將資料儲存在資料 快取單元7之快取記憶體或是自該快取記憶體獲得資料之 記憶體定址(memory addressing)能力。而此是因爲藉由去 除F P U 2之記憶體定址電路的必要性可以節約晶片面積 之故。取代此,CPU3則具有代替FPU2對快取記憶 體等實施定址的功能。因此,FPU2或浮動小數點命令 並不需要支援與C P U 3同樣之強力的定址模式,該功能 全部由CPU3來負擔。CPU3不只爲了 FPU2要自 記憶體取出(fetch)資料,CPU3也爲了 FPU2要自記 憶體取出(fetch)包含浮動小數點命令在內的所有的命令。
命令則爲C P U 3與F P U 2兩方所讀取且被解碼。 CPU3,當經解碼的命令爲CPU命令時,則執行由其 所指示的整數處理·又,CPU3,當經解碼的命令爲 FPU命令時,則取代FPU2而進行定址處理·FPU 本紙張尺度適用中國國家標準(CNS ) A4规格.(210X297公釐) {請先閲讀背面之注意事項再填寫本頁) 訂 ?、! -11 - 經濟部中央標準局員工消費合作社印装 405093___B7____ 五、發明説明b ) 2,當經解碼的命令爲F P U命令時,則執行由其所指示 的浮動小數點處理。又,FPU2,當經解碼的命令爲 C PU命令時,則忽視該命令。 第2圖係表上述資料處理器之主要的暫存器構成* CPU暫存器具有1 6個通用暫存器r 〇〜r 1 5以 及與此對應之卡聶爾群暫存器(Kernel bank register)kO〜k7 。例如卡聶爾群組暫存器k 0〜k 7,在例外發生時,會 取代通用暫存器r 〇~r 7的保存動作(save)藉由群組切換 控制而被利用· FPU暫存器係設成具有前群組(front bank在此bank 是指在主記憶體中,讀取以及寫入可獨立構成的部分)與後 群組(back bank)的群組暫存器(bank register)。群組暫存 器則具有與此對應的16個暫存器b 0〜b 1 5 »要利用那 一個群組的暫存器則是由例如控制暫存器之控制位元的値 來決定,當爲FPU暫存器時,在執行特定之浮動小數點 命令時,可將兩方之群組的暫存器當作來源暫存器(source register)以及目的暫存器來使用。至於其詳細內容請容後 述。前群組的暫存器f 0〜f 1 5則相對於單精度格式的 浮動小數點數設成1 6個暫存器,而相對於倍精度格式的 浮動小數點數設成8個暫存器(dO,d2,d4,d8, dlO,dl2,dl4),且相對於各成分具有甴單精度 格式所給予之4個成分的向量資料設成4個向量暫存器( vO,v4,v8,vl2)。. 又具有由F P U 2與C PU 3所共有之通訊暫存器 本紙張尺度適用中國國家標準(CNS ) A4規格(210X297公釐) {請先聞讀背面之注意Ϋ項再填寫本頁) f 訂 • 12- 經濟部中央標準局貝工消费合作社印装 405093 五、發明説明k ) FPUC。該暫存器FPUC係爲了使在CPU3與 F P U 2之間之資料的授受得以高速化而設的。此外,上 述各暫存器係3 2位元的構造。 F P U的構造 第3圖係表上述FPU2的方塊圖。FPU2係由轉 送方塊2 0,暫存器棺案(register file)21,演算方塊2 2 以及控制部2 3所構成。演算方塊2 2的詳細內容如後所 述具有用於實現行列演算或向量演算之高速化的積和演算 電路的構造。暫存器檔案2 1包含第2圖中所述之F PU 2暫存器,針對演算方塊2 2具有8個讀取埠A[〇], B[〇], A[l], B[l], A[2], B[2], A[3], B[3] ,具有可自演算方塊2 2接受資料的寫入埠X。轉送方塊 2 〇具有可將自暫存器檔案2 1的寫入埠C所輸出的資料 供給到資料匯流排4的匯流排驅動器2 0 0,以及選擇來 自資料匯流排4的輸入或是來自暫存器檔案21之輸出而 供給到暫存器植案2 1之寫入淳Y的選擇器2 0 1。控制 部2 3則對自命令匯流排5所供給的命令進行解碼,且根 據該解碼結果來控制傳送方塊2 0,暫存器檔案2 1以及 演算方塊2 2。匯流排驅動器2 0 0以及選擇器2 0 1的 控制信號BusDrv以及LoadCnti也是囱控劁部2 3所形成。 第4圚係演算方塊2 2的一例。演算方塊2 2具有分 別地結合到暫存器植案之寫入埠A[0],B[0],A[l], B[l],A[2],B[2],A[3],B[3](將該些寫入埠簡 本紙張尺度適用中國國家揉準(CNS ) A4规格(2丨0X297公釐) (讀先閲讀背面之注意事項再填寫本頁) 订 -13- 405邮 經濟部中央標準扃貝工消费合作社印製 五、發明説明h ) 稱爲 A[n],B[n]的信號線 La〇,Lb〇,La 1, Lbl,La 2,Lb2,La3,Lb3(將該些信號線 群簡稱爲La i,Lb i)·經由各信號線群La i , Lb i將浮動小數點數的虛數當作乘數以及被乘數供給到 4個乘法器220a〜220d·乘法器220a〜 2 2 0 d則將分別所供給的乘數以及被乘數相乘,且輸出 其稹 M[〇],M[l],M[2],M[3](以下簡稱爲 M[n])。 積Μ [ 0 ],Μ [ 1 ],Μ [ 2 ],Μ [ 3 ]則分別被供給到對應的 對位器2 2 Γ a〜2 2 1 d。 被供給到各信號線群La i ,Lb i之浮動小數點數 的指數部則分別被供給到加法器2 2 2 a〜2 2 2 d ·又 被供給到各信號線群La i,Lb i之浮動小數點數的符 號部則分別被供給到排他性邏輯和閘E OR 1〜E OR 4 〇 上述加法器222a〜222d、最大指數遘擇部. 2 2 3以及減法器2 2 4 a〜2 2 4 d則構成指數處理部 228。加法器222a〜222d則將與乘數和被乘數 對應之浮動小數點數的指數部相加,且输出其和E[〇], £[1],£[2],£[3]。最大指數選擇部2 2 3則自上述 指數的和E[0],E[l],E[2],E[3]中選出最大者作 爲£11^-乂。減法器2243〜224(1則自£1112艾減去 E[〇],E[l],E[2],E[3],而得到差分Ediff[0]’ Ediff[ 1 ],Ediff[ 2 ],Ediff[ 3 ](以下簡稱爲 Ediff[n]。上述 差分 Ediff[ 0 ],Ediff[ 1 ],Ediff[ 2 ],Ediff[ 3 ]則藉由上述 (請先閲讀背面之注意事項再填寫本頁 Λ·. 訂 成 本紙張尺度適用中國國家標準(CNS ) A4規格(210X297公漦) 405093_^_ 五、發明説明h ) 對位器22 1 a〜22 1 d而控制對位位移數。因此’各 對位器221a〜221d的输出Ma 1η[0],
Ma 1 n[l],Ma 1 n[2],Ma 1 n[3]以下簡稱爲 Ma 1 n[n]則具有與最大指數Emax呈對應的位數位置 。如此般,指數部2 28除了根據上述差分Ediff[ 0 ], Ediff[ 1 】,Ediff[ 2 ],Ediff[ 3]而決定上述對位器 2 2 1 a 〜2 2 1 d的對位位移數外,也根據浮動小數點數的指數 部而產生在規格化前的指數Ema X。 上述排他性邏輯和閘EOR1〜EOR4、排他性霪 輯和閘EOR5〜EOR8以及符號選擇部2 2 5則構成 符號處理部229,上述排他性邏輯和閘EOR1〜 經濟部中央標準局舅工消费合作社印簟 {請先閱讀背面之注意事項再4寫本頁) E OR 4則輸入與乘數和被乘數對應之浮動小數點數的符 號而判斷乘數與被乘數之積的符號。經判定的符號S[〇】, 8[1],8[2],8[3]則在符號選擇器2 2 5中將與上述 與上述Emax對應的其中一者選作Sma X。上述符號S [0],S[l],S[2],S[3]與代表符號 Smax 是否一 致則是由排他性邏輯和閘EOR5〜EOR8來決定。該 判定結果 Inv[〇],Inv[l],Inv[2], I η v [3 ](以下簡稱爲I η ν [η ]))則被供給到所對應對位 器221a〜22 1d,例如當判定結果Ιην[〇], I η ν [ 1 I η ν [ 2 ],I η ν [ 3 ]爲邏輯値、1,時, 則對位器2 2 1 a〜2 2 1 d會使所對應的積Μ[η]反轉而 形成輸出Ma In [η]。而此則設成將稹Μ[η]轉換成2的 補數的前置處理·如此般,符號處理部2 2 9則會針對在 本紙張尺度適用中國國家標準(CNS ) Α4洗格(2丨0X297公釐) -15- 經濟部中央標準局負工消费合作社印製 405093 A7 ____B7 五、發明説明b ) 各乘法器2 2 0 a〜2 2 0 d中被乘之浮動小數點數的符 號而產生在規格化前的符號Sm a X以及與針對該符號 Sm a X之各乘法器的乘法結果對應的符號I η v[n]。 4輸入加法器2 2 6則並列地輸入上述對位器2 2 1 a〜22 1 d的輸出Ma 1 n[n]而予以相加。在進行4輸 入的並列加法處理時則供給上述符號I η v[n]。至於詳細 內容請容後述。4輸入加法器2 2 6則根據上述符號 1 η v[n]針對進行上述2之補數化之前置處理的輸出 Ma 1 η[ηί實施在其最下位加1的處理。 4輸入加法器2 2 6的輸出Ma cm則被供給到規格 化,正數化以及捨入處理電路2 2 7。該電路2 2 7則根據 規格化前的指數Ema X,加法輸出Ma cm與符號 Sm a X實施規格化以及正數化,且實施適合於單精度浮 動小數點格式的捨入處理而得到浮動小數點數。由此所得 到之浮動小數點數則設成A [ 0 ] · B [ 0 ] + A [ 1 ] · B [ 1 ] + A[2]· B[2]+A[3]· B[3]的積和演算結果。 第5圖係表最大指數選擇部2 2 3的一例,藉由大小 比較器2 2 3 0來比較上述E[l]與E[〇],而由選擇器 2 2 3 1選擇較大者。同樣地藉由大小比較器2 2 3 2來 比較E[3]與E[2],而由選擇器2 2 3 3選擇較大者•而 由2個選擇器所選岀者會進一步在大小比較器2 2 3 4中 被比較,而由選擇器2 2 3 5選擇較大者·選擇器 2 2 3 5的输出則被設成上述規格化前的指數Em a X。 第6圖係表符號選擇部2 2 5的一例•選擇器 本纸張尺度適用中國國家揉準(CNS > A4规格(210X297公釐) (請先聞讀背面之注意事項再填寫本頁) 訂 峡 j -16- 經濟部中央標準局負工消费合作社印掣 405093 ab; 五、發明説明(j4 ) 2 2 5 0則選擇上述S [ 1 ]或s [ Ο ],選擇器2 2 5 1則選 擇上述S[3]或S[2],選擇器2 2 5 2則選擇選擇器 2 2 5 0的輸出或是選擇器2 2 5 1的输出。選擇器 2 2 5 0〜2 2 5 2的選擇控制信號則設成上述大小比較 器2230,2232,2234的比較判定結果信號 MaxCntl,藉此,與當作Em a X被選擇之指數有關之浮動 小數點數的符號部則被選擇作爲上述規則化前的符號 .S m a X ° 第7圖係表對位器2 2 1 a(22 1 b〜2 2 1 d)的一 例。移位器2210输入M[n],而根據Edi f f[n]來 控制對位位移數(位移位元數)。移位器2 2 1 0的输出則在 反相器2 2 1 1中被反轉,而選擇器2 2 1 2會根據 1 η ν[η]而選擇反相器2 2 1 1的输出或是位移器 2 2 1 0的輸出,所選出的値則設成M a 1 η[ η ]。 第8圖係表4輸入加法器2 2 6的一例。該4輸入加 法器2 2 6則具有在進位儲存加法器陣列2 2 6 0中個別 地求取進位淸除clear carry的和(和輸出)與進行carry(進位 輸出),而在到達於進位傳播加法器2 2 6 1中得到最終的 和的時刻以前讓進位之傳播延遲的電路形式•由該4輸入 加法器2 2 6所得到的和Ma cm由於有相對於所輸入的 位元數最大增加2泣元的情髟,因此,被輸入到4輸入如 法器2 2 6的積Ma 1η[ η]則事先被實施2位元碼擴張而 被供給到進位儲存加法器陣列2 2 6 0。 在第8圖中,用於上述2之補數化的後績處理(+ 1)則 本紙張尺度適用中國國家揉準(CNS ) A4规格.(210X297公漦) (婧先閲tt背面之注意事項再填寫本頁) 訂 -t' -17- A7 B7 五、發明説明(j5 ) 是由3位元的進位信號C i n[〇],C i n[l】, C i n[2]’所進行•由上述的說明可知,由於符號選擇部 2 2 5會選擇S[n]中的其中一者,因此,在v n[n]中的 至少一者必然會被設成邏輯値、〇*·因此,成爲2的補 數化的對象只能在Ma i n[n]中的3個以下。而由OR閘 2 2 6 2, OR閘 2263、AND .OR閘 2 2 64 來檢 測該情形。第9圓係表針對I nv[n]的値之C i n[〇], C i η [ 1 ],C i η [ 2 ]所能採得的値,由此可知, C i η[2]當I ην[2]與I ην[3]之至少其中一者爲邏 輯値、1,時會被設成邏輯値、1·,而Cin[l],當 I η v[l]與I nv[〇]的至少其中一者爲邏輯値、1·時 會被設成邏輯値、1,,Cin[〇],當Inv[l]與 I nv[〇]或是I nv[2]與I nv[3]均爲邏輯値, 時會被設成邏輯値'^1"。 第1 0圖係表上述進位儲存加法器陣列2 2 6 0與進 位傳播加法器2 2 6 1之詳細的邏輯構成的一例。上述進 位儲存加法器陣列2 2 6 0雖然未特別加以限制,但是是 由多個4 — 2壓縮器(4 一 2 C 0MP)2 2 6 5所構成。各 4 — 2壓縮器2 2 6 5,如第1 1圇的(A)所示具有5輸入 [I 1〜I 4,C i]與3输入(S,C,Co)。進位輸出 C 〇,由於連接到鄰接之上位位元的進位输入C i,因此 ,4 一 2壓縮器2 265會將4個位元I 1〜14相加· S爲其加法輸出,C爲由該相加所產生之進位输出。在4 —2壓縮器2265中,由於Cq>與C i無關,因此進位 本紙張尺度適用中國國家標準(CNS ) A4規格(210X297公釐) (請先閲請背面之注意事項再填寫本頁 訂 -< 經濟部中央標準局貝工消费合作社印装 • 18 - 經濟部中央標準局員工消费合作社印製 4050U3 五、發明説明(j6 )
不會傳播。例如,1個4 一 2壓縮器2265,如第11 圖的(B)所示,可以藉由2個全加法器所構成。全加法器, 雖然未特別加以限制,但是可以利用3個來構成(C)所示的 多工器MUX。此外,對於4 一 2屋縮器所記載的文獻則 有信學技報(電子情報通信學會)TECHNICAL REPORT OF IEICE ICD94-135 DSP 94-91(1994-10)的「應用路徑電晶體 多工器(path transistor multiplexer)之校則 54 x 54位元乘法 器j (第73頁〜79頁)· 在第1 0圖中,在上述對位器输出Ma ln[〇]〜
Ma ln[ 3]中之同一位數位置的位元則自下位側開始依序 以4位元爲單位被供給到各4 一 2壓縮器2 2 6 5。
Ma 1η[0]0 〜Ma ln[3]0。則意味著在 Ma 1 n[〇] 〜M a 1 n[3]中之最下位的4個位元。上述進位信號 C i n[3]則被供給到最下位的4 一 2.壓縮器2 2 6 5的進 位輸入端子C i。上述進位傳播加法器2 2 6 1係由多個 全加法器2 2 6 1所構成,而進位輸出則被設成上位全加 法器的進位輸入。全加法器之其中一個加法输入則被設成 4- 2壓縮器2 2 6 5的和輸出S,又另一個加法輸入則 被設成配置在其中一個上位之4 一 2壓縮器2 2 6 5的進 位输出C »上述進位信號C i n[2]則當作最下位之全加法 器其中一個加法输入信號被供給,而上述進位信號 本紙張尺度適用中國國家揉準(CNS ) Α4规格ί 2丨0X297公漦) --------卜·)------訂------焕、 - I ·ν {請先閲讀背面之注意Ϋ項再填寫本I ) -19- 經濟部中央標準局貝工消费合作社印褽 405093 A7 B7 五、發明説明(j7 ) c i n[l]則當作最下位的全加法器的進位輸入信號被供給 〇 第1 2圖係表暫存器植案之一例的方塊圖,第1 3圖 係表構成暫存器槍案之各暫存器群的構成,第1 4圖係表 暫存器群之各暫存電路的構成》 暫存器植案,雖然未特別加以限制,但是如第1 2圖 所示具有4個暫存器群FR-G r[〇]〜FR_G r[3], 各暫存器群R — G r[m],如第1 3圖所示具有4個暫存電 路 FR[m],FR[m+4],FR[m+8],FR[m + 2] 。在第1 3圖中,m爲0〜3的整數。各暫存電路則如第 14圖所示具有構成前群組與後群組的一對的暫存器 FRJ[n],FRK[n]。在第14圖中,η爲0〜15的 整數。針對暫存器FRJ[n],FRK[n]之寫入動作的指 示則是由信號WriteU]所提供。設成寫入對象的暫存器則是 根據信號Ba nk選擇其中一者。暫存器FRJ[n], FRK[n]的輸出與端子P[n],Q[n]的對應則根據信號 Bank而以選擇器SL1,SL2交互地切換。如第 1 3圖所示,在1個暫存器群中,4個暫存電路之端子 P[m],P[m+4],P[m+8],P[m+12]則可藉由 根據2位元的信號Read A由選擇器SL3選擇其中 者連接到端子R [in],同樣地則藉由根據2位元的信號 本紙張尺度適用中國國家標牟(CNS ) A4规格(210X297公釐) ------·---ί -- (請先閱讀背面之注意事項再填寫本頁) 订 i. 經濟部中央標準局貝工消费合作社印簟 405093 五、發明説明(j8 )
Read B由選擇器SL4選擇其中的一者連接到端子 B[m]。暫存器群的端子Q[m],Q[m + 4],Q【m + 8] ,Q[m+l 2]則是由爲信號Re a d A所控制之選擇器 S L 5 — S L 8依暫存器群群爲單位被選擇•上述選擇器 SL5,SL6,SL7,SL8的输出與各暫存器群的 输出R[3],R[2],R[l],R[〇]則是由爲信號
Read Type所控制之選擇器SL9,SL10, S L 1 1,S. L 1 2所選擇,而所選出者則當作讀取埠 A[3],A[2],A[l],A[0]的输出。因此,自讀取埠 A[3],A[2],A[l],A[〇]’ 如第 1 5 圖所示,依暫 存器群爲單位自4個浮動小數點暫存器並列地讀取資料, 或是自各暫存器群一個一個地讀取資料。又,各暫存器群 的輸出B[3],B[2],B[l],B[〇]則直接設成讀取埠 B[3],B[2],B[l],B[0]的輸出。因此,自讀取埠 B[3],B[2],B[l],B[0],如第 16 圖所示’自各 暫存器群一個一個地並列地讀取資料。各暫存器群之输出 B[3],B[2],B[l]’ B[0]根據信號 Re a d C 而 由選擇器S L 3所選擇者則被連接到上述讀取埠C »因此 ,如第1 7圖所示,根據信號Re a d B與Re a d C的狀態任意地選擇暫存器而可以自埠C讀取。來自上述 寫入埠X,Y的輸入則爲由信號Wr i t e Type所 控制的選擇器S L所選擇· 本紙張尺度適用中國國家標準(CNS ) A4規格(210XW7公釐) (請先閱讀背面之注意事項再填寫本頁) 訂 405093 b7__ 五、發明説明(j9 ) 內積演算 針對利用上述F P U 2的內積演算加以說明。例如內 稹,如第1 8圖所示,在3次空間可以利用在當光到達某 個特定面時的亮度。FPU2可根據1個浮動小數點內積 演算命令(簡稱爲內積演算命令)F t p r Vn,Vm來求 向量 V1(=[X1,Y1,Z1,W1)]與 V2(=[X2, Y 2,Z 2,W 2 )]的內積 i e 上述內稹演算命令之處理的槪略內容則如第1 9圖所 示。例如將[X 1,Y 1,Z 1,W 1 ]載入到暫存器檔案 2 1之向量暫存器v〇,而將[X2,Y2,Z2,W2]載 入到V4。當上述內積演算命令爲控制部2 3所解碼時, 則控制暫存器檔案2 1的讀取動作’而分剧別將X 1與 X2,Y1與Y2,Z1與Z2,以及W1與W2呈並列 地供給到乘法器220a,乘法器220d,乘法器 220c,乘法器220d。在第19圖中,雖然是省略 了上述指數處理部以及符號處理部等的圖示,但是並列的 乘法結果則會經由上述對位器的位移以及反轉而在4輸入 加法器2 2 6中相加,針對該加法結果實施規格化而得到 內積。所得到的內稹則會經由埠X被覆寫在向置暫存器V 0中保有W1的値的暫存器•如此般,由於並列地進行浮 動小數點的稹和演算,因此能夠使內稹演算變得高速· 第2 0圖係表與上述內稹演算命令中之暫存器檔案之 利用有關之規格的一例。亦即,將向置V [m ]與V [η ]的內 本紙張尺度適用中國國家揉準(CNS ) A4规格(210X297公釐) (請先閱讀背面之注意事項再填寫本買 訂 經濟部中央標準局貝工消费合作社印製 I— · -22- 經濟部中央標準局負工消费合作社印製 405093 五、發明説明) 稹演算結果儲存於浮動小數點暫存器F R[n + 3]·向量V [η]的成分則被載入到浮動小數點暫存器FR[n],FR[ n + 1],FR[n + 2],FR[n + 3]。在此 η 可爲 0, 4,8,1 2中之任一者,又,FR[n]可以理解成與上述 前群組之暫存器f η對應者,暫存器植案2 1在構成上, 暫存器FR[n],當控制信號B a n k = 〇時則被分配到暫 存器FR J[n],而當控制信號B a n k = 1時則被分配到 暫存器F RK[n]。在此規格,若當在第1 5圖之B a n k =0,Re ad = A之情況下,將向量資料V[n]放入由來 自埠A的輸出所指定之暫存器FRJ[〇],FRJ[1】, FRJ[2],FRJ[3],而當在第 16 圖之 Bank = 〇 ,R e a d = 1之情形下將向量資料V[m]放入由來自埠B 的輸出所指定之暫存器FRJ[4],FRJ[5],FRJ[ 6],FRJ[7]時,則可以將對於V[n]與V{m}之內積演 算爲必要之8個成分資料並列地供給到演算方塊而能夠進 行上述的內積演算。在演算時實際上則根據內稹演算命令 的暫存器指定段(field)來指定要對那一個暫存器進行存取。 在根據該暫存器指定段來指定暫存器時,則在指定來源暫 存器與目的暫存器則利用4位元。 向置轉換演算 其次則針對利用上述F P U 2的向量轉換演算來加以 說明。習知之4行4列的轉換行列可以表示並進、回轉、 伸長以及透視等的轉換。根據該轉換行列與向量的積可以 本紙張尺度適用中國國家搮準(CNS ) A4规格(210X297公釐) -23- I I 111— I--H1 n .«1-{ {請先聞讀背面之注意事項再填寫本頁) 經濟部中央標準局貝工消費合作社印製 405093 g 五、發明説明L ) 得到表示該轉換行列的向量轉換•向惫轉換演算一般而言 可如第21圖所示。A爲轉換行列、P爲被成轉換對象的 資料,P <爲轉換後的資料·該向置轉換可以根據1個浮 動小數點向量轉換演算命令(簡稱爲向量轉換演算命令) ftrv back,Vn而求得》 根據上述向量轉換演算命令之處理的槪略內容則表示 在第22圖。例如,轉換行列被配置在後群組的16個暫 存器。此外,向量資料[Xi,Yi,Zi ,Wi]則被儲存 在構成前群組的暫存器內。 根據該向量轉換演算命令的處理實質上則與反覆4次 的內積演算相等。亦即,演算[Xi,Yi ,Zi,Wi]x [al 1,al2,al3,al4],且將其結果寫入Xi 的領域,之後演算[Xi,Yi,Zi,Wi]x[a21, a22,a23,a24],且將其結果寫入到Yi的領域 ,之後則演算[Xi ,Yi ,Zi ,Wi]x(a31, a32,a33,a34],且將其結果寫入到Ei的領域 ,之後則演算[Xi ,Yi ,Zi,Wi]x[a41, a42,a43,a44],且將其結果寫入到Wi的領域 。各處理實質上則與內稹演算處理相同β 當上述向量轉換演算命令在控制部2 3中被解碼時, 則用於進行上述最初之內積演算處理的資料會自暫存器植 案2 1分別呈並列地被供給到乘法器2 2 0 a〜2 2 0 d 等。在第2 3圔中同樣地省略上述指數處理部以及符號處 理部等的圖示,而並列的乘法結果會經由上述對位器的位 本紙張尺度適用中國國家標率(CNS ) A4規格(210X297公釐) ------.--UI ^------訂------均、.--U---r \\ • » (請先閱讀背面之注意事項再填寫本霣) -24- 經濟部中央標準局貝工消费合作社印製 405093 A7 ____B7 五、發明説明) 移以及反轉等而在4输入加法器2 2 6中被相加,針對該 加法結果進行規格化而得到內稹。所得到的內稹則被寫入 到保有X i的暫存器內》該處理則依序變更暫存器檔案之 讀取對象暫存器與寫入對象暫存器而反覆地執行•如此般 ,藉由連績4次反覆地執行浮動小數點的內稹處理,可以 高速地得到向量轉換的結果· 第2 3圔係表與在上述向量轉換演算命令中之暫存器 槽案之利用有關的規格的一例·亦即,將向量V[n]與轉換 行列Matrix的積覆寫到暫存器V[n]»向量V[n]的成分則 被載入(load)到浮動小數點暫存器FR[n],FR[n + l] ,FR[n + 2],FR[n + 3]。在此,η 爲 0,4,8 * 1 2中之.任一者,又,FR[n]可以被理解成與上述前群組 的暫存器f η對應者。轉換行列則被儲存在構成後群組之 位址FB[0〜FB[1 5](與第2圖之b〇〜b 1 5對應的 位址)內。至於暫存器檔案2 1的構成*暫存器F B[n], 當控制信號B a n k = 0時則被分配到暫存器FRK[n], 而當控制信號B a n k = 1時則被分配到暫存器FR J[n] 〇 在該規格中,轉換行列Matrix,在第1 5圔中,在 Read Type=l的狀態下會自埠A被並列地输出 ,而向量V [ η ]則自埠B被筮列地輸出。例如在最初的內稹 演算中,若參照第15圖,根據Read Type=l »Bank=l »Read A = 0,可自 FRJ[0], FRJ[4],FRJ[8],FRJ[12],自埠 A 輸出轉換 本紙張尺度適用中國國家揉準(CNS ) A4规格.(210X297公釐) II Γ ^ 訂------Λ---- -l /.. (請先閲讀背面之注意i項再填寫本I ) -25- ^_ 五、發明説明b ) 行列Matrix的第1行,且與此並行地,根據B a nk = l ’ Read B = 〇,自 FRK[0],FRK[1],FRK[ 2],FRK[3],自埠B输出轉換對象向量[X i ’ Y i, Z i,,W i ]·接下來的3次的內積演算,可以讓根據 Read A的選擇依1,2,3般地變化·來自埠B的 讀取對象暫存器,在4次的內積演算處理中皆設成相同。 根據1個向量轉換命令的上述多次的內稹演算處理, 如第2 4圖所示係依搛並列處理(pipeline)處理方式來進行 。亦即,以1個命令可以執行4個並列處理處理·內積演 算處理的1個並列處理係設成暫存器讀取階段RR、第1 演算階段F1、第2演算階段F2、第3演算階段F3、 暫存器寫入階段RW、以及省略圖示之命令取得階段•命 令取得階段當然被配置在暫存器讀取階段RR之前,又, 經濟部中央標準局貝工消费合作社印裝 {請先閏讀背面之注意事項再填寫本買)
暫存器讀取階段RR也包含命令的解碼處理。在該例中, 自來法’運算到規格化爲止的演算則經過3個演算階段•在 第2 4圖之(1)之並列處理上所執行的處理,則是進行(F B[0],FB[4],FB[8],FB[12]xV[n]的內稹演 算,且將其結果寫入到暫存器F R[n],而在(2)之並列處 理上所執行的演算處理,則是進行)(F B[l],F B[5】, FB[9],FB[1 3])xV[n]的內積演算,且將其結果寫 入到F R [ η + 1 ],而在(3 )之並列處理上挢執行的演算處 理,則是進行(FB[2],FB[6],FB[l〇],FB[1 4])xV[n]的內稹處理,且將其結果寫入到FR[n + 2] ,而在(4)之並列處理上所執行的演算處理,則是進行(F 本紙張尺度適用中國國家輮準(CNS ) A4規格(210X297公釐) -26- 經濟部中央標準局貝工消费合作社印装 405093 五、發明説明&4 ) B[3],FB[7],FB[1 1],FB[1 5])xV[n]的內 積處理,且將其結果寫入到F R[n + 3]。目的暫存器F R [n],FR[n + l],FR[n + 2],FR[n + 3]則爲 V[ n ]的來源暫存器。 此時,一連串4次的內積演算處理,位在先頭之並列 處理(1)中的暫存器寫入階段RW則是設在最後之並列處理 (4)中的暫存器讀取階段RR之後。換言之,自暫存器槍案 2 1讀取V[n]的成分與上述轉換行列的成分且進行內積演 算,而將該內積演算的結果寫入到暫存器檔案之一連串的 演算循環,當連續地反覆執行多次時,則控制各演算循環 的延遲時間以使在連嫌被執行之最後的演算循環中之上述 暫存器檔案的讀取動作能較將在最初之演算循環中的內積 演算結果寫入到上述暫存器檔案的時間爲早•因此,即使 來源暫存器與目的暫存器爲同一個暫存器,在自來源暫存 器全部的資料未被讀取之前不會進行寫入動作,因此不會 意外失去資料V[n]» 又即使是將向量轉換演算中之向量資料的來源暫存器 與目的暫存器設爲同一個,也不會對動作造成阻礙 由於可以將轉換前後的向量資料配置在同一個暫存器 因此容易製作出大量利用向量轉換處理的程式•又,3次 元圖形等中的向量轉換演算則針對多數的向量或是點來進 行。此時,若是將轉換前後的資料配置於同一個暫存器, 當將4個向量資料載入到構成16個前群組的浮動小數點 暫存器時,則可以連績4次地執行向量轉換命令。亦即, 本紙張尺度適用中國國家揉準(CNS ) A4规格(210X297公釐) (請先閲讀背面之注意事項再填寫本頁) 訂 -攻丨· -27- 經濟部中央標準局系工消費合作社印製 405093 A7 ______B7_ 五、發明説明& ) 演算對象資料對於16個浮動小數點暫存器的載入或是演 算結果資料對記億體的儲存動作只需要很少即可。相對於 此,若是將轉換前後的資料儲存到另一個暫存器時,則在 執行1個向量轉換命令時需要8個浮動小數點暫存器,結 果全導致演算對象的載入動作或是演算結果資料的儲存動 作的頻率變多。而其意味著將在向置轉換演算中之向量資 料的來源暫存器與目的暫存器設成相同,由於暫存器的數 目被限制,因此對於使向量轉換演算變得髙速化極爲有用 正弦餘弦演算 在上述演算方塊2 2中,藉由在上述內積演算用的硬 體追加係數表或是乘法器的回饋電路,可以根據區間分割 與高次的多項式展開來求取三角函數或是平方根的近似値 。如當上述轉換行列爲回轉轉換時則包含正弦以及餘弦。 當針對所有必要的角度具有正弦以及餘弦的表時,則不能 夠忽視因此所造成之晶片面稹增大的情形。 在此則針對利用上述演算區塊2 2來求取正弦與餘弦 的近似値來加以說明。附加了以下所述之構成的F P U則 執行以1個命令並行地演算正弦與餘弦的正弦餘弦命令。 該正弦餘弦命令的規格則如第2 5圖所示,將針對與铍載 入到浮動小數點暫存器F R[〇]之角度資料對應的正弦的値 演算的結果寫入到暫存器FR[n],同樣地將針對與被載入 到暫存器F R[0]之角度資料的餘弦的値演算的結果寫入到 本紙張尺度適用中國國家揉準(CNS ) A4规格ί 210X297公釐) (讀先聞讀背面之注$項再填寫本筲) 訂 峡 • 28 · 405093 a? B7 經濟部中央揉準局™ί工消费合作社印笨 五、發明説明b ) 暫存器FR[n + l]。 第2 6圖係表上述角度資料的格式•上述角度資料則 根據以1個浮動小數點暫存器的上位16位元與下位16 位元的邊界作爲固定小數點位置的3 2位元固定小數點數 來表示回轉數•以小數點位置爲邊界的上位16位元則給 予回轉數(整數),而以小數點位置爲邊界的下位1 6位元則 定義將1次的回轉以2的1 6次方來分割。特別是在下位 16位元中的上位2個位元則意味著由小數點以下16位 元的資料所特定的角度所屬的象限•該角度格式,例如 360°表1 . 0,16進位的位元型式爲' 0 0 0 1 0 0 0 0 " · 正弦餘弦命令則可針對上述角度格式的角度資料,根 據資料展開的多項近似而取得其正弦以及餘弦•第2 8圖 係表其演算手法。 上述多項近似係一將上述角度資料之小數點以下1 6 位元分成中心値X與相對於該中心値的差分値d X,而演 算與上述角度資料對應的正弦與餘弦的値者。只有對於上 述多項近似爲必要之針對上述中心値X的正弦或餘弦的値 保有作表•上述中心値X則將暫存器F R[ 0 ]之小數點以下 之7位元的最下位設成經0捨1入的値。而中心値與角度( 徑度)的關係則表示在第2 7圓。差分d X則將自暫存器F R[0]的最下位開始1 0位元設作經編碼擴張的値·由於在 多項近似中利用泰勒展開,因此在以徑度來表現角度時則 給予各項的係數。第2 8圖所示的S 1〜S 2則是以公式 f請先聞讀背面之注##>項再填寫本頁) -訂. -f' —· -LI, 本紙張尺度適用中國國家揉準(CNS ) Α4规格(210X297公釐) -29 * 經濟部中央標準局負工消費合作社印製 ^05093__£_____ 五、發明説明心) 來表示乘法器2 2 0 a(FMO)、乘法器2 2 O b(FMl) 、乘法器220c(FM2)、乘法器220d(FM3)以及 利用4输入加法器2 2 6的演算處理的內容•在S 9中則 是根據多項近似式來求取正弦的近似値(在第2 8圖中表示 該多項近似式),在S 1 2中則是根據多項近似式來求取餘 弦的近似値(在第2 8圖中表示該多項近似式)· 上述S 1〜S 1 2的演算則是在(1)〜(4)所示之並列 處理(pipeline)中被處理》如上所述,角度資料之下位1 6 位元中的上位2,位元則意味著由小數點以下1 6位元的 資料所特定的角度所屬的象限。因此,控制部會根據上述 上位2位元的解碼結果(根據由該角度資料所特定的角度所 屬的象限)來控制選擇對根據上述多項近似之S 1 0,S 1 2的演算結果實施符號反轉或是將其演算結果儲存在暫存 器 FR[n]或是F R[n + 1]之其中那一個,而將與上述象限 對應之正弦以及餘弦的値儲存到分別所分配到的暫存器 F R[n]或是F R[n + 1]。各象限之上述反轉動作與暫存 器選擇動作則如第2 8圖所示· 第2 9圖係表用於執行上述正弦餘弦命令的係數表與 附加乘法器之回饋系統的上述乘法器附近的方塊圖。第 2 9圖之電路的基本要素爲第4圖的演算方塊*而不同點 只有針對第4圖的演算方塊2 2追加8位元以及6位元編 碼擴張器300,係數表301,以及選擇器302〜 3 1 2。暫存器FR[〇]的角度資料則是由埠B[〇]來提供 本紙張尺度適用中國國家標率(CNS ) A4规格(210X297公釐) <請先《讀背面之注意事項再填寫本頁) 訂 •HTUI—. -30 * 經濟部中央梂準局員工消费合作社印装 405093 五、發明説明b ) 。8位元以及6位元編碼擴張器3 0 0係一根據暫存器F R[0]的最下位1 0位元產生差分d X的電路。係數表 3 0 1則保有與第2 7圖所示之中心値對應之正弦或是餘 弦之其中任何一者的資料,而输出由角度資料之下位1 6 位元中的下位5位元所指定之角度的正弦以及餘弦的資料 。而角度資料之下位16位元的上位2位元則被供給到控 制部》控制部則根據該2位元的値來控制選擇對上述4輸 入加法器的加法輸出進行選擇性的反轉或是儲存加法結果 之暫存器FR[n]或F R[n + 1]之選擇。此外,當係數表 3 0 1具有正弦資料時,則可以參照表以自中心値X的角 度減去ττ/2所得的角度當作餘弦。係數表也可以同時具 備正弦以及餘弦兩方的資料。 第3 0圖係表以粗的資線來表示在第2 8之(1)所示之 第1步驟中之資料的流向。第3 1圖係表以粗的實線來表 示在第2 8圖之(2)所示之第2步驟中之資料的流向•在該 圖中乘法器(FM〇)2 2 0 a的減法結果則被回饋到選擇器 308,311,而回饋(feed back)則只設在小數點以下( 上位設爲0)而得到+ 1的效果。第3 2圖係表以粗的實 線來表示在第2 8圖之(3)所示之第2步驟中的資料的流向 ,第3 3圖係以粗的實線來表示在第2步騍中的資料的流 向。在第3 2圔以及第3 3圖中,當二度莉用演算結果時 ,則抑制乘法器之輸入鎖存(latch)的更新且保持其値》第30 圖至第32圖所示的演算控制則是由對正弦餘弦命令進行解 碼的控制部來進行。 本紙張尺度適用中國國家標準(CNS M4规格(210X297公釐) (請先閱讀背面之注$項再填寫本賨) 訂 經濟部中央標準局貝工消费合作社印裂 405093 A7 B7 五、發明説明k ) 資料處理器1之優先性 上述FPU2的演算方塊22,如上所述,當執行內 積演算命令或向量轉換演算命令等1個命令時,則將8個 浮動小數點數供給到4個乘法器2 2 0 a〜2 2 0 d而進 行並列動作,而將由此所到的乘法結果在1個4输入加法 器2 2 6中相加而得到演算結果。針對4輸入加法器 2 2 6之输出的實施之規格化,正數化以及捨入處理則是 由1個電路來進行。第3 4面中爲了要易於了解在該演算 處理中之資料流向乃表示演算方塊2 2的槪略內容。 第3 5圖係表針對上述演算方塊2 2的比較例。而此 係由設置2組針對一對的浮動小數點數的積和演算器與針 對其結果實施規格化、正數化以及捨入處理的電路而構成 。第3 6圖係針對上述演算方塊2 2的其他的比較例,係 表由4組上述積和演算器與用於實施規格化、正數化以及 捨入處理的電路所構成。不管是那個比較器,只不過是將 多組積和演算器與用於實施規格化、正數化以及捨入處理 的電路予以並列而已。因此當演算4 X 4的1個內積時, 則不能只靠讓稂和演算、用於規格化、正數化以及捨入處 理的多個電路並列地動作即能夠達成,而必須另外考慮到 針對各演算結果之相關性的控制。一般靣a,則藉由譲一 組的積和演算器與實施規格化、正數化以及捨入處理的電 路反覆動作4次而求得內稹。當爲向量轉換演算時,則需 要更多的演算循環。稹和演算、用於實施規格化、正數化 本紙張尺度適用中國國家樣準(CNS ) A4规格(210X297公釐) ------.--h- ^------訂------珀、_--μ---l t - (請先聞讀背面之注$項再填寫本頁) -32· 經濟部中央標準局貝工消費合作社印製 405093 A7 B7 五、發明説明) 以及捨入處理的多組的電路,則根據如並列處理(pipeline) 般的命令執行手法而讓不同對象的內積演算與其他的浮動 小數點命令並列地動作》在意義中,其特擞在於第3 5圖 以及第3 6圖所示之電路構成可以平均地提高各種之浮動 小數點命令的演算處理能力。 當利用上述演算方塊2 2時,則可以減少用於內積演 算以及向量轉換演算的實質的演算循環數。亦即,可以實 現內稹演算以及向量轉換演算的高速化。如此般,演算方 塊2 2的構成可以達成內積演算以及向量轉換演算的高速 化。又由於根據1次並列的乘法以及加法運算可以求得內 積,因此針對2輸入每次進行稹和演算時不需要進行捨入 處理。藉此,內積演算的等待時間會變短,且演算精度也 會提高,又當反覆地針對2输入每次進行稹和演算時不會 產生當演算順序不同時,演算結果也會不同的情形。 又,由於用於實施規格化、正數化以及捨入處理的電 路具有與積和演算同等的電路規模,因此對於如第3 5圖 以及第3 6圖所示般將多組用於積和演算、規格化、正數 化以及捨入處理的電路予以並例配置的構成而言,與藉由 並列所欲達成平均的演算能力的提升效果相比較*因爲並 列化所導致晶片面積的增加情形會大幅地增加。其意義即 在於芾於積和演算、規格化、正數化以及捨入處理之電路 的並列數目最適當爲2 ·若只是整數演算,如第3 7圖所 示,現實上雖然是可以將4個積和演算器並列,但是當爲 整數演算時,由於資料的位數被限制,因此與浮動小數點 本紙張尺度適用中國國家標準(CNS ) A4规格(2丨0><297公釐) (請先閏讀背面之注項再填寫本頁)
-.IT -33- 經濟部中央標準局貝工消费合作社印製 405093 A7 A7 —___^__B7___ 五、發明説明h ) 演算相比較,其演算精度會變化。第3 4圖的演算方塊 22也可以只具備1個用於實施規格化、正數化以及捨入 處理之電路2 2 7。因此,資料處理器會極力抑制電路規 模增加,而藉由浮動小數點可以實現內積演算以及向量轉 換演算的高速化。 資料處理器1的浮動小數點命令具有16位元固定長 度,因此,在浮動小數點命令中的位址指定段(field)也會被 限制,而將浮動小數點暫存器設或1 6個·在此一限制之 下,浮動小數點數暫存器係由具有後群組與前群組之暫_存 器群組(bank)構成的暫存器檔案2 1所構成。此時,由於儲 存上述整個轉換行列需要1 6個暫存器,因此,向量轉換 演算命令則被設成爲可利用前群組與後群組兩者的命令規 格。如上所述,將轉換行列配置在後群組,而將向量資料 配置在前群組。藉此,即使是在浮動小數點命令的位元數 與暫存器數目之的限制下,也可以保證向量轉換篇算命令 的高速執行· 又,在執行向量轉換演算命令時,如上所述,一連串 的4次的內稹演算處理則如使在先頭之並列處理(1)中的暫 存器寫入動作RW設成位在最後的並列處理(4)中之暫存器 讀取動作RR之後而被並列處理(PIPELINE)化。因此,即使 來源暂存器與目的暫存器是同一個暫存器,成爲演算對象 的向量資料也不會意外地失去。藉此,當針對多數的向量 或是點依序進行向量轉換時,若將轉換前後的資料配置在 同一個暫存器時,若將4個向量資料載入到構成1 6個前 本紙張尺度適用中國國家標準(CNS ) A4规格(210X297公釐) (請先閱讀背面之注$項再填寫本頁) 訂 -34- 經濟部中央標準局貝工消费合作社印製 405093 a? ____B7_ 五、發明説明k ) 群組的浮動小數點暫存器,則可以連續4次執行向量轉換 命令,而可以減少演算對象資料對於1 6假浮動小數點暫 存器的載入次數或是演算結果資料對於記憶體之儲存動作 的次數,其意義在於可以將在向量轉換演算中之向量資料 的來源暫存器與目的暫存器設成同一個暫存器,由於暫存 器數目被限制,因此對於使向量轉換演算髙速化極爲有用 〇 又,上述轉換行列,當爲回轉轉換時,則包含正弦以 及餘弦。當針對所有必要的角度具有正弦以及餘弦的資料 表3 0 1時,則無法忽視由此所造成之晶片面稹的增加問 題。此時,由於上述演算方塊2 2具有4個乘法器,因此 藉由在此追加係數表3 0 1以及乘法器的回饋電路,可以 根據區間分割與高次的多項或展開而求得三角函數以及平 方根的近似値。藉此,可以在不增加晶片面積的情況下得 到正弦與餘弦。特別是,由於正弦與餘弦之多項式的展開 式具有近似性,而利用以一特性同時(並列地)演算正弦以及 餘弦的値,因此與個別求取的情形相比較,可以高速地獲 得正弦以及餘弦的値。 第3 8圖係表應用該資料處理器之資料處理系統的方 塊圖》 在同一圖中:1爲上述資料處理器,4 0 1爲動態隨 機存記億體(DRAM)、402爲針對DRAM401進行位 址多工控制以及更新控制的DRAM控制部、403爲 SRAM。SRAM4 0 3則被應用在資料處理器1的作 本紙張尺度適用中國國家標準(CNS > A4规格(210X297公釐) (請先聞讀背面之注意事項再填寫本頁) 訂
M -35- 經濟部中央樣準局貝工消費合作社印装 405093 a7 __B7_________ 五、發明説明) 業領域或是資料的暫時記憶領域等。4 0 4爲保有資料處 理器 1 之 0 S (. Operating System)的 ROM,40 5 爲周邊 裝置控制部,而被連接郵代表性所表示之外部記憶裝置 4 06以及鍵盤407。408爲圖框緩衝器409或是 備有未圖示之描畫以及顯示控制邏輯電路的顯示控制器’ 而針對顯示器4 1 0進行描畫控制與顯示控制β 4 1 1爲 電源電路,4 1 2爲代表性所表示之匯流排。資料處理器 1則根據浮動小數點高速地執行大多在3次元圖形處理中 被應用之內積演算以及向量轉換演算。又,由於在浮動小 數點命令的位元數以及暫存器數目被限制的情形下可以得 到上述效果,因此可以降低資料處理器1的成本*因此, 第3 8圖的資料處理系統可以抑制系統的成本,而能夠高 精度且髙速地執行3次元圖形處理。因此,可以實現能夠 應用在雖然成本的限制很嚴格,但是欲無法忽視髙以及髙 速化之要求之遊戲機以及攜帶情報終端等上之優越之資料 處理系統。 第3 9圖係表在第3 8圖之資料處理系統上追加描畫 處理器(rendering co-processor)4 1 3的3次元圖形處理系 統· 3次元圖形處理係由幾何(geometry)處理與描畫處理( rendering processing)所構成·資料處理器1由於可以高速 地處理大多應届在幾问處理的內積演算以及肉量轉換演算 等,因此藉由在第3 8圖之資料處理系統追加描畫處理器 4 1 3,可以進行高精度且高速地3次元圖形處理β此外 ,取代第3 9圖的3次元圖形處理中追加描畫處理器 本紙張尺度適用中國國家標率(CNS ) Α4规格(210X297公釐) (請先Μ讀背面之注意事項再填寫本頁) 訂 -36- 經濟部中央標準局貞工消费合作社印製 405093 五、發明説明k ) 4 1 3,即使藉由資料處理器1中的C PU來進行描畫處 理,當然也可以構成3次元圖形處理· 以上雖是根據實施形態具體地說明本發明人所提出之 發明,但是本發明並不限於此,當然在不脫離其要旨的範 圍內可進行各種的變更。 例如,雖然在第1圖中未曾說明,但是資料處理器也 可以包含記憶管理單元等之其他的功能方塊》又資料處理 器可以採用超級體系結構(super scalar avchitecture) ·例 如,當具有2條並列處理時,則其中一條並列處理執行向量 轉換演算命令而另一條並列處理則自記憶體從暫存器檔案 載入用於向量轉換演算命令的向置資料,且自暫存器植案 將向量轉換演算的結果儲存到記憶體內。 又,乘法器之並列配置個數也可以在4個以上。又指 數處理部以及符號處理部的構成,4輸入加法器的構成並 不限於上述實施例而可以適當地加以變更。 又本發明之資料處理器並不限於用在遊戲機或是攜帶 情報終端的控制上,也能夠廣泛地利用在各種機器之組入 控制上》 在本發明中所揭露之發明中,若簡單地說明代表者所 得到的效果則如下。 亦即,資料處理器能夠根據浮動士數點高速垲實現內 積演算以及向量轉換演算。 資料處理器,由於只需要1個用於規格化韵霉路即可 ,因此可以儘量地抑制電路規模的增大情形,而能夠根據 本紙張尺度適用中國國家揉準(CNS > A4规格(210X297公釐) ^ I — III—訂 ------HJ--1.--Γ - - (請先閱讀背面之注意事項再填寫本萸) -37· 經濟部中央樣準局負工消费合作社印装 405093 J77 五、發明説明) 浮動小數點高速地實現內稹演算以及向暈轉換演算。 向量轉換演算命令則被設成利用前群組(front bank)與 後群組(back bank)等兩者的規格,藉由將轉換行列配置後群 組,將向量資料配置在前群組,即使在浮動小數點之位元 數與暫存器數目等之資源的限制下,也能夠保證向量轉換 演算命令的高速執行· 又在執行向童轉換演算命令時,一連串4次的內積演 算,由於控制各內積處理的等待時間之使在先頭之內積演 算處理中的暫存器寫入動作位於在最後之內稹處理+ ;^暫 存器讀取動作之後,因此即使來源暫存器與目的暫存器是 同一個暫存器,成爲演算對象的向量資料也不會意外地失 去。 藉此,演算對象資料對於浮動小數點暫存器的載入或 是將演算結果資料儲存到記億體內之儲存動作的次數可以 減少,在暫存器數目被限制之情況下,可以有效地使向量 轉換演算高速化。 又藉由在上述演算部追加係數表以及乘法器的回饋電 路,可以根據區間分割與高次的多項式展開而求得三角函 數的近似値,在不大幅增加晶片面積的情況下可以得到在 轉換行列等中所利用的正弦以及餘弦· 由於資料處理器在浮動小數點命令的位元數以及暫存 器數目等之資源被限制的情形下,可以根據浮動小數點高 速地執行在3次元圖形處理中大多被採用的內積演算以及 向量轉換演算,因此應用上述資料處理器的資料處理系統 本紙張尺度適用中國國家標準(CNS ) A4規格(210X297公嫠) (請先閱讀背面之注意事項再填窝本頁) 訂 妗丨· -38 - 經濟部中央標準局貝工消费合作社印簟 A7 __ 4 一 B7 Z、發明説明k ) 40^〇^3 " 可以抑制系統的成本,而高精度且高速地進行3次元圖形 處理•因此對於雖然成本的限制嚴格,但是也不能夠忽視 高功能以及高速化之要求的遊戲機以及攜帶情報終端機器 等而言可以實現優越之資料處理系統,3次元圖形處理系 統。 圖面之簡單說明 第1圓係表本發明之一例之資料處理器的方塊圖。 第2圖係表第1圖之資料處理器之主要之暫存器構造 的說明圈。 第3圖係表上述F P U之一例的方塊圖》 第4圖係表演算方塊之一例的方塊圖。 第5圔係表最大指數選擇部之一例的方塊圖· 第6圖係表符號選擇器之一例的方塊圖。 第7圖係表對位器(aligner)之一例的方塊圖。 第8圖係表4輸入加法器之一例的方塊圖。 第9圖係表在4輸入加法器中,針對I η v[n]的値之 C i n[〇],C i n[l],C i[2]之採得値的說明圖》 第10圖係表進位儲存加法器陣列與進位傳達加法器 陣列之詳細的一例的方塊圖。 第11圖係表4-2壓縮器之一例的說明圖。 第12圖係表暫存器槽案之一例的方塊圖。 第13圖係表構成暫存器檔案之各暫存器群的構成說 明圖。 本紙張尺度適用中國國家標準(CNS ) Α4規格(210Χ297公釐) (讀先W讀背面之注意事項再填寫本頁) 訂 • 39 · 經濟部中央標準局負工消费合作社印裂 405093 A7 .___B7 _ 五、發明説明& ) 第1 4.圖係表暫存器之各暫存,電路的—例的構成例 〇 第15圖係表暫存器檔案之讀取埠A的動作態樣說明 第16圖係表暫存器檔案之讀取埠B的動作態樣說明 圖。 第17圖係表暫存器檔案之讀取埠C的動作態樣說明 圖。 第1 8暖係表內積之應用例的說明圖。 第19圖係表根據內積演算命令之處理之槪略內容的 方塊圖。 第2 0圖係表與在內稹演算中之暫存器檔案之利用有 關之規格的一例的說明圖。 第21圖係表向量轉換演算之一般的說明圖· 第2 2圖係表根據向量轉換演算命令之處理之槪要內 容的方塊圖。 第2 3圖係表與右向量轉換演算命令中之暫存器檔案 之利用相關的規格的一例的說明圖。 第2 4圖係表根據1個向量轉換命令之多次內積演算 處厘之並列處理(pipeline)的說明圖》 第2 5圖係表正弦餘弦命令之規格說明圖》 第2 6圖係表在正弦餘弦命令中所利用之角度資料的 格式(format)說明圖。 第2 7圖係表用於多項近似之中心値與角度之關係的 本紙張尺度適用中國國家揉準(CNS ) Α4规格(2丨0X297公釐) (讀先Μ讀背面之注意Ϋ項再填寫本頁) 訂 • 40- 405093 405093 經濟部中央標準局員工消费合作社印製 五、發明説明k ) 說明圖。 第2 8圖係表藉由根據多項近似之正弦餘弦命令之演 算處理的流程圖· 第2 9圖係表執行正弦餘弦命令的係數表與附加乘法 器之回績系統之上述乘法器附近的方塊圖。 第3 0圖係表以粗的實線來表示在第2 8圖之(1)中所 示之第1步驟中之資料流向的說明圖。 第3 1圖係表以粗的實線來表示在第2 8圖之(2)中所 示之第1步驟中之資料流向的說明圖。 第3 2圖係表以粗的實線來表示在第2 8圖之(3)中所 示之第2步驟中之資料流向的說明圖· 第3 3圖係表以粗的實線來表示在第2 8圖之(4)中所 示之第2步驟中之資料流向的說明圖。 第3 4圖係表爲了要易於了解在執行內積演算以及向 量轉換演算命令時之在演算處理中之資料流向而槪略地表 示演算方塊2 2的方塊圖。 第3 5圖係表將2組積和演算與用於規格化、正數化 以及捨入處理的電路單純地並列配置的比較說明圖。 第3 6圖係表將4組稹和演算與用於規格化、正數化 以及圓角化的電路單純地並列配置的比較說明圖· 第3 7圖係表爲了要整數演算將4個稹和演算器並列 之比較說明圖。 第3 8圖係表應用資料處理器之資料處理系統之一例 的說明圖。 本紙張尺度適用中國國家揉準(CNS ) A4規格(210X297公釐) (請先聞讀背面之注意事項再填寫本頁) 訂 -41- 經濟部中央標準局貝工消費合作社印製 A7 405093 _ B7 五、發明説明k ) 第3 9圖係表應用資料處理器之3次元圖形處理系統 之一例的方塊圖。 主要元件對照表 1 資料處理器 2 浮動小數點數 3 中央處理裝置 4 32位元資料匯流排 5 命令匯流排 6 命令快取單元 7 資料快取單元 8 資料位址匯流排 9 匯流排控制器 10 周邊電路 11 周邊匯流排 20 轉送方塊 21 暫存器檔案 22 演算方塊 2 3 控制部 200 匯流排驅動器 2 0 1 , 2231、2233、2235、2 2 5 0 ,2251, 2252 選擇器 220a 乘法器 220b 乘法器 本紙張尺度適用中國國家梂準(CNS ) A4规格(210X297公釐) (請先閲讀背面之注意事項再填寫本頁) 訂 Γ· -42- 405093 A7 B7 五、發明説明“) 經濟部中央標準局貝工消费合作社印装 2 2 0 c 2 2 0 d 2 2 1a 2 2 1b 2 2 1c 2 2 1 d 2 2 3 2 2 4 a 2 2 4 b 2 2 4 c 2 2 4 d 2 2 8 2 2 5 2 2 6 2 2 7 2 2 3 0、 2 2 11 2 2 10 2 2 6 0 2 2 6 1、 2 2 6 4 2 2 6 5 乘法器 乘法器 對位器 對位器 對位器 對位器 最大指數選擇部 減法器 減法器 減法器 減法器 指數處理部 符號選擇部 4輸入加法器 規格化、正數化以及捨入處理 2234 大小比較器 反相器 移位器 進行儲存加法器 2263 或閘 及或閘 4 一 2壓縮器 (請先W讀背面之注意事項再填寫本頁) 訂 -J H»= 1 本紙張尺度適用中國國家揉準(CNS ) A4規格.(210X297公釐) -43-

Claims (1)

  1. 405093 A8 B8 C8 D8
    規請.务.::' 修ia'太有it'‘ ' -V 經濟部中央標準局負工消費合作社印«. 六、申請專利範圍 第861 1 5051號專利申請案 中文申請專利範圍修正本 民國88年9月修正 心运1 . 一種資料處理器,其主要特徵在於: 浮動小數點單元具備演算部,而該演算部包含有分別 自不同的資料輸入信號群供給浮動小數點數的虛數部,且 將所供給之虛數部相互間予以相乘時多個乘法器、接受各 乘法器的輸出而進行對位位移的分析器,根據上述浮動小 數點數的指數部而產生上述分析器之對位位移數以及規格 化前之指數的指數處理部,將上述分析器之輸出相加的輸 入加法器,以及將上述多輸入加法器之輸出與上述規格化 前之指數予以規格化的規格化器。 2 .如申請專利範圍第1項之資料處理器,上述浮動 小數點單元則執行成分分別以浮動小數點數所給予之4 X 4的內積演算。 3 .如申請專利範圍第1項之資料處理器,上述演算 部更包含可因應在各乘法器中被相乘之浮動小數點數的符 號而產生與各乘法器之乘法結果呈對應之符號的符號處理 部,上述分析器具有可將對位移位結果選擇性地以反轉或 是非反轉之形態輸出的選擇器,當對於所對應之上述乘法 結果的符號爲負時則選擇反轉輸出,而上述多輸入加法器 則進行在對應於對上述乘法結果的符號爲負的分析器的輸 出加1而產生進位,且針對負的乘法結果進行2 _的補數處 理。 本紙法尺度適用中國國家揉準(CNS ) A4現格(210X297公釐) n-rn I i 1 I - i I—- I 民-II I ^^1 .^ϋ si -~ (請先閱讀背面之注意事項再填寫本頁) 405093 AS B8 C8 D8 經濟部中央梂準局工消费合作社印策 六、申請專利範圍 4 .如申請專利範圍第1項之資料處理器,上述浮動 小數點單元更具有暫存器檔案’其具有連接到上述各乘法. 器之資料輸入信號群的讀取埠與連接到上述演算部之輸出 的寫入埠,該暫存器檔案由具有呈並列地連接到上述讀取 淳的多個群組(bank)所構成。 5 .如申請專利範圍第4項之資料處理器,上述浮動 小數點單元更具有可對用於規定分別由多個成分所示表示 之資料間之內積演算的浮動小數點數進行解碼的控制部’ 該控制部則對上述浮動小數點命令進行解碼’將暫存器檔 案所保有之資料的成分經由上述信號線群供給到上述演算 部,在上述演算部中對所給予的資料作內積演算’且將內 積的演算結果寫入到上述暫存器檔案內。 6 .如申請專利範圍第4項之資料處理器,上述浮動 小數點單位更具有可對用於規定分別由多個成分所表示的 資料與轉換行列之行列演算的浮動小數點命令進行解碼的 控制部,該控制部則對上述浮動小數點命令進行解碼,而 讀取暫存器檔案所保有之資料的成分與上述轉換行列的成 分,且將該些經由上述信號線群供給到上述演算部,在上 述演算部中對所給予的資料進行內積演算,且將內積演算 的結果寫入到上述暫存器檔案,將如此一連串演算循環連 續地反覆執行多次,控制上述各演算循環的延遲量以使在 連續多次被執行之最後的演算循環中的上述暫存器檔案的 讀取動作較將在最初之演算循環中的內積演算結果寫入到 上述暫存器檔案的時間爲早。 (請先閲讀背面之注$項再填寫本頁) 訂 本紙張尺度適用中國國家揉準(CNS ) A4规格(210X297公釐) -2- 經濟部中央揉率局貝工消費合作社印製 405093 β| D8 六、申請專利範圍 7 .如申請專利範圍第6項之資料處理器,·上述控制 部’在上述各演算循環中進行暫存器選擇控制,針對雙方 之群組呈並列地自上述暫存器檔案讀取,而針對其中一個 群組寫入到上述暫存器檔案內。 8 ·如申請專利範圍第7項之資料處理器,上述暫存 器檔案’各群組具有1 6個暫存器,而設有4個上述乘法 器’上述浮動小數點命令爲16位元固定長度命令。 9 .如申請專利範圍第4項之資料處理器,上述浮動 小數點單元更具有用於對根據泰勒展開的多項近似而取得 與角度資料呈對應的正弦以及餘弦之浮動小數點命令進行 解碼的控制部,該控制部會根據對暫存器檔案進行讀取將 角度資料供給到演算方塊,而根據上述多項近似在演算方 塊中演算與角度資料呈對應的正弦以及餘弦,而將演算結 果寫入到暫存器檔案,上述角度資料具有根據固定小數點 數之小數點以下η個位元將1次回轉分割成2的η次方的 格式,上述多項近似則是將上述角度資料之小數點以下的 η個位元分成中心値與相對於該中心値的差分値,而演算 與上述角度資料對應之正弦和餘弦的値,更備有保有對上 述多項近似爲必要之與上述中心値對應之正弦或餘弦之値 的表。 1 0 .如申請專利範圍第9項之資料處理器,在上述 小數點以下之η個位元中的上位2位元係指角度的象限, 上述控制部會根據上述上位2位元的解碼結果來筚制根據 上述多項近似之演算結果的符號反轉與用於儲存該演算結 本紙張尺度適用中國國家梂準(CNS ) A4洗格(210X297公釐) -3 - (請先閱讀背面之注意事項再填寫本頁) •1T A8405093 | 經濟部中央樣率局貝工消费合作社印*. 六、申請專利範圍 果之暫存器檔案之暫存器的選擇,而將與上述象限呈對應 的正弦以及餘弦的値儲存到分別被分配到的暫存器內。 11種資料處理器,其特徵在於: 包含成分分別由浮動小數點數所供給的4 X 4的內積 演算可根據1個浮動小數點命令來執行的浮動小數點單元 , 該浮動小數點單元包含演算方塊,以及將演算對象資 料供給到該演算方塊,且被供給有在演算方塊中經演算的 演算結果資料的暫存器檔案, 上述演算方塊則包含用於對浮動小數點數之虛部進行 乘法運算的4個乘法器,接受各乘法器的輸出而進行對位 位移的對位器,根據上述浮動小數點數的指數部而產生上 述對位器的對位位移數與規格化前之指數處理部,將上述 對位器的輸出相加的4輸入加法器,以及使上述4輸入加 法器的輸出與上述規格化前的指數規格化的規格化器。 1 2 種資料處理器,其特徵在於: 包含針對成分分別由浮動小數點數所供給的4 X 4的 轉換行列與具有分別由浮動小數點數所供給之4元的成分 之向量的積的演算連續執行4次4 X 4的內積演算的演算 可以根據1個浮動小數點命令來執行'的浮動小數點單元, 該浮動小數點數睪元包含演算方塊以及將演算對象資 料供給到該演算方塊,且被供給有在演算方塊中經演算之 演算結果資料的暫存器檔案’ _ 上述演算方塊包含用於對浮動小數點數之虛數部進行 '策— - (請先閱讀背面之注意事項再填寫本頁) 訂 本紙張尺度逋用中國國家揉準(CNS ) A4规格(210X297公釐)_ 4 A8 B8 C8 D8 六、申請專利範圍 乘法運算的4個乘法器,接受各乘法器的輸出而進行對位 位移的對位器,根據上述浮動小數點數的指數部產生上述 對位器之對位位移數與規格化前之指數的指數處理部,將 上述對位器的輸出相加的4輸入加法器,以及使上述4輸 入加法器的輸出與上述規格化前之指數規格化的規格化器 上述暫存器檔案分別具有包含16個暫存器的2個暫 存器群組’上述轉換行列被分配到其中一個群組,而另一 個向量則被分配到另一個群組。 1 3 .如申請專利範圍第1項之資料處理器,更包含 被連接到位址匯流排與資料匯流排的C P U,上述浮動小 數點單元被連接到上述資料匯流排,上述浮動小數點單元 則利用1 6位元固定長度浮動小數點命令組(set)來執行浮 動小數點處理,上述C P U係一進行對於上述浮動小數點 單元要得到執行浮動小數點處理的命令與資料時爲必要之 定址(addressing)處理者,而被形成在1個半導體基板上。 經濟部中央揉奉局tec工消费合作社印*. n ·1-- —-- I— I 1^1 «n I 11 tn I I 1- - —ΐ -·- (诗先閲讀背面之注意^項再填寫本頁) 1 4 . 一種資料處理系統,其主要特徵在於包含: 在浮動小數點單元備有演算部,而上述演算部包含分 別自不同的資料輸入信號群被供給浮動小數點數之虛數部 ,且對所供給的虛數部之間進行乘法運算的多個乘法器, 接受各乘法器的輸出而進行對位位移的對位器,根據上述 浮動小數點數的指數部而產生上述對位器之對位位移數與 規格化前的指數的指數處理部,將上述對位器之輸出相加 的多輸入加法器,以及使上述多輸入加法器的輸出與上述 本纸張尺度適用中國國家揉率(CNS ) A4規格(210X297公釐).5. 經濟部中央標準局貝工消费合作社印裂 A8405093 cl六、申請專利範圍 規格化前的指數規格化的規格化器而構成的資料處理器: 被連接到該資料處理器,而爲上述C P U所存取的資 料R A Μ及; 被連接到上述資料R AM與資料處理器的輸出入電路 〇 1 5 . —種3次元電腦圖形處理系統,其特徵在於: 在浮動小數點單元備有演算部,而上述演算部包含分 別自不同的資料輸入信號群被供給浮動小數點數之虛數部 ,且對所供給的虛數部之間進行乘法運算的多個乘法器, 接受各乘法器的輸出而進行對位位移的對位器,根據上述 浮動小數點數的指數部而產生上述對位器之對位位移數與 規格化前的指數的指數處理部,將上述對位器之輸出相加 的多輸入加法器,以及使上述多輸入加法器的輸出與上述 規格化前的指數規格化的規格化器而構成的資料處理部; 被連接到該資料處理器描畫處理器, 上述描畫處理器則進行3次元電腦圖形處理的描畫處 理,上述資料處理器則進行用於3次元電腦圖形處理之幾 何處理的內積演算以及向量轉換演算的至少其中一者。 1 6 . —種資料處理器,屬於具有中央處理裝置和浮 點單元,執行命令組內之命令的資料處理器中,其特徵係 於前述命令組內,在於前述浮點單元包含爲執行向量之內 積演算的命令者。 1 7 ·如申請專利範圍第1 6項之資料處理器,其中 ,前述浮點單元係具有進行浮點數之虛數部乘算的複數乘 I— I»! -I I— - I - - I— I - 1 I - -1 I I I I I:I *- (請先閱讀背面之注意Ϋ項再填寫本頁) 本纸張尺度逋用中國國家揉未(CNS ) Α4规格(210X297公釐) -6 - A8 no <i05093 gi 六、申請專利範固 法器’和接受前述乘法器之輸出,進行校正偏移的校準器 ’和根據前述浮點數之指數部,生成正規化前之指數的指 數處理部’和加算前述校準器之輸出的多輸入加法器,和 正規化前述多輸入加法器之輸出和前述正規化前之指數的 正規化器者。 1 8 種資料處理系統’其特徵係使用如申請專利 範圍第1 6項或第1 7項所述之資料處理器,進行3次元 圖形虜理者。 1 9 . 一種資料處理器,屬於具有中央處理裝置和浮 點單元’執行命令組內之命令的資料處理器中,其特徵係 於前述命令組內,在於前述浮點單元包含爲執行4元向量 和4兀向量之內積演算的命令者。 2 0 .如申請專利範圍第1 9項之資料處理器,其中 ,爲執行前述內積演算的命令係一個命令者。 2 1 . —種資料處理系統,其特徵係使用如申請專利 範圍第第1 9項或第2 0項所述之資料處理器,進行3次 7C圖形處理者。 2 2 · —種資料處理器,屬於具有中央處理裝置和浮 點單元,執行命令組內之命令的資料處理器中,其特徵係 於前述命令組內,在於前述浮點單元包含爲執行向量之內 積.演算的一個命令者。 2 3 ·如申請專利範圍第2 2項之資料處理器’其中 ,前述浮點單元係具有進行浮點數之虛數部乘算的複數乘 法器,和接受前述乘法器之輸出’進行校正偏移的校準器 本紙張尺度逋用中國國家橾率(CNS ) A4規格(210X297公釐) -----聋-- (請先閲讀背面之注意事項再填寫本頁) 、言- 經濟部智慧財產局員工消費合作社印製 經濟部t夹標李局貝工消费合作社印装 A8 B8405093_dI_六、申請專利範圍 ,和根據前述浮點數之指數部,生成正規化前之指數的指 數處理部,和加算前述校準器之輸出的多輸入加法器,和 正規化前述多輸入加法器之輸出和前述正規化前之指數的 正規化器者。 2 4 . —種資料處理系統,其特徵係使用如申請專利 範圍第第2 2項或第2 3項所述之資料處理器,進行3次 元圖形處理者。 2 5 · —種資料處理器,屬於具有中央處理裝置和浮 點單元,執行命令組內之命令的資料處理器中,其特徵係 於前述命令組內,在於前述浮點單元包含爲執行進行行列 和向量之積算的向量變換演算的命令者。 2 6 ·如申請專利範圍第2 5項之資料處理器,其中 ,前述浮點單元係具有進行浮點數之虛數部乘算的複數乘 法器,和接受前述乘法器之輸出,進行校正偏移的校準器 ,和根據前述浮點數之指數部,生成正規化前之指數的指 數處理部,和加算前述校準器之輸出的多輸入加法器,和 正規化前述多輸入加法器之輸出和前述正規化前之指數的 正規化器者。 2 7 .—種資料處理系統,其特徵係使用如申請專利 範圍第2 5項或第2 6項所述之資料處理器,進行3次元 圖形處理者。 2 8 · —種資料處理器,屬於具有中央處理裝置和浮 點單元,執行命令組內之命令的資料處理器中,甚特徵係 於前述命令組內,在於前述浮點單元包含爲執行η列 (請先閱讀背面之注意事項再填寫本頁) 本紙張尺度逋用中國國家梂準(CNS ) A4规格(210X 297公釐).g bS C8 D8 六、申請專利範圍 之行列和η元向量之向量變換演算的命令者。- 2 9 ·如申請專利範圍第2 8項之資料處理器,其中 ’爲執行前述向量變換演算的命令係一個命令者。 3 0 · —種資料處理系統’其特徵係使用如申請專利 範圍第2 7項或第2 9項所述之資料處理器,進行3次元 圖形處理者。 3 1 . —種資料處理器’屬於具有中央處理裝置和浮 點單元’執行命令組內之命令的資料處理器中,其特徵係 於前述命令組內,在於前述浮點單元包含爲執行m行η列 之行列和η元向量之向量變換演算的命令者。 3 2 ·如申請專利範圍第3 1項之資料處理器,其中 ’前述浮點單元係具有進行浮點數之虛數部乘算的複數乘 法器,和接受前述乘法器之輸出,進行校正偏移的校準器 ,和根據前述浮點數之指數部,生成正規化前之指數的指 數處理部,和加算前述校準器之輸出的多輸入加法器,和 正規化前述多輸入加法器之輸出和前述正規化前之指數的 正規化器者。 3 3 . —種資料處理系統,其特徵係使用如申請專利 範圍第3 1項或第3 2項所述之資料處理器,進行3次元 圖形處理者。 本纸張尺度適用中國和家標準(CN$ ) A4规格(210X297公釐)_ 9 - (請先聞讀背面之注意Ϋ項再填寫本頁) 衣. 訂 經濟部中央標準局員工消费合作社印氧
TW086115051A 1996-10-16 1997-10-14 Data processor and data processing system TW405093B (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP27343296A JP3790307B2 (ja) 1996-10-16 1996-10-16 データプロセッサ及びデータ処理システム

Publications (1)

Publication Number Publication Date
TW405093B true TW405093B (en) 2000-09-11

Family

ID=17527831

Family Applications (1)

Application Number Title Priority Date Filing Date
TW086115051A TW405093B (en) 1996-10-16 1997-10-14 Data processor and data processing system

Country Status (4)

Country Link
US (3) US6038582A (zh)
JP (1) JP3790307B2 (zh)
KR (1) KR100526315B1 (zh)
TW (1) TW405093B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI383595B (zh) * 2005-03-17 2013-01-21 Qualcomm Inc 用於低密度奇偶校驗解碼器之有效校驗節點訊息轉換近似
US8837135B2 (en) * 2011-10-08 2014-09-16 Wistron Corporation Expansion module for interface card, computer case assembly, and computer system
TWI638312B (zh) * 2014-07-02 2018-10-11 上海兆芯集成電路有限公司 暫時分路融合乘積-累加運算

Families Citing this family (176)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3790307B2 (ja) 1996-10-16 2006-06-28 株式会社ルネサステクノロジ データプロセッサ及びデータ処理システム
US6256655B1 (en) * 1998-09-14 2001-07-03 Silicon Graphics, Inc. Method and system for performing floating point operations in unnormalized format using a floating point accumulator
US6417858B1 (en) * 1998-12-23 2002-07-09 Microsoft Corporation Processor for geometry transformations and lighting calculations
JP2000348017A (ja) * 1999-06-02 2000-12-15 Toshiba Corp 浮動小数点演算器
US6496905B1 (en) 1999-10-01 2002-12-17 Hitachi, Ltd. Write buffer with burst capability
US7000078B1 (en) 1999-10-01 2006-02-14 Stmicroelectronics Ltd. System and method for maintaining cache coherency in a shared memory system
US6351803B2 (en) 1999-10-01 2002-02-26 Hitachi Ltd. Mechanism for power efficient processing in a pipeline processor
US6826191B1 (en) 1999-10-01 2004-11-30 Stmicroelectronics Ltd. Packets containing transaction attributes
US6487683B1 (en) 1999-10-01 2002-11-26 Stmicroelectronics Limited Microcomputer debug architecture and method
US6412047B2 (en) 1999-10-01 2002-06-25 Stmicroelectronics, Inc. Coherency protocol
US6463553B1 (en) 1999-10-01 2002-10-08 Stmicroelectronics, Ltd. Microcomputer debug architecture and method
US6633971B2 (en) 1999-10-01 2003-10-14 Hitachi, Ltd. Mechanism for forward data in a processor pipeline using a single pipefile connected to the pipeline
US6567932B2 (en) 1999-10-01 2003-05-20 Stmicroelectronics Limited System and method for communicating with an integrated circuit
US6298394B1 (en) 1999-10-01 2001-10-02 Stmicroelectronics, Ltd. System and method for capturing information on an interconnect in an integrated circuit
US6693914B1 (en) 1999-10-01 2004-02-17 Stmicroelectronics, Inc. Arbitration mechanism for packet transmission
US7266728B1 (en) 1999-10-01 2007-09-04 Stmicroelectronics Ltd. Circuit for monitoring information on an interconnect
US7260745B1 (en) 1999-10-01 2007-08-21 Stmicroelectronics Ltd. Detection of information on an interconnect
US6574651B1 (en) 1999-10-01 2003-06-03 Hitachi, Ltd. Method and apparatus for arithmetic operation on vectored data
US6460174B1 (en) 1999-10-01 2002-10-01 Stmicroelectronics, Ltd. Methods and models for use in designing an integrated circuit
US6779145B1 (en) 1999-10-01 2004-08-17 Stmicroelectronics Limited System and method for communicating with an integrated circuit
US6449712B1 (en) 1999-10-01 2002-09-10 Hitachi, Ltd. Emulating execution of smaller fixed-length branch/delay slot instructions with a sequence of larger fixed-length instructions
US6502210B1 (en) 1999-10-01 2002-12-31 Stmicroelectronics, Ltd. Microcomputer debug architecture and method
US6546480B1 (en) 1999-10-01 2003-04-08 Hitachi, Ltd. Instructions for arithmetic operations on vectored data
US6684348B1 (en) 1999-10-01 2004-01-27 Hitachi, Ltd. Circuit for processing trace information
US6542983B1 (en) 1999-10-01 2003-04-01 Hitachi, Ltd. Microcomputer/floating point processor interface and method
US6820195B1 (en) 1999-10-01 2004-11-16 Hitachi, Ltd. Aligning load/store data with big/little endian determined rotation distance control
US6457118B1 (en) 1999-10-01 2002-09-24 Hitachi Ltd Method and system for selecting and using source operands in computer system instructions
US6928073B2 (en) 1999-10-01 2005-08-09 Stmicroelectronics Ltd. Integrated circuit implementing packet transmission
US6598177B1 (en) 1999-10-01 2003-07-22 Stmicroelectronics Ltd. Monitoring error conditions in an integrated circuit
US6772325B1 (en) * 1999-10-01 2004-08-03 Hitachi, Ltd. Processor architecture and operation for exploiting improved branch control instruction
US6732307B1 (en) 1999-10-01 2004-05-04 Hitachi, Ltd. Apparatus and method for storing trace information
US6615370B1 (en) 1999-10-01 2003-09-02 Hitachi, Ltd. Circuit for storing trace information
US6557119B1 (en) 1999-10-01 2003-04-29 Stmicroelectronics Limited Microcomputer debug architecture and method
US6701405B1 (en) 1999-10-01 2004-03-02 Hitachi, Ltd. DMA handshake protocol
US6530047B1 (en) 1999-10-01 2003-03-04 Stmicroelectronics Limited System and method for communicating with an integrated circuit
US6918065B1 (en) 1999-10-01 2005-07-12 Hitachi, Ltd. Method for compressing and decompressing trace information
US6412043B1 (en) 1999-10-01 2002-06-25 Hitachi, Ltd. Microprocessor having improved memory management unit and cache memory
US6665816B1 (en) 1999-10-01 2003-12-16 Stmicroelectronics Limited Data shift register
US6629207B1 (en) 1999-10-01 2003-09-30 Hitachi, Ltd. Method for loading instructions or data into a locked way of a cache memory
US6408381B1 (en) 1999-10-01 2002-06-18 Hitachi, Ltd. Mechanism for fast access to control space in a pipeline processor
US6598128B1 (en) 1999-10-01 2003-07-22 Hitachi, Ltd. Microprocessor having improved memory management unit and cache memory
US6590907B1 (en) 1999-10-01 2003-07-08 Stmicroelectronics Ltd. Integrated circuit with additional ports
US7072817B1 (en) 1999-10-01 2006-07-04 Stmicroelectronics Ltd. Method of designing an initiator in an integrated circuit
US6434665B1 (en) 1999-10-01 2002-08-13 Stmicroelectronics, Inc. Cache memory store buffer
US6629115B1 (en) 1999-10-01 2003-09-30 Hitachi, Ltd. Method and apparatus for manipulating vectored data
JP2001142692A (ja) * 1999-10-01 2001-05-25 Hitachi Ltd 2つの異なる固定長命令セットを実行するマイクロプロセッサ、マイクロコンピュータおよび命令実行方法
US6349371B1 (en) 1999-10-01 2002-02-19 Stmicroelectronics Ltd. Circuit for storing information
US6591369B1 (en) 1999-10-01 2003-07-08 Stmicroelectronics, Ltd. System and method for communicating with an integrated circuit
US6601189B1 (en) 1999-10-01 2003-07-29 Stmicroelectronics Limited System and method for communicating with an integrated circuit
US6553460B1 (en) 1999-10-01 2003-04-22 Hitachi, Ltd. Microprocessor having improved memory management unit and cache memory
US6411301B1 (en) * 1999-10-28 2002-06-25 Nintendo Co., Ltd. Graphics system interface
US7209140B1 (en) * 1999-12-06 2007-04-24 Nvidia Corporation System, method and article of manufacture for a programmable vertex processing model with instruction set
US7988559B2 (en) 2001-03-08 2011-08-02 Igt Computerized gaming system, method and apparatus
US7043641B1 (en) 2000-03-08 2006-05-09 Igt Encryption in a secure computerized gaming system
JP3940542B2 (ja) 2000-03-13 2007-07-04 株式会社ルネサステクノロジ データプロセッサ及びデータ処理システム
US6912525B1 (en) 2000-05-08 2005-06-28 Verizon Laboratories, Inc. Techniques for web site integration
JP3779540B2 (ja) 2000-11-08 2006-05-31 株式会社ルネサステクノロジ 複数レジスタ指定が可能なsimd演算方式
US7599981B2 (en) * 2001-02-21 2009-10-06 Mips Technologies, Inc. Binary polynomial multiplier
US7162621B2 (en) 2001-02-21 2007-01-09 Mips Technologies, Inc. Virtual instruction expansion based on template and parameter selector information specifying sign-extension or concentration
US7181484B2 (en) 2001-02-21 2007-02-20 Mips Technologies, Inc. Extended-precision accumulation of multiplier output
US7711763B2 (en) 2001-02-21 2010-05-04 Mips Technologies, Inc. Microprocessor instructions for performing polynomial arithmetic operations
GB2409074B (en) * 2001-03-14 2005-08-03 Micron Technology Inc Arithmetic pipeline
US6751638B2 (en) * 2001-05-11 2004-06-15 Sun Microsystems, Inc. Min and max operations for multiplication and/or division under the simple interval system
WO2003007147A1 (en) * 2001-07-13 2003-01-23 Intel Zao A method and apparatus to extract integer and fractional components from floating-point data
EP1433078A4 (en) * 2001-09-10 2006-11-15 Igt Reno Nev DEVELOPING GAME PROGRAMS COMPATIBLE WITH A SYSTEM AND DEVICE FOR OPERATING ELECTRONIC GAMES
US7931533B2 (en) * 2001-09-28 2011-04-26 Igt Game development architecture that decouples the game logic from the graphics logics
US6902481B2 (en) 2001-09-28 2005-06-07 Igt Decoupling of the graphical presentation of a game from the presentation logic
US8708828B2 (en) 2001-09-28 2014-04-29 Igt Pluggable modular gaming modifiers and configuration templates for gaming environments
EP1463569A4 (en) 2001-11-26 2010-06-02 Igt Reno Nev DEVICE AND METHOD FOR ACTIVE INTERCONNECTION VALIDATION
CN1820246A (zh) * 2003-05-09 2006-08-16 杉桥技术公司 执行饱和或不执行饱和地累加多操作数的处理器还原单元
TWI258698B (en) * 2004-04-06 2006-07-21 Ind Tech Res Inst Static floating-point processor suitable for embedded digital signal processing and shift control method thereof
US8190669B1 (en) 2004-10-20 2012-05-29 Nvidia Corporation Multipurpose arithmetic functional unit
US7240184B2 (en) * 2004-11-10 2007-07-03 Nvidia Corporation Multipurpose functional unit with multiplication pipeline, addition pipeline, addition pipeline and logical test pipeline capable of performing integer multiply-add operations
JP4891252B2 (ja) * 2004-11-10 2012-03-07 エヌヴィディア コーポレイション 汎用乗算加算機能ユニット
US7428566B2 (en) * 2004-11-10 2008-09-23 Nvidia Corporation Multipurpose functional unit with multiply-add and format conversion pipeline
US20060101244A1 (en) * 2004-11-10 2006-05-11 Nvidia Corporation Multipurpose functional unit with combined integer and floating-point multiply-add pipeline
US8856201B1 (en) 2004-11-10 2014-10-07 Altera Corporation Mixed-mode multiplier using hard and soft logic circuitry
US20060129624A1 (en) * 2004-12-09 2006-06-15 Abdallah Mohammad A Method and apparatus for performing a divide instruction
US8234319B2 (en) 2005-05-25 2012-07-31 Qualcomm Incorporated System and method of performing two's complement operations in a digital signal processor
US8620980B1 (en) 2005-09-27 2013-12-31 Altera Corporation Programmable device with specialized multiplier blocks
US8595747B2 (en) * 2005-12-29 2013-11-26 Sony Computer Entertainment Inc. Efficient task scheduling by assigning fixed registers to scheduler
US8041759B1 (en) 2006-02-09 2011-10-18 Altera Corporation Specialized processing block for programmable logic device
US8301681B1 (en) 2006-02-09 2012-10-30 Altera Corporation Specialized processing block for programmable logic device
US8266199B2 (en) 2006-02-09 2012-09-11 Altera Corporation Specialized processing block for programmable logic device
US8266198B2 (en) 2006-02-09 2012-09-11 Altera Corporation Specialized processing block for programmable logic device
US8037119B1 (en) 2006-02-21 2011-10-11 Nvidia Corporation Multipurpose functional unit with single-precision and double-precision operations
US7836117B1 (en) 2006-04-07 2010-11-16 Altera Corporation Specialized processing block for programmable logic device
US7822799B1 (en) 2006-06-26 2010-10-26 Altera Corporation Adder-rounder circuitry for specialized processing block in programmable logic device
US8346831B1 (en) * 2006-07-25 2013-01-01 Vivante Corporation Systems and methods for computing mathematical functions
US20080071851A1 (en) 2006-09-20 2008-03-20 Ronen Zohar Instruction and logic for performing a dot-product operation
US8386550B1 (en) 2006-09-20 2013-02-26 Altera Corporation Method for configuring a finite impulse response filter in a programmable logic device
US7930336B2 (en) 2006-12-05 2011-04-19 Altera Corporation Large multiplier for programmable logic device
US8386553B1 (en) 2006-12-05 2013-02-26 Altera Corporation Large multiplier for programmable logic device
US8051123B1 (en) 2006-12-15 2011-11-01 Nvidia Corporation Multipurpose functional unit with double-precision and filtering operations
US7814137B1 (en) 2007-01-09 2010-10-12 Altera Corporation Combined interpolation and decimation filter for programmable logic device
US7865541B1 (en) 2007-01-22 2011-01-04 Altera Corporation Configuring floating point operations in a programmable logic device
US8650231B1 (en) 2007-01-22 2014-02-11 Altera Corporation Configuring floating point operations in a programmable device
US8645450B1 (en) 2007-03-02 2014-02-04 Altera Corporation Multiplier-accumulator circuitry and methods
JP4755129B2 (ja) * 2007-03-16 2011-08-24 富士通株式会社 演算処理装置及び演算処理装置の制御方法
US7949699B1 (en) 2007-08-30 2011-05-24 Altera Corporation Implementation of decimation filter in integrated circuit device using ram-based data storage
US8631224B2 (en) * 2007-09-13 2014-01-14 Freescale Semiconductor, Inc. SIMD dot product operations with overlapped operands
US8106914B2 (en) * 2007-12-07 2012-01-31 Nvidia Corporation Fused multiply-add functional unit
US20110022429A1 (en) * 2007-12-21 2011-01-27 Positive Energy, Inc. Resource reporting
US20110023045A1 (en) * 2007-12-21 2011-01-27 Positive Energy, Inc. Targeted communication to resource consumers
US8959137B1 (en) 2008-02-20 2015-02-17 Altera Corporation Implementing large multipliers in a programmable integrated circuit device
US20100042453A1 (en) * 2008-08-12 2010-02-18 Efficiency 2.0, LLC. Methods and apparatus for greenhouse gas footprint monitoring
US8307023B1 (en) 2008-10-10 2012-11-06 Altera Corporation DSP block for implementing large multiplier on a programmable integrated circuit device
US8645449B1 (en) 2009-03-03 2014-02-04 Altera Corporation Combined floating point adder and subtractor
US8468192B1 (en) 2009-03-03 2013-06-18 Altera Corporation Implementing multipliers in a programmable integrated circuit device
US8706790B1 (en) 2009-03-03 2014-04-22 Altera Corporation Implementing mixed-precision floating-point operations in a programmable integrated circuit device
US8650236B1 (en) 2009-08-04 2014-02-11 Altera Corporation High-rate interpolation or decimation filter in integrated circuit device
US8412756B1 (en) 2009-09-11 2013-04-02 Altera Corporation Multi-operand floating point operations in a programmable integrated circuit device
US8396914B1 (en) 2009-09-11 2013-03-12 Altera Corporation Matrix decomposition in an integrated circuit device
US8549264B2 (en) * 2009-12-22 2013-10-01 Intel Corporation Add instructions to add three source operands
US7948267B1 (en) 2010-02-09 2011-05-24 Altera Corporation Efficient rounding circuits and methods in configurable integrated circuit devices
US8539016B1 (en) 2010-02-09 2013-09-17 Altera Corporation QR decomposition in an integrated circuit device
US8601044B2 (en) 2010-03-02 2013-12-03 Altera Corporation Discrete Fourier Transform in an integrated circuit device
US8484265B1 (en) 2010-03-04 2013-07-09 Altera Corporation Angular range reduction in an integrated circuit device
US8510354B1 (en) 2010-03-12 2013-08-13 Altera Corporation Calculation of trigonometric functions in an integrated circuit device
US8539014B2 (en) 2010-03-25 2013-09-17 Altera Corporation Solving linear matrices in an integrated circuit device
US8862650B2 (en) 2010-06-25 2014-10-14 Altera Corporation Calculation of trigonometric functions in an integrated circuit device
US8589463B2 (en) 2010-06-25 2013-11-19 Altera Corporation Calculation of trigonometric functions in an integrated circuit device
US8577951B1 (en) 2010-08-19 2013-11-05 Altera Corporation Matrix operations in an integrated circuit device
GB2483902B (en) * 2010-09-24 2018-10-24 Advanced Risc Mach Ltd Vector floating point argument reduction
US8645451B2 (en) 2011-03-10 2014-02-04 Altera Corporation Double-clocked specialized processing block in an integrated circuit device
JP5773513B2 (ja) 2011-05-06 2015-09-02 オーパワー, インコーポレイテッド 第一の消費者の資源の使用を報告する方法、コンピュータ読み取り可能な媒体およびシステム
US9600278B1 (en) 2011-05-09 2017-03-21 Altera Corporation Programmable device using fixed and configurable logic to implement recursive trees
US8812576B1 (en) 2011-09-12 2014-08-19 Altera Corporation QR decomposition in an integrated circuit device
US9053045B1 (en) 2011-09-16 2015-06-09 Altera Corporation Computing floating-point polynomials in an integrated circuit device
US8949298B1 (en) 2011-09-16 2015-02-03 Altera Corporation Computing floating-point polynomials in an integrated circuit device
US8831133B2 (en) * 2011-10-27 2014-09-09 Lsi Corporation Recursive digital pre-distortion (DPD)
US8762443B1 (en) 2011-11-15 2014-06-24 Altera Corporation Matrix operations in an integrated circuit device
US8543634B1 (en) 2012-03-30 2013-09-24 Altera Corporation Specialized processing block for programmable integrated circuit device
US9098332B1 (en) 2012-06-01 2015-08-04 Altera Corporation Specialized processing block with fixed- and floating-point structures
US10796346B2 (en) 2012-06-27 2020-10-06 Opower, Inc. Method and system for unusual usage reporting
US8996600B1 (en) 2012-08-03 2015-03-31 Altera Corporation Specialized processing block for implementing floating-point multiplier with subnormal operation support
US9547316B2 (en) 2012-09-07 2017-01-17 Opower, Inc. Thermostat classification method and system
US9633401B2 (en) 2012-10-15 2017-04-25 Opower, Inc. Method to identify heating and cooling system power-demand
US9207909B1 (en) 2012-11-26 2015-12-08 Altera Corporation Polynomial calculations optimized for programmable integrated circuit device structures
US10067516B2 (en) 2013-01-22 2018-09-04 Opower, Inc. Method and system to control thermostat using biofeedback
US9189200B1 (en) 2013-03-14 2015-11-17 Altera Corporation Multiple-precision processing block in a programmable integrated circuit device
US10719797B2 (en) 2013-05-10 2020-07-21 Opower, Inc. Method of tracking and reporting energy performance for businesses
US10001792B1 (en) 2013-06-12 2018-06-19 Opower, Inc. System and method for determining occupancy schedule for controlling a thermostat
US9348795B1 (en) 2013-07-03 2016-05-24 Altera Corporation Programmable device using fixed and configurable logic to implement floating-point rounding
US9361267B2 (en) 2013-09-03 2016-06-07 International Business Machines Corporation Splitable and scalable normalizer for vector data
US10885238B1 (en) 2014-01-09 2021-01-05 Opower, Inc. Predicting future indoor air temperature for building
US10037014B2 (en) 2014-02-07 2018-07-31 Opower, Inc. Behavioral demand response dispatch
US9947045B1 (en) 2014-02-07 2018-04-17 Opower, Inc. Selecting participants in a resource conservation program
US10031534B1 (en) 2014-02-07 2018-07-24 Opower, Inc. Providing set point comparison
US9852484B1 (en) 2014-02-07 2017-12-26 Opower, Inc. Providing demand response participation
US9835352B2 (en) 2014-03-19 2017-12-05 Opower, Inc. Method for saving energy efficient setpoints
US9727063B1 (en) 2014-04-01 2017-08-08 Opower, Inc. Thermostat set point identification
US10019739B1 (en) 2014-04-25 2018-07-10 Opower, Inc. Energy usage alerts for a climate control device
US10108973B2 (en) 2014-04-25 2018-10-23 Opower, Inc. Providing an energy target for high energy users
US10171603B2 (en) 2014-05-12 2019-01-01 Opower, Inc. User segmentation to provide motivation to perform a resource saving tip
US10235662B2 (en) 2014-07-01 2019-03-19 Opower, Inc. Unusual usage alerts
US10024564B2 (en) 2014-07-15 2018-07-17 Opower, Inc. Thermostat eco-mode
US10410130B1 (en) 2014-08-07 2019-09-10 Opower, Inc. Inferring residential home characteristics based on energy data
US10467249B2 (en) 2014-08-07 2019-11-05 Opower, Inc. Users campaign for peaking energy usage
US10572889B2 (en) 2014-08-07 2020-02-25 Opower, Inc. Advanced notification to enable usage reduction
US9576245B2 (en) 2014-08-22 2017-02-21 O Power, Inc. Identifying electric vehicle owners
US10033184B2 (en) 2014-11-13 2018-07-24 Opower, Inc. Demand response device configured to provide comparative consumption information relating to proximate users or consumers
US11093950B2 (en) 2015-02-02 2021-08-17 Opower, Inc. Customer activity score
US10198483B2 (en) 2015-02-02 2019-02-05 Opower, Inc. Classification engine for identifying business hours
US10074097B2 (en) 2015-02-03 2018-09-11 Opower, Inc. Classification engine for classifying businesses based on power consumption
US10371861B2 (en) 2015-02-13 2019-08-06 Opower, Inc. Notification techniques for reducing energy usage
US9684488B2 (en) 2015-03-26 2017-06-20 Altera Corporation Combined adder and pre-adder for high-radix multiplier circuit
US10817789B2 (en) 2015-06-09 2020-10-27 Opower, Inc. Determination of optimal energy storage methods at electric customer service points
US9958360B2 (en) 2015-08-05 2018-05-01 Opower, Inc. Energy audit device
KR102359265B1 (ko) 2015-09-18 2022-02-07 삼성전자주식회사 프로세싱 장치 및 프로세싱 장치에서 연산을 수행하는 방법
US10559044B2 (en) 2015-11-20 2020-02-11 Opower, Inc. Identification of peak days
US9875084B2 (en) 2016-04-28 2018-01-23 Vivante Corporation Calculating trigonometric functions using a four input dot product circuit
US10474458B2 (en) * 2017-04-28 2019-11-12 Intel Corporation Instructions and logic to perform floating-point and integer operations for machine learning
US10942706B2 (en) 2017-05-05 2021-03-09 Intel Corporation Implementation of floating-point trigonometric functions in an integrated circuit device
CN109961135B (zh) * 2017-12-14 2020-06-23 中科寒武纪科技股份有限公司 集成电路芯片装置及相关产品
US10572568B2 (en) 2018-03-28 2020-02-25 Intel Corporation Accelerator for sparse-dense matrix multiplication

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS643734A (en) * 1987-06-25 1989-01-09 Fujitsu Ltd Multiplication circuit
US4969118A (en) * 1989-01-13 1990-11-06 International Business Machines Corporation Floating point unit for calculating A=XY+Z having simultaneous multiply and add
JPH0521665A (ja) * 1991-07-11 1993-01-29 Nec Corp ヒートシンク付半導体パツケージ
JP3323526B2 (ja) * 1991-11-28 2002-09-09 パイオニアビデオ株式会社 ディジタル信号プロセッサ
US5241493A (en) * 1991-12-16 1993-08-31 International Business Machines Corporation Floating point arithmetic unit with size efficient pipelined multiply-add architecture
US5359548A (en) * 1992-04-15 1994-10-25 Fujitsu Limited Floating-point arithmetic system having multiple-input addition and subtraction means
US6385634B1 (en) * 1995-08-31 2002-05-07 Intel Corporation Method for performing multiply-add operations on packed data
US5721892A (en) * 1995-08-31 1998-02-24 Intel Corporation Method and apparatus for performing multiply-subtract operations on packed data
US5757686A (en) * 1995-11-30 1998-05-26 Hewlett-Packard Company Method of decoupling the high order portion of the addend from the multiply result in an FMAC
JP3790307B2 (ja) 1996-10-16 2006-06-28 株式会社ルネサステクノロジ データプロセッサ及びデータ処理システム

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI383595B (zh) * 2005-03-17 2013-01-21 Qualcomm Inc 用於低密度奇偶校驗解碼器之有效校驗節點訊息轉換近似
US8495119B2 (en) 2005-03-17 2013-07-23 Qualcomm Incorporated Efficient check node message transform approximation for LDPC decoder
US8837135B2 (en) * 2011-10-08 2014-09-16 Wistron Corporation Expansion module for interface card, computer case assembly, and computer system
TWI638312B (zh) * 2014-07-02 2018-10-11 上海兆芯集成電路有限公司 暫時分路融合乘積-累加運算

Also Published As

Publication number Publication date
US6327605B2 (en) 2001-12-04
KR100526315B1 (ko) 2005-12-26
JPH10124484A (ja) 1998-05-15
US20010011291A1 (en) 2001-08-02
KR19980032693A (ko) 1998-07-25
US6243732B1 (en) 2001-06-05
US6038582A (en) 2000-03-14
JP3790307B2 (ja) 2006-06-28

Similar Documents

Publication Publication Date Title
TW405093B (en) Data processor and data processing system
US8024394B2 (en) Dual mode floating point multiply accumulate unit
TWI608410B (zh) 標準格式中間結果
KR100834178B1 (ko) Mac 연산 방법과 mac 연산을 포함하는 장치, 시스템 및 머신 판독가능한 매체
EP0976027B1 (en) ARITHMETIC PROCESSOR combining finite field arithmetic and modular integer arithmetic
KR100291383B1 (ko) 디지털신호처리를위한명령을지원하는모듈계산장치및방법
US6401194B1 (en) Execution unit for processing a data stream independently and in parallel
US7720900B2 (en) Fused multiply add split for multiple precision arithmetic
US8239438B2 (en) Method and apparatus for implementing a multiple operand vector floating point summation to scalar function
US20140067889A1 (en) Datapath circuit for digital signal processors
US20090271591A1 (en) Vector simd processor
US8239439B2 (en) Method and apparatus implementing a minimal area consumption multiple addend floating point summation function in a vector microprocessor
US8356160B2 (en) Pipelined multiple operand minimum and maximum function
US5426600A (en) Double precision division circuit and method for digital signal processor
US6295597B1 (en) Apparatus and method for improved vector processing to support extended-length integer arithmetic
KR102640883B1 (ko) 룩업 테이블을 이용한 컴퓨팅 가속기
EP1936492A1 (en) SIMD processor with reduction unit
WO2008077803A1 (en) Simd processor with reduction unit
US11789701B2 (en) Controlling carry-save adders in multiplication
Makino et al. The performance of GRAPE-DR for dense matrix operations
RU2276805C2 (ru) Способ и устройство для выделения целой и дробных компонент из данных с плавающей точкой
Wang et al. Design of a dynamically reconfigurable arithmetic unit for matrix algorithms
WO2020146286A1 (en) Sign-based partial reduction of modular operations in arithmetic logic units
JP2002304288A (ja) データ演算処理装置及びデータ演算処理プログラム
JPH1173409A (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