CN1279435C - 数字信号处理器 - Google Patents

数字信号处理器 Download PDF

Info

Publication number
CN1279435C
CN1279435C CNB998063665A CN99806366A CN1279435C CN 1279435 C CN1279435 C CN 1279435C CN B998063665 A CNB998063665 A CN B998063665A CN 99806366 A CN99806366 A CN 99806366A CN 1279435 C CN1279435 C CN 1279435C
Authority
CN
China
Prior art keywords
data
instruction
register
bus
digital signal
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
CNB998063665A
Other languages
English (en)
Chinese (zh)
Other versions
CN1301363A (zh
Inventor
G·C·西赫
周群真
S·K·杰哈
I·坎
林健
Q·莫蒂瓦拉
D·约翰
张利
张海涛
李维新
C·E·萨卡玛基
P·A·坎塔克
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.)
Qualcomm Inc
Original Assignee
Qualcomm 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 US09/044,088 external-priority patent/US6496920B1/en
Priority claimed from US09/044,086 external-priority patent/US6425070B1/en
Application filed by Qualcomm Inc filed Critical Qualcomm Inc
Publication of CN1301363A publication Critical patent/CN1301363A/zh
Application granted granted Critical
Publication of CN1279435C publication Critical patent/CN1279435C/zh
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0877Cache access modes
    • G06F12/0886Variable-length word access
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • G06F15/7807System on chip, i.e. computer system on a single chip; System in package, i.e. computer system on one or more chips in a single package
    • 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
    • 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
    • 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/30098Register arrangements
    • G06F9/30105Register structure
    • G06F9/30112Register structure comprising data of variable length
    • 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/30098Register arrangements
    • G06F9/3012Organisation of register space, e.g. banked or distributed register file
    • 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/30098Register arrangements
    • G06F9/30141Implementation provisions of register files, e.g. ports
    • 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/30145Instruction analysis, e.g. decoding, instruction word fields
    • G06F9/30149Instruction analysis, e.g. decoding, instruction word fields of variable length instructions
    • 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/30145Instruction analysis, e.g. decoding, instruction word fields
    • G06F9/3016Decoding the operand specifier, e.g. specifier format
    • 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/30145Instruction analysis, e.g. decoding, instruction word fields
    • G06F9/3016Decoding the operand specifier, e.g. specifier format
    • G06F9/30167Decoding the operand specifier, e.g. specifier format of immediate specifier, e.g. constants
    • 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/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3802Instruction prefetching
    • G06F9/3816Instruction alignment, e.g. cache line crossing
    • 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/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 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/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/3893Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units controlled in tandem, e.g. multiplier-accumulator

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Mathematical Physics (AREA)
  • Computing Systems (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Executing Machine-Instructions (AREA)
  • Advance Control (AREA)
  • Memory System (AREA)
CNB998063665A 1998-03-18 1999-03-04 数字信号处理器 Expired - Lifetime CN1279435C (zh)

Applications Claiming Priority (12)

Application Number Priority Date Filing Date Title
US4408798A 1998-03-18 1998-03-18
US4410898A 1998-03-18 1998-03-18
US4408998A 1998-03-18 1998-03-18
US4410498A 1998-03-18 1998-03-18
US09/044,108 1998-03-18
US09/044,088 1998-03-18
US09/044,087 1998-03-18
US09/044,088 US6496920B1 (en) 1998-03-18 1998-03-18 Digital signal processor having multiple access registers
US09/044,104 1998-03-18
US09/044,086 US6425070B1 (en) 1998-03-18 1998-03-18 Variable length instruction decoder
US09/044,089 1998-03-18
US09/044,086 1998-03-18

Related Child Applications (4)

Application Number Title Priority Date Filing Date
CN2006100595436A Division CN1862485B (zh) 1998-03-18 1999-03-04 数字信号处理器
CNB2006100595440A Division CN100517217C (zh) 1998-03-18 1999-03-04 数字信号处理器及其操作方法
CNA031530303A Division CN1523491A (zh) 1998-03-18 1999-03-04 数字信号处理器
CNB2006100595421A Division CN100517216C (zh) 1998-03-18 1999-03-04 数字信号处理器

Publications (2)

Publication Number Publication Date
CN1301363A CN1301363A (zh) 2001-06-27
CN1279435C true CN1279435C (zh) 2006-10-11

Family

ID=27556460

Family Applications (2)

Application Number Title Priority Date Filing Date
CNB998063665A Expired - Lifetime CN1279435C (zh) 1998-03-18 1999-03-04 数字信号处理器
CNA031530303A Pending CN1523491A (zh) 1998-03-18 1999-03-04 数字信号处理器

Family Applications After (1)

Application Number Title Priority Date Filing Date
CNA031530303A Pending CN1523491A (zh) 1998-03-18 1999-03-04 数字信号处理器

Country Status (11)

Country Link
EP (2) EP1457876B1 (enExample)
JP (4) JP2002507789A (enExample)
KR (3) KR100835148B1 (enExample)
CN (2) CN1279435C (enExample)
AR (5) AR026078A2 (enExample)
AT (1) ATE297567T1 (enExample)
AU (1) AU2986099A (enExample)
CA (1) CA2324219C (enExample)
DE (1) DE69925720T2 (enExample)
DK (1) DK1066559T3 (enExample)
WO (1) WO1999047999A1 (enExample)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DK1066559T3 (da) * 1998-03-18 2005-10-03 Qualcomm Inc Digital signalprocessor
JP4100300B2 (ja) * 2003-09-02 2008-06-11 セイコーエプソン株式会社 信号出力調整回路及び表示ドライバ
JP4661169B2 (ja) * 2003-11-14 2011-03-30 ヤマハ株式会社 ディジタルシグナルプロセッサ
JP4300151B2 (ja) * 2004-04-19 2009-07-22 Okiセミコンダクタ株式会社 演算処理装置
US7246218B2 (en) * 2004-11-01 2007-07-17 Via Technologies, Inc. Systems for increasing register addressing space in instruction-width limited processors
US7337272B2 (en) * 2006-05-01 2008-02-26 Qualcomm Incorporated Method and apparatus for caching variable length instructions
US11768689B2 (en) 2013-08-08 2023-09-26 Movidius Limited Apparatus, systems, and methods for low power computational imaging
US10001993B2 (en) 2013-08-08 2018-06-19 Linear Algebra Technologies Limited Variable-length instruction buffer management
FR3021427B1 (fr) * 2014-05-22 2016-06-24 Kalray Structure de paquet d'instructions de type vliw et processeur adapte pour traiter un tel paquet d'instructions
EP3982234A3 (en) * 2014-07-30 2022-05-11 Movidius Ltd. Low power computational imaging
WO2016016726A2 (en) * 2014-07-30 2016-02-04 Linear Algebra Technologies Limited Vector processor
CN109496306B (zh) * 2016-07-13 2023-08-29 莫鲁米有限公司 多功能运算装置及快速傅里叶变换运算装置
JP7384374B2 (ja) * 2019-02-27 2023-11-21 株式会社ウーノラボ 中央演算処理装置
US11204768B2 (en) 2019-11-06 2021-12-21 Onnivation Llc Instruction length based parallel instruction demarcator
EP4080354A1 (en) * 2021-04-23 2022-10-26 Nxp B.V. Processor and instruction set

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4099229A (en) * 1977-02-14 1978-07-04 The United States Of America As Represented By The Secretary Of The Navy Variable architecture digital computer
US5293611A (en) * 1988-09-20 1994-03-08 Hitachi, Ltd. Digital signal processor utilizing a multiply-and-add function for digital filter realization
JP2791086B2 (ja) * 1989-03-15 1998-08-27 富士通株式会社 命令プリフェッチ装置
EP0436341B1 (en) * 1990-01-02 1997-05-07 Motorola, Inc. Sequential prefetch method for 1, 2 or 3 word instructions
US5295249A (en) * 1990-05-04 1994-03-15 International Business Machines Corporation Compounding preprocessor for cache for identifying multiple instructions which may be executed in parallel
JP2560889B2 (ja) * 1990-05-22 1996-12-04 日本電気株式会社 マイクロプロセッサ
JP2682761B2 (ja) * 1991-06-18 1997-11-26 松下電器産業株式会社 命令プリフェッチ装置
US5438668A (en) * 1992-03-31 1995-08-01 Seiko Epson Corporation System and method for extraction, alignment and decoding of CISC instructions into a nano-instruction bucket for execution by a RISC computer
JPH06103068A (ja) * 1992-09-18 1994-04-15 Toyota Motor Corp データ処理装置
JPH06250854A (ja) * 1993-02-24 1994-09-09 Matsushita Electric Ind Co Ltd 命令プリフェッチ装置
JP3168845B2 (ja) * 1994-10-13 2001-05-21 ヤマハ株式会社 ディジタル信号処理装置
US5819056A (en) * 1995-10-06 1998-10-06 Advanced Micro Devices, Inc. Instruction buffer organization method and system
JP3655403B2 (ja) * 1995-10-09 2005-06-02 株式会社ルネサステクノロジ データ処理装置
US5710914A (en) * 1995-12-29 1998-01-20 Atmel Corporation Digital signal processing method and system implementing pipelined read and write operations
JP2806359B2 (ja) * 1996-04-30 1998-09-30 日本電気株式会社 命令処理方法及び命令処理装置
DK1066559T3 (da) * 1998-03-18 2005-10-03 Qualcomm Inc Digital signalprocessor

Also Published As

Publication number Publication date
CN1523491A (zh) 2004-08-25
HK1035594A1 (en) 2001-11-30
KR20010082524A (ko) 2001-08-30
AR026078A2 (es) 2002-12-26
KR20060040749A (ko) 2006-05-10
JP2010282637A (ja) 2010-12-16
JP6300284B2 (ja) 2018-03-28
DE69925720T2 (de) 2006-03-16
EP1066559B1 (en) 2005-06-08
WO1999047999A1 (en) 1999-09-23
CA2324219C (en) 2011-05-10
DK1066559T3 (da) 2005-10-03
JP5677774B2 (ja) 2015-02-25
KR100940465B1 (ko) 2010-02-04
AR026082A2 (es) 2002-12-26
AR026081A2 (es) 2002-12-26
EP1457876B1 (en) 2017-10-04
KR100835148B1 (ko) 2008-06-04
JP6152558B2 (ja) 2017-06-28
CA2324219A1 (en) 1999-09-23
HK1094608A1 (zh) 2007-04-04
JP2016146189A (ja) 2016-08-12
KR100896674B1 (ko) 2009-05-14
AU2986099A (en) 1999-10-11
EP1066559A1 (en) 2001-01-10
CN1301363A (zh) 2001-06-27
AR026079A2 (es) 2002-12-26
EP1457876A2 (en) 2004-09-15
DE69925720D1 (de) 2005-07-14
EP1457876A3 (en) 2006-11-02
AR026080A2 (es) 2002-12-26
JP2015028793A (ja) 2015-02-12
JP2002507789A (ja) 2002-03-12
KR20060040748A (ko) 2006-05-10
ATE297567T1 (de) 2005-06-15

Similar Documents

Publication Publication Date Title
CN1279435C (zh) 数字信号处理器
CN1862485A (zh) 数字信号处理器
CN1154947C (zh) 处理数据的方法和装置
CN1112635C (zh) 多媒体信号处理器中的单指令多数据处理方法及其装置
CN1117316C (zh) 采用多个向量寄存器组的单指令多数据处理方法及其装置
CN1153129C (zh) 用于处理器定制操作的设备
CN1497435A (zh) 处理器
CN1194292C (zh) 具有改良的指令集体系结构的微处理器
CN1886744A (zh) 在可扩展的处理器架构中增加高级指令所用的方法和装置
CN1246772C (zh) 处理器
CN1231741A (zh) 数字信号处理集成电路体系结构
CN1260054A (zh) 协处理器的数据访问控制
CN1890630A (zh) 在寄存器和存储器之间移动数据的数据处理设备和方法
CN1319210A (zh) 可配置的硬件块的配置方法
CN1894659A (zh) 在寄存器和存储器之间移动数据的数据处理设备和方法
CN1208197A (zh) 高效执行特长指令字的处理器
CN1103959C (zh) 数据处理装置和操作数据处理装置的方法
CN1059413A (zh) 执行算术,逻辑与有关运算的方法及数值算术单元
CN1115631C (zh) 具有risc结构的八位微控制器
CN1226323A (zh) 数据处理装置寄存器
CN1152300C (zh) 多媒体信号处理器中的单指令多数据处理方法及其装置
CN1204089A (zh) 支持缩小代码长度的常量还原型处理器
CN1492318A (zh) 支持程序编码长度减小的微处理器
CN1226325A (zh) 数据处理系统中的输入操作数控制
CN1163823C (zh) 微处理器和操作处理执行方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CX01 Expiry of patent term

Granted publication date: 20061011

CX01 Expiry of patent term