JP4728392B2 - 大数乗算方法およびデバイス - Google Patents
大数乗算方法およびデバイス Download PDFInfo
- Publication number
- JP4728392B2 JP4728392B2 JP2008510722A JP2008510722A JP4728392B2 JP 4728392 B2 JP4728392 B2 JP 4728392B2 JP 2008510722 A JP2008510722 A JP 2008510722A JP 2008510722 A JP2008510722 A JP 2008510722A JP 4728392 B2 JP4728392 B2 JP 4728392B2
- Authority
- JP
- Japan
- Prior art keywords
- vector
- word
- digit
- bit
- bits
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
- G06F7/48—Methods 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/52—Multiplying; Dividing
- G06F7/523—Multiplying only
- G06F7/525—Multiplying only in serial-serial fashion, i.e. both operands being entered serially
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
- G06F7/48—Methods 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/52—Multiplying; Dividing
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)
- Complex Calculations (AREA)
- Executing Machine-Instructions (AREA)
Description
することを含むことが好ましい。
ードを、W−1ビット・ワードへ変換する他の方法およびデバイスにも関する。
Claims (8)
- プロセッサが、第一の数を第二の数で乗算するための、無符号乗算方法であって、
前記第一の数及び前記第二の数は、共に無符号の数であり、
(a)前記第一の数を、複数のデジットから構成される第一のベクトルとして第一のレジスタ内に記憶し、なお、前記第一のベクトルの各々のデジットは1ワードで表される所定のビット数を持つ、
(b)前記第二の数を、複数のデジットから構成される第二のベクトルとして第二のレジスタ内に記憶し、なお、前記第二のベクトルの各々のデジットは1ワードで表される前記所定のビット数を持つ、
(c)前記第一のベクトルの前記各デジットを、前記変換された第一のベクトルの前記各々のワードの最高位のビットが零ビットであるように、各々、前記所定のビット数よりも1ビット少ない対応デジットへ変換することにより、前記第一の数を正数に変換し、
(d)前記第二のベクトルの前記各デジットを、前記変換された第二のベクトルの前記各々のワードの最高位のビットが零ビットであるように、各々、前記所定のビット数よりも1ビット少ない対応デジットへ変換することにより、前記第二の数を正数に変換し、そして
(e)前記プロセッサはすべての乗算が有符号乗算に制限されたプロセッサであって、前記第一のベクトルの前記変換されたデジットのそれぞれと、前記第二のベクトルの前記変換されたデジットのそれぞれとを乗算することによって有符号乗算結果を算出し、
前記第一及び前記第二のベクトルの前記変換されたデジットは、それぞれ複数個存在し、前記第一のベクトルの前記変換されたデジットのそれぞれと、前記第二のベクトルの前記変換されたデジットのそれぞれとによる乗算の積のそれぞれに対して、前記1ワードで表される最高位ビットが常に零となるようにマスキングオペレーションを行うことを特徴とする無符号乗算方法。 - 前記対応デジットへの変換に際し、前記第一及び第二の数に対するデジットの数は各々、前記第一及び第二の数のそれぞれのビット数を前記1ワードで表される所定のビット数−1で除して得られた数であり、デジットは、全てのデジットにおける全てのワードのそれぞれの最高位ビットが零ビットであるように変換されることを特徴とする請求項1に記載の無符号乗算方法。
- 前記対応デジットへの変換に際しては、前記第一及び前記第二の数のそれぞれに対して、それぞれの数の最下位デジットを保持する第一のワードの最上位ビットを前記第一のワードに引き続く第二のワードの最下位ビットへコピーし、前記第二のワードの各ビットを1位置だけ上位ビットへシフトさせ、さらに、前記第二のワードの最上位から(1+1)ビットを前記第二のワードに引き続く第三のワードへコピーするという操作と同様な結果が得られるように変換が行われることを特徴とする請求項1または2に記載の無符号乗算方法。
- さらに、(f)前記有符号乗算結果を、対応する無符号乗算結果へ変換するステップからなることを特徴とする請求項1から3のいずれかに記載の無符号乗算方法。
- 第一の数を第二の数で乗算するためのデバイスであって、
前記第一の数及び前記第二の数は、共に無符号の数であり、
(a)前記第一の数を、複数のデジットから構成される第一のベクトルとして記憶するための第一のレジスタ、なお、前記第一のベクトルの各々のデジットは少なくとも1ワードで表される所定のビット数を持つ、
(b)前記第二の数を、複数のデジットから構成される第二のベクトルとして記憶するための第二のレジスタ、なお、前記第二のベクトルの各々のデジットは少なくとも1ワードで表される前記所定のビット数を持つ、
(c)すべての乗算が有符号乗算に制限されたプロセッサからなり、前記プロセッサは、前記第一のベクトルおよび前記第二のベクトルを、各々、少なくとも一つの各デジットの対応変換第一ベクトルおよび対応変換第二ベクトルへ変換し、この場合の前記変換された第一及び第二のベクトルのデジットの各々は前記所定のビット数よりも1ビット少なく、
各々、前記変換された第一ベクトルの各々のワード及び変換された第二のベクトルの各々のワードの最高位のビットが零ビットであるように変換することにより、前記第一の数及び前記第二の数をそれぞれ正数に変換し、そして、
前記対応変換第一ベクトルのビットを前記対応変換第二ベクトルのビットで乗算し、有符号乗算結果を算出するためのものであり、
前記第一及び前記第二のベクトルの前記変換されたデジットは、それぞれ複数個存在し、
前記第一のベクトルの前記変換されたデジットのそれぞれと、前記第二のベクトルの前記変換されたデジットのそれぞれとによる乗算の積に対して、前記1ワードで表される最高位ビットが常に零となるようにマスキングオペレーションを行い、
前記マスキングオペレーションは、前記プロセッサが行うものであることを特徴とするデバイス。 - 前記対応デジットへの変換に際し、前記第一及び第二の数に対するデジットの数は各々、前記第一及び第二の数のそれぞれのビット数を前記1ワードで表される所定のビット数−1で除して得られた数であり、デジットは、全てのデジットにおける全てのワードのそれぞれの最高位ビットが零ビットであるように変換されることを特徴とする請求項5に記載のデバイス。
- 前記プロセッサが、その場で、前記第一のベクトルおよび前記第二のベクトルの前記変換を適用する、請求項5または6に記載のデバイス。
- さらに、(d)前記対応変換第一ベクトルおよび前記対応変換第二ベクトルを記憶するための記憶ユニットからなる、請求項5から7のいずれかに記載のデバイス。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US67890705P | 2005-05-09 | 2005-05-09 | |
PCT/IL2006/000551 WO2006120680A2 (en) | 2005-05-09 | 2006-05-09 | Large number multiplication method and device |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2008544344A JP2008544344A (ja) | 2008-12-04 |
JP4728392B2 true JP4728392B2 (ja) | 2011-07-20 |
Family
ID=37396968
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008510722A Expired - Fee Related JP4728392B2 (ja) | 2005-05-09 | 2006-05-09 | 大数乗算方法およびデバイス |
Country Status (6)
Country | Link |
---|---|
US (1) | US7672989B2 (ja) |
EP (1) | EP1880275A4 (ja) |
JP (1) | JP4728392B2 (ja) |
KR (1) | KR101247164B1 (ja) |
CN (1) | CN101300544B (ja) |
WO (1) | WO2006120680A2 (ja) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8028015B2 (en) * | 2007-08-10 | 2011-09-27 | Inside Contactless S.A. | Method and system for large number multiplication |
CN104115115B (zh) | 2011-12-19 | 2017-06-13 | 英特尔公司 | 用于多精度算术的simd整数乘法累加指令 |
CN104011661B (zh) * | 2011-12-23 | 2017-04-12 | 英特尔公司 | 用于大整数运算的向量指令的装置和方法 |
KR101615976B1 (ko) | 2014-12-18 | 2016-04-28 | 한국건설기술연구원 | 공학용 목재 및 콘크리트 슬래브를 구비한 합성바닥판 구조 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS60229140A (ja) * | 1984-04-26 | 1985-11-14 | Nec Corp | 倍精度乗算器 |
JPS62236030A (ja) * | 1986-04-08 | 1987-10-16 | Nec Corp | 乗算回路 |
JPH02212927A (ja) * | 1989-02-14 | 1990-08-24 | Fujitsu Ltd | 2進整数乗算処理方法 |
JPH03241421A (ja) * | 1990-02-20 | 1991-10-28 | Yamaha Corp | 乗算器 |
JPH04367932A (ja) * | 1991-06-17 | 1992-12-21 | Oki Electric Ind Co Ltd | 倍精度乗算方法 |
JPH1185471A (ja) * | 1997-07-09 | 1999-03-30 | Matsushita Electric Ind Co Ltd | 演算方法および演算装置 |
JP2000353077A (ja) * | 1999-04-07 | 2000-12-19 | Matsushita Electric Ind Co Ltd | 多倍長演算装置 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5509129A (en) * | 1993-11-30 | 1996-04-16 | Guttag; Karl M. | Long instruction word controlling plural independent processor operations |
EP0795155B1 (en) * | 1994-12-01 | 2003-03-19 | Intel Corporation | A microprocessor having a multiply operation |
US6014684A (en) * | 1997-03-24 | 2000-01-11 | Intel Corporation | Method and apparatus for performing N bit by 2*N-1 bit signed multiplication |
US6029184A (en) | 1997-06-17 | 2000-02-22 | Sun Microsystems, Inc. | Method of performing unsigned operations with signed instructions in a microprocessor |
US6144980A (en) * | 1998-01-28 | 2000-11-07 | Advanced Micro Devices, Inc. | Method and apparatus for performing multiple types of multiplication including signed and unsigned multiplication |
US6038583A (en) * | 1997-10-23 | 2000-03-14 | Advanced Micro Devices, Inc. | Method and apparatus for simultaneously multiplying two or more independent pairs of operands and calculating a rounded products |
US6026483A (en) * | 1997-10-23 | 2000-02-15 | Advanced Micro Devices, Inc. | Method and apparatus for simultaneously performing arithmetic on two or more pairs of operands |
US6393554B1 (en) * | 1998-01-28 | 2002-05-21 | Advanced Micro Devices, Inc. | Method and apparatus for performing vector and scalar multiplication and calculating rounded products |
US6347326B1 (en) * | 1999-03-02 | 2002-02-12 | Philips Electronics North America Corporation | N bit by M bit multiplication of twos complement numbers using N/2+1 X M/2+1 bit multipliers |
US6708193B1 (en) * | 2000-02-21 | 2004-03-16 | Hewlett-Packard Development Company, L.P. | Linear summation multiplier array implementation for both signed and unsigned multiplication |
KR20020047509A (ko) * | 2000-12-13 | 2002-06-22 | 신경욱 | 여분 이진 부분곱을 이용한 복소수 승산방법 및 이를적용한 복소수 승산기 |
US6742012B2 (en) * | 2000-12-27 | 2004-05-25 | Arm Limited | Apparatus and method for performing multiplication operations |
-
2006
- 2006-05-08 US US11/429,190 patent/US7672989B2/en active Active
- 2006-05-09 EP EP06728340A patent/EP1880275A4/en not_active Withdrawn
- 2006-05-09 KR KR1020077026682A patent/KR101247164B1/ko not_active IP Right Cessation
- 2006-05-09 WO PCT/IL2006/000551 patent/WO2006120680A2/en not_active Application Discontinuation
- 2006-05-09 JP JP2008510722A patent/JP4728392B2/ja not_active Expired - Fee Related
- 2006-05-09 CN CN2006800158095A patent/CN101300544B/zh not_active Expired - Fee Related
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS60229140A (ja) * | 1984-04-26 | 1985-11-14 | Nec Corp | 倍精度乗算器 |
JPS62236030A (ja) * | 1986-04-08 | 1987-10-16 | Nec Corp | 乗算回路 |
JPH02212927A (ja) * | 1989-02-14 | 1990-08-24 | Fujitsu Ltd | 2進整数乗算処理方法 |
JPH03241421A (ja) * | 1990-02-20 | 1991-10-28 | Yamaha Corp | 乗算器 |
JPH04367932A (ja) * | 1991-06-17 | 1992-12-21 | Oki Electric Ind Co Ltd | 倍精度乗算方法 |
JPH1185471A (ja) * | 1997-07-09 | 1999-03-30 | Matsushita Electric Ind Co Ltd | 演算方法および演算装置 |
JP2000353077A (ja) * | 1999-04-07 | 2000-12-19 | Matsushita Electric Ind Co Ltd | 多倍長演算装置 |
Also Published As
Publication number | Publication date |
---|---|
US7672989B2 (en) | 2010-03-02 |
JP2008544344A (ja) | 2008-12-04 |
CN101300544B (zh) | 2012-05-30 |
KR20080016803A (ko) | 2008-02-22 |
KR101247164B1 (ko) | 2013-03-25 |
WO2006120680A3 (en) | 2007-05-03 |
CN101300544A (zh) | 2008-11-05 |
EP1880275A2 (en) | 2008-01-23 |
EP1880275A4 (en) | 2009-12-16 |
WO2006120680A2 (en) | 2006-11-16 |
US20060253522A1 (en) | 2006-11-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4064989B2 (ja) | パック・データの乗加算演算を実行する装置 | |
KR100329339B1 (ko) | 압축데이터에의한승산-가산연산수행장치 | |
US5835392A (en) | Method for performing complex fast fourier transforms (FFT's) | |
JP7096828B2 (ja) | 入力オペランド値を処理するための装置及び方法 | |
US10768898B2 (en) | Efficient modulo calculation | |
JP3139466B2 (ja) | 乗算器及び積和演算器 | |
US20180373678A1 (en) | Outer product multipler system and method | |
JP4728392B2 (ja) | 大数乗算方法およびデバイス | |
CN113467750A (zh) | 用于基数为4的srt算法的大整数位宽除法电路及方法 | |
US6338135B1 (en) | Data processing system and method for performing an arithmetic operation on a plurality of signed data values | |
JP5175983B2 (ja) | 演算装置 | |
US5870322A (en) | Multiplier to selectively perform unsigned magnitude multiplication or signed magnitude multiplication | |
JPH04355827A (ja) | 開平演算装置 | |
JP3660075B2 (ja) | 除算装置 | |
JP2007286380A (ja) | 有限可換群演算方法、装置およびそのプログラム | |
JP7343473B2 (ja) | レジスタベースの複素数処理 | |
US6792442B1 (en) | Signal processor and product-sum operating device for use therein with rounding function | |
JP2002530775A (ja) | 複数の符号付きデータ値に算術演算を実施するデータ処理システムおよび方法 | |
JPH1185471A (ja) | 演算方法および演算装置 | |
JP2010072981A (ja) | 複素数の積和演算装置および積和演算方法 | |
JP2011180966A (ja) | 積和演算器 | |
JPH05313861A (ja) | 開平演算装置 | |
JP2006500615A (ja) | 向上したQuisquaterReduction | |
JPS6175927A (ja) | 符号付nビツト2進数乗算方式 | |
JPH05216626A (ja) | 乗算器 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20090807 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090814 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20091110 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20091117 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20091211 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20091218 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20100112 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20100119 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100212 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100813 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20101109 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20101116 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20101210 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20110107 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110307 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20110314 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20110401 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20110414 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140422 Year of fee payment: 3 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |