Virtual single-cycle execution in pipelined processors
Abstract
A pipelined processor is configured to provide virtual single-cycle instruction execution using a register locking mechanism in conjunction with instruction stalling based on lock status. In an illustrative embodiment, a set of register locks is maintained in the form of a stored bit vector in which each bit indicates the current lock status of a corresponding register. A decode unit receives an instruction fetched from memory, and decodes the instruction to determine its source and destination registers. The instruction is stalled for at least one processor cycle if either its source register or destination register is already locked by another instruction. The stall continues until the source and destination registers of the instruction are both unlocked, i.e., no longer in use by other instructions. Before the instruction is dispatched for execution, the destination register of the instruction is again locked, and remains locked until after the instruction completes execution and writes its result to the destination register. The decode unit can thus dispatch instructions to execution units of the processor as if the execution of each of the instructions completed in a single processor cycle, in effect ignoring the individual latencies of the execution units. Moreover, the instructions can be dispatched for execution in a program-specified order, but permitted to complete execution in a different order.

Term
Term ended
Projected expiry passed 10 May 2019, 7.4 years ago.
- Priority
- Filed
- Published
- Projected expiry
- Today
1 sheet
Sheet 1
Every citation, both waysCites: the store holds 0 of 1
| Reference | Relation | Cited during |
|---|---|---|
| MELEAR C: "ADVANCED 88000 RISC ARCHITECTURE", ELECTRO, ELECTRONIC CONVENTIONS MANAGEMENT. LOS ANGELES, US, vol. 14, no. 16/2, 11 April 1989 (1989-04-11), pages 1 - 8, XP000054070 | Non-patent | Search report |
| DIEFENDORFF K ET AL: "ORGANIZATION OF THE MOTOROLA 88110 SUPERSCALAR RISC MICROPROCESSOR", IEEE MICRO, IEEE INC. NEW YORK, US, vol. 12, no. 2, 1 April 1992 (1992-04-01), pages 40 - 63, XP000266192, ISSN: 0272-1732 | Non-patent | Search report |
4 members in 3 offices
Priority claims5
| Document | Office | Kind | Date |
|---|---|---|---|
| 80787 | United States of America | – | |
| 8078798 | United States of America | A | |
| 8078798 | United States of America | A | |
| 80787 | – | – | – |
| US19980080787 | – | – | – |
Members4
| Document | Office | Kind | |
|---|---|---|---|
| EP0959402A2 | European Patent Office (EPO) | A2 | |
| JPH11345122A | Japan | A | |
| US6317821B1 | United States of America | B1 | |
| EP0959402A3This record | European Patent Office (EPO) | A3 |
10 legal events, as the office reported them to INPADOC
Over the term
Point at a mark for the eventEvents
| Event | Code | |
|---|---|---|
| Application deemed to be withdrawnWithdrawn18D | 18D | |
| Information on the status of an ep patent application or granted ep patentGrantedSTATUS: THE APPLICATION IS DEEMED TO BE WITHDRAWNSTAA | STAA | |
| Request for examination filed17P | 17P | |
| Designation fees paidAKX | AKX | |
| Designated contracting statesAK | AK | |
| Request for extension of the european patentAL;LT;LV;MK;RO;SIAX | AX | |
| Search report despatchedORIGINAL CODE: 0009013PUAL | PUAL | |
| Designated contracting statesAK | AK | |
| Request for extension of the european patentAL;LT;LV;MK;RO;SIAX | AX | |
| Public reference made under article 153(3) epc to a published international application that has entered the european phaseORIGINAL CODE: 0009012PUAI | PUAI |
Numbers
- Publication
- 0959402
- Publication, DOCDB
- 0959402
- Publication, EPODOC
- EP0959402
- Application
- 99303631
- Application, DOCDB
- 99303631
- Application, EPODOC
- EP19990303631
Titles3
- German
- Virtuelle Einzel-Zyklus-Befehlsausführung in Pipelineprozessoren
- English
- Virtual single-cycle execution in pipelined processors
- French
- Exécution d'instruction à cycle unique virtuel dans des processeurs en pipeline
Classification
- CPC, 6
- G06F9/3838
- G06F9/3836
- G06F9/384
- G06F9/3858
- G06F9/3856
- G06F9/3854
- IPC, 1
- G06F9 38
Designated states2
- Contracting states, 1
- Sweden
- Extension states, 1
- Slovenia