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

数字信号处理器 Download PDF

Info

Publication number
CN1523491A
CN1523491A CNA031530303A CN03153030A CN1523491A CN 1523491 A CN1523491 A CN 1523491A CN A031530303 A CNA031530303 A CN A031530303A CN 03153030 A CN03153030 A CN 03153030A CN 1523491 A CN1523491 A CN 1523491A
Authority
CN
China
Prior art keywords
instruction
data
memory
instructions
bit
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.)
Pending
Application number
CNA031530303A
Other languages
English (en)
Chinese (zh)
Inventor
G��C��ͼ˹��
G·C·西赫
周群真
S·K·杰哈
I·坎
林健
Q·莫蒂瓦拉
K·约翰
张利
张海涛
李维斯
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 CN1523491A publication Critical patent/CN1523491A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00—Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02—Addressing or allocation; Relocation
    • G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0877—Cache access modes
    • G06F12/0886—Variable-length word access
    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00—Digital computers in general; Data processing equipment in general
    • G06F15/76—Architectures of general purpose stored program computers
    • G06F15/78—Architectures of general purpose stored program computers comprising a single central processing unit
    • G06F15/7807—System 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
    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00—Arrangements for program control, e.g. control units
    • G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003—Arrangements for executing specific machine instructions
    • G06F9/30007—Arrangements for executing specific machine instructions to perform operations on data operands
    • G06F9/30036—Instructions to perform operations on packed data, e.g. vector, tile or matrix operations
    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00—Arrangements for program control, e.g. control units
    • G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003—Arrangements for executing specific machine instructions
    • G06F9/30007—Arrangements for executing specific machine instructions to perform operations on data operands
    • G06F9/30036—Instructions to perform operations on packed data, e.g. vector, tile or matrix operations
    • G06F9/30038—Instructions to perform operations on packed data, e.g. vector, tile or matrix operations using a mask
    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00—Arrangements for program control, e.g. control units
    • G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30098—Register arrangements
    • G06F9/30105—Register structure
    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00—Arrangements for program control, e.g. control units
    • G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30098—Register arrangements
    • G06F9/30105—Register structure
    • G06F9/30112—Register structure comprising data of variable length
    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00—Arrangements for program control, e.g. control units
    • G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30098—Register arrangements
    • G06F9/3012—Organisation of register space, e.g. banked or distributed register file
    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00—Arrangements for program control, e.g. control units
    • G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30098—Register arrangements
    • G06F9/30141—Implementation provisions of register files, e.g. ports
    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00—Arrangements for program control, e.g. control units
    • G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30145—Instruction analysis, e.g. decoding, instruction word fields
    • G06F9/30149—Instruction analysis, e.g. decoding, instruction word fields of variable length instructions
    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00—Arrangements for program control, e.g. control units
    • G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30145—Instruction analysis, e.g. decoding, instruction word fields
    • G06F9/3016—Decoding the operand specifier, e.g. specifier format
    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00—Arrangements for program control, e.g. control units
    • G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30145—Instruction analysis, e.g. decoding, instruction word fields
    • G06F9/3016—Decoding the operand specifier, e.g. specifier format
    • G06F9/30167—Decoding the operand specifier, e.g. specifier format of immediate specifier, e.g. constants
    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00—Arrangements for program control, e.g. control units
    • G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3802—Instruction prefetching
    • G06F9/3816—Instruction alignment, e.g. cache line crossing
    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00—Arrangements for program control, e.g. control units
    • G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3885—Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units
    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00—Arrangements for program control, e.g. control units
    • G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3885—Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units
    • G06F9/3893—Concurrent 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)
CNA031530303A 1998-03-18 1999-03-04 数字信号处理器 Pending CN1523491A (zh)

Applications Claiming Priority (12)

Application Number Priority Date Filing Date Title
US4410498A 1998-03-18 1998-03-18
US4410898A 1998-03-18 1998-03-18
US4408798A 1998-03-18 1998-03-18
US4408998A 1998-03-18 1998-03-18
US09/044,088 1998-03-18
US09/044,108 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,089 1998-03-18
US09/044,087 1998-03-18
US09/044,086 US6425070B1 (en) 1998-03-18 1998-03-18 Variable length instruction decoder
US09/044,086 1998-03-18

Related Parent Applications (1)

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

Publications (1)

Publication Number Publication Date
CN1523491A true CN1523491A (zh) 2004-08-25

Family

ID=27556460

Family Applications (2)

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

Family Applications After (1)

Application Number Title Priority Date Filing Date
CNB998063665A Expired - Lifetime CN1279435C (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) CN1523491A (enExample)
AR (5) AR026081A2 (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)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106662996A (zh) * 2014-05-22 2017-05-10 卡尔雷公司 Vliw型指令束结构和适用于处理该指令束的处理器
CN106796504A (zh) * 2014-07-30 2017-05-31 线性代数技术有限公司 用于指令预提取的方法和设备
US10572252B2 (en) 2013-08-08 2020-02-25 Movidius Limited Variable-length instruction buffer management
US11768689B2 (en) 2013-08-08 2023-09-26 Movidius Limited Apparatus, systems, and methods for low power computational imaging

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU2986099A (en) * 1998-03-18 1999-10-11 Qualcomm Incorporated A digital signal processor
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
BR112017001975B1 (pt) * 2014-07-30 2023-02-28 Movidius Limited Imageamento computacional de baixa potência
US10949493B2 (en) 2016-07-13 2021-03-16 Tae Hyoung Kim Multi-functional computing apparatus and fast fourier transform computing apparatus
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 富士通株式会社 命令プリフェッチ装置
DE69030648T2 (de) * 1990-01-02 1997-11-13 Motorola Inc Verfahren zum sequentiellen Vorabruf von 1-Wort-, 2-Wort oder 3-Wort-Befehlen
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 日本電気株式会社 命令処理方法及び命令処理装置
AU2986099A (en) * 1998-03-18 1999-10-11 Qualcomm Incorporated A digital signal processor

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10572252B2 (en) 2013-08-08 2020-02-25 Movidius Limited Variable-length instruction buffer management
US11579872B2 (en) 2013-08-08 2023-02-14 Movidius Limited Variable-length instruction buffer management
US11768689B2 (en) 2013-08-08 2023-09-26 Movidius Limited Apparatus, systems, and methods for low power computational imaging
CN106662996A (zh) * 2014-05-22 2017-05-10 卡尔雷公司 Vliw型指令束结构和适用于处理该指令束的处理器
CN106796504A (zh) * 2014-07-30 2017-05-31 线性代数技术有限公司 用于指令预提取的方法和设备
CN106796504B (zh) * 2014-07-30 2019-08-13 线性代数技术有限公司 用于管理可变长度指令的方法和设备

Also Published As

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

Similar Documents

Publication Publication Date Title
CN1112635C (zh) 多媒体信号处理器中的单指令多数据处理方法及其装置
CN1117316C (zh) 采用多个向量寄存器组的单指令多数据处理方法及其装置
CN1894659A (zh) 在寄存器和存储器之间移动数据的数据处理设备和方法
CN1914592A (zh) 执行具有单元大小控制的紧缩数据操作的方法和设备
CN1135468C (zh) 对存储设备中信号数据字执行数字信号处理的方法和装置
CN1301363A (zh) 数字信号处理器
CN1103961C (zh) 协处理器的数据访问控制装置和方法
CN1153129C (zh) 用于处理器定制操作的设备
CN1497435A (zh) 处理器
CN1862486A (zh) 数字信号处理器
CN1656495A (zh) 标量/矢量处理器
CN1886744A (zh) 在可扩展的处理器架构中增加高级指令所用的方法和装置
CN1152300C (zh) 多媒体信号处理器中的单指令多数据处理方法及其装置
CN1226323A (zh) 数据处理装置寄存器
JP2016146189A5 (enExample)
CN1236455A (zh) 具有risc结构的八位微控制器
CN1104679C (zh) 数据处理装置和数据处理方法
CN1226324A (zh) 数据处理系统寄存器控制
HK1068992A (en) A digital signal processor
HK1094609A (en) A digital signal processor
HK1094510A (en) A digital signal processor
HK1035594B (en) A digital signal processor
CN1658186A (zh) 并行运算处理器
CN1916884A (zh) 整合式数据处理器
HK1022358B (en) Eight-bit microcontroller having a risc architecture

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 1068992

Country of ref document: HK

CI01 Publication of corrected invention patent application

Correction item: Inventor

Correct: John Dieter|Li Weixin

False: John Kathrin|Li Weisi

Number: 34

Volume: 20

CI02 Correction of invention patent application

Correction item: Inventor

Correct: John Dieter|Li Weixin

False: John Kathrin|Li Weisi

Number: 34

Page: The title page

Volume: 20

COR Change of bibliographic data

Free format text: CORRECT: INVENTOR; FROM: JOHN K LI WEISI TO: D. JOHN LI WEIXIN

ERR Gazette correction

Free format text: CORRECT: INVENTOR; FROM: JOHN K LI WEISI TO: D. JOHN LI WEIXIN

C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication
REG Reference to a national code

Ref country code: HK

Ref legal event code: WD

Ref document number: 1068992

Country of ref document: HK