KR970071301A - 데이타 처리 시스템 및 그 방법 - Google Patents

데이타 처리 시스템 및 그 방법 Download PDF

Info

Publication number
KR970071301A
KR970071301A KR1019970013744A KR19970013744A KR970071301A KR 970071301 A KR970071301 A KR 970071301A KR 1019970013744 A KR1019970013744 A KR 1019970013744A KR 19970013744 A KR19970013744 A KR 19970013744A KR 970071301 A KR970071301 A KR 970071301A
Authority
KR
South Korea
Prior art keywords
address value
current address
data processing
processing apparatus
stack pointer
Prior art date
Application number
KR1019970013744A
Other languages
English (en)
Other versions
KR100440361B1 (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 KR970071301A publication Critical patent/KR970071301A/ko
Application granted granted Critical
Publication of KR100440361B1 publication Critical patent/KR100440361B1/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0721Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment within a central processing unit [CPU]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0793Remedial or corrective actions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/3861Recovery, e.g. branch miss-prediction, exception handling

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Quality & Reliability (AREA)
  • Advance Control (AREA)
  • Executing Machine-Instructions (AREA)

Abstract

데이타 처리 장치는 스택 오퍼랜드의 위치조정에 대한 하드웨어 지원이 선택적일 때 관리자 및 사용자 스택동작의 기록을 만들어 내는 단일 시스템 스택 포인터를 구현한다. 위치부조정 오퍼랜드에 대한 하드웨어 지원이 없을 때에도 위치조정 시스템 에러가 발생하지 않도록 세팅되는 현재 어드레스 아래에 가장 근접한 0-모듈로-4 어드레스로 자체적인 자동 위치조정을 하는 자동 위치조정 스택 포인터로서 단일 시스템 스택 포인터가 구현된다. 일단 자동 위치조정이 일어나면, 데이타 처리 장치는 장애 시에 스택 포인터의 위치조정에 대한 정보를 나타내도록 예외 스택 프레임에 4비트 포맷 필드를 저장한다. 예외 처리가 서비스되었을 때, 처리 장치는 예외 시에 그 원래 값으로 스택 포인터를 복구하는데 예외 스택 프레임에 저장된 4비트 포맷 필드를 이용한다.

Description

데이타 처리 시스템 및 그 방법
본 내용은 요부공개 건이므로 전문내용을 수록하지 않았음
제1도는 본 발명의 한 실시예를 따르는 데이타 처리 시스템에 대한 블럭도, 제2도는 제1도에서 도시된 데이타 처리 시스템의 중앙 처리 장치(CPU) 부분에 대한 블럭도, 제3도는 제2도에 도시된 중앙 처리 장치의 오퍼랜드 인출(operand fetch) 회로에 대한 블럭도.

Claims (12)

  1. 데이타 처리 시스템을 동작하기 위한 방법에 있어서, 제1소정 상태가 일어났음을 나타내는 제1신호를 수신하는 단계와, 스택 포인터 레지스터로부터 현재 어드레스 값을 검색하는 단계와, 상기 현재 어드레스 값 아래의 가장 근접한 0-모듈로-4 어드레스로 상기 현재 어드레스 값을 위치조정하는 단계와, 포맷 필드 값을 메모리에 저장하고, 포맷 필드는 상기 제1소정 상태가 일어났음을 나타내는 상기 제1신호를 수신하는 때에 상기 현재 어드레스 값이 위치조정된 방식을 나타내는 단계를 포함하는 것을 특징으로 하는 데이터 처리 시스템 동작 방법.
  2. 제1항에 있어서, 상기 제1소정 상태는 예이 처리 상태인 것을 특징으로 하는 데이터 처리 시스템 동작 방법.
  3. 제1항에 있어서, 위치조정 단계는 상기 스택 포인터 레지스터로부터 검색된 상기 현재 어드레스 값의 소정 부분을 부정하는 단계를 더 포함하는 것을 특징으로 하는 데이터 처리 시스템 동작 방법.
  4. 제1항에 있어서, 제2소정 상태가 일어났음을 나타내는 제2신호를 수신하는 단계와, 상기 메모리로부터 상기 포맷 필드 값을 검색하는 단계와, 상기 현재 어드레스 값을 상기 스택 포인터 레지스터에 복귀시키는 단계를 더 포함하는 것을 특징으로 하는 데이터 처리 시스템 동작 방법.
  5. 데이타 처리 장치에있어서, 복수의 어드레스 값 및 복수의 데이타 값을 제공하기 위한 버스 수단과, 예외 동작이 발생한 때를 결정하고 이에 응답하여 예외 처리 신호를 제공하기 위한 제어 수단과, 상기 예외 동작이 일어났을 때 액세스된 현재 어드레스 값을 나타내기 위한 레지스터와, 상기 레지스터에 연결되어서 상기 현재 어드레스 값의 제1부분을 검색하고, 상기 제어 수단에 연결되어서 상기 예외 처리 신호를 수신하기 위한 것으로서, 조정된 어드레스 값을 형성하도록 상기 현재 어드레스 값을 선택적으로 변경시키는 논리 회로와, 상기 레지스터에 연결되어 적어도 상기 현재 어드레스 값의 상기 제1부분을 수신하고, 상기 예외 동작이 일어났을 때 상기 현재 어드레스 값의 위치조정을 나타내도록 스택 위치조정 값을 발생시키기 위해 상기 현재 어드레스 값의 상기 제1부분을 변경시키는 포맷 발생 회로를 포함하는 것을 특징으로 하는 데이터 처리 장치.
  6. 제5항에 있어서, 상기 포맷 발생 회로에 연결되어서 상기 스택 위치조정 값을 저장하기 위한 메모리를 더 포함하는 것을 특징으로 하는 데이터 처리 장치.
  7. 제5항에 있어서, 상기 현재 어드레스 값은 예외 동작이 일어나서 완료된 ㄸ대 상기 레지스터에 저장되는 것을 특징으로 하는 데이터 처리 장치.
  8. 제5항에 있어서, 상기 조저된 어드레스 값은 상기 현재 어드레스 값보다 작은 가장 근접한 0-모듈로-4 어드레스인 것을 특징으로 하는 데이타 처리 장치.
  9. 데이타 처리 장치에 있어서, 제1인터럽트 신호를 발생시키기 위한 제어 수단과, 현재 어드레스 값을 저장하고 제공하는 스택 포인터 레지스터와, 상기 제어 수단에 연결되어 상기 제1인터럽트 신호를 수신하고 스택 포인터에 연결되어 상기 현재 어드레스 값 제1부분을 수신하고, 조정된 어드레스 값을 만들어 내는 논리 회로와, 상기 스택 포인터 레지스터에 연결되어 상기 현재 어드레스 값의 제2부분을 수신하고 상기 조정된 어드레스 값과 합산될 때 상기 현재 어드레스 값을 발생시킬 포맷 필드를 발생시키는 변환 회로를 포함하는 포함하는 것을 특징으로 하는 데이터 처리 장치.
  10. 제9항에 있어서, 상기 포맷 필드는 상기 데이타 처리 장치의 메모리에 저장되는 것을 특징으로 하는 데이타 처리 장치
  11. 제10항에 있어서, 상기 포맷 필드는 상기 데이타 처리 장치의 상기 메모리로부터 검색되고 상기 현재 어드레스 값을 상기 스택 포인터 레지스터로 복구시키는데 이용되는 것을 특징으로 하는 데이타 처리 장치.
  12. 제9항에 있어서, 상기 조정된 어드레스 값은 상기 현재 어드레스 값보다 작은 가장 근접한 0-모듈로-4 어드레스 값인 것을 특징으로 하는 데이타 처리 장치.
    ※ 참고사항 : 최초출원 내용에 의하여 공개하는 것임.
KR1019970013744A 1996-04-15 1997-04-15 자동정렬스택포인터를구비한데이타처리시스템및그방법 KR100440361B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/632,187 US5761491A (en) 1996-04-15 1996-04-15 Data processing system and method for storing and restoring a stack pointer
US632,187 1996-04-15

Publications (2)

Publication Number Publication Date
KR970071301A true KR970071301A (ko) 1997-11-07
KR100440361B1 KR100440361B1 (ko) 2004-10-12

Family

ID=24534453

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019970013744A KR100440361B1 (ko) 1996-04-15 1997-04-15 자동정렬스택포인터를구비한데이타처리시스템및그방법

Country Status (8)

Country Link
US (1) US5761491A (ko)
EP (1) EP0802481A1 (ko)
JP (1) JP3707581B2 (ko)
KR (1) KR100440361B1 (ko)
CN (1) CN1168505A (ko)
IE (1) IE970146A1 (ko)
IL (1) IL120665A0 (ko)
TW (1) TW348234B (ko)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5761491A (en) * 1996-04-15 1998-06-02 Motorola Inc. Data processing system and method for storing and restoring a stack pointer
US5983370A (en) * 1996-10-30 1999-11-09 Texas Instruments Incorporated Four state token passing alignment fault state circuit for microprocessor address misalignment fault generation having combined read/write port
US6317796B1 (en) * 1997-10-06 2001-11-13 Sun Microsystems, Inc. Inline database for receiver types in object-oriented systems
US6009517A (en) * 1997-10-06 1999-12-28 Sun Microsystems, Inc. Mixed execution stack and exception handling
US6065110A (en) * 1998-02-09 2000-05-16 International Business Machines Corporation Method and apparatus for loading an instruction buffer of a processor capable of out-of-order instruction issue
US6341344B1 (en) * 1998-03-20 2002-01-22 Texas Instruments Incorporated Apparatus and method for manipulating data for aligning the stack memory
US20010049710A1 (en) * 2000-05-16 2001-12-06 Curey Randall K. Partitioned executive structure for real-time programs
GB2369464B (en) * 2000-11-27 2005-01-05 Advanced Risc Mach Ltd A data processing apparatus and method for saving return state
US7340495B2 (en) * 2001-10-29 2008-03-04 Intel Corporation Superior misaligned memory load and copy using merge hardware
US7437537B2 (en) * 2005-02-17 2008-10-14 Qualcomm Incorporated Methods and apparatus for predicting unaligned memory access
US20070061551A1 (en) * 2005-09-13 2007-03-15 Freescale Semiconductor, Inc. Computer Processor Architecture Comprising Operand Stack and Addressable Registers
US20080162522A1 (en) * 2006-12-29 2008-07-03 Guei-Yuan Lueh Methods and apparatuses for compaction and/or decompaction
US20080162879A1 (en) * 2006-12-29 2008-07-03 Hong Jiang Methods and apparatuses for aligning and/or executing instructions
GB2471138B (en) * 2009-06-19 2014-08-13 Advanced Risc Mach Ltd Handling integer and floating point registers during a context switch
GB2478733B (en) 2010-03-15 2013-08-14 Advanced Risc Mach Ltd Apparatus and method for handling exception events
GB2482710A (en) * 2010-08-12 2012-02-15 Advanced Risc Mach Ltd Enabling stack access alignment checking independently of other memory access alignment checking
US20230195470A1 (en) * 2021-12-22 2023-06-22 Vmware, Inc. Behavioral implementation of a double fault stack in a computer system

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ES474427A1 (es) * 1977-10-25 1979-04-16 Digital Equipment Corp Un aparato central de tratamiento para uso en un sistema de tratamiento de datos.
US4250546A (en) * 1978-07-31 1981-02-10 Motorola, Inc. Fast interrupt method
JPS57196357A (en) * 1981-05-29 1982-12-02 Toshiba Corp Data processor
US4488227A (en) * 1982-12-03 1984-12-11 Honeywell Information Systems Inc. Program counter stacking method and apparatus for nested subroutines and interrupts
EP0153764B1 (en) * 1984-03-02 1993-11-03 Nec Corporation Information processor having an interruption operating function
US5201043A (en) * 1989-04-05 1993-04-06 Intel Corporation System using both a supervisor level control bit and a user level control bit to enable/disable memory reference alignment checking
US5640548A (en) * 1992-10-19 1997-06-17 Motorola, Inc. Method and apparatus for unstacking registers in a data processing system
US5481719A (en) * 1994-09-09 1996-01-02 International Business Machines Corporation Exception handling method and apparatus for a microkernel data processing system
US5634046A (en) * 1994-09-30 1997-05-27 Microsoft Corporation General purpose use of a stack pointer register
US5761491A (en) * 1996-04-15 1998-06-02 Motorola Inc. Data processing system and method for storing and restoring a stack pointer

Also Published As

Publication number Publication date
IE970146A1 (en) 1997-10-22
IL120665A0 (en) 1997-08-14
EP0802481A1 (en) 1997-10-22
JPH1083305A (ja) 1998-03-31
JP3707581B2 (ja) 2005-10-19
CN1168505A (zh) 1997-12-24
US5761491A (en) 1998-06-02
TW348234B (en) 1998-12-21
KR100440361B1 (ko) 2004-10-12

Similar Documents

Publication Publication Date Title
KR970071301A (ko) 데이타 처리 시스템 및 그 방법
KR970049631A (ko) 멀티 옵션을 지원하는 장치 및 그 제어방법
GB933474A (en) Improvements in data-processing apparatus
KR860002049A (ko) 캐쉬 메모리 제어회로
KR960029997A (ko) 옵션 카드의 하이버네이션 시스템
JPS61290536A (ja) マイクロプロセツサ
US4070703A (en) Control store organization in a microprogrammed data processing system
GB888023A (en) Table lock-up system for a data processing device
JPS55116164A (en) Information retrieval unit
KR960002074A (ko) 파이포를 이용한 프린터 입력버퍼 및 데이타 입력방법
JP3507193B2 (ja) ロード・ストア命令処理装置
KR960006673B1 (ko) 인쇄 회로 어셈블리를 트랙킹하고 식별하기 위한 장치 및 방법
JPH05189393A (ja) リセット処理回路
EP0437558B1 (en) Computer with cache
JP2658342B2 (ja) データ処理装置
KR100452314B1 (ko) 에러 정정 코드 발생 제어회로
JP3445347B2 (ja) 電子ボタン電話装置
JPS60151759A (ja) システム電子機器
JPH05108281A (ja) プリンタスプール方式
KR920008597A (ko) 마이크로 컴퓨터
KR970059915A (ko) 마이크로프로세서의 인터럽트 처리장치
JPS6473459A (en) Device for generating inverse matrix
JPS63123140A (ja) 履歴情報記憶装置
JPH11102250A (ja) 疑似nキーロールオーバキーボード入力装置と処理方法
JPH06231039A (ja) 記憶管理装置

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20130624

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20140624

Year of fee payment: 11

LAPS Lapse due to unpaid annual fee