DE69430838T2 - Schaltung und Verfahren zur parallelen Verschiebung und Addition - Google Patents

Schaltung und Verfahren zur parallelen Verschiebung und Addition

Info

Publication number
DE69430838T2
DE69430838T2 DE69430838T DE69430838T DE69430838T2 DE 69430838 T2 DE69430838 T2 DE 69430838T2 DE 69430838 T DE69430838 T DE 69430838T DE 69430838 T DE69430838 T DE 69430838T DE 69430838 T2 DE69430838 T2 DE 69430838T2
Authority
DE
Germany
Prior art keywords
circuit
addition
parallel shifting
shifting
parallel
Prior art date
Legal status (The legal status 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 status listed.)
Expired - Fee Related
Application number
DE69430838T
Other languages
English (en)
Other versions
DE69430838D1 (de
Inventor
Ruby Bei-Loh Lee
Joel David Lamb
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hewlett Packard Development Co LP
Original Assignee
Hewlett Packard Co
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 Hewlett Packard Co filed Critical Hewlett Packard Co
Application granted granted Critical
Publication of DE69430838D1 publication Critical patent/DE69430838D1/de
Publication of DE69430838T2 publication Critical patent/DE69430838T2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

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
    • 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/52Multiplying; Dividing
    • G06F7/523Multiplying only
    • G06F7/527Multiplying only in serial-parallel fashion, i.e. one operand being entered serially and the other in parallel
    • G06F7/5272Multiplying only in serial-parallel fashion, i.e. one operand being entered serially and the other in parallel with row wise addition of partial 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/50Adding; Subtracting
    • G06F7/505Adding; Subtracting in bit-parallel fashion, i.e. having a different digit-handling circuit for each denomination
    • G06F7/506Adding; Subtracting in bit-parallel fashion, i.e. having a different digit-handling circuit for each denomination with simultaneous carry generation for, or propagation over, two or more stages
    • G06F7/508Adding; Subtracting in bit-parallel fashion, i.e. having a different digit-handling circuit for each denomination with simultaneous carry generation for, or propagation over, two or more stages using carry look-ahead circuits
    • 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
    • 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
    • G06F7/575Basic arithmetic logic units, i.e. devices selectable to perform either addition, subtraction or one of several logical operations, using, at least partially, the same circuitry
    • 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
    • G06F2207/00Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F2207/38Indexing scheme relating to groups G06F7/38 - G06F7/575
    • G06F2207/3804Details
    • G06F2207/3808Details concerning the type of numbers or the way they are handled
    • G06F2207/3828Multigauge devices, i.e. capable of handling packed numbers without unpacking them
    • 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/499Denomination or exception handling, e.g. rounding or overflow
    • G06F7/49905Exception handling
    • G06F7/4991Overflow or underflow
    • G06F7/49921Saturation, i.e. clipping the result to a minimum or maximum value
    • 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/499Denomination or exception handling, e.g. rounding or overflow
    • G06F7/49942Significance control
    • G06F7/49947Rounding
    • G06F7/49963Rounding to nearest
DE69430838T 1993-11-29 1994-08-02 Schaltung und Verfahren zur parallelen Verschiebung und Addition Expired - Fee Related DE69430838T2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US08/158,646 US5390135A (en) 1993-11-29 1993-11-29 Parallel shift and add circuit and method

Publications (2)

Publication Number Publication Date
DE69430838D1 DE69430838D1 (de) 2002-07-25
DE69430838T2 true DE69430838T2 (de) 2002-12-05

Family

ID=22569068

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69430838T Expired - Fee Related DE69430838T2 (de) 1993-11-29 1994-08-02 Schaltung und Verfahren zur parallelen Verschiebung und Addition

Country Status (4)

Country Link
US (1) US5390135A (de)
EP (1) EP0655677B1 (de)
JP (1) JP3573808B2 (de)
DE (1) DE69430838T2 (de)

Families Citing this family (56)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6116768A (en) * 1993-11-30 2000-09-12 Texas Instruments Incorporated Three input arithmetic logic unit with barrel rotator
US6016538A (en) * 1993-11-30 2000-01-18 Texas Instruments Incorporated Method, apparatus and system forming the sum of data in plural equal sections of a single data word
JP3428741B2 (ja) * 1994-02-14 2003-07-22 松下電器産業株式会社 演算装置とアドレス発生装置及びプログラム制御装置
US6738793B2 (en) 1994-12-01 2004-05-18 Intel Corporation Processor capable of executing packed shift operations
US6275834B1 (en) * 1994-12-01 2001-08-14 Intel Corporation Apparatus for performing packed shift operations
KR100329338B1 (ko) 1994-12-02 2002-07-18 피터 엔. 데트킨 복합피연산자의팩연산을수행하는마이크로프로세서
US6381690B1 (en) * 1995-08-01 2002-04-30 Hewlett-Packard Company Processor for performing subword permutations and combinations
US5742840A (en) * 1995-08-16 1998-04-21 Microunity Systems Engineering, Inc. General purpose, multiple precision parallel operation, programmable media processor
US5953241A (en) * 1995-08-16 1999-09-14 Microunity Engeering Systems, Inc. Multiplier array processing system with enhanced utilization at lower precision for group multiply and sum instruction
US6643765B1 (en) * 1995-08-16 2003-11-04 Microunity Systems Engineering, Inc. Programmable processor with group floating point operations
US6295599B1 (en) * 1995-08-16 2001-09-25 Microunity Systems Engineering System and method for providing a wide operand architecture
US7301541B2 (en) * 1995-08-16 2007-11-27 Microunity Systems Engineering, Inc. Programmable processor and method with wide operations
US7395298B2 (en) * 1995-08-31 2008-07-01 Intel Corporation Method and apparatus for performing multiply-add operations on packed data
US6385634B1 (en) 1995-08-31 2002-05-07 Intel Corporation Method for performing multiply-add operations on packed data
US5963744A (en) * 1995-09-01 1999-10-05 Philips Electronics North America Corporation Method and apparatus for custom operations of a processor
US5815421A (en) * 1995-12-18 1998-09-29 Intel Corporation Method for transposing a two-dimensional array
US5907842A (en) * 1995-12-20 1999-05-25 Intel Corporation Method of sorting numbers to obtain maxima/minima values with ordering
JP3356613B2 (ja) * 1996-02-14 2002-12-16 日本電気株式会社 加算方法および加算器
US6092094A (en) * 1996-04-17 2000-07-18 Advanced Micro Devices, Inc. Execute unit configured to selectably interpret an operand as multiple operands or as a single operand
US5841683A (en) * 1996-09-20 1998-11-24 International Business Machines Corporation Least significant bit and guard bit extractor
GB2317466B (en) * 1996-09-23 2000-11-08 Advanced Risc Mach Ltd Data processing condition code flags
US7392275B2 (en) * 1998-03-31 2008-06-24 Intel Corporation Method and apparatus for performing efficient transformations with horizontal addition and subtraction
US7395302B2 (en) 1998-03-31 2008-07-01 Intel Corporation Method and apparatus for performing horizontal addition and subtraction
US6211892B1 (en) * 1998-03-31 2001-04-03 Intel Corporation System and method for performing an intra-add operation
US6230253B1 (en) * 1998-03-31 2001-05-08 Intel Corporation Executing partial-width packed data instructions
US6418529B1 (en) * 1998-03-31 2002-07-09 Intel Corporation Apparatus and method for performing intra-add operation
US6041404A (en) 1998-03-31 2000-03-21 Intel Corporation Dual function system and method for shuffling packed data elements
US6230257B1 (en) * 1998-03-31 2001-05-08 Intel Corporation Method and apparatus for staggering execution of a single packed data instruction using the same circuit
US6539061B1 (en) * 1998-09-16 2003-03-25 Texas Instruments Incorporated Efficient method for decompressing difference coded signals
TW514822B (en) * 1999-05-06 2002-12-21 Ind Tech Res Inst Low power consumption mathematic apparatus and method
US6449629B1 (en) * 1999-05-12 2002-09-10 Agere Systems Guardian Corp. Three input split-adder
JP2002063025A (ja) * 2000-08-18 2002-02-28 Fujitsu Ltd 可変長データ処理用プロセッサ
US7039906B1 (en) 2000-09-29 2006-05-02 International Business Machines Corporation Compiler for enabling multiple signed independent data elements per register
US6834337B1 (en) 2000-09-29 2004-12-21 International Business Machines Corporation System and method for enabling multiple signed independent data elements per register
GB0024312D0 (en) * 2000-10-04 2000-11-15 Advanced Risc Mach Ltd Single instruction multiple data processing
US6748411B1 (en) * 2000-11-20 2004-06-08 Agere Systems Inc. Hierarchical carry-select multiple-input split adder
US6959316B2 (en) * 2001-02-01 2005-10-25 Nokia Mobile Phones Limited Dynamically configurable processor
US7155601B2 (en) * 2001-02-14 2006-12-26 Intel Corporation Multi-element operand sub-portion shuffle instruction execution
US20030037085A1 (en) * 2001-08-20 2003-02-20 Sandbote Sam B. Field processing unit
US7685212B2 (en) * 2001-10-29 2010-03-23 Intel Corporation Fast full search motion estimation with SIMD merge instruction
US7624138B2 (en) 2001-10-29 2009-11-24 Intel Corporation Method and apparatus for efficient integer transform
US7631025B2 (en) * 2001-10-29 2009-12-08 Intel Corporation Method and apparatus for rearranging data between multiple registers
US7739319B2 (en) * 2001-10-29 2010-06-15 Intel Corporation Method and apparatus for parallel table lookup using SIMD instructions
US7725521B2 (en) * 2001-10-29 2010-05-25 Intel Corporation Method and apparatus for computing matrix transformations
US7430578B2 (en) * 2001-10-29 2008-09-30 Intel Corporation Method and apparatus for performing multiply-add operations on packed byte data
US20040054877A1 (en) 2001-10-29 2004-03-18 Macy William W. Method and apparatus for shuffling data
US7818356B2 (en) 2001-10-29 2010-10-19 Intel Corporation Bitstream buffer manipulation with a SIMD merge instruction
US7219118B2 (en) * 2001-11-06 2007-05-15 Broadcom Corporation SIMD addition circuit
US20030140076A1 (en) * 2002-01-22 2003-07-24 International Business Machines Corporation Interleaved arithmetic logic units
US7236207B2 (en) * 2002-01-22 2007-06-26 Broadcom Corporation System and method of transmission and reception of progressive content with isolated fields for conversion to interlaced display
US7047383B2 (en) * 2002-07-11 2006-05-16 Intel Corporation Byte swap operation for a 64 bit operand
GB2411974C (en) * 2003-12-09 2009-09-23 Advanced Risc Mach Ltd Data shift operations
US7272804B2 (en) * 2004-10-14 2007-09-18 Broadcom Corporation Generation of RTL to carry out parallel arithmetic operations
US8078836B2 (en) 2007-12-30 2011-12-13 Intel Corporation Vector shuffle instructions operating on multiple lanes each having a plurality of data elements using a common set of per-lane control bits
KR101418467B1 (ko) * 2008-08-15 2014-07-10 엘에스아이 코포레이션 니어 코드워드들의 ram 리스트-디코딩
US8825727B2 (en) * 2012-03-15 2014-09-02 International Business Machines Corporation Software-hardware adder

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3987291A (en) * 1975-05-01 1976-10-19 International Business Machines Corporation Parallel digital arithmetic device having a variable number of independent arithmetic zones of variable width and location
JPS5943442A (ja) * 1982-09-02 1984-03-10 Matsushita Electric Ind Co Ltd デイジタル乗算器
US4707800A (en) * 1985-03-04 1987-11-17 Raytheon Company Adder/substractor for variable length numbers
JPS61239327A (ja) * 1985-04-16 1986-10-24 Nec Corp オ−バフロ−検出方式
US4914617A (en) * 1987-06-26 1990-04-03 International Business Machines Corporation High performance parallel binary byte adder
US5189636A (en) * 1987-11-16 1993-02-23 Intel Corporation Dual mode combining circuitry
US5047975A (en) * 1987-11-16 1991-09-10 Intel Corporation Dual mode adder circuitry with overflow detection and substitution enabled for a particular mode
WO1992009032A1 (en) * 1990-11-09 1992-05-29 Adaptive Solutions, Inc. Unbiased bit disposal apparatus and method

Also Published As

Publication number Publication date
DE69430838D1 (de) 2002-07-25
US5390135A (en) 1995-02-14
EP0655677B1 (de) 2002-06-19
EP0655677A1 (de) 1995-05-31
JP3573808B2 (ja) 2004-10-06
JPH07200261A (ja) 1995-08-04

Similar Documents

Publication Publication Date Title
DE69430838T2 (de) Schaltung und Verfahren zur parallelen Verschiebung und Addition
DE69435047D1 (de) Schaltung und Verfahren zur parallelen Addition und Mittelwertbildung
DE69423573D1 (de) Verfahren und Schaltung zur Bildverbesserung
DE69415665T2 (de) Verfahren und gerät zur stereophonen wiedergabe
DE59407832D1 (de) Verfahren und einrichtung zur umsetzung von farbwerten
DE69739589D1 (de) Verfahren und Schaltung zur Rahmensynchronisierung
DE69426232T2 (de) System und verfahren zur elektronischen bildstabilisierung
DE69623770T2 (de) Phasenschieber und verfahren zur phasenverschiebung
DE69417497T2 (de) Verfahren und Vorrichtung für bildabhängige Farbveränderung
DE59410364D1 (de) Verfahren zur prüfung von elektronischen steuergeräten
DE69313249D1 (de) Verfahren zur beschränkten Koaleszenz
DE69731700D1 (de) Arithmetischer Schaltkreis und arithmetisches Verfahren
DE19681072T1 (de) Verstärkerschaltung und Verfahren zur Abstimmung der Verstärkerschaltung
DE69423129D1 (de) System und Verfahren zur Kurvendarstellung
DE69421734T2 (de) Verfahren zur Schadstoffbeseitigung
DE69433224D1 (de) Verbesserte einrichtung und verfahren zur prekodierung
DE59410342D1 (de) Verfahren und Schaltungsanordnung zur Übertragung von Sprachsignalen
DE69736257D1 (de) Schaltung und Verfahren zur Produktsummenberechnung
DE69417297T2 (de) Schaltung und Verfahren zur Unterdrückung von Störsignalen
DE69231051D1 (de) Verfahren und Anordnung zur vorteilierten Division
DE69423073D1 (de) Schaltung und Verfahren zur Verschiebung und Abrundung
DE69417360D1 (de) Vorrichtungen und Verfahren zur Temperaturdetektion
DE69233280D1 (de) Verfahren und Schaltungsanordnung zur Datenübertragung
DE69423170D1 (de) System und Verfahren zum Schaltungsentwurf
DE69211585D1 (de) Verfahren und Schaltungsanordnung zur Prüfung zweiseitiger, serialer Übertragungen

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8327 Change in the person/name/address of the patent owner

Owner name: HEWLETT-PACKARD DEVELOPMENT CO., L.P., HOUSTON, TE

8339 Ceased/non-payment of the annual fee