DE69329260T2 - Gerät zum Multiplizieren von Ganzzahlen mit vielen Ziffern - Google Patents

Gerät zum Multiplizieren von Ganzzahlen mit vielen Ziffern

Info

Publication number
DE69329260T2
DE69329260T2 DE69329260T DE69329260T DE69329260T2 DE 69329260 T2 DE69329260 T2 DE 69329260T2 DE 69329260 T DE69329260 T DE 69329260T DE 69329260 T DE69329260 T DE 69329260T DE 69329260 T2 DE69329260 T2 DE 69329260T2
Authority
DE
Germany
Prior art keywords
bits
bit
input
output
carry
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 - Lifetime
Application number
DE69329260T
Other languages
German (de)
English (en)
Other versions
DE69329260D1 (de
Inventor
Keiichi Iwamura
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.)
Canon Inc
Original Assignee
Canon Inc
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
Priority claimed from JP16708392A external-priority patent/JP3210420B2/ja
Priority claimed from JP4167077A external-priority patent/JPH0612232A/ja
Priority claimed from JP04167078A external-priority patent/JP3129524B2/ja
Priority claimed from JP4167081A external-priority patent/JPH0612231A/ja
Priority claimed from JP4167084A external-priority patent/JPH0612237A/ja
Priority claimed from JP04167079A external-priority patent/JP3129525B2/ja
Priority claimed from JP4167082A external-priority patent/JPH0612235A/ja
Priority claimed from JP04167080A external-priority patent/JP3129526B2/ja
Application filed by Canon Inc filed Critical Canon Inc
Publication of DE69329260D1 publication Critical patent/DE69329260D1/de
Application granted granted Critical
Publication of DE69329260T2 publication Critical patent/DE69329260T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/53Multiplying only in parallel-parallel fashion, i.e. both operands being entered in parallel
    • G06F7/5324Multiplying only in parallel-parallel fashion, i.e. both operands being entered in parallel partitioned, i.e. using repetitively a smaller parallel parallel multiplier or using an array of such smaller multipliers
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/533Reduction of the number of iteration steps or stages, e.g. using the Booth algorithm, log-sum, odd-even
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/60Methods or arrangements for performing computations using a digital non-denominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and non-denominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers
    • G06F7/72Methods or arrangements for performing computations using a digital non-denominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and non-denominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers using residue arithmetic
    • G06F7/722Modular multiplication
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/3852Calculation with most significant digit first
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/386Special constructional features
    • G06F2207/3884Pipelining
    • G06F2207/3892Systolic array
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/60Methods or arrangements for performing computations using a digital non-denominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and non-denominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers
    • G06F7/72Methods or arrangements for performing computations using a digital non-denominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and non-denominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers using residue arithmetic
    • G06F7/723Modular exponentiation

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Complex Calculations (AREA)
DE69329260T 1992-06-25 1993-06-23 Gerät zum Multiplizieren von Ganzzahlen mit vielen Ziffern Expired - Lifetime DE69329260T2 (de)

Applications Claiming Priority (8)

Application Number Priority Date Filing Date Title
JP4167084A JPH0612237A (ja) 1992-06-25 1992-06-25 整数上の乗算回路
JP04167079A JP3129525B2 (ja) 1992-06-25 1992-06-25 整数上の乗算回路
JP04167080A JP3129526B2 (ja) 1992-06-25 1992-06-25 整数上の乗算回路
JP04167078A JP3129524B2 (ja) 1992-06-25 1992-06-25 整数上の乗算回路及び乗算方法
JP4167082A JPH0612235A (ja) 1992-06-25 1992-06-25 整数上の乗算回路及び乗算方法
JP16708392A JP3210420B2 (ja) 1992-06-25 1992-06-25 整数上の乗算回路
JP4167077A JPH0612232A (ja) 1992-06-25 1992-06-25 整数上の乗算回路
JP4167081A JPH0612231A (ja) 1992-06-25 1992-06-25 整数上の乗算回路

Publications (2)

Publication Number Publication Date
DE69329260D1 DE69329260D1 (de) 2000-09-28
DE69329260T2 true DE69329260T2 (de) 2001-02-22

Family

ID=27573294

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69329260T Expired - Lifetime DE69329260T2 (de) 1992-06-25 1993-06-23 Gerät zum Multiplizieren von Ganzzahlen mit vielen Ziffern

Country Status (3)

Country Link
US (1) US5524090A (enExample)
EP (1) EP0576262B1 (enExample)
DE (1) DE69329260T2 (enExample)

Families Citing this family (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1122024A (zh) * 1994-08-15 1996-05-08 张胤微 一种任意字长、任意精度的乘法运算方法及乘法器
WO1998019231A1 (en) * 1996-10-31 1998-05-07 Motorola Limited Co-processor for performing modular multiplication
GB2318892B (en) * 1996-10-31 2001-07-11 Motorola Ltd Co-processor for performing modular multiplication
US5974437A (en) * 1996-12-02 1999-10-26 Synopsys, Inc. Fast array multiplier
WO1999031573A1 (fr) * 1997-12-17 1999-06-24 Kabushiki Kaisha Ultraclean Technology Research Institute Procede et circuit semi-conducteur pour effectuer des operations arithmetiques
GB2352309B (en) * 1999-07-21 2004-02-11 Advanced Risc Mach Ltd A system and method for performing modular multiplication
TW561400B (en) * 2002-04-26 2003-11-11 Silicon Integrated Sys Corp Systolic product-sum circuit in the dual-basis finite field GF(2m) or GF(2n))
US7769797B2 (en) * 2004-01-20 2010-08-03 Samsung Electronics Co., Ltd. Apparatus and method of multiplication using a plurality of identical partial multiplication modules
US7366746B2 (en) * 2004-02-12 2008-04-29 Xerox Corporation Finite impulse response filter method and apparatus
US8190669B1 (en) 2004-10-20 2012-05-29 Nvidia Corporation Multipurpose arithmetic functional unit
US8073892B2 (en) * 2005-12-30 2011-12-06 Intel Corporation Cryptographic system, method and multiplier
US8037119B1 (en) * 2006-02-21 2011-10-11 Nvidia Corporation Multipurpose functional unit with single-precision and double-precision operations
US8327115B2 (en) 2006-04-12 2012-12-04 Soft Machines, Inc. Plural matrices of execution units for processing matrices of row dependent instructions in single clock cycle in super or separate mode
GB2440187A (en) * 2006-07-17 2008-01-23 Ubidyne Inc DUC and DDC forming digital transceiver
WO2008061154A2 (en) 2006-11-14 2008-05-22 Soft Machines, Inc. Apparatus and method for processing instructions in a multi-threaded architecture using context switching
US8051123B1 (en) 2006-12-15 2011-11-01 Nvidia Corporation Multipurpose functional unit with double-precision and filtering operations
US8106914B2 (en) * 2007-12-07 2012-01-31 Nvidia Corporation Fused multiply-add functional unit
US10228949B2 (en) 2010-09-17 2019-03-12 Intel Corporation Single cycle multi-branch prediction including shadow cache for early far branch prediction
EP2689327B1 (en) 2011-03-25 2021-07-28 Intel Corporation Executing instruction sequence code blocks by using virtual cores instantiated by partitionable engines
EP2689326B1 (en) 2011-03-25 2022-11-16 Intel Corporation Memory fragments for supporting code block execution by using virtual cores instantiated by partitionable engines
CN108376097B (zh) 2011-03-25 2022-04-15 英特尔公司 用于通过使用由可分割引擎实例化的虚拟核来支持代码块执行的寄存器文件段
RU2555828C2 (ru) 2011-04-14 2015-07-10 Аак Денмарк А/С Жир, замедляющий поседение
CN103649931B (zh) 2011-05-20 2016-10-12 索夫特机械公司 用于支持由多个引擎执行指令序列的互连结构
TWI603198B (zh) 2011-05-20 2017-10-21 英特爾股份有限公司 以複數個引擎作資源與互連結構的分散式分配以支援指令序列的執行
WO2013077875A1 (en) 2011-11-22 2013-05-30 Soft Machines, Inc. An accelerated code optimizer for a multiengine microprocessor
CN108427574B (zh) 2011-11-22 2022-06-07 英特尔公司 微处理器加速的代码优化器
US10275255B2 (en) 2013-03-15 2019-04-30 Intel Corporation Method for dependency broadcasting through a source organized source view data structure
US9891924B2 (en) 2013-03-15 2018-02-13 Intel Corporation Method for implementing a reduced size register view data structure in a microprocessor
WO2014150806A1 (en) 2013-03-15 2014-09-25 Soft Machines, Inc. A method for populating register view data structure by using register template snapshots
WO2014150971A1 (en) 2013-03-15 2014-09-25 Soft Machines, Inc. A method for dependency broadcasting through a block organized source view data structure
US10140138B2 (en) 2013-03-15 2018-11-27 Intel Corporation Methods, systems and apparatus for supporting wide and efficient front-end operation with guest-architecture emulation
EP2972836B1 (en) 2013-03-15 2022-11-09 Intel Corporation A method for emulating a guest centralized flag architecture by using a native distributed flag architecture
US9886279B2 (en) 2013-03-15 2018-02-06 Intel Corporation Method for populating and instruction view data structure by using register template snapshots
US9811342B2 (en) 2013-03-15 2017-11-07 Intel Corporation Method for performing dual dispatch of blocks and half blocks
WO2014150991A1 (en) 2013-03-15 2014-09-25 Soft Machines, Inc. A method for implementing a reduced size register view data structure in a microprocessor
EP2972845B1 (en) 2013-03-15 2021-07-07 Intel Corporation A method for executing multithreaded instructions grouped onto blocks
US9569216B2 (en) 2013-03-15 2017-02-14 Soft Machines, Inc. Method for populating a source view data structure by using register template snapshots
US9904625B2 (en) 2013-03-15 2018-02-27 Intel Corporation Methods, systems and apparatus for predicting the way of a set associative cache
US9417843B2 (en) 2013-08-20 2016-08-16 Apple Inc. Extended multiply
DE102019116104A1 (de) * 2019-06-13 2020-12-17 Infineon Technologies Ag Kryptographieverarbeitungsvorrichtung und -verfahren zum kryptographischen verarbeiten von daten

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
NL148455B (nl) * 1948-09-03 Tech Electr Jarret T E J Elektrische machine met variabele reluctantie.
US4493048A (en) * 1982-02-26 1985-01-08 Carnegie-Mellon University Systolic array apparatuses for matrix computations
GB8431925D0 (en) * 1984-12-18 1985-01-30 Secr Defence Digital data processor
JPS6284335A (ja) * 1985-10-09 1987-04-17 Hitachi Ltd 乗算回路
US4939687A (en) * 1988-11-01 1990-07-03 General Electric Company Serial-parallel multipliers using serial as well as parallel addition of partial products
KR920003494B1 (ko) * 1989-06-20 1992-05-01 삼성전자 주식회사 디지탈 신호처리 시스템에서의 실시간 2's 콤플리멘트코드 숫자의 승산방법 및 회로
US5117385A (en) * 1990-03-16 1992-05-26 International Business Machines Corporation Table lookup multiplier with digital filter
US5274832A (en) * 1990-10-04 1993-12-28 National Semiconductor Corporation Systolic array for multidimensional matrix computations
US5262975A (en) * 1991-02-12 1993-11-16 Sony Corporation Serial input multiplier apparatus

Also Published As

Publication number Publication date
EP0576262A2 (en) 1993-12-29
DE69329260D1 (de) 2000-09-28
EP0576262A3 (enExample) 1994-03-23
US5524090A (en) 1996-06-04
EP0576262B1 (en) 2000-08-23

Similar Documents

Publication Publication Date Title
DE69329260T2 (de) Gerät zum Multiplizieren von Ganzzahlen mit vielen Ziffern
DE3650335T2 (de) Rechenverfahren und -gerät für endlichfeldmultiplikation.
DE69229766T2 (de) Verfahren und Gerät zum Verschlüsseln und Entschlüsseln von Kommunikationsdaten
DE69231110T2 (de) Rechengerät und Verfahren zum Verschlüsseln/Entschlüsseln von Kommunikationsdaten unter Verwendung desselben
DE69716331T2 (de) Schaltung für Modulo-Multiplikations- und Exponentiationsarithmetik
DE19758079A1 (de) Verfahren und Vorrichtung zur Galoisfeld-Multiplikation
DE69506675T2 (de) Verfahren zur Ausführung von modularen Reduktion nach der Montgomery-Methode
DE69130652T2 (de) Digitaler paralleler Hochgeschwindigkeitsmultiplizierer
DE3586201T2 (de) Digitaler datenprozessor fuer matrix-vektor-multiplikation.
DE69811877T2 (de) ARITHMETISCHER PROZESSOR, der endliche Felder Arithmetik und ganzzahlige modular Arithmetik kombiniert.
DE3750017T2 (de) Prozessor für orthogonale Transformation.
DE19702326B4 (de) Einrichtung und Verfahren für eine selbstgetaktete algorithmische Ausführung
DE69632978T2 (de) Multi-Operand-Addierer, der Parallelzähler benutzt
DE3700991C2 (de) Digitaler Übertragsvorgriffsaddierer
DE69229464T2 (de) Quasi radix-16 prozessor und verfahren
DE69130581T2 (de) Verfahren zur Berechnung einer Operation des Typus A.X modulo N, in einem Kodierverfahren gemäss der RSA-Methode
DE3855497T2 (de) Datenverarbeitungsgerät zur Berechnung eines multiplikativ invertierten Elements eines endigen Körpers
DE102020113922A1 (de) Multipliziererschaltungsanordnung mit reduzierter latenz für sehr grosse zahlen
DE69435034T2 (de) Verfahren ind vorrichtung zur durchfuehrung einer schnellen hadamard transform
DE69129723T2 (de) Prozessorelement für Datenakkumulationsrechnungen, Verarbeitungseinheit und Prozessor
DE3228018A1 (de) Schluesselsystem
DE112008002158T5 (de) Verfahren und System zur Multiplikation großer Zahlen
DE1549477B1 (de) Einrichtung zur schnellen akkumulation einer anzahl mehr stelliger binaerer operanden
DE1549584A1 (de) Datenverarbeiter zum Erhalt komplexer Fourierreihe-Koeffizienten
DE69025182T2 (de) Digitaler prozessor für zweierkomplementberechnungen

Legal Events

Date Code Title Description
8364 No opposition during term of opposition