← Back to Patent Explorer
US5764962A Expired / Lapsed US ⏱️ 0.0 years remaining

Emulation of asynchronous signals using a branch mechanism

Assignee: INSTITUTE FOR DEVELOPMENT OF EMERGING ARCHITECTUTRES LLC
•
Filing: 1996-07-31
•
Granted: 1998-06-09
•
Expires: 2016-07-31
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A method facilitates transfer of control from normal emulation in an emulation system to an asynchronous signal handler in the emulation system. A branch-target register is globally allocated with an address used to transfer control to the asynchronous signal handler. A predicate register is globally allocated to serve as a Boolean flag. Within each of a plurality of blocks of code within the emulation system there is placed a transfer of control operation. The transfer of control operation uses as a predicate the globally allocated predicate register. The transfer of control operation branches to an address stored in the globally allocated branch-target register. Where allowed in the architecture, a prefetch hint for the transfer of control operation can indicate the control operation is not to be prefetched. The control operation is placed in the block of code a point at which state may be recovered, generally at the end of the block of code.

Inventors

  • 👤 William B. Buzbee

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-02 18:44
CPC Classifications
G; G06; G06F; G06F9/00; G06F9/06; G06F9/44; G06F9/455; G06F9/45504

Claims Analysis

Total Claims: 18
Claim 1
Independent Claim 139 words
A method for handling an asynchronous signal in an emulation system, comprising the following steps: (a) upon arrival of the asynchronous signal, performing the following substeps: (a.1) interrupting the emulation system, (a.2) recording information about the asynchronous signal, (a.3) setting a Boolean flag in a globally allocated predicate register to indicate the asynchronous signal has arrived, and (a.4) resuming emulation at a point in which the emulation system was interrupted; and, (b) when emulation reaches a point at which state may be recovered, performing the following substeps: (b.1) stopping normal emulation, and (b.2) transferring control to an asynchronous signal handling routine, including using a transfer of control operation, the transfer of control operation using as a predicate the globally allocated predicate register and the transfer of control operation branching to an address stored in a globally allocated branch-target register.
Claim 2
Independent Claim 139 words
A method for handling an asynchronous signal in an emulation system, comprising the following steps: (a) upon arrival of the asynchronous signal, performing the following substeps: (a.1) interrupting the emulation system, (a.2) recording information about the asynchronous signal, (a.3) setting a Boolean flag in a globally allocated predicate register to indicate the asynchronous signal has arrived, and (a.4) resuming emulation at a point in which the emulation system was interrupted; and, (b) when emulation reaches a point at which state may be recovered, performing the following substeps: (b.1) stopping normal emulation, and (b.2) transferring control to an asynchronous signal handling routine, including using a transfer of control operation, the transfer of control operation using as a predicate the globally allocated predicate register and the transfer of control operation branching to an address stored in a globally allocated branch-target register.
Claim 3
Dependent Claim 21 words
A method as in claim 1 additionally including the following step: (c) simulating arrival of the asynchronous signal using the information.
Claim 4
Dependent Claim 27 words
A method as in claim 1 wherein in step (b), the point at which state may be recovered is at the end of a block of code.
Claim 5
Dependent Claim 28 words
A method as in claim 1 wherein in substep (b.2) a prefetch hint for the transfer of control operation indicates the control operation is not to be prefetched.
Claim 6
Dependent Claim 152 words
Storage media which includes software which when run on a computing system performs a method for handling an asynchronous signal in an emulation system, comprising the following steps: (a) upon arrival of the asynchronous signal, performing the following substeps: (a.1) interrupting the emulation system, (a.2) recording information about the asynchronous signal, (a.3) setting a Boolean flag in a globally allocated predicate register to indicate the asynchronous signal has arrived, and (a.4) resuming emulation at a point in which the emulation system was interrupted; and, (b) when emulation reaches a point at which state may be recovered, performing the following substeps: (b.1) stopping normal emulation, and (b.2) transferring control to an asynchronous signal handling routine, including using a transfer of control operation, the transfer of control operation using as a predicate the globally allocated predicate register and the transfer of control operation branching to an address stored in a globally allocated branch-target register.
Claim 7
Dependent Claim 152 words
Storage media which includes software which when run on a computing system performs a method for handling an asynchronous signal in an emulation system, comprising the following steps: (a) upon arrival of the asynchronous signal, performing the following substeps: (a.1) interrupting the emulation system, (a.2) recording information about the asynchronous signal, (a.3) setting a Boolean flag in a globally allocated predicate register to indicate the asynchronous signal has arrived, and (a.4) resuming emulation at a point in which the emulation system was interrupted; and, (b) when emulation reaches a point at which state may be recovered, performing the following substeps: (b.1) stopping normal emulation, and (b.2) transferring control to an asynchronous signal handling routine, including using a transfer of control operation, the transfer of control operation using as a predicate the globally allocated predicate register and the transfer of control operation branching to an address stored in a globally allocated branch-target register.
Claim 8
Dependent Claim 28 words
Storage media as in claim 5 wherein the method additionally includes the following step: (c) simulating arrival of the asynchronous signal using the information recorded in substep (a.2).
Claim 9
Dependent Claim 27 words
Storage media as in claim 5 wherein in step (b), the point at which state may be recovered is at the end of a block of code.
Claim 10
Dependent Claim 28 words
Storage media as in claim 5 wherein in substep (b.2) a prefetch hint for the transfer of control operation indicates the control operation is not to be prefetched.
Claim 11
Independent Claim 112 words
A method for facilitating transfer of control from normal emulation in an emulation system to an asynchronous signal handler in the emulation system, the method comprising the following steps: (a) globally allocating a branch-target register with an address used for transfer of control to the asynchronous signal handler; (b) globally allocating a predicate register to serve as a Boolean flag; and, (c) placing within each of a plurality of blocks of code within the emulation system a transfer of control operation, the transfer of control operation using as a predicate the globally allocated predicate register and the transfer of control operation branching to an address stored in the globally allocated branch-target register.
Claim 12
Independent Claim 112 words
A method for facilitating transfer of control from normal emulation in an emulation system to an asynchronous signal handler in the emulation system, the method comprising the following steps: (a) globally allocating a branch-target register with an address used for transfer of control to the asynchronous signal handler; (b) globally allocating a predicate register to serve as a Boolean flag; and, (c) placing within each of a plurality of blocks of code within the emulation system a transfer of control operation, the transfer of control operation using as a predicate the globally allocated predicate register and the transfer of control operation branching to an address stored in the globally allocated branch-target register.
Claim 13
Dependent Claim 28 words
A method as in claim 9 wherein in step (c) a prefetch hint for the transfer of control operation indicates the control operation is not to be prefetched.
Claim 14
Dependent Claim 25 words
A method as in claim 9 wherein in step (c) the transfer of control operation is placed at an end of each block of code.
Claim 15
Dependent Claim 125 words
Storage media which includes software which when run on a computing system performs a method for facilitating transfer of control from normal emulation in an emulation system to an asynchronous signal handler in the emulation system, the method comprising the following steps: (a) globally allocating a branch-target register with an address used for transfer of control to the asynchronous signal handler; (b) globally allocating a predicate register to serve as a Boolean flag; and, (c) placing within each of a plurality of blocks of code within the emulation system a transfer of control operation, the transfer of control operation using as a predicate the globally allocated predicate register and the transfer of control operation branching to the address stored in the globally allocated branch-target register.
Claim 16
Dependent Claim 125 words
Storage media which includes software which when run on a computing system performs a method for facilitating transfer of control from normal emulation in an emulation system to an asynchronous signal handler in the emulation system, the method comprising the following steps: (a) globally allocating a branch-target register with an address used for transfer of control to the asynchronous signal handler; (b) globally allocating a predicate register to serve as a Boolean flag; and, (c) placing within each of a plurality of blocks of code within the emulation system a transfer of control operation, the transfer of control operation using as a predicate the globally allocated predicate register and the transfer of control operation branching to the address stored in the globally allocated branch-target register.
Claim 17
Dependent Claim 28 words
Storage media as in claim 12 wherein in step (c) a prefetch hint for the transfer of control operation indicates the control operation is not to be prefetched.
Claim 18
Dependent Claim 25 words
Storage media as in claim 12 wherein in step (c) the transfer of control operation is placed at an end of each block of code.

References Cited (Backward Citations)

US5628017A Cited
US5659722A Cited
US5560013A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2001-06-08 2001-12-08 2002-06-09 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2005-06-08 2005-12-08 2006-06-09 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2009-06-08 2009-12-08 2010-06-09 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag