CN1230739C - 用于执行堆栈操作的装置和方法以及用于产生地址的装置 - Google Patents

用于执行堆栈操作的装置和方法以及用于产生地址的装置 Download PDF

Info

Publication number
CN1230739C
CN1230739C CNB001329375A CN00132937A CN1230739C CN 1230739 C CN1230739 C CN 1230739C CN B001329375 A CNB001329375 A CN B001329375A CN 00132937 A CN00132937 A CN 00132937A CN 1230739 C CN1230739 C CN 1230739C
Authority
CN
China
Prior art keywords
stack pointer
pointer
stack
updated
memory location
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
Application number
CNB001329375A
Other languages
English (en)
Chinese (zh)
Other versions
CN1295279A (zh
Inventor
法布利斯·艾丹
约拉姆·萨兰特
马克·额尔尼卡夫
里昂尼德·茨可曼
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.)
NXP USA Inc
Original Assignee
Freescale Semiconductor 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
Application filed by Freescale Semiconductor Inc filed Critical Freescale Semiconductor Inc
Publication of CN1295279A publication Critical patent/CN1295279A/zh
Application granted granted Critical
Publication of CN1230739C publication Critical patent/CN1230739C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • 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/32Address formation of the next instruction, e.g. by incrementing the instruction counter
    • 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/30163Decoding the operand specifier, e.g. specifier format with implied specifier, e.g. top of stack
    • 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/76Arrangements for rearranging, permuting or selecting data according to predetermined rules, independently of the content of the data
    • G06F7/78Arrangements for rearranging, permuting or selecting data according to predetermined rules, independently of the content of the data for changing the order of data flow, e.g. matrix transposition or LIFO buffers; Overflow or underflow handling therefor
    • 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/44Arrangements for executing specific programs
    • G06F9/448Execution paradigms, e.g. implementations of programming paradigms
    • G06F9/4482Procedural
    • G06F9/4484Executing subprograms

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Executing Machine-Instructions (AREA)
CNB001329375A 1999-11-09 2000-11-08 用于执行堆栈操作的装置和方法以及用于产生地址的装置 Expired - Fee Related CN1230739C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/436,891 US6654871B1 (en) 1999-11-09 1999-11-09 Device and a method for performing stack operations in a processing system
US09/436,891 1999-11-09

Publications (2)

Publication Number Publication Date
CN1295279A CN1295279A (zh) 2001-05-16
CN1230739C true CN1230739C (zh) 2005-12-07

Family

ID=23734241

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB001329375A Expired - Fee Related CN1230739C (zh) 1999-11-09 2000-11-08 用于执行堆栈操作的装置和方法以及用于产生地址的装置

Country Status (5)

Country Link
US (1) US6654871B1 (enExample)
JP (1) JP2001184211A (enExample)
KR (1) KR100875377B1 (enExample)
CN (1) CN1230739C (enExample)
TW (1) TW535089B (enExample)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10121745A1 (de) * 2001-05-04 2002-11-14 Systemonic Ag Verfahren und Anordnung zu einem Stack mit einem, in Datengruppen mit mehreren Elementen aufgeteilten Speicher
IL152006A0 (en) * 2002-09-30 2003-07-31 Rabintex Ind Ltd Shell for ballistic helmet
CN100353335C (zh) * 2003-03-28 2007-12-05 联发科技股份有限公司 增加处理器中存储器的方法
US7111149B2 (en) * 2003-07-07 2006-09-19 Intel Corporation Method and apparatus for generating a device ID for stacked devices
WO2005096136A1 (en) * 2004-03-31 2005-10-13 Intel Corporation Stack caching using code sharing
US7290153B2 (en) 2004-11-08 2007-10-30 Via Technologies, Inc. System, method, and apparatus for reducing power consumption in a microprocessor
JP2006309508A (ja) * 2005-04-28 2006-11-09 Oki Electric Ind Co Ltd スタック制御装置およびその方法
US7769983B2 (en) * 2005-05-18 2010-08-03 Qualcomm Incorporated Caching instructions for a multiple-state processor
US7454572B2 (en) * 2005-11-08 2008-11-18 Mediatek Inc. Stack caching systems and methods with an active swapping mechanism
US7647482B2 (en) * 2006-03-31 2010-01-12 Intel Corporation Methods and apparatus for dynamic register scratching
US7711927B2 (en) * 2007-03-14 2010-05-04 Qualcomm Incorporated System, method and software to preload instructions from an instruction set other than one currently executing
WO2008122746A1 (en) * 2007-04-10 2008-10-16 Cambridge Consultants Limited Data processing apparatus
US8055886B2 (en) * 2007-07-12 2011-11-08 Texas Instruments Incorporated Processor micro-architecture for compute, save or restore multiple registers and responsive to first instruction for repeated issue of second instruction
JP5044387B2 (ja) * 2007-12-26 2012-10-10 ルネサスエレクトロニクス株式会社 情報処理装置及びそのスタックポインタ更新方法
US9645949B2 (en) 2008-07-10 2017-05-09 Cambridge Consultants Ltd. Data processing apparatus using privileged and non-privileged modes with multiple stacks
US9588881B2 (en) * 2011-05-16 2017-03-07 Cypress Semiconductor Corporation Stack processor using a ferroelectric random access memory (F-RAM) for code space and a portion of the stack memory space having an instruction set optimized to minimize processor stack accesses
US9910823B2 (en) 2011-05-16 2018-03-06 Cypress Semiconductor Corporation Stack processor using a ferroelectric random access memory (F-RAM) having an instruction set optimized to minimize memory fetch
US8934279B2 (en) * 2011-05-16 2015-01-13 Cypress Semiconductor Corporation Stack processor using a ferroelectric random access memory (F-RAM) for code space and a portion of the stack memory space
US9697002B2 (en) * 2011-10-03 2017-07-04 International Business Machines Corporation Computer instructions for activating and deactivating operands
CN112486897B (zh) * 2019-09-11 2024-07-09 中国科学院微电子研究所 一种高速缓存系统及单周期多数据的入栈、出栈操作方法

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS58221446A (ja) * 1982-06-18 1983-12-23 Hitachi Ltd スタツクアドレス選択方式
JPS62128337A (ja) * 1985-11-30 1987-06-10 Nec Corp スタツク制御方式
US5142635A (en) 1989-04-07 1992-08-25 Intel Corporation Method and circuitry for performing multiple stack operations in succession in a pipelined digital computer
JPH0752576B2 (ja) 1990-07-19 1995-06-05 株式会社東芝 スタックメモリ
US5381360A (en) * 1993-09-27 1995-01-10 Hitachi America, Ltd. Modulo arithmetic addressing circuit
US5706491A (en) 1994-10-18 1998-01-06 Cyrix Corporation Branch processing unit with a return stack including repair using pointers from different pipe stages
WO1996037828A1 (en) * 1995-05-26 1996-11-28 National Semiconductor Corporation Apparatus and method for executing pop instructions
US5687336A (en) 1996-01-11 1997-11-11 Exponential Technology, Inc. Stack push/pop tracking and pairing in a pipelined processor
KR100246465B1 (ko) * 1996-11-06 2000-03-15 김영환 마이크로프로세서 스택 명령어의 수행사이클을 줄이기 위한 장치 및 그 방법
US5958039A (en) * 1997-10-28 1999-09-28 Microchip Technology Incorporated Master-slave latches and post increment/decrement operations

Also Published As

Publication number Publication date
KR100875377B1 (ko) 2008-12-23
KR20010051522A (ko) 2001-06-25
TW535089B (en) 2003-06-01
US6654871B1 (en) 2003-11-25
CN1295279A (zh) 2001-05-16
JP2001184211A (ja) 2001-07-06

Similar Documents

Publication Publication Date Title
CN1230739C (zh) 用于执行堆栈操作的装置和方法以及用于产生地址的装置
US11249764B2 (en) Flushing in a microprocessor with multi-step ahead branch predictor and a fetch target queue
EP1058185A1 (en) A multiply and accumulate apparatus and a method thereof
US7925804B2 (en) FIFO device and method of storing data in FIFO buffer
US11593117B2 (en) Combining load or store instructions
US6304954B1 (en) Executing multiple instructions in multi-pipelined processor by dynamically switching memory ports of fewer number than the pipeline
KR100955433B1 (ko) 파이프라인 구조를 갖는 캐시 메모리 및 이를 제어하는방법
CN111459550B (zh) 具高度领先分支预测器的微处理器
GB2518289A (en) A modified return stack buffer
CN104424128B (zh) 变长指令字处理器系统和方法
GB2496934A (en) Multi-stage register renaming using dependency removal and renaming maps.
CN1296836C (zh) 用以于嵌入程序只读存储器中实施修正机制的电路与方法
US20040003219A1 (en) Loop control circuit and loop control method
EP2283578A1 (en) A data handling system comprising memory banks and data rearrangement
CN117311814A (zh) 取指单元、指令读取方法及芯片
EP1941378A2 (en) Improved pipelined digital signal processor
US7509472B2 (en) Collapsible front-end translation for instruction fetch
US7742544B2 (en) System and method for efficient CABAC clock
CN1987771A (zh) 一种实现数据排序的硬件电路及方法
EP1622034A2 (en) Apparatus and method for controlling address conversion buffer
CN1184536A (zh) 与数字信号处理有关的装置和方法以及包括这种装置的处理设备
US7774583B1 (en) Processing bypass register file system and method
CN1126029C (zh) 在dsp存储器中访问复数向量的方法和装置
CN116661872A (zh) 支持同时预测连续跳转的两条非条件分支指令的预测方法及装置
CN108399146B (zh) Flash控制器、取指令方法及计算机可读存储介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
ASS Succession or assignment of patent right

Owner name: FREEDOM SEMICONDUCTORS CO.

Free format text: FORMER OWNER: MOTOROLA, INC.

Effective date: 20040806

C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20040806

Address after: Texas in the United States

Applicant after: FreeScale Semiconductor

Address before: Illinois Instrunment

Applicant before: Motorola, Inc.

C14 Grant of patent or utility model
GR01 Patent grant
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20051207

Termination date: 20131108