Browse Prior Art Database

Register And Operand Conflict Mechanism

IP.com Disclosure Number: IPCOM000041163D
Original Publication Date: 1987-Oct-01
Included in the Prior Art Database: 2005-Feb-02
Document File: 1 page(s) / 12K

Publishing Venue

IBM

Related People

Karne, R: AUTHOR

Abstract

This article describes a mechanism for conflict resolution in a data processing environment which pre-decodes instructions and queues operands for execution. An interlock mechanism is provided to detect when an instruction being decoded is waiting execution in queue. A simpler interlock mechanism is also provided to detect operand address conflicts which are in the store queue and which may be on the way to memory or waiting in the operand queue for execution. A Tag-array mechanism is provided in the address generation logic and also in the execution element to sequence through the operation.

This text was extracted from a PDF file.
This is the abbreviated version, containing approximately 75% of the total text.

Page 1 of 1

Register And Operand Conflict Mechanism

This article describes a mechanism for conflict resolution in a data processing environment which pre-decodes instructions and queues operands for execution. An interlock mechanism is provided to detect when an instruction being decoded is waiting execution in queue. A simpler interlock mechanism is also provided to detect operand address conflicts which are in the store queue and which may be on the way to memory or waiting in the operand queue for execution. A Tag- array mechanism is provided in the address generation logic and also in the execution element to sequence through the operation.

The overall system architecture is shown in the figure. Lookahead Address Generator (LAG) 10 decodes instructions and calculates operand addresses ahead. When a queue-slot is avail able, a new instruction is decoded and an operand request is issued to memory. At that time, a new queue slot is allocated. During instruction decode, the Tag-array is also updated with the instruction information. Now the LAG can proceed to the next instruction until the queue gets full. The execution element also has a Tag-array and can work in parallel. The execution element is always lagging behind LAG and the control logic performs the synchronization required between the LAG and execution element unit.

There are three basic types of conflicts that exist in a lookahead and queued architecture. 1. Register conflict used as an operand;

2. Register confli...