KR100415742B1 - 프로세서에서 소프트웨어의 제어를 받는 예외 처리 흐름용장치 및 그 동작 방법 - Google Patents

프로세서에서 소프트웨어의 제어를 받는 예외 처리 흐름용장치 및 그 동작 방법 Download PDF

Info

Publication number
KR100415742B1
KR100415742B1 KR10-2000-0075188A KR20000075188A KR100415742B1 KR 100415742 B1 KR100415742 B1 KR 100415742B1 KR 20000075188 A KR20000075188 A KR 20000075188A KR 100415742 B1 KR100415742 B1 KR 100415742B1
Authority
KR
South Korea
Prior art keywords
mode
exception
processor
data
register
Prior art date
Application number
KR10-2000-0075188A
Other languages
English (en)
Other versions
KR20020045791A (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 패러데이 테크놀로지 코퍼레이션
Priority to KR10-2000-0075188A priority Critical patent/KR100415742B1/ko
Publication of KR20020045791A publication Critical patent/KR20020045791A/ko
Application granted granted Critical
Publication of KR100415742B1 publication Critical patent/KR100415742B1/ko

Links

Classifications

    • 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/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4812Task transfer initiation or dispatching by interrupt, e.g. masked
    • 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/32Address formation of the next instruction, e.g. by incrementing the instruction counter
    • G06F9/321Program or instruction counter, e.g. incrementing

Landscapes

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

Abstract

프로세서에 있어 소프트웨어에 의해 제어되는 예외 처리 흐름용 장치 및 그 동작 방법이 제시된다. 장치 및 그 동작 방법은 사용자 모드, 예비 예외 모드 그리고 예외 모드 사이의 동작 사이에서 스위칭된다. 메인 루틴의 실행은 예외가 발생될 때까지 계속된다. 예외가 발생될 때, 프로세서는 예외 셋업을 실행할 수 있고 예외 루틴을 실행하기 전에 루틴을 초기화할 수 있다. 셋업 루틴 동안, 현재 모드와 복귀 어드레스는 초기화 과정으로 진입하기 전에 버퍼에 저장된다. 초기화 과정 동안, 모드가 아직 예외 모드로 변환되지 않고 있기 때문에, 데이터는 여전히 이용 가능하다. 초기화 과정에서 프로그래머들은 정보를 저장하거나 레지스터 뱅크들을 스위칭하기 전에 잘못된 값들을 정정할 수가 있다. 이것은 소프트웨어를 정정하고 예외 루틴을 만들 때 프로그래머들이 최대한의 융통성을 가질 수 있게 한다. 초기화 과정이 완료된 후, 모드는 변환되고 예외 루틴이 실행된다.

Description

프로세서에서 소프트웨어의 제어를 받는 예외 처리 흐름용 장치 및 그 동작 방법{Apparatus for a software controlled exception handling flow in a processor and a method of operation thereof}
본 발명은 프로세서에서 예외를 처리하기 위한 장치 및 방법에 관한 것이다. 좀더 자세하게는 소프트웨어의 제어를 받는 예외 흐름 처리용 장치 및 그 동작 방법에 관한 것이다.
일반적으로, 중앙처리장치(the CPUs)는 메인 처리 모드와 하나 이상의 예외처리 모드에서 동작한다. 메인 처리 모드는 사용자가 원하는 데이터 처리를 수행하기 위해 응용 소프트웨어의 실행용으로 사용된다. 예외 처리 모드는 보통 외부로부터 인가되는 인터럽트 신호들에 응답하는 것과 같은 동작용으로 사용된다.
메인 처리 모드와 예외 처리 모드 사이의 이동이 메인 처리 모드로 복귀될때 상기 메인 처리 모드가 인터럽트를 받지 않았다면 메인 처리 모드의 동작은 계속된다는 점에서 가역적이다. 그러한 가역성을 확보하기 위해, 중앙처리장치내에 있는 다양한 처리 레지스터들의 저장 데이터들은 예외 처리 모드가 레지스터들의 이용을완료하고 메인 처리 모드로 복귀된 후 재저장 될 수 있도록 메인 처리 모드를 끝낼 때 저장되는 것이 필요하다.
통상, 이것은 메인 처리 모드를 끝낼 때 메인 처리 모드에 있는 레지스터들의 저장 데이터들을 외부 랜덤 액세스 메모리(RAM)에 있는 스택 메모리 영역에 저장하고, 메인 처리 모드로 복귀될 때 상기한 스택 메모리 영역으로부터 레지스터 영역으로 상기한 저장 데이터들을 복귀시킴으로서 이루어진다. 이러한 통상적인 접근방식이 가지는 문제점은 데이터를 스택 메모리에 쓴 다음 상기 스택 메모리로부터 저장 데이터를 읽는 동작이 상대적으로 느리고 이것은 중앙처리장치의 동작성능을 저하시킨다는 것이다. 그러한 통상적인 접근방식이 가지는 다른 문제점은 메인 처리 모드를 끝내고 재 입력될 때 처리 상태 데이터(예를 들어, 중앙처리장치의 요구된/허용된 동작을 규정짓는 다양한 상태 플래그들)를 저장하고 재저장하는데 처리 비용이 들어간다는 것이다.
다른 제안 방법은 "미국 특허 번호(US Patent No. 5,386,563)에 "예외 처리동안 레지스터 치환" 과 "미국 특허 번호((US Patent No. 5,701,493)에 "데이터 처리 시스템에서 예외 처리 방법 및 장치" 라는 명칭으로 발표되어 있다.
상기 특허 출원건에서 단언한 것에 따르면, 사용자 프로그램이 정상적인 방법으로 실행할 때, 프로그램 카운터(PC)는 연속적으로 증가한다. 사용자 프로그램이 수행되는 동안, 프로세서는 정상적인 실행 흐름이 인터럽트 되었는지를 확인하기 위해 체크한다. 이러한 정상적인 실행 흐름이 인터럽트 되면 언제나 예외가 발생한다. 이러한 예외 동작이나 간섭 동작이 있으면 프로세서는 예외 동작을 발생시켰던 이벤트를 처리한다. 이러한 예외 동작들은 내부 또는 외부 소스에 의해 야기될 수도 있고 여러가지 이유로 하드웨어나 소프트웨어에 의해 발생될 수도 있다.
보통, 사용자 모드(User32)와 다양한 예외 모드 동안 이용할 수 있는 다른 레지스터들이 존재한다. 사용자 모드에서 15개의 범용 레지스터들(R0-R14)이 데이터 조작 동작을 위해 준비되어 있다. 프로그램 카운터 레지스터(R15PC)는 실행될 일련의 명령내에서 현재의 위치를 나타내는 프로그램 카운터로서 동작하도록 준비되어 있다. 현재의 프로그램 상태 레지스터(CPSR)는 중앙처리장치의 제어 변수들을 나타내는 여러 플래그들과 현재의 처리 모드를 나타내는 5개 비트를 저장한다. 사용자 모드(User32)는 사용자 응용 소프트웨어의 실행을 위해 준비되어 있다.
모든 다른 유형의 예외 처리 모드는 하기한 바와 같이, 프로세서가 리셋 상태에 있거나 소프트웨어 간섭 명령이 실행 상태에 있을 때 시작되는 수퍼바이저 모드(SVC32), 정의되지 않는 명령이 실행 유닛으로 들어올 때 시작되는 정의되지않는 모드(Undef32), 메모리 시스템이 메모리 액세스(데이터 액세스나 명령 프리페취)에 실패할때 시작되는 어볼트 모드(Abt32), nIRQ 핀이 로우 상태에 있고 현재의 프로그램 상태 레지스터(CPSR)에 존재하는 Ibit가 그런 느린 끼어들기 요구가 허용된다는 것을 나타내고 있을 때 시작되는 인터럽트 리퀘스트(IRQ32), 그리고 nFIQ 핀이 로우 상태에 있고 현재의 프로그램 상태 레지스터(CPSR)에 존재하는 Fbit가 그러한 패스트 인터럽트 리퀘스트가 허용된다는 것을 분명히 나타내고 있을 때 시작되는 패스트 인터럽트 리퀘스트(FIQ32)가 있다.
각각의 예외 모드들 SVC32, Abt32, IRQ32, Undef32는 상기한 모드들 중 하나가 시작될 때 각각 사용자 모드 레지스터들(R13, R14)을 대체하는 모드들과 관련된 2개의 예외 모드 레지스터를 가지고 있다. 레지스터(R13)는 사용자 모드(User32)와 예외 모드에서 스택 포인터를 저장하기 위해 사용되는 일반적인 레지스터이다. 예외 모드들 중의 하나가 시작될 때 시스템은 복귀 어드레스 레지스터로 쓰여지기 위해 들어오는 모드의 레지스터(R14)에 프로그램 카운터 레지스터(R15pc)의 데이터들을 저장한다. 이것은 그 모드 동안 예외 처리 코드가 출력될 때 준비된 액세스를 복귀 어드레스로 제공한다. 예외 핸들러가 예외 처리를 벗어날 때 레지스터들의 원래 데이터를 재저장하는 것은 중요하다.
각각의 예외 모드들은 관련된 저장 프로그램 상태 레지스터(SPSR)를 가지고 있다. 이러한 저장 프로그램 상태 레지스터들(SPSRs)은 이전 모드로부터 현재의 프로그램 상태 레지스터(CPSR)의 데이터들을 저장하고 이전 모드로 복귀될 때 현재의프로그램 상태 레지스터(CPSR)에 재저장 되도록 한다.
예외 처리 완료후, 실행은 예외가 일어났던 동일한 위치로 복귀되어야 한다. 이것은 예외 핸들러가 저장 프로그램 상태 레지스터(SPSR)로부터 현재의 프로그램 상태 레지스터(CPSR)의 데이터들을 재저장할 것을 요구한다. 그러면 프로그램 카운터(PC)는 레지스터(R14)에 저장되어 있던 복귀 어드레스와 함께 재저장되고 메인 프로그램의 실행은 계속된다.
이러한 통상의 예외 처리 흐름 방법은 예외 핸들러가 중요한 정보를 저장하지 못하거나 레지스터 뱅크를 스위칭하고 모드들을 변환하기 전에 잘못된 값들을 정정하지 못하는 심각한 한계를 가지고 있다.
본 발명의 목적은 프로세서의 데이터 처리과정에서 소프트웨어의 제어를 받아 예외 처리 흐름를 수행하고 사용자 모드, 예비 예외 모드 그리고 예외 모드의 동작 사이에서 스위칭되는 장치 및 그 동작 방법을 제공한다.
도 1은 본 발명에 따른 소프트웨어의 제어를 받는 예외 처리 흐름에 대한 바람직한 실시예의 흐름도
* 도면의 주요 부분에 대한 부호설명 *
110: 메인 루틴 120: 예외
130: 예외 셋업 과정 140: 초기화 과정
150: 저장 상태 변환 루틴에서 제공되는 변환 모드 명령
160: 예외 루틴 170: 시스템 상태 재호출
(구성)
종래의 예외 처리 흐름의 결점을 해결하기 위하여, 본 발명은 프로세서의 데이터 처리 과정에서 소프트웨어의 제어를 받아 예외 처리 흐름을 수행하고 사용자 모드, 예비 예외 모드 그리고 예외 모드의 동작 사이에서 스위칭되는 장치를 제공한다. 상기한 장치는 프로그램 상태 레지스터, 프로그램 카운터 레지스터, 현재의 프로그램 상태 레지스터 버퍼, 프로그램 카운터 버퍼, 저장 프로세싱 상태 레지스터와 레지스터를 포함한다. 상기한 프로그램 상태 레지스터는 사용자 모드에서 처리 상태 정보를 저장하기 위해 사용된다. 상기한 프로그램 카운터 레지스터는 사용자 모드에서 현재의 실행 프로그램 명령의 어드레스를 저장하기 위해 사용된다. 상기한 현재의 프로그램 상태 레지스터 버퍼와 프로그램 카운터 버퍼는 각각 예비 예외 모드의 예외 핸들러 셋업 과정 동안 예외가 발생되고 사용자 모드로부터 장치의 동작이 변화할때 프로그램 상태 레지스터의 데이터를 저장하고 프로그램 카운터 레지스터의 데이터들을 저장하기 위해 사용된다. 저장 프로세싱 상태 레지스터와 레지스터는 각각 현재의 프로그램 상태 레지스터 버퍼의 데이터들을 저장하고 바뀐 모드 명령이 프로세서로 입력된 후 프로그램 카운터 버퍼의 데이터들을 저장하기 위하여 사용된다. 상기 장치는 예비 예외 모드에서 예외 모드로 변화된 동작 모드이다. 장치에 대한 예비 예외 모드에서의 동작 기간은 사용자가 소프트웨어 동작을 수행하는데 있어서 매우 중요하다.
예외 처리 흐름과 관련하여 종래의 방법이 가지는 결점을 해결하기 위하여, 본 발명은 프로세서의 데이터 처리에 있어서 소프트웨어에 제어되는 예외 처리 흐름에 대한 방법을 제공하며, 상기한 프로세서는 사용자 모드, 예비 예외 모드 그리고 예외 모드의 동작 사이에서 스위칭된다. 상기한 방법은 사용자 모드에서 프로세서가 동작될 때 프로그램 상태 레지스터에 처리 상태 정보를 저장하는 것을 포함하며; 사용자 모드에서 프로세서가 동작될 때 프로그램 카운터 레지스터에 현재의 실행 프로그램 명령의 어드레스를 저장하는 것을 포함하며; 예비 예외 모드의 예외 핸들러 셋업 과정 동안 예외가 발생되고 사용자 모드로부터 프로세서가 동작상태로변화할 때 현재의 프로그램 상태 레지스터 버퍼와 프로그램 카운터 버퍼에 각각 프로그램 상태 레지스터의 데이터와 프로그램 카운터 레지스터의 데이터를 저장하는 것을 포함하며; 바뀐 모드 명령이 프로세서로 입력된 후 저장된 처리 상태 레지스터와 레지스터에 각각 현재의 프로그램 상태 레지스터 버퍼의 데이터와 프로그램 카운터 버퍼의 데이터를 저장하는 것을 포함한다. 여기서 프로세서는 예비 예외 모드에서 예외 모드로 변화된 동작 모드이며, 여기서 프로세서에 대한 예비 예외 모드에서의 동작 기간은 사용자가 소프트웨어 동작을 수행하는데 매우 중요하다.
(작용)
이러한 장치 및 동작 방법에 의하면, 예외 처리기가 중요한 정보를 저장하고 레지스터 뱅크들을 스위칭하고 모드를 변환하기 전에 잘못된 값들을 교정하는 것이 가능하다.
(실시예)
전기한 일반적인 설명과 하기한 상세한 설명은 예시적인 것이며, 청구범위와 관련된 발명의 상세한 설명을 기술하고자 한다.
첨부도면은 발명에 대한 이해를 한층 높이기 위해 포함된 것이며, 이 명세서의 일부를 구성한다. 도면들은 발명의 실시예를 설명함과 아울러 발명의 원리를 설명하기 위해 제공된다.
도 1은 본 발명에 따른 소프트웨어의 제어를 받는 예외 처리 흐름에 대한 바람직한 실시예의 흐름도이다.
도 1을 참조하면, 프로세서에 있어서 본 발명에 따른 소프트웨어의 제어를받는 예외 처리 흐름에 대한 장치 및 그 동작 방법에 대한 바람직한 실시예의 흐름도이다. 상기 장치 및 그 동작 방법은 사용자 모드, 예비 예외 모드 그리고 예외 모드의 동작 사이에서 스위칭된다.
단계 110에서 메인 루틴의 실행은 단계 120 에서 예외가 발생될 때까지 계속된다. 단계 120에서 예외가 발생될 때, 프로세서는 처음에 예비 예외 모드로 들어가며, 도 1의 단계 130과 140에 도시된 바와 같이, 상기 예비 예외 모드는 예외 처리기 셋업 과정과 초기화 과정을 포함한다. 단계 130의 예외 처리기 셋업에 있어서, 처리 상태 레지스터의 데이터(CPSR)들은 일시적으로 현재의 프로그램 상태 레지스터 버퍼로 복사된다. 이것은 현재의 처리 상태 정보(예, 현재의 모드, 간섭 마스크 그리고 상태 플래그)를 사용자 모드에 저장한다. 그리고 난 후 사용자 모드에서 현재의 실행 프로그램 명령들의 어드레스를 저장하는 프로그램 카운터(PC)의 데이터들은 프로그램 카운터 버퍼에 복사된다. 그리고 난 후 프로세서는 단계 140의 예비 예외 모드의 초기화 과정으로 진입한다.
단계 140에서, 프로그래머들은 초기화 과정에서 레지스터 뱅크를 스위칭하기 전에 정보를 저장하고, 잘못된 데이터들을 고치거나 사용하는 것과 같은 소프트웨어 동작을 수행할 수 있도록 한다. 상기한 레지스터 뱅크는 이용할 데이터를 저장하기 위한 레지스터들을 가지고 있다. 이렇게 함으로써 프로그래머들은 예외 루틴으로 들어가기 전에 최대한 융통성을 확보한다. 예비 예외 모드에서의 프로세서의 기간은 사용자의 요구에 달려있다. 만약 사용자가 소프트웨어 동작을 수행하는데 더 많은 시간을 필요로한다면, 예비 예외 모드에서 동작되는 프로세서의 기간은 더길어진다. 예비 예외 모드로 있기 위한 정확한 시간은 바뀐 모드 명령과 같은 소프트웨어 명령을 줌으로써 결정될 수가 있다.
단계 140의 초기화 과정이 완료된 후, 다음 단계 150 에서, 초기화 과정 이후의 CDP 보조처리기 명령과 같은 바뀐 모드 명령이 진행된다. 프로세서는 초기의 처리 상태 정보 및 현재의 프로그램 상태 레지스터 버퍼와 프로그램 카운터 버퍼로부터 각각 복귀 어드레스를 관련있는 저장 프로세싱 상태 레지스터(SPSR)와 레지스터(R14)에 복사한다. 레지스터(R14)는 복귀 어드레스 레지스터로 동작한다. 즉, 레지스터 뱅크 스위칭을 제어하기 위해 CDP 보조 처리기 명령이 실행된다.
현재의 프로그램 상태 레지스터 버퍼는 관련된 저장 프로세싱 상태 래지스터(SPSR)에 복사된다. 이것은 현재 모드, 인터럽트 마스크 그리고 상태 플래그를 포함하는 처리 상태 정보를 저장한다. 이후, 복귀 어드레스 상태에 있는 프로그램 카운터 버퍼는 레지스터(R14)에 복사된다. 결국, 프로세서는 예외 모드로 바뀌고 단계 160에서 적절한 예외 루틴을 실행한다.
예외 루틴이 마무리될 때, 단계 170에서, 프로세서는 메인 루틴과 예외가 마주치는 점에서 시스템 상태를 재호출해야 한다. 저장 프로세싱 상태 레지스터(SPSR)는 저장 모드, 인터럽트 마스크 그리고 상태 플래그와 같은 처리 상태 정보를 철회하는 현재의 프로그램 상태 레지스터(CPSR)에 복사된다. 이후 복귀 어드레스를 저장하기 위해 사용되는 레지스터(R14)는 프로그램 카운터(PC)에 복사된다.
그러면 프로세서는 사용자 모드로 복귀하여 계속적으로 명령을 실행할 것이다.
종래기술에서, 예외 스위치는 하드웨어의 제어를 받는다. 소프트웨어는 스위칭 타임을 결정할 아무런 메커니즘을 가지고 있지 않다. 본 발명에서는, 소프트웨어 제어 메커니즘이 예외 처리 흐름에 주어진다. 소프트웨어는 사용자 모드 또는 예외 모드 사이의 스위칭 동작을 하기 위한 정확한 시간을 결정할 수가 있다. 소프트웨어는 예외 이후 즉시 모드를 스위치하거나 복귀를 위해 정보를 저장한 후 스위치할 수 있다. 본질적으로, 메커니즘은 프로그래머가 예외 루틴을 도안하기에 훨씬 더 가변적이다. 당업자라면 본 발명의 범위나 사상에서 벗어나지 않고 본 발명의 구조에 대한 다양한 수정과 변형이 가능함은 자명하다.
상술한 바와같이, 소프트웨어의 제어를 받아 예외 처리 흐름을 수행하는 메커니즘에 있어서는 사용자 모드와 예외 모드 사이의 스위칭 타임을 정확히 결정할 수가 있고, 프로그래머들이 훨씬 가변적으로 예외 루틴을 도안할 수가 있다.

Claims (5)

  1. 프로세서의 데이터 처리에 있어 소프트웨어의 제어를 받아 예외 처리 흐름을 수행하고,
    사용자 모드, 예비 예외 모드 그리고 예외 모드의 동작 모드 사이에서 스위칭되는 장치에 있어서:
    사용자 모드에서 처리 상태 정보를 저장하는 프로그램 상태 레지스터와;
    사용자 모드에서 현재의 실행 프로그램 명령의 어드레스를 저장하는 프로그램 카운터 레지스터와;
    예외가 발생되고 장치가 사용자 모드에서 동작 모드로 바뀔 때 예비 예외 모드의 예외 핸들러 셋업 과정 동안 각각 프로그램 상태 레지스터의 데이터와 프로그램 카운터 레지스터의 데이터를 저장하는 현재의 프로그램 상태 레지스터 버퍼 및 프로그램 카운터 버퍼와; 그리고
    변환 모드 명령이 프로세서로 입력된 후 각각 현재의 프로그램 상태 레지스터 버퍼의 데이터들과 프로그램 카운터 버퍼의 데이터들을 저장하는 저장 프로세싱 상태 레지스터 및 레지스터를 포함하며,
    상기한 장치는 예비 예외 모드에서 예외 모드로 동작 모드를 변환하고,
    상기 장치에 대한 예비 예외 모드로 동작되는 기간은 사용자가 소프트웨어 동작을 수행하는데 필요한 시간에 따라 가변적인 것을 특징으로 하는 장치.
  2. 제 1 항에 있어서,
    상기 처리 상태 정보는 현재의 모드와 인터럽트 마스크 그리고 상태 플래그들을 포함하는 것을 특징으로 하는 장치.
  3. 제 1 항에 있어서,
    상기 현재의 프로그램 상태 레지스터 버퍼와 프로그램 카운터 버퍼는 랜덤 액세스 메모리인 것을 특징으로 하는 장치.
  4. 프로세서의 데이터 처리에 있어 소프트웨어의 제어를 받아 예외 처리 흐름을 수행하고, 상기 프로세서가 사용자 모드, 예비 예외 모드 그리고 예외 모드 사이에서 스위칭되는 동작 방법에 있어서:
    프로세서가 사용자 모드에서 동작될 때 처리 상태 정보를 프로그램 상태 레지스터에 저장하는 단계와;
    예비 예외 모드의 예외 핸들러 셋업 과정 동안 예외가 발생되고 프로세서가 사용자 모드에서 동작 모드로 변환될 때 각각 프로그램 상태 레지스터의 데이터들과 프로그램 카운터 레지스터의 데이터들을 현재의 프로그램 상태 레지스터 버퍼와 프로그램 카운터 버퍼로 저장하는 단계와; 그리고
    변환 모드 명령이 프로세서에 입력된 후 각각 현재의 프로그램 상태 레지스터 버퍼의 데이터들과 프로그램 카운터 버퍼의 데이터들을 저장 프로세싱 상태 레지스터 및 레지스터에 저장하는 단계를 포함하며,
    상기 프로세서는 예비 예외 모드에서 예외 모드로 동작 모드를 변환시키고,
    상기 프로세서에 대한 예비 예외 모드로의 동작 기간은 사용자가 소프트웨어 동작을 수행하는데 필요한 시간에 따라 가변적인 것을 특징으로 하는 동작 방법.
  5. 제 4 항에 있어서,
    상기 처리 상태 정보는 현재 모드, 인터럽트 모드 그리고 상태 플래그를 포함하는 것을 특징으로 하는 동작 방법.
KR10-2000-0075188A 2000-12-11 2000-12-11 프로세서에서 소프트웨어의 제어를 받는 예외 처리 흐름용장치 및 그 동작 방법 KR100415742B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR10-2000-0075188A KR100415742B1 (ko) 2000-12-11 2000-12-11 프로세서에서 소프트웨어의 제어를 받는 예외 처리 흐름용장치 및 그 동작 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR10-2000-0075188A KR100415742B1 (ko) 2000-12-11 2000-12-11 프로세서에서 소프트웨어의 제어를 받는 예외 처리 흐름용장치 및 그 동작 방법

Publications (2)

Publication Number Publication Date
KR20020045791A KR20020045791A (ko) 2002-06-20
KR100415742B1 true KR100415742B1 (ko) 2004-01-24

Family

ID=37488081

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2000-0075188A KR100415742B1 (ko) 2000-12-11 2000-12-11 프로세서에서 소프트웨어의 제어를 받는 예외 처리 흐름용장치 및 그 동작 방법

Country Status (1)

Country Link
KR (1) KR100415742B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4557748B2 (ja) 2005-02-28 2010-10-06 株式会社東芝 演算処理装置

Also Published As

Publication number Publication date
KR20020045791A (ko) 2002-06-20

Similar Documents

Publication Publication Date Title
US6314515B1 (en) Resetting multiple processors in a computer system
US7752427B2 (en) Stack underflow debug with sticky base
JPS63111545A (ja) デバツグ用マイクロプロセツサ
JP2734468B2 (ja) プロセッサ
JP2655615B2 (ja) 情報処理装置
US6173248B1 (en) Method and apparatus for handling masked exceptions in an instruction interpreter
JPH07219809A (ja) データ処理装置およびデータ処理方法
KR920003044B1 (ko) 가상 머신 시스템용의 게스트 머신 실행 제어 시스템
JPH06309178A (ja) 割込処理コードによって割込みを処理するための方法およびコンピュータシステム
JPS593642A (ja) 制御レジスタ処理方式
KR100415742B1 (ko) 프로세서에서 소프트웨어의 제어를 받는 예외 처리 흐름용장치 및 그 동작 방법
JP2001265620A (ja) Romのプログラムデバッグ方式
JPH05233325A (ja) マイクロプロセッサ装置及び割込みと自動化入出力トラップ再始動を行う方法
JP2504191B2 (ja) マイクロプロセッサ
JP2002196938A (ja) 例外処理フロー用の装置及びその処理実行方法
CA1223079A (en) Data processor having selective breakpoint capability with minimal overhead
JPH05250161A (ja) マイクロコンピュータ装置
JP2711159B2 (ja) プロセッサ動作状態調整方法
JP2000029508A (ja) プログラマブルコントローラ
JPH0259829A (ja) マイクロコンピュータ
JPH0683986A (ja) シングルチップ・マイクロコンピュータ
JPS61160144A (ja) エミユレ−シヨン方式
JPH01201730A (ja) 情報処理装置
JPS59106048A (ja) マイクロプロセツサシステム
JPH01175052A (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: 20070418

Year of fee payment: 9

LAPS Lapse due to unpaid annual fee