KR100880614B1 - 단일 명령어 다중 데이터 처리 - Google Patents

단일 명령어 다중 데이터 처리 Download PDF

Info

Publication number
KR100880614B1
KR100880614B1 KR1020037004621A KR20037004621A KR100880614B1 KR 100880614 B1 KR100880614 B1 KR 100880614B1 KR 1020037004621 A KR1020037004621 A KR 1020037004621A KR 20037004621 A KR20037004621 A KR 20037004621A KR 100880614 B1 KR100880614 B1 KR 100880614B1
Authority
KR
South Korea
Prior art keywords
bit
data word
portions
shift
circuit
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
KR1020037004621A
Other languages
English (en)
Korean (ko)
Other versions
KR20030066631A (ko
Inventor
사이메스도미닉휴고
씨일데이빗제임스
Original Assignee
에이알엠 리미티드
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 에이알엠 리미티드 filed Critical 에이알엠 리미티드
Publication of KR20030066631A publication Critical patent/KR20030066631A/ko
Application granted granted Critical
Publication of KR100880614B1 publication Critical patent/KR100880614B1/ko
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

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
    • 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/50Adding; Subtracting
    • G06F7/505Adding; Subtracting in bit-parallel fashion, i.e. having a different digit-handling circuit for each denomination
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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 OR CALCULATING; 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/30025Format conversion instructions, e.g. Floating-Point to Integer, decimal conversion
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/30032Movement instructions, e.g. MOVE, SHIFT, ROTATE, SHUFFLE
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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 OR CALCULATING; 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
    • G06F9/30038Instructions to perform operations on packed data, e.g. vector, tile or matrix operations using a mask
    • 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/3828Multigauge devices, i.e. capable of handling packed numbers without unpacking them
    • 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/499Denomination or exception handling, e.g. rounding or overflow
    • G06F7/49931Modulo N reduction of final result

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Analysis (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Mathematical Optimization (AREA)
  • Computing Systems (AREA)
  • Executing Machine-Instructions (AREA)
  • Advance Control (AREA)
KR1020037004621A 2000-10-04 2001-08-21 단일 명령어 다중 데이터 처리 Expired - Lifetime KR100880614B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
GB0024311A GB2367650B (en) 2000-10-04 2000-10-04 Single instruction multiple data processing
GB0024311.3 2000-10-04
PCT/GB2001/003744 WO2002029553A1 (en) 2000-10-04 2001-08-21 Single instruction multiple data processing

Publications (2)

Publication Number Publication Date
KR20030066631A KR20030066631A (ko) 2003-08-09
KR100880614B1 true KR100880614B1 (ko) 2009-01-30

Family

ID=9900674

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020037004621A Expired - Lifetime KR100880614B1 (ko) 2000-10-04 2001-08-21 단일 명령어 다중 데이터 처리

Country Status (11)

Country Link
US (1) US6999985B2 (enExample)
EP (1) EP1323031B1 (enExample)
JP (1) JP5133491B2 (enExample)
KR (1) KR100880614B1 (enExample)
CN (1) CN1196998C (enExample)
GB (1) GB2367650B (enExample)
IL (2) IL151395A0 (enExample)
MY (1) MY129332A (enExample)
RU (1) RU2279706C2 (enExample)
TW (1) TW548587B (enExample)
WO (1) WO2002029553A1 (enExample)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102182299B1 (ko) * 2019-07-24 2020-11-24 에스케이텔레콤 주식회사 시프트 연산 장치 및 그의 동작 방법

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003114323A (ja) * 2001-10-04 2003-04-18 Bridgestone Corp 近赤外線吸収フィルム
JP3857614B2 (ja) * 2002-06-03 2006-12-13 松下電器産業株式会社 プロセッサ
US20030231660A1 (en) * 2002-06-14 2003-12-18 Bapiraju Vinnakota Bit-manipulation instructions for packet processing
US8082419B2 (en) 2004-03-30 2011-12-20 Intel Corporation Residual addition for video software techniques
US7584233B2 (en) * 2005-06-28 2009-09-01 Qualcomm Incorporated System and method of counting leading zeros and counting leading ones in a digital signal processor
US7840954B2 (en) * 2005-11-29 2010-11-23 International Business Machines Corporation Compilation for a SIMD RISC processor
US8290095B2 (en) * 2006-03-23 2012-10-16 Qualcomm Incorporated Viterbi pack instruction
US8493979B2 (en) * 2008-12-30 2013-07-23 Intel Corporation Single instruction processing of network packets
US8495341B2 (en) * 2010-02-17 2013-07-23 International Business Machines Corporation Instruction length based cracking for instruction of variable length storage operands
GB2481384B (en) * 2010-06-21 2018-10-10 Advanced Risc Mach Ltd Key allocation when tracing data processing systems
WO2012134321A1 (en) * 2011-03-30 2012-10-04 Intel Corporation Simd integer addition including mathematical operation on masks
WO2012137428A1 (ja) * 2011-04-08 2012-10-11 パナソニック株式会社 データ処理装置、及びデータ処理方法
US20130113809A1 (en) 2011-11-07 2013-05-09 Nvidia Corporation Technique for inter-procedural memory address space optimization in gpu computing compiler
CN103092571B (zh) * 2013-01-10 2016-06-22 浙江大学 支持多种数据类型的单指令多数据算术单元
US20190196787A1 (en) * 2017-12-21 2019-06-27 Intel Corporation Apparatus and method for right shifting packed quadwords and extracting packed doublewords

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4785393A (en) * 1984-07-09 1988-11-15 Advanced Micro Devices, Inc. 32-Bit extended function arithmetic-logic unit on a single chip
EP0540150B1 (en) * 1991-10-29 1999-06-02 Advanced Micro Devices, Inc. Arithmetic logic unit
US5673321A (en) * 1995-06-29 1997-09-30 Hewlett-Packard Company Efficient selection and mixing of multiple sub-word items packed into two or more computer words
US6237016B1 (en) * 1995-09-05 2001-05-22 Intel Corporation Method and apparatus for multiplying and accumulating data samples and complex coefficients
US5835782A (en) * 1996-03-04 1998-11-10 Intel Corporation Packed/add and packed subtract operations
US5812140A (en) * 1996-09-05 1998-09-22 Adobe Systems Incorporated Efficient gray tile storage
US6061783A (en) * 1996-11-13 2000-05-09 Nortel Networks Corporation Method and apparatus for manipulation of bit fields directly in a memory source
US6081824A (en) * 1998-03-05 2000-06-27 Intel Corporation Method and apparatus for fast unsigned integral division
JPH11272546A (ja) * 1998-03-23 1999-10-08 Nec Corp 可変長レジスタ装置
US6338135B1 (en) * 1998-11-20 2002-01-08 Arm Limited Data processing system and method for performing an arithmetic operation on a plurality of signed data values

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Data packing and unpacking scheme for high performance image processing" IBM Technical Disclosure Bulletin, IBM Corp. New York, US, vol.36, no.7, 1993.07.01, pp.309-313*

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102182299B1 (ko) * 2019-07-24 2020-11-24 에스케이텔레콤 주식회사 시프트 연산 장치 및 그의 동작 방법

Also Published As

Publication number Publication date
IL151395A0 (en) 2003-04-10
JP5133491B2 (ja) 2013-01-30
EP1323031A1 (en) 2003-07-02
IL151395A (en) 2009-09-01
US20020040378A1 (en) 2002-04-04
KR20030066631A (ko) 2003-08-09
TW548587B (en) 2003-08-21
RU2002124769A (ru) 2004-02-20
GB2367650A (en) 2002-04-10
WO2002029553A1 (en) 2002-04-11
CN1432151A (zh) 2003-07-23
CN1196998C (zh) 2005-04-13
MY129332A (en) 2007-03-30
RU2279706C2 (ru) 2006-07-10
GB2367650B (en) 2004-10-27
GB0024311D0 (en) 2000-11-15
EP1323031B1 (en) 2018-11-14
JP2004511039A (ja) 2004-04-08
US6999985B2 (en) 2006-02-14

Similar Documents

Publication Publication Date Title
KR100880614B1 (ko) 단일 명령어 다중 데이터 처리
JP3739403B2 (ja) プロセッサのカスタム動作のための方法及び装置
US5805875A (en) Vector processing system with multi-operation, run-time configurable pipelines
KR100690225B1 (ko) 데이터 처리기 시스템 및 그룹화를 이용한 명령 시스템
US6061780A (en) Execution unit chaining for single cycle extract instruction having one serial shift left and one serial shift right execution units
US10409604B2 (en) Apparatus and method for performing multiply-and-accumulate-products operations
KR19980041798A (ko) 영상처리를 위한 명령을 지원하는 모듈 계산구조
US10162633B2 (en) Shift instruction
US7043627B2 (en) SIMD operation system capable of designating plural registers via one register designating field
JPH0470662B2 (enExample)
US10409592B2 (en) Multiply-and-accumulate-products instructions
US20030037085A1 (en) Field processing unit
US20030097389A1 (en) Methods and apparatus for performing pixel average operations
US7260711B2 (en) Single instruction multiple data processing allowing the combination of portions of two data words with a single pack instruction
US6915411B2 (en) SIMD processor with concurrent operation of vector pointer datapath and vector computation datapath
CN101981542B (zh) 多项式数据处理运算
US7454594B2 (en) Processor for realizing software pipelining with a SIMD arithmetic unit simultaneously processing each SIMD instruction on a plurality of discrete elements
US11768685B2 (en) Processing device with vector transformation execution
WO2010067522A1 (ja) 演算ユニット、プロセッサ及び並列演算方法
US20090031117A1 (en) Same instruction different operation (sido) computer with short instruction and provision of sending instruction code through data
JP3547316B2 (ja) プロセッサ
JP2011145886A (ja) 情報処理装置
GB2367659A (en) SIMD saturation instruction with variable bit length

Legal Events

Date Code Title Description
PA0105 International application

Patent event date: 20030331

Patent event code: PA01051R01D

Comment text: International Patent Application

PG1501 Laying open of application
A201 Request for examination
PA0201 Request for examination

Patent event code: PA02012R01D

Patent event date: 20060627

Comment text: Request for Examination of Application

E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

Comment text: Notification of reason for refusal

Patent event date: 20070920

Patent event code: PE09021S01D

E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

Comment text: Notification of reason for refusal

Patent event date: 20080327

Patent event code: PE09021S01D

E701 Decision to grant or registration of patent right
PE0701 Decision of registration

Patent event code: PE07011S01D

Comment text: Decision to Grant Registration

Patent event date: 20081030

GRNT Written decision to grant
PR0701 Registration of establishment

Comment text: Registration of Establishment

Patent event date: 20090120

Patent event code: PR07011E01D

PR1002 Payment of registration fee

Payment date: 20090121

End annual number: 3

Start annual number: 1

PG1601 Publication of registration
PR1001 Payment of annual fee

Payment date: 20120110

Start annual number: 4

End annual number: 4

FPAY Annual fee payment

Payment date: 20130107

Year of fee payment: 5

PR1001 Payment of annual fee

Payment date: 20130107

Start annual number: 5

End annual number: 5

FPAY Annual fee payment

Payment date: 20140103

Year of fee payment: 6

PR1001 Payment of annual fee

Payment date: 20140103

Start annual number: 6

End annual number: 6

FPAY Annual fee payment

Payment date: 20150106

Year of fee payment: 7

PR1001 Payment of annual fee

Payment date: 20150106

Start annual number: 7

End annual number: 7

FPAY Annual fee payment

Payment date: 20160104

Year of fee payment: 8

PR1001 Payment of annual fee

Payment date: 20160104

Start annual number: 8

End annual number: 8

FPAY Annual fee payment

Payment date: 20161220

Year of fee payment: 9

PR1001 Payment of annual fee

Payment date: 20161220

Start annual number: 9

End annual number: 9

FPAY Annual fee payment

Payment date: 20171219

Year of fee payment: 10

PR1001 Payment of annual fee

Payment date: 20171219

Start annual number: 10

End annual number: 10

FPAY Annual fee payment

Payment date: 20181226

Year of fee payment: 11

PR1001 Payment of annual fee

Payment date: 20181226

Start annual number: 11

End annual number: 11

FPAY Annual fee payment

Payment date: 20191217

Year of fee payment: 12

PR1001 Payment of annual fee

Payment date: 20191217

Start annual number: 12

End annual number: 12

PR1001 Payment of annual fee

Payment date: 20210108

Start annual number: 13

End annual number: 13

PC1801 Expiration of term

Termination date: 20220221

Termination category: Expiration of duration