KR950009454A - 다중 실행 장치 처리 시스템 상태의 선택적 저장방법 및 시스템 - Google Patents
다중 실행 장치 처리 시스템 상태의 선택적 저장방법 및 시스템 Download PDFInfo
- Publication number
- KR950009454A KR950009454A KR1019940023767A KR19940023767A KR950009454A KR 950009454 A KR950009454 A KR 950009454A KR 1019940023767 A KR1019940023767 A KR 1019940023767A KR 19940023767 A KR19940023767 A KR 19940023767A KR 950009454 A KR950009454 A KR 950009454A
- Authority
- KR
- South Korea
- Prior art keywords
- execution
- instruction
- register
- instructions
- interruptible
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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/46—Multiprogramming arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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, look ahead
- G06F9/3861—Recovery, e.g. branch miss-prediction, exception handling
- G06F9/3863—Recovery, e.g. branch miss-prediction, exception handling using multiple copies of the architectural state, e.g. shadow registers
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Advance Control (AREA)
- Multi Processors (AREA)
- Hardware Redundancy (AREA)
Abstract
본 발명은 명령이 인터럽트 가능한 지를 결정하기 위해 처리하는 이중 실행 장치인 두 실행 장치에 추가적인 논리를 제공하는 장치 및 방법에 관한 것이다. 또한, 백아웃 논리가 독특한 레지스터의 내용을 저장하기 위해 제공된다. 백아웃 논리는 현재 실행하는 명령이 독특한 레지스터를 변경하는 지를 결정하기 위해 두개의 디코드를 사용한다. 하나의 명령이 하나 이상의 독특한 레지스터를 변경하는 것을 가능하게 한다. 본 발명의 백아웃 논리는 두 실행 장치에 상주하고 실행 명령에 의해 변경되고 있는 독특한 레지스터를 포함하는 장치에 상주한다. 독특한 레지스터의 하나를 변경시키는 명령이 실행되고 있다면, 그와 같은 레지스터의 내용은 백아웃 래치에 저장된다. 그런 다음, 인터럽트를 야기하지 않고 인터럽트 가능한 명령이 실행되면 취소 신호가 제공된다. 그러나, 인터럽트 가능한 명령이 인터럽트를 야기한다면, 백아웃 래치의 내용은 실행 장치내로 재적재 된다.
Description
본 내용은 요부공개 건이므로 전문내용을 수록하지 않았음
제1도는 본 발명의 바람직한 실시예의 이중 실행 처리 장치 시스템의 구성 요소를 도시하는 블럭도.
Claims (18)
- 다중 실행 장치 처리 시스템(multi-execution unit processing system)상태의 선택적 저장 방법에 있어서, 상기 방법은, 제1명령이 인터럽트 가능한지를 결정하는 단계와 상기 제1명령과 동시에 실행될 제2명령이 실행사이클(execution cycle)동안 갱신되는 레지스터(register)를 변경하는 지를 결정하는 단계와 상기 제1명령이 인터럽트 가능하고 상기 제2명령이 상기 레지스터를 변경할 때 상기 레지스터의 내용(a content of said register)을 저장하는 단계와 인터럽트(interrupt)가 일어나자 마자 상기 내용에 이해 상기 레지스터를 복원하는 단계를 포함하는 다중 실행 장치 처리 시스템 상태의 선택적 저장 방법.
- 제1항에 있어서, 상기방법은 상기 제1 및 제2실행 장치상에서 상기 제1 및 제2명령을 실행하는 단계를 더 포함하는 다중 실행 장치 처리 시스템 상태의 선택적 저장 방법.
- 제2항에 있어서, 상기 실행 단계는 상기 제1 및 제2명령의 실행으로부터 발생하는 새로운 값에 의해 상기 레지스터를 변경하는 단계를 포함하는 다중 실행 장치 처리 시스템 상태의 선택적 저장 방법.
- 제3항에 있어서, 상기 복원 단계는 상기 인터럽트 가능한 제1명령이 실제로 인터럽트를 야기하였는지를 결정하는 단계를 포함하는 다중 실행 장치 처리 시스템 상태의 선택적 저장 방법.
- 제4항에 있어서, 상기 복원 단계는 상기 저장된 내용을 상기 레지스터로 배치하여 상기 레지스터를 상기 제1 및 제2명령의 실행 이전의 상태로 복원하는 단계를 더 포함하는 다중 실행 장치 처리 시스템 상태의 선택적 저장 방법.
- 제5항에 있어서, 상기 방법은 상기 실행 사이클(execution cycle)에 이어 갱신되는 다른 레지스터들이 인터럽트가 실제로 일어날 경우 상기 제1 및 제2명령의 실행에 대응하는 결과에 의해 갱신되는 것을 방지하는 단계를 더 포함하는 다중 실행 장치 처리 시스템의 선택적 저장 방법.
- 제6항에 있어서, 상기 방법은 인터럽트가 일어나지 않을 경우 상기 제1 및 제2명령의 실행에 대응하는 결과에 의해 상기 다른 레지스터를 갱신하는 단계를 더 포함하는 다중 실행 장치 처리 시스템 상태의 선택적 저장 방법.
- 제5항에 있어서, 상기 방법은 인터럽트가 실제로 일어날 경우 상기 제1 및 제2명령을 재실행(re-executing)하는 단계를 더 포함하는 다중 실행 장치 처리 시스템상태의 선택적 저장 방법.
- 다중 실행 장치 처리 시스템(multi-execution unit processing system)상태의 선택적 저장 시스템에 있어서, 상기 시스템은 제1명령이 인터럽트 가능한지를 결정하는 수단과 제1명령과 동시에 실행될 제2명령이 실행 사이클동안 갱신되는 레지스터(register)를 변경하는지를 결정하는 수단과 상기 제1명령이 인터럽트 가능하고 상기 제2명령이 상기 레지스터를 변경할 때 상기 레지스터 내용을 저장하는 수단과; 인터럽트가 일어나자 마자 상기 내용에 의해 상기 레지스터를 복원하는 수단을 포함하는 다중 실행 처리 시스템 상태의 선택적 저장 시스템.
- 제9항에 있어서, 상기 시스템은 상기 제1 및 제2명령을 실행하는 수단을 더 포함하는 다중 실행 장치 처리 시스템 상태의 선택적 저장 시스템.
- 제10항에 있어서, 상기 실행 수단은 상기 제1 및 제2명령의 실행으로 부터 발생하는 새로운 값에 의해 상기 레지스터를 변경하는 수단을 포함하는 다중 실행 장치 처리 시스템의 선택적 저장 시스템.
- 제11항에 있어서 상기 복원 수단은 상기 인터럽트 가능한 제1명령이 실제로 인터럽트를 야기하였는지를 결정하는 수단을 포함하는 다중 실행 장치 처리 시스템 상태의 선택적 저장 시스템.
- 제12항에 있어서, 상기 복원 수단은 상기 저장된 내용을 상기 레지스터로 배치하여 상기 레지스터를 상기 제1 및 제2명령의 실행 이전의 상태로 복원하는 수단을 더 포함하는 다중 실행 처리 시스템 상태의 선택적 저장 시스템.
- 제13항에 있어서, 상기 시스템은 상기 실행 사이클에 이어 갱신되는 다른 레지스터가 인터럽트가 실제로 일어날 경우 상기 제1 및 제2명령의 실행에 대응하는 결과에 의해 갱신되는 것을 방지하는 수단을 더 포함하는 다중 실행 장치 처리 시스템 상태의 선택적 저장 시스템.
- 제 14항에 있어서, 상기 시스템은 인터럽트가 일어나지 않을 경우 상기 제1및 제2며령의 실행에 대응하는 결과에 의해 상기 다른 ㅔ지스터를 갱신하는 수단을 더 포함하는 다중실행 처리 시스템 상태의 선택적 저장 시스템.
- 제15항에 있어서, 상기 시스템은 인터럽트가 실제로 일어날 경우 상기 제1 및 제2명령을 재실행하는 수단을 더 포함하는 다중 실행 장치 처리 시스템 상태의 선택적 저장 시스템.
- 제9항에 있어서, 제1명령이 인터럽트 가능한지를 결정하는 상기 수단 및 제2명령이 레지스터를 변경하는지를 결정하는 상기 수단은 중앙 처리장치(central processing unit)에 포함되는 디코드회로(decode circuit)를 포함하는 다중 실행 장치 처리 시스템 상태의 선택적 저장 시스템.
- 제17항에 있어서, 상기 저장 수단은 백아웃 래치(backout latch)를 포함하는 다중 실행 장치 처리 시스템 상태의 선택적 저장 시스템.※참고사항: 최초출원 내용에 의하여 공개하는 것임.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US08/123,816 US5440703A (en) | 1993-09-20 | 1993-09-20 | System and method for saving state information in a multi-execution unit processor when interruptable instructions are identified |
US123,816 | 1993-09-20 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR950009454A true KR950009454A (ko) | 1995-04-24 |
KR0133237B1 KR0133237B1 (ko) | 1998-04-24 |
Family
ID=22411063
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019940023767A KR0133237B1 (ko) | 1993-09-20 | 1994-09-17 | 다중 실행장치 처리시스템 상태의 선택적 저장방법 및 시스템 |
Country Status (7)
Country | Link |
---|---|
US (1) | US5440703A (ko) |
EP (1) | EP0644481A1 (ko) |
JP (1) | JP2633475B2 (ko) |
KR (1) | KR0133237B1 (ko) |
CN (1) | CN1099631C (ko) |
BR (1) | BR9403515A (ko) |
CA (1) | CA2123448C (ko) |
Families Citing this family (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5752013A (en) * | 1993-06-30 | 1998-05-12 | Intel Corporation | Method and apparatus for providing precise fault tracing in a superscalar microprocessor |
US5870582A (en) * | 1997-03-31 | 1999-02-09 | International Business Machines Corporation | Method and apparatus for completion of non-interruptible instructions before the instruction is dispatched |
US6098167A (en) * | 1997-03-31 | 2000-08-01 | International Business Machines Corporation | Apparatus and method for fast unified interrupt recovery and branch recovery in processors supporting out-of-order execution |
US5913048A (en) * | 1997-03-31 | 1999-06-15 | International Business Machines Corporation | Dispatching instructions in a processor supporting out-of-order execution |
US5887161A (en) * | 1997-03-31 | 1999-03-23 | International Business Machines Corporation | Issuing instructions in a processor supporting out-of-order execution |
US5805849A (en) * | 1997-03-31 | 1998-09-08 | International Business Machines Corporation | Data processing system and method for using an unique identifier to maintain an age relationship between executing instructions |
JP3650519B2 (ja) * | 1997-12-17 | 2005-05-18 | 株式会社ルネサステクノロジ | マイクロコンピュータ |
US6088792A (en) * | 1998-04-30 | 2000-07-11 | International Business Machines Corporation | Avoiding processor serialization after an S/390 SPKA instruction |
US6088791A (en) * | 1998-04-30 | 2000-07-11 | International Business Machines Corporation | Computer processor system for implementing the ESA/390 STOSM and STNSM instructions without serialization or artificially extending processor execution time |
US6345356B1 (en) * | 1999-07-16 | 2002-02-05 | International Business Machines Corporation | Method and apparatus for software-based dispatch stall mechanism for scoreboarded IOPs |
US6442675B1 (en) | 1999-07-29 | 2002-08-27 | International Business Machines Corporation | Compressed string and multiple generation engine |
JP3564445B2 (ja) * | 2001-09-20 | 2004-09-08 | 松下電器産業株式会社 | プロセッサ、コンパイル装置及びコンパイル方法 |
US7313797B2 (en) * | 2002-09-18 | 2007-12-25 | Wind River Systems, Inc. | Uniprocessor operating system design facilitating fast context switching |
US7681022B2 (en) * | 2006-07-25 | 2010-03-16 | Qualcomm Incorporated | Efficient interrupt return address save mechanism |
US8806181B1 (en) * | 2008-05-05 | 2014-08-12 | Marvell International Ltd. | Dynamic pipeline reconfiguration including changing a number of stages |
EP2940575B1 (en) * | 2014-05-02 | 2018-05-09 | Nxp B.V. | Controller circuits, data interface blocks, and methods for transferring data |
Family Cites Families (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS54107645A (en) * | 1978-02-13 | 1979-08-23 | Hitachi Ltd | Information processor |
US4589065A (en) * | 1983-06-30 | 1986-05-13 | International Business Machines Corporation | Mechanism for implementing one machine cycle executable trap instructions in a primitive instruction set computing system |
EP0153764B1 (en) * | 1984-03-02 | 1993-11-03 | Nec Corporation | Information processor having an interruption operating function |
US4670835A (en) * | 1984-10-19 | 1987-06-02 | Honeywell Information Systems Inc. | Distributed control store word architecture |
JPH0795278B2 (ja) * | 1985-08-30 | 1995-10-11 | 株式会社日立製作所 | 処理装置の割込制御方式 |
US4766566A (en) * | 1986-08-18 | 1988-08-23 | International Business Machines Corp. | Performance enhancement scheme for a RISC type VLSI processor using dual execution units for parallel instruction processing |
JPS63131230A (ja) * | 1986-11-21 | 1988-06-03 | Hitachi Ltd | 情報処理装置 |
US4901222A (en) * | 1987-05-19 | 1990-02-13 | Bull Nh Information Systems Inc. | Method and apparatus for backing out of a software instruction after execution has begun |
US5148530A (en) * | 1987-05-19 | 1992-09-15 | Bull Hn Information Systems Inc. | Method for reexecuting instruction by altering high bits of instruction address based upon result of a subtraction operation with stored low bits |
US4901233A (en) * | 1987-07-20 | 1990-02-13 | International Business Machines Corporation | Computer system with logic for writing instruction identifying data into array control lists for precise post-branch recoveries |
US5134561A (en) * | 1987-07-20 | 1992-07-28 | International Business Machines Corporation | Computer system with logic for writing instruction identifying data into array control lists for precise post-branch recoveries |
CA1313275C (en) * | 1987-11-30 | 1993-01-26 | International Business Machines Corporation | Parallel processor instruction dispatch apparatus with interrupt handler |
US5247628A (en) * | 1987-11-30 | 1993-09-21 | International Business Machines Corporation | Parallel processor instruction dispatch apparatus with interrupt handler |
US4912628A (en) * | 1988-03-15 | 1990-03-27 | International Business Machines Corp. | Suspending and resuming processing of tasks running in a virtual machine data processing system |
US5187796A (en) * | 1988-03-29 | 1993-02-16 | Computer Motion, Inc. | Three-dimensional vector co-processor having I, J, and K register files and I, J, and K execution units |
JPH0469734A (ja) * | 1990-07-11 | 1992-03-04 | Toshiba Corp | 浮動小数点加減算のアンダーフロー例外発生予測回路 |
JP2925818B2 (ja) * | 1991-04-05 | 1999-07-28 | 株式会社東芝 | 並列処理制御装置 |
JP3146058B2 (ja) * | 1991-04-05 | 2001-03-12 | 株式会社東芝 | 並列処理型プロセッサシステムおよび並列処理型プロセッサシステムの制御方法 |
US5345567A (en) * | 1991-06-10 | 1994-09-06 | International Business Machines Corporation | System and method for modifying program status word system mask, system access key, and address space code with overlap enabled |
-
1993
- 1993-09-20 US US08/123,816 patent/US5440703A/en not_active Expired - Fee Related
-
1994
- 1994-05-12 CA CA002123448A patent/CA2123448C/en not_active Expired - Fee Related
- 1994-08-09 JP JP6186910A patent/JP2633475B2/ja not_active Expired - Lifetime
- 1994-08-09 EP EP94305896A patent/EP0644481A1/en not_active Withdrawn
- 1994-09-12 BR BR9403515A patent/BR9403515A/pt not_active Application Discontinuation
- 1994-09-17 KR KR1019940023767A patent/KR0133237B1/ko not_active IP Right Cessation
- 1994-09-19 CN CN94116094A patent/CN1099631C/zh not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
CN1117166A (zh) | 1996-02-21 |
CA2123448A1 (en) | 1995-03-21 |
BR9403515A (pt) | 1995-06-20 |
US5440703A (en) | 1995-08-08 |
JPH07105025A (ja) | 1995-04-21 |
CN1099631C (zh) | 2003-01-22 |
JP2633475B2 (ja) | 1997-07-23 |
KR0133237B1 (ko) | 1998-04-24 |
CA2123448C (en) | 1998-10-13 |
EP0644481A1 (en) | 1995-03-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR950009454A (ko) | 다중 실행 장치 처리 시스템 상태의 선택적 저장방법 및 시스템 | |
US8117423B1 (en) | Pipeline replay support for multicycle operations | |
KR870000643A (ko) | 쌍방향성 분기 예상 및 최적화방법 및 장치 | |
KR940022253A (ko) | 컴파일러 및 데이타처리장치 | |
KR20040016829A (ko) | 파이프라인식 프로세서에서의 예외 취급 방법, 장치 및시스템 | |
KR920001321A (ko) | 고속 프로세서에서의 브랜치 처리 방법 및 장치 | |
KR960705271A (ko) | 데이타 처리 명령의 실행(execution of data processing instructions) | |
KR910017275A (ko) | 마이크로프로세서 장치 및 그 동작 관리 방법 | |
KR960706124A (ko) | 워드 정렬 브랜치 타겟을 가지는 처리 시스템(Processing system with word aligned branch target) | |
KR930002935A (ko) | 정보 처리 장치 | |
KR970705083A (ko) | 파이프라인 마이크로프로세서 테스트 방법 및 장치(Pipeline Microprocessor Test Method and Apparatus) | |
KR970012153A (ko) | 데이타 프로세서 및 중단점 작동 실행 방법 | |
KR900016865A (ko) | 파이프라인방식의 분기명령제어장치 | |
US5175827A (en) | Branch history table write control system to prevent looping branch instructions from writing more than once into a branch history table | |
KR960011683A (ko) | 연산 코드의 일부로 사용되는 부분을 포함한 오퍼랜드 필드를 갖는 명령어를 실행하는 마이크로프로세서 | |
KR970703564A (ko) | 분산 데이터 버퍼를 액세싱하기 위한 방법 및 장치(method and apparatus for accessing a distributed data buffer) | |
KR890012224A (ko) | 정보처리장치 | |
EP1177499A1 (en) | Processor and method of executing instructions from several instruction sources | |
KR950025532A (ko) | 연산 처리 장치 | |
KR890002759A (ko) | 데이타요소의 수정장치 및 그 방법 | |
KR940009822A (ko) | 서브루틴분기명령실행방법 | |
KR930004861A (ko) | 정보처리 시스템 | |
KR890010708A (ko) | 오퍼랜드 어드레스 수정방법 및 그 시스템 | |
JPS61250754A (ja) | 簡易型キヤツシユメモリ | |
JP2843844B2 (ja) | 並列演算処理装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20011010 Year of fee payment: 5 |
|
LAPS | Lapse due to unpaid annual fee |