[go: up one dir, main page]

KR100333355B1 - Interrupt control device of microcomputer - Google Patents

Interrupt control device of microcomputer Download PDF

Info

Publication number
KR100333355B1
KR100333355B1 KR1019980062562A KR19980062562A KR100333355B1 KR 100333355 B1 KR100333355 B1 KR 100333355B1 KR 1019980062562 A KR1019980062562 A KR 1019980062562A KR 19980062562 A KR19980062562 A KR 19980062562A KR 100333355 B1 KR100333355 B1 KR 100333355B1
Authority
KR
South Korea
Prior art keywords
interrupt
signal
count register
register
nested
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
KR1019980062562A
Other languages
Korean (ko)
Other versions
KR20000045933A (en
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 KR1019980062562A priority Critical patent/KR100333355B1/en
Publication of KR20000045933A publication Critical patent/KR20000045933A/en
Application granted granted Critical
Publication of KR100333355B1 publication Critical patent/KR100333355B1/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

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/22Microcontrol or microprogram arrangements
    • G06F9/26Address formation of the next micro-instruction ; Microprogram storage or retrieval arrangements
    • G06F9/262Arrangements for next microinstruction selection
    • G06F9/268Microinstruction selection not based on processing results, e.g. interrupt, patch, first cycle store, diagnostic programs

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

본 발명은 복수개의 인터럽트가 발생하였을 때 이를 하드웨어적으로 처리함으로써 인터럽트 발생에 따른 오버헤드의 발생을 억제하는데 그 목적이 있다.An object of the present invention is to suppress the occurrence of overhead caused by interrupt generation by processing hardware when a plurality of interrupts occur.

이와 같은 목적의 본 발명은 프로그래머블 로직 어레이와 인터럽트 제어로직, 카운트 레지스터, 인터럽트 신호 발생수단을 포함하여 이루어진다. 프로그래머블 로직 어레이는 명령어를 디코딩하여 제어신호를 발생시킨다. 인터럽트 제어로직은 제어신호를 입력받아 인터럽트 제어신호를 발생시킨다. 카운트 레지스터는 인터럽트 발생회수를 카운트하여 저장한다. 인터럽트 신호 발생수단은 카운트 레지스터에 저장되어 있는 값을 입력받아 네스티드 인터럽트 신호를 발생시켜서 인터럽트 제어로직을 인에이블시킨다.The present invention for this purpose comprises a programmable logic array, an interrupt control logic, a count register and an interrupt signal generating means. The programmable logic array decodes an instruction to generate a control signal. The interrupt control logic receives the control signal and generates an interrupt control signal. The count register counts and stores the number of interrupt occurrences. The interrupt signal generating means receives a value stored in the count register to generate a nested interrupt signal to enable interrupt control logic.

이와 같은 본 발명은 복수개의 인터럽트가 발생하였을 때 이를 하드웨어적으로 처리함으로써 인터럽트 발생에 따른 오버헤드의 발생을 억제하는 효과를 제공한다.As described above, the present invention provides an effect of suppressing the occurrence of overhead due to interrupt generation by processing hardware when a plurality of interrupts are generated.

Description

마이크로 컴퓨터의 인터럽트 제어장치Microcomputer Interrupt Control

본 발명은 마이크로 프로세서의 인터럽트 제어장치에 관한 것으로, 중첩되어 발생한 복수개의 인터럽트를 수행하기 수한 인터럽트 제어장치에 관한 것이다.The present invention relates to an interrupt control apparatus of a microprocessor, and more particularly, to an interrupt control apparatus capable of performing a plurality of overlapping interrupts.

마이크로 프로세서에서, 임의의 명령(instruction)을 수행하는 도중에 인터럽트(interrupt)가 발생하면, CPU는 인터럽트 서비스 루틴(ISR, interrupt serviceroutine)이 수행되기 전에 다른 작업(task)에서 상용되던 레지스터의 데이터를 스택에 푸쉬(데이터 항목을 스택에 넣은 일)한 다음 인터럽트 서비스 루틴을 수행한다. 이처럼 인터럽트가 발생하였을 때 레지스터의 데이터들을 스택에 푸쉬하는데 많은 시간이 소요되어 컨텍스트 스위칭(context switching) 시간이 증가한다.In a microprocessor, if an interrupt occurs during the execution of any instruction, the CPU stacks the data from the registers that were used in another task before the interrupt service routine (ISR) was performed. Pushes (puts a data item on the stack) and then performs an interrupt service routine. When an interrupt occurs, it takes a lot of time to push the register data onto the stack, which increases the context switching time.

이를 해결하기 위하여 일부 마이크로 프로세서에서는 두 개의 뱅크를 구비하고 이를 교대로 사용하여 컨텍스트 스위칭 시간의 증가를 억제하고 있으며(히타치의 SH-3 모델), 이를 도 1에 나타내었다. 도 1에 나타낸 바와 같이 두 개의 뱅크(102)(104)를 구비하고, 인터럽트가 발생하면 상태 레지스터(SR)의 뱅크 레지스터 비트(RB)를 "0"에서 "1"로 전환함으로써 이전 작업시에 사용되던 뱅크 레지스터(102)의 내용을 그대로 유지한 채 다른 뱅크 레지스터(104)를 이용하여 인터럽트에 의한 새로운 작업을 수행한다. 이 상태에서 또 다시 인터럽트가 발생하면 뱅크 레지스터(102)를 사용하는 수밖에 없는데, 이 뱅크 레지스터(102)에는 이전 작업의 데이터가 저장되어 있으므로 새로운 데이터를 저장할 수 없다. 따라서 이 뱅크 레지스터(102)에 저장되어 있던 데이터들을 스택에 푸쉬한 다음 두 번째 인터럽트에 의한 작업을 수행한다. 뱅크의 개념이 없는 마이크로 프로세서의 경우에는 뱅크의 전환과정이 없이 바로 스택에 데이터를 푸쉬하고 인터럽트에 의한 작업을 수행한다.In order to solve this problem, some microprocessors have two banks and use them alternately to suppress an increase in context switching time (Hitachi's SH-3 model). As shown in Fig. 1, two banks 102 and 104 are provided, and when an interrupt occurs, the bank register bit RB of the status register SR is switched from " 0 " to " 1 " While the contents of the used bank register 102 are kept intact, a new operation by interrupt is performed by using another bank register 104. In this state, when an interrupt occurs again, the bank register 102 is inevitably used. Since the data of the previous operation is stored in this bank register 102, new data cannot be stored. Therefore, the data stored in the bank register 102 is pushed onto the stack and the second interrupt is performed. In the case of a microprocessor without the concept of a bank, data is pushed onto the stack and an interrupted operation is performed without a bank switching process.

상술한 바와 같이 뱅크의 개념을 갖는 마이크로 프로세서나 뱅크의 개념을 갖지 않는 마이크로 프로세서의 경우 모두 복수개의 인터럽트가 발생하면 필수적으로 이전 작업에서 사용되던 데이터들을 스택에 푸쉬해야만 한다. 이 때문에 컨텍스트 스위칭 명령에는 이전 데이터를 스택으로 푸쉬하기 위한 별도의 명령이 추가되어야 하므로, 결과적으로 오버헤드(overhead)가 증가하는 문제가 있다. 이와 같은 오버헤드의 증가는 실시간 연산 시스템(Real Time Operating System)에서 시스템의 동작을 제한하는 원인이 된다.As described above, in the case of the microprocessor having the concept of a bank or the microprocessor having no concept of a bank, when a plurality of interrupts occur, it is necessary to push data used in the previous operation onto the stack. For this reason, since a separate instruction for pushing the previous data onto the stack must be added to the context switching instruction, the overhead increases as a result. This increase in overhead causes a limitation of the operation of the system in a real time operating system.

따라서 본 발명은 복수개의 인터럽트가 발생하였을 때 이를 하드웨어적으로 처리함으로써 인터럽트 발생에 따른 오버헤드의 발생을 억제하는데 그 목적이 있다.Accordingly, an object of the present invention is to suppress the occurrence of overhead due to interrupt generation by processing hardware when a plurality of interrupts are generated.

이와 같은 목적의 본 발명은 프로그래머블 로직 어레이와 인터럽트 제어로직, 카운트 레지스터, 인터럽트 신호 발생수단을 포함하여 이루어진다.The present invention for this purpose comprises a programmable logic array, an interrupt control logic, a count register and an interrupt signal generating means.

프로그래머블 로직 어레이는 명령어를 디코딩하여 제어신호를 발생시킨다. 인터럽트 제어로직은 제어신호를 입력받아 인터럽트 제어신호를 발생시킨다. 카운트 레지스터는 인터럽트 발생회수를 카운트하여 저장한다. 인터럽트 신호 발생수단은 카운트 레지스터에 저장되어 있는 값을 입력받아 네스티드 인터럽트 신호를 발생시켜서 인터럽트 제어로직을 인에이블시킨다The programmable logic array decodes an instruction to generate a control signal. The interrupt control logic receives the control signal and generates an interrupt control signal. The count register counts and stores the number of interrupt occurrences. The interrupt signal generating means receives the value stored in the count register and generates a nested interrupt signal to enable interrupt control logic.

도 1은 종래의 마이크로 컴퓨터의 뱅크 레지스터 구조를 나타낸 도면.1 is a diagram showing a bank register structure of a conventional microcomputer.

도 2는 본 발명에 따른 인터럽트 제어장치의 인터럽트 카운트 레지스터와 인터럽트 제어신호 발생수단을 나타낸 도면.2 is a diagram showing an interrupt count register and an interrupt control signal generating means of an interrupt control apparatus according to the present invention;

도 3은 인터럽트가 발생하였을 때 본 발명에 따른 인터럽트 제어장치의 동작을 설명하기 위한 도면.3 is a view for explaining the operation of the interrupt control apparatus according to the present invention when an interrupt occurs.

도 4는 단일 인터럽트가 발생한 경우의 CPU의 동작을 나타낸 도면.4 is a diagram showing the operation of the CPU when a single interrupt has occurred.

도 5는 네스티드 인터럽트가 발생한 경우의 CPU의 동작을 나타낸 도면.5 is a diagram showing the operation of the CPU when a nested interrupt occurs.

도 6은 인터럽트 서비스 루틴이 종료된 다음 인터럽트로부터 복귀하는 경우의 CPU의 동작을 나타낸 도면.Fig. 6 is a diagram showing the operation of the CPU when the interrupt service routine ends and returns from an interrupt.

이와 같이 이루어지는 본 발명의 바람직한 실시예를 도 2 내지 도 6을 참조하여 설명하면 다음과 같다. 먼저 도 2는 본 발명에 따른 인터럽트 카운트 레지스터의 구조와 이 인터럽트 카운트 레지스터의 값을 이용하여 네스티드 인터럽트 신호(NI)를 발생시키는 인터럽트 신호 발생수단을 나타낸 도면이다. 도 2(a)에 나타낸 바와 같이 본 발명에 따른 인터럽트 카운트 레지스터는 모두 10비트로 구성되어 최대 1023개의 인터럽트 발생회수를 저장할 수 있다. 인터럽트가 발생하면 그 값을 증가시키고, 인터럽트로부터 복귀할 때에는 그 값을 감소시킨다. 만약 이 레지스터의 크기를 증가시키면 더 많은 수의 인터럽트 발생회수를 저장하는 것이 가능하다.Referring to Figures 2 to 6 a preferred embodiment of the present invention made as described above are as follows. 2 is a diagram illustrating an interrupt signal generating means for generating a nested interrupt signal NI using the structure of an interrupt count register and a value of the interrupt count register according to the present invention. As shown in FIG. 2A, the interrupt count registers according to the present invention are all 10 bits, and can store up to 1023 interrupt occurrence times. Increase the value when an interrupt occurs and decrease it when returning from an interrupt. If you increase the size of this register, it is possible to store more interrupts.

도 2(b)는 네스티드 인터럽트 신호(NI) 발생수단을 나타낸 것으로서, 오어 게이트에 인터럽트 카운트 레지스터의 값(C1∼C9)이 입력되고, 그 출력이 네스티드 인터럽트 신호(NI)가 된다. 이때 오어 게이트에는 인터럽트 카운트 레지스터의 값 가운데 최하위 비트(C0)를 제외한 값이 입력된다. 최하위 비트(C0)의 값은 인터럽트가 최대 1회 발생한 경우에만 해당되므로 중복 인터럽트(nested interrupt)의 검출에는 사용하지 않는 것이다.Fig. 2 (b) shows the nested interrupt signal NI generating means. The values C1 to C9 of the interrupt count register are input to the OR gate, and the output thereof becomes the nested interrupt signal NI. At this time, a value other than the least significant bit (C0) of the interrupt count register is input to the or gate. The value of the least significant bit (C0) is only used when one interrupt occurs at most, so it is not used to detect nested interrupts.

도 3은 인터럽트가 발생하였을 때 인터럽트 제어장치의 동작을 설명하기 위한 도면이다. 도 3에서 프로그래머블 로직 어레이(PLA)(302)는 명령어를 입력받아 디코딩하여 해당 제어신호를 발생시킨다. 제어신호는 인터럽트 제어로직(304)에 입력된다. 인터럽트 제어로직(304)은 네스티드 인터럽트 신호(NI)에 의해 제어된다. 즉, 단일 인터럽트가 발생한 경우와 네스티드 인터럽트가 발생한 경우 각각에 맞는 인터럽트 루틴을 수행하도록 한다.3 is a diagram for describing an operation of an interrupt control apparatus when an interrupt occurs. In FIG. 3, the programmable logic array (PLA) 302 receives a command and decodes it to generate a corresponding control signal. The control signal is input to the interrupt control logic 304. The interrupt control logic 304 is controlled by the nested interrupt signal NI. That is, when a single interrupt occurs and a nested interrupt occurs, an interrupt routine suitable for each is executed.

도 4는 단일 인터럽트가 발생한 경우의 CPU의 동작을 나타낸 도면이다. 인터럽트가 발생하면 먼저 명령어의 디코딩(ID, Instruction Decoding)이 이루어진 다음 인터럽트 루틴이 수행된다. 도 4의 (1)에서는 프로그램 카운터(PC)의 값을 보조 기억장치의 프로그램 카운터(SPC)에 저장하고, (2)에서는 상태 레지스터(SR)의 값을 보조 기억장치의 상태 레지스터(SSR)에 저장한다. 다음으로 (3)에서는 상태 레지스터(SR)의 값을 인터럽트에 의한 새로운 작업에 맞도록 설정하고, (4)에서 인터럽트 서비스 루틴의 번지를 계산한 다음 인터럽트에 의한 명령어를 가져온다(IF). 즉 일반적인 인터럽트 서비스 루틴이 수행되는 것이다.4 is a diagram illustrating the operation of the CPU when a single interrupt occurs. When an interrupt occurs, instruction decode (ID) is first performed, and then an interrupt routine is performed. In Fig. 4 (1), the value of the program counter PC is stored in the program counter SPC of the auxiliary storage. In (2), the value of the status register SR is stored in the status register SSR of the auxiliary storage. Save it. Next, in (3), the value of the status register (SR) is set to be suitable for a new job by interrupt. In (4), the address of the interrupt service routine is calculated, and the instruction by interrupt is obtained (IF). That is, the normal interrupt service routine is executed.

도 5는 네스티드 인터럽트가 발생한 경우의 CPU의 동작을 나타낸 도면이다. 먼저 인터럽트가 발생하면 명령어를 디코딩한다. 도 5의 (1)에서 보조 기억장치의 프로그램 카운터(SPC)의 값을 스택에 저장하고, 역시 보조 기억장치의 상태 레지스터(SSR)의 값을 스택에 푸쉬한다. (3)에서는 모두 15회의 명령어의 수행(execution)이 이루어진다. 이 동안에는 도 1의 뱅크 레지스터(104)에 저장되어 있는 R0_BANK1∼R7BANK1, R8∼R14의 값을 스택에 푸쉬한다. (4)에서는 프로그램 카운터(PC)의 값을 보조 기억장치의 프로그램 카운터(PC)에 저장하고, (5)에서는 상태 레지스터(SR)의 값을 보조 기억장치의 상태 레지스터(SSR)에 저장한 다음 인터럽트에 의한 새로운 명령어를 수행하기 위한 새로운 상태 레지스터의 값을 세팅(SR SET)한다. 상태 레지스터의 값이 세팅되면 (7)에서 인터럽트 서비스 루틴을 수행하기 위한 번지를 계산한 다음 (8)에서 해당 명령어를 페취한다. 즉 첫 번째 인터럽트 발생시에 사용하던 레지스터의 값들을 스택에 푸쉬한 다음 새로운 인터럽트에 의한 명령을 수행하도록 하는 것이다. 이때 새로운 인터럽트에 따른 서비스 루틴의 수행은 소프트웨어적으로 지시하는 것이 아니라 도 2에 나타낸 것과 같은 하드웨어를 이용하여 지시하는 것으로서, 결과적으로 네스티드 인터럽트에 의한 인터럽트 서비스 루틴을 수행하기 위하여 별도의 오버헤드가 발생하지 않는 것이다.5 is a diagram illustrating the operation of the CPU when a nested interrupt occurs. First, when an interrupt occurs, it decodes the instruction. In FIG. 5 (1), the value of the program counter SPC of the auxiliary storage device is stored on the stack, and the value of the status register SSR of the auxiliary storage device is also pushed onto the stack. In (3), all 15 instruction executions are performed. In the meantime, the values of R0_BANK1 to R7BANK1 and R8 to R14 stored in the bank register 104 in Fig. 1 are pushed onto the stack. In (4), the value of the program counter PC is stored in the program counter PC of the auxiliary storage. In (5), the value of the status register SR is stored in the status register SSR of the auxiliary storage. Set the value of the new status register (SR SET) to execute a new instruction by interrupt. When the value of the status register is set, the address for executing the interrupt service routine is calculated in (7), and the corresponding instruction is fetched in (8). In other words, it pushes the register values used in the first interrupt on the stack and executes the instruction by the new interrupt. In this case, the execution of the service routine according to the new interrupt is not instructed by software but by using hardware as shown in FIG. 2. As a result, a separate overhead is required to execute the interrupt service routine by nested interrupt. It doesn't happen.

도 6은 인터럽트 서비스 루틴이 종료된 다음 인터럽트로부터 복귀하는 경우의 CPU의 동작을 나타낸 도면이다. (1)에서 스택에 저장되어 있는 R0_BANK1∼R7BANK1, R8∼R14의 값을 꺼내어(pop)도 1의 뱅크 레지스터(104)에 다시 저장한다. 또 (2)에서 보조 기억장치의 상태 레지스터 값을 본래의 상태 레지스터(SR)로 불러와 저장하고, (3)에서 보조 기억장치의 프로그램 카운터(SPC)의 값을 본래의 프로그램 카운터(PC)로 불러와 저장한다.Fig. 6 is a diagram showing the operation of the CPU when the interrupt service routine ends and then returns from the interrupt. In (1), the values of R0_BANK1 to R7BANK1 and R8 to R14 stored on the stack are popped and stored again in the bank register 104 of FIG. In (2), the state register value of the auxiliary storage device is loaded and stored in the original state register SR, and in (3), the value of the program counter (SPC) of the auxiliary storage device is returned to the original program counter (PC). Recall and save

따라서 본 발명은 복수개의 인터럽트가 발생하였을 때 이를 하드웨어적으로 처리함으로써 인터럽트 발생에 따른 오버헤드의 발생을 억제하는 효과를 제공한다.Therefore, the present invention provides an effect of suppressing the occurrence of overhead due to interrupt generation by processing hardware when a plurality of interrupts are generated.

Claims (1)

명령어를 입력받아 디코딩하여 해당 제어신호를 발생시키고, 상기 제어신호를 인터럽트 제어로직에 입력시키는 프로그래머블 로직 어레이와;A programmable logic array configured to receive a command, decode and generate a corresponding control signal, and input the control signal to an interrupt control logic; 상기 제어신호를 입력받아 단일 인터럽트 또는 네스티드 인터럽트 발생시에 각각에 맞는 인터럽트 루틴을 수행하는 인터럽트 제어로직과;An interrupt control logic that receives the control signal and performs an interrupt routine suitable for each occurrence of a single interrupt or a nested interrupt; 10 비트로 구성되어 인터럽트 발생회수를 카운트하여 저장하는 인터럽트 카운트 레지스터와;An interrupt count register composed of 10 bits for counting and storing an interrupt occurrence count; 상기 인터럽트 카운트 레지스터에 저장되어 있는 값을 입력받아 네스티드 인터럽트 신호를 발생시켜서 상기 인터럽트 제어로직을 인에이블시키고, 상기 카운트 레지스터의 각 비트 가운데 최상위 비트를 제외한 나머지 비트만이 입력되도록하는 네스티드 인터럽트 신호 발생수단을 포함하여 이루어지는 것이 특징인 마이크로 컴퓨터의 인터럽트 제어장치.A nested interrupt signal for generating a nested interrupt signal by receiving a value stored in the interrupt count register to enable the interrupt control logic, and allowing only the remaining bits except the most significant bit of each bit of the count register to be input. An interrupt control apparatus for a microcomputer, characterized in that it comprises a generating means.
KR1019980062562A 1998-12-30 1998-12-30 Interrupt control device of microcomputer Expired - Fee Related KR100333355B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019980062562A KR100333355B1 (en) 1998-12-30 1998-12-30 Interrupt control device of microcomputer

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019980062562A KR100333355B1 (en) 1998-12-30 1998-12-30 Interrupt control device of microcomputer

Publications (2)

Publication Number Publication Date
KR20000045933A KR20000045933A (en) 2000-07-25
KR100333355B1 true KR100333355B1 (en) 2002-08-28

Family

ID=19569225

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019980062562A Expired - Fee Related KR100333355B1 (en) 1998-12-30 1998-12-30 Interrupt control device of microcomputer

Country Status (1)

Country Link
KR (1) KR100333355B1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100812346B1 (en) * 2006-02-06 2008-03-11 삼성전자주식회사 Interrupt Handling Method and Device in Reconstruction Array

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR920008282A (en) * 1990-10-01 1992-05-27 노르그렌 룬 Drilling tool attachment means
WO1996027156A1 (en) * 1995-03-01 1996-09-06 Intel Corporation Interrupt steering for a computer system

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR920008282A (en) * 1990-10-01 1992-05-27 노르그렌 룬 Drilling tool attachment means
WO1996027156A1 (en) * 1995-03-01 1996-09-06 Intel Corporation Interrupt steering for a computer system

Also Published As

Publication number Publication date
KR20000045933A (en) 2000-07-25

Similar Documents

Publication Publication Date Title
KR970008523B1 (en) High-speed processor capable of handling multiple interupts
US4410939A (en) System for program interrupt processing with quasi-stack of register-sets
US5642516A (en) Selective shadowing of registers for interrupt processing
AU618142B2 (en) Tightly coupled multiprocessor instruction synchronization
US5881302A (en) Vector processing unit with reconfigurable data buffer
US5043867A (en) Exception reporting mechanism for a vector processor
AU598969B2 (en) Method and apparatus for executing instructions for a vector processing system
KR19990044957A (en) Methods and apparatus that affect the processing of subsequent instructions in a data processor
US4833640A (en) Register bank change including register to register transfer in a data processing system
US20100023730A1 (en) Circular Register Arrays of a Computer
EP1770519A2 (en) Information processing apparatus and its data processing method capable of forming descriptor queue
KR100333355B1 (en) Interrupt control device of microcomputer
JPH0619711B2 (en) Data processing system with priority branch mechanism
AU626067B2 (en) Apparatus and method for control of asynchronous program interrupt events in a data processing system
JPH01286030A (en) Information processor
EP0319132B1 (en) Interrupt handling in a parallel data processing
US7107478B2 (en) Data processing system having a Cartesian Controller
AU691593B2 (en) Vector processing unit with reconfigurable data buffer
US20050154864A1 (en) Method and apparatus for nested control flow
US7818549B2 (en) Event driven digital signal processor with time constraints
JPH0496167A (en) Interruption system for multi-processor system
JP2591212B2 (en) High-speed interrupt processing device
KR100329780B1 (en) Interrupt processing apparatus reducing interrupt response time
JPH0340013A (en) Central arithmetic processing unit
JPS61243538A (en) Data processing device

Legal Events

Date Code Title Description
A201 Request for examination
PA0109 Patent application

St.27 status event code: A-0-1-A10-A12-nap-PA0109

PA0201 Request for examination

St.27 status event code: A-1-2-D10-D11-exm-PA0201

R17-X000 Change to representative recorded

St.27 status event code: A-3-3-R10-R17-oth-X000

PN2301 Change of applicant

St.27 status event code: A-3-3-R10-R13-asn-PN2301

St.27 status event code: A-3-3-R10-R11-asn-PN2301

PG1501 Laying open of application

St.27 status event code: A-1-1-Q10-Q12-nap-PG1501

E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

St.27 status event code: A-1-2-D10-D21-exm-PE0902

P11-X000 Amendment of application requested

St.27 status event code: A-2-2-P10-P11-nap-X000

P13-X000 Application amended

St.27 status event code: A-2-2-P10-P13-nap-X000

E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

St.27 status event code: A-1-2-D10-D21-exm-PE0902

P11-X000 Amendment of application requested

St.27 status event code: A-2-2-P10-P11-nap-X000

P13-X000 Application amended

St.27 status event code: A-2-2-P10-P13-nap-X000

N231 Notification of change of applicant
PN2301 Change of applicant

St.27 status event code: A-3-3-R10-R13-asn-PN2301

St.27 status event code: A-3-3-R10-R11-asn-PN2301

R17-X000 Change to representative recorded

St.27 status event code: A-3-3-R10-R17-oth-X000

E701 Decision to grant or registration of patent right
PE0701 Decision of registration

St.27 status event code: A-1-2-D10-D22-exm-PE0701

GRNT Written decision to grant
PR0701 Registration of establishment

St.27 status event code: A-2-4-F10-F11-exm-PR0701

PR1002 Payment of registration fee

St.27 status event code: A-2-2-U10-U11-oth-PR1002

Fee payment year number: 1

PG1601 Publication of registration

St.27 status event code: A-4-4-Q10-Q13-nap-PG1601

PN2301 Change of applicant

St.27 status event code: A-5-5-R10-R11-asn-PN2301

PN2301 Change of applicant

St.27 status event code: A-5-5-R10-R14-asn-PN2301

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 4

PN2301 Change of applicant

St.27 status event code: A-5-5-R10-R11-asn-PN2301

PN2301 Change of applicant

St.27 status event code: A-5-5-R10-R14-asn-PN2301

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 5

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 6

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 7

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 8

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 9

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 10

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 11

PN2301 Change of applicant

St.27 status event code: A-5-5-R10-R13-asn-PN2301

St.27 status event code: A-5-5-R10-R11-asn-PN2301

PN2301 Change of applicant

St.27 status event code: A-5-5-R10-R13-asn-PN2301

St.27 status event code: A-5-5-R10-R11-asn-PN2301

FPAY Annual fee payment

Payment date: 20130327

Year of fee payment: 12

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 12

FPAY Annual fee payment

Payment date: 20140305

Year of fee payment: 13

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 13

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 14

PN2301 Change of applicant

St.27 status event code: A-5-5-R10-R13-asn-PN2301

St.27 status event code: A-5-5-R10-R11-asn-PN2301

LAPS Lapse due to unpaid annual fee
PC1903 Unpaid annual fee

St.27 status event code: A-4-4-U10-U13-oth-PC1903

Not in force date: 20160410

Payment event data comment text: Termination Category : DEFAULT_OF_REGISTRATION_FEE

PC1903 Unpaid annual fee

St.27 status event code: N-4-6-H10-H13-oth-PC1903

Ip right cessation event data comment text: Termination Category : DEFAULT_OF_REGISTRATION_FEE

Not in force date: 20160410

P22-X000 Classification modified

St.27 status event code: A-4-4-P10-P22-nap-X000